This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: fix execute/20010518-2.c
- To: rth at redhat dot com (Richard Henderson)
- Subject: Re: fix execute/20010518-2.c
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Date: Tue, 21 Aug 2001 12:44:33 -0400 (EDT)
- Cc: gcc-patches at gcc dot gnu dot org
> On Mon, Aug 20, 2001 at 07:43:50PM -0400, John David Anglin wrote:
> > That looks like a problem based on my inspection of the HP assembler
> > manual. I'll bet unaligned symbol references would cause the som linker
> > difficulties as well.
>
> Then set ASM_PREFERRED_EH_DATA_FORMAT to DW_EH_PE_aligned.
This doesn't work as things stand. The problem is the alignment
argument is still 8 bits (ie., unaligned) even when the encoding
is DW_EH_PE_aligned.
It looks like there may be similar problems in the functions
dw2_asm_output_delta, dw2_asm_output_offset, dw2_asm_output_addr,
dw2_asm_output_addr_rtx and dw2_asm_output_encoded_addr_rtx
in dwarf2asm.c.
> Actually, I know SOM has all sorts of funky relocation types.
> Surely there's something in there so that you can get pc-relative
> or got-relative relocations, so that you don't need most of the
> runtime relocations at all.
I did a little more experimentation. It seems gas does not auto-align.
Thus, there is some hope that UNALIGNED_INT_ASM_OP and friends could
be defined when gas is used. However, this capability needs to be
checked for at runtime.
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)