Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 79db6a26 authored by Makoto Onuki's avatar Makoto Onuki Committed by Android (Google) Code Review
Browse files

Merge "Update Ravenhelper PTA" into main

parents 72edb577 f186125c
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -146,7 +146,7 @@ public class RavenwoodMethodCallLogger {
    private final Map<Class<?>, Set<MethodDesc>> mAllMethods = new HashMap<>();

    /** Information about the current thread. */
    private class ThreadInfo {
    private static class ThreadInfo {
        /**
         * We save the current thread's nest call level here and use that as the initial level.
         * We do it because otherwise the nest level would be too deep by the time test
@@ -168,6 +168,9 @@ public class RavenwoodMethodCallLogger {

        sIgnoreClasses.add(android.text.FontConfig.class);

        sIgnoreClasses.add(android.app.PropertyInvalidatedCache.class);
        sIgnoreClasses.add(android.os.IpcDataCache.class);

        sIgnoreClasses.add(android.os.SystemClock.class);
        sIgnoreClasses.add(android.os.Trace.class);
        sIgnoreClasses.add(android.os.LocaleList.class);
@@ -192,6 +195,8 @@ public class RavenwoodMethodCallLogger {
        // Following classes *may* be interesting for some purposes, but the initialization is
        // too noisy...
        sIgnoreClasses.add(android.graphics.fonts.SystemFonts.class);
        sIgnoreClasses.add(android.content.res.FontScaleConverterFactory.class);
        sIgnoreClasses.add(android.content.res.FontScaleConverterImpl.class);
    }

    /**
@@ -222,7 +227,9 @@ public class RavenwoodMethodCallLogger {
                return true;
            }
        }

        if ("android.util.proto".equals(clazz.getPackageName())) {
            return true;
        }
        switch (clazz.getSimpleName()) {
            case "EventLogTags":
                return true;
@@ -455,6 +462,7 @@ public class RavenwoodMethodCallLogger {

                        wr.print("    method ");
                        wr.print(method.name);
                        wr.print(" ");
                        wr.print(method.desc);
                        wr.print("\tkeep");

+7 −7
Original line number Diff line number Diff line
@@ -115,8 +115,8 @@ public class RavenwoodMethodCallLoggerTest {
        // Note, for implementation detail reasons, the nest levels show up as negative,
        // because of how we initialize the initial nest level.
        String expected = """
# [123: Ravenwood:Test]: [@-5] android.content.Context.getPackageName()Ljava/lang/String;
# [123: Ravenwood:Test]: [@-5] android.content.Context.getOpPackgeName()Ljava/lang/String;
# [123: Ravenwood:Test]: [@-4] android.content.Context.getPackageName()Ljava/lang/String;
# [123: Ravenwood:Test]: [@-4] android.content.Context.getOpPackgeName()Ljava/lang/String;
                """;
        assertThat(bos.toString().trim()).isEqualTo(expected.trim());

+46 −0
Original line number Diff line number Diff line
@@ -1353,6 +1353,52 @@ SourceFile: "TinyFrameworkExceptionTester.java"
RuntimeInvisibleAnnotations:
  x: #x()
    android.hosttest.annotation.HostSideTestWholeClassKeep
## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta.class
  Compiled from "TinyFrameworkForPta.java"
public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForPta
  minor version: 0
  major version: 65
  flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta
  super_class: #x                         // java/lang/Object
  interfaces: 0, fields: 0, methods: 3, attributes: 1
Constant pool:
{
  public com.android.hoststubgen.test.tinyframework.TinyFrameworkForPta();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
         x: aload_0
         x: invokespecial #x                  // Method java/lang/Object."<init>":()V
         x: return
      LineNumberTable:
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
            0       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForPta;

  public void foo(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
         x: return
      LineNumberTable:
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
            0       1     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForPta;
            0       1     1  arg1   Ljava/lang/String;
            0       1     2  arg2   Ljava/lang/Object;

  static {};
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=0, locals=0, args_size=0
         x: return
      LineNumberTable:
}
SourceFile: "TinyFrameworkForPta.java"
## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.class
  Compiled from "TinyFrameworkForTextPolicy.java"
public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy
+66 −0
Original line number Diff line number Diff line
@@ -1565,6 +1565,72 @@ RuntimeVisibleAnnotations:
    )
  x: #x()
    android.hosttest.annotation.HostSideTestWholeClassKeep
## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta.class
  Compiled from "TinyFrameworkForPta.java"
public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForPta
  minor version: 0
  major version: 65
  flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta
  super_class: #x                         // java/lang/Object
  interfaces: 0, fields: 0, methods: 3, attributes: 2
Constant pool:
{
  public com.android.hoststubgen.test.tinyframework.TinyFrameworkForPta();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
         x: aload_0
         x: invokespecial #x                 // Method java/lang/Object."<init>":()V
         x: return
      LineNumberTable:
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
            0       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForPta;
    RuntimeVisibleAnnotations:
      x: #x(#x=s#x)
        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep(
          reason="file-override (Keep implicit ctor)"
        )

  public void foo(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
         x: return
      LineNumberTable:
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
            0       1     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForPta;
            0       1     1  arg1   Ljava/lang/String;
            0       1     2  arg2   Ljava/lang/Object;
    RuntimeVisibleAnnotations:
      x: #x(#x=s#x)
        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep(
          reason="file-override (keep multi-arg method)"
        )

  static {};
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=0, locals=0, args_size=0
         x: return
      LineNumberTable:
    RuntimeVisibleAnnotations:
      x: #x(#x=s#x)
        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep(
          reason="file-override (Keep static initializer)"
        )
}
SourceFile: "TinyFrameworkForPta.java"
RuntimeVisibleAnnotations:
  x: #x(#x=s#x)
    com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep(
      reason="file-override"
    )
## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.class
  Compiled from "TinyFrameworkForTextPolicy.java"
public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy
+84 −0
Original line number Diff line number Diff line
@@ -1822,6 +1822,90 @@ RuntimeVisibleAnnotations:
    )
  x: #x()
    android.hosttest.annotation.HostSideTestWholeClassKeep
## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta.class
  Compiled from "TinyFrameworkForPta.java"
public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForPta
  minor version: 0
  major version: 65
  flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: #x                          // com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta
  super_class: #x                         // java/lang/Object
  interfaces: 0, fields: 0, methods: 3, attributes: 2
Constant pool:
{
  public com.android.hoststubgen.test.tinyframework.TinyFrameworkForPta();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta
         x: ldc           #x                 // String <init>
         x: ldc           #x                 // String ()V
         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
         x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        x: aload_0
        x: invokespecial #x                 // Method java/lang/Object."<init>":()V
        x: return
      LineNumberTable:
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
           11       5     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForPta;
    RuntimeVisibleAnnotations:
      x: #x(#x=s#x)
        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep(
          reason="file-override (Keep implicit ctor)"
        )

  public void foo(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta
         x: ldc           #x                 // String foo
         x: ldc           #x                 // String (Ljava/lang/String;Ljava/lang/Object;)V
         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
         x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        x: return
      LineNumberTable:
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
           11       1     0  this   Lcom/android/hoststubgen/test/tinyframework/TinyFrameworkForPta;
           11       1     1  arg1   Ljava/lang/String;
           11       1     2  arg2   Ljava/lang/Object;
    RuntimeVisibleAnnotations:
      x: #x(#x=s#x)
        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep(
          reason="file-override (keep multi-arg method)"
        )

  static {};
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta
         x: ldc           #x                 // String <clinit>
         x: ldc           #x                 // String ()V
         x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logMethodCall
         x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.callMethodCallHook:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        x: ldc           #x                  // class com/android/hoststubgen/test/tinyframework/TinyFrameworkForPta
        x: ldc           #x                 // String com.android.hoststubgen.hosthelper.HostTestUtils.logClassLoaded
        x: invokestatic  #x                 // Method com/android/hoststubgen/hosthelper/HostTestUtils.onClassLoaded:(Ljava/lang/Class;Ljava/lang/String;)V
        x: return
      LineNumberTable:
    RuntimeVisibleAnnotations:
      x: #x(#x=s#x)
        com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep(
          reason="file-override (Keep static initializer)"
        )
}
SourceFile: "TinyFrameworkForPta.java"
RuntimeVisibleAnnotations:
  x: #x(#x=s#x)
    com.android.hoststubgen.hosthelper.HostStubGenProcessedAsKeep(
      reason="file-override"
    )
## Class: com/android/hoststubgen/test/tinyframework/TinyFrameworkForTextPolicy.class
  Compiled from "TinyFrameworkForTextPolicy.java"
public class com.android.hoststubgen.test.tinyframework.TinyFrameworkForTextPolicy
Loading