[CodeGen] allow printing of zero latency in sched comments
authorSanjay Patel <spatel@rotateright.com>
Wed, 14 Mar 2018 15:28:48 +0000 (15:28 +0000)
committerSanjay Patel <spatel@rotateright.com>
Wed, 14 Mar 2018 15:28:48 +0000 (15:28 +0000)
I don't know how to expose this in a test. There are ARM / AArch64
sched classes that include zero latency instructions, but I'm not
seeing sched info printed for those targets. X86 will almost
certainly have these soon (see PR36671), but no model has
'let Latency = 0' currently.

llvm-svn: 327518

llvm/lib/CodeGen/TargetSubtargetInfo.cpp

index a72d7eb..0d7940d 100644 (file)
@@ -68,17 +68,15 @@ bool TargetSubtargetInfo::useAA() const {
 }
 
 static std::string createSchedInfoStr(unsigned Latency,
-                                     Optional<double> RThroughput) {
+                                      Optional<double> RThroughput) {
   static const char *SchedPrefix = " sched: [";
   std::string Comment;
   raw_string_ostream CS(Comment);
-  if (Latency > 0 && RThroughput.hasValue())
+  if (RThroughput.hasValue())
     CS << SchedPrefix << Latency << format(":%2.2f", RThroughput.getValue())
        << "]";
-  else if (Latency > 0)
+  else
     CS << SchedPrefix << Latency << ":?]";
-  else if (RThroughput.hasValue())
-    CS << SchedPrefix << "?:" << RThroughput.getValue() << "]";
   CS.flush();
   return Comment;
 }