WebAssembly / WebAssembly/binaryen

Change default inlining behavior to favor single-caller inlines

Offen
#2,139 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

help wanted
Vorherrschende Sprache
WebAssembly
Sterne
8.6k
Forks
885
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
69

Beschreibung

See FIXMEs introduced in: https://github.com/WebAssembly/binaryen/pull/2125

Essentially, the check for calls == 1 need to be moved first in that function, otherwise oneCallerInlineMaxSize can never be bigger than flexibleInlineMaxSize, which naturally it would make sense for it to be.

@kripken mentioned this change can only be made after it has been checked if it doesn't regress size/speed.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit den durch Pull Request 2125 eingeführten FIXME-Änderungen und finde die Inlining-Funktion mit der Prüfung calls == 1. Überprüfe die Änderung der Reihenfolge anhand von Messungen zu Größe und Geschwindigkeit, bevor du die Arbeit als abgeschlossen betrachtest; das Issue gibt keine bestimmte Test- oder Benchmark-Datei vor.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp, wasm
Bereich
compilers, performance
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.