summaryrefslogtreecommitdiff
path: root/clang/test/OpenMP/taskloop_ast_print.cpp
AgeCommit message (Collapse)Author
2025-10-30[clang][OpenMP] New OpenMP 6.0 threadset clause (#135807)Ritanya-B-Bharadwaj
Initial parsing/sema/codegen support for threadset clause in task and taskloop directives [Section 14.8 in in OpenMP 6.0 spec] ---------
2024-05-04[test] %clang_cc1: remove redundant actionsFangrui Song
2023-06-15[OpenMP] Update the default version of OpenMP to 5.1Animesh Kumar
The default version of OpenMP is updated from 5.0 to 5.1 which means if -fopenmp is specified but -fopenmp-version is not specified with clang, the default version of OpenMP is taken to be 5.1. After modifying the Frontend for that, various LIT tests were updated. This patch contains all such changes. At a high level, these are the patterns of changes observed in LIT tests - # RUN lines which mentioned `-fopenmp-version=50` need to kept only if the IR for version 5.0 and 5.1 are different. Otherwise only one RUN line with no version info(i.e. default version) needs to be there. # Test cases of this sort already had the RUN lines with respect to the older default version 5.0 and the version 5.1. Only swapping the version specification flag `-fopenmp-version` from newer version RUN line to older version RUN line is required. # Diagnostics: Remove the 5.0 version specific RUN lines if there was no difference in the Diagnostics messages with respect to the default 5.1. # Diagnostics: In case there was any difference in diagnostics messages between 5.0 and 5.1, mention version specific messages in tests. # If the test contained version specific ifdef's e.g. "#ifdef OMP5" but there were no RUN lines for any other version than 5.X, then bring the code guarded by ifdef's outside and remove the ifdef's. # Some tests had RUN lines for both 5.0 and 5.1 versions, but it is found that the IR for 5.0 is not different from the 5.1, therefore such RUN lines are redundant. So, such duplicated lines are removed. # To generate CHECK lines automatically, use the script llvm/utils/update_cc_test_checks.py Reviewed By: saiislam, ABataev Differential Revision: https://reviews.llvm.org/D129635 (cherry picked from commit 9dd2999907dc791136a75238a6000f69bf67cf4e)
2020-02-13[OPENMP50]Add cancellation support in taskloop-based directives.Alexey Bataev
According to OpenMP 5.0, cancel and cancellation point constructs are supported in taskloop directive. Added support for cancellation in taskloop, master taskloop and parallel master taskloop.
2019-03-27[OPENMP]Initial support for 'allocate' clause.Alexey Bataev
Added parsing/sema analysis of the allocate clause. llvm-svn: 357068
2018-02-14[OpenMP] Fix trailing space when printing pragmas, by Joel. E. DennyAlexey Bataev
Summary: -ast-print prints omp pragmas with a trailing space. While this behavior is likely of little concern to most users, surely it's unintentional, and it's annoying for some source-level work I'm pursuing. This patch focuses on omp pragmas, but it also fixes init_seg and loop hint pragmas because they share implementation. The testing strategy here is to add usually just one '{{$}}' per relevant -ast-print test file. This seems to achieve good code coverage. However, this strategy is probably easy to forget as the tests evolve. That's probably fine as this fix is far from critical. The main goal of the testing is to aid the initial review. This patch also adds a fixme for "#pragma unroll", which prints as "#pragma unroll (enable)", which is invalid syntax. Reviewers: ABataev Reviewed By: ABataev Subscribers: guansong, cfe-commits Differential Revision: https://reviews.llvm.org/D43204 llvm-svn: 325145
2017-12-29[OPENMP] Support for -fopenmp-simd option with compilation of simd loopsAlexey Bataev
only. Added support for -fopenmp-simd option that allows compilation of simd-based constructs without emission of OpenMP runtime calls. llvm-svn: 321560
2017-07-21[OPENMP] Add ast-print tests for in_reduction clause, NFC.Alexey Bataev
llvm-svn: 308771
2017-07-11[OPENMP] Add restriction for reduction clause in taskloop directives.Alexey Bataev
Added checks for the reduction clauses in the taskloop directives: 1. Only addressable items must be used in reduction clauses. 2. Reduction clauses cannot be used with nogroup clauses. llvm-svn: 307693
2017-06-30[OPENMP] Initial support for taskloop reductions.Alexey Bataev
Add sema/parsupping ort for taskloop [simd] reductions. llvm-svn: 306825
2016-12-20[OPENMP] Fix for PR31428: variable named like directive name modifierAlexey Bataev
Directive name modifiers in 'if' clause are allowed only for OpenMP 4.5 and higher + in OpenMP 4.5 parsing procedure emits error message if ':' is not found after directive name modifier. llvm-svn: 290175
2016-11-10Make output of -ast-print a valid C++ code.Serge Pavlov
Output generated by option -ast-print looks like C/C++ code, and it really is for plain C. For C++ the produced output was not valid C++ code, but the differences were small. With this change the output is fixed and can be compiled. Tests are changed so that output produced by -ast-print is compiled again with the same flags and both outputs are compared. Option -ast-print is extensively used in clang tests but it itself was tested poorly, existing tests only checked that compiler did not crash. There are unit tests in file DeclPrinterTest.cpp, but they test only terse output mode. Differential Revision: https://reviews.llvm.org/D26452 llvm-svn: 286439
2015-12-08[OPENMP 4.5] Parsing/sema for 'num_tasks' clause.Alexey Bataev
OpenMP 4.5 adds directives 'taskloop' and 'taskloop simd'. These directives support clause 'num_tasks'. Patch adds parsing/semantic analysis for this clause. llvm-svn: 255008
2015-12-07[OPENMP 4.5] parsing/sema support for 'grainsize' clause.Alexey Bataev
OpenMP 4.5 adds 'taksloop' and 'taskloop simd' directives, which have 'grainsize' clause. Patch adds parsing/sema analysis of this clause. llvm-svn: 254903
2015-12-07[OPENMP 4.5] parsing/sema support for 'nogroup' clause.Alexey Bataev
OpenMP 4.5 adds 'taskloop' and 'taskloop simd' directives. These directives have new 'nogroup' clause. Patch adds basic parsing/sema support for this clause. llvm-svn: 254899
2015-12-01[OPENMP 4.5] Parsing/sema analysis for 'priority' clause.Alexey Bataev
OpenMP 4.5 defines new clause 'priority' for 'task', 'taskloop' and 'taskloop simd' directives. Added parsing and sema analysis for 'priority' clause in 'task' and 'taskloop' directives. llvm-svn: 254398
2015-12-01[OPENMP 4.5] Parsing/sema analysis for 'taskloop' directive.Alexey Bataev
Adds initial parsing and semantic analysis for 'taskloop' directive. llvm-svn: 254367