PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gfortran.dg / leadz_trailz_1.f90
blob5030775b6323068b8c87dba33216bc445e653628
1 ! { dg-do run }
3 integer(kind=1) :: i1
4 integer(kind=2) :: i2
5 integer(kind=4) :: i4
6 integer(kind=8) :: i8
8 i1 = -1
9 i2 = -1
10 i4 = -1
11 i8 = -1
13 if (leadz(i1) /= 0) STOP 1
14 if (leadz(i2) /= 0) STOP 2
15 if (leadz(i4) /= 0) STOP 3
16 if (leadz(i8) /= 0) STOP 4
18 if (trailz(i1) /= 0) STOP 5
19 if (trailz(i2) /= 0) STOP 6
20 if (trailz(i4) /= 0) STOP 7
21 if (trailz(i8) /= 0) STOP 8
23 if (leadz(-1_1) /= 0) STOP 9
24 if (leadz(-1_2) /= 0) STOP 10
25 if (leadz(-1_4) /= 0) STOP 11
26 if (leadz(-1_8) /= 0) STOP 12
28 if (trailz(-1_1) /= 0) STOP 13
29 if (trailz(-1_2) /= 0) STOP 14
30 if (trailz(-1_4) /= 0) STOP 15
31 if (trailz(-1_8) /= 0) STOP 16
33 i1 = -64
34 i2 = -64
35 i4 = -64
36 i8 = -64
38 if (leadz(i1) /= 0) STOP 17
39 if (leadz(i2) /= 0) STOP 18
40 if (leadz(i4) /= 0) STOP 19
41 if (leadz(i8) /= 0) STOP 20
43 if (trailz(i1) /= 6) STOP 21
44 if (trailz(i2) /= 6) STOP 22
45 if (trailz(i4) /= 6) STOP 23
46 if (trailz(i8) /= 6) STOP 24
48 if (leadz(-64_1) /= 0) STOP 25
49 if (leadz(-64_2) /= 0) STOP 26
50 if (leadz(-64_4) /= 0) STOP 27
51 if (leadz(-64_8) /= 0) STOP 28
53 if (trailz(-64_1) /= 6) STOP 29
54 if (trailz(-64_2) /= 6) STOP 30
55 if (trailz(-64_4) /= 6) STOP 31
56 if (trailz(-64_8) /= 6) STOP 32
58 i1 = -108
59 i2 = -108
60 i4 = -108
61 i8 = -108
63 if (leadz(i1) /= 0) STOP 33
64 if (leadz(i2) /= 0) STOP 34
65 if (leadz(i4) /= 0) STOP 35
66 if (leadz(i8) /= 0) STOP 36
68 if (trailz(i1) /= 2) STOP 37
69 if (trailz(i2) /= 2) STOP 38
70 if (trailz(i4) /= 2) STOP 39
71 if (trailz(i8) /= 2) STOP 40
73 if (leadz(-108_1) /= 0) STOP 41
74 if (leadz(-108_2) /= 0) STOP 42
75 if (leadz(-108_4) /= 0) STOP 43
76 if (leadz(-108_8) /= 0) STOP 44
78 if (trailz(-108_1) /= 2) STOP 45
79 if (trailz(-108_2) /= 2) STOP 46
80 if (trailz(-108_4) /= 2) STOP 47
81 if (trailz(-108_8) /= 2) STOP 48
83 i1 = 1
84 i2 = 1
85 i4 = 1
86 i8 = 1
88 if (leadz(i1) /= bit_size(i1) - 1) STOP 49
89 if (leadz(i2) /= bit_size(i2) - 1) STOP 50
90 if (leadz(i4) /= bit_size(i4) - 1) STOP 51
91 if (leadz(i8) /= bit_size(i8) - 1) STOP 52
93 if (trailz(i1) /= 0) STOP 53
94 if (trailz(i2) /= 0) STOP 54
95 if (trailz(i4) /= 0) STOP 55
96 if (trailz(i8) /= 0) STOP 56
98 if (leadz(1_1) /= bit_size(1_1) - 1) STOP 57
99 if (leadz(1_2) /= bit_size(1_2) - 1) STOP 58
100 if (leadz(1_4) /= bit_size(1_4) - 1) STOP 59
101 if (leadz(1_8) /= bit_size(1_8) - 1) STOP 60
103 if (trailz(1_1) /= 0) STOP 61
104 if (trailz(1_2) /= 0) STOP 62
105 if (trailz(1_4) /= 0) STOP 63
106 if (trailz(1_8) /= 0) STOP 64
108 i1 = 64
109 i2 = 64
110 i4 = 64
111 i8 = 64
113 if (leadz(i1) /= 1) STOP 65
114 if (leadz(i2) /= 9) STOP 66
115 if (leadz(i4) /= 25) STOP 67
116 if (leadz(i8) /= 57) STOP 68
118 if (trailz(i1) /= 6) STOP 69
119 if (trailz(i2) /= 6) STOP 70
120 if (trailz(i4) /= 6) STOP 71
121 if (trailz(i8) /= 6) STOP 72
123 if (leadz(64_1) /= 1) STOP 73
124 if (leadz(64_2) /= 9) STOP 74
125 if (leadz(64_4) /= 25) STOP 75
126 if (leadz(64_8) /= 57) STOP 76
128 if (trailz(64_1) /= 6) STOP 77
129 if (trailz(64_2) /= 6) STOP 78
130 if (trailz(64_4) /= 6) STOP 79
131 if (trailz(64_8) /= 6) STOP 80