Home | History | Annotate | Download | only in Scalar

Lines Matching defs:Reassociate

1 //===- Reassociate.cpp - Reassociate binary expressions -------------------===//
46 #define DEBUG_TYPE "reassociate"
148 class Reassociate : public FunctionPass {
155 Reassociate() : FunctionPass(ID) {
218 char Reassociate::ID = 0;
219 INITIALIZE_PASS(Reassociate, "reassociate",
220 "Reassociate expressions", false, false)
222 // Public interface to the Reassociate pass
223 FunctionPass *llvm::createReassociatePass() { return new Reassociate(); }
247 void Reassociate::BuildRankMap(Function &F) {
271 unsigned Reassociate::getRank(Value *V) {
282 // we can reassociate expressions for code motion! Since we do not recurse
302 void Reassociate::canonicalizeOperands(Instruction *I) {
712 void Reassociate::RewriteExprTree(BinaryOperator *I,
939 // be zapped by reassociate later, so we don't need much finesse here.
1096 Value *Reassociate::RemoveFactorFromExpression(Value *V, Value *Factor) {
1260 bool Reassociate::CombineXorOpnd(Instruction *I, XorOpnd *Opnd1,
1295 bool Reassociate::CombineXorOpnd(Instruction *I, XorOpnd *Opnd1, XorOpnd *Opnd2,
1370 Value *Reassociate::OptimizeXor(Instruction *I,
1479 Value *Reassociate::OptimizeAdd(Instruction *I,
1571 // reassociate this to A*(A+B*C)+D, which reduces the number of multiplies.
1717 bool Reassociate::collectMultiplyFactors(SmallVectorImpl<ValueEntry> &Ops,
1791 Value *Reassociate::buildMinimalMultiplyDAG(IRBuilder<> &Builder,
1846 Value *Reassociate::OptimizeMul(BinaryOperator *I,
1870 Value *Reassociate::OptimizeExpression(BinaryOperator *I,
1930 void Reassociate::EraseInst(Instruction *I) {
1954 Instruction *Reassociate::canonicalizeNegConstExpr(Instruction *I) {
2031 void Reassociate::OptimizeInst(Instruction *I) {
2068 // Do not reassociate boolean (i1) expressions. We want to preserve the
2093 // reassociate further.
2116 // reassociate further.
2157 void Reassociate::ReassociateExpression(BinaryOperator *I) {
2199 // In this case we reassociate to put the negation on the outside so that we
2239 bool Reassociate::runOnFunction(Function &F) {