https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88579

--- Comment #3 from Harald Anlauf <anlauf at gmx dot de> ---
Suggested testcase for the patch in comment #1, derived from power_7.f90:

! { dg-do run }
! { dg-additional-options "-fdump-tree-original" }
! Test optimizations for bases that are powers of 2.
program p
  integer    :: i
  integer(8) :: v
   v = 1
   do i=1,7
      v = v * 256_8
      if (v /= 256_8 ** i) stop 1
   end do
   v = 1
   do i=1,3
      v = v * 65536_8
      if (v /= 65536_8 ** i) stop 2
   end do
 end program p
! { dg-final { scan-tree-dump-not "_gfortran_pow" "original" } }


Don't know how to handle optimizations for (-2**m)**n, maybe someone
with better knowledge of the frontend can drop a hint.

Reply via email to