111
|
1 ! { dg-do run }
|
|
2
|
|
3 integer(kind=1) :: i1
|
|
4 integer(kind=2) :: i2
|
|
5 integer(kind=4) :: i4
|
|
6 integer(kind=8) :: i8
|
|
7
|
|
8 i1 = -1
|
|
9 i2 = -1
|
|
10 i4 = -1
|
|
11 i8 = -1
|
|
12
|
131
|
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
|
111
|
17
|
131
|
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
|
111
|
22
|
131
|
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
|
111
|
27
|
131
|
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
|
111
|
32
|
|
33 i1 = -64
|
|
34 i2 = -64
|
|
35 i4 = -64
|
|
36 i8 = -64
|
|
37
|
131
|
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
|
111
|
42
|
131
|
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
|
111
|
47
|
131
|
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
|
111
|
52
|
131
|
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
|
111
|
57
|
|
58 i1 = -108
|
|
59 i2 = -108
|
|
60 i4 = -108
|
|
61 i8 = -108
|
|
62
|
131
|
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
|
111
|
67
|
131
|
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
|
111
|
72
|
131
|
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
|
111
|
77
|
131
|
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
|
111
|
82
|
|
83 i1 = 1
|
|
84 i2 = 1
|
|
85 i4 = 1
|
|
86 i8 = 1
|
|
87
|
131
|
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
|
111
|
92
|
131
|
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
|
111
|
97
|
131
|
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
|
111
|
102
|
131
|
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
|
111
|
107
|
|
108 i1 = 64
|
|
109 i2 = 64
|
|
110 i4 = 64
|
|
111 i8 = 64
|
|
112
|
131
|
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
|
111
|
117
|
131
|
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
|
111
|
122
|
131
|
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
|
111
|
127
|
131
|
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
|
111
|
132
|
|
133 end
|