I think Roland's first patch is correct, just call fold_alu_op2 if we get back 2 sources from fold_assoc. return true is for when we've finished all folding on that instruction, so I don't think that's correct without calling fold_alu_op2