Help! DW function pointer encoding for PA
Richard Henderson
rth@redhat.com
Thu Feb 21 00:52:00 GMT 2002
On Thu, Feb 21, 2002 at 02:34:16AM -0500, John David Anglin wrote:
> When I munge the address in ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX to make it
> look like a plabel, then the FDE search fails.
] @findex ASM_PREFERRED_EH_DATA_FORMAT
] @item ASM_PREFERRED_EH_DATA_FORMAT(@var{code}, @var{global})
] This macro chooses the encoding of pointers embedded in the exception
] handling sections. If at all possible, this should be defined such
] that the exception handling section will not require dynamic relocations,
] and so may be read-only.
]
] @var{code} is 0 for data, 1 for code labels, 2 for function pointers.
] @var{global} is true if the symbol may be affected by dynamic relocations.
] The macro should return a combination of the @code{DW_EH_PE_*} defines
] as found in @file{dwarf2.h}.
Note CODE==1 vs CODE==2. You should be able to distinguish your
two cases based on this. If absolutely necessary, pass type information
from ASM_PREFERRED_EH_DATA_FORMAT to ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX
via bits >= 0x100, ie bits that won't appear in the output file.
Note that ia64 has the same sort of function descriptor vs FDE
code label sorts of issues.
r~
More information about the Gcc
mailing list