1988-02-03 12:48:58 +00:00
|
|
|
#define CODE_EXPANDER
|
1987-11-20 10:41:03 +00:00
|
|
|
#include <em.h>
|
|
|
|
#include "mach.h"
|
|
|
|
#include "back.h"
|
|
|
|
|
|
|
|
#if EM_WSIZE == 1
|
|
|
|
#define conEM_WSIZE con1
|
|
|
|
#define romEM_WSIZE rom1
|
|
|
|
#define CAST_WSIZE ONE_BYTE
|
|
|
|
#endif
|
|
|
|
#if EM_WSIZE == 2
|
|
|
|
#define conEM_WSIZE con2
|
|
|
|
#define romEM_WSIZE rom2
|
|
|
|
#define CAST_WSIZE TWO_BYTES
|
|
|
|
#endif
|
|
|
|
#if EM_WSIZE == 4
|
|
|
|
#define conEM_WSIZE con4
|
|
|
|
#define romEM_WSIZE rom4
|
|
|
|
#define CAST_WSIZE FOUR_BYTES
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if EM_PSIZE == 1
|
|
|
|
#define relocEM_PSIZE reloc1
|
|
|
|
#endif
|
|
|
|
#if EM_PSIZE == 2
|
|
|
|
#define relocEM_PSIZE reloc2
|
|
|
|
#endif
|
|
|
|
#if EM_PSIZE == 4
|
|
|
|
#define relocEM_PSIZE reloc4
|
|
|
|
#endif
|
|
|
|
|
1988-11-18 18:00:47 +00:00
|
|
|
extern int holno;
|
|
|
|
|
1987-11-20 10:41:03 +00:00
|
|
|
C_hol_dlb( n, l, offs, i)
|
|
|
|
arith n, offs;
|
|
|
|
label l;
|
|
|
|
int i;
|
|
|
|
{
|
|
|
|
if ( i == 0) {
|
|
|
|
switchseg( SEGBSS);
|
|
|
|
align_word();
|
|
|
|
symbol_definition( extnd_hol( ++holno));
|
|
|
|
|
|
|
|
bss( n);
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
switchseg( SEGCON);
|
|
|
|
align_word();
|
|
|
|
symbol_definition( extnd_hol( ++holno));
|
|
|
|
|
|
|
|
for ( i = 0; i < n/EM_PSIZE; i++)
|
|
|
|
relocEM_PSIZE( extnd_dlb( l), offs, ABSOLUTE);
|
|
|
|
}
|
|
|
|
}
|