brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · e346dd0 Raw
22 lines · plain
1! RUN: %python %S/test_folding.py %s %flang_fc12! Tests folding of BTEST3module m14  integer, parameter :: ia1(*) = [(j, j=0, 15)]5  logical, parameter :: test_ia1a = all(btest(ia1, 0) .eqv. [(.false., .true., j=1, 8)])6  logical, parameter :: test_ia1b = all(btest(ia1, 1) .eqv. [(.false., .false., .true., .true., j=1, 4)])7  logical, parameter :: test_ia1c = all(btest(ia1, 2) .eqv. [(modulo(j/4, 2) == 1, j=0, 15)])8  logical, parameter :: test_ia1d = all(btest(ia1, 3) .eqv. [(j > 8, j=1, 16)])9  logical, parameter :: test_shft1 = all([(btest(ishft(1_1, j), j), j=0, 7)])10  logical, parameter :: test_shft2 = all([(btest(ishft(1_2, j), j), j=0, 15)])11  logical, parameter :: test_shft4 = all([(btest(ishft(1_4, j), j), j=0, 31)])12  logical, parameter :: test_shft8 = all([(btest(ishft(1_8, j), j), j=0, 63)])13  logical, parameter :: test_shft16 = all([(btest(ishft(1_16, j), j), j=0, 127)])14  logical, parameter :: test_set1 = all([(btest(ibset(0_1, j), j), j=0, 7)])15  logical, parameter :: test_set2 = all([(btest(ibset(0_2, j), j), j=0, 15)])16  logical, parameter :: test_set4 = all([(btest(ibset(0_4, j), j), j=0, 31)])17  logical, parameter :: test_set8 = all([(btest(ibset(0_8, j), j), j=0, 63)])18  logical, parameter :: test_set16 = all([(btest(ibset(0_16, j), j), j=0, 127)])19  logical, parameter :: test_z = .not. any([(btest(0_4, j), j=0, 31)])20  logical, parameter :: test_shft1e = all(btest([(ishft(1_1, j), j=0, 7)], [(j, j=0, 7)]))21end module22