[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-06-13 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/89775 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-06-13 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Abandoning this. We'll work around the brokenness in our downstream repo. https://github.com/llvm/llvm-project/pull/89775 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] (New) Add option to generate additional debug info for expression dereferencing pointer to pointers (PR #95298)

2024-06-13 Thread Paul T Robinson via cfe-commits
pogo59 wrote: You should have a look at [this imminent patch](https://github.com/llvm/llvm-project/pull/91724) which will affect your test. https://github.com/llvm/llvm-project/pull/95298 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] Bump the DWARF version number to 5 on Darwin. (PR #95164)

2024-06-11 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Well, hmmm, I dunno, a radical change like this really wants an RFC and weeks of debate, right?  https://github.com/llvm/llvm-project/pull/95164 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-06-11 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > For my toolchain I can continue to carry a patch until this is all sorted. Same here; I'm just professionally offended by the brokenness. But I'm not the right person to drive an RFC. If nobody else is willing to, I'll abandon this and we'll do what we need to downstream to

[clang] [llvm] [Driver] Rearrange some Apple version testing (PR #94514)

2024-06-11 Thread Paul T Robinson via cfe-commits
@@ -0,0 +1,9 @@ +; Test emitting version_min directives. + +; RUN: llc %s -filetype=asm -o - --mtriple arm64-apple-tvos9.0.0 | FileCheck %s --check-prefix=TVOS pogo59 wrote: Right, this test has one arm64 command and two thumb commands. I just now pushed

[clang] [llvm] [Driver] Rearrange some Apple version testing (PR #94514)

2024-06-11 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/94514 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Driver] Rearrange some Apple version testing (PR #94514)

2024-06-11 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 updated https://github.com/llvm/llvm-project/pull/94514 >From 19ddcbdf2eabb812b65bd194085777abc48eade4 Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Wed, 5 Jun 2024 11:15:46 -0700 Subject: [PATCH 1/2] [Driver] Rearrange some Apple version testing There were four

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-06-11 Thread Paul T Robinson via cfe-commits
pogo59 wrote: @MaskRay @tru How do we proceed with this? The current state is broken. https://github.com/llvm/llvm-project/pull/89775 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Split up `SemaDeclAttr.cpp` (PR #93966)

2024-06-05 Thread Paul T Robinson via cfe-commits
pogo59 wrote: I wonder if a lot of the new target-specific headers don't need to be in clang/include. That subtree is for headers that declare the exported interface (exported to other libs/layers); if the target-specific headers are just there for splitting up the module, they can stay in

[clang] [llvm] [Driver] Rearrange some Apple version testing (PR #94514)

2024-06-05 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/94514 There were four tests in Driver that actually tested bits of Driver and bits of CodeGen, and therefore had target restrictions. Rework those four tests into one Driver test (with no target restrictions) and two

[clang] [Driver] Fix the sysroot.c test properly (PR #94276)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/94276 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Fix the sysroot.c test properly (PR #94276)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 updated https://github.com/llvm/llvm-project/pull/94276 >From b4b78efe9c8119e6b4b1f539847e5678808bf715 Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Mon, 3 Jun 2024 12:43:59 -0700 Subject: [PATCH] [Driver] Fix the sysroot.c test properly A DEFAULT_SYSROOT

[clang] [Driver] Fix the sysroot.c test properly (PR #94276)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 edited https://github.com/llvm/llvm-project/pull/94276 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Fix the sysroot.c test properly (PR #94276)

2024-06-03 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Pls try in your environments to see if this solves the problem. https://github.com/llvm/llvm-project/pull/94276 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Fix the sysroot.c test properly (PR #94276)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/94276 A DEFAULT_SYSROOT interfered with the test, apparently. See #95055. >From c89183017ef9719c92077c1be6fd282e22a98e4e Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Mon, 3 Jun 2024 12:43:59 -0700 Subject:

[clang] [Driver] Remove a bunch of unnecessary REQUIRES constraints (PR #94055)

2024-06-03 Thread Paul T Robinson via cfe-commits
pogo59 wrote: FTR, when I say I could not reproduce on X86 Windows, exactly what I did is build on an X86 Windows host but include only the AArch64 target. The test passed. https://github.com/llvm/llvm-project/pull/94055 ___ cfe-commits mailing list

[clang] [Driver] Remove a bunch of unnecessary REQUIRES constraints (PR #94055)

2024-06-03 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Correctly written Driver tests do not depend on any particular target. All Driver code relevant to all targets is present in all cases. Exactly one test (out of 133) was failing on exactly two bots. I'm not saying what I did was the best thing; it was expedient, to get the bots

[clang] Reapply "[CUDA] Fix a couple of driver tests that really weren't bein… (PR #94000)

2024-06-03 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Let's hope so! Done. https://github.com/llvm/llvm-project/pull/94000 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Fix a CUDA test (PR #94258)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/94258 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Fix a CUDA test (PR #94258)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/94258 See #94000 for a report of a downstream failure, this fixes it. >From 21fea52ae628f1105ea562b77f7987f87908d948 Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Mon, 3 Jun 2024 10:08:42 -0700 Subject: [PATCH]

[clang] [Driver] Mark a test UNSUPPORTED to get the bots green again (PR #94253)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/94253 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Mark a test UNSUPPORTED to get the bots green again (PR #94253)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/94253 After #94055 this test failed on ARM/AArch64-hosted Windows, but it's not clear why. >From b31aa18d5abb553e4c44eff338a8c9e8393986b7 Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Mon, 3 Jun 2024 09:38:45

[clang] [Driver] Remove a bunch of unnecessary REQUIRES constraints (PR #94055)

2024-06-03 Thread Paul T Robinson via cfe-commits
pogo59 wrote: I'm seeing two bot failures: https://lab.llvm.org/buildbot/#/builders/60/builds/17462 https://lab.llvm.org/buildbot/#/builders/119/builds/18845 both for sysroot.c. These are Arm/AArch64 Windows bots, based on the names, which is not an environment I have available. I cannot

[clang] Reapply "[CUDA] Fix a couple of driver tests that really weren't bein… (PR #94000)

2024-06-03 Thread Paul T Robinson via cfe-commits
pogo59 wrote: If you add `--no-cuda-version-check` does the error go away? https://github.com/llvm/llvm-project/pull/94000 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Reapply "[CUDA] Fix a couple of driver tests that really weren't bein… (PR #94000)

2024-06-03 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Yeah lit is not so good at this; it means clang exited with an error, but lit is somehow eating the error message. @erichkeane If you could run that clang command manually and report the output, that would be extremely helpful. https://github.com/llvm/llvm-project/pull/94000

[clang] [Driver] Remove a bunch of unnecessary REQUIRES constraints (PR #94055)

2024-06-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/94055 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Remove a bunch of unnecessary REQUIRES constraints (PR #94055)

2024-06-03 Thread Paul T Robinson via cfe-commits
@@ -1,6 +1,4 @@ // REQUIRES: system-linux pogo59 wrote: I hope you feel empowered to post more cleanup patches upstream! https://github.com/llvm/llvm-project/pull/94055 ___ cfe-commits mailing list

[clang] [Driver] Remove a bunch of unnecessary REQUIRES constraints (PR #94055)

2024-05-31 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/94055 Removed foo-registered-target constraints from a bunch of tests, because mostly the driver doesn't need to have a target availabile. I ran check-clang-driver using a build with only the XCore target, and these

[clang] Reapply "[CUDA] Fix a couple of driver tests that really weren't bein… (PR #94000)

2024-05-31 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/94000 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Reapply "[CUDA] Fix a couple of driver tests that really weren't bein… (PR #94000)

2024-05-31 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/94000 …g run" (#93988)" This reverts commit 6416958067179c2987af0ef4568cd57f98b7e347. Fix bots by using different options. >From 100fb8de09303d15def2dd8db1bf1e6a106e4763 Mon Sep 17 00:00:00 2001 From: Paul Robinson

[clang] [CUDA] Fix a couple of driver tests that really weren't being run (PR #93960)

2024-05-31 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Reverted; the change to offloading-interoperability.c is not correct. I have someone willing to run experiments for me to find another solution. It would be good if the cuda/nvptx/etc bots ran check-clang-driver as well as the llvm tests. These just never get run.

[clang] Revert "[CUDA] Fix a couple of driver tests that really weren't being run" (PR #93988)

2024-05-31 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/93988 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Revert "[CUDA] Fix a couple of driver tests that really weren't being run" (PR #93988)

2024-05-31 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/93988 Reverts llvm/llvm-project#93960 The change to offloading-interoperability.c broke many bots. >From 8ce093226b730338a8faacb4ef09f97bcbc17515 Mon Sep 17 00:00:00 2001 From: Paul T Robinson Date: Fri, 31 May 2024

[clang] [CUDA] Fix a couple of driver tests that really weren't being run (PR #93960)

2024-05-31 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/93960 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [CUDA] Fix a couple of driver tests that really weren't being run (PR #93960)

2024-05-31 Thread Paul T Robinson via cfe-commits
pogo59 wrote: I found these because while I normally build with all targets, I don't usually bother running check-all. The other day I did, and these two tests failed. Driver tests normally should not need *-registered-target constraints, and these tests were looking at the host's CUDA

[clang] [CUDA] Fix a couple of driver tests that really weren't being run (PR #93960)

2024-05-31 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/93960 None >From efbbb7b729ba4a24413f3d2a1769effba3581d8f Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Fri, 31 May 2024 06:11:30 -0700 Subject: [PATCH] [CUDA] Fix a couple of driver tests that really weren't

[clang] [llvm] [clang] Introduce target-specific `Sema` components (PR #93179)

2024-05-30 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Mildly curious that there isn't a SemaX86? https://github.com/llvm/llvm-project/pull/93179 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [DebugInfo] Add flag to only emit referenced member functions (PR #87018)

2024-05-29 Thread Paul T Robinson via cfe-commits
pogo59 wrote: What @SLTozer said. I don't want "members" to mean "some but not all members" and "methods" was shorter than "member-functions" (but I'm okay with "member-functions"). https://github.com/llvm/llvm-project/pull/87018 ___ cfe-commits

[clang] [clang] Fix loss of `dllexport` for exported template specialization (PR #93302)

2024-05-24 Thread Paul T Robinson via cfe-commits
@@ -4849,9 +4852,12 @@ CodeGenModule::GetOrCreateLLVMGlobal(StringRef MangledName, llvm::Type *Ty, Entry->setLinkage(llvm::Function::ExternalLinkage); } -// Handle dropped DLL attributes. -if (D && !D->hasAttr() && !D->hasAttr() && -

[clang] [clang] Fix loss of `dllexport` for exported template specialization (PR #93302)

2024-05-24 Thread Paul T Robinson via cfe-commits
@@ -4554,8 +4554,11 @@ llvm::Constant *CodeGenModule::GetOrCreateLLVMFunction( Entry->setLinkage(llvm::Function::ExternalLinkage); } -// Handle dropped DLL attributes. -if (D && !D->hasAttr() && !D->hasAttr() && +// Handle dropped dllimport. +if (D

[clang] [clang] Fix loss of `dllexport` for exported template specialization (PR #93302)

2024-05-24 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 edited https://github.com/llvm/llvm-project/pull/93302 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix loss of `dllexport` for exported template specialization (PR #93302)

2024-05-24 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 commented: Does the test exercise both modified paths? I'm guessing it only exercises GetOrCreateLLVMFunction, but I'm not a codegen expert. https://github.com/llvm/llvm-project/pull/93302 ___ cfe-commits mailing list

[clang] [clang] Fix PS "selective" DLL import/export of vtable & typeinfo (PR #92579)

2024-05-20 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 approved this pull request. I've been persuaded this is the right direction. LGTM. https://github.com/llvm/llvm-project/pull/92579 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang] Fix PS "selective" DLL import/export of vtable & typeinfo (PR #92579)

2024-05-17 Thread Paul T Robinson via cfe-commits
@@ -1793,6 +1793,36 @@ void ItaniumCXXABI::EmitDestructorCall(CodeGenFunction , ThisTy, VTT, VTTTy, nullptr); } +// Check if any non-inline method has the specified attribute. +template +static bool CXXRecordNonInlineHasAttr(const CXXRecordDecl

[clang] [clang] Fix PS "selective" DLL import/export of vtable & typeinfo (PR #92579)

2024-05-17 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 edited https://github.com/llvm/llvm-project/pull/92579 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix PS "selective" DLL import/export of vtable & typeinfo (PR #92579)

2024-05-17 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 commented: I am moderately sure this does what we (Sony) want, but I would like a second set of eyes on it so I'm not marking it approved. https://github.com/llvm/llvm-project/pull/92579 ___ cfe-commits mailing list

[clang] [clang] Fix PS "selective" DLL import/export of vtable & typeinfo (PR #92579)

2024-05-17 Thread Paul T Robinson via cfe-commits
@@ -0,0 +1,115 @@ +/// For a class that has a vtable and typeinfo symbol for RTTI, if a user marks +/// either: +/// +/// (a) The entire class as dllexport (dllimport) +/// (b) Any non-inline method of the class as dllexport (dllimport) +/// +/// then Clang must export the

[clang] [clang] Make PS template DLL attribute propagation the same as MSVC (PR #92549)

2024-05-17 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/92549 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver][PS5] Set visibility option defaults (PR #92091)

2024-05-17 Thread Paul T Robinson via cfe-commits
@@ -0,0 +1,32 @@ +/// Check PS4 specific interactions between visibility options. +/// Detailed testing of -fvisibility-from-dllstorageclass is covered elsewhere. + +/// Check defaults. +// RUN: %clang -### -target x86_64-scei-ps4 -x cl -c -emit-llvm %s 2>&1 | \ +// RUN:

[clang] [Driver][PS5] Set visibility option defaults (PR #92091)

2024-05-17 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 approved this pull request. LGTM. I noted a couple of redundant checks, but if you think it's better for them to be explicit, I'm okay with keeping them. https://github.com/llvm/llvm-project/pull/92091 ___ cfe-commits

[clang] [Driver][PS5] Set visibility option defaults (PR #92091)

2024-05-17 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 edited https://github.com/llvm/llvm-project/pull/92091 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver][PS5] Set visibility option defaults (PR #92091)

2024-05-17 Thread Paul T Robinson via cfe-commits
@@ -0,0 +1,33 @@ +/// Check PS5 specific interactions between visibility options. +/// Detailed testing of -fvisibility-from-dllstorageclass is covered elsewhere. + +/// Check defaults. +// RUN: %clang -### -target x86_64-sie-ps5 -x cl -c -emit-llvm %s 2>&1 | \ +// RUN:

[clang] [clang-tools-extra] [llvm] [mlir] [polly] [test]: fix filecheck annotation typos (PR #91854)

2024-05-16 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > @pogo59 - you might find this interesting in terms of bitrotten tests, etc. Fixing these typos is great. Identifying recurring patterns in the typos would help motivate changes to FileCheck itself to detect them sooner. I think @jdenny-ornl might have had some private patches,

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-05-09 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Thanks for the link. I've put a comment there pointing here, explaining that the current default state (at least on Windows) is broken and that this patch has come to no agreement about how to fix it. https://github.com/llvm/llvm-project/pull/89775

[clang] [Coro] Relax a debug-info test (PR #91401)

2024-05-08 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/91401 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Coro] Relax a debug-info test (PR #91401)

2024-05-07 Thread Paul T Robinson via cfe-commits
pogo59 wrote: This test was failing in our downstream repo because the metadata didn't come out in exactly the same order. https://github.com/llvm/llvm-project/pull/91401 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [Coro] Relax a debug-info test (PR #91401)

2024-05-07 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/91401 Debug-info metadata does not have a strictly defined order. Check that elements are linked to each other correctly, not that metadata appears in a particular order. >From

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-05-07 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > I want to hear about opinions why the old compiler-rt file hierarchy is > preferred by some users. I think if you really want a range of opinions, you can get them from an RFC. Not many people will be watching this PR. https://github.com/llvm/llvm-project/pull/89775

[clang] [llvm] [DebugInfo] Use DW_op_bit_piece for structured bindings of bitfields (PR #85665)

2024-05-07 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 commented: The LLVM changes don't have a test. I expect there are existing expression-to-final-DWARF tests that you can modify to throw in a few bit-piece operators and show they come out correctly. Offhand it seems quite reasonable to use DW_OP_bit_piece for

[clang] [llvm] [RISCV] Teach .option arch to support experimental extensions. (PR #89727)

2024-05-06 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Driver tests are supposed to verify Driver behavior. That is, use `-###` and make sure the correct option is being passed down to the compiler. They should not be compiling anything. https://github.com/llvm/llvm-project/pull/89727 ___

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-05-06 Thread Paul T Robinson via cfe-commits
pogo59 wrote: To answer @MaskRay 's question directly, with respect to PlayStation (not Windows, which is the major problem): We have exactly one target, so neither the arch suffix nor a target-specific directory are useful. (Arguably we have two targets, but as we deliver entirely separate

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-05-06 Thread Paul T Robinson via cfe-commits
pogo59 wrote: My understanding is that this change never had a proper Discourse RFC, which means it was quite possible for vendors not to have noticed it. Certainly I (on behalf of Sony) was not aware, and I make some effort to keep an eye on things. There is no good reason to suppose Visual

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-05-03 Thread Paul T Robinson via cfe-commits
pogo59 wrote: @mstorsjo On reflection I agree that a build-time choice for handling this is not appropriate. It really wants to be target-based. Latest version (a) falls back to old style for Windows/PS as well as AIX, (b) adds a driver option to influence that default. @MaskRay @tru @nico

[clang] [llvm] [Driver] Add option to select compiler-rt arch suffix (PR #89775)

2024-05-03 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 edited https://github.com/llvm/llvm-project/pull/89775 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-05-01 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Worth noting that this only affects the presumed layout if the driver can't find either layout. In most installations, it will detect which one you have installed, and use it correctly. It's when the driver can't find the libs, and has to guess, that we run into difficulty. I

[clang] [llvm] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-05-01 Thread Paul T Robinson via cfe-commits
pogo59 wrote: I've redone the decision to be based on the setting of LLVM_ENABLE_PER_TARGET_RUNTIME_DIR and updated the tests to work with either setting as much as possible. Tests that explicitly look for the per-target _directory_ are enabled only if the CMake variable is ON.

[clang] [llvm] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-05-01 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 updated https://github.com/llvm/llvm-project/pull/89775 >From c8b04739159fcd4775656aabb4b964272add8c36 Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Tue, 23 Apr 2024 08:10:47 -0700 Subject: [PATCH 1/2] [Driver] Restore arch suffix for PS and Windows Commit

[clang] [clang] Set correct FPOptions if attribute 'optnone' presents (PR #85605)

2024-04-26 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > `optnone` is a very strange attribute; it's a directive to the compiler with > no clear semantics. In an ideal world, an `optnone` function would be compiled as-if the entire compilation unit had `-O0`. At `-O0`, Clang attaches `optnone` to every function, implying that this

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-25 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Poking around more, it looks like the canonical way to convert a CMake variable to a C++ define is to add an entry to llvm/include/llvm/Config/llvm-config.h.cmake. I'll have a go at doing it that way. https://github.com/llvm/llvm-project/pull/89775

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-25 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=on I'm unable to find what code this affects. I don't see it mentioned anywhere in clang/lib or clang/include. It does seem like it should control the behavior of `ToolChain::getCompilerRT`; where I had added the Windows/PS check, seems

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > There have been a few cases before and we did not write specific release > notes for the driver behavior: Possibly users of those targets do not depend on distributed builds the way our users do, and didn't run into the problem? They don't look like Windows targets, anyway.

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > I think the distributed build system users need to prepare a file hierarchy > to get the intended --dependent-lib= (like how to prepare --sysroot in > clang/test/Driver tests), or turn off it with the recent -frtlib-defaultlib. Is there a Release Note for this new requirement

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > My recollection of the past discussions is that we want users to switch to > the new hierarchy. Is Microsoft a "user" who agreed to this change? Was clang-vendors tagged on this discussion about a new file hierarchy? I don't recall it. The library name change is news to me,

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > It's been like that for maybe 2-3 years now and no one has complained about it As a downstream vendor I can tell you we work around things all the time without bothering to try to fix things upstream (I try to encourage more engagement, but I can't control what people actually

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > what gets emitted as embedded directive, when the compiler doesn't see either > of them at compile time (with e.g. distributed build systems), while they > might be available at link time. This is exactly the scenario we had. I will double-check that it is solved by my patch,

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > if you build with runtimes on windows (which is the suggested way) it will > end up with the new style without arch suffix Was someone from Microsoft party to that decision? If not, perhaps it needs to be revisited. We should not be making decisions about how they want to do

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Microsoft obviously builds and distributes with the arch suffix, supporting both 32-bit and 64-bit in the same distro. So I think they will continue to need it. (I can't actually speak for MS, but it's what I see in the Visual Studio installation.) I don't know enough about how

[clang] [Driver] Restore compiler-rt arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 edited https://github.com/llvm/llvm-project/pull/89775 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Restore arch suffix for PS and Windows (PR #89775)

2024-04-23 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 created https://github.com/llvm/llvm-project/pull/89775 Commit b876596 corrected default compiler-rt library names for many targets, this patch restores the arch suffix for PlayStation and Windows which both distribute these libraries with the arch suffix. >From

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-18 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Yes, driver part LGTM. https://github.com/llvm/llvm-project/pull/87623 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [SpecialCaseList] Use glob by default (PR #74809)

2024-04-17 Thread Paul T Robinson via cfe-commits
pogo59 wrote: FTR, got an internal report about this. Luckily it was my turn to catch new bugs and I recognized the issue. @MaskRay Is it too late to add a Release Note for LLVM 18? https://github.com/llvm/llvm-project/pull/74809 ___ cfe-commits

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-17 Thread Paul T Robinson via cfe-commits
@@ -310,6 +310,24 @@ namespace llvm { DINode::DIFlags Flags = DINode::FlagZero, DINodeArray Annotations = nullptr); +/// Create debugging information entry for a template alias. +/// \param Ty

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-16 Thread Paul T Robinson via cfe-commits
@@ -310,6 +310,24 @@ namespace llvm { DINode::DIFlags Flags = DINode::FlagZero, DINodeArray Annotations = nullptr); +/// Create debugging information entry for a template alias. +/// \param Ty

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-16 Thread Paul T Robinson via cfe-commits
@@ -465,3 +465,15 @@ // MANGLED_TEMP_NAMES: error: unknown argument '-gsimple-template-names=mangled'; did you mean '-Xclang -gsimple-template-names=mangled' // RUN: %clang -### -target x86_64 -c -g %s 2>&1 | FileCheck --check-prefix=FULL_TEMP_NAMES

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-16 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 edited https://github.com/llvm/llvm-project/pull/87623 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-16 Thread Paul T Robinson via cfe-commits
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const TemplateSpecializationType *Ty, auto PP = getPrintingPolicy(); Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None); + SourceLocation Loc = AliasDecl->getLocation(); + + if

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-16 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 commented: The flag situation is good. Tuning influences the default for the new option, which is how we want that to work. I'm happy, a couple of nits left. I'll leave it to others to do the final approval. https://github.com/llvm/llvm-project/pull/87623

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-15 Thread Paul T Robinson via cfe-commits
@@ -465,3 +465,15 @@ // MANGLED_TEMP_NAMES: error: unknown argument '-gsimple-template-names=mangled'; did you mean '-Xclang -gsimple-template-names=mangled' // RUN: %clang -### -target x86_64 -c -g %s 2>&1 | FileCheck --check-prefix=FULL_TEMP_NAMES

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-15 Thread Paul T Robinson via cfe-commits
@@ -5361,7 +5383,56 @@ static bool IsReconstitutableType(QualType QT) { return T.Reconstitutable; } -std::string CGDebugInfo::GetName(const Decl *D, bool Qualified) const { +bool CGDebugInfo::HasReconstitutableArgs( +ArrayRef Args) const { + return llvm::all_of(Args,

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-15 Thread Paul T Robinson via cfe-commits
@@ -4584,6 +4584,32 @@ renderDebugOptions(const ToolChain , const Driver , const llvm::Triple , } } + // Emit DW_TAG_template_alias for template aliases? True by default for SCE. + const auto *DebugTemplateAlias = Args.getLastArg( + options::OPT_gtemplate_alias,

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-15 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 deleted https://github.com/llvm/llvm-project/pull/87623 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-15 Thread Paul T Robinson via cfe-commits
@@ -4584,6 +4584,32 @@ renderDebugOptions(const ToolChain , const Driver , const llvm::Triple , } } + // Emit DW_TAG_template_alias for template aliases? True by default for SCE. + const auto *DebugTemplateAlias = Args.getLastArg( + options::OPT_gtemplate_alias,

[clang] [llvm] [Clang] Emit DW_TAG_template_alias for template aliases (PR #87623)

2024-04-15 Thread Paul T Robinson via cfe-commits
pogo59 wrote: > @pogo59 Hmm - I thought you held a strong preference that debugger tuning > never be the only way to access a certain feature, and that we should always > have direct control of these features via flags (but with default (or > explicit) debugger tuning setting some of these

[clang] [DebugInfo] Add flag to only emit referenced member functions (PR #87018)

2024-04-01 Thread Paul T Robinson via cfe-commits
pogo59 wrote: Thanks for the link back to the Phab review, that was helpful. I didn't offhand recall the previous round of this. I'll trust the comments I made on that review. :) s/members/methods/ in the option name to avoid the incorrect implication of suppressing data members? I suggest

[clang] [clang-tools-extra] [compiler-rt] [flang] [lld] [lldb] [llvm] [mlir] [openmp] [pstl] Finally formalise our defacto line-ending policy (PR #86318)

2024-03-22 Thread Paul T Robinson via cfe-commits
pogo59 wrote: As a data point, I've been setting `core.autocrlf=true` on Windows for years. I've been trained to make sure _new_ files have LF endings (usually I copy an existing file instead of creating a new file) but both Notepad and the Visual Studio editor are willing to preserve the

[clang] [X86][Headers] Specify result of NaN comparisons (PR #85862)

2024-03-21 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 closed https://github.com/llvm/llvm-project/pull/85862 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [X86][Headers] Specify result of NaN comparisons (PR #85862)

2024-03-20 Thread Paul T Robinson via cfe-commits
@@ -513,7 +526,7 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpge_pd(__m128d __a, ///operand are ordered with respect to those in the second operand. /// ///A pair of double-precision values are "ordered" with respect to each pogo59 wrote:

[clang] [X86][Headers] Specify result of NaN comparisons (PR #85862)

2024-03-20 Thread Paul T Robinson via cfe-commits
https://github.com/pogo59 updated https://github.com/llvm/llvm-project/pull/85862 >From 5ed257ea248a5868cd3190bd1ad89413a1606370 Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Tue, 19 Mar 2024 13:20:14 -0700 Subject: [PATCH 1/2] [X86][Headers] Specify result of NaN comparisons Make sure

[clang] [X86][Headers] Specify result of NaN comparisons (PR #85862)

2024-03-20 Thread Paul T Robinson via cfe-commits
@@ -710,6 +728,7 @@ _mm_cmpge_ps(__m128 __a, __m128 __b) /// ///The comparison yields 0x0 for false, 0x for true, in the ///low-order bits of a vector of [4 x float]. +///If either value in a comparison is NaN, returns false. pogo59 wrote:

  1   2   3   >