This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository clang.
from 4bcc62559f [clang-scan-deps] NFC, remove outdated implementation comment new 6fd9c5d50b [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/Basic/DiagnosticASTKinds.td | 2 + include/clang/Basic/LangOptions.def | 4 + include/clang/Basic/OptionalDiagnostic.h | 78 +++ include/clang/Driver/Options.td | 4 + lib/AST/ASTContext.cpp | 8 + lib/AST/CMakeLists.txt | 3 + lib/AST/ExprConstant.cpp | 408 +++++------- lib/AST/Interp/Block.cpp | 87 +++ lib/AST/Interp/Block.h | 140 +++++ 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 | 308 +++++++++ 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 | 114 ++++ 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 + 65 files changed, 8946 insertions(+), 384 deletions(-) create mode 100644 docs/ConstantInterpreter.rst create mode 100644 include/clang/Basic/OptionalDiagnostic.h create mode 100644 lib/AST/Interp/Block.cpp create mode 100644 lib/AST/Interp/Block.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