[llvm] r297504 - [AArch64, X86] Additional debug information for MacroFusion

Eric Christopher via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 10 13:37:01 PST 2017


No worries, it happens to all of us :)

-eric

On Fri, Mar 10, 2017 at 1:36 PM Evandro Menezes <e.menezes at samsung.com>
wrote:

> Hi, Eric.
>
> I was just about to commit a patch fixing this issue, but I'm glad that
> you beat me to it and provided a fixed sooner.
>
> Thank you,
>
> --
> Evandro Menezes
>
> On 03/10/2017 03:32 PM, Eric Christopher wrote:
> > Hi Evandro,
> >
> > You broke the Werror build (TII was unused except in debug builds),
> > I've gone ahead and fixed it in r297507.
> >
> > -eric
> >
> > On Fri, Mar 10, 2017 at 12:32 PM Evandro Menezes via llvm-commits
> > <llvm-commits at lists.llvm.org <mailto:llvm-commits at lists.llvm.org>>
> wrote:
> >
> >     Author: evandro
> >     Date: Fri Mar 10 14:20:04 2017
> >     New Revision: 297504
> >
> >     URL: http://llvm.org/viewvc/llvm-project?rev=297504&view=rev
> >     Log:
> >     [AArch64, X86] Additional debug information for MacroFusion
> >
> >     In order to make it easier to parse information about the
> >     performance of
> >     MacroFusion, this patch adds the function and the instruction
> >     names to the
> >     debug output of this pass.
> >
> >     Modified:
> >         llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp
> >         llvm/trunk/lib/Target/X86/X86MacroFusion.cpp
> >
> >     Modified: llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp
> >     URL:
> >
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp?rev=297504&r1=297503&r2=297504&view=diff
> >
>  ==============================================================================
> >     --- llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp (original)
> >     +++ llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp Fri Mar
> >     10 14:20:04 2017
> >     @@ -209,11 +209,19 @@ static bool scheduleAdjacentImpl(Schedul
> >              Dep.setLatency(0);
> >
> >          ++NumFused;
> >     -    DEBUG(dbgs() << "Macro fuse ";
> >     -          Preds ? BSU->print(dbgs(), DAG) : ASU->print(dbgs(), DAG);
> >     -          dbgs() << " - ";
> >     -          Preds ? ASU->print(dbgs(), DAG) : BSU->print(dbgs(), DAG);
> >     -          dbgs() << '\n');
> >     +    DEBUG({ SUnit *LSU = Preds ? BSU : ASU;
> >     +            SUnit *RSU = Preds ? ASU : BSU;
> >     +            const MachineInstr *LMI = Preds ? BMI : AMI;
> >     +            const MachineInstr *RMI = Preds ? AMI : BMI;
> >     +
> >     +            dbgs() << DAG->MF.getName() << "(): Macro fuse ";
> >     +            LSU->print(dbgs(), DAG);
> >     +            dbgs() << " - ";
> >     +            RSU->print(dbgs(), DAG);
> >     +            dbgs() << " / " <<
> >     +                      TII->getName(LMI->getOpcode()) << " - " <<
> >     +                      TII->getName(RMI->getOpcode()) << '\n';
> >     +          });
> >
> >          return true;
> >        }
> >
> >     Modified: llvm/trunk/lib/Target/X86/X86MacroFusion.cpp
> >     URL:
> >
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MacroFusion.cpp?rev=297504&r1=297503&r2=297504&view=diff
> >
>  ==============================================================================
> >     --- llvm/trunk/lib/Target/X86/X86MacroFusion.cpp (original)
> >     +++ llvm/trunk/lib/Target/X86/X86MacroFusion.cpp Fri Mar 10
> >     14:20:04 2017
> >     @@ -214,6 +214,7 @@ public:
> >
> >      void X86MacroFusion::apply(ScheduleDAGInstrs *DAGInstrs) {
> >        ScheduleDAGMI *DAG = static_cast<ScheduleDAGMI*>(DAGInstrs);
> >     +  const TargetInstrInfo &TII = *DAG->TII;
> >        const X86Subtarget &ST = DAG->MF.getSubtarget<X86Subtarget>();
> >
> >        // For now, assume targets can only fuse with the branch.
> >     @@ -249,9 +250,12 @@ void X86MacroFusion::apply(ScheduleDAGIn
> >              SuccDep.setLatency(0);
> >
> >          ++NumFused;
> >     -    DEBUG(dbgs() << "Macro fuse ";
> >     +    DEBUG(dbgs() << DAG->MF.getName() << "(): Macro fuse ";
> >                SU.print(dbgs(), DAG);
> >     -          dbgs() << " - ExitSU" << '\n');
> >     +          dbgs() << " - ExitSU" << " / " <<
> >     +                    TII.getName(Pred.getOpcode()) << " - " <<
> >     +                    TII.getName(Branch->getOpcode()) << '\n';
> >     +);
> >
> >          break;
> >        }
> >
> >
> >     _______________________________________________
> >     llvm-commits mailing list
> >     llvm-commits at lists.llvm.org <mailto:llvm-commits at lists.llvm.org>
> >     http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170310/bd5dc7d9/attachment.html>


More information about the llvm-commits mailing list