Skip to content

Commit

Permalink
ARROW-18081: [Go] Add Scalar Boolean functions (#14442)
Browse files Browse the repository at this point in the history
Authored-by: Matt Topol <zotthewizard@gmail.com>
Signed-off-by: Matt Topol <zotthewizard@gmail.com>
  • Loading branch information
zeroshade committed Oct 20, 2022
1 parent 8b18060 commit d208d59
Show file tree
Hide file tree
Showing 21 changed files with 1,812 additions and 9 deletions.
2 changes: 1 addition & 1 deletion ci/scripts/go_test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ pushd ${source_dir}/arrow
TAGS="assert,test"
if [[ -n "${ARROW_GO_TESTCGO}" ]]; then
if [[ "${MSYSTEM}" = "MINGW64" ]]; then
export PATH=${MINGW_PREFIX}/bin:$PATH
export PATH=${MINGW_PREFIX}\\bin:${MINGW_PREFIX}\\lib:$PATH
fi
TAGS="${TAGS},ccalloc"
fi
Expand Down
14 changes: 13 additions & 1 deletion go/arrow/bitutil/_lib/bitmap_ops.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,16 @@ void FULL_NAME(bitmap_aligned_or)(const uint8_t* left, const uint8_t* right, uin
for (int64_t i = 0; i < nbytes; ++i) {
out[i] = left[i] | right[i];
}
}
}

void FULL_NAME(bitmap_aligned_and_not)(const uint8_t* left, const uint8_t* right, uint8_t* out, const int64_t nbytes) {
for (int64_t i = 0; i < nbytes; ++i) {
out[i] = left[i] & ~right[i];
}
}

void FULL_NAME(bitmap_aligned_xor)(const uint8_t* left, const uint8_t* right, uint8_t* out, const int64_t nbytes) {
for (int64_t i = 0; i < nbytes; ++i) {
out[i] = left[i] ^ right[i];
}
}
198 changes: 198 additions & 0 deletions go/arrow/bitutil/_lib/bitmap_ops_avx2_amd64.s

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit d208d59

Please sign in to comment.