[all-commits] [llvm/llvm-project] 773b46: [clang][Interp][NFC] Add a TODO comment

Timm Bäder via All-commits all-commits at lists.llvm.org
Fri Oct 14 01:22:23 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 773b468543c8c5f0a226c0757a503cb9a40650a5
      https://github.com/llvm/llvm-project/commit/773b468543c8c5f0a226c0757a503cb9a40650a5
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2022-10-14 (Fri, 14 Oct 2022)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Add a TODO comment

We can ignore casts where FromT and ToT are the same type. But that's a
performance optimization that I'd like to do later. For now, this code
is doing the right thing.


  Commit: 0e93b6bd51a0f002e37e76d6efa8e71dde6d3e5f
      https://github.com/llvm/llvm-project/commit/0e93b6bd51a0f002e37e76d6efa8e71dde6d3e5f
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2022-10-14 (Fri, 14 Oct 2022)

  Changed paths:
    A clang/test/AST/Interp/if.cpp
    R clang/test/AST/Interp/if_consteval.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Add more tests for if expressions

Rename the old if_consteval.cpp to just if.cpp and add tests for the
if declaration.


  Commit: 1928da1ef73c383ea4daeffb41691882bdb074c2
      https://github.com/llvm/llvm-project/commit/1928da1ef73c383ea4daeffb41691882bdb074c2
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2022-10-14 (Fri, 14 Oct 2022)

  Changed paths:
    M clang/lib/AST/Interp/Context.cpp

  Log Message:
  -----------
  [clang][Interp] Don't run functions immediately after compiling them

This doesn't make much sense with functions that expect valid parameters
and/or a certain call stack on the caller side like This/RVO pointers.

Differential Revision: https://reviews.llvm.org/D135569


  Commit: 1942a2538b86fe55b9723800db950391cc05402b
      https://github.com/llvm/llvm-project/commit/1942a2538b86fe55b9723800db950391cc05402b
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2022-10-14 (Fri, 14 Oct 2022)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Record.h
    A clang/test/AST/Interp/records.cpp
    M clang/test/AST/Interp/references.cpp

  Log Message:
  -----------
  [clang][Interp] Start implementing record types

Implement simple constructors as well as member access expressions.

Differential Revision: https://reviews.llvm.org/D134057


  Commit: 0ddd13acc9e9b820c8f610c9006ef59aef8e5320
      https://github.com/llvm/llvm-project/commit/0ddd13acc9e9b820c8f610c9006ef59aef8e5320
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2022-10-14 (Fri, 14 Oct 2022)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/lib/AST/Interp/Disasm.cpp
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/lib/AST/Interp/Function.cpp
    M clang/lib/AST/Interp/Function.h
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/InterpFrame.cpp
    M clang/lib/AST/Interp/InterpFrame.h
    M clang/test/AST/Interp/records.cpp

  Log Message:
  -----------
  [clang][Interp] Implement This pointer passing to methods

Implement passing the this pointer to member functions and constructors.
The this pointer is passed via the stack. This changes the functions to
explicitly track whether they have a RVO pointer and a this pointer.

Differential Revision: https://reviews.llvm.org/D134699


  Commit: cb5f205828e696fb23cfe3de57af83d151ffad38
      https://github.com/llvm/llvm-project/commit/cb5f205828e696fb23cfe3de57af83d151ffad38
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2022-10-14 (Fri, 14 Oct 2022)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/test/AST/Interp/records.cpp

  Log Message:
  -----------
  [clang][Interp] Implement nested struct initialization

Recurse into visitInitializer() if necessary.

Differential Revision: https://reviews.llvm.org/D134175


  Commit: 33b52836de6e093acea15f24b6ae633f969d194a
      https://github.com/llvm/llvm-project/commit/33b52836de6e093acea15f24b6ae633f969d194a
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2022-10-14 (Fri, 14 Oct 2022)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/test/AST/Interp/records.cpp

  Log Message:
  -----------
  [clang][Interp] Fix using default copy constructors

Implement ArrayInitLoopExprs, which are used in copy constructors to
copy arrays. Also fix problems encountered while doing that.

Differential Revision: https://reviews.llvm.org/D134361


Compare: https://github.com/llvm/llvm-project/compare/03f9d0ff2208...33b52836de6e


More information about the All-commits mailing list