[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