Don't pass -mfpmath=sse to Clang < 3.4, it's not supported

Change-Id: I875f72802d8745488d34f836818b21aafe69dcff
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Update test result generator script to set duration to 0

The actual code in testlib now indents the duration tag when it is for a
function.

Change-Id: Iee62db9c81f11dc54e57f166bf9fb2b7012b7e03
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
d3dcompiler_qt: Place compiler options in the shader file name

The compiler service needs to know what options to pass to the compiler,
and these options can affect the outcome of the shader blob. Runtime
compiled shader output must match this file name in the binary directory.
Pre-compiled shader blobs (e.g. those placed in a resource file) are
permitted to drop options from the file name if the implementor can
ensure the blob is compatible with the target.

Defines are not written out as options, but written into the shader
source, and therefore affect the cache key.

Change-Id: I11e4a43fcf6818ddb29aca5eba3d8647ba4021a1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Improve caching in ensureColumnAndRowData()

Change-Id: I02d9f818f8e1d6fcb8c25d1b73c08171cfc1f74d
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Abuse const_cast in QStringBuilder to get a little more performance

Without this const_cast, the call to QString::data() or
QByteArray::data() will cause a call to detach(), which is totally
unnecessary since we've just allocated data a couple of lines before.
Since we know we're the owner of the only reference, we can skip the
detach attempt.

Change-Id: If40f66100f85cc9b405025f21c562828ead23475
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
QNX: Allow creation of parentless child windows

There is no reason why a parentless window from a Qt perspective needs
to be a screen application window.  There are some cases, such as the
BB10 dialog service whose windows are always parented by a window in
another process.

Ideally one would have a means to indicate a child window was wanted that
had no other side effect (i.e. the rest of Qt would ignore).  The use of
Qt::Dialog is not ideal as some code does pay attention to this type given
the number of bits available for window type, it is not reasonable to add a
new one.  The use of Qt::Dialog seems safe since it is hard to conceive of
a window of type Qt::Dialog wanting to be a top level window.  If in future
it is required to have a parentless, child window that is not of type
Qt::Dialog one can simply define some additional way of signalling this.

Change-Id: Ie7035980ac2efd5bc722a8371c834f21ea7755f4
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Testlib/generate_expected_output.py: Pass tests as command line arguments.

Evaluate command line arguments and use directories only when empty.

Change-Id: I818ec13c686018a3f607e91174e57d8f8bbf15f7
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Testlib/generate_expected_output.py: Fix encoding.

Do not apply additional encoding when reading process output.
Fixes errors when encountering UTF-8:

Traceback (most recent call last):
  File "./generate_expected_output.py", line 117, in <module>
    generateTestData(path)
  File "./generate_expected_output.py", line 106, in generateTestData
    out.write(data.decode('utf-8'))
UnicodeEncodeError: 'ascii' codec can't encode character u'\xdc' in position 5485: ordinal not in range(128)

Change-Id: Ib827787a59a18b4d3d0601645856517f43c01fc3
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Introduce function for standard button texts to QPlatformTheme.

Change-Id: I91eec04a95b5047d893490a70152237b2991f662
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
QNX: Fix build on BB10 caused by missing linux fb

QNX/BB10 does not support linux framebuffer

Change-Id: Ic25f69fc16cbcd27cbaa6db08c2b6556e4def965
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Optimize blend_transformed_tiled_argb().

Profiling indicates that this function is one of two hot spots causing
a noticeable latency when changing KDE virtual desktops.

Instead of computing two modulos per pixel in the inner loop, it is
possible to compute the modulos outside the loop and compute a modulo
sum in the inner loop for a reasonable speedup.

Change-Id: Ic4217b7686e031d7673b3e10aa977dae263096dc
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Add generic inplace converter

The generic converter can easily be modified to work inplace. Such
an inplace converter can ensure we can do direct conversion between
formats of similar pixel depth.

Inplace conversion is currently only used by QPixmaps, but will be used
by ref qualified versions of QImage::convertToFormat in a future patch.

Change-Id: Idbdaf087b53deecdee8258ba0b5d80edd37cfe79
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
iOS: Fix simulator build by enabling SSE2 code paths

Commit 3c375a76a13e151496ccfea0a2b3ff9fdc75784f enabled SSE2 in Qt,
but we failed to build the files that implemented the SSE2 specific
drawhelpers and image functions. Since we know what the iOS simulator
supports and the platforms it runs on we can safely enable this
ourselves without it being based on a configure test.

Change-Id: I0cfc43de80068b89aa47c34ffa84ee1c1734886c
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>