public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] arm: U-Boot API - clang support broke ABI
@ 2013-11-18 11:26 Leif Lindholm
  2013-11-19  9:09 ` Michal Simek
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Leif Lindholm @ 2013-11-18 11:26 UTC (permalink / raw)
  To: u-boot

Hi,

Commit fe1378a - "ARM: use r9 for gd" - broke the ABI for users of the
U-Boot API on ARM. Users I am aware of are GRUB and the FreeBSD loader.
Since I only spotted this on Saturday, this code is well and truly in
the wild, so any users of the API will need to preserve both r8 and r9
on syscalls for the foreseeable future (which is not the end of the
world).

Sometime last year I proposed a change to make the API syscall entry
and exit points responsible for maintaining full procedure-call standard
compliance, although the patch I provided was on the hackier side of
good (and probably wrong).

I would now like to ask in a more open-ended way - is there any chance
that we could solve this in a generic way, such that consumers of the
API need not be aware of U-Boot internal ABI changes?

If the assumtions that the global data pointer is:
a) a pointer
b) writable
are not both safe, then this could be achieved by arch-specific asm
entry/exit points.

/
    Leif

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2013-11-25 10:43 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-18 11:26 [U-Boot] arm: U-Boot API - clang support broke ABI Leif Lindholm
2013-11-19  9:09 ` Michal Simek
2013-11-19 20:07   ` Tom Rini
2013-11-20  7:59     ` [U-Boot] standalone u-boot app - bootm issue was the part of: (Re: arm: U-Boot API - clang support broke ABI) Michal Simek
2013-11-20 13:49       ` Tom Rini
2013-11-20 13:53         ` Michal Simek
2013-11-20 14:01           ` Tom Rini
2013-11-21 15:54             ` Michal Simek
2013-11-19 22:42 ` [U-Boot] arm: U-Boot API - clang support broke ABI Jeroen Hofstee
2013-11-23 11:20 ` Jeroen Hofstee
2013-11-25 10:43   ` Leif Lindholm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox