diff options
author | 2021-04-28 14:42:09 +0100 | |
---|---|---|
committer | 2021-05-06 10:37:17 +0000 | |
commit | 5024ddfd125b5c3b59d7f359ae33cf7f0255b048 (patch) | |
tree | b625ed5aa1c4976e4cd2de5732543d5d1eb34a0f /test/673-checker-throw-vmethod | |
parent | 5859b689d4fdd36711187715c04e2e095f7975c0 (diff) |
Devirtualize to HInvokeStaticOrDirect.
When we statically know the target method, devirtualize an
HInvokeInterface or an HInvokeVirtual to a HInvokeStaticOrDirect.
Test: test.py
Bug: 182538502
Change-Id: Ie3a58603cde300fca9ca4972d4dfbbd20918f5ba
Diffstat (limited to 'test/673-checker-throw-vmethod')
-rw-r--r-- | test/673-checker-throw-vmethod/src/Main.java | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/test/673-checker-throw-vmethod/src/Main.java b/test/673-checker-throw-vmethod/src/Main.java index f62cfc85a7..39793001f0 100644 --- a/test/673-checker-throw-vmethod/src/Main.java +++ b/test/673-checker-throw-vmethod/src/Main.java @@ -81,7 +81,7 @@ public class Main { /// CHECK: If [<<Tst>>] /// CHECK: end_block /// CHECK: begin_block - /// CHECK: InvokeVirtual [{{l\d+}},<<Str>>] method_name:Main.doThrow + /// CHECK: InvokeStaticOrDirect [{{l\d+}},<<Str>>] method_name:Main.doThrow /// CHECK: end_block // /// CHECK-START: void Main.doit2(int[]) code_sinking (after) @@ -91,7 +91,7 @@ public class Main { /// CHECK: end_block /// CHECK: begin_block /// CHECK: <<Str:l\d+>> LoadString - /// CHECK: InvokeVirtual [{{l\d+}},<<Str>>] method_name:Main.doThrow + /// CHECK: InvokeStaticOrDirect [{{l\d+}},<<Str>>] method_name:Main.doThrow /// CHECK: end_block public void doit2(int[] a) { // Being in the boot image means we know the load string cannot throw. Create one that is @@ -142,7 +142,7 @@ public class Main { /// CHECK: If [<<Tst>>] /// CHECK: end_block /// CHECK: begin_block - /// CHECK: InvokeVirtual [{{l\d+}},<<Str>>] method_name:Main.doThrow + /// CHECK: InvokeStaticOrDirect [{{l\d+}},<<Str>>] method_name:Main.doThrow /// CHECK: end_block // /// CHECK-START: void Main.doit4(int[]) code_sinking (after) @@ -152,7 +152,7 @@ public class Main { /// CHECK: end_block /// CHECK: begin_block /// CHECK: <<Str:l\d+>> LoadString - /// CHECK: InvokeVirtual [{{l\d+}},<<Str>>] method_name:Main.doThrow + /// CHECK: InvokeStaticOrDirect [{{l\d+}},<<Str>>] method_name:Main.doThrow /// CHECK: end_block public void doit4(int[] a) { // Being in the boot image means we know the load string cannot throw. Create one that is |