-
Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!new
sfeed.neostrada.pl!nemesis.news.neostrada.pl!atlantis.news.neostrada.pl!news.ne
ostrada.pl!not-for-mail
From: "T.M.F." <t...@n...mp.pl>
Newsgroups: pl.misc.elektronika
Subject: Re: WinAVR-20090313 "inlajnowanie" funkcji.
Date: Mon, 07 Sep 2009 22:44:36 +0200
Organization: TP - http://www.tp.pl/
Lines: 44
Message-ID: <h83ruo$q14$1@nemesis.news.neostrada.pl>
References: <h7rrop$2kc$1@nemesis.news.neostrada.pl>
<h7rs08$1nh$1@atlantis.news.neostrada.pl> <h7s08d$i3f$1@inews.gazeta.pl>
<h7s563$dhg$1@nemesis.news.neostrada.pl>
<h7tsjo$i7o$1@atlantis.news.neostrada.pl>
<h82l8t$s69$1@nemesis.news.neostrada.pl>
Reply-To: t...@n...mp.pl
NNTP-Posting-Host: dvl193.neoplus.adsl.tpnet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: nemesis.news.neostrada.pl 1252356888 26660 83.22.45.193 (7 Sep 2009 20:54:48
GMT)
X-Complaints-To: u...@n...neostrada.pl
NNTP-Posting-Date: Mon, 7 Sep 2009 20:54:48 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.1) Gecko/20090814
Fedora/3.0-2.6.b3.fc11 Thunderbird/3.0b3
In-Reply-To: <h82l8t$s69$1@nemesis.news.neostrada.pl>
Xref: news-archive.icm.edu.pl pl.misc.elektronika:570777
[ ukryj nagłówki ]>> a może jak Ktoś kiedyś będzie szukał i znajdzie Twojego posta jako
>> mało oblatany nie będzie wiedział o co chodzi... więc może byś
>> wyjaśnił co to jest to "inlajnowanie" funkcji?
>
> Witam ponownie.
>
> Generalnie te informacje są istotne dla ZSOKW i ZBOKB czyli:
> Zwolenników Skrajnej Optymalizacji Kodu Wynikowego
> i
> Związku Bojowników o Każdy Bajt
Ja bym to nazwal Zwiazkiem Bojownikow o Kazda Instrukcje - w skrocie
"ZBoKI" co lepiej oddaje istote problemu :)
> Owo "inlajnowanie" to jedna z metod optymalizacji kodu wynikowego przez
> kompilator. Przykładowo mamy funkcję A wywoływaną przez funkcję B. Jeśli
> w wyniku kompilacji wyszło, że ciało funkcji A to w efekcie trzy bajty
> na krzyż, to nie ma sensu we wnętrzu funkcji B wstawiać wywołania
> funkcji A przez rozkaz CALL (i potem wracać przez RET co jest dodatkowym
> obciążeniem czasowym) ekonomiczniej jest wkompilować ciało funkcji A
> bezpośrednio w ciało funkcji B. Chodzi tylko aby nie przegiąć przy tej
> optymalizacji i nie doprowadzić do rozrostu kodu wynikowego.
To jest jeden powod, drugi czestszy to optymalizacja pod wzgledem
szybkosci. Czyli zamiast robic np. petle for mozna ja rozwinac na ciag
instrukcji (to kontroluje inna dyrektywa kompilatora), albo wlasnie
wstawic nawet dluzsza sekwencje rozkazow, ale za to uniknac RCALL/CALL z
RET, ktore sa dlugie.
> P.S. Z wyłączeniem onlajnowania dyrektywą -fno-inline trzeba uważać, bo
> np. bloki ATOMIC zaczynają generować prawdziwe koszmarki w kodzie
> wynikowym zamiast prostego in r15, SREG; cli; ..... out SREG, r15.
> Korzystniej jest poeksperymentować z parametrem -finline-limit=3
> osiągając stosowny kompromis.
O ile sie nie myle to z gcc w WinAVR z 13.03.09 jest pewien problem -
nie do konca poprawnie reaguje na te dyrektywy. Jest obejscie tego, ale
w tej chwili nie pamietam, zainteresowani wygooglaja.
--
Inteligentny dom - http://idom.wizzard.one.pl
http://idom.sourceforge.net/
Teraz takze forum dyskusyjne
Zobacz, wyslij uwagi, dolacz do projektu.
Najnowsze wątki z tej grupy
- Czy cos fi przechodzi przez trafo separujące?
- śrubka masy
- Ciekawostka na dziś lock bity
- [OT] napisy w YT
- Było 83V
- Stare komputery
- Odbiornik ADS-B i wzmacniacze
- Thunderbird i dysk...
- opornosc falowa
- Bateria 9V 6F22, alkaliczna v cynkowa, samorozładowanie, bateria wysokiej trwałości do miernika
- Tani zakup z ali?
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
Najnowsze wątki
- 2025-08-06 Gdynia => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-08-06 Białystok => Inżynier oprogramowania .Net <=
- 2025-08-06 "[...] sejmowe wystąpienie posłanki Klaudii Jachiry, która zakończyła je słowami ,,Sława Ukrainie"."
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Panuje się 181 159,42 zł./mies. na posła w 2026r.
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Czy cos fi przechodzi przez trafo separujące?
- 2025-08-05 kajaki i promile
- 2025-08-05 Re: Tesla jest bezpieczna, wczoraj spaliła się doszczętnie na Ursynowie i nikomu się nic nie stało
- 2025-08-05 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-08-05 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-05 B2B i książka przychodów i rozchodów
- 2025-08-04 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML