[1] https://www.researchgate.net/publication/245578769_Fully_Countering_Trusting_Trust_through_Diverse_Double-Compiling
On Thu, Feb 11, 2021 at 9:27 AM Ayush Varshney <varshneyayus...@gmail.com> wrote: > Hi everyone, > Hope you all are doing well!! > I am new to the tinycc community. > I was working over Diverse Double-compiling technique [1]. And found > there is a bad optimization performed by tcc. The problem is called Long > double constant problem. > > *Long double constant problem* is for storing the value of 0.0, tcc > stores 0.0 in memory as > long double value but long double value in tcc takes only 10 bytes but the > source code > stores 0.0 value in 12 bytes. The extra two bytes creates variations in > the output. The > problem is solved using (f1-f1) instead of 0.0, it is semantically same > and produces the > same output. For example, > Instead of ‘if(f2==0.0)’ use ‘if(f2==f1-f1)’ > > I have pushed my solution > <https://repo.or.cz/tinycc.git/commit/405aef9155fb66e280dac82ce521d5d2ea06f2ab> > and please let me know if you have any queries regarding it. > > Regards > Ayush >
_______________________________________________ Tinycc-devel mailing list Tinycc-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/tinycc-devel