Date: Tue, 8 Jan 2013 09:58:27 +0100 From: Stefan Farfeleder <stefanf@FreeBSD.org> To: Dimitry Andric <dim@FreeBSD.org> Cc: freebsd-current@freebsd.org, David Chisnall <theraven@freebsd.org>, Nathan Whitehorn <nwhitehorn@freebsd.org> Subject: Re: clang 3.2 RC2 miscompiles libgcc? Message-ID: <20130108085826.GA1422@mole.fafoe.narf.at> In-Reply-To: <50EB5868.2050509@FreeBSD.org> References: <20121227150724.GA1431@mole.fafoe.narf.at> <50DC65F5.6060004@freebsd.org> <50E0BD66.4070609@FreeBSD.org> <20130102135950.GA1464@mole.fafoe.narf.at> <20130104154940.GD1430@mole.fafoe.narf.at> <20130106141708.GA1418@mole.fafoe.narf.at> <50E9916F.3040500@FreeBSD.org> <20130106160331.GB1418@mole.fafoe.narf.at> <50EB5868.2050509@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jan 08, 2013 at 12:21:12AM +0100, Dimitry Andric wrote: > On 2013-01-06 17:03, Stefan Farfeleder wrote: > > On Sun, Jan 06, 2013 at 03:59:59PM +0100, Dimitry Andric wrote: > ... > > The bug also affects ports software, e.g., I also experienced strange > > rtorrent segfaults that are now gone. > > Can you please try the attached patch, which is a very horrid, atrocious > hack, and will only work for amd64. Then rebuild libgcc with clang, and > please try if this fixes at least some of the crashes... > > This is at least the direction I'm looking at. It seems that in some > cases with __builtin_eh_return(), llvm does not see that registers can > be clobbered, and it doesn't save and restore them. > > After a lot of splitting up of unwind-dw2.c, I arrived at _Unwind_Resume > which when compiled by clang caused the crashes, but when compiled by > gcc ran OK. Hi Dimitry, your patch seems to work just fine. No crashes whatsoever so far. Thank you. Stefan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130108085826.GA1422>