vast
vast copied to clipboard
VAST is an experimental compiler pipeline designed for program analysis of C and C++. It provides a tower of IRs as MLIR dialects to choose the best fit representations for a program analysis or furth...
### Prerequisites - [X] I have read the documentation and the proposed feature is not implemented. ### Description LLVM structure types, when unnamed, are subject to deduplication (at least in...
### Prerequisites - [X] I have read the documentation and the proposed feature is not implemented. ### Description ``vast-front: /home/jezko/src/llvm-project/clang/lib/AST/Decl.cpp:3804: bool clang::FunctionDecl::isInlineDefinitionExternallyVisible() const: Assertion `(doesThisDeclarationHaveABody() || willHaveBody() || hasAttr()) &&...
### Prerequisites - [X] I have read the documentation and the proposed feature is not implemented. ### Description At the moment vast operations create attributes, however since we have `AttrVisitor`,...
Mirror behaviour of clang to produce `zext` on store of bool to memory and `trunc` on load. - see `EmitToMemory` and `EmitFromMemory` in `clang/lib/CodeGen/CGExpr.cpp` - at the moment we keep...
Use mlir conversion idioms: - make trailing `ScopeOp` illegal - use rewriter to delete trailing scopes - obliterate faulty `find` methods
On the following program: ``` void foo() {} ``` `vast-front -vast-emit-mlir=llvm` dies with: ``` empty block: expect at least a terminator ```
The variable declaration may be missing in the Lookup Table while lowering the `DeclRefExpr`. I found a few instances of this issue with file-scoped variables and variables having non-ODR references...