Attempt to add more attributes for runtime calls.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Unit Tests
Time | Test | |
---|---|---|
230 ms | Clang.OpenMP::Unknown Unit Message ("") |
Event Timeline
Thx! I'll ask more people to look at the barrier/flush stuff to make sure my suggestion wrt. inacc+argmemonly was correct.
The ones I would also love to see are the worksharing loop functions (end with _init_4, _fini etc.). Maybe we should do those and the getters/setters separate to speed things up.
llvm/include/llvm/Frontend/OpenMP/OMPKinds.def | ||
---|---|---|
277 | I will have to think about the barrier and flush ones. | |
278 | Where did this one go? |
LGTM. We also need nounwind on all, willreturn on most, and nosync on some of them. Maybe define new __OMP_ATTRS_SET, e.g., for "synchronizing runtime calls" for "non-synchronizing runtime calls" ...
I always thought there was a test for this, turns out I never committed it.
Since I did now (1c9c23d60ea7656174ad3d76293c2a90dd25e24f) you need to rebase and adjust it, sorry.
llvm/test/Transforms/OpenMP/parallel_deletion.ll | ||
---|---|---|
3 | this test was created with utils/update_test_checks.py --function-signatures before the script was smart enough to encode that into the file directly. Can you rerun with the option please. | |
204 | Use UTC_ARGS: -disable here and -enable below to keep the check lines even when the update script is run :) |
more tests
couldn't get update_test_checks.py to update function signatures, even with the flag.
I will have to think about the barrier and flush ones.