dot gnu dot org
ReportedBy: nick dot spence at freescale dot com
GCC build triplet: gcc version 4.1.2 20070626 (Red Hat 4.1.2-13)
GCC host triplet: i386-redhat-linux
GCC target triplet: i386-redhat-linux
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36232
--- Comment #1 from nick dot spence at freescale dot com 2008-05-13 19:51
---
Created an attachment (id=15636)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15636&action=view)
Example code source file
Compile with 'gcc -Os test.c' or 'gcc -O2 test.c'
--- Comment #2 from nick dot spence at freescale dot com 2008-05-13 19:52
---
Created an attachment (id=15637)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15637&action=view)
Compiler intermediate file
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36232
--- Comment #3 from nick dot spence at freescale dot com 2008-05-13 19:56
---
The code has two loops, which compile correctly when no optimization, or
-O1 are used, but the second loop becomes infinite if -Os or -O2 is used.
.file "test.c"
--- Comment #6 from nick dot spence at freescale dot com 2008-05-13 20:41
---
1) Since most bootloaders are written in C your view is very interesting but
probably not shared by everyone else working with embedded software.
2) If the compiler now treats this as an undefined condition