[PATCH] SPU Initialize __ea_local_store via register 6
Patrick Mansfield
patmans@us.ibm.com
Mon Sep 17 21:42:00 GMT 2007
The effective address (EA) of the local store (LS) is now passed via
register 6, store it into a global variable.
libgloss ChangeLog:
2007-09-06 Markus Deuling <deuling@de.ibm.com>
* spu/crt0.S: Initialize __ea_local_store (EA address of the LS)
via register 6.
Index: src/libgloss/spu/crt0.S
===================================================================
--- src.orig/libgloss/spu/crt0.S
+++ src/libgloss/spu/crt0.S
@@ -50,11 +50,16 @@ POSSIBILITY OF SUCH DAMAGE.
#define TAGMASK 1
#endif
+.comm __ea_local_store,16,16
+
.text
.global _start
.type _start, @function
_start:
+ /* Save the local store base from $6. */
+ stqr $6, __ea_local_store
+
#ifdef _STD_MAIN
/*
* Copy the argument vector region from EA to LS. The DMA
More information about the Newlib
mailing list