Clean up some confusing language, and use more realistic examples.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Fri, 5 Apr 2013 01:25:41 +0000 (01:25 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Fri, 5 Apr 2013 01:25:41 +0000 (01:25 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178828 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/TargetInstrInfo.h

index fb311d8508562f5640bdbd70bfbb8b761257feb6..0ba75e5d7ca03718220c2c7b86574bc76aafb2b4 100644 (file)
@@ -364,11 +364,10 @@ public:
   /// condition code in Cond.
   ///
   /// When successful, also return the latency in cycles from TrueReg,
-  /// FalseReg, and Cond to the destination register. The Cond latency should
-  /// compensate for a conditional branch being removed. For example, if a
-  /// conditional branch has a 3 cycle latency from the condition code read,
-  /// and a cmov instruction has a 2 cycle latency from the condition code
-  /// read, CondCycles should be returned as -1.
+  /// FalseReg, and Cond to the destination register. In most cases, a select
+  /// instruction will be 1 cycle, so CondCycles = TrueCycles = FalseCycles = 1
+  ///
+  /// Some x86 implementations have 2-cycle cmov instructions.
   ///
   /// @param MBB         Block where select instruction would be inserted.
   /// @param Cond        Condition returned by AnalyzeBranch.