[clang] f49d576 - [CUDA] Add wrapper code generation for registering CUDA images

2022-05-11 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-11T07:30:25-04:00 New Revision: f49d576a882da81292b5730af442fa38899af312 URL: https://github.com/llvm/llvm-project/commit/f49d576a882da81292b5730af442fa38899af312 DIFF: https://github.com/llvm/llvm-project/commit/f49d576a882da81292b5730af442fa38899af312.diff

[clang] 26eb042 - [Clang] Introduce clang-offload-packager tool to bundle device files

2022-05-11 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-11T09:39:13-04:00 New Revision: 26eb04268f4c9c0e2d4ff5bc53ae90cbb7f6c731 URL: https://github.com/llvm/llvm-project/commit/26eb04268f4c9c0e2d4ff5bc53ae90cbb7f6c731 DIFF: https://github.com/llvm/llvm-project/commit/26eb04268f4c9c0e2d4ff5bc53ae90cbb7f6c731.diff

[clang] f933c89 - [OpenMP] Add a check for alignment in the offload packager

2022-05-11 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-11T12:25:44-04:00 New Revision: f933c896d1abe9e0e7854e95023fe389c0e704eb URL: https://github.com/llvm/llvm-project/commit/f933c896d1abe9e0e7854e95023fe389c0e704eb DIFF: https://github.com/llvm/llvm-project/commit/f933c896d1abe9e0e7854e95023fe389c0e704eb.diff

[clang] 42a1fb5 - [LinkerWrapper][Fix} Fix bad alignment from extracted archive members

2022-05-11 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-11T16:56:41-04:00 New Revision: 42a1fb5ca56c494e25419a97057a9526f3e8608d URL: https://github.com/llvm/llvm-project/commit/42a1fb5ca56c494e25419a97057a9526f3e8608d DIFF: https://github.com/llvm/llvm-project/commit/42a1fb5ca56c494e25419a97057a9526f3e8608d.diff

[clang] 1bfa88d - [LinkerWrapper] Remove stripping features from the linker wrapper

2022-05-12 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-12T20:45:49-04:00 New Revision: 1bfa88d0c5ad9e5ef06b770e8ca4d6d3a3aaca2d URL: https://github.com/llvm/llvm-project/commit/1bfa88d0c5ad9e5ef06b770e8ca4d6d3a3aaca2d DIFF: https://github.com/llvm/llvm-project/commit/1bfa88d0c5ad9e5ef06b770e8ca4d6d3a3aaca2d.diff

[clang] 8a0fb96 - [LinkerWrapper] Group static libraries in their own buffer

2022-05-12 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-12T20:45:49-04:00 New Revision: 8a0fb965f6992078bb3d8bd68d3995e1150fe442 URL: https://github.com/llvm/llvm-project/commit/8a0fb965f6992078bb3d8bd68d3995e1150fe442 DIFF: https://github.com/llvm/llvm-project/commit/8a0fb965f6992078bb3d8bd68d3995e1150fe442.diff

[clang] 002a63f - [OpenMP] Add `__CUDA_ARCH__` definition when offloading with OpenMP

2022-05-13 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-13T14:38:35-04:00 New Revision: 002a63f937d91c0aad192f2d4997317fb277b32a URL: https://github.com/llvm/llvm-project/commit/002a63f937d91c0aad192f2d4997317fb277b32a DIFF: https://github.com/llvm/llvm-project/commit/002a63f937d91c0aad192f2d4997317fb277b32a.diff

[clang] 5189f63 - [OpenMP] Don't include the device wrappers if -nostdinc is used

2022-05-13 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-13T14:38:39-04:00 New Revision: 5189f634a113b06fc2f2e8c6c021c0083f59bfb8 URL: https://github.com/llvm/llvm-project/commit/5189f634a113b06fc2f2e8c6c021c0083f59bfb8 DIFF: https://github.com/llvm/llvm-project/commit/5189f634a113b06fc2f2e8c6c021c0083f59bfb8.diff

[clang] af757f8 - [OpenMP] Don't set device runtime debugging flags if using '-nogpulib'

2022-05-13 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-13T14:38:43-04:00 New Revision: af757f89806e03229837425b77839498db470ef8 URL: https://github.com/llvm/llvm-project/commit/af757f89806e03229837425b77839498db470ef8 DIFF: https://github.com/llvm/llvm-project/commit/af757f89806e03229837425b77839498db470ef8.diff

[clang] 4638ae3 - [OpenMP] Use the new OpenMP device static library when doing LTO

2022-05-13 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-13T14:38:55-04:00 New Revision: 4638ae3a8575d988df856116102c1ccd15583c00 URL: https://github.com/llvm/llvm-project/commit/4638ae3a8575d988df856116102c1ccd15583c00 DIFF: https://github.com/llvm/llvm-project/commit/4638ae3a8575d988df856116102c1ccd15583c00.diff

[clang] 7dc23ab - [CUDA] Add a flag to manually specify the target feature to use with CUDA

2022-05-13 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-13T16:30:58-04:00 New Revision: 7dc23abbd3b298016cc6ae49a124f414e76903b6 URL: https://github.com/llvm/llvm-project/commit/7dc23abbd3b298016cc6ae49a124f414e76903b6 DIFF: https://github.com/llvm/llvm-project/commit/7dc23abbd3b298016cc6ae49a124f414e76903b6.diff

[clang] 4205f4a - [Cuda] Add the features using the last argument

2022-05-13 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-13T18:05:02-04:00 New Revision: 4205f4aba4aff74fa7681c3f991ef5fdaed48d35 URL: https://github.com/llvm/llvm-project/commit/4205f4aba4aff74fa7681c3f991ef5fdaed48d35 DIFF: https://github.com/llvm/llvm-project/commit/4205f4aba4aff74fa7681c3f991ef5fdaed48d35.diff

[clang] b653b40 - [OpenMP] Don't build the offloading driver without a source input

2022-05-16 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-16T18:19:02-04:00 New Revision: b653b409ff44b09ade04bb6e579f5f9790424611 URL: https://github.com/llvm/llvm-project/commit/b653b409ff44b09ade04bb6e579f5f9790424611 DIFF: https://github.com/llvm/llvm-project/commit/b653b409ff44b09ade04bb6e579f5f9790424611.diff

[clang] f371019 - [OpenMP] Add `-Xoffload-linker` to forward input to the device linker

2022-05-24 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-24T09:11:02-04:00 New Revision: f37101983fc9fabbbde4b10f613ed248a424d71a URL: https://github.com/llvm/llvm-project/commit/f37101983fc9fabbbde4b10f613ed248a424d71a DIFF: https://github.com/llvm/llvm-project/commit/f37101983fc9fabbbde4b10f613ed248a424d71a.diff

[clang] 3723868 - [OpenMP] Fix file arguments for embedding bitcode in the linker wrapper

2022-05-24 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2022-05-24T13:45:52-04:00 New Revision: 3723868d9e07de5d4a7468a4c2c74fc8517afc14 URL: https://github.com/llvm/llvm-project/commit/3723868d9e07de5d4a7468a4c2c74fc8517afc14 DIFF: https://github.com/llvm/llvm-project/commit/3723868d9e07de5d4a7468a4c2c74fc8517afc14.diff

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-14 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/85222 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-14 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 requested changes to this pull request. Thanks for looking at this. When the user compiles with `-march=xyz` it introduces a lot of subtarget specific metadata intro the output IR. The purpose of the original patch was to keep `-target-cpu` unset in cases where `-mar

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-14 Thread Joseph Huber via cfe-commits
@@ -85,6 +90,6 @@ // MISSING: error: Must pass in an explicit nvptx64 gpu architecture to 'nvlink' // RUN: %clang -target nvptx64-nvidia-cuda -flto -c %s -### 2>&1 \ -// RUN: | FileCheck -check-prefix=GENERIC %s +// RUN: | FileCheck -check-prefix=COMPILE %s

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-14 Thread Joseph Huber via cfe-commits
jhuber6 wrote: FWIW I think you can kind of do this with `-march=sm_52 -march=` to just set it to empty. https://github.com/llvm/llvm-project/pull/85222 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/lis

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-15 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 approved this pull request. LG, thanks for the patch. https://github.com/llvm/llvm-project/pull/85222 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-15 Thread Joseph Huber via cfe-commits
@@ -750,10 +750,11 @@ NVPTXToolChain::TranslateArgs(const llvm::opt::DerivedArgList &Args, if (!llvm::is_contained(*DAL, A)) DAL->append(A); - // TODO: We should accept 'generic' as a valid architecture. if (!DAL->hasArg(options::OPT_march_EQ) && OffloadKind !=

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-15 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/85222 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-15 Thread Joseph Huber via cfe-commits
jhuber6 wrote: Thanks, I'll merge it once it passes CI. https://github.com/llvm/llvm-project/pull/85222 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [openmp] [docs] Prefer --gcc-install-dir= to deprecated GCC_INSTALL_PREFIX (PR #85458)

2024-03-15 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 approved this pull request. https://github.com/llvm/llvm-project/pull/85458 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NVPTX] Add `-march=general` option to mirror default configuration (PR #85222)

2024-03-15 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/85222 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 280c7a9 - [Clang] Fix preprocessing device only in HIP mode

2024-03-18 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2024-03-18T12:12:17-05:00 New Revision: 280c7a9526a9ae7f959117c9cec94f8c8887f15c URL: https://github.com/llvm/llvm-project/commit/280c7a9526a9ae7f959117c9cec94f8c8887f15c DIFF: https://github.com/llvm/llvm-project/commit/280c7a9526a9ae7f959117c9cec94f8c8887f15c.diff

[clang] [HIP] do not link runtime for -r (PR #85675)

2024-03-18 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 approved this pull request. https://github.com/llvm/llvm-project/pull/85675 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][CodeGen] Omit pre-opt link when post-opt is link requested (PR #85672)

2024-03-19 Thread Joseph Huber via cfe-commits
jhuber6 wrote: This means that there won't be any optimizations on these definitions, correct? Likely not ideal to have no inlining even if it saves compilation time. This "post-op" linking is only required because we emit calls to functions that don't exist in the module. The way we solved t

[clang] [HIP] Correctly omit bundling with the new driver (PR #85842)

2024-03-19 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/85842 Summary: The HIP phases do not emit the offload bundler output when we do not invoke the final linker phase in device only mode. Check this propery. >From 5cb265bfa23d7d697499544bddaa20d314eb1efc Mon Sep 17 00:0

[clang] [HIP] Correctly omit bundling with the new driver (PR #85842)

2024-03-19 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/85842 >From d920ec18c3133dba59149c756a91f7d459040435 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Tue, 19 Mar 2024 13:29:35 -0500 Subject: [PATCH] [HIP] Correctly omit bundling with the new driver Summary: The HI

[clang] [HIP] Correctly omit bundling with the new driver (PR #85842)

2024-03-20 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/85842 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [HIP][NFC] Refactor managed var codegen (PR #85976)

2024-03-20 Thread Joseph Huber via cfe-commits
@@ -1160,9 +1152,8 @@ void CGNVCUDARuntime::createOffloadingEntries() { // Returns module constructor to be added. llvm::Function *CGNVCUDARuntime::finalizeModule() { + transformManagedVars(); jhuber6 wrote: I'm guessing we also don't have a test for `__mana

[clang] [Clang] Make '-frtlib-add-rpath' include the standard library directory (PR #86217)

2024-03-21 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/86217 Summary: The original intention of the `openmp-add-rpath` option was to add the rpath to the language runtime directory. However, the current implementation only adds it to the compiler's resource directory. This

[clang] [Clang] Make '-frtlib-add-rpath' include the standard library directory (PR #86217)

2024-03-21 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/86217 >From 722b8b454d652b3d52e20b9bacff58e096cc7feb Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Thu, 21 Mar 2024 18:25:35 -0500 Subject: [PATCH] [Clang] Make '-frtlib-add-rpath' include the standard library dir

[clang] [Clang] Make '-frtlib-add-rpath' include the standard library directory (PR #86217)

2024-03-22 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/86217 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [HIP][NFC] Refactor managed var codegen (PR #85976)

2024-03-22 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 approved this pull request. https://github.com/llvm/llvm-project/pull/85976 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] NFC Silence compiler warning spam (PR #86532)

2024-03-25 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 approved this pull request. https://github.com/llvm/llvm-project/pull/86532 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [CMake] Change GCC_INSTALL_PREFIX from warning to fatal error (PR #85891)

2024-03-25 Thread Joseph Huber via cfe-commits
jhuber6 wrote: What's the suggested way to handle this in a standard build? The documents state to use `-DCMAKE_CXX_FLAGS=--gcc-isntall-dir=` but that doesn't work if you build LLVM with `gcc` initially. You'd need to somehow only pass that flag to the invocations that use `clang`. We also hav

[clang] [CMake] Change GCC_INSTALL_PREFIX from warning to fatal error (PR #85891)

2024-03-25 Thread Joseph Huber via cfe-commits
jhuber6 wrote: @petrhosek Is there a way to pass flags only to the runtimes portion of the build within the normal workflow? I know we have `-DRUNTIMES_x86_64-unknown-linux-gnu_CMAKE_CXX_COMPILE_FLAGS=` that might work, but I don't think this is respected if we're using the `default` target.

[clang] [CMake] Change GCC_INSTALL_PREFIX from warning to fatal error (PR #85891)

2024-03-26 Thread Joseph Huber via cfe-commits
jhuber6 wrote: > `-DRUNTIMES_CMAKE_ARGS="-DCMAKE_C_FLAGS=--gcc-install-dir=$GCC_ROOT;-DCMAKE_CXX_FLAGS=--gcc-install-dir=$GCC_ROOT"` > worked for me Great, we should probably document this somewhere. https://github.com/llvm/llvm-project/pull/85891 __

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/86830 Summary: The 'new driver' sets up the lifetime of a registered liftime using global constructors and destructors. Currently, this is put at priority 1 which isn't strictly conformant as it will conflict with syste

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
@@ -186,57 +186,60 @@ GlobalVariable *createBinDesc(Module &M, ArrayRef> Bufs, ".omp_offloading.descriptor" + Suffix); } -void createRegisterFunction(Module &M, GlobalVariable *BinDesc, -StringRef Suffix) { +Function *cr

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
jhuber6 wrote: So, looking into `libomptarget` when this is applied is doing something weird. `atexit` is functionally a stack, so that means the first in is the last out. However, it seems that the static global constructor created inside of the CUDA plugin is being unregistered *after* this

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/86830 >From 875ed36029851a2423c97b28bd5bf34975efb016 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Wed, 27 Mar 2024 11:43:37 -0500 Subject: [PATCH] [Offload] Change unregister library to use `atexit` instead of de

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
jhuber6 wrote: Fixed, I neglected the fact that OpenMP registers more destructors inside of the constructor itself. Passes all the tests now. https://github.com/llvm/llvm-project/pull/86830 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
@@ -186,57 +186,62 @@ GlobalVariable *createBinDesc(Module &M, ArrayRef> Bufs, ".omp_offloading.descriptor" + Suffix); } -void createRegisterFunction(Module &M, GlobalVariable *BinDesc, -StringRef Suffix) { +Function *cr

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
@@ -186,57 +186,62 @@ GlobalVariable *createBinDesc(Module &M, ArrayRef> Bufs, ".omp_offloading.descriptor" + Suffix); } -void createRegisterFunction(Module &M, GlobalVariable *BinDesc, -StringRef Suffix) { +Function *cr

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/86830 >From 875ed36029851a2423c97b28bd5bf34975efb016 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Wed, 27 Mar 2024 11:43:37 -0500 Subject: [PATCH 1/2] [Offload] Change unregister library to use `atexit` instead o

[clang] [llvm] [Offload] Change unregister library to use `atexit` instead of destructor (PR #86830)

2024-03-27 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/86830 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [openmp] [Libomptarget] Statically link all plugin runtimes (PR #87009)

2024-03-28 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/87009 This patch overhauls the `libomptarget` and plugin interface. Currently, we define a C API and compile each plugin as a separate shared library. Then, `libomptarget` loads these API functions and forwards its inte

[clang] [llvm] [openmp] [Libomptarget] Statically link all plugin runtimes (PR #87009)

2024-03-28 Thread Joseph Huber via cfe-commits
jhuber6 wrote: This contains three other dependent commits until they land. For now just browse the most recent commit for the relevant changes. https://github.com/llvm/llvm-project/pull/87009 ___ cfe-commits mailing list cfe-commits@lists.llvm.org ht

[clang] [llvm] [openmp] [Libomptarget] Statically link all plugin runtimes (PR #87009)

2024-03-28 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/87009 >From fe0b6725e9aa89cc378ffd97f19354d59ab4fa93 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Wed, 27 Mar 2024 15:27:16 -0500 Subject: [PATCH 1/4] [Libomptarget] Rename `libomptarget.rtl.x86_64` to `libomptar

[clang] [llvm] [openmp] [Libomptarget] Statically link all plugin runtimes (PR #87009)

2024-03-29 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/87009 >From bb5f330cc3d5e0758825b25e3b8209fb7af6be79 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Wed, 27 Mar 2024 15:27:16 -0500 Subject: [PATCH 1/3] [Libomptarget] Rename `libomptarget.rtl.x86_64` to `libomptar

[clang] [OpenMP] Use loaded offloading toolchains to add libraries (PR #87108)

2024-03-29 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/87108 Summary: We want to pass these GPU libraries by default if a certain offloading toolchain is loaded for OpenMP. Previously I parsed this from the arguments because it's only available in the compilation. This does

[clang] [OpenMP] Use loaded offloading toolchains to add libraries (PR #87108)

2024-03-29 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/87108 >From 4415c4d4b9c72e963d4c483440598933d59e19cc Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Fri, 29 Mar 2024 15:25:00 -0500 Subject: [PATCH] [OpenMP] Use loaded offloading toolchains to add libraries Summar

[clang] [llvm] [openmp] [Libomptarget] Statically link all plugin runtimes (PR #87009)

2024-03-29 Thread Joseph Huber via cfe-commits
jhuber6 wrote: > Some OMPT variables with the same name used to be present in both > libomptarget and the common plugin interface. These should probably be > re-worked in the new scheme of static linking? e.g. > llvm::omp::target::ompt::Initialized Unsure, there was an issue where each plugin

[clang] [llvm] [openmp] [Libomptarget] Statically link all plugin runtimes (PR #87009)

2024-03-29 Thread Joseph Huber via cfe-commits
@@ -3043,10 +3043,6 @@ struct AMDGPUPluginTy final : public GenericPluginTy { // HSA functions from now on, e.g., hsa_shut_down. Initialized = true; -#ifdef OMPT_SUPPORT -ompt::connectLibrary(); jhuber6 wrote: Ah, well that can be a follow-up patc

[clang] [llvm] [openmp] [Libomptarget] Statically link all plugin runtimes (PR #87009)

2024-03-29 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/87009 >From d9e2231c179e3ae321883203ad4799971a982110 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Wed, 27 Mar 2024 15:27:16 -0500 Subject: [PATCH 1/3] [Libomptarget] Rename `libomptarget.rtl.x86_64` to `libomptar

[clang] [OpenMP] Use loaded offloading toolchains to add libraries (PR #87108)

2024-04-01 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/87108 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][NFC] Clean up unused binary files for offloading tests (PR #87351)

2024-04-02 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/87351 Summary: We have a few binary files used for offloading tests that are either entirely unusable or easily replaceable. >From 23f68e714aab94c7600a3af9363e9ba678ba2d05 Mon Sep 17 00:00:00 2001 From: Joseph Huber

[clang] [Clang][NFC] Clean up unused binary files for offloading tests (PR #87351)

2024-04-02 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/87351 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][NFC] Clean up unused binary files for offloading tests (PR #87351)

2024-04-02 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/87351 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [LinkerWrapper] Support relocatable linking for offloading (PR #80066)

2024-02-07 Thread Joseph Huber via cfe-commits
jhuber6 wrote: ping https://github.com/llvm/llvm-project/pull/80066 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [LinkerWrapper] Support relocatable linking for offloading (PR #80066)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/80066 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 approved this pull request. https://github.com/llvm/llvm-project/pull/81015 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
jhuber6 wrote: I'll merge it for you once the CI builder finishes without issue, thanks. https://github.com/llvm/llvm-project/pull/81015 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -21124,6 +21124,8 @@ Sema::ActOnOpenMPDependClause(const OMPDependClause::DependDataTy &Data, ExprTy = ATy->getElementType(); else ExprTy = BaseType->getPointeeType(); +if (ExprTy.isNull()) + continue; ---

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/81015 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/81015 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
jhuber6 wrote: > The build is failing because of a formatting error which I don't think is > related to the changes that I made. Any thoughts as to why it is failing? That's unrelated, I'll fix it. https://github.com/llvm/llvm-project/pull/81015 ___

[clang] 347ab99 - [Clang][Docs] Fix trailing whitespace warnings

2024-02-07 Thread Joseph Huber via cfe-commits
Author: Joseph Huber Date: 2024-02-07T13:03:31-06:00 New Revision: 347ab99a5c6d096beb7378794c6255dca2a866e6 URL: https://github.com/llvm/llvm-project/commit/347ab99a5c6d096beb7378794c6255dca2a866e6 DIFF: https://github.com/llvm/llvm-project/commit/347ab99a5c6d096beb7378794c6255dca2a866e6.diff

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/81015 >From c8ada809964eac64f6cb0c103593748b86932163 Mon Sep 17 00:00:00 2001 From: Sh0g0-1758 Date: Wed, 7 Feb 2024 21:11:58 +0530 Subject: [PATCH 1/5] Add a Null Check --- clang/lib/Sema/SemaOpenMP.cpp | 2 ++ 1 fi

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/81015 >From ed6b669d7d427f2cb4d87f9d4a8063e1b919fc03 Mon Sep 17 00:00:00 2001 From: Sh0g0-1758 Date: Wed, 7 Feb 2024 21:11:58 +0530 Subject: [PATCH 1/5] Add a Null Check --- clang/lib/Sema/SemaOpenMP.cpp | 2 ++ 1 fi

[clang] [Clang][OpenMP] Fix `!isNull() && "Cannot retrieve a NULL type pointer"' fail. (PR #81015)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/81015 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NVPTX][Draft] Make `__nvvm_nanosleep` a no-op if unsupported (PR #81033)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/81033 Summary; The LLVM C library currently uses `nanosleep` in the RPC interface and for the C library `nanosleep` function. We build the LLVM C library for every single NVPTX architecture individually currently, which

[clang] [llvm] [NVPTX][Draft] Make `__nvvm_nanosleep` a no-op if unsupported (PR #81033)

2024-02-07 Thread Joseph Huber via cfe-commits
jhuber6 wrote: > > This patch, which simply makes it legal on all architectures but do nothing > > is it's older than sm_70. > > I do not think this is the right thing to do. "do nothing" is not what one > would expect from a `nanosleep`. Thanks, I made this a draft because I figured it wasn'

[clang] [llvm] [NVPTX][Draft] Make `__nvvm_nanosleep` a no-op if unsupported (PR #81033)

2024-02-07 Thread Joseph Huber via cfe-commits
jhuber6 wrote: Okay, `__nvvm_reflect` doesn't work fully here because the `nanosleep` builtin I added requires `sm_70` at the clang level. Either means I'd need to go back to inline assembly or remove that requirement at least from clang so it's a backend failure. https://github.com/llvm/llvm

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/81058 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 commented: Thanks for working on this. A few quick nits, overall looks like lots of straightforward testing with a beefy new pass. https://github.com/llvm/llvm-project/pull/81058 ___ cfe-commits mailing list cfe-commits@list

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,716 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,716 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,716 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,716 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,716 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/81058 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 commented: Some more comments https://github.com/llvm/llvm-project/pull/81058 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,698 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,698 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,698 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,698 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,698 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,698 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,698 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [transforms] Inline simple variadic functions (PR #81058)

2024-02-07 Thread Joseph Huber via cfe-commits
@@ -0,0 +1,698 @@ +//===-- ExpandVariadicsPass.cpp *- C++ -*-=// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache

[clang] [llvm] [LinkerWrapper] Allow 'all' as a generic bundled architecture (PR #81193)

2024-02-08 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/81193 Summary: Currently, the linker wrapper sourts input files into different link jobs according to their architectures. Here we assume each architecture is a unique and incompatible link job unless they are specifica

[clang] [llvm] [LinkerWrapper] Allow 'all' as a generic bundled architecture (PR #81193)

2024-02-08 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 closed https://github.com/llvm/llvm-project/pull/81193 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NVPTX] Add clang builtin for `__nvvm_reflect` intrinsic (PR #81277)

2024-02-09 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/81277 Summary: Some recent support made usage of `__nvvm_reflect` more consistent. We should expose it as an intrinsic rather than forcing users to externally define the function. >From 7b97388a5f251684cf4ae69c3b0cae0

[clang] [llvm] [NVPTX] Add clang builtin for `__nvvm_reflect` intrinsic (PR #81277)

2024-02-09 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/81277 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NVPTX] Add clang builtin for `__nvvm_reflect` intrinsic (PR #81277)

2024-02-09 Thread Joseph Huber via cfe-commits
@@ -159,6 +159,7 @@ BUILTIN(__nvvm_read_ptx_sreg_pm3, "i", "n") BUILTIN(__nvvm_prmt, "UiUiUiUi", "") BUILTIN(__nvvm_exit, "v", "r") +BUILTIN(__nvvm_reflect, "UicC*", "r") jhuber6 wrote: It's in the `NVPTXUsage.rst`, and https://github.com/llvm/llvm-project/p

[clang] [llvm] [NVPTX] Add clang builtin for `__nvvm_reflect` intrinsic (PR #81277)

2024-02-09 Thread Joseph Huber via cfe-commits
@@ -1624,8 +1624,9 @@ def int_nvvm_compiler_error : def int_nvvm_compiler_warn : Intrinsic<[], [llvm_anyptr_ty], [], "llvm.nvvm.compiler.warn">; -def int_nvvm_reflect : - Intrinsic<[llvm_i32_ty], [llvm_anyptr_ty], [IntrNoMem], "llvm.nvvm.reflect">; +def int_nvvm_reflect :

<    1   2   3   4   5   6   7   8   9   10   >