
192
Evaluating and Programming the 29K RISC Family
3.9.2 Free Software Foundation (GNU), Assembler
The Free Software Foundation Inc. is an organization based in Cambridge MA,
USA, which helps develop and distribute software development tools for a range of
processors. Anyone can contribute programs to the the foundation and users of
foundation supplied tools have the freedom to distribute copies of tools freely (or can
charge for this service if they wish). The foundation tools (often known as GNU
tools) include a complete tool chain for software development for the 29K family.
The GNU assembler is known as GAS, and is available in source form from AMD
and from the Cygnus Support company.
GAS is primarily intended to assemble the output from the GNU C language
compiler, GCC (see Chapter 2). It does accept code complying with the AMD assem-
bly language syntax; however, there are a number of differences. Most notably, it
does not support macro instructions. Developers may wish to use a UNIX utility such
as M4 or CPP to support macros with the GAS tool (section 2.5.2 has an example of
assembler macros using the C preprocessor, CPP).
A number of developers have compiled GAS for use in a cross–development
environment where the target processor is a 29K, but the development platform is a
SUN or HP workstation or an IBM 386–PC. These tools are available among the 29K
GNU community, many of which are university engineering departments. AMD has
a University Support Program which helps universities wishing to include the 29K in
educational programs, to obtain hardware and software development tools as well as
other class materials. There may be a university near you which will supply you with
a copy of the compiled GNU tools for a small tape handling charge.
If you get a copy of GAS from AMD or Cygnus or other Fusion29K partner,
then it is likely that the documentation supporting the tool was supplied. After instal-
ling the tools on a UNIX machine and updating the MANPATH variable to include
the GNU manual pages, it should be possible to just type “man gas” and obtain a dis-
play of the GAS program options. Alternatively look in the GAS source directories
for a file called 29k/src/gas/doc/gas.1 or as.1 to obtain the necessary documentation.
Below is a extract from the GAS manual pages which indicates some of the capabili-
ties of the tool.
gas [–a | –al | –as] [–f] [–I path] [–K] [–L] [–o objfile] [–R] [–v] [–W]
files...
OPTIONS
–a | al | as
Turn on assembly listing;
–al
, listing only;
–as,
symbols,
–a
, everything.
Fast
––skip preprocessing (assume source is compiler output).
–f
–I path
Add
path
to search list for .include directives.