[fpc-devel] Possible internal corruption
J. Gareth Moreton
gareth at moreton-family.com
Fri Jun 29 13:09:18 CEST 2018
So I've made a breakthrough. The memory corruption is due to both parts of
the CMOV optimization under OptPass2Jcc, not my Jcc addition (although it
might have unintentionally accentuated it). The first part sets p to a
dangling pointer, while the 2nd part is a little more complicated, but I'll
try to spell everything out once I finish testing my new patch and see if
I've eliminated all of my crashes
Gareth
On Fri 29/06/18 10:05 , "J. Gareth Moreton" gareth at moreton-family.com
sent:
It turns out that it's invalid memory. Trying to call "ClassName"
raises an access violation (other aligns work fine). There's a dangling
pointer somewhere. I found one in the CMOV optimisation code, but that
hasn't fixed the crash.
Gareth
On Fri 29/06/18 10:27 , Martok listbox at martoks-place.de sent:
> A clue that leads me to believe there's internal corruption is that a
produced
> .s file yields an alignment field of ".balign 119,0x90", which should
never
> happen.
Could you set a breakpoint on aggas.pas:721 (the call to doalign) with a
conditional on "tai_align_abstract(hp).aligntype=119" and check what the
actual
type of hp is? It could be that at some point a node gets its typ changed
in an
invalid way?
aligntype should be either one of 2^[0..5], never something else...
This is where AddressSanitizer support would be *nice*.
--
Regards,
Martok
Ceterum censeo b32079 esse sanandam.
_______________________________________________
fpc-devel maillist - fpc-devel at lists.freepascal.org [1]
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[2]">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
_______________________________________________
fpc-devel maillist - fpc-devel at lists.freepascal.org [3]
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[4]">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Links:
------
[1] mailto:fpc-devel at lists.freepascal.org
[2] http://secureweb.fast.net.uk/ http:=
[3] mailto:fpc-devel at lists.freepascal.org
[4] http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20180629/03e31f05/attachment.html>
More information about the fpc-devel
mailing list