This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/51058] [4.7 Regression] ICE: gimple check: expected gimple_assign(error_mark), have gimple_call() in gimple_assign_rhs_code, at gimple.h:1992


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

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|ira at gcc dot gnu.org      |

--- Comment #5 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2011-11-09 18:27:58 UTC ---
> I guess it'd better be
>
>       SUBROUTINE MLIST(MOLsp,PBCx,PBCy,PBCz, X0)
>       IMPLICIT NONE
>       INTEGER, PARAMETER :: NM=16384
>       INTEGER :: MOLsp, i
>       REAL :: PBCx, PBCy, PBCz, boxjmp, HALf=1./2.
>       REAL :: X0(2,-2:NM)
>
>          DO i = 1 , MOLsp
>             boxjmp = PBCx*INT(X0(1,i)+SIGN(HALf,X0(1,i)))
>             X0(1,i) = X0(1,i) - boxjmp
>             boxjmp = PBCy*INT(X0(2,i)+SIGN(HALf,X0(2,i)))
>             X0(2,i) = X0(2,i) - boxjmp
>          ENDDO
>       END
>
> otherwise it's an interleaving group of 3, which is only supported on NEON,
> AFAIK. I also changed the type to REAL to make it work (fail) on power.

Well, the original code in mdbx.f90 has the interleaving group of 3 (I only
changed the "decoration" around the loop to keep a valid code). When trying to
reduce the code removing one block made the ICE to disappear, but the above
test fails on x86_64 and not on ppc.

> (My GCC address is irar@gcc.gnu.org, and not ira@gcc.gnu.org).

Sorry! I'll try to remember it next time;-)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]