First pass at the DAG Combiner. It isn't used anywhere yet, but it should

be mostly functional.  It currently has all folds from SelectionDAG.cpp
that do not involve a condition code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23184 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nate Begeman 2005-09-01 00:19:25 +00:00
parent feca19b0d4
commit 1d4d414111
2 changed files with 1062 additions and 0 deletions

View File

@ -79,6 +79,12 @@ public:
///
const SDOperand &setRoot(SDOperand N) { return Root = N; }
/// Combine - This iterates over the nodes in the SelectionDAG, folding
/// certain types of nodes together, or eliminating superfluous nodes. When
/// the AfterLegalize argument is set to 'true', Combine takes care not to
/// generate any nodes that will be illegal on the target.
void Combine(bool AfterLegalize);
/// Legalize - This transforms the SelectionDAG into a SelectionDAG that is
/// compatible with the target instruction selector, as indicated by the
/// TargetLowering object.

File diff suppressed because it is too large Load Diff