17
17
#include " src/__support/FPUtil/FPBits.h"
18
18
#include " src/__support/ctype_utils.h"
19
19
#include " src/__support/str_to_integer.h"
20
+ #include " src/stdio/printf_core/core_structs.h"
20
21
21
22
namespace __llvm_libc {
22
23
namespace printf_core {
@@ -246,7 +247,7 @@ size_t Parser::parse_index(size_t *local_pos) {
246
247
return 0 ;
247
248
}
248
249
249
- Parser:: TypeDesc Parser::get_type_desc (size_t index) {
250
+ TypeDesc Parser::get_type_desc (size_t index) {
250
251
// index mode is assumed, and the indicies start at 1, so an index
251
252
// of 0 is invalid.
252
253
size_t local_pos = 0 ;
@@ -266,9 +267,9 @@ Parser::TypeDesc Parser::get_type_desc(size_t index) {
266
267
++local_pos;
267
268
268
269
size_t width_index = parse_index (&local_pos);
269
- set_type_desc (width_index, get_type_desc <int >());
270
+ set_type_desc (width_index, type_desc_from_type <int >());
270
271
if (width_index == index)
271
- return get_type_desc <int >();
272
+ return type_desc_from_type <int >();
272
273
273
274
} else if (internal::isdigit (str[local_pos])) {
274
275
while (internal::isdigit (str[local_pos]))
@@ -282,9 +283,9 @@ Parser::TypeDesc Parser::get_type_desc(size_t index) {
282
283
++local_pos;
283
284
284
285
size_t precision_index = parse_index (&local_pos);
285
- set_type_desc (precision_index, get_type_desc <int >());
286
+ set_type_desc (precision_index, type_desc_from_type <int >());
286
287
if (precision_index == index)
287
- return get_type_desc <int >();
288
+ return type_desc_from_type <int >();
288
289
289
290
} else if (internal::isdigit (str[local_pos])) {
290
291
while (internal::isdigit (str[local_pos]))
@@ -303,13 +304,13 @@ Parser::TypeDesc Parser::get_type_desc(size_t index) {
303
304
continue ;
304
305
}
305
306
306
- TypeDesc conv_size = get_type_desc <void >();
307
+ TypeDesc conv_size = type_desc_from_type <void >();
307
308
switch (str[local_pos]) {
308
309
case (' %' ):
309
- conv_size = get_type_desc <void >();
310
+ conv_size = type_desc_from_type <void >();
310
311
break ;
311
312
case (' c' ):
312
- conv_size = get_type_desc <int >();
313
+ conv_size = type_desc_from_type <int >();
313
314
break ;
314
315
case (' d' ):
315
316
case (' i' ):
@@ -321,24 +322,24 @@ Parser::TypeDesc Parser::get_type_desc(size_t index) {
321
322
case (LengthModifier::hh):
322
323
case (LengthModifier::h):
323
324
case (LengthModifier::none):
324
- conv_size = get_type_desc <int >();
325
+ conv_size = type_desc_from_type <int >();
325
326
break ;
326
327
case (LengthModifier::l):
327
- conv_size = get_type_desc <long >();
328
+ conv_size = type_desc_from_type <long >();
328
329
break ;
329
330
case (LengthModifier::ll):
330
331
case (LengthModifier::L): // This isn't in the standard, but is in other
331
332
// libc implementations.
332
- conv_size = get_type_desc <long long >();
333
+ conv_size = type_desc_from_type <long long >();
333
334
break ;
334
335
case (LengthModifier::j):
335
- conv_size = get_type_desc <intmax_t >();
336
+ conv_size = type_desc_from_type <intmax_t >();
336
337
break ;
337
338
case (LengthModifier::z):
338
- conv_size = get_type_desc <size_t >();
339
+ conv_size = type_desc_from_type <size_t >();
339
340
break ;
340
341
case (LengthModifier::t):
341
- conv_size = get_type_desc <ptrdiff_t >();
342
+ conv_size = type_desc_from_type <ptrdiff_t >();
342
343
break ;
343
344
}
344
345
break ;
@@ -352,20 +353,20 @@ Parser::TypeDesc Parser::get_type_desc(size_t index) {
352
353
case (' g' ):
353
354
case (' G' ):
354
355
if (lm != LengthModifier::L)
355
- conv_size = get_type_desc <double >();
356
+ conv_size = type_desc_from_type <double >();
356
357
else
357
- conv_size = get_type_desc <long double >();
358
+ conv_size = type_desc_from_type <long double >();
358
359
break ;
359
360
#endif // LLVM_LIBC_PRINTF_DISABLE_FLOAT
360
361
#ifndef LLVM_LIBC_PRINTF_DISABLE_WRITE_INT
361
362
case (' n' ):
362
363
#endif // LLVM_LIBC_PRINTF_DISABLE_WRITE_INT
363
364
case (' p' ):
364
365
case (' s' ):
365
- conv_size = get_type_desc <void *>();
366
+ conv_size = type_desc_from_type <void *>();
366
367
break ;
367
368
default :
368
- conv_size = get_type_desc <int >();
369
+ conv_size = type_desc_from_type <int >();
369
370
break ;
370
371
}
371
372
@@ -381,7 +382,7 @@ Parser::TypeDesc Parser::get_type_desc(size_t index) {
381
382
382
383
// If there is no size for the requested index, then just guess that it's an
383
384
// int.
384
- return get_type_desc <int >();
385
+ return type_desc_from_type <int >();
385
386
}
386
387
387
388
void Parser::args_to_index (size_t index) {
@@ -391,26 +392,26 @@ void Parser::args_to_index(size_t index) {
391
392
}
392
393
393
394
while (args_index < index) {
394
- Parser:: TypeDesc cur_type_desc = get_type_desc <void >();
395
+ TypeDesc cur_type_desc = type_desc_from_type <void >();
395
396
if (args_index <= DESC_ARR_LEN)
396
397
cur_type_desc = desc_arr[args_index - 1 ];
397
398
398
- if (cur_type_desc == get_type_desc <void >())
399
+ if (cur_type_desc == type_desc_from_type <void >())
399
400
cur_type_desc = get_type_desc (args_index);
400
401
401
- if (cur_type_desc == get_type_desc <uint32_t >())
402
+ if (cur_type_desc == type_desc_from_type <uint32_t >())
402
403
args_cur.next_var <uint32_t >();
403
- else if (cur_type_desc == get_type_desc <uint64_t >())
404
+ else if (cur_type_desc == type_desc_from_type <uint64_t >())
404
405
args_cur.next_var <uint64_t >();
405
406
#ifndef LLVM_LIBC_PRINTF_DISABLE_FLOAT
406
407
// Floating point numbers are stored separately from the other arguments.
407
- else if (cur_type_desc == get_type_desc <double >())
408
+ else if (cur_type_desc == type_desc_from_type <double >())
408
409
args_cur.next_var <double >();
409
- else if (cur_type_desc == get_type_desc <long double >())
410
+ else if (cur_type_desc == type_desc_from_type <long double >())
410
411
args_cur.next_var <long double >();
411
412
#endif // LLVM_LIBC_PRINTF_DISABLE_FLOAT
412
413
// pointers may be stored separately from normal values.
413
- else if (cur_type_desc == get_type_desc <void *>())
414
+ else if (cur_type_desc == type_desc_from_type <void *>())
414
415
args_cur.next_var <void *>();
415
416
else
416
417
args_cur.next_var <uint32_t >();
0 commit comments