ack/util/ceg/ce_back/obj_back/common.c

25 lines
427 B
C
Raw Normal View History

1988-10-20 13:06:10 +00:00
#include <out.h>
#include <em.h>
#include "back.h"
common(n)
arith n;
{
1988-11-18 17:52:39 +00:00
extern int _Label, _Label_waiting;
register struct outname *nm = &symbol_table[_Label];
1988-10-20 13:06:10 +00:00
1988-11-18 17:52:39 +00:00
if (_Label_waiting) {
/* If possible, generate a common. Local commons must
be delt with later.
*/
nm->on_type |= S_COM | (S_MIN+SEGBSS);
if (n > nm->on_valu) {
nm->on_valu = n;
1988-10-20 13:06:10 +00:00
}
1988-11-18 17:52:39 +00:00
_Label_waiting = 0;
1988-10-20 13:06:10 +00:00
return;
}
switchseg(SEGBSS);
bss(n);
}