|
4 | 4 |
|
5 | 5 | // RUN: %clang -### -ffp-model=aggressive -ffp-contract=off -c %s 2>&1 \
|
6 | 6 | // RUN: | FileCheck --check-prefix=WARN %s
|
7 |
| -// WARN: warning: overriding '-ffp-model=fast' option with '-ffp-contract=off' [-Woverriding-option] |
| 7 | +// WARN: warning: overriding '-ffp-model=aggressive' option with '-ffp-contract=off' [-Woverriding-option] |
8 | 8 |
|
9 | 9 | // RUN: %clang -### -ffp-model=aggressive -ffp-contract=on -c %s 2>&1 \
|
10 | 10 | // RUN: | FileCheck --check-prefix=WARN1 %s
|
11 |
| -// WARN1: warning: overriding '-ffp-model=fast' option with '-ffp-contract=on' [-Woverriding-option] |
| 11 | +// WARN1: warning: overriding '-ffp-model=aggressive' option with '-ffp-contract=on' [-Woverriding-option] |
12 | 12 |
|
13 | 13 | // RUN: %clang -### -ffp-model=strict -fassociative-math -c %s 2>&1 \
|
14 | 14 | // RUN: | FileCheck --check-prefix=WARN2 %s
|
|
74 | 74 |
|
75 | 75 | // RUN: %clang -### -Ofast -ffp-model=strict -c %s 2>&1 | FileCheck \
|
76 | 76 | // RUN: --check-prefix=WARN12 %s
|
77 |
| -// RUN: %clang -### -Werror -ffast-math -ffp-model=strict -c %s |
78 | 77 | // WARN12: warning: overriding '-ffp-model=strict' option with '-Ofast'
|
79 | 78 |
|
| 79 | +// RUN: %clang -### -ffast-math -ffp-model=strict -c %s 2>&1 | FileCheck \ |
| 80 | +// RUN: --check-prefix=WARN-CX-BASIC-TO-FULL %s |
| 81 | +// WARN-CX-BASIC-TO-FULL: warning: overriding '-fcomplex-arithmetic=basic' option with '-fcomplex-arithmetic=full' |
| 82 | + |
80 | 83 | // RUN: %clang -### -ffp-model=strict -fapprox-func -c %s 2>&1 \
|
81 | 84 | // RUN: | FileCheck --check-prefix=WARN13 %s
|
82 | 85 | // WARN13: warning: overriding '-ffp-model=strict' option with '-fapprox-func' [-Woverriding-option]
|
|
109 | 112 | // CHECK-TRAP: "-cc1"
|
110 | 113 | // CHECK-TRAP: "-ffp-exception-behavior=strict"
|
111 | 114 |
|
| 115 | +// RUN: %clang -### -nostdinc -ffp-model=aggressive -c %s 2>&1 \ |
| 116 | +// RUN: | FileCheck --check-prefix=CHECK-FPM-AGGR %s |
| 117 | +// CHECK-FPM-AGGR: "-cc1" |
| 118 | +// CHECK-FPM-AGGR: "-menable-no-infs" |
| 119 | +// CHECK-FPM-AGGR: "-menable-no-nans" |
| 120 | +// CHECK-FPM-AGGR: "-fapprox-func" |
| 121 | +// CHECK-FPM-AGGR: "-funsafe-math-optimizations" |
| 122 | +// CHECK-FPM-AGGR: "-fno-signed-zeros" |
| 123 | +// CHECK-FPM-AGGR: "-mreassociate" |
| 124 | +// CHECK-FPM-AGGR: "-freciprocal-math" |
| 125 | +// CHECK-FPM-AGGR: "-ffp-contract=fast" |
| 126 | +// CHECK-FPM-AGGR: "-fno-rounding-math" |
| 127 | +// CHECK-FPM-AGGR: "-ffast-math" |
| 128 | +// CHECK-FPM-AGGR: "-ffinite-math-only" |
| 129 | +// CHECK-FPM-AGGR: "-complex-range=basic" |
| 130 | + |
112 | 131 | // RUN: %clang -### -nostdinc -ffp-model=fast -c %s 2>&1 \
|
113 | 132 | // RUN: | FileCheck --check-prefix=CHECK-FPM-FAST %s
|
114 | 133 | // CHECK-FPM-FAST: "-cc1"
|
115 |
| -// CHECK-FPM-FAST: "-menable-no-infs" |
116 |
| -// CHECK-FPM-FAST: "-menable-no-nans" |
| 134 | +// CHECK-FPM-FAST-NOT: "-menable-no-infs" |
| 135 | +// CHECK-FPM-FAST-NOT: "-menable-no-nans" |
117 | 136 | // CHECK-FPM-FAST: "-fapprox-func"
|
118 | 137 | // CHECK-FPM-FAST: "-funsafe-math-optimizations"
|
119 | 138 | // CHECK-FPM-FAST: "-fno-signed-zeros"
|
120 | 139 | // CHECK-FPM-FAST: "-mreassociate"
|
121 | 140 | // CHECK-FPM-FAST: "-freciprocal-math"
|
122 |
| -// CHECK-FPM-FAST: "-ffp-contract=fast" |
| 141 | +// CHECK-FPM-FAST: "-ffp-contract=fast-honor-pragmas" |
123 | 142 | // CHECK-FPM-FAST: "-fno-rounding-math"
|
124 |
| -// CHECK-FPM-FAST: "-ffast-math" |
125 |
| -// CHECK-FPM-FAST: "-ffinite-math-only" |
| 143 | +// CHECK-FPM-FAST-NOT: "-ffast-math" |
| 144 | +// CHECK-FPM-FAST-NOT: "-ffinite-math-only" |
| 145 | +// CHECK-FPM-FAST: "-complex-range=promoted" |
126 | 146 |
|
127 | 147 | // RUN: %clang -### -nostdinc -ffp-model=precise -c %s 2>&1 \
|
128 | 148 | // RUN: | FileCheck --check-prefix=CHECK-FPM-PRECISE %s
|
|
163 | 183 | // CHECK-FEB-IGNORE: "-fno-rounding-math"
|
164 | 184 | // CHECK-FEB-IGNORE: "-ffp-exception-behavior=ignore"
|
165 | 185 |
|
166 |
| -// RUN: %clang -### -nostdinc -Werror -ffast-math -ffp-model=fast -c %s 2>&1 \ |
| 186 | +// RUN: %clang -### -nostdinc -Werror -ffast-math -ffp-model=aggressive -c %s 2>&1 \ |
| 187 | +// RUN: | FileCheck --check-prefix=CHECK-FASTMATH-FPM-AGGR %s |
| 188 | +// CHECK-FASTMATH-FPM-AGGR: "-cc1" |
| 189 | +// CHECK-FASTMATH-FPM-AGGR: "-menable-no-infs" |
| 190 | +// CHECK-FASTMATH-FPM-AGGR: "-menable-no-nans" |
| 191 | +// CHECK-FASTMATH-FPM-AGGR: "-fapprox-func" |
| 192 | +// CHECK-FASTMATH-FPM-AGGR: "-funsafe-math-optimizations" |
| 193 | +// CHECK-FASTMATH-FPM-AGGR: "-fno-signed-zeros" |
| 194 | +// CHECK-FASTMATH-FPM-AGGR: "-mreassociate" |
| 195 | +// CHECK-FASTMATH-FPM-AGGR: "-freciprocal-math" |
| 196 | +// CHECK-FASTMATH-FPM-AGGR: "-ffp-contract=fast" |
| 197 | +// CHECK-FASTMATH-FPM-AGGR: "-fno-rounding-math" |
| 198 | +// CHECK-FASTMATH-FPM-AGGR: "-ffast-math" |
| 199 | +// CHECK-FASTMATH-FPM-AGGR: "-ffinite-math-only" |
| 200 | +// CHECK-FASTMATH-FPM-AGGR: "-complex-range=basic" |
| 201 | + |
| 202 | +// RUN: %clang -### -nostdinc -ffast-math -ffp-model=fast -c %s 2>&1 \ |
167 | 203 | // RUN: | FileCheck --check-prefix=CHECK-FASTMATH-FPM-FAST %s
|
| 204 | +// CHECK-FASTMATH-FPM-FAST: warning: overriding '-fcomplex-arithmetic=basic' option with '-fcomplex-arithmetic=promoted' |
168 | 205 | // CHECK-FASTMATH-FPM-FAST: "-cc1"
|
169 |
| -// CHECK-FASTMATH-FPM-FAST: "-menable-no-infs" |
170 |
| -// CHECK-FASTMATH-FPM-FAST: "-menable-no-nans" |
| 206 | +// CHECK-FASTMATH-FPM-FAST-NOT: "-menable-no-infs" |
| 207 | +// CHECK-FASTMATH-FPM-FAST-NOT: "-menable-no-nans" |
171 | 208 | // CHECK-FASTMATH-FPM-FAST: "-fapprox-func"
|
172 | 209 | // CHECK-FASTMATH-FPM-FAST: "-funsafe-math-optimizations"
|
173 | 210 | // CHECK-FASTMATH-FPM-FAST: "-fno-signed-zeros"
|
174 | 211 | // CHECK-FASTMATH-FPM-FAST: "-mreassociate"
|
175 | 212 | // CHECK-FASTMATH-FPM-FAST: "-freciprocal-math"
|
176 |
| -// CHECK-FASTMATH-FPM-FAST: "-ffp-contract=fast" |
| 213 | +// CHECK-FASTMATH-FPM-FAST: "-ffp-contract=fast-honor-pragmas" |
177 | 214 | // CHECK-FASTMATH-FPM-FAST: "-fno-rounding-math"
|
178 |
| -// CHECK-FASTMATH-FPM-FAST: "-ffast-math" |
179 |
| -// CHECK-FASTMATH-FPM-FAST: "-ffinite-math-only" |
| 215 | +// CHECK-FASTMATH-FPM-FAST-NOT: "-ffast-math" |
| 216 | +// CHECK-FASTMATH-FPM-FAST-NOT: "-ffinite-math-only" |
| 217 | +// CHECK-FASTMATH-FPM-FAST: "-complex-range=promoted" |
180 | 218 |
|
181 |
| -// RUN: %clang -### -nostdinc -Werror -ffast-math -ffp-model=precise -c %s 2>&1 \ |
182 |
| -// RUN: | FileCheck --check-prefix=CHECK-FASTMATH-FPM-PRECISE %s |
| 219 | +// RUN: %clang -### -nostdinc -ffast-math -ffp-model=precise -c %s 2>&1 \ |
| 220 | +// RUN: | FileCheck --check-prefixes=CHECK-FASTMATH-FPM-PRECISE,WARN-CX-BASIC-TO-FULL %s |
183 | 221 | // CHECK-FASTMATH-FPM-PRECISE: "-cc1"
|
184 | 222 | // CHECK-FASTMATH-FPM-PRECISE-NOT: "-menable-no-infs"
|
185 | 223 | // CHECK-FASTMATH-FPM-PRECISE-NOT: "-menable-no-nans"
|
|
192 | 230 | // CHECK-FASTMATH-FPM-PRECISE: "-fno-rounding-math"
|
193 | 231 | // CHECK-FASTMATH-FPM-PRECISE-NOT: "-ffast-math"
|
194 | 232 | // CHECK-FASTMATH-FPM-PRECISE-NOT: "-ffinite-math-only"
|
| 233 | +// CHECK-FASTMATH-FPM-PRECISE: "-complex-range=full" |
195 | 234 |
|
196 |
| -// RUN: %clang -### -nostdinc -Werror -ffast-math -ffp-model=strict -c %s 2>&1 \ |
197 |
| -// RUN: | FileCheck --check-prefix=CHECK-FASTMATH-FPM-STRICT %s |
| 235 | +// RUN: %clang -### -nostdinc -ffast-math -ffp-model=strict -c %s 2>&1 \ |
| 236 | +// RUN: | FileCheck --check-prefixes=CHECK-FASTMATH-FPM-STRICT,WARN-CX-BASIC-TO-FULL %s |
198 | 237 | // CHECK-FASTMATH-FPM-STRICT: "-cc1"
|
199 | 238 | // CHECK-FASTMATH-FPM-STRICT-NOT: "-menable-no-infs"
|
200 | 239 | // CHECK-FASTMATH-FPM-STRICT-NOT: "-menable-no-nans"
|
|
207 | 246 | // CHECK-FASTMATH-FPM-STRICT-NOT: "-fno-rounding-math"
|
208 | 247 | // CHECK-FASTMATH-FPM-STRICT-NOT: "-ffast-math"
|
209 | 248 | // CHECK-FASTMATH-FPM-STRICT-NOT: "-ffinite-math-only"
|
| 249 | +// CHECK-FASTMATH-FPM-STRICT: "-complex-range=full" |
0 commit comments