namespace {
class Reassociate : public FunctionPass {
- map<BasicBlock*, unsigned> RankMap;
+ std::map<BasicBlock*, unsigned> RankMap;
public:
- const char *getPassName() const {
- return "Expression Reassociation";
- }
-
bool runOnFunction(Function &F);
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
bool ReassociateExpr(BinaryOperator *I);
bool ReassociateBB(BasicBlock *BB);
};
+
+ RegisterOpt<Reassociate> X("reassociate", "Reassociate expressions");
}
Pass *createReassociatePass() { return new Reassociate(); }