[PATCH] D49671: [SchedModel] Propagate read advance cycles to implicit operands outside instruction descriptor
    Matthias Braun via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Jul 23 15:38:25 PDT 2018
    
    
  
MatzeB added a comment.
In https://reviews.llvm.org/D49671#1172545, @MatzeB wrote:
> > As before, I am not really aware of the true necessities of these extra register allocator operands, but I trust they are needed somehow (explanations welcome).
>
> I think we mainly need these operands to make some situations explicit to the machine verifier and liveness computation. They are necessary to model some subreg liveness effects for the allocator when subregister liveness tracking is not enabled. Right now I wonder I cannot come up with the reason why we still keep them around with physregs after assignment (because when subreg liveness tracking is enabled we cannot even add them)...
Ignore this comment, looking at the code we obviously do not have implicit defs/uses before regalloc and only add them in VirtRegRewriter. Right now I'm struggling to come up with the reasoning for their existence... Might be related to the block-live-in lists not being computed at subreg granularity...
https://reviews.llvm.org/D49671
    
    
More information about the llvm-commits
mailing list