summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Restore default if to system default on session close.Aaron McCarthy2010-08-262-16/+32
| | | | | | | If setdefaultif(0) or unsetdefaultif() is called all sockets belonging to the current process are closed by OpenC. Task-number: QTBUG-12686
* Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-08-2565-183/+4343
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (57 commits) tst_qmake doesn't need QtGui Use the full path to qmake in the qmake unit test qdoc: Fixed erroneous links to QML basic types. Fixed item view background color in Gtk style scope fixes and clutter reduction for sql driver projects I don't know why some linkers can't call this function, so comment it out. QNetworkSession::close() method now send closed() signal while faking disconnection. Add the missing license headers to the QString benchmark data Fix building of qsimd.cpp on Windows CE Use QElapsedTimer for the benchlib tests. Properly implement the CPU feature disabling in qsimd.cpp. Report the detected CPU features in the corelib boilerplate Detect CPU features on ARM by reading the ELF auxvec. Split the CPU-detection code into multiple functions for readability Fixed delivering gestures to a toplevel widget. Unroll the SSSE3 code even more to avoid the need to keep an extra variable for inverting the result Don't try to compile the SSE2 and SSSE3 code with compilers that don't support them (e.g. ARM) Improve on the SSSE3 with alternate aligning function. Add the beginnings of a new SSSE3-based aligning algorithm Small fixup ...
| * tst_qmake doesn't need QtGuiThiago Macieira2010-08-251-0/+1
| | | | | | | | Reviewed-By: ossi
| * Use the full path to qmake in the qmake unit testThiago Macieira2010-08-251-1/+2
| | | | | | | | Reviewed-By: ossi
| * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-08-2564-182/+4340
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (55 commits) qdoc: Fixed erroneous links to QML basic types. Fixed item view background color in Gtk style scope fixes and clutter reduction for sql driver projects I don't know why some linkers can't call this function, so comment it out. QNetworkSession::close() method now send closed() signal while faking disconnection. Add the missing license headers to the QString benchmark data Fix building of qsimd.cpp on Windows CE Use QElapsedTimer for the benchlib tests. Properly implement the CPU feature disabling in qsimd.cpp. Report the detected CPU features in the corelib boilerplate Detect CPU features on ARM by reading the ELF auxvec. Split the CPU-detection code into multiple functions for readability Fixed delivering gestures to a toplevel widget. Unroll the SSSE3 code even more to avoid the need to keep an extra variable for inverting the result Don't try to compile the SSE2 and SSSE3 code with compilers that don't support them (e.g. ARM) Improve on the SSSE3 with alternate aligning function. Add the beginnings of a new SSSE3-based aligning algorithm Small fixup Update the SSSE3-with-alignment function to use aligned loads. Add an ucstrncmp that uses SSSE3 with aligning. ...
| | * Merge branch '4.7' of git@scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.7Martin Smith2010-08-255-13/+27
| | |\
| | | * Fixed item view background color in Gtk styleJens Bache-Wiig2010-08-252-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Autotests were modified to check for 50% color coverage as well. Before they were not really testing the bgcolor since they would accept only the red grid color as a valid test pass. Task-number: QTBUG-13125 Reviewed-by: ogoffart
| | | * scope fixes and clutter reduction for sql driver projectsMark Brand2010-08-252-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add missing wildcard to scope where meant to include all win32-g++ targets. There is no reason to ignore QT_LFLAGS_TDS and QT_LFLAGS_PSQL in static builds. Via LIBS these may end up in QMAKE_PRL_LIBS in QtSql.prl. Also, the isEmpty() tests on these is redundant and only wastes time. Processing of QT_CFLAGS_PSQL should not depend on QT_LFLAGS_PSQL. It no longer seems appropriate to clean up "-lz" here in case of zlib bundled in QtCore. It's reasonable to expect QT_LFLAGS_PSQL to be ready after configure. Merge-request: 2459 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
| | | * I don't know why some linkers can't call this function, so comment it out.Thiago Macieira2010-08-251-2/+2
| | | | | | | | | | | | | | | | It works fine for me on my Linux box (also 32-bit) and on ARM.
| | * | qdoc: Fixed erroneous links to QML basic types.Martin Smith2010-08-251-2/+9
| | |/ | | | | | | | | | Task-nr: QTBUG-13096
| | * QNetworkSession::close() method now send closed() signal while faking ↵Tomasz Bursztyka2010-08-251-3/+3
| | | | | | | | | | | | | | | | | | disconnection. Fixes: NB#185586 - QNetworkSession::closed() signal never sent when QNetworkSession::close() is called.
| | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-08-2558-166/+4303
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (50 commits) Add the missing license headers to the QString benchmark data Fix building of qsimd.cpp on Windows CE Use QElapsedTimer for the benchlib tests. Properly implement the CPU feature disabling in qsimd.cpp. Report the detected CPU features in the corelib boilerplate Detect CPU features on ARM by reading the ELF auxvec. Split the CPU-detection code into multiple functions for readability Fixed delivering gestures to a toplevel widget. Unroll the SSSE3 code even more to avoid the need to keep an extra variable for inverting the result Don't try to compile the SSE2 and SSSE3 code with compilers that don't support them (e.g. ARM) Improve on the SSSE3 with alternate aligning function. Add the beginnings of a new SSSE3-based aligning algorithm Small fixup Update the SSSE3-with-alignment function to use aligned loads. Add an ucstrncmp that uses SSSE3 with aligning. Add an SSSE3 version of ucstrncmp Optimise the tail comparison of ucstrncmp Add a version of ucstrncmp with SSE2 with aligning. Add an SSE2-optimised version of ucstrncmp Add the ucstrncmp benchmarks ...
| | | * Add the missing license headers to the QString benchmark dataThiago Macieira2010-08-244-2/+46
| | | |
| | | * Fix building of qsimd.cpp on Windows CEThiago Macieira2010-08-241-0/+2
| | | |
| | | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-08-2457-166/+4257
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (48 commits) Use QElapsedTimer for the benchlib tests. Properly implement the CPU feature disabling in qsimd.cpp. Report the detected CPU features in the corelib boilerplate Detect CPU features on ARM by reading the ELF auxvec. Split the CPU-detection code into multiple functions for readability Fixed delivering gestures to a toplevel widget. Unroll the SSSE3 code even more to avoid the need to keep an extra variable for inverting the result Don't try to compile the SSE2 and SSSE3 code with compilers that don't support them (e.g. ARM) Improve on the SSSE3 with alternate aligning function. Add the beginnings of a new SSSE3-based aligning algorithm Small fixup Update the SSSE3-with-alignment function to use aligned loads. Add an ucstrncmp that uses SSSE3 with aligning. Add an SSSE3 version of ucstrncmp Optimise the tail comparison of ucstrncmp Add a version of ucstrncmp with SSE2 with aligning. Add an SSE2-optimised version of ucstrncmp Add the ucstrncmp benchmarks Update the data generation script to use a non-including .cpp Update comments in QString about alignment performance. ...
| | | | * Use QElapsedTimer for the benchlib tests.Thiago Macieira2010-08-242-2/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's faster to calculate the time with it, since it doesn't need to convert to local time first. Reviewed-By: Harald Fernengel
| | | | * Properly implement the CPU feature disabling in qsimd.cpp.Thiago Macieira2010-08-241-97/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't use ^=, since that might enable a feature that wasn't detected. The new use is: export QT_NO_CPU_FEATURE="<feature1> [<feature2>]" Reviewed-by: Benjamin Poulain
| | | | * Report the detected CPU features in the corelib boilerplateThiago Macieira2010-08-242-0/+56
| | | | |
| | | | * Detect CPU features on ARM by reading the ELF auxvec.Thiago Macieira2010-08-241-2/+43
| | | | | | | | | | | | | | | | | | | | Reviewed-by: Benjamin Poulain
| | | | * Split the CPU-detection code into multiple functions for readabilityThiago Macieira2010-08-241-17/+69
| | | | | | | | | | | | | | | | | | | | Reviewed-By: Benjamin Poulain
| | | | * Fixed delivering gestures to a toplevel widget.Denis Dzyubenko2010-08-242-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If there is only one widget which is a toplevel, then gestures were not delivered to it because we assumed (wrong) that there is at least one child widget. Reviewed-by: Frederik Gladhorn
| | | | * Unroll the SSSE3 code even more to avoid the need to keep an extra variable ↵Thiago Macieira2010-08-241-35/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for inverting the result On 32-bit, we're out of registers already, so this variable ended up in memory
| | | | * Don't try to compile the SSE2 and SSSE3 code with compilers that don't ↵Thiago Macieira2010-08-241-3/+11
| | | | | | | | | | | | | | | | | | | | support them (e.g. ARM)
| | | | * Improve on the SSSE3 with alternate aligning function.Thiago Macieira2010-08-241-38/+101
| | | | | | | | | | | | | | | | | | | | Even though this function *only* does aligned loads, it's worse than the other function
| | | | * Add the beginnings of a new SSSE3-based aligning algorithmThiago Macieira2010-08-241-1/+83
| | | | |
| | | | * Small fixupThiago Macieira2010-08-241-1/+1
| | | | |
| | | | * Update the SSSE3-with-alignment function to use aligned loads.Thiago Macieira2010-08-241-9/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This results in no change on the Core-i7, but another 2.6% on the Atom (so it's now 8% better than 4-byte loads and 31% better than current code)
| | | | * Add an ucstrncmp that uses SSSE3 with aligning.Thiago Macieira2010-08-241-1/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The results on i7 are 32% improvement over current code, 13% improvement over 4-byte loads, 6% over the unaligned SSSE3 loads. However, it's about 2.5% slower than pure SSE2 code due to complexity. The results on Atom are 30% improvement over current code, 7% over 4-byte loads, 15% over pure unaligned SSE2 and 9% over unaligned SSSE3.
| | | | * Add an SSSE3 version of ucstrncmpThiago Macieira2010-08-241-1/+79
| | | | |
| | | | * Optimise the tail comparison of ucstrncmpThiago Macieira2010-08-241-2/+36
| | | | |
| | | | * Add a version of ucstrncmp with SSE2 with aligning.Thiago Macieira2010-08-241-1/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a different technique of aligning. Instead of reading some bytes before the string, we will read some bytes of the string twice. Best results are only 2% improvement over the unaligned SSE2 on a Core-i7.
| | | | * Add an SSE2-optimised version of ucstrncmpThiago Macieira2010-08-241-1/+38
| | | | | | | | | | | | | | | | | | | | | | | | | First results make it 34% faster than current ucstrncmp, 16% faster than the 32-bit version.
| | | | * Add the ucstrncmp benchmarksThiago Macieira2010-08-241-0/+136
| | | | |
| | | | * Update the data generation script to use a non-including .cppThiago Macieira2010-08-244-14/+23
| | | | | | | | | | | | | | | | | | | | | | | | | This speeds up the writing of algorithms, so I don't have to recompile megabytes of data dumps.
| | | | * Update comments in QString about alignment performance.Thiago Macieira2010-08-242-15/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit makes no code change at all. Write down the conclusions from experimenting with the x86 SIMD instructions for faster string comparison routines. Long story short: we're already pretty good. The SSE4.2 string instructions are probably more useful for "implicit-length mode" (that is, the end of the string is marked by a NUL), rather than QString's "explicit-length mode".
| | | | * Major improvements to the comparison functions.Thiago Macieira2010-08-242-188/+1770
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also use the real-world data that I collected. The resulting files are quite large, so I've added to Git only the smallest dump (apparently Teambuilder scanning the environment for "TEAMBUILDER=").
| | | | * Add a script to generate real-world data from applicationsThiago Macieira2010-08-241-0/+200
| | | | |
| | | | * Slightly better version that saves EBX in an XMM registerThiago Macieira2010-08-241-15/+20
| | | | |
| | | | * Add an SSE4.2 version of the string comparisonThiago Macieira2010-08-242-1/+43
| | | | | | | | | | | | | | | | | | | | | | | | | It's currently slightly worse than SSE2 with prolog aligning (i.e., it's no good)
| | | | * Add an SSSE3 version that uses palignr to align.Thiago Macieira2010-08-242-1/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using a non-SIMD method for aligning, we instead load more bytes from p1 and use the PALIGNR instruction to realign to what we want. The result is that it's bit slower than the non-SIMD comparison, due to the complexity. For strings over 8 QChars wide, it's only slightly worse than the non-SIMD comparison.
| | | | * Add an SSE2 comparison with prologThiago Macieira2010-08-241-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The prolog tries to align p1 to a multiple of 16, so as to run aligned loads, which are faster. Unfortunately, my tests so far indicate that the prolog ends up taking longer than the benefit of having aligned loads.
| | | | * Add a benchmark for SSE2 comparison.Thiago Macieira2010-08-242-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | This function uses unaligned loads. I'll try to write one with aligned loads later.
| | | | * Add a 4-byte comparison routine.Thiago Macieira2010-08-241-0/+48
| | | | | | | | | | | | | | | | | | | | This is a copy of qMemEquals from qstring.cpp
| | | | * Add some quick benchmarks for QChar comparisonThiago Macieira2010-08-241-1/+142
| | | | |
| | | | * Allow other compilers than GCC on Linux to have a boilerplateThiago Macieira2010-08-241-1/+1
| | | | |
| | | | * Include the SSE4.2 intrinsics headerThiago Macieira2010-08-241-0/+1
| | | | | | | | | | | | | | | | | | | | Reviewed-By: Benjamin Poulain
| | | | * linux-icc can take -msse2, -msse3, etc. flags, so enable this as wellThiago Macieira2010-08-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise, we actually get compilation errors because configure detected that the compiler supports this, so QT_HAVE_SSSE3 is defined, but we then compile qimage_ssse3.cpp without -mssse3 (Among others) Reviewed-By: Benjamin Poulain
| | | | * Introduce a second compatibility build key to Qt.Thiago Macieira2010-08-243-1/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some compilers are compatible with one another. In particular, the Intel CC on Unix systems is compatible with g++ on the same system. We should be saving the ABI "name" in the build key, not the compiler name, but it's too late for that. Choose "g++-{VERSION}" as the standard ABI name and make ICC support that. Reviewed-by: Bradley T. Hughes
| | | | * Keep the scopeid that getaddrinfo(3) returns to us.Thiago Macieira2010-08-243-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-12608, QTBUG-12243 Reviewed-by: Markus Goetz
| | | | * qmake vc[x]proj generators: support /MAP option without file nameJoerg Bornemann2010-08-242-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-13081 Reviewed-by: Martin Petersson