program sample
  implicit none
  integer(8) :: i,j,x,y,count
  integer(8) :: a(41)
    
  read(*,*) x

  a(1) =1
  
  
  do i=2,9
     a(i) = 2**i
  end do
    
  do i=10,14
     a(i) = 3**(i-8)
  end do

  do i=15,17
     a(i) = 5**(i-13)
  end do
  do i=18,19
     a(i) =6**(i-16)
  end do

  do i=20,21
     a(i) = 7**(i-18)
  end do

  do i=22,23
     a(i) = 10**(i-20)
  end do

  do i=24,28
     a(i) = (i-13)**2
  end do

  do i=29,36
     a(i) = (i-12)**2
  end do

  a(37) = 26**2
  
  do i=38,41
     a(i)=(i-10)**2
  end do

  do i=1,41
     do j=i,41
        if (a(i)>a(j)) then
           y=a(i)
           a(i)=a(j)
           a(j)=y
        end if
     end do
  end do

  do i=1,41
     if (a(i) <= x) then
        count=a(i)
     end if
  end do

  write(*,*) count
  
  stop
end program sample
; ModuleID = 'FIRModule'
source_filename = "FIRModule"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-pc-linux-gnu"

@_QFEa = internal unnamed_addr global [41 x i64] undef
@_QQcl.ed7b50fd5329ae9523a6fb5bda57d1d8 = linkonce constant [73 x i8] c"/home/ubuntu/Downloads/TheStack_IR/Collated/Fortran/Source_5989/source.f\00"
@_QQEnvironmentDefaults = local_unnamed_addr constant ptr null

; Function Attrs: noreturn
define void @_QQmain() local_unnamed_addr #0 {
__mlir_math_ipowi_i64.exit86.1:
  %0 = alloca i64, align 8
  %1 = tail call ptr @_FortranAioBeginExternalListInput(i32 -1, ptr nonnull @_QQcl.ed7b50fd5329ae9523a6fb5bda57d1d8, i32 6)
  %2 = call i1 @_FortranAioInputInteger(ptr %1, ptr nonnull %0, i32 8)
  %3 = call i32 @_FortranAioEndIoStatement(ptr %1)
  store i64 1, ptr @_QFEa, align 16, !tbaa !3
  store i64 4, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 1), align 8, !tbaa !3
  store i64 8, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 2), align 16, !tbaa !3
  store i64 16, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 3), align 8, !tbaa !3
  store i64 32, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 4), align 16, !tbaa !3
  store i64 64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 5), align 8, !tbaa !3
  store i64 128, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 6), align 16, !tbaa !3
  store i64 256, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 7), align 8, !tbaa !3
  store i64 512, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 8), align 16, !tbaa !3
  store i64 9, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 9), align 8, !tbaa !3
  store i64 27, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 10), align 16, !tbaa !3
  store i64 81, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 11), align 8, !tbaa !3
  store i64 243, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 12), align 16, !tbaa !3
  store i64 729, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 13), align 8, !tbaa !3
  store i64 25, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 14), align 16, !tbaa !3
  store i64 125, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 15), align 8, !tbaa !3
  store i64 625, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 16), align 16, !tbaa !3
  store i64 36, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 17), align 8, !tbaa !3
  store i64 216, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 18), align 16, !tbaa !3
  store i64 49, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 19), align 8, !tbaa !3
  store i64 343, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 20), align 16, !tbaa !3
  store i64 100, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 21), align 8, !tbaa !3
  store i64 1000, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 22), align 16, !tbaa !3
  store i64 121, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 23), align 8, !tbaa !3
  store i64 144, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 24), align 16, !tbaa !3
  store i64 169, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 25), align 8, !tbaa !3
  store i64 196, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 26), align 16, !tbaa !3
  store i64 225, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 27), align 8, !tbaa !3
  store i64 289, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 28), align 16, !tbaa !3
  store i64 324, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 29), align 8, !tbaa !3
  store i64 361, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 30), align 16, !tbaa !3
  store i64 400, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 31), align 8, !tbaa !3
  store i64 441, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 32), align 16, !tbaa !3
  store i64 484, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 33), align 8, !tbaa !3
  store i64 529, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 34), align 16, !tbaa !3
  store i64 576, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 35), align 8, !tbaa !3
  store i64 676, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 36), align 16, !tbaa !3
  store i64 784, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 37), align 8, !tbaa !3
  store i64 841, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 38), align 16, !tbaa !3
  store i64 900, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 39), align 8, !tbaa !3
  store i64 961, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 40), align 16, !tbaa !3
  br label %.lr.ph

.preheader:                                       ; preds = %._crit_edge
  %4 = load i64, ptr %0, align 8, !tbaa !3
  %5 = load i64, ptr @_QFEa, align 16, !tbaa !3
  %.not = icmp sgt i64 %5, %4
  %spec.select = select i1 %.not, i64 undef, i64 %5
  %6 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 1), align 8, !tbaa !3
  %.not.1 = icmp sgt i64 %6, %4
  %spec.select.1 = select i1 %.not.1, i64 %spec.select, i64 %6
  %7 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 2), align 16, !tbaa !3
  %.not.2 = icmp sgt i64 %7, %4
  %spec.select.2 = select i1 %.not.2, i64 %spec.select.1, i64 %7
  %8 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 3), align 8, !tbaa !3
  %.not.3 = icmp sgt i64 %8, %4
  %spec.select.3 = select i1 %.not.3, i64 %spec.select.2, i64 %8
  %9 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 4), align 16, !tbaa !3
  %.not.4 = icmp sgt i64 %9, %4
  %spec.select.4 = select i1 %.not.4, i64 %spec.select.3, i64 %9
  %10 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 5), align 8, !tbaa !3
  %.not.5 = icmp sgt i64 %10, %4
  %spec.select.5 = select i1 %.not.5, i64 %spec.select.4, i64 %10
  %11 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 6), align 16, !tbaa !3
  %.not.6 = icmp sgt i64 %11, %4
  %spec.select.6 = select i1 %.not.6, i64 %spec.select.5, i64 %11
  %12 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 7), align 8, !tbaa !3
  %.not.7 = icmp sgt i64 %12, %4
  %spec.select.7 = select i1 %.not.7, i64 %spec.select.6, i64 %12
  %13 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 8), align 16, !tbaa !3
  %.not.8 = icmp sgt i64 %13, %4
  %spec.select.8 = select i1 %.not.8, i64 %spec.select.7, i64 %13
  %14 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 9), align 8, !tbaa !3
  %.not.9 = icmp sgt i64 %14, %4
  %spec.select.9 = select i1 %.not.9, i64 %spec.select.8, i64 %14
  %15 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 10), align 16, !tbaa !3
  %.not.10 = icmp sgt i64 %15, %4
  %spec.select.10 = select i1 %.not.10, i64 %spec.select.9, i64 %15
  %16 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 11), align 8, !tbaa !3
  %.not.11 = icmp sgt i64 %16, %4
  %spec.select.11 = select i1 %.not.11, i64 %spec.select.10, i64 %16
  %17 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 12), align 16, !tbaa !3
  %.not.12 = icmp sgt i64 %17, %4
  %spec.select.12 = select i1 %.not.12, i64 %spec.select.11, i64 %17
  %18 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 13), align 8, !tbaa !3
  %.not.13 = icmp sgt i64 %18, %4
  %spec.select.13 = select i1 %.not.13, i64 %spec.select.12, i64 %18
  %19 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 14), align 16, !tbaa !3
  %.not.14 = icmp sgt i64 %19, %4
  %spec.select.14 = select i1 %.not.14, i64 %spec.select.13, i64 %19
  %20 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 15), align 8, !tbaa !3
  %.not.15 = icmp sgt i64 %20, %4
  %spec.select.15 = select i1 %.not.15, i64 %spec.select.14, i64 %20
  %21 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 16), align 16, !tbaa !3
  %.not.16 = icmp sgt i64 %21, %4
  %spec.select.16 = select i1 %.not.16, i64 %spec.select.15, i64 %21
  %22 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 17), align 8, !tbaa !3
  %.not.17 = icmp sgt i64 %22, %4
  %spec.select.17 = select i1 %.not.17, i64 %spec.select.16, i64 %22
  %23 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 18), align 16, !tbaa !3
  %.not.18 = icmp sgt i64 %23, %4
  %spec.select.18 = select i1 %.not.18, i64 %spec.select.17, i64 %23
  %24 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 19), align 8, !tbaa !3
  %.not.19 = icmp sgt i64 %24, %4
  %spec.select.19 = select i1 %.not.19, i64 %spec.select.18, i64 %24
  %25 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 20), align 16, !tbaa !3
  %.not.20 = icmp sgt i64 %25, %4
  %spec.select.20 = select i1 %.not.20, i64 %spec.select.19, i64 %25
  %26 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 21), align 8, !tbaa !3
  %.not.21 = icmp sgt i64 %26, %4
  %spec.select.21 = select i1 %.not.21, i64 %spec.select.20, i64 %26
  %27 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 22), align 16, !tbaa !3
  %.not.22 = icmp sgt i64 %27, %4
  %spec.select.22 = select i1 %.not.22, i64 %spec.select.21, i64 %27
  %28 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 23), align 8, !tbaa !3
  %.not.23 = icmp sgt i64 %28, %4
  %spec.select.23 = select i1 %.not.23, i64 %spec.select.22, i64 %28
  %29 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 24), align 16, !tbaa !3
  %.not.24 = icmp sgt i64 %29, %4
  %spec.select.24 = select i1 %.not.24, i64 %spec.select.23, i64 %29
  %30 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 25), align 8, !tbaa !3
  %.not.25 = icmp sgt i64 %30, %4
  %spec.select.25 = select i1 %.not.25, i64 %spec.select.24, i64 %30
  %31 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 26), align 16, !tbaa !3
  %.not.26 = icmp sgt i64 %31, %4
  %spec.select.26 = select i1 %.not.26, i64 %spec.select.25, i64 %31
  %32 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 27), align 8, !tbaa !3
  %.not.27 = icmp sgt i64 %32, %4
  %spec.select.27 = select i1 %.not.27, i64 %spec.select.26, i64 %32
  %33 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 28), align 16, !tbaa !3
  %.not.28 = icmp sgt i64 %33, %4
  %spec.select.28 = select i1 %.not.28, i64 %spec.select.27, i64 %33
  %34 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 29), align 8, !tbaa !3
  %.not.29 = icmp sgt i64 %34, %4
  %spec.select.29 = select i1 %.not.29, i64 %spec.select.28, i64 %34
  %35 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 30), align 16, !tbaa !3
  %.not.30 = icmp sgt i64 %35, %4
  %spec.select.30 = select i1 %.not.30, i64 %spec.select.29, i64 %35
  %36 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 31), align 8, !tbaa !3
  %.not.31 = icmp sgt i64 %36, %4
  %spec.select.31 = select i1 %.not.31, i64 %spec.select.30, i64 %36
  %37 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 32), align 16, !tbaa !3
  %.not.32 = icmp sgt i64 %37, %4
  %spec.select.32 = select i1 %.not.32, i64 %spec.select.31, i64 %37
  %38 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 33), align 8, !tbaa !3
  %.not.33 = icmp sgt i64 %38, %4
  %spec.select.33 = select i1 %.not.33, i64 %spec.select.32, i64 %38
  %39 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 34), align 16, !tbaa !3
  %.not.34 = icmp sgt i64 %39, %4
  %spec.select.34 = select i1 %.not.34, i64 %spec.select.33, i64 %39
  %40 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 35), align 8, !tbaa !3
  %.not.35 = icmp sgt i64 %40, %4
  %spec.select.35 = select i1 %.not.35, i64 %spec.select.34, i64 %40
  %41 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 36), align 16, !tbaa !3
  %.not.36 = icmp sgt i64 %41, %4
  %spec.select.36 = select i1 %.not.36, i64 %spec.select.35, i64 %41
  %42 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 37), align 8, !tbaa !3
  %.not.37 = icmp sgt i64 %42, %4
  %spec.select.37 = select i1 %.not.37, i64 %spec.select.36, i64 %42
  %43 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 38), align 16, !tbaa !3
  %.not.38 = icmp sgt i64 %43, %4
  %spec.select.38 = select i1 %.not.38, i64 %spec.select.37, i64 %43
  %44 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 39), align 8, !tbaa !3
  %.not.39 = icmp sgt i64 %44, %4
  %spec.select.39 = select i1 %.not.39, i64 %spec.select.38, i64 %44
  %45 = load i64, ptr getelementptr inbounds ([41 x i64], ptr @_QFEa, i64 0, i64 40), align 16, !tbaa !3
  %.not.40 = icmp sgt i64 %45, %4
  %spec.select.40 = select i1 %.not.40, i64 %spec.select.39, i64 %45
  %46 = call ptr @_FortranAioBeginExternalListOutput(i32 -1, ptr nonnull @_QQcl.ed7b50fd5329ae9523a6fb5bda57d1d8, i32 64)
  %47 = call i1 @_FortranAioOutputInteger64(ptr %46, i64 %spec.select.40)
  %48 = call i32 @_FortranAioEndIoStatement(ptr %46)
  %49 = call {} @_FortranAStopStatement(i32 0, i1 false, i1 false)
  unreachable

.lr.ph:                                           ; preds = %._crit_edge, %__mlir_math_ipowi_i64.exit86.1
  %indvar = phi i64 [ %indvar.next, %._crit_edge ], [ 0, %__mlir_math_ipowi_i64.exit86.1 ]
  %50 = phi i64 [ %81, %._crit_edge ], [ 1, %__mlir_math_ipowi_i64.exit86.1 ]
  %51 = sub i64 1, %indvar
  %52 = add nsw i64 %50, -1
  %53 = getelementptr [41 x i64], ptr @_QFEa, i64 0, i64 %52
  %xtraiter = and i64 %51, 1
  %lcmp.mod.not = icmp eq i64 %xtraiter, 0
  br i1 %lcmp.mod.not, label %.prol.loopexit, label %.prol.preheader

.prol.preheader:                                  ; preds = %.lr.ph
  %54 = load i64, ptr %53, align 8, !tbaa !3
  %55 = add nsw i64 %50, -1
  %56 = getelementptr [41 x i64], ptr @_QFEa, i64 0, i64 %55
  %57 = load i64, ptr %56, align 8, !tbaa !3
  %58 = icmp sgt i64 %54, %57
  br i1 %58, label %59, label %.prol.loopexit.unr-lcssa

59:                                               ; preds = %.prol.preheader
  store i64 %57, ptr %53, align 8, !tbaa !3
  store i64 %54, ptr %56, align 8, !tbaa !3
  br label %.prol.loopexit.unr-lcssa

.prol.loopexit.unr-lcssa:                         ; preds = %59, %.prol.preheader
  %60 = add nuw nsw i64 %50, 1
  br label %.prol.loopexit

.prol.loopexit:                                   ; preds = %.prol.loopexit.unr-lcssa, %.lr.ph
  %.pn = phi i64 [ 42, %.lr.ph ], [ 41, %.prol.loopexit.unr-lcssa ]
  %.unr98 = phi i64 [ %50, %.lr.ph ], [ %60, %.prol.loopexit.unr-lcssa ]
  %61 = icmp eq i64 %indvar, 40
  br i1 %61, label %._crit_edge, label %.lr.ph.new

.lr.ph.new:                                       ; preds = %.prol.loopexit
  %.unr = sub nsw i64 %.pn, %50
  br label %62

62:                                               ; preds = %77, %.lr.ph.new
  %63 = phi i64 [ %.unr, %.lr.ph.new ], [ %79, %77 ]
  %64 = phi i64 [ %.unr98, %.lr.ph.new ], [ %78, %77 ]
  %65 = load i64, ptr %53, align 8, !tbaa !3
  %66 = add nsw i64 %64, -1
  %67 = getelementptr [41 x i64], ptr @_QFEa, i64 0, i64 %66
  %68 = load i64, ptr %67, align 8, !tbaa !3
  %69 = icmp sgt i64 %65, %68
  br i1 %69, label %70, label %71

70:                                               ; preds = %62
  store i64 %68, ptr %53, align 8, !tbaa !3
  store i64 %65, ptr %67, align 8, !tbaa !3
  br label %71

71:                                               ; preds = %70, %62
  %72 = load i64, ptr %53, align 8, !tbaa !3
  %73 = getelementptr [41 x i64], ptr @_QFEa, i64 0, i64 %64
  %74 = load i64, ptr %73, align 8, !tbaa !3
  %75 = icmp sgt i64 %72, %74
  br i1 %75, label %76, label %77

76:                                               ; preds = %71
  store i64 %74, ptr %53, align 8, !tbaa !3
  store i64 %72, ptr %73, align 8, !tbaa !3
  br label %77

77:                                               ; preds = %76, %71
  %78 = add nuw nsw i64 %64, 2
  %79 = add nsw i64 %63, -2
  %80 = icmp sgt i64 %63, 2
  br i1 %80, label %62, label %._crit_edge

._crit_edge:                                      ; preds = %77, %.prol.loopexit
  %81 = add nuw nsw i64 %50, 1
  %exitcond.not = icmp eq i64 %81, 42
  %indvar.next = add i64 %indvar, 1
  br i1 %exitcond.not, label %.preheader, label %.lr.ph
}

declare ptr @_FortranAioBeginExternalListInput(i32, ptr, i32) local_unnamed_addr

declare i1 @_FortranAioInputInteger(ptr, ptr, i32) local_unnamed_addr

declare i32 @_FortranAioEndIoStatement(ptr) local_unnamed_addr

declare ptr @_FortranAioBeginExternalListOutput(i32, ptr, i32) local_unnamed_addr

declare i1 @_FortranAioOutputInteger64(ptr, i64) local_unnamed_addr

declare {} @_FortranAStopStatement(i32, i1, i1) local_unnamed_addr

attributes #0 = { noreturn }

!llvm.module.flags = !{!0, !1, !2}

!0 = !{i32 2, !"Debug Info Version", i32 3}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{!4, !4, i64 0}
!4 = !{!"any data access", !5, i64 0}
!5 = !{!"any access", !6, i64 0}
!6 = !{!"Flang Type TBAA Root"}
