parse [reg], lo(exp), and hi(exp)
[deliverable/binutils-gdb.git] / gas / NOTES.config
CommitLineData
0e39a8bb
RP
1
2 The GAS Configuration Plan
3
4Theory:
5
77dea544
ILT
6The goal of the new configuration scheme is to bury all object format
7and target processor dependancies in object and target specific files.
8That is, to move all #ifdef's out of the gas common code.
0e39a8bb
RP
9
10Here's how it works. There is a .h and a .c file for each object file
77dea544
ILT
11format and a .h and a .c file for each target processor. The
12configure script creates symlinks in the current directory to the
13appropriate files in the config directory. configure also serves as a
14list of triplets {host, target, object-format} that have been tested
15at one time or another. I also recommend that configure be used to
16document triplet specific notes as to purpose of the triplet, etc.
0e39a8bb
RP
17
18Implementation:
19
0e39a8bb
RP
20obj-format.h is a {sym}link to .../config/obj-something.h. It is intended
21
22All gas .c files include as.h.
23
24as.h #define's "gas", includes host.h, defines a number of gas
25specific structures and types, and then includes tp.h, obj.h, and
26target-environment.h.
27
28target-environment.h defines a target environment specific
29preprocessor flag, eg, TE_SUN, and then includes obj-format.h.
30
31obj-format.h defines an object format specific preprocessor flag, eg,
32OBJ_AOUT, OBJ_BOUT, OBJ_COFF, includes "target-processor.h", and then
33defines the object specific macros, functions, types, and structures.
34
35target-processor.h
36
37target-processor.
38
39Porting:
40
41There appear to be four major types of ports; new hosts, new target
42processors, new object file formats, and new target environments.
This page took 0.166949 seconds and 4 git commands to generate.