aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/ModuleUtils.cpp
diff options
context:
space:
mode:
authorSimon Wallis <simon.wallis2@arm.com>2020-06-08 08:10:42 +0100
committerSimon Wallis <simon.wallis2@arm.com>2020-06-08 08:13:08 +0100
commit7432fb2c784691eb85b5996e0922b55389b43b6e (patch)
treecedaa9c9db07271c69c5002952cf6b43f9fa8e42 /llvm/lib/Transforms/Utils/ModuleUtils.cpp
parent2aa483016de0a8b3d61d15f4973293cccd65c378 (diff)
downloadllvm-7432fb2c784691eb85b5996e0922b55389b43b6e.zip
llvm-7432fb2c784691eb85b5996e0922b55389b43b6e.tar.gz
llvm-7432fb2c784691eb85b5996e0922b55389b43b6e.tar.bz2
[ARM][XO] Execute-only miscompiles double literals for big-endian
Summary: With -mbig-endian -mexecute-only and targeting an fpu, an incorrect sequence of movw/movt was generated to construct a double literal. The test suite was hardwired to check these wrong values. The fault was caused by the explicit word swap in LowerConstantFP(). With -mbig-endian -mexecute-only -mfpu=none, a correct sequence of movw/movt is generated to construct a double literal. The test suite did not test this no fpu case. The test suite expected values have been corrected. The test file is updated to add testing of fpu=none case Reviewers: christof, llvm-commits, dmgreen Reviewed By: dmgreen Subscribers: dmgreen, kristof.beyls, hiraditya, danielkiss Tags: #llvm Differential Revision: https://reviews.llvm.org/D81259 Change-Id: Ia3737df243218c89c82f02b7f9f4032ecd5a3917
Diffstat (limited to 'llvm/lib/Transforms/Utils/ModuleUtils.cpp')
0 files changed, 0 insertions, 0 deletions