[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug gas/23570] New: AVR .noinit section defaults to PROGBITS used to be
From: |
rauter.gabriel at gmail dot com |
Subject: |
[Bug gas/23570] New: AVR .noinit section defaults to PROGBITS used to be NOBITS |
Date: |
Fri, 24 Aug 2018 16:16:35 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=23570
Bug ID: 23570
Summary: AVR .noinit section defaults to PROGBITS used to be
NOBITS
Product: binutils
Version: 2.31
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: gas
Assignee: unassigned at sourceware dot org
Reporter: rauter.gabriel at gmail dot com
Target Milestone: ---
This really isn't my area of expertise so some of those assumptions may be
wrong.
Since GCC 8.2 some section types are omitted and it is left for the assembler
to decide the specific type.
This is the commit that changed the behavior:
https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=259969
This results in the .noinit section found in binutils linker scripts for avr
getting the type PROGBITS rather then the type NOBITS it used have.
So in my case avrdude will fail to flash with an address 0x800293 out of range
error for the following variable in c code:
uint32_t reset_key __attribute__ ((section (".noinit")));
Injecting the section type is a possible workaround for now but i am not sure
if this is the right thing to do in this case:
uint32_t reset_key __attribute__ ((section (".noinit,\"aw\",@nobits;")));
If this is all misassumptions on my side i am sorry for the inconvenience.
--
You are receiving this mail because:
You are on the CC list for the bug.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Bug gas/23570] New: AVR .noinit section defaults to PROGBITS used to be NOBITS,
rauter.gabriel at gmail dot com <=