[Bug c/17384] New: internal compiler error: segmentation fault
pluto at pld-linux dot org
gcc-bugzilla@gcc.gnu.org
Thu Sep 9 21:03:00 GMT 2004
# testcase #
typedef struct __attribute__((mode(SI))) {
unsigned INT0 :1,
RES0 :1,
:6,
INT1 :1,
RES1 :1,
:6,
:16;
} MCR;
# arm-pld-linux-gcc bitfields.c -c
bitfields.c:9: internal compiler error: Segmentation fault
ps). /bitfields-related/
Is there a possibility to turn off the unaligned access
(via LDRB(H)/STRB(H)) to specified bitfields?
Many of registers mapped into ARM7's address space don't
work correctly with such kind of access. The problem
is that gcc will generate 8/16/32 bits access for bit field
access depending on the width of the bit field. This is allowed
for memory based operations if the memeory accepts 8/16/32
bit transfers (most configurations do), but deadly in case
of I/O registers that can only be written 32 bits at a time.
Do You plan to introduce something like
__attribute__((only_full_word_access)) ?
--
Summary: internal compiler error: segmentation fault
Product: gcc
Version: 3.4.2
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pluto at pld-linux dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: pentium3-pld-linux
GCC host triplet: pentium3-pld-linux
GCC target triplet: arm-pld-linux
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17384
More information about the Gcc-bugs
mailing list