eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaWinAVR-20090313 "inlajnowanie" funkcji.Re: WinAVR-20090313 "inlajnowanie" funkcji.
  • Data: 2009-09-07 09:44:21
    Temat: Re: WinAVR-20090313 "inlajnowanie" funkcji.
    Od: Grzegorz Kurczyk <g...@a...control.slupsk.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Użytkownik identyfikator: 20040501 napisał:
    >> Dla potomnych: dyrektywy kompilatora
    >
    > 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

    :-)

    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.

    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.

    Pozdrawiam
    Grzegorz

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: