[PATCH] D32057: [AMDGPU] added SIInstrInfo::getAddNoCarry() helper

Stanislav Mekhanoshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 13 18:00:08 PDT 2017


rampitec added a comment.

In https://reviews.llvm.org/D32057#726887, @rampitec wrote:

> In https://reviews.llvm.org/D32057#726862, @rampitec wrote:
>
> > In https://reviews.llvm.org/D32057#726838, @arsenm wrote:
> >
> > > In https://reviews.llvm.org/D32057#726726, @rampitec wrote:
> > >
> > > > SILoadStoreOptimizer itself does not use new helper because that would require an extra SGPR and move for every combined lds operation.
> > >
> > >
> > > What is preventing SIShrinkInstructions from handling it?
> >
> >
> > Good question. I will need to debug it.
>
>
> It just does not process it. It ends up here:
>
>   if (SDst) {
>     if (SDst->getReg() != AMDGPU::VCC) {
>       if (TargetRegisterInfo::isVirtualRegister(SDst->getReg()))
>         MRI.setRegAllocationHint(SDst->getReg(), 0, AMDGPU::VCC);
>       continue;
>     }
>   
>   


It can handle only:

V_MOV_B32_e32
S_NOP
S_ADD_I32
S_MUL_I32
SOPC*
S_MOV_B32
VOPC*
V_CNDMASK_B32_e32


Repository:
  rL LLVM

https://reviews.llvm.org/D32057





More information about the llvm-commits mailing list