]> git.ipfire.org Git - thirdparty/valgrind.git/commit
Some platforms such as x86 and amd64 have efficient unaligned access.
authorPhilippe Waroquiers <philippe.waroquiers@skynet.be>
Mon, 25 May 2015 20:15:25 +0000 (20:15 +0000)
committerPhilippe Waroquiers <philippe.waroquiers@skynet.be>
Mon, 25 May 2015 20:15:25 +0000 (20:15 +0000)
commit5f5fa8adf23d41a1bb50b79d092816d03caf0ac6
treefae5a8c97ef03e12aecacc76495fb428898c21b3
parentf4dde903abfb17f18053153ef15b644b195852c5
Some platforms such as x86 and amd64 have efficient unaligned access.
On these platforms, implement read_/write_<type> by doing a direct
access, rather than calling a function that will read or write
'byte per byte'.

For platforms that do not have efficient unaligned access,
or that do not support at all unaligned access, call function
  readUAS_/writeUAS_<type> that works as before.

Currently, direct acecss is activated only for x86 and amd64.
Unclear what other platforms support (efficiently) unaligned access.

On unwind intensive code (such as perf/memrw on amd64), this patch
gives up to 5% improvement.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15290
coregrind/m_debuginfo/misc.c
coregrind/m_debuginfo/priv_misc.h