[cfe-dev] devirtualisation appears to crash clang on covariant functions on ARM
Rafael EspĂndola
rafael.espindola at gmail.com
Tue Oct 23 05:33:06 PDT 2012
> That sounds like quite an involved patch, since (if I understand things correctly) you'd have to do this during the ABI-fixing stage, which would require determining that the devirtualisation pass did devirtualise the call. As an intermediate step to avoid the crash and get the regression test completing, albeit failing, how about a patch to avoid devirtualising destructors on ARM: would that be ok?
I was under the impression that you could build the cast at the end of
CodeGenFunction::EmitCXXMemberCallExpr. Instead of
return EmitCXXMemberCall...
you would have
foo = return EmitCXXMemberCall
if (needs cast)
foo = cast foo;
return foo;
wouldn't that work? I will let John comment about the option of
disabling devirtualization of destructorns on ARM.
> Cheers,
> Dave
Cheers,
Rafael
More information about the cfe-dev
mailing list