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,57 @@
|
|
|
1
|
+
! # Finding (from the data/bench/fresh draft fresh-046): CCE 21 skips a target teams
|
|
2
|
+
! distribute parallel do whose if clause has no modifier and a run-time expression
|
|
3
|
+
!
|
|
4
|
+
! - source: data/bench/fresh/fresh-046.f90 (llvm-project issue 208698): `target teams distribute parallel
|
|
5
|
+
! do map(present, tofrom: data) if (should_offload)` with should_offload a module logical; CCE 21
|
|
6
|
+
! leaves data untouched. Neither present, target enter data nor the loop length matters
|
|
7
|
+
! - compilers: CCE 21.0.3 ftn, -fopenmp -O2; MI300A HSA_XNACK 1 and 0, MI250X HSA_XNACK 0
|
|
8
|
+
! - expected: b(1) 1 b(64) 64 dev 1. "For a combined or composite construct, if no
|
|
9
|
+
! directive-name-modifier is specified then the if clause applies to all constituent constructs to
|
|
10
|
+
! which an if clause can apply" (OpenMP 5.2 §3.4 p.72 l.15-18). Whether teams is one of them, 5.2
|
|
11
|
+
! does not say consistently: the if clause's directive list (§3.4 p.72 l.8-9) and the teams clause
|
|
12
|
+
! list (§10.2 p.230 l.7-8) omit it, the teams semantics (p.230 l.18-21) describe it, and 6.0 §B.3
|
|
13
|
+
! p.904 l.16 records it as a 5.1-to-5.2 change; under 5.0 the clause applies to target and parallel
|
|
14
|
+
! only. The expected output does not depend on it: on is true on the host, so the region runs on
|
|
15
|
+
! the device (dev 1), and whatever number of teams and threads results, every iteration runs once
|
|
16
|
+
! - actual: b(1) 0 b(64) 0 dev -1: no iteration runs, on the device or on the host, and the program
|
|
17
|
+
! goes on without a message (every run, both memory modes, both machines). The same with an
|
|
18
|
+
! integer module variable (if (k > 0), d046-min-int.f90) and with a local logical set from it
|
|
19
|
+
! (d046-min-local.f90); if (.true.) is correct (d046-if-true.f90), and so is a local logical set
|
|
20
|
+
! from a literal (d046-if-local.f90, which the compiler can fold). Fix: if (teams: on)
|
|
21
|
+
! alone fails the same way (d046-min-teams.f90; MI300A both modes, MI250X), if (parallel: on) is
|
|
22
|
+
! correct (d046-min-parallel.f90): the teams part of the if clause is where CCE 21 goes wrong
|
|
23
|
+
! - control (same compiler): if (target: on) on the same construct prints b(1) 1 b(64) 64 dev 1
|
|
24
|
+
! (data/reports/fresh-drafts/d046-min-target.f90); so do the unmodified if (on) on target teams
|
|
25
|
+
! distribute, target parallel do and target teams (d046-min-tdist.f90, d046-min-tpd.f90,
|
|
26
|
+
! d046-min-tteams.f90)
|
|
27
|
+
! - other families: AFAR and CCE 19/20 print b(1) 1 b(64) 64 dev 1 (MI300A HSA_XNACK 1 and 0;
|
|
28
|
+
! MI250X); NVHPC 25.11 and 26.9 run the draft without the present modifier correctly
|
|
29
|
+
! (d046-no-present.f90, PASS; nvfortran rejects map(present, ...))
|
|
30
|
+
! - legality: legal by reading (dev is written by one iteration only); an if clause without a
|
|
31
|
+
! modifier on this combined construct is also conforming under OpenMP 5.0, which HPE claims in full
|
|
32
|
+
! - evidence: results/fresh-drafts/tuo-p3.jsonl, tuo2-q3.jsonl, tuo3-r*-a.jsonl, tioga/tioga-c.jsonl,
|
|
33
|
+
! tuo4-p.jsonl, tioga/tioga2.jsonl, wingtip/nv.jsonl (review)
|
|
34
|
+
module ctl
|
|
35
|
+
implicit none
|
|
36
|
+
logical :: on = .true.
|
|
37
|
+
end module ctl
|
|
38
|
+
|
|
39
|
+
program p
|
|
40
|
+
use omp_lib, only: omp_is_initial_device
|
|
41
|
+
use ctl
|
|
42
|
+
implicit none
|
|
43
|
+
integer :: b(64), i, dev
|
|
44
|
+
b = 0
|
|
45
|
+
dev = -1
|
|
46
|
+
!$omp target teams distribute parallel do map(tofrom: b, dev) if (on)
|
|
47
|
+
do i = 1, 64
|
|
48
|
+
b(i) = i
|
|
49
|
+
if (i == 1) dev = merge(0, 1, omp_is_initial_device())
|
|
50
|
+
end do
|
|
51
|
+
print *, 'b(1)', b(1), 'b(64)', b(64), 'dev', dev
|
|
52
|
+
end program p
|
|
53
|
+
! site:
|
|
54
|
+
! title: ftn: target teams distribute parallel do with if(<run-time true>) runs no iterations at all
|
|
55
|
+
! control: ../vendor/checks/src/cce/control/cce21-combined-if-runtime-expr-loop-skipped-control.f90 if (target: on) instead of if
|
|
56
|
+
! + (on)
|
|
57
|
+
! end site
|
offload/_root/data/findings/fresh/nvhpc-acc-gang-worker-collapse-nested-vector-reduction-lost.f90
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
! # Finding (from the data/bench/fresh draft fresh-076): NVHPC loses contributions of a gang
|
|
2
|
+
! worker collapse(2) reduction with a nested vector reduction
|
|
3
|
+
!
|
|
4
|
+
! - source: data/bench/fresh/fresh-076.f90 (NVIDIA developer forum topic 354721, the full program of the
|
|
5
|
+
! 2025-12-16 reply). The reporter's program has no data clause for sumA on the parallel
|
|
6
|
+
! construct, which OpenACC 3.4 §2.6.2 p.42 l.1403-1409 forbids for a scalar in a loop reduction
|
|
7
|
+
! whose access is exposed to a parent parallel construct; this reproducer adds copy(sumA) and sets
|
|
8
|
+
! A = 1 so the sum is exact. With the reporter's sizes (1000 x 1000 x 100, 100 calls) the legal
|
|
9
|
+
! form ends in CUDA_ERROR_ILLEGAL_ADDRESS (data/reports/fresh-drafts/d076-copy.f90)
|
|
10
|
+
! - compilers: NVHPC nvfortran 25.11 and 26.9, -acc=gpu -gpu=cc80 -O2, -gpu=mem:separate and
|
|
11
|
+
! -gpu=mem:managed; A100
|
|
12
|
+
! - expected: pass 10000000.0. Each loop's reduction combines the private copies after the loop
|
|
13
|
+
! with the original var (OpenACC 3.4 §2.9.11 p.71 l.2549-2555); a reduction spanning nested
|
|
14
|
+
! loops carries the clause on each loop directive (l.2560-2562), as here; every A(i,j,k) is 1, so
|
|
15
|
+
! the sum is m*n*o = 10^7 exactly in any order
|
|
16
|
+
! - actual: 9987000 to 9997000 (whole inner loops of 1000 lost; the count varies between runs), both
|
|
17
|
+
! releases, both memory modes, 12 of 12 runs
|
|
18
|
+
! - control (same compiler): 10000000 with gang collapse(2) instead of gang worker collapse(2)
|
|
19
|
+
! (data/reports/fresh-drafts/d076-c-gang.f90), with the inner loop seq (d076-c-seq.f90), or with
|
|
20
|
+
! worker vector on the inner loop (d076-c-worker-vector.f90); the same nest at 64 x 64 x 4 is
|
|
21
|
+
! correct (d076-exact-small.f90)
|
|
22
|
+
! - other families: CCE 19/20/21 print pass 10000000 on this program (MI300A HSA_XNACK 1 and 0;
|
|
23
|
+
! MI250X); AFAR has no Fortran OpenACC
|
|
24
|
+
! - legality: legal by reading (copy(sumA) on the parallel construct; the reduction clause on both
|
|
25
|
+
! loop directives of the nest)
|
|
26
|
+
! - evidence: results/fresh-drafts/wingtip/nv.jsonl, tuo2-q6.jsonl, tioga/tioga-b.jsonl (review)
|
|
27
|
+
module test_mod
|
|
28
|
+
contains
|
|
29
|
+
subroutine test(A, sumA)
|
|
30
|
+
implicit none
|
|
31
|
+
real(kind=8) :: A(:,:,:), sumA
|
|
32
|
+
integer :: i, j, k
|
|
33
|
+
!$acc parallel copy(sumA)
|
|
34
|
+
!$acc loop gang worker collapse(2) reduction(+:sumA)
|
|
35
|
+
do k = 1, size(A,3)
|
|
36
|
+
do j = 1, size(A,2)
|
|
37
|
+
!$acc loop vector reduction(+:sumA)
|
|
38
|
+
do i = 1, size(A,1)
|
|
39
|
+
sumA = sumA + A(i,j,k)
|
|
40
|
+
end do
|
|
41
|
+
end do
|
|
42
|
+
end do
|
|
43
|
+
!$acc end parallel
|
|
44
|
+
end subroutine test
|
|
45
|
+
end module test_mod
|
|
46
|
+
|
|
47
|
+
program main
|
|
48
|
+
use test_mod
|
|
49
|
+
implicit none
|
|
50
|
+
integer, parameter :: m = 1000, n = 1000, o = 10
|
|
51
|
+
real(kind=8) :: A(m,n,o), sumA
|
|
52
|
+
A = 1.0d0
|
|
53
|
+
sumA = 0.0d0
|
|
54
|
+
call test(A, sumA)
|
|
55
|
+
if (sumA == real(m, 8)*n*o) then
|
|
56
|
+
print *, 'pass', sumA
|
|
57
|
+
else
|
|
58
|
+
print *, 'fail', sumA, ' expected', real(m, 8)*n*o
|
|
59
|
+
end if
|
|
60
|
+
end program main
|
|
61
|
+
! site:
|
|
62
|
+
! title: nvfortran -acc: gang worker collapse(2) reduction with a nested vector reduction loses whole inner loops
|
|
63
|
+
! control: ../vendor/checks/src/nvhpc/control/nvhpc-acc-gang-worker-collapse-nested-vector-reduction-lost-control.f90 gang
|
|
64
|
+
! + collapse(2)
|
|
65
|
+
! + instead of
|
|
66
|
+
! + gang worker collapse(2)
|
|
67
|
+
! end site
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
! # Finding (from the data/bench/fresh draft fresh-058): nvfortran's fort2 crashes on a
|
|
2
|
+
! whole-array assignment to a module allocatable in a target teams loop
|
|
3
|
+
!
|
|
4
|
+
! - source: data/bench/fresh/fresh-058.f90 (NVIDIA developer forum topic 294712, the reproducer of
|
|
5
|
+
! the 2024-06-05 reply, TPR 35799). The reporter's loop runs 10000 iterations that each assign
|
|
6
|
+
! all of A, a data race (every iteration writes the same elements); here the loop has one
|
|
7
|
+
! iteration, so the program is race-free, and the crash is the same
|
|
8
|
+
! - compilers: NVHPC nvfortran 25.11 and 26.9, -mp=gpu -gpu=cc80 -O2 (separate and managed memory
|
|
9
|
+
! builds)
|
|
10
|
+
! - expected: the program compiles and prints 7. A, an allocatable module array referenced in the
|
|
11
|
+
! target region, is not a scalar, so it is treated as map(tofrom) (OpenMP 5.2 §5.8.1 p.149
|
|
12
|
+
! l.4-5); Z, a scalar, is firstprivate; the single iteration assigns 7 to every element
|
|
13
|
+
! - actual: "nvfortran-Fatal-.../maintainers/fort2 TERMINATED by signal 11", both releases, both
|
|
14
|
+
! memory-mode builds (the reporter's racy form too)
|
|
15
|
+
! - control (same compiler): the same assignment compiles and prints 7 when A is a fixed-size
|
|
16
|
+
! module array (data/reports/fresh-drafts/d058-fixed.f90), a local allocatable (d058-local.f90),
|
|
17
|
+
! in a plain target region (d058-target.f90), in target teams distribute parallel do
|
|
18
|
+
! (d058-tdpd.f90), or as the element assignment A(II) = Z (d058-element.f90)
|
|
19
|
+
! - other families: AFAR and CCE 19/20/21 compile this program and print 7 (MI300A, HSA_XNACK 1
|
|
20
|
+
! and 0; MI250X)
|
|
21
|
+
! - legality: legal by reading: one iteration, so no two iterations touch A; the loop construct's
|
|
22
|
+
! restrictions (5.2 §11.7 p.257 l.29-34, p.258 l.1-4) and its implicit order(concurrent)
|
|
23
|
+
! (§10.3 p.234 l.14-24) allow the assignment
|
|
24
|
+
! - evidence: results/fresh-drafts/wingtip/nv.jsonl, tuo-p4.jsonl, tioga/tioga-d.jsonl (review)
|
|
25
|
+
MODULE GLOBALS
|
|
26
|
+
IMPLICIT NONE
|
|
27
|
+
REAL :: Z
|
|
28
|
+
REAL, ALLOCATABLE, DIMENSION(:)::A
|
|
29
|
+
|
|
30
|
+
END MODULE GLOBALS
|
|
31
|
+
|
|
32
|
+
MODULE RECON
|
|
33
|
+
USE GLOBALS
|
|
34
|
+
|
|
35
|
+
IMPLICIT NONE
|
|
36
|
+
|
|
37
|
+
CONTAINS
|
|
38
|
+
|
|
39
|
+
SUBROUTINE CRASH_REPRO()
|
|
40
|
+
|
|
41
|
+
IMPLICIT NONE
|
|
42
|
+
INTEGER::II
|
|
43
|
+
|
|
44
|
+
ALLOCATE (A(10))
|
|
45
|
+
Z = 7
|
|
46
|
+
|
|
47
|
+
!$OMP target teams loop
|
|
48
|
+
DO II = 1, 1
|
|
49
|
+
A = Z;
|
|
50
|
+
END DO
|
|
51
|
+
!$OMP end target teams loop
|
|
52
|
+
|
|
53
|
+
PRINT *, A(1)
|
|
54
|
+
|
|
55
|
+
END SUBROUTINE CRASH_REPRO
|
|
56
|
+
|
|
57
|
+
END MODULE RECON
|
|
58
|
+
|
|
59
|
+
PROGRAM compilerCrashTest
|
|
60
|
+
|
|
61
|
+
USE RECON
|
|
62
|
+
IMPLICIT NONE
|
|
63
|
+
|
|
64
|
+
CALL CRASH_REPRO()
|
|
65
|
+
|
|
66
|
+
END PROGRAM compilerCrashTest
|
|
67
|
+
! site:
|
|
68
|
+
! title: nvfortran -mp=gpu: fort2 crashes (signal 11) on a whole-array assignment to a module allocatable in target teams loop
|
|
69
|
+
! control: ../vendor/checks/src/nvhpc/control/nvhpc-teams-loop-module-allocatable-assign-fort2-crash-control.f90 the element
|
|
70
|
+
! + assignment
|
|
71
|
+
! + A(II) = Z
|
|
72
|
+
! + instead of the whole-array assignment A = Z
|
|
73
|
+
! end site
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 1131 (fuzz-1).
|
|
2
|
+
! toolchain: afar (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: run_error (crash: SIGABRT)
|
|
4
|
+
! expected: runs to completion (the host run does)
|
|
5
|
+
! observed: device: fail crash: SIGABRT; host reference (afar/cce19) checksum=0
|
|
6
|
+
! Legal OpenMP 5.2: offload.engine.rules accepts it (offload.engine.prerun.check, rerun: with the
|
|
7
|
+
! race rule and the restriction checks); NVHPC is no witness: it rejects it
|
|
8
|
+
! (NVFORTRAN-S-0034-Syntax error at or near :); the check's other
|
|
9
|
+
! witness, the AFAR flang front end, is the compiler under test and is not counted; no gfortran
|
|
10
|
+
! or gcc is a legality witness.
|
|
11
|
+
program fuzz_prog
|
|
12
|
+
use omp_lib, only: omp_is_initial_device
|
|
13
|
+
implicit none
|
|
14
|
+
integer, parameter :: n = 16, m = 8
|
|
15
|
+
integer, allocatable :: ia(:)
|
|
16
|
+
integer :: ib(n)
|
|
17
|
+
integer :: ic(n, m)
|
|
18
|
+
integer :: o1(n)
|
|
19
|
+
integer :: i, j
|
|
20
|
+
integer(8) :: cs
|
|
21
|
+
allocate(ia(n))
|
|
22
|
+
do i = 1, n
|
|
23
|
+
ia(i) = mod(i * 24 + 48, 30011) - 5205
|
|
24
|
+
end do
|
|
25
|
+
do i = 1, n
|
|
26
|
+
ib(i) = mod(i * 24 + 3, 1009) - 72
|
|
27
|
+
end do
|
|
28
|
+
do j = 1, m
|
|
29
|
+
do i = 1, n
|
|
30
|
+
ic(i, j) = mod((i + 9 * j) * 27 + 40, 211) - 68
|
|
31
|
+
end do
|
|
32
|
+
end do
|
|
33
|
+
o1 = 0
|
|
34
|
+
! fuzz: kernels
|
|
35
|
+
!$omp target enter data map(to: ia, ib, ic, o1)
|
|
36
|
+
!$omp target map(close, present, to: ic)
|
|
37
|
+
!$omp end target
|
|
38
|
+
! fuzz: checksum
|
|
39
|
+
cs = 0
|
|
40
|
+
do i = 1, n
|
|
41
|
+
cs = modulo(cs * 31_8 + int(o1(i), 8), 2147483629_8)
|
|
42
|
+
end do
|
|
43
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
44
|
+
end program fuzz_prog
|
|
45
|
+
! site:
|
|
46
|
+
! title: AFAR offload runtime at HSA_XNACK=1: map(close, ...) breaks presence lookup and device access (abort, memory fault)
|
|
47
|
+
! same_as: fuzz/s1-9443-afar
|
|
48
|
+
! end site
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 1391 (fuzz-1).
|
|
2
|
+
! toolchain: cce20 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: ice (ice: INTERNAL COMPILER ERROR: "ACC - barrier/reset/protected last private not supported" (v_mt_translate.c, line
|
|
4
|
+
! 5607, version <v>))
|
|
5
|
+
! expected: compiles
|
|
6
|
+
! observed: internal compiler error: ice: INTERNAL COMPILER ERROR: "ACC - barrier/reset/protected last private not supported"
|
|
7
|
+
! (/workspace/crayftn/pdgcs/v_mt_translate.c, line 5607, version 668d73f
|
|
8
|
+
! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
|
|
9
|
+
! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
|
|
10
|
+
! compiler under test, gfortran or gcc is a legality witness.
|
|
11
|
+
! also fails on: cce19, cce21
|
|
12
|
+
program fuzz_prog
|
|
13
|
+
use omp_lib, only: omp_is_initial_device
|
|
14
|
+
implicit none
|
|
15
|
+
integer, parameter :: n = 32, m = 8
|
|
16
|
+
integer :: i, j, lp1, t1
|
|
17
|
+
integer(8) :: cs
|
|
18
|
+
lp1 = 0
|
|
19
|
+
! fuzz: kernels
|
|
20
|
+
!$omp target
|
|
21
|
+
!$omp parallel
|
|
22
|
+
!$omp do lastprivate(lp1) private(t1)
|
|
23
|
+
do i = 1, n
|
|
24
|
+
do j = 1, m
|
|
25
|
+
t1 = 0
|
|
26
|
+
lp1 = 0
|
|
27
|
+
end do
|
|
28
|
+
end do
|
|
29
|
+
!$omp end parallel
|
|
30
|
+
!$omp end target
|
|
31
|
+
! fuzz: checksum
|
|
32
|
+
cs = 0
|
|
33
|
+
cs = modulo(cs * 31_8 + int(lp1, 8), 2147483629_8)
|
|
34
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
35
|
+
end program fuzz_prog
|
|
36
|
+
! site:
|
|
37
|
+
! title: ftn: internal compiler error "ACC - barrier/reset/protected last private not supported" for linear and lastprivate on a
|
|
38
|
+
! + loop in a target region
|
|
39
|
+
! same_as: catalog/cce-linear-lastprivate-ice
|
|
40
|
+
! end site
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 14 (fuzz-1).
|
|
2
|
+
! toolchain: cce20 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: wrong_code
|
|
4
|
+
! expected: the host reference checksum (host reference (cce20/afar) checksum=24)
|
|
5
|
+
! observed: device checksum=0 ran_on_host=0
|
|
6
|
+
! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
|
|
7
|
+
! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
|
|
8
|
+
! compiler under test, gfortran or gcc is a legality witness.
|
|
9
|
+
! also fails on: cce19, cce21
|
|
10
|
+
program fuzz_prog
|
|
11
|
+
implicit none
|
|
12
|
+
integer, parameter :: n = 24, m = 8
|
|
13
|
+
integer :: i, j, jj, lp1, acc1, t1
|
|
14
|
+
logical :: lsimd
|
|
15
|
+
integer(8) :: cs
|
|
16
|
+
lp1 = 0
|
|
17
|
+
lsimd = .false.
|
|
18
|
+
! fuzz: kernels
|
|
19
|
+
!$omp target teams map(tofrom: lp1)
|
|
20
|
+
!$omp distribute parallel do simd lastprivate(lp1) private(t1, acc1, jj) num_threads(8)
|
|
21
|
+
do i = 1, n
|
|
22
|
+
t1 = 0
|
|
23
|
+
acc1 = 0
|
|
24
|
+
lp1 = i
|
|
25
|
+
end do
|
|
26
|
+
!$omp end distribute parallel do simd
|
|
27
|
+
!$omp end target teams
|
|
28
|
+
! fuzz: checksum
|
|
29
|
+
cs = 0
|
|
30
|
+
cs = modulo(cs * 31_8 + int(lp1, 8), 2147483629_8)
|
|
31
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
32
|
+
end program fuzz_prog
|
|
33
|
+
! site:
|
|
34
|
+
! title: craycc/ftn: lastprivate on distribute in a target region loses the final value, even with an explicit map
|
|
35
|
+
! same_as: stress/cce-c-distribute-lastprivate-lost
|
|
36
|
+
! end site
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 1505 (fuzz-1).
|
|
2
|
+
! toolchain: cce20 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: run_error (crash: SIGABRT)
|
|
4
|
+
! expected: runs to completion (the host run does)
|
|
5
|
+
! : not reproducible on the current install (CCE 20.0.2; reruns,
|
|
6
|
+
! data/vendor/README.md: held, not reproducible); kept as a record.
|
|
7
|
+
! observed: device: fail crash: SIGSEGV; host reference (cce20/afar) checksum=1148569567
|
|
8
|
+
! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
|
|
9
|
+
! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
|
|
10
|
+
! compiler under test, gfortran or gcc is a legality witness.
|
|
11
|
+
module fuzz_mod
|
|
12
|
+
implicit none
|
|
13
|
+
contains
|
|
14
|
+
integer function g1(x, y)
|
|
15
|
+
!$omp declare target
|
|
16
|
+
integer, intent(in) :: x, y
|
|
17
|
+
g1 = mod(iand(max(7, x), y), 1009)
|
|
18
|
+
end function g1
|
|
19
|
+
end module fuzz_mod
|
|
20
|
+
program fuzz_prog
|
|
21
|
+
use omp_lib, only: omp_is_initial_device
|
|
22
|
+
use fuzz_mod, only: g1
|
|
23
|
+
implicit none
|
|
24
|
+
integer, parameter :: n = 24, m = 2
|
|
25
|
+
integer, allocatable :: ia(:)
|
|
26
|
+
integer, allocatable :: o1(:)
|
|
27
|
+
integer, allocatable :: o2(:, :)
|
|
28
|
+
integer, allocatable :: o3(:, :)
|
|
29
|
+
integer :: i, j, p1, r3b
|
|
30
|
+
logical :: lpar
|
|
31
|
+
integer(8) :: cs
|
|
32
|
+
allocate(ia(n))
|
|
33
|
+
allocate(o1(n))
|
|
34
|
+
allocate(o2(n, m))
|
|
35
|
+
allocate(o3(n, m))
|
|
36
|
+
do i = 1, n
|
|
37
|
+
ia(i) = mod(i * 24 + 3, 211) - 93
|
|
38
|
+
end do
|
|
39
|
+
o1 = 0
|
|
40
|
+
o2 = 0
|
|
41
|
+
o3 = 0
|
|
42
|
+
p1 = -5
|
|
43
|
+
r3b = 78
|
|
44
|
+
lpar = .false.
|
|
45
|
+
! fuzz: kernels
|
|
46
|
+
!$omp target map(tofrom: r3b)
|
|
47
|
+
!$omp parallel if(parallel: lpar)
|
|
48
|
+
!$omp do reduction(min: r3b)
|
|
49
|
+
do i = n, 1, -1
|
|
50
|
+
do j = m, 1, -1
|
|
51
|
+
o3(i, j) = o2(i, j)
|
|
52
|
+
r3b = min(r3b, g1(o2(i, (mod(((j * 7) + 6), m) + 1)), p1))
|
|
53
|
+
end do
|
|
54
|
+
end do
|
|
55
|
+
!$omp end parallel
|
|
56
|
+
!$omp end target
|
|
57
|
+
! fuzz: checksum
|
|
58
|
+
cs = 0
|
|
59
|
+
do i = 1, n
|
|
60
|
+
cs = modulo(cs * 31_8 + int(o1(i), 8), 2147483629_8)
|
|
61
|
+
end do
|
|
62
|
+
do j = 1, m
|
|
63
|
+
do i = 1, n
|
|
64
|
+
cs = modulo(cs * 31_8 + int(o2(i, j), 8), 2147483629_8)
|
|
65
|
+
end do
|
|
66
|
+
end do
|
|
67
|
+
cs = modulo(cs * 31_8 + int(r3b, 8), 2147483629_8)
|
|
68
|
+
do j = 1, m
|
|
69
|
+
do i = 1, n
|
|
70
|
+
cs = modulo(cs * 31_8 + int(o3(i, j), 8), 2147483629_8)
|
|
71
|
+
end do
|
|
72
|
+
end do
|
|
73
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
74
|
+
end program fuzz_prog
|
|
75
|
+
! spec (requirement): a parallel construct whose if clause evaluates to false is executed by a team of one thread, and a
|
|
76
|
+
! reduction clause on a worksharing loop in that region gives each thread a private copy that is combined into the original list
|
|
77
|
+
! item at the end of the region, so the target region runs to completion with the host's result.
|
|
78
|
+
! "if (IfClauseValue = false) then number of threads = 1;" (5.2 §10.1.1 p.226 l.27-28)
|
|
79
|
+
! "At the end of a region that corresponds to a construct for which the reduction clause was specified, the original list item
|
|
80
|
+
! is updated by combining its original value with the final value of each of the private copies, using the combiner of the
|
|
81
|
+
! specified reduction-identifier." (5.2 §5.5.8 p.135 l.7-10)
|
|
82
|
+
! spec (this program): the target region runs a worksharing do loop with reduction(min: r3b) inside parallel if(parallel: lpar)
|
|
83
|
+
! with lpar false (a team of one thread) and calls a declare target function; the host run completes, CCE 20 crashed on the
|
|
84
|
+
! device (the finding is kept as a record, not reproducible on the current install).
|
|
85
|
+
! site:
|
|
86
|
+
! title: ftn 20: a reduction(min) loop in parallel if(false) calling a declare target function crashed on the device (not
|
|
87
|
+
! + reproducible now)
|
|
88
|
+
! end site
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 1540 (fuzz-1).
|
|
2
|
+
! toolchain: afar (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: ice (afar FIR verification: 'omp.target' op SPMD kernel must capture an 'omp.loop_nest' operation)
|
|
4
|
+
! expected: compiles
|
|
5
|
+
! observed: internal compiler error: ice: error: verification of lowering to FIR failed
|
|
6
|
+
! Legal OpenMP 5.2: offload.engine.rules accepts it (offload.engine.prerun.check, rerun: with the
|
|
7
|
+
! race rule and the restriction checks); NVHPC is no witness: it rejects it
|
|
8
|
+
! (NVFORTRAN-S-0034-Syntax error at or near :); the check's other
|
|
9
|
+
! witness, the AFAR flang front end, is the compiler under test and is not counted; no gfortran
|
|
10
|
+
! or gcc is a legality witness.
|
|
11
|
+
program fuzz_prog
|
|
12
|
+
use omp_lib, only: omp_is_initial_device
|
|
13
|
+
implicit none
|
|
14
|
+
integer, parameter :: n = 16, m = 4
|
|
15
|
+
integer :: i, j, lp1
|
|
16
|
+
integer(8) :: cs
|
|
17
|
+
lp1 = 0
|
|
18
|
+
! fuzz: kernels
|
|
19
|
+
!$omp target parallel do lastprivate(conditional: lp1)
|
|
20
|
+
do i = 1, n
|
|
21
|
+
end do
|
|
22
|
+
!$omp end target parallel do
|
|
23
|
+
! fuzz: checksum
|
|
24
|
+
cs = 0
|
|
25
|
+
cs = modulo(cs * 31_8 + int(lp1, 8), 2147483629_8)
|
|
26
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
27
|
+
end program fuzz_prog
|
|
28
|
+
! site:
|
|
29
|
+
! title: amdflang: "'omp.target' op SPMD kernel must capture an 'omp.loop_nest' operation" for lastprivate(conditional:) on target
|
|
30
|
+
! + parallel do
|
|
31
|
+
! control: ../vendor/checks/src/fuzz/control/fuzz-1540-afar-control.f90 lastprivate(lp1) without the conditional modifier
|
|
32
|
+
! end site
|
|
33
|
+
! spec (requirement): the lastprivate clause accepts the conditional modifier on a worksharing loop (the original list item
|
|
34
|
+
! receives the value the last assigning iteration of sequential execution would leave), and on a combined construct with target
|
|
35
|
+
! the list item is mapped tofrom.
|
|
36
|
+
! "When the conditional modifier appears on the clause or the list item is an iteration variable of one of the associated loops,
|
|
37
|
+
! if sequential execution of the loop nest would assign a value to the list item then the original list item is assigned the
|
|
38
|
+
! value that the list item would have after sequential execution of the loop nest." (5.2 §5.4.5 p.115 l.16-19)
|
|
39
|
+
! "If the target construct is among the constituent constructs and the list item is not the base variable or base pointer of a
|
|
40
|
+
! list item that appears in a map clause, the effect of the lastprivate clause is as if the same list item appears in a map
|
|
41
|
+
! clause with a map-type of tofrom." (5.2 §17.2 p.340 l.27-30)
|
|
42
|
+
! spec (this program): target parallel do lastprivate(conditional: lp1) with a loop body that assigns nothing is a legal
|
|
43
|
+
! combined construct that leaves lp1 unchanged; AFAR stops with an internal compiler error in FIR verification (SPMD kernel must
|
|
44
|
+
! capture an omp.loop_nest) instead of compiling it, while lastprivate(lp1) without the modifier compiles.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 158 (fuzz-1).
|
|
2
|
+
! toolchain: afar (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: run_error (crash: SIGABRT)
|
|
4
|
+
! expected: runs to completion (the host run does)
|
|
5
|
+
! observed: device: fail crash: SIGABRT; host reference (afar/cce19) checksum=0
|
|
6
|
+
! Legal OpenMP 5.2: offload.engine.rules accepts it (offload.engine.prerun.check, rerun: with the
|
|
7
|
+
! race rule and the restriction checks); NVHPC is no witness: it rejects it
|
|
8
|
+
! (NVFORTRAN-S-0034-Syntax error at or near :); the check's other
|
|
9
|
+
! witness, the AFAR flang front end, is the compiler under test and is not counted; no gfortran
|
|
10
|
+
! or gcc is a legality witness.
|
|
11
|
+
module fuzz_mod
|
|
12
|
+
implicit none
|
|
13
|
+
contains
|
|
14
|
+
integer function g1(x, y)
|
|
15
|
+
!$omp declare target
|
|
16
|
+
integer, intent(in) :: x, y
|
|
17
|
+
g1 = mod(((x * mod(3, 3)) - x), 97)
|
|
18
|
+
end function g1
|
|
19
|
+
integer function g2(x, y)
|
|
20
|
+
!$omp declare target
|
|
21
|
+
integer, intent(in) :: x, y
|
|
22
|
+
g2 = mod(ior(y, y), 1009)
|
|
23
|
+
end function g2
|
|
24
|
+
end module fuzz_mod
|
|
25
|
+
program fuzz_prog
|
|
26
|
+
use omp_lib, only: omp_get_default_device, omp_is_initial_device
|
|
27
|
+
use fuzz_mod, only: g1, g2
|
|
28
|
+
implicit none
|
|
29
|
+
integer, parameter :: n = 48, m = 2
|
|
30
|
+
integer :: ia(n)
|
|
31
|
+
integer, allocatable :: ib(:)
|
|
32
|
+
integer :: ic(n, m)
|
|
33
|
+
integer :: o1(n)
|
|
34
|
+
integer :: i, j
|
|
35
|
+
integer(8) :: cs
|
|
36
|
+
allocate(ib(n))
|
|
37
|
+
do i = 1, n
|
|
38
|
+
ia(i) = mod(i * 46 + 10, 211) - 53
|
|
39
|
+
end do
|
|
40
|
+
do i = 1, n
|
|
41
|
+
ib(i) = mod(i * 15 + 21, 30011) - 9080
|
|
42
|
+
end do
|
|
43
|
+
do j = 1, m
|
|
44
|
+
do i = 1, n
|
|
45
|
+
ic(i, j) = mod((i + 3 * j) * 30 + 28, 97) - 18
|
|
46
|
+
end do
|
|
47
|
+
end do
|
|
48
|
+
o1 = 0
|
|
49
|
+
! fuzz: kernels
|
|
50
|
+
!$omp target enter data map(to: ia, ib, ic, o1)
|
|
51
|
+
!$omp target map(close, present, tofrom: ib(1:n))
|
|
52
|
+
!$omp end target
|
|
53
|
+
! fuzz: checksum
|
|
54
|
+
cs = 0
|
|
55
|
+
do i = 1, n
|
|
56
|
+
cs = modulo(cs * 31_8 + int(o1(i), 8), 2147483629_8)
|
|
57
|
+
end do
|
|
58
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
59
|
+
end program fuzz_prog
|
|
60
|
+
! site:
|
|
61
|
+
! title: AFAR offload runtime at HSA_XNACK=1: map(close, ...) breaks presence lookup and device access (abort, memory fault)
|
|
62
|
+
! same_as: fuzz/s1-9443-afar
|
|
63
|
+
! end site
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 16 (fuzz-1).
|
|
2
|
+
! toolchain: cce20 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: wrong_code
|
|
4
|
+
! expected: the host reference checksum (host reference (cce20/afar) checksum=535067391)
|
|
5
|
+
! observed: device checksum=32891495 ran_on_host=0
|
|
6
|
+
! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
|
|
7
|
+
! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
|
|
8
|
+
! compiler under test, gfortran or gcc is a legality witness.
|
|
9
|
+
! also fails on: cce19, cce21
|
|
10
|
+
program fuzz_prog
|
|
11
|
+
use omp_lib, only: omp_get_thread_num, omp_is_initial_device
|
|
12
|
+
implicit none
|
|
13
|
+
integer, parameter :: n = 100, m = 5
|
|
14
|
+
integer :: o1(n)
|
|
15
|
+
integer :: i, j
|
|
16
|
+
integer(8) :: cs
|
|
17
|
+
o1 = 0
|
|
18
|
+
! fuzz: kernels
|
|
19
|
+
!$omp target
|
|
20
|
+
!$omp parallel
|
|
21
|
+
if (omp_get_thread_num() == 0) then
|
|
22
|
+
do i = 1, n
|
|
23
|
+
o1(i) = 18
|
|
24
|
+
end do
|
|
25
|
+
end if
|
|
26
|
+
!$omp end parallel
|
|
27
|
+
!$omp end target
|
|
28
|
+
! fuzz: checksum
|
|
29
|
+
cs = 0
|
|
30
|
+
do i = 1, n
|
|
31
|
+
cs = modulo(cs * 31_8 + int(o1(i), 8), 2147483629_8)
|
|
32
|
+
end do
|
|
33
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
34
|
+
end program fuzz_prog
|
|
35
|
+
! site:
|
|
36
|
+
! title: ftn -fopenmp: a sequential DO loop executed by one thread of a target parallel region runs only some of its iterations
|
|
37
|
+
! + (-O2)
|
|
38
|
+
! same_as: cce19-target-parallel-guarded-loop
|
|
39
|
+
! end site
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 1644 (fuzz-1).
|
|
2
|
+
! toolchain: cce21 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: wrong_code
|
|
4
|
+
! expected: the host reference checksum (host reference (afar/cce19) checksum=20085)
|
|
5
|
+
! observed: device checksum=2147483614 ran_on_host=0
|
|
6
|
+
! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
|
|
7
|
+
! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
|
|
8
|
+
! compiler under test, gfortran or gcc is a legality witness.
|
|
9
|
+
program fuzz_prog
|
|
10
|
+
use omp_lib, only: omp_is_initial_device
|
|
11
|
+
implicit none
|
|
12
|
+
integer, parameter :: n = 200, m = 2
|
|
13
|
+
integer :: i, j, r1a
|
|
14
|
+
integer(8) :: cs
|
|
15
|
+
r1a = -15
|
|
16
|
+
! fuzz: kernels
|
|
17
|
+
!$omp target map(tofrom: r1a) defaultmap(tofrom: allocatable)
|
|
18
|
+
do i = n, 1, -1
|
|
19
|
+
r1a = r1a + i
|
|
20
|
+
end do
|
|
21
|
+
!$omp end target
|
|
22
|
+
! fuzz: checksum
|
|
23
|
+
cs = 0
|
|
24
|
+
cs = modulo(cs * 31_8 + int(r1a, 8), 2147483629_8)
|
|
25
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
26
|
+
end program fuzz_prog
|
|
27
|
+
! site:
|
|
28
|
+
! title: ftn: with a defaultmap clause on target, an explicitly mapped map(tofrom) scalar is not copied back, and with
|
|
29
|
+
! + defaultmap(tofrom) an array in map(alloc) or map(to) is copied back
|
|
30
|
+
! same_as: cce21-defaultmap-aggregate-flag
|
|
31
|
+
! end site
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
! Minimized by compliance.fuzz_min from fuzz seed 165 (fuzz-1).
|
|
2
|
+
! toolchain: cce19 (-O2, HSA_XNACK=1, OMP_TARGET_OFFLOAD=mandatory)
|
|
3
|
+
! failure: ice (ice: INTERNAL COMPILER ERROR: "unhandled operator)
|
|
4
|
+
! expected: compiles
|
|
5
|
+
! observed: internal compiler error: ice: INTERNAL COMPILER ERROR: "unhandled operator
|
|
6
|
+
! Legal OpenMP 5.2: offload.engine.prerun.check accepts it (rerun: offload.engine.rules with the
|
|
7
|
+
! race rule and the restriction checks, and the AFAR flang front end, not under test here); no
|
|
8
|
+
! compiler under test, gfortran or gcc is a legality witness.
|
|
9
|
+
! also fails on: afar, cce20, cce21
|
|
10
|
+
module fuzz_mod
|
|
11
|
+
implicit none
|
|
12
|
+
contains
|
|
13
|
+
integer function g1(x, y)
|
|
14
|
+
!$omp declare target
|
|
15
|
+
integer, intent(in) :: x, y
|
|
16
|
+
g1 = mod(max((x + y), x), 97)
|
|
17
|
+
end function g1
|
|
18
|
+
end module fuzz_mod
|
|
19
|
+
program fuzz_prog
|
|
20
|
+
use omp_lib, only: omp_get_thread_num, omp_is_initial_device
|
|
21
|
+
use fuzz_mod, only: g1
|
|
22
|
+
implicit none
|
|
23
|
+
integer, parameter :: n = 16, m = 2
|
|
24
|
+
integer :: o1(n)
|
|
25
|
+
integer :: i, j, lp1, t1
|
|
26
|
+
logical :: lpar
|
|
27
|
+
integer(8) :: cs
|
|
28
|
+
o1 = 0
|
|
29
|
+
lp1 = 0
|
|
30
|
+
lpar = .true.
|
|
31
|
+
! fuzz: kernels
|
|
32
|
+
!$omp target depend(out: o1)
|
|
33
|
+
!$omp parallel do lastprivate(conditional: lp1) private(t1)
|
|
34
|
+
do i = n, 1, -1
|
|
35
|
+
t1 = 0
|
|
36
|
+
if (mod(i, 2) == 1) lp1 = i
|
|
37
|
+
end do
|
|
38
|
+
!$omp end target
|
|
39
|
+
! fuzz: checksum
|
|
40
|
+
cs = 0
|
|
41
|
+
cs = modulo(cs * 31_8 + int(lp1, 8), 2147483629_8)
|
|
42
|
+
do i = 1, n
|
|
43
|
+
cs = modulo(cs * 31_8 + int(o1(i), 8), 2147483629_8)
|
|
44
|
+
end do
|
|
45
|
+
print '(a,i0,a,i0)', 'RESULT checksum=', cs, ' ran_on_host=', 0
|
|
46
|
+
end program fuzz_prog
|
|
47
|
+
! site:
|
|
48
|
+
! title: ftn: internal compiler error for lastprivate(conditional:) on a parallel loop in a target region
|
|
49
|
+
! control: ../vendor/checks/src/fuzz/control/fuzz-165-cce19-control.f90 the same parallel do on the host (the target directive
|
|
50
|
+
! + removed)
|
|
51
|
+
! same_as: fuzz/958-cce20
|
|
52
|
+
! end site
|