This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/14047] New: __progmem__ attribute doesn't work
- From: "LAL at pro dot onet dot pl" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 6 Feb 2004 12:45:54 -0000
- Subject: [Bug c/14047] New: __progmem__ attribute doesn't work
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
It seems that this version of the GCC does ignore __progmem__ attribute.
Following code (but the same result for other vriable types) produces elf image
with rotor array placed in .data section
const uint8_t rotor[ANIMSTEPS] __attribute__((__progmem__)) = {
~(SEG_A)&SEG_MASK, ~(SEG_B)&SEG_MASK, ~(SEG_C)&SEG_MASK,
~(SEG_D)&SEG_MASK, ~(SEG_E)&SEG_MASK, ~(SEG_F)&SEG_MASK };
Where SEG_* are simple numeric defines.
Below a fragment of the map file:
.data 0x00800060 0x2c load address 0x00000604
0x00800060 PROVIDE (__data_start, .)
*(.data)
.data 0x00800060 0x2b display.o
0x00800078 rotor
(AVR)Binutils version 2.14
GCC version:
Reading specs from /usr/lib/gcc/avr/3.4.0/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-languages=c --disable-nls --target=avr
i686-redhat-linux-gnu
Thread model: single
gcc version 3.4.0 20040206 (prerelease)
--
Summary: __progmem__ attribute doesn't work
Product: gcc
Version: 3.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P1
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: LAL at pro dot onet dot pl
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: i686-redhat-linux-gnu
GCC host triplet: i686-redhat-linux-gnu
GCC target triplet: avr-unknown-elf
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14047