<div dir="ltr"><div><div><div>Mate samozrejme pravdu v obojim. Je jenom hloupe, ze prekladac u naked funkce akceptuje direktivu<br></div>using pro registrovou banku ale nic neudela ani nezahlasi ani warning. Jinak je to opravdu zajimave<br>
</div>studovat, jak si prekladac s mymi zacatecnickymi konstrukce v C podari pri prekladu do assembleru.<br></div>Musim pred autory SDDC smeknout.<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">Dne 22. ledna 2014 5:39 Jaroslav Buchta <span dir="ltr"><<a href="mailto:jaroslav.buchta@hascomp.cz" target="_blank">jaroslav.buchta@hascomp.cz</a>></span> napsal(a):<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div>naked funkce by proste mela byt hola
funkce, prekladac by nemel pridat do funkce nic, zadna
inicializace a uhovani registru.... to musi zajistit programator
sam.<br>
Je velmi dobre a casto to delam, podivat se, jaky ASM z prekladace
vypadne, treba v debuggeru pri ladeni kodu.<br>
<br>
<br>
Dne 21.1.2014 21:49, Andrej Jancura napsal(a):<br>
</div><div><div class="h5">
<blockquote type="cite">
<div dir="ltr">
<div>
<div>Dobry vecer,<br>
<br>
</div>
nie je nahodou direktiva __naked na to, aby kompilator
nepredaval parametre v pracovnych registroch pri call-return z
funkcii? Nieco take sa mi zda, ze bolo aj v keili, ale je to
uz velmi davno co som s tym robil, takze sa mozem aj mylit.<br>
<br>
</div>
A. <br>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">2014/1/21 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>Tak jsem zrusil oznaceni __naked u
prerusovaci procedury a SDCC korektne<br>
</div>
priradi urcenou registrovou banku podle
parametru __using. Je to pomerne intelignetni,<br>
</div>
neuklada to na stack registry, ktere nejsou
potreba, takze celkovy kod neni<br>
</div>
delsi nez muj puvodni s __naked. Byla to pro mne
zajimava zkusenost, hrabat se <br>
</div>
v ASM kodu, vytvorenem prekladacem. Nikdy driv jsem
to nepotreboval. <br>
</div>
Budto jsem psal primo v assembleru a nebo jsem veril
tomu, co prekladac udela. <br>
<br>
</div>
Diky za konzultace, povazoval bych to zatim za vyresene. <br>
<br>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">
Dne 21. ledna 2014 17:55 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span>
napsal(a):
<div>
<div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>Dobrý den,<br>
<br>
tak po tom zákazu přerušení během
čtení EEPROM to přežilo celý den,<br>
</div>
což se před tím nikdy nestalo. Chyba
je evidentně někde tady. Večer se na
to podívám, teď jsem přišel z práce.<br>
</div>
<br>
</div>
Překladači je úplně jedno, jestli tam ty
závorky za __interrupt a __using jsou nebo
ne, přeloží to úplně stejně.<br>
</div>
Jakmile tam je __naked, tak to informaci o
registrové bance ignoruje, prostě tam dá jen
to, co je <br>
</div>
v kódu, v mém případě je celý kód přerušení v
assembleru a zkopíruje to tam 1:1. Co bych
taky čekal, že ?.<br>
</div>
Někde by mělo být ale napsané ,že pokud použiji
__naked, tak nemůžu nic čekat. Je to logické,
ale není to <br>
úplně zřejmé. <br>
<br>
</div>
<div class="gmail_extra">
<div>
<div><br>
<br>
<div class="gmail_quote">2014/1/21 Jan
Waclawek <span dir="ltr"><<a href="mailto:konfera@efton.sk" target="_blank">konfera@efton.sk</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>>Zajimave je, ze v navodu se
pise, ze to ma byt takto :<br>
>void timer_isr (void) __interrupt
(1) __using (1)<br>
>a ja tam ty zavorky za interrupt a
using nemam - bylo to takto ve stare<br>
>verzi,<br>
>ale prekladac zadnou chybu
nehlasi.<br>
<br>
</div>
A prelozi dobre?<br>
<div><br>
>Divam se do kodu v assembleru a
zacinam tomu zase rozumet.<br>
</div>
>To pøerušení od SW UARTu mám napsané
v assembleru a oznacene jako<br>
<div>>__naked . Prestoze tam mam i
using 1 , tak to prepnuti registrove
banky<br>
>ignoruje,<br>
>V assembleru tam nic neni, na
rozdil od ostatnich preruseni.<br>
>Je to hloupe, ze prekladac
akceptuje to using 1 a zaroven to
naked.<br>
<br>
<br>
</div>
Tak to je fakt hlupe. Chcelo by to asi
reportnut. Pozriem sa na to, ak bude<br>
cas.<br>
<br>
wek<br>
<div>
<div><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" target="_blank">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>
<br clear="all">
<br>
</div>
</div>
<span><font color="#888888">-- <br>
Zdravi<br>
Jirka OK1MWW
</font></span></div>
</blockquote>
</div>
</div>
</div>
<span><font color="#888888"><br>
<br clear="all">
<br>
-- <br>
Zdravi<br>
Jirka OK1MWW
</font></span></div>
<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" target="_blank">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>
<br>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
HW-list mailing list - sponsored by <a href="http://www.HW.cz" target="_blank">www.HW.cz</a>
<a href="mailto:Hw-list@list.hw.cz" target="_blank">Hw-list@list.hw.cz</a>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
</blockquote>
<br>
<br><br>
</div></div><hr style="border:none;color:#909090;background-color:#b0b0b0;min-height:1px;width:99%">
<table style="border-collapse:collapse;border:none">
<tbody><tr>
<td style="border:none;padding:0px 15px 0px 8px">
<a href="http://www.avast.com/" target="_blank">
<img src="http://static.avast.com/emails/avast-mail-stamp.png" border="0">
</a>
</td>
<td>
<p style="color:#3d4d5a;font-family:"Calibri","Verdana","Arial","Helvetica";font-size:12pt">
Tato zpráva neobsahuje viry ani jiný škodlivý kód -<a href="http://www.avast.com/" target="_blank">avast! Antivirus</a> je aktivní.
</p>
</td>
</tr>
</tbody></table>
<br>
</div>
<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>
<br></blockquote></div><br><br clear="all"><br>-- <br>Zdravi<br>Jirka OK1MWW
</div>