[ARM] Fix pointer offset when splitting stores from VMOVDRR
authorDavid Green <david.green@arm.com>
Sat, 3 Oct 2020 15:47:50 +0000 (16:47 +0100)
committerDavid Green <david.green@arm.com>
Sat, 3 Oct 2020 15:47:50 +0000 (16:47 +0100)
commit7feafa0286f1f5e059d70a9a9f4168f32db3b444
tree92345ef05735cfd5745978d77a7bb87a629a1ec2
parentaacfe2be53d441d256091b2b495875a69fc2f285
[ARM] Fix pointer offset when splitting stores from VMOVDRR

We were not accounting for the pointer offset when splitting a store from
a VMOVDRR node, which could lead to incorrect aliasing info. In this
case it is the fneg via integer arithmetic that gives us a store->load
pair that we started getting wrong.

Differential Revision: https://reviews.llvm.org/D88653
llvm/lib/Target/ARM/ARMISelLowering.cpp
llvm/test/CodeGen/Thumb2/vmovdrroffset.ll