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

Method BuildCombinedValidity

cpp/src/gandiva/llvm_generator.cc:1356–1367  ·  view source on GitHub ↗

Bitwise-AND of a vector of bits to get the combined validity.

Source from the content-addressed store, hash-verified

1354
1355// Bitwise-AND of a vector of bits to get the combined validity.
1356llvm::Value* LLVMGenerator::Visitor::BuildCombinedValidity(const DexVector& validities) {
1357 llvm::IRBuilder<>* builder = ir_builder();
1358 LLVMTypes* types = generator_->types();
1359
1360 llvm::Value* isValid = types->true_constant();
1361 for (auto& dex : validities) {
1362 dex->Accept(*this);
1363 isValid = builder->CreateAnd(isValid, result()->data(), "validityBitAnd");
1364 }
1365 ADD_VISITOR_TRACE("combined validity is %T", isValid);
1366 return isValid;
1367}
1368
1369llvm::Value* LLVMGenerator::Visitor::GetBufferReference(int idx, BufferType buffer_type,
1370 FieldPtr field) {

Callers

nothing calls this directly

Calls 5

resultFunction · 0.85
typesMethod · 0.80
ir_builderFunction · 0.70
AcceptMethod · 0.45
dataMethod · 0.45

Tested by

no test coverage detected