[Bug target/35013] Incomplete check in RTL for "pm()" annotation
-- eric dot weddington at atmel dot com changed: What|Removed |Added Target Milestone|--- |4.5.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35013
[Bug target/35013] Incomplete check in RTL for "pm()" annotation
--- Comment #3 from hutchinsonandy at gcc dot gnu dot org 2009-12-24 19:58 --- Fixed 4.5 -- hutchinsonandy at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35013
[Bug target/35013] Incomplete check in RTL for "pm()" annotation
--- Comment #2 from hutchinsonandy at gcc dot gnu dot org 2009-12-24 19:54 --- Subject: Bug 35013 Author: hutchinsonandy Date: Thu Dec 24 19:53:57 2009 New Revision: 155459 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=155459 Log: 2009-12-24 Andy Hutchinson PR target/35013, 27192 * config/avr/avr.c (print_operand_address): Print correct program memory address. Add warning for large device offset addresses. (avr_assemble_integer): Ditto. (print_operand): Add warnings for incorrect addressing. (out_movqi_r_mr): Tag assembler with new address codes. (out_movhi_r_mr): Ditto. (out_movsi_r_mr): Ditto. (out_movqi_mr_r): Ditto. (out_movhi_mr_r): Ditto. (out_movsi_mr_r): Ditto. * config/avr/predicates.md (text_segment_operand): New predicate. * config/avr/avr.md (jump): Tag assembler with new address codes. (call_insn): Ditto. (call_value_insn): Ditto. (*tablejump_lib): Ditto. (*cbi): Ditto. (*sbi): Ditto. (indirect_jump): New define_expand. (jcindirect_jump): New pattern for constant expression jump. (njcindirect_jump): Renamed old indirect_jump. Modified: trunk/gcc/ChangeLog trunk/gcc/config/avr/avr.c trunk/gcc/config/avr/avr.md trunk/gcc/config/avr/predicates.md -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35013
[Bug target/35013] Incomplete check in RTL for "pm()" annotation
-- eric dot weddington at atmel dot com changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-04-03 22:28:59 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35013
[Bug target/35013] Incomplete check in RTL for "pm()" annotation
--- Comment #1 from hutchinsonandy at aim dot com 2008-02-16 22:06 --- Created an attachment (id=15169) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15169&action=view) Patch The attached patch allows function address expressions of the form address+k to be correctly recognized as program memory addresses and thus force use of pm() assembler syntax. This has not been extensively tested but assembler appears to be correct for this bugs testcase and a similar issue found in: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27192 Note, odd addresses will be accepted by C and only cause linker warning. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35013