lambda: Infrastructure to support capture/liberate-variable dex opcodes
* ArtLambdaMethod - wrap an ArtMethod with extra runtime lambda info
* Closure - data representation for a runtime lambda closure (read-only)
* ClosureBuilder - writer for creating a Closure at runtime
* ShortyFieldType - char/enum wrapper for shorty_field_type in dex
Tests:
* Closure, ClosureBuilder, ShortyFieldType have full unit test coverage.
* ArtLambdaMethod does not, but it is tested indirectly and is otherwise
trivial getters.
Future CLs will include interpreter integration with minimal changes to
this Closure infrastructure.
Change-Id: I38a7aea8df1da7b154fd6623258c6c228c8e51df
diff --git a/runtime/Android.mk b/runtime/Android.mk
index 8f70d30..963eecb 100644
--- a/runtime/Android.mk
+++ b/runtime/Android.mk
@@ -99,7 +99,10 @@
jit/jit.cc \
jit/jit_code_cache.cc \
jit/jit_instrumentation.cc \
+ lambda/art_lambda_method.cc \
lambda/box_table.cc \
+ lambda/closure.cc \
+ lambda/closure_builder.cc \
jni_internal.cc \
jobject_comparator.cc \
linear_alloc.cc \