------- Comment #3 from brian dot e dot bliss at intel dot com  2009-08-12 
21:29 -------
It doesn't look like the problem is confined to Intel64 code.  Here's the IPF
assembly for the GOMP_loop_dynamic_start call:

addp4 r15 = r14, r0
adds r14 = -24, r37
mov r39 = r16
;;
mov r40 = r15
addp4 r41 = 4294967294 - 0x100000000, r0
addl r42 = 1, r0
mov r43 = r14
adds r44 = -32, r37
br.call.sptk.many b0 = GOMP_loop_dynamic_start#

The "addp" instruction clears bits 32:60 of the result.  "adds" (14-byte
sign-extended immediate form) should be used.


-- 

brian dot e dot bliss at intel dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Bad Intel64 codegen for     |Bad 64-bit codegen for
                   |modified 39495 testcase     |modified 39495 testcase


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

Reply via email to