17.07.2015, 22:07
Hi,
ich habe eine Möglichkeit gefunden das man Sourcecodes in nur eine Pass Compilieren kann, der einzigste Nachteil ist das die resultierenden Executables dann so groß sind wie der verwendetet Puffer. Momentan habe ich 3,5MB ohne und 12,5MB mit Debuginfo (für den REDDebugger) eingestellt das reicht von AIDE bis PfP.
Es ist Standardmässig deaktiviert und kann über die Tooltype "ONEPASSCOMPILING" für die AmiBlitz IDE (PED) aktiviert werden, für den CLI-Modus bzw. AIDE über den zusätzlichen Parameter "-1" oder "-1pass" beim Aufruf.
Über die Comnpilereinstellung "make smaller code" wir es dann gesteuert deaktiviert wir OnePassCompiling mit großen Puffern verwendet, sollten die Puffer zu klein sein wir ein zweiter Pass gemacht mit nochmals vergrößerten Puffern.
Bei Verwendung von "make smaller code" werden die Standartpuffer verwendet und das TwoPassCompiling so wie bisher was in eine Programmspezifischen Excutablegröße resultiert. Dies ermöglicht auch bei aktiviertem "ONEPASSCOMPILING" das Erzeugen von kleinen bzw. kleinst möglichen Executables.
Ich habe für die Verwendung der großen Puffer eine Abfrage des freien Speichers vorgeschaltet für compilieren ohne Debuginfo darf der Puffer nicht größer als ein Viertel und bei compilieren mit Debuginfo nicht größer als die Hälfte des freien Speichers sein.
Ich hoffe das hilft und spart euch zeit beim Testen :-D
Ich commite es wenn Soureforge wieder funktioniert!
ich habe eine Möglichkeit gefunden das man Sourcecodes in nur eine Pass Compilieren kann, der einzigste Nachteil ist das die resultierenden Executables dann so groß sind wie der verwendetet Puffer. Momentan habe ich 3,5MB ohne und 12,5MB mit Debuginfo (für den REDDebugger) eingestellt das reicht von AIDE bis PfP.
Es ist Standardmässig deaktiviert und kann über die Tooltype "ONEPASSCOMPILING" für die AmiBlitz IDE (PED) aktiviert werden, für den CLI-Modus bzw. AIDE über den zusätzlichen Parameter "-1" oder "-1pass" beim Aufruf.
Über die Comnpilereinstellung "make smaller code" wir es dann gesteuert deaktiviert wir OnePassCompiling mit großen Puffern verwendet, sollten die Puffer zu klein sein wir ein zweiter Pass gemacht mit nochmals vergrößerten Puffern.
Bei Verwendung von "make smaller code" werden die Standartpuffer verwendet und das TwoPassCompiling so wie bisher was in eine Programmspezifischen Excutablegröße resultiert. Dies ermöglicht auch bei aktiviertem "ONEPASSCOMPILING" das Erzeugen von kleinen bzw. kleinst möglichen Executables.
Ich habe für die Verwendung der großen Puffer eine Abfrage des freien Speichers vorgeschaltet für compilieren ohne Debuginfo darf der Puffer nicht größer als ein Viertel und bei compilieren mit Debuginfo nicht größer als die Hälfte des freien Speichers sein.
Ich hoffe das hilft und spart euch zeit beim Testen :-D
Ich commite es wenn Soureforge wieder funktioniert!