[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #18 from Martin Liška --- (In reply to Martin Liška from comment #16) > (In reply to Jakub Jelinek from comment #14) > > (In reply to Jason Merrill from comment #4) > > > Actually, I guess checking for this is more of a fit for an uni

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #17 from Martin Liška --- (In reply to Jakub Jelinek from comment #15) > (In reply to Jan Hubicka from comment #13) > > Author: hubicka > > Date: Wed Jan 13 23:47:45 2016 > > New Revision: 232356 > > > > URL: https://gcc.gnu.org/view

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #16 from Martin Liška --- (In reply to Jakub Jelinek from comment #14) > (In reply to Jason Merrill from comment #4) > > Actually, I guess checking for this is more of a fit for an uninitialized > > read detector such as MemorySanitiz

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #15 from Jakub Jelinek --- (In reply to Jan Hubicka from comment #13) > Author: hubicka > Date: Wed Jan 13 23:47:45 2016 > New Revision: 232356 > > URL: https://gcc.gnu.org/viewcvs?rev=232356&root=gcc&view=rev > Log: > > PR ip

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #14

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-13 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #13 from Jan Hubicka --- Author: hubicka Date: Wed Jan 13 23:47:45 2016 New Revision: 232356 URL: https://gcc.gnu.org/viewcvs?rev=232356&root=gcc&view=rev Log: PR ipa/66487 * ipa-polymorphic-call.c (inlined_polymorph

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-12 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 Jan Hubicka changed: What|Removed |Added CC||hubicka at gcc dot gnu.org --- Comment #12

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-12 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #11 from Martin Liška --- Created attachment 37318 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37318&action=edit pre-processed source file

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-12 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #10 from Martin Liška --- _ZL33nsSafeFileOutputStreamConstructorP11nsISupportsRK4nsIDPPv.part.50 (const struct nsIID & aIID, void * * aResult) { nsresult rv; struct nsSafeFileOutputStream * inst; void * D.4108055; struct nsISu

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-12 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #9 from Martin Liška --- release_ssa dump of the object file: ;; Function nsSafeFileOutputStreamConstructor(nsISupports*, nsID const&, void**) (_ZL33nsSafeFileOutputStreamConstructorP11nsISupportsRK4nsIDPPv, funcdef_no=17674, decl_ui

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-12 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #8 from Martin Liška --- The transformation is applied here: (gdb) p *current_pass $2 = { = {type = IPA_PASS, name = 0x1615fdd "pure-const", optinfo_flags = 0, tv_id = TV_IPA_PURE_CONST, properties_required = 0, properties_provided

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-12 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #7 from Martin Liška --- So the problematic transformation is: devirtualizing call in _ZL33nsSafeFileOutputStreamConstructorP11nsISupportsRK4nsIDPPv.part.50/986945 to __builtin_unreachable/39579 _ZL33nsSafeFileOutputStreamConstruct

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-12 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #6 from Martin Liška --- (In reply to Marek Polacek from comment #5) > Martin, is this still an issue or we can close this? Still issue, currently bisecting debugging counter for devirt, that is responsible for the SEGFAULT. I will

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2016-01-12 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 Marek Polacek changed: What|Removed |Added CC||mpolacek at gcc dot gnu.org --- Comment

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2015-06-11 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #4 from Jason Merrill --- Actually, I guess checking for this is more of a fit for an uninitialized read detector such as MemorySanitizer or Valgrind memcheck.

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2015-06-11 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #3 from Martin Liška --- (In reply to Jason Merrill from comment #1) > Compiling with -fno-lifetime-dse should make it work again. > -fsanitize=undefined doesn't currently catch this issue (relying on the > value of storage persistin

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2015-06-11 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #2 from Martin Liška --- Back trace: #0 0x in () #1 0x74a5c337 in nsComponentManagerImpl::CreateInstanceByContractID(char const*, nsISupports*, nsID const&, void**) [clone .part.32] [clone .constprop.53402]

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2015-06-10 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 --- Comment #1 from Jason Merrill --- Compiling with -fno-lifetime-dse should make it work again. -fsanitize=undefined doesn't currently catch this issue (relying on the value of storage persisting into the lifetime of an object created there).

[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled

2015-06-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487 Richard Biener changed: What|Removed |Added Target Milestone|--- |6.0