https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96173
Bug ID: 96173 Summary: double to _Decimal64 or _Decimal128 conversion with BID generates 3 MB of code Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: vincent-gcc at vinc17 dot net Target Milestone: --- Consider the following code: int main (void) { volatile double x = 0.0; volatile _Decimal128 i = x; return i != 0; } On x86_64: zira:~> gcc-snapshot -O2 tst.c -o tst zira:~> ll --human-readable tst -rwxr-xr-x 1 vinc17 vinc17 3.3M 2020-07-12 01:44:05 tst* With _Decimal64 instead of _Decimal128, tst is a bit smaller: 2.9M Tested with gcc (Debian 20200616-1) 11.0.0 20200616 (experimental) [master revision beaf12b49ae:aed76232726:b70eeb248efe2b3e9bdb5e26b490e3d8aa07022d]