Cppuno in bridges, HELP needed.
Jan Iversen
jancasacondor at gmail.com
Tue Mar 6 10:38:24 UTC 2018
Hi.
I am still trying to get my head around understanding bridges, and how I can make it work for arm64/iOS.
At some point a piece of code (in the same executable) decides to make a uno call, this looks like
Cpp2uno_call() ->
raise_exception()
__cxa_throw() ->
( C++ throw handling) ->
getCaughtException() ->
UnoInterfaceProxyDispatch() ->
cpp_call() ->
CallVirtualMethod() ->
( Call requested function )
Now it all looks synchronous to me, and I right in assuming this all happens without any dispatch.
If my assumption is correct, I should be able to shortcut the whole lot and make a simple:
Cpp2uno_call() ->
( Call requested function )
Because on iOS, no external process will ever call the UNO interface, it is 1 single executable (I also removed the pipes etc).
Can someone please tell me, if/where I am thinking totally wrong. My objective is to get rid of all the ugly assembler code.
Thanks in advance.
rgds
Jan I.
Ps. I had never expected the need to “expert” on the lower layers of LO, but after having been fighting SAL_TIMER, then threads and now cppuno, I think I am slowly understanding how the very low level of LO works. This might be a good thing when/if we do another port (or just want to optimise).
More information about the LibreOffice
mailing list