SUMMARY: SPARC Assembly References

Date: Wed Apr 24 1991 - 07:04:33 CDT

Thanks to all for the quick response to my SPARC assembly language
reference question!

Original question:

> We are looking into the possibility of teaching SPARC assembly language
> as part of our Computer Organization course here at St. Olaf. Does anyone
> know of any good references? The Sun documentation isn't particularly
> helpful. We're not looking for a textbook or anything, just some useful
> (and hopefully readable :-) documentation.

Thanks to the following for their responses: (Brendan Kehoe)
tgsmith@East.Sun.COM (Timothy G. Smith - Technical Consultant Sun Baltimore) (Liam Quin)
Jerry Frain <>
apex! (Mark Cappel)
Jim Guyton
David K. Raila
Lew Yobs
Brian H. Powell
Roland G. Ouellette
Stephane Tsacas

Summary of Responses:


From: Brendan Kehoe <>

 Here's what I was able to collect about it; hope it helps!
 (And if you draw up a formal proposal for your class, mind sending it
along? I've been trying to get these people to go to Sparc assembly
instead of VAX, but I haven't had much ammunition to send it through.)

 Cypress Semiconductor publishes a book called "SPARC Risc User's Guide"
 which covers the SPARC instruction set well.

There is The SPARC System Developer's Guide by L. Leventhal and J. Rohner, ISBN 0-387-97251-X, Springer-Verlag, $39.95.

There is also documentation on the SPARC ABI published under the AT&T label: ISBN 0-13-877598-2 $28.00 Generic ABI ISBN 0-13-877630-x $??.00 SPARC Processor Supplement

It's about as useful as the Motorola 68K books; it has lots of hardware information, and a section that describes the instruction set (one page per instruction). It doesn't really go into the fine art of programming in SPARC, but it's useful as a companion to the Sun Assembly Language Reference manual. -- Matthew Smosna It covers many issues for system software writers for an array of CISC and RISC processors (including the SPARC).

McGraw-Hill pub. ISBN 0-07-016638-2 -- Check out ``extended asm'' of the gcc docs.

The most difficult thing to understand is the format of a Sparc stack frame. There are some *very* interesting comments in the sources of the GNU debugger. -- Brendan Kehoe - Widener Sun Network Manager - Widener University in Chester, PA A Bloody Sun-Dec War Zone "Does this person look relaxed to you? Well, it's actually an experiment of Contour's new 565-E chair!"


From: tgsmith@East.Sun.COM (Timothy G. Smith - Technical Consultant Sun Baltimore)

The "SPARC Architecture Manual" in its latest incarnation (V8 11 December 1990) is much improved over previous editions. Cypress also has some excellent documentation available (I don't have the nfo handy as I am at home now and the books are at work).

You might also want to look at the SBus Specification (Rev B.0 is current).



From: apex!

Hi Craig,

I recently attended one of Sun's "3 Intense Days of Sun" conferences (the SPARC technology one) and a great deal of attention was paid to assembly language programming. I recommend it if you are a course developer as I am at times. The attendant documentation is of considerable value.

There is little in the way of SPARC assembly language documentation out there per se. SPARC assembly language is, by RISC definition, limited in it's breadth and the operation of the processor is straightforward compared to it's CISC brethern. Anyone with 680X0 exception and stack frame handling experience will attest to the difference when moving to SPARC. How it works is up to the programmer and discussion of assembly language depends heavily on the operating environment that the program is intended for. I think that's the reason for the lack of books and other supporting documentation. There's just not that much to teach.

I would recommend the seminar mentioned above and the SPARC architecture manual (Version 8, not Version 7). If you have money, buy the SPARCSIM and SPARCMON development tools. After that, roll your own and have fun.

Randy Perretta Apex Computer Redmond Wa. 1-800-654-8222



There are quite a few reference manuals for SPARC but we found a good SUN manual (for a change) Sun Publication Number 800-1399-12, which is "The SPARC Architecture Manual. Version 8. (make sure that it is vers8 - version7 has a lot less info) I would recommend this over anything else - probably as we got one very quickly from Sun NZ and a photocopy came for free


The best idea though is to get that Sun manual. I think that it is generally held that the Assemble language ref manual is absolutely useless. The SPARC Arch Manual seems to be recommended over any other book

Peter Glassenbury Computer Science dept. University of Canterbury New Zealand -------------------------------------------------------------------------------

From: (Mark Cappel)

Greetings Craig,

I believe Springer Verlag has a book entitled "The SPARC Papers" that may be of interest to you. It was published in either 1989 or 1990.

Mark Cappel 80 Elm St. Senior Editor Peterborough, NH 03458 SunWorld (nee SunTech Journal) voice (603) 924-0100 fax (603) 924-8779



Using a variety of documentation, I have managed to find enough material to not only teach SPARC assembler, but my system's software class this quarter is writing a clone assembler for the SPARC architecture. It is actually a perfect architecture for writing your first assembler due to its simplicity (no addressing modes, few instructions, few machine instruction formats etc.). However, I haven't found anything much on the SPARC in textbooks short of the 10 pages or so in Tannenbaum's new architecture book (as a case study of RISC architectures, in comparison to MIPS).

We are using the RISC tutorial, a few articles out of Sun Technology, the revised SPARC Architecture Manual, SPARC Assembly manual and the man pages to do most of the work. We have found looking at dumps of gcc/cc compilation into assembler useful as well to figure out things like the a.out format.

Frankly, the SPARC assembly language is pretty simple, not much to it. Once you get the basic concepts of the register windows and the pipelining down, there isn't much else there. One thing to watch for, despite the hardware interlock in delay slots, you can still get into pipeline troubles if you aren't careful. That appears to be the only problem we've run into.

Anything I can do to help, please let me know. If in forwarding this to sun manager's there is more interest, I could give more details.

>>>bill punch<<< AI/KBS Lab, Michigan State Univ 517-353-3541

This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:13 CDT