diff options
author | Arseny Kapoulkine <arseny.kapoulkine@gmail.com> | 2014-10-04 05:03:33 +0000 |
---|---|---|
committer | Arseny Kapoulkine <arseny.kapoulkine@gmail.com> | 2014-10-04 05:03:33 +0000 |
commit | 42219590f3ea1e88e41f8250da5a123f3a9236b2 (patch) | |
tree | 060acf61be3252d7e5b42550b79a6268b8acc079 /tests/data/utftest_utf16_be_clean.xml | |
parent | 8a402b480fc88efec8ce0897fb6cdddac147992d (diff) |
Optimize unrolled scanning for MSVC
While gcc and clang can eliminate dependency on s in the inner loop of
PUGI__SCANWHILE_UNROLL, MSVC emits a series of register increments.
Rewriting the code to explicitly remove the dependency keeps similar
codegen on gcc/clang but improves codegen on MSVC for a 10% performance
boost.
Also use unrolled scanning in text_output_escaped (2% faster).
git-svn-id: https://pugixml.googlecode.com/svn/trunk@1048 99668b35-9821-0410-8761-19e4c4f06640
Diffstat (limited to 'tests/data/utftest_utf16_be_clean.xml')
0 files changed, 0 insertions, 0 deletions