This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 27 Jan 2016 15:43:20 +0000
- Subject: [Bug c++/66487] [6 Regression] Firefox segfault with LTO enabled
- Auto-submitted: auto-generated
- References: <bug-66487-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66487
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(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 MemorySanitizer or Valgrind memcheck.
Well, AddressSanitizer should be able to do that too with some extra work, what
we need is know not just when the lifetime of a variable ends, but also when it
starts, and instrument those two, plus disable reusing variable stack slots
when instrumenting. In the function prologue we'd then mark the variables as
unavailable, not just their padding, and then when they get into scope (that is
the first clobber these days), we'd mark them enabled and when they get out of
scope (second clobber) mark them unavailable again. GCC7 material.