aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkDescriptor.h
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@chromium.org>2016-08-08 09:06:27 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-08-08 09:06:28 -0700
commit4e97607d9a1cef66fac16f347c5ca813ec4f9515 (patch)
treee523cac97fae89a2abb1ec0d4c1fc87f86e3169f /src/core/SkDescriptor.h
parent9a5a201472c3fb9f02b954ba09ae1ec13ebd50f4 (diff)
Use sse4.2 CRC32 instructions to hash when available.
About 9x faster than Murmur3 for long inputs. Most of this is a mechanical change from SkChecksum::Murmur3(...) to SkOpts::hash(...). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2208903002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot;master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Review-Url: https://codereview.chromium.org/2208903002
Diffstat (limited to 'src/core/SkDescriptor.h')
-rw-r--r--src/core/SkDescriptor.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/SkDescriptor.h b/src/core/SkDescriptor.h
index 71f71336fd..efa02783be 100644
--- a/src/core/SkDescriptor.h
+++ b/src/core/SkDescriptor.h
@@ -9,7 +9,7 @@
#ifndef SkDescriptor_DEFINED
#define SkDescriptor_DEFINED
-#include "SkChecksum.h"
+#include "SkOpts.h"
#include "SkTypes.h"
class SkDescriptor : SkNoncopyable {
@@ -123,7 +123,7 @@ private:
static uint32_t ComputeChecksum(const SkDescriptor* desc) {
const uint32_t* ptr = (const uint32_t*)desc + 1; // skip the checksum field
size_t len = desc->fLength - sizeof(uint32_t);
- return SkChecksum::Murmur3(ptr, len);
+ return SkOpts::hash(ptr, len);
}
// private so no one can create one except our factories