X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=mate.git;a=blobdiff_plain;f=Mate%2FTypes.hs;fp=Mate%2FTypes.hs;h=67ac2a52b1d016cab35d6fa625287344d0eaba9e;hp=7de8493a8523dddf9c8b6084e42e238a26d0fe22;hb=34939ca19d5f608efb04dcb2cdd97dd3f922d4a6;hpb=60297de17a166656519429b9652c0cf059e900f1 diff --git a/Mate/Types.hs b/Mate/Types.hs index 7de8493..67ac2a5 100644 --- a/Mate/Types.hs +++ b/Mate/Types.hs @@ -68,11 +68,13 @@ type TrapMap = M.Map NativeWord TrapCause type TrapPatcher = CPtrdiff -> CodeGen () () CPtrdiff type TrapPatcherEax = CPtrdiff -> CPtrdiff -> CodeGen () () CPtrdiff +type TrapPatcherEsp = TrapPatcherEax data TrapCause = StaticMethod TrapPatcher -- for static calls | VirtualCall Bool MethodInfo (IO NativeWord) -- for invoke{interface,virtual} | InstanceOf TrapPatcherEax + | ThrowException TrapPatcherEsp | NewObject TrapPatcher | StaticField StaticFieldInfo | ObjectField TrapPatcher