This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]