swift
Rework optimization of global variables
#65764
Merged

Rework optimization of global variables #65764

eeckstein merged 23 commits into swiftlang:main from eeckstein:globalopt
eeckstein
eeckstein eeckstein requested a review from atrick atrick 2 years ago
eeckstein
eeckstein
eeckstein handle debug_step in static initializers of globals and in the const …
85aa1c12
eeckstein Handle `builtin.once` in BottomUpFunctionOrder
3560360d
eeckstein alias analysis: compute more precise memory effects of `builtin "once"`
8a8a8952
eeckstein Swift Optimizer: add simplification for `cond_fail`
a8c9aae1
eeckstein Swift Optimizer: add simplification of `debug_step`
0a051240
eeckstein Swift Optimizer: add simplifications for `destructure_struct` and `de…
5a3ab6ee
eeckstein Swift Optimizer: add simplification for `tuple_extract`
88973a3c
eeckstein Swift Optimizer: constant fold builtins in the simplification passes
9b51e69d
eeckstein Swift Optimizer: simplify `builtin "once"`
c4096bc7
eeckstein Swift SIL: add some APIs for global variables
e95c6425
eeckstein make ModulePassContext conform to CustomStringConvertible
3e04b868
eeckstein Passmanager: fix a problem with skipping the inliner pass
260e68b1
eeckstein LICM: hoist `builtin "once"` calls out of loops
47a7acd4
eeckstein CSE: cse `builtin "once"` calls
56c09c3a
eeckstein StringOptimization: handle inlined global accessors.
19b828bc
eeckstein Inliner: don't distinguish between the "mid-level" and "late" inliner
ee2924fd
eeckstein WalkUtils: Don't treat `end_access` as leaf-use in the AddressDefUseW…
78ce13db
eeckstein Swift Optimizer: add APIs to copy from or to a global static initializer
2b117fd3
eeckstein Swift Optimizer: add the InitializeStaticGlobals function pass
6d6b94e4
eeckstein Swift Optimizer: add simplification for `load`
88a4a976
eeckstein Swift Optimizer: add the module pass ReadOnlyGlobalVariables
960ca70d
eeckstein Pass Pipeline: replace the old GlobalOpt with the new InitializeStati…
1e6511e7
eeckstein Optimizer: remove the now obsolete GlobalOpt pass
df7c71ba
eeckstein eeckstein force pushed to df7c71ba 2 years ago
eeckstein
eeckstein
eeckstein eeckstein merged af933b0e into main 2 years ago
eeckstein eeckstein deleted the globalopt branch 2 years ago
atrick
atrick commented on 2023-05-09
eeckstein
eeckstein

Login to write a write a comment.

Login via GitHub

Reviewers
Assignees
No one assigned
Labels
Milestone