This is the mail archive of the
mailing list for the GCC project.
Re: IA64 Pointer conversion question / convert code already wrong?
- From: Steve Ellcey <sje at cup dot hp dot com>
- To: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 25 Apr 2005 11:35:46 -0700 (PDT)
- Subject: Re: IA64 Pointer conversion question / convert code already wrong?
> Also, I think convert_memory_address ought to have a
> gcc_assert (GET_MODE (x) == to_mode);
> in the #ifndef case.
Interesting, I put this assertion in my code and I now cannot bootstrap
on HPPA. Looking at the HPPA builds (where POINTERS_EXTEND_UNSIGNED if
not defined) I see the assertion fail because I enter
convert_memory_address with to_mode set to SImode and x set to
'(const_int 0 [0x0])'.
The call to convert_memory_address is being made from memory_address
I am not sure if this is a bug, or if convert_memory_address should
allow this by doing nothing (current behaviour) or if
convert_memory_address should be changed so that it does the same
conversion on const_int values when POINTERS_EXTEND_UNSIGNED is
undefined as it does when POINTERS_EXTEND_UNSIGNED is defined.