[PATCH] Rework widen VMOVS transformation to not depend on implicit defs/uses

Matthias Braun matze at braunis.de
Wed Nov 19 16:58:18 PST 2014


Hi Evan, list,

the attached patch rewrites VMOVS widening transformation in the arm backend to be an independent pass that relies on actual liveness data instead of implicit superregister defs/uses being present.
This new approach has to perform liveness simulation (it only does this on demand if it actually finds any candidates) and is therefore slower than the previous approach. However with the upcoming subregister liveness tracking we will not be able to maintain reliable superregister def/uses anymore and need this rewrite; The new pass also seems to trigger in two more cases in the testsuite where we did not have implicit superregister defs but still benefit from a promotion.

Greetings
    Matthias

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-ARM-Rework-widen-VMOVS-transformation.patch
Type: application/octet-stream
Size: 11834 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141119/1d0a540e/attachment.obj>


More information about the llvm-commits mailing list