-
Data: 2009-07-26 16:23:51
Temat: Re: CPU nie wykonujący pustych procedur
Od: Adam Przybyla <a...@r...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]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. Z powazaniem
Adam Przybyla
Następne wpisy z tego wątku
- 26.07.09 16:39 Jacek Czerwinski
- 26.07.09 16:48 Adam Przybyla
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-26 Zasilacz USB na ścianę.
- 2025-02-26 Błonie => Specjalista ds. public relations <=
- 2025-02-26 Zielonka => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-26 Warszawa => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-02-26 Białystok => Data Engineer (Tech Leader) <=
- 2025-02-26 Kraków => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-02-26 Kraków => Business Development Manager - Network and Network Security
- 2025-02-26 Warszawa => Młodszy Specjalista ds. wsparcia sprzedaży <=
- 2025-02-26 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-02-26 Warszawa => Sales Assistant <=
- 2025-02-26 Rzeszów => International Freight Forwarder <=
- 2025-02-26 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-26 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-26 Warszawa => Gen AI Engineer <=
- 2025-02-26 Gdańsk => Specjalista ds. Sprzedaży <=