Adding Operator Strength Reduction to LLVM