diff options
author | Nick Clifton <nickc@redhat.com> | 2001-11-14 17:43:32 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2001-11-14 17:43:32 +0000 |
commit | c1a44b0823606ed5813c912c66f1a67d904656dd (patch) | |
tree | e5d1c5b565321efcca47e7bb580b2bc82c195b88 /gas | |
parent | 25050984999b3830cd4a2c2f94da9b09b915a164 (diff) | |
download | gdb-c1a44b0823606ed5813c912c66f1a67d904656dd.zip gdb-c1a44b0823606ed5813c912c66f1a67d904656dd.tar.gz gdb-c1a44b0823606ed5813c912c66f1a67d904656dd.tar.bz2 |
Use frag_make_room() to grow the obstack.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/frags.c | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 337c8dc..3fbbd2c 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2001-11-12 Nick Clifton <nickc@cambridge.redhat.com> + + * frags.c (frag_grow): Use frag_make_room() to grow the + obstack. + 2001-11-14 Nick Clifton <nickc@cambridge.redhat.com> * config/tc-sparc.c (md_apply_fix3): Do not remove the symbol's diff --git a/gas/frags.c b/gas/frags.c index 8d7ed2f..e80cced 100644 --- a/gas/frags.c +++ b/gas/frags.c @@ -65,6 +65,12 @@ void frag_grow (nchars) unsigned int nchars; { + /* Try really hard to grow the obstack. Creating a new obstack can + disable expression optimisations that would otherwise occur if + two symbols were located in the same obstack. */ + if (obstack_room (&frchain_now->frch_obstack) < nchars) + obstack_make_room (& frchain_now->frch_obstack, 2 * nchars); + if (obstack_room (&frchain_now->frch_obstack) < nchars) { unsigned int n; |