glibc/stdio-common
Gabriel F. T. Gomes 10446f5d9f Prepare vfscanf to use __strtof128_internal
On powerpc64le, long double can currently take two formats: the same as
double (-mlong-double-64) or IBM Extended Precision (default with
-mlong-double-128 or explicitly with -mabi=ibmlongdouble).  The internal
implementation of scanf-like functions is aware of these possibilites
and, based on the format in use, properly calls __strtold_internal or
__strtod_internal, saving the return to a variable of type double or
long double.

When library support for TS 18661-3 was added to glibc, a new function,
__strtof128_internal, was added to enable reading of floating-point
values with IEEE binary128 format into the _Float128 type.  Now that
powerpc64le is getting support for its third long double format, and
taking into account that this format is the same as the format of
_Float128, this patch extends __vfscanf_internal and __vfwscanf_internal
to call __strtof128_internal or __wcstof128_internal when appropriate.
The result gets saved into a variable of _Float128 type.

Tested for powerpc64le.
2018-12-07 17:28:26 -02:00
..
bits Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
_i18n_number.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
_itoa.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
_itowa.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
_itowa.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
asprintf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
bug1.c
bug1.input
bug2.c
bug3.c Fix hardcoded /tmp paths in testing (bug 13888). 2018-06-26 21:48:48 +00:00
bug4.c Fix hardcoded /tmp paths in testing (bug 13888). 2018-06-26 21:48:48 +00:00
bug5.c Fix hardcoded /tmp paths in testing (bug 13888). 2018-06-26 21:48:48 +00:00
bug6.c
bug6.input
bug7.c Avoid insecure usage of tmpnam in tests. 2018-07-18 21:04:12 +00:00
bug8.c
bug9.c
bug10.c
bug11.c
bug12.c
bug13.c
bug14.c
bug16.c stdio-common: Use array_length and array_end macros 2017-11-02 12:45:20 +01:00
bug17.c
bug18.c
bug18a.c
bug19.c
bug19a.c
bug20.c
bug21.c Split DIAG_* macros to new header libc-diag.h. 2017-02-25 09:59:46 -05:00
bug22.c Disable -Wformat-overflow= warnings for some printf tests. 2018-11-01 17:13:55 +00:00
bug23-2.c CVE-2012-3406: Stack overflow in vfprintf [BZ #16617] 2014-12-15 10:09:33 +01:00
bug23-3.c CVE-2012-3406: Stack overflow in vfprintf [BZ #16617] 2014-12-15 10:09:33 +01:00
bug23-4.c CVE-2012-3406: Stack overflow in vfprintf [BZ #16617] 2014-12-15 10:09:33 +01:00
bug23.c
bug24.c
bug25.c Another round of inclusion fixes for _ISOMAC testsuite. 2017-03-22 08:44:32 -04:00
bug26.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
bug-vfprintf-nargs.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
ctermid.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
cuserid.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
Depend
dprintf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
errlist.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
errnobug.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
flockfile.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
fprintf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
fscanf.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
ftrylockfile.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
funlockfile.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
fxprintf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
gentempfd.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getline.c Mechanically remove _IO_ name aliases for types and constants. 2018-02-21 14:11:05 -05:00
getw.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
iovfscanf.c Add __vfscanf_internal and __vfwscanf_internal with flags arguments. 2018-12-05 18:15:42 -02:00
iovfwscanf.c Add __vfscanf_internal and __vfwscanf_internal with flags arguments. 2018-12-05 18:15:42 -02:00
isoc99_fscanf.c Use SCANF_ISOC99_A instead of _IO_FLAGS2_SCANF_STD. 2018-12-05 18:15:42 -02:00
isoc99_scanf.c Use SCANF_ISOC99_A instead of _IO_FLAGS2_SCANF_STD. 2018-12-05 18:15:42 -02:00
isoc99_sscanf.c Use SCANF_ISOC99_A instead of _IO_FLAGS2_SCANF_STD. 2018-12-05 18:15:42 -02:00
isoc99_vfscanf.c Use SCANF_ISOC99_A instead of _IO_FLAGS2_SCANF_STD. 2018-12-05 18:15:42 -02:00
isoc99_vscanf.c Use SCANF_ISOC99_A instead of _IO_FLAGS2_SCANF_STD. 2018-12-05 18:15:42 -02:00
isoc99_vsscanf.c Use SCANF_ISOC99_A instead of _IO_FLAGS2_SCANF_STD. 2018-12-05 18:15:42 -02:00
itoa-digits.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
itoa-udigits.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
itowa-digits.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
Makefile Use PRINTF_FORTIFY instead of _IO_FLAGS2_FORTIFY (bug 11319) 2018-12-05 18:15:43 -02:00
perror.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
printf_fp.c Mechanically remove _IO_ name aliases for types and constants. 2018-02-21 14:11:05 -05:00
printf_fphex.c Mechanically remove _IO_ name aliases for types and constants. 2018-02-21 14:11:05 -05:00
printf_size.c Mechanically remove _IO_ name aliases for types and constants. 2018-02-21 14:11:05 -05:00
printf-parse.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
printf-parsemb.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
printf-parsewc.c
printf-prs.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
printf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
printf.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
psiginfo-data.h Fix typos. 2013-10-12 14:47:50 +02:00
psiginfo-define.h
psiginfo.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
psignal.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
putw.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
reg-modifier.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
reg-printf.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
reg-type.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
remove.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
rename.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
renameat2.c Add renameat2 function [BZ #17662] 2018-07-05 19:00:10 +02:00
renameat.c Add renameat2 function [BZ #17662] 2018-07-05 19:00:10 +02:00
scanf1.c
scanf2.c
scanf3.c
scanf4.c Split DIAG_* macros to new header libc-diag.h. 2017-02-25 09:59:46 -05:00
scanf5.c
scanf7.c Split DIAG_* macros to new header libc-diag.h. 2017-02-25 09:59:46 -05:00
scanf8.c
scanf9.c
scanf10.c
scanf11.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
scanf12.c
scanf12.input
scanf13.c
scanf14.c Split DIAG_* macros to new header libc-diag.h. 2017-02-25 09:59:46 -05:00
scanf15.c Don't include <bits/stdio-lock.h> from installed <libio.h>. 2015-09-03 20:24:54 +00:00
scanf16.c
scanf17.c Don't include <bits/stdio-lock.h> from installed <libio.h>. 2015-09-03 20:24:54 +00:00
scanf.c Add __vfscanf_internal and __vfwscanf_internal with flags arguments. 2018-12-05 18:15:42 -02:00
siglist.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
snprintf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
sprintf.c Use PRINTF_FORTIFY instead of _IO_FLAGS2_FORTIFY (bug 11319) 2018-12-05 18:15:43 -02:00
sscanf.c Add __vfscanf_internal and __vfwscanf_internal with flags arguments. 2018-12-05 18:15:42 -02:00
stdio_ext.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
stdio_lim.h.in Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tempnam.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tempname.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
temptest.c
test_rdwr.c Fix hardcoded /tmp paths in testing (bug 13888). 2018-06-26 21:48:48 +00:00
test-fseek.c Fix hardcoded /tmp paths in testing (bug 13888). 2018-06-26 21:48:48 +00:00
test-fwrite.c Modify several tests to use test-skeleton.c 2015-08-06 02:59:04 -04:00
test-popen.c Fix hardcoded /tmp paths in testing (bug 13888). 2018-06-26 21:48:48 +00:00
test-vfprintf.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tfformat.c Avoid use of "register" as optimization hint. 2013-06-07 22:24:35 +00:00
tiformat.c
tllformat.c
tmpfile64.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tmpfile.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tmpnam_r.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tmpnam.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-bz11319-fortify2.c Use PRINTF_FORTIFY instead of _IO_FLAGS2_FORTIFY (bug 11319) 2018-12-05 18:15:43 -02:00
tst-bz11319.c Use PRINTF_FORTIFY instead of _IO_FLAGS2_FORTIFY (bug 11319) 2018-12-05 18:15:43 -02:00
tst-cookie.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-fdopen.c Avoid insecure usage of tmpnam in tests. 2018-07-18 21:04:12 +00:00
tst-ferror.c Modify several tests to use test-skeleton.c 2015-08-06 02:59:04 -04:00
tst-ferror.input
tst-fgets.c Prefer https for Sourceware links 2017-11-16 11:49:26 +05:30
tst-fileno.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-fmemopen2.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-fmemopen3.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-fmemopen4.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-fmemopen.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-fphex-wide.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-fphex.c stdio-common: Use array_length and array_end macros 2017-11-02 12:45:20 +01:00
tst-fseek.c Don't reduce test timeout to less than default 2018-10-17 09:34:13 +02:00
tst-fwrite.c Prefer https for Sourceware links 2017-11-16 11:49:26 +05:30
tst-gets.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-gets.input
tst-grouping.c
tst-long-dbl-fphex.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-obprintf.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-perror.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-popen2.c
tst-popen.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-printf-bz18872.sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-printf-round.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-printf.c Disable -Wformat-overflow= warnings for some printf tests. 2018-11-01 17:13:55 +00:00
tst-printf.sh stdio-common/tst-printf.c: Remove part under a non-free license [BZ #23363] 2018-07-03 18:29:16 +02:00
tst-printfsz-islongdouble.c ldbl-128ibm-compat: Add printf_size 2018-07-02 10:51:01 -03:00
tst-printfsz-islongdouble.sh ldbl-128ibm-compat: Add printf_size 2018-07-02 10:51:01 -03:00
tst-printfsz.c Split DIAG_* macros to new header libc-diag.h. 2017-02-25 09:59:46 -05:00
tst-put-error.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-renameat2.c Add renameat2 function [BZ #17662] 2018-07-05 19:00:10 +02:00
tst-rndseek.c Don't reduce test timeout to less than default 2018-10-17 09:34:13 +02:00
tst-scanf-round.c Fix scanf rounding of negative floating-point numbers (bug 23280). 2018-06-19 11:52:18 +00:00
tst-setvbuf1.c
tst-setvbuf1.expect
tst-sprintf2.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-sprintf3.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-sprintf.c Split DIAG_* macros to new header libc-diag.h. 2017-02-25 09:59:46 -05:00
tst-sscanf.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-swprintf.c stdio-common: Use array_length and array_end macros 2017-11-02 12:45:20 +01:00
tst-swscanf.c
tst-tmpnam.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-unbputc.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-unbputc.sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-ungetc.c Avoid insecure usage of tmpnam in tests. 2018-07-18 21:04:12 +00:00
tst-unlockedio.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-vfprintf-mbs-prec.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-vfprintf-user-type.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-vfprintf-width-prec.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-wc-printf.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tstdiomisc.c stdio-common: Use array_length and array_end macros 2017-11-02 12:45:20 +01:00
tstgetln.c Remove some unnecessary redefinitions of std symbols. 2018-02-05 19:58:01 -05:00
tstgetln.input
tstscanf.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tstscanf.input
Versions Add __vfscanf_internal and __vfwscanf_internal with flags arguments. 2018-12-05 18:15:42 -02:00
vfprintf-internal.c Use PRINTF_LDBL_IS_DBL instead of __ldbl_is_dbl. 2018-12-05 18:15:43 -02:00
vfprintf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
vfscanf-internal.c Prepare vfscanf to use __strtof128_internal 2018-12-07 17:28:26 -02:00
vfscanf.c Add __vfscanf_internal and __vfwscanf_internal with flags arguments. 2018-12-05 18:15:42 -02:00
vfwprintf-internal.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
vfwprintf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
vfwscanf-internal.c Add __vfscanf_internal and __vfwscanf_internal with flags arguments. 2018-12-05 18:15:42 -02:00
vfwscanf.c Add __vfscanf_internal and __vfwscanf_internal with flags arguments. 2018-12-05 18:15:42 -02:00
vprintf.c Add __v*printf_internal with flags arguments 2018-12-05 18:15:42 -02:00
xbug.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00