c: MISRA2012

Miroslav Draxal evik na volny.cz
Pátek Březen 26 15:41:56 CET 2021


Ten volatile na to přeci nemá vliv. Nebo ano? Možná jste to přehlédl či nečetl, tohle je výraz pro navození aktuálního problému. Volatile tam mám kvůli tomu, aby mi kompilátor tu proměnou přeložil, nevyloučil jí z překladu, protože nikde jinde není použita. Mám do teď, že pokud použiji volatile, tak říkám kompilátoru, tuhle proměnnou použij a nekoukej, jestli se někde používá nebo ne. Ale, pokud jsou povoleny veškeré optimalizace, tak např. výpočty s touto proměnnou optimalizuj. Tak nějak si volatile spojuji s registry procesoru, do kterého se třeba jenom zapisuje. Kdyby tam nebylo to volatile, tak se to zoptimalizuje a žádný zápis se do registru neprovede. Pokud se z registru v programu nečte a není volatile, tak se optimalizací zápis do něj nerealizuje. 
V podstatě mohu použít. 
TMR1H = (uint8_t) (20.1F / 1.1F); // Tady řve MISRA
TMR1H = (uint8_t) (18,27272727272727F); // tady je pro změnu vše OK.

Míra



-----Original Message-----
From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Jan Waclawek
Sent: Friday, March 26, 2021 10:52 AM
To: HW-news
Subject: RE: c: MISRA2012

No tak nedajte volatile k tmp.

wek

----- Original Message ---------------

Subject: RE: c: MISRA2012
   From: "Miroslav Draxal" <evik na volny.cz>
   Date: Fri, 26 Mar 2021 10:46:39 +0100
     To: "'HW-news'" <hw-list na list.hw.cz>

>Jak píšete, " vypocet kompilator urobil compile time"
>
>
>-----Original Message-----
>From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Jan Waclawek
>Sent: Friday, March 26, 2021 10:36 AM
>To: HW-news
>Subject: RE: c: MISRA2012
>
>>> chci, aby to tu konstantu vypočítalo při překladu
>> Aby mi to při přeložilo.
>
>Tak co vlastne chcete, aby Vam ten vypocet kompilator urobil compile time,
>alebo aby to prelozil a tym padom sa vypocet vykonal runtime?
>
>Hovorim o volatile specificky pri premennej tmp.
>
>wek
>
>
>----- Original Message ---------------
>>To volatile je tam pouze ze studijních důvodů. Aby mi to při přeložilo.
>>Míra
>>
>>-----Original Message-----
>>
>>> Asi jsem měl napsat, že chci, aby to tu konstantu vypočítalo při překladu. Tohle je očesané na kost, abych se nějak dopídil k rozuzlení.
>>
>>No tak potom tam nesmiete pchat to volatile k tomu tmp.
>>
>>wek
>>
>
>_______________________________________________
>HW-list mailing list  -  sponsored by www.HW.cz
>Hw-list na list.hw.cz
>http://list.hw.cz/mailman/listinfo/hw-list
>
>_______________________________________________
>HW-list mailing list  -  sponsored by www.HW.cz
>Hw-list na list.hw.cz
>http://list.hw.cz/mailman/listinfo/hw-list

_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list