[PATCH] D70073: [ConstExprPreter] Implemented function calls and if statements
Nandor Licker via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Nov 11 04:52:56 PST 2019
nand created this revision.
nand added reviewers: rsmith, Bigcheese, jfb, dexonsmith.
nand added a project: clang.
Herald added subscribers: cfe-commits, mgorny.
nand added a parent revision: D70071: [ConstExprPreter] Removed the flag forcing the use of the interpreter.
Added support for compiling functions, function calls and if statements,
enabling minimal useful expressions such as the ones in cond.cpp.
Also removed instructions which were accidentally comitted in the previous patch.
The patch also reorganises some files - interpreter is not in InterpLoop.cpp,
while the opcodes are defined in Interp.h or in the Opcodes folder.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D70073
Files:
clang/lib/AST/CMakeLists.txt
clang/lib/AST/Interp/Block.h
clang/lib/AST/Interp/Boolean.cpp
clang/lib/AST/Interp/Boolean.h
clang/lib/AST/Interp/ByteCodeEmitter.h
clang/lib/AST/Interp/ByteCodeExprGen.cpp
clang/lib/AST/Interp/ByteCodeExprGen.h
clang/lib/AST/Interp/ByteCodeStmtGen.cpp
clang/lib/AST/Interp/ByteCodeStmtGen.h
clang/lib/AST/Interp/Context.cpp
clang/lib/AST/Interp/Context.h
clang/lib/AST/Interp/Descriptor.cpp
clang/lib/AST/Interp/Descriptor.h
clang/lib/AST/Interp/EvalEmitter.cpp
clang/lib/AST/Interp/EvalEmitter.h
clang/lib/AST/Interp/Function.cpp
clang/lib/AST/Interp/Function.h
clang/lib/AST/Interp/Integral.h
clang/lib/AST/Interp/Interp.cpp
clang/lib/AST/Interp/Interp.h
clang/lib/AST/Interp/InterpFrame.cpp
clang/lib/AST/Interp/InterpFrame.h
clang/lib/AST/Interp/InterpHelper.cpp
clang/lib/AST/Interp/InterpHelper.h
clang/lib/AST/Interp/InterpLoop.cpp
clang/lib/AST/Interp/InterpLoop.h
clang/lib/AST/Interp/InterpState.cpp
clang/lib/AST/Interp/InterpState.h
clang/lib/AST/Interp/Opcodes.td
clang/lib/AST/Interp/Opcodes/Comparison.h
clang/lib/AST/Interp/Pointer.cpp
clang/lib/AST/Interp/Pointer.h
clang/lib/AST/Interp/PrimType.h
clang/lib/AST/Interp/Program.cpp
clang/lib/AST/Interp/Program.h
clang/lib/AST/Interp/Source.cpp
clang/lib/AST/Interp/Source.h
clang/test/AST/Interp/cond.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D70073.228670.patch
Type: text/x-patch
Size: 165071 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20191111/fac39828/attachment-0001.bin>
More information about the cfe-commits
mailing list