Trolltech Home | Qt-interest Home | Recent Threads | All Threads | Author | Date
All threads index page 1

Qt-interest Archive, June 2007
Compiling 4.3 on OS X with SSE2


Message 1 in thread

I noticed as I watched all the "configure" stuff scroll by that on OS X 
using GCC 4.x (latest Xcode for Tiger) that mmx/sse/sse2 were all OFF. 
Are those supported on OS X? Do I need a different compiler to support 
them?

Just curious
Mike Jackson

--
 [ signature omitted ] 

Message 2 in thread

On Friday 01 June 2007 05:26, Mike Jackson wrote:
> I noticed as I watched all the "configure" stuff scroll by that on OS X
> using GCC 4.x (latest Xcode for Tiger) that mmx/sse/sse2 were all OFF.
> Are those supported on OS X? Do I need a different compiler to support
> them?
>
> Just curious
> Mike Jackson
>

Hi Mike,

currently there's a limitation in our build system that prevents us from 
enabling the mmx/sse optimizations on the Mac. If you're compiling for x86 
only (not making a universal package) you can force sse2 to be used by:

Change the line:
CONFIG -= x11 qt
to:
CONFIG -= x11 qt app_bundle
in these files:
config.tests/unix/mmx/mmx.pro
config.tests/unix/sse/sse.pro
config.tests/unix/sse2/sse2.pro

and then apply the following patch to src/gui/painting/painting.pri:
@@ -148,9 +148,7 @@
         DEFINES += QT_NO_CUPS QT_NO_LPR
 }
 
-mac {
-
-} else:if(mmx|3dnow|sse|sse2|iwmmxt) {
+if(mmx|3dnow|sse|sse2|iwmmxt) {
     HEADERS += painting/qdrawhelper_x86_p.h \
                painting/qdrawhelper_mmx_p.h \
                painting/qdrawhelper_sse_p.h

Run configure again and recompile.

Good luck -)
--
 [ signature omitted ] 

Message 3 in thread

On 2007-06-01 03:43:12 -0400, Håvard Wall <hwall@xxxxxxxxxxxxx> said:

> On Friday 01 June 2007 05:26, Mike Jackson wrote:
>> I noticed as I watched all the "configure" stuff scroll by that on OS X
>> using GCC 4.x (latest Xcode for Tiger) that mmx/sse/sse2 were all OFF.
>> Are those supported on OS X? Do I need a different compiler to support
>> them?
>> 
>> Just curious
>> Mike Jackson
>> 
> 
> Hi Mike,
> 
> currently there's a limitation in our build system that prevents us from
> enabling the mmx/sse optimizations on the Mac. If you're compiling for x86
> only (not making a universal package) you can force sse2 to be used by:
> 
> Change the line:
> CONFIG -= x11 qt
> to:
> CONFIG -= x11 qt app_bundle
> in these files:
> config.tests/unix/mmx/mmx.pro
> config.tests/unix/sse/sse.pro
> config.tests/unix/sse2/sse2.pro
> 
> and then apply the following patch to src/gui/painting/painting.pri:
> @@ -148,9 +148,7 @@
>          DEFINES += QT_NO_CUPS QT_NO_LPR
>  }
> 
> -mac {
> -
> -} else:if(mmx|3dnow|sse|sse2|iwmmxt) {
> +if(mmx|3dnow|sse|sse2|iwmmxt) {
>      HEADERS += painting/qdrawhelper_x86_p.h \
>                 painting/qdrawhelper_mmx_p.h \
>                 painting/qdrawhelper_sse_p.h
> 
> Run configure again and recompile.
> 
> Good luck -)
> --
> hw

Cool Thanks..
  Just out of curiosity, what type of speed up does SSE2 provide?

Mike

--
 [ signature omitted ]