o Align function on a 32-byte boundary so that the core's front-end
can deliver 2 bundles per cycle to the back-end. o Mark syscall stubs with a special unwind ABI tag so that unwind libraries know how to unwind.
This commit is contained in:
parent
9448b439ec
commit
d79186defa
@ -61,7 +61,7 @@
|
||||
*/
|
||||
#define ENTRY(_name_, _n_args_) \
|
||||
.global _name_; \
|
||||
.align 16; \
|
||||
.align 32; \
|
||||
.proc _name_; \
|
||||
_name_:; \
|
||||
.regstk _n_args_, 0, 0, 0; \
|
||||
@ -69,7 +69,7 @@ _name_:; \
|
||||
|
||||
#define ENTRY_NOPROFILE(_name_, _n_args_) \
|
||||
.global _name_; \
|
||||
.align 16; \
|
||||
.align 32; \
|
||||
.proc _name_; \
|
||||
_name_:; \
|
||||
.regstk _n_args_, 0, 0, 0
|
||||
@ -79,7 +79,7 @@ _name_:; \
|
||||
* Declare a local leaf function.
|
||||
*/
|
||||
#define STATIC_ENTRY(_name_, _n_args_) \
|
||||
.align 16; \
|
||||
.align 32; \
|
||||
.proc _name_; \
|
||||
_name_:; \
|
||||
.regstk _n_args_, 0, 0, 0 \
|
||||
@ -161,6 +161,10 @@ label: ASCIZ msg; \
|
||||
#define SYSCALLNUM(name) SYS_ ## name
|
||||
|
||||
#define CALLSYS_NOERROR(name) \
|
||||
.prologue ; \
|
||||
.unwabi @svr4, 'S' ; \
|
||||
.save rp, r0 ; \
|
||||
.body ; \
|
||||
{ .mmi ; \
|
||||
alloc r9 = ar.pfs, 0, 0, 8, 0 ; \
|
||||
mov r31 = ar.k5 ; \
|
||||
|
Loading…
Reference in New Issue
Block a user