clang 3.2 RC2 miscompiles libgcc?

David Chisnall theraven at freebsd.org
Tue Jan 8 08:08:21 UTC 2013


On 7 Jan 2013, at 23:21, Dimitry Andric wrote:

> 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.

Do you mean that some registers were clobbered by a prior call?  __builtin_eh_return() doesn't return, so whether it clobbers anything or not isn't something that should matter.  The preceding call is __builtin_frob_return_addr, which seems to be a no-op, so it shouldn't clobber any registers either...

David


More information about the freebsd-current mailing list