[PATCH] Add a case to LiveIntervalAnalysis::HandleMoveUp
Jakob Stoklund Olesen
stoklund at 2pi.dk
Sun Feb 10 08:32:42 PST 2013
On Feb 9, 2013, at 4:14 PM, Vincent Lejeune <vljn at ovi.com> wrote:
> I'd like to reorder subregisters as part of pre RA scheduling machine instruction, in order to maximise bundling opportunities later.
> In R600 there are 128 bits registers, Tn_XYZW, and 4 more times 32 bits registers, Tn_X, Tn_Y, TnZ and Tn_W, with n between 0 and 127 in both case.
> The Tn_X, Tn_Y, Tn_Z and Tn_W register are also subregister of the Tn_XYZW register. They map to what the R600 doc calls "channel", that is T1_X is
> channel Y of register 1.
That's fine, but when a VNInfo is live out of a basic block, it can have a very complicated live ranges with multiple discontiguous segments. Your patch didn't account for that.
This is why I suggested that you work through an example with a live-out value number.
/jakob
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130210/8e013311/attachment.html>
More information about the llvm-commits
mailing list