diff options
| author | Hans Wennborg <hans@hanshq.net> | 2018-08-17 07:34:53 +0000 |
|---|---|---|
| committer | Hans Wennborg <hans@hanshq.net> | 2018-08-17 07:34:53 +0000 |
| commit | 7cea4193d93d2eea199ddbb945a4495e7f7ea5e1 (patch) | |
| tree | 8b9fbd9c5b7801ae8d743488a27a77328084e407 /clang/test | |
| parent | b90baad8a39d7ea8ef55ab9500c4cec212574ac5 (diff) | |
| download | bcm5719-llvm-7cea4193d93d2eea199ddbb945a4495e7f7ea5e1.tar.gz bcm5719-llvm-7cea4193d93d2eea199ddbb945a4495e7f7ea5e1.zip | |
Backport r339704 to 7.0 for PR38598
> Author: abataev
> Date: Tue Aug 14 11:31:20 2018
> New Revision: 339704
>
> URL: http://llvm.org/viewvc/llvm-project?rev=339704&view=rev
> Log:
> [OPENMP] Fix processing of declare target construct.
>
> The attribute marked as inheritable since OpenMP 5.0 supports it +
> additional fixes to support new functionality.
llvm-svn: 339998
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/OpenMP/declare_target_ast_print.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/clang/test/OpenMP/declare_target_ast_print.cpp b/clang/test/OpenMP/declare_target_ast_print.cpp index bd1acc28dc6..1ffa456b7d7 100644 --- a/clang/test/OpenMP/declare_target_ast_print.cpp +++ b/clang/test/OpenMP/declare_target_ast_print.cpp @@ -150,11 +150,35 @@ struct SSSTt { // CHECK: #pragma omp end declare target // CHECK: int b; +#pragma omp declare target +template <typename T> +T baz() { return T(); } +#pragma omp end declare target + +template <> +int baz() { return 1; } + +// CHECK: #pragma omp declare target +// CHECK: template <typename T> T baz() { +// CHECK: return T(); +// CHECK: } +// CHECK: #pragma omp end declare target +// CHECK: #pragma omp declare target +// CHECK: template<> float baz<float>() { +// CHECK: return float(); +// CHECK: } +// CHECK: template<> int baz<int>() { +// CHECK: return 1; +// CHECK: } +// CHECK: #pragma omp end declare target + int main (int argc, char **argv) { foo(); foo_c(); foo_cpp(); test1(); + baz<float>(); + baz<int>(); return (0); } |

