<div dir="ltr">Hi Evandro,<div><br></div><div>You broke the Werror build (TII was unused except in debug builds), I've gone ahead and fixed it in r297507.</div><div><br></div><div>-eric</div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Mar 10, 2017 at 12:32 PM Evandro Menezes via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: evandro<br class="gmail_msg">
Date: Fri Mar 10 14:20:04 2017<br class="gmail_msg">
New Revision: 297504<br class="gmail_msg">
<br class="gmail_msg">
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=297504&view=rev" rel="noreferrer" class="gmail_msg" target="_blank">http://llvm.org/viewvc/llvm-project?rev=297504&view=rev</a><br class="gmail_msg">
Log:<br class="gmail_msg">
[AArch64, X86] Additional debug information for MacroFusion<br class="gmail_msg">
<br class="gmail_msg">
In order to make it easier to parse information about the performance of<br class="gmail_msg">
MacroFusion, this patch adds the function and the instruction names to the<br class="gmail_msg">
debug output of this pass.<br class="gmail_msg">
<br class="gmail_msg">
Modified:<br class="gmail_msg">
    llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp<br class="gmail_msg">
    llvm/trunk/lib/Target/X86/X86MacroFusion.cpp<br class="gmail_msg">
<br class="gmail_msg">
Modified: llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp<br class="gmail_msg">
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp?rev=297504&r1=297503&r2=297504&view=diff" rel="noreferrer" class="gmail_msg" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp?rev=297504&r1=297503&r2=297504&view=diff</a><br class="gmail_msg">
==============================================================================<br class="gmail_msg">
--- llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp (original)<br class="gmail_msg">
+++ llvm/trunk/lib/Target/AArch64/AArch64MacroFusion.cpp Fri Mar 10 14:20:04 2017<br class="gmail_msg">
@@ -209,11 +209,19 @@ static bool scheduleAdjacentImpl(Schedul<br class="gmail_msg">
         Dep.setLatency(0);<br class="gmail_msg">
<br class="gmail_msg">
     ++NumFused;<br class="gmail_msg">
-    DEBUG(dbgs() << "Macro fuse ";<br class="gmail_msg">
-          Preds ? BSU->print(dbgs(), DAG) : ASU->print(dbgs(), DAG);<br class="gmail_msg">
-          dbgs() << " - ";<br class="gmail_msg">
-          Preds ? ASU->print(dbgs(), DAG) : BSU->print(dbgs(), DAG);<br class="gmail_msg">
-          dbgs() << '\n');<br class="gmail_msg">
+    DEBUG({ SUnit *LSU = Preds ? BSU : ASU;<br class="gmail_msg">
+            SUnit *RSU = Preds ? ASU : BSU;<br class="gmail_msg">
+            const MachineInstr *LMI = Preds ? BMI : AMI;<br class="gmail_msg">
+            const MachineInstr *RMI = Preds ? AMI : BMI;<br class="gmail_msg">
+<br class="gmail_msg">
+            dbgs() << DAG->MF.getName() << "(): Macro fuse ";<br class="gmail_msg">
+            LSU->print(dbgs(), DAG);<br class="gmail_msg">
+            dbgs() << " - ";<br class="gmail_msg">
+            RSU->print(dbgs(), DAG);<br class="gmail_msg">
+            dbgs() << " / " <<<br class="gmail_msg">
+                      TII->getName(LMI->getOpcode()) << " - " <<<br class="gmail_msg">
+                      TII->getName(RMI->getOpcode()) << '\n';<br class="gmail_msg">
+          });<br class="gmail_msg">
<br class="gmail_msg">
     return true;<br class="gmail_msg">
   }<br class="gmail_msg">
<br class="gmail_msg">
Modified: llvm/trunk/lib/Target/X86/X86MacroFusion.cpp<br class="gmail_msg">
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MacroFusion.cpp?rev=297504&r1=297503&r2=297504&view=diff" rel="noreferrer" class="gmail_msg" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MacroFusion.cpp?rev=297504&r1=297503&r2=297504&view=diff</a><br class="gmail_msg">
==============================================================================<br class="gmail_msg">
--- llvm/trunk/lib/Target/X86/X86MacroFusion.cpp (original)<br class="gmail_msg">
+++ llvm/trunk/lib/Target/X86/X86MacroFusion.cpp Fri Mar 10 14:20:04 2017<br class="gmail_msg">
@@ -214,6 +214,7 @@ public:<br class="gmail_msg">
<br class="gmail_msg">
 void X86MacroFusion::apply(ScheduleDAGInstrs *DAGInstrs) {<br class="gmail_msg">
   ScheduleDAGMI *DAG = static_cast<ScheduleDAGMI*>(DAGInstrs);<br class="gmail_msg">
+  const TargetInstrInfo &TII = *DAG->TII;<br class="gmail_msg">
   const X86Subtarget &ST = DAG->MF.getSubtarget<X86Subtarget>();<br class="gmail_msg">
<br class="gmail_msg">
   // For now, assume targets can only fuse with the branch.<br class="gmail_msg">
@@ -249,9 +250,12 @@ void X86MacroFusion::apply(ScheduleDAGIn<br class="gmail_msg">
         SuccDep.setLatency(0);<br class="gmail_msg">
<br class="gmail_msg">
     ++NumFused;<br class="gmail_msg">
-    DEBUG(dbgs() << "Macro fuse ";<br class="gmail_msg">
+    DEBUG(dbgs() << DAG->MF.getName() << "(): Macro fuse ";<br class="gmail_msg">
           SU.print(dbgs(), DAG);<br class="gmail_msg">
-          dbgs() << " - ExitSU" << '\n');<br class="gmail_msg">
+          dbgs() << " - ExitSU" << " / " <<<br class="gmail_msg">
+                    TII.getName(Pred.getOpcode()) << " - " <<<br class="gmail_msg">
+                    TII.getName(Branch->getOpcode()) << '\n';<br class="gmail_msg">
+);<br class="gmail_msg">
<br class="gmail_msg">
     break;<br class="gmail_msg">
   }<br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
_______________________________________________<br class="gmail_msg">
llvm-commits mailing list<br class="gmail_msg">
<a href="mailto:llvm-commits@lists.llvm.org" class="gmail_msg" target="_blank">llvm-commits@lists.llvm.org</a><br class="gmail_msg">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br class="gmail_msg">
</blockquote></div>