[PATCH] D109954: [InstCombine] powi(x, y) * powi(x, z) -> powi(x, y + z)

Dávid Bolvanský via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 17 13:38:41 PDT 2021


xbolva00 added a comment.

In D109954#3006594 <https://reviews.llvm.org/D109954#3006594>, @spatel wrote:

> Pre-commit tests please, so it's easier to see transforms vs. negative tests. 
> We need to propagate the FMF to the new powi (should be able to compare against the existing 'pow' tests to see if we're missing any corner cases).
>
> I'd vary at least one positive test to have extra FMF (eg, "fast"), so we know everything is transferred as expected.
>
> And we need at least one more test like this:
>
>   define double @different_types_powi(double %x, i32 %y, i64 %z) {
>     %p1 = tail call double @llvm.powi.f64.i32(double %x, i32 %y)
>     %p2 = tail call double @llvm.powi.f64.i64(double %x, i64 %z)
>     %mul = fmul reassoc double %p2, %p1
>     ret double %mul
>   }

Thanks!

>> different_types_powi

gotcha, added type check.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D109954/new/

https://reviews.llvm.org/D109954



More information about the llvm-commits mailing list