[Bug target/43746] -fmerge-constants and -fmerge-all-constants don't work at AVR target
gjl at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Sep 12 10:17:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43746
--- Comment #7 from Georg-Johann Lay <gjl at gcc dot gnu.org> 2011-09-12 10:06:52 UTC ---
Author: gjl
Date: Mon Sep 12 10:06:46 2011
New Revision: 178779
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=178779
Log:
gcc/
PR target/43746
* config/avr/avr.c (AVR_SECTION_PROGMEM): New Define.
(progmem_section): New Variable.
(avr_asm_init_sections): Initialize it.
(TARGET_ASM_SELECT_SECTION): Define to...
(avr_asm_select_section): ... this new Function.
(avr_replace_prefix): New Function.
(avr_asm_function_rodata_section): Use it.
(avr_insert_attributes): Don't add section attribute for PROGMEM.
(avr_section_type_flags): Use avr_progmem_p instead of section
name to detect if object is in PROGMEM.
(avr_asm_named_section): Set section name prefix for objects in
PROGMEM.
testsuite/
PR target/43746
* testsuite/gcc.target/avr/torture/avr-torture.exp
(AVR_TORTURE_OPTIONS): Add test cases "-O2 -fdata-sections" and
"-O2 -fmerge-all-constants".
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/avr/avr.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.target/avr/torture/avr-torture.exp
More information about the Gcc-bugs
mailing list