http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43088
--- Comment #6 from Georg-Johann Lay 2011-07-02
21:07:50 UTC ---
Created attachment 24659
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24659
C source file
Compile with -mmcu=atmega168 -Os.
This file shows the flaw in function foo_3f that
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43088
Georg-Johann Lay changed:
What|Removed |Added
Keywords||missed-optimization
CC
--- Comment #4 from eric dot weddington at atmel dot com 2010-09-20 12:58
---
(In reply to comment #3)
>
> It exits for the reported version (4.4.3) and as well as for trunk/4.6.
>
Abnikant, could you also post the patch that fixes this problem? Thanks.
--
eric dot weddington at
--- Comment #3 from abnikant dot singh at atmel dot com 2010-09-20 04:24
---
(In reply to comment #2)
> (In reply to comment #1)
> > This bug is confirmed. andhi3/andsi3 causing this problem. conditional
> > checks
> > in andhi3 and andsi3 need to compare with zero instead of 0xff [etc
--- Comment #2 from eric dot weddington at atmel dot com 2010-09-20 02:30
---
(In reply to comment #1)
> This bug is confirmed. andhi3/andsi3 causing this problem. conditional checks
> in andhi3 and andsi3 need to compare with zero instead of 0xff [etc].
> i.e. in andhi3 we need to rep
--- Comment #1 from abnikant dot singh at atmel dot com 2010-09-13 05:58
---
This bug is confirmed. andhi3/andsi3 causing this problem. conditional checks
in andhi3 and andsi3 need to compare with zero instead of 0xff [etc].
i.e. in andhi3 we need to replace
(mask & 0x00ff) != 0xff by