[Mono-bugs] [Bug 507108] "Hello World" hangs/crashes on embedded PPC/Linux system with mono version 2.4, versions 2.2 and 1.2.6 are working fine
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Tue Jun 16 03:34:19 EDT 2009
http://bugzilla.novell.com/show_bug.cgi?id=507108
User harald.herrmann at ids.de added comment
http://bugzilla.novell.com/show_bug.cgi?id=507108#c15
--- Comment #15 from Harald Herrmann <harald.herrmann at ids.de> 2009-06-16 01:34:18 MDT ---
According to the ELDK documentation Linux EABI is used!? (See
http://www.denx.de/wiki/view/DULG/LinuxKernelRegisterUsage).
"
14.3.4. Linux kernel register usage
For the PowerPC architecture, the Linux kernel uses the following registers:
R1: stack pointer
R2: pointer to task_struct for the current task
R3-R4: parameter passing and return values
R5-R10: parameter passing
R13: small data area pointer
R30: GOT pointer
R31: frame pointer
A function can use r0 and r3 - r12 without saving and restoring them. r13 - r31
have to be preserved so they must be saved and restored when you want to use
them. Also, cr2 - cr4 must be preserved, while cr0, cr1, cr5 - cr7, lr, ctr and
xer can be used without saving & restoring them. [ Posted Tue, 15 Jul 2003 by
Paul Mackerras to linuxppc-embedded at lists.linuxppc.org ].
See also the (E)ABI specifications for the PowerPC architecture, Developing
PowerPC Embedded Application Binary Interface (EABI) Compliant Programs.
"
What are our options? Disabling TLS by using the mono configure with-tls=no
option did not work.
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list