OSDN Git Service

libc: ARM64: fix memset for non-standard ZVA sizes
authorKevin Brodsky <kevin.brodsky@linaro.org>
Tue, 16 May 2017 10:29:49 +0000 (11:29 +0100)
committerKevin Brodsky <kevin.brodsky@linaro.org>
Tue, 16 May 2017 10:29:49 +0000 (11:29 +0100)
commitf19eeb8446de27e6b43c77642b03729e10facb2c
tree04842f48982193239fa0af243bfb6a91eb1cbf12
parentf0ddcc676c0bcf44625e8651c0959f9176cd8cc5
libc: ARM64: fix memset for non-standard ZVA sizes

372f19e9e27c ("libc: ARM64: update memset/strlen/memcpy/memmove to
newlib/cortex-strings") introduced a bug in memset, only occurring
on the [set_long + zero + non-standard ZVA size] path, more
specifically when DCZID_EL0 reports a size different to 64 or 128.

On platforms with such sizes reported by DCZID_EL0, various string*
unit tests fail due to memset zeroing memory before and/or after the
area it is supposed to set.

Test: bionic-unit-tests --gtest_filter=string*
Change-Id: Idb80c0269226e40e343645a58608e3f324378468
libc/arch-arm64/generic/bionic/memset.S