You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add -opt:l:inline and -opt-inline-from, deprecate -opt:l:classpath
Introduce the optimizer level `-opt:l:inline` and a new setting
`-opt-inline-from` to control what classes we inline from.
`-opt:l:classpath` and `-opt:l:project` continue to work in the same
way, with a deprecation warning.
valboxUnbox=Choice("box-unbox", "Eliminate box-unbox pairs within the same method (also tuples, xRefs, value class instances). Enables unreachable-code.")
235
235
valnullnessTracking=Choice("nullness-tracking", "Track nullness / non-nullness of local variables and apply optimizations.")
236
236
valclosureInvocations=Choice("closure-invocations" , "Rewrite closure invocations to the implementation method.")
237
-
valinlineProject=Choice("inline-project", "Inline only methods defined in the files being compiled. Enables unreachable-code.")
238
-
valinlineGlobal=Choice("inline-global", "Inline methods from any source, including classfiles on the compile classpath. Enables unreachable-code.")
237
+
valinline=Choice("inline", "Inline method invocations according to -Yopt-inline-heuristics and -opt-inlnie-from.")
239
238
240
239
// note: unlike the other optimizer levels, "l:none" appears up in the `opt.value` set because it's not an expanding option (expandsTo is empty)
vallProject=Choice("l:project", "Enable cross-method optimizations within the current project: "+ projectChoices.mkString("", ",", "."), expandsTo = projectChoices)
"Classfile name patterns from which to allow inlining. ** = anything, * = package or class name, ! to exclude. Example: scala.**:!scala.Predef$:corp.*.util.*:corp.**.*Util*",
0 commit comments