31 lines · plain
1! RUN: %flang_fc1 -emit-llvm -o - %s | FileCheck %s2 3! CHECK-LABEL: vector_always4subroutine vector_always5 integer :: a(10)6 !dir$ vector always7 ! CHECK: br i1 {{.*}}, label {{.*}}, label {{.*}}8 ! CHECK-NOT: !llvm.loop9 ! CHECK: br label {{.*}}, !llvm.loop ![[ANNOTATION:.*]]10 do i=1,1011 a(i)=i12 end do13end subroutine vector_always14 15! CHECK-LABEL: no_vector16subroutine no_vector17 integer :: a(10)18 !dir$ novector19 ! CHECK: br i1 {{.*}}, label {{.*}}, label {{.*}}20 ! CHECK-NOT: !llvm.loop21 ! CHECK: br label {{.*}}, !llvm.loop ![[ANNOTATION2:.*]]22 do i=1,1023 a(i)=i24 end do25end subroutine no_vector26 27! CHECK: ![[ANNOTATION]] = distinct !{![[ANNOTATION]], ![[VECTORIZE:.*]]}28! CHECK: ![[VECTORIZE]] = !{!"llvm.loop.vectorize.enable", i1 true}29! CHECK: ![[ANNOTATION2]] = distinct !{![[ANNOTATION2]], ![[VECTORIZE2:.*]]}30! CHECK: ![[VECTORIZE2]] = !{!"llvm.loop.vectorize.enable", i1 false}31