From: Richard Kenner Date: Mon, 4 Mar 1996 13:57:43 +0000 (-0500) Subject: (significand_size): Don't test the modes, but their sizes. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=de3a68a106506d13e4429f868c3af140a022c6a3;p=gcc.git (significand_size): Don't test the modes, but their sizes. From-SVN: r11415 --- diff --git a/gcc/real.c b/gcc/real.c index 082cfd03af1..ec443706aa3 100644 --- a/gcc/real.c +++ b/gcc/real.c @@ -1,6 +1,6 @@ /* real.c - implementation of REAL_ARITHMETIC, REAL_VALUE_ATOF, and support for XFmode IEEE extended real floating point arithmetic. - Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc. + Copyright (C) 1993, 1994, 1995, 1996 Free Software Foundation, Inc. Contributed by Stephen L. Moshier (moshier@world.std.com). This file is part of GNU CC. @@ -6091,12 +6091,15 @@ significand_size (mode) enum machine_mode mode; { -switch (mode) +/* Don't test the modes, but their sizes, lest this + code won't work for BITS_PER_UNIT != 8 . */ + +switch (GET_MODE_BITSIZE (mode)) { - case SFmode: + case 32: return 24; - case DFmode: + case 64: #if TARGET_FLOAT_FORMAT == IEEE_FLOAT_FORMAT return 53; #else @@ -6111,9 +6114,9 @@ switch (mode) #endif #endif - case XFmode: + case 96: return 64; - case TFmode: + case 128: return 113; default: