[PATCH] SubRegister Liveness fixups

Matthias Braun matze at braunis.de
Tue Nov 18 19:47:31 PST 2014


Here is a set of patches that deal with some regressions in the ARM testsuite if subregister liveness tracking is enabled.

The regressions/differences are mostly due to:
* Different register allocation, less spills in some cases - as expected
* The scheduled changed in some tests - I'm not sure yet if that is fine or hints at a problem
* We cannot maintain implicit definitions for superregisters after register allocation anymore if subregister are written. This required a rewrite of the VMOV widening logic. One of the remaining regressions appears to be another case of missing implicit definitions prohibiting float domain-crossing logic to kick in.
* In some situations fewer kill flags are produced, in other situations more kill flags are produced - this is fine as Kill-flags are deprecated anyway, but a testcases needed to be adapted.


Greetings
    Matthias

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-ARM-Enable-subregister-liveness.patch
Type: application/octet-stream
Size: 2533 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141118/3331fc75/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Do-not-unnecessarily-test-for-kill-flags.patch
Type: application/octet-stream
Size: 2394 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141118/3331fc75/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-ARM-Rework-widen-VMOVS-transformation.patch
Type: application/octet-stream
Size: 12451 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141118/3331fc75/attachment-0002.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-Adapt-testcases-to-different-schedules-after-subreg-.patch
Type: application/octet-stream
Size: 12324 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141118/3331fc75/attachment-0003.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-Add-enable-subreg-liveness-false-to-test.patch
Type: application/octet-stream
Size: 1077 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141118/3331fc75/attachment-0004.obj>


More information about the llvm-commits mailing list