36 Kommentare (36 Kommentare)1 Reaktion (1 Reaktion)1 zugewiesene Person (1 zugewiesene Person)C++10.782 Forks (10.782 Forks)batch import
floating-pointgood first issuellvm:instcombinemissed-optimization
Repository-Metriken
- Stars
- 26.378 Sterne (26.378 Sterne)
- PR-Merge-Metriken
- PR-Metriken ausstehend (PR-Metriken ausstehend)
Contributor Guide
- Research-Richtung
- Das Problem zeigt eine verpasste Faltung von (X * 0.0) * Konstante zu X * 0.0. Der alive2 Link bestätigt, dass die Transformation korrekt ist. Untersuche den LLVM InstCombine Pass, insbesondere den Code, der die fmul Faltung behandelt. Die relevanten Dateien befinden sich wahrscheinlich in llvm/lib/Transforms/InstCombine/InstructionCombining.cpp oder InstCombineMulDivRem.cpp. Es gibt einen Zugewiesenen, aber keinen verknüpften PR. Erforsche die vorhandenen fmul mit Null Faltungsmuster und erweitere sie, um den Fall zu behandeln, in dem eine Multiplikation mit einer Konstanten auf eine Multiplikation mit Null folgt. Teste die Korrektur mit dem bereitgestellten IR Beispiel.
- Tech Stack
- Keine
- Domain
- backend
- Issue Type
- Fehler
- Voraussetzungen
- GitC++LLVM basics