1b64cf381SAbid Qadeer! RUN: %flang_fc1 -emit-llvm -debug-info-kind=standalone %s -o - | FileCheck %s 2b64cf381SAbid Qadeer 3*1094ee71SAbid Qadeersubroutine ff(arr, arr1) 4b64cf381SAbid Qadeer implicit none 5b64cf381SAbid Qadeer integer :: arr(:, :) 6*1094ee71SAbid Qadeer integer :: arr1(3:, 4:) 7*1094ee71SAbid Qadeer return arr(1,1) + arr1(3,4) 8b64cf381SAbid Qadeerend subroutine ff 9b64cf381SAbid Qadeer 10*1094ee71SAbid Qadeer! CHECK-DAG: !DILocalVariable(name: "arr"{{.*}}type: ![[TY1:[0-9]+]]{{.*}}) 11*1094ee71SAbid Qadeer! CHECK-DAG: ![[TY1]] = !DICompositeType(tag: DW_TAG_array_type{{.*}}elements: ![[ELEMS:[0-9]+]], dataLocation: !DIExpression(DW_OP_push_object_address, DW_OP_deref)) 12b64cf381SAbid Qadeer! CHECK-DAG: ![[ELEMS]] = !{![[ELEM1:[0-9]+]], ![[ELEM2:[0-9]+]]} 13*1094ee71SAbid Qadeer! CHECK-DAG: ![[ELEM1]] = !DISubrange(count: !DIExpression(DW_OP_push_object_address, DW_OP_plus_uconst, 32, DW_OP_deref), stride: !DIExpression(DW_OP_push_object_address, DW_OP_plus_uconst, 40, DW_OP_deref)) 14*1094ee71SAbid Qadeer! CHECK-DAG: ![[ELEM2]] = !DISubrange(count: !DIExpression(DW_OP_push_object_address, DW_OP_plus_uconst, 56, DW_OP_deref), stride: !DIExpression(DW_OP_push_object_address, DW_OP_plus_uconst, 64, DW_OP_deref)) 15b64cf381SAbid Qadeer 16*1094ee71SAbid Qadeer! CHECK-DAG: !DILocalVariable(name: "arr1"{{.*}}type: ![[TY2:[0-9]+]]{{.*}}) 17*1094ee71SAbid Qadeer! CHECK-DAG: ![[TY2]] = !DICompositeType(tag: DW_TAG_array_type{{.*}}elements: ![[ELEMS1:[0-9]+]], dataLocation: !DIExpression(DW_OP_push_object_address, DW_OP_deref)) 18*1094ee71SAbid Qadeer! CHECK-DAG: ![[ELEMS1]] = !{![[ELEM11:[0-9]+]], ![[ELEM12:[0-9]+]]} 19*1094ee71SAbid Qadeer! CHECK-DAG: ![[ELEM11]] = !DISubrange(count: !DIExpression(DW_OP_push_object_address, DW_OP_plus_uconst, 32, DW_OP_deref), lowerBound: 3, stride: !DIExpression(DW_OP_push_object_address, DW_OP_plus_uconst, 40, DW_OP_deref)) 20*1094ee71SAbid Qadeer! CHECK-DAG: ![[ELEM12]] = !DISubrange(count: !DIExpression(DW_OP_push_object_address, DW_OP_plus_uconst, 56, DW_OP_deref), lowerBound: 4, stride: !DIExpression(DW_OP_push_object_address, DW_OP_plus_uconst, 64, DW_OP_deref)) 21