obstack-per-frchain changes
[binutils-gdb.git] / gas / ChangeLog
1 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
2
3 * Use one active frag and one obstack per frag chain:
4 * frags.c (frags): Variable deleted.
5 (frag_alloc): New function.
6 (frag_grow, frag_more, frag_variant, frag_now_fix,
7 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
8 frags variable.
9 (frag_new): Ditto. Verify that frch_last and frag_now match on
10 entry and exit, and that old frag_now has non-zero type. Replace
11 "know" uses with "assert". Use frag_alloc instead of mucking with
12 obstack alignment.
13 * frags.h (frags): Declaration deleted.
14 * subsegs.h (struct frchain): Add new field frch_frag_now.
15 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
16 variables.
17 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
18 give it any stricter alignment than frchainS structures need. Do
19 not initialize frags obstack. Set frag_now to point to
20 dummy_obstack. Initialize absolute_frchain.
21 (subseg_set_rest): Save and restore frag_now in frch_frag_now
22 field of frchainS. Don't create new frags on section switch, and
23 use frag_alloc when creating a new frag chain. For absolute
24 section, set frchain_now to absolute_frchain. Verify that
25 frch_last and frag_now match on entry and exit. Initialize
26 per-chain obstack, and under gcc, set required alignment to that
27 needed by fragS structure.
28 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
29
30 * stabs.c (get_stab_string_offset): Only copy input string if a
31 fresh copy is needed, not if the section already exists.
32 (s_stab_generic): Cache stab section name to bypass lookups, since
33 usually it will match. Could be made faster still by changing the
34 memory allocation rules.
35 (s_xstab): Cache section name to bypass repeated string
36 allocation.
37
38 * frags.c (frag_new): Deleted register declarations.
39
40 * listing.c (frag_now): Don't declare.
41
42 * as.c (chunksize): New variable.
43 (debug_memory): New variable.
44 (main): If debug_memory is set, reduce chunksize and
45 _bfd_chunksize.
46 * as.h (chunksize): Declare it.
47 * read.c (read_begin): Use it.
48
49 * config/tc-alpha.c (md_shortopts): Include 'g'.
50 (md_parse_option): Ignore it.
51
52 * Makefile.in (distclean): Remove Makefile and config.status from
53 testsuite directory.
54 (clean-here): Don't delete testsuite. Instead, delete only the
55 files within it that would be generated by running tests.
56
57 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
58 frag_now_fix instead of accessing obstack info directly.
59 * config/tc-arm.c (s_ltorg): Ditto.
60 (md_assemble): Ditto.
61
62 * config/tc-i386.c (md_assemble): Call frag_grow instead of
63 obstack_room.
64
65 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
66
67 * stabs.c (aout_process_stab): Insert debug symbol into symbol
68 chain after parsing value expression, if any, to avoid separating
69 continued .stabs lines.
70
71 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
72
73 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
74 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
75
76 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
77
78 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
79 -mcom support and PPC_OPCODE_ANY for -many.
80 (md_parse_option): Ditto.
81 (ppc_arch): Ditto.
82 (md_begin): For duplicate instructions, print all duplicates
83 before aborting.
84
85 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
86
87 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
88 common mode operation.
89 (md_show_usage): Add -mcom to usage message.
90
91 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
92
93 * expr.c (op_rank): Add O_symbol_rva.
94 * expr.h (operatorT): Add O_symbol_rva.
95 * read.c (cons_worker): Set O_symbol_rva when necessary.
96 * write.c (fix_new_exp): Understand O_symbol_rva.
97
98 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
99
100 * config/tc-mips.c: Correct s_cons arguments. From Michael
101 Joosten <joost@ori.cadlab.de>.
102
103 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
104
105 * config/tc-ppc.c (ppc_macro): Make count unsigned.
106 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
107 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
108 the fix_line field.
109 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
110 make non-static. Change all users.
111 * config/obj-coff.h (coff_n_line_nos): Declare.
112
113 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
114
115 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
116
117 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
118
119 * config/obj-elf.c (obj_elf_common): Convert specified byte
120 alignment to power of two. Set size of local bss symbol.
121
122 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
123
124 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
125
126 * sb.c, macro.c: Decide whether to include <string.h> or
127 <strings.h> just as as.h does.
128
129 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
130
131 * Makefile.in (site.exp): Fix setting of $srcdir.
132
133 * config/tc-arm.c (md_atof): Fix little-endian output.
134 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
135 all coff targets.
136
137 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
138
139 * doc/as.texinfo: Split out the NS32k family documentation,
140 despite its being commented out for now.
141 * doc/c-ns32k.texi: New file.
142
143 * sb.c, macro.c: Include string.h.
144
145 * Makefile.in (comparison): Only check *.o; we don't care if
146 timestamps inserted by the native linker differ.
147
148 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
149 if alignment stricter than 4 bytes is requested; in that case,
150 align to a 4-byte boundary first.
151
152 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
153
154 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
155 uninitialized" warning for `Max_Source_Offset'.
156
157 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
158
159 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
160 qualifiers and detect errors if present.
161 (md_assemble): Add call to parse_toc_entry. Also added some support
162 for the [tocv] qualifier.
163 (ppc_pe_tocd): New function to support data in the toc section.
164
165 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
166
167 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
168 an absolute symbol.
169
170 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
171
172 * config/tc-m68k.c (isbyte): Accept all values from -65536 to
173 +65535, so ~VAL will not be rejected.
174
175 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
176 skip characters after the pseudo-op.
177 (s_else): Likewise.
178 * read.c (get_line_sb): Don't look past buffer_limit.
179 (s_include): In MRI mode, skip characters after the file name.
180
181 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
182
183 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
184 periods in register names.
185
186 For older changes see ChangeLog.1.