<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent changes to bugs</title><link href="https://sourceforge.net/p/fastcode/bugs/" rel="alternate"/><link href="https://sourceforge.net/p/fastcode/bugs/feed.atom" rel="self"/><id>https://sourceforge.net/p/fastcode/bugs/</id><updated>2020-06-01T22:30:14.644000Z</updated><subtitle>Recent changes to bugs</subtitle><entry><title>#3 Contribute to FastCode (make the test suites work under 64-bit and the latest version of Delphi - 10.2 Tokyo)</title><link href="https://sourceforge.net/p/fastcode/bugs/3/?limit=25#8077" rel="alternate"/><published>2020-06-01T22:30:14.644000Z</published><updated>2020-06-01T22:30:14.644000Z</updated><author><name>Maxim Masiutin</name><uri>https://sourceforge.net/u/maximmasiutin/</uri></author><id>https://sourceforge.netcc31b30c523d1b0702213dbdd1818ec8edbaa1ff</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I have made a new repository at GitHub since the project does not seem to be maintained here. I have also made the required contributions. Please see &lt;a href="https://github.com/maximmasiutin/FastCodeBenchmark" rel="nofollow"&gt;https://github.com/maximmasiutin/FastCodeBenchmark&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Contribute to FastCode (make the test suites work under 64-bit and the latest version of Delphi - 10.2 Tokyo)</title><link href="https://sourceforge.net/p/fastcode/bugs/3/" rel="alternate"/><published>2017-06-26T00:43:59.634000Z</published><updated>2017-06-26T00:43:59.634000Z</updated><author><name>Maxim Masiutin</name><uri>https://sourceforge.net/u/maximmasiutin/</uri></author><id>https://sourceforge.net25ffd52ebe79efab90eed07c5f03e8974683a9c6</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I would like to contribute to the FastCode project (test suites) - of FillChar and MemoryManager - to make the test framework application to compile under latest version of Delphi (10.2 Tokyo) and compile under Win64. Of course, if you compile under Win64, the 32-bit implementations may not run, but at least you would be able to test your own 64-bit implementations.&lt;/p&gt;
&lt;p&gt;How can I contribute? Could you please give me a write access to the code repository?&lt;/p&gt;
&lt;p&gt;I have contacted FastCode contributors listed here, but nobody have replied so far. How can I contact them? Maybe the sourceforge emails do not work?&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Bug in Pos_JOH_IA32_6, PosEx_JOH_IA32_7 and PosEx_JOH_IA32_8.</title><link href="https://sourceforge.net/p/fastcode/bugs/2/" rel="alternate"/><published>2017-04-18T11:53:42.639000Z</published><updated>2017-04-18T11:53:42.639000Z</updated><author><name>Egon Elbre</name><uri>https://sourceforge.net/u/egno/</uri></author><id>https://sourceforge.net001691ce0555662eb90b07a76250b194f853db06</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Apparently we've stumbled on a bug in Pos_JOH_IA32_6, PosEx_JOH_IA32_7 and PosEx_JOH_IA32_8. (Using Delphi 7).&lt;/p&gt;
&lt;p&gt;Simplest case that can demonstrate the problem:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="nx"&gt;program&lt;/span&gt; &lt;span class="nx"&gt;PosTestCase&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="nx"&gt;uses&lt;/span&gt;
  &lt;span class="nx"&gt;FastMM4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;SysUtils&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;FastcodePosExUnit&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="nx"&gt;FastcodePosUnit&lt;/span&gt;
&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;var&lt;/span&gt;
  &lt;span class="nx"&gt;S&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;String&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nx"&gt;X&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;Integer&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;begin&lt;/span&gt;
    &lt;span class="c1"&gt;// See edx and esi registers near in the appropriate functions&lt;/span&gt;
    &lt;span class="c1"&gt;// @@MainLoop:&lt;/span&gt;
    &lt;span class="c1"&gt;//   add     edx, 4&lt;/span&gt;
    &lt;span class="c1"&gt;//   cmp     edx, esi&lt;/span&gt;
    &lt;span class="c1"&gt;//   ...&lt;/span&gt;
  &lt;span class="nx"&gt;S&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="s1"&gt;'aaa'&lt;/span&gt;&lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nx"&gt;X&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nx"&gt;Pos_JOH_IA32_6&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'e'&lt;/span&gt;&lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;S&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="nx"&gt;X&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nx"&gt;PosEx_JOH_IA32_7&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'e'&lt;/span&gt;&lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;S&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="nx"&gt;X&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nx"&gt;PosEx_JOH_IA32_8&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'e'&lt;/span&gt;&lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;S&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;end&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;The search switches between @@MainLoop and @@Remainder eventually searching past S.&lt;/p&gt;
&lt;p&gt;Important bits:&lt;br/&gt;
1. S must be followed by #0&lt;br/&gt;
2. Crash will occur if past the #0 is unallocated or protected memory. Unfortunately we weren't able to make a simplified crashing case, but it should be trivial to see that it can happen.&lt;/p&gt;
&lt;p&gt;This example does not unless you manage to allocate S near memory boundary.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>FastObj.inc not found in CVS</title><link href="https://sourceforge.net/p/fastcode/bugs/1/" rel="alternate"/><published>2005-12-09T19:41:20Z</published><updated>2005-12-09T19:41:20Z</updated><author><name>Vadim V.Lopushansky</name><uri>https://sourceforge.net/u/pult/</uri></author><id>https://sourceforge.net00d0773d3c1afab3e4976fd88d0646a766d0b970</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;FastObj.inc not found in CVS&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>