Apache OpenOffice (AOO) Bugzilla – Issue 84999
ia64 port
Last modified: 2008-02-29 15:22:59 UTC
we should have an ia64 port
have a semi-working uno bridge
You rock! :-) Adding me & pmladek to Cc.
I believe what's currently committed will build and maybe install though I've yet to complete a build. I know on the other hand that I haven't implemented the rather complex return a small struct in multiple registers thing or the even more hairy "returned struct consists of multiple floats which are multiplexed in return registers" or something baroque like that
real hardware from hp arrived last week, so struct returning rules figured out and bridge completed. =RANDBETWEEN(10;20) works, java wizards work. Looks good. Install set upload later.
Created attachment 51551 [details] patch for reference
cmc->sb: As a new port this doesn't actually affect anything existing except for a few small places. Do you see any problems with the following parts of the patch ? ... a) vtablefactory.cxx For every other platform a vtable slot is just a void*, for ia64 it is a void* *and* a gp value. Its most convenient to just have a single ifdef IA64 in the shared vtablefactory.cxx code to handle this oddity. b) ifdef for IA64 and ARM in typesconfig.c because these platforms (sometimes in the case of ARM) can allow some types of alignments, but really really don't like to do it, so the alignment values auto-detected aren't ideal. c) and add some tests to cppu/test for returning various sized structs which are handled in registers on some archs, like the small struct on x86_64 and up to the middle struct on ia64
@cmc: (b) and (c) look OK. For (a) I would prefer to more cleanly abstract over vtable slots, as sketched in the attached SRC680m247-bridges-sketch.patch for the shared parts and the gcc3_linux_intel platform. The downside is that it requires trivial modifications to all platforms, but I could help take care of that.
Created attachment 51561 [details] proposed improvement (partial)
:-( having to make 20 blind changes to the other uno bridges was what I most feared.
ok, cmc->sb: how about that now ? Especially is the windows one right ?
@cmc: Looks good (from browsing the cvs commits). Thanks a lot for actually doing it. I will check that the changes do work on unxlngi6/unxmacxi/unxsoli4/unxsols4/wntmsci11, but probably not before next week.
Next week is fine by me. Do you mind then if I set you as qa for the workspace and reassign this task to you for verification when you get the time ?
fine with me
reassigning for qaing shared bridge changes
In solenv/inc/unxlnga.mk:1.1.2.2 added stuff that will be necessary once CWS sb83 is integrated (and is otherwise harmless until then). Verified by code review and by checking changes to bridges code via testtools tests on unxlngi6.pro, unxmacxi.pro, unxsoli4.pro, unxsols4.pro, wntmsci11.pro.
.