diff options
author | Ariya Hidayat <ariya.hidayat@nokia.com> | 2009-09-01 14:54:09 (GMT) |
---|---|---|
committer | Ariya Hidayat <ariya.hidayat@nokia.com> | 2009-09-01 15:46:21 (GMT) |
commit | 928ee7059f42f7e5157dd25295bd6b9eea686f29 (patch) | |
tree | 8b35b7da5bae2f9e5a1e35789bc690a79cc10e9d /doc/src/widgets-and-layouts | |
parent | 8fab695b7987856da4ebb6b36410dd05aa48c13d (diff) | |
download | Qt-928ee7059f42f7e5157dd25295bd6b9eea686f29.zip Qt-928ee7059f42f7e5157dd25295bd6b9eea686f29.tar.gz Qt-928ee7059f42f7e5157dd25295bd6b9eea686f29.tar.bz2 |
Speed-up parsing of SVG path data.
Instead of using operations that shuffle the array of numbers, just
use pointer to iterate the numbers. This reduced the amount of
memory operations during the parsing.
In addition, parse the numbers to QVarLengthArray instead of QVector.
This works well because usually a path element is typically followed by
a short list of numbers.
Loading tiger.svg (tests/benchmarks/qsvgrenderer) is now 8% faster,
mostly due to the time spent in parsePathDataFast is reduced from
26.1 millions instructions to just 20.5 millions (27% speed-up).
Reviewed-by: Kim
Diffstat (limited to 'doc/src/widgets-and-layouts')
0 files changed, 0 insertions, 0 deletions