OpenVDB  12.0.0
Classes | Namespaces
ComputeGenerator.h File Reference

The core visitor framework for code generation. More...

#include "FunctionRegistry.h"
#include "FunctionTypes.h"
#include "SymbolTable.h"
#include "../ast/AST.h"
#include "../ast/Visitor.h"
#include "../compiler/CompilerOptions.h"
#include "../compiler/Logger.h"
#include <openvdb/version.h>
#include <llvm/Analysis/TargetLibraryInfo.h>
#include <llvm/IR/BasicBlock.h>
#include <llvm/IR/Function.h>
#include <llvm/IR/IRBuilder.h>
#include <llvm/IR/LLVMContext.h>
#include <llvm/IR/Module.h>
#include <stack>

Go to the source code of this file.

Classes

struct  ComputeKernel
 The function definition and signature which is built by the ComputeGenerator. More...
 
struct  ComputeGenerator
 Visitor object which will generate llvm IR for a syntax tree. This provides the majority of the code generation functionality except for attribute access. This design allows for custom geometry to define their IR implementations for these accesses by deriving and extending this generator with ast::Attribute handling (see PointComputeGenerator.h and VolumeComputeGenerator.h for examples). More...
 

Namespaces

 openvdb
 
 openvdb::v12_0
 
 openvdb::v12_0::ax
 
 openvdb::v12_0::ax::codegen
 
 openvdb::v12_0::ax::codegen::codegen_internal
 

Detailed Description

The core visitor framework for code generation.

Authors
Nick Avramoussis, Matt Warner, Francisco Gochez, Richard Jones