-
Data: 2012-05-05 23:54:40
Temat: Re: [OT] koszt 'virtual' na ARM
Od: "Andrzej Ekiert" <d...@t...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia 05-05-2012 o 22:50:52 Michoo <m...@v...pl> napisał(a):
>
> Dopisałem do projektu następujące klasy:
[snip kod]
> Binarka przytyła po tym o 200 bajtów:
[snip szczegóły]
Nie będzie to żaden argument w dyskusji na temat metod wirtualnych, ale z
ciekawości do małego programu w C+asm (na PIC24) dopisałem następujące
wiersze:
const char msg1[] = "foo\r\n";
const char msg2[] = "bar\r\n";
const char msg3[] = "foobar\r\n";
const char msg4[] = "off\r\n";
Następnie w main():
const char *msg;
int ll = recv(0); /* odczyt z czegoś innego niż uart, nieistotne z czego,
0 to numer kanału */
if (ll == 1) {
msg = msg1;
} else if (ll == 2) {
msg = msg2;
} if (ll == 3) { /* tuś się chyba pomylił, ale zostawiłem bez
else, żeby było tak samo */
msg = msg3;
} else {
msg = msg4;
}
uart_send_str(msg);
Przy -O0 binarka zwiększyła się z 1452 do 1575 bajtów (123 bajty).
Przy -Os binarka zwiększyła się z 1197 do 1269 bajtów (72 bajty).
Po poprawieniu buga z "else":
-O0 : 1452 do 1578 (126)
-Os : 1197 do 1287 (90)
Ogólna zmiana przy włączeniu optymalizacji jest mała, bo to program tylko
do testowania sporego kawałka kodu pisanego w asemblerze i C tam mało jest.
Sam nie wiem czy i jakie wnioski z tego wyciągać.
ae
Następne wpisy z tego wątku
- 06.05.12 00:11 Jerry1111
- 06.05.12 00:26 Michoo
- 06.05.12 00:30 Jerry1111
- 06.05.12 00:36 Jerry1111
- 06.05.12 01:13 Andrzej Ekiert
- 06.05.12 01:21 Sebastian Biały
- 06.05.12 10:57 Jerry1111
- 06.05.12 12:13 Sebastian Biały
- 06.05.12 13:47 Michoo
- 06.05.12 14:28 Michoo
- 06.05.12 15:04 Sebastian Biały
- 06.05.12 15:19 Jerry1111
- 06.05.12 15:37 Sebastian Biały
- 06.05.12 16:05 Michoo
- 06.05.12 16:12 Sebastian Biały
Najnowsze wątki z tej grupy
- Cyna dylemat
- Mierniki poziomu glukozy (CGM, FGM)
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Kontrola nad prądem - sprawdź jak działa [apka - przyp. JMJ] eLicznik
- NETIA i hasło logowania
- Modulacja FM
- Najgorszy język programowania
- Kol. sukces po polsku: firma Szumisie sp. z o.o.
- Chińska Telefonia 6G - Chcą Nas Sterować Elektrycznie - Jak Kukiełki w Teatrze Lalek!!!
- RS-485 ale automatycznie dwukierunkowy
- Leżakujące SSD gubią po roku dane
- kolorowy e-paper
- Sterownik kotła CO praca PWM
- Jakie baterie A23 i LR44?
- OLED SSD1306 - degradacja?
Najnowsze wątki
- 2025-12-15 I lewacka ideologia poszła się JEBAĆ
- 2025-12-15 Zgłoszenie uprowadzenia dziecka w Koszalinie. Policja zatrzymała podejrzanych, 10-miesięczny chłopiec odnaleziony
- 2025-12-15 Warszawa => Fullstack PHP Developer <=
- 2025-12-15 Prezydent i Marszałek Sejmu
- 2025-12-15 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-12-15 Warszawa => Sales Assistant <=
- 2025-12-15 Białystok => Programista Dynamics 365 Commerce/POS <=
- 2025-12-15 Białystok => Dynamics 365 Commerce/POS Developer <=
- 2025-12-15 Białystok => Konsultant ERP Microsoft Dynamics 365 Commerce <=
- 2025-12-15 Chanuka
- 2025-12-15 Czy w RP3 prezydent może odmówić mianowania jednego ministra z gabinetu? [Czechy]
- 2025-12-15 Czas to pieniądz...
- 2025-12-15 Wrocław => Programista React ze znajomością C++ <=
- 2025-12-14 Dla UTRWALENIA: jak działają "EKO" ZBRODNIARZE
- 2025-12-13 Emisyjność BEV




Chińskie auta: Od niskiej jakości do globalnego lidera. Co pokazuje raport EFL?