]> git.buserror.net Git - polintos/scott/priv.git/blobdiff - kernel/orb/invoke.cc
Regs struct, int98/99
[polintos/scott/priv.git] / kernel / orb / invoke.cc
index 102ea95ba40704e26c850c8a968cb02adedcf7f1..ffcd8372318c4e8f581fc490602c73b750c4993b 100644 (file)
@@ -77,20 +77,28 @@ namespace ORB {
                
                return obj;
        }
-}
 
-extern "C" void invoke_method(ParamInfoBlock *user_pib, ulong ret_pc)
-{
-       ParamInfoBlock pib = Arch::copyin(user_pib);
-       CallFrame *frame = new_frame(curthread);
-       
-//     frame->object = objid;
-       frame->caller_user_pib = user_pib;
-       frame->ret_pc = ret_pc;
-       
-       printf("invoke_method: frame %p pib %p ret %lx\n",
-              frame, frame->caller_user_pib,
-              frame->ret_pc);
-       
+       void invoke_method(ParamInfoBlock *user_pib, uintptr_t &stack)
+       {
+               ParamInfoBlock pib = Arch::copyin(user_pib);
+               CallFrame *frame = new_frame(curthread);
+               
+//             if (pib->objlist_len == 0)
+                       
+               
+//             frame->object = objid;
+               frame->caller_user_pib = user_pib;
+//             frame->ret_pc = ret_pc;
+               
+               printf("invoke_method: frame %p pib %p ret %lx\n",
+                      frame, frame->caller_user_pib,
+                      frame->ret_pc);
+               
+               
+       }
        
+       uintptr_t return_from_method(uintptr_t &exptr, size_t &exlen)
+       {
+               return 0;
+       }
 }