* i386-nlmstub.c: Undo I/O redirection changes by Tom Lord.
[binutils.git] / gas / ChangeLog
CommitLineData
81413fa2
JL
1Sun Nov 28 12:11:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
2
278cd007
JL
3 * app.c (do_scrub_next_char): Output a TAB before any
4 .app* directive.
5
81413fa2
JL
6 * config/tc-hppa.c (fix_new_hppa): Make sure a sub_symbol
7 exists before trying to peek at its name.
8 (pa_space): Do not call pa_align_subseg. See hppa/unsorted/align3.s
9 for testcase.
10 (pa_align_subseg): Delete unused/unwanted function.
11
385ce433
JL
12Sat Nov 27 22:49:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
13
14 * read.c (read_a_source_file): Fix test for when to stick a colon
15 on the end of a label. Make code conditional on either MRI or
16 LABELS_WITHOUT_COLONS.
17
18 * app.c (do_scrub_next_char): If a line begins with whitespace, leave
19 the single whitespace character alone. Eat all others.
20
21 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define.
22
31a385d1
JL
23Wed Nov 24 01:22:54 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
24
25 * config/tc-hppa.c (pa_procend): Do not call process_exit.
26 (exit_processing_complete): Delete unwanted variable and all
27 references.
28
c5953036
ILT
29Wed Nov 24 02:31:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
30
31 * ecoff.c (ecoff_setup_ext): Renamed from ecoff_build_ext.
32 Changed to not actually build the external symbol information, as
33 that is now done by the ECOFF back end.
34 (ecoff_build_debug): Changed accordingly.
35 * ecoff.h (obj_ecoff_set_ext): Declare. obj-format.c function
36 called by ecoff_setup_ext.
37 * config/obj-ecoff.c (ecoff_frob_file): If debug_info count is 0,
38 set corresponding pointer to NULL. Don't set raw_size and
39 raw_syments.
40 (obj_ecoff_set_sym_index): Removed.
41 (obj_ecoff_set_ext): New function.
42 * config/obj-ecoff.h (obj_set_sym_index): Don't define.
43 (obj_ecoff_set_sym_index): Don't declare.
44 * config/obj-elf.c (obj_ecoff_set_ext, elf_get_extr,
45 elf_set_index): New functions used for ECOFF_DEBUGGING.
46 (elf_frob_file): Reworked ECOFF debug generation to use
47 new functions in bfd/ecofflink.c.
48
49Sun Nov 21 23:54:52 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
50
51 * config/tc-hppa.c (pa_def_subspaces): Only create the unwind
52 subspace for ELF. In the SOM world, the linker is responsible
53 for creating the unwind subspaces.
54
e0209756
ILT
55Fri Nov 19 16:25:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
56
57 * config/obj-coffbfd.c: Use PARAMS rather than EXFUN.
58 (yank_symbols): Don't call S_SET_EXTERNAL if the storage class is
59 already set. Fixes .def var; .val external_var; .scl 3; .endef.
60 (adjust_stab_section): Make static. Declare return type. Remove
61 unused variables.
62
63 * config/tc-i386.h: Declare tc_coff_fix2rtype and
64 tc_coff_sizemachdep.
65
0669e047
KR
66Fri Nov 19 04:33:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
67
68 * write.c (write_object_file): Disable obj_check_file_symbols
69 hook; only back end using it wasn't using it correctly.
70 (write_object_file): Always call obj_frob_symbol and
71 tc_frob_symbol; always retain symbol if it's used by a relocation,
72 regardless of what these routines indicate.
73 * config/obj-coff.c (coff_frob_symbol): Renamed from
74 coff_check_file_symbols.
75 * config/obj-coff.h (obj_check_file_symbols): Deleted.
76 (coff_frob_symbol): Declare.
77 (obj_frob_symbol): Call it.
78
79 * config/obj-coff.c (obj_crawl_symbol_chain, obj_emit_strings,
80 obj_pre_write_hook): Don't define for BFD_ASSEMBLER.
81 (c_section_header): Ditto. Delete superfluous return at end of
82 function.
83
84 * config/obj-coff.h [TC_SPARC]: Include coff/sparc.h, and specify
85 coff-sparc-lynx.
86 (SA_GET_SYM_TAGNDX): Use BFD_HEADERS version for BFD_ASSEMBLER
87 too.
88 (c_section_header): Rewrite prototype so that it contains no
89 preprocessing directives. Don't declare it at all if
90 BFD_ASSEMBLER.
91
92 * configure.in (sparc*-*-lynxos): New target, using coff and
93 BFD_ASSEMBLER.
94
95 * stabs.c: New file.
96 * Makefile.in (REAL_SOURCES, OBJS): List it.
97 * read.c (STAB_SECTION_NAME, STAB_STRING_SECTION_NAME,
98 get_stab_string_offset, s_stab_generic, s_stab, s_xstab, s_desc):
99 Moved to new file.
100
101 * config/tc-sparc.c (tc_gen_reloc): Handle coff files like elf
102 files.
103
29cc5816
ILT
104Wed Nov 17 17:23:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
105
106 * configure.in (mips-*-irix5*): New target. Use elf and mips-big.
107 * config/obj-elf.c: If ECOFF_DEBUGGING, include ecoff.h.
108 (obj_pseudo_table): If ECOFF_DEBUGGING, define ECOFF
109 pseudo-ops.
110 (obj_read_begin_hook): If ECOFF_DEBUGGING, call
111 ecoff_read_begin_hook.
112 (obj_symbol_new_hook): If ECOFF_DEBUGGING, call
113 ecoff_symbol_new_hook.
114 (obj_elf_init_stab_section): Cast alloca result.
115 (elf_frob_file): If ECOFF_DEBUGGING, finish up ECOFF debugging
116 information and write it out into .mdebug section.
117 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): New macro.
118 (TARGET_SYMBOL_FIELDS): Use ELF_TARGET_SYMBOL_FIELDS.
119 (ECOFF_DEBUGGING): Define if TC_MIPS.
120 (TARGET_SYMBOL_FIELDS): If ECOFF_DEBUGGING, override to add
121 fields required by ECOFF.
122 * config/tc-mips.c: Check ECOFF_DEBUGGING rather than
123 OBJ_ECOFF in many cases.
124 (mips_any_noreorder): New variable.
125 (mips_cprestore_offset): Initialize to -1.
126 (mips_frame_reg): New variable.
127 (RELAX_ENCODE, RELAX_OLD, RELAX_NEW, RELAX_RELOC1,
128 RELAX_RELOC2, RELAX_RELOC3, RELAX_WARN): New macros.
129 (md_pseudo_table): Handle "gpword" and "cpadd".
130 (md_begin): Initialize ok to false. If OBJ_ELF, set alignment
131 of text, data and bss sections to 4. Set alignment of
132 .reginfo section to 2. If ECOFF_DEBUGGING, create .mdebug
133 section.
134 (ALIGN_ERR, ALIGN_ERR2): Removed unused and useless alignment
135 check.
136 (append_insn, macro_build, macro_build_lui): Take place
137 argument. Changed all callers.
138 (append_insn): If appending a nop, don't emit one.
139 (macro_build): Changed assertion for 'i', 'j', 'o' case.
140 (gp_reference): Removed.
141 (load_address): New function.
142 (macro): If mips_noreorder is used, set mips_any_noreorder.
143 Extensive changes to handle GP and PIC symbols differently.
144 Build both possible code choices using a variant frag, and
145 make a final decision at the end of assembly when all
146 information is known. Added PIC support for all symbol
147 references.
148 (mips_ip): Don't permit anything but a number after $ for a
149 coprocessor register. Don't use .lit4 or .lit8 sections when
150 generating PIC code. If OBJ_ELF, set alignment of .lit4 or
151 .lit8 section to 4.
152 (md_apply_fix): Accept and ignore GOT16 and GPREL32 relocs.
153 (s_change_sec): Set alignment of ELF .rodata or .sdata section
154 to 4.
155 (s_mipsset): If .set noreorder, set mips_any_noreorder.
156 (s_cpload): Ignore .cpload if not generating PIC code. Warn
157 if .cpload is not in noreorder section.
158 (s_cprestore): Ignore .cprestore if not generating PIC code.
159 (s_gpword, s_cpadd): New functions.
160 (tc_get_register): Added frame argument; if true, set
161 mips_frame_reg to return value. Changed all callers.
162 (md_estimate_size_before_relax): Don't error out, but instead
163 determine how much a frag should grow.
164 (tc_gen_reloc): Return multiple relocs if appropriate, as
165 determined by md_estimate_size_before_relax.
166 (md_convert_frag): New function.
167 (mips_elf_final_processing): Set ELF header flags based on
168 mips_any_noreorder and mips_pic.
169 * config/tc-mips.h (RELOC_EXPANSION_POSSIBLE): Define.
170 (MAX_RELOC_EXPANSION): Define to be 3.
171 (md_relax_frag): Define to be 0.
172 (md_convert_frag): Don't define.
173 (tc_get_register): Changed declaration.
174
175 * ecoff.h, ecoff.c: New files pulled out of config/obj-ecoff.c to
176 support generating ECOFF debugging information for MIPS ELF
177 targets. Compiled only if ECOFF_DEBUGGING is defined. Changed
178 handling of external symbols: it now always generates exactly
179 those external symbols that are defined in the global symbol list.
180 * Makefile.in (REAL_SOURCES): Added ecoff.c.
181 (REAL_HEADERS): Added ecoff.h.
182 (OBJS): Added ecoff.o.
183 (ecoff.o): New target.
184 * config/obj-ecoff.c: Almost entirely moved into ecoff.c.
185 Remaining code mostly just calls ecoff.c code.
186 * config/obj-ecoff.h: Define ECOFF_DEBUGGING.
187 (TARGET_SYMBOL_FIELDS): Make ecoff_symbol a pointer to a
188 struct localsym.
189 (obj_read_begin_hook, obj_symbol_new_hook): Define to call
190 functions in ecoff.c.
191 (ecoff_stab): Don't declare (now declared in ecoff.h).
192 (obj_set_sym_index): Define.
193 (obj_ecoff_set_sym_index): Declare.
194
195 * frags.h (frag_grow): Declare.
196 * frags.c (frag_grow): Made non-static.
197
198 * write.c (is_dnrange): Do not define if md_relax_frag is defined.
199 (relax_segment): If md_relax_frag is defined, use it to handle a
200 frag of type rs_machine_dependent rather than looking through
201 md_relax_table.
202
203 * read.c (read_a_source_file): If we find a bad pseudo-op,
204 do a continue to go on to the next line rather than a break.
205 Removed duplicate bad pseudo-op code which was never executed.
206
207 * read.c (s_lcomm): Do not require a comma after the name.
208
209 * subsegs.h (segment_info_type): Changed hadone field to bitfield.
210 Added bss bitfield.
211 * as.c (perform_an_assembly_pass): Set bss flag for bss_section.
212 * read.c (s_lcomm): Set bss flag for .sbss section if used.
213 * write.c (relax_and_size_seg): Don't set SEC_HAS_CONTENTS for a
214 bss section. Set SEC_RELOC if there are any relocations, even for
215 a zero size section.
216
217 * write.c (write_relocs): In RELOC_EXPANSION_POSSIBLE case, base
218 data offset on reloc[0]->address rather than reloc[j]->address, so
219 that multiple relocs can affect different memory locations.
220
221 * write.c (chain_frchains_together, relax_and_size_seg,
222 adjust_reloc_syms, write_relocs): Make third argument PTR, not
223 char *, to match definition of bfd_map_over_sections.
224
225 * app.c (do_scrub_next_char): Don't interpret a comment character
226 as starting a CPP line directive unless it is a '#' and is the
227 very first characters on the line (i.e., do not permit leading
228 whitespace).
229
230 * messages.c (identify): Make file argument non-const, to match
231 callers.
232
c5e9ccd0
JL
233Tue Nov 16 20:38:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
234
235 * config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check.
236
237Sat Nov 13 18:22:48 1993 Steve Chamberlain (sac@jonny.cygnus.com)
238
239 * config/tc-sh.c (md_apply_fix): Cope with IMM16 type too.
240 * config/tc-z8k.c (build_bytes, md_apply_fix): Understand nDISP7
241 relocs.
242
4a1b59ef
JL
243Fri Nov 12 16:51:47 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
244
3e330968 245 * config/tc-hppa.[ch]: Fix assorted trivial indention problems.
4a1b59ef
JL
246 * config/obj-som.c (obj_som_version): Add missing ';'.
247 (som_frob_file): Delete whitespace at EOL.
248
f3b6e1f2
KR
249Fri Nov 12 15:26:21 1993 Ken Raeburn (raeburn@cygnus.com)
250
251 * Makefile.in (VERSION): Updated following 2.2 release.
252
c5e9ccd0 253Fri Nov 12 14:52:17 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
f2eed884
JL
254
255 * config/tc-hppa.c (hppa_fix_struct): Use a real type for the
256 field selector, rather than an int. All uses of field selectors
257 fixed.
258 (tc_gen_reloc): For SOM PLABELs, always set addend to zero for now.
259 (md_apply_fix_1): Do not call hppa_field_adjust for any PLABEL
260 field.
261
262 Thu Nov 11 15:49:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
a721c80b
JL
263
264 * config/tc-hppa.c (pa_type_args): For .import statements,
265 silently ignore attempt to change the symbol type for a function
f2eed884 266 from ST_ENTRY to ST_CODE on .import.
a721c80b 267
ca16b5e5
ILT
268Wed Nov 10 16:19:13 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
269
270 * write.h (fixS): Rename fx_callj field to fx_tcbit.
271 * write.c, config/obj-coff.c, config/obj-coffbfd.c,
272 config/tc-i960.c: Corresponding changes.
273
48153d49
JL
274Tue Nov 9 00:49:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
275
7420b02b
JL
276 * Makefile.in (distclean): Delete config-stamp and config.h
277
f41f3d72
JL
278 * config/tc-hppa.c (evaluate_absolute): Avoid relying on
279 ANSI-C features.
280
48153d49
JL
281 * config/tc-hppa.c (pa_type_args): Renamed from pa_export_args.
282 Accept new argument "is_export". All callers changed. When
283 processing a .export directive for a function, do not allow
284 the user to set the type to "CODE", instead warn and set the
285 type to "ENTRY".
286
9226253a
ILT
287Mon Nov 8 12:05:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
288
289 * config/tc-mips.c (mips_ip, printInsn): Handle 'k' (from Ted
290 Lemon <mellon@pepper.ncd.com>).
291 (mips_ip): Permit odd numbered floating point registers if -mips3.
48153d49 292 (macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
9226253a 293
53087850
DE
294Mon Nov 8 07:45:01 1993 Doug Evans (dje@canuck.cygnus.com)
295
296 * configure.in: Remove h8300h, we have multilib now.
297
5f8a3788
DHW
298Mon Nov 8 06:09:18 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com)
299
300 * configure.in: Support generic netware as being ELF format.
301 Recognise unixware if the user supplies it.
302
163aac84
JL
303Sun Nov 7 01:02:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
304
513f0471
JL
305 * First cut at cleaning up PA instruction parsing.
306 * config/tc-hppa.c (pa_get_absolute_expression): Accept pointer to
307 insn structure as an argument, and a pointer to a string. All
308 callers changed. Always read any field selector here. Call
309 evaluate absolute to get a return value.
310 (evaluate_absolute): Addept pointer to insn structure as its
311 argument. All callers changed.
312 (INSERT_FIELD_AND_CONTINUE): New macro for inserting a bitfield
313 into an instruction and continuing the main pa_ip loop.
314 (CHECK_FIELD): New macro for simple range checking of fields.
315 (pa_ip): Delete unused variables. Use INSERT_FIELD_AND_CONTINUE
316 and CHECK_FIELD. All immediate fields now pass through
317 pa_get_absolute_expression which will also handle field selectors.
318 Delete dead code. Simplify.
319 (md_apply_fix_1): Use CHECK_FIELD to verify any fixes that are
320 applied are in range. Use bfd_put_32 rather than inserting each
321 byte of the fixed instrution into the buffer ourselves.
322
3e411021
JL
323 * write.c (fixup_segment): Delete {SEG,GLOBAL}_DIFF_ALLOWED code,
324 it was PA specific and is no longer needed (it's now handled
325 within the PA backend).
326 * config/tc-hppa.h (SEG_DIFF_ALLOWED): Delete definition.
327 * config/tc-hppa.c (fix_new_hppa): If the subtract symbol for
328 a fixup is $global$ change it to NULL as $global$ is really only
329 needed long enough to determine the base type of relocation to use.
330
240cbc57
JL
331 * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
332
163aac84
JL
333 * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
334 for 'z' operands (target of ble branch).
335
1cc248d2
JL
336Sat Nov 6 22:41:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
337
18c4f112
JL
338 * config/tc-hppa.c: (update_subspace): Fix type and name of last
339 parameter. All callers fixed.
340 (md_begin, pa_chk_field_selector, pa_entry): Lint.
341
1cc248d2
JL
342 * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
343 to default state after it's been used.
344
88eb7ea6
JL
345Fri Nov 5 12:08:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
346
347 * config/obj-som.c (obj_som_init_stab_section): Change
348 space/subspace sort keys for the stab sections so as to avoid
349 bugs in the hp linker and pxdb.
350
0f894895
JL
351Thu Nov 4 17:00:05 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
352
353 * write.c (chain_frchains_together): Update pointer to last
354 frag for a segment in the seginfo structure.
355
de074576
JW
356Thu Nov 04 09:09:35 1993 Jeffrey Wheat (cassidy@cygnus.com)
357
358 * Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
359
360Wed Nov 3 12:16:27 1993 Ken Raeburn (raeburn@rover.cygnus.com)
361
362 * write.c (fixup_segment): Handle conversion of subtraction to
363 pc-relative addressing even if pc-relative flag is already set.
364
365 * config/tc-m68k.c (m68k_ip_op): Use strchr, not index. Don't
366 declare either.
367
368 * doc/Makefile.in (distclean): Delete intermediate files from dvi
369 build, but not the dvi or info files.
370 * Makefile.in (clean-here): New target; cleans up current
371 directory only.
372 (distclean): Use it instead of clean.
373
374 * read.c (s_xstab): Don't use alloca.
375
376 * messages.c (identify): New routine; print message identifying
377 following messages as coming from assembler.
378 (as_show_where, as_bad_internal, as_bad_where): Call it.
379 (as_fatal): Don't need to identify program any more.
380
efe8ef02
ILT
381Tue Nov 2 18:04:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
382
383 * read.c (s_lcomm): Put small objects in .sbss for MIPS ELF as
384 well as MIPS ECOFF.
385 (get_stab_string_offset): Remove unused variable aligned.
386
aa14e863
JL
387Tue Nov 2 15:07:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
388
d6e524f3
JL
389 * tc-hppa.c: Add %dp and %rp as synonyms for %r27 and %r2 in the
390 predefined register table.
391 (pa_parse_number): Handle %rp in common register shortcut code.
392 Consistently set return value to -1 for an error. Clean up error
393 messages and only print them when "print_errors" is true. Handle
394 empty string case like the HP assembler -- assume a value of
395 zero.
396
20cee6d8
JL
397 * config/ho-hpux.h: Do not include ho-sysv.h. Instead include
398 standard hpux include files to pick up various function decls.
399
aa14e863
JL
400 * config/ho-hppaosf.h: Delete _IO* macros. They are defined in
401 stdio.h. Delete bogus declaration of free. Get path to
402 alloca-conf.h right.
403
25270a1c
KR
404Tue Nov 2 13:57:30 1993 Ken Raeburn (raeburn@rover.cygnus.com)
405
406 * expr.c (operand): Fix checks for characters following "0b" or
407 "0f".
408
f197d7eb
JL
409Mon Nov 1 21:37:04 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
410
ff852e11
JL
411 * config/obj-som.h (obj_attach_unwind_info): Define as a hook
412 so GAS can attach unwind descriptor information to a BFD symbol.
413 * config/tc-hppa.c (fix_new_hppa): If necessary attach unwind
414 descriptor information to the BFD symbol.
415 (md_apply_fix): R_HPPA_ENTRY and R_HPPA_EXIT can never be "applied",
416 they are simply markers. Make R_HPPA_UNWIND_* handling OBJ_ELF
417 dependent.
418 (pa_build_unwind_subspace): Whole function is OBJ_ELF dependent.
419 (pa_entry): Build a R_HPPA_ENTRY relocation when configured for SOM.
420 (pa_exit): Likewise, but built a R_HPPA_EXIT relocation. Do not
421 build "end-of-function" symbols for SOM, they are not needed.
422
a50e9b55
JL
423 * config/tc-hppa.c (process_exit): Create temporary symbols with
424 correct prefixes so they can be eliminated later.
425
49fc68a1
JL
426 * config/tc-hppa.c (call_info struct): Delete unused "frame" field.
427 (pa_callinfo): Insert framesize into the unwind information as
428 soon as it's available.
429 (pa_build_unwind_subspace): Do not insert framesize into the unwind
430 information here.
431
c43d56f7
JL
432 * Add support for marker type relocations. These mark areas
433 of interest to the linker. ENTRY/EXIT relocations for SOM are
434 an example of marker relocations.
435 * write.c (write_relocs): Instead of assuming size of a relocation
436 is 4 bytes, pick up the size from relocation itself.
437 (fixup_segment): Do not complain that a value is too small for
438 marker relocations.
439
009dc5e1
JL
440 * struc-symbol.h: Add new "sy_used" field to the symbol structure.
441 * expr.c (operand): Set sy_used for any symbol used as an operand.
442 (expr): Likewise for any symbol used in an expression.
443 * config/tc-hppa.h (tc_frob_symbol): Define. Punt imported
444 symbols which are never used and absolute symbols which local scope.
445
f197d7eb
JL
446 * config/obj-som.h (obj_frob_file): Define.
447 * config/obj-som.c (obj_som_init_stab_section): Set alignment
448 of stab sections. Make space for the special stab entry.
449 (adjust_stab_sections): Adjust the special entry in the
450 stabs section.
451 (som_frob_file): New function. Simply calls adjust_stab_sections
452 for each section.
453
bca9cf0b
ILT
454Mon Nov 1 17:54:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
455
456 * config/tc-mips.c (PIC_CALL_REG, SP, FP): Define.
457 (mips_pic, mips_cprestore_offset): New static variables.
458 (md_pseudo_table): Handle .abicalls, .cpload, and .cprestore.
459 Ignore .bgnb and .endb.
460 (gp_reference): _gp_disp is never addressed off GP.
461 (macro_build): Ignore macros while searching for insn. For cases
462 i, j, and o, accept the reloc type as an argument rather than
463 assuming BFD_RELOC_LO16. Don't try to convert BFD_RELOC_LO16 to
464 BFD_RELOC_MIPS_GPREL. Added new case a.
465 (set_at, load_register, macro): Changed calls to macro_build to
466 pass new argument for i, j and o cases.
467 (macro): Handle M_JAL_1, M_JAL_2 and M_JAL_A. These require
468 special handling when generating SVR4 PIC code.
469 (mips_ip, tc_get_register, s_frame): Use macros FP, SP, GP and AT
470 rather than hard coded constants.
471 (md_apply_fix): Handle BFD_RELOC_MIPS_LITERAL and
472 BFD_RELOC_MIPS_CALL16.
473 (s_option): Set mips_pic based on .option picN.
474 (s_abicalls): New function; set mips_pic to 2.
475 (s_cpload): New function; handle .cpload.
476 (s_cprestore): New function; handle .cprestore.
477
478 * config/obj-ecoff.c (obj_pseudo_table): Add entries for .bgnb,
479 .endb and .verstamp, setting them to s_ignore.
480
d191a03c
JL
481Sun Oct 31 00:36:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
482
47f45d66
JL
483 * config/tc-hppa.c (subspace_dictionary_chain): Add new ssd_defined
484 field. Define SUBSPACE_DEFINED accessor macro.
485 (pa_subspace): Allow user to override subspace attributes for
486 built-in subspaces. Set ssd_defined at the end of fcn -- that
487 way the attributes can only be changed once. Pass newly allocated
488 name to is_defined_subspace, not a pointer to the input line.
489 Fix typo in space/subspace rework.
490 (is_defined_subspace): Delete unused 2nd arg. All callers changed.
491
492 * config/tc-hppa.c (pa_import): If currently in the text segment
493 and a symbol is imported without type information, set BSF_FUNCTION
494 for the symbol.
20b39b6f
JL
495 * write.c (relax_and_size_seg): Correct test to determine if
496 the section's size was rounded up.
497
e75acd68
JL
498 * config/obj-som.h (obj_set_symbol_type): Define a hook so GAS
499 can properly set all the SOM symbol types.
500 * config/tc-hppa.c (pa_symbol_type): New enum to represent the
501 symbol types which can be set from an IMPORT/EXPORT statement.
502 (pa_export_args): Set the pa_symbol_type type based on arguments.
503 If defined, call obj_set_symbol_type to pass this information on
504 to the BFD backend.
505
d191a03c
JL
506 * read.c (get_stab_string_offset): Set SEC_DEBUGGING for any
507 stab section we make.
508 (s_stab_generic): Likewise.
509
12696e9c
JL
510Sat Oct 30 14:26:20 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
511
65a7f8a6
JL
512 * Allow backends to override the value of the fake label.
513 * write.h (LOCAL_LABEL): Delete DOT_LABEL_PREFIX code. Instead
514 assume backends will define LOCAL_LABEL if anything other than
515 'L' is used to denote a local label.
516 (FAKE_LABEL_NAME): New macro. Defines the default name used for
517 the "fake" label.
518 * expr.c (make_expr_symbol): Delete DOT_LABEL_PREFIX code
519 and instead simply use the string defined by FAKE_LABEL_NAME.
520 (operand): Likewise.
521 * read.c (s_stab_generic): Likewise.
522 * config/tc-hppa.h (FAKE_LABEL_NAME): Define as L$0\001 so it's
523 known to be a local label.
524 * config/tc-i386.h (DOT_LABEL_PREFIX): Delete.
525 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
526 * config/tc-m68k.h (DOT_LABEL_PREFIX): Delete.
527 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
528 * config/te-sco386.h (DOT_LABEL_PREFIX): Delete.
529 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
530
6bc14195
JL
531 Rework space/subspace handling in PA code to fully support
532 SOM spaces/subspaces.
533 * config/tc-hppa.c (USE_ALIASES): New object-format dependent define
534 to control the use of space/subspace name aliases.
535 (update_subspace): Accept space chain entry for containing space
536 as a new parameter. All callers changed.
537 (pa_get_label): Use current_space rather than pa_segment_to_space.
538 (pa_define_label): Likewise.
539 (pa_undefine_label): Likewise.
540 (md_begin): Change into the (possibly modified) text_section.
541 (pa_parse_space_stmt): Create a new segment/space if create_flag
542 is true, and the space name is not one of the two predefined spaces.
543 (pa_subspace): Use current_space rather than a lookup via
544 pa_segment_to_space. Reset BFD section flags as required by
545 the .subspace directive. Likewise for the section alignment.
546 Pass the current space to update_subspace and create_new_subspace.
547 (pa_spaces_begin): Only use space/subspace aliases if USE_ALIASES
548 is true. When not using aliases, create a BFD section for each
549 subspace encountered. When not using aliases replace the default
550 text, data, and bss segments with new ones.
551 (create_new_subspace): When not using aliases each subspace has a
552 section/segment and subsegments are not needed, so set the subsegment
553 to zero.
554
548ea75b
JL
555 * config/tc-hppa.c (pa_parse_space_stmt): If needed, call
556 obj_set_section_attributes to pass space attributes to the
557 BFD backend.
558 (create_new_space): Likewise.
559 (create_new_subspace): Likewise for subspace attributes using
560 obj_set_subsection_attributes.
561 (update_subspace): Likewise for subspace attributes using
562 obj_set_subsection_attributes.
563
0f3b419c
JL
564 * config/tc-hppa.c (pa_parse_space_stmt): Get segment and sort key
565 for $TEXT$ and $PRIVATE$ from the default space structure.
566
9a182533
JL
567 * config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
568 as appropriate for the given type.
569
62f0841b
JL
570 * config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
571 SOM relocations.
572
d56f45f5
JL
573 * config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
574 redefinition.
575
3c87583d
JL
576 * config/obj-som.[ch]: New files for SOM support. Note SOM
577 support is not yet complete in GAS or BFD.
578
12696e9c
JL
579 * config/ho-hppabsd.h: Delete IO* macros, they are defined in
580 stdio.h. Delete declaration of free. Include stdlib.h, unistd.h,
581 and string.h.
582
37ed805e
JL
583Fri Oct 29 13:26:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
584
12696e9c
JL
585 * Allow backends to override the section names used for embedded
586 stabs support. Needed for SOM.
587 * read.c (STAB_SECTION_NAME): Default the name of the stab section
588 to ".stab".
589 (STAB_STRING_SECTION_NAME): Likewise for the stab strings section.
590 (get_stab_string_offset): Is now passed the full name for the
591 stab string section rather than a name prefix. All references
592 changed.
593 (s_stab_generic): New argument for the stab string section name.
594 all references changed.
595 (s_xstab): Append "str" to the stab section name to get the
596 stab string section name.
597 * config/obj-coffbfd.c (obj_coff_init_stab_section): Append "str"
598 to stab section name to get the stab string section name. Pass
599 the full name of the stab string section to get_stab_string_offset.
600 * config/obj-elf.c (obj_elf_init_stab_section): Likewise.
601
53c0b9e7
JL
602 * config/tc-hppa.c (md_begin): Disable "-R" option to fold
603 textand data segments. Warn user "-R" is unsupported on the
604 PA.
37ed805e 605
48ac0c90
JL
606Thu Oct 28 12:36:13 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
607
d33ace2e
JL
608 * config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
609 .align and .ALIGN directives.
610
48ac0c90
JL
611 * config/tc-hppa.c (pa_space): Do not report an error for a .space
612 directive which does not define a "well-known" space and does
613 not include a space number as an argument.
614
615 * config/tc-hppa.c (pa_def_subspaces): Correct initialization of the
616 "defined", "loadable", "code_only" and "space_index" fields.
617 (pa_def_spaces): Correct initialization of the "spnum", "defined",
618 and "private" fields.
619
620 * write.h (struct fix): Add new tc_fix_data field for the various
621 backends to attach machine dependent fixup information to.
622 * write.c (fix_new_internal): Initialize new tc_fix_data field.
623 * config/tc-hppa.c (hppa_fix_struct): Delete unnecessary fix_fixP and
624 fx_next fields.
625 (hppa_find_hppa_fix): Delete unnecessary function. Fix all
626 callers to get HPPA fixup information from the tc_fix_data field
627 in the GAS fixup.
628 (hppa_fix_root): Delete unnecessary variable.
629 (fix_new_hppa): Attach HPPA fixup data to the GAS fixup.
630
631 * config/tc-hppa.c (pa_set_start_symbol); Delete unwanted
632 function. Fix all callers.
633 (subspace_dictionary_chain): Delete unused ssd_start_sym field.
634
635 * config/tc-hppa.c (hppa_fix_adjustable): New function to determine
636 if a particular fixup is adjustable.
637 * config/tc-hppa.h (tc_fix_adjustable): Call hppa_fix_adjustable to
638 perform the real work.
639
640 * config/tc-hppa.h (RELOC_EXPANSION_POSSIBLE): Move definition out
641 of OBJ_XXX conditionals.
642 (MAX_RELOC_EXPANSION): Likewise.
643
644 * config/tc-hppa.c (log2): Renamed from is_power_of_2. Fix all
645 callers. Now returns log2 (N) for positive N which are an exact
646 power of two or -1 for an error.
647
648 * config/tc-hppa.c (pa_callinfo): Range check values provided for
649 ENTRY_GR, ENTRY_FR and ENTRY_SR. Properly adjust vaues before
650 inserting them into the unwind table.
651
652 * config/tc-hppa.c (NEEDS_FIXUP): Delete definition and all references.
653 (hppa_gen_reloc_type): New object format dependent macro.
654 (pa_ip): Delete tons of code which was either OBJ_SOM or OBJ_ELF
655 conditional. The code can (and will) be shared between SOM & ELF
656 formats in the near future.
657 (cons_fix_new_hppa, md_apply_fix_1): Likewise.
658 (pa_build_unwind_subspace, process_exit, pa_exit): Likewise.
659 (tc_gen_reloc): Use hppa_gen_reloc rather than an object format
660 specific call.
661
662 * config/tc-hppa.c (pa_comm): Set the segment for a common symbol
663 to bfd_und_section.
664
665 * config/obj-elf.h (obj_elf_version): Add extern prototype.
666
667 * configure.in (hppa-*-bsd*): New configuration.
668 BFD is always used for GAS generating SOM objects.
669
670 * write.c (adjust_reloc_syms): Set sy_used_in_reloc if an
671 adjustment is rejected by the target machine.
672
673 * config/tc-hppa.c (pa_big_cons): Delete function and its
674 declaration. All callers changed to use pa_cons.
675
676 * write.c (fixup_segment): Fix indention and open/close brace
677 problem.
678
679 From Pete Hoogenboom:
680 * config/tc-hppa.c (md_atof): Return a NULL on success rather than
681 an empty string.
682
3515a504
JL
683 * config/tc-hppa.c (pa_parse_space_stmt): Advance
684 input_line_poitner when an invalid argument is encountered.
685
6121fb06
ILT
686Thu Oct 28 13:09:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
687
688 * config/tc-a29k.c (md_begin): When opcodes are mashed together in
689 the table, require that the one without bit 0x1000000 set come
690 first. Require further that it be case 'b' or 'P'. The a29k
691 opcode table already meets these constraints.
692 (machine_ip): When handling case 'i' or 'A', make sure that the
693 appropriate opcode really exists by looking at the next entry in
694 the opcode table.
695
56c96faa
ILT
696Wed Oct 27 11:48:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
697
729f4bba
ILT
698 * config/tc-m68k.c (m68k_ip): Adjust offsets for PC relative
699 fixups. Add 6 for long 7.3 case, 2 for short 7.2 case.
700
007ff46b
ILT
701 * config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
702 after a .ent directive.
703
d1ee509b
ILT
704 * config/tc-mips.c (mips_ip): Handle '>' case (shift amount
705 between 32 and 63 for double shift instruction). Do & 0x1f rather
706 than % 32.
707 (printInsn): Handle '>'.
56c96faa 708
fa20b8bf
ILT
709Tue Oct 26 16:58:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
710
5694ad93
ILT
711 * config/tc-ns32k.c (tc_aout_fix_to_chars): Output the symbol
712 number in the right place. Untested. Probably does not work for
713 cross assembly. From cagney@cs.adelaide.edu.au (Andrew Cagney).
714
f3751617
ILT
715 * config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
716 an illegal offset of 0 or -1.
717
fa20b8bf
ILT
718 * config/obj-elf.c (obj_elf_init_stab_section): Align .stab
719 section to a longword boundary.
720
4da7942d
KR
721Tue Oct 26 10:24:31 1993 Ken Raeburn (raeburn@cygnus.com)
722
723 * Makefile.in (CHECKFLAGS): Pass down RUNTESTFLAGS.
724
725 From Jeff Law:
726 * config/tc-hppa.c (tc_gen_reloc): ELF32_HPPA_R_ADDEND ->
727 HPPA_R_ADDEND.
728
24934035
SC
729Mon Oct 25 11:17:58 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
730
8e5afd4f
SC
731 * config/tc-sh.c (build_Mbytes): Write the relocs to the correct
732 address. (md_assemble): Make error handling a bit more graceful.
733 (md_apply_fix): Don't warn on non aligned displacement.
734
24934035
SC
735 * config/tc-z8k.c (get_specific, built_bytes): Understand all the
736 aspects of lda.
737
84678d16
KR
738Mon Oct 25 10:20:31 1993 Ken Raeburn (raeburn@rover.cygnus.com)
739
740 * doc/Makefile.in (install-info): Use "$<*" so VPATH will find
741 as.info* even if they're in $(srcdir) (e.g., for FSF
742 distributions).
743
744 * write.c (write_relocs): For relocs that are pc_relative and
745 pcrel_offset and not partial_inplace, adjust reloc->addend to
746 compensate for a bfd_perform_relocation bug.
747
748 * config/tc-sparc.h: Removed remaining non-BFD_ASSEMBLER code.
749 * config/tc-sparc.c: Ditto.
750 (tc_gen_reloc): Include fx_offset for pcrel fixups.
751
52aa70b5
JW
752Sun Oct 24 16:49:00 1993 Jim Wilson (wilson@x1.cygnus.com)
753
754 * tc-mips.c (md_pseudo_table): Add dword pseudo op.
755
ab0751c8
DZ
756Fri Oct 22 20:40:56 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
757
758 * messages.c: replaced all variables called Format with 'format',
759 for consistency throughout
760
761 * configure.in: handle mips*- instead of mips, mips*el for little
762 endian configurations
763
8efed14f
ILT
764Fri Oct 22 14:45:49 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
765
766 * input-scrub.c (physical_input_file, logical_input_file,
767 physical_input_line, logical_input_line): Made static.
768 (as_where): Return current file name and line number, don't print
769 them out.
770 * messages.c (as_show_where): New static function. Other
771 functions use it instead of as_where.
772 (as_bad_internal): New static function.
773 (as_bad): Use as_bad_internal.
774 (as_bad_where): New function, like as_bad but taking a file name
775 and line number.
776 * as.h (as_bad_where): Declare.
777 (as_where): Change prototype for new arguments.
778 * write.h (fixS): Added fields fx_file and fx_line.
779 * write.c (fix_new_internal): Save file and line number in fix.
780 (fixup_segment): Use as_bad_where, not as_bad.
781 * input-file.c (f_in, file_name): Made static.
782 * cond.c (struct file_line): Just use file and line fields.
783 (s_else): Use as_where and as_bad_where, not get_file_line and
784 set_file_line.
785 (get_file_line, set_file_line): Removed.
786 * listing.c (listing_newline): Use as_where.
787 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use as_where.
788 * config/obj-ecoff.c (add_file): Use as_where.
789 * config/obj-elf.c (obj_elf_init_stab_section): Use as_where.
790 * config/tc-m68k.c (md_apply_fix_2): Use as_bad_where.
791 * config/tc-mips.c (tc_gen_reloc): Use as_bad_where, not assert.
792
efa0c22e
KR
793Thu Oct 21 12:52:01 1993 Ken Raeburn (raeburn@cygnus.com)
794
795 * config/tc-m68k.h: Don't define REGISTER_PREFIX or
796 OPTIONAL_REGISTER_PREFIX if either is already defined.
797
798 * config/tc-m68k.c (m68k_ip): Delete some code in "#if 0".
799
800 * configure.in: Set bfd_gas for all sparc targets. Added facility
801 for keeping or rejecting configurations still under development;
802 default is to assume production environment, and reject configs
803 still being worked on. Mark Elf configurations (except sparc and
804 i386) as developmental. Deleted cases matching some generic names
805 in favor of more specific names. (E.g., when we get Alpha
806 support, we'll still only support VMS for Vax.)
807
808 * config/tc-sparc.h (md_end): New macro.
809 * config/tc-sparc.c (md_end): Function deleted.
810 (BFD_RELOC_*): Delete macros that used to help keep the non-bfd
811 version compiling. All sparc targets will use bfd now.
812 * tc.h (md_end): Don't declare if it's defined as a macro.
813
814 Changes from Jeff Law and Peter Hoogenboom:
815
816 * read.c (next_char_of_string): Limit octal character constants to
817 three digits.
818
819 * config/tc-hppa.h: Major cleanup. Use GNU-style comments. Warn
820 against placing additional object-file dependent code here. Warn
821 against contaminating all of GAS with the internals of tc-hppa.c
822 through inclusion of tc-hppa.h. Delete all forward declarations
823 for functions only used within tc-hppa.c, likewise for structures,
824 variables, and #defines. Try to group OBJ_ELF and OBJ_SOM
825 conditional code in a few small places.
826
827 * config/tc-hppa.c: Major cleanup. Use GNU-style comments. Group
828 structures, global variables, forward declarations together.
829 Reduce (or in some cases eliminate) OBJ_ELF and OBJ_SOM
830 conditional code -- try to group conditional code together
831 into a few places. Make all functions and variables which
832 are only used within tc-hppa.c static. PARAMize all functions.
833 Add comments to functions. Delete unused functions, variables,
834 #defines, etc. Delete unused members within structures. Delete
835 ldil;ble hacks -- it is believed they were installed to work
836 around old gas bugs. Avoid using mixed case for local
837 functions, variables, and structures. Fix formatting problems
838 not found by GNU-indent. Add FIXME notices for things which
839 should be worked on the near future. Delete lots of old
840 useless (1.36 PA-SOM) code.
841
842 * config/tc-hppa.c: (fix_new_hppa): Initialize the fx_r_type
843 field of the fixS structure. Needed to build unwind
844 descriptors correctly.
845
846 * write.c: (fixup_segment): Allow expressions such as
847 sym1-sym2+const as long as sym2 is $global$.
848
849 * write.c (adjust_reloc_syms): Provide a hook so that a target
850 cpu configuration can reject certain relocation reductions.
851 * tc-hppa.h (tc_fix_adjustable): New macro. Only accept relocations
852 which do not involve function symbols.
853
854 * config/tc-hppa.h: Reindent with GNU-indent. Delete references
855 to OBJ_OSFROSE. Fix typos (OBJ_SOME -> OBJ_SOM). Delete unused
856 STAB_FIXUP macro.
857 * config/tc-hppa.c: Likewise.
858
859 * config/tc-hppa.c (md_apply_fix_1): Use elf_symbol_type, instead
860 of elf32_symbol_type.
861 (pa_export_args): Likewise.
862 (elf_hppa_final_processing): Likewise.
863 (pa_desc): Do not call obj_elf_desc. (Is pa_desc even needed
864 anymore?)
865 (hppa_tc_make_sections): Do not declare elf_get_symtab_map any
866 ore.
867
868 * config/tc-hppa.c: (md_section_align): Align all sections to
869 a multiple of the section alignment rather than always a
870 multiple of 8.
871
872 * config/tc-hppa.c (hppa_tc_symbol): If the argument relocation
873 bits are zero (eg they specify no relocations), then do not even
874 bother adding their entries to thesymextn section.
875
7766838e
ILT
876Thu Oct 21 15:44:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
877
878 * config/tc-sparc.c (md_parse_option): Accept and ignore -sparc
879 option, which is used by the SunOS make default .s.o rule.
880
dff60b7d
ILT
881Tue Oct 19 18:13:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
882
883 * config/tc-m68k.h (AOUT_MACHTYPE): Define to be external variable
884 m68k_aout_machtype.
885 * config/tc-m68k.c (omagic): Remove obsolete and unused variable.
886 (m68k_aout_machtype): New variable, if OBJ_AOUT.
887 (md_assemble): Initialize m68k_aout_machtype based on
888 current_architecture, if OBJ_AOUT.
889 (md_parse_option): Remove obsolete reference to omagic.
890
c17cd709
ILT
891Thu Oct 14 16:51:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
892
dd3f1f76
ILT
893 * config/tc-mips.c (md_pseudo_table): Ignore .livereg pseudo-op.
894 (s_option): Ignore .option O* and .option pic*.
895 (s_ent): Skip whitespace between symbol and optional digit.
dff60b7d 896 (my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
dd3f1f76 897
54508138
ILT
898 * app.c (do_scrub_next_char): Always accept 'x' and 'X' as escape
899 characters in state 6.
900 * read.c (next_char_of_string): Accept \Xh* and \xh* where h* are
901 hexidecimal digits.
902
c17cd709
ILT
903 * config/tc-i386.c (md_apply_fix_1): Make cross segment calls work
904 for ELF by hacking around bizarre bfd_perform_relocation behaviour
905 that I don't dare change.
906
ad660eb1
ILT
907Thu Oct 14 11:33:25 1993 Michael Meissner (meissner@osf.org)
908
909 * config/tc-i386.c: (md_begin): Do not zero static arrays. Don't
910 call strchr for each character to see if it is a special char,
911 instead add a second loop over special_chars. Set alignment
912 of text, data and bss sections to 4.
913 (pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
914 used again.
915 (reloc): Don't return 8 and 16 bit non-PC relative relocations on
916 ELF, since the ELF object format does not have these type of
917 relocations. Change the abort into as as_bad and return
918 BFD_RELOC_NONE to silence compiler warnings.
919 (md_assemble): Keep track of the instruction size. Allow white
920 space between the $ and the constant for compatibility with older
921 gases and other assemblers.
922 (i386_operand): Skip spaces between $ and expression.
923 (tc_gen_reloc): Don't allow anything but 32 bit relocations on
924 ELF. Convert abort into an as_bad and assert into as_fatal.
925
132239bf
KR
926Wed Oct 13 16:50:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
927
928 * config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
929 sub_symbolP is in the current segment, convert to a PC-relative
930 fixup and discard the symbol.
931
b7cbb59f
ILT
932Wed Oct 13 14:00:02 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
933
463b1851
ILT
934 * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
935 for st_StaticProc just like st_Proc.
936
b7cbb59f
ILT
937 * write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
938 so that OBJ_BOUT doesn't forget to adjust all the fragments in the
939 .bss section.
940
f2a663d3
ILT
941Tue Oct 12 17:26:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
942
943 * config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
944 (mips_regmask_frag): New static variable, if OBJ_ELF.
945 (md_begin): If OBJ_ELF, create .reginfo section and set
946 mips_regmask_frag to a frag.
947 (mips_elf_final_processing): New function, if OBJ_ELF. Set
948 mips_regmask_frag to register mask information.
949 * config/tc-mips.h (elf_tc_final_processing): New macro, defined
950 if OBJ_ELF.
951
99024047
KR
952Tue Oct 12 03:33:26 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
953
2145a183
KR
954 * messages.c (as_fatal): Use myname when printing messages.
955
99024047
KR
956 * config/tc-i960.c (md_begin): Use null pointer, not empty string,
957 as initial "return" value in case hashing isn't needed.
958
959 * config/tc-a29k.c (md_atof): Return null, not empty string, on
960 success.
961 * config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
962 config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
963 config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
964 config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
965
966Mon Oct 11 16:46:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2dd45209
SC
967
968 fix for pr 3571
969 * config/tc-h8300.c (get_specific): Special action if 8 bit
970 address seen. (check_operand): Don't complain if truncating top
971 bits of an 8 bit address. (build_bytes): Allow an immediate and
972 an absolute in the same insn.
973
f37449aa
ILT
974Mon Oct 11 17:18:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
975
976 * write.c (write_contents): Don't crash if seginfo is NULL.
977
978 * config/obj-ecoff.c (ecoff_frob_file): Write out register masks
979 by modifying .reginfo section, not by directly modifying BFD
980 backend data.
981
fec552ce
DZ
982Mon Oct 11 14:11:32 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
983
984 * config/ho-sunos.h: remove extern time declaration
985
8d3be803
KR
986Mon Oct 11 16:14:43 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
987
988 * messages.c (as_fatal): Do mention that it's the assembler that
989 got the fatal error.
990
88225433
ILT
991Fri Oct 8 14:09:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
992
1aa6938e
ILT
993 * config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
994 hold register masks.
995 (md_begin): Initialize them to zero.
996 (append_insn): Update mips_gprmask and mips_cprmask. Also add
997 register variables pinfo and prev_pinfo.
998 * config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
999 * config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
1000 and cprmask from mips_gprmask and mips_cprmask.
1001
88225433
ILT
1002 * config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
1003 * config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
1004 (various): Change all references to GP references to apply if
1005 GPOPT, not if OBJ_ECOFF.
1006 (s_change_sec): Rearrange somewhat. If OBJ_ELF, use .rodata
1007 instead of .rdata. If OBJ_ELF, set section flags for .rodata and
1008 .sdata sections.
1009 (s_frame, s_loc, s_mask): Comment out entire functions, rather
1010 than just body. They're not used anyhow.
1011 * configure.in: Set cpu_type to mips for mips*. Accept
1012 mips-*-elfl* and mips-*-elf*.
1013
17a0da33
ILT
1014Thu Oct 7 18:36:29 1993 Michael Meissner (meissner@osf.org)
1015
1016 * config/obj-elf.c (obj_elf_common): Allow the alignment field to
1017 not be specified.
1018
80aab579
ILT
1019Wed Oct 6 13:01:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1020
abdad6bc
ILT
1021 * config/tc-mips.c (cons_fix_new_mips): New function. Turn
1022 BFD_RELOC_64 into BFD_RELOC_32.
1023 * config/tc-mips.h (TC_CONS_FIX_NEW): Define.
1024 (cons_fix_new_mips): Declare.
1025
80aab579
ILT
1026 Changes to let cons handle bignums like general expressions.
1027 * expr.h (expressionS): New field X_unsigned.
1028 * expr.c (operand): Initialize X_unsigned to 1. Set it to 0 for
1029 unary minus case.
1030 (expr) Fix typo resultP to right if missing operand. Set
1031 X_unsigned to 1 when building new expression.
1032 * read.c (potable): Make "octa" and "quad" call cons, not
1033 big_cons.
1034 (cons): Handle bignums. If given an O_constant (small integer) to
1035 fill a big space, turn it into a bignum.
1036 (parse_bitfield_cons): Set X_unsigned field.
1037 (bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
1038 Removed.
1039 * read.h (big_cons): Remove prototype.
1040 * symbols.c (resolve_symbol_value): Don't give a warning if a
1041 symbol in expr_section can not be resolved.
1042 (S_SET_VALUE): Clear X_unsigned.
1043 * write.c (write_object_file): If resolve_symbol_value failed on a
1044 symbol we are writing out, give a warning.
1045 * config/tc-h8500.c (parse_reglist): Set X_unsigned.
1046 * config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
1047 call pa_cons, not pa_big_cons.
1048 (pa_big_cons): Remove.
1049 * config/tc-hppa.h (pa_big_cons): Remove declaration.
1050 * config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
1051 not big_cons.
1052
1053Tue Oct 5 10:53:36 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
1054
1055 * doc/as.texinfo (Copying): new node, to handle the recent changes
1056 in the texinfo/gpl.texinfo file
1057
4f5666c5
ILT
1058Mon Oct 4 17:10:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1059
1060 * read.c (big_cons): Handle "0" correctly.
1061
1062 * config/tc-mips.c (md_begin): Set target_big_endian correctly.
1063
8208ab5a
KR
1064Mon Oct 4 15:37:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1065
1066 * config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
1067 have pc-relative fixup.
1068 (md_parse_option): Move "-k" case down near "-pic" case.
1069
31909d40
KR
1070 * configure.in: Alphabetize list of cpu type alternatives. Enable
1071 OS values of "linux*elf*" and "linux*coff*" to select those
1072 formats, with linux emulation. Don't bother checking for upper-
1073 or mixed-case versions of "ose".
1074
8208ab5a
KR
1075Thu Sep 30 11:05:35 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
1076
1077 * config/z8k.c (md_pseudo_table): add "unseg".
1078
6cc87fbb
RP
1079Wed Sep 29 16:15:11 1993 K. Richard Pixley (rich@sendai.cygnus.com)
1080
1081 * config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
1082 found while extending the dissassembler.
1083
8f3956b3
SS
1084Tue Sep 28 12:02:04 1993 Stan Shebs (shebs@rtl.cygnus.com)
1085
1086 * configure.in: Split i386 LynxOS out from other coff targets,
1087 add a specific Lynx emulation.
1088 Add m68k LynxOS target.
1089 * config/tc-i386.c: Define specific Lynx target format.
1090 * config/tc-m68k.c: Define specific Lynx target format.
1091 * config/te-lynx.h: New file.
1092
1093 * config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
1094 "coff-{i386,m68k}" if TARGET_FORMAT already defined.
1095 (INIT_STAB_SECTION): Define.
1096 * config/obj-coffbfd.c: Include <time.h>.
1097 (write_object_file): Look for .stab sections and call
1098 adjust_stab_section.
1099 (adjust_stab_section): New function, fills in the first symbol
1100 of a stab section with number of symbols and string table size.
1101 (obj_coff_init_stab_section): New function, creates the initial
1102 symbol for a stab section.
1103
43029a8f
KR
1104Mon Sep 27 15:21:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1105
1106 * config/atof-vax.c (md_atof): Return null on success instead of
1107 empty string.
1108 * config/atof-tahoe.c (md_atof): Ditto.
1109 * read.c (float_cons): Expect a null pointer for success, not an
1110 empty string.
1111
1112 * hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
1113 on success, instead of empty string. All callers changed.
1114
1115 * config/tc-vax.c: Use PARAMS in declarations.
1116 (vip_op): Use NULL instead of empty string for success in error
1117 and warning fields.
1118
b7318ac4
KR
1119Sun Sep 26 23:45:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1120
b9790da8
KR
1121 * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
1122 in different defined segments.
1123
b7318ac4 1124 * write.c (relax_segment): Localize "aim" variable. If
132239bf 1125 DIFF_EXPR_OK, don't impose checks on symbol segment types.
b7318ac4
KR
1126 (fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
1127 segment, convert to a PC-relative fixup and discard the symbol.
1128
1129 * config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
1130 (md_parse_option) [TE_SUN3]: Set it for "-k".
1131 (m68k_ip): Generate proper fixup for mode 7.3.
1132 * config/tc-m68k.h (DIFF_EXPR_OK): Define.
1133
c996b199
KR
1134Sat Sep 25 05:08:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1135
1136 * config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
1137 earlier in the file.
1138 (insop, add_exp): Now defined as functions, for readability.
1139 (insop): Now takes two arguments; callers changed.
1140
6d6b97b7
RP
1141Fri Sep 24 12:37:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
1142
58f3e8a9
RP
1143 * config/tc-m88k.c (get_o6): new function.
1144 (get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
1145 get_vec9, getval, get_pcr, calcop, match_name): make static and
1146 prototype.
1147 (s_file): remove extraneous forward decl.
1148 (md_begin): add const to retval decl.
1149 (calcop): cope with instructions without arguments. Handle 'o'
1150 type argument, the o6 field of the prot insn.
1151 (md_estimate_size_before_relax): return a dummy value.
1152
6d6b97b7
RP
1153 * config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
1154 in bits 10 through 7. flt.[dxs]s requires an r register in the
1155 second argument. New instruction lda.x. New instruction muls
1156 (alias for mul).
1157
1158Fri Sep 24 13:43:30 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1159
1160 * Makefile.in (distclean): Recurse like clean.
1161 * doc/Makefile.in (distclean): New target.
1162
1163 * config/tc-mips.c (md_begin): Set BFD architecture and machine
1164 based on MIPS ISA level.
1165
1166Thu Sep 23 17:58:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1167
1168 * as.c (main): "exhausted", not "exhuasted".
1169
1170 * struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
1171 * write.c (adjust_reloc_syms): Set sy_used_in_reloc.
1172 (write_object_file): Never strip symbols with sy_used_in_reloc
1173 set.
1174
1175 * config/obj-elf.c (obj_elf_section): Rewrote to handle both
1176 Solaris and SVR4 style .section pseudo-ops.
1177 (obj_elf_ident): Set SEC_READONLY for .comment section.
1178 * config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
1179 generating a reloc, don't apply a fix.
1180
6110df28
KR
1181Thu Sep 23 13:16:58 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1182
1183 * config/obj-coffbfd.c (relax_align): Now static.
1184
9bd0d649
ILT
1185Mon Sep 20 19:23:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1186
1187 * read.c (get_stab_string_offset): Make non-static. Make
1188 arguments const. Don't align strings to 4 byte boundaries.
1189 * read.h: Declare get_stab_string_offset.
1190 * config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
1191 SEC_LOAD for progbits section.
1192 (obj_elf_init_stab_section): New function.
1193 (adjust_stab_sections): Add casts to avoid warnings.
1194 * config/obj-elf.h (INIT_STAB_SECTION): Call
1195 obj_elf_init_stab_section.
1196 (OBJ_PROCESS_STAB): Removed definition.
1197
80903ca6
ILT
1198Fri Sep 17 18:12:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1199
1200 * config/obj-elf.h (S_GET_SIZE): Define.
1201 (obj_frob_forward_symbol): Define.
1202 * config/tc-i386.c (line_comment_chars): Initialize in all cases.
1203
13998021
ILT
1204Thu Sep 16 14:23:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1205
9bd0d649 1206 * tc.h: Declare tc_gen_reloc differently depending upon
13998021
ILT
1207 RELOC_EXPANSION_POSSIBLE.
1208 * config/obj-elf.c (obj_elf_section): Only set flags when first
1209 creating the section.
1210
1211Wed Sep 15 12:15:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1212
1213 * config/tc-mips.c (append_insn): Don't swap a trap instruction
1214 with a branch.
1215
4f0bccc7
ILT
1216Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1217
90397ff8
ILT
1218 * config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
1219 set previous_section and previous_subsection and then call s_data
1220 and s_text, respectively.
1221 (obj_pseudo_table): Add data and text.
1222 (obj_elf_section): Add SEC_LOAD to default initialization of
1223 flags. Treat .rodata1 like .rodata. Set SEC_LOAD as well as
1224 SEC_ALLOC for "alloc" string. Don't bother trying to find the
1225 section; just use subseg_new.
1226
4f0bccc7
ILT
1227 * read.c (change_to_section): Removed. This is now done by
1228 subseg_new.
1229 (get_stab_string_offset): Rearranged somewhat. Create the section
1230 using subseg_new. Store the string index in seg_info, rather than
1231 in a static variable. Force the first string to be empty. Use
1232 frag_more rather than FRAG_APPEND_1_CHAR.
1233 (s_stab_generic): Rewrote.
1234 * subsegs.h (segment_info_type): Added stabu union.
1235 * subsegs.c (subseg_new): Initialize stab_string_size to 0.
1236 * config/obj-aout.c: Don't include aout/stab_gnu.h.
1237 (obj_aout_stab, obj_aout_desc): Removed.
1238 (obj_pseudo_table): Removed desc and stabX entries.
1239 * config/obj-bout.c: Same changes as config/obj-aout.c.
1240 * config/obj-bout.h (S_SET_TYPE): Define.
1241 (tc_bout_fix_to_chars): Declare.
1242 * config/obj-coff.c (obj_coff_stab): Removed.
1243 (obj_pseudo_table): Removed desc and stabX entries.
1244 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
1245 * config/obj-coffbfd.c (current_stab_symbol): Removed.
1246 * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
1247 n_other, n_desc and n_value fields.
1248 (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
1249 (MAKE_STAB_SYMBOL): Removed.
1250 * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
1251 Changed arguments and removed parsing code.
1252 (obj_pseudo_table): Removed stabX entries.
1253 * config/obj-ecoff.h (ecoff_stab): Declare.
1254 (OBJ_PROCESS_STAB): Define.
1255 * config/obj-elf.c: Don't include aout/stab_gnu.h.
1256 (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
1257 elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
1258 Removed.
1259 (obj_pseudo_table): Removed desc, stabX and xstabs entries.
1260 (obj_elf_version): Use subseg_new, not bfd_make_section. Don't
1261 set SEC_LOAD for .note section.
1262 (adjust_stab_sections): Get frag pointer from seg_info, rather
1263 than looking through frags.
1264 * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
1265 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
1266 Define.
1267 * config/obj-vms.c (obj_aout_stab): Removed.
1268 (obj_pseudo_table): Removed stabX entries.
1269 * config/obj-vms.h (S_SET_TYPE): Define.
1270
1271 * as.h: Declare listing.
1272 * read.c: Don't declare listing.
1273 (emit_expr): Cast fix_new_exp argument.
1274 (parse_bitfield_cons): Correct printf format.
1275 * symbols.c (symbol_new): Add cast to avoid warning.
1276 * write.h: Declare text_last_frag and data_last_frag.
1277 * config/obj-bout.c (obj_bout_line): Added dummy argument.
1278 * config/obj-coffbfd.c: Add some casts to avoid warnings.
1279 * config/tc-a29k.c: Likewise.
1280 * config/tc-i960.c: Likewise. Also fully bracket structure
1281 initializations, fix printf formats, and remove unused variables.
1282
604633ae
ILT
1283Mon Sep 13 16:48:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1284
1285 * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
1286 * struc-symbol.h: Declare verify_symbol_chain and
1287 verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
1288 * symbols.c (verify_symbol_chain): Removed useless expression.
1289 * write.c (headers, the_object_file): Only use if not
1290 BFD_ASSEMBLER and not BFD.
1291 (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
1292 not BFD.
1293 (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
1294 not OBJ_AOUT).
1295 * write.h: Declare relax_segment.
1296 * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
1297 static.
1298 (stack_top): Commented out, since it's not used.
1299 Fixed up pseudo-op functions to take an ignored int argument.
1300 (size_section): Added default BAD_CASE to switch.
1301 Changed bzero calls to memset.
1302 * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
1303 (s), not on s itself.
1304 * config/tc-a29k.c (s_use): Take ignored int argument. Only
1305 define if OBJ_COFF is not defined.
1306 * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
1307 argument signed again.
1308 * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
1309 argument.
1310 (m68k_ip): Fully bracket initialization of archs.
1311 Correct several formats for __LINE__ to be %d rather than %s.
1312 (init_table): Fully bracket initialization.
1313 Cast values larger than 0x7f assigned to fr_opcode to char.
1314
1315 * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
1316 Wrote non-BFD_ASSEMBLER subseg_new. Now subseg_new always takes a
1317 section name, and subseg_set always takes a segT. Changed all
1318 callers as appropriate.
1319 * config/obj-coffbfd.c (change_to_section): Renamed to
1320 obj_coff_add_segment. Corrected. Made callers use subseg_new.
1321 * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
1322 Define.
1323
54e3e909
DE
1324Mon Sep 13 13:15:03 1993 Doug Evans (dje@canuck.cygnus.com)
1325
1326 * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
1327
58d4951d
ILT
1328Fri Sep 10 11:22:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1329
1330 * config/obj-elf.h (S_SET_SIZE): Actually set the size.
1331
1332 Gcc lint.
54e3e909 1333 * Added a number of casts to function calls.
58d4951d
ILT
1334 * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
1335 operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
1336 read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
1337 ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
1338 read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
1339 (obj_elf_section), config/tc-i386.c (parse_register),
1340 config/tc-sparc.c (isoctal, s_proc): Cast char
1341 array indices to unsigned char.
54e3e909
DE
1342 * app.c (process_escape): Make static. Add prototype. Change
1343 argument from char to int.
58d4951d
ILT
1344 * as.c: Include output-file.h for prototypes. Comment out unused
1345 function got_sig.
1346 * Makefile.in (as.o): Depend on output-file.h.
1347 * as.h (BAD_CASE): Cast val argument to long, and use %ld.
54e3e909
DE
1348 (pseudo_typeS): Add prototype to poc_handler field.
1349 (print_version_id): Add prototype.
1350 (xmalloc, xrealloc): Change size arguments to unsigned long.
1351 (do_scrub_next_char): Add prototypes for function arguments.
1352 (had_errors, had_warnings, scrub_from_file): Remove duplicate
1353 declarations.
1354 * atof-generic.c (atof_generic): Make size variables unsigned.
58d4951d 1355 * cond.c (ignore_input): Removed unused local variable ptr.
54e3e909
DE
1356 * expr.c (floating_constant, integer_constant): Make static. Add
1357 prototypes.
1358 * flonum-copy.c (flonum_copy): Make size variables unsigned.
58d4951d 1359 * frags.h: Add prototype for frag_init.
54e3e909
DE
1360 * hash.h, hash.c: Change hash values from char * to PTR, make hash
1361 strings const, make returned error strings const char *. Added
1362 prototypes for functions.
1363 * input-file.h, input-file.c (input_file_buffer_size): Return
1364 unsigned int.
1365 * input-scrub.c (buffer_length): Make unsigned.
1366 (input_scrub_push, input_scrub_pop): Make static.
58d4951d
ILT
1367 * listing.c (list_symbol_table): Cast sprintf argument to unsigned
1368 long and use %lx. Print name of segment rather than address of
1369 structure.
54e3e909
DE
1370 (listing_list, listing_title): Change argument to int.
1371 (listing_eject, listing_flags, listing_psize): Add int argument.
1372 * listing.h: Corresponding declaration changes.
1373 * obj.h (obj_emit_symbols): Rename prototype argument to avoid
1374 shadowing.
58d4951d 1375 * read.h: Change get_absolute_expression prototype to return
54e3e909
DE
1376 offsetT. Add prototype for next_char_of_string. Various
1377 prototype changes.
58d4951d 1378 * read.c: Remove prototype for next_char_of_string.
54e3e909
DE
1379 (pobegin): Make errtxt const. Make new_length, tmp_len and num
1380 unsigned.
1381 (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
1382 s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
1383 Change all callers.
58d4951d
ILT
1384 (s_comm): Change temp from valueT to offsetT. Cast to long when
1385 printing and use %ld (only for error messages anyhow).
54e3e909
DE
1386 (s_long, s_int): Remove unused functions.
1387 (cons): Change argument to int.
58d4951d
ILT
1388 (emit_expr): Use %lx when printing longs.
1389 (get_absolute_expression): Return offsetT, not long.
1390 (get_stab_string_offset): Comment out unless
1391 SEPARATE_STAB_SECTIONS.
1392 (s_stab_generic): Remove unused offset. Define seg_is_new only
1393 if SEPARATE_STAB_SECTIONS. Use toP only in local block.
54e3e909 1394 * struc-symbol.h (verify_symbol_chain_2): Add prototype.
58d4951d 1395 * symbols.c: Remove nested comment.
54e3e909 1396 (symbol_new): Rename value to valu.
58d4951d 1397 (colon): Use %ld and cast to long in error message.
54e3e909
DE
1398 * symbols.h: Remove duplicate verify_symbol_chain declaration.
1399 * tc.h: Remove unused md_emit_relocations declaration.
1400 (tc_gen_reloc): Add declaration.
58d4951d
ILT
1401 * write.c (cvt_frag_to_fill): Change first argument name depending
1402 on BFD_ASSEMBLER.
54e3e909
DE
1403 (write_relocs): Remove unused offset, frags. Remove tc_gen_reloc
1404 declarations. Make n unsigned.
1405 (write_contents): Remove unused i, n, relocs, fixp. Rename frags
1406 to f to avoid shadowing.
58d4951d
ILT
1407 (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
1408 WORKING_DOT_WORD. Remove unused keep. Only declare punt and
54e3e909 1409 punt_it if they will be used. Make i and n unsigned.
58d4951d 1410 (fixup_segment): Cast to long and use %ld in error message.
54e3e909 1411 * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
58d4951d
ILT
1412 * config/obj-aout.h: Remove nested comment. Add prototype for
1413 obj_aout_frob_symbol.
54e3e909
DE
1414 (obj_aout_line, obj_aout_desc): Add int argument.
1415 * config/obj-ecoff.c: Changed build routines to use an unsigned
1416 offset.
1417 (add_string): Make len unsigned long.
58d4951d
ILT
1418 (obj_ecoff_stab): Use %lu in error message.
1419 * config/obj-elf.c (obj_elf_common): Comment out unused label
1420 allocate_bss.
1421 (obj_elf_frob_symbol): Return 0 (currently broken).
54e3e909
DE
1422 (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
1423 obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
1424 obj_elf_line, obj_elf_previous): Add int argument.
1425 (obj_elf_write_symbol_p): Make static.
1426 * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
58d4951d
ILT
1427 * config/tc-hppa.h: Remove declarations of functions declared in
1428 read.h.
54e3e909
DE
1429 * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
1430 (s_bss): Add int argument.
1431 (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
1432 (dummy): Remove unused function.
1433 (md_assemble): Rename local o to op to avoid shadowing.
1434 (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
1435 * config/tc-m68k.c (s_data1, s_data2): Add int argument.
58d4951d
ILT
1436 * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
1437 %ld in error messages.
54e3e909
DE
1438 * config/tc-sparc.c: Remove duplicate declarations.
1439 (getExpression): Rewrite condition to avoid empty conditional
1440 body.
1441 (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
1442 argument.
58d4951d 1443
892a3ff1
KR
1444Thu Sep 9 17:10:00 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1445
1446 Changes from Jeff Law:
1447
1448 * config/tc-hppa.c (md_assemble): Fix typo.
132239bf 1449 (pa_ip): Delete unused variables and labels. Do not check for
892a3ff1
KR
1450 unsigned values being < 0, it can't happen.
1451 (is_same_frag): Return a value in recursive call case.
1452 (pa_callinfo): Delete unused variables and labels.
1453 (pa_comm): Likewise.
1454 (pa_copyright): Likewise.
1455 (pa_export): Likewise.
1456 (pa_import): Likewise.
1457 (pa_param): Likewise.
1458 (pa_space): Likewise.
1459 (pa_subspace): Likewise.
1460
abdd08c9
ILT
1461Thu Sep 9 15:05:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1462
1463 * read.c (get_stab_string_offset, s_stab_generic): If
1464 BFD_ASSEMBLER, call subseg_set rather than subseg_new.
1465
414b2c8f
ILT
1466Wed Sep 8 15:09:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1467
1468 * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
1469 default flag values.
1470
4064305e
SS
1471Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
1472
1531386b
SS
1473 * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
1474
4064305e
SS
1475 * read.c: (s_stab, s_xstab, s_desc): New functions to parse
1476 various stab-related directives.
1477 * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
1478 * write.c: (merge_data_into_text): Fix ifdef tangle.
1479 * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
1480 for stab reader to use.
1481 * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
132239bf 1482 stab reader, macros to access.
4064305e 1483
81b407c9
KR
1484Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1485
1486 * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
1487
1488 * config/tc-hppa.h (struct default_subspace_dict, struct
1489 default_space_dict): Field "sort" is now unsigned char.
1490
1491 * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
1492 columns for easier reading.
1493 (bcmp, index): Deleted USG-specific definitions. Should be dealt
1494 with in ho-*.h, or in libiberty. Changed mention of index to
1495 strchr.
1496 (label_symbolP, label_symbol_defined, callinfo_found,
1497 within_entry_exit, exit_processing_complete, within_procedure,
1498 pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
1499 label_symbols_rootP, pa_get_label, pa_label_is_defined,
1500 pa_undefine_label): Now static.
1501 (movers): Now const, in addition to pointing to const data.
1502 * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
1503 pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
1504 Delete declarations.
1505
1506 Merged more changes from Jeff Law and Pete Hoogenboom:
1507
1508 * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
1509 entries for .stab and .stabstr.
1510
1511 * config/obj-elf.c: (elf_stab_symbol_string): Set the
1512 SEC_LOAD attribute for the .stabstr section.
1513 (obj_elf_stab_generic): Set the SEC_LOAD attribute for the
1514 .stab section.
1515 (obj_elf_stab_generic): Change '#if 1' to '#if 0'.
1516 (obj_elf_stab_generic): Incorrect byte count on call to
1517 md_number_to_chars function.
1518
1519 * config/tc-hppa.c (hppa_tc_symbol): Static functions need
1520 argument relocation bits too.
1521
1522 * config/tc-hppa.c (pa_stringer): Correctly handle escaping
1523 characters which should appear unaltered in the output string (for
1524 example an escaped double-quote).
1525
1526 * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
1527 initialize name.
1528 (pa_parse_neg_cmpsub_cmpltr): Likewise.
1529 (pa_parse_nonneg_add_cmpltr): Likewise.
1530 (pa_parse_neg_add_cmpltr): Likewise.
1531
1532 * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
1533 for now.
1534 (cons_fix_new_hppa): Likewise.
1535 * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
1536 prototype.
1537
1538 * config/tc-hppa.c: Include libhppa.h.
1539
132239bf 1540 * config/tc-hppa.h: Delete extern declarations of functions
81b407c9
KR
1541 found in libhppa.h.
1542
1543 * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
1544 OBJ_ELF conditionals.
1545 * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
1546 on the PA.
1547
1849d646
ILT
1548Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1549
ff3a5c18
ILT
1550 * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
1551 (macro): Use "z,s,t" for div instructions to match corresponding
1552 change in opcode table.
1553 (mips_ip): Added 'z'--must be zero register.
1849d646 1554
e96d50d0
KR
1555Wed Sep 1 15:56:42 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1556
1557 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
1558 tc_gen_reloc correctly.
1559
1560 * configure.in: Use "case" instead of "if" when possible. Rewrote
1561 Makefile editing to reduce work done. Treat "hppa*" as "hppa".
1562
56607c4e
RP
1563Wed Sep 1 12:19:07 1993 K. Richard Pixley (rich@sendai.cygnus.com)
1564
1565 * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
1566 section type of data. 'd' seems to be used for m88k.
1567
1568Wed Aug 25 22:33:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1569
1570 * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
1571 s_mips_space): Set insn_label to NULL to avoid changing it at the
1572 next .align statement.
1573 (append_insn): Don't swap jal with instruction that sets the
1574 register that jal sets.
1575
37d719bb
RP
1576Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
1577
1578 * configure.in: recognize m88110.
1579
28344993
KR
1580Wed Aug 25 13:37:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1581
1582 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
1583 * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
1584 not be on for .hppa_unwind.
1585 (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
1586 (pa_param): New function to handle .PARAM directives.
1587 (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
1588 functions. Handle '|' for movb; allow movb,n.
1589 (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
1590 version. Handle cases where no completer exists for
1591 comb,n or addb,n.
132239bf 1592 (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
28344993
KR
1593 completer exists for comb,n or addb,n. Make logic
1594 mirror that of pa_parse_nonneg_cmpsub_cmpltr.
1595 (pa_parse_nonneg_add_cmpltr): Likewise.
1596 (pa_parse_neg_add_cmpltr): Likewise.
1597 * tc-hppa.h (pa_param): Declare.
1598
1599Tue Aug 24 15:41:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1600
1601 * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
1602 Added forward declaration.
1603
1604 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
1605
1606 * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
1607 call to elf_tc_make_sections.
1608 (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
1609 attribute.
1610
1611 * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
1612 handle symbol extension sections.
1613
1614 * config/tc-hppa.c (pa_build_symextn_section): New function to
1615 create a symbol extension section.
1616 (pa_export_args): Make call to pa_build_symextn_section.
1617 (hppa_tc_symbol, hppa_tc_make_sections,
1618 hppa_tc_make_symextn_section): New functions.
1619 * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
1620 macros.
1621
1622 * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
1623 BFD_ASSEMBLER branch as well.
1624
1625 * config/tc-hppa.h: If ELF is the target object format, define
1626 some ELF- and hppa-specific types and constants.
1627
1628 * config/tc-hppa.c (getExpression): Fix a typo.
1629
1630 * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
1631 if a `=' is part of an instruction.
1632 (read_a_source_file): Handle case where end-of-line markers are
1633 also used within instructions.
1634 * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
1635
1636 * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
1637 out-of-range branches/'calls using "bl" or calls which may need
1638 argument relocation stubs. Do not need/keep relocations for
1639 conditional branches.
1640 (elf_hppa_final_processing): Fix calculation of function size.
1641
1642 * config/obj-elf.c (obj_elf_version): Mark .note section as
1643 READONLY.
1644
1645 * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
1646 address of exp, to expression.
1647 (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
1648 (md_apply_fix_1): Delete unwanted comments.
1649 (process_exit): Symbols marking the end of a function are always
1650 BSF_LOCAL.
1651
1652 * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
1653 (pa_space): Declare and initialize gdb_section.
1654
1655 * config/obj-elf.c (elf_frob_file): Change
1656 elf_tc_final_processing_hook to elf_tc_final_processing.
1657
1658 * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
1659 argument type declarations.
1660 (getExpression): Fix typo.
1661 (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
1662 (elf_hppa_final_processing): Likewise. Name changed from
1663 elf_hppa_final_processing_hook.
1664 (start_symbol_root, start_symbol_last): Deleted.
1665
1666 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
1667
1668 * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
1669 avoid changing include ordering.
1670
1671 * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
1672
6e8dda9c
ILT
1673Mon Aug 23 12:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1674
1675 * config/tc-mips.c (set_at): Added unsignedp argument. Use
1676 load_register.
1677 (set_at_unsigned): Removed; changed callers to use set_at.
1678 (load_register): Removed unused ip argument. Changed callers.
1679 (append_insn): Don't swap branch and branch likely.
1680 (macro_build): Handle 'u'.
1681 (load_register): Handle 64 bit constants.
1682 (macro): Added M_DABS, removed M_ABSU. Numerous changes to
1683 support 64 bit constants.
1684 (mips_ip): Use hex constants in range checks for clarity.
1685 (md_number_to_chars): Support 8 byte values.
1686
1e35cd8f
RP
1687Fri Aug 20 16:50:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
1688
1689 * config/tc-m88k.h: updated copyrights.
1690 (TC_CONS_RELOC): declare to be RELOC_32.
1691
8358c818
ILT
1692Fri Aug 20 11:16:44 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1693
1694 * config/tc-mips.c (mips_isa): New static variable.
1695 (md_begin): Initialize mips_isa based on TARGET_CPU. Don't sanity
1696 check macros. Set text alignment and GP size here.
1697 (md_assemble): Don't set text alignment and GP size here.
1698 (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
1699 Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S. Add
1700 a NOP after a branch likely.
1701 (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
1702 >= 2.
1703 (macro): Support r6000 and r4000 macros.
1704 (mips_ip): Check insn ISA level against mips_isa before using it.
1705 Added 'x' case for ignored register.
1706 (md_parse_option): Handle -mipsN and -mcpu=XX.
1707
c8d4cda1
KR
1708Fri Aug 20 01:26:52 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1709
1710 * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
1711
1712Thu Aug 19 12:15:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1713
1714 * config/tc-sparc.c (s_local): Function moved and renamed...
1715 * config/obj-elf.c (obj_elf_local): ...to here.
1716 * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
1717 (obj_pseudo_table): Move handling of ".local".
1718
1719 * tc.h (md_parse_option): Don't declare if defined as a macro.
1720
1721 * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
1722 BFD_RELOC_NONE.
1723 (md_parse_option): New macro, converted from function.
1724 * config/tc-i386.c (md_parse_option): Function deleted.
1725 (comment_chars) [OBJ_ELF]: Include "/".
1726 (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
1727 (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
1728 warning.
1729 (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
1730 Call reloc for fix_new type, or use correct enumerator, instead of
1731 always using NO_RELOC.
1732 (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
1733 tests for valid section.
1734 (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
1735 address.
1736 (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
1737 symbol, compensate for location of reloc.
1738 (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
1739 to return zero.
1740
4915cac0
KR
1741Wed Aug 18 16:51:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1742
1743 * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
1744 (obj_elf_weak): New function.
1745 (obj_pseudo_table): Handle ".weak".
1746 (obj_elf_section): If section directive includes a string, ignore
1747 it for now. Accept "progbits" flag.
1748 (obj_elf_type): Accept `@' before flag name.
1749
1750 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
1751 condition.
1752 (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
1753 than checking for bfd_com_section directly.
1754 (fixup_segment): Simplify range check.
1755 (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
1756 test.
1757
1758 * symbols.h (S_SET_WEAK): Declare.
1759 * symbols.c (S_SET_WEAK): New function.
1760 (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
1761 it's not a separate flag any more. Clear BSF_WEAK.
1762
1763 * read.c (potable): Treat "string" like "asciz".
1764
19ed8960
ILT
1765Wed Aug 18 15:30:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1766
1767 * config/tc-mips.c (append_insn): Don't swap branch instructions
1768 if .set nobopt or .set volatile.
1769 (gp_reference): .lit8 and .lit4 are accessed via the GP register.
1770 (macro): Added cases M_LI_S, M_LI_SS. Fixed M_LI_D and M_LI_DD.
1771 (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
1772 * config/obj-ecoff.c: Renamed some variables to avoid shadow
1773 warnings.
1774
ae8c28f8
DZ
1775Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
1776
19ed8960
ILT
1777 * config/obj-coff.h (S_IS_COMMON): add missing backslash
1778
ae8c28f8
DZ
1779 * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
1780
0aa07269
ILT
1781Thu Aug 12 11:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1782
1783 * config/tc-mips.c (mips_ip): Suggested by
1784 davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
1785 names for 'E' and 'G' argument types (coprocessor registers) and
1786 don't warn if $1 is used on the coprocessor.
ae8c28f8 1787 (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
0aa07269
ILT
1788
1789Mon Aug 9 12:09:14 1993 Doug Evans (dje@canuck.cygnus.com)
1790
1791 * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
1792 * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
1793 BFD_RELOC_16.
1794 * config/tc-sparc.h (WORKING_DOT_WORD): Define.
1795
6a9cf6fa
KR
1796Mon Aug 9 13:36:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1797
1798 * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
1799 defined or BFD is not.
1800 (relax_and_size_all_segments): Declare local variable fragP.
1801
b114e492
KR
1802Fri Aug 6 15:22:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1803
1804 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
1805 bytes with real values, not zeros.
1806
ac32a7e7
ILT
1807Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1808
3d2330f8
ILT
1809 * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
1810 targets, using ecoff and mips-big.
1811
ac32a7e7
ILT
1812 * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
1813 Johnson): Added case for 'C' for coprocessor instruction codes.
1814
273aa947
KR
1815Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1816
b114e492
KR
1817 * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
1818
273aa947
KR
1819 * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
1820
b114e492
KR
1821 * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
1822 for verifying symbol chain.
1823 (merge_data_into_text, relax_and_size_all_segments): New
1824 functions, split out from write_object_file.
1825
273aa947
KR
1826Tue Aug 3 15:43:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1827
1828 * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
1829 debug section is new, allocate an extra 12 bytes at its start. If
1830 ".stabs" type is N_SO, fill in filename symbol field of that first
1831 entry. Return early if "goof", to simplify later code slightly.
1832 (adjust_stab_sections): New function.
1833 (elf_frob_file): Apply adjust_stab_sections to each section.
1834
1835 * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
1836 static.
1837 * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
1838 * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
1839 and "popsection", and call cons for "uaword" and "uahalf".
1840
1841 * config/obj-elf.c (obj_elf_version): Use English in error
1842 messages.
1843
4573d186
ILT
1844Tue Aug 3 11:29:06 1993 Ian Lance Taylor (ian@cygnus.com)
1845
1846 * config/obj-ecoff.c: Updated for BFD ECOFF changes. Now gets the
1847 swapping routines and external structure sizes via the
1848 ecoff_backend information. No longer includes coff/mips.h.
1849
b4703fa6
ILT
1850Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1851
4c7ff23d
ILT
1852 * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
1853 and in hash_ptr->string.
1854
b4703fa6
ILT
1855 * app.c (do_scrub_next_char): Reset state to 0 after .appline if
1856 file name is not seen.
1857
ced16de6
ILT
1858Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
1859
1860 * write.c: Don't use short int in a prototype.
ab4d34cd
ILT
1861
1862 * expr.c (operand): Make return value simply depend on contents of
1863 returned expression.
1864
b4703fa6
ILT
1865Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
1866
1867 * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
1868
0ccc65ec
DZ
1869Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
1870
1871 * config/ho-sunos.h: remove some old function decls that conflict
1872 w/ ANSI, and which weren't needed anyway
1873
1874Wed Jul 28 16:34:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1875
1876 * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
1877 and disabled since it breaks Ian's new symbol-value code.
1878
1879 * expr.c (integer_constant): Accept more digits if BFD64.
1880
7fe17970
ILT
1881Wed Jul 28 11:30:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1882
1883 * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
1884 expect a bignum, turn it into a bignum. Output extra zeroes
1885 before a short bignum, rather than after.
1886
0c2734c3
KR
1887Tue Jul 27 15:54:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1888
1889 * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
1890 on DEBUG_SYMS, not DEBUG.
1891 (symbol_remove): Likewise.
1892 (symbol_insert): Likewise.
1893
4fe45d22
ILT
1894Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
1895
1896 * config/tc-mips.c (mips_optimize): New static variable.
e9f108bc
ILT
1897 (append_insn): If mips_optimize == 0, always insert NOP
1898 instructions. If mips_optimize < 2, don't swap branches.
1899 (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
4fe45d22 1900
de9310b9
RP
1901Mon Jul 26 18:02:43 1993 K. Richard Pixley (rich@sendai.cygnus.com)
1902
1903 * Makefile.in (clean): if testsuite does not exist, then skip it.
1904
1905Fri Jul 23 14:13:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1906
1907 * config/tc-mips.c (prev_insn_unreordered,
1908 prev_prev_insn_unreordered): New static variables.
1909 (append_insn): Don't swap branch instruction if
1910 prev_prev_insn_unreordered (see comment).
1911 (mips_no_prev_insn): Clear the unreordered variables.
1912 (s_mipsset): When turning on reordering, set the unreordered
1913 variables.
1914
7767e7e9
KR
1915Fri Jul 23 13:09:44 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1916
1917 * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
1918 are also magic, and have special default flag settings.
1919 (obj_elf_frob_symbol): Since the return value from this function
1920 isn't used, don't bother calling obj_elf_write_symbol_p, since it
1921 doesn't accomplish anything else.
1922
1923 * config/tc-sparc.c (md_section_align): Round up section size only
1924 for a.out format.
1925
1926 * symbols.c: Don't define DEBUG by default.
1927
88b457e5
ILT
1928Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
1929
2a2d3d08
ILT
1930 * write.c (fix_new_exp): Handle a O_uminus expression.
1931
e979ea04
ILT
1932 * expr.c (expr): Don't let absolute_section override
1933 undefined_section for the return value.
1934
cf897ce2
ILT
1935 * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
1936 pseudo-op with a poc_handler field of NULL, ignore it and treat it
1937 as an instruction instead.
1938 * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
1939 poc_handler field.
1940
88b457e5
ILT
1941 * config/tc-h8500.c (md_begin): Use a local variable when
1942 initializing md_relax_table to avoid warnings about modifying a
1943 supposedly const data structure.
1944
88e12460
BK
1945Thu Jul 22 10:58:51 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
1946
1947 * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
1948 is defined.
1949
86a6ada2
FF
1950Wed Jul 21 17:32:02 1993 Fred Fish (fnf@deneb.cygnus.com)
1951
1952 * configure.in (case ${host}): Map *-*-sysv4* to gas_host=sysv.
1953 * configure.in (case ${generic_target}): Add i[34]86-*-sysv4*
1954 case to set obj_format=elf. Must go before i386-*-sysv* case that
1955 sets obj_format=coffbsd. Add *-*-sysv4* to *-*-elf and
1956 *-*-solaris case, and move to before *-sysv* case that wants to
1957 set obj_format to coff.
1958 * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
1959 'exp->X_op'.
1960 * config/tc-i386.c (md_apply_fix): Fix valp to be 'valueT *' for
1961 BFD_ASSEMBLER case.
1962
8ff6f40e
ILT
1963Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1964
2c5c299f
ILT
1965 * config/obj-aout.c: Include aout/aout64.h.
1966 (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
1967 symbol, so that BFD doesn't tamper with the type.
1968
8ff6f40e
ILT
1969 * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
1970 up opcodes as pseudo-ops even if they don't start with '.'.
1971 * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
1972 * config/tc-m88k.c (md_assemble): Removed special pseudo-op
1973 handling.
1974 (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
1975 Output the low 16 bits for RELOC_HI16, not the high 16 bits.
1976 * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
1977 r_offset field of the reloc to the fixup offset.
1978 (fixup_segments): If TC_M88K, don't warn about fixup overflows.
1979 * doc/as.texinfo: Minor updates.
1980
5ac34ac3
ILT
1981Tue Jul 20 19:28:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1982
1983 * Extensive changes to permit symbols to contain any expression
1984 type and to delay the computation of the expression until the
1985 value is actually needed. This permits setting symbols to values
1986 calculated based on object code size. Expressions were changed to
1987 no longer be in a section, to stop the overloading of segment and
1988 expression type that previously occurred.
1989
1990 * as.c (big_section, pass1_section, diff_section, absent_section):
1991 Removed.
1992 (expr_section): Added (used for dummy symbols which hold
1993 intermediate expression values).
1994 (perform_an_assembly_pass): Create expr_section, do not create the
1995 sections now removed.
1996 * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
1997 SEG_DIFFERENCE. Added SEG_EXPR.
1998 (SEG_NORMAL): Corresponding changes.
1999 * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
2000 * write.c (write_object_file): Ditto.
2001 * config/obj-aout.c (seg_N_TYPE): Ditto.
2002 * config/obj-bout.c (seg_N_TYPE): Ditto.
2003 * config/obj-coff.c (seg_N_TYPE): Ditto.
2004 * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
2005 * config/obj-vms.c (seg_N_TYPE): Ditto.
2006
2007 * expr.h (operatorT): Moved in from expr.c, added some values.
2008 (expressionS): Added X_op field, removed X_seg field; renamed
2009 X_subtract_symbol to X_op_symbol.
2010 * expr.c: Extensive changes to assign expression types rather than
2011 sections and to simplify the parsing.
2012 * write.c (fix_new_internal): New static function.
2013 (fix_new): Removed sub_symbol argument.
2014 (fix_new_exp): New function, takes expression argument.
2015 * write.h: Prototype changes for fix_new and fix_new_exp.
2016 * cond.c (s_if): Changed accordingly.
2017 * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
2018 parse_repeat_cons, get_segmented_expression,
2019 get_known_segmented_expression, get_absolute_expression): Ditto.
2020 * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
2021 Ditto.
2022 * write.c (write_object_file): Ditto.
2023 * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
2024 * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
2025 obj_coff_endef, yank_symbols): Ditto.
2026 * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
2027 * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
2028 print_insn, md_operand): Ditto.
2029 * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
2030 do_a_fix_imm, build_bytes): Ditto.
2031 * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
2032 get_specific, check, insert, md_convert_frag): Ditto.
2033 * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
2034 md_assemble, pa_ip, getExpression, getAbsoluteExpression,
2035 evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
2036 process_exit): Ditto.
2037 * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
2038 is_complex): Ditto.
2039 * config/tc-i386.c (pe, md_assemble, i386_operand,
2040 md_estimate_size_before_relax, md_create_long_jump): Ditto.
2041 * config/tc-i860.c (md_assemble, getExpression, print_insn):
2042 Ditto.
2043 * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
2044 get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
2045 i960_handle_align): Ditto.
2046 * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
2047 subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
2048 md_estimate_size_before_relax, md_create_long_jump, get_num):
2049 Ditto.
2050 * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
2051 md_create_short_jump, md_create_long_jump): Ditto.
2052 * config/tc-mips.c (md_assemble, append_insn, gp_reference,
2053 macro_build, macro, my_getExpression): Ditto. Also removed
2054 get_optional_absolute_expression; just use get_absolute_expression
2055 instead.
2056 * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
2057 fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
2058 * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
2059 * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
2060 Ditto.
2061 * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
2062 print_insn): Ditto.
2063 * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
2064 tip_op, md_assemble): Ditto.
2065 * config/tc-vax.c (seg_of_operand, md_assemble,
2066 md_estimate_size_before_relax, md_create_long_jump): Ditto.
2067 * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
2068
84873870
DZ
2069Tue Jul 20 12:17:16 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
2070
2071 * configure.in: i386-lynx is the same as i386-coff
2072
623d6e9a
KR
2073Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
2074
2075 * config/obj-elf.c (obj_elf_previous): New function.
2076 (previous_section, previous_subsection): New vars.
2077 (obj_elf_section): Save current place in case DWARF code wants us
2078 to pop back to it. Handle unquoted section name as well as quoted
2079 section name. Don't crash on invalid strings.
2080 (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
2081 "4byte".
2082
2083 * config/obj-elf.h: Don't include struc-symbol.h.
2084 (obj_elf_frob_symbol): Declare arg as struct symbol *.
2085
2086 * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
2087 "L" or "_.L_".
2088
2089 * write.c (write_relocs): New function, split off from
2090 write_contents. Use memset instead of bzero.
2091 (write_object_file): Apply write_relocs to each section before
2092 applying write_contents.
2093
2094 * read.c (read_begin): Call obstack_begin with values closer to 1K
2095 multiples.
2096 (read_a_source_file, big_cons, float_cons): Use memcpy instead of
2097 bcopy.
2098
ffffc8fb
ILT
2099Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2100
ce2ad89a
ILT
2101 * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
2102 calculating opP->isiz; this permits the expression size to be
2103 determined as well, later on.
2104
ffffc8fb
ILT
2105 * expr.c (clean_up_expression): Don't cancel the subtraction of
2106 undefined symbols.
2107
2108 * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
2109 switch to text section rather than data section.
2110
9d4dfbf3
KR
2111Mon Jul 19 12:35:39 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2112
2113 * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
2114 expression (to take the pc-rel instruction itself into account)
2115 before using the expression, instead of after.
2116
04acd059
ILT
2117Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
2118
1e9cf565
ILT
2119 * read.c (float_cons): Simplified parsing logic. If
2120 REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
2121
2122 * symbols.c (colon): Rather than a special case for TC_HPPA,
2123 use new macro tc_frob_label.
2124 * config/tc-hppa.h (tc_frob_label): Define.
2125
2126 * config/tc-mips.c: Many changes to support simple assembler
2127 optimization.
2128 (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
2129 prev_insn_valid, prev_insn_frag, prev_insn_where,
2130 prev_insn_fixp, prev_insn_is_delay_slot): New static
2131 variables.
2132 (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
2133 mips_align, s_stringer, s_mips_space): New static functions.
2134 (mips_define_label): New global function.
2135 (md_pseudo_table): For "ascii", "asciz", "asciiz", call
2136 s_stringer. Changed argument to float_cons from 0 or 1 to 'f'
2137 or 'd'. For "space" call s_mips_space.
2138 (md_begin): Call mips_no_prev_insn.
2139 (append_insn): Only insert necessary NOP instructions.
2140 (macro): Call mips_emit_delays before setting mips_noreorder.
2141 Increment and decrement mips_noreorder rather than using
2142 save_reorder_condition. Don't bother to use noreorder in
2143 M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
2144 (md_atof): Handle floating point numbers correctly for both
2145 big and little endian targets.
2146 (s_align, s_cons): Call mips_align rather than frag_align.
2147 (s_change_seg, s_cons): Call mips_emit_delays.
2148 (s_float_cons): Let float_cons do the work.
2149 (s_mipsset): Call mips_emit_delays when setting noreorder.
2150 * config/tc-mips.h (tc_frob_label): Define to be
2151 mips_define_label.
2152
04acd059
ILT
2153 * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
2154 ecoff_frob_files): Consistently use S_GET_VALUE rather than
2155 bfd_asymbol_value. Warn if taking difference of symbols in
2156 different segments.
2157
c978e704
ILT
2158Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2159
5276e361
ILT
2160 * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
2161 with a warning.
2162
2368ec63
ILT
2163 * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
2164 by md_pcrel_from if we are relocating against a symbol (we still
2165 need md_pcrel_from for a PC relative relocation within the same
2166 file).
2167 * config/tc-m88k.c (md_pcrel_from): Corrected return value.
cb441b38 2168 (omagic): Removed unused variable.
2368ec63 2169
c978e704
ILT
2170 * Preliminary support for m88k-coff.
2171 * configure.in (m88k-*-coff*): New target. Use coffbfd and
2172 m88kcoff.
2173 * config/m88kcoff.mt: New file.
2174 * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
2175 (pseudo_set): Handle difference of symbols in different fragments
2176 by saving the entire expression as the value of the symbol.
2177 * symbols.c (resolve_symbol_value): Resolve difference
2178 expressions.
2179 * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
2180 "sdef" as a synonym for "def".
2181 * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
2182 TARGET_FORMAT.
2183 (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
2184 * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
2185 m88k port up to date, and to add COFF support.
2186
85051959
ILT
2187Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2188
5868b1fe
ILT
2189 * Removed sy_forward and replaced it with an undefined expression
2190 as the value of a symbol.
2191 * struc-symbol.h (struct symbol): Removed sy_forward field. Added
2192 sy_resolved and sy_resolving single bit fields.
2193 * symbols.c (symbol_new): Don't initialize sy_forward field.
2194 (resolve_symbol_value): New function to adjust symbol value by
2195 fragment address, using recursion to resolve forward symbols.
2196 * symbols.h: Added prototype for new function.
2197 * read.c (pseudo_set): Set symbolP->sy_value to an undefined
2198 expression rather than setting symbolP->sy_forward.
2199 * write.c (write_object_file): Use resolve_symbol_value on
2200 symbols, keeping the common case (the old behaviour) inline.
2201 * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
2202 handling (subsumed by write.c change).
2203 * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
2204 sy_value rather than sy_forward.
2205 * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
2206 expression segment rather than sy_forward.
2207 (yank_symbols): Use resolve_symbol_value.
2208 (crawl_symbols): Removed extra pass over symbols.
2209 * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
2210 config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
2211 symbols which handled sy_forward; use resolve_symbol_value
2212 instead.
2213 * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
2214 Define.
2215 * config/obj-elf.c (obj_elf_stab_generic): Check expression
2216 segment rather than sy_forward.
2217 * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
2218 sy_forward; do initialize sy_resolved and sy_resolving.
2219 * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
2220
85051959
ILT
2221 * Changes to keep a full expression as the value of a symbol, not
2222 just a longword:
2223 * struc-symbol.h: New field sy_value.
2224 * as.h: Include expr.h before struc-symbol.h.
2225 * expr.h: Use struct symbol rather than symbolS.
2226 * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
2227 of sy_value field; compile unconditionally, not just if
2228 BFD_ASSEMBLER.
2229 * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
2230 * write.c (write_object_file): Set BFD symbol value to gas symbol
2231 value.
2232 * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
2233 config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
2234 (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
2235 * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
2236 * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
2237 S_GET_VALUE rather than ost_entry.n_value.
2238 * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
2239 (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
2240 config/obj-coffbfd.c (symbol_to_chars): Get value to write out
2241 using S_GET_VALUE--don't assume it is already set.
2242 * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
2243 symbol value.
2244 * config/obj-vms.c (various): Don't assign directly to
2245 S_GET_VALUE; use S_SET_VALUE instead.
2246
b50401c9
DE
2247Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
2248
2249 * configure.in: Recognize h8300h.
2250
489a93f3
SC
2251Tue Jul 13 12:09:44 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2252
2253 * config/tc-h8500.c (line_comment_chars): Add hash.
2254 (parse_exp, skip_colonthing, build_bytes): Add support for
2255 R_H8500_HIGH16 relocation type.
2256
5d4ef296
KR
2257Mon Jul 12 11:15:34 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
2258
2259 * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
2260 attribute name. Handle `execinstr' attribute.
2261
99c24539
ILT
2262Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com)
2263
2264 * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
2265 there is another alternative for the instruction.
2266
ec1c752b
RP
2267Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
2268
2269 * doc/as.texinfo: updates for H8/300H
2270
d358969d
ME
2271Thu Jul 8 14:41:43 1993 Mark Eichin (eichin@cygnus.com)
2272
2273 * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
2274 md_number_to_chars, md_section_align): Adjusted to use valueT,
2275 addressT, to match tc.h.
2276
ff4cac38
KR
2277Thu Jul 8 14:15:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2278
2279 * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
b2565433 2280 independent of format.
ff4cac38 2281
42206996
DE
2282Thu Jul 8 07:25:25 1993 Doug Evans (dje@canuck.cygnus.com)
2283
2284 * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
2285
e9baeb46
DZ
2286Wed Jul 7 18:11:07 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
2287
2288 * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
2289 build; also recognize h8300-*-coff
2290
76c64db0
ILT
2291Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
2292
e154ecf4
ILT
2293 * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
2294 core just because somebody uses a label before it is defined.
2295
76c64db0
ILT
2296 * config/mips-opcode.h: Moved to opcode/mips.h.
2297 * config/tc-mips.c: Include opcode/mips.h rather than
2298 mips-opcode.h.
2299 (append_insn): An extra NOP is only needed after instructions
2300 which set HI or LO, not after instructions which read it.
2301 (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
2302 (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
2303 * config/tc-mips.h (struct mips_opcode): Don't define.
2304 * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
2305 Set to $(srcdir)/../include/opcode/mips.h.
2306
2307 Get the MIPS assembler up to speed with other gas changes:
2308
2309 * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
2310 Removed; don't change the symbol value.
2311 (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
2312 bfd_asymbol_value rather than S_GET_VALUE to include section
2313 vma in symbol value.
2314 (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
2315 doesn't output them. Set the vma of sections.
2316 * config/obj-ecoff.h: Don't define obj_frob_symbol.
2317 * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
2318 longer necessary.
2319 (various): use valueT rather than long.
2320
e28e0b95
KR
2321Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2322
2323 * as.h (valueT): Typedef moved here.
2324 * struc-symbol.h (valueT): ...from here.
2325 * write.c (write_object_file): Locals from_addr, to_addr,
2326 table_addr are now addressT. Supply prototype for bfd_alloc for
2327 now.
2328 (fixup_segment): Local add_number is now valueT. Correct some
2329 range-checking bugs.
2330 (relax_align): Type `int' should be sufficient for the exponent.
2331 (fix_new): Argument offset is type offsetT. Locals size and
2332 newsize are type valueT.
2333 * write.h (struct fix): Fields fx_offset and fx_addnumber are now
2334 type valueT.
2335 (fix_new): Fix prototype.
2336 * symbols.c (symbol_new): Symbol value is type valueT.
2337 (S_SET_VALUE, S_GET_VALUE): Likewise.
2338 (S_IS_*): Specify int return type explicitly.
2339 * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
2340 prototypes.
2341 * read.c (s_comm): Values read are type valueT.
2342 * expr.h (expressionS): Field X_add_number is an offsetT.
2343 * tc.h (md_create_long_jump, md_create_short_jump,
2344 md_section_align): Addresses are now type addressT.
2345 (md_number_to_chars, md_apply_fix): Pass value as valueT.
2346 * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
2347 md_number_to_chars, md_section_align): Adjusted.
2348 * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
2349 gcc shut up.
2350 (md_create_short_jump, md_create_long_jump, md_number_to_chars,
2351 md_section_align): Adjusted.
2352
2353 * config/tc-sparc.c (s_reserve): Permit use for other than a.out
2354 format.
2355 (s_common): Handle Solaris-2 version.
2356
2357 * config/ho-generic.h (free): Returns void if __STDC__.
2358
2359 * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
2360 elf_file_symbol): Declare.
2361
2362 * expr.c (floating_constant, integer_constant): Now return void.
2363
2364Thu Jul 1 12:13:43 1993 Ian Lance Taylor (ian@cygnus.com)
2365
2366 * configure.in: Match on sparc*-fujitsu-none rather than
2367 sparclite*-fujitsu-none.
2368
267389df
ILT
2369Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
2370
2371 * read.c (cons): Conditionalize parsing of expression. Move
2372 putting value into object file into separate function. Separate
2373 out MRI and WANT_BITFIELDS cases into separate functions.
2374 (emit_expr): New function to write data into object file.
2375 Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
2376 processor types.
2377 (parse_bitfield_cons): New function to parse bitfield expressions
2378 as used by i960 assemblers. Only compiled if
2379 BITFIELD_CONS_EXPRESSIONS is defined.
2380 (parse_mri_cons): New function to parse MRI style strings. Only
2381 compiled if MRI is defined.
2382 (parse_repeat_cons): New function to parse repeat counts. Only
2383 compiled if REPEAT_CONS_EXPRESSIONS is defined.
2384 * read.h (emit_expr): Added declaration of new function.
2385 * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
2386 * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
2387 * config/tc-hppa.c (parse_cons_expression_hppa): New function to
2388 parse a HPPA expression, rather than special case in cons
2389 function.
2390 (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
2391 than special case in emit_expr function.
2392 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
2393 Define to use new functions from tc-hppa.c.
2394 * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
2395 (WANT_BITFIELDS): Removed; now obsolete.
2396 * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
2397 * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
2398 NS32K fixup, rather than special case in emit_expr function.
2399 * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
2400 cons_fix_new_ns32k. Also use PARAMS rather than checking
2401 __STDC__.
2402 * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
2403
2404 * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
2405 Don't core dump if gas has no information about a section.
2406
2407Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2408
2409 * write.c (relax_and_size_seg): Always fully process a section.
2410 Section size is last frag's (vm)address plus its size. If no
2411 relocations are present, force SEC_RELOC flag clear.
2412 (dump_section_relocs): New debugging routine.
2413 (adjust_reloc_syms): New routine, broken out from write_contents.
2414 Don't adjust relocs that are already relative to section symbol.
2415 Look for obj_fix_adjustable macro to know what else to skip,
2416 instead of obj_write_symbol. Look for section symbol stored in
2417 section information.
2418 (write_object_file): Map adjust_reloc_syms over all sections.
2419 (write_contents): Clear SEC_RELOC flag if no relocations are
2420 found.
2421
2422 * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
2423 keep it quiet.
2424
2425 * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
2426
e28e0b95
KR
2427Fri Jun 25 14:42:53 1993 K. Richard Pixley (rich@sendai.cygnus.com)
2428
2429 * Makefile.in (all, dvi, info, install-info, clean-info): do not
2430 echo recursion lines.
2431 (install-info, clean-info): collapse into the dvi and info rule.
2432
267389df
ILT
2433Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
2434
2435 * as.h (strstr): Disable declaration for now.
2436 (fprint_value, sprint_value): Declare.
2437
2438 * subsegs.c (subseg_new_rest): Use memset to clear new frag.
2439 (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
2440
2441 * expr.c (expr_part): Made sanity checks a.out-specific.
2442 (expr): Disabled sanity checks.
2443
2444 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
2445 section symbol.
2446 * subsegs.c (subseg_change): Initialize section symbol pointer
2447 when setting up a new section.
2448
2449 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
2450 field back at gas symbol structure.
2451
2452 * symbols.c (colon): Cast obstack_next_free value to char* before
2453 doing arithmetic on it.
2454 * subsegs.c (subseg_new_rest): Likewise.
2455 * as.h (frag_now_fix): Likewise.
2456
2457 * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
2458 calling bfd_make_section_old_way directly, and call subseg_set
2459 instead of subseg_change. Now returns void.
2460 (obj_elf_write_symbol): Only check local symbols for now.
2461 (elf_stab_symbol): Now static and void, and disabled until it
2462 works completely.
2463 (obj_elf_size): For expression values, fail silently for now.
2464 (obj_symbol_new_hook): Do nothing.
2465
2466 * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
2467 relocation.
2468 (s_local) [OBJ_ELF]: New function.
2469 (md_pseudo_table) [OBJ_ELF]: Call it for "local".
2470 (s_common): Rearrange to handle Solaris .common pseudo, which may
2471 sometimes use bss space instead of common.
2472 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
2473
a8285504
DZ
2474Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
2475
2476 * configure.in: set host config to hpux for hppa*-hp-hpux
2477
267389df
ILT
2478Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
2479
2480 * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
2481
2482Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
2483
2484 * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
2485 * config/obj-aout.c (s_sect): Do it here.
2486
2487 * as.h (BAD_CASE): Don't make some lame compilers think we want
2488 substitution inside strings.
2489
2490 * as.c (print_version_id): New function, split off from main.
2491 (main): Call it.
2492 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
2493 for -V. Ignore -Q and -s options for now.
2494
a8285504
DZ
2495Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
2496
2497 * Makefile.in: make installation & builds work again for crosses
2498
267389df
ILT
2499Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
2500
2501 * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
2502 symbol values correctly.
2503
2504 * write.c (write_object_file): Deleted unused variables.
2505 (fixup_segment): Use sprint_value.
2506
2507 * messages.c (sprint_value, fprint_value): New routines.
2508
2509 * config/obj-elf.c (elf_stab_symbol): Now returns void.
2510 (obj_elf_stab_generic): Fix typo in logic.
2511
2512 * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
2513
2514 * as.h (addressT, offsetT): New types, using BFD types if
2515 available.
2516 (relax_addressT, struct frag): Use them.
2517 * struc-symbol.h (valueT, struct broken_word): Likewise.
2518
2519 * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
2520 * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
2521
9126738c 2522Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
132239bf 2523
9126738c
DZ
2524 * Makefile.in: canonicalize install.sh; for use within
2525 this directory (and subdirs)
2526
267389df
ILT
2527Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
2528
2529 * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
2530 specified, should have both S1 and S2 fields identical
2531 If only finding the problem was as fast as fixing the bug !!!!
2532
2533Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2534
2535 * write.c (write_contents): Do write out non-loadable sections.
2536 Debug sections can fall in this category.
115147fb 2537
267389df
ILT
2538 * read.c (s_app_file): Call elf_file_symbol for ELF files.
2539 * config/obj-elf.c (elf_file_symbol): New function.
2540
2541 * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
2542 added argument to specify section base name.
2543 (obj_elf_stab_generic): Renamed from ..._stab. New argument
2544 specifies section base name.
2545 (obj_elf_stab): New function, calls obj_elf_stab_generic with
2546 ".stab" as section base name.
2547 (obj_elf_xstab): New function, calls obj_elf_stab_generic.
2548 (obj_elf_type): Handle "object". Use bitwise-or to merge in
2549 symbol flags rather than simply replacing, so global/local flags
2550 are preserved.
2551 (obj_elf_ident): Rewrite.
115147fb 2552
a00ee522
DZ
2553Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
2554
2555 * Makefile.in: remove parentdir support; use INSTALL_XFORM
2556
2557Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
2558
2559 * config/tc-i386.c (md_pseudo_table): .align uses a power of two
2560 for any a.out target, not just Linux and 386BSD.
2561 * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
2562 target.
2563
267389df
ILT
2564Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2565
2566 * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
2567 don't exist or duplicate other inclusions.
2568
2569 * config/tc-vax.h (NO_RELOC): Define.
2570
2571Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
2572
2573 * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
2574 * gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
2575 char to reg_prefix instead of to 'r'.
2576 (calcop): Change calls to get_reg.
2577 (calcop): Handle new case 'x' to set reg_prefix.
2578 (calcop): Set reg_prefix to 'r' after each call to get_reg.
2579 (cmpslot): Add 88110 conditions.
2580
2581 * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
2582
2583 * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
2584 before returning.
2585
2586 * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
2587 adjacent; mov.s and mov.d swapped.
2588 (m88k_opcodes): Fix typo `r2' -> `2'.
2589
a00ee522
DZ
2590Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2591
2592 * config/h8300.c: Support for H8/300-H opcodes.
2593
2594 * config/obj-coffbfd.c (w_strings): String table length is 4
2595 bytes, no matter what the host int size is.
2596
2597 * configure.in (alpha-*-osf*): New.
2598
68ad4c92
ILT
2599Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
2600
47fcc4f5
ILT
2601 * configure.in (mips-*-ecoffl*): New target; use ecoff and
2602 mips-lit.
2603 (mips-*-ecoff*): Added trailing '*'.
2604
68ad4c92
ILT
2605 * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
2606 first FDR in a file to be zero.
2607
75776695
KR
2608Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2609
b7067d7f
KR
2610 * Makefile.in (VERSION): Jump to 2.1.4.
2611
75776695
KR
2612 * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
2613
2614 * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
2615 ECOFF format.
2616
2617Tue Jun 1 15:21:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2618
2619 * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
2620 separate '851 mmu.
2621
2622 * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
2623 and routine names. Assuming 32 bits for now.
2624
2625 * config/obj-elf.c (elf_frob_file): Look for macro
2626 elf_tc_final_processing_hook, instead of assuming a function
2627 always exists.
2628 * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
2629 tc_final_processing_hook.
2630 * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
2631
2632 * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
2633 moved here from obj-elf.h.
2634 * config/obj-elf.h: Don't include CPU-specific header files.
2635
2636Sun May 30 16:49:37 1993 Peter Hoogenboom (hoogen@fast.cs.utah.edu)
2637
2638 * configure.in: configurations should match on 'hppa*' not 'hppa'.
2639
2640 * read.c: Add support for HPPA assembly language syntax (denoted
2641 with '#ifdef TC_HPPA').
2642
2643 * symbols.c: Add support for HPPA assembly language syntax (denoted
2644 with '#ifdef TC_HPPA').
2645
2646 * write.c (write_contents): Add support for HPPA-style
2647 relocations.
2648
2649 * config/obj-elf.c: Stab symbols weren't written properly.
2650 (obj_elf_version):
2651 (obj_elf_desc):
2652 (obj_elf_write_symbol):
2653 (obj_elf_write_symbol_p):
2654 (obj_elf_frob_symbol):
2655 (elf_stab_symbol):
2656 (elf_frob_file):
2657
2658 * config/tc-hppa.c: Support for HPPA symbol extension sections.
2659 Remove some unused code. Support for HPPA assembly language
2660 syntax.
2661
2662 * app.c:
2663
2664 * symbols.c:
2665
2666 * config/obj-elf.h:
2667 (obj_write_symbol):
2668 (obj_frob_file):
2669 (elf_tc_symbol):
2670 (elf_tc_make_sections):
2671
2672 * config/tc-hppa.h:
2673
2674Sun May 30 21:44:45 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2675
2676 * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
2677 hash_new will have succeeded if it returns.
2678 * config/tc-a29k.c (md_begin): Likewise.
2679
2680 * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
2681 const.
2682 (mode_from_disp_size, opcode_suffic_to_type): Now inline under
2683 gcc.
2684 (fits_in_{signed,unsigned}_{byte,word}): Likewise.
2685
2686 * expr.c: Delete register declarations; gcc ignores them anyways.
2687
2688Fri May 28 19:03:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2689
2690 * hash.c (hash_new): Use xmalloc, since many callers don't check
2691 for failure.
2692
49864cfa
KR
2693Thu May 27 13:02:15 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2694
2695 * frags.c (zero_address_frag, bss_address_frag): These are
2696 external.
2697
2698 * tc.h (md_reloc_size): This is const.
2699 * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
2700 (md_reloc_size): Now const.
2701
2702 * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
2703 trailing commas.
2704 * as.h (enum _segT): Ditto.
2705
2706 * struc-symbol.h (N_TYPE_seg): This should be const.
2707
2708Thu May 27 11:43:59 1993 Michael Meissner (meissner@osf.org)
2709
2710 * config/obj-ecoff.c (add_file): Cast file_name to char * in
2711 listing_source_file call.
2712
2713 * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
2714 of subseg_new call to eliminate const attribute.
2715 (obj_elf_stab): Ditto.
2716 (obj_symbol_new_hook): Cast first argument of bzero call to char *.
2717
2718 * read.c (s_align_bytes): Properly record alignment.
2719
2720 * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
2721 for the prototype/no prototype macro.
2722
2723 * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
2724 void.
2725
2726 * as.h (relax_stateT enum): Delete trailing comma.
2727
9a7d824a
ILT
2728Thu May 27 11:07:50 1993 Ian Lance Taylor (ian@cygnus.com)
2729
2730 * app.c (do_scrub_begin): Let line_comment_chars override
2731 comment_chars.
2732 (do_scrub_next_char): If a line comment character is not at the
2733 start of a line, treat it as a comment character if it is one.
2734 For a CPP line comment use pseudo-op .appline rather than .line.
2735 * input-scrub.c (logical_input_line): Make int rather than
2736 unsigned.
2737 (input_scrub_push, input_scrub_begin): Initialize
2738 logical_input_line to -1 rather than 0.
2739 (bump_line_counters): Increment logical_input_line.
2740 (new_logical_line): If line_number is -2, decrement
2741 logical_input_line.
2742 (as_where): Use logical_input_line even if it is 0.
2743 * read.h (s_app_file prototype): Now takes an int argument.
2744 * read.c (potable): Make .appfile call s_app_file with 1. New
2745 .appline pseudo-op calls s_app_line.
2746 (s_app_file): If .appfile, call new_logical_line with -2 to
2747 account for newline inserted by do_scrub_next_char. If listing,
2748 call listing_source_file.
2749 (s_app_line): New function to handle fake pseudo-op .appline.
2750 * config/obj-coff.c (obj_pseudo_table): Make .appline call
2751 obj_coff_ln.
2752 (obj_coff_ln): Added argument to indicate whether .appline.
2753 * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
2754 obj_coff_ln.
2755 (obj_coff_ln): Added argument to indicate whether .appline.
2756 * config/tc-mips.c (s_file): Pass argument to s_app_file.
2757
61f14fb0
ILT
2758Tue May 25 11:59:07 1993 Ian Lance Taylor (ian@cygnus.com)
2759
2760 * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
2761
2762Thu May 20 19:14:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2763
2764 * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
2765 invalid values.
2766
6eef4543
SC
2767Wed May 19 07:33:17 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2768
2769 * config/tc-h5000.c (build_bytes): Understand @rd mode and build
2770 relocations correctly.
2771
f8f61478
KR
2772Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
2773
6eef4543
SC
2774 * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
2775 it's wrong.
2776
f8f61478
KR
2777 * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
2778 if value is out of range.
2779
2780 Patch from Minh Tran-Le:
2781 * config/tc-i386.c (i386_operand): For in/out port register used
2782 as base reg, include InOutPortReg in operand type.
2783 (MATCH): Accept overlap value of InOutPortReg.
2784
2785Mon May 17 09:29:34 1993 Ian Lance Taylor (ian@cygnus.com)
2786
2787 * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
2788 Add calls to listing routines to produce combined source/assembler
2789 listings.
2790 (obj_ecoff_stab): Create a file pointer if none used yet.
2791 (ecoff_frob_file): Set symcount to correct value.
2792
2793Fri May 14 06:53:33 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
2794
2795 * Makefile.in (VERSION): Bump to version 2.1, in preparation for
2796 release.
2797
2798 * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
2799 Define in terms of constants, not C structure sizes.
2800
2801 * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
2802
2803Thu May 13 17:01:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2804
2805 * config/obj-aout.c (obj_header_append): Don't define if it's
2806 defined as a macro.
2807 * config/obj-hp300.h (obj_header_append): Define it as a macro.
2808 * config/obj-hp300.c (hp300_header_append): New function.
2809
2810 * Makefile.in (distclean): Don't bother cleaning up doc files;
2811 they aren't going to be in this directory.
2812
204ff785
ILT
2813Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
2814
f8f61478
KR
2815 * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
2816 symbols.
2817
204ff785
ILT
2818 * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
2819 * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
2820
65824763
KR
2821Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2822
204ff785
ILT
2823 * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
2824 initialization.
2825
65824763
KR
2826 * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
2827
21bb48b9
ILT
2828Wed May 5 14:00:49 1993 Ian Lance Taylor (ian@cygnus.com)
2829
2830 * config/tc-mips.c (macro): Correct floating point double word
2831 loads and stores for big endian target.
2832
e7c2f943
KR
2833Wed May 5 08:39:21 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
2834
2835 * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
2836 calls. Deleted some unused code.
2837 * config/obj-coff.c: Likewise.
2838
2839 ELF support, mostly contributed by Utah:
2840 * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
2841 obj_elf_type): Rewrite.
2842 (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
2843 obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
2844 New functions.
2845 (obj_elf_ident): Dummy.
2846 * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
2847 TARGET_SYMBOL_FIELDS): New macros.
2848 (gdb_section): New variable decl.
2849
2850 * config/tc-i386.c (md_atof): Return zero, not empty string, on
2851 success.
2852
2853 BFD_ASSEMBLER conditional changes:
2854 * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
2855 Don't define these.
2856 (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
2857 (fetch_coff_debug_section): Ditto.
2858 (obj_coff_endef): Call fetch_coff_debug_section.
2859 (struct line_no): New type.
2860 (c_symbol_merge): New way for copying aux fields.
2861 (c_dot_file_symbol): Put symbol in absolute section, and set flag
2862 BSF_DEBUGGING.
2863 (function_lineoff): New symbol.
2864 (function_lineoff, text_lineno_number, our_lineno_number,
2865 lineno_lastP): Don't define.
2866 (c_line_new): Don't define.
2867 (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
2868 placeholders, until
2869 line-number recording gets implemented.
2870 (obj_new_symbol_hook): New code for handling aux fields.
2871 (add_lineno, add_linesym): New functions.
2872 (obj_coff_ln): Call add_lineno, not c_line_new.
2873 (obj_coff_endef): New code for handling symbol names. New lineno
2874 code. Look for section name "*DEBUG*" for debugging section.
2875 (align, coff_check_file_symbols, obj_coff_section,
2876 coff_frob_file): New functions.
2877 * config/obj-coff.h: Reordered some includes.
2878 (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
2879 DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
2880 define these.
2881 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
2882 (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
2883 aux entries. Most SA_* macros now use it unconditionally.
2884 (S_*): Use `bsym' field, and access BFD private data.
2885 (SF_*): Use `sy_flags' symbol field for most of these.
2886 (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
2887 define.
2888 (*_section_header): Don't define.
2889 * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
2890 interface.
2891 (tc_gen_reloc) [I386COFF]: New function.
2892 (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
2893 * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
2894 macros.
2895
2896 * config/obj-coff.c (stack_init): Don't do assignments inside
2897 conditions.
2898 (obj_coff_def): Simplified handling of symbol name a bit.
2899 (tag_insert): Name argument is now pointer to CONST.
2900 (obj_crawl_symbol_chain): Commented out.
2901
2902 * config/obj-coff.h: Use PARAMS macro in prototypes.
2903
2904 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
2905 through frchainP pointer if it is null.
2906
2907 * configure.in: Warn if BFD mode is explicitly turned off but is
2908 required by specified target.
2909 (mips ecoff targets): Don't need to set bfd_gas here; it gets
2910 taken care of later.
2911
2912 * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
2913 field.
2914 (yank_symbols): Merge symbols only if sy_forward is null.
2915
2916 * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
2917 defined.
2918
2919 * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
2920 pointer.
2921 * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
2922
2923 * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
2924 with "." is a local label.
2925
2926 * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
2927 files.
2928
2929 * config/te-linux.h, config/te-386bsd.h: New config files.
2930 * configure.in (i386-*-linux, i386-*-bsd): Use them.
2931 * config/tc-i386.h (TARGET_FORMAT): Select format based on target
2932 environment.
2933 (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
2934
5d6cfa60
ILT
2935Wed May 5 13:14:01 1993 Ian Lance Taylor (ian@cygnus.com)
2936
2937 * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
2938 to want it that way.
2939 (ecoff_build_symbols): Turn local st_Proc symbols into
2940 st_StaticProc symbols. Set index field of external st_Proc and
2941 st_staticProc symbols correctly.
2942 * config/tc-mips.h (NO_LISTING): Don't define. People might want
2943 listings.
2944
e7c2f943
KR
2945Tue May 4 21:22:54 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2946
2947 * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
2948 files.
2949 * configure.in (m68k-*-hpux): Use them.
2950
2951 * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
2952 defined, otherwise zero.
2953
2954 * config/aout_gnu.h (OMAGIC): Don't define if already defined.
2955
5d6cfa60
ILT
2956Mon May 3 15:59:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
2957
2958 * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
2959 address space number.
2960
2961Wed Apr 28 19:11:22 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
2962
2963 * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
2964
2965 * config/tc-a29k.c: Include ctype.h.
2966 (define_some_regs): Added special-purpose registers for 29050.
2967
e7c2f943
KR
2968 * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
2969
2970 * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
2971 (change_to_section): Set it here instead.
2972
a1387260
ILT
2973Wed Apr 28 13:40:29 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
2974
2975 * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
2976 hasn't been seen yet.
2977 (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
2978
4a1bbbe7
SC
2979Mon Apr 26 18:29:05 1993 Steve Chamberlain (sac@thepub.cygnus.com)
2980
2981 * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
2982 SH.
2983
be2f6bd6
ILT
2984Mon Apr 26 12:28:27 1993 Ian Lance Taylor (ian@cygnus.com)
2985
2986 * expr.c (operand): Fix unary plus operator (previously was the
2987 same as '~' operator!).
2988
2989Wed Apr 21 00:20:11 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2990
2991 * write.c (cvt_frag_to_fill): Define even if BFD is defined.
2992 (write_object_file): Do define if BFD_ASSEMBLER. Invoke
2993 obj_check_file_symbols if defined. Call verify_symbol_chain_2
2994 instead of open-coding it. Fix some bugs in patching up symbol
2995 chain.
2996 (relax_segment): Make some code we "ought to be able to" use for
2997 all targets no longer conditionalized on ns32k target; instead, do
2998 it always, and if the appropriate conditions fail, abort.
2999
3000 * symbols.c (DEBUG): Enabled.
3001 (symbol_new): Make sure bfd_make_empty_symbol works.
3002 (verify_symbol_chain_2): New funcion; takes one symbol as
3003 argument, anywhere in the chain.
3004 (dollar_label*): Use default initializers.
3005
3006 * as.c (perform_an_assembly_pass): Call md_begin here...
3007 (main): ...and not here.
3008
3009 * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
3010 (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
3011
3012 * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
3013 (add_fix, add_frag): Now functions instead of macros.
3014 (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
3015 s_data1, s_data2, s_bss): Use new *_section names, for
3016 compatibility with BFD_ASSEMBLER mode; rewrite switch statements
3017 to handle non-integral segT.
3018 (tc_coff_fix2rtype, tc_aout_fix_to_chars,
3019 tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
3020 (tc_gen_reloc): New routine for BFD_ASSEMBLER.
3021 (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
3022 md_apply_fix_2; new md_apply_fix definition varies interface
3023 depending on BFD_ASSEMBLER.
3024 (md_convert_frag, md_convert_frag_1): Likewise. Use new *_section
3025 names.
3026
3027 * config/obj-vms.c: Include config.h.
3028 (version_string): Delete declaration.
3029 (Write_VMS_MHD_Records): Use GAS_VERSION instead.
3030 (vms_resolve_symbol_redef): New function, taken from VMS code in
3031 symbols.c.
3032 (_doprnt): Deleted.
3033 (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
3034 VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
3035 VMS_Psect_Spec): Fixed to compiler under traditional C.
3036 * config/obj-vms.h: Use PARAMS macro.
3037 (vms_resolve_symbol_redef): Declare.
3038 (RESOLVE_SYMBOL_REDEFINITION): New macro.
3039 * symbols.c (colon): Remove some VMS-specific code, look for
3040 RESOLVE_SYMBOL_REDEFINITION macro instead.
3041
3042 * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
3043 instructions.
3044
3045 * config/tc-i386.c: Reordered some functions so inlining might
3046 work. Use PARAMS in function declarations.
3047 (reloc): New routine.
3048 (md_assemble): Rearrange switch statements to work with
3049 non-integral segT.
3050
3051 * struc-symbol.h [BFD_ASSEMBLER]: Undefine
3052 SYMBOLS_NEED_BACKPOINTERS before defining it.
3053
3054 * subsegs.c (subseg_new_rest): Now static.
3055
3056 * read.c (pseudo_set): Better error message for difference of
3057 symbols in different frags.
3058
3059 * Makefile.in (check): Pass down some new variables, indicating
3060 pathname or program name for cc, nm, objdump.
3061
3062 * as.h (OUTPUT_FLAVOR): New macro.
3063 * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
3064
3065 * configure.in: Initialize bfd_gas properly. Warn that ELF
3066 support is incomplete.
3067
3068Thu Apr 15 22:39:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3069
3070 * read.c (float_cons): Accept null pointer return from md_atof.
3071 * config/tc-m68k.c (md_atof): Return null for success.
3072 * config/tc-sparc.c (md_atof): Ditto.
3073
97a6070c
RP
3074Thu Apr 15 16:04:39 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
3075
3076 * doc/as.texinfo: formatting and comment cleanups; show SPARC
3077 alternative options in same style as other machines; simplify some
3078 conditional use; include GPL as separate file (from texinfo dir)
3079
3080 * doc/Makefile.in: (as.info) include directory containing GPL in
3081 makeinfo search path
3082
3083 * doc/h8.texi: new file; conditional settings for GAS manual
3084 on Hitachi chips
3085
3086Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
3087
3088 * doc/as.texinfo: mention SPARC architecture options.
3089
be2f6bd6
ILT
3090Fri Apr 9 17:43:11 1993 Ken Raeburn (raeburn@cygnus.com)
3091
3092 * configure.in: Rearranged whitespace in per-host/per-target
3093 sections. Added hooks for dropping in HPPA support (not included
3094 yet). Separate out overrides of variables based on target format
3095 and bfd-gas selection from actual target-specific commands. Add
3096 error message for recognized but unsupported format name.
3097
349f20de
ILT
3098Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
3099
3100 * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
55ff56bd 3101 symbolic header match cline in FDR; the native linker seems to
349f20de
ILT
3102 want that.
3103
5316696f
DZ
3104Thu Apr 8 15:51:28 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3105
3106 * doc/Makefile.in: as.texinfo is in $(srcdir). Use
3107 $(srcdir)/as.texinfo explicitly in several places
3108
8ac18b21
RP
3109Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
3110
132239bf 3111 * doc/Makefile.in: update dvi, clean targets for new source
8ac18b21
RP
3112 file structure
3113
d565311f
ILT
3114Thu Apr 8 12:52:46 1993 Ian Lance Taylor (ian@cygnus.com)
3115
3116 * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
3117 rather than undefining know.
8ac18b21 3118 * configure.in: Match ultrix*, not just ultrix.
d565311f 3119
0742a6fd
RP
3120Wed Apr 7 20:18:10 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
3121
3122 * doc/as.texinfo: converted conditional markup to use new
3123 Texinfo facilities, avoiding m4.
3124
3125 * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
3126
3127 * doc/Makefile.in: recast doc configuration to use a link to an
3128 included texinfo file.
3129
3130 * doc/all.texi: settings for generic form of documentation.
3131
3132Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
3133
3134 * read.c (cons): Zero out frag when creating reloc.
3135
367fc835
ILT
3136Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
3137
84e4920f
ILT
3138 * config/tc-mips.c (gp_reference): Certain magic symbols can never
3139 be referenced off the GP register.
3140
367fc835
ILT
3141 * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
3142 when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
3143 LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
3144
3145 * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
3146 definition from other MIPS targets.
3147 * configure.in (mips-*-irix): Use emulation irix.
3148
dd4227d3
SC
3149Sun Apr 4 15:21:09 1993 Steve Chamberlain (sac@thepub.cygnus.com)
3150
3151 * config/tc-h8500.c: Get relax size of branch instructions right,
3152 (get_operand): Parse @sp+ correctly.
3153
be2f6bd6
ILT
3154Fri Apr 2 15:59:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3155
3156 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
3157 COFF section header field.
3158
3159 * configure.in: Print error message if host or target is not
3160 supported.
3161
3162 * configure.in: If with-bfd-assembler, use obj-coff instead of
3163 obj-coffbfd.
3164
3165 * config/ho-generic.h: Include string.h.
3166
ed364bb6
ILT
3167Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
3168
0433135d
ILT
3169 * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
3170 '$' as local, for any object file format.
3171
477b4b04
ILT
3172 * config/tc-mips.c (macro): Optimizations to branching code and a
3173 couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
3174 Campbell).
3175
ed364bb6
ILT
3176 * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
3177 * configure.in (mips-sgi-irix*): Set gas_host to irix.
3178
670a50eb
ILT
3179Wed Mar 31 17:53:54 1993 Ian Lance Taylor (ian@cygnus.com)
3180
3181 * subsegs.c (subseg_new): Set output_section of new section.
3182 * as.c (perform_an_assemly_pass): Don't set output_section here.
3183 * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
3184 since it has additional sections.
3185 * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
3186 not bss_section.
3187 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
3188 ecoff_undefined field.
3189 * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
3190 ecoff_undefined field.
3191 (add_file): If using stabs, just output a stabs symbol rather than
3192 creating a new fdr.
3193 (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
3194 it with get_absolute_expression, rather than skipping it by hand.
3195 (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
3196 than ECOFF line number information.
3197 (obj_ecoff_stab): Accept non-zero values for stabs line number.
3198 (ecoff_build_symbols): Set ifilesym correctly. Set storage class
3199 to small, undefined and/or readonly sections if appropriate.
3200 Don't output symbol names containing \001 characters.
3201 (ecoff_frob_file): Make sure at least one fdr is output.
3202 * config/tc-mips.h: Define TC_MIPS.
3203 * config/tc-mips.c (g_switch_value): New static variable.
3204 (md_assemble): Set gp size of output BFD.
3205 (gp_reference): New function; returns 1 if expression can be
3206 accesssed via gp. Always returns 0 if not using ECOFF.
3207 (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
3208 possible.
3209 (macro): Generate sequences using gp if possible.
3210 (md_parse_option): Ignore -EL and -EB. Parse -G.
3211 (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
3212 (s_change_sec): Handle .rdata and .sdata for ECOFF.
3213 (s_extern): Mark symbol as external. Set ecoff_undefined field.
3214
2b1b5697
KR
3215Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3216
670a50eb
ILT
3217 * output-file.c (output_file_create): Don't call as_perror for
3218 filename rejected by application.
3219
3220 * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
3221 the output file.
3222
4b061a2a
KR
3223 * doc/as.texinfo: Don't use @value in node names for the moment;
3224 references don't appear to work right.
3225
4478def8
KR
3226 * as.h (const, volatile): Put these definitions back, and use
3227 them.
3228
2b1b5697
KR
3229 * doc/as.texinfo: First pass at using new texinfo features --
3230 variables, conditional tests. Far from complete.
3231
3232Mon Mar 29 16:05:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3233
3234 * read.c: Temporary hack to handle some 64-bit constants. This
3235 should be redone later.
3236 (target_big_endian): Declare.
3237 (big_cons): If it's set, reverse order of bytes being copied.
3238 * config/tc-sparc.c (md_begin): Set target_big_endian.
3239
3240 * read.c (s_ignore): Delete declaration of is_end_of_line.
3241
3242 * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
3243 forward pointers properly.
3244
e02eaa59
SC
3245Mon Mar 29 13:47:33 1993 Steve Chamberlain (sac@thepub.cygnus.com)
3246
3247 * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
3248 wasn't being stored into scnhdr.
3249 * config/obj-coffbfd.h: Add prototype of s_get_segment.
3250 * read.c (TC_START_LABEL): Default definition.
3251 (read_a_source_file): Use TC_START_LABEL macro to work out
3252 if a label has been seen.
3253
543d88e4
ILT
3254Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
3255
c39b3eba
ILT
3256 * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
3257 the bottom (make expands variables in dependencies when the
3258 dependencies are read, not when they are used).
3259
543d88e4
ILT
3260 * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
3261 a29k .bss section; the mondfe program doesn't like it.
3262
2b1b5697
KR
3263Sun Mar 28 08:12:53 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3264
3265 * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
3266 const.
3267 (current_architecture): Don't need initializer.
3268
3269Fri Mar 26 08:12:48 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3270
3271 * doc/none.m4: Define Z8000.
3272 * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir). Remove the
3273 texinfo file before recreating it.
3274 (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
3275 this directory.
3276 (srcdir): Delete second, bogus definition.
3277 (as.info): Look for as-*.texinfo in current directory rather than
3278 in $(srcdir).
3279 (as.dvi): Ditto.
3280 (dvi): New rule.
3281 * doc/configure.in: Create links to all as-*.texinfo files in the
3282 source directory, if that's not the current directory.
3283
3284 * configure.in (per-host): Accept MIPS host with BSD version
3285 number.
3286 (per-target): Classify i486 as i386. Use generic cpu_type instead
3287 of target_cpu in selecting format etc.
3288
3289 * app.c (do_scrub_next_char): Use .appfile, not .app-file.
3290 * read.c (potable): Change .app-file to .appfile.
3291
3292 * config/ho-decstatn.h: Renamed from ho-decstation.h.
3293 * configure.in: Adjusted.
3294
3295 * config/obj-bfd-sunos.*: Unused; deleted.
3296
3297 * Makefile.in (version.c, vers-stamp): Deleted.
3298 (config.h): Define GAS_VERSION.
3299 * as.c (version_string): Deleted declaration.
3300 (main): Look for GAS_VERSION instead.
3301
3302 * doc/as.texinfo: Updated description of -a* (listing) options,
3303 and describe how to pass them through from gcc.
3304
3305 * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
3306 process relocs if there aren't any relocs to process. Avoids
3307 malloc/free bug on SCO too.
3308
3309 * as.h: Move local include files below system include files, to
3310 avoid some redefinition complaints on some systems.
3311 (const, volatile): Don't need these conditionally defined if we
3312 use CONST and VOLATILE from ansidecl.h.
3313 (seg_name): Use CONST, not const.
3314
543d88e4
ILT
3315Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
3316
3317 * config/tc-mips.c: Reindented to GNU standards.
3318
2c19a57c
ILT
3319Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
3320
61001d96
ILT
3321 * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
3322 (fixup_segment): Add a29k special case; the linker is not prepared
3323 to see a segment offset here.
3324
2c19a57c
ILT
3325 * app.c (do_scrub_next_char): Added new state, 10, modifying state
3326 9 to only keep a space in between identifier characters.
3327
afcc637a
DZ
3328Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
3329
2d4bef5e
DZ
3330 * Makefile.in: add dvi target; as-$(config).texinfo might live in
3331 srcdir, might be in objdir.
afcc637a
DZ
3332
3333 * doc/Makefile.in: dvi depends on as.dvi
3334
80c8fd72
DZ
3335Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3336
3337 * Makefile.in: add installcheck target
3338
1369949e
ILT
3339Mon Mar 22 10:19:00 1993 Ian Lance Taylor (ian@cygnus.com)
3340
3341 * config/tc-mips.c (macro): Use $AT for any floating point load.
3342
63cdddad
KR
3343Sat Mar 20 12:50:51 1993 Ken Raeburn (raeburn@urth.cygnus.com)
3344
3345 * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
3346 bignums, but don't emit error message.
3347
69498fa2
JW
3348Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
3349
3350 * Makefile.in (targ-cpu.o): Depend on config.h.
3351
f6a91cc0
ILT
3352Wed Mar 17 16:44:06 1993 Ian Lance Taylor (ian@cygnus.com)
3353
3354 * app.c (do_scrub_next_char): Added new state, 9, to avoid
3355 dropping a space immediately following an identifier.
3356 * expr.c, write.c: Rewrote assert expressions to not use multiple
3357 lines; I don't think that can be done portably.
3358 * config/tc-mips.c (macro): Use $AT if target register is zero in
3359 load instruction, which it can be for a floating point load.
3360
a36f6645
ILT
3361Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
3362
3d3c5039
ILT
3363 * write.c (write_contents): Compute the relocs before writing out
3364 the section contents.
3365 * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
3366 symbol table and values right.
3367 * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
3368 with $L is local.
3369 * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
3370 by the section vma.
3371
3372 * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
3373 z8k-opc.h, not z8k.h.
3374
a36f6645
ILT
3375 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
3376 symbol.
3377
2a697fa4
DZ
3378Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3379
3380 * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
3381
f2f7d044
ILT
3382Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
3383
3384 * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
3385 to be on a single line.
3386
ed099874
KR
3387Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3388
3389 * Makefile.in (config.h): Create file, writing out definitions of
3390 target cpu, alias, and canonical name.
3391 (ALL_CFLAGS): No longer define TARGET_CPU.
3392
3393 * Makefile.in (check): Print a message, instead of quitting
3394 silently.
3395
3396 * as.c (main): Don't catch any signals, for now.
3397
3398 * version.c: Deleted.
3399 * Makefile.in: Generate it, putting in only the version number
3400 itself.
3401 (VERSION): New variable.
3402 * as.c: Include config.h.
3403 (main): Reformatted version string. Include target alias. Don't
3404 print if not requested (i.e., unknown -v argument).
3405
3406 * as.c (stralloc): Deleted.
3407 (main): Call strdup instead.
3408
3409 * configure.in: Handle all 68300 series chips.
3410 * config/tc-m68k.c: Include config.h.
3411 (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
3412 series cpus as defaults.
3413 (md_parse_option): Accept some m68300 series CPUs as defaults.
3414
3415Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3416
3417 * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
3418 not already defined.
3419 (main, got_sig): Use them.
3420 * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
3421 values.
3422
3423Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
3424
3425 * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
3426 support.
3427
3428 * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
3429 OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
3430 (struct loc, struct proc, struct file): Moved to tc-mips.c within
3431 #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
3432 * config/tc-mips.c: Rearranged for ECOFF support. Added
3433 prototypes for all static functions. Moved existing minimal
3434 debugging format support info #ifndef OBJ_ECOFF blocks.
3435 (macro_build_lui): Eliminated sign_extend argument, because ECOFF
3436 does not support a non sign extended high 16 bits reloc. Adjusted
3437 all callers accordingly.
3438 (tc_get_register): Renamed from get_register, and made non-static.
3439
3440 * config/mips-big.mt, config/mips-lit.mt: New files. Define
3441 TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
3442 respectively.
3443 * configure.in (mips-*-bsd*): Use gas_target mips-lit.
3444 (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
3445 obj_format ecoff and gas_target mips-lit or mips-big.
3446
c5d4bc88
KR
3447Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
3448
3449 * version.c: Bump to version 2.0.1.
3450
fefba3a5
ILT
3451Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
3452
3453 * write.c (chain_frchains_together): Check that seg_info (section)
3454 is not NULL.
3455 (write_object_file): Call obj_frob_file after setting the symbols,
3456 not before.
3457
2b1b5697
KR
3458Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
3459
3460 * Version 2.0 released.
3461
fefba3a5
ILT
3462Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3463
3464 * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
3465
3466Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
3467
3468 * read.h: Define stringer here.
3469 read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
3470 places.
3471
bf449293
SC
3472Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
3473
3474 * read.c (s_space): Multiply repeat count by mult, not fill.
3475
9471a360
KR
3476Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
3477
3478 * read.c: Include ctype.h.
3479
1101551c
KR
3480Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3481
3482 Patches from Eric Youngdale:
3483 * make-gas.com: Find obstack.obj if it's not in the current
3484 directory.
3485 * read.c (s_ignore): Don't declare is_end_of_line. It's
3486 redundant, and triggers a VMS gcc compiler bug.
3487
3488 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
3489 current segment as an argument. (Ignored in all cases but VMS.)
3490 All callers and definitions changed.
3491
5e4cddb7
ILT
3492Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
3493
3494 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
3495 case compile again.
3496
f3ca2a64
KR
3497Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
3498
3499 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
3500 so "~0x80" won't be rejected.
3501
3502 * config/obj-elf.c: No longer include elf/reloc.h.
3503 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
3504 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
3505 routines.
3506 (obj_elf_xstab): New routine.
3507 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
3508 argument to s_ignore. Put "#if 0" around unused code.
3509 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
3510 Call elf_xstabs for .stabs and .xstabs operators.
3511
3512 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
3513
3514 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
3515 present.
3516
3517 * configure.in: mips-bsd configuration was missing format spec.
3518 Should use aout.
3519
3520 * Makefile.in (Makefile): Depends on configure.in.
3521
3522 * config/tc-mips.c (append_insn): Don't check for alignment of
3523 frag in memory; alignment of instructions in section is a separate
3524 matter.
3525
3526 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
3527 C availability.
3528
3529 * listing.h: Always provide function declarations, not macros, so
3530 pcc won't lose.
3531
7687d89b
JG
3532Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
3533
3534 * CONTRIBUTORS: Update Gilmore entry.
3535
3536Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3537
3538 * frags.c (frag_init): New function.
3539 (zero_address_frag, bss_address_frag): Now initialized at run
3540 time.
3541 * as.c (main): Call frag_init.
3542
160b7f0f
ILT
3543Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
3544
3545 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
3546 Don't unget ch2 if we didn't get it.
3547
0cca30f3
KR
3548Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3549
3550 * doc/Makefile.in (TEXIDIR): Updated for new layout.
3551
3552 * config/tc-sparc.c (s_common): Add support for ELF version.
3553 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
3554 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
3555 New macros.
3556 (md_convert_frag): New macro.
3557
3558 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
3559 symbol, fix the offset so "+2" isn't required.
3560
3561 * config/tc-i960.c (line_comment_chars, line_separator_chars):
3562 Define as common/bss.
3563 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
3564 initializers are sufficient.
3565
3566 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
3567 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
3568 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
3569 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
3570 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
3571 "IGNORE_DEBUG" conditional, since both branches are identical.
3572 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
3573 referencing symbol structure members.
3574 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
3575
3576 * as.h (struct frag): Reordered a couple of fields for better
3577 packing.
3578
3579 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
3580 section info.
3581 (write_contents) [BFD_ASSEMBLER]: New function.
3582 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
3583 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
3584 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
3585 (fixup_segment): Make sure common-section symbols get treated the
3586 same as undefined symbols.
3587 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
3588 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
3589 section info.
3590 * write.h (fix_new): Update prototype.
3591
3592 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
3593 md_section_align, md_undefined_symbol): Don't provide prototypes
3594 if these are defined as macros.
3595 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
3596 section passed.
3597
3598 * symbols.c (symbol_new): Argument NAME is now pointer to const.
3599 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
3600 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
3601 BFD symbol.
3602 (colon): Display other/desc fields of redefined symbol only if
3603 S_GET_OTHER and S_GET_DESC are defined.
3604 (symbol_make): Argument NAME is now pointer to const.
3605 (symbol_find, symbol_find_base): Likewise.
3606 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
3607 * symbols.h: Fix prototypes for new const arguments. Add
3608 prototypes for BFD_ASSEMBLER S_* functions.
3609
3610 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
3611 for changing to an existing section.
3612 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
3613 called by subseg_new and subseg_set.
3614 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
3615 given section name and subseg number.
3616 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
3617 new section/subsection.
3618
3619 * read.c: Don't include ctype.h.
3620 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
3621 for now; should be machine-dependent.
3622
3623 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
3624 targets, forcing BFD use.
3625
3626Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3627
3628 * config/tc-sparc.c: Use PARAMS macro for static function
3629 declarations. Use BFD_RELOC_ macros everywhere, with
3630 compatibility macros declared for non-BFD mode.
3631 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
3632 instead of enum reloc_type.
3633 (emit_sparc_reloc): Commented-out function deleted.
3634 (md_convert_frag): Deleted.
3635 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
3636 (md_apply_fix): Changed calling sequence (conditionally) for BFD
3637 version.
3638 * config/tc-sparc.h (md_convert_frag): New macro.
3639
3640 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
3641 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
3642 of referencing fields directly.
3643
3644 * write.c (cvt_frag_to_fill): New function; extracted from
3645 write_object_file.
3646 (write_object_file) [! BFD_ASSEMBLER]: Call it.
3647 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
3648 and set its size and flags.
3649
3650 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
3651 fields with BFD equivalents. Turn on back-pointers, and add
3652 target-specific fields at end.
3653
3654Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
3655
3656 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
3657 (write_object_file): Set it here instead, so that fixup_segment
3658 can see the correct value.
3659
3660Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3661
3662 * write.c (write_object_file): Check for errors and warnings and
3663 bail out before processing contents.
3664 (chain_frchains_together_1): New function, does most of the work
3665 of remove_subsegs.
3666 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
3667 (remove_subsegs) [! BFD]: Call it.
3668 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
3669 structures and routines.
3670
3671 * config/obj-elf.*: New files.
3672
3673 * config/mips.mt, config/rs6000.mt: Deleted.
3674
3675 * config/h8300.mt: Don't specify compiler here.
3676
7687d89b 3677 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
3678 not the h8300 one.
3679 * config/tc-z8k.h: Comment fix.
3680
3681 * write.c: Reordered some functions for better inlining.
3682 (fixup_segment): Linkrelax code is no longer conditional on
3683 TC_I960.
3684
3685Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
3686
3687 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
3688 obj-coffbfd.h}: support for the H8/500
3689
3690Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3691
3692 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
3693 * write.c (write_object_file): Not here.
3694 (fix_new): Initialize fx_addnumber.
3695
3696 * listing.c: Don't include target-cpu.h explicitly, since as.h
3697 includes it.
3698
3699Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3700
3701 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
3702 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
3703 (struct fix): Reordered fields for compactness and efficiency.
3704 Converted some logical fields to 1-bit fields.
3705
3706 * config/obj-aout.h: Use PARAMS.
3707 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
3708 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
3709
3710 * read.c: Don't include listing.h; as.h includes it. Removed
3711 DONTDEF code.
3712 [BFD_ASSEMBLER]: Include subsegs.h.
3713 (old_buffer, new_broken_words): Default initialization is
3714 sufficient.
3715
3716 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
3717 to 0, define stdoutput.
3718 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
3719 Call bfd_set_arch_mach.
3720 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
3721 bfd_close_all_done. Call bfd_perror on failure.
3722 (output_file_append) [BFD_ASSEMBLER]: Don't define.
3723
3724 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
3725
3726 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
3727 if not MANY_SEGMENTS. Define new field bfd_section if
3728 BFD_ASSEMBLER.
3729 (seg_info): New macro.
3730
3731 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
3732 variables, and some irrelevant comments.
3733
3734 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
3735 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
3736 * configure.in: Permit --with-bfd-assembler now, with a warning.
3737 Variable need_bfd is now a boolean, as is new variable bfd_gas.
3738 Set BFDDEF and BFDLIB in Makefile when appropriate.
3739
3740 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
3741 (main): Refer to flag_always_generate_output instead of
3742 flagseen['Z'].
3743
3744 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
3745 (*_section) [BFD_ASSEMBLER]: Define them.
3746 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
3747 set section flags when appropriate.
3748 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
3749 section is not absolute, undefined, or an assembler internal one.
3750 (absolute_section, undefined_section): Always define.
3751 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
3752 switch statements into if-else trees.
3753 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
3754 SEG_BSS and SEG_DATA.
3755
3756 * as.h (frag_now_fix): New macro.
3757 * symbols.c (colon): Use it.
3758
3759Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
3760
3761 * config/tc-mips.c: Added mips support for mips-dec-bsd.
3762 * config/tc-mips.h: Added mips support for mips-dec-bsd.
3763 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
3764 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
3765 * configure.in: Added mips support for mips-dec-bsd.
3766 * atof-generic.c: Define TRUE and FALSE if not defined.
3767
3768Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3769
3770 * version.c: Bumped version number to 1.93.05.
3771
3772Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3773
3774 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
3775 (obj_emit_lineno): Don't need return at end of void function.
3776 (obj_symbol_new_hook): Ditto.
3777
3778 * config/tc-m68k.c: Removed some unused code.
3779 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
3780
3781 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
3782 offset field is set.
3783
3784Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3785
3786 * config/tc-sparc.c (architecture_requested, warn_on_bump,
3787 md_relax_table): Use default zero initialization.
3788 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
3789 latter, instead of selecting with preprocessor conditionals.
3790
3791Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3792
3793 * configure.in: recognise all sparclite variants
3794
3795Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3796
3797 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
3798 accidentally changed to use subseg_change where it should have
3799 been subseg_new.
3800
6c5f9998
KR
3801Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3802
0bd77bc4
KR
3803 * expr.c (operand): If character other than comma or newline is a
3804 logical end-of-line character, use the newline case.
0cca30f3
KR
3805 From Eric Youngdale:
3806 (operand): Set X_add_number field for floating-point numbers.
3807 (operand): Treat zero byte as end-of-operand.
0bd77bc4 3808
6c5f9998
KR
3809 * configure.in (per-target): Look for with_bfd_assembler option.
3810 For now, only accept "no", until the merge is done.
3811
0cca30f3
KR
3812 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
3813 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
3814 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
3815 * read.c: Finish conversion to S_* macros in the VMS only
3816 parts of the program. Add "const" modifier to hex_value.
3817 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
3818 "ifdef OBJ_VMS".
3819 * expr.c: Add "const" modifier to hex_value.
3820 * symbols.c: Finish conversion to S_* macros in the VMS only
3821 parts of the program. Add "const" modifier to
3822 md_[long,short]_jump_size. Remove declaration of const_flag
3823 (which will be declared in obj-vms.h).
3824 * write.c: Add "const" modifier to md_[long,short]_jump_size.
3825 Fix arguments to VMS_write_object_file.
3826 * config-gas.com: New file. Script for VMS systems to set up the
3827 configuration to build gas for VMS, and create config.status.
3828 * make-gas.com: Redone to work with new scheme.
3829 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
3830 stabs directives.
3831 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
3832 will swap bytes if needed on a big endian system. Use throughout
3833 as needed.
3834 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
3835 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
3836 types of malformed stabs. Change parsing algorithm so that we are
3837 more certain of having all of the information that we need on hand.
3838 * obj-vms.c (final_forward_reference): New function, used to help
3839 resolve the data types of as many struct elements as possible
3840 when some part of the struct is not fully defined by the compiler.
3841 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
3842 stabs directives.
3843 * obj-vms.c (VMS_write_object_file): Define all vtable psects
3844 as symbols as well in the object file. Look for external functions
3845 that start with "__vt.", and turn them into variables, since the
3846 g++ compiler is incapable of doing this.
3847 * tc-vax.c: Add '1' option for backward compatibility with older GCC
3848 versions.
3849 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
3850 * input-scrub.c (as_where): Fix bug where as would crash if we did not
3851 have the name of the source file yet.
3852 * config/ho-vms.h: define HO_VMS, not HO_VAX.
3853
9d76a195
KR
3854Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
3855
3856 * read.c (s_data): Always use "data_section", since it'll map to
3857 SEG_DATA or SEG_E1 if needed.
3858 (s_lcomm): Likewise with bss_section.
3859 (s_fill): Use memset, not bzero.
3860
3861Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3862
3863 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
3864 handling GDB symbol table data.
3865
3866 * config/obj-aout.h (segment_name): Delete definition.
3867 (seg_name): Delete declaration.
3868 * config/obj-bout.h (segment_name, seg_name): Ditto.
3869 * config/obj-vms.h (segment_name, seg_name): Ditto.
3870 * config/obj-coff.h (segment_name): Ditto.
3871 * config/obj-coffbfd.h (segment_name): Ditto.
3872
3873 * Changes for BFD_ASSEMBLER:
3874 * obj.h (obj_crawl_symbol_chain): Declare only if not
3875 BFD_ASSEMBLER.
3876 (obj_header_append, obj_pre_write_hook): Ditto.
3877 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
3878 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
3879 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
3880 otherwise, use seg_name array.
3881 (seg_name): Declare only if not BFD_ASSEMBLER.
3882 (section_alignment): Declare only if not BFD_ASSEMBLER.
3883 (big_section, reg_section, pass1_section, diff_section,
3884 absent_section, text_section, data_section, bss_section): If
3885 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
3886 mapping to segT enum values.
3887 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
3888 if these are used or defined, if BFD_ASSEMBLER.
3889 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
3890 subseg_new split into two functions.
3891 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
3892
3893 * as.h (volatile): Don't define if already defined.
3894 (had_errors, had_warnings): Provide prototypes for ANSI C even if
3895 NO_STDARG.
3896 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
3897 declare with format attribute for -Wformat checking.
3898
85825401
ILT
3899Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
3900
3901 * app.c, config/tc-*.c: Don't include read.h, since it is already
3902 included by as.h.
3903
3904 * These are based on patches from Minh Tran-le
3905 <mtranle@paris.intellicorp.com>.
3906 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
3907 obj_format coffbfd and gas_target i386coff for target.
3908 (i[34]86-*-isc*): New host (uses sysv).
3909 * config/i386aix.mt: Removed (no longer used).
3910 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
3911 (MINUS_G): Removed.
3912 (LDFLAGS): Added, defined as -shlib.
3913 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
3914 * config/te-sco386.h (LOCAL_LABEL): Don't define.
3915 (DOT_LABEL_PREFIX): Define.
3916 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
3917 name rather than L0\001.
3918 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
3919 local_bss_counter.
3920 * symbols.c, symbols.h (local_bss_counter): Removed.
3921 * write.c (write_object_file): bss no longer uses
3922 local_bss_counter. Pass correct data and bss size to
3923 VMS_write_object_file.
3924 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
3925 argument, rather than using local_bss_counter.
3926 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
3927 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
3928 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
3929 (size_section): Restored sanity check.
3930 (do_relocs_for): Base section address on s_paddr rather than
3931 computing it. Adjust a29k R_IHIHALF special case to account for
3932 section paddr (used to require paddr to be zero). If there are no
3933 reclos, set s_relptr to 0. Set relocation size in object_headers.
3934 (fill_section): Always set s_vaddr here, removing
3935 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
3936 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
3937 Set STYP_INFO for .comment.
3938 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
3939 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
3940 (crawl_symbols): Handle 8 character section name correctly. Use
3941 H_{SET,GET}_* macros.
3942 (do_linenos_for): Set lineno size in object_headers.
3943 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
3944 set s_vaddr here. If string_byte_count remains 4, set it back to
3945 0, and only write strings out if there are some. Call
3946 fill_section before do_relocs_for and do_linenos_for.
3947 (obj_coff_section): Handle optional quoted second argument giving
3948 section characteristics.
3949 (obj_coff_bss): Added to handle .bss.
3950 (obj_coff_ident): Added to handle .ident (puts string in .comment
3951 section).
3952 (obj_coff_lcomm): Put common symbols in .bss, not .data.
3953 (fixup_mdeps): Change to segment. Call frag_wane after
3954 md_convert_frag.
3955 (fixup_segment): Explicitly check S_IS_COMMON before making 386
3956 adjustment (already happened only for common symbols, but this is
3957 clearer).
3958 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
3959 * config/tc-i386.c (s_bss): Don't use if I386COFF.
3960 (md_pseudo_table): Ignore .optim and .noopt.
3961 (tc_coff_sizemachdep): New function.
3962 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
3963 compatibility.
3964 (LOCAL_LABEL): Removed definition.
3965 (DOT_LABEL_PREFIX): Defined.
3966
4539aa02
KR
3967Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
3968
6d331d71
KR
3969 * app.c (app_push): Use memcpy, not bcopy.
3970 (do_scrub_next_char): For \", return " not '.
3971 (symbol_chars): Now const.
3972
4539aa02
KR
3973 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
3974 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
3975
3976 * config/obj-coff.h: Don't use #elif.
3977
3978 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
3979 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
3980
3eb802b5
ILT
3981Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
3982
3983 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
3984 already defined.
3985
be06bdcd
SC
3986Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3987
3988 * app.c (do_scrub_begin): allow single quote strings if so
3989 configured.
3990
3991 * config/*z8k*: checkpoint
3992
3993Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
3994
3995 * read.c (read_a_source_file): avoid calling xmalloc (0).
3996
016e0d42
ILT
3997Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
3998
3999 * listing.c: Call xmalloc, not malloc; don't declare malloc.
4000
4001 * Changes to support SCO 3.2v4:
4002 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
4003 SEG_BSS, fill with NOP_OPCODE.
4004 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
4005 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
4006 using ZERO_BASED_SEGMENTS.
4007 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
4008 never set segment address for SEG_E2 (.bss) and don't write out
4009 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
4010 (obj_coff_endef): Don't merge labels or symbols awaiting forward
4011 definitions, and don't merge tags with non-tags. Check for .bf
4012 rather than just checking whether the second character is b and
4013 the third character is f.
4014 (obj_coff_val): gcc can generate values which we don't handle
4015 correctly; discard information for now, since it only affects the
4016 debugging information.
4017 (tag_find_or_name): Don't insert tags in the symbol table.
4018 (yank_symbols): Don't merge labels.
4019 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
4020 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
4021 set segment address if ZERO_BASED_SEGMENTS.
4022 (obj_coff_section): Accept and ignore a trailing quoted string, as
4023 used in AT&T i386 syntax.
4024 (fixup_segment): Take segment as argument. On the i386, adjust PC
4025 relative addends by the segment vaddr.
4026 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
4027 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
4028 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
4029
db33220f
KR
4030Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
4031
016e0d42
ILT
4032 * config/obj-coffbfd.c: Include libcoff.h.
4033
db33220f
KR
4034 * version.c: Now version 1.93.
4035
dde624ef
KR
4036Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
4037
db33220f
KR
4038 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
4039 power-of-two alignment for .align.
4040
dde624ef
KR
4041 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
4042 and leave everything else alone.
4043
4044Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
4045
4046 * Makefile.in (as.new): Don't bother saving as.old.
4047
4048 * write.c: Conditionalize on OBJ_VMS, not VMS.
4049 (magic_number_for_object_file): Don't define if OBJ_VMS.
4050
4051 * config/obj-vms.c: Changes for traditional C.
4052
7f2cb270
KR
4053Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
4054
4055 * config/ho-generic.h (malloc, realloc): Declare.
4056
4057 * Lots of comment/whitespace changes.
4058
4059 * write.h (struct fix): Some fields reordered, narrowed.
4060
4061 * read.c (MASK_CHAR): Define using C types, not magic number.
4062
4063 * as.c, input-file.c: Deleted some unused code.
4064
4065 * app.c, as.h: Doc fix.
4066
4067 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
4068
4069 * as.h (xmalloc): Argument is long.
4070
4071 * xmalloc.c (error): Remove declaration; as.h takes care of it.
4072
0cca30f3
KR
4073 * doc/as.texinfo: Regrouped documentation of some command-line
4074 options. Updated options documentation for m68k. Some minor
4075 wording/punctuation changes.
4076
7f2cb270
KR
4077Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
4078
4079 * configure.in: Accept target OS "vms".
4080
4081 * symbols.c: Merged ANSI and non-ANSI function decls, using
4082 PARAMS macro.
4083
4084 * xmalloc.c: Just include as.h, don't bother trying to figure out
4085 other header files.
4086
4087 * strstr.c, strerror.c: Deleted.
4088 * Makefile.in: Deleted references.
4089
4090 * config/tc-ns32k.c: Don't include header file for string
4091 declarations; leave that to ho-*.h.
4092
4093Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
4094
4095 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
4096 imported from FSF sources.
4097
4098 * messages.c (strerror): Declare unconditionally.
4099
4100 * as.h: Delete alloca and register definitions.
4101
4102 * config/atof-ieee.c (mask): Now const.
4103
4104 * obstack.c, obstack.h: Deleted.
4105
4106 * as.h (flag_readonly_data_in_text): New flag.
4107 * as.c (main): Set it for -R.
4108
4109 * as.h (flag_suppress_warnings): New flag.
4110 * as.c (main): Set it for -W.
4111 * messages.c (as_warn): Check it instead of flagseen['W'].
4112
4113 * as.h (flag_always_generate_output): New flag.
4114 * as.c (main): Set it for -Z.
4115
4116 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
4117 * config/tc-a29k.h: Ditto.
4118 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
4119 macros.
4120
4121 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
4122 macro.
4123 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
4124 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
4125 write.h: Likewise.
4126 * read.c: Likewise.
4127
4128 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
4129 xrealloc from xrealloc.c.
4130 * xrealloc.c: Deleted.
4131 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
4132
4133 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
4134 or vms ho- files.
4135
4136 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
4137
4138 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
4139 don't initialize it with NULL.
4140
4141 * config/ho-vax.h (M_VAX): Deleted; was unused.
4142
4143 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
4144 New files imported from FSF version, contributed by Eric Youngdale.
4145 * README-vms-dbg, config/vms: Deleted.
4146
4147 * ChangeLog, config/ChangeLog: Merged.
4148
4149 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
4150 version.
4151
4152 * input-file.c (input_file_open): Eliminate call to setvbuf.
4153 [USG] (setbuffer): Deleted macro.
4154
6efd877d
KR
4155Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
4156
4157 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 4158 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
4159
4160 * configure.in: No te-386bsd.h file exists; don't try to use it.
4161
7f2cb270
KR
4162 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
4163
4164 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
4165 could be doing emulation.
4166
0cca30f3 4167Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
132239bf 4168
0cca30f3
KR
4169 z8000 documentation
4170 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
4171 all modified.
4172
6efd877d
KR
4173Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
4174
4175 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
4176
4177 * subsegs.h: add extern to segment_info declaration.
4178
4179 * read.h: added extern declarations for comment_chars,
4180 line_comment_chars, and line_separator_chars.
4181 read.c, app.c: removed definitions of comment_chars,
4182 line_comment_chars, and line_separator_chars.
4183
7f2cb270
KR
4184 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
4185 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
4186 the register name.
4187 (insert_reg): put REGISTER_PREFIX before register names before
4188 putting them in the symbol table.
4189 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
4190 M68KCOFF.
4191
4192 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
4193 section.
4194
4195 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
4196 comment_chars, line_comment_chars and line_seperator_chars
4197 consistently const, and always initialized them. Included read.h.
4198
4199Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
4200
4201 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
4202 constant will not fit in an immediate field.
4203 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
4204
4205Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
4206
4207 * obj-coff.c (callj_table): Delete global variable.
4208 (obj_emit_relocations): Define it locally here, and only if
4209 TC_I960 is defined.
4210
4211 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
4212 (m68k_ip): Don't warn about bignum used as float bit-pattern.
4213
4214 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
4215 with a single set using PARAMS macro.
4216
4217 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
4218 of 2.
4219
4220 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
4221
4222 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
4223 so widening works consistently.
4224
6efd877d
KR
4225Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
4226
4227 * version.c: Put conditional "const" before version_string, not
4228 before dummy function for VMS. Now version 1.91.03.
4229
4230 * app.c (do_scrub_next_char): Need double-\ before `000' to show
4231 printed rep of null character.
4232
7f2cb270
KR
4233Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
4234
4235 * obj-coffbfd.c (write_object_file): check return value of
4236 bfd_close_all_done.
4237
559d9aac
ILT
4238Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
4239
7f2cb270
KR
4240 * Support for i386-sysv.
4241 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
4242 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
4243 be used to set them all to zero as was done before.
4244 (fill_section): segment addresses now set in write_object_file.
4245 (fill_section): Don't set STYP_NOLOAD for .bss section.
4246 (fixup_segment): 386 uses strange common symbol format.
4247 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
4248 compatibility with SVR3.2 linker.
6efd877d
KR
4249 * configure.in: i386-sysv and i386-sco use coffbfd.
4250
559d9aac
ILT
4251 * app.c (do_scrub_next_char): discard whitespace after a label.
4252
0f8b9790
DZ
4253Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4254
4255 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
4256 hosts, use the sysv configuration for solaris2
4257
7f2cb270
KR
4258Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4259
132239bf 4260 fix i960+non-bfd coff bit rot.
7f2cb270
KR
4261 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
4262 support for C source listings. (obj_coff_endef): look in the right
4263 part of the symbol for the symbol name
4264
4265 * tc-m68k.c (get_num): make it work for all segments, not just the
4266 first three.
4267
984cf2d7
ME
4268Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
4269
4270 * configure.in: recognize i386-*-bsd emulation.
4271
4272Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4273
4274 * configure.in: use the cpu-vendor-os triple for host and target
4275
7f2cb270
KR
4276Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4277
4278 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
4279 * tc-z8k.c: lots of bug fixes
4280
4281Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
4282
4283 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
4284 #elif, since it is not supported by old compilers.
4285 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
4286 couple of expressions in tc-m68k.c.
4287
984cf2d7
ME
4288Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
4289
4290 * read.c (cons): If NO_RELOC is defined, use it.
4291
7f2cb270
KR
4292 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
4293
4294Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
4295
4296 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
4297 local labels to start with a .) and set REGISTER_PREFIX to %.
4298 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
4299
5a0fc1d4
JG
4300Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
4301
4302 * messages.c: Comment changes.
4303
4959cb7b
KR
4304Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
4305
4306 * as.h: Test if __STDC__ is defined only, don't test its value.
4307 * messages.c: If __STDC__ is not defined, define NO_STDARG.
4308
5e9d510e
BK
4309Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
4310
4311 * listing.c (debugging_pseudo): Add stabs and stabn as things to
4312 ignore.
4313
7f2cb270
KR
4314Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
4315
4316 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
4317 sections starting from zero, rather than making them consecutive.
4318 This makes subsequent reloc calculations easier, esp if the object
4319 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
4320 allocate lcomm in .data rather than in .bss. It seems that some
4321 tools can't cope with a non-zero sized bss before linkage.
132239bf 4322
7f2cb270
KR
4323Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
4324
4325 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
4326 throughout. That enum no longer means what we thought it meant.
4327
4328 * tc-m68k.c (md_assemble, md_parse_option): Handle new
4329 "-mno-688[58]1" options.
4330
4331 * tc-m68k.c: Added CPU32 support.
4332
4333Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4334
4335 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
4336
569dac15
JW
4337Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
4338
4339 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
4340 Change LIBDEPS dependence to LIBS.
4341
efbfb612
ILT
4342Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
4343
4344 * Makefile.in (install): if $(tooldir) exists, install as in
4345 $(tooldir)/bin.
4346
987b1491
ILT
4347Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
4348
ca5e9d49
ILT
4349 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
4350 .word is < -32768 or > 32767. The -J flag causes the error to be
4351 ignored. This is to catch over-sized switches generated by gcc on
4352 systems which don't support the broken .word hack.
4353 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
4354 write.c (fixup_segment): check for signed .word overflow if
4355 WARN_SIGNED_OVERFLOW_WORD.
4356
987b1491
ILT
4357 * write.c (fixup_segment): fixed missing parens in expression
4358 checking for byte or word overflow.
4359
7f2cb270
KR
4360 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
4361 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
4362 WARN_SIGNED_OVERFLOW_WORD.
4363
4364 * obj-coffbfd.c (fixup_segment): fixed missing parens in
4365 expression checking for byte or word overflow.
4366
4367Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4368
4369 Support for i386 coff
132239bf 4370 * obj-coffbfd.h : added stuff
7f2cb270
KR
4371 * tc-i386.c (tc_coff_fix2rtype): new function
4372 * tc-i386.h : new coff defines
4373
b1520b1f
ILT
4374Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
4375
4376 * input-scrub.c (input_scrub_push): call input_file_begin, not
4377 input_scrub_begin.
4378 messages.c (as_perror): print ": " between the passed in error and
4379 the strerror, like perror does.
4380
b53ccaac
ILT
4381Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
4382
4383 * Makefile.in: use gas_target instead of modifying target_cpu.
4384 From Steve Chamberlain:
4385 Makefile.in: Handle m68*-*-coff*.
4386 read.c, read.h: add mult argument to s_space
4387
7f2cb270
KR
4388 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
4389 Motorola and MIT syntax; gas can now assemble either type of
4390 file.
4391 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
4392 From Steve Chamberlain:
4393 m68kcoff.mt: for m68k COFF.
4394 obj-coffbfd.c: (fixup_mdeps) added
4395 (size_section) removed bad sanity check
4396 (fill_section) added rs_machine_dependent case
4397 (write_object_file) call fixup_mdeps
4398 (fixup_segment) set fx_subsy to 0.
4399 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
4400 handle m68k.
4401 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
4402 pseudo ops.
4403
db4d20e5
KR
4404Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
4405
4406 * Makefile.in (LIBS): Include opcode library.
4407
e53ab768
KR
4408Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
4409
4410 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
4411 including zero are accepted, pass +0.0.
4412
7e10f53c
ILT
4413Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
4414
4415 * Makefile.in: map "as" through program_transform_name when
4416 installing.
4417
0cca30f3
KR
4418 * doc/Makefile.in: map "as" through program_transform_name when
4419 installing.
4420
b0952e12
JW
4421Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
4422
4423 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
4424
7f2cb270
KR
4425Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
4426
4427 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
4428 tc-i960.c (md_ri_to_chars): Always output bout object file in
4429 little endian byte order (used to use endianness of host).
4430
b2f221a9
KR
4431Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
4432
4433 * config/tc-m68k.c (init_table): Now const. Always include 68851
4434 data, so that "bc" is available to 68040 cache instructions.
4435 Added "tt0", "tt1", and 68ec030 variants.
4436 (md_assemble): Complain if 68000 (only) and 68881 are specified.
4437 (enum _register): Added TT0, TT1.
4438 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
4439 line number correctly in "internal error" messages. Don't print
4440 architecture-mismatch message for operand errors.
4441
4442 From Colin Smith (colin@wrs.com):
4443 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
4444 than install_operand.
4445
ab737e51
SC
4446Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4447
4448 * listing.c (buffer_line): rewind to the start of include
4449 files, they might be included twice.
4450
7f2cb270
KR
4451 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
4452
7121231f
ILT
4453Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
4454
4455 * Makefile.in: defined TARGET_CPU for C code so that it can choose
4456 one element of a family.
4457
7f2cb270
KR
4458 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
4459
4460 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
4461 so that we can assemble hand-written libgcc code.
4462
4772861e
KR
4463Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
4464
4465 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
4466 has already been formatted (but may still contain %-characters).
4467 (as_bad): Likewise.
4468
7f2cb270
KR
4469Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
4470
4471 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
4472 written with indirection on the last two operands, which can be
4473 either data or address registers. Added a new operand type 'r'
4474 which accepts either register type. Added '(' to notend stuff in
4475 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
4476
09952cd9
KR
4477Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
4478
4479 * as.h (enum _relax_state): Start off at one, not zero, to better
4480 catch uninitialized-variable errors.
4481 (linkrelax): Declare new variable.
4482
4483 * messages.c (warning_count, error_count): Default initializer is
4484 sufficient.
4485
4486 * write.c: Merged some declarations, using PARMS macro.
4487 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
4488 data_last_frag): No longer static.
4489 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
4490 defined, call it. Change segments before calling fixup_segment.
4491 (relax_align): If linkrelax, provide extra padding.
4492
4493 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
4494 their not having symbols associated.
4495
4496 * tc-i960.c (norelax, instrument_branches): Default initializer is
4497 sufficient.
4498 (linkrelax): Delete variable definition.
4499 (mem_fmt): Call fix_new with NO_RELOC.
4500 (tc_bout_fix_to_chars): Handle alignment relocs.
4501 (i960_handle_align): New function.
4502 * tc-i960.h (linkrelax): Delete declaration.
4503 (HANDLE_ALIGN): New macro; calls i960_handle_align.
4504 (NEED_FX_R_TYPE, NO_RELOC): New macros.
4505
a457f4d9
KR
4506Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
4507
4508 * config/sparc.mt: New file. Grab sparc opcode table from bfd
4509 library.
4510
4b857710
ILT
4511Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
4512
4513 * Makefile.in: always create installation directories. Removed
4514 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
4515 FLAGS_TO_PASS to recursive makes.
4516
0cca30f3
KR
4517 * doc/Makefile.in: always create installation directories.
4518
f7e9bc5a
SC
4519Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4520
4521 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
4522 being used with args swapped, causing occasional lossage when
4523 refilling buffers after an include file.
4524
c1c28543
KR
4525Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
4526
4527 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
4528 version. Discard bogus DONTDEF version.
4529 (as_warn, as_bad, as_fatal): Likewise.
4530
2e20e59a
KR
4531Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
4532
4533 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
4534 selected architecture, print a message saying so and listing what
4535 processors support it, rather than saying "operands mismatch".
4536
c8c7e0bf
KR
4537Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
4538
4539 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
4540
4541 * config/ho-rs6000.h (M_RS6000): Don't define it.
4542 (free): Declare it.
4543 (BROKEN_ASSERT): Define it if not __STDC__.
4544
7f2cb270
KR
4545Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
4546
4547 * sparc.mt: New file.
4548
4549Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
4550
4551 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
4552 if TN_SUN3; otherwise align to 2**N-byte bounary.
4553
7fd3560a
SC
4554Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4555
4556 * read.c (s_fill): make the .fill size clamped error a warn and
4557 fix bug where 0's were always placed.
4558
7f2cb270
KR
4559 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
4560 two bytes of any constant with 0xff:
4561
62594bd7
SC
4562Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4563
4564 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
4f3569fa 4565 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 4566
7f2cb270
KR
4567Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
4568
4569 * tc-m68k.c (try_index): Error if index scaling specified and
4570 assembling for an older CPU than a 68020.
4571
680227f3
KR
4572Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
4573
4574 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
4575 fx_offset into account.
4576
c51ccfd5
KR
4577Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
4578
4579 * configure.in (mips host): Accept "ultrix" with version number.
4580
4581 * expr.c (floating_constant): Separate "=-" to avoid confusing
4582 ancient or broken compilers.
4583
4584 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
4585 processor/opcode mismatch, so reword the error message.
4586 (md_assemble): If no CPU has been set (even if FPU/PMMU
4587 characteristics have been), default to 68020. Don't need extra
4588 quotes around error string.
4589
14f1fc24
JW
4590Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
4591
4592 * read.c (potable): Revert sac's incorrect change made Jul 13.
4593 Align really is supposed to be ptwo not nbytes.
4594
4595Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
4596
4597 * Makefile.in: _Do_ include libiberty. (from sef)
4598
4599Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
4600
4601 * expr.c (integer_constant): Handle "0f" and "0b" label references
4602 properly.
4603
462088b8
SC
4604Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4605
4606 * write.c (fixup_segment): if relaxing, don't do anything.
4607 * config/obj-bout.[ch] : maintain the a_relaxable file header info
4608 * config/tc-i960.c: new option -linkrelax
4609
4610Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4611
4612 * expr.c (expr): allow SEG_BSS in expressions
4613 * read.c (potable): align should be nbytes, not ptwo!
4614 * write.c (write_object_file): extra glue for new bss attributes
4615 (relax_segment): SEG_BSS is ok now
4616 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
4617
7f2cb270
KR
4618Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
4619
4620 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
4621
462088b8
SC
4622Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
4623
4624 * configure.in: recognize m680x0 as having sun3 emulation mode for
4625 vxworks environment.
4626
4627
0b0b5dba
DHW
4628Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
4629
4630 * Makefile.in: Add program_suffix (parallel to program_prefix)
4631
7c2d4011
SC
4632Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4633
4634 * app.c (process_escape): new function to handle escapes the right
4635 way, (do_scrub_next_char): use new function
4636 * cond.c (s_ifdef): do ifdef/ifndef right
4637 * read.c (s_fill): make the , expressions optional like the doc
4638 says
4639 * config/tc-h8300.[ch]: better warnings
4640
90d49457
SC
4641Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4642
65bfcf2e
SC
4643 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
4644 as data0_frchainP
4645
4646 * write.c (write_object_file): various changes to handle data in
132239bf 4647 the BSS segment in much the same was as stuff in the DATA segment.
65bfcf2e 4648
7f2cb270
KR
4649 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
4650 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
4651 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
4652 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
4653 it into SEG_BSS
462088b8 4654
f8701a3f
SC
4655Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4656
4657 * expr.c(expr): allow SEG_REGISTER in expressions.
4658 * read.c(pseudo_set): register expressions can be the source of a
4659 set.
4660 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
4661 goto SEG_TEXT (if a.out)
4662 * write.c (write_object_file): If a.out don't use the old way for
4663 -R.
4664 * config/obj-a.out (s_sect): complain if the user tries to use a
4665 subsegment with a value which might interfere with out -R hackery.
4666 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
4667 rather than use ugly if tree. (init_regtable): insert register
4668 names into symbol table.
4669
ebfb4167
MT
4670Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
4671
4672 * write.c (write_object_file): keep the fix_tail clean, which
4673 fixes a bug in -R where relocations were being lost.
4674
4675Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
4676
4677 * configure.in: recognize m680x0 as having sun3 emulation mode for
4678 vxworks environment.
4679
4680Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
4681
4682 * configure.in: recognize m680x0 as an m68k
4683
dfd53fe9
JW
4684Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
4685
4686 * configure.in: Recognize sparclite as a sparc variant.
4687
7f2cb270
KR
4688 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
4689 -Asparclite flag.
4690
d312e231
SC
4691Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4692
4693 * config/tc-a29k.c: lint
4694 * listing.c, expr.c: patches from Andrew Smith
4695
0cca30f3
KR
4696Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
4697
4698 * doc/Makefile.in: use m4 rather than gm4.
4699
7f2cb270
KR
4700Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4701
4702 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
4703 calc the base of relocs correctly.
4704 * tc-a29k.c (parse_operand): allow expressions to be in any section.
4705
d312e231
SC
4706Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
4707
4708 * as.c, write.c: use -K rather than -k for the broken word warning
4709 option.
4710
fa493b93
RP
4711Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
4712
4713 * Makefile.in: do not print recursion lines.
4714
d96c09ed
RP
4715Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
4716
4717 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
4718
4719Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
4720
4721 * write.c (write_object_file): For b.out format, round up section
4722 start addresses to match required alignment.
4723
81484684
KR
4724Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
4725
4726 * Makefile.in (install): Install into $(tooldir)/bin, since that's
4727 where gcc looks for it.
4728
3876b4c5
SEF
4729Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
4730
4731 * Makefile.in: Changed some lines to be less confusing for some
4732 makes.
4733
4734 * input-file.c: Conditionalize on _IOFBF, not VMS.
4735
4736 * read.c, write.c: Change a series of ifdef/elif to
4737 ifdef/else/ifdef etc.
4738
4739Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
4740
4741 * symbols.c (fb_label_init): fix sizeof to memset.
4742
95a925b8
RP
4743Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
4744
3876b4c5
SEF
4745 * Makefile.in: install the man page.
4746
95a925b8
RP
4747 * Makefile.in: pass down MAKEINFO explicitly on info.
4748
0cca30f3
KR
4749 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
4750
5d53038b
SC
4751Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
4752
4753 * flonum-const.c: renamed flonum-konst.c to stop dos name
4754 conflict.
4755
7f2cb270
KR
4756Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
4757
4758 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
132239bf 4759 tc-m68k.h to te-sun3.h.
7f2cb270 4760
8c1b25e4
RP
4761Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
4762
4763 * configure.in: vxworks68 gets te-sun3.h.
4764
4765 * expr.c: remove limitation that local_labels_dollar or
4766 local_labels_fb must be < 10.
4767
4768 * symbols.c: remove local_labels_dollar, replace with a function
4769 interface for a sparse array. All users adjusted.
4770
7f2cb270
KR
4771 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
4772
0cca30f3
KR
4773Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
4774
4775 * doc/Makefile.in: commented out line for building as-all.texinfo.
4776 This is temporary.
4777
4778 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
4779
8c1b25e4
RP
4780Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
4781
4782 * Makefile.in: added check target.
4783
4784Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
4785
4786 * Makefile.in: added tooldir and program_prefix.
4787
4788Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
4789
4790 * write.{c,h} (fix_new): Make these declarations consistent.
4791
1651b22d
MT
4792Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
4793
4794 * Makefile.in (strerror.o): Add rule so that broken Sun make can
4795 work in subdirs.
4796
5373c439
SC
4797Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
4798
4799 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
4800
4801 * expr.c (operand): if can't work out what sort of operand it is,
4802 then look through FLT_CHARS for a hint.
4803
8c1b25e4
RP
4804Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
4805
4806 * Makefile.in, configure.in: removed traces of namesubdir,
4807 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
4808 copyrights to '92, changed some from Cygnus to FSF.
4809
0cca30f3
KR
4810 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
4811 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
4812 copyrights to '92, changed some from Cygnus to FSF.
4813
f24f7577
SC
4814Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
4815
14d3e47b
SC
4816 * expr.c: If an expression is single comma, then return with
4817 SEG_ABSENT rather than an error - since the sparc front end does
132239bf 4818 really strange things with things like fbge,a
14d3e47b 4819
f24f7577
SC
4820 * as.h: include bfd.h if using many sections
4821 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
4822 local labels didn't work.
4823 * listing.c (list_symbol_table): don't core dump when there's no
4824 symbol there.
4825 * write.c, write.h: call fix_new with the right number of args on
4826 the H8.
4827 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
4828 errors nices
4829
c593cf41
SC
4830Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
4831
4832 * app.c: MRI compatibility - allow single quote to start a string.
4833 * as.c: fix typo recently introduced.
4834 * as.h : Don't include aout/reloc.h - it's not right for COFF!
4835 * expr.c: Much rewriting, to accomodate MRI syntax for
4836 expressions. Also easier to read now.
4837 * listing.c: Put back defuns
4838 * read.c: modified to accept MRI syntax, put back listing pseudo
4839 ops so that an assembler built with NO_LISTING ignores list ops
4840 rather than pukes.
4841 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
4842 machine is a SPARC or a 29K.
4843 * config/obj-aout.c: added s_sect pseudo op
4844 * config/obj-coffbfd.c: lints, set the filehdr flags right and
4845 fill in the timestamp.
4846 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
4847 anymore, define all the relocs which the tc-<x> bit will use so we
4848 can translate from them to the coff types.
4849 * config/tc-a29k.c: reloc_type isn't ane enum any more
4850 * config/tc-m68k.c: Added NO_RELOC definition.
4851
2d97273c
RP
4852Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
4853
c593cf41
SC
4854 * Makefile.in: put header files before C source for TAGS; remove
4855 references to non-existent syscalls.h.
4856
2d97273c
RP
4857 * read.c, write.c subsegs.c: back out the .bss changes.
4858
7f2cb270
KR
4859 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
4860
4861 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
4862
4863 * a.out.h: removed.
4864
6d5460ab
RP
4865Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
4866
4867 * symbols.c (local_label_name): symbols now start with ^A.
4868
4869 * read.c, subsegs.c, write.c obj-coff.c: added handling of
4870 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
4871 generate these sections. .align: will use NOP_OPCODE or 0
4872 for padding. This is just for being nice to the
4873 disassembler.
4874
4875 * expr.c (operand): changed to generate local label "\001L0"
4876 starting with a ^A so that it is recognized as a local label.
4877
4878 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
4879
7f2cb270
KR
4880 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
4881 i/o opcodes - inb, inw, outb and outw. string manipulation with
4882 att syntax - scmp, slod, smov, ssca, ssto.
4883
4884 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
4885 to just after .file .
4886
4887 In obj_crawl_symbol_chain() where it tries to put the external
4888 symbols apart, with the condition:
4889 (!S_IS_DEFINED(symbolP) &&
4890 !S_IS_DEBUG(symbolP) &&
4891 !SF_GET_STATICS(symbolP))
4892 it was moving too many symbols out. So I switch it back to the
4893 condition:
4894 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
4895
4896 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
4897 so that we don't use the F_RELFLG which make the linker complain
4898 that somebody has stripped the relocation info.
4899
4900 Also, the AIX ld program require that the relocation table
4901 is sorted by r_vaddr like the standard ATT assembler does.
4902
4903 [he also changed the sizeof(struct ...)'s into the coff
4904 style FOOSZ macros. I'm not sure this is right, but I can't
4905 remember why. xoxorich.]
4906
d6e344db
RP
4907Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
4908
4909 * Makefile.in, configure.in, doc: use the doc. Build it, install
4910 it, clean it, etc.
4911
eb9eacd3
RP
4912Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
4913
aa3782d2
RP
4914 * read.c: white space and comments only.
4915
f816adbc
RP
4916 * configure.in: use the new atof-ns32.c for ns32k.
4917
eb9eacd3
RP
4918 * write.c: comment change only.
4919
7f2cb270
KR
4920 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
4921 aren't yet integrated.
4922
4923 * tc-i860.[hc]: blew off the dust. Something must still be done
4924 about conflicting relocation types.
4925
4926 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
4927 real thing.
4928
4929 * tc-i960.c, tc-sparc.c: white space and comments only.
4930
4931 * tc-a29k.h: delete duplicate macro definition.
4932
4933 * new file atof-ns32k.c copied from hack's last unreleased gas.
4934
542e1629 4935Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 4936
eb9eacd3
RP
4937 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
4938 rather than abort.
132239bf 4939
542e1629
RP
4940 * nearly everything. flush ChangeLog, package as gas-1.92.1.
4941 ChangeLog's prior to this are sketchy at best. I have logs.
4942 They just aren't ChangeLogs.
This page took 0.837572 seconds and 4 git commands to generate.