Baseline profiles for compose should be derived using benchmarks.
* Add a benchmark `SmallListBaselineProfile`.
* Updated baseline profile rules.
Test: Ran `SmallListStartupBenchmark` with baseline profiles.
```
SmallListStartupBenchmark_startup[startup=COLD,compilation=BaselineProfile]
startupMs min 344.2, median 351.6, max 371.1
timeToInitialDisplayMs min 342.3, median 349.7, max 369.3
SmallListStartupBenchmark_startup[startup=COLD,compilation=BaselineProfile]
startupMs min 319.9, median 333.1, max 342.1
timeToInitialDisplayMs min 318.0, median 331.1, max 340.2
```
Change-Id: Ie207fcb57fcca218afe5465229b53d37c5a91c24
Bug: b/232255244
diff --git a/compose/animation/animation-core/src/androidMain/baseline-prof.txt b/compose/animation/animation-core/src/androidMain/baseline-prof.txt
index cc79ea0..9b66d25 100644
--- a/compose/animation/animation-core/src/androidMain/baseline-prof.txt
+++ b/compose/animation/animation-core/src/androidMain/baseline-prof.txt
@@ -2,7 +2,9 @@
# =============================================
# In practice it seems like almost every class in animation/core ends up getting loaded in even a
# relatively small sample, and most end up getting marked as "HSP". Since Animation is a high value
-# target for performance (fade in, scroll, etc) we are going to be liberal in the animation profile
+# target for performance - fade in, scroll, etc we are going to be liberal in the animation profile
# rules and just mark the entire module.
-HSPLandroidx/compose/animation/core/**;->**(**)**
-Landroidx/compose/animation/core/**;
\ No newline at end of file
+
+HSPLandroidx/compose/animation/core/**->**(**)**
+
+Landroidx/compose/animation/core/**;
diff --git a/compose/animation/animation/src/androidMain/baseline-prof.txt b/compose/animation/animation/src/androidMain/baseline-prof.txt
index 3abf971..6bb029b 100644
--- a/compose/animation/animation/src/androidMain/baseline-prof.txt
+++ b/compose/animation/animation/src/androidMain/baseline-prof.txt
@@ -19,4 +19,6 @@
HSPLandroidx/compose/animation/ChangeSize;->**(**)**
HSPLandroidx/compose/animation/CrossfadeAnimationItem;->**(**)**
HSPLandroidx/compose/animation/EnterExitTransitionKt;->**(**)**
-Landroidx/compose/animation/*;
\ No newline at end of file
+HSPLandroidx/compose/animation/ColorVectorConverterKt**->**(**)**
+HSPLandroidx/compose/animation/SingleValueAnimationKt;->**(**)**
+Landroidx/compose/animation/*;
diff --git a/compose/foundation/foundation/src/androidMain/baseline-prof.txt b/compose/foundation/foundation/src/androidMain/baseline-prof.txt
index f0c2b49..56b9d74 100644
--- a/compose/foundation/foundation/src/androidMain/baseline-prof.txt
+++ b/compose/foundation/foundation/src/androidMain/baseline-prof.txt
@@ -9,33 +9,51 @@
HSPLandroidx/compose/foundation/CanvasKt;->**(**)**
HSPLandroidx/compose/foundation/Clickable**->**(**)**
HSPLandroidx/compose/foundation/Focusable**->**(**)**
+HSPLandroidx/compose/foundation/FocusedBoundsKt**->**(**)**
+HSPLandroidx/compose/foundation/FocusedBoundsObserverModifier**->**(**)**
+HSPLandroidx/compose/foundation/HoverableKt**->**(**)**
HSPLandroidx/compose/foundation/ImageKt**->**(**)**
HSPLandroidx/compose/foundation/IndicationKt**->**(**)**
HSPLandroidx/compose/foundation/IndicationModifier;->**(**)**
+HSPLandroidx/compose/foundation/MutatePriority;->**(**)**
HSPLandroidx/compose/foundation/MutatorMutex;->**(**)**
+HSPLandroidx/compose/foundation/PinnableParentConsumer;->**(**)**
HSPLandroidx/compose/foundation/ScrollKt**->**(**)**
HSPLandroidx/compose/foundation/ScrollState**->**(**)**
HSPLandroidx/compose/foundation/ScrollingLayoutModifier**->**(**)**
#
# Include everything inside of the gestures namespace
-HSPLandroidx/compose/foundation/gestures/**;->**(**)**
+HSPLandroidx/compose/foundation/gestures/**->**(**)**
#
# Include everything inside of the interaction namespace
-HSPLandroidx/compose/foundation/interaction/*;->**(**)**
+HSPLandroidx/compose/foundation/interaction/*->**(**)**
#
+# Include everything inside of the layout namespaces
+HSPLandroidx/compose/foundation/layout/**->**(**)**
+
# Include everything inside of the lazy namespaces
-HSPLandroidx/compose/foundation/lazy/**;->**(**)**
+HSPLandroidx/compose/foundation/lazy/**->**(**)**
+
+# Include everything inside relocation namespace
+HSPLandroidx/compose/foundation/relocation/**->**(**)**
+
+# Include everything inside selection namespace
+HSPLandroidx/compose/foundation/selection/**->**(**)**
+
#
# common shape classes
HSPLandroidx/compose/foundation/shape/CornerBasedShape;->**(**)**
-HSPLandroidx/compose/foundation/shape/RoundedCornerShape;->**(**)**
HSPLandroidx/compose/foundation/shape/CornerSizeKt;->**(**)**
HSPLandroidx/compose/foundation/shape/DpCornerSize;->**(**)**
+HSPLandroidx/compose/foundation/shape/RoundedCornerShape;->**(**)**
+HSPLandroidx/compose/foundation/shape/PercentCornerSize;->**(**)**
#
+
# Include everything inside of the text namespace
-HSPLandroidx/compose/foundation/text/*;->**(**)**
+HSPLandroidx/compose/foundation/text/*->**(**)**
HSPLandroidx/compose/foundation/text/selection/SimpleLayoutKt**->**(**)**
HSPLandroidx/compose/foundation/text/selection/TextFieldSelectionManager;->**(**)**
+
#
# Include all of foundation
-Landroidx/compose/foundation/**;
\ No newline at end of file
+Landroidx/compose/foundation/**;
diff --git a/compose/integration-tests/macrobenchmark-target/build.gradle b/compose/integration-tests/macrobenchmark-target/build.gradle
index 0c1ddaf..167f64b 100644
--- a/compose/integration-tests/macrobenchmark-target/build.gradle
+++ b/compose/integration-tests/macrobenchmark-target/build.gradle
@@ -6,13 +6,13 @@
}
android {
-
namespace "androidx.compose.integration.macrobenchmark.target"
buildTypes {
release {
minifyEnabled true
shrinkResources true
- proguardFiles getDefaultProguardFile("proguard-android-optimize.txt")
+ proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"),
+ 'proguard-rules.pro'
}
}
}
diff --git a/compose/integration-tests/macrobenchmark-target/proguard-rules.pro b/compose/integration-tests/macrobenchmark-target/proguard-rules.pro
new file mode 100644
index 0000000..0674e77
--- /dev/null
+++ b/compose/integration-tests/macrobenchmark-target/proguard-rules.pro
@@ -0,0 +1 @@
+-dontobfuscate
\ No newline at end of file
diff --git a/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/SmallListBaselineProfile.kt b/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/SmallListBaselineProfile.kt
new file mode 100644
index 0000000..3c95a75
--- /dev/null
+++ b/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/SmallListBaselineProfile.kt
@@ -0,0 +1,71 @@
+/*
+ * Copyright 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package androidx.compose.integration.macrobenchmark
+
+import android.content.Intent
+import android.graphics.Point
+import androidx.benchmark.macro.ExperimentalBaselineProfilesApi
+import androidx.benchmark.macro.junit4.BaselineProfileRule
+import androidx.test.filters.LargeTest
+import androidx.test.filters.SdkSuppress
+import androidx.test.uiautomator.By
+import androidx.test.uiautomator.Until
+import org.junit.Rule
+import org.junit.Test
+
+@LargeTest
+@OptIn(ExperimentalBaselineProfilesApi::class)
+@SdkSuppress(minSdkVersion = 28)
+class SmallListBaselineProfile {
+
+ @get:Rule
+ val baselineProfileRule = BaselineProfileRule()
+
+ @Test
+ fun generateProfile() {
+ baselineProfileRule.collectBaselineProfile(
+ packageName = PACKAGE_NAME
+ ) {
+ val intent = Intent()
+ intent.apply {
+ setPackage(packageName)
+ action =
+ "androidx.compose.integration.macrobenchmark.target.LAZY_COLUMN_ACTIVITY"
+ putExtra("ITEM_COUNT", 200)
+ }
+ startActivityAndWait(intent)
+ val lazyColumn =
+ device.findObject(By.desc(CONTENT_DESCRIPTION))
+ // Setting a gesture margin is important otherwise gesture nav is triggered.
+ lazyColumn.setGestureMargin(device.displayWidth / 5)
+ for (i in 1..10) {
+ // From center we scroll 2/3 of it which is 1/3 of the screen.
+ lazyColumn.drag(Point(0, lazyColumn.visibleCenter.y / 3))
+ device.wait(
+ Until.findObject(By.desc(COMPOSE_IDLE)),
+ 3000
+ )
+ }
+ }
+ }
+
+ companion object {
+ private const val PACKAGE_NAME = "androidx.compose.integration.macrobenchmark.target"
+ private const val CONTENT_DESCRIPTION = "IamLazy"
+ private const val COMPOSE_IDLE = "COMPOSE-IDLE"
+ }
+}
diff --git a/compose/material/material-ripple/src/androidMain/baseline-prof.txt b/compose/material/material-ripple/src/androidMain/baseline-prof.txt
index 2533c51..9b5a81a 100644
--- a/compose/material/material-ripple/src/androidMain/baseline-prof.txt
+++ b/compose/material/material-ripple/src/androidMain/baseline-prof.txt
@@ -2,10 +2,19 @@
# =============================================
HSPLandroidx/compose/material/ripple/AndroidRippleIndicationInstance;->**(**)**
HSPLandroidx/compose/material/ripple/PlatformRipple;->**(**)**
+HSPLandroidx/compose/material/ripple/DebugRippleTheme;->**(**)**
HSPLandroidx/compose/material/ripple/Ripple;->**(**)**
+HSPLandroidx/compose/material/ripple/RippleAlpha;->**(**)**
+HSPLandroidx/compose/material/ripple/RippleContainer;->**(**)**
+HSPLandroidx/compose/material/ripple/RippleHostMap;->**(**)**
HSPLandroidx/compose/material/ripple/UnprojectedRipple;->**(**)**
HSPLandroidx/compose/material/ripple/RippleHostView;->**(**)**
+HSPLandroidx/compose/material/ripple/RippleIndicationInstance;->**(**)**
+HSPLandroidx/compose/material/ripple/RippleKt;->**(**)**
HSPLandroidx/compose/material/ripple/RippleHostMap;->**(**)**
HSPLandroidx/compose/material/ripple/RippleContainer;->**(**)**
HSPLandroidx/compose/material/ripple/RippleAlpha;->**(**)**
-Landroidx/compose/material/ripple/*;
\ No newline at end of file
+HSPLandroidx/compose/material/ripple/RippleThemeKt**->**(**)**
+HSPLandroidx/compose/material/ripple/StateLayer;->**(**)**
+
+Landroidx/compose/material/ripple/*;
diff --git a/compose/material/material/src/androidMain/baseline-prof.txt b/compose/material/material/src/androidMain/baseline-prof.txt
index e98ec55..4264e64 100644
--- a/compose/material/material/src/androidMain/baseline-prof.txt
+++ b/compose/material/material/src/androidMain/baseline-prof.txt
@@ -1,26 +1,42 @@
# Baseline profile rules for androidx.compose.material
# =============================================
+
+HSPLandroidx/compose/material/CardKt;->**(**)**
HSPLandroidx/compose/material/Colors;->**(**)**
+HSPLandroidx/compose/material/ColorsKt**->**(**)**
+HSPLandroidx/compose/material/CheckDrawingCache;->**(**)**
+HSPLandroidx/compose/material/CheckboxDefaults;->**(**)**
+HSPLandroidx/compose/material/DefaultCheckboxColors;->**(**)**
+HSPLandroidx/compose/material/CheckboxKt**->**(**)**
HSPLandroidx/compose/material/ButtonKt**->**(**)**
HSPLandroidx/compose/material/AppBarKt**->**(**)**
-HPLandroidx/compose/material/ProgressIndicatorKt;->**(**)**
-HPLandroidx/compose/material/IconKt;->**(**)**
-HSPLandroidx/compose/material/ContentAlpha;->**(**)**
+HSPLandroidx/compose/material/ProgressIndicatorKt;->**(**)**
+HSPLandroidx/compose/material/IconKt;->**(**)**
+HSPLandroidx/compose/material/ContentAlpha**->**(**)**
+HSPLandroidx/compose/material/ContentColorKt**->**(**)**
HSPLandroidx/compose/material/ComposableSingletons$**->**(**)**
+HSPLandroidx/compose/material/DefaultElevationOverlay;->**(**)**
+HSPLandroidx/compose/material/ElevationOverlayKt**->**(**)**
HSPLandroidx/compose/material/DrawerKt;->**(**)**
HSPLandroidx/compose/material/DrawerState;->**(**)**
HSPLandroidx/compose/material/FadeInFadeOutState;->**(**)**
HSPLandroidx/compose/material/FabPosition;->**(**)**
HSPLandroidx/compose/material/FloatingActionButtonKt**->**(**)**
HSPLandroidx/compose/material/MaterialTheme;->**(**)**
+HSPLandroidx/compose/material/MinimumTouchTargetModifier;->**(**)**
HSPLandroidx/compose/material/MaterialTextSelectionColorsKt;->**(**)**
HSPLandroidx/compose/material/MaterialRippleTheme;->**(**)**
HSPLandroidx/compose/material/ScaffoldKt**->**(**)**
+HSPLandroidx/compose/material/Shapes**->**(**)**
HSPLandroidx/compose/material/SnackbarHostKt**->**(**)**
HSPLandroidx/compose/material/SurfaceKt**->**(**)**
HSPLandroidx/compose/material/SwipeableKt**->**(**)**
HSPLandroidx/compose/material/SwipeableState**->**(**)**
+HSPLandroidx/compose/material/SwitchDefaults;->**(**)**
HSPLandroidx/compose/material/TextKt**->**(**)**
+HSPLandroidx/compose/material/TouchTargetKt**->**(**)**
HSPLandroidx/compose/material/Typography;->**(**)**
-# Prioritize only the top level classes for material. (Notably, this ignores icons)
-Landroidx/compose/material/*;
\ No newline at end of file
+
+# Prioritize only the top level classes for material. Notably, this ignores icons
+
+Landroidx/compose/material/*;
diff --git a/compose/runtime/runtime/src/androidMain/baseline-prof.txt b/compose/runtime/runtime/src/androidMain/baseline-prof.txt
index bd32703..1afd49d 100644
--- a/compose/runtime/runtime/src/androidMain/baseline-prof.txt
+++ b/compose/runtime/runtime/src/androidMain/baseline-prof.txt
@@ -15,6 +15,7 @@
HSPLandroidx/compose/runtime/Applier$DefaultImpls;->**(**)**
HSPLandroidx/compose/runtime/BroadcastFrameClock**->**(**)**
HSPLandroidx/compose/runtime/ComposablesKt;->**(**)**
+HSPLandroidx/compose/runtime/ComposableSingletons**->**(**)**
HSPLandroidx/compose/runtime/ComposerImpl**->**(**)**
HSPLandroidx/compose/runtime/ComposerKt**->**(**)**
HSPLandroidx/compose/runtime/CompositionContext;->**(**)**
@@ -25,6 +26,7 @@
HSPLandroidx/compose/runtime/CompositionScopedCoroutineScopeCanceller;->**(**)**
HSPLandroidx/compose/runtime/DerivedSnapshotState**->**(**)**
HSPLandroidx/compose/runtime/DisposableEffectImpl;->**(**)**
+HSPLandroidx/compose/runtime/DisposableEffectScope;->**(**)**
HSPLandroidx/compose/runtime/DynamicProvidableCompositionLocal;->**(**)**
HSPLandroidx/compose/runtime/EffectsKt;->**(**)**
HSPLandroidx/compose/runtime/GroupInfo;->**(**)**
@@ -44,6 +46,7 @@
HSPLandroidx/compose/runtime/ProvidedValue;->**(**)**
HSPLandroidx/compose/runtime/RecomposeScopeImpl;->**(**)**
HSPLandroidx/compose/runtime/Recomposer**->**(**)**
+HSPLandroidx/compose/runtime/ReferentialEqualityPolicy;->**(**)**
HSPLandroidx/compose/runtime/SkippableUpdater;->**(**)**
HSPLandroidx/compose/runtime/SlotReader;->**(**)**
HSPLandroidx/compose/runtime/SlotTable;->**(**)**
@@ -60,6 +63,10 @@
HSPLandroidx/compose/runtime/internal/ComposableLambdaImpl**->**(**)**
HSPLandroidx/compose/runtime/internal/ComposableLambdaKt;->**(**)**
HSPLandroidx/compose/runtime/ActualJvm_jvmKt;->identityHashCode(Ljava/lang/Object;)I
+HSPLandroidx/compose/runtime/ActualAndroid**->**(**)**
+HSPLandroidx/compose/runtime/tooling/**->**(**)**
+HSPLandroidx/compose/runtime/tracing/**->**(**)**
+
#
# Snapshot related stuff
HSPLandroidx/compose/runtime/snapshots/MutableSnapshot;->**(**)**
@@ -942,4 +949,4 @@
HSPLkotlinx/coroutines/sync/MutexKt;->access$getEMPTY_LOCKED$p()Lkotlinx/coroutines/sync/Empty;
HSPLkotlinx/coroutines/sync/MutexKt;->access$getEMPTY_UNLOCKED$p()Lkotlinx/coroutines/sync/Empty;
HSPLkotlinx/coroutines/sync/MutexKt;->access$getLOCKED$p()Lkotlinx/coroutines/internal/Symbol;
-HSPLkotlinx/coroutines/sync/MutexKt;->access$getUNLOCKED$p()Lkotlinx/coroutines/internal/Symbol;
\ No newline at end of file
+HSPLkotlinx/coroutines/sync/MutexKt;->access$getUNLOCKED$p()Lkotlinx/coroutines/internal/Symbol;
diff --git a/compose/ui/ui-graphics/src/androidMain/baseline-prof.txt b/compose/ui/ui-graphics/src/androidMain/baseline-prof.txt
index 7952c8a..9c0f803 100644
--- a/compose/ui/ui-graphics/src/androidMain/baseline-prof.txt
+++ b/compose/ui/ui-graphics/src/androidMain/baseline-prof.txt
@@ -9,12 +9,15 @@
HSPLandroidx/compose/ui/graphics/AndroidPaint_androidKt;->**(**)**
HSPLandroidx/compose/ui/graphics/AndroidPath;->**(**)**
HSPLandroidx/compose/ui/graphics/AndroidPath_androidKt;->**(**)**
+HSPLandroidx/compose/ui/graphics/AndroidPathMeasure;->**(**)**
HSPLandroidx/compose/ui/graphics/BlendMode**->**(**)**
HSPLandroidx/compose/ui/graphics/BlockGraphicsLayerModifier**->**(**)**
HSPLandroidx/compose/ui/graphics/Brush;->**(**)**
HSPLandroidx/compose/ui/graphics/Canvas$DefaultImpls;->**(**)**
HSPLandroidx/compose/ui/graphics/CanvasHolder;->**(**)**
HSPLandroidx/compose/ui/graphics/CanvasKt;->**(**)**
+HSPLandroidx/compose/ui/graphics/CanvasUtils;->**(**)**
+HSPLandroidx/compose/ui/graphics/CanvasZHelper**->**(**)**
HSPLandroidx/compose/ui/graphics/ClipOp**->**(**)**
HSPLandroidx/compose/ui/graphics/Color**->**(**)**
HSPLandroidx/compose/ui/graphics/ColorFilter**->**(**)**
diff --git a/compose/ui/ui-text/src/androidMain/baseline-prof.txt b/compose/ui/ui-text/src/androidMain/baseline-prof.txt
index 13ae261..d48d346 100644
--- a/compose/ui/ui-text/src/androidMain/baseline-prof.txt
+++ b/compose/ui/ui-text/src/androidMain/baseline-prof.txt
@@ -1,5 +1,6 @@
# Baseline profile rules for androidx.compose.ui.text
# =============================================
+
HSPLandroidx/compose/ui/text/AnnotatedString**->**(**)**
HSPLandroidx/compose/ui/text/MultiParagraph;->**(**)**
HSPLandroidx/compose/ui/text/MultiParagraphIntrinsics**->**(**)**
@@ -8,6 +9,7 @@
HSPLandroidx/compose/ui/text/ParagraphStyle;->**(**)**
HSPLandroidx/compose/ui/text/ParagraphKt;->**(**)**
HSPLandroidx/compose/ui/text/SpanStyle;->**(**)**
+HSPLandroidx/compose/ui/text/SpanStyleKt;->**(**)**
HSPLandroidx/compose/ui/text/TextLayoutInput;->**(**)**
HSPLandroidx/compose/ui/text/TextLayoutResult;->**(**)**
HSPLandroidx/compose/ui/text/TextPainter;->**(**)**
@@ -20,21 +22,35 @@
HSPLandroidx/compose/ui/text/android/StaticLayoutParams;->**(**)**
HSPLandroidx/compose/ui/text/android/TextAlignmentAdapter;->**(**)**
HSPLandroidx/compose/ui/text/android/TextLayout;->**(**)**
+HSPLandroidx/compose/ui/text/android/TextLayoutKt;->**(**)**
HSPLandroidx/compose/ui/text/android/style/BaselineShiftSpan;->**(**)**
HSPLandroidx/compose/ui/text/android/style/LetterSpacingSpanPx;->**(**)**
HSPLandroidx/compose/ui/text/android/style/LineHeightSpan;->**(**)**
HSPLandroidx/compose/ui/text/android/style/TypefaceSpan;->**(**)**
+HSPLandroidx/compose/ui/text/caches/LruCache;->**(**)**
+HSPLandroidx/compose/ui/text/caches/SimpleArrayMap;->**(**)**
+HSPLandroidx/compose/ui/text/font/AndroidFontLoader;->**(**)**
+HSPLandroidx/compose/ui/text/font/AndroidFontResolveInterceptor**->**(**)**
+HSPLandroidx/compose/ui/text/font/AsyncTypefaceCache;->**(**)**
HSPLandroidx/compose/ui/text/font/DefaultFontFamily;->**(**)**
HSPLandroidx/compose/ui/text/font/FileBasedFontFamily;->**(**)**
HSPLandroidx/compose/ui/text/font/FontFamily**->**(**)**
+HSPLandroidx/compose/ui/text/font/FontFamilyResolverImpl**->**(**)**
+HSPLandroidx/compose/ui/text/font/FontListFontFamilyTypefaceAdapter**->**(**)**
HSPLandroidx/compose/ui/text/font/FontKt;->**(**)**
HSPLandroidx/compose/ui/text/font/FontListFontFamily;->**(**)**
HSPLandroidx/compose/ui/text/font/FontMatcher;->**(**)**
HSPLandroidx/compose/ui/text/font/FontStyle;->**(**)**
+HSPLandroidx/compose/ui/text/font/FontSynthesis;->**(**)**
HSPLandroidx/compose/ui/text/font/FontWeight**->**(**)**
+HSPLandroidx/compose/ui/text/font/PlatformFontFamilyTypefaceAdapter;->**(**)**
+HSPLandroidx/compose/ui/text/font/PlatformTypefacesApi28;->**(**)**
HSPLandroidx/compose/ui/text/font/GenericFontFamily;->**(**)**
+HSPLandroidx/compose/ui/text/font/SystemFontFamily;->**(**)**
+HSPLandroidx/compose/ui/text/font/TypefaceRequest**->**(**)**
HSPLandroidx/compose/ui/text/font/ResourceFont;->**(**)**
HSPLandroidx/compose/ui/text/font/SystemFontFamily;->**(**)**
+HSPLandroidx/compose/ui/text/input/InputMethodManagerImpl**->**(**)**
HSPLandroidx/compose/ui/text/input/EditProcessor;->**(**)**
HSPLandroidx/compose/ui/text/input/EditingBuffer;->**(**)**
HSPLandroidx/compose/ui/text/input/ImeAction**->**(**)**
@@ -45,24 +61,31 @@
HSPLandroidx/compose/ui/text/input/TransformedText;->**(**)**
HSPLandroidx/compose/ui/text/intl/AndroidLocale**->**(**)**
HSPLandroidx/compose/ui/text/intl/Locale**->**(**)**
+HSPLandroidx/compose/ui/text/platform/AndroidAccessibility**->**(**)**
HSPLandroidx/compose/ui/text/platform/AndroidParagraph;->**(**)**
HSPLandroidx/compose/ui/text/platform/AndroidParagraphIntrinsics;->**(**)**
HSPLandroidx/compose/ui/text/platform/AndroidParagraphIntrinsics_androidKt;->**(**)**
HSPLandroidx/compose/ui/text/platform/AndroidParagraph_androidKt;->**(**)**
HSPLandroidx/compose/ui/text/platform/AndroidTextPaint;->**(**)**
+HSPLandroidx/compose/ui/text/platform/SynchronizedObject;->**(**)**
+HSPLandroidx/compose/ui/text/platform/TypefaceDirtyTracker;->**(**)**
HSPLandroidx/compose/ui/text/platform/TypefaceAdapter;->**(**)**
HSPLandroidx/compose/ui/text/platform/TypefaceAdapterHelperMethods;->**(**)**
HSPLandroidx/compose/ui/text/platform/extensions/SpanRange;->**(**)**
HSPLandroidx/compose/ui/text/platform/extensions/SpannableExtensions_androidKt;->**(**)**
HSPLandroidx/compose/ui/text/platform/extensions/TextPaintExtensions_androidKt;->**(**)**
HSPLandroidx/compose/ui/text/style/BaselineShift**->**(**)**
+HSPLandroidx/compose/ui/text/style/ColorStyle;->**(**)**
HSPLandroidx/compose/ui/text/style/ResolvedTextDirection;->**(**)**
HSPLandroidx/compose/ui/text/style/TextAlign;->**(**)**
HSPLandroidx/compose/ui/text/style/TextDecoration;->**(**)**
+HSPLandroidx/compose/ui/text/style/TextDrawStyle**->**(**)**
HSPLandroidx/compose/ui/text/style/TextDirection;->**(**)**
HSPLandroidx/compose/ui/text/style/TextGeometricTransform;->**(**)**
HSPLandroidx/compose/ui/text/style/TextIndent;->**(**)**
-Landroidx/compose/ui/text/**
+
+Landroidx/compose/ui/text/**;
+
#
# We rely heavily on some text methods in kotlin stdlib, so makes sense to include them here
HSPLkotlin/text/CharsKt__CharJVMKt;->isWhitespace(C)Z
@@ -104,4 +127,4 @@
HSPLkotlin/text/StringsKt__StringsKt;->substringAfterLast(Ljava/lang/String;CLjava/lang/String;)Ljava/lang/String;
HSPLkotlin/text/StringsKt__StringsKt;->trim(Ljava/lang/String;[C)Ljava/lang/String;
HSPLkotlin/text/StringsKt___StringsKt;->first(Ljava/lang/CharSequence;)C
-HSPLkotlin/text/StringsKt___StringsKt;->slice(Ljava/lang/String;Lkotlin/ranges/IntRange;)Ljava/lang/String;
\ No newline at end of file
+HSPLkotlin/text/StringsKt___StringsKt;->slice(Ljava/lang/String;Lkotlin/ranges/IntRange;)Ljava/lang/String;
diff --git a/compose/ui/ui-unit/src/androidMain/baseline-prof.txt b/compose/ui/ui-unit/src/androidMain/baseline-prof.txt
index 860e61e..b4ee50a 100644
--- a/compose/ui/ui-unit/src/androidMain/baseline-prof.txt
+++ b/compose/ui/ui-unit/src/androidMain/baseline-prof.txt
@@ -2,4 +2,4 @@
# =============================================
# everything in unit is relatively small and in the hot path, so we just add everything
HSPLandroidx/compose/ui/unit/**->**(**)**
-Landroidx/compose/ui/unit/**;
\ No newline at end of file
+Landroidx/compose/ui/unit/**
diff --git a/compose/ui/ui-util/src/androidMain/baseline-prof.txt b/compose/ui/ui-util/src/androidMain/baseline-prof.txt
index 21a0cfc..6c402b9 100644
--- a/compose/ui/ui-util/src/androidMain/baseline-prof.txt
+++ b/compose/ui/ui-util/src/androidMain/baseline-prof.txt
@@ -1,4 +1,4 @@
# Baseline profile rules for androidx.compose.ui.util
# =============================================
HSPLandroidx/compose/ui/util/MathHelpersKt;->lerp(FFF)F
-Landroidx/compose/ui/util/MathHelpersKt;
\ No newline at end of file
+Landroidx/compose/ui/util/MathHelpersKt;
diff --git a/compose/ui/ui/src/androidMain/baseline-prof.txt b/compose/ui/ui/src/androidMain/baseline-prof.txt
index 3c19848..f063ec4 100644
--- a/compose/ui/ui/src/androidMain/baseline-prof.txt
+++ b/compose/ui/ui/src/androidMain/baseline-prof.txt
@@ -1,13 +1,20 @@
# Baseline profile rules for androidx.compose.ui
# =============================================
#
+# input
+HSPLandroidx/compose/ui/input/InputMode;->**(**)**
+HSPLandroidx/compose/ui/input/InputModeManagerImpl;->**(**)**
+HSPLandroidx/compose/ui/input/key/KeyInputModifier**->**(**)**
+
# nested scroll
HSPLandroidx/compose/ui/input/nestedscroll/NestedScrollDelegatingWrapper;->**(**)**
HSPLandroidx/compose/ui/input/nestedscroll/NestedScrollDispatcher**->**(**)**
HSPLandroidx/compose/ui/input/nestedscroll/NestedScrollModifier**->**(**)**
#
# pointer input
+HSPLandroidx/compose/ui/input/pointer/AwaitPointerEventScope**->**(**)**
HSPLandroidx/compose/ui/input/pointer/ConsumedData;->**(**)**
+HSPLandroidx/compose/ui/input/pointer/HistoricalChange;->**(**)**
HSPLandroidx/compose/ui/input/pointer/HitPathTracker;->**(**)**
HSPLandroidx/compose/ui/input/pointer/InternalPointerEvent;->**(**)**
HSPLandroidx/compose/ui/input/pointer/MotionEventAdapter;->**(**)**
@@ -30,12 +37,18 @@
HSPLandroidx/compose/ui/input/pointer/ProcessResult;->**(**)**
HSPLandroidx/compose/ui/input/pointer/PointerType;->**(**)**
HSPLandroidx/compose/ui/input/pointer/SuspendingPointerInputFilter**->**(**)**
+HSPLandroidx/compose/ui/input/pointer/util/ImpulseCalculator;->**(**)**
HSPLandroidx/compose/ui/input/pointer/util/Matrix;->**(**)**
HSPLandroidx/compose/ui/input/pointer/util/PointAtTime;->**(**)**
HSPLandroidx/compose/ui/input/pointer/util/PolynomialFit;->**(**)**
HSPLandroidx/compose/ui/input/pointer/util/Vector;->**(**)**
HSPLandroidx/compose/ui/input/pointer/util/VelocityEstimate;->**(**)**
HSPLandroidx/compose/ui/input/pointer/util/VelocityTracker;->**(**)**
+
+#
+# rotary
+HSPLandroidx/compose/ui/input/rotary/RotaryInputModifier**->**(**)**
+
#
# layout. include everything
HSPLandroidx/compose/ui/layout/**->**(**)**
@@ -46,46 +59,72 @@
# platform
HSPLandroidx/compose/ui/platform/AndroidComposeView**->**(**)**
HSPLandroidx/compose/ui/platform/AbstractComposeView**->**(**)**
+HSPLandroidx/compose/ui/platform/AndroidComposeViewAccessibilityDelegateCompat**->**(**)**
+HSPLandroidx/compose/ui/platform/AndroidComposeViewForceDarkMode**->**(**)**
+HSPLandroidx/compose/ui/platform/AndroidComposeViewVerificationHelperMethods**->**(**)**
HSPLandroidx/compose/ui/platform/AndroidComposeView_androidKt;->**(**)**
HSPLandroidx/compose/ui/platform/AndroidCompositionLocals_androidKt**->**(**)**
HSPLandroidx/compose/ui/platform/AndroidFontResourceLoader;->**(**)**
+HSPLandroidx/compose/ui/platform/AndroidTextToolbar;->**(**)**
HSPLandroidx/compose/ui/platform/AndroidUiDispatcher**->**(**)**
HSPLandroidx/compose/ui/platform/AndroidUiFrameClock**->**(**)**
+HSPLandroidx/compose/ui/platform/AndroidUriHandler;->**(**)**
+HSPLandroidx/compose/ui/platform/AndroidViewConfiguration;->**(**)**
+HSPLandroidx/compose/ui/platform/AndroidViewsHandler;->**(**)**
+HSPLandroidx/compose/ui/platform/ComposableSingletons**->**(**)**
+HSPLandroidx/compose/ui/platform/ComposeView**->**(**)**
HSPLandroidx/compose/ui/platform/CompositionLocalsKt**->**(**)**
HSPLandroidx/compose/ui/platform/DisposableSaveableStateRegistry;->**(**)**
HSPLandroidx/compose/ui/platform/DisposableSaveableStateRegistry_androidKt**->**(**)**
HSPLandroidx/compose/ui/platform/GlobalSnapshotManager**->**(**)**
+HSPLandroidx/compose/ui/platform/InspectableModifier**->**(**)**
HSPLandroidx/compose/ui/platform/InspectableValueKt$NoInspectorInfo$1;-><init>()V
HSPLandroidx/compose/ui/platform/InspectableValueKt;->getNoInspectorInfo()Lkotlin/jvm/functions/Function1;
HSPLandroidx/compose/ui/platform/InspectableValueKt;->isDebugInspectorInfoEnabled()Z
HSPLandroidx/compose/ui/platform/InspectorValueInfo;-><init>(Lkotlin/jvm/functions/Function1;)V
-HSPLandroidx/compose/ui/platform/RenderNodeLayer;->**(**)**
-HSPLandroidx/compose/ui/platform/RenderNodeApi**;->**(**)**
+HSPLandroidx/compose/ui/platform/InvertMatrixKt;->**(**)**
+HSPLandroidx/compose/ui/platform/LayerMatrixCache;->**(**)**
+HSPLandroidx/compose/ui/platform/MotionDurationScaleImpl;->**(**)**
+HSPLandroidx/compose/ui/platform/RenderNodeLayer**->**(**)**
+HSPLandroidx/compose/ui/platform/RenderNodeApi**->**(**)**
HSPLandroidx/compose/ui/platform/OutlineResolver;->**(**)**
HSPLandroidx/compose/ui/platform/RenderNodeMatrixCache;->**(**)**
+HSPLandroidx/compose/ui/platform/ViewCompositionStrategy**->**(**)**
HSPLandroidx/compose/ui/platform/ViewLayer;->**(**)**
+HSPLandroidx/compose/ui/platform/WeakCache;->**(**)**
+HSPLandroidx/compose/ui/platform/WindowInfoImpl;->**(**)**
HSPLandroidx/compose/ui/platform/WindowRecomposerPolicy**->**(**)**
HSPLandroidx/compose/ui/platform/WindowRecomposer_androidKt**->**(**)**
HSPLandroidx/compose/ui/platform/WrappedComposition**->**(**)**
-HSPLandroidx/compose/ui/res/StringResources_androidKt;->**(**)**
-HSPLandroidx/compose/ui/res/PainterResources_androidKt;->**(**)**
-HSPLandroidx/compose/ui/res/ImageResources_androidKt;->**(**)**
+HSPLandroidx/compose/ui/platform/WrapperRenderNodeLayerHelperMethods**->**(**)**
+HSPLandroidx/compose/ui/platform/Wrapper**->**(**)**
+HSPLandroidx/compose/ui/platform/accessibility/CollectionInfoKt;->**(**)**
#
# semantics
HSPLandroidx/compose/ui/semantics/AccessibilityAction;->**(**)**
+HSPLandroidx/compose/ui/semantics/CollectionInfo;->**(**)**
+HSPLandroidx/compose/ui/semantics/NodeLocationHolder;->**(**)**
+HSPLandroidx/compose/ui/semantics/Role;->**(**)**
+HSPLandroidx/compose/ui/semantics/ScrollAxisRange;->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsActions;->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsConfiguration;->**(**)**
+HSPLandroidx/compose/ui/semantics/SemanticsEntity;->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsModifier$DefaultImpls;->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsModifierCore$Companion;->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsModifierCore;->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsModifierKt**->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsNode;->**(**)**
+HSPLandroidx/compose/ui/platform/SemanticsNodeWithAdjustedBounds;->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsNodeKt;->**(**)**
+HSPLandroidx/compose/ui/semantics/SemanticsOwner;->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsProperties**->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsPropertiesKt**->**(**)**
+HSPLandroidx/compose/ui/semantics/SemanticsPropertyKey**->**(**)**
+HSPLandroidx/compose/ui/semantics/SemanticsSort**->**(**)**
HSPLandroidx/compose/ui/semantics/SemanticsWrapper;->**(**)**
#
# res
+HSPLandroidx/compose/ui/res/ImageVectorCache;->**(**)**
HSPLandroidx/compose/ui/res/StringResources_androidKt;->**(**)**
HSPLandroidx/compose/ui/res/PainterResources_androidKt;->**(**)**
HSPLandroidx/compose/ui/res/ImageResources_androidKt;->**(**)**
@@ -94,4 +133,39 @@
#
# root level things
HSPLandroidx/compose/ui/Modifier**->**(**)**
-HSPLandroidx/compose/ui/ComposedModifier**->**(**)**
\ No newline at end of file
+HSPLandroidx/compose/ui/CombinedModifier**->**(**)**
+HSPLandroidx/compose/ui/ComposedModifier**->**(**)**
+HSPLandroidx/compose/ui/KeyedComposedModifier**->**(**)**
+HSPLandroidx/compose/ui/MotionDurationScale**->**(**)**
+#
+# autofill
+HSPLandroidx/compose/ui/autofill/AndroidAutofill**->**(**)**
+HSPLandroidx/compose/ui/autofill/AutofillCallback;->**(**)**
+HSPLandroidx/compose/ui/autofill/AutofillTree;->**(**)**
+#
+# draw
+HSPLandroidx/compose/ui/draw/ClipKt**->**(**)**
+HSPLandroidx/compose/ui/draw/DrawBackgroundModifier;->**(**)**
+HSPLandroidx/compose/ui/draw/DrawModifiert**->**(**)**
+HSPLandroidx/compose/ui/draw/ShadowKt**->**(**)**
+#
+# focus
+HSPLandroidx/compose/ui/focus/FocusChangedModifier**->**(**)**
+HSPLandroidx/compose/ui/focus/FocusEventModifierKt**->**(**)**
+HSPLandroidx/compose/ui/focus/FocusEventModifierLocal;->**(**)**
+HSPLandroidx/compose/ui/focus/FocusManagerImpl;->**(**)**
+HSPLandroidx/compose/ui/focus/FocusManagerKt**->**(**)**
+HSPLandroidx/compose/ui/focus/FocusModifier**->**(**)**
+HSPLandroidx/compose/ui/focus/FocusPropertiesImpl;->**(**)**
+HSPLandroidx/compose/ui/focus/FocusPropertiesKt**->**(**)**
+HSPLandroidx/compose/ui/focus/FocusPropertiesModifier;->**(**)**
+HSPLandroidx/compose/ui/focus/FocusRequester**->**(**)**
+HSPLandroidx/compose/ui/focus/FocusStateImpl;->**(**)**
+
+#
+# geometry include everything
+HSPLandroidx/compose/ui/geometry/**->**(**)**
+
+#
+# graphics include everything
+HSPLandroidx/compose/ui/graphics/**->**(**)**