diff options
author | Richard Earnshaw <rearnsha@arm.com> | 2024-05-15 16:06:28 +0100 |
---|---|---|
committer | Richard Earnshaw <rearnsha@arm.com> | 2024-05-16 11:10:15 +0100 |
commit | 7e544ad81a55941cda38d9195e79dace243f48d0 (patch) | |
tree | ad240fd48c685b87448685e1d24288b288ad6e58 /libctf/ctf-string.c | |
parent | 9c54f520db35bea9d02d121d4f368a5d196c5a8c (diff) | |
download | binutils-7e544ad81a55941cda38d9195e79dace243f48d0.zip binutils-7e544ad81a55941cda38d9195e79dace243f48d0.tar.gz binutils-7e544ad81a55941cda38d9195e79dace243f48d0.tar.bz2 |
arm: remove incorrect handling of FP bignums in move_or_literal_pool
This hunk of code in move_or_literal_pool just looks wrong, but I
can't find a testcase that will tickle it to prove it. It looks a bit
like it was intended to catch cases where a bignum contained a
floating-point value, but there were a number of problems with it.
- It tested X_add_number == -1, but an FP bignum is indicated by any
value <= 0.
- It converted the floating-point value to extended precision, but
that's not used on Arm beyond the legacy FPA code. No attempt was
made to match the FP value to the intended memory/mov operation.
Since I can't construct a viable testcase, I've just removed the existing
code and made the function error out in this case: this seems more sensible
than generating wrong code or trying to write something more complex that
can't be tested anyway.
Diffstat (limited to 'libctf/ctf-string.c')
0 files changed, 0 insertions, 0 deletions