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/37216] [cygwin] Invalid alignment for SSE store to .comm data generated with -O3



------- Comment #1 from ubizjak at gmail dot com  2008-08-24 11:26 -------
Please look at the asm dump (add -S to compile flags) for following lines:

.globl iint
        .bss
        .align 4
        .type   iint, @object
        .size   iint, 4
iint:
        .zero   4
        .comm   iarr,256,32              <<<< this one

alternatively, you can use -fno-common:

.globl iarr
        .align 32                   <<<< alignment
        .type   iarr, @object
        .size   iarr, 256
iarr:
        .zero   256

In above dump (linux target) iarr is aligned to 32bytes. Does cygwin aligns
.comm variables to multiplies of 16 bytes?


-- 

ubizjak at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|c                           |target
            Summary|Invalid XMM instructions    |[cygwin] Invalid alignment
                   |generated with -O3          |for SSE store to .comm data
                   |                            |generated with -O3


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


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