mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
[Clang Interpreter] Initial patch for the constexpr interpreter
Summary: This patch introduces the skeleton of the constexpr interpreter, capable of evaluating a simple constexpr functions consisting of if statements. The interpreter is described in more detail in the RFC. Further patches will add more features. Reviewers: Bigcheese, jfb, rsmith Subscribers: bruno, uenoku, ldionne, Tyker, thegameg, tschuett, dexonsmith, mgorny, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64146 llvm-svn: 370584
This commit is contained in:
parent
d70b0f4887
commit
6918fd5dcf
@ -10,6 +10,7 @@ static_library("AST") {
|
||||
"//clang/include/clang/AST:CommentHTMLTags",
|
||||
"//clang/include/clang/AST:CommentHTMLTagsProperties",
|
||||
"//clang/include/clang/AST:DeclNodes",
|
||||
"//clang/lib/AST/Interp",
|
||||
"//clang/lib/Basic",
|
||||
"//clang/lib/Lex",
|
||||
"//llvm/lib/BinaryFormat",
|
||||
|
39
utils/gn/secondary/clang/lib/AST/Interp/BUILD.gn
Normal file
39
utils/gn/secondary/clang/lib/AST/Interp/BUILD.gn
Normal file
@ -0,0 +1,39 @@
|
||||
import("//clang/utils/TableGen/clang_tablegen.gni")
|
||||
|
||||
clang_tablegen("Opcodes") {
|
||||
args = [ "-gen-clang-opcodes" ]
|
||||
td_file = "Opcodes.td"
|
||||
}
|
||||
|
||||
static_library("Interp") {
|
||||
output_name = "clangInterp"
|
||||
configs += [ "//llvm/utils/gn/build:clang_code" ]
|
||||
deps = [
|
||||
"//clang/lib/AST/Interp:Opcodes",
|
||||
"//clang/lib/Basic",
|
||||
"//llvm/lib/Support",
|
||||
]
|
||||
sources = [
|
||||
"Block.cpp",
|
||||
"ByteCodeEmitter.cpp",
|
||||
"ByteCodeExprGen.cpp",
|
||||
"ByteCodeGenError.cpp",
|
||||
"ByteCodeStmtGen.cpp",
|
||||
"Context.cpp",
|
||||
"Descriptor.cpp",
|
||||
"Disasm.cpp",
|
||||
"EvalEmitter.cpp",
|
||||
"Frame.cpp",
|
||||
"Function.cpp",
|
||||
"Interp.cpp",
|
||||
"InterpFrame.cpp",
|
||||
"InterpStack.cpp",
|
||||
"InterpState.cpp",
|
||||
"Pointer.cpp",
|
||||
"Program.cpp",
|
||||
"Record.cpp",
|
||||
"Source.cpp",
|
||||
"State.cpp",
|
||||
"Type.cpp",
|
||||
]
|
||||
}
|
@ -14,6 +14,7 @@ executable("clang-tblgen") {
|
||||
"ClangOpenCLBuiltinEmitter.cpp",
|
||||
"ClangOptionDocEmitter.cpp",
|
||||
"ClangSACheckersEmitter.cpp",
|
||||
"ClangOpcodesEmitter.cpp",
|
||||
"NeonEmitter.cpp",
|
||||
"TableGen.cpp",
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user