[clang] [clang] Fix error in gcc 7.5. on arm32-linux (PR #73702)

2023-11-28 Thread Steven Johnson via cfe-commits

https://github.com/steven-johnson created 
https://github.com/llvm/llvm-project/pull/73702

Apparently the gcc 7.5 compiler for arm32-linux fails to implicitly convert to 
std::optional; this inserts an explicit constructor to unbreak that compiler. 
[Injection from 
https://reviews.llvm.org/rG4142a64ae3ca4856e6a5ffae9e40014ef5cf9db5]

>From 87af40c987eb546bc3a3f022256d6d3b23340307 Mon Sep 17 00:00:00 2001
From: Steven Johnson 
Date: Tue, 28 Nov 2023 13:44:00 -0800
Subject: [PATCH] [clang] Fix error in gcc 7.5. on arm32-linux

Apparently the gcc 7.5 compiler for arm32-linux fails to implicitly convert to 
std::optional; this inserts an explicit constructor to unbreak that compiler.
---
 clang/lib/Sema/SemaDeclCXX.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp
index 7385eac48d8c895..f80de2b88b5ef68 100644
--- a/clang/lib/Sema/SemaDeclCXX.cpp
+++ b/clang/lib/Sema/SemaDeclCXX.cpp
@@ -17299,7 +17299,7 @@ bool Sema::EvaluateStaticAssertMessageAsString(Expr 
*Message,
 OverloadCandidateSet::CSK_Normal);
 if (MemberLookup.empty())
   return std::nullopt;
-return std::move(MemberLookup);
+return std::move(std::optional(MemberLookup));
   };
 
   bool SizeNotFound, DataNotFound;

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix error in gcc 7.5. on arm32-linux (PR #73702)

2023-11-28 Thread Steven Johnson via cfe-commits

https://github.com/steven-johnson closed 
https://github.com/llvm/llvm-project/pull/73702
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[flang] [clang] [llvm] [InstCombine] Canonicalize constant GEPs to i8 source element type (PR #68882)

2024-01-25 Thread Steven Johnson via cfe-commits

steven-johnson wrote:

FYI: this *appears* to have injected a failure into Halide builds (based on a 
bisect) -- there are some bitcode files that we build with LLVM's top-of-tree 
Clang then load later on to use for codegen, and these bitcode files are now 
missing certain type definitions that are required. (Does this change affect 
optimizer behavior at all?)

I'm investigating from the Halide side to see if I can confirm or deny that 
this is the injection point, but any suggestions as to how this could cause 
such an effect would be welcomed.


https://github.com/llvm/llvm-project/pull/68882
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [flang] [InstCombine] Canonicalize constant GEPs to i8 source element type (PR #68882)

2024-01-25 Thread Steven Johnson via cfe-commits

steven-johnson wrote:

Looks like more-aggressive type stripping broke us. We have a workaround we can 
land on the Halide side.

https://github.com/llvm/llvm-project/pull/68882
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] Finish deleting the le32/le64 targets (PR #98497)

2024-07-26 Thread Steven Johnson via cfe-commits

steven-johnson wrote:

Note that Halide has removed its dependency on the le32/le64 targets as of 
https://github.com/halide/Halide/pull/8344.

https://github.com/llvm/llvm-project/pull/98497
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] Finish deleting the le32/le64 targets (PR #98497)

2024-07-15 Thread Steven Johnson via cfe-commits

steven-johnson wrote:

Unfortunately, this utterly breaks Halide, which was in fact relying on both of 
these targets.

https://github.com/llvm/llvm-project/pull/98497
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] Finish deleting the le32/le64 targets (PR #98497)

2024-07-15 Thread Steven Johnson via cfe-commits

steven-johnson wrote:

> LGTM! That partial Le32/Leb64 restore was to give Halide some time.

I understand that you want these gone, but the fact of the matter is that 
Halide isn't ready for this change, and so the next integrate of LLVM into 
google3 will break the world. We urgently need these features (or something 
like them).

https://github.com/llvm/llvm-project/pull/98497
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] Finish deleting the le32/le64 targets (PR #98497)

2024-07-15 Thread Steven Johnson via cfe-commits

steven-johnson wrote:

> We're trying wasm now.

This looked promising in our GitHub tests, but for reasons that aren't clear 
(yet), ~everything compiled this way inside google3 resulted in linker errors 
(missing symbols).

https://github.com/llvm/llvm-project/pull/98497
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] Finish deleting the le32/le64 targets (PR #98497)

2024-07-16 Thread Steven Johnson via cfe-commits

steven-johnson wrote:

After some initial experiments, it looks unlikely that a quick fix is possible 
on our side. May I suggest a revert with a (say) 30-day expiration date? That 
should give us enough time to come up with a fix on our side (which will 
actually be a drop-other-work-and-fix-it approach this time).

https://github.com/llvm/llvm-project/pull/98497
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits