<div dir="ltr"><div><div>Ahoj,<br><br></div>nemusis sa hned citit dotknuty vsetkym co napisem. Pozri ja som to pochopil tak, ze aj ked uniony nie su podla normy a cez pointre mi nikdy takato konverzia nechodila, lebo kompilator vrestal, myslim si, ze mozes pisat kod tak, aby si bol podla normy a sucasne vygenerujes optimalny kod v asm. Taky ako by si ho napisal v pure asm.<br>
<br>Tie konstrukcie si ale musis najst sam a pozriet ako sa co preklada. A v pripade PicC a XC8 je kazda C konstrukcia generovana inym kodom. Mozes sa o tom presvedcit napr. ked si das unsigned long int i, a v programe mas i++... Neviem sice ako posledna xc1.21, ale nejaka 1.12 to generovala takou rutinou, kde som prvy krat v zivote skonstatoval, ze neviem pochopit co ten kus asembleru robi. Predchadzajuca verzia kompilatora totiz pouzivala klasicky incfsz... <br>
<br></div>Zial uz som dlho nic s tymto nerobil, pretoze som bol znechuteny tym, ze aj ked som vygeneroval z C kod ako keby bol z asembleru v app. note, aj tak mi to poriadne nechodilo na hw. Avsak medzicasom som prisiel na par trikov, ale to sa zda, ze je cisto hw zalezitost a treba pouzit iny algoritmus obsluhy hw. <br>
<div><br></div><div>A.<br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">Dňa 30. októbra 2013 9:57, Jan Waclawek <span dir="ltr">&lt;<a href="mailto:konfera@efton.sk" target="_blank">konfera@efton.sk</a>&gt;</span> napísal(-a):<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Lenze type punning nie je podla normy; resp. z normy priamo vyplyva, ze obe<br>
metody maju normou nedefinovany vysledok.<br>
<br>
Ako som bol pisal, ak mas pocit, ze nieco treba mat urcite napisane nejakym<br>
sposobom, netreba zbytocne vahat a treba ist do asm. To zase u tych ARMov<br>
nie je uplne trivialne, ale u 8-bitov sa to priamo nuka. Uznavam, ze nie<br>
kazdy kompilator ma taku uzasnu podporu pre inline asm ako gcc a uznavam,<br>
ze u gcc to zase pada na hubu kvoli mizernej dokumentacii...<br>
<div class="HOEnZb"><div class="h5"><br>
wek<br>
<br>
<br>
<br>
----- Original Message ---------------<br>
&gt;Ahoj,<br>
&gt;<br>
&gt;to si mozes dovolit na tvojej F4... Ale na cipe s 8K-16K instrukcii je<br>
&gt;kazdy trik dobry. Ono aj ked to pises podla normy, tak sa to da napisat<br>
&gt;rozne, tak aby si mal minimalny vygenerovany kod.<br>
&gt;<br>
&gt;<br>
&gt;2013/10/29 Jan Waclawek &lt;<a href="mailto:konfera@efton.sk">konfera@efton.sk</a>&gt;<br>
&gt;<br>
&gt;&gt; Ak &quot;sa to napise&quot; tak, ako norma predpisuje, tak na optimalizaciach<br>
&gt;&gt; nezalezi.<br>
&gt;&gt;<br>
&gt;&gt; A o to tu ide.<br>
&gt;&gt;<br>
&gt;&gt; wek<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; ----- Original Message ---------------<br>
&gt;&gt; &gt;No ja bych rekl, ze vic zalezi na zapnutych optimalizacich, nez jak se<br>
&gt;&gt; &gt;to napise...<br>
&gt;&gt;<br>
<br>
_______________________________________________<br>
HW-list mailing list  -  sponsored by <a href="http://www.HW.cz" target="_blank">www.HW.cz</a><br>
<a href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a><br>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
</div></div></blockquote></div><br></div>