summaryrefslogtreecommitdiffstats
path: root/c/src/exec/score/cpu/powerpc/README
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1995-08-22 16:44:49 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1995-08-22 16:44:49 +0000
commit6b45e470be6178f5aa6d7f6117338cef482f9203 (patch)
tree92a3a56ef2f25a7f37daacd655c7b1810cee63d3 /c/src/exec/score/cpu/powerpc/README
parentfix broken RCS Ids -- $ accidentally lost merging changes earlier (diff)
downloadrtems-6b45e470be6178f5aa6d7f6117338cef482f9203.tar.bz2
Merged PowerPC port as submitted by Andy Bray of I-CUBED, Ltd
(andy@i-cubed.demon.co.uk). This initial submission is known to work on the IBM 403. It is thought to work on the Motorola 601, 603, and 604 although this remains to be tested. Another user -- Doug Currie (e@flavors.com) -- is interested in this work and will be testing it on the 604 using the Metrowerks C compiler and a different format assembly language.
Diffstat (limited to 'c/src/exec/score/cpu/powerpc/README')
-rw-r--r--c/src/exec/score/cpu/powerpc/README77
1 files changed, 77 insertions, 0 deletions
diff --git a/c/src/exec/score/cpu/powerpc/README b/c/src/exec/score/cpu/powerpc/README
new file mode 100644
index 0000000000..92af381241
--- /dev/null
+++ b/c/src/exec/score/cpu/powerpc/README
@@ -0,0 +1,77 @@
+There are various issues regarding this port:
+
+
+
+1) Legal
+
+This port is written by Andrew Bray <andy@i-cubed.demon.co.uk>, and
+is copyright 1995 i-cubed ltd.
+
+Due to the current lack of a formal release note, this is a limited
+release to OAR, and other specific parties designated by OAR who
+are involved in porting RTEMS to the PowerPC architecture.
+
+This set of release files SHOULD (IMHO) include a cpu specific
+alignment exception handler. Ours is derived from IBM sample
+code. I am seeking a release from IBM for this file. In the
+mean time this file is excluded (but still included in the Makefile
+as a place-holder).
+
+
+
+2) CPU support.
+
+This release fully supports the IBM PPC403GA and PPC403GB processors.
+
+It has only been tested on the PPC403GA (using software floating
+point).
+
+With the gratefully acknowledged assistance of IBM and Blue Micro,
+this release contains code to support the following processors
+ PPC601, PPC603, PPC603e, PPC604, and PPC602.
+
+The support for these processors is incomplete, especially that for
+the PPC602 for which only sketchy data is currently available.
+
+
+
+3) Application Binary INterface
+
+In the context of RTEMS, the ABI is of interest for the following
+aspects:
+
+a) Register usage. Which registers are used to provide static variable
+ linkage, stack pointer etc.
+
+b) Function calling convention. How parameters are passed, how function
+ variables should be invoked, how values are returned, etc.
+
+c) Stack frame layout.
+
+I am aware of a number of ABIs for the PowerPC:
+
+a) The PowerOpen ABI. This is the original Power ABI used on the RS/6000.
+ This is the only ABI supported by versions of GCC before 2.7.0.
+
+b) The SVR4 ABI. This is the ABI defined by SunSoft for the Solaris port
+ to the PowerPC.
+
+c) The Embedded ABI. This is an embedded ABI for PowerPC use, which has no
+ operating system interface defined. It is promoted by SunSoft, Motorola,
+ and Cygnus Support. Cygnus are porting the GNU toolchain to this ABI.
+
+d) GCC 2.7.0. This compiler is partway along the road to supporting the EABI,
+ but is currently halfway in between.
+
+This port was built and tested using the PowerOpen ABI, with the following
+caveat: we used an ELF assembler and linker. So some attention may be required
+on the assembler files to get them through a traditional (XCOFF) PowerOpen
+assembler.
+
+This port contains support for the other ABIs, but this may prove to be incoplete
+as it is untested.
+
+In the long term, the RTEMS PowerPC port should move to the EABI as its primary
+or only port. This should wait on a true EABI version of GCC.
+
+Andrew Bray 18/8/1995