This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: clean up rtx constant pool
- From: Joern Rennecke <joern dot rennecke at superh dot com>
- To: rth at twiddle dot net (Richard Henderson)
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 3 Feb 2004 15:37:28 +0000 (GMT)
- Subject: Re: clean up rtx constant pool
This breaks sh64-elf. Some post-reload splitters change the mode of
operands with shallow_copy_rtx / PUT_MODE.
When that operands happens to be a symbol_ref with CONSTANT_POOL_ADDRESS_P
set, the flag is copied, but the new symbol_ref is not in the constant pool.
What is the port expected to do to change the mode to a constant pool
reference?
Is there a way to have multiple SYMBOL_REFS (with different modes)
correspond to the same constant pool entry, or
do I have to resort to something like (CONST (sign_extend (symbol_ref)))
and change a gazillion places to digest this construct?