[PATCH] D136017: [clang][Interp] Materializing primitive temporaries

2023-02-03 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG7bb615ea0ec0: [clang][Interp] Materializing primitive temporaries (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D136017

[PATCH] D136751: [clang][Interp] This pointers are writable in constructors

2023-02-03 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D136751/new/ https://reviews.llvm.org/D136751 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D142694: [clang][Interp] Only generate disassembly in debug builds

2023-02-03 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142694/new/ https://reviews.llvm.org/D142694 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D142694: [clang][Interp] Only generate disassembly in debug builds

2023-02-03 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG60dcc70e48fa: [clang][Interp] Only generate disassembly in debug builds (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D140874: [clang][Interp] Support pointer types in compound assignment operations

2023-02-03 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG4a2c4acb9869: [clang][Interp] Support pointers in compound assignment operators (authored by tbaeder). Changed prior to commit: https://reviews.ll

[PATCH] D137070: [clang][Interp] Support destructors

2023-02-03 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 494660. tbaeder marked an inline comment as done. tbaeder added a comment. No surprises I think. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137070/new/ https://reviews.llvm.org/D137070 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/li

[PATCH] D138802: [clang][Interp] Implement DecompositionDecls

2023-02-03 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked 2 inline comments as done. tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:34-35 + virtual ~DeclScope() override { this->emitDestruction(); } + void addExtended(const Scope::Local &Local) override { aaron.b

[PATCH] D140723: [clang][Interp] Only check constructors for global variables

2023-02-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140723/new/ https://reviews.llvm.org/D140723 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D142630: [clang][Interp] Implement virtual function calls

2023-02-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142630/new/ https://reviews.llvm.org/D142630 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D142606: Lazyly initialize uncommon toolchain detector

2023-02-05 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/Driver/ToolChains/LazyDetector.h:36 +} +return &Detector.value(); + } Is the `.value()` here permitted? AFAIK the convention is to always use `operator*`. And I think @aaron.ballman would tell you to

[PATCH] D143334: [clang][Interp] Fix diagnosing uninitialized ctor record arrays

2023-02-05 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. No idea why I used `isa(ElemType.getTypePtr())` her

[PATCH] D141472: [clang][Interp] Add function pointers

2023-02-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. > Member pointers (for functions or for data) are weird in that they're not the > typical pointer width. They're actually a pointer and between one-to-three > other fields in a trenchcoat, depending on the circumstances. You generally > need the function pointer, but yo

[PATCH] D142630: [clang][Interp] Implement virtual function calls

2023-02-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 495059. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142630/new/ https://reviews.llvm.org/D142630 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/Context.cpp clang/lib/AST/Interp/Context.h clang/lib/AST/Interp/Function.h

[PATCH] D142617: [clang][Interp] Check This pointer without creating InterpFrame

2023-02-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142617/new/ https://reviews.llvm.org/D142617 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D142277: [clang][Interp] Clear metadata when destroying locals

2023-02-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder abandoned this revision. tbaeder marked an inline comment as done. tbaeder added inline comments. Comment at: clang/lib/AST/Interp/EvalEmitter.cpp:260-261 +// local variable is used after being destroyed. +InlineDescriptor &ID = *reinterpret_cast(B->rawData()); +

[PATCH] D136751: [clang][Interp] This pointers are writable in constructors

2023-02-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 495147. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D136751/new/ https://reviews.llvm.org/D136751 Files: clang/lib/AST/Interp/Function.h clang/lib/AST/Interp/Interp.cpp clang/lib/AST/Interp/Pointer.h

[PATCH] D136751: [clang][Interp] This pointers are writable in constructors

2023-02-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Interp.cpp:264-270 + const Function *Func = S.Current->getFunction(); + if (Func && Func->isConstructor()) { +// The This pointer is writable in constructors, even if +// isConst() returns true. +if (Pt

[PATCH] D140809: [clang][Interp] Implement logical and/or operators

2023-01-12 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:376 +this->emitLabel(LabelTrue); +this->emitConstBool(true, E); +this->fallthrough(LabelEnd); aaron.ballman wrote: > Am I correct in understanding that the reason we d

[PATCH] D141591: [clang][Interp] Properly identify not-yet-defined functions

2023-01-12 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Since we now handle functions without a body as w

[PATCH] D137487: [clang][Interp] Start implementing builtin functions

2023-01-12 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked 2 inline comments as done. tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Interp.h:1315 + if (InterpretBuiltin(S, PC, Func->getBuiltinID())) { +NewFrame.release(); +return true; shafik wrote: > We don't have to update `S.C

[PATCH] D140724: [clang][Interp] Add back Run() call

2023-01-12 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Interp.h:1301 assert(S.Current->getFunction()->hasRVO()); + if (S.checkingPotentialConstantExpression()) +return false; shafik wrote: > Why did you add these checks calling `checkingPotential

[PATCH] D138802: [clang][Interp] Implement DecompositionDecls

2023-01-12 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked an inline comment as done. tbaeder added inline comments. Comment at: clang/test/AST/Interp/cxx17.cpp:7 + +struct F { int a; int b;}; +constexpr F getF() { shafik wrote: > It would also be good to test references, bit-fields, volatile and tuple-lik

[PATCH] D138802: [clang][Interp] Implement DecompositionDecls

2023-01-12 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 43. tbaeder added a comment. Add more tests and fix decomposition decls of reference type. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D138802/new/ https://reviews.llvm.org/D138802 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/

[PATCH] D140668: [clang][Interp] Implement remaining bits for MaterializeTemporaryExprs

2023-01-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 488935. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140668/new/ https://reviews.llvm.org/D140668 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/I

[PATCH] D140668: [clang][Interp] Implement remaining bits for MaterializeTemporaryExprs

2023-01-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 488936. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140668/new/ https://reviews.llvm.org/D140668 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/I

[PATCH] D135750: [clang][Interp] Track initialization state of local variables

2023-01-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135750/new/ https://reviews.llvm.org/D135750 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D141681: [clang][Interp] Fix parameter map when re-visiting function

2023-01-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. 'Params' is a member of the ByteCodeEmitter. We o

[PATCH] D135750: [clang][Interp] Track initialization state of local variables

2023-01-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 488996. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135750/new/ https://reviews.llvm.org/D135750 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeStmtGen.cpp clang/lib/AST/Interp/Context.cpp clang/lib/AST/Interp/

[PATCH] D141591: [clang][Interp] Properly identify not-yet-defined functions

2023-01-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 489020. tbaeder added a comment. Just get the information whether the `Function` has a body directly from the `FunctionDecl`. This fixes referencing member functions that are defined later. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141591/new/

[PATCH] D141681: [clang][Interp] Fix parameter map when re-visiting function

2023-01-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeEmitter.cpp:57 +ParamDescriptors.insert({ParamOffset, {Ty, Desc}}); +Params.insert({PD, ParamOffset}); +ParamOffset += align(primSize(Ty)); shafik wrote: > Where is `Params` used?

[PATCH] D141744: [Clang] Add lifetimebound attribute to std::move/std::forward

2023-01-14 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. > This diff is motivated by https://github.com/llvm/llvm-project/issues/59900 Not https://github.com/llvm/llvm-project/issues/60020 ? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141744/new/ https://reviews.llvm.org/D1417

[PATCH] D141772: [clang][Interp] Fix record initialization via CallExpr subclasses

2023-01-14 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. We can't just use VisitCallExpr() here, as that d

[PATCH] D141784: [clang][Interp] Fix binary comma operators

2023-01-15 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. We left the result of RHS on the stack in case Di

[PATCH] D141784: [clang][Interp] Fix binary comma operators

2023-01-15 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 489334. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141784/new/ https://reviews.llvm.org/D141784 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/test/SemaCXX/constexpr-duffs-device.cpp Index: clang/test/SemaCXX/constexpr-duffs-device.cp

[PATCH] D140377: [clang][Interp] Compound assign operators for FP values

2023-01-16 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140377/new/ https://reviews.llvm.org/D140377 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D141831: [clang][Interp] Fix double-printing InterpFrame::describe()

2023-01-16 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. We add the pointer we want to print itself to the `

[PATCH] D141858: [clang][Interp] Fix Pointer::toAPValue() for expressions

2023-01-16 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This is now relevant because we generate pointers f

[PATCH] D141858: [clang][Interp] Fix Pointer::toAPValue() for expressions

2023-01-16 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 489581. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141858/new/ https://reviews.llvm.org/D141858 Files: clang/lib/AST/Interp/Pointer.cpp Index: clang/lib/AST/Interp/Pointer.cpp ===

[PATCH] D135750: [clang][Interp] Track initialization state of local variables

2023-01-16 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 489693. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135750/new/ https://reviews.llvm.org/D135750 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeStmtGen.cpp clang/lib/AST/Interp/Context.cpp clang/lib/AST/Interp/

[PATCH] D140874: [clang][Interp] Support pointer types in compound assignment operations

2023-01-16 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 489694. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140874/new/ https://reviews.llvm.org/D140874 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/I

[PATCH] D141497: [clang][Interp] Record initialization via conditional operator

2023-01-17 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 489720. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141497/new/ https://reviews.llvm.org/D141497 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/Interp/records.cpp Index: clang/test/AST/I

[PATCH] D141497: [clang][Interp] Record initialization via conditional operator

2023-01-17 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.h:200 + using ExprVisitorFunc = std::function; + bool visitConditional(const AbstractConditionalOperator *E, +ExprVisitorFunc VisitFunc); tbaeder wrote: > er

[PATCH] D135750: [clang][Interp] Track initialization state of local variables

2023-01-18 Thread Timm Bäder via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG865094746e2a: [clang][Interp] Track initialization state of local variables (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135750/new/

[PATCH] D139185: [clang][Interp] Use placement new to construct opcode args into vector

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG1221af99281c: [clang][Interp] Use placement new to construct opcode args into vector (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D139

[PATCH] D136694: [clang][Interp] Check that constructor calls initialize all record fields

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG6b0cd497b0fb: [clang][Interp] Check Field initialization after constructor call (authored by tbaeder). Changed prior to commit: https://reviews.ll

[PATCH] D136815: [clang][Interp] Unify visiting variable declarations

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG5b54cf1a2892: [clang][Interp] Unify visiting variable declarations (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D13681

[PATCH] D136828: [clang][Interp] Diagnose uninitialized array record fields

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG9308014195e2: [clang][Interp] Diagnose uninitialized array record fields (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/

[PATCH] D136751: [clang][Interp] This pointers are writable in constructors

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D136751/new/ https://reviews.llvm.org/D136751 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D137071: [clang][Interp] Implement missing compound assign operators

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG490e8214fca4: [clang][Interp] Implement missing compound assign operators (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D137071?vs=474273&id=490444#toc Repository: rG LLVM

[PATCH] D141283: [clang] Improve diagnostic for "initializer-string for char array is too long"

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. AFAIK we need a name and an email address so the commit can be attributed properly. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141283/new/ https://reviews.llvm.org/D141283 __

[PATCH] D141283: [clang] Improve diagnostic for "initializer-string for char array is too long"

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG1499cce2646c: [clang] Improve diagnostic for "initializer-string for char array is too long" (authored by evansmal, committed by tbaeder). Changed

[PATCH] D137071: [clang][Interp] Implement missing compound assign operators

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Really didn't expect this: https://lab.llvm.org/buildbot/#/builders/214/builds/5415 Command Output (stderr): -- + : 'RUN: at line 1' + /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/build/bin/clang -cc1 -internal-isystem /scratch/powerllvm/powerllvm

[PATCH] D137071: [clang][Interp] Implement missing compound assign operators

2023-01-19 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. I've seen s390x and AIX builders break here, probably a problem with big-endian machines? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137071/new/ https://reviews.llvm.org/D137071

[PATCH] D142277: [clang][Interp] Clear metadata when destroying locals

2023-01-21 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. I've had problems with 5b54cf1a2892767fe949826a32d7

[PATCH] D142277: [clang][Interp] Clear metadata when destroying locals

2023-01-21 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 491060. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142277/new/ https://reviews.llvm.org/D142277 Files: clang/lib/AST/Interp/EvalEmitter.cpp clang/lib/AST/Interp/InterpFrame.cpp Index: clang/lib/AST/Interp/InterpFrame.cpp

[PATCH] D142328: [clang][Interp] Fix compound assign operator types

2023-01-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Just like we do (or will do) for floating types,

[PATCH] D142328: [clang][Interp] Fix compound assign operator types

2023-01-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. The casts emitted are similar to https://reviews.llvm.org/D140377 now. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142328/new/ https://reviews.llvm.org/D142328 ___ cfe-commits

[PATCH] D138802: [clang][Interp] Implement DecompositionDecls

2023-01-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D138802/new/ https://reviews.llvm.org/D138802 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D140723: [clang][Interp] Only check constructors for global variables

2023-01-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140723/new/ https://reviews.llvm.org/D140723 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D141591: [clang][Interp] Properly identify not-yet-defined functions

2023-01-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141591/new/ https://reviews.llvm.org/D141591 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D141858: [clang][Interp] Fix Pointer::toAPValue() for expressions

2023-01-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141858/new/ https://reviews.llvm.org/D141858 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D142328: [clang][Interp] Fix compound assign operator types

2023-01-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 491238. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142328/new/ https://reviews.llvm.org/D142328 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp Index: clang/lib/AST/Interp/ByteCodeExprGen.cpp ===

[PATCH] D142338: [Clang][NFC] Remove a redundancy check in Sema::adjustMemberFunctionCC

2023-01-23 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. LGTM, assuming the pre-commit CI failures are unrelated. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142338/new/ https://reviews.llvm.org/D142338 ___ cfe-commits mailing list c

[PATCH] D138275: [clang][Interp] Avoid leaking init maps of local primitive arrays

2023-01-23 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. It's interrupted whenever one of the `emitXXX()` functions returns `false`, or when one of the function in `Interp.h` returns `false`, e.g. when trying to read from a null pointer. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D138275/new/ https://reviews.llvm.

[PATCH] D140874: [clang][Interp] Support pointer types in compound assignment operations

2023-01-23 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 491619. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140874/new/ https://reviews.llvm.org/D140874 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/I

[PATCH] D140845: [clang][Interp] Fix left-/right-shifting more than sizeof(unsigned)

2023-01-24 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 491633. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140845/new/ https://reviews.llvm.org/D140845 Files: clang/lib/AST/Interp/Integral.h clang/lib/AST/Interp/Interp.h clang/test/AST/Interp/shifts.cpp

[PATCH] D140874: [clang][Interp] Support pointer types in compound assignment operations

2023-01-24 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:727-728 +this->emitSubOffset(*RT, E); + else +return false; + aaron.ballman wrote: > Should this be an early return before we visit anything? Or an assert on the > assum

[PATCH] D140803: [clang][Interp] Implement C++ Range-for loops

2023-01-24 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 491643. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140803/new/ https://reviews.llvm.org/D140803 Files: clang/lib/AST/Interp/ByteCodeStmtGen.cpp clang/lib/AST/Interp/ByteCodeStmtGen.h clang/test/AST/I

[PATCH] D127509: Prefer `getCurrentFileOrBufferName` in `FrontendAction::EndSourceFile`

2022-06-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. LGTM but can you try re-running the pre-commit CI? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127509/new/ https://reviews.llvm.org/D127509 ___ cfe-commits mailing list cfe-com

[PATCH] D127638: [clang][sema] Provide better diagnostic for missing template parameters

2022-06-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: dblaikie, aaron.ballman. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This fixes https://github.com/llvm/llvm-project/issues/55962 i.e. instead

[PATCH] D127638: [clang][sema] Provide better diagnostic for missing template parameters

2022-06-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 436650. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127638/new/ https://reviews.llvm.org/D127638 Files: clang/lib/Sema/SemaCXXScopeSpec.cpp clang/test/SemaCXX/nested-name-spec.cpp Index: clang/test/SemaCXX/nested-name-spec.cpp ===

[PATCH] D127638: [clang][sema] Provide better diagnostic for missing template parameters

2022-06-13 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. That does indeed work, thanks for the suggestion! CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127638/new/ https://reviews.llvm.org/D127638 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.o

[PATCH] D127638: [clang][sema] Provide better diagnostic for missing template parameters

2022-06-14 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 436690. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127638/new/ https://reviews.llvm.org/D127638 Files: clang/lib/Sema/SemaCXXScopeSpec.cpp clang/test/SemaCXX/nested-name-spec.cpp Index: clang/test/SemaCXX/nested-name-spec.cpp ===

[PATCH] D127638: [clang][sema] Provide better diagnostic for missing template parameters

2022-06-15 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGc149fa1f5fda: [clang][sema] Provide better diagnostic for missing template arguments (authored by tbaeder). Changed prior to commit: https://revie

[PATCH] D127509: Prefer `getCurrentFileOrBufferName` in `FrontendAction::EndSourceFile`

2022-06-16 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127509/new/ https://reviews.llvm.org/D127509 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D127509: Prefer `getCurrentFileOrBufferName` in `FrontendAction::EndSourceFile`

2022-06-18 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder accepted this revision. tbaeder added a comment. This revision is now accepted and ready to land. Those are all libomp tests, I doubt they are related. I think it's fine to just push this. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D12750

[PATCH] D128248: [clang] Avoid an assertion in APValue::hasArrayFiller()

2022-06-21 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, rsmith. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. When calling `hasArrayFiller()` on a `APValue` that's not an array, the two

[PATCH] D128248: [clang] Avoid an assertion in APValue::hasArrayFiller()

2022-06-21 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 438612. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D128248/new/ https://reviews.llvm.org/D128248 Files: clang/include/clang/AST/APValue.h clang/test/SemaCXX/constexpr-array-init.cpp Index: clang/test/SemaCXX/constexpr-array-init.cpp =

[PATCH] D128248: [clang] Avoid an assertion in APValue::hasArrayFiller()

2022-06-21 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Failing tests are just because the test file is not formatted it seems. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D128248/new/ https://reviews.llvm.org/D128248 ___ cfe-commits mailing list cfe-commits@lists.llvm.or

[PATCH] D125862: [clang][driver] Add gcc-toolset/devtoolset 12 to prefixes

2022-05-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 431928. tbaeder added a comment. @MaskRay Ignored the new test on Windows hosts now like you suggested. Does this look good? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125862/new/ https://reviews.llvm.org/D125862 Files: clang/lib/Driver/ToolC

[PATCH] D125862: [clang][driver] Add gcc-toolset/devtoolset 12 to prefixes

2022-06-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping. @MaskRay Can you take a quick look and check if this is what you had in mind? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125862/new/ https://reviews.llvm.org/D125862 ___ cfe-commits mailing list cfe-commits@

[PATCH] D125862: [clang][driver] Add gcc-toolset/devtoolset 12 to prefixes

2022-06-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked 2 inline comments as done. tbaeder added inline comments. Comment at: clang/unittests/Driver/ToolChainTest.cpp:623 + IntrusiveRefCntPtr DiagID(new DiagnosticIDs()); + struct TestDiagnosticConsumer : public DiagnosticConsumer {}; + MaskRay wrote:

[PATCH] D125862: [clang][driver] Add gcc-toolset/devtoolset 12 to prefixes

2022-06-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 433673. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125862/new/ https://reviews.llvm.org/D125862 Files: clang/lib/Driver/ToolChains/Gnu.cpp clang/unittests/Driver/ToolChainTest.cpp Index: clang/unittests/Driver/ToolChainTest.cpp ==

[PATCH] D127310: [clang][driver] fix to correctly set devtoolset on RHEL

2022-06-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. In D127310#3568777 , @nemanjai wrote: > In D127310#3567472 , @MaskRay wrote: > >> Do you have more authoritative answer when /root/usr is used and when it >> isn't? > > These suffixes wer

[PATCH] D125862: [clang][driver] Add gcc-toolset/devtoolset 12 to prefixes

2022-06-09 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked 2 inline comments as done. tbaeder added inline comments. Comment at: clang/unittests/Driver/ToolChainTest.cpp:647 +std::unique_ptr C( +TheDriver.BuildCompilation({"--gcc-toolchain="})); +ASSERT_TRUE(C); ebevhan wrote: > There's a b

[PATCH] D125860: [clang] Only use major version in resource dir

2022-06-10 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 435850. Herald added a subscriber: Enna1. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125860/new/ https://reviews.llvm.org/D125860 Files: clang/include/clang/Basic/Version.inc.in clang/lib/Driver/Driver.cpp clang/lib/Headers/CMakeLists.txt

[PATCH] D125860: [clang] Only use major version in resource dir

2022-06-10 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 435876. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125860/new/ https://reviews.llvm.org/D125860 Files: clang/include/clang/Basic/Version.inc.in clang/lib/Driver/Driver.cpp clang/lib/Headers/CMakeLists.txt clang/lib/Tooling/CMakeLists.txt

[PATCH] D157385: [clang][CFG] Cleanup functions

2023-09-19 Thread Timm Bäder via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGad4a51302777: [clang][CFG] Cleanup functions (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D157385/new/ https://reviews.llvm.org/D1573

[PATCH] D152504: [clang][ThreadSafety] Analyze cleanup functions

2023-09-19 Thread Timm Bäder via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. tbaeder marked an inline comment as done. Closed by commit rGcf8e189a99f9: [clang][TSA] Thread safety cleanup functions (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D152504?vs=556838&id=557042#

[PATCH] D158069: [clang][Interp] Fix getIndex() for composite array elements

2023-09-19 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 557097. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158069/new/ https://reviews.llvm.org/D158069 Files: clang/lib/AST/Interp/Context.h clang/lib/AST/Interp/Pointer.h clang/unittests/AST/CMakeLists.txt

[PATCH] D158069: [clang][Interp] Fix getIndex() for composite array elements

2023-09-20 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Context.h:88 + /// Returns the program. This is only needed for unittests. + Program &getProgram() const { return *P.get(); } + cor3ntin wrote: > This should return a const ref Things like `getGlob

[PATCH] D155572: [clang][Interp] Start implementing binary operators for complex types

2023-09-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155572/new/ https://reviews.llvm.org/D155572 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D154262: [clang][Interp] LambdaThisCaptures

2023-09-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D154262/new/ https://reviews.llvm.org/D154262 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D157252: [clang][ExprConst] Handle 0 type size in builtin_memcpy etc.

2023-09-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D157252/new/ https://reviews.llvm.org/D157252 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D154581: [clang][Interp] Track existing InitMaps in InterpState

2023-09-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D154581/new/ https://reviews.llvm.org/D154581 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D156453: [clang][Interp] Create only globals when initializing a global variable

2023-09-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156453/new/ https://reviews.llvm.org/D156453 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D158516: [clang][Interp] Only lazily visit constant globals

2023-09-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158516/new/ https://reviews.llvm.org/D158516 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D158069: [clang][Interp] Fix getIndex() for composite array elements

2023-09-27 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158069/new/ https://reviews.llvm.org/D158069 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D155572: [clang][Interp] Start implementing binary operators for complex types

2023-09-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/complex.cpp:119-124 + using Bobble = _Complex float; + constexpr _Complex float A = { 13.0, 2.0 }; + constexpr Bobble B = { 2.0, 1.0 }; + constexpr _Complex float D = A - B; + static_assert(__real(D) == 11.0,

[PATCH] D158069: [clang][Interp] Fix getIndex() for composite array elements

2023-09-30 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Pointer.h:81-88 + /// Equality operators are just for tests. + bool operator==(const Pointer &P) const { +return Pointee == P.Pointee && Base == P.Base && Offset == P.Offset; + } + + bool operator!=(const Poi

<    4   5   6   7   8   9   10   11   12   13   >