Beim Betrachten eines bugfix im LLVM-Quellcode stieß ich auf den Begriff "virtueller Abschnitt" und fragte mich, was es bedeutete.Was ist ein virtueller LLVM-Abschnitt im Kontext von Objektdateien?
Ich habe versucht, ein paar verschiedene Begriffe zu googeln und den Quellcode weiter zu durchsuchen, aber alles, was ich gefunden habe, war, dass die Implementierungen für jedes Objekt Dateiformat isSectionVirtual
Member-Funktion auszudrücken scheinen, dass ein Abschnitt ist virtuell, wenn es keinen Inhalt hat (B. ein .bss-Abschnitt, aber der Quellcode drückt klar aus, dass dies zwei verschiedene Konzepte sind). Die Implementierung variiert abhängig vom jeweiligen Objektformat.
Ich bin ziemlich neu zu verstehen, die Innereien von Objektdateien, so dass ich nicht sicher bin, ob dies eine LLVM-Sache oder ein allgemeineres Konzept außerhalb von LLVM ist.
Könnte mir bitte jemand sagen, was ein virtueller Bereich in einer Objektdatei ist?
Sicherlich zeigen die separaten Überprüfungen, dass es sich tatsächlich um unterschiedliche Konzepte handelt? Sonst gäbe es nur "isBS" und "isVirtual" müsste nicht existieren. Danke für Ihre Eingabe! – OMGtechy
@OMGtechy Ich aktualisierte die Antwort. – Abyx
Danke, das ist viel besser! – OMGtechy