X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=Mate%2FTypes.hs;h=7de8493a8523dddf9c8b6084e42e238a26d0fe22;hb=918821897ac5548ea57e4d2630325e324de09d03;hp=ec76a4cb7d41f5b3631b550e296ee479ba085708;hpb=96f243da07244b563fed5d718a0c78cd727578db;p=mate.git diff --git a/Mate/Types.hs b/Mate/Types.hs index ec76a4c..7de8493 100644 --- a/Mate/Types.hs +++ b/Mate/Types.hs @@ -67,12 +67,13 @@ data RawMethod = RawMethod { type TrapMap = M.Map NativeWord TrapCause type TrapPatcher = CPtrdiff -> CodeGen () () CPtrdiff +type TrapPatcherEax = CPtrdiff -> CPtrdiff -> CodeGen () () CPtrdiff data TrapCause = StaticMethod TrapPatcher -- for static calls | VirtualCall Bool MethodInfo (IO NativeWord) -- for invoke{interface,virtual} - | InstanceOf B.ByteString -- class name - | NewObject TrapPatcher -- class name + | InstanceOf TrapPatcherEax + | NewObject TrapPatcher | StaticField StaticFieldInfo | ObjectField TrapPatcher