Launchpad has imported 9 comments from the remote bug at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=39175.
If you reply to an imported comment from within Launchpad, your comment will be sent to the remote bug automatically. Read more about Launchpad's inter-bugtracker facilities at https://help.launchpad.net/InterBugTracking. ------------------------------------------------------------------------ On 2009-02-13T09:21:55+00:00 Jakub-gcc wrote: /* { dg-options "-O2 -m32 -fvisibility=hidden -msecure-plt -fpic" } */ __attribute__((noinline)) int foo (int x) { return x; } int foo (int x); int bar (int x) { return foo (x); } ICEs on the if (DEFAULT_ABI == ABI_V4 && flag_pic) { gcc_assert (!TARGET_SECURE_PLT); return \"b %z1@plt\"; } else return \"b %z1\"; assertion in sibcall_value_nonlocal_sysv. Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/0 ------------------------------------------------------------------------ On 2009-02-13T10:36:19+00:00 Jakub-gcc wrote: The problem is in the redundant prototype after function. First the foo FUNCTION_DECL is created, afterwards finish_function calls c_determine_visibility on it which changes its visibility from default to hidden. After this make_decl_rtl is called, determines the function binds locally and sets SYMBOL_FLAG_LOCAL|SYMBOL_FLAG_FUNCTION. Then merge_decls is called, which in turn clears visibility (sets it back to default) and calls make_decl_rtl to update the flags. At this point targetm.binds_local_p returns false, as it at that point has default visibility, so changes DECL_RTL's flags to SYMBOL_FLAG_FUNCTION alone. Then finish_decl calls c_determine_visibility again and sets it back to hidden visibility. But nothing afterwards calls make_decl_rtl again to update the symbol flags again. To fix this, IMHO either c_determine_visibility and C++ determine_visibility need to if (((TREE_CODE (decl) == VAR_DECL && TREE_STATIC (decl)) || TREE_CODE (decl) == FUNCTION_DECL) && DECL_RTL_SET_P (decl)) make_decl_rtl (decl); if it changed the visibility, or merge_decls/duplicate_decls would need to determine visibility. I'll try the former. Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/1 ------------------------------------------------------------------------ On 2009-02-13T11:33:09+00:00 Jakub-gcc wrote: Created attachment 17292 gcc44-pr39175.patch Patch I'm going to bootstrap/regtest. Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/2 ------------------------------------------------------------------------ On 2009-02-13T12:44:46+00:00 Rguenth wrote: This also ICEs on the 4.3 branch. Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/3 ------------------------------------------------------------------------ On 2009-02-19T21:15:25+00:00 Jakub-gcc wrote: Subject: Bug 39175 Author: jakub Date: Thu Feb 19 21:15:12 2009 New Revision: 144305 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=144305 Log: PR target/39175 * c-common.c (c_determine_visibility): If visibility changed and DECL_RTL has been already set, call make_decl_rtl to update symbol flags. * decl2.c (determine_visibility): If visibility changed and DECL_RTL has been already set, call make_decl_rtl to update symbol flags. * gcc.dg/visibility-20.c: New test. * g++.dg/ext/visibility/visibility-11.C: New test. Added: trunk/gcc/testsuite/g++.dg/ext/visibility/visibility-11.C trunk/gcc/testsuite/gcc.dg/visibility-20.c Modified: trunk/gcc/ChangeLog trunk/gcc/c-common.c trunk/gcc/cp/ChangeLog trunk/gcc/cp/decl2.c trunk/gcc/testsuite/ChangeLog Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/4 ------------------------------------------------------------------------ On 2009-02-19T21:16:48+00:00 Jakub-gcc wrote: Fixed on the trunk so far. Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/5 ------------------------------------------------------------------------ On 2009-03-15T09:47:34+00:00 Matthias Klose wrote: *** Bug 39461 has been marked as a duplicate of this bug. *** Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/13 ------------------------------------------------------------------------ On 2009-03-25T22:05:21+00:00 Bje-0 wrote: Subject: Bug 39175 Author: bje Date: Wed Mar 25 22:05:08 2009 New Revision: 145076 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=145076 Log: Backport from mainline: 2009-02-19 Jakub Jelinek <ja...@redhat.com> PR target/39175 * c-common.c (c_determine_visibility): If visibility changed and DECL_RTL has been already set, call make_decl_rtl to update symbol flags. cp/ * decl2.c (determine_visibility): If visibility changed and DECL_RTL has been already set, call make_decl_rtl to update symbol flags. testsuite/ * gcc.dg/visibility-20.c: New test. * g++.dg/ext/visibility/visibility-11.C: New test. Added: branches/gcc-4_3-branch/gcc/testsuite/g++.dg/ext/visibility/visibility-11.C branches/gcc-4_3-branch/gcc/testsuite/gcc.dg/visibility-20.c Modified: branches/gcc-4_3-branch/gcc/ChangeLog branches/gcc-4_3-branch/gcc/c-common.c branches/gcc-4_3-branch/gcc/cp/ChangeLog branches/gcc-4_3-branch/gcc/cp/decl2.c branches/gcc-4_3-branch/gcc/testsuite/ChangeLog Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/15 ------------------------------------------------------------------------ On 2009-03-25T22:06:49+00:00 Bje-0 wrote: Now fixed on the 4.3 branch and on mainline. Reply at: https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/342335/comments/16 -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to qt4-x11 in Ubuntu. https://bugs.launchpad.net/bugs/342335 Title: [PR39461] ICE compiling qt4-x11 on powerpc Status in gcc: Fix Released Status in gcc-4.3 package in Ubuntu: Fix Released Status in qt4-x11 package in Ubuntu: Fix Released Bug description: Binary package hint: gcc-4.3 g++ ICEs when building qt4-x11 on powerpc. The complete build log is here: http://launchpadlibrarian.net/23399665/buildlog_ubuntu-jaunty- powerpc.qt4-x11_4.5.0-0ubuntu1_FAILEDTOBUILD.txt.gz I've reduced the ICE to a reasonably minimal test case (although there were still two #includes that would have taken rather more effort to pare down), and preprocessed source is attached to this bug. $ gcc -v Using built-in specs. Target: powerpc-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.3.3-5ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --disable-softfloat --enable-secureplt --enable-targets=powerpc-linux,powerpc64-linux --with-cpu=default32 --with-long-double-128 --enable-checking=release --build=powerpc-linux-gnu --host=powerpc-linux-gnu --target=powerpc-linux-gnu Thread model: posix gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu1) Command line that triggers the ICE with minimal test case: $ g++ -c -g -pthread -O2 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -fPIC -I. -I../../include -I../../include/QtCore -o .obj/release-shared/qstring.o -save-temps tools/qstring-minimal.cpp tools/qstring-minimal.cpp: In function 'int qFindString(const QChar*, int, int, const QChar*, int, Qt::CaseSensitivity)': tools/qstring-minimal.cpp:56: internal compiler error: in output_460, at config/rs6000/rs6000.md:11495 Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-4.3/README.Bugs> for instructions. To manage notifications about this bug go to: https://bugs.launchpad.net/gcc/+bug/342335/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp