summaryrefslogtreecommitdiff
path: root/profilers
diff options
context:
space:
mode:
authorPhil Nguyen <philnguyen@google.com>2022-02-25 22:48:16 +0000
committerTreeHugger Robot <treehugger-gerrit@google.com>2022-03-02 22:41:10 +0000
commit01d6ccf1b4f73acb402a4c80f597e4273b1e372f (patch)
tree3c550cac6a53a9e864caa2ff1d83c0f3e2e0adf4 /profilers
parentd4194de4c508930f5ee3e3c65dc5b23bf4eed8c5 (diff)
downloadidea-01d6ccf1b4f73acb402a4c80f597e4273b1e372f.tar.gz
Sync with perflib
Bug: 219770168 Test: existing Change-Id: I26dc4bf6a7e9e72d1c45e83cf2a7f45574bec59b
Diffstat (limited to 'profilers')
-rw-r--r--profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpCaptureObject.kt6
-rw-r--r--profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpInstanceObject.kt14
2 files changed, 10 insertions, 10 deletions
diff --git a/profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpCaptureObject.kt b/profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpCaptureObject.kt
index c35e4b44279..1c74b71b36d 100644
--- a/profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpCaptureObject.kt
+++ b/profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpCaptureObject.kt
@@ -123,8 +123,8 @@ open class HeapDumpCaptureObject(private val client: ProfilerClient,
heapSetMappings.forEach { (heap, heapSet) ->
heap.classes.forEach { addInstanceToRightHeap(heapSet, it.id, createClassObjectInstance(javaLangClassObject, it)) }
heap.forEachInstance { instance -> true.also {
- assert(ClassDb.JAVA_LANG_CLASS != instance.classObj.className)
- val classEntry = instance.classObj.makeEntry()
+ assert(ClassDb.JAVA_LANG_CLASS != instance.classObj!!.className)
+ val classEntry = instance.classObj!!.makeEntry()
addInstanceToRightHeap(heapSet, instance.id, HeapDumpInstanceObject(this, instance, classEntry, null))
} }
if ("default" != heap.name || snapshot.heaps.size == 1 || heap.instancesCount > 0) {
@@ -220,6 +220,6 @@ open class HeapDumpCaptureObject(private val client: ProfilerClient,
.build())
private fun ClassObj.makeEntry(name: String = this.className) =
- if (superClassObj != null) classDb.registerClass(id, superClassObj.id, name)
+ if (superClassObj != null) classDb.registerClass(id, superClassObj!!.id, name)
else classDb.registerClass(id, name)
} \ No newline at end of file
diff --git a/profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpInstanceObject.kt b/profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpInstanceObject.kt
index a3654bac882..6d14696bd4b 100644
--- a/profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpInstanceObject.kt
+++ b/profilers/src/com/android/tools/profilers/memory/adapters/HeapDumpInstanceObject.kt
@@ -40,8 +40,8 @@ internal class HeapDumpInstanceObject(private val captureObject: HeapDumpCapture
else -> instance.classObj.let { classObj ->
when {
instance is ClassObj -> ValueObject.ValueType.CLASS
- instance is ClassInstance && classObj.className == ClassDb.JAVA_LANG_STRING -> ValueObject.ValueType.STRING
- classObj.className.endsWith("[]") -> ValueObject.ValueType.ARRAY
+ instance is ClassInstance && classObj!!.className == ClassDb.JAVA_LANG_STRING -> ValueObject.ValueType.STRING
+ classObj!!.className.endsWith("[]") -> ValueObject.ValueType.ARRAY
else -> ValueObject.ValueType.OBJECT
}
}
@@ -69,7 +69,7 @@ internal class HeapDumpInstanceObject(private val captureObject: HeapDumpCapture
else -> ""
}
- override fun getHeapId() = instance.heap.id
+ override fun getHeapId() = instance.heap!!.id
override fun getClassEntry() = classEntry
override fun getDepth() = instance.distanceToGcRoot
override fun getNativeSize() = instance.nativeSize
@@ -115,12 +115,12 @@ internal class HeapDumpInstanceObject(private val captureObject: HeapDumpCapture
override fun getValueType() = valueType
- override fun getAllocationCallStack() = when (instance.stack) {
+ override fun getAllocationCallStack() = when (val st = instance.stack) {
null -> null
else -> {
val builder = AllocationStack.newBuilder()
val frameBuilder = StackFrameWrapper.newBuilder()
- for (stackFrame in instance.stack.frames) {
+ for (stackFrame in st.frames) {
val fileName = stackFrame.filename
val guessedClassName = if (fileName.endsWith(".java")) fileName.substring(0, fileName.length - ".java".length) else fileName
frameBuilder.addFrames(AllocationStack.StackFrame.newBuilder()
@@ -135,13 +135,13 @@ internal class HeapDumpInstanceObject(private val captureObject: HeapDumpCapture
}
}
- override fun isCallStackEmpty() = instance.stack == null || instance.stack.frames.isEmpty()
+ override fun isCallStackEmpty() = instance.stack == null || instance.stack!!.frames.isEmpty()
override fun getIsRoot() = instance is RootObj
override fun getReferences() = if (isRoot) listOf() else extractReferences()
@VisibleForTesting
fun extractReferences(): List<ReferenceObject> {
- val order = compareBy(Instance::getDistanceToGcRoot, Instance::getId) // to enforce more deterministic order
+ val order = compareBy(Instance::distanceToGcRoot, Instance::id) // to enforce more deterministic order
// Hard referrers first, soft second
val sortedReferences = instance.hardReverseReferences.sortedWith(order) +
(instance.softReverseReferences?.sortedWith(order) ?: listOf())