Struct TargetExprCodegen

struct TargetExprCodegen

Public Functions

TargetExprCodegen(const Analyzer::Expr *target_expr, TargetInfo &target_info, const int32_t base_slot_index, const size_t target_idx, const bool is_group_by)
void codegen(GroupByAndAggregate *group_by_and_agg, Executor *executor, const QueryMemoryDescriptor &query_mem_desc, const CompilationOptions &co, const GpuSharedMemoryContext &gpu_smem_context, const std::tuple<llvm::Value *, llvm::Value *> &agg_out_ptr_w_idx, const std::vector<llvm::Value *> &agg_out_vec, llvm::Value *output_buffer_byte_stream, llvm::Value *out_row_idx, llvm::Value *varlen_output_buffer, DiamondCodegen &diamond_codegen, DiamondCodegen *sample_cfg = nullptr) const
void codegenAggregate(GroupByAndAggregate *group_by_and_agg, Executor *executor, const QueryMemoryDescriptor &query_mem_desc, const CompilationOptions &co, const std::vector<llvm::Value *> &target_lvs, const std::tuple<llvm::Value *, llvm::Value *> &agg_out_ptr_w_idx, const std::vector<llvm::Value *> &agg_out_vec, llvm::Value *output_buffer_byte_stream, llvm::Value *out_row_idx, llvm::Value *varlen_output_buffer, int32_t slot_index) const

Public Members

const Analyzer::Expr *target_expr
TargetInfo target_info
int32_t base_slot_index
size_t target_idx
bool is_group_by