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]

Reply via email to