Changeset 810 for trunk/src


Ignore:
Timestamp:
Oct 29, 2010, 1:28:14 AM (15 years ago)
Author:
Dmitry A. Kuminov
Message:

gui: Fixed SIGSEGV on SSE/SSE2 processors due to misaligned m128i variables on stack (probably an OS/2-specific compiler bug). Closes #187.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gui/painting/painting.pri

    r706 r810  
    325325                sse_compiler.commands += -Xarch_i386 -msse
    326326                sse_compiler.commands += -Xarch_x86_64 -msse
     327            } else:os2 {
     328                # SSE data types (__m128i etc.) don't get 16-byte alignment on stack with GCC 4.4.4
     329                # (compiler bug?), force it with -mstackrealign to avoid spontaneous SIGSEGVs
     330                sse_compiler.commands += -msse -mstackrealign
    327331            } else {
    328332                sse_compiler.commands += -msse
     
    350354                sse2_compiler.commands += -Xarch_i386 -msse2
    351355                sse2_compiler.commands += -Xarch_x86_64 -msse2
     356            } else:os2 {
     357                # SSE data types (__m128i etc.) don't get 16-byte alignment on stack with GCC 4.4.4
     358                # (compiler bug?), force it with -mstackrealign to avoid spontaneous SIGSEGVs
     359                sse2_compiler.commands += -msse2 -mstackrealign
    352360            } else {
    353361                sse2_compiler.commands += -msse2
Note: See TracChangeset for help on using the changeset viewer.