------- Comment #4 from janus at gcc dot gnu dot org  2009-11-19 11:57 -------
Let's have a look at the dump for the test case in comment #2.

The call to 'func' is translated to:

      real(kind=4) D.1568;
      struct array1_real(kind=4) parm.7;
      static real(kind=4) A.6[2] = {1.00000001490116119384765625e-1,
1.00000001490116119384765625e-1};
      static integer(kind=4) C.1562 = 3;

      parm.7.dtype = 281;
      parm.7.dim[0].lbound = 1;
      parm.7.dim[0].ubound = 2;
      parm.7.dim[0].stride = 1;
      parm.7.data = (void *) &A.6[0];
      parm.7.offset = 0;
      D.1568 = func (&C.1562, &parm.7);


The PPC call to 'funcp%p' looks simlar, except for:

      D.1576 = _gfortran_internal_pack (&parm.10);
      D.1578 = funcp.p (&C.1570, D.1576);

(i.e. it has an additional _gfortran_internal_pack).


-- 


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

Reply via email to