* subsegs.c (subseg_change): allow and handle a change into SEG_BSS.

This commit is contained in:
Steve Chamberlain 1992-06-09 14:57:23 +00:00
parent dd823a49ca
commit 90d4945716
2 changed files with 11 additions and 4 deletions

View File

@ -1,3 +1,7 @@
Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
* subsegs.c (subseg_change): allow and handle a change into SEG_BSS.
Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
* expr.c(expr): allow SEG_REGISTER in expressions.

View File

@ -138,12 +138,16 @@ register int subseg;
seg_fix_rootP = & data_fix_root;
seg_fix_tailP = & data_fix_tail;
}
else
else if (seg == SEG_TEXT)
{
know (seg == SEG_TEXT);
seg_fix_rootP = & text_fix_root;
seg_fix_tailP = & text_fix_tail;
}
else {
know (seg == SEG_BSS);
seg_fix_rootP = & bss_fix_root;
seg_fix_tailP = & bss_fix_tail;
}
#endif
}
@ -170,7 +174,7 @@ register subsegT subseg;
{
long tmp; /* JF for obstack alignment hacking */
#ifndef MANY_SEGMENTS
know(seg == SEG_DATA || seg == SEG_TEXT);
know(seg == SEG_DATA || seg == SEG_TEXT || seg == SEG_BSS);
#endif
#ifdef OBJ_AOUT
/* If -R specifed, always put stuff into the data section */
@ -183,7 +187,6 @@ register subsegT subseg;
}
}
#endif
if (seg != now_seg || subseg != now_subseg)
{ /* we just changed sub-segments */
register frchainS * frcP; /* crawl frchain chain */