Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-13213

Qt 4.7 don't use SSE2 to speed up blending in x86-64

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 4.7.1
    • 4.7.0
    • None
    • None
    • windows 7 x64, visual studio 2008
    • 9cba567c9fb3243191735376a5de7962ad393952

    Description

      I built Qt 4.7 in windows 7 x64 with visual studio 2008. I found that with this version Qt will not use the SSE2 version of blending function to do bleding work even I have specified -SSE and -SSE2 option when configuring the bulid process.
      The problem is in qglobal.h Qt think if I build it from visual studio and in a x86-64 machine the QT_HAVE_SSE must be undefined ( this is very strange, visual studio do support SSE in x86-64). What is worse is that the qInitDrawhelperAsm() function in qdrawhelper.cpp file there is a #ifdef QT_HAVE_SSE ... #endif pair, in that pair Qt will check if this machine support SSE2 and set the function pointer to the SSE2 version, but in x86-64 QT_HAVE_SSE is not defined so the function pointer will not be set to SSE2 version. Thus there will be no SSE2 or SSSE3 speed up in windows x64 which is definitely not good.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            poulain Benjamin Poulain (closed Nokia identity) (Inactive)
            jianliang79 liang jian
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes