[PATCH] D68862: [ARM] Allocatable Global Register Variables for ARM
Carey Williams via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Oct 15 06:32:02 PDT 2019
carwil added a comment.
In D68862#1708132 <https://reviews.llvm.org/D68862#1708132>, @chill wrote:
> In D68862#1708079 <https://reviews.llvm.org/D68862#1708079>, @carwil wrote:
>
> > > IMHO, since reserved registes are per-function, this strongly suggests implementation as function attribute(s), rather than subtarget features (also for the pre-existing r9).
> >
> > What do you mean reserved registers are per-function? That sounds like you're describing local register variables, which I don't believe Clang has any support for (and there aren't a great deal of use-cases for anyway).
> > We're specifically talking about global usage here.
>
>
> I mean that the set is dynamically computed and depends on the specific function: cf. https://github.com/llvm/llvm-project/blob/master/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp#L184
> as opposed to, say, depend only on target/subtarget/abi.
Ah, I see. That's a fair comment. AArch64 also achieves it's -reserve-xN options via subtarget features (despite function context), I think that's where the inspiration/suggestion for doing it this way in the ARM backend came from.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D68862/new/
https://reviews.llvm.org/D68862
More information about the cfe-commits
mailing list