[Bug target/53256] [avr] Attribute 'interrupt' shall override attribute 'signal'
gjl at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed May 9 16:40:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53256
--- Comment #1 from Georg-Johann Lay <gjl at gcc dot gnu.org> 2012-05-09 16:29:06 UTC ---
Author: gjl
Date: Wed May 9 16:28:53 2012
New Revision: 187342
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187342
Log:
PR target/53256
* config/avr/elf.h (ASM_DECLARE_FUNCTION_NAME): Remove.
* config/avr/avr-protos.h (avr_asm_declare_function_name): Remove.
* config/avr/avr.h (struct machine_function): Add attributes_checked_p.
* config/avr/avr.c (avr_asm_declare_function_name): Remove.
(expand_prologue): Move initialization of cfun->machine->is_naked,
is_interrupt, is_signal, is_OS_task, is_OS_main from here to...
(avr_set_current_function): ...this new static function.
(TARGET_SET_CURRENT_FUNCTION): New define.
(avr_function_ok_for_sibcall): Use cfun->machine->is_* instead of
checking attributes of current_function_decl.
(avr_regs_to_save): Ditto.
(signal_function_p): Rename to avr_signal_function_p.
(interrupt_function_p): Rename to avr_interrupt_function_p.
* doc/extend.texi (Function Attributes): Better explanation of
'interrupt' and 'signal' for AVR. Move 'ifunc' down to establish
alphabetical order.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/avr/avr-protos.h
trunk/gcc/config/avr/avr.c
trunk/gcc/config/avr/avr.h
trunk/gcc/config/avr/elf.h
trunk/gcc/doc/extend.texi
More information about the Gcc-bugs
mailing list