sandy@uhpgvax.UUCP (Sandy Phipps) (11/20/85)
I would like some information or references that give 'detail' of the format for writing object files on vax's under the UNIX BSD 4.2 operating environment. Also any help on how to go about writing these files for a small compiler.
gwyn@brl-tgr.ARPA (Doug Gwyn <gwyn>) (11/23/85)
> I would like some information or references that give > 'detail' of the format for writing object files on vax's > under the UNIX BSD 4.2 operating environment. > Also any help on how to go about writing these files > for a small compiler. My advice is to generate assembly language and let the existing assembler worry about generating object files.
joel@gould9.UUCP (Joel West) (11/27/85)
In article <245@uhpgvax.UUCP>, sandy@uhpgvax.UUCP (Sandy Phipps) writes: > I would like some information or references that give > 'detail' of the format for writing object files on vax's > under the UNIX BSD 4.2 operating environment. I know this isn't what was asked for, but I'd agree, just use assembly source output. We tried to find out why all the existing compilers do it this way and came up with "just because". I call this "THE CULT OF THE MODULAR TOOLS." However, it does make it a lot easier to debug, means you can write a very dumb one-pass code generator (you want dumb, look at cc -S with optimizing off) by letting the assembler resolve displacements, particularly all the the 127-bit displacement problems: jgeq there -> blss ahead jmp there ahead: Also, as a side benefit, it's easy to write a compiler that works under both VAX BSD and VAX System V. The main difference is that the System V doesn't support ".ascii" directives. (yuk! :-() -- Joel West (619) 457-9681 CACI, Inc. Federal, 3344 N. Torrey Pines Ct., La Jolla, CA 92037 {cbosgd,ihnp4,pyramid,sdcsvax,ucla-cs}!gould9!joel gould9!joel@nosc.ARPA
gwyn@brl-tgr.ARPA (Doug Gwyn <gwyn>) (11/29/85)
> Also, as a side benefit, it's easy to write a compiler > that works under both VAX BSD and VAX System V. The main > difference is that the System V doesn't support ".ascii" > directives. (yuk! :-() Other significant differences are in the semantics of .align, and all the symbolic debugging stuff.