eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCPU nie wykonujący pustych procedur › Re: CPU nie wykonujący pustych procedur
  • Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!polsl.pl!not-for
    -mail
    From: Adam Przybyla <a...@r...pl>
    Newsgroups: pl.comp.programming
    Subject: Re: CPU nie wykonujący pustych procedur
    Date: Sun, 26 Jul 2009 16:48:05 +0000 (UTC)
    Organization: Politechnika Slaska, Gliwice
    Lines: 44
    Sender: Adam Przybyla <a...@s...ertel.com.pl>
    Message-ID: <h4i1c5$af9$1@polsl.pl>
    References: <2...@p...null.onet.pl.invalid>
    <h4hvun$92b$1@polsl.pl> <h4i0rp$r0m$1@news.onet.pl>
    NNTP-Posting-Host: smtp.ertel.com.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    X-Trace: polsl.pl 1248626885 10729 62.182.231.178 (26 Jul 2009 16:48:05 GMT)
    X-Complaints-To: n...@p...pl
    NNTP-Posting-Date: Sun, 26 Jul 2009 16:48:05 +0000 (UTC)
    User-Agent: tin/1.8.3-20070201 ("Scotasay") (UNIX) (Linux/2.6.18-92.1.22.el5xen
    (i686))
    Xref: news-archive.icm.edu.pl pl.comp.programming:182798
    [ ukryj nagłówki ]

    Jacek Czerwinski <...@...z.pl> wrote:
    > Adam Przybyla pisze:
    >> Wojciech Muła <w...@p...null.onet.pl.invalid> wrote:
    >>> Czy jest jakiś procesor, który "widząc", że pierwszym
    >>> rozkazem procedury jest powrót z podprogramu, w ogóle
    >>> nie przekazuje tam sterowania?
    >> ... tym zajmoje sie kompilator, przyklad z gcc:
    >> smtp:/home/adam>gcc -S x.c
    >> smtp:/home/adam>mv x.s x.s1
    >> smtp:/home/adam>gcc -O2 -S x.c
    >> smtp:/home/adam>diff x.s x.s1
    >> 3d2
    >> < .p2align 4,,15
    >> 12c11
    >> < .section .rodata.str1.1,"aMS",@progbits,1
    >> ---
    >>> .section .rodata
    >> 16d14
    >> < .p2align 4,,15
    >> 28a27
    >>> call x
    >> smtp:/home/adam>cat x.c
    >> #include <stdio.h>
    >> void x() { };
    >> int main() {
    >> printf("123\n");
    >> x();
    >> }
    >> smtp:/home/adam>
    >>
    >> jak widzisz, kod wygenerowany przy optymalizacji -O2 nie wywoluje procedury
    >> pustej. Inne kompilatory maja tak samo IMHO.
    > rzekłeś wodu:
    > a) kompilatory (wątek chyba jest zainteresowany CPU)
    > b) funkcja lokalna w jednostce kompilacji (module) bo tylko wtedy
    > kompilator posiada tę wiedzę. Ciekaw będę twojego testu, czy
    > kwalifikatory przy funkcji x coś zmieniają (np. static ale i
    > niestandardowe) lub f. x jest zewnętrzna.
    >
    > W podanych warunkach minusów nie ma, tylko można zyskać.
    ... hmm, JIT moze miec ta wiedze. Bo jesli jest zewnetrza,
    to nie ma co liczyc na funkcje wrozki kompilatora;-)
    Z powazaniem
    Adam Przybyla

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj

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: