diff options
author | Steve Chamberlain <sac@cygnus> | 1992-06-09 14:57:23 +0000 |
---|---|---|
committer | Steve Chamberlain <sac@cygnus> | 1992-06-09 14:57:23 +0000 |
commit | 90d49457163cfd1640b02d210e6cb35e4bdebe34 (patch) | |
tree | 9e8d4b1236e7c41bef0a85e095d723b4b6a70dee /gas/subsegs.c | |
parent | dd823a49ca142fc7896769ebdb29b38792d5e6f8 (diff) | |
download | gdb-90d49457163cfd1640b02d210e6cb35e4bdebe34.zip gdb-90d49457163cfd1640b02d210e6cb35e4bdebe34.tar.gz gdb-90d49457163cfd1640b02d210e6cb35e4bdebe34.tar.bz2 |
* subsegs.c (subseg_change): allow and handle a change into SEG_BSS.
Diffstat (limited to 'gas/subsegs.c')
-rw-r--r-- | gas/subsegs.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/gas/subsegs.c b/gas/subsegs.c index 2e4c10b..e883e29 100644 --- a/gas/subsegs.c +++ b/gas/subsegs.c @@ -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 */ |