Jak używać instrukcji NOP w avr-gcc z asm volatile w kodzie C?
Re: NOP w avr-gcc
From: "Piotr Wyderski" <Piotr.Wyderski_at_nospam_student.ii.uni.wroc.pl>
Subject: Re: NOP w avr-gcc
Date: Tue, 1 Oct 2002 17:47:41 +0200
Marek Dzwonnik wrote:
W CodeVision mozna użyć d #asm("nop"). W gcc nie mogę
znaleźć niczego analogicznego.
Na nieco wieksze procki dziala _asm_ _volatile_ w ciele funkcji,
volatile sluzy do tego, aby Ci optymalizator nie usunal, ani nie modyfikowal
Twojego kodu; jesli Ci taka mozliwosc nie przeszkadza, to to nie musisz
uzywac volatile. Asembler poza cialem funkcji (tzw. odl-style asm) domyslnie
przyjmuje modyfikator volatile, ale za to tracisz mozliwosc, aby to GCC
samo podobieralo Ci rejestry do kodu asemblerowego. Krotko,
sprobuj tak:
_asm_ _volatile_("\tnop\n");
Pozdrawiam
Piotr Wyderski
From: Marcin Stanisz <mstanisz_at_nospam_poczta.onet.pl>
Subject: Re: NOP w avr-gcc
Date: 1 Oct 2002 16:25:02 GMT
W artykule <ancg3c$80f$1_at_nospam_panorama.wcss.wroc.pl> Piotr Wyderski napisal(a):
samo podobieralo Ci rejestry do kodu asemblerowego. Krotko,
sprobuj tak:
_asm_ _volatile_("\tnop\n");
No, co jak co, ale krótko to nie jest :-)
Marcin Stanisz
--
"A lie will go round the world before the truth has got its boots on"
Terry Pratchett, "Truth"
From: "Piotr Wyderski" <Piotr.Wyderski_at_nospam_student.ii.uni.wroc.pl>
Subject: Re: NOP w avr-gcc
Date: Wed, 2 Oct 2002 12:27:41 +0200
Marcin Stanisz wrote:
No, co jak co, ale krótko to nie jest :-)
Ale za to poprawnie -- to, co napisal Marek mialo delikatnie inne znaczenie
od tego, co chcial napisac, nie wspominajac o efektach ubaocznych. :-)
Pozdrawiam
Piotr Wyderski