File tree Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -348,17 +348,17 @@ static void print_decimal(struct print_param *param, int64_t value)
348
348
v .qword = v .qword / 10UL ;
349
349
}
350
350
351
+ nv .dwords .low = v .dwords .low ;
351
352
/* process 32 bit (or reduced 64 bit) value */
352
353
do {
353
354
/* determine digits from right to left. The compiler should be
354
355
* able to handle a division and multiplication by the constant
355
356
* 10.
356
357
*/
357
- nv .dwords .low = v .dwords .low / 10U ;
358
358
pos -- ;
359
- * pos = (v .dwords .low - ( 10U * nv . dwords . low ) ) + '0' ;
360
- v .dwords .low = nv .dwords .low ;
361
- } while (v .dwords .low != 0U );
359
+ * pos = (char )( nv .dwords .low % 10U ) + '0' ;
360
+ nv .dwords .low = nv .dwords .low / 10U ;
361
+ } while (nv .dwords .low != 0U );
362
362
363
363
/* assign parameter and apply width and precision */
364
364
param -> vars .value = pos ;
You can’t perform that action at this time.
0 commit comments