Am 12/05/2013 04:09 PM, schrieb Richard Biener:
On Thu, Dec 5, 2013 at 3:53 PM, Georg-Johann Lay wrote:
This is a fix of a wrong warning for a bas ISR name. The assumption was
that if DECL_ASSEMBLER_NAME is set, it would always starts with a *.
This is not the case for LTO compiler where the assembler name is the plain
name of the function (except an assembler name is set).
That sounds odd to me. Does the bug reproduce with -fwhole-program?
Or if the interrupt handler is static?
Richard.
Yes, with -fwhole-program the issue persists (except -flto is removed).
Same with a static function, both with and without externally_visible. Because
externally_visible conflicts static, I also tried without externally_visible,
but with no avail.
Johann
Thus, do a more restrictive test if the first character of the function name
has to be skipped.
Ok to commit?
Johann
PR target/59396
* config/avr/avr.c (avr_set_current_function): If the first char
of the function name is skipped, make sure it is actually '*'.