aboutsummaryrefslogtreecommitdiff
path: root/include/llvm
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2008-07-14 18:19:29 +0000
committerDan Gohman <gohman@apple.com>2008-07-14 18:19:29 +0000
commit5e84368b26415b3bb7f3f8d9cff3e05938dd82d0 (patch)
treefcaebec3993c08eb5c03d062e330b6397cedd582 /include/llvm
parent3fea643fb427e72907b7a40e940d7949d1d57e76 (diff)
Reapply 53476 and 53480, with a fix so that it properly updates
the BB member to the current basic block after emitting instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53567 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r--include/llvm/CodeGen/ScheduleDAG.h4
-rw-r--r--include/llvm/CodeGen/SelectionDAGISel.h5
-rw-r--r--include/llvm/Support/Timer.h2
3 files changed, 7 insertions, 4 deletions
diff --git a/include/llvm/CodeGen/ScheduleDAG.h b/include/llvm/CodeGen/ScheduleDAG.h
index ed7801fbfc..0225b1231e 100644
--- a/include/llvm/CodeGen/ScheduleDAG.h
+++ b/include/llvm/CodeGen/ScheduleDAG.h
@@ -265,7 +265,7 @@ namespace llvm {
/// Run - perform scheduling.
///
- MachineBasicBlock *Run();
+ void Run();
/// isPassiveNode - Return true if the node is a non-scheduled leaf.
///
@@ -336,7 +336,7 @@ namespace llvm {
///
void EmitNoop();
- void EmitSchedule();
+ MachineBasicBlock *EmitSchedule();
void dumpSchedule() const;
diff --git a/include/llvm/CodeGen/SelectionDAGISel.h b/include/llvm/CodeGen/SelectionDAGISel.h
index e0b26b926b..72a836f55b 100644
--- a/include/llvm/CodeGen/SelectionDAGISel.h
+++ b/include/llvm/CodeGen/SelectionDAGISel.h
@@ -30,6 +30,7 @@ namespace llvm {
class FunctionLoweringInfo;
class HazardRecognizer;
class CollectorMetadata;
+ class ScheduleDAG;
/// SelectionDAGISel - This is the common base class used for SelectionDAG-based
/// pattern-matching instruction selectors.
@@ -191,9 +192,9 @@ private:
void ComputeLiveOutVRegInfo(SelectionDAG &DAG);
- /// Pick a safe ordering and emit instructions for each target node in the
+ /// Pick a safe ordering for instructions for each target node in the
/// graph.
- void ScheduleAndEmitDAG(SelectionDAG &DAG);
+ ScheduleDAG *Schedule(SelectionDAG &DAG);
/// SwitchCases - Vector of CaseBlock structures used to communicate
/// SwitchInst code generation information.
diff --git a/include/llvm/Support/Timer.h b/include/llvm/Support/Timer.h
index 4164ddc891..b9882a9708 100644
--- a/include/llvm/Support/Timer.h
+++ b/include/llvm/Support/Timer.h
@@ -132,6 +132,8 @@ public:
///
struct NamedRegionTimer : public TimeRegion {
explicit NamedRegionTimer(const std::string &Name);
+ explicit NamedRegionTimer(const std::string &Name,
+ const std::string &GroupName);
};