Displaying 9 results from an estimated 9 matches for "getmatchingsuperreg".
2016 Apr 07
2
Inline asm clobber registers name
Hi all,
I am currently working on AMDGPU inline assembly and encountered problem
with naming clobber registers in asm constraints. It looks like by default
LLVM tries to match register specified in constraint to register name of
register definition in .td file but not to the AsmName for this register.
For example if we have register definition:
def MYReg0 : Register<"r0", 0>;
2016 Jul 28
0
A thought to improve IPRA
...uction according to target. So
here I think it may be good to push/pop R8 for R8D (i.e I don't want to
change current implementation which inserts MI for CSR) for that I need to
find biggest register for which given register is alias like R8 has R8D as
alias. How can I find that?
I tried to use getMatchingSuperReg(unsigned Reg, unsigned SubIdx, const
TargetRegisterClass *RC) but here I don't know what will be SubIdx for
given Reg in given RC.
So for example if a function which should be optimized for above
optimization is having following set of clobbered registers:
R8D,R8, ECX, EAX, RAX, ESI It should...
2016 Jul 29
2
A thought to improve IPRA
...target. So here I think it may be good to push/pop R8 for R8D (i.e I
> don't want to change current implementation which inserts MI for
> CSR) for that I need to find biggest register for which given
> register is alias like R8 has R8D as alias. How can I find that?
> I tried to use getMatchingSuperReg(unsigned Reg, unsigned SubIdx,
> const TargetRegisterClass *RC) but here I don't know what will be
> SubIdx for given Reg in given RC.
>
>
> So for example if a function which should be optimized for above
> optimization is having following set of clobbered registers:
> R...
2016 Jul 08
3
A thought to improve IPRA
On Sat, Jul 9, 2016 at 12:18 AM, Mehdi Amini <mehdi.amini at apple.com> wrote:
>
> On Jul 8, 2016, at 11:41 AM, vivek pandya <vivekvpandya at gmail.com> wrote:
>
>
>
> On Fri, Jul 8, 2016 at 11:46 PM, Mehdi Amini <mehdi.amini at apple.com>
> wrote:
>
>>
>> On Jul 8, 2016, at 11:12 AM, vivek pandya <vivekvpandya at gmail.com> wrote:
2016 Jul 28
1
A thought to improve IPRA
...according to target. So here I think it may be good to push/pop R8 for R8D (i.e I don't want to change current implementation which inserts MI for CSR) for that I need to find biggest register for which given register is alias like R8 has R8D as alias. How can I find that?
> I tried to use getMatchingSuperReg(unsigned Reg, unsigned SubIdx, const TargetRegisterClass *RC) but here I don't know what will be SubIdx for given Reg in given RC.
If you create a function with a “preserve_all” CC and put some inline assembly that clobbers r8d, I expect we’re already generating the correct push (outside of IP...
2016 Jul 29
0
A thought to improve IPRA
...ink it may be good to push/pop R8 for R8D (i.e I
> > don't want to change current implementation which inserts MI for
> > CSR) for that I need to find biggest register for which given
> > register is alias like R8 has R8D as alias. How can I find that?
> > I tried to use getMatchingSuperReg(unsigned Reg, unsigned SubIdx,
> > const TargetRegisterClass *RC) but here I don't know what will be
> > SubIdx for given Reg in given RC.
> >
> >
> > So for example if a function which should be optimized for above
> > optimization is having following set of...
2016 Jul 29
2
A thought to improve IPRA
...t; I
>
> > > don't want to change current implementation which inserts MI for
>
> > > CSR) for that I need to find biggest register for which given
>
> > > register is alias like R8 has R8D as alias. How can I find that?
>
> > > I tried to use getMatchingSuperReg(unsigned Reg, unsigned SubIdx,
>
> > > const TargetRegisterClass *RC) but here I don't know what will be
>
> > > SubIdx for given Reg in given RC.
>
> > >
>
> > >
>
> > > So for example if a function which should be optimized for...
2016 Aug 05
2
A thought to improve IPRA
...ink it may be good to push/pop R8 for R8D (i.e I
> > don't want to change current implementation which inserts MI for
> > CSR) for that I need to find biggest register for which given
> > register is alias like R8 has R8D as alias. How can I find that?
> > I tried to use getMatchingSuperReg(unsigned Reg, unsigned SubIdx,
> > const TargetRegisterClass *RC) but here I don't know what will be
> > SubIdx for given Reg in given RC.
> >
> >
> > So for example if a function which should be optimized for above
> > optimization is having following set of...
2016 Aug 16
2
A thought to improve IPRA
...>>>> > don't want to change current implementation which inserts MI for
>>>> > CSR) for that I need to find biggest register for which given
>>>> > register is alias like R8 has R8D as alias. How can I find that?
>>>> > I tried to use getMatchingSuperReg(unsigned Reg, unsigned SubIdx,
>>>> > const TargetRegisterClass *RC) but here I don't know what will be
>>>> > SubIdx for given Reg in given RC.
>>>> >
>>>> >
>>>> > So for example if a function which should be optimized...