Linux: Experimentelle Unterstützung für LTO vorgestellt

  • Ersteller Ersteller newsbot
  • Erstellt am Erstellt am
newsbot

newsbot

RSS Feed
Mit einer Serie von Patches hat Andi Kleen den Kernel um eine Unterstützung der Link Time-Optimierung (LTO) des GCC erweitert. Der Kernel-Entwickler verspricht durch die Neuerungen eine Steigerung der Geschwindigkeit. Doch auch Regressionen sich nicht ausgeschlossen.

Weiterlesen...
 
Als Beispiel kann die Optimierung von Funktionsaufrufen gelten. So weiß beispielsweise der der Compiler erst beim Linken, ob Funktionen, die nicht als static markiert wurden, vielleicht doch nie aufgerufen werden. Entsprechend kann der Linker dann reagieren, den generierten Code vereinfachen und beispielsweise unnötige Stack-Operationen eliminieren.
PHP:
#include <stdio.h>

void Foo(void)
{
    printf("Foo\n");
}

void Bar(void)
{
    printf("Bar\n");
}

int main(int argc, char *argv[])
{
    Foo();
    return 0;
}
Code:
$ gcc -o main main.c
$ nm main | grep Bar
0000000000400544 t Bar
$
Code:
$ gcc [B]-ffunction-sections -Wl,--gc-sections[/B] -o main main.c
$ nm main | grep Bar
$
Hhmm, funktioniert auch mit static deklarierten Funktionen...
 
Zuletzt bearbeitet:

Ähnliche Themen

Ferdium 7.0.0: Multi-Messenger-Plattform geht EOL für macOS 10.15

Tux sieht rot: Linux Kernel 6.11 mit zahlreichen Neuerungen für AMD

Linux News der Woche: CachyOS mit Kernel-Optimierung, Asahi Remix 41 für Apple

Linux News der Woche: Radeon für Loongson, Mesa 23.4.0, Brennpunkt Dateisysteme

Linux Kernel 6.7 mit BCacheFS: Updates für (i)GPUs von Nvidia und Intel, Itanium ist raus

Zurück
Oben