mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Add a stand-alone generic specializer pass.
Begin unbundling devirtualization, specialization, and inlining by recreating the stand-alone generic specializer pass. I've added a use of the pass to the pipeline, but this is almost certainly not going to be the final location of where it runs. It's primarily there to ensure this code gets exercised. Since this is running prior to inlining, it changes the order that some functions are specialized in, which means differences in the order of output of one of the tests (one which similarly changed when devirtualization, specialization, and inlining were bundled together).
This commit is contained in:
@@ -104,6 +104,8 @@ PASS(RedundantLoadElimination, "redundant-load-elim",
|
||||
"Multiple basic block redundant load elimination")
|
||||
PASS(DeadStoreElimination, "dead-store-elim",
|
||||
"Multiple basic block dead store elimination")
|
||||
PASS(GenericSpecializer, "generic-specializer",
|
||||
"Specialization of generic functions by static types")
|
||||
PASS(GlobalOpt, "global-opt",
|
||||
"Global variable optimizations")
|
||||
PASS(GlobalPropertyOpt, "global-property-opt",
|
||||
|
||||
Reference in New Issue
Block a user