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.
- offload/__init__.py +10 -0
- offload/__main__.py +5 -0
- offload/_bundle.py +74 -0
- offload/_root/catalog/acc/claims.yaml +197 -0
- offload/_root/catalog/acc/clauses.yaml +391 -0
- offload/_root/catalog/acc/no_oracle.yaml +89 -0
- offload/_root/catalog/acc/out_of_scope.yaml +17 -0
- offload/_root/catalog/acc/rules.yaml +433 -0
- offload/_root/catalog/acc/semantic_atoms.yaml +27 -0
- offload/_root/catalog/acc/skeleton.yaml +1567 -0
- offload/_root/catalog/acc/spec_overrides.yaml +72 -0
- offload/_root/catalog/later_forms.yaml +76 -0
- offload/_root/catalog/machines.yaml +218 -0
- offload/_root/catalog/omp/claims.yaml +2047 -0
- offload/_root/catalog/omp/clauses.yaml +914 -0
- offload/_root/catalog/omp/derivations.yaml +177 -0
- offload/_root/catalog/omp/memory_modes.yaml +40 -0
- offload/_root/catalog/omp/no_oracle.yaml +373 -0
- offload/_root/catalog/omp/omp50_delta.yaml +377 -0
- offload/_root/catalog/omp/out_of_scope.yaml +64 -0
- offload/_root/catalog/omp/port_equivalence.yaml +352 -0
- offload/_root/catalog/omp/rules.yaml +3131 -0
- offload/_root/catalog/omp/rules_coverage.yaml +9939 -0
- offload/_root/catalog/omp/semantic_atoms.yaml +34 -0
- offload/_root/catalog/omp/skeleton.yaml +9181 -0
- offload/_root/catalog/omp/spec_overrides.yaml +932 -0
- offload/_root/catalog/toolchains.yaml +472 -0
- offload/_root/catalog/vendor_claims_generic.yaml +40925 -0
- offload/_root/data/canuse/b.json +1 -0
- offload/_root/data/canuse/c.json +1 -0
- offload/_root/data/canuse/columns.json +1 -0
- offload/_root/data/canuse/d.json +1 -0
- offload/_root/data/canuse/f.json +1 -0
- offload/_root/data/canuse/index.json +1 -0
- offload/_root/data/canuse/p.json +1 -0
- offload/_root/data/compilers/afar.json +1 -0
- offload/_root/data/compilers/cce19.json +1 -0
- offload/_root/data/compilers/cce20.json +1 -0
- offload/_root/data/compilers/cce21.json +1 -0
- offload/_root/data/compilers/cce21_4.json +1 -0
- offload/_root/data/compilers/gcc.json +1 -0
- offload/_root/data/compilers/gcc_sm80.json +1 -0
- offload/_root/data/compilers/nvhpc.json +1 -0
- offload/_root/data/compilers/nvhpc269.json +1 -0
- offload/_root/data/findings/AUTHORING.md +107 -0
- offload/_root/data/findings/README.md +33 -0
- offload/_root/data/findings/afar-c-error-directive-in-target-link.c +37 -0
- offload/_root/data/findings/afar-c-lastprivate-distribute-parallel-for-small-type.c +56 -0
- offload/_root/data/findings/afar-c-teams-distribute-reduction-first-team.c +59 -0
- offload/_root/data/findings/afar-c-update-iterator-copy-mode.c +45 -0
- offload/_root/data/findings/afar-c-xnack1-target-is-present.c +31 -0
- offload/_root/data/findings/afar-cce19-character-defaultmap.f90 +27 -0
- offload/_root/data/findings/afar-cce19-task-in-target-ice.f90 +23 -0
- offload/_root/data/findings/afar-clang-requires-device-safesync-hang.c +24 -0
- offload/_root/data/findings/afar-flang-firstprivate-map-two-targets.f90 +34 -0
- offload/_root/data/findings/afar-flang-loop-bind-teams-reduction.f90 +27 -0
- offload/_root/data/findings/afar-flang-task-reduction-max.f90 +31 -0
- offload/_root/data/findings/afar-flang-thread-limit-target-parallel-do.f90 +22 -0
- offload/_root/data/findings/afar-linear-ref-omp50.f90 +29 -0
- offload/_root/data/findings/afar-loop-bind-thread-in-teams.f90 +44 -0
- offload/_root/data/findings/afar-nontemporal-assumed-shape-ice.f90 +38 -0
- offload/_root/data/findings/afar-udr-derived-type-link.f90 +41 -0
- offload/_root/data/findings/afar-xnack1-atomic-min-nested-parallel.f90 +53 -0
- offload/_root/data/findings/afar-xnack1-present-not-enforced.f90 +36 -0
- offload/_root/data/findings/afar-xnack1-target-is-present.f90 +47 -0
- offload/_root/data/findings/apps/afar-cce-teams-private-array-nested-parallel-wrong.f90 +100 -0
- offload/_root/data/findings/apps/cce20-device-link-infer-address-spaces-crash.f90 +159 -0
- offload/_root/data/findings/apps/cce21-device-link-agpr-copy-mfma-assert.f90 +343 -0
- offload/_root/data/findings/apps/cce21-private-array-loaded-subscript-wrong.f90 +113 -0
- offload/_root/data/findings/apps/controls/bubble-simple-rddot.f90 +284 -0
- offload/_root/data/findings/apps/controls/bubble-two-substeps.f90 +287 -0
- offload/_root/data/findings/apps/controls/cbc-inline.f90 +97 -0
- offload/_root/data/findings/apps/controls/cbc-integers.f90 +91 -0
- offload/_root/data/findings/apps/controls/cbc-only-density.f90 +97 -0
- offload/_root/data/findings/apps/controls/cbc-only-velocity.f90 +97 -0
- offload/_root/data/findings/apps/controls/gcc-acc-c-tile-control.c +26 -0
- offload/_root/data/findings/apps/controls/gcc-acc-tile-control.f90 +29 -0
- offload/_root/data/findings/apps/controls/private-array-subscript-probes.f90 +45 -0
- offload/_root/data/findings/apps/controls/teams-private-array-read-par.f90 +31 -0
- offload/_root/data/findings/apps/controls/teams-private-array-seq.f90 +30 -0
- offload/_root/data/findings/apps/controls/teams-private-array-shared.f90 +34 -0
- offload/_root/data/findings/apps/controls/teams-private-array-split.f90 +36 -0
- offload/_root/data/findings/apps/controls/teams-private-array-write-par.f90 +31 -0
- offload/_root/data/findings/apps/gcc-acc-c-tile-partial-tiles-wrong.c +60 -0
- offload/_root/data/findings/apps/gcc-acc-tile-partial-tiles-wrong.f90 +64 -0
- offload/_root/data/findings/catalog/afar-c-complex-reduction-link.c +66 -0
- offload/_root/data/findings/catalog/afar-c-critical-hint-link.c +68 -0
- offload/_root/data/findings/catalog/afar-c-ordered-doacross-link.c +62 -0
- offload/_root/data/findings/catalog/afar-c-reduction-task-link.c +81 -0
- offload/_root/data/findings/catalog/afar-flang-absent-optional-target-crash.f90 +76 -0
- offload/_root/data/findings/catalog/afar-flang-critical-target-parallel-wrong.f90 +74 -0
- offload/_root/data/findings/catalog/afar-flang-dist-schedule-chunk.f90 +80 -0
- offload/_root/data/findings/catalog/afar-flang-linear-parallel-ice.f90 +68 -0
- offload/_root/data/findings/catalog/afar-flang-named-critical-link.f90 +67 -0
- offload/_root/data/findings/catalog/afar-flang-ordered-wrong.f90 +78 -0
- offload/_root/data/findings/catalog/afar-flang-reduction-minus-rejected.f90 +77 -0
- offload/_root/data/findings/catalog/afar-flang-reduction-task-ice.f90 +68 -0
- offload/_root/data/findings/catalog/afar-flang-sections-in-target-ice.f90 +67 -0
- offload/_root/data/findings/catalog/afar-flang-workdistribute-ice.f90 +71 -0
- offload/_root/data/findings/catalog/c-allocate-const-mem-firstprivate-wrong.c +79 -0
- offload/_root/data/findings/catalog/cce-acc-allocate-in-compute-crash.f90 +65 -0
- offload/_root/data/findings/catalog/cce-acc-character-dummy-routine-ice.f90 +81 -0
- offload/_root/data/findings/catalog/cce-acc-loop-seq-in-routine-wrong.f90 +81 -0
- offload/_root/data/findings/catalog/cce-acc-stop-in-compute-crash.f90 +62 -0
- offload/_root/data/findings/catalog/cce-allocators-stack-ice.f90 +81 -0
- offload/_root/data/findings/catalog/cce-atomic-default-mem-order-acquire-release-rejected.f90 +61 -0
- offload/_root/data/findings/catalog/cce-c-allocate-align-link.c +83 -0
- offload/_root/data/findings/catalog/cce-c-allocate-allocator-modifier-rejected.c +77 -0
- offload/_root/data/findings/catalog/cce-c-device-type-directive-name-ice.c +70 -0
- offload/_root/data/findings/catalog/cce-c-dist-schedule-chunk.c +81 -0
- offload/_root/data/findings/catalog/cce-c-f-pointer-device-link.f90 +70 -0
- offload/_root/data/findings/catalog/cce-c-lastprivate-parallel-in-seq-loop-wrong.c +64 -0
- offload/_root/data/findings/catalog/cce-c-long-double-ice.c +61 -0
- offload/_root/data/findings/catalog/cce-c-map-iterator-ice.c +92 -0
- offload/_root/data/findings/catalog/cce-c-motion-iterator-rejected.c +68 -0
- offload/_root/data/findings/catalog/cce-c-ordered-doacross-link.c +64 -0
- offload/_root/data/findings/catalog/cce-c-ordered-link.c +77 -0
- offload/_root/data/findings/catalog/cce-c-recursive-function-ice.c +62 -0
- offload/_root/data/findings/catalog/cce-c-reduction-inscan-ice.c +67 -0
- offload/_root/data/findings/catalog/cce-c-reduction-task-link.c +73 -0
- offload/_root/data/findings/catalog/cce-c-sections-in-target-wrong.c +70 -0
- offload/_root/data/findings/catalog/cce-c-single-masked-task-link.c +66 -0
- offload/_root/data/findings/catalog/cce-c-task-in-target-link.c +75 -0
- offload/_root/data/findings/catalog/cce-c-uses-allocators-traits-rejected.c +71 -0
- offload/_root/data/findings/catalog/cce-flang-allocate-const-mem-ice.f90 +67 -0
- offload/_root/data/findings/catalog/cce-flang-allocate-in-target-crash.f90 +68 -0
- offload/_root/data/findings/catalog/cce-flang-lastprivate-parallel-in-seq-loop-wrong.f90 +83 -0
- offload/_root/data/findings/catalog/cce-flang-stop-in-target-crash.f90 +64 -0
- offload/_root/data/findings/catalog/cce-iterator-link.f90 +67 -0
- offload/_root/data/findings/catalog/cce-linear-lastprivate-ice.f90 +69 -0
- offload/_root/data/findings/catalog/cce-nohost-link.f90 +90 -0
- offload/_root/data/findings/catalog/cce-reduction-inscan-ice.f90 +66 -0
- offload/_root/data/findings/catalog/cce-reduction-task-link.f90 +76 -0
- offload/_root/data/findings/catalog/cce19-reduction-task-addrspacecast-ice.f90 +77 -0
- offload/_root/data/findings/catalog/cce20-c-defaultmap-private-storage-rejected.c +85 -0
- offload/_root/data/findings/catalog/cce20-map-self-rejected.f90 +64 -0
- offload/_root/data/findings/catalog/cce21-c-declare-target-local-rejected.c +73 -0
- offload/_root/data/findings/catalog/cce21-c-target-loop-ice.c +77 -0
- offload/_root/data/findings/catalog/defaultmap-present-private-array-abort.f90 +73 -0
- offload/_root/data/findings/catalog/nvhpc-acc-associate-illegal-address.f90 +66 -0
- offload/_root/data/findings/catalog/nvhpc-c-function-pointer-kernel-missing.c +68 -0
- offload/_root/data/findings/catalog/nvhpc-c-long-double-kernel-missing.c +64 -0
- offload/_root/data/findings/catalog/nvhpc-c-static-local-kernel-missing.c +73 -0
- offload/_root/data/findings/catalog/nvhpc-c-vla-kernel-missing.c +63 -0
- offload/_root/data/findings/catalog/nvhpc-flang-type-bound-kernel-missing.f90 +86 -0
- offload/_root/data/findings/cce-acc-init-set-runtime-assert.f90 +35 -0
- offload/_root/data/findings/cce-acc-reduction-200-int8-scalars-wrong.f90 +1278 -0
- offload/_root/data/findings/cce-acc-routine-bind-module-ice.f90 +35 -0
- offload/_root/data/findings/cce-acc-self-condition-ignored.f90 +17 -0
- offload/_root/data/findings/cce-c-dist-schedule-segv.c +34 -0
- offload/_root/data/findings/cce-c-map-delete-refcount.c +47 -0
- offload/_root/data/findings/cce-c-map-present-assert.c +45 -0
- offload/_root/data/findings/cce-c-openmp45-device-link.c +34 -0
- offload/_root/data/findings/cce-c-parallel-for-in-target.c +73 -0
- offload/_root/data/findings/cce-defaultmap-tofrom-explicit-map.f90 +92 -0
- offload/_root/data/findings/cce-mapper-next-map-copy-back.f90 +48 -0
- offload/_root/data/findings/cce-trim-merge-output-one-character.f90 +40 -0
- offload/_root/data/findings/cce-uses-allocators-traits-omp50.f90 +28 -0
- offload/_root/data/findings/cce19-acc-if-false-link.f90 +17 -0
- offload/_root/data/findings/cce19-c-reduction-63-scalars-one-wrong.c +235 -0
- offload/_root/data/findings/cce19-target-parallel-guarded-loop.f90 +35 -0
- offload/_root/data/findings/cce19-target-parallel-single-ice.f90 +38 -0
- offload/_root/data/findings/cce21-alloc-2e32-sum-wrong.f90 +68 -0
- offload/_root/data/findings/cce21-defaultmap-aggregate-flag.f90 +52 -0
- offload/_root/data/findings/cce21-in-reduction-assumed-shape-write-lost.f90 +61 -0
- offload/_root/data/findings/cce21-in-reduction-taskwait-link.f90 +59 -0
- offload/_root/data/findings/cce21-linear-modifier-default-none.f90 +59 -0
- offload/_root/data/findings/clang-c-declare-target-to-omp52.c +50 -0
- offload/_root/data/findings/clang-c-linear-directive-name-hang.c +30 -0
- offload/_root/data/findings/clang-c-map-iterator-omp51.c +51 -0
- offload/_root/data/findings/clang-c-shared-declare-target-combined.c +58 -0
- offload/_root/data/findings/dataenv/cce-value-dummy-target-write-visible.f90 +74 -0
- offload/_root/data/findings/defaultmap-none-loop-variable.f90 +69 -0
- offload/_root/data/findings/fortran-loop-bind-thread-in-parallel.f90 +53 -0
- offload/_root/data/findings/fortran-schedule-static-in-target.f90 +55 -0
- offload/_root/data/findings/fresh/cce-common-block-name-in-map-rejected.f90 +47 -0
- offload/_root/data/findings/fresh/cce-if-stop-in-target-ice-one-condition.f90 +38 -0
- offload/_root/data/findings/fresh/cce-if-stop-in-target-ice.f90 +43 -0
- offload/_root/data/findings/fresh/cce-list-directed-print-in-target-copy-crash.f90 +40 -0
- offload/_root/data/findings/fresh/cce19-acc-automatic-array-copyout-copy-crash.f90 +56 -0
- offload/_root/data/findings/fresh/cce21-combined-if-runtime-expr-loop-skipped.f90 +57 -0
- offload/_root/data/findings/fresh/nvhpc-acc-gang-worker-collapse-nested-vector-reduction-lost.f90 +67 -0
- offload/_root/data/findings/fresh/nvhpc-teams-loop-module-allocatable-assign-fort2-crash.f90 +73 -0
- offload/_root/data/findings/fuzz/1131-afar.f90 +48 -0
- offload/_root/data/findings/fuzz/1391-cce20.f90 +40 -0
- offload/_root/data/findings/fuzz/14-cce20.f90 +36 -0
- offload/_root/data/findings/fuzz/1505-cce20.f90 +88 -0
- offload/_root/data/findings/fuzz/1540-afar.f90 +44 -0
- offload/_root/data/findings/fuzz/158-afar.f90 +63 -0
- offload/_root/data/findings/fuzz/16-cce20.f90 +39 -0
- offload/_root/data/findings/fuzz/1644-cce21.f90 +31 -0
- offload/_root/data/findings/fuzz/165-cce19.f90 +52 -0
- offload/_root/data/findings/fuzz/1749-cce20.f90 +34 -0
- offload/_root/data/findings/fuzz/1936-afar.f90 +61 -0
- offload/_root/data/findings/fuzz/1978-cce19.f90 +41 -0
- offload/_root/data/findings/fuzz/2014-cce19.f90 +46 -0
- offload/_root/data/findings/fuzz/2224-cce19.f90 +30 -0
- offload/_root/data/findings/fuzz/2334-cce19.f90 +57 -0
- offload/_root/data/findings/fuzz/536-cce19.f90 +38 -0
- offload/_root/data/findings/fuzz/591-cce19.f90 +54 -0
- offload/_root/data/findings/fuzz/650-afar.f90 +58 -0
- offload/_root/data/findings/fuzz/698-afar.f90 +68 -0
- offload/_root/data/findings/fuzz/700-afar.f90 +46 -0
- offload/_root/data/findings/fuzz/775-cce21.f90 +33 -0
- offload/_root/data/findings/fuzz/87-afar.f90 +47 -0
- offload/_root/data/findings/fuzz/916-afar.f90 +67 -0
- offload/_root/data/findings/fuzz/958-cce20.f90 +44 -0
- offload/_root/data/findings/fuzz/98-cce19.f90 +40 -0
- offload/_root/data/findings/fuzz/README.md +236 -0
- offload/_root/data/findings/fuzz/b1-121-afar.f90 +47 -0
- offload/_root/data/findings/fuzz/b1-183-afar.f90 +55 -0
- offload/_root/data/findings/fuzz/b1-22-cce20.f90 +38 -0
- offload/_root/data/findings/fuzz/b1-231-afar.f90 +56 -0
- offload/_root/data/findings/fuzz/b1-268-afar.f90 +46 -0
- offload/_root/data/findings/fuzz/b2-183-afar.f90 +57 -0
- offload/_root/data/findings/fuzz/b2-209-cce19.f90 +51 -0
- offload/_root/data/findings/fuzz/b2-213-afar.f90 +63 -0
- offload/_root/data/findings/fuzz/b2-52-afar.f90 +56 -0
- offload/_root/data/findings/fuzz/b2-68-afar.f90 +54 -0
- offload/_root/data/findings/fuzz/b2-85-cce20.f90 +55 -0
- offload/_root/data/findings/fuzz/b3-188-cce19.f90 +90 -0
- offload/_root/data/findings/fuzz/b3-190-cce21.f90 +88 -0
- offload/_root/data/findings/fuzz/b3-197-cce19.f90 +77 -0
- offload/_root/data/findings/fuzz/b3-250-cce20.f90 +89 -0
- offload/_root/data/findings/fuzz/b3-278-cce19.f90 +70 -0
- offload/_root/data/findings/fuzz/b3-45-cce21.f90 +83 -0
- offload/_root/data/findings/fuzz/b3-54-afar.f90 +67 -0
- offload/_root/data/findings/fuzz/b3-61-cce20.f90 +100 -0
- offload/_root/data/findings/fuzz/b3-9-afar.f90 +100 -0
- offload/_root/data/findings/fuzz/b3-9-cce21.f90 +103 -0
- offload/_root/data/findings/fuzz/b3-94-afar.f90 +80 -0
- offload/_root/data/findings/fuzz/b4-39-afar.f90 +141 -0
- offload/_root/data/findings/fuzz/b4-86-cce19.f90 +71 -0
- offload/_root/data/findings/fuzz/controls/gcc-complex-pointer-store-control.f90 +28 -0
- offload/_root/data/findings/fuzz/controls/gcc-declare-reduction-module-control.f90 +29 -0
- offload/_root/data/findings/fuzz/controls/gcc-target-simd-map-nontemporal-control.f90 +21 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-allocatable-component-mapped-control.f90 +22 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-allocatable-component-unreferenced-control.f90 +22 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-default-none-removed-control.f90 +18 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-default-shared-control.f90 +18 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-defaultmap-firstprivate-removed-control.f90 +15 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-defaultmap-to-scalar-reduction-mapped-control.f90 +17 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-defaultmap-to-scalar-removed-control.f90 +17 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-defaultmap-tofrom-lastprivate-control.f90 +15 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-depend-explicit-map-control.f90 +22 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-depend-removed-control.f90 +22 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-distribute-end-distribute-control.f90 +16 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-distribute-parallel-num-threads-removed-control.f90 +26 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-distribute-parallel-removed-control.f90 +22 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-distribute-simd-no-end-directive-control.f90 +15 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-explicit-length-character-dummy-control.f90 +18 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-loop-character-array-value-control.f90 +23 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-loop-character-distribute-control.f90 +20 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-map-always-first-control.f90 +15 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-map-always-removed-control.f90 +15 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-num-threads-removed-control.f90 +12 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-target-parallel-firstprivate-dropped-control.f90 +15 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-target-parallel-single-nowait-control.f90 +13 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-target-parallel-split-control.f90 +15 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-target-simd-collapse-split-control.f90 +21 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-target-simd-end-directive-control.f90 +14 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-target-simd-no-collapse-control.f90 +19 -0
- offload/_root/data/findings/fuzz/controls/nvhpc-target-simd-split-no-end-directive-control.f90 +15 -0
- offload/_root/data/findings/fuzz/gcc-declare-reduction-module-not-found.f90 +66 -0
- offload/_root/data/findings/fuzz/gcc-strided-target-update-rejected.f90 +58 -0
- offload/_root/data/findings/fuzz/gcc-target-simd-map-nontemporal-rejected.f90 +54 -0
- offload/_root/data/findings/fuzz/nvhpc-allocatable-component-implicit-map-illegal-address.f90 +84 -0
- offload/_root/data/findings/fuzz/nvhpc-assumed-length-character-dummy-map-ice.f90 +69 -0
- offload/_root/data/findings/fuzz/nvhpc-default-none-reduction-lastprivate-fort1-crash.f90 +70 -0
- offload/_root/data/findings/fuzz/nvhpc-defaultmap-firstprivate-lastprivate-ice.f90 +71 -0
- offload/_root/data/findings/fuzz/nvhpc-defaultmap-to-scalar-reduction-lost.f90 +82 -0
- offload/_root/data/findings/fuzz/nvhpc-depend-implicit-map-illegal-address.f90 +81 -0
- offload/_root/data/findings/fuzz/nvhpc-distribute-parallel-num-threads-writes-lost.f90 +79 -0
- offload/_root/data/findings/fuzz/nvhpc-end-distribute-simd-rejected.f90 +70 -0
- offload/_root/data/findings/fuzz/nvhpc-loop-character-achar-unsupported.f90 +75 -0
- offload/_root/data/findings/fuzz/nvhpc-map-always-after-map-to-not-copied-back.f90 +70 -0
- offload/_root/data/findings/fuzz/nvhpc-num-threads-reduction-identity-lost.f90 +54 -0
- offload/_root/data/findings/fuzz/nvhpc-target-parallel-firstprivate-translate-failure.f90 +66 -0
- offload/_root/data/findings/fuzz/nvhpc-target-parallel-single-hang.f90 +68 -0
- offload/_root/data/findings/fuzz/nvhpc-target-simd-collapse-translate-failure.f90 +73 -0
- offload/_root/data/findings/fuzz/nvhpc-target-simd-no-end-directive-rejected.f90 +68 -0
- offload/_root/data/findings/fuzz/par-s1-2082-gcc_g90.f90 +71 -0
- offload/_root/data/findings/fuzz/s1-2370-cce21.f90 +67 -0
- offload/_root/data/findings/fuzz/s1-2592-cce21.f90 +56 -0
- offload/_root/data/findings/fuzz/s1-3463-cce21.f90 +92 -0
- offload/_root/data/findings/fuzz/s1-4339-afar.f90 +79 -0
- offload/_root/data/findings/fuzz/s1-6085-cce21.f90 +96 -0
- offload/_root/data/findings/fuzz/s1-6760-cce20.f90 +65 -0
- offload/_root/data/findings/fuzz/s1-6888-cce21.f90 +76 -0
- offload/_root/data/findings/fuzz/s1-7882-cce20.f90 +63 -0
- offload/_root/data/findings/fuzz/s1-8634-cce21.f90 +45 -0
- offload/_root/data/findings/fuzz/s1-91-cce21.f90 +92 -0
- offload/_root/data/findings/fuzz/s1-9443-afar.f90 +59 -0
- offload/_root/data/findings/fuzz/s1-9914-cce19.f90 +78 -0
- offload/_root/data/findings/gcc/controls/gcc-acc-c-detach-control.c +34 -0
- offload/_root/data/findings/gcc/controls/gcc-acc-detach-control.f90 +26 -0
- offload/_root/data/findings/gcc/controls/gcc-defaultmap-to-pointer-control.f90 +31 -0
- offload/_root/data/findings/gcc/controls/gcc-target-in-task-control.c +26 -0
- offload/_root/data/findings/gcc/controls/gcc-target-in-task-control.f90 +21 -0
- offload/_root/data/findings/gcc/gcc-acc-bind-device-type-rejected.f90 +71 -0
- offload/_root/data/findings/gcc/gcc-acc-c-bind-device-type-rejected.c +76 -0
- offload/_root/data/findings/gcc/gcc-acc-c-detach-delete-attach-underflow.c +74 -0
- offload/_root/data/findings/gcc/gcc-acc-c-gang-dim-rejected.c +79 -0
- offload/_root/data/findings/gcc/gcc-acc-c-link-in-routine-rejected.c +82 -0
- offload/_root/data/findings/gcc/gcc-acc-detach-delete-attach-underflow.f90 +66 -0
- offload/_root/data/findings/gcc/gcc-acc-gang-dim-collapse-force-rejected.f90 +69 -0
- offload/_root/data/findings/gcc/gcc-acc-init-set-shutdown-rejected.f90 +70 -0
- offload/_root/data/findings/gcc/gcc-acc-link-in-routine-rejected.f90 +82 -0
- offload/_root/data/findings/gcc/gcc-acc-use-device-allocatable-rejected.f90 +88 -0
- offload/_root/data/findings/gcc/gcc-c-motion-mapper-rejected.c +110 -0
- offload/_root/data/findings/gcc/gcc-c-omp60-undocumented-rejected.c +76 -0
- offload/_root/data/findings/gcc/gcc-c-omp60-unimplemented-rejected.c +119 -0
- offload/_root/data/findings/gcc/gcc-c-target-in-task-mandatory-device-not-found.c +87 -0
- offload/_root/data/findings/gcc/gcc-c-uses-allocators-traits-unimplemented.c +85 -0
- offload/_root/data/findings/gcc/gcc-declare-mapper-rejected.f90 +85 -0
- offload/_root/data/findings/gcc/gcc-defaultmap-to-pointer-copy-back.f90 +66 -0
- offload/_root/data/findings/gcc/gcc-loop-bind-default-none-rejected.f90 +93 -0
- offload/_root/data/findings/gcc/gcc-omp60-undocumented-rejected.f90 +72 -0
- offload/_root/data/findings/gcc/gcc-omp60-unimplemented-rejected.f90 +112 -0
- offload/_root/data/findings/gcc/gcc-target-in-task-mandatory-device-not-found.f90 +83 -0
- offload/_root/data/findings/gcc/gcc-uses-allocators-traits-unimplemented.f90 +78 -0
- offload/_root/data/findings/harvest/afar-flang-strided-target-update.f90 +96 -0
- offload/_root/data/findings/harvest/cce-acc-declare-create-module-allocatable-xnack1-fault.f90 +58 -0
- offload/_root/data/findings/harvest/cce-c-implicit-struct-map-partly-present.c +100 -0
- offload/_root/data/findings/harvest/cce-c-strided-target-update.c +74 -0
- offload/_root/data/findings/harvest/cce-ftn-target-parallel-thread-query-ice.f90 +67 -0
- offload/_root/data/findings/harvest/cce-named-constant-array-declare-target-routine-rejected.f90 +69 -0
- offload/_root/data/findings/harvest/cce-use-device-ptr-c-ptr-not-converted.f90 +64 -0
- offload/_root/data/findings/harvest/cce21-declare-target-link-module-variable-write-lost.f90 +63 -0
- offload/_root/data/findings/harvest/cce21-internal-procedure-calls-internal-in-target-fault.f90 +71 -0
- offload/_root/data/findings/harvest/controls/cce-c-implicit-struct-map-partly-present-target-only-control.c +22 -0
- offload/_root/data/findings/harvest/controls/cce-c-implicit-struct-map-partly-present-whole-control.c +23 -0
- offload/_root/data/findings/harvest/controls/gcc-acc-declare-create-allocatable-control.f90 +34 -0
- offload/_root/data/findings/harvest/controls/gcc-c-same-item-two-maps-control.c +17 -0
- offload/_root/data/findings/harvest/controls/gcc-c-target-data-struct-pointer-section-control.c +27 -0
- offload/_root/data/findings/harvest/controls/gcc-c-target-data-two-maps-control.c +20 -0
- offload/_root/data/findings/harvest/controls/gcc-same-item-two-maps-control.f90 +16 -0
- offload/_root/data/findings/harvest/controls/gcc-teams-simd-matmul-allocatable-control.f90 +27 -0
- offload/_root/data/findings/harvest/gcc-acc-declare-create-allocatable-not-mapped.f90 +66 -0
- offload/_root/data/findings/harvest/gcc-c-same-item-two-maps-rejected.c +45 -0
- offload/_root/data/findings/harvest/gcc-c-strided-section-rejected.c +70 -0
- offload/_root/data/findings/harvest/gcc-c-target-data-struct-pointer-section-ice.c +78 -0
- offload/_root/data/findings/harvest/gcc-c-target-data-two-maps-ice.c +49 -0
- offload/_root/data/findings/harvest/gcc-same-item-two-maps-rejected.f90 +46 -0
- offload/_root/data/findings/harvest/gcc-teams-simd-matmul-allocatable-ice.f90 +53 -0
- offload/_root/data/findings/harvest/nvhpc-c-target-data-if-false-use-device-ptr-garbage.c +49 -0
- offload/_root/data/findings/harvest/nvhpc-named-constant-array-declare-target-routine-rejected.f90 +65 -0
- offload/_root/data/findings/harvest/nvhpc-use-device-ptr-c-ptr-not-found.f90 +60 -0
- offload/_root/data/findings/harvest/nvhpc2511-target-nowait-in-parallel-for-ice.c +59 -0
- offload/_root/data/findings/hecbench/controls/f16-ctl-float-array.c +28 -0
- offload/_root/data/findings/hecbench/controls/pc-ctl-builtin-popcount.c +37 -0
- offload/_root/data/findings/hecbench/controls/pc-ctl-shift-sum.c +43 -0
- offload/_root/data/findings/hecbench/gcc-c-float16-array-in-target-lto-ice.c +65 -0
- offload/_root/data/findings/hecbench/gcc-c-swar-popcount-assembler-error.c +80 -0
- offload/_root/data/findings/index.yaml +2453 -0
- offload/_root/data/findings/malloc/afar-device-malloc-in-kernel-corrupts-records.c +371 -0
- offload/_root/data/findings/malloc/controls/afar-first-use-malloc-direct.c +52 -0
- offload/_root/data/findings/malloc/controls/afar-first-use-malloc-fence.c +57 -0
- offload/_root/data/findings/malloc/controls/afar-first-use-malloc-flush.c +57 -0
- offload/_root/data/findings/malloc/controls/afar-first-use-malloc-stack.c +52 -0
- offload/_root/data/findings/multithread-allocatable-section-maps.f90 +91 -0
- offload/_root/data/findings/nested/afar-cce-c-call-result-member-in-target-rejected.c +69 -0
- offload/_root/data/findings/nested/afar-cce-c-update-struct-and-member-rejected.c +92 -0
- offload/_root/data/findings/nested/afar-flang-pointer-root-allocatable-component-enter-data-fault.f90 +121 -0
- offload/_root/data/findings/nested/cce-c-struct-and-nested-pointee-sections-ice.c +79 -0
- offload/_root/data/findings/nested/cce-fortran-nested-allocatable-component-copy-fault.f90 +64 -0
- offload/_root/data/findings/nested/cce-fortran-pointer-to-type-with-allocatable-scalar-component-typed-transfer.f90 +93 -0
- offload/_root/data/findings/nested/cce-fortran-update-to-pointer-root-allocatable-scalar-component-no-accelerator-object.f90 +80 -0
- offload/_root/data/findings/nested/controls/c3-ctl-nested-data.c +27 -0
- offload/_root/data/findings/nested/controls/c5-acc-serial-struct-and-array.c +26 -0
- offload/_root/data/findings/nested/controls/e2-ctl-two-directives.c +42 -0
- offload/_root/data/findings/nested/controls/e3-ctl-attach-clause.c +42 -0
- offload/_root/data/findings/nested/controls/f3-pointer-array-only.c +33 -0
- offload/_root/data/findings/nested/controls/f5-ctl-copyout-exit.c +33 -0
- offload/_root/data/findings/nested/controls/f6-ctl-pointer-to-struct-array.c +28 -0
- offload/_root/data/findings/nested/controls/g2-ctl-allocatable.f90 +34 -0
- offload/_root/data/findings/nested/controls/g2-ctl-entered-to.f90 +34 -0
- offload/_root/data/findings/nested/controls/g3-ctl-from-struct-no-element.c +27 -0
- offload/_root/data/findings/nested/controls/g3-ptrs-two-elements-to.c +27 -0
- offload/_root/data/findings/nested/controls/g3-ptrs-two-elements-tofrom.c +27 -0
- offload/_root/data/findings/nested/controls/g5-ctl-element-pointers-only.f90 +36 -0
- offload/_root/data/findings/nested/controls/g5-ctl-root-pointer-only.f90 +36 -0
- offload/_root/data/findings/nested/controls/gp2-ctl-no-mapper-explicit-maps.c +24 -0
- offload/_root/data/findings/nested/controls/gt2-ctl-no-always.c +26 -0
- offload/_root/data/findings/nested/controls/gt3-ctl-always-on-structure-only.c +26 -0
- offload/_root/data/findings/nested/controls/j1-embedded-struct-pointer-to-struct.c +24 -0
- offload/_root/data/findings/nested/controls/j2-ctl-pointer-instead-of-embedded.c +24 -0
- offload/_root/data/findings/nested/controls/j6-ctl-struct-and-one-pointee-level.c +23 -0
- offload/_root/data/findings/nested/controls/j7-ctl-struct-and-embedded-pointee.c +24 -0
- offload/_root/data/findings/nested/controls/m2-ctl-variable-root.f90 +32 -0
- offload/_root/data/findings/nested/controls/m3-ctl-fixed-array-component.f90 +32 -0
- offload/_root/data/findings/nested/controls/m5-ctl-no-enter-data.f90 +33 -0
- offload/_root/data/findings/nested/controls/n8-ctl-fixed-array-in-component.f90 +33 -0
- offload/_root/data/findings/nested/controls/n9-ctl-allocatable-in-the-variable.f90 +33 -0
- offload/_root/data/findings/nested/controls/ns4-ctl-two-directives-struct-then-pointee.c +27 -0
- offload/_root/data/findings/nested/controls/ns8-ctl-enter-together-exit-split.c +26 -0
- offload/_root/data/findings/nested/controls/nu3-ctl-update-pointee-only.c +28 -0
- offload/_root/data/findings/nested/controls/p2-ctl-pointer-variable.c +27 -0
- offload/_root/data/findings/nested/controls/p3-ctl-direct-member.c +26 -0
- offload/_root/data/findings/nested/controls/q2-ctl-fixed-array.f90 +37 -0
- offload/_root/data/findings/nested/controls/q3-ctl-allocatable-component-of-the-variable.f90 +38 -0
- offload/_root/data/findings/nested/controls/ta2-ctl-no-allocatable-component.f90 +42 -0
- offload/_root/data/findings/nested/controls/ta3-ctl-allocatable-scalar-in-the-variable.f90 +38 -0
- offload/_root/data/findings/nested/controls/ta4-ctl-pointer-component-only.f90 +42 -0
- offload/_root/data/findings/nested/controls/u3-ctl-update-member-only.c +24 -0
- offload/_root/data/findings/nested/controls/u4-ctl-two-updates.c +25 -0
- offload/_root/data/findings/nested/controls/u5-ctl-same-list-in-map.c +25 -0
- offload/_root/data/findings/nested/controls/ua2-ctl-variable-root.f90 +37 -0
- offload/_root/data/findings/nested/controls/ua4-ctl-to-in-place-of-alloc-and-update.f90 +37 -0
- offload/_root/data/findings/nested/controls/v2-ctl-parent-first.c +25 -0
- offload/_root/data/findings/nested/controls/v4-ctl-embedded-member.c +24 -0
- offload/_root/data/findings/nested/gcc-acc-c-exit-data-of-a-pointer-array-element-target-hangs.c +83 -0
- offload/_root/data/findings/nested/gcc-acc-c-parent-and-shared-pointee-one-directive.c +88 -0
- offload/_root/data/findings/nested/gcc-acc-c-struct-and-member-array-one-directive.c +84 -0
- offload/_root/data/findings/nested/gcc-c-always-on-pointer-member-section-ice.c +75 -0
- offload/_root/data/findings/nested/gcc-c-declare-mapper-pointer-member-section-gpu-fault.c +93 -0
- offload/_root/data/findings/nested/gcc-c-from-struct-and-pointee-section-rejected.c +83 -0
- offload/_root/data/findings/nested/gcc-fortran-pointer-component-alloc-bounds-lost.f90 +62 -0
- offload/_root/data/findings/nested/gcc-fortran-root-and-element-pointer-components-ice.f90 +77 -0
- offload/_root/data/findings/nested/nvhpc-c-pointee-before-parent-in-one-map-list-copy-fault.c +55 -0
- offload/_root/data/findings/nested/nvhpc-c-update-from-structure-overwrites-attached-pointer-segv.c +86 -0
- offload/_root/data/findings/nvhpc-acc-atomic-update-sum-fort2-crash.f90 +53 -0
- offload/_root/data/findings/nvhpc-c-acc-atomic-update-sum-ice.c +43 -0
- offload/_root/data/findings/nvhpc-c-dist-schedule-chunk-compile-hang.c +41 -0
- offload/_root/data/findings/nvhpc-c-map-present-ignored.c +42 -0
- offload/_root/data/findings/nvhpc-c-ordered-in-target-nvcpfe-crash.c +92 -0
- offload/_root/data/findings/nvhpc-c-parallel-for-firstprivate-in-target.c +62 -0
- offload/_root/data/findings/nvhpc-c-parallel-if-in-target-nvvm-ice.c +56 -0
- offload/_root/data/findings/nvhpc-defaultmap-firstprivate-explicit-map.f90 +45 -0
- offload/_root/data/findings/nvhpc-defaultmap-from-allocatable-indexing.f90 +60 -0
- offload/_root/data/findings/nvhpc-depend-inoutset-ignored.f90 +64 -0
- offload/_root/data/findings/nvhpc-dist-schedule-chunk-illegal-address.f90 +52 -0
- offload/_root/data/findings/nvhpc-managed-acc-shutdown-host-access.f90 +42 -0
- offload/_root/data/findings/nvhpc-parallel-if-in-target-nvvm-ice.f90 +60 -0
- offload/_root/data/findings/oop/afar-final-dealloc-device-link.f90 +85 -0
- offload/_root/data/findings/oop/afar-pdt-length-parameter-not-implemented.f90 +65 -0
- offload/_root/data/findings/oop/cce-class-is-device-link.f90 +86 -0
- offload/_root/data/findings/oop/cce-copy-alloc-component-section-fault.f90 +73 -0
- offload/_root/data/findings/oop/cce-copy-parent-to-component-tofrom-lost.f90 +65 -0
- offload/_root/data/findings/oop/cce-copy-second-member-section-lost.f90 +65 -0
- offload/_root/data/findings/oop/cce-element-component-map-lost.f90 +64 -0
- offload/_root/data/findings/oop/cce-final-dealloc-device-abort.f90 +85 -0
- offload/_root/data/findings/oop/cce-pdt-default-mapper-rejected.f90 +71 -0
- offload/_root/data/findings/oop/cce-polymorphic-dispatch-device-link.f90 +100 -0
- offload/_root/data/findings/oop/cce-section-of-element-component-overlap.f90 +76 -0
- offload/_root/data/findings/oop/cce-select-type-guard-not-taken.f90 +91 -0
- offload/_root/data/findings/oop/cce-udr-derived-type-unsupported.f90 +69 -0
- offload/_root/data/findings/oop/cce21-element-component-map-lost.f90 +62 -0
- offload/_root/data/findings/oop/controls/alloccomp-comp-only.f90 +44 -0
- offload/_root/data/findings/oop/controls/alloccomp-whole-explicit-component.f90 +50 -0
- offload/_root/data/findings/oop/controls/alloccomp-whole.f90 +49 -0
- offload/_root/data/findings/oop/controls/elemsec-element.f90 +47 -0
- offload/_root/data/findings/oop/controls/final-local.f90 +64 -0
- offload/_root/data/findings/oop/controls/host-class-star-select-type.f90 +58 -0
- offload/_root/data/findings/oop/controls/host-firstprivate-defined-assignment.f90 +54 -0
- offload/_root/data/findings/oop/controls/host-lastprivate-defined-assignment.f90 +58 -0
- offload/_root/data/findings/oop/controls/host-private-finalization.f90 +51 -0
- offload/_root/data/findings/oop/controls/host-select-type.f90 +65 -0
- offload/_root/data/findings/oop/controls/parent-and-comp-component-only.f90 +45 -0
- offload/_root/data/findings/oop/controls/pdt-kind.f90 +46 -0
- offload/_root/data/findings/oop/controls/pdt-len-host.f90 +43 -0
- offload/_root/data/findings/oop/controls/pdt-len-unparameterized.f90 +46 -0
- offload/_root/data/findings/oop/controls/poly-dispatch-static.f90 +75 -0
- offload/_root/data/findings/oop/controls/section-alloc-whole-component.f90 +49 -0
- offload/_root/data/findings/oop/controls/section-element-whole-array.f90 +50 -0
- offload/_root/data/findings/oop/controls/section-element-whole-component.f90 +50 -0
- offload/_root/data/findings/oop/controls/section-fixed.f90 +43 -0
- offload/_root/data/findings/oop/controls/tbp-override.f90 +64 -0
- offload/_root/data/findings/oop/gcc-acc-parent-and-member-data-rejected.f90 +63 -0
- offload/_root/data/findings/oop/gcc-pdt-length-parameter-abort.f90 +68 -0
- offload/_root/data/findings/oop/gcc-polymorphic-dispatch-abort.f90 +97 -0
- offload/_root/data/findings/oop/gcc-vtab-not-marked-for-offload.f90 +94 -0
- offload/_root/data/findings/oop/nvhpc-copy-alloc-component-illegal-address.f90 +76 -0
- offload/_root/data/findings/oop/nvhpc-copy-pdt-length-parameter-illegal-address.f90 +69 -0
- offload/_root/data/findings/oop/nvhpc-named-mapper-rejected.f90 +65 -0
- offload/_root/data/findings/oop/nvhpc-polymorphic-dispatch-translate-failure.f90 +90 -0
- offload/_root/data/findings/oop/nvhpc-polymorphism-runtime-unsupported.f90 +94 -0
- offload/_root/data/findings/oop/nvhpc-type-bound-call-rejected.f90 +89 -0
- offload/_root/data/findings/oop/nvhpc-udr-derived-type-rejected.f90 +67 -0
- offload/_root/data/findings/reviews/afar-c-error-directive-in-target-link.json +217 -0
- offload/_root/data/findings/reviews/afar-c-lastprivate-distribute-parallel-for-small-type.json +113 -0
- offload/_root/data/findings/reviews/afar-c-teams-distribute-reduction-first-team.json +130 -0
- offload/_root/data/findings/reviews/afar-c-update-iterator-copy-mode.json +113 -0
- offload/_root/data/findings/reviews/afar-cce19-character-defaultmap.json +292 -0
- offload/_root/data/findings/reviews/afar-clang-requires-device-safesync-hang.json +191 -0
- offload/_root/data/findings/reviews/afar-flang-firstprivate-map-two-targets.json +130 -0
- offload/_root/data/findings/reviews/afar-flang-loop-bind-teams-reduction.json +126 -0
- offload/_root/data/findings/reviews/afar-flang-task-reduction-max.json +113 -0
- offload/_root/data/findings/reviews/afar-flang-thread-limit-target-parallel-do.json +113 -0
- offload/_root/data/findings/reviews/afar-loop-bind-thread-in-teams.json +191 -0
- offload/_root/data/findings/reviews/afar-nontemporal-assumed-shape-ice.json +113 -0
- offload/_root/data/findings/reviews/afar-udr-derived-type-link.json +113 -0
- offload/_root/data/findings/reviews/afar-xnack1-atomic-min-nested-parallel.json +113 -0
- offload/_root/data/findings/reviews/afar-xnack1-target-is-present.json +113 -0
- offload/_root/data/findings/reviews/apps--afar-cce-teams-private-array-nested-parallel-wrong.json +113 -0
- offload/_root/data/findings/reviews/apps--cce20-device-link-infer-address-spaces-crash.json +113 -0
- offload/_root/data/findings/reviews/apps--cce21-device-link-agpr-copy-mfma-assert.json +113 -0
- offload/_root/data/findings/reviews/apps--cce21-private-array-loaded-subscript-wrong.json +113 -0
- offload/_root/data/findings/reviews/apps--gcc-acc-c-tile-partial-tiles-wrong.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-c-ordered-doacross-link.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-c-reduction-task-link.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-absent-optional-target-crash.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-critical-target-parallel-wrong.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-dist-schedule-chunk.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-linear-parallel-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-named-critical-link.json +126 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-ordered-wrong.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-reduction-minus-rejected.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-sections-in-target-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--afar-flang-workdistribute-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--c-allocate-const-mem-firstprivate-wrong.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-acc-character-dummy-routine-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-acc-loop-seq-in-routine-wrong.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-allocators-stack-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-c-allocate-align-link.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-c-allocate-allocator-modifier-rejected.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-c-dist-schedule-chunk.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-c-f-pointer-device-link.json +130 -0
- offload/_root/data/findings/reviews/catalog--cce-c-long-double-ice.json +217 -0
- offload/_root/data/findings/reviews/catalog--cce-c-map-iterator-ice.json +217 -0
- offload/_root/data/findings/reviews/catalog--cce-c-recursive-function-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-c-sections-in-target-wrong.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-flang-allocate-in-target-crash.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-flang-lastprivate-parallel-in-seq-loop-wrong.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-flang-stop-in-target-crash.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-iterator-link.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-linear-lastprivate-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-reduction-inscan-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce-reduction-task-link.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce19-reduction-task-addrspacecast-ice.json +113 -0
- offload/_root/data/findings/reviews/catalog--cce20-c-defaultmap-private-storage-rejected.json +217 -0
- offload/_root/data/findings/reviews/catalog--cce20-map-self-rejected.json +204 -0
- offload/_root/data/findings/reviews/catalog--cce21-c-target-loop-ice.json +126 -0
- offload/_root/data/findings/reviews/catalog--defaultmap-present-private-array-abort.json +236 -0
- offload/_root/data/findings/reviews/catalog--nvhpc-acc-associate-illegal-address.json +113 -0
- offload/_root/data/findings/reviews/catalog--nvhpc-c-function-pointer-kernel-missing.json +268 -0
- offload/_root/data/findings/reviews/cce-acc-init-set-runtime-assert.json +113 -0
- offload/_root/data/findings/reviews/cce-acc-reduction-200-int8-scalars-wrong.json +113 -0
- offload/_root/data/findings/reviews/cce-acc-routine-bind-module-ice.json +113 -0
- offload/_root/data/findings/reviews/cce-c-dist-schedule-segv.json +113 -0
- offload/_root/data/findings/reviews/cce-c-map-delete-refcount.json +149 -0
- offload/_root/data/findings/reviews/cce-c-map-present-assert.json +126 -0
- offload/_root/data/findings/reviews/cce-c-openmp45-device-link.json +113 -0
- offload/_root/data/findings/reviews/cce-c-parallel-for-in-target.json +141 -0
- offload/_root/data/findings/reviews/cce-mapper-next-map-copy-back.json +208 -0
- offload/_root/data/findings/reviews/cce-uses-allocators-traits-omp50.json +191 -0
- offload/_root/data/findings/reviews/cce19-c-reduction-63-scalars-one-wrong.json +113 -0
- offload/_root/data/findings/reviews/cce19-target-parallel-guarded-loop.json +113 -0
- offload/_root/data/findings/reviews/cce19-target-parallel-single-ice.json +113 -0
- offload/_root/data/findings/reviews/cce21-alloc-2e32-sum-wrong.json +113 -0
- offload/_root/data/findings/reviews/cce21-defaultmap-aggregate-flag.json +210 -0
- offload/_root/data/findings/reviews/cce21-in-reduction-assumed-shape-write-lost.json +113 -0
- offload/_root/data/findings/reviews/cce21-in-reduction-taskwait-link.json +113 -0
- offload/_root/data/findings/reviews/clang-c-declare-target-to-omp52.json +113 -0
- offload/_root/data/findings/reviews/clang-c-linear-directive-name-hang.json +113 -0
- offload/_root/data/findings/reviews/clang-c-shared-declare-target-combined.json +132 -0
- offload/_root/data/findings/reviews/dataenv--cce-value-dummy-target-write-visible.json +113 -0
- offload/_root/data/findings/reviews/defaultmap-none-loop-variable.json +113 -0
- offload/_root/data/findings/reviews/fortran-schedule-static-in-target.json +113 -0
- offload/_root/data/findings/reviews/fresh--cce-common-block-name-in-map-rejected.json +113 -0
- offload/_root/data/findings/reviews/fresh--cce-list-directed-print-in-target-copy-crash.json +217 -0
- offload/_root/data/findings/reviews/fresh--cce19-acc-automatic-array-copyout-copy-crash.json +113 -0
- offload/_root/data/findings/reviews/fresh--cce21-combined-if-runtime-expr-loop-skipped.json +113 -0
- offload/_root/data/findings/reviews/fresh--nvhpc-acc-gang-worker-collapse-nested-vector-reduction-lost.json +113 -0
- offload/_root/data/findings/reviews/fresh--nvhpc-teams-loop-module-allocatable-assign-fort2-crash.json +113 -0
- offload/_root/data/findings/reviews/fuzz--1505-cce20.json +113 -0
- offload/_root/data/findings/reviews/fuzz--1540-afar.json +113 -0
- offload/_root/data/findings/reviews/fuzz--1978-cce19.json +130 -0
- offload/_root/data/findings/reviews/fuzz--2334-cce19.json +113 -0
- offload/_root/data/findings/reviews/fuzz--591-cce19.json +147 -0
- offload/_root/data/findings/reviews/fuzz--650-afar.json +113 -0
- offload/_root/data/findings/reviews/fuzz--916-afar.json +130 -0
- offload/_root/data/findings/reviews/fuzz--98-cce19.json +113 -0
- offload/_root/data/findings/reviews/fuzz--b1-121-afar.json +160 -0
- offload/_root/data/findings/reviews/fuzz--b2-209-cce19.json +141 -0
- offload/_root/data/findings/reviews/fuzz--b2-68-afar.json +113 -0
- offload/_root/data/findings/reviews/fuzz--b2-85-cce20.json +217 -0
- offload/_root/data/findings/reviews/fuzz--b3-188-cce19.json +113 -0
- offload/_root/data/findings/reviews/fuzz--b3-278-cce19.json +212 -0
- offload/_root/data/findings/reviews/fuzz--b3-54-afar.json +113 -0
- offload/_root/data/findings/reviews/fuzz--b3-61-cce20.json +191 -0
- offload/_root/data/findings/reviews/fuzz--b4-86-cce19.json +113 -0
- offload/_root/data/findings/reviews/fuzz--gcc-declare-reduction-module-not-found.json +113 -0
- offload/_root/data/findings/reviews/fuzz--gcc-target-simd-map-nontemporal-rejected.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-allocatable-component-implicit-map-illegal-address.json +141 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-assumed-length-character-dummy-map-ice.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-default-none-reduction-lastprivate-fort1-crash.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-defaultmap-firstprivate-lastprivate-ice.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-defaultmap-to-scalar-reduction-lost.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-depend-implicit-map-illegal-address.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-distribute-parallel-num-threads-writes-lost.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-end-distribute-simd-rejected.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-loop-character-achar-unsupported.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-map-always-after-map-to-not-copied-back.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-num-threads-reduction-identity-lost.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-target-parallel-firstprivate-translate-failure.json +191 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-target-parallel-single-hang.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-target-simd-collapse-translate-failure.json +113 -0
- offload/_root/data/findings/reviews/fuzz--nvhpc-target-simd-no-end-directive-rejected.json +113 -0
- offload/_root/data/findings/reviews/fuzz--par-s1-2082-gcc_g90.json +126 -0
- offload/_root/data/findings/reviews/fuzz--s1-2370-cce21.json +113 -0
- offload/_root/data/findings/reviews/fuzz--s1-2592-cce21.json +113 -0
- offload/_root/data/findings/reviews/fuzz--s1-3463-cce21.json +113 -0
- offload/_root/data/findings/reviews/fuzz--s1-6760-cce20.json +130 -0
- offload/_root/data/findings/reviews/fuzz--s1-6888-cce21.json +113 -0
- offload/_root/data/findings/reviews/fuzz--s1-7882-cce20.json +113 -0
- offload/_root/data/findings/reviews/fuzz--s1-8634-cce21.json +113 -0
- offload/_root/data/findings/reviews/fuzz--s1-91-cce21.json +113 -0
- offload/_root/data/findings/reviews/fuzz--s1-9443-afar.json +113 -0
- offload/_root/data/findings/reviews/fuzz--s1-9914-cce19.json +141 -0
- offload/_root/data/findings/reviews/gcc--gcc-acc-bind-device-type-rejected.json +113 -0
- offload/_root/data/findings/reviews/gcc--gcc-acc-detach-delete-attach-underflow.json +314 -0
- offload/_root/data/findings/reviews/gcc--gcc-acc-gang-dim-collapse-force-rejected.json +113 -0
- offload/_root/data/findings/reviews/gcc--gcc-acc-init-set-shutdown-rejected.json +113 -0
- offload/_root/data/findings/reviews/gcc--gcc-acc-link-in-routine-rejected.json +113 -0
- offload/_root/data/findings/reviews/gcc--gcc-acc-use-device-allocatable-rejected.json +113 -0
- offload/_root/data/findings/reviews/gcc--gcc-c-motion-mapper-rejected.json +113 -0
- offload/_root/data/findings/reviews/gcc--gcc-c-omp60-undocumented-rejected.json +217 -0
- offload/_root/data/findings/reviews/gcc--gcc-c-omp60-unimplemented-rejected.json +236 -0
- offload/_root/data/findings/reviews/gcc--gcc-c-target-in-task-mandatory-device-not-found.json +236 -0
- offload/_root/data/findings/reviews/gcc--gcc-c-uses-allocators-traits-unimplemented.json +113 -0
- offload/_root/data/findings/reviews/gcc--gcc-declare-mapper-rejected.json +113 -0
- offload/_root/data/findings/reviews/gcc--gcc-defaultmap-to-pointer-copy-back.json +217 -0
- offload/_root/data/findings/reviews/gcc--gcc-loop-bind-default-none-rejected.json +113 -0
- offload/_root/data/findings/reviews/harvest--afar-flang-strided-target-update.json +141 -0
- offload/_root/data/findings/reviews/harvest--cce-acc-declare-create-module-allocatable-xnack1-fault.json +113 -0
- offload/_root/data/findings/reviews/harvest--cce-c-implicit-struct-map-partly-present.json +217 -0
- offload/_root/data/findings/reviews/harvest--cce-c-strided-target-update.json +141 -0
- offload/_root/data/findings/reviews/harvest--cce-ftn-target-parallel-thread-query-ice.json +130 -0
- offload/_root/data/findings/reviews/harvest--cce-named-constant-array-declare-target-routine-rejected.json +113 -0
- offload/_root/data/findings/reviews/harvest--cce-use-device-ptr-c-ptr-not-converted.json +113 -0
- offload/_root/data/findings/reviews/harvest--cce21-declare-target-link-module-variable-write-lost.json +113 -0
- offload/_root/data/findings/reviews/harvest--cce21-internal-procedure-calls-internal-in-target-fault.json +158 -0
- offload/_root/data/findings/reviews/harvest--gcc-acc-declare-create-allocatable-not-mapped.json +204 -0
- offload/_root/data/findings/reviews/harvest--gcc-c-same-item-two-maps-rejected.json +143 -0
- offload/_root/data/findings/reviews/harvest--gcc-c-strided-section-rejected.json +164 -0
- offload/_root/data/findings/reviews/harvest--gcc-c-target-data-struct-pointer-section-ice.json +113 -0
- offload/_root/data/findings/reviews/harvest--gcc-c-target-data-two-maps-ice.json +113 -0
- offload/_root/data/findings/reviews/harvest--gcc-teams-simd-matmul-allocatable-ice.json +113 -0
- offload/_root/data/findings/reviews/harvest--nvhpc-c-target-data-if-false-use-device-ptr-garbage.json +113 -0
- offload/_root/data/findings/reviews/harvest--nvhpc-named-constant-array-declare-target-routine-rejected.json +126 -0
- offload/_root/data/findings/reviews/harvest--nvhpc-use-device-ptr-c-ptr-not-found.json +113 -0
- offload/_root/data/findings/reviews/harvest--nvhpc2511-target-nowait-in-parallel-for-ice.json +130 -0
- offload/_root/data/findings/reviews/hecbench--gcc-c-float16-array-in-target-lto-ice.json +217 -0
- offload/_root/data/findings/reviews/hecbench--gcc-c-swar-popcount-assembler-error.json +126 -0
- offload/_root/data/findings/reviews/malloc--afar-device-malloc-in-kernel-corrupts-records.json +270 -0
- offload/_root/data/findings/reviews/multithread-allocatable-section-maps.json +191 -0
- offload/_root/data/findings/reviews/nested--afar-cce-c-call-result-member-in-target-rejected.json +113 -0
- offload/_root/data/findings/reviews/nested--afar-cce-c-update-struct-and-member-rejected.json +126 -0
- offload/_root/data/findings/reviews/nested--afar-flang-pointer-root-allocatable-component-enter-data-fault.json +191 -0
- offload/_root/data/findings/reviews/nested--cce-c-struct-and-nested-pointee-sections-ice.json +113 -0
- offload/_root/data/findings/reviews/nested--cce-fortran-nested-allocatable-component-copy-fault.json +214 -0
- offload/_root/data/findings/reviews/nested--cce-fortran-pointer-to-type-with-allocatable-scalar-component-typed-transfer.json +191 -0
- offload/_root/data/findings/reviews/nested--cce-fortran-update-to-pointer-root-allocatable-scalar-component-no-accelerator-object.json +297 -0
- offload/_root/data/findings/reviews/nested--gcc-acc-c-exit-data-of-a-pointer-array-element-target-hangs.json +204 -0
- offload/_root/data/findings/reviews/nested--gcc-acc-c-parent-and-shared-pointee-one-directive.json +130 -0
- offload/_root/data/findings/reviews/nested--gcc-acc-c-struct-and-member-array-one-directive.json +141 -0
- offload/_root/data/findings/reviews/nested--gcc-c-always-on-pointer-member-section-ice.json +113 -0
- offload/_root/data/findings/reviews/nested--gcc-c-declare-mapper-pointer-member-section-gpu-fault.json +113 -0
- offload/_root/data/findings/reviews/nested--gcc-c-from-struct-and-pointee-section-rejected.json +113 -0
- offload/_root/data/findings/reviews/nested--gcc-fortran-pointer-component-alloc-bounds-lost.json +217 -0
- offload/_root/data/findings/reviews/nested--gcc-fortran-root-and-element-pointer-components-ice.json +217 -0
- offload/_root/data/findings/reviews/nested--nvhpc-c-pointee-before-parent-in-one-map-list-copy-fault.json +204 -0
- offload/_root/data/findings/reviews/nested--nvhpc-c-update-from-structure-overwrites-attached-pointer-segv.json +191 -0
- offload/_root/data/findings/reviews/nvhpc-c-acc-atomic-update-sum-ice.json +277 -0
- offload/_root/data/findings/reviews/nvhpc-c-dist-schedule-chunk-compile-hang.json +113 -0
- offload/_root/data/findings/reviews/nvhpc-c-map-present-ignored.json +113 -0
- offload/_root/data/findings/reviews/nvhpc-c-ordered-in-target-nvcpfe-crash.json +113 -0
- offload/_root/data/findings/reviews/nvhpc-c-parallel-for-firstprivate-in-target.json +113 -0
- offload/_root/data/findings/reviews/nvhpc-defaultmap-firstprivate-explicit-map.json +113 -0
- offload/_root/data/findings/reviews/nvhpc-defaultmap-from-allocatable-indexing.json +132 -0
- offload/_root/data/findings/reviews/nvhpc-depend-inoutset-ignored.json +113 -0
- offload/_root/data/findings/reviews/nvhpc-dist-schedule-chunk-illegal-address.json +113 -0
- offload/_root/data/findings/reviews/nvhpc-managed-acc-shutdown-host-access.json +113 -0
- offload/_root/data/findings/reviews/nvhpc-parallel-if-in-target-nvvm-ice.json +113 -0
- offload/_root/data/findings/reviews/oop--afar-final-dealloc-device-link.json +132 -0
- offload/_root/data/findings/reviews/oop--afar-pdt-length-parameter-not-implemented.json +113 -0
- offload/_root/data/findings/reviews/oop--cce-class-is-device-link.json +130 -0
- offload/_root/data/findings/reviews/oop--cce-copy-alloc-component-section-fault.json +217 -0
- offload/_root/data/findings/reviews/oop--cce-copy-parent-to-component-tofrom-lost.json +217 -0
- offload/_root/data/findings/reviews/oop--cce-copy-second-member-section-lost.json +113 -0
- offload/_root/data/findings/reviews/oop--cce-element-component-map-lost.json +113 -0
- offload/_root/data/findings/reviews/oop--cce-final-dealloc-device-abort.json +208 -0
- offload/_root/data/findings/reviews/oop--cce-pdt-default-mapper-rejected.json +191 -0
- offload/_root/data/findings/reviews/oop--cce-polymorphic-dispatch-device-link.json +247 -0
- offload/_root/data/findings/reviews/oop--cce-section-of-element-component-overlap.json +113 -0
- offload/_root/data/findings/reviews/oop--cce-select-type-guard-not-taken.json +191 -0
- offload/_root/data/findings/reviews/oop--cce-udr-derived-type-unsupported.json +132 -0
- offload/_root/data/findings/reviews/oop--gcc-acc-parent-and-member-data-rejected.json +141 -0
- offload/_root/data/findings/reviews/oop--gcc-pdt-length-parameter-abort.json +141 -0
- offload/_root/data/findings/reviews/oop--gcc-polymorphic-dispatch-abort.json +217 -0
- offload/_root/data/findings/reviews/oop--gcc-vtab-not-marked-for-offload.json +113 -0
- offload/_root/data/findings/reviews/oop--nvhpc-copy-alloc-component-illegal-address.json +113 -0
- offload/_root/data/findings/reviews/oop--nvhpc-copy-pdt-length-parameter-illegal-address.json +236 -0
- offload/_root/data/findings/reviews/oop--nvhpc-named-mapper-rejected.json +113 -0
- offload/_root/data/findings/reviews/oop--nvhpc-polymorphic-dispatch-translate-failure.json +223 -0
- offload/_root/data/findings/reviews/oop--nvhpc-polymorphism-runtime-unsupported.json +126 -0
- offload/_root/data/findings/reviews/oop--nvhpc-type-bound-call-rejected.json +113 -0
- offload/_root/data/findings/reviews/oop--nvhpc-udr-derived-type-rejected.json +113 -0
- offload/_root/data/findings/reviews/stress--afar-c-lastprivate-combined-target-not-mapped.json +113 -0
- offload/_root/data/findings/reviews/stress--afar-target-scalar-implicit-firstprivate.json +175 -0
- offload/_root/data/findings/reviews/stress--cce-acc-declare-create-scalar-serial-firstprivate.json +113 -0
- offload/_root/data/findings/reviews/stress--cce-c-distribute-lastprivate-lost.json +113 -0
- offload/_root/data/findings/reviews/stress--cce-c-flto-offload-dropped.json +204 -0
- offload/_root/data/findings/reviews/stress--cce-ftn-cif-record-split-abort.json +113 -0
- offload/_root/data/findings/reviews/stress--cce-lastprivate-num-threads-collapse-simd.json +113 -0
- offload/_root/data/findings/reviews/stress--cce-teams-reduction-many-teams-wrap.json +113 -0
- offload/_root/data/findings/reviews/stress--cce21-declare-target-scalar-map-write-lost.json +113 -0
- offload/_root/data/findings/reviews/stress--gcc-declare-target-allocatable-component-ice.json +191 -0
- offload/_root/data/findings/reviews/stress--nvhpc-acc-derived-type-component-not-copied.json +126 -0
- offload/_root/data/findings/reviews/stress--nvhpc-c-lastprivate-teams-distribute-parallel-for-lost.json +113 -0
- offload/_root/data/findings/reviews/stress--nvhpc-declare-target-scalar-write-lost.json +113 -0
- offload/_root/data/findings/reviews/stress--nvhpc-lastprivate-combined-target-not-mapped.json +113 -0
- offload/_root/data/findings/reviews/stress--nvhpc-target-scalar-implicit-firstprivate.json +130 -0
- offload/_root/data/findings/reviews/target-update-sections-in-parallel.json +113 -0
- offload/_root/data/findings/stress/afar-c-lastprivate-combined-target-not-mapped.c +72 -0
- offload/_root/data/findings/stress/afar-target-scalar-implicit-firstprivate.f90 +47 -0
- offload/_root/data/findings/stress/cce-acc-declare-create-scalar-serial-firstprivate.f90 +43 -0
- offload/_root/data/findings/stress/cce-c-distribute-lastprivate-lost.c +52 -0
- offload/_root/data/findings/stress/cce-c-flto-offload-dropped.c +73 -0
- offload/_root/data/findings/stress/cce-ftn-cif-record-split-abort.f90 +109 -0
- offload/_root/data/findings/stress/cce-lastprivate-num-threads-collapse-simd.f90 +66 -0
- offload/_root/data/findings/stress/cce-teams-reduction-many-teams-wrap.f90 +55 -0
- offload/_root/data/findings/stress/cce21-declare-target-scalar-map-write-lost.f90 +58 -0
- offload/_root/data/findings/stress/controls/gcc-declare-target-allocatable-component-control.f90 +29 -0
- offload/_root/data/findings/stress/gcc-declare-target-allocatable-component-ice.f90 +61 -0
- offload/_root/data/findings/stress/nvhpc-acc-derived-type-component-not-copied.f90 +33 -0
- offload/_root/data/findings/stress/nvhpc-c-lastprivate-teams-distribute-parallel-for-lost.c +62 -0
- offload/_root/data/findings/stress/nvhpc-declare-target-scalar-write-lost.f90 +43 -0
- offload/_root/data/findings/stress/nvhpc-lastprivate-combined-target-not-mapped.f90 +60 -0
- offload/_root/data/findings/stress/nvhpc-target-scalar-implicit-firstprivate.f90 +41 -0
- offload/_root/data/findings/target-update-sections-in-parallel.f90 +53 -0
- offload/_root/data/issues.json +1 -0
- offload/_root/data/search.json +1 -0
- offload/_root/data/vendor/checks/build.py +288 -0
- offload/_version.py +24 -0
- offload/canuse.py +88 -0
- offload/cli.py +52 -0
- offload/data.py +85 -0
- offload/engine/__init__.py +0 -0
- offload/engine/acc_c_gen.py +415 -0
- offload/engine/acc_gen.py +1104 -0
- offload/engine/acc_rules.py +656 -0
- offload/engine/apps.py +804 -0
- offload/engine/baseline.py +324 -0
- offload/engine/c_gen.py +883 -0
- offload/engine/c_program.py +913 -0
- offload/engine/c_rules.py +503 -0
- offload/engine/campaign.py +1180 -0
- offload/engine/campaigns/__init__.py +2 -0
- offload/engine/campaigns/hecbench.py +153 -0
- offload/engine/campaigns/nested.py +76 -0
- offload/engine/campaigns/oop.py +61 -0
- offload/engine/canary.py +275 -0
- offload/engine/catalog.py +860 -0
- offload/engine/citations.py +532 -0
- offload/engine/clang_oracle.py +208 -0
- offload/engine/combos.py +234 -0
- offload/engine/confirm/__init__.py +2 -0
- offload/engine/confirm/backlog.py +159 -0
- offload/engine/confirm/claims.py +423 -0
- offload/engine/confirm/collectors.py +665 -0
- offload/engine/confirm/decisions.py +202 -0
- offload/engine/confirm/draft.py +195 -0
- offload/engine/confirm/engine.py +157 -0
- offload/engine/confirm/execute.py +382 -0
- offload/engine/confirm/facts.py +467 -0
- offload/engine/confirm/findings.py +617 -0
- offload/engine/confirm/forms.py +145 -0
- offload/engine/confirm/ingest.py +372 -0
- offload/engine/confirm/jobs.py +215 -0
- offload/engine/confirm/legality.py +323 -0
- offload/engine/confirm/machines.py +254 -0
- offload/engine/confirm/minimize.py +268 -0
- offload/engine/confirm/model.py +249 -0
- offload/engine/confirm/ports.py +107 -0
- offload/engine/confirm/programs.py +222 -0
- offload/engine/confirm/registry.py +151 -0
- offload/engine/confirm/regress.py +278 -0
- offload/engine/confirm/rules.py +565 -0
- offload/engine/confirm/store.py +63 -0
- offload/engine/confirm/triage.py +838 -0
- offload/engine/confirm/validate.py +607 -0
- offload/engine/confirm/witness.py +355 -0
- offload/engine/corpus_check.py +388 -0
- offload/engine/coverage.py +318 -0
- offload/engine/dataenv_gen.py +1318 -0
- offload/engine/dataenv_rules.py +278 -0
- offload/engine/devtemps.py +146 -0
- offload/engine/expected.py +2559 -0
- offload/engine/f2c.py +1783 -0
- offload/engine/finding_claims.py +330 -0
- offload/engine/finding_header.py +229 -0
- offload/engine/finding_rows.py +382 -0
- offload/engine/flang_oracle.py +299 -0
- offload/engine/fsource.py +620 -0
- offload/engine/fuzz.py +2455 -0
- offload/engine/fuzz_base.py +2016 -0
- offload/engine/fuzz_campaign.py +592 -0
- offload/engine/fuzz_exec.py +798 -0
- offload/engine/fuzz_min.py +1049 -0
- offload/engine/fuzz_profile.py +340 -0
- offload/engine/fuzz_report.py +1270 -0
- offload/engine/fuzz_steer.py +181 -0
- offload/engine/gate.py +1013 -0
- offload/engine/gate_report.py +711 -0
- offload/engine/gate_run.py +118 -0
- offload/engine/gate_stored.py +466 -0
- offload/engine/gen.py +1114 -0
- offload/engine/gen_templates.py +2583 -0
- offload/engine/grammar.py +695 -0
- offload/engine/harness.py +1472 -0
- offload/engine/harvest/__init__.py +3 -0
- offload/engine/harvest/c_runtime.py +465 -0
- offload/engine/harvest/checks.py +534 -0
- offload/engine/harvest/convert.py +784 -0
- offload/engine/harvest/f_runtime.py +668 -0
- offload/engine/harvest/filters.py +338 -0
- offload/engine/harvest/history.py +122 -0
- offload/engine/harvest/inventory.py +399 -0
- offload/engine/harvest2/__init__.py +5 -0
- offload/engine/harvest2/aomp.py +119 -0
- offload/engine/harvest2/examples.py +116 -0
- offload/engine/harvest2/gomp.py +679 -0
- offload/engine/harvest2/hand.py +150 -0
- offload/engine/harvest2/split.py +78 -0
- offload/engine/harvest_known/__init__.py +2 -0
- offload/engine/harvest_known/apps.py +65 -0
- offload/engine/harvest_known/cases.py +128 -0
- offload/engine/harvest_known/centres.py +184 -0
- offload/engine/harvest_known/forum.py +180 -0
- offload/engine/harvest_known/relnotes.py +42 -0
- offload/engine/harvest_known/textscan.py +107 -0
- offload/engine/hdrwrap.py +42 -0
- offload/engine/hecbench.py +568 -0
- offload/engine/hecbench_report.py +265 -0
- offload/engine/hecbench_run.py +483 -0
- offload/engine/idioms.py +1427 -0
- offload/engine/kbody_cites.py +81 -0
- offload/engine/kbody_emit.py +949 -0
- offload/engine/kbody_gen.py +795 -0
- offload/engine/legality_review.py +236 -0
- offload/engine/localcfg.py +58 -0
- offload/engine/malloc_dd.py +267 -0
- offload/engine/mutate.py +1933 -0
- offload/engine/nested_cites.py +196 -0
- offload/engine/nested_emit.py +789 -0
- offload/engine/nested_gen.py +1721 -0
- offload/engine/offload_scope.py +197 -0
- offload/engine/ompvv.py +624 -0
- offload/engine/oop_gen.py +2249 -0
- offload/engine/prerun.py +1435 -0
- offload/engine/program_source.py +739 -0
- offload/engine/provenance.py +103 -0
- offload/engine/reduce.py +2098 -0
- offload/engine/report.py +3374 -0
- offload/engine/root.py +33 -0
- offload/engine/rules.py +4256 -0
- offload/engine/run_matrix.py +325 -0
- offload/engine/site/__init__.py +1 -0
- offload/engine/site/columns.py +53 -0
- offload/engine/site/data.py +648 -0
- offload/engine/site/header.py +228 -0
- offload/engine/site/inputs.py +115 -0
- offload/engine/site/matrix.py +434 -0
- offload/engine/site/scrub.py +294 -0
- offload/engine/skeleton.py +121 -0
- offload/engine/spec_text.py +242 -0
- offload/engine/stress.py +4122 -0
- offload/engine/stress_c.py +1000 -0
- offload/engine/stress_exec.py +805 -0
- offload/engine/stress_min.py +248 -0
- offload/engine/stress_report.py +552 -0
- offload/engine/textclean.py +97 -0
- offload/engine/toolchains.py +1070 -0
- offload/engine/transforms.py +511 -0
- offload/engine/usage.py +1252 -0
- offload/engine/widen.py +673 -0
- offload/engine/widen_progs.py +2396 -0
- offload/issues.py +146 -0
- offtarget-0.1.0.dist-info/METADATA +86 -0
- offtarget-0.1.0.dist-info/RECORD +886 -0
- offtarget-0.1.0.dist-info/WHEEL +4 -0
- offtarget-0.1.0.dist-info/entry_points.txt +2 -0
- offtarget-0.1.0.dist-info/licenses/LICENSE +21 -0
- offtarget-0.1.0.dist-info/licenses/THIRD_PARTY_NOTICES.md +20 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
! scope: host+device: multi-threaded offload (host threads each offload their part of an array)
|
|
2
|
+
! Host+device pattern (minimized and re-verified): two
|
|
3
|
+
! host threads (parallel do, num_threads(2)) each offload one half of an
|
|
4
|
+
! allocatable array b with map(to: a(lo:hi)) map(from: b(lo:hi)).
|
|
5
|
+
!
|
|
6
|
+
! Conformance (OpenMP 5.2). The target region references b (and a), so b
|
|
7
|
+
! also has an implicit data-mapping attribute (5.2 §5.8.1, p.148:
|
|
8
|
+
! "References to structure elements or array elements are treated as
|
|
9
|
+
! references to the structure or array, respectively, for the purposes of
|
|
10
|
+
! determining implicit data-mapping or data-sharing attributes"). When the
|
|
11
|
+
! other thread's half is not yet on the device, 5.2 §5.8.3 p.154: "If a
|
|
12
|
+
! list item with an implicit data-mapping attribute does not have any
|
|
13
|
+
! corresponding storage in the device data environment prior to a task
|
|
14
|
+
! encountering the construct associated with the map clause, and one or
|
|
15
|
+
! more contiguous parts of the original storage are either list items or
|
|
16
|
+
! base pointers to list items that are explicitly mapped on the
|
|
17
|
+
! construct, only those parts of the original storage will have
|
|
18
|
+
! corresponding storage in the device data environment as a result of the
|
|
19
|
+
! map clauses on the construct." When it is, p.154: "If a single
|
|
20
|
+
! contiguous part of the original storage of a list item with an implicit
|
|
21
|
+
! data-mapping attribute has corresponding storage in the device data
|
|
22
|
+
! environment prior to a task encountering the construct on which the map
|
|
23
|
+
! clause appears, only that part of the original storage will have
|
|
24
|
+
! corresponding storage in the device data environment as a result of the
|
|
25
|
+
! map clause." Each explicit half is a distinct mappable storage block
|
|
26
|
+
! (p.152: "The storage for each other map clause list item becomes a
|
|
27
|
+
! distinct mappable storage block") that no earlier construct created, so
|
|
28
|
+
! no restriction of p.156 applies ("If any part of the original storage
|
|
29
|
+
! of a list item with an explicit data-mapping attribute has corresponding
|
|
30
|
+
! storage ... all of the original storage must have corresponding
|
|
31
|
+
! storage": no part of the other half is mapped). Every interleaving is
|
|
32
|
+
! defined and every half comes back. Expected: bad= 0.
|
|
33
|
+
!
|
|
34
|
+
! With three or more threads (the program: four quarters) the
|
|
35
|
+
! program is NOT conforming: when a construct is encountered while the
|
|
36
|
+
! sections of two other threads are present, p.156: "If an array appears
|
|
37
|
+
! as a list item in a map clause, multiple parts of the array have
|
|
38
|
+
! corresponding storage in the device data environment prior to a task
|
|
39
|
+
! encountering the construct associated with the map clause, and the
|
|
40
|
+
! corresponding storage for those parts was created by maps from more
|
|
41
|
+
! than one earlier construct, the behavior is unspecified." (5.1 §2.21.7.1
|
|
42
|
+
! p.354 has the same sentence; 6.0 §7.9.6 p.287 makes it a restriction:
|
|
43
|
+
! "If a list item in a map clause has corresponding storage in the device
|
|
44
|
+
! data environment, all corresponding storage must correspond to a single
|
|
45
|
+
! mappable storage block that was previously mapped", which this
|
|
46
|
+
! two-thread program also violates under 6.0 when the constructs overlap.)
|
|
47
|
+
! The catalog's multi-threaded programs now map the arrays whole once.
|
|
48
|
+
!
|
|
49
|
+
! Observed (tuolumne, MI300A, 2026-10-21, 5 runs each, -O2,
|
|
50
|
+
! OMP_TARGET_OFFLOAD=mandatory): AFAR 24.0.0git bad= 32 at HSA_XNACK=0
|
|
51
|
+
! (correct at 1, zero-copy); CCE 19.0.0, 20.0.2, 21.0.3 bad= 32 at both.
|
|
52
|
+
! Correct on every toolchain with num_threads(1) and with fixed-size
|
|
53
|
+
! arrays (integer :: a(n), b(n)). With target nowait: AFAR bad= 32 at
|
|
54
|
+
! HSA_XNACK=0; CCE 19 intermittently bad= 32 or aborts (hipFree returned
|
|
55
|
+
! hipErrorInvalidValue), CCE 21 aborts at HSA_XNACK=1 (Present_table::
|
|
56
|
+
! release failed).
|
|
57
|
+
! AFAR: amdflang -fopenmp --offload-arch=gfx942 -O2
|
|
58
|
+
! CCE: ftn -fopenmp -O2 (module load cce/<v> craype-accel-amd-gfx942 rocm)
|
|
59
|
+
! Run: OMP_TARGET_OFFLOAD=mandatory HSA_XNACK=0 ./a.out
|
|
60
|
+
program p
|
|
61
|
+
implicit none
|
|
62
|
+
integer, parameter :: n = 64
|
|
63
|
+
integer, allocatable :: a(:), b(:)
|
|
64
|
+
integer :: i, c, lo, hi, bad
|
|
65
|
+
allocate(a(n), b(n))
|
|
66
|
+
do i = 1, n
|
|
67
|
+
a(i) = i
|
|
68
|
+
b(i) = 0
|
|
69
|
+
end do
|
|
70
|
+
!$omp parallel do num_threads(2) private(lo, hi)
|
|
71
|
+
do c = 1, 2
|
|
72
|
+
lo = (c - 1)*32 + 1
|
|
73
|
+
hi = c*32
|
|
74
|
+
!$omp target map(to: a(lo:hi)) map(from: b(lo:hi))
|
|
75
|
+
do i = lo, hi
|
|
76
|
+
b(i) = 2*a(i) + 1
|
|
77
|
+
end do
|
|
78
|
+
!$omp end target
|
|
79
|
+
end do
|
|
80
|
+
!$omp end parallel do
|
|
81
|
+
bad = 0
|
|
82
|
+
do i = 1, n
|
|
83
|
+
if (b(i) /= 2*i + 1) bad = bad + 1
|
|
84
|
+
end do
|
|
85
|
+
print *, 'bad=', bad
|
|
86
|
+
end program p
|
|
87
|
+
! site:
|
|
88
|
+
! title: ftn: two host threads mapping disjoint halves of an allocatable array lose one half
|
|
89
|
+
! control: ../vendor/checks/src/other/control/multithread-allocatable-section-maps-control.f90 num_threads(1) instead of
|
|
90
|
+
! + num_threads(2)
|
|
91
|
+
! end site
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
// # Finding (nested-data): AFAR and CCE (clang front end) reject a member access through a call result inside a target region:
|
|
2
|
+
// # "expected addressable lvalue in 'map' clause"
|
|
3
|
+
//
|
|
4
|
+
// - toolchains and modes that fail: afar (AFAR 24.3.0), cce19 (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE
|
|
5
|
+
// 21.0.4); modes: unified, copy; -O2
|
|
6
|
+
// - build: amdclang -fopenmp --offload-arch=gfx942 -O2 (afar); craycc -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa
|
|
7
|
+
// -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx942 -O2 (cce19, cce20, cce21, cce21_4)
|
|
8
|
+
// - failure: rejected
|
|
9
|
+
// - observed: `site-nested--afar-cce-c-call-result-member-in-target-rejected.c:48:50: error: expected addressable lvalue in 'map'
|
|
10
|
+
// clause`; identical signature on 10 of 10 failing cells
|
|
11
|
+
// - expected: compiles and prints `tot= 10` with `check=pass`
|
|
12
|
+
// - rule: only variables referenced in a target construct get an implicit data-mapping attribute: "the first matching
|
|
13
|
+
// rule from the following list determines the implicit data-mapping (or data-sharing) attribute for variables
|
|
14
|
+
// referenced in a target construct" (5.2 §5.8.1 p.148 l.3-5); the member `child(r)->a` is a structure element reached
|
|
15
|
+
// through a function result, not a variable, and r->nx->a[0:4] is mapped explicitly
|
|
16
|
+
// - same-compiler control: controls/p2-ctl-pointer-variable.c (one change from this file; correct on afar (AFAR 24.3.0), cce19 (CCE
|
|
17
|
+
// 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4); rows results/nested/red/red7.jsonl,
|
|
18
|
+
// results/nested/red/tuo1.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl); controls/p3-ctl-direct-member.c
|
|
19
|
+
// (one change from this file; correct on afar (AFAR 24.3.0), cce19 (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4
|
|
20
|
+
// (CCE 21.0.4); rows results/nested/red/red7.jsonl, results/nested/red/tuo1.jsonl, results/nested/red/wgs.jsonl,
|
|
21
|
+
// results/nested/red/wnv.jsonl)
|
|
22
|
+
// - other families: nvhpc (NVHPC 25.11), nvhpc269 (NVHPC 26.9), gcc_g90 (GCC 16.2.0), gcc_sm80 (GCC 16.2.0) run the file correctly
|
|
23
|
+
// (rows results/nested/red/red7.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl, site rows, check case
|
|
24
|
+
// site-nested--afar-cce-c-call-result-member-in-target-rejected)
|
|
25
|
+
// - gate and confirmer: campaign gate of the programs below: 10 cells, 10 confirmed in the four environments (a-d; (c) on another
|
|
26
|
+
// node or GPU; rows results/nested/big/gate_reruns.part.tuolumne1012.1040717.jsonl,
|
|
27
|
+
// results/nested/big/gate_reruns.part.tuolumne1030.1284552.jsonl, results/nested/big/gate_reruns.part.tuolumne1176.1251749.jsonl,
|
|
28
|
+
// results/nested/big/gate_reruns.part.tuolumne1245.1517583.jsonl, results/nested/big/gate_reruns.part.tuolumne1246.1434668.jsonl,
|
|
29
|
+
// results/nested/big/rows.part.tuolumne1010.1956389.jsonl, results/nested/big/rows.part.tuolumne1040.1523848.jsonl,
|
|
30
|
+
// results/nested/big/rows.part.tuolumne1604.1239313.jsonl, results/nested/big/rows.part.tuolumne1624.1197409.jsonl,
|
|
31
|
+
// results/nested/big/rows.part.tuolumne1797.1146311.jsonl, results/nested/main/gate_reruns.part.tuolumne1095.961942.jsonl,
|
|
32
|
+
// results/nested/main/gate_reruns.part.tuolumne1789.919396.jsonl,
|
|
33
|
+
// results/nested/main/gate_reruns.part.tuolumne1955.3910568.jsonl,
|
|
34
|
+
// results/nested/main/gate_reruns.part.tuolumne1955.4072524.jsonl, results/nested/main/rows.part.tuolumne1955.994167.jsonl)
|
|
35
|
+
// - programs (1): nd-fnres-c-child-pointer
|
|
36
|
+
// - legality: the rules (offload.engine.rules) accept it; GCC compiles and runs it; the clang front ends of AFAR and CCE are
|
|
37
|
+
// the two compilers that reject it (they share a lineage, so neither witnesses the other)
|
|
38
|
+
#include <stdio.h>
|
|
39
|
+
#include <stdlib.h>
|
|
40
|
+
#include <omp.h>
|
|
41
|
+
struct n { int *a; struct n *nx; };
|
|
42
|
+
#pragma omp declare target
|
|
43
|
+
static struct n *child(struct n *r) { return r->nx; }
|
|
44
|
+
#pragma omp end declare target
|
|
45
|
+
int main(void)
|
|
46
|
+
{
|
|
47
|
+
int hf = 1, i, tot = 0, ok;
|
|
48
|
+
struct n *r = calloc(1, sizeof *r);
|
|
49
|
+
r->nx = calloc(1, sizeof *r->nx);
|
|
50
|
+
r->nx->a = malloc(4 * sizeof(int));
|
|
51
|
+
for (i = 0; i < 4; i++) r->nx->a[i] = i + 1;
|
|
52
|
+
#pragma omp target map(from: hf)
|
|
53
|
+
hf = omp_is_initial_device() ? 1 : 0;
|
|
54
|
+
#pragma omp target map(tofrom: tot) map(to: r[0:1]) map(to: r->nx[0:1]) map(to: r->nx->a[0:4])
|
|
55
|
+
{
|
|
56
|
+
for (int q = 0; q < 4; q++) tot += child(r)->a[q];
|
|
57
|
+
}
|
|
58
|
+
ok = tot == 10;
|
|
59
|
+
printf("tot= %d\n", tot);
|
|
60
|
+
printf("RESULT ran_on_host=%d check=%s\n", hf, ok ? "pass" : "fail");
|
|
61
|
+
return 0;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// site:
|
|
65
|
+
// title: AFAR and CCE: member of a function result in a target region rejected
|
|
66
|
+
// summary: AFAR and CCE reject a member access through a function call result inside a target region.
|
|
67
|
+
// control: nested/controls/p2-ctl-pointer-variable.c one change from the finding; correct on afar, cce19, cce20, cce21, cce21_4
|
|
68
|
+
// control: nested/controls/p3-ctl-direct-member.c one change from the finding; correct on afar, cce19, cce20, cce21, cce21_4
|
|
69
|
+
// end site
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// # Finding (nested-data): AFAR and CCE (clang front end) reject target update with a structure and one of its pointer members'
|
|
2
|
+
// # arrays in one clause
|
|
3
|
+
//
|
|
4
|
+
// - toolchains and modes that fail: afar (AFAR 24.3.0), cce19 (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE
|
|
5
|
+
// 21.0.4); modes: unified, copy; -O2
|
|
6
|
+
// - build: amdclang -fopenmp --offload-arch=gfx942 -O2 (afar); craycc -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa
|
|
7
|
+
// -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx942 -O2 (cce19, cce20, cce21, cce21_4)
|
|
8
|
+
// - failure: rejected
|
|
9
|
+
// - observed: `site-nested--afar-cce-c-update-struct-and-member-rejected.c:57:40: error: same pointer dereferenced in multiple
|
|
10
|
+
// different ways in map clause expressio`; identical signature on 10 of 10 failing cells
|
|
11
|
+
// - expected: compiles and prints `tot= 105` with `check=pass`
|
|
12
|
+
// - rule: the list items of a data-motion clause are locators; "The list items that appear in a map clause may include
|
|
13
|
+
// array sections and structure elements" (5.2 §5.8.3 p.151 l.13) and a to or from clause on target update names list
|
|
14
|
+
// items the same way (§5.9 p.165 l.7-14); the restrictions of data-motion clauses are only "Each list item clause must
|
|
15
|
+
// have a mappable type." (5.2 §5.9 p.166 l.13-14); the target update construct has no restriction on two list items
|
|
16
|
+
// with one base variable (§13.9 p.289)
|
|
17
|
+
// - same-compiler control: controls/u3-ctl-update-member-only.c (one change from this file; correct on afar (AFAR 24.3.0), cce19
|
|
18
|
+
// (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4); rows results/nested/red/red7.jsonl,
|
|
19
|
+
// results/nested/red/tuo1.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl); controls/u4-ctl-two-updates.c (one
|
|
20
|
+
// change from this file; correct on afar (AFAR 24.3.0), cce19 (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE
|
|
21
|
+
// 21.0.4); rows results/nested/red/red7.jsonl, results/nested/red/tuo1.jsonl, results/nested/red/wgs.jsonl,
|
|
22
|
+
// results/nested/red/wnv.jsonl); controls/u5-ctl-same-list-in-map.c (one change from this file; correct on afar (AFAR 24.3.0),
|
|
23
|
+
// cce19 (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4); rows results/nested/red/red7.jsonl,
|
|
24
|
+
// results/nested/red/tuo1.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl)
|
|
25
|
+
// - other families: nvhpc (NVHPC 25.11), nvhpc269 (NVHPC 26.9), gcc_g90 (GCC 16.2.0), gcc_sm80 (GCC 16.2.0) run the file correctly
|
|
26
|
+
// in managed mode (rows results/nested/red/red7.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl, site rows,
|
|
27
|
+
// check case site-nested--afar-cce-c-update-struct-and-member-rejected); nvhpc (NVHPC 25.11), nvhpc269 (NVHPC 26.9) fail it
|
|
28
|
+
// another way in copy mode, e.g. `Failing in Thread:1`
|
|
29
|
+
// - gate and confirmer: campaign gate of the programs below: 590 cells, 590 confirmed in the four environments (a-d; (c) on another
|
|
30
|
+
// node or GPU; rows results/nested/big/gate_reruns.part.tuolumne1010.3222831.jsonl,
|
|
31
|
+
// results/nested/big/gate_reruns.part.tuolumne1012.1040717.jsonl, results/nested/big/gate_reruns.part.tuolumne1030.1284552.jsonl,
|
|
32
|
+
// results/nested/big/gate_reruns.part.tuolumne1176.1251749.jsonl, results/nested/big/gate_reruns.part.tuolumne1245.1517583.jsonl,
|
|
33
|
+
// results/nested/big/gate_reruns.part.tuolumne1246.1434668.jsonl, results/nested/big/rows.part.tuolumne1010.1956389.jsonl,
|
|
34
|
+
// results/nested/big/rows.part.tuolumne1040.1523848.jsonl, results/nested/big/rows.part.tuolumne1604.1239313.jsonl,
|
|
35
|
+
// results/nested/big/rows.part.tuolumne1624.1197409.jsonl, results/nested/big/rows.part.tuolumne1797.1146311.jsonl,
|
|
36
|
+
// results/nested/main/gate_reruns.part.tuolumne1095.961942.jsonl, results/nested/main/gate_reruns.part.tuolumne1789.919396.jsonl,
|
|
37
|
+
// results/nested/main/gate_reruns.part.tuolumne1955.3910568.jsonl,
|
|
38
|
+
// results/nested/main/gate_reruns.part.tuolumne1955.4072524.jsonl, results/nested/main/rows.part.tuolumne1955.994167.jsonl)
|
|
39
|
+
// - programs (59): nd-c-omp-update-alias-d2-332dddeb, nd-c-omp-update-alias-d2-684cb0b8, nd-c-omp-update-alias-d2-7e63bd9c,
|
|
40
|
+
// nd-c-omp-update-aliassub-d2-7f474889, nd-c-omp-update-aliassub-d2-94cac870, nd-c-omp-update-aliassub-d2-c7c56309,
|
|
41
|
+
// nd-c-omp-update-chain-d1-7fac5787, nd-c-omp-update-chain-d1-a679e114, nd-c-omp-update-chain-d2-114e1ffc,
|
|
42
|
+
// nd-c-omp-update-chain-d2-1585f8af, nd-c-omp-update-chain-d2-15c71a46, nd-c-omp-update-chain-d2-1f314a7c,
|
|
43
|
+
// nd-c-omp-update-chain-d2-1fcc5e18, nd-c-omp-update-chain-d2-2b8c33ae, nd-c-omp-update-chain-d2-2d0d559e,
|
|
44
|
+
// nd-c-omp-update-chain-d2-44c37206, nd-c-omp-update-chain-d2-60aec85d, nd-c-omp-update-chain-d2-61da37e6,
|
|
45
|
+
// nd-c-omp-update-chain-d2-6af5c7e2, nd-c-omp-update-chain-d2-7f8add9c, nd-c-omp-update-chain-d2-86fbbf97,
|
|
46
|
+
// nd-c-omp-update-chain-d2-a3703a98, nd-c-omp-update-chain-d2-b6fcbb9f, nd-c-omp-update-chain-d2-b7041f75,
|
|
47
|
+
// nd-c-omp-update-chain-d2-bd065bcd, nd-c-omp-update-chain-d2-cca853ce, nd-c-omp-update-chain-d2-db6ed5e2,
|
|
48
|
+
// nd-c-omp-update-chain-d3-05025df3, nd-c-omp-update-chain-d3-0c64953c, nd-c-omp-update-chain-d3-0f5b4780,
|
|
49
|
+
// nd-c-omp-update-chain-d3-1f5ebce9, nd-c-omp-update-chain-d3-2620c220, nd-c-omp-update-chain-d3-2be3a628,
|
|
50
|
+
// nd-c-omp-update-chain-d3-4643770f, nd-c-omp-update-chain-d3-5648fa65, nd-c-omp-update-chain-d3-65936503,
|
|
51
|
+
// nd-c-omp-update-chain-d3-6bc24e3c, nd-c-omp-update-chain-d3-6f0b33d0, nd-c-omp-update-chain-d3-700e7c94,
|
|
52
|
+
// nd-c-omp-update-chain-d3-70128cef, nd-c-omp-update-chain-d3-8b59135d, nd-c-omp-update-chain-d3-8ba10689,
|
|
53
|
+
// nd-c-omp-update-chain-d3-8f2a97eb, nd-c-omp-update-chain-d3-97a31dfc, nd-c-omp-update-chain-d3-a29029aa,
|
|
54
|
+
// nd-c-omp-update-chain-d3-a9134361, nd-c-omp-update-chain-d3-b91a32d4, nd-c-omp-update-chain-d3-c5604bb2,
|
|
55
|
+
// nd-c-omp-update-chain-d4-19f9f60a, nd-c-omp-update-diamond-d3-3f65ce61, nd-c-omp-update-diamond-d3-41a1f708,
|
|
56
|
+
// nd-c-omp-update-diamond-d3-5b90e213, nd-c-omp-update-list-d2-58efae8c, nd-c-omp-update-list-d3-842299a3,
|
|
57
|
+
// nd-c-omp-update-tree-d2-5148e00e, nd-c-omp-update-tree-d2-78bc7f0b, nd-c-omp-update-tree-d2-bf7639b6,
|
|
58
|
+
// nd-c-omp-update-tree-d3-725ebde6, nd-c-omp-update-tree-d3-ca80229f
|
|
59
|
+
// - legality: the rules (offload.engine.rules) accept it; GCC compiles and runs it (GCC is no legality witness); the
|
|
60
|
+
// AFAR/CCE C front ends reject it with a diagnostic, so the only other front end is NVHPC nvc, which accepted the
|
|
61
|
+
// campaign's update programs of this form where it ran at all (results/nested/main/witness*.jsonl)
|
|
62
|
+
#include <stdio.h>
|
|
63
|
+
#include <stdlib.h>
|
|
64
|
+
#include <omp.h>
|
|
65
|
+
struct s { int v; int *a; };
|
|
66
|
+
int main(void)
|
|
67
|
+
{
|
|
68
|
+
int hf = 1, i, tot = 0, ok;
|
|
69
|
+
struct s *r = malloc(sizeof *r);
|
|
70
|
+
r->v = 5; r->a = malloc(4 * sizeof(int));
|
|
71
|
+
for (i = 0; i < 4; i++) r->a[i] = i + 1;
|
|
72
|
+
#pragma omp target map(from: hf)
|
|
73
|
+
hf = omp_is_initial_device() ? 1 : 0;
|
|
74
|
+
#pragma omp target enter data map(to: r[0:1]) map(to: r->a[0:4])
|
|
75
|
+
for (i = 0; i < 4; i++) r->a[i] = 10 * (i + 1);
|
|
76
|
+
#pragma omp target update to(r[0:1], r->a[0:4])
|
|
77
|
+
#pragma omp target map(tofrom: tot)
|
|
78
|
+
{ tot = r->v; for (int q = 0; q < 4; q++) tot += r->a[q]; }
|
|
79
|
+
#pragma omp target exit data map(release: r->a[0:4]) map(release: r[0:1])
|
|
80
|
+
ok = tot == 105;
|
|
81
|
+
printf("tot= %d\n", tot);
|
|
82
|
+
printf("RESULT ran_on_host=%d check=%s\n", hf, ok ? "pass" : "fail");
|
|
83
|
+
return 0;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// site:
|
|
87
|
+
// title: target update with a structure and a member array in one clause rejected
|
|
88
|
+
// summary: AFAR and CCE reject a target update clause naming a structure and the array its pointer member points to.
|
|
89
|
+
// control: nested/controls/u3-ctl-update-member-only.c one change from the finding; correct on afar, cce19, cce20, cce21, cce21_4
|
|
90
|
+
// control: nested/controls/u4-ctl-two-updates.c one change from the finding; correct on afar, cce19, cce20, cce21, cce21_4
|
|
91
|
+
// control: nested/controls/u5-ctl-same-list-in-map.c one change from the finding; correct on afar, cce19, cce20, cce21, cce21_4
|
|
92
|
+
// end site
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
! # Finding (nested-data): AFAR flang, copy mode: a derived-type object reached through a pointer (the root, or a pointer
|
|
2
|
+
! # component) with an allocatable component, mapped by enter data, makes the kernel fault
|
|
3
|
+
!
|
|
4
|
+
! - toolchains and modes that fail: afar (AFAR 24.3.0); modes: copy; -O2
|
|
5
|
+
! - build: amdflang -fopenmp --offload-arch=gfx942 -O2
|
|
6
|
+
! - failure: crash
|
|
7
|
+
! - observed: `Warning: Queue error - HSA_STATUS_ERROR_MEMORY_FAULT` (killed by signal 6); identical signature on 1 of 1 failing
|
|
8
|
+
! cells
|
|
9
|
+
! - expected: compiles and prints `tot= 828`, `sum= 884` with `check=pass`
|
|
10
|
+
! - rule: the structure is mapped by the target enter data directive and "If a variable is not a scalar then it is
|
|
11
|
+
! treated as if it had appeared in a map clause with a map-type of tofrom" (5.2 §5.8.1 p.149 l.4-5), so a reference in
|
|
12
|
+
! the later target region finds it present; an allocatable component of a mapped derived type is mapped with it by the
|
|
13
|
+
! predefined default mapper (5.2 §5.8.2 p.150 l.2-4)
|
|
14
|
+
! - same-compiler control: controls/m2-ctl-variable-root.f90 (one change from this file; correct on afar (AFAR 24.3.0); rows
|
|
15
|
+
! results/nested/red/tuo3.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl);
|
|
16
|
+
! controls/m3-ctl-fixed-array-component.f90 (one change from this file; correct on afar (AFAR 24.3.0); rows
|
|
17
|
+
! results/nested/red/tuo3.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl); controls/m5-ctl-no-enter-data.f90
|
|
18
|
+
! (one change from this file; correct on afar (AFAR 24.3.0); rows results/nested/red/tuo3.jsonl, results/nested/red/wgs.jsonl,
|
|
19
|
+
! results/nested/red/wnv.jsonl); controls/q2-ctl-fixed-array.f90 (one change from this file; correct on afar (AFAR 24.3.0); rows
|
|
20
|
+
! results/nested/red/tuo11.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl);
|
|
21
|
+
! controls/q3-ctl-allocatable-component-of-the-variable.f90 (one change from this file; correct on afar (AFAR 24.3.0); rows
|
|
22
|
+
! results/nested/red/tuo11.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl)
|
|
23
|
+
! - other families: cce19 (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4), nvhpc (NVHPC 25.11), nvhpc269
|
|
24
|
+
! (NVHPC 26.9), gcc_g90 (GCC 16.2.0), gcc_sm80 (GCC 16.2.0) run the file correctly in managed mode (rows
|
|
25
|
+
! results/nested/red/red7.jsonl, results/nested/red/tuo2.jsonl, results/nested/red/tuo3.jsonl, results/nested/red/tuo6.jsonl,
|
|
26
|
+
! results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl, site rows, check case
|
|
27
|
+
! site-nested--afar-flang-pointer-root-allocatable-component-enter-data-fault); nvhpc (NVHPC 25.11), nvhpc269 (NVHPC 26.9) fail it
|
|
28
|
+
! another way in copy mode, e.g. `Failing in Thread:1`
|
|
29
|
+
! - gate and confirmer: campaign gate of the programs below: 123 cells, 123 confirmed in the four environments (a-d; (c) on another
|
|
30
|
+
! node or GPU; rows results/nested/big/gate_reruns.part.tuolumne1010.3222831.jsonl,
|
|
31
|
+
! results/nested/big/gate_reruns.part.tuolumne1012.1040717.jsonl, results/nested/big/gate_reruns.part.tuolumne1176.1251749.jsonl,
|
|
32
|
+
! results/nested/big/gate_reruns.part.tuolumne1246.1434668.jsonl, results/nested/big/rows.part.tuolumne1010.1956389.jsonl,
|
|
33
|
+
! results/nested/big/rows.part.tuolumne1040.1523848.jsonl, results/nested/big/rows.part.tuolumne1624.1197409.jsonl,
|
|
34
|
+
! results/nested/main/gate_reruns.part.tuolumne1095.961942.jsonl, results/nested/main/gate_reruns.part.tuolumne1789.919396.jsonl,
|
|
35
|
+
! results/nested/main/gate_reruns.part.tuolumne1955.3910568.jsonl,
|
|
36
|
+
! results/nested/main/gate_reruns.part.tuolumne1955.4072524.jsonl, results/nested/main/rows.part.tuolumne1955.994167.jsonl)
|
|
37
|
+
! - programs (123): nd-f-omp-always-chain-d2-0b79aaa6, nd-f-omp-always-chain-d2-5b08a1dd, nd-f-omp-always-chain-d2-75ca3965,
|
|
38
|
+
! nd-f-omp-always-chain-d2-a1106ec3, nd-f-omp-always-chain-d2-af297865, nd-f-omp-always-chain-d2-b1ac0170,
|
|
39
|
+
! nd-f-omp-always-chain-d2-c87159f0, nd-f-omp-always-chain-d2-c931e678, nd-f-omp-always-chain-d3-0a19c378,
|
|
40
|
+
! nd-f-omp-always-chain-d3-23f3159f, nd-f-omp-always-chain-d3-6429d1f2, nd-f-omp-always-chain-d3-a2c50d15,
|
|
41
|
+
! nd-f-omp-always-chain-d3-d619d8f3, nd-f-omp-always-chain-d3-e6c04585, nd-f-omp-always-list-d2-1a3866f8,
|
|
42
|
+
! nd-f-omp-close-chain-d2-23d11b6c, nd-f-omp-close-chain-d2-53ab37a7, nd-f-omp-close-chain-d3-6805e4ee,
|
|
43
|
+
! nd-f-omp-close-chain-d3-7d95925f, nd-f-omp-close-chain-d3-9c214397, nd-f-omp-close-tree-d2-77fe8f90,
|
|
44
|
+
! nd-f-omp-enter-chain-d1-b2c324d9, nd-f-omp-enter-chain-d2-02ac29dd, nd-f-omp-enter-chain-d2-3197d0a8,
|
|
45
|
+
! nd-f-omp-enter-chain-d2-3be528ec, nd-f-omp-enter-chain-d2-446a7bbe, nd-f-omp-enter-chain-d2-6f9da85d,
|
|
46
|
+
! nd-f-omp-enter-chain-d2-a22671ae, nd-f-omp-enter-chain-d2-b1679c00, nd-f-omp-enter-chain-d2-b668ef1a,
|
|
47
|
+
! nd-f-omp-enter-chain-d2-c4de674a, nd-f-omp-enter-chain-d2-c8d85554, nd-f-omp-enter-chain-d2-cee2a3ae,
|
|
48
|
+
! nd-f-omp-enter-chain-d2-cf1e37c5, nd-f-omp-enter-chain-d2-ff520002, nd-f-omp-enter-chain-d3-0b3bdece,
|
|
49
|
+
! nd-f-omp-enter-chain-d3-181eb7ae, nd-f-omp-enter-chain-d3-27fc4e52, nd-f-omp-enter-chain-d3-5f7d1cd9,
|
|
50
|
+
! nd-f-omp-enter-chain-d3-6d18ea3c, nd-f-omp-enter-chain-d3-77e3bd5d, nd-f-omp-enter-chain-d3-8b826b39,
|
|
51
|
+
! nd-f-omp-enter-chain-d3-a54517a7, nd-f-omp-enter-chain-d3-e0125bfa, nd-f-omp-enter-list-d3-9b3ce758,
|
|
52
|
+
! nd-f-omp-enter-list-d4-880965d5, nd-f-omp-enter-tree-d2-15fff1f4, nd-f-omp-enter-tree-d2-c78514c5,
|
|
53
|
+
! nd-f-omp-mapper-chain-d1-0d36f37d, nd-f-omp-mapper-chain-d2-15137215, nd-f-omp-mapper-chain-d2-90256a87,
|
|
54
|
+
! nd-f-omp-mapper-chain-d2-b48755f6, nd-f-omp-mapper-chain-d2-c224f613, nd-f-omp-mapper-chain-d2-c26a1f3c,
|
|
55
|
+
! nd-f-omp-mapper_enter-chain-d2-194e7b57, nd-f-omp-mapper_enter-chain-d2-42baa788, nd-f-omp-mapper_enter-chain-d2-58989314,
|
|
56
|
+
! nd-f-omp-mapper_enter-chain-d2-843af8df, nd-f-omp-mapper_enter-chain-d2-a42fde14, nd-f-omp-mapper_enter-chain-d2-d66c239d,
|
|
57
|
+
! nd-f-omp-one-chain-d2-195ea825, nd-f-omp-one-chain-d2-1a15b55c, nd-f-omp-one-chain-d2-2a889054, nd-f-omp-one-chain-d2-30e18d0f,
|
|
58
|
+
! nd-f-omp-one-chain-d2-db9b2606, nd-f-omp-one-chain-d3-4df89a9f, nd-f-omp-one-chain-d3-7d0cf848, nd-f-omp-one-list-d2-1b67cb71,
|
|
59
|
+
! nd-f-omp-one-tree-d2-fe998394, nd-f-omp-present-chain-d2-6b433240, nd-f-omp-present-chain-d2-8328294e,
|
|
60
|
+
! nd-f-omp-present-chain-d2-98f96e52, nd-f-omp-present-chain-d2-9d7a0b6d, nd-f-omp-present-chain-d2-f3cf6eb5,
|
|
61
|
+
! nd-f-omp-present-chain-d3-04d9e7d3, nd-f-omp-present-chain-d3-512ec550, nd-f-omp-present-chain-d3-c07b93ee,
|
|
62
|
+
! nd-f-omp-present-chain-d3-d110420c, nd-f-omp-present-list-d2-865f5787, nd-f-omp-tdata-chain-d2-3ddce863,
|
|
63
|
+
! nd-f-omp-tdata-chain-d2-d7b601da, nd-f-omp-tdata-chain-d3-2be49672, nd-f-omp-tdata-chain-d3-5a6fdac0,
|
|
64
|
+
! nd-f-omp-tdata-chain-d3-85766a94, nd-f-omp-tdata-chain-d3-88f311be, nd-f-omp-tdata-chain-d3-8af496d0,
|
|
65
|
+
! nd-f-omp-tdata-chain-d3-96349065, nd-f-omp-tdata-list-d2-c3abf961, nd-f-omp-tdata-tree-d2-a44b533c,
|
|
66
|
+
! nd-f-omp-tdata-tree-d2-ba8e4a37, nd-f-omp-tdata_nested-chain-d2-ee52b5c1, nd-f-omp-tdata_nested-chain-d2-f63872c4,
|
|
67
|
+
! nd-f-omp-tdata_nested-chain-d3-1d9ac350, nd-f-omp-tdata_nested-chain-d3-78ee2d27, nd-f-omp-tdata_nested-chain-d3-833d215e,
|
|
68
|
+
! nd-f-omp-tdata_nested-chain-d3-9dd3b6ad, nd-f-omp-tdata_nested-chain-d3-cec76abb, nd-f-omp-tdata_nested-chain-d3-e0671608,
|
|
69
|
+
! nd-f-omp-tdata_nested-chain-d3-e61550e7, nd-f-omp-tdata_nested-chain-d4-355811c0, nd-f-omp-update-chain-d2-018eb6d9,
|
|
70
|
+
! nd-f-omp-update-chain-d2-0545e9b5, nd-f-omp-update-chain-d2-3daf06e5, nd-f-omp-update-chain-d2-75e83840,
|
|
71
|
+
! nd-f-omp-update-chain-d2-9756b365, nd-f-omp-update-chain-d2-b9c06ba7, nd-f-omp-update-chain-d2-d90fc1ec,
|
|
72
|
+
! nd-f-omp-update-chain-d2-eb4cf5ae, nd-f-omp-update-chain-d3-261315ff, nd-f-omp-update-chain-d3-3d5ca029,
|
|
73
|
+
! nd-f-omp-update-chain-d3-5b69f0e6, nd-f-omp-update-chain-d3-64ea229b, nd-f-omp-update-chain-d3-74e122b9,
|
|
74
|
+
! nd-f-omp-update-chain-d3-a40d2cc5, nd-f-omp-update-chain-d3-cf66ca90, nd-f-omp-update-chain-d3-d51553a5,
|
|
75
|
+
! nd-f-omp-update-chain-d3-f84ee81c, nd-f-omp-update-chain-d3-fddf3ef0, nd-f-omp-update-chain-d3-fee48361,
|
|
76
|
+
! nd-f-omp-update-chain-d4-0079ddfd, nd-f-omp-update-tree-d2-9a0f19f5, nd-f-omp-update-tree-d3-7d66722a,
|
|
77
|
+
! nd-f-omp-update-tree-d3-cef9276d
|
|
78
|
+
! - legality: the rules (offload.engine.rules) accept it, AFAR's flang front end accepts it and CCE compiles and runs it
|
|
79
|
+
! (the front ends of two other families)
|
|
80
|
+
program t
|
|
81
|
+
use omp_lib
|
|
82
|
+
implicit none
|
|
83
|
+
type :: n0
|
|
84
|
+
integer, allocatable :: a(:)
|
|
85
|
+
end type n0
|
|
86
|
+
type(n0), pointer :: r
|
|
87
|
+
integer :: q, hf, tot
|
|
88
|
+
logical :: ok
|
|
89
|
+
hf = 1
|
|
90
|
+
!$omp target map(from: hf)
|
|
91
|
+
hf = merge(1, 0, omp_is_initial_device())
|
|
92
|
+
!$omp end target
|
|
93
|
+
allocate(r)
|
|
94
|
+
allocate(r%a(8))
|
|
95
|
+
do q = 1, 8
|
|
96
|
+
r%a(q) = 100 + q - 1
|
|
97
|
+
end do
|
|
98
|
+
tot = 0
|
|
99
|
+
!$omp target enter data map(to: r)
|
|
100
|
+
!$omp target teams distribute parallel do reduction(+: tot)
|
|
101
|
+
do q = 1, 8
|
|
102
|
+
tot = tot + r%a(q)
|
|
103
|
+
r%a(q) = r%a(q) + 7
|
|
104
|
+
end do
|
|
105
|
+
!$omp end target teams distribute parallel do
|
|
106
|
+
!$omp target exit data map(from: r)
|
|
107
|
+
ok = tot == 828 .and. sum(r%a) == 884
|
|
108
|
+
print '(a,i0)', 'tot= ', tot
|
|
109
|
+
print '(a,i0)', 'sum= ', sum(r%a)
|
|
110
|
+
print '(a,i0,a,a)', 'RESULT ran_on_host=', hf, ' check=', merge('pass', 'fail', ok)
|
|
111
|
+
end program t
|
|
112
|
+
|
|
113
|
+
! site:
|
|
114
|
+
! title: AFAR: pointer-root derived type with allocatable component faults in copy mode
|
|
115
|
+
! summary: AFAR faults in copy mode on a Fortran pointer to a derived type with an allocatable component entered by enter data.
|
|
116
|
+
! control: nested/controls/m2-ctl-variable-root.f90 one change from the finding; correct on afar
|
|
117
|
+
! control: nested/controls/m3-ctl-fixed-array-component.f90 one change from the finding; correct on afar
|
|
118
|
+
! control: nested/controls/m5-ctl-no-enter-data.f90 one change from the finding; correct on afar
|
|
119
|
+
! control: nested/controls/q2-ctl-fixed-array.f90 one change from the finding; correct on afar
|
|
120
|
+
! control: nested/controls/q3-ctl-allocatable-component-of-the-variable.f90 one change from the finding; correct on afar
|
|
121
|
+
! end site
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
// # Finding (nested-data): CCE craycc crashes in CodeGen: a target construct maps a structure and the structure and array
|
|
2
|
+
// # reached through an embedded structure and a pointer
|
|
3
|
+
//
|
|
4
|
+
// - toolchains and modes that fail: cce19 (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4); modes:
|
|
5
|
+
// unified, copy; -O2
|
|
6
|
+
// - build: craycc -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx942 -O2
|
|
7
|
+
// - failure: ice
|
|
8
|
+
// - observed: `PLEASE submit a bug report to HPE at https://support.hpe.com/ and include the crash backtrace, preprocessed source,
|
|
9
|
+
// and associated run script.`; identical signature on 8 of 8 failing cells
|
|
10
|
+
// - expected: compiles and prints `tot= 16` with `check=pass`
|
|
11
|
+
// - rule: "A structure and an element of it may both be list items" in the sense of 5.2 §5.8.3 p.156 l.6-7 ("unless one
|
|
12
|
+
// is the containing structure of the other"), and a section reached through pointer members is a list item of a map
|
|
13
|
+
// clause (§5.8.3 p.151 l.13); the construct maps r, then r.nx.nx[0:1] and r.nx.nx->a[0:8] through the embedded
|
|
14
|
+
// structure r.nx and its pointer member
|
|
15
|
+
// - same-compiler control: controls/j1-embedded-struct-pointer-to-struct.c (one change from this file; correct on cce19 (CCE
|
|
16
|
+
// 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4); rows
|
|
17
|
+
// results/findings-baseline/nested-j-controls.cce.jsonl, results/nested/red/tuo4.jsonl, results/nested/red/tuo5.jsonl,
|
|
18
|
+
// results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl); controls/j6-ctl-struct-and-one-pointee-level.c (one change from
|
|
19
|
+
// this file; correct on cce19 (CCE 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4); rows
|
|
20
|
+
// results/findings-baseline/nested-j-controls.cce.jsonl, results/nested/red/tuo5.jsonl, results/nested/red/wgs.jsonl,
|
|
21
|
+
// results/nested/red/wnv.jsonl); controls/j7-ctl-struct-and-embedded-pointee.c (one change from this file; correct on cce19 (CCE
|
|
22
|
+
// 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4); rows
|
|
23
|
+
// results/findings-baseline/nested-j-controls.cce.jsonl, results/nested/red/tuo5.jsonl, results/nested/red/wgs.jsonl,
|
|
24
|
+
// results/nested/red/wnv.jsonl); controls/j2-ctl-pointer-instead-of-embedded.c (one change from this file; correct on cce19 (CCE
|
|
25
|
+
// 19.0.0), cce20 (CCE 20.0.2), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4); rows
|
|
26
|
+
// results/findings-baseline/nested-j-controls.cce.jsonl, results/nested/red/tuo5.jsonl, results/nested/red/wgs.jsonl,
|
|
27
|
+
// results/nested/red/wnv.jsonl)
|
|
28
|
+
// - other families: afar (AFAR 24.3.0), nvhpc (NVHPC 25.11), nvhpc269 (NVHPC 26.9), gcc_g90 (GCC 16.2.0), gcc_sm80 (GCC 16.2.0) run
|
|
29
|
+
// the file correctly (rows results/nested/red/tuo5.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl, site rows,
|
|
30
|
+
// check case site-nested--cce-c-struct-and-nested-pointee-sections-ice)
|
|
31
|
+
// - gate and confirmer: campaign gate of the programs below: 40 cells, 40 confirmed in the four environments (a-d; (c) on another
|
|
32
|
+
// node or GPU; rows results/nested/big/gate_reruns.part.tuolumne1010.3222831.jsonl,
|
|
33
|
+
// results/nested/big/gate_reruns.part.tuolumne1012.1040717.jsonl, results/nested/big/gate_reruns.part.tuolumne1030.1284552.jsonl,
|
|
34
|
+
// results/nested/big/gate_reruns.part.tuolumne1176.1251749.jsonl, results/nested/big/gate_reruns.part.tuolumne1245.1517583.jsonl,
|
|
35
|
+
// results/nested/big/gate_reruns.part.tuolumne1246.1434668.jsonl, results/nested/big/rows.part.tuolumne1010.1956389.jsonl,
|
|
36
|
+
// results/nested/big/rows.part.tuolumne1040.1523848.jsonl, results/nested/big/rows.part.tuolumne1604.1239313.jsonl,
|
|
37
|
+
// results/nested/big/rows.part.tuolumne1624.1197409.jsonl, results/nested/big/rows.part.tuolumne1797.1146311.jsonl,
|
|
38
|
+
// results/nested/main/gate_reruns.part.tuolumne1095.961942.jsonl, results/nested/main/gate_reruns.part.tuolumne1789.919396.jsonl,
|
|
39
|
+
// results/nested/main/gate_reruns.part.tuolumne1955.3910568.jsonl,
|
|
40
|
+
// results/nested/main/gate_reruns.part.tuolumne1955.4072524.jsonl, results/nested/main/rows.part.tuolumne1955.994167.jsonl)
|
|
41
|
+
// - programs (5): nd-c-omp-always-chain-d2-53712162, nd-c-omp-always-chain-d3-71393589, nd-c-omp-close-chain-d3-87bce034,
|
|
42
|
+
// nd-c-omp-one-chain-d3-9f7ac271, nd-c-omp-one-chain-d3-d6c766c9
|
|
43
|
+
// - legality: the rules (offload.engine.rules) accept it; AFAR's clang compiles and runs it (a front end of another family)
|
|
44
|
+
#include <stdio.h>
|
|
45
|
+
#include <stdlib.h>
|
|
46
|
+
#include <omp.h>
|
|
47
|
+
struct n2 { int *a; };
|
|
48
|
+
struct n1 { struct n2 *nx; };
|
|
49
|
+
struct n0 { int v; struct n1 nx; };
|
|
50
|
+
int main(void)
|
|
51
|
+
{
|
|
52
|
+
int hf = 1, i, tot = 0, ok;
|
|
53
|
+
struct n0 r;
|
|
54
|
+
r.v = 0; r.nx.nx = calloc(1, sizeof *r.nx.nx); r.nx.nx->a = malloc(8 * sizeof(int));
|
|
55
|
+
for (i = 0; i < 8; i++) r.nx.nx->a[i] = 2;
|
|
56
|
+
#pragma omp target map(from: hf)
|
|
57
|
+
hf = omp_is_initial_device() ? 1 : 0;
|
|
58
|
+
#pragma omp target map(tofrom: tot) map(tofrom: r) map(tofrom: r.nx.nx[0:1]) map(tofrom: r.nx.nx->a[0:8])
|
|
59
|
+
{
|
|
60
|
+
for (int q = 0; q < 8; q++) tot += r.nx.nx->a[q];
|
|
61
|
+
}
|
|
62
|
+
ok = tot == 16;
|
|
63
|
+
printf("tot= %d\n", tot);
|
|
64
|
+
printf("RESULT ran_on_host=%d check=%s\n", hf, ok ? "pass" : "fail");
|
|
65
|
+
return 0;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// site:
|
|
69
|
+
// title: CCE: compiler crash on nested pointee sections in one target construct
|
|
70
|
+
// summary: The CCE front end crashes on a target construct mapping nested structures through pointer members.
|
|
71
|
+
// control: nested/controls/j1-embedded-struct-pointer-to-struct.c one change from the finding; correct on cce19, cce20, cce21,
|
|
72
|
+
// + cce21_4
|
|
73
|
+
// control: nested/controls/j6-ctl-struct-and-one-pointee-level.c one change from the finding; correct on cce19, cce20, cce21,
|
|
74
|
+
// + cce21_4
|
|
75
|
+
// control: nested/controls/j7-ctl-struct-and-embedded-pointee.c one change from the finding; correct on cce19, cce20, cce21,
|
|
76
|
+
// + cce21_4
|
|
77
|
+
// control: nested/controls/j2-ctl-pointer-instead-of-embedded.c one change from the finding; correct on cce19, cce20, cce21,
|
|
78
|
+
// + cce21_4
|
|
79
|
+
// end site
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
! # Finding (nested-data): CCE, copy mode: a derived type with a derived-type component that holds an allocatable array, mapped
|
|
2
|
+
! # by enter data, makes the kernel fail
|
|
3
|
+
!
|
|
4
|
+
! - toolchains and modes that fail: cce19 (CCE 19.0.0), cce20 (CCE 20.0.2); modes: copy; -O2
|
|
5
|
+
! - build: ftn -fopenmp -O2
|
|
6
|
+
! - failure: crash
|
|
7
|
+
! - observed: `crash: SIGABRT; without mandatory: crash: SIGABRT` (killed by signal ABRT); identical signature on 2 of 2 failing
|
|
8
|
+
! cells
|
|
9
|
+
! - expected: compiles and prints `tot= 1628` with `check=pass`
|
|
10
|
+
! - rule: a structure type has a predefined default mapper that maps its elements (OpenMP 5.2 §5.8.2 p.150 l.2-4: "A
|
|
11
|
+
! structure type T has a predefined default mapper that is defined as if by a declare mapper directive that specifies
|
|
12
|
+
! v in a map clause with the alloc map-type"), and the map clauses a mapper introduces are subject to the mappers in
|
|
13
|
+
! scope (§5.8.8 p.164 l.1: "All map clauses that are introduced by a mapper are further subject to mappers that are in
|
|
14
|
+
! scope"), so the default mapper of the component's derived type maps its allocatable array too; the program
|
|
15
|
+
! references nothing else
|
|
16
|
+
! - same-compiler control: controls/n8-ctl-fixed-array-in-component.f90 (one change from this file; correct on cce19 (CCE 19.0.0),
|
|
17
|
+
! cce20 (CCE 20.0.2); rows results/nested/red/tuo9.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl);
|
|
18
|
+
! controls/n9-ctl-allocatable-in-the-variable.f90 (one change from this file; correct on cce19 (CCE 19.0.0), cce20 (CCE 20.0.2);
|
|
19
|
+
! rows results/nested/red/tuo9.jsonl, results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl)
|
|
20
|
+
! - other families: afar (AFAR 24.3.0), cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4), nvhpc (NVHPC 25.11), nvhpc269 (NVHPC 26.9),
|
|
21
|
+
! gcc_sm80 (GCC 16.2.0) run the file correctly in managed, unified mode (rows results/nested/red/tuo9.jsonl,
|
|
22
|
+
! results/nested/red/wgs.jsonl, results/nested/red/wnv.jsonl); cce21 (CCE 21.0.3), cce21_4 (CCE 21.0.4), nvhpc (NVHPC 25.11),
|
|
23
|
+
! nvhpc269 (NVHPC 26.9) fail it another way in copy mode, e.g. `exit_status: 1; without mandatory: exit_status: 1`
|
|
24
|
+
! - legality: the rules (offload.engine.rules) accept it; AFAR compiles and runs it correctly (a front end of another
|
|
25
|
+
! family)
|
|
26
|
+
program t
|
|
27
|
+
use omp_lib
|
|
28
|
+
implicit none
|
|
29
|
+
type :: n1
|
|
30
|
+
integer, allocatable :: a(:)
|
|
31
|
+
end type n1
|
|
32
|
+
type :: n0
|
|
33
|
+
type(n1) :: nx
|
|
34
|
+
end type n0
|
|
35
|
+
type(n0) :: r
|
|
36
|
+
integer :: q, hf, tot
|
|
37
|
+
logical :: ok
|
|
38
|
+
hf = 1
|
|
39
|
+
!$omp target map(from: hf)
|
|
40
|
+
hf = merge(1, 0, omp_is_initial_device())
|
|
41
|
+
!$omp end target
|
|
42
|
+
allocate(r%nx%a(8))
|
|
43
|
+
do q = 1, 8
|
|
44
|
+
r%nx%a(q) = 200 + q - 1
|
|
45
|
+
end do
|
|
46
|
+
tot = 0
|
|
47
|
+
!$omp target enter data map(to: r)
|
|
48
|
+
!$omp target teams distribute parallel do reduction(+: tot)
|
|
49
|
+
do q = 1, 8
|
|
50
|
+
tot = tot + r%nx%a(q)
|
|
51
|
+
end do
|
|
52
|
+
!$omp end target teams distribute parallel do
|
|
53
|
+
!$omp target exit data map(release: r)
|
|
54
|
+
ok = tot == 1628
|
|
55
|
+
print '(a,i0)', 'tot= ', tot
|
|
56
|
+
print '(a,i0,a,a)', 'RESULT ran_on_host=', hf, ' check=', merge('pass', 'fail', ok)
|
|
57
|
+
end program t
|
|
58
|
+
|
|
59
|
+
! site:
|
|
60
|
+
! title: CCE: nested allocatable component faults in copy mode
|
|
61
|
+
! summary: CCE fails in copy mode on a derived type whose component is a derived type holding an allocatable array.
|
|
62
|
+
! control: nested/controls/n8-ctl-fixed-array-in-component.f90 one change from the finding; correct on cce19, cce20
|
|
63
|
+
! control: nested/controls/n9-ctl-allocatable-in-the-variable.f90 one change from the finding; correct on cce19, cce20
|
|
64
|
+
! end site
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
! # Finding (nested-data): CCE, both modes: a variable with a pointer component to a derived type that has an allocatable
|
|
2
|
+
! # scalar component of derived type fails at enter data with "unsupported flags for typed transfer"
|
|
3
|
+
!
|
|
4
|
+
! - toolchains and modes that fail: cce19 (CCE 19.0.0), cce21_4 (CCE 21.0.4); modes: unified, copy; -O2
|
|
5
|
+
! - build: ftn -fopenmp -O2
|
|
6
|
+
! - failure: run_error
|
|
7
|
+
! - observed: `exit_status: 1; without mandatory: exit_status: 1`; identical signature on 4 of 4 failing cells
|
|
8
|
+
! - expected: compiles and prints `ha= 4028` with `check=pass`
|
|
9
|
+
! - rule: a structure type has a predefined default mapper that maps its elements (OpenMP 5.2 §5.8.2 p.150 l.2-4: "A
|
|
10
|
+
! structure type T has a predefined default mapper that is defined as if by a declare mapper directive that specifies
|
|
11
|
+
! v in a map clause with the alloc map-type"); the variable r is entered with map(alloc: r) and left with map(from:
|
|
12
|
+
! r), its pointer component is not associated, and the target region touches only r%a and r%s
|
|
13
|
+
! - same-compiler control: controls/ta2-ctl-no-allocatable-component.f90 (one change from this file; correct on cce19 (CCE 19.0.0),
|
|
14
|
+
! cce21_4 (CCE 21.0.4); rows results/nested/red/red15.jsonl, results/nested/red/tuo20.jsonl, results/nested/red/wgs2.jsonl,
|
|
15
|
+
! results/nested/red/wnv2.jsonl); controls/ta3-ctl-allocatable-scalar-in-the-variable.f90 (one change from this file; correct on
|
|
16
|
+
! cce19 (CCE 19.0.0), cce21_4 (CCE 21.0.4); rows results/nested/red/red15.jsonl, results/nested/red/tuo21.jsonl,
|
|
17
|
+
! results/nested/red/wgs2.jsonl, results/nested/red/wnv2.jsonl); controls/ta4-ctl-pointer-component-only.f90 (one change from this
|
|
18
|
+
! file; correct on cce19 (CCE 19.0.0), cce21_4 (CCE 21.0.4); rows results/nested/red/red15.jsonl, results/nested/red/tuo21.jsonl,
|
|
19
|
+
! results/nested/red/wgs2.jsonl, results/nested/red/wnv2.jsonl)
|
|
20
|
+
! - other families: afar (AFAR 24.3.0), nvhpc (NVHPC 25.11), nvhpc269 (NVHPC 26.9), gcc_g90 (GCC 16.2.0), gcc_sm80 (GCC 16.2.0) run
|
|
21
|
+
! the file correctly (rows results/nested/red/red15.jsonl, results/nested/red/tuo20.jsonl, results/nested/red/wgs2.jsonl,
|
|
22
|
+
! results/nested/red/wnv2.jsonl)
|
|
23
|
+
! - gate and confirmer: campaign gate of the programs below: 112 cells, 112 confirmed in the four environments (a-d; (c) on another
|
|
24
|
+
! node or GPU; rows results/nested/big/gate_reruns.part.tuolumne1010.3222831.jsonl,
|
|
25
|
+
! results/nested/big/gate_reruns.part.tuolumne1012.1040717.jsonl, results/nested/big/gate_reruns.part.tuolumne1030.1284552.jsonl,
|
|
26
|
+
! results/nested/big/gate_reruns.part.tuolumne1176.1251749.jsonl, results/nested/big/gate_reruns.part.tuolumne1245.1517583.jsonl,
|
|
27
|
+
! results/nested/big/gate_reruns.part.tuolumne1246.1434668.jsonl, results/nested/big/rows.part.tuolumne1010.1956389.jsonl,
|
|
28
|
+
! results/nested/big/rows.part.tuolumne1040.1523848.jsonl, results/nested/big/rows.part.tuolumne1604.1239313.jsonl,
|
|
29
|
+
! results/nested/big/rows.part.tuolumne1624.1197409.jsonl, results/nested/big/rows.part.tuolumne1797.1146311.jsonl,
|
|
30
|
+
! results/nested/main/gate_reruns.part.tuolumne1095.961942.jsonl, results/nested/main/gate_reruns.part.tuolumne1789.919396.jsonl,
|
|
31
|
+
! results/nested/main/gate_reruns.part.tuolumne1955.3910568.jsonl,
|
|
32
|
+
! results/nested/main/gate_reruns.part.tuolumne1955.4072524.jsonl, results/nested/main/rows.part.tuolumne1955.994167.jsonl)
|
|
33
|
+
! - programs (28): nd-f-omp-close-chain-d2-23d11b6c, nd-f-omp-enter-chain-d1-21883845, nd-f-omp-enter-chain-d1-64c59390,
|
|
34
|
+
! nd-f-omp-enter-chain-d1-b856f444, nd-f-omp-enter-chain-d2-3197d0a8, nd-f-omp-enter-chain-d2-b668ef1a,
|
|
35
|
+
! nd-f-omp-enter-chain-d3-0b3bdece, nd-f-omp-enter-chain-d3-27fc4e52, nd-f-omp-enter-chain-d3-6d18ea3c,
|
|
36
|
+
! nd-f-omp-enter-chain-d3-a54517a7, nd-f-omp-enter-chain-d3-dc18b074, nd-f-omp-enter-chain-d3-e0125bfa,
|
|
37
|
+
! nd-f-omp-present-chain-d1-e4cdb6d0, nd-f-omp-present-chain-d2-365941e2, nd-f-omp-present-chain-d2-9d7a0b6d,
|
|
38
|
+
! nd-f-omp-present-chain-d3-04d9e7d3, nd-f-omp-present-chain-d3-c07b93ee, nd-f-omp-present-chain-d3-d110420c,
|
|
39
|
+
! nd-f-omp-update-chain-d1-58f7d58c, nd-f-omp-update-chain-d1-f1a9957f, nd-f-omp-update-chain-d2-0545e9b5,
|
|
40
|
+
! nd-f-omp-update-chain-d3-261315ff, nd-f-omp-update-chain-d3-5b69f0e6, nd-f-omp-update-chain-d3-64ea229b,
|
|
41
|
+
! nd-f-omp-update-chain-d3-a40d2cc5, nd-f-omp-update-chain-d3-d51553a5, nd-f-omp-update-chain-d3-fee48361,
|
|
42
|
+
! nd-f-omp-update-chain-d4-0079ddfd
|
|
43
|
+
! - legality: the rules (offload.engine.rules) accept it; AFAR's flang front end and NVHPC accept it and run it correctly
|
|
44
|
+
! (front ends of two other families)
|
|
45
|
+
program t
|
|
46
|
+
use omp_lib
|
|
47
|
+
implicit none
|
|
48
|
+
type :: n2
|
|
49
|
+
integer :: s = 0
|
|
50
|
+
end type n2
|
|
51
|
+
type :: n1
|
|
52
|
+
integer :: s = 0
|
|
53
|
+
type(n2), allocatable :: nx
|
|
54
|
+
end type n1
|
|
55
|
+
type :: n0
|
|
56
|
+
integer :: s = 0
|
|
57
|
+
integer :: a(8) = 0
|
|
58
|
+
type(n1), pointer :: nx => null()
|
|
59
|
+
end type n0
|
|
60
|
+
type(n0) :: r
|
|
61
|
+
integer :: q, hf, ha, hs
|
|
62
|
+
logical :: ok
|
|
63
|
+
hf = 1
|
|
64
|
+
!$omp target map(from: hf)
|
|
65
|
+
hf = merge(1, 0, omp_is_initial_device())
|
|
66
|
+
!$omp end target
|
|
67
|
+
|
|
68
|
+
r%s = -1
|
|
69
|
+
do q = 1, 8
|
|
70
|
+
r%a(q) = -1
|
|
71
|
+
end do
|
|
72
|
+
!$omp target enter data map(alloc: r)
|
|
73
|
+
!$omp target
|
|
74
|
+
do q = 1, 8
|
|
75
|
+
r%a(q) = 500 + q - 1
|
|
76
|
+
end do
|
|
77
|
+
r%s = 900
|
|
78
|
+
!$omp end target
|
|
79
|
+
!$omp target exit data map(from: r)
|
|
80
|
+
ha = sum(r%a)
|
|
81
|
+
hs = r%s
|
|
82
|
+
ok = ha == 4028 .and. hs == 900
|
|
83
|
+
print '(a,i0)', 'ha= ', ha
|
|
84
|
+
print '(a,i0,a,a)', 'RESULT ran_on_host=', hf, ' check=', merge('pass', 'fail', ok)
|
|
85
|
+
end program t
|
|
86
|
+
|
|
87
|
+
! site:
|
|
88
|
+
! title: CCE: "unsupported flags for typed transfer" for a nested allocatable scalar component
|
|
89
|
+
! summary: CCE aborts enter data of a variable whose pointer component points to a type with an allocatable scalar component.
|
|
90
|
+
! control: nested/controls/ta2-ctl-no-allocatable-component.f90 one change from the finding; correct on cce19, cce21_4
|
|
91
|
+
! control: nested/controls/ta3-ctl-allocatable-scalar-in-the-variable.f90 one change from the finding; correct on cce19, cce21_4
|
|
92
|
+
! control: nested/controls/ta4-ctl-pointer-component-only.f90 one change from the finding; correct on cce19, cce21_4
|
|
93
|
+
! end site
|