Исправление единственное и касается только GCC 4.2.x
и модуля fbmon
Linus Torvalds [Wed, 22 Jul 2009 15:49:22 +0000]
fbmon: work around compiler bug in gcc-4.2.4
commit 3730793d457fed79a6d49bae72996d458c8e4f2d upstream.
There's some odd bug in gcc-4.2 where it miscompiles a simple loop whent
he loop counter is of type 'unsigned char' and it should count to 128.
The compiler will incorrectly decide that a trivial loop like this:
unsigned char i, ...
for (i = 0; i < 128; i++) {
..
is endless, and will compile it to a single instruction that just
branches to itself.
This was triggered by the addition of '-fno-strict-overflow', and we
could play games with compiler versions and go back to '-fwrapv'
instead, but the trivial way to avoid it is to just make the loop
induction variable be an 'int' instead.
Форум —
Talks












