aboutsummaryrefslogtreecommitdiff
path: root/testdata/invoke-custom-min.smali
diff options
context:
space:
mode:
authorKelvin Zhang <zhangkelvin@google.com>2021-11-02 21:28:18 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-11-02 21:28:18 +0000
commit58b4d19a6b6c8a6790c31bb3d6fcd13a8892239b (patch)
tree0a310ca653ef73c547d80da63c87fcb2c0636bcb /testdata/invoke-custom-min.smali
parent919a460e14c48a672288254f67db3e0c28166e82 (diff)
parentd9eed84a58f90af50d84b02ca6a38d805b425a95 (diff)
downloadzucchini-58b4d19a6b6c8a6790c31bb3d6fcd13a8892239b.tar.gz
Merge remote-tracking branch 'aosp/upstream-main' into dev am: a90c04389f am: ddc43dc959 am: d9eed84a58
Original change: https://android-review.googlesource.com/c/platform/external/zucchini/+/1877854 Change-Id: I7de3d8374e868066777abb326d3e20c1e4b44803
Diffstat (limited to 'testdata/invoke-custom-min.smali')
-rw-r--r--testdata/invoke-custom-min.smali39
1 files changed, 39 insertions, 0 deletions
diff --git a/testdata/invoke-custom-min.smali b/testdata/invoke-custom-min.smali
new file mode 100644
index 0000000..64bccbc
--- /dev/null
+++ b/testdata/invoke-custom-min.smali
@@ -0,0 +1,39 @@
+# Tests invoke-custom added in DEX version 38.
+
+# Compile using smali: https://github.com/JesusFreke/smali
+# java -jar smali.jar assemble invoke-custom-min.smali --api 28
+
+.class public LFoo;
+.super Ljava/lang/Object;
+
+.method public la1(Ljava/util/ArrayList;)V
+ .registers 5
+ .annotation system Ldalvik/annotation/Signature;
+ value = {
+ "(",
+ "Ljava/util/ArrayList",
+ "<",
+ "Ljava/lang/String;",
+ ">;)V"
+ }
+ .end annotation
+
+ .prologue
+ .line 42
+ invoke-virtual {p1}, Ljava/util/ArrayList;->stream()Ljava/util/stream/Stream;
+
+ move-result-object v0
+
+ invoke-custom {}, call_site_1("bar", ()Ljava/util/function/Predicate;, (Ljava/lang/Object;)Z, invoke-static@LFoo;->lambda$la1$1(I)Z, (I)Z)@Ljava/lang/invoke/LambdaMetafactory;->metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
+
+ move-result-object v1
+
+ invoke-custom {}, call_site_2("test", ()Ljava/util/function/Predicate;, (Ljava/lang/Object;)Z, invoke-static@LFoo;->lambda$la1$1(Ljava/lang/String;)Z, (Ljava/lang/String;)Z)@Ljava/lang/invoke/LambdaMetafactory;->metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
+
+ move-result-object v2
+
+ invoke-interface {v0, v1, v2}, Ljava/util/stream/Stream;->filter(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
+
+ .line 50
+ return-void
+.end method