search for: regreductionpqbase

Displaying 3 results from an estimated 3 matches for "regreductionpqbase".

2012 Apr 20
2
[LLVMdev] [RFC] Scheduler Rework
...emental change to the existing code makes sense. The two implementations could live side-by-side for a while if that makes sense. The existing RegReduction scheduler design goes something like this: SchedulingPriorityQueue ^ | RegReductionPQBase ^ | RegReductionPriorityQueue<SF> ^ /|\ ______/ | \______ | | | Heuristic 1...
2013 Aug 21
1
[LLVMdev] PrescheduleNodesWithMultipleUses() probable mistake.
...on the Predecessor SUnit. Robert diff --git a/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp b/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp index f5fe168..6e888da --- a/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp +++ b/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp @@ -2850,7 +2850,7 @@ void RegReductionPQBase::PrescheduleNodesWithMultipleUses() { continue; // Avoid prescheduling to copies from virtual registers, which don't behave // like other nodes from the perspective of scheduling heuristics. - if (SDNode *N = SU->getNode()) + if (SDNode *N = PredSU->getNode())...
2013 Apr 25
1
[LLVMdev] getNodePriority()
...bounds ([16 x [17 x float]] addrspace(3)* @sgemm.b, i32 0, i32 0, i32 1), align 4 %42 = call float @llvm.fmuladd.f32(float %37, float %41, float %c1.036) nounwind ... and 254 more of these pairs. %39 and %41 (and 254 more loads) are dead after they are used in the immediately following fmuladd. RegReductionPQBase::getNodePriority() (in CodeGen/SelectionDAG/ScheduleDAGRRList.cpp) normally returns the SethiUllmanNumber for a node, but there's a few special cases. ISD::TokenFactor and ISD::CopyToReg return a 0, to push them closer to their uses, and similarly for TargetOpcode::EXTRACT_SUBREG, TargetOpcode:...