summaryrefslogtreecommitdiff
path: root/clang/test/OpenMP/taskloop_simd_ast_print.cpp
AgeCommit message (Collapse)Author
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)
2022-12-12[OpenMP] Basic parse and sema support for modifiers in order clauseChi Chun Chen
This patch gives basic parsing and semantic support for "modifiers" of order clause introduced in OpenMP 5.1 ( section 2.11.3 ) Reviewed By: ABataev Differential Revision: https://reviews.llvm.org/D127855
2021-08-03[Flang][Openmp] Upgrade TASKGROUP construct to 5.0.Chirag Khandelwal
In OMP 5.0 specification clause-list with * task_reduction * allocate were allowed on taskgroup construct. Fix XFAIL - omp-taskloop01.f90. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D93373
2020-02-03[OPENMP50]Basic parsing/sema analysis for order(concurrent) clause.Alexey Bataev
Added parsing/sema/serialization support for order(concurrent) clause in loop|simd-based directives.
2019-12-24[OPENMP50]Basic support for conditional lastprivate.Alexey Bataev
Added parsing/sema checks for conditional lastprivates.
2019-12-17[OPENMP50]Add parsing/sema analysis for nontemporal clause.Alexey Bataev
Add basic support for parsing/sema analysis of the nontemporal clause in simd-based directives.
2019-12-04[OPENMP50]Add support for if clause for simd part in taskloop simdAlexey Bataev
directive. According to OpenMP 5.0, the `if` clause can be applied to simd subdirective in the combined directive.
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-03[OPENMP 4.5] Parsing/sema support for 'omp taskloop simd' directive.Alexey Bataev
OpenMP 4.5 adds directive 'taskloop simd'. Patch adds parsing/sema analysis for 'taskloop simd' directive and its clauses. llvm-svn: 254597