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]

Re: Patches for HP-UX support on IA64


On Thu, Jan 11, 2001 at 01:21:31PM -0500, Richard Kenner wrote:
>     > ! #ifdef HAVE_extend_ptr
>     > !         return CODE_FOR_extend_ptr;
>     > ! #else
>     > ! 	return extendtab[(int) to_mode][(int) from_mode]...
>     > ! #endif
[...]
> That's not a constructive comment and I don't undertsand why you feel that
> way.  For the record, don't "blame" Steve for that code: it was my idea
> and I still feel it's the best way.  What, precisely, is wrong with that
> code?  It seemed to work fine for me when I experimented with it.

can_extend_p is used for _all_ integer conversions.  You've just
ifdef'ed it such that it returns the same code all the time without
looking at either the modes or the signedness.

> No, not at all.  Pmode is the *hardware* addressing mode.  At the hardware
> level, all 64 bits are meaningful.  So it has to be DImode.

Eh.  I suppose.  I fear, however, that the compiler will try to
get overly smart with ptr + longlong arithmetic.  Using PDImode
seemed the easiest way to ensure that it doesn't.

> The only peculiar thing about this port is the way that 32-bit user-level
> addresses are translated to 64-bit hardware addresses.  So *that's* the
> only piece that should be different, in my opinion.

Perhaps replacing POINTERS_EXTEND_UNSIGNED with another macro that
allows the backend to do whatever it likes is the best way.



r~

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