brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.8 KiB · fb02f25 Raw
117 lines · plain
1!RUN: %flang_fc1 -fdebug-unparse -fopenmp -fopenmp-version=52 %s | FileCheck --ignore-case --check-prefix="UNPARSE" %s2!RUN: %flang_fc1 -fdebug-dump-parse-tree -fopenmp -fopenmp-version=52 %s | FileCheck --check-prefix="PARSE-TREE" %s3 4subroutine f00(x)5  integer :: x6  !$omp do linear(x)7  do x = 1, 108  enddo9  !$omp end do10end11 12!UNPARSE: SUBROUTINE f00 (x)13!UNPARSE:  INTEGER x14!UNPARSE: !$OMP DO  LINEAR(x)15!UNPARSE:  DO x=1_4,10_416!UNPARSE:  END DO17!UNPARSE: !$OMP END DO18!UNPARSE: END SUBROUTINE19 20!PARSE-TREE: OmpBeginLoopDirective21!PARSE-TREE: | OmpDirectiveName -> llvm::omp::Directive = do22!PARSE-TREE: | OmpClauseList -> OmpClause -> Linear -> OmpLinearClause23!PARSE-TREE: | | OmpObjectList -> OmpObject -> Designator -> DataRef -> Name = 'x'24!PARSE-TREE: | | bool = 'true'25!PARSE-TREE: | Flags = {}26!PARSE-TREE: DoConstruct27 28subroutine f01(x)29  integer :: x30  !$omp do linear(x : 2)31  do x = 1, 1032  enddo33  !$omp end do34end35 36!UNPARSE: SUBROUTINE f01 (x)37!UNPARSE:  INTEGER x38!UNPARSE: !$OMP DO  LINEAR(x: 2_4)39!UNPARSE:  DO x=1_4,10_440!UNPARSE:  END DO41!UNPARSE: !$OMP END DO42!UNPARSE: END SUBROUTINE43 44!PARSE-TREE: OmpBeginLoopDirective45!PARSE-TREE: | OmpDirectiveName -> llvm::omp::Directive = do46!PARSE-TREE: | OmpClauseList -> OmpClause -> Linear -> OmpLinearClause47!PARSE-TREE: | | OmpObjectList -> OmpObject -> Designator -> DataRef -> Name = 'x'48!PARSE-TREE: | | Modifier -> OmpStepSimpleModifier -> Scalar -> Integer -> Expr = '2_4'49!PARSE-TREE: | | | LiteralConstant -> IntLiteralConstant = '2'50!PARSE-TREE: | | bool = 'true'51!PARSE-TREE: | Flags = {}52!PARSE-TREE: DoConstruct53 54subroutine f02(x)55  integer :: x56  !$omp do linear(x : step(3))57  do x = 1, 1058  enddo59  !$omp end do60end61 62!UNPARSE: SUBROUTINE f02 (x)63!UNPARSE:  INTEGER x64!UNPARSE: !$OMP DO  LINEAR(x: STEP(3_4))65!UNPARSE:  DO x=1_4,10_466!UNPARSE:  END DO67!UNPARSE: !$OMP END DO68!UNPARSE: END SUBROUTINE69 70!PARSE-TREE: OmpBeginLoopDirective71!PARSE-TREE: | OmpDirectiveName -> llvm::omp::Directive = do72!PARSE-TREE: | OmpClauseList -> OmpClause -> Linear -> OmpLinearClause73!PARSE-TREE: | | OmpObjectList -> OmpObject -> Designator -> DataRef -> Name = 'x'74!PARSE-TREE: | | Modifier -> OmpStepComplexModifier -> Scalar -> Integer -> Expr = '3_4'75!PARSE-TREE: | | | LiteralConstant -> IntLiteralConstant = '3'76!PARSE-TREE: | | bool = 'true'77!PARSE-TREE: | Flags = {}78!PARSE-TREE: DoConstruct79 80subroutine f03(x)81  integer :: x82  !$omp declare simd linear(x : uval)83end84 85!UNPARSE: SUBROUTINE f03 (x)86!UNPARSE:  INTEGER x87!UNPARSE: !$OMP DECLARE SIMD LINEAR(x: UVAL)88!UNPARSE: END SUBROUTINE89 90!PARSE-TREE: DeclarationConstruct -> SpecificationConstruct -> OpenMPDeclarativeConstruct -> OpenMPDeclareSimdConstruct -> OmpDirectiveSpecification91!PARSE-TREE: | OmpDirectiveName -> llvm::omp::Directive = declare simd92!PARSE-TREE: | OmpClauseList -> OmpClause -> Linear -> OmpLinearClause93!PARSE-TREE: | | OmpObjectList -> OmpObject -> Designator -> DataRef -> Name = 'x'94!PARSE-TREE: | | Modifier -> OmpLinearModifier -> Value = Uval95!PARSE-TREE: | | bool = 'true'96!PARSE-TREE: | Flags = {}97 98subroutine f04(x)99  integer :: x100  !$omp declare simd linear(x : uval, step(3))101end102 103!UNPARSE: SUBROUTINE f04 (x)104!UNPARSE:  INTEGER x105!UNPARSE: !$OMP DECLARE SIMD LINEAR(x: UVAL, STEP(3_4))106!UNPARSE: END SUBROUTINE107 108!PARSE-TREE: DeclarationConstruct -> SpecificationConstruct -> OpenMPDeclarativeConstruct -> OpenMPDeclareSimdConstruct -> OmpDirectiveSpecification109!PARSE-TREE: | OmpDirectiveName -> llvm::omp::Directive = declare simd110!PARSE-TREE: | OmpClauseList -> OmpClause -> Linear -> OmpLinearClause111!PARSE-TREE: | | OmpObjectList -> OmpObject -> Designator -> DataRef -> Name = 'x'112!PARSE-TREE: | | Modifier -> OmpLinearModifier -> Value = Uval113!PARSE-TREE: | | Modifier -> OmpStepComplexModifier -> Scalar -> Integer -> Expr = '3_4'114!PARSE-TREE: | | | LiteralConstant -> IntLiteralConstant = '3'115!PARSE-TREE: | | bool = 'true'116!PARSE-TREE: | Flags = {}117