This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository clang.
from bd94a6e73a Introduce a DirectoryEntryRef that stores both a reference a [...] new 970bc350a3 [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/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, 8948 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/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