[PATCH] D14719: Track pristine registers in terms of register units.

Quentin Colombet via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 16 12:42:37 PST 2015


> On Nov 16, 2015, at 12:19 PM, Krzysztof Parzyszek <kparzysz at codeaurora.org> wrote:
> 
> kparzysz added a comment.
> 
> How do you prevent the scavenger from clobbering YMM0 then?

IIRC the scavenger runs on RegUnit.

>  Do you think that a similar problem could also happen on X86 in some circumstances?

Theoretically that should be possible, but right now the CSRs are set by indirectly set by TargetFrameLowering::determineCalleeSaves
for x86, which calls MachineRegisterInfo::isPhysRegModified for all registers. And that method checks for aliases.

I.e., even if getCalleeSavedRegister represents only the minimal set, getCalleeSavedInfo gets all.

Hope that helps.

Q.

> 
> 
> Repository:
>  rL LLVM
> 
> http://reviews.llvm.org/D14719
> 
> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151116/6f477c95/attachment.html>


More information about the llvm-commits mailing list