From 59d4f1a1fb6bcc009fdcf92f050dc3211061cf31 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Thu, 3 May 2018 19:32:08 +0200 Subject: [PATCH] [util] Add method to retrieve SHA1 hashes in 32-bit chunks --- src/d3d11/d3d11_shader.cpp | 10 ++-------- src/util/sha1/sha1_util.h | 7 +++++-- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/d3d11/d3d11_shader.cpp b/src/d3d11/d3d11_shader.cpp index 732b86fd..375aad76 100644 --- a/src/d3d11/d3d11_shader.cpp +++ b/src/d3d11/d3d11_shader.cpp @@ -27,14 +27,8 @@ namespace dxvk { DxvkHashState result; result.add(uint32_t(m_type)); - const uint8_t* digest = m_hash.digest(); - for (uint32_t i = 0; i < 5; i++) { - result.add( - uint32_t(digest[4 + i + 0]) << 0 - | uint32_t(digest[4 + i + 1]) << 8 - | uint32_t(digest[4 + i + 2]) << 16 - | uint32_t(digest[4 + i + 3]) << 24); - } + for (uint32_t i = 0; i < 5; i++) + result.add(m_hash.dword(i)); return result; } diff --git a/src/util/sha1/sha1_util.h b/src/util/sha1/sha1_util.h index 10a777de..4b98f12e 100644 --- a/src/util/sha1/sha1_util.h +++ b/src/util/sha1/sha1_util.h @@ -18,8 +18,11 @@ namespace dxvk { std::string toString() const; - const uint8_t* digest() const { - return m_digest.data(); + uint32_t dword(uint32_t id) const { + return uint32_t(m_digest[4 + id + 0]) << 0 + | uint32_t(m_digest[4 + id + 1]) << 8 + | uint32_t(m_digest[4 + id + 2]) << 16 + | uint32_t(m_digest[4 + id + 3]) << 24; } bool operator == (const Sha1Hash& other) const {