123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- This is the beta-test version of the GNU assembler. (Probably
- around Version 1.34, but check version.c which gets updated more
- often than this readme.) Please report bugs, missing features, etc
- to hack@gnu.ai.mit.edu (Jay Fenlason) If that address doesn't work,
- try hack@prep.ai.mit.edu or hack@media-lab.media.mit.edu (ONE of
- them should work. If you get *REALLY* desparate, try
- hack@lsrhs.UUCP )
- The assembler has been modified to support a feature that is
- potentially useful when assembling compiler output, but which may
- confuse assembly language programmers. If assembler encounters a
- .word pseudo-op of the form symbol1-symbol2 (the difference of two
- symbols), and the difference of those two symbols will not fit in 16
- bits, the assembler will create a branch around a long jump to
- symbol1, and insert this into the output directly before the next
- label: The .word will (instead of containing garbage, or giving an
- error message) contain (the address of the long jump)-symbol2. This
- allows the assembler to assemble jump tables that jump to locations
- very far away into code that works properly. If the next label is
- more than 32K away from the .word, you lose (silently) RMS claims
- this will never happen. If the -k option is given, you will get a
- warning message when this happens.
- These files are currently set up to allow you to compile all of the
- versions of the assembler (68020, VAX, ns32k, and i386) on the same
- machine. To compile the 68020 version, type 'make a68'. To compile
- the VAX version, type 'make avax'. To compile the ns32k version,
- type 'make a32k'. To compile the Intel 80386 version, type 'make
- a386'. The Makefile contains instructions on how to make one of the
- assemblers compile as the default.
- Before you can compile the 68020 version of the assembler, you must
- make m68k.h be a link to m-sun3.h , m-hpux.h or m-generic.h . If
- you are on a SUN-3 (or other machine that uses a magic number of
- (2 << 16) | OMAGIC type 'ln -s m-sun3.h m68k.h' else if you are on a
- machine running HP-UX, type 'ln m-hpux.h m689k.h' else type
- 'ln -s m-generic.h m68k.h' If your machine does not support symbolic
- links, omit the '-s'.
- If your machine does not have both varargs.h and vfprintf(), but does have
- _doprnt() add -DNO_VARARGS to the CFLAGS line in the makefile. If your
- machine has neither vfprintf() or _doprnt(), you will have to change
- messages.c in order to get readable error messages from the assembler.
- REPORTING BUGS IN GAS
- If you report a bug in GAS, please remember to include:
- A description of exactly what went wrong.
- The type of machine GAS was running on (VAX, 68020, etc),
- The Operating System GAS was running under.
- The options given to GAS.
- The actual input file that caused the problem.
- It is silly to report a bug in GAS without including an input file for
- GAS. Don't ask us to generate the file just because you made it from
- files you think we have access to.
- 1. You might be mistaken.
- 2. It might take us a lot of time to install things to regenerate that file.
- 3. We might get a different file from the one you got, and might not see any
- bug.
- To save us these delays and uncertainties, always send the input file
- for the program that failed.
- If the input file is very large, and you are on the internet, you may
- want to make it avaliable for anonymous FTP instead of mailing it. If you
- do, include instructions for FTP'ing it in our bug report.
|