brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · 12e6dec Raw
89 lines · plain
1! RUN: %flang_fc1 -fopenacc -fdebug-unparse %s | FileCheck %s2 3! Test unparse does not crash with OpenACC directives.4 5! Test bug 476596program bug476597  integer :: i, j8  label1: do i = 1, 109    !$acc parallel loop10    do j = 1, 1011      if (j == 2) then12        stop 113      end if14    end do15  end do label116end program17 18!CHECK-LABEL: PROGRAM BUG4765919!CHECK: !$ACC PARALLEL LOOP20 21 22subroutine acc_loop()23  integer :: i, j24  real :: a(10)25  integer :: gangNum, gangDim, gangStatic26 27!CHECK-LABEL: SUBROUTINE acc_loop28 29  !$acc loop collapse(force: 2)30  do i = 1, 1031    do j = 1, 1032    end do33  end do34!CHECK: !$ACC LOOP COLLAPSE(FORCE:2_4)35 36  !$acc loop gang37  do i = 1, 1038    a(i) = i39  end do40! CHECK: !$ACC LOOP GANG41 42  !$acc loop gang(gangNum)43  do i = 1, 1044    a(i) = i45  end do46! CHECK: !$ACC LOOP GANG(NUM:gangnum)47 48  !$acc loop gang(num: gangNum)49  do i = 1, 1050    a(i) = i51  end do52! CHECK: !$ACC LOOP GANG(NUM:gangnum)53 54  !$acc loop gang(dim: gangDim)55  do i = 1, 1056    a(i) = i57  end do58! CHECK: !$ACC LOOP GANG(DIM:gangdim)59 60  !$acc loop gang(static:gangStatic)61  do i = 1, 1062    a(i) = i63  end do64! CHECK: !$ACC LOOP GANG(STATIC:gangstatic)65 66  !$acc loop gang(static:*)67  do i = 1, 1068    a(i) = i69  end do70! CHECK: !$ACC LOOP GANG(STATIC:*)71 72  !$acc loop gang(static:gangStatic, dim: gangDim)73  do i = 1, 1074    a(i) = i75  end do76! CHECK: !$ACC LOOP GANG(STATIC:gangstatic,DIM:gangdim)77 78end subroutine79 80subroutine routine1()81  !$acc routine bind("routine1_")82! CHECK: !$ACC ROUTINE BIND("routine1_")83end subroutine84 85subroutine routine2()86  !$acc routine(routine2) bind(routine2)87! CHECK: !$ACC ROUTINE(routine2) BIND(routine2)88end subroutine89