15
15
#include < cmath>
16
16
#include < ostream>
17
17
#include < string>
18
+ #include < tuple>
18
19
19
20
using namespace llvm ;
20
21
@@ -3176,24 +3177,26 @@ TEST(APFloatTest, PPCDoubleDoubleAddSpecial) {
3176
3177
APFloat::fltCategory, APFloat::roundingMode>;
3177
3178
DataType Data[] = {
3178
3179
// (1 + 0) + (-1 + 0) = fcZero
3179
- { 0x3ff0000000000000ull , 0 , 0xbff0000000000000ull , 0 , APFloat::fcZero ,
3180
- APFloat::rmNearestTiesToEven} ,
3180
+ std::make_tuple ( 0x3ff0000000000000ull , 0 , 0xbff0000000000000ull , 0 ,
3181
+ APFloat::fcZero, APFloat:: rmNearestTiesToEven) ,
3181
3182
// LDBL_MAX + (1.1 >> (1023 - 106) + 0)) = fcInfinity
3182
- {0x7fefffffffffffffull , 0x7c8ffffffffffffeull , 0x7948000000000000ull ,
3183
- 0ull , APFloat::fcInfinity, APFloat::rmNearestTiesToEven},
3183
+ std::make_tuple (0x7fefffffffffffffull , 0x7c8ffffffffffffeull ,
3184
+ 0x7948000000000000ull , 0ull , APFloat::fcInfinity,
3185
+ APFloat::rmNearestTiesToEven),
3184
3186
// TODO: change the 4th 0x75effffffffffffe to 0x75efffffffffffff when
3185
3187
// PPCDoubleDoubleImpl is gone.
3186
3188
// LDBL_MAX + (1.011111... >> (1023 - 106) + (1.1111111...0 >> (1023 -
3187
3189
// 160))) = fcNormal
3188
- {0x7fefffffffffffffull , 0x7c8ffffffffffffeull , 0x7947ffffffffffffull ,
3189
- 0x75effffffffffffeull , APFloat::fcNormal, APFloat::rmNearestTiesToEven},
3190
+ std::make_tuple (0x7fefffffffffffffull , 0x7c8ffffffffffffeull ,
3191
+ 0x7947ffffffffffffull , 0x75effffffffffffeull ,
3192
+ APFloat::fcNormal, APFloat::rmNearestTiesToEven),
3190
3193
// LDBL_MAX + (1.1 >> (1023 - 106) + 0)) = fcInfinity
3191
- { 0x7fefffffffffffffull , 0x7c8ffffffffffffeull , 0x7fefffffffffffffull ,
3192
- 0x7c8ffffffffffffeull , APFloat::fcInfinity ,
3193
- APFloat::rmNearestTiesToEven} ,
3194
+ std::make_tuple ( 0x7fefffffffffffffull , 0x7c8ffffffffffffeull ,
3195
+ 0x7fefffffffffffffull , 0x7c8ffffffffffffeull ,
3196
+ APFloat::fcInfinity, APFloat:: rmNearestTiesToEven) ,
3194
3197
// NaN + (1 + 0) = fcNaN
3195
- { 0x7ff8000000000000ull , 0 , 0x3ff0000000000000ull , 0 , APFloat::fcNaN ,
3196
- APFloat::rmNearestTiesToEven} ,
3198
+ std::make_tuple ( 0x7ff8000000000000ull , 0 , 0x3ff0000000000000ull , 0 ,
3199
+ APFloat::fcNaN, APFloat:: rmNearestTiesToEven) ,
3197
3200
};
3198
3201
3199
3202
for (auto Tp : Data) {
@@ -3215,35 +3218,35 @@ TEST(APFloatTest, PPCDoubleDoubleAdd) {
3215
3218
uint64_t , APFloat::roundingMode>;
3216
3219
DataType Data[] = {
3217
3220
// (1 + 0) + (1e-105 + 0) = (1 + 1e-105)
3218
- { 0x3ff0000000000000ull , 0 , 0x3960000000000000ull , 0 ,
3219
- 0x3ff0000000000000ull , 0x3960000000000000ull ,
3220
- APFloat::rmNearestTiesToEven} ,
3221
+ std::make_tuple ( 0x3ff0000000000000ull , 0 , 0x3960000000000000ull , 0 ,
3222
+ 0x3ff0000000000000ull , 0x3960000000000000ull ,
3223
+ APFloat::rmNearestTiesToEven) ,
3221
3224
// (1 + 0) + (1e-106 + 0) = (1 + 1e-106)
3222
- { 0x3ff0000000000000ull , 0 , 0x3950000000000000ull , 0 ,
3223
- 0x3ff0000000000000ull , 0x3950000000000000ull ,
3224
- APFloat::rmNearestTiesToEven} ,
3225
+ std::make_tuple ( 0x3ff0000000000000ull , 0 , 0x3950000000000000ull , 0 ,
3226
+ 0x3ff0000000000000ull , 0x3950000000000000ull ,
3227
+ APFloat::rmNearestTiesToEven) ,
3225
3228
// (1 + 1e-106) + (1e-106 + 0) = (1 + 1e-105)
3226
- { 0x3ff0000000000000ull , 0x3950000000000000ull , 0x3950000000000000ull , 0 ,
3227
- 0x3ff0000000000000ull , 0x3960000000000000ull ,
3228
- APFloat::rmNearestTiesToEven} ,
3229
+ std::make_tuple ( 0x3ff0000000000000ull , 0x3950000000000000ull ,
3230
+ 0x3950000000000000ull , 0 , 0x3ff0000000000000ull ,
3231
+ 0x3960000000000000ull , APFloat::rmNearestTiesToEven) ,
3229
3232
// (1 + 0) + (epsilon + 0) = (1 + epsilon)
3230
- { 0x3ff0000000000000ull , 0 , 0x0000000000000001ull , 0 ,
3231
- 0x3ff0000000000000ull , 0x0000000000000001ull ,
3232
- APFloat::rmNearestTiesToEven} ,
3233
+ std::make_tuple ( 0x3ff0000000000000ull , 0 , 0x0000000000000001ull , 0 ,
3234
+ 0x3ff0000000000000ull , 0x0000000000000001ull ,
3235
+ APFloat::rmNearestTiesToEven) ,
3233
3236
// TODO: change 0xf950000000000000 to 0xf940000000000000, when
3234
3237
// PPCDoubleDoubleImpl is gone.
3235
3238
// (DBL_MAX - 1 << (1023 - 105)) + (1 << (1023 - 53) + 0) = DBL_MAX +
3236
3239
// 1.11111... << (1023 - 52)
3237
- { 0x7fefffffffffffffull , 0xf950000000000000ull , 0x7c90000000000000ull , 0 ,
3238
- 0x7fefffffffffffffull , 0x7c8ffffffffffffeull ,
3239
- APFloat::rmNearestTiesToEven} ,
3240
+ std::make_tuple ( 0x7fefffffffffffffull , 0xf950000000000000ull ,
3241
+ 0x7c90000000000000ull , 0 , 0x7fefffffffffffffull ,
3242
+ 0x7c8ffffffffffffeull , APFloat::rmNearestTiesToEven) ,
3240
3243
// TODO: change 0xf950000000000000 to 0xf940000000000000, when
3241
3244
// PPCDoubleDoubleImpl is gone.
3242
3245
// (1 << (1023 - 53) + 0) + (DBL_MAX - 1 << (1023 - 105)) = DBL_MAX +
3243
3246
// 1.11111... << (1023 - 52)
3244
- { 0x7c90000000000000ull , 0 , 0x7fefffffffffffffull , 0xf950000000000000ull ,
3245
- 0x7fefffffffffffffull , 0x7c8ffffffffffffeull ,
3246
- APFloat::rmNearestTiesToEven} ,
3247
+ std::make_tuple ( 0x7c90000000000000ull , 0 , 0x7fefffffffffffffull ,
3248
+ 0xf950000000000000ull , 0x7fefffffffffffffull ,
3249
+ 0x7c8ffffffffffffeull , APFloat::rmNearestTiesToEven) ,
3247
3250
};
3248
3251
3249
3252
for (auto Tp : Data) {
@@ -3266,13 +3269,13 @@ TEST(APFloatTest, PPCDoubleDoubleSubtract) {
3266
3269
uint64_t , APFloat::roundingMode>;
3267
3270
DataType Data[] = {
3268
3271
// (1 + 0) - (-1e-105 + 0) = (1 + 1e-105)
3269
- { 0x3ff0000000000000ull , 0 , 0xb960000000000000ull , 0 ,
3270
- 0x3ff0000000000000ull , 0x3960000000000000ull ,
3271
- APFloat::rmNearestTiesToEven} ,
3272
+ std::make_tuple ( 0x3ff0000000000000ull , 0 , 0xb960000000000000ull , 0 ,
3273
+ 0x3ff0000000000000ull , 0x3960000000000000ull ,
3274
+ APFloat::rmNearestTiesToEven) ,
3272
3275
// (1 + 0) - (-1e-106 + 0) = (1 + 1e-106)
3273
- { 0x3ff0000000000000ull , 0 , 0xb950000000000000ull , 0 ,
3274
- 0x3ff0000000000000ull , 0x3950000000000000ull ,
3275
- APFloat::rmNearestTiesToEven} ,
3276
+ std::make_tuple ( 0x3ff0000000000000ull , 0 , 0xb950000000000000ull , 0 ,
3277
+ 0x3ff0000000000000ull , 0x3950000000000000ull ,
3278
+ APFloat::rmNearestTiesToEven) ,
3276
3279
};
3277
3280
3278
3281
for (auto Tp : Data) {
0 commit comments