This repository was archived by the owner on Apr 8, 2026. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +18
-10
lines changed
Expand file tree Collapse file tree 2 files changed +18
-10
lines changed Original file line number Diff line number Diff line change @@ -833,8 +833,8 @@ struct hash<evmc::address>
833833 using namespace evmc ;
834834 using namespace fnv ;
835835 return static_cast <size_t >(fnv1a_by64 (
836- fnv1a_by64 (fnv1a_by64 (fnv::offset_basis, load64be (&s.bytes [0 ])), load64be (&s.bytes [8 ])),
837- load32be (&s.bytes [16 ])));
836+ fnv1a_by64 (fnv1a_by64 (fnv::offset_basis, load64le (&s.bytes [0 ])), load64le (&s.bytes [8 ])),
837+ load32le (&s.bytes [16 ])));
838838 }
839839};
840840
@@ -848,10 +848,10 @@ struct hash<evmc::bytes32>
848848 using namespace evmc ;
849849 using namespace fnv ;
850850 return static_cast <size_t >(
851- fnv1a_by64 (fnv1a_by64 (fnv1a_by64 (fnv1a_by64 (fnv::offset_basis, load64be (&s.bytes [0 ])),
852- load64be (&s.bytes [8 ])),
853- load64be (&s.bytes [16 ])),
854- load64be (&s.bytes [24 ])));
851+ fnv1a_by64 (fnv1a_by64 (fnv1a_by64 (fnv1a_by64 (fnv::offset_basis, load64le (&s.bytes [0 ])),
852+ load64le (&s.bytes [8 ])),
853+ load64le (&s.bytes [16 ])),
854+ load64le (&s.bytes [24 ])));
855855 }
856856};
857857} // namespace std
Original file line number Diff line number Diff line change @@ -127,11 +127,19 @@ TEST(cpp, std_hash)
127127 std::fill_n (eb.bytes , sizeof (eb), uint8_t {0xee });
128128 EXPECT_EQ (std::hash<evmc::bytes32>{}(eb), static_cast <size_t >(0xbb14e5c56b477375 ));
129129
130- auto rand_address = 0xaa00bb00cc00dd00ee00ff001100220033004400_address;
131- EXPECT_EQ (std::hash<evmc::address>{}(rand_address ), static_cast <size_t >(0x17f74b6894b0f6b7 ));
130+ const auto rand_address_1 = 0xaa00bb00cc00dd00ee00ff001100220033004400_address;
131+ EXPECT_EQ (std::hash<evmc::address>{}(rand_address_1 ), static_cast <size_t >(0x30022347e325524e ));
132132
133- auto rand_bytes32 = 0xbb01bb02bb03bb04bb05bb06bb07bb08bb09bb0abb0bbb0cbb0dbb0ebb0fbb00_bytes32;
134- EXPECT_EQ (std::hash<evmc::bytes32>{}(rand_bytes32), static_cast <size_t >(0x4efee0983bb6c4f5 ));
133+ const auto rand_address_2 = 0x00dd00cc00bb00aa0022001100ff00ee00440033_address;
134+ EXPECT_EQ (std::hash<evmc::address>{}(rand_address_2), static_cast <size_t >(0x17f74b6894b0f6b7 ));
135+
136+ const auto rand_bytes32_1 =
137+ 0xbb01bb02bb03bb04bb05bb06bb07bb08bb09bb0abb0bbb0cbb0dbb0ebb0fbb00_bytes32;
138+ EXPECT_EQ (std::hash<evmc::bytes32>{}(rand_bytes32_1), static_cast <size_t >(0x4f857586d70f2db9 ));
139+
140+ const auto rand_bytes32_2 =
141+ 0x04bb03bb02bb01bb08bb07bb06bb05bb0cbb0bbb0abb09bb00bb0fbb0ebb0dbb_bytes32;
142+ EXPECT_EQ (std::hash<evmc::bytes32>{}(rand_bytes32_2), static_cast <size_t >(0x4efee0983bb6c4f5 ));
135143
136144#pragma warning(pop)
137145}
You can’t perform that action at this time.
0 commit comments