8 Commits

Author SHA1 Message Date
andrew
6a4a0db965 Remove checks for __ARM_EABI__, we only build for EABI now.
Sponsored by:	ABT Systems Ltd
2015-07-09 21:02:40 +00:00
ian
e51357b618 Fix unwind-info errors in our hand-written arm assembler code.
We have functions nested within functions, and places where we start a
function then never end it, we just jump to the middle of something else.
We tried to express this with nested ENTRY()/END() macros (which result
in .fnstart and .fnend directives), but it turns out there's no way to
express that nesting in ARM EHABI unwind info, and newer tools treat
multiple .fnstart directives without an intervening .fnend as an error.

These changes introduce two new macros, EENTRY() and EEND().  EENTRY()
creates a global label you can call/jump to just like ENTRY(), but it
doesn't emit a .fnstart.  EEND() is a no-op that just documents the
conceptual endpoint that matches up with the same-named EENTRY().

This is based on patches submitted by Stepan Dyatkovskiy, but I made some
changes and added the EEND() stuff, so blame any problems on me.

Submitted by:	Stepan Dyatkovskiy <stpworld@narod.ru>
2014-08-01 18:24:44 +00:00
andrew
faaba46948 Add END to ARM libkern assembly functions 2013-03-16 04:08:01 +00:00
andrew
98107ecb18 Add the required __aeabi_* functions the kernel uses when built for ARM EABI 2013-01-17 09:37:42 +00:00
imp
4da5e292ad /* -> /*- for copyright notices, minor format tweaks as necessary 2005-01-07 00:24:33 +00:00
cognet
7e3e230230 Use the RET macro. 2004-11-09 16:47:47 +00:00
cognet
d91492d389 Don't attempt to profile __udivsi3() and friends, as mcount() uses them. 2004-10-01 16:44:08 +00:00
cognet
0e3fc50764 Import libkern arm specific bits. 2004-05-14 12:28:31 +00:00