• Home
  • Raw
  • Download

Lines Matching +full:clang +full:- +full:4

1 // RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c++11 -emit-llvm -o - %s | FileCheck %s
3 // Verify while loop is recognized after sequence of pragma clang loop directives.
8 #pragma clang loop vectorize(enable) in while_test()
9 #pragma clang loop interleave_count(4) in while_test()
10 #pragma clang loop vectorize_width(4) in while_test()
11 #pragma clang loop unroll(full) in while_test()
12 #pragma clang loop distribute(enable) in while_test()
20 // Verify do loop is recognized after multi-option pragma clang loop directive.
24 #pragma clang loop vectorize_width(8) interleave_count(4) unroll(disable) distribute(disable) in do_test()
32 enum struct Tuner : short { Interleave = 4, Unroll = 8 };
34 // Verify for loop is recognized after sequence of pragma clang loop directives.
36 #pragma clang loop interleave(enable) in for_test()
37 #pragma clang loop interleave_count(static_cast<int>(Tuner::Interleave)) in for_test()
38 #pragma clang loop unroll_count(static_cast<int>(Tuner::Unroll)) in for_test()
46 // sequence of pragma clang loop directives.
50 #pragma clang loop vectorize_width(2) interleave_count(2) in for_range_test()
57 // Verify disable pragma clang loop directive generates correct metadata
59 #pragma clang loop vectorize(disable) unroll(disable) distribute(disable) in disable_test()
70 // Verify defines are correctly resolved in pragma clang loop directive
72 #pragma clang loop vectorize_width(VECWIDTH) interleave_count(INTCOUNT) in for_define_test()
73 #pragma clang loop unroll_count(UNROLLCOUNT) in for_define_test()
82 #pragma clang loop vectorize_width(1 + 4) in for_contant_expression_test()
88 #pragma clang loop vectorize_width(3 + VECWIDTH) in for_contant_expression_test()
98 #pragma clang loop vectorize_width(8) interleave_count(8) unroll_count(8) in for_template_test()
111 #pragma clang loop vectorize_width(VWidth) interleave_count(ICount) in for_template_define_test()
112 #pragma clang loop unroll_count(UCount) in for_template_define_test()
122 #pragma clang loop vectorize_width(V) interleave_count(I) unroll_count(U) in for_template_constant_expression_test()
128 #pragma clang loop vectorize_width(V * 2 + VECWIDTH) interleave_count(I * 2 + INTCOUNT) unroll_coun… in for_template_constant_expression_test()
134 const int Scale = 4; in for_template_constant_expression_test()
135 #pragma clang loop vectorize_width(Scale * V) interleave_count(Scale * I) unroll_count(Scale * U) in for_template_constant_expression_test()
141 #pragma clang loop vectorize_width((Scale * V) + 2) in for_template_constant_expression_test()
158 for_template_constant_expression_test<double, 2, 4, 8>(List, Length); in template_test()
162 // CHECK: ![[WIDTH_4]] = !{!"llvm.loop.vectorize.width", i32 4}
163 // CHECK: ![[INTERLEAVE_4]] = !{!"llvm.loop.interleave.count", i32 4}