OpenVDB 12.1.0

Loading...
Searching...
No Matches
ComputeGenerator.h File Reference

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

`#include "FunctionRegistry.h"`
`#include "FunctionTypes.h"`
`#include "SymbolTable.h"`
`#include "Value.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
namespace | openvdb
namespace | openvdb::v12_1
namespace | openvdb::v12_1::ax
namespace | openvdb::v12_1::ax::codegen
namespace | openvdb::v12_1::ax::codegen::codegen_internal

## Detailed Description

The core visitor framework for code generation.

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