Re: new stubs ...



Michael Meeks wrote:

>Hi Mark,
>
>	The thread stuff practically kills the point of having the stubs
>invocations unrolled there; so - I just binned them - and the result is
>rather beautiful. We could even turn the (ORBit_small_flags &
>ORBIT_SMALL_FAST_LOCALS) flag off in future, which used to be in the old
>stubs - and that would free us from exporting any ABI from the ORB apart
>from ORBit_c_stub_invoke [ I think ] - thus we can privatize
>CORBA_Object and re-arrange that to our heart's content.
>
>	Anyhow, a new style stub is a single function call, that simply does
>the argument unwinding - which is IMHO rather nice.
>  
>
This sounds pretty cool.  Out of interest, will this change mean that I 
can get rid of the wart in PyORBit's handling of calls from C to in 
process Python servants?

In order to not trigger the fast path in the C stubs, my Python servants 
provided a vepvmap that mapped all method ids to index 1 (well, all 
method ids up to an arbitrary limit; currently 512).  The vepv then has 
a NULL pointer at index 1.  This was necessary so that method lookup 
would always go through the impl_finder_func to find the Python method.  
It would be nice to not have to worry about about this, and not have an 
artificial limit on the number of possible methods.

James.

-- 
Email: james@daa.com.au
WWW:   http://www.daa.com.au/~james/






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]