------- Comment #28 from jv244 at cam dot ac dot uk  2009-08-15 07:53 -------
(In reply to comment #23)

>   subroutine output(i1,i2,i3,i4,i5)
>     print '(5(I0,:" "))',i1,i2,i3,i4,i5
>   end subroutine output                

[..]

>                  if (p1 * p2 * p3 * p4 == value * 1000000) &
>                  & call output(value,p1,p2,p3,p4)
[..]
>                  if (p1 * p2 * p3 * p4 == value * 1000000) &
>                  & call output((value),(p1),(p2),(p3),(p4))
> still produces much better code.

obviously this optimization is only allowed if the arguments of 'output' would
be explicitly declared intent in (or the compiler nows this, e.g. because it is
an intrinsic or e.g. a write statement).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31593

  • ... jvdelisle at gcc dot gnu dot org
  • ... mikael at gcc dot gnu dot org
  • ... tobi at gcc dot gnu dot org
  • ... tobi at gcc dot gnu dot org
  • ... tobi at gcc dot gnu dot org
  • ... tkoenig at gcc dot gnu dot org
  • ... tobi at gcc dot gnu dot org
  • ... tobi at gcc dot gnu dot org
  • ... tobi at gcc dot gnu dot org
  • ... jv244 at cam dot ac dot uk
  • ... jv244 at cam dot ac dot uk
  • ... tkoenig at gcc dot gnu dot org
  • ... tkoenig at gcc dot gnu dot org
  • ... tobi at gcc dot gnu dot org
  • ... jv244 at cam dot ac dot uk
  • ... Tobias Schlüter <tobias dot schlueter at physik dot uni-muenchen dot de>
  • ... tkoenig at gcc dot gnu dot org
  • ... Tobias Schlüter <tobias dot schlueter at physik dot uni-muenchen dot de>
  • ... tobi at gcc dot gnu dot org
  • ... tkoenig at gcc dot gnu dot org
  • ... tobi at gcc dot gnu dot org

Reply via email to