[Bug middle-end/43013] [4.5 regression] warning: 'saved_stack.1' is used uninitialized in this function with -fstack-check
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43013 Richard Guenther rguenth at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED Target Milestone|4.5.4 |4.6.0 --- Comment #9 from Richard Guenther rguenth at gcc dot gnu.org 2012-07-02 10:47:13 UTC --- Fixed in 4.6.0, the 4.5 branch is being closed.
[Bug middle-end/43013] [4.5 regression] warning: 'saved_stack.1' is used uninitialized in this function with -fstack-check
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43013 Eric Botcazou ebotcazou at gcc dot gnu.org changed: What|Removed |Added Summary|[4.5/4.6/4.7/4.8|[4.5 regression] warning: |regression] warning: |'saved_stack.1' is used |'saved_stack.1' is used |uninitialized in this |uninitialized in this |function with |function with |-fstack-check |-fstack-check | --- Comment #8 from Eric Botcazou ebotcazou at gcc dot gnu.org 2012-05-26 14:17:26 UTC --- Fixed on mainstream platforms since 4.6.
[Bug middle-end/43013] [4.5 Regression] warning: 'saved_stack.1' is used uninitialized in this function with -fstack-check
--- Comment #3 from ebotcazou at gcc dot gnu dot org 2010-02-11 12:23 --- I'll write a book about -fstack-check someday... -fstack-check was severely broken during the GCC3 - GCC4 transition and, despite years of patches posting and pinging, only GCC 4.5 has the beginning of a working implementation, so anything between 4.0 and 4.4 must be forgotten since totally broken. And, again despite posted patches, the 4.5 implementation only restores the old implementation available in the 3.x series, which doesn't work for this case: e...@atlantis:~/build/gcc/native32 ~/install/gcc-3_4-branch/bin/gcc -v Reading specs from /home/eric/install/gcc-3_4-branch/lib/gcc/x86_64-suse-linux/3.4.6/specs Configured with: /home/eric/svn/gcc-3_4-branch/configure x86_64-suse-linux --prefix=/home/eric/install/gcc-3_4-branch --enable-languages=c,c++,objc,f77,java,ada --enable-__cxa_atexit Thread model: posix gcc version 3.4.6 e...@atlantis:~/build/gcc/native32 ~/install/gcc-3_4-branch/bin/gcc -m32 -S pr43013.c e...@atlantis:~/build/gcc/native32 ~/install/gcc-3_4-branch/bin/gcc -m32 -S pr43013.c -fstack-check pr43013.c: In function `foo': pr43013.c:6: error: label 'lab' used before containing binding contour Granted, we now generate wrong code instead of erroring out, but it's again a fallout of the GCC3 - GCC4 breakage, not of my patches. This will be fixed once the improved implementation is merged. ETA is 4.6, for x86/x86-64 at least. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added Summary|[4.4/4.5 Regression]|[4.5 Regression] warning: |warning: 'saved_stack.1' is|'saved_stack.1' is used |used uninitialized in this |uninitialized in this |function with -fstack-check|function with -fstack-check http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43013
[Bug middle-end/43013] [4.5 Regression] warning: 'saved_stack.1' is used uninitialized in this function with -fstack-check
--- Comment #4 from rguenth at gcc dot gnu dot org 2010-02-11 16:55 --- P4 according to comment #3 -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43013
[Bug middle-end/43013] [4.5 Regression] warning: 'saved_stack.1' is used uninitialized in this function with -fstack-check
--- Comment #5 from pinskia at gcc dot gnu dot org 2010-02-11 18:28 --- Note this works correctly on targets that define STACK_CHECK_BUILTIN to be 1. This includes the spu target. The main reason is that the code goes through a different path. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added GCC target triplet||i?86-*-* x86_64-*-* ||powerpc*-*-* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43013
[Bug middle-end/43013] [4.5 Regression] warning: 'saved_stack.1' is used uninitialized in this function with -fstack-check
--- Comment #6 from ebotcazou at gcc dot gnu dot org 2010-02-11 18:55 --- Note this works correctly on targets that define STACK_CHECK_BUILTIN to be 1. This includes the spu target. The main reason is that the code goes through a different path. Indeed, only generic stack checking is affected, so every target except for the Alpha and SPU. The plan for 4.6 is to switch the other targets (or at least x86 and x86-64) to STACK_CHECK_STATIC_BUILTIN, which isn't affected either. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43013