From 0291c897be1420546016ef27692e153a1dcdcdc7 Mon Sep 17 00:00:00 2001 From: ceriel Date: Thu, 2 Feb 1989 12:29:14 +0000 Subject: [PATCH] hidden names, made arg_error dependant on DEBUG --- mach/vax4/ce/do_close.c | 5 +++-- mach/vax4/ce/do_open.c | 5 +++-- mach/vax4/ce/output.c | 21 +++++++++++---------- mach/vax4/ce/relocation.c | 13 ++++++------- 4 files changed, 23 insertions(+), 21 deletions(-) diff --git a/mach/vax4/ce/do_close.c b/mach/vax4/ce/do_close.c index 88d819cd3..1e442dc7f 100644 --- a/mach/vax4/ce/do_close.c +++ b/mach/vax4/ce/do_close.c @@ -1,8 +1,9 @@ #include +#include -extern File *_out_file; +extern File *B_out_file; close_back() { - sys_close( _out_file); + sys_close( B_out_file); } diff --git a/mach/vax4/ce/do_open.c b/mach/vax4/ce/do_open.c index 7ddd63d87..41d5d5650 100644 --- a/mach/vax4/ce/do_open.c +++ b/mach/vax4/ce/do_open.c @@ -1,6 +1,7 @@ #include +#include -File *_out_file; +File *B_out_file; open_back( filename) char *filename; @@ -8,6 +9,6 @@ char *filename; if ( filename == (char *) '\0') return( 0); else - return( sys_open( filename, OP_WRITE, &_out_file)); + return( sys_open( filename, OP_WRITE, &B_out_file)); } diff --git a/mach/vax4/ce/output.c b/mach/vax4/ce/output.c index 9c68e88e4..a2f4908ae 100644 --- a/mach/vax4/ce/output.c +++ b/mach/vax4/ce/output.c @@ -3,7 +3,6 @@ #include #include "mach.h" #include "back.h" -#include "data.h" /* Unportable code. Written for VAX, meant to be run on a VAX. */ @@ -11,7 +10,7 @@ Read above comment ... #endif -extern File *_out_file; +extern File *B_out_file; #include #include @@ -20,16 +19,14 @@ static struct exec u_header; static long ntext, ndata, nrelo, nchar; -long _base_address[SEGBSS+1]; +long B_base_address[SEGBSS+1]; static int trsize=0, drsize=0; static struct relocation_info *u_reloc; -static reduce_name_table(); -static putbuf(), put_stringtablesize(); -static init_unixheader(); -static convert_reloc(), convert_name() +static reduce_name_table(), putbuf(), put_stringtablesize(); +static convert_name(), convert_reloc(), init_unixheader(); output_back() { @@ -162,6 +159,7 @@ reduce_name_table() string = q; } +static init_unixheader() { ntext = text - text_area; @@ -183,6 +181,7 @@ init_unixheader() */ } +static convert_reloc( a_relo, u_relo) register struct outrelo *a_relo; register struct relocation_info *u_relo; @@ -220,6 +219,7 @@ register struct relocation_info *u_relo; #define n_mptr n_un.n_name #define n_str n_un.n_strx +static convert_name( a_name, u_name) register struct outname *a_name; register struct nlist *u_name; @@ -253,21 +253,22 @@ register struct nlist *u_name; u_name->n_value = a_name->on_valu; else if ( a_name->on_valu != -1) u_name->n_value = a_name->on_valu + - _base_address[( a_name->on_type & S_TYP) - S_MIN]; + B_base_address[( a_name->on_type & S_TYP) - S_MIN]; else u_name->n_value = 0; } +static put_stringtablesize( n) long n; { putbuf( (char *)&n, 4L); } - +static putbuf(buf,n) char *buf; long n; { - sys_write( _out_file, buf, n); + sys_write( B_out_file, buf, n); } diff --git a/mach/vax4/ce/relocation.c b/mach/vax4/ce/relocation.c index 73698cee7..c05fe0ddb 100644 --- a/mach/vax4/ce/relocation.c +++ b/mach/vax4/ce/relocation.c @@ -1,11 +1,10 @@ #include #include -#include "data.h" #include "back.h" -/* Written to run on SUN, and generate code for SUN */ +/* Written to run on VAX, and generate code for VAX */ -extern long _base_address[]; +extern long B_base_address[]; do_local_relocation() { @@ -13,9 +12,9 @@ do_local_relocation() /* print( "n relocation records %d\n", relo - reloc_info); */ - _base_address[SEGTXT] = 0; - _base_address[SEGCON] = text - text_area; - _base_address[SEGBSS] = _base_address[SEGCON] + data - data_area; + B_base_address[SEGTXT] = 0; + B_base_address[SEGCON] = text - text_area; + B_base_address[SEGBSS] = B_base_address[SEGCON] + data - data_area; for ( rp = reloc_info; rp < relo; rp++) { register struct outname *np = &symbol_table[rp->or_nami]; @@ -38,7 +37,7 @@ do_local_relocation() if ( rp->or_type & RELO4) *((long *)(sect+rp->or_addr)) += np->on_valu + - _base_address[(np->on_type&S_TYP)-S_MIN]; + B_base_address[(np->on_type&S_TYP)-S_MIN]; else fprint( STDERR, "do_relo() : bad relocation size\n"); -- 2.34.1