This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH to c-commonc.c, preliminary for PR/3865 fix
Zack Weinberg <zack@codesourcery.com> writes:
| On Tue, Aug 27, 2002 at 11:21:31AM +0200, Gabriel Dos Reis wrote:
| >
| > As discussed in the thread starting at
| >
| > http://gcc.gnu.org/ml/gcc/2002-08/msg01391.html
| >
| > I'm about to check-in the following patch, a preliminary for fixing
| > numerical supports in the C++ runtime system (see for example
| > PR/3865).
|
| 1) It would be more efficient if you turned most of these into
| CPP-level builtin macros -- the values to define them with would
| have to be poked into the library at initialization time, but
| that could be a structure and a single function call.
I'm afraid I don't get what you mean here.
| 2) Why do you have both __TARGET_FLOAT_FORMAT__ and
| __TARGET_USES_VAX_*_FLOAT__?
The _FLOAT_FORMAT_ macros tells which format is being used. If it is a
VAXen then we need to know whether it is D- or G-format. Furthermore, on
some systems one has to choose between:
* D-format (VAX double precision)
* F-format (VAX single precision)
* G-format (VAX double precision)
* S-format (IEEE single precison)
* T-format (IEEE double precision)
Also those formats influence the rounding mode and alike.
| 3) Do we _really_ have targets where bit endianness != byte
| endianness? I realize they are distinguished at the tm.h level,
| but I suspect in practice this does not happen.
I didn't investigate that too far. However, I noticed that there are
codes that distinguish between them. So instead of taking the risk of
breaking codes in assuming that there weren't, I just took the
conservative road -- given also that we're in stage-3 and my primary
goal is to fix a PR, not to rearchitecture real.[ch] or all backends
(that can wait 3.4 I think).
| Same question
| about (integer) byte endianness and word endianness; there I know
| code exists that blindly assumes the two are the same.
Well, on VAX a 32-bit integer is stored blike 3-4-1-2 (or 2-1-4-3 I can't
recall exactly which). I don't know if that is what you're asking
for. If not, could you elaborate?
-- Gaby