https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61509
Bug ID: 61509 Summary: GCC miscompilation on ARM during RTL optimization when compiled with -O3 Product: gcc Version: 4.6.3 Status: UNCONFIRMED Severity: major Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: quentusrex at gmail dot com C code: if(strcasecmp(var,"a")) else if(strcasecmp(var, "b") the second call to strcasecmp is being optimized out, and the control statement is effectively being treated as an if() else statement. More detailed write up here: http://quentusrex.com/freeswitch-raspberrypi-gcc-compiler-bug.html Debug files located here: https://github.com/quentusrex/FS-6495/tree/master/gcc_debug_orig The second call to strcasecmp is being removed in pass #200 during a DCE loop.