westonpace commented on a change in pull request #12067:
URL: https://github.com/apache/arrow/pull/12067#discussion_r823327351



##########
File path: cpp/src/arrow/compute/exec/key_hash.h
##########
@@ -32,76 +32,165 @@ namespace compute {
 // Implementations are based on xxh3 32-bit algorithm description from:
 // https://github.com/Cyan4973/xxHash/blob/dev/doc/xxhash_spec.md
 //
-class Hashing {
+class ARROW_EXPORT Hashing32 {
  public:
-  static void hash_fixed(int64_t hardware_flags, uint32_t num_keys, uint32_t 
length_key,
-                         const uint8_t* keys, uint32_t* hashes);
+  static void hash_fixed(int64_t hardware_flags, bool combine_hashes, uint32_t 
num_keys,
+                         uint64_t length_key, const uint8_t* keys, uint32_t* 
hashes,
+                         uint32_t* temp_hashes_for_combine);
 
-  static void hash_varlen(int64_t hardware_flags, uint32_t num_rows,
+  static void hash_varlen(int64_t hardware_flags, bool combine_hashes, 
uint32_t num_rows,
                           const uint32_t* offsets, const uint8_t* 
concatenated_keys,
-                          uint32_t* temp_buffer,  // Needs to hold 4 x 32-bit 
per row
-                          uint32_t* hashes);
+                          uint32_t* hashes, uint32_t* temp_hashes_for_combine);
+
+  static void hash_varlen(int64_t hardware_flags, bool combine_hashes, 
uint32_t num_rows,
+                          const uint64_t* offsets, const uint8_t* 
concatenated_keys,
+                          uint32_t* hashes, uint32_t* temp_hashes_for_combine);

Review comment:
       Can we make these three methods private?




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to