When -fopenmp option is specified then version 5.0 will be set as
default.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Unit Tests
Event Timeline
Currently, following 75 lit-tests are failing.
- Clang :: OpenMP/declare_reduction_codegen.c
- Clang :: OpenMP/declare_reduction_codegen.cpp
- Clang :: OpenMP/declare_target_messages.cpp
- Clang :: OpenMP/declare_variant_implementation_vendor_codegen.cpp
- Clang :: OpenMP/distribute_parallel_for_simd_loop_messages.cpp
- Clang :: OpenMP/distribute_simd_loop_messages.cpp
- Clang :: OpenMP/driver.c
- Clang :: OpenMP/for_codegen.cpp
- Clang :: OpenMP/for_collapse_messages.cpp
- Clang :: OpenMP/for_loop_messages.cpp
- Clang :: OpenMP/for_simd_loop_messages.cpp
- Clang :: OpenMP/master_taskloop_loop_messages.cpp
- Clang :: OpenMP/master_taskloop_simd_loop_messages.cpp
- Clang :: OpenMP/nesting_of_regions.cpp
- Clang :: OpenMP/ordered_codegen.cpp
- Clang :: OpenMP/parallel_for_codegen.cpp
- Clang :: OpenMP/parallel_for_loop_messages.cpp
- Clang :: OpenMP/parallel_for_simd_codegen.cpp
- Clang :: OpenMP/parallel_for_simd_loop_messages.cpp
- Clang :: OpenMP/parallel_master_taskloop_loop_messages.cpp
- Clang :: OpenMP/parallel_master_taskloop_simd_loop_messages.cpp
- Clang :: OpenMP/simd_loop_messages.cpp
- Clang :: OpenMP/single_codegen.cpp
- Clang :: OpenMP/target_depend_messages.cpp
- Clang :: OpenMP/target_enter_data_depend_messages.cpp
- Clang :: OpenMP/target_exit_data_depend_messages.cpp
- Clang :: OpenMP/target_map_messages.cpp
- Clang :: OpenMP/target_messages.cpp
- Clang :: OpenMP/target_parallel_depend_messages.cpp
- Clang :: OpenMP/target_parallel_for_depend_messages.cpp
- Clang :: OpenMP/target_parallel_for_loop_messages.cpp
- Clang :: OpenMP/target_parallel_for_map_messages.cpp
- Clang :: OpenMP/target_parallel_for_simd_depend_messages.cpp
- Clang :: OpenMP/target_parallel_for_simd_is_device_ptr_messages.cpp
- Clang :: OpenMP/target_parallel_for_simd_map_messages.cpp
- Clang :: OpenMP/target_parallel_is_device_ptr_messages.cpp
- Clang :: OpenMP/target_parallel_map_messages.cpp
- Clang :: OpenMP/target_simd_depend_messages.cpp
- Clang :: OpenMP/target_simd_map_messages.cpp
- Clang :: OpenMP/target_teams_depend_messages.cpp
- Clang :: OpenMP/target_teams_distribute_depend_messages.cpp
- Clang :: OpenMP/target_teams_distribute_loop_messages.cpp
- Clang :: OpenMP/target_teams_distribute_map_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_depend_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_is_device_ptr_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_lastprivate_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_loop_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_map_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_simd_depend_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_simd_is_device_ptr_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_messages.cpp
- Clang :: OpenMP/target_teams_distribute_parallel_for_simd_map_messages.cpp
- Clang :: OpenMP/target_teams_distribute_simd_depend_messages.cpp
- Clang :: OpenMP/target_teams_distribute_simd_firstprivate_messages.cpp
- Clang :: OpenMP/target_teams_distribute_simd_is_device_ptr_messages.cpp
- Clang :: OpenMP/target_teams_distribute_simd_lastprivate_messages.cpp
- Clang :: OpenMP/target_teams_distribute_simd_loop_messages.cpp
- Clang :: OpenMP/target_teams_distribute_simd_map_messages.cpp
- Clang :: OpenMP/target_teams_distribute_simd_private_messages.cpp
- Clang :: OpenMP/target_teams_is_device_ptr_messages.cpp
- Clang :: OpenMP/target_teams_map_messages.cpp
- Clang :: OpenMP/target_update_depend_messages.cpp
- Clang :: OpenMP/target_update_from_messages.cpp
- Clang :: OpenMP/target_update_to_messages.cpp
- Clang :: OpenMP/taskloop_loop_messages.cpp
- Clang :: OpenMP/taskloop_simd_loop_messages.cpp
- Clang :: OpenMP/teams_distribute_loop_messages.cpp
- Clang :: OpenMP/teams_distribute_parallel_for_loop_messages.cpp
- Clang :: OpenMP/teams_distribute_parallel_for_simd_firstprivate_messages.cpp
- Clang :: OpenMP/teams_distribute_parallel_for_simd_loop_messages.cpp
- Clang :: OpenMP/teams_distribute_simd_firstprivate_messages.cpp
- Clang :: OpenMP/teams_distribute_simd_loop_messages.cpp
- Clang :: OpenMP/teams_messages.cpp
- Clang :: OpenMP/threadprivate_codegen.cpp
Fixed 25 out of 75 failing test cases by marking all old default cases as omp4 tests, and new tests as omp5.
All these tests are now specific to the version of openmp, so that we don't run into similar problem during next version upgrade.
Need to update few other places.
CompilerInvocation.cpp:3082 and CompilerInvocation.cpp:3085, which sets the default version to 45 in the presense of the target option or simd option. Most probably, need to remove this check. It was used to use 45 as the default version for target(simd)-based switches when the default version was 40.
Following tests are currently failing:
Clang :: OpenMP/declare_target_codegen.cpp Clang :: OpenMP/target_codegen.cpp Clang :: OpenMP/target_map_codegen.cpp Clang :: OpenMP/target_simd_depend_codegen.cpp Clang :: OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp Clang :: OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp Clang :: OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp Clang :: OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp Clang :: OpenMP/threadprivate_codegen.cpp
- All tests are passing in local testing.
- Rebased
- Plan is to create a follow up patch, if required, to ensure that testing happens without the version string as well.
It will ensure that deviating behaviour(tests) are uncovered during next version bump.
- Thank you @pdhaliwal for fixing many of these tests.
Since this revision landed two tests are failing.
libomp.env::kmp_set_dispatch_buf.c and libomp.worksharing/for::kmp_set_dispatch_buf.c. It was also reported on the mailing list (http://lists.llvm.org/pipermail/openmp-dev/2020-June/003507.html). Any idea how we can fix this quickly? @jdoerfert
OR maybe this is known and will be taken care later?
Thank you @clementval. I have posted a review to temporarily disable these tests for 5.0 (they are passing with 4.5): https://reviews.llvm.org/D82963
clang-format: please reformat the code
26 diff lines are omitted. See full path.