[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Shilei Tian via cfe-commits
shiltian wrote: Worth a bullet point in release note, both clang and openmp/offload. https://github.com/llvm/llvm-project/pull/119091 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread via cfe-commits
github-actions[bot] wrote: :warning: C/C++ code formatter, clang-format found issues in your code. :warning: You can test this locally with the following command: ``bash git-clang-format --diff 3f458cd9abbf99cddcded076b5e7b4049607b7b4 0df55740f2010c531ee4f96cc0f34aa1b8cea749 --e

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Joseph Huber via cfe-commits
jhuber6 wrote: > I like this method, but just out of curiosity, did we use anything in AMDGPU > implementation that has target dependent lowering in the front end? If not, > this is totally fine I'd say. We used to use the `__AMDGCN_WAVEFRONT_SIZE` but that was removed for unrelated reasons.

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-offload @llvm/pr-subscribers-clang Author: Joseph Huber (jhuber6) Changes Summary: We previously built this for every single architecture to deal with incompatibility. This patch updates it to use the 'generic' IR that `libc` and other projects use. Who

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/119091 >From 4c710e49eea97e542b97e0b5e78b7915acd32383 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Sat, 7 Dec 2024 13:47:23 -0600 Subject: [PATCH 1/2] [OpenMP] Use generic IR for the OpenMP DeviceRTL Summary: We

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Shilei Tian via cfe-commits
shiltian wrote: > > I like this method, but just out of curiosity, did we use anything in > > AMDGPU implementation that has target dependent lowering in the front end? > > If not, this is totally fine I'd say. > > We used to use the `__AMDGCN_WAVEFRONT_SIZE` but that was removed for > unrela

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Joseph Huber via cfe-commits
@@ -74,49 +72,53 @@ static int32_t nvptx_parallel_reduce_nowait(void *reduce_data, uint32_t NumThreads = omp_get_num_threads(); if (NumThreads == 1) return 1; -/* - * This reduce function handles reduction within a team. It handles - * parallel regions in b

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Shilei Tian via cfe-commits
@@ -74,49 +72,53 @@ static int32_t nvptx_parallel_reduce_nowait(void *reduce_data, uint32_t NumThreads = omp_get_num_threads(); if (NumThreads == 1) return 1; -/* - * This reduce function handles reduction within a team. It handles - * parallel regions in b

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Shilei Tian via cfe-commits
https://github.com/shiltian commented: I like this method, but just out of curiosity, did we use anything in AMDGPU implementation that has target dependent lowering in the front end? If not, this is totally fine I'd say. https://github.com/llvm/llvm-project/pull/119091 ___

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Shilei Tian via cfe-commits
@@ -141,20 +109,21 @@ set(bc_flags -c -foffload-lto -std=c++17 -fvisibility=hidden # first create an object target add_library(omptarget.devicertl.all_objs OBJECT IMPORTED) -function(compileDeviceRTLLibrary target_cpu target_name target_triple) +function(compileDeviceRTLLibra

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/119091 >From 4c710e49eea97e542b97e0b5e78b7915acd32383 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Sat, 7 Dec 2024 13:47:23 -0600 Subject: [PATCH 1/2] [OpenMP] Use generic IR for the OpenMP DeviceRTL Summary: We

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/119091 >From 4c710e49eea97e542b97e0b5e78b7915acd32383 Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Sat, 7 Dec 2024 13:47:23 -0600 Subject: [PATCH] [OpenMP] Use generic IR for the OpenMP DeviceRTL Summary: We prev

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Joseph Huber via cfe-commits
@@ -141,20 +109,21 @@ set(bc_flags -c -foffload-lto -std=c++17 -fvisibility=hidden # first create an object target add_library(omptarget.devicertl.all_objs OBJECT IMPORTED) -function(compileDeviceRTLLibrary target_cpu target_name target_triple) +function(compileDeviceRTLLibra

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Shilei Tian via cfe-commits
@@ -141,20 +109,21 @@ set(bc_flags -c -foffload-lto -std=c++17 -fvisibility=hidden # first create an object target add_library(omptarget.devicertl.all_objs OBJECT IMPORTED) -function(compileDeviceRTLLibrary target_cpu target_name target_triple) +function(compileDeviceRTLLibra

[clang] [llvm] [OpenMP] Use generic IR for the OpenMP DeviceRTL (PR #119091)

2024-12-07 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/119091 Summary: We previously built this for every single architecture to deal with incompatibility. This patch updates it to use the 'generic' IR that `libc` and other projects use. Who knows if this will have any side