tree 59e70f030d019bb1f761fdc4a6140165e7f3a0f3
parent e15545cad8297ec7555f26e5ae74a9f0511203e7
author Kareem Ergawy <kareem.ergawy@amd.com> 1741322679 +0100
committer GitHub <noreply@github.com> 1741322679 +0100
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJnynm3CRC1aQ7uu5UhlAAAgOIQAI9qku+zrTyPurIaYFO/yc+W
 /6p85qi7DNefl+OR+dMx0p1xir3SsURYKqmLHa7qyVhKtKa30nbEbIpX7fq2LFYX
 R1im4Qr6mA7aFOoXhzJE8wIK5reBZ5WCF7FXunrbBLNXTP2kzgKEQi1FvtcXZt5I
 X8Yqc38D79qHufbUbCV+RSAiCIedeyzaZnjM8YWmdXbmP20wyyga6j5Ea5VNYo6I
 5kV+Nxe2FGNPR6YoD4Uofb1EIMu1ULZNjhIRDuRfMXcyxbbHWw2OpXzwzSnYaImc
 iZoBNRmZJgdM2z8NkCJjUj4Ftx66pDY1eKTv5NIiJczy2HiNN2VnosEsQHEhk0/Z
 hlwuQNOGjQoBwfOQSbYv5ZbHlJyNY8R918IkhEucn/vMlr3+2vdAJKhypISqvjEO
 MjjWJ6/3ZYn33tNI6NPeiyvLysSOe8/CrSJOrS8W6Mtc/N1z2vB/DhBLgR9K20wg
 51Nh3QG9Ud8AXWWreCd89MgvGP4SGE/HSoZjZGpUgwhaDSyKCRtVKaPzaSfEF31D
 Od1uT450HiBTyXkpiRWF1w8IdBgK9rY7GRG9+8r2wKAbdBkC/ykMX2KudrWfznRb
 yal9l5AjFO+slQgglNm6GZT+ww0cNYoghwmPDrINk1XVM8+S4Riw1sm1Eo242ANB
 wiFZz3pC9Q5LSbOEpXrl
 =EAQ6
 -----END PGP SIGNATURE-----
 

[flang][OpenMP] Handle pre-detemined `lastprivate` for `simd` (#129507)

This PR tries to fix `lastprivate` update issues in composite
constructs. In particular, pre-determined `lastprivate` symbols are
attached to the wrong leaf of the composite construct (the outermost
one). When using delayed privatization (should be the default mode in
the future), this results in trying to update the `lastprivate` symbol
in the wrong construct (outside the `omp.loop_nest` op).

For example, given the following input:
```fortran
!$omp target teams distribute parallel do simd collapse(2) private(y_max)
  do i=x_min,x_max
    do j=y_min,y_max
    enddo
  enddo
```

Without the fixes introduced in this PR, the `DataSharingProcessor`
tries to generate the `lastprivate` update ops in the `parallel` op
since this is the op for which the DSP instance is created.

The fix consists of 2 main parts:
1. Instead of creating a single DSP instance, one instance is created
for the leaf constructs that might need privatization (whether for
explicit, implicit, or pre-determined symbols).
2. When generating the `lastprivate` comparison ops, we don't directly
use the SSA values of the UBs and steps. Instead, we regenerated these
SSA values from the original loop bounds' expressions. We have to do
this to avoid using `host_eval` values in the `lastprivate` comparison
logic which is illegal.