[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [avr-gcc-list] case statement broken in 4.1.2?
From: |
Juergen Weigert |
Subject: |
Re: [avr-gcc-list] case statement broken in 4.1.2? |
Date: |
Wed, 29 Nov 2006 19:07:21 +0100 |
> Am Dienstag, 28. November 2006 08:37 schrieb Henning Paul:
> I reproduced the behaviour (if/else works, but switch/case doesn't)
> with GCC 4.0.2, which _doesn't_ throw a warning.
>
> I'm sorry, obviously it isn't GCC's fault.
It may also be an old bug, lurking in our backend code for some time...
> Am Mittwoch, 29. November 2006 00:00 schrieb Eric Weddington:
> > Did you happen to have patches for 4.1.x for ATmega256x support in your
> > toolchain?
>
> Yes, I made a feature request at Novell's Bugzilla to include the patches
> from
> J?rg's FreeBSD CVS. So SuSE's J?rgen Weigert added these to the current
> development tree (called OpenSUSE Factory). This was the version I used
> first.
http://ftp.opensuse.org/pub/opensuse/distribution/SL-OSS-factory/inst-source/suse/
src/cross-avr-gcc-4.1.2_20061115-5.src.rpm
i586/cross-avr-gcc-4.1.2_20061115-5.i586.rpm
(or better choose a mirror from
http://en.opensuse.org/Mirrors_Development_Build)
> -mno-tablejump solved all these problems, the firmware is working perfectly,
> even with GCC 4.1.2.
>
> Strange, though. Shouldn't happen, should it?
-mno-tablejump effectivly does the same what the preprocessor switch in
Doper does: It converts the switch-cascade into a tree of if-statements.
To me this looks like we have an issue with our machine-description.
cheers,
Jw.
--
o \ Juergen Weigert paint it green! __/ _=======.=======_
<V> | address@hidden wide open suse_/ _---|____________\/
\ | 0911 74053-508 (tm)__/ (____/ /\
(/) | __________________________/ _/ \_ vim:set sw=2 wm=8