offtarget 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (886) hide show
  1. offload/__init__.py +10 -0
  2. offload/__main__.py +5 -0
  3. offload/_bundle.py +74 -0
  4. offload/_root/catalog/acc/claims.yaml +197 -0
  5. offload/_root/catalog/acc/clauses.yaml +391 -0
  6. offload/_root/catalog/acc/no_oracle.yaml +89 -0
  7. offload/_root/catalog/acc/out_of_scope.yaml +17 -0
  8. offload/_root/catalog/acc/rules.yaml +433 -0
  9. offload/_root/catalog/acc/semantic_atoms.yaml +27 -0
  10. offload/_root/catalog/acc/skeleton.yaml +1567 -0
  11. offload/_root/catalog/acc/spec_overrides.yaml +72 -0
  12. offload/_root/catalog/later_forms.yaml +76 -0
  13. offload/_root/catalog/machines.yaml +218 -0
  14. offload/_root/catalog/omp/claims.yaml +2047 -0
  15. offload/_root/catalog/omp/clauses.yaml +914 -0
  16. offload/_root/catalog/omp/derivations.yaml +177 -0
  17. offload/_root/catalog/omp/memory_modes.yaml +40 -0
  18. offload/_root/catalog/omp/no_oracle.yaml +373 -0
  19. offload/_root/catalog/omp/omp50_delta.yaml +377 -0
  20. offload/_root/catalog/omp/out_of_scope.yaml +64 -0
  21. offload/_root/catalog/omp/port_equivalence.yaml +352 -0
  22. offload/_root/catalog/omp/rules.yaml +3131 -0
  23. offload/_root/catalog/omp/rules_coverage.yaml +9939 -0
  24. offload/_root/catalog/omp/semantic_atoms.yaml +34 -0
  25. offload/_root/catalog/omp/skeleton.yaml +9181 -0
  26. offload/_root/catalog/omp/spec_overrides.yaml +932 -0
  27. offload/_root/catalog/toolchains.yaml +472 -0
  28. offload/_root/catalog/vendor_claims_generic.yaml +40925 -0
  29. offload/_root/data/canuse/b.json +1 -0
  30. offload/_root/data/canuse/c.json +1 -0
  31. offload/_root/data/canuse/columns.json +1 -0
  32. offload/_root/data/canuse/d.json +1 -0
  33. offload/_root/data/canuse/f.json +1 -0
  34. offload/_root/data/canuse/index.json +1 -0
  35. offload/_root/data/canuse/p.json +1 -0
  36. offload/_root/data/compilers/afar.json +1 -0
  37. offload/_root/data/compilers/cce19.json +1 -0
  38. offload/_root/data/compilers/cce20.json +1 -0
  39. offload/_root/data/compilers/cce21.json +1 -0
  40. offload/_root/data/compilers/cce21_4.json +1 -0
  41. offload/_root/data/compilers/gcc.json +1 -0
  42. offload/_root/data/compilers/gcc_sm80.json +1 -0
  43. offload/_root/data/compilers/nvhpc.json +1 -0
  44. offload/_root/data/compilers/nvhpc269.json +1 -0
  45. offload/_root/data/findings/AUTHORING.md +107 -0
  46. offload/_root/data/findings/README.md +33 -0
  47. offload/_root/data/findings/afar-c-error-directive-in-target-link.c +37 -0
  48. offload/_root/data/findings/afar-c-lastprivate-distribute-parallel-for-small-type.c +56 -0
  49. offload/_root/data/findings/afar-c-teams-distribute-reduction-first-team.c +59 -0
  50. offload/_root/data/findings/afar-c-update-iterator-copy-mode.c +45 -0
  51. offload/_root/data/findings/afar-c-xnack1-target-is-present.c +31 -0
  52. offload/_root/data/findings/afar-cce19-character-defaultmap.f90 +27 -0
  53. offload/_root/data/findings/afar-cce19-task-in-target-ice.f90 +23 -0
  54. offload/_root/data/findings/afar-clang-requires-device-safesync-hang.c +24 -0
  55. offload/_root/data/findings/afar-flang-firstprivate-map-two-targets.f90 +34 -0
  56. offload/_root/data/findings/afar-flang-loop-bind-teams-reduction.f90 +27 -0
  57. offload/_root/data/findings/afar-flang-task-reduction-max.f90 +31 -0
  58. offload/_root/data/findings/afar-flang-thread-limit-target-parallel-do.f90 +22 -0
  59. offload/_root/data/findings/afar-linear-ref-omp50.f90 +29 -0
  60. offload/_root/data/findings/afar-loop-bind-thread-in-teams.f90 +44 -0
  61. offload/_root/data/findings/afar-nontemporal-assumed-shape-ice.f90 +38 -0
  62. offload/_root/data/findings/afar-udr-derived-type-link.f90 +41 -0
  63. offload/_root/data/findings/afar-xnack1-atomic-min-nested-parallel.f90 +53 -0
  64. offload/_root/data/findings/afar-xnack1-present-not-enforced.f90 +36 -0
  65. offload/_root/data/findings/afar-xnack1-target-is-present.f90 +47 -0
  66. offload/_root/data/findings/apps/afar-cce-teams-private-array-nested-parallel-wrong.f90 +100 -0
  67. offload/_root/data/findings/apps/cce20-device-link-infer-address-spaces-crash.f90 +159 -0
  68. offload/_root/data/findings/apps/cce21-device-link-agpr-copy-mfma-assert.f90 +343 -0
  69. offload/_root/data/findings/apps/cce21-private-array-loaded-subscript-wrong.f90 +113 -0
  70. offload/_root/data/findings/apps/controls/bubble-simple-rddot.f90 +284 -0
  71. offload/_root/data/findings/apps/controls/bubble-two-substeps.f90 +287 -0
  72. offload/_root/data/findings/apps/controls/cbc-inline.f90 +97 -0
  73. offload/_root/data/findings/apps/controls/cbc-integers.f90 +91 -0
  74. offload/_root/data/findings/apps/controls/cbc-only-density.f90 +97 -0
  75. offload/_root/data/findings/apps/controls/cbc-only-velocity.f90 +97 -0
  76. offload/_root/data/findings/apps/controls/gcc-acc-c-tile-control.c +26 -0
  77. offload/_root/data/findings/apps/controls/gcc-acc-tile-control.f90 +29 -0
  78. offload/_root/data/findings/apps/controls/private-array-subscript-probes.f90 +45 -0
  79. offload/_root/data/findings/apps/controls/teams-private-array-read-par.f90 +31 -0
  80. offload/_root/data/findings/apps/controls/teams-private-array-seq.f90 +30 -0
  81. offload/_root/data/findings/apps/controls/teams-private-array-shared.f90 +34 -0
  82. offload/_root/data/findings/apps/controls/teams-private-array-split.f90 +36 -0
  83. offload/_root/data/findings/apps/controls/teams-private-array-write-par.f90 +31 -0
  84. offload/_root/data/findings/apps/gcc-acc-c-tile-partial-tiles-wrong.c +60 -0
  85. offload/_root/data/findings/apps/gcc-acc-tile-partial-tiles-wrong.f90 +64 -0
  86. offload/_root/data/findings/catalog/afar-c-complex-reduction-link.c +66 -0
  87. offload/_root/data/findings/catalog/afar-c-critical-hint-link.c +68 -0
  88. offload/_root/data/findings/catalog/afar-c-ordered-doacross-link.c +62 -0
  89. offload/_root/data/findings/catalog/afar-c-reduction-task-link.c +81 -0
  90. offload/_root/data/findings/catalog/afar-flang-absent-optional-target-crash.f90 +76 -0
  91. offload/_root/data/findings/catalog/afar-flang-critical-target-parallel-wrong.f90 +74 -0
  92. offload/_root/data/findings/catalog/afar-flang-dist-schedule-chunk.f90 +80 -0
  93. offload/_root/data/findings/catalog/afar-flang-linear-parallel-ice.f90 +68 -0
  94. offload/_root/data/findings/catalog/afar-flang-named-critical-link.f90 +67 -0
  95. offload/_root/data/findings/catalog/afar-flang-ordered-wrong.f90 +78 -0
  96. offload/_root/data/findings/catalog/afar-flang-reduction-minus-rejected.f90 +77 -0
  97. offload/_root/data/findings/catalog/afar-flang-reduction-task-ice.f90 +68 -0
  98. offload/_root/data/findings/catalog/afar-flang-sections-in-target-ice.f90 +67 -0
  99. offload/_root/data/findings/catalog/afar-flang-workdistribute-ice.f90 +71 -0
  100. offload/_root/data/findings/catalog/c-allocate-const-mem-firstprivate-wrong.c +79 -0
  101. offload/_root/data/findings/catalog/cce-acc-allocate-in-compute-crash.f90 +65 -0
  102. offload/_root/data/findings/catalog/cce-acc-character-dummy-routine-ice.f90 +81 -0
  103. offload/_root/data/findings/catalog/cce-acc-loop-seq-in-routine-wrong.f90 +81 -0
  104. offload/_root/data/findings/catalog/cce-acc-stop-in-compute-crash.f90 +62 -0
  105. offload/_root/data/findings/catalog/cce-allocators-stack-ice.f90 +81 -0
  106. offload/_root/data/findings/catalog/cce-atomic-default-mem-order-acquire-release-rejected.f90 +61 -0
  107. offload/_root/data/findings/catalog/cce-c-allocate-align-link.c +83 -0
  108. offload/_root/data/findings/catalog/cce-c-allocate-allocator-modifier-rejected.c +77 -0
  109. offload/_root/data/findings/catalog/cce-c-device-type-directive-name-ice.c +70 -0
  110. offload/_root/data/findings/catalog/cce-c-dist-schedule-chunk.c +81 -0
  111. offload/_root/data/findings/catalog/cce-c-f-pointer-device-link.f90 +70 -0
  112. offload/_root/data/findings/catalog/cce-c-lastprivate-parallel-in-seq-loop-wrong.c +64 -0
  113. offload/_root/data/findings/catalog/cce-c-long-double-ice.c +61 -0
  114. offload/_root/data/findings/catalog/cce-c-map-iterator-ice.c +92 -0
  115. offload/_root/data/findings/catalog/cce-c-motion-iterator-rejected.c +68 -0
  116. offload/_root/data/findings/catalog/cce-c-ordered-doacross-link.c +64 -0
  117. offload/_root/data/findings/catalog/cce-c-ordered-link.c +77 -0
  118. offload/_root/data/findings/catalog/cce-c-recursive-function-ice.c +62 -0
  119. offload/_root/data/findings/catalog/cce-c-reduction-inscan-ice.c +67 -0
  120. offload/_root/data/findings/catalog/cce-c-reduction-task-link.c +73 -0
  121. offload/_root/data/findings/catalog/cce-c-sections-in-target-wrong.c +70 -0
  122. offload/_root/data/findings/catalog/cce-c-single-masked-task-link.c +66 -0
  123. offload/_root/data/findings/catalog/cce-c-task-in-target-link.c +75 -0
  124. offload/_root/data/findings/catalog/cce-c-uses-allocators-traits-rejected.c +71 -0
  125. offload/_root/data/findings/catalog/cce-flang-allocate-const-mem-ice.f90 +67 -0
  126. offload/_root/data/findings/catalog/cce-flang-allocate-in-target-crash.f90 +68 -0
  127. offload/_root/data/findings/catalog/cce-flang-lastprivate-parallel-in-seq-loop-wrong.f90 +83 -0
  128. offload/_root/data/findings/catalog/cce-flang-stop-in-target-crash.f90 +64 -0
  129. offload/_root/data/findings/catalog/cce-iterator-link.f90 +67 -0
  130. offload/_root/data/findings/catalog/cce-linear-lastprivate-ice.f90 +69 -0
  131. offload/_root/data/findings/catalog/cce-nohost-link.f90 +90 -0
  132. offload/_root/data/findings/catalog/cce-reduction-inscan-ice.f90 +66 -0
  133. offload/_root/data/findings/catalog/cce-reduction-task-link.f90 +76 -0
  134. offload/_root/data/findings/catalog/cce19-reduction-task-addrspacecast-ice.f90 +77 -0
  135. offload/_root/data/findings/catalog/cce20-c-defaultmap-private-storage-rejected.c +85 -0
  136. offload/_root/data/findings/catalog/cce20-map-self-rejected.f90 +64 -0
  137. offload/_root/data/findings/catalog/cce21-c-declare-target-local-rejected.c +73 -0
  138. offload/_root/data/findings/catalog/cce21-c-target-loop-ice.c +77 -0
  139. offload/_root/data/findings/catalog/defaultmap-present-private-array-abort.f90 +73 -0
  140. offload/_root/data/findings/catalog/nvhpc-acc-associate-illegal-address.f90 +66 -0
  141. offload/_root/data/findings/catalog/nvhpc-c-function-pointer-kernel-missing.c +68 -0
  142. offload/_root/data/findings/catalog/nvhpc-c-long-double-kernel-missing.c +64 -0
  143. offload/_root/data/findings/catalog/nvhpc-c-static-local-kernel-missing.c +73 -0
  144. offload/_root/data/findings/catalog/nvhpc-c-vla-kernel-missing.c +63 -0
  145. offload/_root/data/findings/catalog/nvhpc-flang-type-bound-kernel-missing.f90 +86 -0
  146. offload/_root/data/findings/cce-acc-init-set-runtime-assert.f90 +35 -0
  147. offload/_root/data/findings/cce-acc-reduction-200-int8-scalars-wrong.f90 +1278 -0
  148. offload/_root/data/findings/cce-acc-routine-bind-module-ice.f90 +35 -0
  149. offload/_root/data/findings/cce-acc-self-condition-ignored.f90 +17 -0
  150. offload/_root/data/findings/cce-c-dist-schedule-segv.c +34 -0
  151. offload/_root/data/findings/cce-c-map-delete-refcount.c +47 -0
  152. offload/_root/data/findings/cce-c-map-present-assert.c +45 -0
  153. offload/_root/data/findings/cce-c-openmp45-device-link.c +34 -0
  154. offload/_root/data/findings/cce-c-parallel-for-in-target.c +73 -0
  155. offload/_root/data/findings/cce-defaultmap-tofrom-explicit-map.f90 +92 -0
  156. offload/_root/data/findings/cce-mapper-next-map-copy-back.f90 +48 -0
  157. offload/_root/data/findings/cce-trim-merge-output-one-character.f90 +40 -0
  158. offload/_root/data/findings/cce-uses-allocators-traits-omp50.f90 +28 -0
  159. offload/_root/data/findings/cce19-acc-if-false-link.f90 +17 -0
  160. offload/_root/data/findings/cce19-c-reduction-63-scalars-one-wrong.c +235 -0
  161. offload/_root/data/findings/cce19-target-parallel-guarded-loop.f90 +35 -0
  162. offload/_root/data/findings/cce19-target-parallel-single-ice.f90 +38 -0
  163. offload/_root/data/findings/cce21-alloc-2e32-sum-wrong.f90 +68 -0
  164. offload/_root/data/findings/cce21-defaultmap-aggregate-flag.f90 +52 -0
  165. offload/_root/data/findings/cce21-in-reduction-assumed-shape-write-lost.f90 +61 -0
  166. offload/_root/data/findings/cce21-in-reduction-taskwait-link.f90 +59 -0
  167. offload/_root/data/findings/cce21-linear-modifier-default-none.f90 +59 -0
  168. offload/_root/data/findings/clang-c-declare-target-to-omp52.c +50 -0
  169. offload/_root/data/findings/clang-c-linear-directive-name-hang.c +30 -0
  170. offload/_root/data/findings/clang-c-map-iterator-omp51.c +51 -0
  171. offload/_root/data/findings/clang-c-shared-declare-target-combined.c +58 -0
  172. offload/_root/data/findings/dataenv/cce-value-dummy-target-write-visible.f90 +74 -0
  173. offload/_root/data/findings/defaultmap-none-loop-variable.f90 +69 -0
  174. offload/_root/data/findings/fortran-loop-bind-thread-in-parallel.f90 +53 -0
  175. offload/_root/data/findings/fortran-schedule-static-in-target.f90 +55 -0
  176. offload/_root/data/findings/fresh/cce-common-block-name-in-map-rejected.f90 +47 -0
  177. offload/_root/data/findings/fresh/cce-if-stop-in-target-ice-one-condition.f90 +38 -0
  178. offload/_root/data/findings/fresh/cce-if-stop-in-target-ice.f90 +43 -0
  179. offload/_root/data/findings/fresh/cce-list-directed-print-in-target-copy-crash.f90 +40 -0
  180. offload/_root/data/findings/fresh/cce19-acc-automatic-array-copyout-copy-crash.f90 +56 -0
  181. offload/_root/data/findings/fresh/cce21-combined-if-runtime-expr-loop-skipped.f90 +57 -0
  182. offload/_root/data/findings/fresh/nvhpc-acc-gang-worker-collapse-nested-vector-reduction-lost.f90 +67 -0
  183. offload/_root/data/findings/fresh/nvhpc-teams-loop-module-allocatable-assign-fort2-crash.f90 +73 -0
  184. offload/_root/data/findings/fuzz/1131-afar.f90 +48 -0
  185. offload/_root/data/findings/fuzz/1391-cce20.f90 +40 -0
  186. offload/_root/data/findings/fuzz/14-cce20.f90 +36 -0
  187. offload/_root/data/findings/fuzz/1505-cce20.f90 +88 -0
  188. offload/_root/data/findings/fuzz/1540-afar.f90 +44 -0
  189. offload/_root/data/findings/fuzz/158-afar.f90 +63 -0
  190. offload/_root/data/findings/fuzz/16-cce20.f90 +39 -0
  191. offload/_root/data/findings/fuzz/1644-cce21.f90 +31 -0
  192. offload/_root/data/findings/fuzz/165-cce19.f90 +52 -0
  193. offload/_root/data/findings/fuzz/1749-cce20.f90 +34 -0
  194. offload/_root/data/findings/fuzz/1936-afar.f90 +61 -0
  195. offload/_root/data/findings/fuzz/1978-cce19.f90 +41 -0
  196. offload/_root/data/findings/fuzz/2014-cce19.f90 +46 -0
  197. offload/_root/data/findings/fuzz/2224-cce19.f90 +30 -0
  198. offload/_root/data/findings/fuzz/2334-cce19.f90 +57 -0
  199. offload/_root/data/findings/fuzz/536-cce19.f90 +38 -0
  200. offload/_root/data/findings/fuzz/591-cce19.f90 +54 -0
  201. offload/_root/data/findings/fuzz/650-afar.f90 +58 -0
  202. offload/_root/data/findings/fuzz/698-afar.f90 +68 -0
  203. offload/_root/data/findings/fuzz/700-afar.f90 +46 -0
  204. offload/_root/data/findings/fuzz/775-cce21.f90 +33 -0
  205. offload/_root/data/findings/fuzz/87-afar.f90 +47 -0
  206. offload/_root/data/findings/fuzz/916-afar.f90 +67 -0
  207. offload/_root/data/findings/fuzz/958-cce20.f90 +44 -0
  208. offload/_root/data/findings/fuzz/98-cce19.f90 +40 -0
  209. offload/_root/data/findings/fuzz/README.md +236 -0
  210. offload/_root/data/findings/fuzz/b1-121-afar.f90 +47 -0
  211. offload/_root/data/findings/fuzz/b1-183-afar.f90 +55 -0
  212. offload/_root/data/findings/fuzz/b1-22-cce20.f90 +38 -0
  213. offload/_root/data/findings/fuzz/b1-231-afar.f90 +56 -0
  214. offload/_root/data/findings/fuzz/b1-268-afar.f90 +46 -0
  215. offload/_root/data/findings/fuzz/b2-183-afar.f90 +57 -0
  216. offload/_root/data/findings/fuzz/b2-209-cce19.f90 +51 -0
  217. offload/_root/data/findings/fuzz/b2-213-afar.f90 +63 -0
  218. offload/_root/data/findings/fuzz/b2-52-afar.f90 +56 -0
  219. offload/_root/data/findings/fuzz/b2-68-afar.f90 +54 -0
  220. offload/_root/data/findings/fuzz/b2-85-cce20.f90 +55 -0
  221. offload/_root/data/findings/fuzz/b3-188-cce19.f90 +90 -0
  222. offload/_root/data/findings/fuzz/b3-190-cce21.f90 +88 -0
  223. offload/_root/data/findings/fuzz/b3-197-cce19.f90 +77 -0
  224. offload/_root/data/findings/fuzz/b3-250-cce20.f90 +89 -0
  225. offload/_root/data/findings/fuzz/b3-278-cce19.f90 +70 -0
  226. offload/_root/data/findings/fuzz/b3-45-cce21.f90 +83 -0
  227. offload/_root/data/findings/fuzz/b3-54-afar.f90 +67 -0
  228. offload/_root/data/findings/fuzz/b3-61-cce20.f90 +100 -0
  229. offload/_root/data/findings/fuzz/b3-9-afar.f90 +100 -0
  230. offload/_root/data/findings/fuzz/b3-9-cce21.f90 +103 -0
  231. offload/_root/data/findings/fuzz/b3-94-afar.f90 +80 -0
  232. offload/_root/data/findings/fuzz/b4-39-afar.f90 +141 -0
  233. offload/_root/data/findings/fuzz/b4-86-cce19.f90 +71 -0
  234. offload/_root/data/findings/fuzz/controls/gcc-complex-pointer-store-control.f90 +28 -0
  235. offload/_root/data/findings/fuzz/controls/gcc-declare-reduction-module-control.f90 +29 -0
  236. offload/_root/data/findings/fuzz/controls/gcc-target-simd-map-nontemporal-control.f90 +21 -0
  237. offload/_root/data/findings/fuzz/controls/nvhpc-allocatable-component-mapped-control.f90 +22 -0
  238. offload/_root/data/findings/fuzz/controls/nvhpc-allocatable-component-unreferenced-control.f90 +22 -0
  239. offload/_root/data/findings/fuzz/controls/nvhpc-default-none-removed-control.f90 +18 -0
  240. offload/_root/data/findings/fuzz/controls/nvhpc-default-shared-control.f90 +18 -0
  241. offload/_root/data/findings/fuzz/controls/nvhpc-defaultmap-firstprivate-removed-control.f90 +15 -0
  242. offload/_root/data/findings/fuzz/controls/nvhpc-defaultmap-to-scalar-reduction-mapped-control.f90 +17 -0
  243. offload/_root/data/findings/fuzz/controls/nvhpc-defaultmap-to-scalar-removed-control.f90 +17 -0
  244. offload/_root/data/findings/fuzz/controls/nvhpc-defaultmap-tofrom-lastprivate-control.f90 +15 -0
  245. offload/_root/data/findings/fuzz/controls/nvhpc-depend-explicit-map-control.f90 +22 -0
  246. offload/_root/data/findings/fuzz/controls/nvhpc-depend-removed-control.f90 +22 -0
  247. offload/_root/data/findings/fuzz/controls/nvhpc-distribute-end-distribute-control.f90 +16 -0
  248. offload/_root/data/findings/fuzz/controls/nvhpc-distribute-parallel-num-threads-removed-control.f90 +26 -0
  249. offload/_root/data/findings/fuzz/controls/nvhpc-distribute-parallel-removed-control.f90 +22 -0
  250. offload/_root/data/findings/fuzz/controls/nvhpc-distribute-simd-no-end-directive-control.f90 +15 -0
  251. offload/_root/data/findings/fuzz/controls/nvhpc-explicit-length-character-dummy-control.f90 +18 -0
  252. offload/_root/data/findings/fuzz/controls/nvhpc-loop-character-array-value-control.f90 +23 -0
  253. offload/_root/data/findings/fuzz/controls/nvhpc-loop-character-distribute-control.f90 +20 -0
  254. offload/_root/data/findings/fuzz/controls/nvhpc-map-always-first-control.f90 +15 -0
  255. offload/_root/data/findings/fuzz/controls/nvhpc-map-always-removed-control.f90 +15 -0
  256. offload/_root/data/findings/fuzz/controls/nvhpc-num-threads-removed-control.f90 +12 -0
  257. offload/_root/data/findings/fuzz/controls/nvhpc-target-parallel-firstprivate-dropped-control.f90 +15 -0
  258. offload/_root/data/findings/fuzz/controls/nvhpc-target-parallel-single-nowait-control.f90 +13 -0
  259. offload/_root/data/findings/fuzz/controls/nvhpc-target-parallel-split-control.f90 +15 -0
  260. offload/_root/data/findings/fuzz/controls/nvhpc-target-simd-collapse-split-control.f90 +21 -0
  261. offload/_root/data/findings/fuzz/controls/nvhpc-target-simd-end-directive-control.f90 +14 -0
  262. offload/_root/data/findings/fuzz/controls/nvhpc-target-simd-no-collapse-control.f90 +19 -0
  263. offload/_root/data/findings/fuzz/controls/nvhpc-target-simd-split-no-end-directive-control.f90 +15 -0
  264. offload/_root/data/findings/fuzz/gcc-declare-reduction-module-not-found.f90 +66 -0
  265. offload/_root/data/findings/fuzz/gcc-strided-target-update-rejected.f90 +58 -0
  266. offload/_root/data/findings/fuzz/gcc-target-simd-map-nontemporal-rejected.f90 +54 -0
  267. offload/_root/data/findings/fuzz/nvhpc-allocatable-component-implicit-map-illegal-address.f90 +84 -0
  268. offload/_root/data/findings/fuzz/nvhpc-assumed-length-character-dummy-map-ice.f90 +69 -0
  269. offload/_root/data/findings/fuzz/nvhpc-default-none-reduction-lastprivate-fort1-crash.f90 +70 -0
  270. offload/_root/data/findings/fuzz/nvhpc-defaultmap-firstprivate-lastprivate-ice.f90 +71 -0
  271. offload/_root/data/findings/fuzz/nvhpc-defaultmap-to-scalar-reduction-lost.f90 +82 -0
  272. offload/_root/data/findings/fuzz/nvhpc-depend-implicit-map-illegal-address.f90 +81 -0
  273. offload/_root/data/findings/fuzz/nvhpc-distribute-parallel-num-threads-writes-lost.f90 +79 -0
  274. offload/_root/data/findings/fuzz/nvhpc-end-distribute-simd-rejected.f90 +70 -0
  275. offload/_root/data/findings/fuzz/nvhpc-loop-character-achar-unsupported.f90 +75 -0
  276. offload/_root/data/findings/fuzz/nvhpc-map-always-after-map-to-not-copied-back.f90 +70 -0
  277. offload/_root/data/findings/fuzz/nvhpc-num-threads-reduction-identity-lost.f90 +54 -0
  278. offload/_root/data/findings/fuzz/nvhpc-target-parallel-firstprivate-translate-failure.f90 +66 -0
  279. offload/_root/data/findings/fuzz/nvhpc-target-parallel-single-hang.f90 +68 -0
  280. offload/_root/data/findings/fuzz/nvhpc-target-simd-collapse-translate-failure.f90 +73 -0
  281. offload/_root/data/findings/fuzz/nvhpc-target-simd-no-end-directive-rejected.f90 +68 -0
  282. offload/_root/data/findings/fuzz/par-s1-2082-gcc_g90.f90 +71 -0
  283. offload/_root/data/findings/fuzz/s1-2370-cce21.f90 +67 -0
  284. offload/_root/data/findings/fuzz/s1-2592-cce21.f90 +56 -0
  285. offload/_root/data/findings/fuzz/s1-3463-cce21.f90 +92 -0
  286. offload/_root/data/findings/fuzz/s1-4339-afar.f90 +79 -0
  287. offload/_root/data/findings/fuzz/s1-6085-cce21.f90 +96 -0
  288. offload/_root/data/findings/fuzz/s1-6760-cce20.f90 +65 -0
  289. offload/_root/data/findings/fuzz/s1-6888-cce21.f90 +76 -0
  290. offload/_root/data/findings/fuzz/s1-7882-cce20.f90 +63 -0
  291. offload/_root/data/findings/fuzz/s1-8634-cce21.f90 +45 -0
  292. offload/_root/data/findings/fuzz/s1-91-cce21.f90 +92 -0
  293. offload/_root/data/findings/fuzz/s1-9443-afar.f90 +59 -0
  294. offload/_root/data/findings/fuzz/s1-9914-cce19.f90 +78 -0
  295. offload/_root/data/findings/gcc/controls/gcc-acc-c-detach-control.c +34 -0
  296. offload/_root/data/findings/gcc/controls/gcc-acc-detach-control.f90 +26 -0
  297. offload/_root/data/findings/gcc/controls/gcc-defaultmap-to-pointer-control.f90 +31 -0
  298. offload/_root/data/findings/gcc/controls/gcc-target-in-task-control.c +26 -0
  299. offload/_root/data/findings/gcc/controls/gcc-target-in-task-control.f90 +21 -0
  300. offload/_root/data/findings/gcc/gcc-acc-bind-device-type-rejected.f90 +71 -0
  301. offload/_root/data/findings/gcc/gcc-acc-c-bind-device-type-rejected.c +76 -0
  302. offload/_root/data/findings/gcc/gcc-acc-c-detach-delete-attach-underflow.c +74 -0
  303. offload/_root/data/findings/gcc/gcc-acc-c-gang-dim-rejected.c +79 -0
  304. offload/_root/data/findings/gcc/gcc-acc-c-link-in-routine-rejected.c +82 -0
  305. offload/_root/data/findings/gcc/gcc-acc-detach-delete-attach-underflow.f90 +66 -0
  306. offload/_root/data/findings/gcc/gcc-acc-gang-dim-collapse-force-rejected.f90 +69 -0
  307. offload/_root/data/findings/gcc/gcc-acc-init-set-shutdown-rejected.f90 +70 -0
  308. offload/_root/data/findings/gcc/gcc-acc-link-in-routine-rejected.f90 +82 -0
  309. offload/_root/data/findings/gcc/gcc-acc-use-device-allocatable-rejected.f90 +88 -0
  310. offload/_root/data/findings/gcc/gcc-c-motion-mapper-rejected.c +110 -0
  311. offload/_root/data/findings/gcc/gcc-c-omp60-undocumented-rejected.c +76 -0
  312. offload/_root/data/findings/gcc/gcc-c-omp60-unimplemented-rejected.c +119 -0
  313. offload/_root/data/findings/gcc/gcc-c-target-in-task-mandatory-device-not-found.c +87 -0
  314. offload/_root/data/findings/gcc/gcc-c-uses-allocators-traits-unimplemented.c +85 -0
  315. offload/_root/data/findings/gcc/gcc-declare-mapper-rejected.f90 +85 -0
  316. offload/_root/data/findings/gcc/gcc-defaultmap-to-pointer-copy-back.f90 +66 -0
  317. offload/_root/data/findings/gcc/gcc-loop-bind-default-none-rejected.f90 +93 -0
  318. offload/_root/data/findings/gcc/gcc-omp60-undocumented-rejected.f90 +72 -0
  319. offload/_root/data/findings/gcc/gcc-omp60-unimplemented-rejected.f90 +112 -0
  320. offload/_root/data/findings/gcc/gcc-target-in-task-mandatory-device-not-found.f90 +83 -0
  321. offload/_root/data/findings/gcc/gcc-uses-allocators-traits-unimplemented.f90 +78 -0
  322. offload/_root/data/findings/harvest/afar-flang-strided-target-update.f90 +96 -0
  323. offload/_root/data/findings/harvest/cce-acc-declare-create-module-allocatable-xnack1-fault.f90 +58 -0
  324. offload/_root/data/findings/harvest/cce-c-implicit-struct-map-partly-present.c +100 -0
  325. offload/_root/data/findings/harvest/cce-c-strided-target-update.c +74 -0
  326. offload/_root/data/findings/harvest/cce-ftn-target-parallel-thread-query-ice.f90 +67 -0
  327. offload/_root/data/findings/harvest/cce-named-constant-array-declare-target-routine-rejected.f90 +69 -0
  328. offload/_root/data/findings/harvest/cce-use-device-ptr-c-ptr-not-converted.f90 +64 -0
  329. offload/_root/data/findings/harvest/cce21-declare-target-link-module-variable-write-lost.f90 +63 -0
  330. offload/_root/data/findings/harvest/cce21-internal-procedure-calls-internal-in-target-fault.f90 +71 -0
  331. offload/_root/data/findings/harvest/controls/cce-c-implicit-struct-map-partly-present-target-only-control.c +22 -0
  332. offload/_root/data/findings/harvest/controls/cce-c-implicit-struct-map-partly-present-whole-control.c +23 -0
  333. offload/_root/data/findings/harvest/controls/gcc-acc-declare-create-allocatable-control.f90 +34 -0
  334. offload/_root/data/findings/harvest/controls/gcc-c-same-item-two-maps-control.c +17 -0
  335. offload/_root/data/findings/harvest/controls/gcc-c-target-data-struct-pointer-section-control.c +27 -0
  336. offload/_root/data/findings/harvest/controls/gcc-c-target-data-two-maps-control.c +20 -0
  337. offload/_root/data/findings/harvest/controls/gcc-same-item-two-maps-control.f90 +16 -0
  338. offload/_root/data/findings/harvest/controls/gcc-teams-simd-matmul-allocatable-control.f90 +27 -0
  339. offload/_root/data/findings/harvest/gcc-acc-declare-create-allocatable-not-mapped.f90 +66 -0
  340. offload/_root/data/findings/harvest/gcc-c-same-item-two-maps-rejected.c +45 -0
  341. offload/_root/data/findings/harvest/gcc-c-strided-section-rejected.c +70 -0
  342. offload/_root/data/findings/harvest/gcc-c-target-data-struct-pointer-section-ice.c +78 -0
  343. offload/_root/data/findings/harvest/gcc-c-target-data-two-maps-ice.c +49 -0
  344. offload/_root/data/findings/harvest/gcc-same-item-two-maps-rejected.f90 +46 -0
  345. offload/_root/data/findings/harvest/gcc-teams-simd-matmul-allocatable-ice.f90 +53 -0
  346. offload/_root/data/findings/harvest/nvhpc-c-target-data-if-false-use-device-ptr-garbage.c +49 -0
  347. offload/_root/data/findings/harvest/nvhpc-named-constant-array-declare-target-routine-rejected.f90 +65 -0
  348. offload/_root/data/findings/harvest/nvhpc-use-device-ptr-c-ptr-not-found.f90 +60 -0
  349. offload/_root/data/findings/harvest/nvhpc2511-target-nowait-in-parallel-for-ice.c +59 -0
  350. offload/_root/data/findings/hecbench/controls/f16-ctl-float-array.c +28 -0
  351. offload/_root/data/findings/hecbench/controls/pc-ctl-builtin-popcount.c +37 -0
  352. offload/_root/data/findings/hecbench/controls/pc-ctl-shift-sum.c +43 -0
  353. offload/_root/data/findings/hecbench/gcc-c-float16-array-in-target-lto-ice.c +65 -0
  354. offload/_root/data/findings/hecbench/gcc-c-swar-popcount-assembler-error.c +80 -0
  355. offload/_root/data/findings/index.yaml +2453 -0
  356. offload/_root/data/findings/malloc/afar-device-malloc-in-kernel-corrupts-records.c +371 -0
  357. offload/_root/data/findings/malloc/controls/afar-first-use-malloc-direct.c +52 -0
  358. offload/_root/data/findings/malloc/controls/afar-first-use-malloc-fence.c +57 -0
  359. offload/_root/data/findings/malloc/controls/afar-first-use-malloc-flush.c +57 -0
  360. offload/_root/data/findings/malloc/controls/afar-first-use-malloc-stack.c +52 -0
  361. offload/_root/data/findings/multithread-allocatable-section-maps.f90 +91 -0
  362. offload/_root/data/findings/nested/afar-cce-c-call-result-member-in-target-rejected.c +69 -0
  363. offload/_root/data/findings/nested/afar-cce-c-update-struct-and-member-rejected.c +92 -0
  364. offload/_root/data/findings/nested/afar-flang-pointer-root-allocatable-component-enter-data-fault.f90 +121 -0
  365. offload/_root/data/findings/nested/cce-c-struct-and-nested-pointee-sections-ice.c +79 -0
  366. offload/_root/data/findings/nested/cce-fortran-nested-allocatable-component-copy-fault.f90 +64 -0
  367. offload/_root/data/findings/nested/cce-fortran-pointer-to-type-with-allocatable-scalar-component-typed-transfer.f90 +93 -0
  368. offload/_root/data/findings/nested/cce-fortran-update-to-pointer-root-allocatable-scalar-component-no-accelerator-object.f90 +80 -0
  369. offload/_root/data/findings/nested/controls/c3-ctl-nested-data.c +27 -0
  370. offload/_root/data/findings/nested/controls/c5-acc-serial-struct-and-array.c +26 -0
  371. offload/_root/data/findings/nested/controls/e2-ctl-two-directives.c +42 -0
  372. offload/_root/data/findings/nested/controls/e3-ctl-attach-clause.c +42 -0
  373. offload/_root/data/findings/nested/controls/f3-pointer-array-only.c +33 -0
  374. offload/_root/data/findings/nested/controls/f5-ctl-copyout-exit.c +33 -0
  375. offload/_root/data/findings/nested/controls/f6-ctl-pointer-to-struct-array.c +28 -0
  376. offload/_root/data/findings/nested/controls/g2-ctl-allocatable.f90 +34 -0
  377. offload/_root/data/findings/nested/controls/g2-ctl-entered-to.f90 +34 -0
  378. offload/_root/data/findings/nested/controls/g3-ctl-from-struct-no-element.c +27 -0
  379. offload/_root/data/findings/nested/controls/g3-ptrs-two-elements-to.c +27 -0
  380. offload/_root/data/findings/nested/controls/g3-ptrs-two-elements-tofrom.c +27 -0
  381. offload/_root/data/findings/nested/controls/g5-ctl-element-pointers-only.f90 +36 -0
  382. offload/_root/data/findings/nested/controls/g5-ctl-root-pointer-only.f90 +36 -0
  383. offload/_root/data/findings/nested/controls/gp2-ctl-no-mapper-explicit-maps.c +24 -0
  384. offload/_root/data/findings/nested/controls/gt2-ctl-no-always.c +26 -0
  385. offload/_root/data/findings/nested/controls/gt3-ctl-always-on-structure-only.c +26 -0
  386. offload/_root/data/findings/nested/controls/j1-embedded-struct-pointer-to-struct.c +24 -0
  387. offload/_root/data/findings/nested/controls/j2-ctl-pointer-instead-of-embedded.c +24 -0
  388. offload/_root/data/findings/nested/controls/j6-ctl-struct-and-one-pointee-level.c +23 -0
  389. offload/_root/data/findings/nested/controls/j7-ctl-struct-and-embedded-pointee.c +24 -0
  390. offload/_root/data/findings/nested/controls/m2-ctl-variable-root.f90 +32 -0
  391. offload/_root/data/findings/nested/controls/m3-ctl-fixed-array-component.f90 +32 -0
  392. offload/_root/data/findings/nested/controls/m5-ctl-no-enter-data.f90 +33 -0
  393. offload/_root/data/findings/nested/controls/n8-ctl-fixed-array-in-component.f90 +33 -0
  394. offload/_root/data/findings/nested/controls/n9-ctl-allocatable-in-the-variable.f90 +33 -0
  395. offload/_root/data/findings/nested/controls/ns4-ctl-two-directives-struct-then-pointee.c +27 -0
  396. offload/_root/data/findings/nested/controls/ns8-ctl-enter-together-exit-split.c +26 -0
  397. offload/_root/data/findings/nested/controls/nu3-ctl-update-pointee-only.c +28 -0
  398. offload/_root/data/findings/nested/controls/p2-ctl-pointer-variable.c +27 -0
  399. offload/_root/data/findings/nested/controls/p3-ctl-direct-member.c +26 -0
  400. offload/_root/data/findings/nested/controls/q2-ctl-fixed-array.f90 +37 -0
  401. offload/_root/data/findings/nested/controls/q3-ctl-allocatable-component-of-the-variable.f90 +38 -0
  402. offload/_root/data/findings/nested/controls/ta2-ctl-no-allocatable-component.f90 +42 -0
  403. offload/_root/data/findings/nested/controls/ta3-ctl-allocatable-scalar-in-the-variable.f90 +38 -0
  404. offload/_root/data/findings/nested/controls/ta4-ctl-pointer-component-only.f90 +42 -0
  405. offload/_root/data/findings/nested/controls/u3-ctl-update-member-only.c +24 -0
  406. offload/_root/data/findings/nested/controls/u4-ctl-two-updates.c +25 -0
  407. offload/_root/data/findings/nested/controls/u5-ctl-same-list-in-map.c +25 -0
  408. offload/_root/data/findings/nested/controls/ua2-ctl-variable-root.f90 +37 -0
  409. offload/_root/data/findings/nested/controls/ua4-ctl-to-in-place-of-alloc-and-update.f90 +37 -0
  410. offload/_root/data/findings/nested/controls/v2-ctl-parent-first.c +25 -0
  411. offload/_root/data/findings/nested/controls/v4-ctl-embedded-member.c +24 -0
  412. offload/_root/data/findings/nested/gcc-acc-c-exit-data-of-a-pointer-array-element-target-hangs.c +83 -0
  413. offload/_root/data/findings/nested/gcc-acc-c-parent-and-shared-pointee-one-directive.c +88 -0
  414. offload/_root/data/findings/nested/gcc-acc-c-struct-and-member-array-one-directive.c +84 -0
  415. offload/_root/data/findings/nested/gcc-c-always-on-pointer-member-section-ice.c +75 -0
  416. offload/_root/data/findings/nested/gcc-c-declare-mapper-pointer-member-section-gpu-fault.c +93 -0
  417. offload/_root/data/findings/nested/gcc-c-from-struct-and-pointee-section-rejected.c +83 -0
  418. offload/_root/data/findings/nested/gcc-fortran-pointer-component-alloc-bounds-lost.f90 +62 -0
  419. offload/_root/data/findings/nested/gcc-fortran-root-and-element-pointer-components-ice.f90 +77 -0
  420. offload/_root/data/findings/nested/nvhpc-c-pointee-before-parent-in-one-map-list-copy-fault.c +55 -0
  421. offload/_root/data/findings/nested/nvhpc-c-update-from-structure-overwrites-attached-pointer-segv.c +86 -0
  422. offload/_root/data/findings/nvhpc-acc-atomic-update-sum-fort2-crash.f90 +53 -0
  423. offload/_root/data/findings/nvhpc-c-acc-atomic-update-sum-ice.c +43 -0
  424. offload/_root/data/findings/nvhpc-c-dist-schedule-chunk-compile-hang.c +41 -0
  425. offload/_root/data/findings/nvhpc-c-map-present-ignored.c +42 -0
  426. offload/_root/data/findings/nvhpc-c-ordered-in-target-nvcpfe-crash.c +92 -0
  427. offload/_root/data/findings/nvhpc-c-parallel-for-firstprivate-in-target.c +62 -0
  428. offload/_root/data/findings/nvhpc-c-parallel-if-in-target-nvvm-ice.c +56 -0
  429. offload/_root/data/findings/nvhpc-defaultmap-firstprivate-explicit-map.f90 +45 -0
  430. offload/_root/data/findings/nvhpc-defaultmap-from-allocatable-indexing.f90 +60 -0
  431. offload/_root/data/findings/nvhpc-depend-inoutset-ignored.f90 +64 -0
  432. offload/_root/data/findings/nvhpc-dist-schedule-chunk-illegal-address.f90 +52 -0
  433. offload/_root/data/findings/nvhpc-managed-acc-shutdown-host-access.f90 +42 -0
  434. offload/_root/data/findings/nvhpc-parallel-if-in-target-nvvm-ice.f90 +60 -0
  435. offload/_root/data/findings/oop/afar-final-dealloc-device-link.f90 +85 -0
  436. offload/_root/data/findings/oop/afar-pdt-length-parameter-not-implemented.f90 +65 -0
  437. offload/_root/data/findings/oop/cce-class-is-device-link.f90 +86 -0
  438. offload/_root/data/findings/oop/cce-copy-alloc-component-section-fault.f90 +73 -0
  439. offload/_root/data/findings/oop/cce-copy-parent-to-component-tofrom-lost.f90 +65 -0
  440. offload/_root/data/findings/oop/cce-copy-second-member-section-lost.f90 +65 -0
  441. offload/_root/data/findings/oop/cce-element-component-map-lost.f90 +64 -0
  442. offload/_root/data/findings/oop/cce-final-dealloc-device-abort.f90 +85 -0
  443. offload/_root/data/findings/oop/cce-pdt-default-mapper-rejected.f90 +71 -0
  444. offload/_root/data/findings/oop/cce-polymorphic-dispatch-device-link.f90 +100 -0
  445. offload/_root/data/findings/oop/cce-section-of-element-component-overlap.f90 +76 -0
  446. offload/_root/data/findings/oop/cce-select-type-guard-not-taken.f90 +91 -0
  447. offload/_root/data/findings/oop/cce-udr-derived-type-unsupported.f90 +69 -0
  448. offload/_root/data/findings/oop/cce21-element-component-map-lost.f90 +62 -0
  449. offload/_root/data/findings/oop/controls/alloccomp-comp-only.f90 +44 -0
  450. offload/_root/data/findings/oop/controls/alloccomp-whole-explicit-component.f90 +50 -0
  451. offload/_root/data/findings/oop/controls/alloccomp-whole.f90 +49 -0
  452. offload/_root/data/findings/oop/controls/elemsec-element.f90 +47 -0
  453. offload/_root/data/findings/oop/controls/final-local.f90 +64 -0
  454. offload/_root/data/findings/oop/controls/host-class-star-select-type.f90 +58 -0
  455. offload/_root/data/findings/oop/controls/host-firstprivate-defined-assignment.f90 +54 -0
  456. offload/_root/data/findings/oop/controls/host-lastprivate-defined-assignment.f90 +58 -0
  457. offload/_root/data/findings/oop/controls/host-private-finalization.f90 +51 -0
  458. offload/_root/data/findings/oop/controls/host-select-type.f90 +65 -0
  459. offload/_root/data/findings/oop/controls/parent-and-comp-component-only.f90 +45 -0
  460. offload/_root/data/findings/oop/controls/pdt-kind.f90 +46 -0
  461. offload/_root/data/findings/oop/controls/pdt-len-host.f90 +43 -0
  462. offload/_root/data/findings/oop/controls/pdt-len-unparameterized.f90 +46 -0
  463. offload/_root/data/findings/oop/controls/poly-dispatch-static.f90 +75 -0
  464. offload/_root/data/findings/oop/controls/section-alloc-whole-component.f90 +49 -0
  465. offload/_root/data/findings/oop/controls/section-element-whole-array.f90 +50 -0
  466. offload/_root/data/findings/oop/controls/section-element-whole-component.f90 +50 -0
  467. offload/_root/data/findings/oop/controls/section-fixed.f90 +43 -0
  468. offload/_root/data/findings/oop/controls/tbp-override.f90 +64 -0
  469. offload/_root/data/findings/oop/gcc-acc-parent-and-member-data-rejected.f90 +63 -0
  470. offload/_root/data/findings/oop/gcc-pdt-length-parameter-abort.f90 +68 -0
  471. offload/_root/data/findings/oop/gcc-polymorphic-dispatch-abort.f90 +97 -0
  472. offload/_root/data/findings/oop/gcc-vtab-not-marked-for-offload.f90 +94 -0
  473. offload/_root/data/findings/oop/nvhpc-copy-alloc-component-illegal-address.f90 +76 -0
  474. offload/_root/data/findings/oop/nvhpc-copy-pdt-length-parameter-illegal-address.f90 +69 -0
  475. offload/_root/data/findings/oop/nvhpc-named-mapper-rejected.f90 +65 -0
  476. offload/_root/data/findings/oop/nvhpc-polymorphic-dispatch-translate-failure.f90 +90 -0
  477. offload/_root/data/findings/oop/nvhpc-polymorphism-runtime-unsupported.f90 +94 -0
  478. offload/_root/data/findings/oop/nvhpc-type-bound-call-rejected.f90 +89 -0
  479. offload/_root/data/findings/oop/nvhpc-udr-derived-type-rejected.f90 +67 -0
  480. offload/_root/data/findings/reviews/afar-c-error-directive-in-target-link.json +217 -0
  481. offload/_root/data/findings/reviews/afar-c-lastprivate-distribute-parallel-for-small-type.json +113 -0
  482. offload/_root/data/findings/reviews/afar-c-teams-distribute-reduction-first-team.json +130 -0
  483. offload/_root/data/findings/reviews/afar-c-update-iterator-copy-mode.json +113 -0
  484. offload/_root/data/findings/reviews/afar-cce19-character-defaultmap.json +292 -0
  485. offload/_root/data/findings/reviews/afar-clang-requires-device-safesync-hang.json +191 -0
  486. offload/_root/data/findings/reviews/afar-flang-firstprivate-map-two-targets.json +130 -0
  487. offload/_root/data/findings/reviews/afar-flang-loop-bind-teams-reduction.json +126 -0
  488. offload/_root/data/findings/reviews/afar-flang-task-reduction-max.json +113 -0
  489. offload/_root/data/findings/reviews/afar-flang-thread-limit-target-parallel-do.json +113 -0
  490. offload/_root/data/findings/reviews/afar-loop-bind-thread-in-teams.json +191 -0
  491. offload/_root/data/findings/reviews/afar-nontemporal-assumed-shape-ice.json +113 -0
  492. offload/_root/data/findings/reviews/afar-udr-derived-type-link.json +113 -0
  493. offload/_root/data/findings/reviews/afar-xnack1-atomic-min-nested-parallel.json +113 -0
  494. offload/_root/data/findings/reviews/afar-xnack1-target-is-present.json +113 -0
  495. offload/_root/data/findings/reviews/apps--afar-cce-teams-private-array-nested-parallel-wrong.json +113 -0
  496. offload/_root/data/findings/reviews/apps--cce20-device-link-infer-address-spaces-crash.json +113 -0
  497. offload/_root/data/findings/reviews/apps--cce21-device-link-agpr-copy-mfma-assert.json +113 -0
  498. offload/_root/data/findings/reviews/apps--cce21-private-array-loaded-subscript-wrong.json +113 -0
  499. offload/_root/data/findings/reviews/apps--gcc-acc-c-tile-partial-tiles-wrong.json +113 -0
  500. offload/_root/data/findings/reviews/catalog--afar-c-ordered-doacross-link.json +113 -0
  501. offload/_root/data/findings/reviews/catalog--afar-c-reduction-task-link.json +113 -0
  502. offload/_root/data/findings/reviews/catalog--afar-flang-absent-optional-target-crash.json +113 -0
  503. offload/_root/data/findings/reviews/catalog--afar-flang-critical-target-parallel-wrong.json +113 -0
  504. offload/_root/data/findings/reviews/catalog--afar-flang-dist-schedule-chunk.json +113 -0
  505. offload/_root/data/findings/reviews/catalog--afar-flang-linear-parallel-ice.json +113 -0
  506. offload/_root/data/findings/reviews/catalog--afar-flang-named-critical-link.json +126 -0
  507. offload/_root/data/findings/reviews/catalog--afar-flang-ordered-wrong.json +113 -0
  508. offload/_root/data/findings/reviews/catalog--afar-flang-reduction-minus-rejected.json +113 -0
  509. offload/_root/data/findings/reviews/catalog--afar-flang-sections-in-target-ice.json +113 -0
  510. offload/_root/data/findings/reviews/catalog--afar-flang-workdistribute-ice.json +113 -0
  511. offload/_root/data/findings/reviews/catalog--c-allocate-const-mem-firstprivate-wrong.json +113 -0
  512. offload/_root/data/findings/reviews/catalog--cce-acc-character-dummy-routine-ice.json +113 -0
  513. offload/_root/data/findings/reviews/catalog--cce-acc-loop-seq-in-routine-wrong.json +113 -0
  514. offload/_root/data/findings/reviews/catalog--cce-allocators-stack-ice.json +113 -0
  515. offload/_root/data/findings/reviews/catalog--cce-c-allocate-align-link.json +113 -0
  516. offload/_root/data/findings/reviews/catalog--cce-c-allocate-allocator-modifier-rejected.json +113 -0
  517. offload/_root/data/findings/reviews/catalog--cce-c-dist-schedule-chunk.json +113 -0
  518. offload/_root/data/findings/reviews/catalog--cce-c-f-pointer-device-link.json +130 -0
  519. offload/_root/data/findings/reviews/catalog--cce-c-long-double-ice.json +217 -0
  520. offload/_root/data/findings/reviews/catalog--cce-c-map-iterator-ice.json +217 -0
  521. offload/_root/data/findings/reviews/catalog--cce-c-recursive-function-ice.json +113 -0
  522. offload/_root/data/findings/reviews/catalog--cce-c-sections-in-target-wrong.json +113 -0
  523. offload/_root/data/findings/reviews/catalog--cce-flang-allocate-in-target-crash.json +113 -0
  524. offload/_root/data/findings/reviews/catalog--cce-flang-lastprivate-parallel-in-seq-loop-wrong.json +113 -0
  525. offload/_root/data/findings/reviews/catalog--cce-flang-stop-in-target-crash.json +113 -0
  526. offload/_root/data/findings/reviews/catalog--cce-iterator-link.json +113 -0
  527. offload/_root/data/findings/reviews/catalog--cce-linear-lastprivate-ice.json +113 -0
  528. offload/_root/data/findings/reviews/catalog--cce-reduction-inscan-ice.json +113 -0
  529. offload/_root/data/findings/reviews/catalog--cce-reduction-task-link.json +113 -0
  530. offload/_root/data/findings/reviews/catalog--cce19-reduction-task-addrspacecast-ice.json +113 -0
  531. offload/_root/data/findings/reviews/catalog--cce20-c-defaultmap-private-storage-rejected.json +217 -0
  532. offload/_root/data/findings/reviews/catalog--cce20-map-self-rejected.json +204 -0
  533. offload/_root/data/findings/reviews/catalog--cce21-c-target-loop-ice.json +126 -0
  534. offload/_root/data/findings/reviews/catalog--defaultmap-present-private-array-abort.json +236 -0
  535. offload/_root/data/findings/reviews/catalog--nvhpc-acc-associate-illegal-address.json +113 -0
  536. offload/_root/data/findings/reviews/catalog--nvhpc-c-function-pointer-kernel-missing.json +268 -0
  537. offload/_root/data/findings/reviews/cce-acc-init-set-runtime-assert.json +113 -0
  538. offload/_root/data/findings/reviews/cce-acc-reduction-200-int8-scalars-wrong.json +113 -0
  539. offload/_root/data/findings/reviews/cce-acc-routine-bind-module-ice.json +113 -0
  540. offload/_root/data/findings/reviews/cce-c-dist-schedule-segv.json +113 -0
  541. offload/_root/data/findings/reviews/cce-c-map-delete-refcount.json +149 -0
  542. offload/_root/data/findings/reviews/cce-c-map-present-assert.json +126 -0
  543. offload/_root/data/findings/reviews/cce-c-openmp45-device-link.json +113 -0
  544. offload/_root/data/findings/reviews/cce-c-parallel-for-in-target.json +141 -0
  545. offload/_root/data/findings/reviews/cce-mapper-next-map-copy-back.json +208 -0
  546. offload/_root/data/findings/reviews/cce-uses-allocators-traits-omp50.json +191 -0
  547. offload/_root/data/findings/reviews/cce19-c-reduction-63-scalars-one-wrong.json +113 -0
  548. offload/_root/data/findings/reviews/cce19-target-parallel-guarded-loop.json +113 -0
  549. offload/_root/data/findings/reviews/cce19-target-parallel-single-ice.json +113 -0
  550. offload/_root/data/findings/reviews/cce21-alloc-2e32-sum-wrong.json +113 -0
  551. offload/_root/data/findings/reviews/cce21-defaultmap-aggregate-flag.json +210 -0
  552. offload/_root/data/findings/reviews/cce21-in-reduction-assumed-shape-write-lost.json +113 -0
  553. offload/_root/data/findings/reviews/cce21-in-reduction-taskwait-link.json +113 -0
  554. offload/_root/data/findings/reviews/clang-c-declare-target-to-omp52.json +113 -0
  555. offload/_root/data/findings/reviews/clang-c-linear-directive-name-hang.json +113 -0
  556. offload/_root/data/findings/reviews/clang-c-shared-declare-target-combined.json +132 -0
  557. offload/_root/data/findings/reviews/dataenv--cce-value-dummy-target-write-visible.json +113 -0
  558. offload/_root/data/findings/reviews/defaultmap-none-loop-variable.json +113 -0
  559. offload/_root/data/findings/reviews/fortran-schedule-static-in-target.json +113 -0
  560. offload/_root/data/findings/reviews/fresh--cce-common-block-name-in-map-rejected.json +113 -0
  561. offload/_root/data/findings/reviews/fresh--cce-list-directed-print-in-target-copy-crash.json +217 -0
  562. offload/_root/data/findings/reviews/fresh--cce19-acc-automatic-array-copyout-copy-crash.json +113 -0
  563. offload/_root/data/findings/reviews/fresh--cce21-combined-if-runtime-expr-loop-skipped.json +113 -0
  564. offload/_root/data/findings/reviews/fresh--nvhpc-acc-gang-worker-collapse-nested-vector-reduction-lost.json +113 -0
  565. offload/_root/data/findings/reviews/fresh--nvhpc-teams-loop-module-allocatable-assign-fort2-crash.json +113 -0
  566. offload/_root/data/findings/reviews/fuzz--1505-cce20.json +113 -0
  567. offload/_root/data/findings/reviews/fuzz--1540-afar.json +113 -0
  568. offload/_root/data/findings/reviews/fuzz--1978-cce19.json +130 -0
  569. offload/_root/data/findings/reviews/fuzz--2334-cce19.json +113 -0
  570. offload/_root/data/findings/reviews/fuzz--591-cce19.json +147 -0
  571. offload/_root/data/findings/reviews/fuzz--650-afar.json +113 -0
  572. offload/_root/data/findings/reviews/fuzz--916-afar.json +130 -0
  573. offload/_root/data/findings/reviews/fuzz--98-cce19.json +113 -0
  574. offload/_root/data/findings/reviews/fuzz--b1-121-afar.json +160 -0
  575. offload/_root/data/findings/reviews/fuzz--b2-209-cce19.json +141 -0
  576. offload/_root/data/findings/reviews/fuzz--b2-68-afar.json +113 -0
  577. offload/_root/data/findings/reviews/fuzz--b2-85-cce20.json +217 -0
  578. offload/_root/data/findings/reviews/fuzz--b3-188-cce19.json +113 -0
  579. offload/_root/data/findings/reviews/fuzz--b3-278-cce19.json +212 -0
  580. offload/_root/data/findings/reviews/fuzz--b3-54-afar.json +113 -0
  581. offload/_root/data/findings/reviews/fuzz--b3-61-cce20.json +191 -0
  582. offload/_root/data/findings/reviews/fuzz--b4-86-cce19.json +113 -0
  583. offload/_root/data/findings/reviews/fuzz--gcc-declare-reduction-module-not-found.json +113 -0
  584. offload/_root/data/findings/reviews/fuzz--gcc-target-simd-map-nontemporal-rejected.json +113 -0
  585. offload/_root/data/findings/reviews/fuzz--nvhpc-allocatable-component-implicit-map-illegal-address.json +141 -0
  586. offload/_root/data/findings/reviews/fuzz--nvhpc-assumed-length-character-dummy-map-ice.json +113 -0
  587. offload/_root/data/findings/reviews/fuzz--nvhpc-default-none-reduction-lastprivate-fort1-crash.json +113 -0
  588. offload/_root/data/findings/reviews/fuzz--nvhpc-defaultmap-firstprivate-lastprivate-ice.json +113 -0
  589. offload/_root/data/findings/reviews/fuzz--nvhpc-defaultmap-to-scalar-reduction-lost.json +113 -0
  590. offload/_root/data/findings/reviews/fuzz--nvhpc-depend-implicit-map-illegal-address.json +113 -0
  591. offload/_root/data/findings/reviews/fuzz--nvhpc-distribute-parallel-num-threads-writes-lost.json +113 -0
  592. offload/_root/data/findings/reviews/fuzz--nvhpc-end-distribute-simd-rejected.json +113 -0
  593. offload/_root/data/findings/reviews/fuzz--nvhpc-loop-character-achar-unsupported.json +113 -0
  594. offload/_root/data/findings/reviews/fuzz--nvhpc-map-always-after-map-to-not-copied-back.json +113 -0
  595. offload/_root/data/findings/reviews/fuzz--nvhpc-num-threads-reduction-identity-lost.json +113 -0
  596. offload/_root/data/findings/reviews/fuzz--nvhpc-target-parallel-firstprivate-translate-failure.json +191 -0
  597. offload/_root/data/findings/reviews/fuzz--nvhpc-target-parallel-single-hang.json +113 -0
  598. offload/_root/data/findings/reviews/fuzz--nvhpc-target-simd-collapse-translate-failure.json +113 -0
  599. offload/_root/data/findings/reviews/fuzz--nvhpc-target-simd-no-end-directive-rejected.json +113 -0
  600. offload/_root/data/findings/reviews/fuzz--par-s1-2082-gcc_g90.json +126 -0
  601. offload/_root/data/findings/reviews/fuzz--s1-2370-cce21.json +113 -0
  602. offload/_root/data/findings/reviews/fuzz--s1-2592-cce21.json +113 -0
  603. offload/_root/data/findings/reviews/fuzz--s1-3463-cce21.json +113 -0
  604. offload/_root/data/findings/reviews/fuzz--s1-6760-cce20.json +130 -0
  605. offload/_root/data/findings/reviews/fuzz--s1-6888-cce21.json +113 -0
  606. offload/_root/data/findings/reviews/fuzz--s1-7882-cce20.json +113 -0
  607. offload/_root/data/findings/reviews/fuzz--s1-8634-cce21.json +113 -0
  608. offload/_root/data/findings/reviews/fuzz--s1-91-cce21.json +113 -0
  609. offload/_root/data/findings/reviews/fuzz--s1-9443-afar.json +113 -0
  610. offload/_root/data/findings/reviews/fuzz--s1-9914-cce19.json +141 -0
  611. offload/_root/data/findings/reviews/gcc--gcc-acc-bind-device-type-rejected.json +113 -0
  612. offload/_root/data/findings/reviews/gcc--gcc-acc-detach-delete-attach-underflow.json +314 -0
  613. offload/_root/data/findings/reviews/gcc--gcc-acc-gang-dim-collapse-force-rejected.json +113 -0
  614. offload/_root/data/findings/reviews/gcc--gcc-acc-init-set-shutdown-rejected.json +113 -0
  615. offload/_root/data/findings/reviews/gcc--gcc-acc-link-in-routine-rejected.json +113 -0
  616. offload/_root/data/findings/reviews/gcc--gcc-acc-use-device-allocatable-rejected.json +113 -0
  617. offload/_root/data/findings/reviews/gcc--gcc-c-motion-mapper-rejected.json +113 -0
  618. offload/_root/data/findings/reviews/gcc--gcc-c-omp60-undocumented-rejected.json +217 -0
  619. offload/_root/data/findings/reviews/gcc--gcc-c-omp60-unimplemented-rejected.json +236 -0
  620. offload/_root/data/findings/reviews/gcc--gcc-c-target-in-task-mandatory-device-not-found.json +236 -0
  621. offload/_root/data/findings/reviews/gcc--gcc-c-uses-allocators-traits-unimplemented.json +113 -0
  622. offload/_root/data/findings/reviews/gcc--gcc-declare-mapper-rejected.json +113 -0
  623. offload/_root/data/findings/reviews/gcc--gcc-defaultmap-to-pointer-copy-back.json +217 -0
  624. offload/_root/data/findings/reviews/gcc--gcc-loop-bind-default-none-rejected.json +113 -0
  625. offload/_root/data/findings/reviews/harvest--afar-flang-strided-target-update.json +141 -0
  626. offload/_root/data/findings/reviews/harvest--cce-acc-declare-create-module-allocatable-xnack1-fault.json +113 -0
  627. offload/_root/data/findings/reviews/harvest--cce-c-implicit-struct-map-partly-present.json +217 -0
  628. offload/_root/data/findings/reviews/harvest--cce-c-strided-target-update.json +141 -0
  629. offload/_root/data/findings/reviews/harvest--cce-ftn-target-parallel-thread-query-ice.json +130 -0
  630. offload/_root/data/findings/reviews/harvest--cce-named-constant-array-declare-target-routine-rejected.json +113 -0
  631. offload/_root/data/findings/reviews/harvest--cce-use-device-ptr-c-ptr-not-converted.json +113 -0
  632. offload/_root/data/findings/reviews/harvest--cce21-declare-target-link-module-variable-write-lost.json +113 -0
  633. offload/_root/data/findings/reviews/harvest--cce21-internal-procedure-calls-internal-in-target-fault.json +158 -0
  634. offload/_root/data/findings/reviews/harvest--gcc-acc-declare-create-allocatable-not-mapped.json +204 -0
  635. offload/_root/data/findings/reviews/harvest--gcc-c-same-item-two-maps-rejected.json +143 -0
  636. offload/_root/data/findings/reviews/harvest--gcc-c-strided-section-rejected.json +164 -0
  637. offload/_root/data/findings/reviews/harvest--gcc-c-target-data-struct-pointer-section-ice.json +113 -0
  638. offload/_root/data/findings/reviews/harvest--gcc-c-target-data-two-maps-ice.json +113 -0
  639. offload/_root/data/findings/reviews/harvest--gcc-teams-simd-matmul-allocatable-ice.json +113 -0
  640. offload/_root/data/findings/reviews/harvest--nvhpc-c-target-data-if-false-use-device-ptr-garbage.json +113 -0
  641. offload/_root/data/findings/reviews/harvest--nvhpc-named-constant-array-declare-target-routine-rejected.json +126 -0
  642. offload/_root/data/findings/reviews/harvest--nvhpc-use-device-ptr-c-ptr-not-found.json +113 -0
  643. offload/_root/data/findings/reviews/harvest--nvhpc2511-target-nowait-in-parallel-for-ice.json +130 -0
  644. offload/_root/data/findings/reviews/hecbench--gcc-c-float16-array-in-target-lto-ice.json +217 -0
  645. offload/_root/data/findings/reviews/hecbench--gcc-c-swar-popcount-assembler-error.json +126 -0
  646. offload/_root/data/findings/reviews/malloc--afar-device-malloc-in-kernel-corrupts-records.json +270 -0
  647. offload/_root/data/findings/reviews/multithread-allocatable-section-maps.json +191 -0
  648. offload/_root/data/findings/reviews/nested--afar-cce-c-call-result-member-in-target-rejected.json +113 -0
  649. offload/_root/data/findings/reviews/nested--afar-cce-c-update-struct-and-member-rejected.json +126 -0
  650. offload/_root/data/findings/reviews/nested--afar-flang-pointer-root-allocatable-component-enter-data-fault.json +191 -0
  651. offload/_root/data/findings/reviews/nested--cce-c-struct-and-nested-pointee-sections-ice.json +113 -0
  652. offload/_root/data/findings/reviews/nested--cce-fortran-nested-allocatable-component-copy-fault.json +214 -0
  653. offload/_root/data/findings/reviews/nested--cce-fortran-pointer-to-type-with-allocatable-scalar-component-typed-transfer.json +191 -0
  654. offload/_root/data/findings/reviews/nested--cce-fortran-update-to-pointer-root-allocatable-scalar-component-no-accelerator-object.json +297 -0
  655. offload/_root/data/findings/reviews/nested--gcc-acc-c-exit-data-of-a-pointer-array-element-target-hangs.json +204 -0
  656. offload/_root/data/findings/reviews/nested--gcc-acc-c-parent-and-shared-pointee-one-directive.json +130 -0
  657. offload/_root/data/findings/reviews/nested--gcc-acc-c-struct-and-member-array-one-directive.json +141 -0
  658. offload/_root/data/findings/reviews/nested--gcc-c-always-on-pointer-member-section-ice.json +113 -0
  659. offload/_root/data/findings/reviews/nested--gcc-c-declare-mapper-pointer-member-section-gpu-fault.json +113 -0
  660. offload/_root/data/findings/reviews/nested--gcc-c-from-struct-and-pointee-section-rejected.json +113 -0
  661. offload/_root/data/findings/reviews/nested--gcc-fortran-pointer-component-alloc-bounds-lost.json +217 -0
  662. offload/_root/data/findings/reviews/nested--gcc-fortran-root-and-element-pointer-components-ice.json +217 -0
  663. offload/_root/data/findings/reviews/nested--nvhpc-c-pointee-before-parent-in-one-map-list-copy-fault.json +204 -0
  664. offload/_root/data/findings/reviews/nested--nvhpc-c-update-from-structure-overwrites-attached-pointer-segv.json +191 -0
  665. offload/_root/data/findings/reviews/nvhpc-c-acc-atomic-update-sum-ice.json +277 -0
  666. offload/_root/data/findings/reviews/nvhpc-c-dist-schedule-chunk-compile-hang.json +113 -0
  667. offload/_root/data/findings/reviews/nvhpc-c-map-present-ignored.json +113 -0
  668. offload/_root/data/findings/reviews/nvhpc-c-ordered-in-target-nvcpfe-crash.json +113 -0
  669. offload/_root/data/findings/reviews/nvhpc-c-parallel-for-firstprivate-in-target.json +113 -0
  670. offload/_root/data/findings/reviews/nvhpc-defaultmap-firstprivate-explicit-map.json +113 -0
  671. offload/_root/data/findings/reviews/nvhpc-defaultmap-from-allocatable-indexing.json +132 -0
  672. offload/_root/data/findings/reviews/nvhpc-depend-inoutset-ignored.json +113 -0
  673. offload/_root/data/findings/reviews/nvhpc-dist-schedule-chunk-illegal-address.json +113 -0
  674. offload/_root/data/findings/reviews/nvhpc-managed-acc-shutdown-host-access.json +113 -0
  675. offload/_root/data/findings/reviews/nvhpc-parallel-if-in-target-nvvm-ice.json +113 -0
  676. offload/_root/data/findings/reviews/oop--afar-final-dealloc-device-link.json +132 -0
  677. offload/_root/data/findings/reviews/oop--afar-pdt-length-parameter-not-implemented.json +113 -0
  678. offload/_root/data/findings/reviews/oop--cce-class-is-device-link.json +130 -0
  679. offload/_root/data/findings/reviews/oop--cce-copy-alloc-component-section-fault.json +217 -0
  680. offload/_root/data/findings/reviews/oop--cce-copy-parent-to-component-tofrom-lost.json +217 -0
  681. offload/_root/data/findings/reviews/oop--cce-copy-second-member-section-lost.json +113 -0
  682. offload/_root/data/findings/reviews/oop--cce-element-component-map-lost.json +113 -0
  683. offload/_root/data/findings/reviews/oop--cce-final-dealloc-device-abort.json +208 -0
  684. offload/_root/data/findings/reviews/oop--cce-pdt-default-mapper-rejected.json +191 -0
  685. offload/_root/data/findings/reviews/oop--cce-polymorphic-dispatch-device-link.json +247 -0
  686. offload/_root/data/findings/reviews/oop--cce-section-of-element-component-overlap.json +113 -0
  687. offload/_root/data/findings/reviews/oop--cce-select-type-guard-not-taken.json +191 -0
  688. offload/_root/data/findings/reviews/oop--cce-udr-derived-type-unsupported.json +132 -0
  689. offload/_root/data/findings/reviews/oop--gcc-acc-parent-and-member-data-rejected.json +141 -0
  690. offload/_root/data/findings/reviews/oop--gcc-pdt-length-parameter-abort.json +141 -0
  691. offload/_root/data/findings/reviews/oop--gcc-polymorphic-dispatch-abort.json +217 -0
  692. offload/_root/data/findings/reviews/oop--gcc-vtab-not-marked-for-offload.json +113 -0
  693. offload/_root/data/findings/reviews/oop--nvhpc-copy-alloc-component-illegal-address.json +113 -0
  694. offload/_root/data/findings/reviews/oop--nvhpc-copy-pdt-length-parameter-illegal-address.json +236 -0
  695. offload/_root/data/findings/reviews/oop--nvhpc-named-mapper-rejected.json +113 -0
  696. offload/_root/data/findings/reviews/oop--nvhpc-polymorphic-dispatch-translate-failure.json +223 -0
  697. offload/_root/data/findings/reviews/oop--nvhpc-polymorphism-runtime-unsupported.json +126 -0
  698. offload/_root/data/findings/reviews/oop--nvhpc-type-bound-call-rejected.json +113 -0
  699. offload/_root/data/findings/reviews/oop--nvhpc-udr-derived-type-rejected.json +113 -0
  700. offload/_root/data/findings/reviews/stress--afar-c-lastprivate-combined-target-not-mapped.json +113 -0
  701. offload/_root/data/findings/reviews/stress--afar-target-scalar-implicit-firstprivate.json +175 -0
  702. offload/_root/data/findings/reviews/stress--cce-acc-declare-create-scalar-serial-firstprivate.json +113 -0
  703. offload/_root/data/findings/reviews/stress--cce-c-distribute-lastprivate-lost.json +113 -0
  704. offload/_root/data/findings/reviews/stress--cce-c-flto-offload-dropped.json +204 -0
  705. offload/_root/data/findings/reviews/stress--cce-ftn-cif-record-split-abort.json +113 -0
  706. offload/_root/data/findings/reviews/stress--cce-lastprivate-num-threads-collapse-simd.json +113 -0
  707. offload/_root/data/findings/reviews/stress--cce-teams-reduction-many-teams-wrap.json +113 -0
  708. offload/_root/data/findings/reviews/stress--cce21-declare-target-scalar-map-write-lost.json +113 -0
  709. offload/_root/data/findings/reviews/stress--gcc-declare-target-allocatable-component-ice.json +191 -0
  710. offload/_root/data/findings/reviews/stress--nvhpc-acc-derived-type-component-not-copied.json +126 -0
  711. offload/_root/data/findings/reviews/stress--nvhpc-c-lastprivate-teams-distribute-parallel-for-lost.json +113 -0
  712. offload/_root/data/findings/reviews/stress--nvhpc-declare-target-scalar-write-lost.json +113 -0
  713. offload/_root/data/findings/reviews/stress--nvhpc-lastprivate-combined-target-not-mapped.json +113 -0
  714. offload/_root/data/findings/reviews/stress--nvhpc-target-scalar-implicit-firstprivate.json +130 -0
  715. offload/_root/data/findings/reviews/target-update-sections-in-parallel.json +113 -0
  716. offload/_root/data/findings/stress/afar-c-lastprivate-combined-target-not-mapped.c +72 -0
  717. offload/_root/data/findings/stress/afar-target-scalar-implicit-firstprivate.f90 +47 -0
  718. offload/_root/data/findings/stress/cce-acc-declare-create-scalar-serial-firstprivate.f90 +43 -0
  719. offload/_root/data/findings/stress/cce-c-distribute-lastprivate-lost.c +52 -0
  720. offload/_root/data/findings/stress/cce-c-flto-offload-dropped.c +73 -0
  721. offload/_root/data/findings/stress/cce-ftn-cif-record-split-abort.f90 +109 -0
  722. offload/_root/data/findings/stress/cce-lastprivate-num-threads-collapse-simd.f90 +66 -0
  723. offload/_root/data/findings/stress/cce-teams-reduction-many-teams-wrap.f90 +55 -0
  724. offload/_root/data/findings/stress/cce21-declare-target-scalar-map-write-lost.f90 +58 -0
  725. offload/_root/data/findings/stress/controls/gcc-declare-target-allocatable-component-control.f90 +29 -0
  726. offload/_root/data/findings/stress/gcc-declare-target-allocatable-component-ice.f90 +61 -0
  727. offload/_root/data/findings/stress/nvhpc-acc-derived-type-component-not-copied.f90 +33 -0
  728. offload/_root/data/findings/stress/nvhpc-c-lastprivate-teams-distribute-parallel-for-lost.c +62 -0
  729. offload/_root/data/findings/stress/nvhpc-declare-target-scalar-write-lost.f90 +43 -0
  730. offload/_root/data/findings/stress/nvhpc-lastprivate-combined-target-not-mapped.f90 +60 -0
  731. offload/_root/data/findings/stress/nvhpc-target-scalar-implicit-firstprivate.f90 +41 -0
  732. offload/_root/data/findings/target-update-sections-in-parallel.f90 +53 -0
  733. offload/_root/data/issues.json +1 -0
  734. offload/_root/data/search.json +1 -0
  735. offload/_root/data/vendor/checks/build.py +288 -0
  736. offload/_version.py +24 -0
  737. offload/canuse.py +88 -0
  738. offload/cli.py +52 -0
  739. offload/data.py +85 -0
  740. offload/engine/__init__.py +0 -0
  741. offload/engine/acc_c_gen.py +415 -0
  742. offload/engine/acc_gen.py +1104 -0
  743. offload/engine/acc_rules.py +656 -0
  744. offload/engine/apps.py +804 -0
  745. offload/engine/baseline.py +324 -0
  746. offload/engine/c_gen.py +883 -0
  747. offload/engine/c_program.py +913 -0
  748. offload/engine/c_rules.py +503 -0
  749. offload/engine/campaign.py +1180 -0
  750. offload/engine/campaigns/__init__.py +2 -0
  751. offload/engine/campaigns/hecbench.py +153 -0
  752. offload/engine/campaigns/nested.py +76 -0
  753. offload/engine/campaigns/oop.py +61 -0
  754. offload/engine/canary.py +275 -0
  755. offload/engine/catalog.py +860 -0
  756. offload/engine/citations.py +532 -0
  757. offload/engine/clang_oracle.py +208 -0
  758. offload/engine/combos.py +234 -0
  759. offload/engine/confirm/__init__.py +2 -0
  760. offload/engine/confirm/backlog.py +159 -0
  761. offload/engine/confirm/claims.py +423 -0
  762. offload/engine/confirm/collectors.py +665 -0
  763. offload/engine/confirm/decisions.py +202 -0
  764. offload/engine/confirm/draft.py +195 -0
  765. offload/engine/confirm/engine.py +157 -0
  766. offload/engine/confirm/execute.py +382 -0
  767. offload/engine/confirm/facts.py +467 -0
  768. offload/engine/confirm/findings.py +617 -0
  769. offload/engine/confirm/forms.py +145 -0
  770. offload/engine/confirm/ingest.py +372 -0
  771. offload/engine/confirm/jobs.py +215 -0
  772. offload/engine/confirm/legality.py +323 -0
  773. offload/engine/confirm/machines.py +254 -0
  774. offload/engine/confirm/minimize.py +268 -0
  775. offload/engine/confirm/model.py +249 -0
  776. offload/engine/confirm/ports.py +107 -0
  777. offload/engine/confirm/programs.py +222 -0
  778. offload/engine/confirm/registry.py +151 -0
  779. offload/engine/confirm/regress.py +278 -0
  780. offload/engine/confirm/rules.py +565 -0
  781. offload/engine/confirm/store.py +63 -0
  782. offload/engine/confirm/triage.py +838 -0
  783. offload/engine/confirm/validate.py +607 -0
  784. offload/engine/confirm/witness.py +355 -0
  785. offload/engine/corpus_check.py +388 -0
  786. offload/engine/coverage.py +318 -0
  787. offload/engine/dataenv_gen.py +1318 -0
  788. offload/engine/dataenv_rules.py +278 -0
  789. offload/engine/devtemps.py +146 -0
  790. offload/engine/expected.py +2559 -0
  791. offload/engine/f2c.py +1783 -0
  792. offload/engine/finding_claims.py +330 -0
  793. offload/engine/finding_header.py +229 -0
  794. offload/engine/finding_rows.py +382 -0
  795. offload/engine/flang_oracle.py +299 -0
  796. offload/engine/fsource.py +620 -0
  797. offload/engine/fuzz.py +2455 -0
  798. offload/engine/fuzz_base.py +2016 -0
  799. offload/engine/fuzz_campaign.py +592 -0
  800. offload/engine/fuzz_exec.py +798 -0
  801. offload/engine/fuzz_min.py +1049 -0
  802. offload/engine/fuzz_profile.py +340 -0
  803. offload/engine/fuzz_report.py +1270 -0
  804. offload/engine/fuzz_steer.py +181 -0
  805. offload/engine/gate.py +1013 -0
  806. offload/engine/gate_report.py +711 -0
  807. offload/engine/gate_run.py +118 -0
  808. offload/engine/gate_stored.py +466 -0
  809. offload/engine/gen.py +1114 -0
  810. offload/engine/gen_templates.py +2583 -0
  811. offload/engine/grammar.py +695 -0
  812. offload/engine/harness.py +1472 -0
  813. offload/engine/harvest/__init__.py +3 -0
  814. offload/engine/harvest/c_runtime.py +465 -0
  815. offload/engine/harvest/checks.py +534 -0
  816. offload/engine/harvest/convert.py +784 -0
  817. offload/engine/harvest/f_runtime.py +668 -0
  818. offload/engine/harvest/filters.py +338 -0
  819. offload/engine/harvest/history.py +122 -0
  820. offload/engine/harvest/inventory.py +399 -0
  821. offload/engine/harvest2/__init__.py +5 -0
  822. offload/engine/harvest2/aomp.py +119 -0
  823. offload/engine/harvest2/examples.py +116 -0
  824. offload/engine/harvest2/gomp.py +679 -0
  825. offload/engine/harvest2/hand.py +150 -0
  826. offload/engine/harvest2/split.py +78 -0
  827. offload/engine/harvest_known/__init__.py +2 -0
  828. offload/engine/harvest_known/apps.py +65 -0
  829. offload/engine/harvest_known/cases.py +128 -0
  830. offload/engine/harvest_known/centres.py +184 -0
  831. offload/engine/harvest_known/forum.py +180 -0
  832. offload/engine/harvest_known/relnotes.py +42 -0
  833. offload/engine/harvest_known/textscan.py +107 -0
  834. offload/engine/hdrwrap.py +42 -0
  835. offload/engine/hecbench.py +568 -0
  836. offload/engine/hecbench_report.py +265 -0
  837. offload/engine/hecbench_run.py +483 -0
  838. offload/engine/idioms.py +1427 -0
  839. offload/engine/kbody_cites.py +81 -0
  840. offload/engine/kbody_emit.py +949 -0
  841. offload/engine/kbody_gen.py +795 -0
  842. offload/engine/legality_review.py +236 -0
  843. offload/engine/localcfg.py +58 -0
  844. offload/engine/malloc_dd.py +267 -0
  845. offload/engine/mutate.py +1933 -0
  846. offload/engine/nested_cites.py +196 -0
  847. offload/engine/nested_emit.py +789 -0
  848. offload/engine/nested_gen.py +1721 -0
  849. offload/engine/offload_scope.py +197 -0
  850. offload/engine/ompvv.py +624 -0
  851. offload/engine/oop_gen.py +2249 -0
  852. offload/engine/prerun.py +1435 -0
  853. offload/engine/program_source.py +739 -0
  854. offload/engine/provenance.py +103 -0
  855. offload/engine/reduce.py +2098 -0
  856. offload/engine/report.py +3374 -0
  857. offload/engine/root.py +33 -0
  858. offload/engine/rules.py +4256 -0
  859. offload/engine/run_matrix.py +325 -0
  860. offload/engine/site/__init__.py +1 -0
  861. offload/engine/site/columns.py +53 -0
  862. offload/engine/site/data.py +648 -0
  863. offload/engine/site/header.py +228 -0
  864. offload/engine/site/inputs.py +115 -0
  865. offload/engine/site/matrix.py +434 -0
  866. offload/engine/site/scrub.py +294 -0
  867. offload/engine/skeleton.py +121 -0
  868. offload/engine/spec_text.py +242 -0
  869. offload/engine/stress.py +4122 -0
  870. offload/engine/stress_c.py +1000 -0
  871. offload/engine/stress_exec.py +805 -0
  872. offload/engine/stress_min.py +248 -0
  873. offload/engine/stress_report.py +552 -0
  874. offload/engine/textclean.py +97 -0
  875. offload/engine/toolchains.py +1070 -0
  876. offload/engine/transforms.py +511 -0
  877. offload/engine/usage.py +1252 -0
  878. offload/engine/widen.py +673 -0
  879. offload/engine/widen_progs.py +2396 -0
  880. offload/issues.py +146 -0
  881. offtarget-0.1.0.dist-info/METADATA +86 -0
  882. offtarget-0.1.0.dist-info/RECORD +886 -0
  883. offtarget-0.1.0.dist-info/WHEEL +4 -0
  884. offtarget-0.1.0.dist-info/entry_points.txt +2 -0
  885. offtarget-0.1.0.dist-info/licenses/LICENSE +21 -0
  886. offtarget-0.1.0.dist-info/licenses/THIRD_PARTY_NOTICES.md +20 -0
@@ -0,0 +1,67 @@
1
+ ! Minimized by compliance.fuzz_min from fuzz seed 916 (fuzz-1).
2
+ ! toolchain: afar (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
3
+ ! failure: run_error (crash: SIGABRT)
4
+ ! expected: runs to completion (the host run does)
5
+ ! observed: device: fail crash: SIGABRT; host reference (afar/cce19) checksum=0
6
+ ! Legal OpenMP 5.2: offload.engine.rules accepts it (offload.engine.prerun.check, rerun: with the
7
+ ! race rule and the restriction checks); nvfortran/nvc 26.9 and 25.11 (NVHPC, not under test
8
+ ! here) compile it; the check's other witness, the AFAR flang front end, is the compiler under
9
+ ! test and is not counted; no gfortran or gcc is a legality witness.
10
+ program fuzz_prog
11
+ use omp_lib, only: omp_is_initial_device
12
+ implicit none
13
+ integer, parameter :: n = 48, m = 8
14
+ integer, allocatable :: o1(:, :)
15
+ integer :: i, j, r1a
16
+ integer(8) :: cs
17
+ allocate(o1(n, m))
18
+ o1 = 0
19
+ r1a = 65535
20
+ ! fuzz: kernels
21
+ !$omp target map(tofrom: r1a)
22
+ !$omp teams reduction(iand: r1a)
23
+ !$omp distribute
24
+ do i = n, 1, -1
25
+ !$omp parallel
26
+ !$omp do reduction(iand: r1a)
27
+ do j = 1, m
28
+ o1(i, j) = 0
29
+ r1a = iand(r1a, i)
30
+ end do
31
+ !$omp end do
32
+ !$omp end parallel
33
+ end do
34
+ !$omp end distribute
35
+ !$omp end teams
36
+ !$omp end target
37
+ ! fuzz: checksum
38
+ cs = 0
39
+ cs = modulo(cs * 31_8 + int(r1a, 8), 2147483629_8)
40
+ do j = 1, m
41
+ do i = 1, n
42
+ cs = modulo(cs * 31_8 + int(o1(i, j), 8), 2147483629_8)
43
+ end do
44
+ end do
45
+ print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
46
+ end program fuzz_prog
47
+ ! site:
48
+ ! title: amdflang at HSA_XNACK=1: a parallel region with a reduction (or atomic) nested in a distribute loop of a reducing teams
49
+ ! + region aborts
50
+ ! control: ../vendor/checks/src/fuzz/control/fuzz-916-afar-control.f90 the inner parallel region and its do construct removed
51
+ ! + (the team
52
+ ! + runs the
53
+ ! + j loop sequentially)
54
+ ! end site
55
+ ! spec (requirement): a reduction clause on a teams construct combines the private copy of every team into the original list
56
+ ! item at the end of the region, and a reduction clause on a worksharing loop requires the list item to be shared in the
57
+ ! enclosing parallel region and combines the threads' private copies, so nested reductions over the same variable are legal.
58
+ ! "For the teams construct, one or more private copies of each list item are created for the initial task of each team in the
59
+ ! league, as if the private clause had been used. For the loop construct, private copies are created and used in the construct
60
+ ! according to the description and restrictions in Section 5.3. At the end of a region that corresponds to a construct for which
61
+ ! the reduction clause was specified, the original list item is updated by combining its original value with the final value of
62
+ ! each of the private copies, using the combiner of the specified reduction-identifier." (5.2 §5.5.8 p.135 l.4-10)
63
+ ! "A list item that appears in a reduction clause on a worksharing construct must be shared in the parallel region to which a
64
+ ! corresponding worksharing region binds." (5.2 §5.5.8 p.135 l.26-27)
65
+ ! spec (this program): teams reduction(iand: r1a) containing a distribute loop whose body has a parallel region with a do
66
+ ! reduction(iand: r1a) is legal (r1a is shared in the parallel region); AFAR at HSA_XNACK=1 aborts at run time (SIGABRT), and
67
+ ! the program is correct when the inner parallel region and its do construct are removed.
@@ -0,0 +1,44 @@
1
+ ! Minimized by compliance.fuzz_min from fuzz seed 958 (fuzz-1).
2
+ ! toolchain: cce20 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
3
+ ! failure: ice (ice: INTERNAL COMPILER ERROR: "Mismatched last induction expression for last private operators" (v_mt_translate.c,
4
+ ! line 901, version <v>))
5
+ ! expected: compiles
6
+ ! observed: internal compiler error: ice: INTERNAL COMPILER ERROR: "Mismatched last induction expression for last private
7
+ ! operators" (/workspace/crayftn/pdgcs/v_mt_translate.c, line 901, version 6
8
+ ! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
9
+ ! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
10
+ ! compiler under test, gfortran or gcc is a legality witness.
11
+ ! also fails on: afar, cce19, cce21
12
+ module fuzz_mod
13
+ implicit none
14
+ contains
15
+ integer function g1(x, y)
16
+ !$omp declare target
17
+ integer, intent(in) :: x, y
18
+ g1 = mod(x, 1009)
19
+ end function g1
20
+ end module fuzz_mod
21
+ program fuzz_prog
22
+ use fuzz_mod, only: g1
23
+ implicit none
24
+ integer, parameter :: n = 100, m = 8
25
+ integer :: i, j, lp1
26
+ integer(8) :: cs
27
+ lp1 = 0
28
+ ! fuzz: kernels
29
+ !$omp target parallel do lastprivate(conditional: lp1)
30
+ do i = 1, n
31
+ if (mod(i, 3) == 0) lp1 = 0
32
+ end do
33
+ ! fuzz: checksum
34
+ cs = 0
35
+ cs = modulo(cs * 31_8 + int(lp1, 8), 2147483629_8)
36
+ print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
37
+ end program fuzz_prog
38
+ ! site:
39
+ ! title: ftn: internal compiler error for lastprivate(conditional:) on a parallel loop in a target region
40
+ ! control: ../vendor/checks/src/fuzz/control/fuzz-958-cce20-control.f90 the same loop on the host (parallel do instead of target
41
+ ! + parallel
42
+ ! + do)
43
+ ! same_as: fuzz/1540-afar
44
+ ! end site
@@ -0,0 +1,40 @@
1
+ ! Minimized by compliance.fuzz_min from fuzz seed 98 (fuzz-1).
2
+ ! toolchain: cce19 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
3
+ ! failure: wrong_code
4
+ ! expected: the host reference checksum (host reference (afar/cce20) checksum=1819295657)
5
+ ! observed: device checksum=0 ran_on_host=0
6
+ ! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
7
+ ! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
8
+ ! compiler under test, gfortran or gcc is a legality witness.
9
+ program fuzz_prog
10
+ implicit none
11
+ integer, parameter :: n = 100, m = 8
12
+ integer :: o1(n)
13
+ integer :: i, j
14
+ integer(8) :: cs
15
+ o1 = 0
16
+ ! fuzz: kernels
17
+ !$omp target map(tofrom: o1) defaultmap(firstprivate: aggregate)
18
+ do i = 1, n
19
+ o1(i) = 1
20
+ end do
21
+ !$omp end target
22
+ ! fuzz: checksum
23
+ cs = 0
24
+ do i = 1, n
25
+ cs = modulo(cs * 31_8 + int(o1(i), 8), 2147483629_8)
26
+ end do
27
+ print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
28
+ end program fuzz_prog
29
+ ! spec (requirement): explicit data-environment attribute clauses on a target construct determine the attributes of the
30
+ ! variables they name; the defaultmap rule is only consulted for variables without an explicit clause, so an array with
31
+ ! map(tofrom: o1) is mapped tofrom even when defaultmap(firstprivate: aggregate) is present.
32
+ ! "When specified, explicit data-environment attribute clauses on target directives determine the attributes for variables
33
+ ! referenced in a target construct." (5.2 §5.8.1 p.148 l.2-3)
34
+ ! "If a defaultmap clause is present for the category of the variable and specifies an implicit behavior other than default, the
35
+ ! data-mapping or data-sharing attribute is determined by that clause." (5.2 §5.8.1 p.148 l.18-20)
36
+ ! spec (this program): o1 is mapped explicitly with map(tofrom: o1) next to defaultmap(firstprivate: aggregate); the target
37
+ ! region stores 1 in every element and the host must see them; CCE 19 returns checksum 0 instead of the host's 1819295657.
38
+ ! site:
39
+ ! title: An array mapped tofrom next to defaultmap(firstprivate: aggregate) is not copied back (fuzz seed 98)
40
+ ! end site
@@ -0,0 +1,236 @@
1
+ # Minimized fuzz findings (campaign `c1`)
2
+
3
+ Each file is a program of the fuzz campaign `c1` (generator `fuzz-1`,
4
+ seeds 1-2400; data/reports/fuzz-c1.md) minimized by `offload.engine.fuzz_min`
5
+ while the failure persisted and the program stayed legal (offload.engine.rules,
6
+ gfortran -std=f2008 -fsyntax-only, AFAR flang's frontend; each
7
+ header now carries the two-witness line of a rerun of offload.engine.prerun.check,
8
+ and an AFAR finding does not count AFAR's own front end; gfortran and gcc are
9
+ no legality witnesses). The generated programs print
10
+ `ran_on_host=` in their RESULT line as a constant 0, or as `max(hfN, 0)` of a
11
+ flag nothing sets (e.g. `650-afar.f90`, `b3-54-afar.f90`): it is not a measured
12
+ device flag; the vendor packets drop the field. The header says
13
+ the failing toolchain, the failure, and the host reference
14
+ (OMP_TARGET_OFFLOAD=disabled runs of the toolchains whose host run of the
15
+ original program matched the generator's model). File name:
16
+ `<seed>-<toolchain>.f90`. Run: `-O2`, `HSA_XNACK=1`,
17
+ `OMP_TARGET_OFFLOAD=mandatory` (offload/engine/toolchains.py recipes).
18
+
19
+ Cross-check (results/fuzz/c1/crosscheck.json): every wrong-code and
20
+ run-error file compiled and run on all four toolchains, device and host.
21
+ In each case the toolchains named "unaffected" print the host reference on
22
+ the device too. Status: provisional; found 2026-10-19 on AFAR 24.0.0git
23
+ (drop 24.3.0) and CCE 19.0.0, 20.0.2, 21.0.3 (MI300A).
24
+
25
+ Reference check. Three files were minimized
26
+ against a reference inside the failing compiler's family: `87-afar.f90` and
27
+ `1936-afar.f90` against AFAR's own host run (no CCE compiled them), and
28
+ `1978-cce19.f90` against CCE 20/21. The minimizer now never takes such a
29
+ reference (`offload.engine.fuzz_min.trusted_refs`: another family's host run,
30
+ or sequential elision), keeps the generator's `mod`/`iand` bounds and
31
+ rejects a candidate whose elided gfortran `-ftrapv` build traps. Sequential
32
+ elision of the three minimized files (gfortran and amdflang, no OpenMP)
33
+ prints the header's reference checksum (748154768, 2147483504, 1879642524)
34
+ and the `-ftrapv` build runs without a trap, so all three findings hold.
35
+
36
+ ## Wrong code
37
+
38
+ | file(s) | toolchains | what |
39
+ |---|---|---|
40
+ | `536-cce19.f90`, `2014-cce19.f90`, `16-cce20.f90`, `1749-cce20.f90` | CCE 19, 20, 21 (AFAR correct) | the known guarded-loop bug (data/findings/cce19-target-parallel-guarded-loop.f90), rediscovered in four shapes: `target parallel` and `target` + `parallel`, writing an array or updating a mapped scalar (`r = r * 0`, `r = ior(r, i)`) in a sequential loop under `if (omp_get_thread_num() == 0)`. CCE's host runs are right |
41
+ | `14-cce20.f90` | CCE 19, 20, 21 | `lastprivate(lp1)` on `distribute parallel do simd` in `target teams map(tofrom: lp1)`: lp1 stays 0 on the device (expected the last iteration's value, 5.2 §5.4.5) |
42
+ | `98-cce19.f90`, `1978-cce19.f90` | CCE 19 only (host and device) | `defaultmap(firstprivate: aggregate)` with the array in an explicit `map(tofrom:)`/`map(always, from:)` clause: CCE 19 makes the array firstprivate, the writes are lost. defaultmap governs only implicitly determined attributes (5.2 §5.8.1, §5.8.7). CCE 20, 21 and AFAR are right |
43
+ | `1644-cce21.f90`, `775-cce21.f90` | CCE 21 only (host and device) | the CCE 21 defaultmap finding (data/findings/cce21-defaultmap-aggregate-flag.f90) for two more categories: `defaultmap(tofrom: allocatable)` and `defaultmap(tofrom: scalar)` on a target with `map(tofrom: r)`: the scalar's result is not copied back. In the campaign, 39 programs fail on CCE 21 and pass on CCE 20 with a defaultmap clause, 1 without |
44
+ | `650-afar.f90`, `700-afar.f90`, `87-afar.f90` | AFAR only | a `parallel` region with a `firstprivate` clause (of the distribute loop's index, or of a scalar) inside a `distribute` loop of `target teams`: the array writes of the nested worksharing loop are lost (all zero, or wrong elements) |
45
+ | `1936-afar.f90` | AFAR only (CCE: ICE) | `critical` in a worksharing loop in `target` + `parallel`, updating a mapped scalar with `ieor`: wrong value on the device |
46
+
47
+ ## Run errors
48
+
49
+ | file(s) | toolchains | what |
50
+ |---|---|---|
51
+ | `1131-afar.f90`, `158-afar.f90` | AFAR only | `map(close, present, ...)` on a target region after `target enter data` mapped the array: the runtime reports the item absent and aborts (HSA_XNACK=1) |
52
+ | `698-afar.f90`, `916-afar.f90` (a correction: `698-afar.f90` not reproducible on AFAR 24.3.0) | AFAR only | a `parallel` (or `parallel do`) with reductions nested in a `distribute` loop of `teams` that also reduces: SIGABRT on the device |
53
+ | `1505-cce20.f90` (a correction: not reproducible on the current CCE 20.0.2) | CCE 20 only | a `do reduction(min: r)` in `target` + `parallel` whose update calls a declare-target function: SIGSEGV on the device |
54
+
55
+ ## Internal compiler errors
56
+
57
+ | file | toolchains | message |
58
+ |---|---|---|
59
+ | `2224-cce19.f90` | CCE 19, 20, 21 | an empty `masked` construct in a target region: "unhandled construct type" (19) / "unhandled acc construct type" (20, 21); the same family as data/findings/cce19-target-parallel-single-ice.f90 (`single`, explicit tasks) |
60
+ | `958-cce20.f90` | CCE 19, 20, 21; AFAR (ICE too) | `lastprivate(conditional:)` on `target parallel do`: "Mismatched last induction expression for last private operators" |
61
+ | `1540-afar.f90` | AFAR | `lastprivate(conditional:)` on `target parallel do` with an empty loop body: "'omp.target' op SPMD kernel must capture an 'omp.loop_nest' operation", "verification of lowering to FIR failed" |
62
+ | `165-cce19.f90` | CCE 19, 20, 21; AFAR (ICE too) | `lastprivate(conditional:)` on a `parallel do` in a `target` with `depend`: "unhandled operator" |
63
+ | `591-cce19.f90` | CCE 19, 20, 21 | `teams distribute simd` with `lastprivate`, `private` and `nontemporal` in a target: "Unhandled contexts must be fixed!!!" |
64
+ | `1391-cce20.f90` | CCE 19, 20, 21 | `lastprivate` on a `do` (with an inner sequential loop) in `target` + `parallel`: "ACC - barrier/reset/protected last private not supported" |
65
+ | `2334-cce19.f90` | CCE 19, 20, 21 | `atomic` update `r = r * merge(-1, 1, mod(11, 13) == 0)` (a constant factor) in an orphaned `do` in `target`: "Couldn't find an atomic update statement" |
66
+
67
+ # Base-language campaigns (generator `fuzz-3`)
68
+
69
+ Campaigns `b1`-`b5` (300 programs each, one base-language group each:
70
+ data/reports/fuzz-base-language.md) and the control `b0` (no group: the
71
+ fuzz-2 programs of the same seeds). Files are named
72
+ `<run>-<seed>-<toolchain>.f90`. A program of these campaigns also passes
73
+ the definedness check (offload.engine.fuzz.check_defined); the minimizer
74
+ keeps it (each candidate must pass it) and never takes a reference from
75
+ the failing compiler's family. Files minimized before the minimizer
76
+ learned to shrink across files and kernel procedures were refined once
77
+ (`tools/campaigns/fuzz.py refine`). The "base-language?" column says whether the
78
+ reduced program still needs a base-language feature of its group (checked
79
+ by hand: the same program with the feature replaced by the plain integer
80
+ form).
81
+
82
+ ## Stage 1 (`b1`, group types)
83
+
84
+ | file | toolchains | what | base-language? |
85
+ |---|---|---|---|
86
+ | `b1-22-cce20.f90` | CCE 19, 20, 21 (AFAR rejects lastprivate on distribute) | `lastprivate(lp1)` on `distribute` in `target teams`, with a nested `parallel do lastprivate(lp1)`: lp1 stays 0 on the device (expected 8, the last iteration's value; reference: sequential elision). Same family as `14-cce20.f90` (lastprivate on a composite `distribute parallel do simd`) | no (no typed item left) |
87
+ | `b1-121-afar.f90` | AFAR | `teams reduction(iand: r) firstprivate(p1)` with an empty body in a target region: r becomes 0 (expected unchanged, 1048575). Without the firstprivate clause, or with `+` or `ior`, AFAR is right. New | no |
88
+ | `b1-183-afar.f90` | AFAR | `atomic` `min` update in a `parallel do` nested in a `teams distribute` loop: wrong value. A new member of the AFAR nested-parallel-in-distribute family (`650-afar.f90`, `700-afar.f90`, `87-afar.f90`) | no |
89
+ | `b1-231-afar.f90` | AFAR | `atomic` update of a `double precision` scalar in a `do` of a `parallel` nested in a `distribute` loop: SIGABRT. The same with an integer scalar, so the abort family of `698-afar.f90`/`916-afar.f90` without a reduction | no (integer too) |
90
+ | `b1-268-afar.f90` | AFAR | `parallel firstprivate(i)` in a `distribute` loop loses the writes of its worksharing loop (known family `650-afar.f90`), here with `nint` of a double precision array | no |
91
+
92
+ Not minimized: seed 111 on AFAR (the wrong code did not reproduce).
93
+ Base-language observations without a wrong answer: CCE 19 rejects
94
+ character arrays in target regions ("Unsupported OpenMP construct Fortran
95
+ character", 18 programs; CCE 20 and 21 run them), and once a private
96
+ allocatable ("Private of allocatables"). Typed outputs, typed reductions
97
+ (real, complex, logical, integer(1/2/8), exact by construction) and
98
+ typed reads agree on every toolchain that compiles them, apart from the
99
+ OpenMP-level failures above.
100
+ ## Stage 2 (`b2`, group derived)
101
+
102
+ | file | toolchains | what | base-language? |
103
+ |---|---|---|---|
104
+ | `b2-85-cce20.f90` | CCE 19, 20, 21 (AFAR right) | `map(tofrom: dr%o1)` (a component of a structure) with `defaultmap(firstprivate: aggregate)` on the same target: CCE makes `dr` firstprivate and the component's writes are lost (all zero). The component map gives `dr` an explicit data-mapping attribute (5.2 §5.8.1 treats a reference to a structure element as one to the structure; §13.8 requires every referenced element of a structure with a mapped element to be mapped), so defaultmap does not apply. The array form was a CCE 19-only finding (`98-cce19.f90`, fixed in CCE 20); for a structure component all three releases fail. Provisional: rests on reading a component map as an explicit attribute of the structure | yes (structure component) |
105
+ | `b2-68-afar.f90` | AFAR | `parallel if(parallel: lpar)` with `lpar = .false.` in a target region, holding a `loop reduction(+: r)` over a nested loop: r gets the contribution four times (70431 instead of 17631); in one of 16 gate runs (environment d, HSA_XNACK=1) AFAR printed 52831 (three times), so the count is not stable. With `lpar = .true.`, or `num_threads(1)` instead of the if clause, AFAR is right. New | no |
106
+ | `b2-183-afar.f90` | AFAR (HSA_XNACK=1 only) | `atomic` min update of a mapped scalar in a `parallel do` nested in `target teams distribute`, with an allocatable array written in the same loop: GPU memory access fault ("Write access to a read-only page") at HSA_XNACK=1 with THP on and off; correct at HSA_XNACK=0. Hand-reduced to `../afar-xnack1-atomic-min-nested-parallel.f90` (needs the allocatable write, the inner parallel do and the atomic min; an atomic add is correct). New (from the THP/memory-mode split) | no (the derived types are unused) |
107
+ | `b2-209-cce19.f90` | CCE 19, 20, 21 (AFAR does not implement it) | `lastprivate(conditional: lp1)` on `target simd` (implicitly `map(tofrom: lp1)`, 5.2 §17.2), assigned in the even iterations: lp1 stays 0 instead of 16 on the device and on the host fallback. Reference: sequential elision (the program was noncompliant until the analysis read structures; no host build prints the model value). The same failure as the disputed c1 seed 1283 (`target simd lastprivate(conditional:)` left at 0 on CCE 19-21). New | no (the structures are unused) |
108
+ | `b2-52-afar.f90` | AFAR | `parallel firstprivate(i)` in a `distribute` loop: the worksharing loop's writes are lost (known family `650-afar.f90`) | no |
109
+ | `b2-213-afar.f90` | AFAR | nested `parallel` + `do reduction(ieor: r)` in a `distribute` loop of `teams reduction(ieor: r)`: SIGABRT (known family `698-afar.f90`) | no |
110
+
111
+ Whole-structure, component and implicit maps of structures, nested
112
+ components and arrays of structures otherwise agree on every toolchain
113
+ that compiles them.
114
+
115
+ ## Stage 3 (`b3`, group alloc)
116
+
117
+ Two generator defects were found here and fixed before the findings
118
+ below (the 41 affected programs were rerun
119
+ and their earlier results discarded): a scalar dummy declared
120
+ `intent(in)` while its kernel mapped it `tofrom`, and a `present`
121
+ modifier on a pointer component (the data region maps the structure,
122
+ not the pointer's target, so error termination was right). The second
123
+ caused most CCE 19/20 run errors of the first pass; its reproducer
124
+ (`b3-199`) was withdrawn.
125
+
126
+ | file | toolchains | what | base-language? |
127
+ |---|---|---|---|
128
+ | `b3-61-cce20.f90`, `b3-250-cce20.f90` | CCE 19, 20, 21 (AFAR does not implement the construct, a correction: CCE 21.0.3 and 21.0.4 compile them and fail like 19/20, wrong checksum or illegal address on rerun) | `taskgroup task_reduction(+: r)` + `target in_reduction(+: r)` inside an internal subroutine, the target region writing a whole array that is mapped implicitly (an explicit-shape or assumed-shape dummy) with a host-associated loop variable: the writes do not reach the host (wrong checksum on the device and on the host fallback; the reduction variable is not even updated). Reference: sequential elision, which now reads internal subroutines (the programs were noncompliant before: no host build prints the model value). Related to `b3-197-cce19.f90` (the same construct in a procedure, SIGABRT there). New | yes (kernel in an internal subroutine) |
129
+ | `b3-278-cce19.f90` | CCE 19, 20, 21 (a correction: CCE 21.0.3 and 21.0.4 fail it too, hipErrorIllegalAddress at HSA_XNACK 0 and 1, on rerun; AFAR right) | a structure with an allocatable component, implicitly mapped by a `target teams` region that reads the component (deep copy by the default mapper, 5.2 §5.8.3), with a `reduction(max: r)`: SIGABRT | yes (allocatable component) |
130
+ | `b3-190-cce21.f90` | CCE 21 only | a kernel in an internal subroutine whose target construct has `map(to: zopt)` for an absent optional dummy (5.2 §3.2.1: the clause is ignored for it) and calls a declare target function with an `intent(inout)` scalar dummy: SIGSEGV. 19 of the 29 b3 programs with an absent optional in a map clause crash on CCE 21 | yes (absent optional dummy) |
131
+ | `b3-9-cce21.f90`, `b3-45-cce21.f90` | CCE 21 and AFAR | `map(to: zopt)` for an absent optional dummy in an internal subroutine (5.2 §3.2.1: the clause is ignored for it), on a target region whose body is a `teams loop` or a `parallel` + `do private` inside a sequential loop, with nothing else mapped: SIGSEGV on both. The `b3-190-cce21.f90` family; these shorter forms crash AFAR too. Reference: sequential elision (now reads internal subroutines and absent optional dummies). | yes (absent optional dummy) |
132
+ | `b3-54-afar.f90` | AFAR (CCE right) | an empty `target nowait depend(in: p1) depend(inout: dr, hf1, ic, o1)` followed by `taskwait`, where `dr` has an allocatable component, `ic` is allocatable and `o1` a pointer: SIGSEGV. New | yes (allocatable component, pointer in depend) |
133
+ | `b3-94-afar.f90` | AFAR | `parallel firstprivate(i)` + `do` in a `distribute` loop: the writes are lost (all zero; known family `650-afar.f90`, as `b2-52-afar.f90`). Reference: sequential elision. | no |
134
+ | `b3-197-cce19.f90` | CCE 19, 20, 21 (a correction: CCE 21.0.3 and 21.0.4 compile it and fail like 19/20, on rerun; no in_reduction link failure) | `taskgroup task_reduction` + `target in_reduction` inside an internal subroutine whose assumed-shape and pointer dummies the target maps implicitly: SIGABRT | yes (assumed-shape/pointer dummies in a procedure) |
135
+ | `b3-188-cce19.f90` | CCE 19, 20, 21 | `distribute parallel do schedule(dynamic) dist_schedule(static, 16)` in a `target teams` inside an internal subroutine: internal compiler error "Unexpected schedule" (v_mt_translate.c), a message no earlier campaign showed | not checked (the kernel procedure stayed) |
136
+ | `b3-9-afar.f90`, hand-reduced to `../afar-nontemporal-assumed-shape-ice.f90` | AFAR | `nontemporal(o1)` on a `simd` where `o1` is an assumed-shape dummy: "verification of lowering to FIR failed": `'omp.simd' op operand #0 must be variadic of OpenMP-compatible variable type, but got '!fir.box<!fir.array<?x?xi32>>'` | yes (assumed-shape dummy) |
137
+
138
+ Not minimized at first (no reference outside the failing compiler's
139
+ family: another family's host build or sequential elision, which did not
140
+ read internal procedures or structures then): seeds 9, 45 (CCE 21), 54,
141
+ 94 (AFAR), 271, 11 (CCE). Minimized 9, 45,
142
+ 54 and 94 (above); 271 (CCE 19) timed out on the device instead of
143
+ giving its wrong value when rerun, so it was not reproduced; 11 (CCE 20)
144
+ has a present modifier, which elision does not apply to. Withdrawn: `b3-92` (the minimizer had deleted the explicit map of the
145
+ pointer component `dr%pc`, which leaves its association undefined; the
146
+ minimizer now keeps the maps of structure elements and pointer
147
+ components).
148
+
149
+ ## Stage 4 (`b4`, group declare)
150
+
151
+ | file | toolchains | what | base-language? |
152
+ |---|---|---|---|
153
+ | `b4-86-cce19.f90` | CCE 19, 20 (CCE 21, AFAR right) | `map(mapper(mmap), tofrom: ms)` with a named `declare mapper(mmap: mt_t :: v) map(tofrom: v%a)` on `target teams`: SIGABRT. The same program with the default mapper (unnamed), or without the mapper modifier, runs. 8 of 13 b4 programs with a named mapper fail on CCE 20 | yes (declare mapper) |
154
+ | `../afar-udr-derived-type-link.f90` (hand-written from the b4 failures) | AFAR (CCE: not implemented) | `declare reduction(padd: pair_t: ...)` with an initializer on a derived type, used on `target teams distribute parallel do`: the device link fails (`ld.lld: undefined symbol: flang_rt_verbose_abort`, Fortran runtime I/O symbols referenced from `_FortranAInitialize` in the device image); 27 of the 39 b4 programs that use the reduction fail this way (the other 12 stop earlier at a not-yet-implemented message). CCE 19/20/21: "Unsupported OpenMP construct Calls -- $udr_..." | yes (user reduction on a derived type) |
155
+
156
+ | `b4-39-afar.f90` (a correction: not reproducible on AFAR 24.3.0) | AFAR | nested `parallel` + `do reduction(max: r) reduction(*: s)` in the `distribute` loop of `teams` with the same reductions, reading a structure `ms` of the module type with the default `declare mapper` (implicitly mapped): wrong value. The nested-reduction shape is the known AFAR abort family (`698-afar.f90`); whether the mapper matters was not checked (the reduction did not shrink further in 79 minutes) | not checked |
157
+
158
+ Not minimized (no reference outside the failing family): seeds 253
159
+ (CCE 19/20/21 wrong code) and 9 (AFAR run error).
160
+
161
+ Support gaps (compile rejections, not failures): CCE 19 and 20 reject the
162
+ 5.2 spelling `declare target enter(...)` (172 programs each; the
163
+ deprecated `to` works, so half the programs use it); CCE 19/20/21 do not
164
+ implement user-defined reductions in target regions.
165
+
166
+ ## Stage 5 (`b5`, group multitu)
167
+
168
+ Bundles of five to eight files (modules, a module chain, a submodule, an
169
+ external declare target function) compile one file at a time and link on
170
+ every toolchain; no failure needed the file split. The two AFAR wrong-code
171
+ programs specific to b5 (seeds 11, 167) could not be minimized: no CCE
172
+ build compiles them and sequential elision does not apply to bundles with
173
+ submodules.
174
+
175
+ # All groups combined (campaign `s1`, generator `fuzz-3`)
176
+
177
+ Campaign s1: seeds 1-10000 with all five base-language groups at once
178
+ (HSA_XNACK=1), and s1x0: seeds 1-2500 at HSA_XNACK=0; triage by the
179
+ confirmer (`tools/confirm.py batch`, agent decisions and spot checks in
180
+ catalog/triage_28.yaml; review data/reports/fuzz-s1.md). A finding is
181
+ promoted only for a confirmed compiler_bug verdict whose failure signature
182
+ no indexed finding has (offload/engine/confirm/findings.py); these are written
183
+ by hand from the confirmer's reductions, checked on all four toolchains
184
+ (results/t28_probe) and on Tioga's gfx90a twins, and indexed in
185
+ ../index.yaml (they do not use the fuzz_min header format). File name:
186
+ `s1-<seed>-<toolchain>.f90` (the representative cell).
187
+
188
+ | file | toolchains | what | base-language? |
189
+ |---|---|---|---|
190
+ | `s1-6888-cce21.f90` | CCE 19, 20, 21 (AFAR right); MI300A and MI250X | `target update to(a(1:n:2))`: ftn-1747 "The stride specified for array ... must not be greater than 1". Strided sections are allowed in motion clauses since 5.0 (5.2 §5.9 p.165, §B.4 p.634); only map requires contiguous storage. New | no |
191
+ | `s1-2370-cce21.f90` | CCE 19, 20, 21 (AFAR right); MI300A and MI250X | `parallel do default(none) shared(a) firstprivate(i)` nested in a `teams distribute` loop over i: ftn-1510 for I (ftn-1310 "must have a shared scope in the enclosing region" in other programs). firstprivate on the combined construct makes i shared on the parallel leaf (5.2 §17.2 p.340); without firstprivate(i) all compile. New | no |
192
+ | `s1-8634-cce21.f90` | CCE 19, 20, 21 (AFAR right); MI300A and MI250X | a character scalar in `target enter data map(to: xs)` / `target exit data map(release: xs)` (or `map(delete: xs)`): internal compiler error, optcg killed by signal 11 (ftn-2116); in larger programs the same statements give "Unhandled expression type in get base or dv mem" (seed 8634) or "unexpected type in TYPE_DEREF" (seed 2952). Character arrays compile. New | yes (character scalar) |
193
+ | `s1-2592-cce21.f90` | CCE 19, 20, 21 (AFAR right); MI300A and MI250X | `taskgroup task_reduction(*: r)` + `target in_reduction(*: r)` reading `ichar(xs(1:1))` of a character dummy: internal compiler error "Should never reach this code (doehmke)" (v_mt_util_misc.c). With a constant instead of the substring it compiles. New | yes (character dummy) |
194
+ | `s1-3463-cce21.f90` | CCE 19, 20, 21 (AFAR right) | target construct in an internal subroutine mapping components of a structure dummy (`dr%a`, `dr%nd%k(1:n)`) with host-associated variables: internal compiler error "Error getting dope vector information" (v_dope_utl.c). Reduced by the confirmer and by line deletion to 106 lines, then by clause and list-item deletion to 49; a hand-written smaller form compiles. New | yes (structure dummy components) |
195
+ | `s1-6085-cce21.f90` | CCE 20, 21 (CCE 19 does not implement user reductions on the device) | `target teams loop map(always, tofrom: dr%pc) ... reduction(padd: rp2a)` (a pointer component, a declare reduction of a derived type): optcg killed by signal 6 (ftn-2116). Reduced to 130 lines, then by clause and list-item deletion to 56 (two empty target teams regions, one with the user reduction); hand-written smaller forms do not reproduce it. New | yes (pointer component, derived-type reduction) |
196
+ | `s1-9914-cce19.f90` | CCE 19 only (CCE 20, 21, AFAR compile in seconds) | the compile does not finish (over 300 s); target maps of structure components with thread_limit, a depend on a declare target array section, a default declare mapper. Fix: reduced to 33 lines (an empty target with thread_limit(1), an empty target with depend(out: go2(:)) on a declare target array, a submodule procedure). 93 CCE 19 compile timeouts in s1/s1x0. New | yes (structure components, module array) |
197
+ | `s1-91-cce21.f90` | CCE 21 (CCE 19, 20 in the campaign; AFAR right) | ftn-1510 "must have its data scope explicitly declared because DEFAULT(NONE) was specified" for a variable of a target region in an internal subroutine with no default clause; the default(none) is on an empty parallel in a sibling internal subroutine. Related to `../cce21-linear-modifier-default-none.f90` by its message only (no linear clause; a different construct). New | yes (internal subroutines) |
198
+ | `s1-6760-cce20.f90` (hand-written) | CCE 20 (CCE 19 unsupported: no claim; CCE 21, AFAR right) | `declare target enter(g)` on a module variable: ftn-1725 "INDIRECT, LINK, TO or DEVICE_TYPE was expected but found E". The CCE 20.0.0 release notes claim the new 5.2 declare target syntax, whose only new form is enter: compiler_bug for 7,099 CCE 20 cells of s1/s1x0 (R11 and decision D9). New | no |
199
+ | `s1-4339-afar.f90` (hand-written from the reduction) | AFAR at HSA_XNACK=1 only (CCE 19/20/21 right; AFAR right at HSA_XNACK=0) | `target map(close, tofrom: ia) map(tofrom: o1)` where ia is an allocatable dummy the region does not use and the region reads another assumed-shape dummy: SIGABRT (in the campaign "OFFLOAD ERROR: memory access fault ... Write access to a read-only page"). Without close, with an explicit-shape ia, or reading ia instead, AFAR is right. Representative of the s1 group "AFAR memory access fault" (59 cells; the group may hold other defects, so its cells are not linked as instances). New | no |
200
+ | `s1-7882-cce20.f90` | CCE 19, 20, 21 (AFAR right), both modes | `target map(present, tofrom: xc)` for an allocatable character(len=4) array mapped by the enclosing `target data`: exit status 1, "Variable not found in present table". Fix: reduced by hand to 23 lines (with a fixed-size array only CCE 19 fails). Related to `s1-8634-cce21.f90` (character scalar ICE): another construct and symptom. New | yes (character array) |
201
+ | `s1-9443-afar.f90` | AFAR at HSA_XNACK=1 only | empty `target map(close, present, to: xk1)` inside a `target data` that maps xk1: SIGABRT, present lookup fails ("getTargetPointer returned null pointer ('present' map type modifier)"); AFAR is right at HSA_XNACK=0, CCE 19/20/21 right (the 82-line reduction also failed on CCE 19). Fix: reduced by hand to 15 lines; without `close` AFAR passes, so it is the known close + present abort of `158-afar.f90` / `1131-afar.f90` (after `target enter data` there). Known | no |
202
+
203
+ Known findings the campaign reproduces on Tioga MI250X (new information):
204
+ `b2-209-cce19.f90` (CCE `target simd lastprivate(conditional:)` loses the
205
+ value): CCE 19, 20, 21 on gfx90a give lp=0 (data/evidence/dataenv_probe/
206
+ lpcond_simd_up.f90; mapping lp explicitly, or lastprivate without the
207
+ modifier, is correct on every CCE release, so the lost implicit
208
+ `map(tofrom)` of a conditional lastprivate item is the defect).
209
+
210
+ Run-time representatives reduced with `tools/campaigns/fuzz.py minimize-one` that are
211
+ known findings: s1 seed 3359 (CCE 19-21 wrong code: taskgroup
212
+ task_reduction + target in_reduction in an internal subroutine, the
213
+ `b3-61-cce20.f90`/`b3-250-cce20.f90` family), seed 7031 (CCE 21 wrong code
214
+ with defaultmap(alloc: aggregate) and a map(tofrom) scalar,
215
+ `../cce21-defaultmap-aggregate-flag.f90`), seed 8131 (AFAR SIGSEGV on an
216
+ empty target nowait with depend, `b3-54-afar.f90`), seed 8411 (AFAR
217
+ SIGABRT, "Failed to process data before launching the kernel", for
218
+ map(to: zopt) of an absent optional dummy, the `b3-9-cce21.f90` family).
219
+
220
+ ## GCC 16.2 (coverage parity, 2026-10-28)
221
+
222
+ A 5000-program sample of the campaigns (catalog/parity_fuzz_sample.json: per generator version and base groups, chosen by
223
+ seed before any run) ran on gcc_g90 (MI250X) and gcc_sm80 (A100) with separate memory (results/parity/<machine>/). The
224
+ minimizer ran on Tioga (`tools/campaigns/fuzz.py minimize --xnack 0 --also afar_g90,...`; its legality checks through AFAR's front end
225
+ from /p/vast1), never on wingtip (no AFAR there), so failures seen on the A100 only are not minimized. Files of this
226
+ campaign: `par-<stratum>-<seed>-<toolchain>.f90` (minimized) and `gcc-*.f90` (hand reductions, indexed in index.yaml);
227
+ data/findings/LOG.md lists them.
228
+
229
+ NVHPC 25.11 and 26.9 ran the whole sample too (2026-11-03: strata c1 and s1 completed, 745 and 3081 programs per release;
230
+ separate memory, `tools/jobs/run_parity_wingtip.sh fuzz:<stratum>:nvhpc+nvhpc269`), and every failing cell went through the gate
231
+ (a, b, d on one GPU, (c) on another). s1 is 97% rejections of the `declare` base group's spellings (declare target enter,
232
+ declare mapper and reduction, `mod` in initialization expressions). The failures that are not rejections are CUDA illegal
233
+ address and misaligned address run errors, timeouts, wrong values and three known compile failures (Missing branch target,
234
+ Character local variable, fort1 signal 11), plus one new internal compiler error ("offset should not be overridden",
235
+ seed 9895). None is reduced yet; the clusters and candidates are in the coverage-parity report.
236
+
@@ -0,0 +1,47 @@
1
+ ! Minimized by compliance.fuzz_min from fuzz seed 121 (fuzz-3).
2
+ ! toolchain: afar (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
3
+ ! failure: wrong_code
4
+ ! expected: the host reference checksum (host reference (cce19) checksum=1048575)
5
+ ! observed: device checksum=0 ran_on_host=0
6
+ ! Legal OpenMP 5.2: offload.engine.rules accepts it (offload.engine.prerun.check, rerun: with the
7
+ ! race rule and the restriction checks); nvfortran/nvc 26.9 and 25.11 (NVHPC, not under test
8
+ ! here) compile it; the check's other witness, the AFAR flang front end, is the compiler under
9
+ ! test and is not counted; no gfortran or gcc is a legality witness.
10
+ module fuzz_mod
11
+ implicit none
12
+ contains
13
+ end module fuzz_mod
14
+ program fuzz_prog
15
+ use omp_lib, only: omp_is_initial_device
16
+ implicit none
17
+ integer, parameter :: n = 24, m = 3
18
+ integer :: i, j, p1, r1a
19
+ integer(8) :: cs
20
+ p1 = -4
21
+ r1a = 1048575
22
+ ! fuzz: kernels
23
+ !$omp target map(tofrom: r1a)
24
+ !$omp teams reduction(iand: r1a) firstprivate(p1)
25
+ !$omp end teams
26
+ !$omp end target
27
+ ! fuzz: checksum
28
+ cs = 0
29
+ cs = modulo(cs * 31_8 + int(r1a, 8), 2147483629_8)
30
+ print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
31
+ end program fuzz_prog
32
+ ! site:
33
+ ! title: amdflang: teams reduction(iand: r) with firstprivate and an empty body sets r to 0
34
+ ! control: ../vendor/checks/src/fuzz/control/fuzz-b1-121-afar-control.f90 firstprivate(p1) removed from the teams construct
35
+ ! end site
36
+ ! spec (requirement): each private copy of a reduction list item is initialized with the initializer value of the reduction
37
+ ! identifier (for iand, all bits on), and at the end of the region the original list item is combined with the private copies,
38
+ ! so an empty teams region leaves the original value unchanged.
39
+ ! "The reduction clause is a reduction scoping clause and a reduction participating clause, as described in Section 5.5.6 and
40
+ ! Section 5.5.7. For each list item, a private copy is created for each implicit task or SIMD lane and is initialized with the
41
+ ! initializer value of the reduction-identifier. After the end of the region, the original list item is updated with the values
42
+ ! of the private copies using the combiner associated with the reduction-identifier." (5.2 §5.5.8 p.134 l.20-24)
43
+ ! "At the end of a region that corresponds to a construct for which the reduction clause was specified, the original list item
44
+ ! is updated by combining its original value with the final value of each of the private copies, using the combiner of the
45
+ ! specified reduction-identifier." (5.2 §5.5.8 p.135 l.7-10)
46
+ ! spec (this program): teams reduction(iand: r1a) firstprivate(p1) with an empty body must leave r1a at 1048575 (iand with the
47
+ ! identity); AFAR returns 0, and the program is correct when firstprivate(p1) is removed.
@@ -0,0 +1,55 @@
1
+ ! Minimized by compliance.fuzz_min from fuzz seed 183 (fuzz-3).
2
+ ! toolchain: afar (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
3
+ ! failure: wrong_code
4
+ ! expected: the host reference checksum (host reference (cce19/elision) checksum=1123737439)
5
+ ! observed: device checksum=1118127074 ran_on_host=0
6
+ ! Legal OpenMP 5.2: offload.engine.rules accepts it (offload.engine.prerun.check, rerun: with the
7
+ ! race rule and the restriction checks); nvfortran/nvc 26.9 and 25.11 (NVHPC, not under test
8
+ ! here) compile it; the check's other witness, the AFAR flang front end, is the compiler under
9
+ ! test and is not counted; no gfortran or gcc is a legality witness.
10
+ module fuzz_mod
11
+ implicit none
12
+ contains
13
+ end module fuzz_mod
14
+ program fuzz_prog
15
+ use omp_lib, only: omp_is_initial_device
16
+ implicit none
17
+ integer, parameter :: n = 24, m = 2
18
+ integer :: ic(n, m)
19
+ integer, allocatable :: o1(:, :)
20
+ integer :: i, j, r1a
21
+ integer(8) :: cs
22
+ allocate(o1(n, m))
23
+ do j = 1, m
24
+ do i = 1, n
25
+ ic(i, j) = mod((i + 1 * j) * 20 + 50, 30011) - 2834
26
+ end do
27
+ end do
28
+ o1 = 0
29
+ r1a = 7
30
+ ! fuzz: kernels
31
+ !$omp target teams distribute map(tofrom: r1a)
32
+ do i = 1, n
33
+ !$omp parallel do
34
+ do j = 1, m
35
+ o1(i, j) = iand(ic(i, (mod(((j * 3) + 1), m) + 1)), 255)
36
+ !$omp atomic
37
+ r1a = min(r1a, mod(i, n))
38
+ end do
39
+ end do
40
+ !$omp end target teams distribute
41
+ ! fuzz: checksum
42
+ cs = 0
43
+ cs = modulo(cs * 31_8 + int(r1a, 8), 2147483629_8)
44
+ do j = 1, m
45
+ do i = 1, n
46
+ cs = modulo(cs * 31_8 + int(o1(i, j), 8), 2147483629_8)
47
+ end do
48
+ end do
49
+ print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
50
+ end program fuzz_prog
51
+ ! site:
52
+ ! title: amdflang at HSA_XNACK=1: a parallel region with a reduction (or atomic) nested in a distribute loop of a reducing teams
53
+ ! + region aborts
54
+ ! same_as: fuzz/916-afar
55
+ ! end site
@@ -0,0 +1,38 @@
1
+ ! Minimized by compliance.fuzz_min from fuzz seed 22 (fuzz-3).
2
+ ! toolchain: cce20 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
3
+ ! failure: wrong_code
4
+ ! expected: the host reference checksum (host reference (elision) checksum=8)
5
+ ! observed: device checksum=0 ran_on_host=0
6
+ ! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
7
+ ! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
8
+ ! compiler under test, gfortran or gcc is a legality witness.
9
+ ! also fails on: cce19, cce21
10
+ program fuzz_prog
11
+ use omp_lib, only: omp_get_default_device, omp_get_thread_num, omp_is_initial_device
12
+ implicit none
13
+ integer, parameter :: n = 32, m = 3
14
+ integer :: i, j, p2, lp1
15
+ integer(8) :: cs
16
+ p2 = 8
17
+ lp1 = 0
18
+ ! fuzz: kernels
19
+ !$omp target teams map(tofrom: lp1)
20
+ !$omp distribute lastprivate(lp1)
21
+ do i = 1, n
22
+ !$omp parallel do lastprivate(lp1)
23
+ do j = m, 1, -1
24
+ lp1 = p2
25
+ end do
26
+ !$omp end parallel do
27
+ end do
28
+ !$omp end distribute
29
+ !$omp end target teams
30
+ ! fuzz: checksum
31
+ cs = 0
32
+ cs = modulo(cs * 31_8 + int(lp1, 8), 2147483629_8)
33
+ print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
34
+ end program fuzz_prog
35
+ ! site:
36
+ ! title: craycc/ftn: lastprivate on distribute in a target region loses the final value, even with an explicit map
37
+ ! same_as: stress/cce-c-distribute-lastprivate-lost
38
+ ! end site
@@ -0,0 +1,56 @@
1
+ ! Minimized by compliance.fuzz_min from fuzz seed 231 (fuzz-3).
2
+ ! toolchain: afar (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
3
+ ! failure: run_error (crash: SIGABRT)
4
+ ! expected: runs to completion (the host run does)
5
+ ! observed: device: fail crash: SIGABRT; host reference (cce20/elision) checksum=1450123117
6
+ ! Legal OpenMP 5.2: offload.engine.rules accepts it (offload.engine.prerun.check, rerun: with the
7
+ ! race rule and the restriction checks); nvfortran/nvc 26.9 and 25.11 (NVHPC, not under test
8
+ ! here) compile it; the check's other witness, the AFAR flang front end, is the compiler under
9
+ ! test and is not counted; no gfortran or gcc is a legality witness.
10
+ module fuzz_mod
11
+ implicit none
12
+ contains
13
+ end module fuzz_mod
14
+ program fuzz_prog
15
+ use omp_lib, only: omp_is_initial_device
16
+ implicit none
17
+ integer, parameter :: n = 16, m = 3
18
+ integer, allocatable :: o1(:, :)
19
+ double precision :: r1b
20
+ integer :: i, j
21
+ integer(8) :: cs
22
+ allocate(o1(n, m))
23
+ o1 = 0
24
+ r1b = (-21.0d0)
25
+ ! fuzz: kernels
26
+ !$omp target map(tofrom: r1b)
27
+ !$omp teams
28
+ !$omp distribute
29
+ do i = n, 1, -1
30
+ !$omp parallel
31
+ !$omp do
32
+ do j = 1, m
33
+ o1(i, j) = 0
34
+ !$omp atomic
35
+ r1b = r1b + mod(i, 97)
36
+ end do
37
+ !$omp end parallel
38
+ end do
39
+ !$omp end distribute
40
+ !$omp end teams
41
+ !$omp end target
42
+ ! fuzz: checksum
43
+ cs = 0
44
+ cs = modulo(cs * 31_8 + int(r1b * 64, 8), 2147483629_8)
45
+ do j = 1, m
46
+ do i = 1, n
47
+ cs = modulo(cs * 31_8 + int(o1(i, j), 8), 2147483629_8)
48
+ end do
49
+ end do
50
+ print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
51
+ end program fuzz_prog
52
+ ! site:
53
+ ! title: amdflang at HSA_XNACK=1: a parallel region with a reduction (or atomic) nested in a distribute loop of a reducing teams
54
+ ! + region aborts
55
+ ! same_as: fuzz/916-afar
56
+ ! end site