about summary refs log tree commit diff
path: root/catgets
diff options
context:
space:
mode:
authorStefan Liebler <stli@linux.vnet.ibm.com>2016-05-25 17:18:05 +0200
committerStefan Liebler <stli@linux.vnet.ibm.com>2016-05-25 17:18:05 +0200
commit421c5278d83e72740150259960a431706ac343f9 (patch)
tree41770dca42890366f3383bdc7cc298e2b290bd9c /catgets
parent81c6380887c6d62c56e5f0f85a241f759f58b2fd (diff)
downloadglibc-421c5278d83e72740150259960a431706ac343f9.tar.gz
glibc-421c5278d83e72740150259960a431706ac343f9.tar.xz
glibc-421c5278d83e72740150259960a431706ac343f9.zip
S390: Optimize utf8-utf32 module.
This patch reworks the s390 specific module to convert between utf8 and utf32.
Now ifunc is used to choose either the c or etf3eh (with convert utf
instruction) variants at runtime.
Furthermore a new vector variant for z13 is introduced which will be build
and chosen if vector support is available at build / runtime.
The vector variants optimize input of 1byte utf8 characters. The convert utf
instruction is used if a multibyte utf8 character is found.

This patch also fixes some whitespace errors. The c variants are rejecting
UTF-16 surrogates and values above 0x10ffff now.
Furthermore, the etf3eh variants are handling the "UTF-xx//IGNORE" case now.
Before they ignored the ignore-case and always stopped at an error.

ChangeLog:

	* sysdeps/s390/s390-64/utf8-utf32-z9.c: Use ifunc to select c, etf3eh
	or new vector loop-variant.
Diffstat (limited to 'catgets')
0 files changed, 0 insertions, 0 deletions