[clang] [clang][bytecode] Fix reporting failed local constexpr initializers (PR #123588)

2025-01-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123588 We need to emit the 'initializer of X is not a constant expression' note for local constexpr variables as well. >From 8ce1601e272429601c5a1e292c2cd1b9a6afb6a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=

[clang] [clang][bytecode] Don't memcpy() FixedPoint values (PR #123599)

2025-01-20 Thread Timm Baeder via cfe-commits
tbaederr wrote: > Maybe worth adding a release note, especially if you can write a test that > would fail without this patch? I generally don't add change log entries for this stuff since it's an experimental, off-by-default feature. https://github.com/llvm/llvm-project/pull/123599 __

[clang] [clang][bytecode][NFC] Use FixedPoint opaque int API (PR #123522)

2025-01-19 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123522 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix discarding DerivedToBase casts (PR #123523)

2025-01-19 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123523 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Don't memcpy() FixedPoint values (PR #123599)

2025-01-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123599 llvm::FixedPoint is not trivially copyable. >From 569163a420208a3a85bd2460fa214fe6ef593ae9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 20 Jan 2025 13:05:37 +0100 Subject: [PATCH] [c

[clang] [clang][bytecode][NFC] Simplify visitDeclRef (PR #123380)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123380 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix diagnostic mismatch with current interpreter (PR #123571)

2025-01-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123571 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Diagnose IntegralToPointer casts to non-void (PR #123619)

2025-01-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123619 But keep evaluating. This is what the current interpreter does as well. >From 3ba917b703c05da898515923e17db03850c807e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 20 Jan 2025 14:19:

[clang] [clang][bytecode] Don't memcpy() FixedPoint values (PR #123599)

2025-01-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123599 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Diagnose IntegralToPointer casts to non-void (PR #123619)

2025-01-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123619 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] only inherit the parent eval context inside of lambdas (PR #124426)

2025-01-26 Thread Timm Baeder via cfe-commits
@@ -35,6 +36,12 @@ inline bool isLambdaCallOperator(const DeclContext *DC) { return isLambdaCallOperator(cast(DC)); } +inline bool isLambdaMethod(const DeclContext *DC) { + if (auto *MD = dyn_cast_or_null(DC); MD) tbaederr wrote: ```suggestion if (const

[clang] [clang] Add dump() support for lvalue APValues (PR #124476)

2025-01-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/124476 >From 89b0e78879578fb740948badca141cf6acb21357 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 26 Jan 2025 19:17:28 +0100 Subject: [PAT

[clang] [clang] Add dump() support for lvalue APValues (PR #124476)

2025-01-27 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/124476 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://list

[clang] [clang] Add dump() support for lvalue APValues (PR #124476)

2025-01-26 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/124476 Add some lvalue information to the `dump()` output of lvalue APValues. >From 49295093082278b251325e97bf0e0c2a08e8375e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 26 Jan 2025 19:17:2

[clang] [clang] Add dump() support for lvalue APValues (PR #124476)

2025-01-26 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/124476 >From 89b0e78879578fb740948badca141cf6acb21357 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 26 Jan 2025 19:17:28 +0100 Subject: [PATCH] [clang] Add dump() support for lvalue APValues

[clang] [clang] Add dump() support for lvalue APValues (PR #124476)

2025-01-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/124476 >From 373dda500b436a5ee4ca44383ccbb711090fa844 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 26 Jan 2025 19:

[clang] [clang] Add dump() support for lvalue APValues (PR #124476)

2025-01-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: @@ -710,10 +710,39 @@ void TextNodeDumper::Visit(const APValue &Value, QualType Ty) { << GetApproxValue(Value.getComplexFloatImag()) << 'i'; } return; - case APValue::LValue: + case APValue::LValue: { (

[clang] [clang] Add dump() support for lvalue APValues (PR #124476)

2025-01-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/124476 >From 373dda500b436a5ee4ca44383ccbb711090fa844 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= D

[clang] [clang] Add dump() support for lvalue APValues (PR #124476)

2025-01-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: @shafik Sorry, I screwed up before. The problematic APValue actually doesn't show up because the initializer is not constant. Not sure how to make the problem appear. https://gi

[clang] [clang][ExprConst] Don't diagnose a non-existent init as not constant (PR #124575)

2025-01-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/124575 None >From c0cee82829632b0b3b78bfd00f1c03a9a565dfff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 27 Jan 2025 16:55:05 +0100 Subject: [PATCH] [clang][ExprConst] Don't diagnose a non-e

[clang] [clang][ExprConst] Don't diagnose a non-existent init as not constant (PR #124575)

2025-01-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr converted_to_draft https://github.com/llvm/llvm-project/pull/124575 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix dummy handling for p2280r4 (PR #124396)

2025-01-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/124396 >From 789e55590ffc9b7b901701f4377e0910540088e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 22 Jan 2025 11:57:10 +0100 Subject: [PATCH] [clang][bytecode] Fix dummy handling for p2280r

[clang] [clang][bytecode] Fix dummy handling for p2280r4 (PR #124396)

2025-01-28 Thread Timm Baeder via cfe-commits
tbaederr wrote: Yes, this should be the full implementation https://github.com/llvm/llvm-project/pull/124396 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Always compile most recent function decl (PR #124722)

2025-01-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/124722 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][ExprConst] Don't diagnose a non-existent init as not constant (PR #124575)

2025-01-28 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: I don't think a changelog entry is necessary, it's a minor diagnostic change and the example from above isn't in any clang release yet. https://github.com/llvm/llvm-project/pull/124575 ___

[clang] [clang] Remove an incorrect assertion in ConstantFoldAttrs (PR #105789)

2025-01-28 Thread Timm Baeder via cfe-commits
tbaederr wrote: Sounds like an LGTM from Nikita, does anyone else have other reservations? (Other than the missing release note) https://github.com/llvm/llvm-project/pull/105789 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llv

[clang] [clang][bytecode] Fix dummy handling for p2280r4 (PR #124396)

2025-01-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/124396 >From 2f0d7d3fbe94ca1e6e2d951dbd0dfadf4e7aa267 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 22 Jan 2025 11:57:10 +0100 Subject: [PATCH] [clang][bytecode] Fix dummy handling for p2280r

[clang] [clang][bytecode] Fix dummy handling for p2280r4 (PR #124396)

2025-01-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/124396 >From da9f5ec4734a8231e4a758cc13f51af8336604b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 22 Jan 2025 11:57:10 +0100 Subject: [PATCH] [clang][bytecode] Fix dummy handling for p2280r

[clang] [clang][ExprConst] Don't diagnose a non-existent init as not constant (PR #124575)

2025-01-28 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/124575 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix dummy handling for p2280r4 (PR #124396)

2025-01-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/124396 >From 6a7c6ff71b7dce7ad57d5ca0203537800bfa303f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 22 Jan 2025 11:57:10 +0100 Subject: [PATCH] [clang][bytecode] Fix dummy handling for p2280r

[clang] [clang][ExprConst] Let diagnostics point to std::allocator calls (PR #123744)

2025-01-21 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123744 Instead of the underlying operator new calls. This fixes a longstanding FIXME comment in cxx2a-constexpr-dynalloc.cpp. >From 73af41bb5b2fd6d854e00353ad48b300ec30eccc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ti

[clang] [clang][bytecode] Fix diagnostic mismatch with current interpreter (PR #123571)

2025-01-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123571 Don't report dead pointers if we've checking for a potential constant expression. >From 7a7f2013ea262fc4d2bb9539dc3f3d4da496cd2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 20 Jan

[clang] [clang][bytecode] Use std::allocator calls for Descriptor source (PR #123900)

2025-01-21 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123900 ... for the dynamic blocks created for operator new calls. This way we get the type of memory allocated right. As a side-effect, the diagnostics now point to the std::allocator calls, which is an improvement.

[clang] [clang][bytecode] Handle invalid temporary descriptors (PR #125033)

2025-01-29 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/125033 This happens e.g. when a vector element type is not primitive. >From c63d51e21ccef8dd5be008ffedb3f7d4748811f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 30 Jan 2025 06:41:28 +0100

[clang] [clang][bytecode] Handle non-primitive vector element types (PR #124926)

2025-01-29 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/124926 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Change the way we do init chains (PR #122871)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/122871 See the comment in Compiler<>::VisitCXXThisExpr. We need to mark the InitList explicitly, so we later know what to refer to when the init chain is active. >From 7fec8f1137b7aea844400030a32d46b37b1a99e1 Mon Sep

[clang] [clang][bytecode] Change the way we do init chains (PR #122871)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/122871 >From d1de505faaebb9f59c45a2951f106a86ed296e15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Tue, 14 Jan 2025 09:19:27 +0100 Subject: [PATCH] [clang][bytecode] Change the way we do init cha

[clang] [clang][bytecode] Mark global decls with diagnostics invalid (PR #122895)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/122895 Even if their evaluation succeeds, mark them as invalid. This fixes some long standing differences to the ast walker interpeter. >From 66c1a54bf96661aa0e5b60cf121b03776a8dcbbe Mon Sep 17 00:00:00 2001 From: =?

[clang] [clang][bytecode] Change the way we do init chains (PR #122871)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/122871 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Add InitLinkScope for temporary variables (PR #106552)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/106552 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Add InitLinkScope for temporary variables (PR #106552)

2025-01-14 Thread Timm Baeder via cfe-commits
tbaederr wrote: Fixed differently by https://github.com/llvm/llvm-project/pull/122871 https://github.com/llvm/llvm-project/pull/106552 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Add init link for the RVO ptr (PR #122904)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/122904 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][NFC] Make ASTContext::getPointerAuthTypeDiscriminator const (PR #122931)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/122931 Can be const, should be const. >From a0b0ae9f99527d6b9a61bece67fee96b696c0eaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Tue, 14 Jan 2025 17:34:02 +0100 Subject: [PATCH] [clang][NFC] Ma

[clang] [clang][NFC] Make ASTContext::getPointerAuthTypeDiscriminator const (PR #122931)

2025-01-14 Thread Timm Baeder via cfe-commits
tbaederr wrote: Not that easy I guess. https://github.com/llvm/llvm-project/pull/122931 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][NFC] Make ASTContext::getPointerAuthTypeDiscriminator const (PR #122931)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/122931 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][NFC] Make ASTContext::getPointerAuthTypeDiscriminator const (PR #122931)

2025-01-14 Thread Timm Baeder via cfe-commits
tbaederr wrote: This sucks, but mangling needs a mutable `ASTContext`. https://github.com/llvm/llvm-project/pull/122931 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Mark global decls with diagnostics invalid (PR #122895)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/122895 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Add init link for the RVO ptr (PR #122904)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/122904 None >From 24b323b514d130b12898eaeb63da05f6456e2f79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Tue, 14 Jan 2025 15:09:50 +0100 Subject: [PATCH] [clang][bytecode] Add init link for the R

[clang] [clang][bytecode] Handle UETT_PtrAuthTypeDiscriminator (PR #122941)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/122941 None >From 4bef28263ea3947b3bc80835fde340c776d0aad3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Tue, 14 Jan 2025 18:36:30 +0100 Subject: [PATCH] [clang][bytecode] Handle UETT_PtrAuthType

[clang] [clang][bytecode] Consider unknown-size arrays in memcpy/memcmp (PR #121462)

2025-01-02 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/121462 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Consider unknown-size arrays in memcpy/memcmp (PR #121462)

2025-01-02 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/121462 When emitting diagnostics for the number of elements. >From 26b2225c92cf30d75e91a1a43bdf55e6e624da5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 2 Jan 2025 10:27:30 +0100 Subject: [

[clang] [clang][bytecode] Create local scopes for if then/else statements (PR #120852)

2024-12-21 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/120852 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode][NFC] Simplify VisitCXXDefaultArgExpr (PR #123024)

2025-01-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123024 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Handle UETT_PtrAuthTypeDiscriminator (PR #122941)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/122941 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Add InitLinkScope for toplevel Expr temporary (PR #123319)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123319 None >From d20a37fcaebf999167ffceeb417e0369ef8a9936 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 17 Jan 2025 11:49:35 +0100 Subject: [PATCH] [clang][bytecode] Add InitLinkScope for t

[clang] [clang][bytecode] Add InitLinkScope for toplevel Expr temporary (PR #123319)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123319 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Remove an incorrect assertion in ConstantFoldAttrs (PR #105789)

2025-01-17 Thread Timm Baeder via cfe-commits
tbaederr wrote: For ```c++ void f() { [[clang::annotate("B", (void)1, (void)2, 7)]] int j = 0; } ``` The IR is: ```llvm @.str = private unnamed_addr constant [2 x i8] c"B\00", section "llvm.metadata" @.str.1 = private unnamed_addr constant [10 x i8] c"array.cpp\00", section "llvm.metadata" @.

[clang] [clang] Remove an incorrect assertion in ConstantFoldAttrs (PR #105789)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/105789 >From 62c8614cd64e0b97b62eb5700ff39dd290bbeebf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 23 Aug 2024 08:54:12 +0200 Subject: [PATCH] [clang] Remove an incorrect assertion in Consta

[clang] [clang][bytecode] Fix rejecting invalid sizeof expressions (PR #123332)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123332 Emit the invalid note instead of nothing. >From 3b04b61f352684331c919e716eb1a3589f855125 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 17 Jan 2025 14:11:08 +0100 Subject: [PATCH] [cla

[clang] [clang][bytecode] Fix rejecting invalid sizeof expressions (PR #123332)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123332 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix rejecting invalid sizeof expressions (PR #123332)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/123332 >From bcb3faf64f933ce4c9f1040af8eaec4d4957c09c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 17 Jan 2025 14:11:08 +0100 Subject: [PATCH] [clang][bytecode] Fix rejecting invalid sizeof

[clang] [clang][bytecode] Revisit global variables separately (PR #123358)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123358 Call `EvaluateAsInitializer()` explicitly here, so we don't abort the evaluation of the `DeflRefExpr` just because the initializer of that global variable failed. >From 8dac131d58f4c6dc4ddb58c3933e7726d65f9d3

[clang] [clang][bytecode] Revisit global variables separately (PR #123358)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/123358 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode][NFC] Simplify visitDeclRef (PR #123380)

2025-01-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123380 Try to reduce indentation here. >From bcfd68e379df916d1e97ad2411c74096969d3621 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 17 Jan 2025 16:35:23 +0100 Subject: [PATCH] [clang][byteco

[clang] [clang-tools-extra] [lldb] Reapply "[clang] Avoid re-evaluating field bitwidth" (PR #122289)

2025-01-09 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/122289 None >From 813b4bee5bddfbbc3eec8a7047c51cfde825bcee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 9 Jan 2025 16:01:59 +0100 Subject:

[clang] [clang-tools-extra] [lldb] Reapply "[clang] Avoid re-evaluating field bitwidth" (PR #122289)

2025-01-09 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/122289 >From 813b4bee5bddfbbc3eec8a7047c51cfde825bcee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 9 Jan 2025 16:01:59 +0100 Subject: [PATC

[clang] [clang-tools-extra] [lldb] Reapply "[clang] Avoid re-evaluating field bitwidth" (PR #122289)

2025-01-09 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: @JDevlieghere The previous attempt made some lldb build bots fail. I've now changed `TypeSystemClang.cpp` to create `ConstantExpr`s for the bitwidth values and adapted one of the tests. Please review. https://github.com/llvm/ll

[clang] [clang][bytecode] Implement __builtin_constant_p differently (PR #122099)

2025-01-09 Thread Timm Baeder via cfe-commits
tbaederr wrote: >- We check whether two pointers are in the same range > > Is that possible to implement in the interpreter without going back to AST > visitors? I take "in the same range" meaning as "can be compared at compile time at all" here, so yes, that would be rather trivial (we ha

[clang] [clang] constexpr atomic builtins (__c11_atomic_OP and __atomic_OP) (PR #98756)

2025-01-09 Thread Timm Baeder via cfe-commits
Hana =?utf-8?q?Dusíková?= , Hana =?utf-8?q?Dusíková?= , Hana =?utf-8?q?Dusíková?= , Hana =?utf-8?q?Dusíková?= , Hana =?utf-8?q?Dusíková?= , Hana =?utf-8?q?Dusíková?= , Hana =?utf-8?q?Dusíková?= Message-ID: In-Reply-To: tbaederr wrote: Unfortunately we currently have two constant

[clang] [clang][ExprConst] Add diagnostics for invalid binary arithmetic (PR #118475)

2025-01-09 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/118475 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://list

[clang] [clang] Evaluate constant initializers in C as well (PR #121950)

2025-01-09 Thread Timm Baeder via cfe-commits
tbaederr wrote: This makes no sense, we're already checking for unversioned c++ above. https://github.com/llvm/llvm-project/pull/121950 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Evaluate constant initializers in C as well (PR #121950)

2025-01-09 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/121950 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Implement __builtin_constant_p differently (PR #122099)

2025-01-09 Thread Timm Baeder via cfe-commits
tbaederr wrote: > We check which one is the currently active member of a union, and This is `__builtin_is_within_lifetime`, isn't it? https://github.com/llvm/llvm-project/pull/122099 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://list

[clang] [clang][ExprConst] Add diagnostics for invalid binary arithmetic (PR #118475)

2025-01-09 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/118475 >From 0d631c57d3ad2e16e1485dcd39f3a9c6d0aaa07a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= D

[clang] [clang][bytecode] Always return false for invalid bcp results (PR #121467)

2025-01-02 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/121467 None >From 64b56760ef4d701f36204588ea82c0ecc24579f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 2 Jan 2025 12:08:17 +0100 Subject: [PATCH] [clang][bytecode] Always return false for

[clang] [clang][Interp] Implement __builtin_bit_cast (PR #68288)

2025-01-02 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= ,

[clang] [clang-tools-extra] [clang] Avoid re-evaluating field bitwidth (PR #117732)

2025-01-02 Thread Timm Baeder via cfe-commits
tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/117732 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Implement __builtin_bit_cast (PR #68288)

2025-01-02 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= ,

[clang] [clang][bytecode] Always return false for invalid bcp results (PR #121467)

2025-01-02 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/121467 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Consider start index when copying composite array (PR #121461)

2025-01-02 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/121461 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode][NFC] Simplify VisitCXXDefaultArgExpr (PR #123024)

2025-01-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/123024 We have `discard()` these days. >From b6da1ccfe8f0ff9ff25e226dc01b781291892c65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 15 Jan 2025 08:50:52 +0100 Subject: [PATCH] [clang][byteco

[clang] [clang][bytecode] Fix dynamic array allocation return values (PR #127387)

2025-02-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/127387 We need to return a pointer to the first element, not the array itself. >From eb8387d21d1b5455b9450802729cf407bfb9d703 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 16 Feb 2025 09:43:

[clang] [clang][bytecode] Add Descriptor::dumpFull (PR #127386)

2025-02-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/127386 This is useful to print all (or most) of the valid offsets into a block of the given descriptor. >From 990d0cf197e94d23fa8d9ef4be295bbb4dbacb84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Dat

[clang] [clang][bytecode] Fix const-ness of local primitive temporary (PR #127405)

2025-02-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/127405 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode][NFC] Move reduced libcxx tests to a subdir (PR #127438)

2025-02-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/127438 None >From dad619ca73c2c68ffec025f9e5f99501fe649047 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 17 Feb 2025 06:35:03 +0100 Subject: [PATCH] [clang][bytecode][NFC] Move reduced libcx

[clang] [clang][bytecode][NFC] Move reduced libcxx tests to a subdir (PR #127438)

2025-02-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/127438 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix rejecting non-constexpr array ctors (PR #127448)

2025-02-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/127448 We shouldn't abort here when compiling, this is happening (and properly diagnosed) when interpreting the bytecode. >From 0fdf2160faa4ed9ccd2f36e8333575bf075e0755 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=2

[clang] [clang][bytecode] Fix operator new source expression (PR #126870)

2025-02-11 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/126870 ... for composite element types. Looks like I forgot this in e6030d389571b3f1b0f0c5a35b7fa45937ed0f6c >From 56245b317f3b71a2c11a188ac0bb4de114ea012c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?=

[clang] [clang][bytecode] Add Descriptor::dumpFull (PR #127386)

2025-02-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/127386 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix dynamic array allocation return values (PR #127387)

2025-02-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/127387 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix builtin_memcmp buffer sizes for pointers (PR #130570)

2025-03-15 Thread Timm Baeder via cfe-commits
@@ -0,0 +1,120 @@ +// RUN: %clang_cc1 -std=c++2c -fexperimental-new-constant-interpreter -verify=expected,both %s +// RUN: %clang_cc1 -std=c++2c -verify=ref,both %s + +// both-no-diagnostics + +namespace std { +inline namespace { tbaederr wrote: Just a reduced

[clang] [clang][bytecode] Fix initializing array struct fields from an APValue (PR #131983)

2025-03-19 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr edited https://github.com/llvm/llvm-project/pull/131983 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Compile functions lazily (PR #131596)

2025-03-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/131596 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Check dtor instance pointers for active-ness (PR #128732)

2025-03-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/128732 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix builtin_memchr with non-0 start index (PR #131633)

2025-03-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/131633 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Placement new error when modifying consts (PR #132460)

2025-03-21 Thread Timm Baeder via cfe-commits
tbaederr wrote: The tests should go into a file not under `ByteCode/` since they aren't specific to the bytecode interpreter. There should be existing placement new tests in `SemaCXX/`. https://github.com/llvm/llvm-project/pull/132460 ___ cfe-commits

[clang] [Clang] Introduce __builtin_is_modifiable_lvalue() (PR #132524)

2025-03-21 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr deleted https://github.com/llvm/llvm-project/pull/132524 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Introduce __builtin_is_modifiable_lvalue() (PR #132524)

2025-03-21 Thread Timm Baeder via cfe-commits
tbaederr wrote: It looks like this is similar to `__builtin_constant_p` - what is the proposed behavior wrt. side effects in the evaluated expression? gcc and clang disagree about this a lot currently: https://godbolt.org/z/rbneznT9z https://github.com/llvm/llvm-project/pull/132524 ___

[clang] [Clang] Introduce __builtin_is_modifiable_lvalue() (PR #132524)

2025-03-22 Thread Timm Baeder via cfe-commits
tbaederr wrote: > > It looks like this is similar to `__builtin_constant_p` - what is the > > proposed behavior wrt. side effects in the evaluated expression? gcc and > > clang disagree about this a lot currently: https://godbolt.org/z/rbneznT9z > > It is intended to have no side-effects. I fo

[clang] [clang][bytecode] Implement __builtin_wmemchr (PR #132254)

2025-03-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/132254 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

<    17   18   19   20   21   22   23   24   25   26   >