1*93196654SKelvin Li! RUN: %flang_fc1 -fdebug-unparse %s 2>&1 | FileCheck %s 2*93196654SKelvin Li! Check that a call to RSHIFT is transformed to SHIFTA. 3*93196654SKelvin Li 4*93196654SKelvin Lisubroutine test_default_integer() 5*93196654SKelvin Li integer :: i, j, k 6*93196654SKelvin Li k = rshift(i, j) 7*93196654SKelvin Li!CHECK: k=shifta(i,j) 8*93196654SKelvin Li k = rshift(16, 2) 9*93196654SKelvin Li!CHECK: k=4_4 10*93196654SKelvin Liend 11*93196654SKelvin Li 12*93196654SKelvin Lisubroutine test_integer1() 13*93196654SKelvin Li integer(1) :: i, j, k 14*93196654SKelvin Li k = rshift(i, j) 15*93196654SKelvin Li!CHECK: k=shifta(i,int(j,kind=4)) 16*93196654SKelvin Li print *, rshift(8_1, 2) 17*93196654SKelvin Li!CHECK: PRINT *, 2_1 18*93196654SKelvin Liend 19*93196654SKelvin Li 20*93196654SKelvin Lisubroutine test_integer2() 21*93196654SKelvin Li integer(2) :: i, j, k 22*93196654SKelvin Li k = rshift(i, j) 23*93196654SKelvin Li!CHECK: k=shifta(i,int(j,kind=4)) 24*93196654SKelvin Li print *, rshift(8_2, 2) 25*93196654SKelvin Li!CHECK: PRINT *, 2_2 26*93196654SKelvin Liend 27*93196654SKelvin Li 28*93196654SKelvin Lisubroutine test_integer4() 29*93196654SKelvin Li integer(4) :: i, j, k 30*93196654SKelvin Li k = rshift(i, j) 31*93196654SKelvin Li!CHECK: k=shifta(i,j) 32*93196654SKelvin Li print *, rshift(8_4, 2) 33*93196654SKelvin Li!CHECK: PRINT *, 2_4 34*93196654SKelvin Liend 35*93196654SKelvin Li 36*93196654SKelvin Lisubroutine test_integer8() 37*93196654SKelvin Li integer(8) :: i, j, k 38*93196654SKelvin Li k = rshift(i, j) 39*93196654SKelvin Li!CHECK: k=shifta(i,int(j,kind=4)) 40*93196654SKelvin Li print *, rshift(-16_8, 2) 41*93196654SKelvin Li!CHECK: PRINT *, -4_8 42*93196654SKelvin Liend 43*93196654SKelvin Li 44*93196654SKelvin Lisubroutine test_integer16() 45*93196654SKelvin Li integer(16) :: i, j, k 46*93196654SKelvin Li k = rshift(i, j) 47*93196654SKelvin Li!CHECK: k=shifta(i,int(j,kind=4)) 48*93196654SKelvin Li print *, rshift(8_16, 2) 49*93196654SKelvin Li!CHECK: PRINT *, 2_16 50*93196654SKelvin Liend 51