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

2023-08-21 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 552018. tbaeder marked 4 inline comments as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D157385/new/ https://reviews.llvm.org/D157385 Files: clang/include/clang/Analysis/CFG.h clang/lib/Analysis/CFG.cpp clang/lib/Analysis/ThreadSafety.cp

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

2023-08-21 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/Analysis/ThreadSafety.cpp:2429-2438 + +case CFGElement::CleanupFunction: { + const CFGCleanupFunction &CF = BI.castAs(); + + LocksetBuilder.handleCall(nullptr, CF.getFunctionDecl(), +

[PATCH] D156794: [clang][Interp] Lazily visit unknown global declarations

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

[PATCH] D157072: [clang][ExprConst] Check float operation input for signaling NaNs

2023-08-21 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/D157072/new/ https://reviews.llvm.org/D157072 ___ 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-08-21 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] D154262: [clang][Interp] LambdaThisCaptures

2023-08-21 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] D156400: [clang][Interp] Implement __builtin_offsetof

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

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

2023-08-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked an inline comment as done. tbaeder added inline comments. Comment at: clang/test/Analysis/scopes-cfg-output.cpp:1473-1474 +// CHECK-NEXT:3: F f __attribute__((cleanup(cleanup_F))); +// CHECK-NEXT:4: [B1.3].~F() (Implicit destructor) +// CHECK-NEXT:5: Cl

[PATCH] D158502: [clang][Interp] Actually consider ConstantExpr result

2023-08-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, shafik, cor3ntin. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Since we have visitAPValue now, we might as well use

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

2023-08-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, shafik, cor3ntin. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews

[PATCH] D158502: [clang][Interp] Actually consider ConstantExpr result

2023-08-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:767-772 + std::optional T = classify(E->getType()); + if (T && E->hasAPValueResult() && + this->visitAPValue(E->getAPValueResult(), *T, E)) +return true; + return this->delegate(E->g

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

2023-08-22 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 552608. tbaeder marked 2 inline comments as done. Herald added subscribers: steakhal, martong. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D157385/new/ https://reviews.llvm.org/D157385 Files: clang/include/clang/Analysis/CFG.h clang/lib/Analysis

[PATCH] D158562: [clang][Sema] Add truncation warning on fortified snprintf

2023-08-23 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Can't say much about the rest of the patch so I'd defer to someone else. Since gcc has `-Wformat-truncation`, can we disable this warning in clang as well? Can you add a test for that? Comment at: clang/lib/Sema/SemaChecking.cpp:1136-1137 + [&](c

[PATCH] D158595: [clang][Interp] Allow zero-ini of primitives with an empty init list

2023-08-23 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, shafik, cor3ntin. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews

[PATCH] D158601: [Clang] Always constant-evaluate operands of comparisons to nullptr

2023-08-23 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:13312 +!EvaluatePointer(E->getRHS(), Res, Info)) + return false; return Success(CmpResult::Equal, E); I kinda expected the fix for this bug to simply //remove// a special

[PATCH] D158601: [Clang] Always constant-evaluate operands of comparisons to nullptr

2023-08-23 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:13312 +!EvaluatePointer(E->getRHS(), Res, Info)) + return false; return Success(CmpResult::Equal, E); cor3ntin wrote: > tbaeder wrote: > > I kinda expected the fix for thi

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

2023-10-09 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] D157252: [clang][ExprConst] Handle 0 type size in builtin_memcpy etc.

2023-10-09 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] D158069: [clang][Interp] Fix getIndex() for composite array elements

2023-10-09 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

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

2023-10-09 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 557656. 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 clang/unittests/AST/Interp/CMakeLists.t

[PATCH] D154951: [clang][Interp] __builtin_bit_cast, Take 2

2023-10-10 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder abandoned this revision. tbaeder added a comment. Abandoning this since I've migrated it to Github: https://github.com/llvm/llvm-project/pull/68288 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D154951/new/ https://reviews.llvm.org/D154951

[PATCH] D156212: [clang][Interp] Implement remaining strcmp builtins

2023-10-10 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. I have a local patch that implements these builtins by doing a bitcast to a buffer first. There is a comment in `ExprConstant.cpp` that talks about the same thing. That path probably makes more sense? I'd abandon this review then. Repository: rG LLVM Github Monorepo

[PATCH] D155548: [clang][ExprConst] Short-circuit ConstantExpr evaluation

2023-10-10 Thread Timm Bäder via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGb4343aba9fa1: [clang][ExprConst] Short-circuit ConstantExpr evaluation (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155548/new/ http

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

2023-10-10 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 557670. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D154581/new/ https://reviews.llvm.org/D154581 Files: clang/lib/AST/Interp/Descriptor.cpp clang/lib/AST/Interp/Descriptor.h clang/lib/AST/Interp/EvalE

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

2023-10-10 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Descriptor.cpp:42 const Descriptor *D) { + new (Ptr) InitMapPtr(std::nullopt); + aaron.ballman wrote: > This worries me a little bit for a few reasons, but it might be okay:

[PATCH] D153001: [clang][ThreadSafety] Add __builtin_instance_member (WIP)

2023-10-11 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder abandoned this revision. tbaeder added a comment. As discussed via other channels, this is going nowhere and we will take another approach, if any. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153001/new/ https://reviews.llvm.org/D153001

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

2023-10-12 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 rG2f43ace0f48f: [clang][Interp] Fix expected values for Pointer API (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D158069

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

2023-10-12 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/unittests/AST/Interp/CMakeLists.txt:2 +add_clang_unittest(InterpTests + Descriptor.cpp + ) thakis wrote: > Why is this in a separate executable instead of in ASTTests? So it can have > fewer deps? Mostly because

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

2023-10-13 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] D157252: [clang][ExprConst] Handle 0 type size in builtin_memcpy etc.

2023-10-15 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] D156453: [clang][Interp] Create only globals when initializing a global variable

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

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

2023-10-15 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:1213 std::optional SubExprT = classify(SubExpr); - if (E->getStorageDuration() == SD_Static) { + bool IsStatic = E->getStorageDuration() == SD_Static; + if (GlobalDecl || IsStatic) { ---

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

2023-10-17 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:1213 std::optional SubExprT = classify(SubExpr); - if (E->getStorageDuration() == SD_Static) { + bool IsStatic = E->getStorageDuration() == SD_Static; + if (GlobalDecl || IsStatic) { ---

[PATCH] D156511: [clang][Interp] Diagnose more unkonwn DeclRefExprs

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, shafik, cor3ntin. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Diagnose used non-const and/or extern globals. Rep

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

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. In D155572#4539457 , @aaron.ballman wrote: > Is this intended to not handle all the binary operators in this patch? Yes, just a subset for now. > And also, is this intended to only impact initializers? Yes, due to problems wit

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

2023-07-28 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] D155356: [clang][Interp] Implement __builtin_nan family of functions

2023-07-28 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 rGc2273e33bd13: [clang][Interp] Implement __builtin_nan family (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D155356?vs=5

[PATCH] D155367: [clang][Interp] Implement __builtin_inf() etc.

2023-07-28 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 rGb395e91f2ef4: [clang][Interp] Implement __builtin_inf() etc. (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D155368: [clang][Interp] __builtin_copysign

2023-07-28 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 rG57ca62d5d35a: [clang][Interp] Implement __builtin_copysign (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D155368?vs=541

[PATCH] D155410: [clang][Interp] Fix comparing nan/inf floating point values

2023-07-28 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 rG9a0164a0c66c: [clang][Interp] Fix comparing nan/inf floating point values (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org

[PATCH] D156518: Fix handling of medial hyphens in Unicode Names.

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: llvm/lib/Support/UnicodeNameToCodepoint.cpp:350 bool DoesStartWith = startsWith(Name, Item.Prefix, Strict, Consummed, -NameStart, NeedleStart, /*isPrefix*/ true); +

[PATCH] D153241: [clang][Diagnostics] Provide source range to invalid casts in const expr

2023-07-28 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 rG81fb21624578: [clang][Diagnostics] Provide source range to invalid casts in const expr (authored by tbaeder). Repository: rG LLVM Github Monorepo

[PATCH] D156503: [clang][Interp] Don't assume throw stmts have a subexpr

2023-07-28 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 rG7010a4f14e0b: [clang][Interp] Don't assume throw stmts have a subexpr (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LA

[PATCH] D149172: [clang][Interp] Emit proper diagnostic when comparing unrelated pointers

2023-07-28 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 rG9092acc51010: [clang][Interp] Emit proper diagnostic when comparing unrelated pointers (authored by tbaeder). Changed prior to commit: https://rev

[PATCH] D154189: [clang][Interp] Implement zero-init of record types

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545131. tbaeder marked 2 inline comments as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D154189/new/ https://reviews.llvm.org/D154189 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/lib/AST/In

[PATCH] D154189: [clang][Interp] Implement zero-init of record types

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:1240 + // Fields + for (const Record::Field &Field : R->fields()) { +const Descriptor *D = Field.Desc; aaron.ballman wrote: > It looks like you're not initializing base clas

[PATCH] D154189: [clang][Interp] Implement zero-init of record types

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/records.cpp:939 + }; +#endif + aaron.ballman wrote: > I think we should have more test coverage. I mentioned a few above, but other > things to test would be inner classes (and anonymous members),

[PATCH] D154189: [clang][Interp] Implement zero-init of record types

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545146. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D154189/new/ https://reviews.llvm.org/D154189 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/lib/AST/Interp/Descriptor.cpp clang/lib/AST/Interp

[PATCH] D153693: [clang][Interp] Handle InitListExprs of composite type

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder abandoned this revision. tbaeder added a comment. Abandoning in favor of https://reviews.llvm.org/D156027 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153693/new/ https://reviews.llvm.org/D153693 __

[PATCH] D156509: [clang][Interp] Diagnose unknown parameter values

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545193. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156509/new/ https://reviews.llvm.org/D156509 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/Interp.cpp clang/lib/AST/Interp/Interp.h clang/lib/AST/Interp/Opcodes.td

[PATCH] D156509: [clang][Interp] Diagnose unknown parameter values

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked an inline comment as done. tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Interp.cpp:550-554 + if (isa(D)) { +S.FFDiag(E, diag::note_constexpr_function_param_value_unknown) << D; +S.Note(D->getLocation(), diag::note_declared_at) << D->getS

[PATCH] D155546: [clang][Interp] Implement __builtin_fmin

2023-07-28 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 rGc14c34de4571: [clang][Interp] Implement __builtin_fmin (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D155546?vs=544691&

[PATCH] D155369: [clang][Interp] Implement __builtin_isnan()

2023-07-28 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 rG8ad9dcb38693: [clang][Interp] Implement __builtin_isnan() (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D156027: [clang][Interp] Rework how initializers work

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked an inline comment as done. tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:2090 + assert(Initializing); + if (!isa(E)) { +if (!this->emitDupPtr(E)) aaron.ballman wrote: > And if it is a member c

[PATCH] D156027: [clang][Interp] Rework how initializers work

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545336. tbaeder marked 3 inline comments as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156027/new/ https://reviews.llvm.org/D156027 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/lib/AST/In

[PATCH] D156588: feat: Add support for Rocky Linux to LLVM Distro

2023-07-28 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Herald added a subscriber: ormris. @MaskRay Isn't this something we should be doing with config files now? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156588/new/ https://reviews.llvm.org/D156588

[PATCH] D155710: [clang][Interp] Create a new local variable in VisitCXXDefaultArgExpr

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder abandoned this revision. tbaeder added a comment. Abandoning in favor of https://reviews.llvm.org/D156027 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155710/new/ https://reviews.llvm.org/D155710 __

[PATCH] D155568: [clang][Interp] Make sure we push integers of the correct size

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545349. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155568/new/ https://reviews.llvm.org/D155568 Files: clang/lib/AST/Interp/Integral.h clang/lib/AST/Interp/InterpBuiltin.cpp clang/test/AST/Interp/builtin-functions.cpp Index: clang/test/AST/

[PATCH] D155568: [clang][Interp] Make sure we push integers of the correct size

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. In D155568#4542764 , @aaron.ballman wrote: > In D155568#4525488 , @tbaeder wrote: > >> This patch is missing the `Ret` part in `InterpBuiltin()` in the >> same file. That needs to change

[PATCH] D155165: [clang][Interp] Fully serialize Floatings to bytes

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545353. tbaeder marked 2 inline comments as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155165/new/ https://reviews.llvm.org/D155165 Files: clang/lib/AST/Interp/ByteCodeEmitter.cpp clang/lib/AST/Interp/Disasm.cpp clang/lib/AST/Interp/Fl

[PATCH] D156027: [clang][Interp] Rework how initializers work

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:240 +return Initializing ? this->visitInitializer(SubExpr) +: this->visit(SubExpr); aaron.ballman wrote: > tbaeder wrote: > > This pattern shows up a

[PATCH] D156027: [clang][Interp] Rework how initializers work

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Context.cpp:131 if (T->isFunctionPointerType() || T->isFunctionReferenceType() || - T->isFunctionType()) + T->isFunctionType() || T->isSpecificBuiltinType(BuiltinType::BoundMember)) return PT_FnPtr

[PATCH] D154189: [clang][Interp] Implement zero-init of record types

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545367. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D154189/new/ https://reviews.llvm.org/D154189 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/lib/AST/In

[PATCH] D155165: [clang][Interp] Fully serialize Floatings to bytes

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Source.h:63-64 /// Pointer into the code owned by a function. +public: const std::byte *Ptr; }; aaron.ballman wrote: > Any chance we can use friendship here as well, rather than exposing the d

[PATCH] D156027: [clang][Interp] Rework how initializers work

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Do you want me to squash the patches I abandoned into this one? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156027/new/ https://reviews.llvm.org/D156027 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https:

[PATCH] D156597: [Clang] Handle static_assert messages with an expression started by a literal

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/Parse/ParseDeclCXX.cpp:1019 -if (isTokenStringLiteral()) - AssertMessage = ParseUnevaluatedStringLiteralExpression(); -else if (getLangOpts().CPlusPlus26) +bool ParseAsExression = false; +if(getLangOpts()

[PATCH] D156604: [clang][ExprConst] Use call source range for 'in call to' diags

2023-07-29 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: cjdb, aaron.ballman, hazohelet. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Before: array.cpp:74:15: error: static assertion expression is n

[PATCH] D155371: [clang][Interp] Implement __builtin_isinf

2023-07-30 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 rG72450a77937c: [clang][Interp] Implement __builtin_isinf (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D155371?vs=540693

[PATCH] D155372: [clang][Interp] Implement __builtin_isfinite

2023-07-31 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 rGf444f396863c: [clang][Interp] Implement __builtin_isfinite (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D155374: [clang][Interp] Implement __builtin_isnormal

2023-07-31 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 rGd37f1e9965bd: [clang][Interp] Implement __builtin_isnormal (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D155374?vs=540

[PATCH] D149013: [clang][Interp] Check pointers when accessing base class

2023-07-31 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/D149013/new/ https://reviews.llvm.org/D149013 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D154688: [clang] Show verify prefix in error messages

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

[PATCH] D155393: [clang][Interp] Implement __builtin_isfpclass

2023-07-31 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/D155393/new/ https://reviews.llvm.org/D155393 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D155430: [clang][Interp] Implement __arithmethic_fence for floating types

2023-07-31 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/D155430/new/ https://reviews.llvm.org/D155430 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D154475: [clang][Interp] Fix ignoring MaterializeTemporaryExprs

2023-07-31 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/D154475/new/ https://reviews.llvm.org/D154475 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D155393: [clang][Interp] Implement __builtin_isfpclass

2023-07-31 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder marked an inline comment as done. tbaeder added inline comments. Comment at: clang/lib/AST/Interp/InterpBuiltin.cpp:232 + static_cast((F.classify() & FPClassArg).getZExtValue()); + S.Stk.push>(Integral<32, true>::from(Result)); + aaron.ballman wrote

[PATCH] D156027: [clang][Interp] Rework how initializers work

2023-07-31 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545926. tbaeder added a comment. Add `::delegate(const Expr *E)` and squash previous commits into this one. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156027/new/ https://reviews.llvm.org/D156027 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp

[PATCH] D156027: [clang][Interp] Rework how initializers work

2023-07-31 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545928. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156027/new/ https://reviews.llvm.org/D156027 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/lib/AST/Interp/Context.cpp clang/test/AST/Interp/l

[PATCH] D156027: [clang][Interp] Rework how initializers work

2023-07-31 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545929. tbaeder added a comment. merge `visitConditional()` into its only caller, `VisitAbstractConditionalOperator()`. This works now sine the initializer and non-initializer code paths are the same. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D1

[PATCH] D156604: [clang][ExprConst] Use call source range for 'in call to' diags

2023-08-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545934. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156604/new/ https://reviews.llvm.org/D156604 Files: clang/lib/AST/ExprConstant.cpp clang/lib/AST/Interp/Frame.h clang/lib/AST/Interp/InterpFrame.cpp clang/lib/AST/Interp/InterpFrame.h cl

[PATCH] D156604: [clang][ExprConst] Use call source range for 'in call to' diags

2023-08-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. In D156604#4546650 , @aaron.ballman wrote: >> As you can see I have a test case, but I didn't attach it in >> test/Misc/constexpr-source-ranges.cpp because I can't get >> -fdiagnostics-print-source-range-info to actually print

[PATCH] D156604: [clang][ExprConst] Use call source range for 'in call to' diags

2023-08-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. @hazohelet I changed this to just return `CallExpr->getSourceRange()` and to not save a source range separately. Can you give this a look please? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156604/new/ https://reviews.llvm.org/D156604 ___

[PATCH] D155270: [clang][Interp] Basic support for bit fields

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

[PATCH] D154951: [clang][Interp] __builtin_bit_cast, Take 2

2023-08-01 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/D154951/new/ https://reviews.llvm.org/D154951 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

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

2023-08-01 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/D154581/new/ https://reviews.llvm.org/D154581 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D152132: [clang][Inter] Fix lifetime diagnostics for dead records

2023-08-01 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/D152132/new/ https://reviews.llvm.org/D152132 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D144457: [clang][Interp] Handle global composite temporaries

2023-08-01 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/D144457/new/ https://reviews.llvm.org/D144457 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D154475: [clang][Interp] Fix ignoring MaterializeTemporaryExprs

2023-08-01 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 rG97cddb78502e: [clang][Interp] Fix ignoring MaterializeTemporaryExprs (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D154

[PATCH] D149828: [clang][Interp] Evaluate Base when discarding a MemberExpr

2023-08-01 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 rG6aac11bad976: [clang][Interp] Evaluate Base when discarding a MemberExpr (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/

[PATCH] D149831: [clang][Interp] Fix ignoring SubstNonTypeTemplateParmExpr

2023-08-01 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 rGc7b400f4a8d6: [clang][Interp] Fix ignoring SubstNonTypeTemplateParmExpr (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D

[PATCH] D149834: [clang][Interp] Fix ignoring TypeTraitExprs

2023-08-01 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 rGb864592915ae: [clang][Interp] Fix ignoring TypeTraitExprs (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D149834?vs=5203

[PATCH] D156604: [clang][ExprConst] Use call source range for 'in call to' diags

2023-08-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 545980. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156604/new/ https://reviews.llvm.org/D156604 Files: clang/lib/AST/ExprConstant.cpp clang/lib/AST/Interp/Frame.h clang/lib/AST/Interp/InterpFrame.cpp clang/lib/AST/Interp/InterpFrame.h cl

[PATCH] D149837: [clang][Interp] Fix ignoring CompoundLiteralExprs

2023-08-01 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 rGc0a36a157d97: [clang][Interp] Fix ignoring CompoundLiteralExprs (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D149837?v

[PATCH] D149960: [clang][Interp] Fix ignoring String- and CharacterLiterals

2023-08-01 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 rGeec6931d7787: [clang][Interp] Fix ignoring String- and CharacterLiterals (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D156786: [clang][Interp] Fix converting function pointers to bool

2023-08-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, shafik, cor3ntin. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Emit the proper `PT_FnPtr` instructions if we're handl

[PATCH] D149965: [clang][Interp] Fix tests for ignored expressions

2023-08-01 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 rG65dca4cbcbfc: [clang][Interp] Fix tests for ignored expressions (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACT

[PATCH] D156786: [clang][Interp] Fix converting function pointers to bool

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

[PATCH] D154474: [clang][Interp] Fix ignoring Integral- and IntegralToBoolean casts

2023-08-01 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 rG21aa8a220c01: [clang][Interp] Fix ignoring Integral- and IntegralToBoolean casts (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANG

[PATCH] D156786: [clang][Interp] Fix converting function pointers to bool

2023-08-01 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 rG015ffba811c4: [clang][Interp] Fix converting function pointers to bool (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE L

[PATCH] D156794: [clang][Interp] Lazily visit unknown global declarations

2023-08-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, shafik, cor3ntin. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. In C, we don't get a evaluateAsInitializer() call fo

<    7   8   9   10   11   12   13   14   15   16   >