This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Ada LTO failures (2x)
On Wed, May 26, 2010 at 6:08 PM, Eric Botcazou <ebotcazou@adacore.com> wrote:
>> You could "fix" this by walking all functions and check if only
>> one real language personality routine remains and promote
>> the generic C personality uses to that. ?Of course you need then
>> to be able to identify the C personality which you can't (well,
>> you could by name).
>
> Can't we simply record the first personality routine encountered when reading
> in the GIMPLE IL and assign it to all FDEs that don't have one? ?That would
> at least solve the problem in the homogeneous case.
Hm, we could arrange dwarf2out.c:current_unit_personality to be
set to that of the first DECL_FUNCTION_PERSONALITY we
stream in and in expr.c:get_personality_function use that
for the eh_personality_any case. Sort of ugly as current_unit_personality
is not exported, but ...
For multi-language LTO it's probably still prefered to use the
C personality for eh_personality_any, so conditionalizing this
on !CFI assembler would be needed.
Richard.