This commit was generated by cvs2svn to track changes on a CVS vendor
[unix-history] / gnu / usr.bin / as / README.gnu
CommitLineData
7b374118
NW
1This is the beta-test version of the GNU assembler. (Probably
2around Version 1.35, but check version.c which gets updated more
3often than this readme.)
4
5The assembler has been modified to support a feature that is
6potentially useful when assembling compiler output, but which may
7confuse assembly language programmers. If assembler encounters a
8.word pseudo-op of the form symbol1-symbol2 (the difference of two
9symbols), and the difference of those two symbols will not fit in 16
10bits, the assembler will create a branch around a long jump to
11symbol1, and insert this into the output directly before the next
12label: The .word will (instead of containing garbage, or giving an
13error message) contain (the address of the long jump)-symbol2. This
14allows the assembler to assemble jump tables that jump to locations
15very far away into code that works properly. If the next label is
16more than 32K away from the .word, you lose (silently) RMS claims
17this will never happen. If the -k option is given, you will get a
18warning message when this happens.
19
20These files are currently set up to allow you to compile all of the
21versions of the assembler (68020, VAX, ns32k, and i386) on the same
22machine. To compile the 68020 version, type 'make a68'. To compile
23the VAX version, type 'make avax'. To compile the ns32k version,
24type 'make a32k'. To compile the Intel 80386 version, type 'make
25a386'. The Makefile contains instructions on how to make one of the
26assemblers compile as the default.
27
28Before you can compile the 68020 version of the assembler, you must
29make m68k.h be a link to m-sun3.h , m-hpux.h or m-generic.h . If
30you are on a SUN-3 (or other machine that uses a magic number of
31(2 << 16) | OMAGIC type 'ln -s m-sun3.h m68k.h' else if you are on a
32machine running HP-UX, type 'ln m-hpux.h m689k.h' else type
33'ln -s m-generic.h m68k.h' If your machine does not support symbolic
34links, omit the '-s'.
35
36See the instructions in the Makefile for compiling gas for the Sequent
37Symmetry (dynix 3.0.12 + others?) or for the HP 9000/300
38
39If your machine does not have both varargs.h and vfprintf(), but does have
40_doprnt() add -DNO_VARARGS to the CFLAGS line in the makefile. If your
41machine has neither vfprintf() or _doprnt(), you will have to change
42messages.c in order to get readable error messages from the assembler.
43
44
45 REPORTING BUGS IN GAS
46
47Bugs in gas should be reported to bug-gnu-utils@prep.ai.mit.edu If you can't
48get through to prep, try hack@gnu.ai.mit.edu or hack@media-lab.media.mit.edu
49
50If you report a bug in GAS, please remember to include:
51
52A description of exactly what went wrong.
53
54The type of machine GAS was running on (VAX, 68020, etc),
55
56The Operating System GAS was running under.
57
58The options given to GAS.
59
60The actual input file that caused the problem.
61
62It is silly to report a bug in GAS without including an input file for
63GAS. Don't ask us to generate the file just because you made it from
64files you think we have access to.
65
661. You might be mistaken.
672. It might take us a lot of time to install things to regenerate that file.
683. We might get a different file from the one you got, and might not see any
69bug.
70
71To save us these delays and uncertainties, always send the input file
72for the program that failed.
73
74If the input file is very large, and you are on the internet, you may
75want to make it avaliable for anonymous FTP instead of mailing it. If you
76do, include instructions for FTP'ing it in your bug report.
77
78------------------------------ README.APOLLO ---------------------------------
79
80The changes required to get the GNU C compiler running on
81Apollo 68K platforms are available via anonymous ftp from
82labrea.stanford.edu (36.8.0.47) in the form of a compressed
83tar file named "/pub/gnu/apollo-gcc-1.37.tar.Z".
84The size of the file is 84145 bytes.
85
86To build GCC for the Apollo you'll need the virgin FSF
87distributions of bison-1.03, gas-1.34, and gcc-1.37. They
88are also on labrea.stanford.edu as well as prep.ai.mit.edu.
89My changes are to enable gas to produce Apollo COFF object
90files and allow gcc to parse some of the syntax extensions
91which appear in Apollo C header files. Note that the
92COFF encapsulation technique cannot be used on the Apollo.
93
94The tar file should be unpacked in the directory containing
95the gas-1.34 and gcc-1.37 directories; a few files will be overlaid,
96and an APOLLO-GCC-README file will appear in the top directory.
97This file contains detailed instructions on how to proceed.
98
99These changes will only work for SR10.1 or later systems, using
100the 6.6 or later version of the Apollo C compiler.
101
102If you do not have ftp access, I can mail you the changes in the
103form of diffs; they are approximately 40K in length. If you request
104them, be sure to give me a voice phone number so I can contact you
105in case I can't send you mail; I've had several requests in the
106past from people I can't contact.
107
108By the way, I'm working on getting the GNU C++ compiler running;
109there are a couple problems to solve. I hope to be able to announce
110the Apollo version shortly after the 1.37 version is released.
111
112John Vasta Hewlett-Packard Apollo Systems Division
113vasta@apollo.hp.com M.S. CHA-01-LT
114(508) 256-6600 x6362 300 Apollo Drive, Chelmsford, MA 01824
115UUCP: {decwrl!decvax, mit-eddie, attunix}!apollo!vasta
116
117------------------------------------
118
119You might refer others who are interested in a similar thing.
120
121Kevin Buchs buchs@mayo.edu
122
123
124------------------------------ README.COFF -----------------------------------
125
126If you have a COFF system, you may wish to aquire
127
128 UUCP: osu-cis!~/gnu/coff/gnu-coff.tar.Z
129 or
130 FTP: tut.cis.ohio-state.edu:/pub/gnu/coff/gnu-coff.tar.Z
131
132These contain patches for gas that will make it produce COFF output.
133I have never seen these patches, so I don't know how well they work.