This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository clang.
from cb57fe36fe [libclang][test][NFC] Split off fixture from tests. new c0da99ee6c [Clang Interpreter] Initial patch for the constexpr interpreter
The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: docs/ConstantInterpreter.rst | 194 ++++++ docs/index.rst | 1 + include/clang/AST/ASTContext.h | 10 + include/clang/AST/OptionalDiagnostic.h | 78 +++ include/clang/Basic/DiagnosticASTKinds.td | 2 + include/clang/Basic/LangOptions.def | 4 + include/clang/Driver/Options.td | 4 + lib/AST/ASTContext.cpp | 8 + lib/AST/CMakeLists.txt | 3 + lib/AST/ExprConstant.cpp | 412 +++++-------- lib/AST/Interp/Block.cpp | 87 +++ lib/AST/Interp/Block.h | 140 +++++ lib/AST/Interp/Boolean.h | 148 +++++ lib/AST/Interp/ByteCodeEmitter.cpp | 175 ++++++ lib/AST/Interp/ByteCodeEmitter.h | 112 ++++ lib/AST/Interp/ByteCodeExprGen.cpp | 580 +++++++++++++++++ lib/AST/Interp/ByteCodeExprGen.h | 340 ++++++++++ lib/AST/Interp/ByteCodeGenError.cpp | 14 + lib/AST/Interp/ByteCodeGenError.h | 46 ++ lib/AST/Interp/ByteCodeStmtGen.cpp | 265 ++++++++ lib/AST/Interp/ByteCodeStmtGen.h | 89 +++ lib/AST/Interp/CMakeLists.txt | 34 + lib/AST/Interp/Context.cpp | 148 +++++ lib/AST/Interp/Context.h | 100 +++ lib/AST/Interp/Descriptor.cpp | 292 +++++++++ lib/AST/Interp/Descriptor.h | 220 +++++++ lib/AST/Interp/Disasm.cpp | 69 +++ lib/AST/Interp/EvalEmitter.cpp | 253 ++++++++ lib/AST/Interp/EvalEmitter.h | 129 ++++ lib/AST/Interp/Frame.cpp | 14 + lib/AST/Interp/Frame.h | 45 ++ lib/AST/Interp/Function.cpp | 48 ++ lib/AST/Interp/Function.h | 163 +++++ lib/AST/Interp/Integral.h | 269 ++++++++ lib/AST/Interp/Interp.cpp | 417 +++++++++++++ lib/AST/Interp/Interp.h | 960 +++++++++++++++++++++++++++++ lib/AST/Interp/InterpFrame.cpp | 193 ++++++ lib/AST/Interp/InterpFrame.h | 153 +++++ lib/AST/Interp/InterpStack.cpp | 77 +++ lib/AST/Interp/InterpStack.h | 113 ++++ lib/AST/Interp/InterpState.cpp | 74 +++ lib/AST/Interp/InterpState.h | 112 ++++ lib/AST/Interp/Opcode.h | 30 + lib/AST/Interp/Opcodes.td | 422 +++++++++++++ lib/AST/Interp/Pointer.cpp | 193 ++++++ lib/AST/Interp/Pointer.h | 353 +++++++++++ lib/AST/Interp/Program.cpp | 364 +++++++++++ lib/AST/Interp/Program.h | 220 +++++++ lib/AST/Interp/Record.cpp | 46 ++ lib/AST/Interp/Record.h | 121 ++++ lib/AST/Interp/Source.cpp | 39 ++ lib/AST/Interp/Source.h | 118 ++++ lib/AST/Interp/State.cpp | 158 +++++ lib/AST/Interp/State.h | 130 ++++ lib/AST/Interp/Type.cpp | 23 + lib/AST/Interp/Type.h | 115 ++++ lib/Driver/ToolChains/Clang.cpp | 6 + lib/Frontend/CompilerInvocation.cpp | 4 + test/AST/Interp/cond.cpp | 11 + test/SemaCXX/constant-expression-cxx2a.cpp | 119 ---- test/SemaCXX/constexpr-many-arguments.cpp | 4 +- test/SemaCXX/shift.cpp | 5 + utils/TableGen/CMakeLists.txt | 1 + utils/TableGen/ClangOpcodesEmitter.cpp | 360 +++++++++++ utils/TableGen/TableGen.cpp | 6 + utils/TableGen/TableGenBackends.h | 1 + 66 files changed, 9058 insertions(+), 386 deletions(-) create mode 100644 docs/ConstantInterpreter.rst create mode 100644 include/clang/AST/OptionalDiagnostic.h create mode 100644 lib/AST/Interp/Block.cpp create mode 100644 lib/AST/Interp/Block.h create mode 100644 lib/AST/Interp/Boolean.h create mode 100644 lib/AST/Interp/ByteCodeEmitter.cpp create mode 100644 lib/AST/Interp/ByteCodeEmitter.h create mode 100644 lib/AST/Interp/ByteCodeExprGen.cpp create mode 100644 lib/AST/Interp/ByteCodeExprGen.h create mode 100644 lib/AST/Interp/ByteCodeGenError.cpp create mode 100644 lib/AST/Interp/ByteCodeGenError.h create mode 100644 lib/AST/Interp/ByteCodeStmtGen.cpp create mode 100644 lib/AST/Interp/ByteCodeStmtGen.h create mode 100644 lib/AST/Interp/CMakeLists.txt create mode 100644 lib/AST/Interp/Context.cpp create mode 100644 lib/AST/Interp/Context.h create mode 100644 lib/AST/Interp/Descriptor.cpp create mode 100644 lib/AST/Interp/Descriptor.h create mode 100644 lib/AST/Interp/Disasm.cpp create mode 100644 lib/AST/Interp/EvalEmitter.cpp create mode 100644 lib/AST/Interp/EvalEmitter.h create mode 100644 lib/AST/Interp/Frame.cpp create mode 100644 lib/AST/Interp/Frame.h create mode 100644 lib/AST/Interp/Function.cpp create mode 100644 lib/AST/Interp/Function.h create mode 100644 lib/AST/Interp/Integral.h create mode 100644 lib/AST/Interp/Interp.cpp create mode 100644 lib/AST/Interp/Interp.h create mode 100644 lib/AST/Interp/InterpFrame.cpp create mode 100644 lib/AST/Interp/InterpFrame.h create mode 100644 lib/AST/Interp/InterpStack.cpp create mode 100644 lib/AST/Interp/InterpStack.h create mode 100644 lib/AST/Interp/InterpState.cpp create mode 100644 lib/AST/Interp/InterpState.h create mode 100644 lib/AST/Interp/Opcode.h create mode 100644 lib/AST/Interp/Opcodes.td create mode 100644 lib/AST/Interp/Pointer.cpp create mode 100644 lib/AST/Interp/Pointer.h create mode 100644 lib/AST/Interp/Program.cpp create mode 100644 lib/AST/Interp/Program.h create mode 100644 lib/AST/Interp/Record.cpp create mode 100644 lib/AST/Interp/Record.h create mode 100644 lib/AST/Interp/Source.cpp create mode 100644 lib/AST/Interp/Source.h create mode 100644 lib/AST/Interp/State.cpp create mode 100644 lib/AST/Interp/State.h create mode 100644 lib/AST/Interp/Type.cpp create mode 100644 lib/AST/Interp/Type.h create mode 100644 test/AST/Interp/cond.cpp create mode 100644 utils/TableGen/ClangOpcodesEmitter.cpp