From 2d2940b13e8d9cce20f28d2e30ac28a6c5e2a8a8 Mon Sep 17 00:00:00 2001 From: Joel Dice Date: Sun, 31 May 2009 23:02:50 -0600 Subject: [PATCH] add continuation classes and methods to vm.pro --- vm.pro | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/vm.pro b/vm.pro index 0ed4eb5f12..9e790fbc02 100644 --- a/vm.pro +++ b/vm.pro @@ -8,7 +8,6 @@ # the VM depends on the fixed layout of the following classes: --keepclassmembers class avian.SystemClassLoader { !static ; } -keepclassmembers class java.lang.Class { !static ; } -keepclassmembers class java.lang.ClassLoader { !static ; } -keepclassmembers class java.lang.String { !static ; } @@ -32,6 +31,7 @@ # the VM may throw instances of the following: +-keep public class avian.IncompatibleContinuationException -keep public class java.lang.RuntimeException -keep public class java.lang.IllegalStateException -keep public class java.lang.IllegalArgumentException @@ -74,3 +74,19 @@ # Thread.run is called by name in the VM -keepclassmembernames class java.lang.Thread { void run(); } + +# when continuations are enabled, the VM may call these methods by name: + +-keepclassmembers class avian.Continuations { + *** wind(...); + *** rewind(...); + } + +-keepclassmembernames class avian.CallbackReceiver { + *** receive(...); + } + +# the above methods include these classes in their signatures: + +-keepnames public class avian.Callback +-keepnames public class java.util.concurrent.Callable