Betrachtet man die Disassembly eines C++ - Programms, sehe ich Funktionen wie _Z41__static_initialization_and_destruction_0ii.constprop.221
. Was bedeutet die constprop
in diesem Fall? Es scheint dem Aussehen des Suffix isra ähnlich zu sein (und wird manchmal kombiniert, beispielsweise .isra.124.constprop.226
), aber es bedeutet etwas anderes.Was bedeutet das GCC-Funktionssuffix .constprop?
11
A
Antwort
3
Von Quellcode Kommentare habe ich gelesen - sie zeigen Funktionen, die während der Optimierung geklont wurden.
EDIT: Dies kann die Antwort sein, vielleicht nicht.
Einfache Konstantenpropagation
Diese Datei implementiert Konstantenpropagation und Verschmelzung. Es sucht nach Anweisungen, die nur konstante Operanden enthalten und ersetzt sie durch einen konstanten Wert anstelle eines Befehls. Zum Beispiel:
add i32 1, 2
wird
i32 3
HINWEIS: Dieser Pass hat eine Gewohnheit, Definitionen tot sein. Es ist eine gute Idee, einen DIE-Befehl (Dead Instruction Elimination) irgendwann nach dem Ausführen dieses Passes auszuführen.
Verwandte Themen
- 1. Was bedeutet das Präfix:
- 2. Was bedeutet das - C#
- 3. Was bedeutet das konvertieren?
- 4. Was bedeutet das? javascript: //
- 5. Was bedeutet das? Diese
- 6. Was bedeutet "[das]" in C++ bedeutet
- 7. MySQL 1443: Was bedeutet das?
- 8. Was bedeutet das? "alienPosition = alien.position"
- 9. Was bedeutet das gs-Protokoll?
- 10. Was bedeutet das Schlüsselwort jsr?
- 11. Was bedeutet das externe Schlüsselwort?
- 12. Was bedeutet das Schlüsselwort "final"?
- 13. Schienen Protokolle. Was bedeutet das?
- 14. was bedeutet das Javascript bedeuten
- 15. Was bedeutet das Schlüsselwort KEY?
- 16. Was bedeutet das? (int &) a
- 17. Was bedeutet das mit 'type'
- 18. Go "& ^" Operator, was bedeutet das?
- 19. Was bedeutet das? Boolean Header
- 20. Was bedeutet das in Ruby?
- 21. C++ Was bedeutet das Prozentzeichen?
- 22. Was bedeutet das Suffix "h"?
- 23. $ .text (["someText"]) - Was bedeutet das?
- 24. Was bedeutet das() in Java?
- 25. C# Methodenparametersyntax - was bedeutet das?
- 26. XoffLimit, XonLimit - was bedeutet das?
- 27. Was bedeutet das Wort "wörtlich"?
- 28. Was bedeutet das offene Aufzeichnungsmuster?
- 29. Was bedeutet das Symbol "Das" in Scala
- 30. Was bedeutet das Fragezeichen in CoffeeScript?
Wollen Sie wissen, was passieren Optimierung durchgeführt wird? – nneonneo
Antwort aktualisiert ... – zaf
Cool. Es sieht so aus, als ob es eine konstante Interprozedur-Fortpflanzung sein könnte, da es mehrere Versionen der Funktionen erzeugt. Obwohl das Dokument für LLVM ist, muss eine ähnliche Sache für GCC gelten. – nneonneo