MCPcopy Create free account
hub / github.com/apache/arrow / CompareVarBinaryColumnToRow

Method CompareVarBinaryColumnToRow

cpp/src/arrow/compute/row/compare_internal.cc:295–314  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

293// Overwrites the match_bytevector instead of updating it
294template <bool use_selection, bool is_first_varbinary_col>
295void KeyCompare::CompareVarBinaryColumnToRow(uint32_t id_varbinary_col,
296 uint32_t num_rows_to_compare,
297 const uint16_t* sel_left_maybe_null,
298 const uint32_t* left_to_right_map,
299 LightContext* ctx, const KeyColumnArray& col,
300 const RowTableImpl& rows,
301 uint8_t* match_bytevector) {
302 uint32_t num_processed = 0;
303#if defined(ARROW_HAVE_RUNTIME_AVX2)
304 if (ctx->has_avx2()) {
305 num_processed = CompareVarBinaryColumnToRow_avx2(
306 use_selection, is_first_varbinary_col, id_varbinary_col, num_rows_to_compare,
307 sel_left_maybe_null, left_to_right_map, ctx, col, rows, match_bytevector);
308 }
309#endif
310
311 CompareVarBinaryColumnToRowHelper<use_selection, is_first_varbinary_col>(
312 id_varbinary_col, num_processed, num_rows_to_compare, sel_left_maybe_null,
313 left_to_right_map, ctx, col, rows, match_bytevector);
314}
315
316void KeyCompare::AndByteVectors(LightContext* ctx, uint32_t num_elements,
317 uint8_t* bytevector_A, const uint8_t* bytevector_B) {

Callers

nothing calls this directly

Calls 1

has_avx2Method · 0.80

Tested by

no test coverage detected