[PATCH] D31182: [InstCombine] fadd double (sitofp x), y check that the promotion is valid
Boris Ulasevich via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 21 06:58:32 PDT 2017
boris.ulasevich added inline comments.
Comment at: test/Transforms/InstCombine/add-sitofp.ll:16
+; CHECK: fadd float
+ %m = lshr i32 %a, 24
+ %n = and i32 %m, %b
Why do we need lshr here? %n + 1 = ((%m >>> 24) && %b) + 1 takes range 1..256 - it fits quite well to 23-bit single precision mantissa, and optimisation can be applied here, isn't it?
Does it make sense for you? Do I miss something?
More information about the llvm-commits