diff options
author | Khem Raj <raj.khem@gmail.com> | 2025-08-16 22:53:31 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-08-18 21:14:07 +0100 |
commit | 36c6209b323bb15f7ab366d4a503012d1f43eb6b (patch) | |
tree | a5e922cb8806a79d1e68639519fad731f2616d7f /bitbake/lib/progressbar/progressbar.py | |
parent | f9e0afedea37edeabc7dcb03bddd7a60fe8d6945 (diff) | |
download | poky-36c6209b323bb15f7ab366d4a503012d1f43eb6b.tar.gz |
perl: Disable builtin memcpy & string inlines with gcc/x86-64-v3
PERL built with GCC 15 and -march=x86-64-v3 fails several
op/pack.t cases due to aggressive lowering of __builtin_memcpy
and inlined/fortified string ops. In pp_pack, some in-place copies
can overlap, treating memcpy as non-overlapping yields corrupted
bytes (zeros or wrong prefixes).
The issue does not reproduce with -march=core2.
When using x86-64-v3 memcpy gets emitted very aggressively
(vectorized / reordered) and assumes no overlap.
The flags force calls through libc (overlap-safe behavior),
restoring deterministic pack/unpack and fixing the test failures.
Inline functions could be faster in execution but correctness is
more important
Fixes [YOCTO #15950]
(From OE-Core rev: 6d557b16f1e45e616c6eb208e4d7a2f2839a2e4f)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/progressbar/progressbar.py')
0 files changed, 0 insertions, 0 deletions