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 target/44900] The variable of SSE will be broken



------- Comment #3 from ubizjak at gmail dot com  2010-07-11 11:39 -------
For some reason, we got:

        movl    $0x41800000, 112(%esp)
        movl    $0x41700000, 116(%esp)
        movl    $0x41600000, 120(%esp)
        movl    $0x41500000, 124(%esp)
        movl    $0x41400000, 128(%esp)
        movl    $0x41300000, 132(%esp)
        movl    $0x41200000, 136(%esp)
        movl    $0x41100000, 140(%esp)
        movl    $0x41000000, 144(%esp)
        movl    $0x40e00000, 148(%esp)
        movl    $0x40c00000, 152(%esp)
        movl    $0x40a00000, 156(%esp)
        movups  136(%esp), %xmm0
        movaps  %xmm0, 96(%esp)
        movups  120(%esp), %xmm0
        movaps  %xmm0, 80(%esp)
        movaps  %xmm0, 160(%esp)
        movaps  96(%esp), %xmm0
        movaps  %xmm0, 176(%esp)
>>>	fldz
        fstpl   60(%esp)
        flds    184(%esp)
        fstpl   52(%esp)
        flds    180(%esp)
        fstpl   44(%esp)
        flds    176(%esp)
        fstpl   36(%esp)
        flds    172(%esp)
        fstpl   28(%esp)
        flds    168(%esp)
        fstpl   20(%esp)
        flds    164(%esp)
        fstpl   12(%esp)
        flds    160(%esp)
        fstpl   4(%esp)
        movl    $.LC12, (%esp)
        call    printf

Changing fldz to "flds  188(%esp)" produces correct output.


-- 


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


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