Closed
Bug 18692
Opened 25 years ago
Closed 25 years ago
Fix xptcall code
Categories
(Core :: XPConnect, defect, P1)
Tracking
()
RESOLVED
FIXED
People
(Reporter: jdunn, Assigned: jdunn)
References
Details
XPCInvoke seems to be working, but still having problems with XPCTest (it coredumps). This is needed to get the browser running since we now have dependencies on this.
Severity: normal → critical
Priority: P3 → P1
Target Milestone: M12
xptcall is now required to run, so currently the AIX build coredumps on startup. Originally we I had used the MAX PPC code (cpp & assembler) but unfortunately AIX does not support inline assembly. I am currently working with IBM on coming up with another solution.
Comment 2•25 years ago
|
||
jim, do you expect this to happen in the next few days?
I used the following URL to dig around and find out enough about the registers and stack to finally fix the XPT code. http://www.austin.ibm.com/doc_link/en_US/a_doc_lib/aixassem/alangref/linkage_con vent.htm Index: xptcstubs_asm_ppc_aix.s =================================================================== RCS file: /cvsroot/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc_aix.s,v retrieving revision 1.3 diff -r1.3 xptcstubs_asm_ppc_aix.s 63a64,66 > mr r12,r3 # Move methodIndex into r12 for LATER > lwz r3,104(sp) # Get the 'original' r3 > 91,92c94,95 < # mr r4,r12 # methodIndex selector < addi r5,sp,232 # pointer to callers args area, beyond r3-r10 mapped range --- > mr r4,r12 # methodIndex selector (it is now LATER) > addi r5,sp,312 # pointer to callers args area, beyond r3-r10 mapped range Index: xptcstubs_ppc_aix.cpp =================================================================== RCS file: /cvsroot/mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc_aix.cpp,v retrieving revision 1.4 diff -r1.4 xptcstubs_ppc_aix.cpp 44c44 < #define PARAM_GPR_COUNT 7 --- > #define PARAM_GPR_COUNT 7 196c196 < extern "C" int SharedStub(void *, int); --- > extern "C" int SharedStub(int); 201c201 < return SharedStub(this, n); \ --- > return SharedStub(n); \
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•