* configure.in: Call AC_HEADER_SYS_WAIT.
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
057a4d41
ILT
1Mon Sep 25 00:23:16 1995 Ian Lance Taylor <ian@cygnus.com>
2
3 * configure.in: Fix typo: fmt-elf to fmt=elf.
4
25b1cdd0
MM
5Fri Sep 22 16:34:46 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6
7 * config/tc-ppc.c (ppc_elf_suffix): Rewrite to use a table of
8 strings and relocations they represent. Add @br{,n}taken for
9 branch taken/not taken support.
10 (md_apply_fix3): Add BFD_RELOC_PPC_B16_BR{,N}TAKEN support.
11
4493af66
MM
12Thu Sep 21 21:10:17 1995 Michael Meissner <meissner@cygnus.com>
13
14 * config/tc-ppc.c (md_parse_option): -mrelocatable-lib now only
15 sets EF_PPC_RELOCATABLE_LIB and not also EF_PPC_RELOCATABLE.
16
52e1cf9d
ILT
17Thu Sep 21 16:30:56 1995 Ian Lance Taylor <ian@cygnus.com>
18
19 * subsegs.c (subseg_set): Permit SEG_ABSOLUTE in know expression.
20 * expr.c (expr): Account for new operatorT values in know
21 expression.
22
23 * write.c (fixup_segment): Clear fixp->fx_subsy if the relocation
24 is fully resolved.
25
2c474754
MM
26Thu Sep 21 14:11:49 1995 Michael Meissner <meissner@cygnus.com>
27
28 * config/tc-ppc.c (ppc_flags): New variable to hold the flag bits
29 to set in the ELF header.
30 (md_parse_option): Add support for -mrelocatable-lib. Make both
31 -mrelocatable and -mrelocatable-lib set ppc_flags.
32 (md_begin): Set ELF flags with ppc_flags.
33
34Wed Sep 20 13:01:52 1995 Ian Lance Taylor <ian@cygnus.com>
35
36 * Makefile.in (maintainer-clean): New target, synonym for
37 realclean. Add GNU standard maintainer-clean echos.
38 * doc/Makefile.in (maintainer-clean): New target, synonym for
39 realclean.
40
e1c0287d
ILT
41Tue Sep 19 11:31:31 1995 Ian Lance Taylor <ian@cygnus.com>
42
af931029
ILT
43 * config/tc-m68k.c (m68k_ip): Reject immediate operands for '%'.
44
9adcd781
ILT
45 * config/tc-m68k.c (m68k_ip): Reject immediate operands for '|'.
46 Replace 'P' with '0', '1', and '2'.
47
e1c0287d
ILT
48 * config/tc-m68k.c (parse_mri_control_operand): Change leftstop
49 and rightstop to not be const.
50 (parse_mri_control_expression): Likewise.
51 (build_mri_control_operand): Likewise. Use m68k_ip_op to examine
52 the operand, not m68k_reg_parse.
53 (s_mri_if): In MRI mode, stop at the first '*'.
54 (s_mri_while): Likewise.
55 (s_mri_else): In MRI mode, ignore trailing characters.
56 (s_mri_endi, s_mri_break, s_mri_next, s_mri_for): Likewise.
57 (s_mri_endf, s_mri_repeat, s_mri_until, s_mri_endw): Likewise.
58 * config/m68k-parse.y: Revert yesterday's change.
59 * config/m68k-parse.h: Revert yesterday's change.
60
85f34122
ILT
61Mon Sep 18 15:22:28 1995 Ian Lance Taylor <ian@cygnus.com>
62
b3625fe6
ILT
63 * config/tc-m68k.c (parse_mri_control_operand): Change leftstart
64 and rightstart to not be const.
65 (parse_mri_control_expression): Likewise.
66 (build_mri_control_operand): Likewise. If the left side of the
67 comparison is a register, and the right side is not, swap the two
68 sides.
69 * config/m68k-parse.y (m68k_reg_parse): Make globally visible.
70 * config/m68k-parse.h (m68k_reg_parse): Declare.
71
f9680a05
ILT
72 * read.c (mri_comment_field): New function.
73 (mri_comment_end): New function.
74 (s_align_bytes): Use mri_comment_field.
75 (s_align_ptwo, s_comm, s_mri_common, s_fail, s_globl): Likewise.
76 (s_float_space, s_struct): Likewise.
77 (s_space): Use mri_comment_field rather than doing it by hand.
78 (cons_worker, equals): Likewise.
79 (s_end): Ignore comments starting with '*' or '!'.
80 * read.h (mri_comment_field): Declare.
81 (mri_comment_end): Declare.
82 * cond.c (s_if): Use mri_comment_field.
83 * config/tc-m68k.c (s_chip, s_reg): Likewise.
84
3b06beb7
ILT
85 * write.c (fixup_segment): Handle ABS-sym in -sym case rather than
86 sym-sym case.
87 * config/obj-coff.c (fixup_segment): Likewise. Permit negative
88 symbols if TC_M68K.
89 * config/tc-m68k.c (tc_coff_fix2rtype): If fx_tcbit is set, return
90 R_RELLONG_NEG.
91 (tc_gen_reloc): If fx_tcbit is set, abort.
92 (md_apply_fix_2): For a negative reloc, move fx_subsy to fx_addsy,
93 and set fx_tcbit.
94
85f34122
ILT
95 * config/tc-m68k.c (s_reg): Ignore comment field in MRI mode.
96
e4c3b475
ILT
97Mon Sep 18 14:44:04 1995 Arne H. Juul <arnej@pvv.unit.no>
98
99 * configure.in (mips-dec-netbsd*): New target.
100 * configure: Rebuild.
101
70f4dbce
ILT
102Sun Sep 17 22:17:43 1995 Ian Lance Taylor <ian@cygnus.com>
103
104 * configure.in: Set endian to little for mips-*-ultrix*.
105 * configure: Rebuild.
106
107Fri Sep 15 13:16:55 1995 Ian Lance Taylor <ian@cygnus.com>
108
109 * expr.c (current_location): New static function. Handle magic
110 symbol `.'; in absolute section, return a constant.
111 (operand): Call current_location for '.' and '$', instead of doing
112 it inline. In MRI mode, call current_location for '*'.
113
326b087c
JL
114Fri Sep 15 21:39:29 1995 Jeff Law (law@snake.cs.utah.edu)
115
116 * config/tc-m68k.c: Change some "CONST" references to "const".
117
d069ef6f
KR
118Fri Sep 15 17:27:41 1995 Ken Raeburn <raeburn@cygnus.com>
119
120 Tue Sep 12 17:08:23 1995 Pat Rankin <rankin@eql.caltech.edu>
121
122 * config/obj-vms.c (VMS_stab_parse): simplify first loop;
123 use S_GET_NAME/modify/S_SET_NAME sequence instead of abusing
124 S_GET_NAME when updating symbol name.
125 (local_symbols_DST): first prefix/postfix typo from July 21st.
126 [plus comment reformatting --kr]
127
f00f5ecd
ILT
128Wed Sep 13 12:33:03 1995 Ian Lance Taylor <ian@cygnus.com>
129
5f757edc
ILT
130 * Makefile.in (EXPECT): New variable.
131 (CHECKFLAGS): Remove.
132 (site.exp): New target.
133 (check): Rewrite to invoke runtest directly, rather than recurring
134 down into testsuite.
135 (clean-here): Remove testsuite directory.
136 (clean, distclean): Don't recur into testsuite.
137 * configure.in: Don't call AC_CONFIG_SUBDIRS(testsuite).
138 * configure: Rebuild.
139
f00f5ecd
ILT
140 * write.c (relax_and_size_seg): Change to the segment we are
141 relaxing, in case md_convert_frag, called by cvt_frag_to_fill,
142 wants to call fix_new.
143 * config/tc-m68k.c (m68k_ip): Permit PC relative code if the
144 segment of the symbol is the current segment, not just in
145 text_section.
146 (md_convert_frag_1): Don't call subseg_change.
147 (md_estimate_size_before_relax): Likewise.
148
58a4f585
DE
149Tue Sep 12 10:36:40 1995 Doug Evans <dje@canuck.cygnus.com>
150
151 * config/tc-arm.c (md_atof): Fix debugging printf, and leave it
152 out by default.
153
e325f98f
ILT
154Mon Sep 11 11:39:11 1995 Ian Lance Taylor <ian@cygnus.com>
155
812e4a9b
ILT
156 * doc/configure.in: Remove unused file.
157
33bd5d61
ILT
158 * app.c (do_scrub_chars): Grab all available spaces at start of
159 line before preserving a single space. Remove state == 0 test
160 which will never succeed.
161 * macro.c (macro_expand_body): Delete local variables from the
162 formal hash table.
163 (macro_expand): In MRI mode, stop when whitespace is seen in the
164 argument list.
165
e325f98f
ILT
166 * sb.c: Include "libiberty.h".
167 * macro.c: Likewise. Also include <stdlib.h> if it exists.
168
1359db1b
ILT
169Fri Sep 8 00:27:46 1995 Ian Lance Taylor <ian@cygnus.com>
170
92a25e12
ILT
171 * app.c (do_scrub_chars): In MRI mode, keep a space before a
172 possible comment character.
173 * config/tc-m68k.c (m68k_ip): In MRI mode, ignore anything after
174 an instruction which takes no operands.
175
138b11d8
ILT
176 * Makefile.in (install): Don't install gasp in $(tooldir).
177
ee14a559
ILT
178 * config/tc-mips.c (macro): Handle a non zero base register for
179 M_U{L,S}{D,W,H}_A.
180
1359db1b
ILT
181 * gasp.c (show_usage): Put program_name argument in first fprintf,
182 not second.
183
94a73122
ILT
184Thu Sep 7 12:33:58 1995 Ian Lance Taylor <ian@cygnus.com>
185
3dce804d
ILT
186 * expr.c (operand): Handle 08 and 09 in MRI mode.
187 * macro.c (ISSEP): Remove duplicated `"' character.
188 (get_any_string): Copy some characters for which ISSEP is true:
189 ';', '>', '(', ')'. Otherwise we can get in an infinite loop.
190 * read.c (s_space): In MRI mode, the expressions stop at the first
191 unquoted space.
192 (cons_worker): In MRI mode, restore the terminating character at
193 the end of the function.
194
94a73122
ILT
195 * read.c (cons_worker): Don't use #elif; old compilers don't
196 support it.
197
86038ada
ILT
198Wed Sep 6 21:13:06 1995 Ian Lance Taylor <ian@cygnus.com>
199
200 * app.c (do_scrub_chars): In MRI mode, silently end quoted strings
201 at newline characters. In MRI mode, always keep spaces in the
202 operands field. In MRI mode, treat a line comment character as a
203 regular comment character following a space.
204 * cond.c (ignore_input): Use strncasecmp rather than strncmp when
205 looking for special pseudo-ops.
206 * read.c (cons_worker): In MRI mode, the expressions stop at the
207 first unquoted space.
208 (equals): Likewise.
209
210start-sanitize-sh3e
211Wed Sep 6 15:03:53 1995 Jim Wilson <wilson@chestnut.cygnus.com>
212
213 * config/tc-sh.c (get_operands): Read third arg if it exists.
214 Otherwise, clear it.
215 (get_specific, case F_FR0): Add.
216
217end-sanitize-sh3e
218Wed Sep 6 15:03:53 1995 Jim Wilson <wilson@chestnut.cygnus.com>
219
220 * config/tc-sh.c (get_specific): Delete arg_to_test.
221 (md_assemble): Increase operand array from 2 to 3.
222
dcf62f73
SS
223Tue Sep 5 16:47:36 1995 Stan Shebs <shebs@andros.cygnus.com>
224
225 * config/tc-mips.c: Remove CYGNUS LOCAL comments.
226 (md_begin): Use 0/1 instead of TRUE/FALSE.
227 (md_show_usage): Break up long format string for the benefit
228 of lame compilers.
229 * config/tc-m68k.c (md_show_usage): Ditto.
230 * gasp.c (show_usage): Ditto.
231 * macro.c (check_macro): Cast result of hash_find.
232
0ee48708
KR
233Tue Sep 5 14:46:38 1995 Ken Raeburn <raeburn@cygnus.com>
234
235 * configure.in: When testing for a free() declaration in system
236 header files, cast the address to a function pointer, not to an
237 integer.
238
239 * write.c (fix_new_internal): Call TC_INIT_FIX_DATA if TC_FIX_TYPE
240 is defined. Don't initialize fx_bsr. Verify that fx_size field
241 is wide enough to hold stored value.
242 * write.h (struct fix): Change tc_fix_data to type TC_FIX_TYPE if
243 that is defined, otherwise omit it. Delete fx_bsr. Change
244 fx_size to unsigned char.
245 * config/tc-i960.h (TC_FIX_TYPE, fx_bsr, TC_INIT_FIX_DATA): New
246 macros.
247 * config/tc-ns32k.h (TC_FIX_TYPE, fx_bsr, TC_INIT_FIX_DATA): New
248 macros.
249 * config/tc-hppa.h (TC_FIX_TYPE): Define as PTR.
250
251 * config/tc-i860.c (md_apply_fix): Delete code for checking
252 fx_im_disp, and for handling non-zero values, since it never gets
253 set after being initialized to zero.
254
255 * write.h (struct fix): Make fx_im_disp always 2 bits, since the
256 only tc-* files actually using it need that much.
257
258 NS32K changes from Ian Dall:
259 * configure.in: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
260 ns32k-pc532-lites* like ns32k-pc532-netbsd*.
261 * config/tc-ns32k.h (LOCAL_LABELS_FB): Define to 1.
262
263Fri Sep 1 17:02:15 1995 steve chamberlain <sac@slash.cygnus.com>
264
265 * write.c (fixup_segment): Get TC_FORCE_RELOCATION up the
266 right way!
267
8343d9d8
JSC
268Fri Sep 1 08:20:19 1995 James G. Smith <jsmith@beauty.cygnus.com>
269
270 * config/tc-mips.c (md_parse_option, md_begin, md_show_usage):
271 Add support for "-mcpu=vr4300" as processor identifier.
272
305a3af6
SC
273Thu Aug 31 16:41:06 1995 steve chamberlain <sac@slash.cygnus.com>
274
275 * write.c (fixup_segment): Remove change of 29th.
276 * config/tc-{i386,arm}.h (TC_FORCE_RELOCATION): Keep RVA relocs.
277
f2f232cd
ILT
278Tue Aug 29 19:42:58 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
279
280 * config/tc-m68k.c (m68k_ip) [case POST/PRE/BASE]: Fix typo when
281 looking at outer displacement. Don't set the postindex bit if the
282 index suppress bit is set (for memory indirect addressing mode).
283
7408a167
DE
284Thu Aug 31 06:49:37 1995 Doug Evans <dje@canuck.cygnus.com>
285
286 * config/tc-arm.c (tc_gen_reloc): Delete duplicated code.
287
ebcb9b6d
ILT
288Wed Aug 30 23:51:57 1995 Ian Lance Taylor <ian@cygnus.com>
289
290 * app.c (do_scrub_chars): Free saved_input when the from buffer
291 exactly fills the to buffer.
292
93dea4e6
DE
293Wed Aug 30 13:46:39 1995 Doug Evans <dje@canuck.cygnus.com>
294
295 * config/tc-sparc.c (parse_keyword_arg, parse_const_expr_arg): New fns.
296 (sparc_ip): Call them for asi, membar, and prefetch parsing.
297
593d18d3
DE
298Tue Aug 29 15:45:37 1995 Doug Evans <dje@canuck.cygnus.com>
299
93dea4e6
DE
300 * config/tc-sparc.c (membar_masks): Deleted.
301 (sparc_ip): Clean up ASI and membar support.
593d18d3 302
8c5560f2
SC
303Tue Aug 29 13:20:27 1995 steve chamberlain <sac@slash.cygnus.com>
304
305 * read.c (potable): Rva is new entry.
306 (cons_worker): New, split from cons. Handles rva.
307 (cons, s_rva): Call cons_worker.
308 * read.h (s_rva): New declaration.
309 * write.c (fixup_segment): Don't throw away rva relocs.
310 * config/tc-arm.c (md_apply_fix, tc_gen_reloc): Handle RVA.
311 * config/tc-i386.c (tc_coff_fix2type): Handle RVA.
312 * config/tc-i386.h (TC_COUNT_RELOC): Remember RVAs.
313 (TC_RVA_RELOC): New definition.
314
338a7060
DE
315Sun Aug 27 17:41:05 1995 Doug Evans <dje@canuck.cygnus.com>
316
317 * config/tc-arm.c (do_swi): Allow optional leading '#'.
318
26743df5
ILT
319Sat Aug 26 17:24:20 1995 Ian Lance Taylor (ian@cygnus.com)
320
338a7060
DE
321 * config/tc-m68k.c (comment_chars): If TE_DELTA is defined,
322 include '#'.
323 * config/tc-m68k.h (NO_PSEUDO_DOT): Define if TE_DELTA is
324 defined.
325
d634f0a8
ILT
326 * config/te-delta.h: Include obj-format.h.
327 * config/te-sco386.h: Likewise.
328 * config/te-sysv32.h: Likewise.
329
26743df5
ILT
330 * app.c (scrub_file): Remove.
331 (scrub_from_file, scrub_to_file): Remove.
332 (scrub_string, scrub_last_string): Remove.
333 (scrub_from_string, scrub_to_string): Remove.
334 (saved_input, saved_input_len): New static variables.
335 (struct app_saved): Remove scrub_string, scrub_last_string, and
336 scrub_file fields. Add saved_input and saved_input_len fields.
337 (app_push): Adjust saved fields for changes in struct app_save.
338 Initialize state and saved_input.
339 (app_pop): Adjust saved fields for changes in struct app_save.
340 (do_scrub_chars): Rename from do_scrub_next_char and rewrite to
341 process a buffer at a time rather than a character at a time.
342 (main, as_warn): Remove obsolete testing code.
343 * as.h (do_scrub_next_char): Don't declare.
344 (do_scrub_chars): Declare.
345 (scrub_from_file, scrub_from_string): Don't declare.
346 (scrub_to_file, scrub_to_string): Don't declare.
347 * input-file.c (input_file_get): New static function.
348 (input_file_give_next_buffer): Call do_scrub_chars rather than
349 do_scrub_next_char.
350 * read.c (scrub_string, scrub_string_end): New static variables.
351 (scrub_from_string): New static function.
352 (read_a_source_file): Call do_scrub_chars rather than
353 do_scrub_next_char.
354
791ee519
ILT
355Thu Aug 24 18:50:19 1995 Ian Lance Taylor (ian@cygnus.com)
356
69cc18d2
ILT
357 * gasp.c (as_abort): New function.
358 * sb.c (sb_build): Revert yesterday's patch.
359
791ee519
ILT
360 * Makefile.in (gasp.new): Depend upon ../libiberty/libiberty.a.
361 Just link against libiberty, not against $(LIBS).
362
bd362162
ILT
363Wed Aug 23 15:18:20 1995 Ian Lance Taylor (ian@cygnus.com)
364
365 * sb.c (sb_build): Undefine abort before calling it, since gasp
366 does not provide as_abort.
367
6d93b96e
MM
368Wed Aug 23 10:40:41 1995 Michael Meissner <meissner@tiktok.cygnus.com>
369
370 * config/tc-ppc.c (set_target_endian): New static to say whether
371 we've initialized target_big_endian or not.
372 (md_parse_option): Set set_target_endian if we set the variable
373 target_big_endian.
374 (md_begin): Only set target_big_endian if !set_target_endian.
375
53499500
KR
376Tue Aug 22 03:00:33 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
377
378 Sat Aug 19 18:08:16 1995 Pat Rankin <rankin@eql.caltech.edu>
379
380 * config/obj-vms.h (DST_S_C_SRC_SETREC_W, DST_S_C_SRC_DEFLINES_B):
381 New macros.
382 * config/obj-vms.c (VMS_TBT_Line_PC_Correlation,
383 VMS_TBT_Source_Lines): Make traceback info be robust enough to
384 handle huge source files.
385 (VMS_TBT_Source_File): Reorganize the native- vs cross-assembly
386 support so that actual object file output is clearer.
387 (VMS_TBT_Source_File: Fab, Nam, Date_Xab, File_Header_Xab):
388 Replace static variables with automatic ones.
389
390 Sat Aug 12 20:18:15 1995 Pat Rankin <rankin@eql.caltech.edu>
391
392 * config/obj-vms.c (Module_Name): new file scope variable.
393 (VMS_TBT_Module_Begin): use it instead of local variable.
394 (Write_VMS_MHD_Records): ditto; assign its value here.
395 (Write_VMS_EOM_Record): second argument has type valueT.
396 (VMS_Initialized_Data_Size): simplify search loop; return
397 type is offsetT; second argument is unsigned.
398
06997b9a
KR
399 Sat Jun 17 19:05:25 1995 Pat Rankin (rankin@eql.caltech.edu)
400
401 * messages.c (as_perror): Use xstrerror instead of strerror.
402
7e047ac2
ILT
403Mon Aug 21 13:57:20 1995 Ian Lance Taylor <ian@cygnus.com>
404
a5e03353
ILT
405 * as.c (parse_args): Accept --defsym SYM=VALUE.
406 * doc/as.texinfo, doc/as.1: Document --defsym.
407
408 * read.c (read_a_source_file): In MRI mode, don't end the
409 statement inside a quotation.
410 (s_space): Don't warn about a zero repeat count in MRI mode.
411 * config/tc-m68k.c (crack_operand): In MRI mode, don't count
412 parentheses inside quotes.
413 (md_assemble): In MRI mode, anything after the operands field is a
414 comment.
415 (parse_mri_control_operand): Adjust start and stop to remove
416 spaces.
417 (s_mri_for): Likewise.
418
419 * cond.c (s_ifdef): Restore the character after the symbol name,
420 in case it is a newline.
421 (s_if): If ignoring the current tree, don't try to parse the
422 expression.
423
424 * app.c (do_scrub_next_char): If LEX_IS_STRINGQUOTE or
425 LEX_IS_ONECHAR_QUOTE is seen in state 10, preserve one space.
426
95074dc3
ILT
427 * doc/as.texinfo: Document irp, irpc, macro, and rept. MRI mode
428 now supports macros, ifc, ifnc, irp, irpc, rept, and endr, without
429 using gasp.
430
7e047ac2
ILT
431 Add support for macros.
432 * as.c: Include sb.h and macro.h.
433 (max_macro_next): New global variable.
434 (main): Call macro_init.
435 (macro_expr): New static function.
436 * as.h (max_macro_nest): Declare.
437 * read.c (line_label): Rename from mri_line_label. Change all
438 uses.
439 (potable): Add exitm, irp, irpc, macro, mexit, rept.
440 (read_a_source_file): Always clear line_label at the start of a
a5e03353 441 line, not just when flag_mri or LABELS_WITHOUT_COLONS. Fix
7e047ac2
ILT
442 MRI/LABELS_WITHOUT_COLONS handling. In MRI mode, permit label:
443 equ val. Set line_label when calling colon. In MRI mode, a
444 leading '.' does not imply a pseudo-op. Check for macro expansion
445 before calling md_assemble.
446 (s_irp): New function.
447 (get_line_sb): New static function.
448 (s_macro): New function.
449 (s_mexit): New function.
450 (s_rept): New function.
451 * read.h (line_label): Rename from mri_line_label.
452 (s_irp, s_rept): Declare.
453 (s_macro, s_mexit): Declare.
454 * input-scrub.c: Include sb.h.
455 (sb_index, from_sb): New static variables.
456 (macro_nest): New static variable.
457 (struct input_save): Add sb_index and from_sb fields. Change
458 next_saved_file field to be struct input_save *.
459 (next_saved_file): Changed to be struct input_save *.
460 (input_scrub_push): Change to return type struct input_save *.
461 Save sb_index and from_sb.
462 (input_scrub_pop): Change parameter type to struct input_save *.
463 Restore sb_index and from_sb.
464 (input_scrub_include_sb): New function.
465 (input_scrub_next_buffer): Handle reading from from_sb.
466 (bump_line_counters): Only increment lines if not using from_sb.
467 * config/tc-m68k.c (opt_table): Add nest.
468 (opt_nest): New static function.
469 * gasp.c: Include sb.h and macro.h. Move all sb related functions
470 and definitions to sb.h and sb.c. Move all macro related
471 functions and definitions to macro.h and macro.c.
472 * sb.h, sb.c: New files, extracted from gasp.c.
473 * macro.h, macro.c: Likewise.
474 * Makefile.in (OBJS): Add sb.o and macro.o
475 (GASPOBJS): Define.
476 (gasp.new): Depend upon $(GASPOBJS). Use $(GASPOBJS) to link.
477 (TARG_CPU_DEP_m68k): Depend upon subsegs.h.
478 (gasp.o): Depend upon sb.h and macro.h.
479 (sb.o): New target.
480 (macro.o): New target.
481 (as.o): Depend upon sb.h and macro.h.
482 (input-scrub.o): Depend upon sb.h.
483 (read.o): Depend upon sb.h and macro.h.
484
485 * cond.c (get_mri_string): New static function.
486 (s_ifc): New function.
487 * read.c (potable): Add ifc and ifnc.
488 * read.h (s_ifc): Declare.
489
490 * app.c (do_scrub_begin): In MRI mode, set lex of ' to
491 LEX_IS_STRINGQUOTE.
492
840886d8
MM
493Mon Aug 21 13:41:33 1995 Michael Meissner <meissner@cygnus.com>
494
495 * config/tc-ppc.c (md_assemble): Allow @HA, @L, and @H suffixes on
496 constant expressions.
497
c2d8063d
JW
498Sun Aug 20 15:54:37 1995 Jim Wilson <wilson@cygnus.com>
499
500 * config/tc-arm.c (md_reloc_size): Add const to declaration.
501
b4ec75e0
ILT
502Fri Aug 18 10:58:09 1995 Ian Lance Taylor <ian@cygnus.com>
503
ca232972
ILT
504 * read.c (s_include): In MRI mode, don't expect quotes around the
505 file name.
506 * listing.c (listing_title): Don't require the title to be quoted.
507
f8d6e6cd
ILT
508 * gasp.c (include_print_where_line): Always subtract 1 from
509 linecount before printing it.
510 (process_file): In MRI mode, lines beginning with '*' or '!' are
511 comments.
512 (do_reg): In MRI mode, don't require parentheses.
513 (do_include): In MRI mode, don't requires quotes. If the file can
514 not be found in the include path, try opening it in the current
515 directory. Print the file name correctly in the error message.
516 (chartype_init): In MRI mode, set FIRSTBIT for '.'.
517 (main): Set comment_char to ';' when entering MRI mode.
518
b4ec75e0
ILT
519 * config/tc-m68k.c: Include subsegs.h.
520 (m68k_ip): Pass 64 rather than -1 to add_Fix in 'B' 'B' case.
521 (md_pcrel_from): If fx_pcrel_adjust is 64, use -1 instead.
522
523 * config/tc-sparc.h (tc_fix_adjustable): For OBJ_AOUT case, adjust
524 BFD_RELOC_16 and BFD_RELOC_32 relocs.
525
58bd5f50
KR
526Wed Aug 16 14:48:44 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
527
528 * as.h (alloca): Use void* declaration on HP/UX.
529
d86e4acb
ILT
530Wed Aug 16 12:49:17 1995 Ian Lance Taylor <ian@cygnus.com>
531
4c67b523
ILT
532 * config/tc-sparc.c (tc_gen_reloc): If PIC, only change PCREL_S2
533 to WPLT30 for an undefined or external symbol. Don't consider
534 PC10 or PC22 to be a PC relative reloc when choosing between
535 fx_addnumber and fx_offset.
536
4decdd56
ILT
537 * config/tc-z8k.c (md_number_to_chars): Don't do it here, call
538 number_to_chars_bigendian.
539 * config/tc-z8k.h (TARGET_BYTES_BIG_ENDIAN): Define.
540
d86e4acb
ILT
541 * expr.c (operand): Add support for .startof. and .sizeof. by
542 using magic symbol names which the linker will recognize
543 specially.
544 * doc/as.texinfo: Take out note that .startof. and .sizeof. are
545 not supported.
546
547Tue Aug 15 15:08:49 1995 Ian Lance Taylor <ian@cygnus.com>
548
549 * config/tc-m68k.c (md_pseudo_table): Add MRI structured control
550 directives: if, if.b, if.w, if.l, else, else.s, else.l, endi,
551 break, break.s, break.l, next, next.s, next.l, for, for.b, for.w,
552 for.l, endf, repeat, until, until.b, until.w, until.l, while,
553 while.b, while.w, while.l, endw.
554 (enum mri_control_type): Define.
555 (struct mri_control_info): Define.
556 (mri_control_stack): New static variable.
557 (mri_control_index): New static variable.
558 (mri_control_label): New static function.
559 (push_mri_control, pop_mri_control): New static functions.
560 (parse_mri_condition): New static function.
561 (parse_mri_control_operand): New static function.
562 (swap_mri_condition, reverse_mri_condition): New static functions.
563 (build_mri_control_operand): New static function.
564 (parse_mri_control_expression): New static function.
565 (s_mri_if, s_mri_else, s_mri_endi): New static functions.
566 (s_mri_break, s_mri_next): New static functions.
567 (s_mri_for, s_mri_endf): New static functions.
568 (s_mri_repeat, s_mri_until): New static functions.
569 (s_mri_while, s_mri_endw): New static functions.
570 * gasp.c (mrikinfo): Remove IF.
571 * expr.c (get_symbol_end): Accept \001 as part of a name.
572
573 * symbols.c (colon): Change parameter to const char *.
574 * symbols.h (colon): Update declaration.
575
8513c953
KR
576Mon Aug 14 20:51:56 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
577
578 * write.c (write_contents): Always do it the BFD_FAST_SECTION_FILL
579 way. Reformat and reindent that code to GNU standards.
580 (BFD_FAST_SECTION_FILL): Don't define.
581
b96c75f0
JL
582Mon Aug 14 14:08:07 1995 Jeff Law (law@snake.cs.utah.edu)
583
584 * config/tc-hppa.c (md_apply_fix): Don't try to apply BEGIN_BRTAB
585 or END_BRTAB fixups.
586
7f5adcba
ILT
587Mon Aug 14 15:45:07 1995 Ian Lance Taylor <ian@cygnus.com>
588
e15126c4
ILT
589 * gasp.c (do_align, get_any_string): Mark as static.
590 (do_assigna, do_assignc, new_file): Likewise.
591
8e11ad0a
ILT
592 * config/tc-m68k.c (s_reg): Rename local op to rop to avoid
593 confusion with macro op.
594
7f5adcba
ILT
595 * gasp.c (strip_comments): Comment out; it's not used.
596 (do_end): Add parameter. In MRI mode, print it out.
597 (do_irp): New static function.
598 (sub_actual): Change parameter m to formal_hash, changing type
599 from macro_entryh * to hash_table *.
600 (macro_expand_body): New static function, broken out of
601 macro_expand.
602 (macro_expand): Call macro_expand_body.
603 (K_*): Fully parenthesize.
604 (K_IRP, K_IRPC): Define.
605 (mrikinfo): Add IRP and IRPC.
606 (process_pseudo_op): In MRI mode, print out END pseudo-op. Pass
607 line to do_end. Handle K_IRP and K_IRPC.
608
609 * config/tc-m68k.c (s_opt): Reset *input_line_pointer even if we
610 don't do anything with the option.
611
5c800455
ILT
612Sun Aug 13 17:03:58 1995 Ian Lance Taylor <ian@cygnus.com>
613
614 * frags.c (frag_align): Handle absolute_section.
615 * write.c (record_alignment): Likewise.
616
617 * config/tc-mips.c (macro_build): Skip insns with an inappropriate
618 ISA level.
619
5ae218df
JL
620Sun Aug 13 00:35:02 1995 Jeff Law (law@snake.cs.utah.edu)
621
622 * config/tc-hppa.c (md_pseudo_table): Add entries for
623 "begin_brtab" and "end_brtab" pseudo-ops.
624 (pa_brtab): New function.
625 (tc_gen_reloc, SOM version): Handle R_BEGIN_BRTAB and R_END_BRTAB.
626 (hppa_force_relocation): Force relocations for BRTAB fixups
627 when OBJ_SOM is defined.
628
3d0f4446
KR
629Fri Aug 11 20:34:05 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
630
631 * Makefile.in (TE_OBJS): Add empty definition.
632
19be7c08
ILT
633Fri Aug 11 19:16:08 1995 Ian Lance Taylor <ian@cygnus.com>
634
635 * gasp.c (change_base): Don't treat ' specially in MRI mode.
636 (process_file): Don't warn about missing END in MRI mode.
637 (do_if): New static function.
638 (get_mri_string, do_ifc): New static functions.
639 (buffer_and_nest): Treat MRI mode like alternate syntax mode.
640 (do_aendr): Change error message in MRI mode.
641 (do_arepeat): Use REPT/ENDR in MRI mode.
642 (do_formals): In MRI mode, add special NARG formal.
643 (macro_expand): Various changes for MRI mode: permit a qualifier
644 on the macro name; set special NARG formal; permit unnamed
645 positional arguments; use && to concatenate named parameters;
646 permit \d to specify an unnamed parameter; permit named parameters
647 to not start with \; use == to see if a parameter exists.
648 (getstring): In MRI mode, allow <> to quote a string.
649 (K_IFEQ, K_IFNE, K_IFLT, K_IFLE, K_IFGE, K_IFGT): Define.
650 (K_IFC, K_IFNC): Define.
651 (struct keyword): Name structure used in kinfo array.
652 (mrikinfo): New static array.
653 (process_pseudo_op): Don't require leading '.' in MRI mode.
654 Handle new MRI pseudo-op definitions.
655 (add_keyword): New static function, broken out of process_init.
656 (process_init): Use add_keyword. In MRI mode, add mrikinfo table.
657 (long_options): Add "mri".
658 (show_usage): Mention -M/--mri.
659 (main): Call process_init after processing arguments. Handle -M.
660 * doc/gasp.texi: Document -M/--mri.
661
662 * gasp.c: Include ansidecl.h. Make all local functions static.
663 Add prototypes for all static functions.
664 (mri): New global variable.
665 (sb_add_char): Change parameter c from char to int.
666 (sb_add_string): Make parameter s into a const pointer.
667 (sb_add_buffer): Likewise.
668 (checkconst): Change parameter op from char to int.
669 (exp_get_abs): Make parameter emsg into a const pointer.
670 (do_res): Change parameter type from char to int.
671 (buffer_and_nest): Make parameters from and to into const
672 pointers.
673 (do_sdata): Change parameter type from char to int.
674 (new_file): Make parameter name into a const pointer.
675 (do_define): Make parameter string into a const pointer.
676
4decdd56 677 * config/tc-h8300.c (md_number_to_chars): Don't do it here, call
19be7c08
ILT
678 number_to_chars_bigendian.
679 * config/tc-h8300.h (TARGET_BYTES_BIG_ENDIAN): Define.
680
c7d7eed0
MM
681Fri Aug 11 13:23:56 1995 Michael Meissner <meissner@cygnus.com>
682
683 * write.h (struct fix): Add new field fx_no_overflow.
684
685 * write.c (fixup_segment): If fx_no_overflow is non-zero, don't
686 complain if the addend is too large.
687
688 * config/tc-ppc.c (md_assemble): Set fx_no_overflow if the half
689 word relocations BFD_RELOC_{LO16,HI16,HI16_S}.
690
12a065ee
KR
691Thu Aug 10 20:56:38 1995 Ken Raeburn <raeburn@cygnus.com>
692
693 * read.c (s_mri_sect) [BFD_ASSEMBLER]: Fix typos in choosing and
694 setting section flags.
695
a920b693
ILT
696Thu Aug 10 00:38:11 1995 Ian Lance Taylor <ian@cygnus.com>
697
79e15b8a
ILT
698 * doc/as.texinfo: Add documentation for MRI compatibility mode.
699 * doc/as.1: Likewise.
700
336435bc
ILT
701 * config/tc-m68k.c (m68k_ip): When recognizing '#', use isbyte and
702 iword rather than expr8 and expr16. When recognizing 'M', use
703 issbyte rather than expr8. When recognizing 'Q' and 't', just
704 check for O_constant rather than using expr8.
705 * config/m68k-parse.h (expr8, expr16): Don't define.
706 * Makefile.in (m68k-parse.o): Depend upon m68k-parse.h, not
707 m68k-parse.y.
708
e14994d9
ILT
709 * read.c (potable): Add spc, ttl, xcom, xref.
710 (s_mri_sect): New function.
711 * read.h (s_mri_sect): Declare.
712 * config/obj-coff.c (obj_coff_section) (both versions): In MRI
713 mode, call s_mri_sect.
714 (obj_pseudo_table): Add sect.s and section.s. Move sect outside
715 of ifndef BFD_ASSEMBLER.
716 * config/obj-elf.c (elf_pseudo_table): Add section.s, sect,
717 sect.s.
718 (obj_elf_section): In MRI mode, call s_mri_sect.
719 * config/tc-m68k.c (md_pseudo_table): Add restore, save.
720 (struct save_opts): Define.
721 (save_stack): New static variable.
722 (s_save, s_restore): New static functions.
723
a920b693
ILT
724 * read.c (s_set): Remove unused local ptr.
725 (hex_float): Check target_big_endian.
726 (equals): Remove unused local p.
e14994d9 727
a920b693
ILT
728 * config/tc-a29k.h (TARGET_BYTES_BIG_ENDIAN): Define.
729 * config/tc-h8500.h (TARGET_BYTES_BIG_ENDIAN): Define.
730 * config/tc-hppa.h (TARGET_BYTES_BIG_ENDIAN): Define.
731 * config/tc-i860.h (TARGET_BYTES_BIG_ENDIAN): Define.
732 * config/tc-m68k.h (TARGET_BYTES_BIG_ENDIAN): Define.
733 * config/tc-m88k.h (TARGET_BYTES_BIG_ENDIAN): Define.
734 * config/tc-tahoe.h (TARGET_BYTES_BIG_ENDIAN): Define.
735 * config/tc-sh.c (little): Set target_big_endian.
736 (md_begin): Likewise.
737 (md_parse_option): Likewise.
738 (build_relax): Check target_big_endian rather than shl.
739 (build_Mytes, md_atof): Likewise.
740 (md_convert_frag, md_apply_fix): Likewise.
741 (md_number_to_chars): Likewise.
742
286cb27a
ILT
743Wed Aug 9 10:51:48 1995 Ian Lance Taylor <ian@cygnus.com>
744
6700d36e
ILT
745 * config/tc-m68k.c (m68k_abspcadd): New static variable.
746 (m68k_quick): New static variable.
747 (m68k_rel32): New static variable.
748 (md_pseudo_table): Add opt and reg.
749 (m68k_ip): Permit absolute symbols in 'l'/'L' recognition. Check
750 m68k_quick in 'M' and 'Q' recognition. Check m68k_abspcadd in
751 DISP handling. Check m68k_rel32 in BASE/POST/PRE handling.
752 (md_begin): In MRI mode, initialize m68k_abspcadd and m68k_rel32.
753 In MRI mode, change unsized branch aliases to be variable sized.
754 (struct opt_action): Define.
755 (opt_table): Define.
756 (s_opt): New static function.
757 (skip_to_comma): New static function.
758 (opt_chip): New static function.
759 (opt_list): New static function.
760 (opt_list_symbols): New static function.
761 (s_reg): New static function.
762 * as.h (flag_keep_locals): Change from unsigned char to int.
763 (flag_no_warnings): Likewise.
764
765 * read.c (mri_line_label): Make non-static.
766 (potable): Add nopage, page, plen.
767 (s_org): Error if in MRI mode.
768 * read.h (mri_line_label): Declare.
769 * listing.c (listing_nopage): New function.
770 * listing.h (listing_nopage): Declare.
771
772 * symbols.c (symbol_begin): Set sy_frag of abs_symbol to
773 &zero_address_frag.
774
e28c40d7
ILT
775 * write.c (adjust_reloc_syms): Check that symbol is not NULL
776 before checking sy_mri_common.
777 (fixup_segment): Likewise.
778 * config/obj-coff.c (fixup_segment): Likewise.
779
780 * read.c (abs_section_offset): New global variable.
781 (potable): Add offset, struct.
782 (do_org): New static function; handle changing the origin in the
783 absolute section.
784 (s_org): Use do_org.
785 (s_set): Likewise.
786 (equals): Likewise.
787 (s_space): In absolute_section, just increase abs_section_offset.
788 (s_struct): New function.
789 (emit_expr): Handle absolute_section specially.
790 * read.h (abs_section_offset): Declare.
791 (s_struct): Declare.
792 * frags.c (frag_more): Warn if in absolute_section.
793 (frag_now_fix): In absolute_section, return abs_section_offset.
794 * subsegs.c (subseg_change): If switching to absolute_section,
795 just set now_seg and now_subseg.
796 (subseg_set_rest): Special handling when switching to or from
797 absolute_section.
798
799 * config/tc-m68k.c (m68k_float_copnum): New static variable.
800 (md_pseudo_table): Add fopt and mask2.
801 (m68k_ip): Use m68k_float_copnum, not COPNUM, when setting
802 coprocessor register to use. In case 'I' when checking operands,
803 correct coprocessor register numbers. In case 'I' when setting
804 operands, don't add 1.
805 (s_fopt): New static function.
806 * config/m68k-parse.h (COPNUM): Don't define.
807
808 * read.c (potable): Add ifeq, ifge, ifgt, ifle, iflt, ifne.
809 Change if to pass O_ne to s_if.
810 (read_a_source_file): Don't define an label without a colon if
811 ignore_input returns true.
812 * cond.c (s_if): Treat argument as an operatorT describing how to
813 compare the argument against zero.
814 (ignore_input): Don't require an initial dot in MRI mode, or if
815 NO_PSEUDO_DOT is defined.
816
817 * read.c (potable): Add dcb, dcb.b, dcb.d, dcb.l, dcb.s, dcb.w,
818 dcb.x, ds.d, ds.p, ds.s, ds.x, elsec, endc, fail, format, llen,
819 noformat.
820 (read_a_source_file): If pseudo-op handler is s_end, quit
821 immediately.
822 (s_end): New function.
823 (s_fail): New function.
824 (s_float_space): New function.
825 (hex_float): New static function.
826 (float_cons): Use hex_float.
827 * read.h (s_fail): Declare.
828 (s_float_space): Declare.
829 * cond.c (s_end): Remove.
830 * listing.c (listing_psize): Treat argument as indicating whether
831 a height is expected.
832
99ca35f1
ILT
833 * read.c (mri_pending_align): New static variable.
834 (read_a_source_file): Handle mri_pending_align.
835 (cons): Set mri_pending_align if appropriate.
836
286cb27a
ILT
837 * configure.in: Move random special target handling before
838 possible break.
839 * configure: Rebuild.
840
bf4bd1fc
ILT
841Tue Aug 8 23:41:25 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
842
843 * configure.in: Consistently use ${target_cpu_type} rather than
844 ${cpu_type} after the loop.
845 * configure: Rebuild.
846 * Makefile.in (targ-cpu.o): Use @target_cpu_type@ rather than
847 @cpu_type@.
848
3b85367c
KR
849Tue Aug 8 17:27:17 1995 Ken Raeburn <raeburn@cygnus.com>
850
14d0c9fe
KR
851 * expr.h (operatorT): Remove comma after last enumerator value.
852
853 * config/obj-vms.c: Some whitespace cleanup from Pat Rankin.
bdc82d81 854
2e00287a
KR
855 * as.h (alloca): If __STDC__, declare void* instead of char*.
856
bdc82d81
KR
857 Wed Aug 2 18:54:37 1995 Pat Rankin <rankin@eql.caltech.edu>
858
859 * config/obj-vms.c (Flush_VMS_Object_Record_Buffer,
860 Close_VMS_Object_File): Reorganize the `#if !VMS' cross-assmebler
861 support code.
862 (Close_VMS_Object_File): Call Set_VMS_Object_File_Record to flush
863 output buffer--just in case--before closing the file.
864
48bfed03
ILT
865Tue Aug 8 13:07:05 1995 Ian Lance Taylor <ian@cygnus.com>
866
e9bb39b4
ILT
867 * config/tc-m68k.c (archs): Add 68ec000, 68hc000, 68hc001,
868 68ec020, 68ec030, 68ec040, and 68330.
869 (md_pseudo_table): Add chip and comline.
870 (m68k_init_after_args): Use strcasecmp when comparing default_cpu
871 against architectures.
872 (mri_chip, s_chip): New static functions.
873
1356d77d
ILT
874 * struc-symbol.h (struct symbol): Add sy_mri_common bit.
875 * read.h (mri_comon_symbol): Declare.
876 (s_mri_common): Declare.
877 * read.c (mri_line_label): New static variable.
878 (mri_common_symbol): New global variable.
879 (potable): Add "common" and "common.s".
880 (read_a_source_file): In MRI mode, set mri_line_label for a label
881 at the start of a line.
882 (s_mri_common): New function.
883 (s_space): Handle mri_common_symbol.
884 * symbols.c (colon): Change return value from void to symbolS *,
885 and return new symbol. If mri_common_symbol is set, attach the
886 new symbol to it.
887 (resolve_symbol_value): Handle an sy_mri_common symbol.
888 * symbols.h (colon): Change return value in declaration.
889 * subsegs.c (subseg_set_rest): Clear mri_common_symbol.
890 (subseg_set (both versions)): Likewise.
891 * frags.c (frag_more): Warn if mri_common_symbol is not NULL.
892 * write.c (adjust_reloc_syms): Skip sy_mri_common symbols.
893 (write_object_file): Discard sy_mri_common symbols.
894 (fixup_segment): Change relocations against sy_mri_common symbols
895 to be against the common symbol itself.
896 * config/obj-coff.c (yank_symbols): Discard sy_mri_common symbols.
897 (fixup_segment): Change relocations against sy_mri_common symbols
898 to be against the common symbol itself.
899 * config/obj-aout.c (obj_crawl_symbol_chain): Discard
900 sy_mri_common symbols.
901
c266c384
ILT
902 * doc/c-m68k.texi: Add documentation for CPU specific options, and
903 for Motorola syntax.
904
48bfed03
ILT
905 * config/m68k-parse.y (motorola_operand): For (%pc), set mode to
906 DISP, not BASE.
907
d4083e29
KR
908Tue Aug 8 02:31:38 1995 Ken Raeburn <raeburn@cygnus.com>
909
910 * write.c (relax_align): Add extra padding for linkrelax only if
911 LINKER_RELAXING_SHRINKS_ONLY is defined.
912 * config/tc-i960.h (LINKER_RELAXING_SHRINKS_ONLY): Define it.
913 * doc/internals.texi (Relaxation): Write up some stuff on linker
914 relaxing and LINKER_RELAXING_SHRINKS_ONLY.
915
a1c7c0f3
ILT
916Mon Aug 7 17:18:10 1995 Ian Lance Taylor <ian@cygnus.com>
917
918 * config/m68k-parse.y: New file: bison grammar for m68k operands,
919 including support for Motorola syntax.
920 * config/m68k-parse.h: New file; definitions shared between
921 m68k-parse.y and tc-m68k.c.
922 * config/tc-m68k.c: Include m68k-parse.h.
923 (enum operand_type): Move to m68k-parse.h, where it is named
924 m68k_operand_type. Rename all uses. Rearrange somewhat. Add
925 FPREG. Rename AOFF to DISP. Rename AINDX to BASE. Rename APODX
926 to POST. Rename APRDX to PRE. Remove AMIND. Rename MSCR to
927 CONTROL. Remove DINDR.
928 (struct m68k_exp): Move to m68k-parse.h. Remove e_beg, e_end and
929 e_seg fields. Rename e_exp to exp. Rename e_siz to size, and
930 change type to enum m68k_size. Change all uses.
931 (enum _register): Move to m68k-parse.h, where it is named
932 m68k_register. Rename all uses. Add ZDATA0-7 and ZADDR0-7.
933 (struct m68k_op): Move to m68k-parse.h. Change all fields.
934 (seg): Don't define.
935 (add_exp): Remove.
936 (FAIL, OK): Remove.
937 (m68k_reg_parse): Move to m68k-parse.y, and rewrite.
938 (SKIP_WHITE, SKIP_W): Remove.
939 (try_moto_index, try_index): Remove.
940 (m68k_ip_op): Move to m68k-parse.y, and rewrite to use grammar.
941 (main): Remove obsolete test function.
942 (m68k_ip): Extensive changes to use new grammar.
943 (get_regs): Remove.
944 (crack_operand): m68k_ip_op now returns 0 on success.
945 (init_table): Add ssp, zd0-7 and za0-7.
946 (md_assemble): Make er const. Correct loop over operands when
947 looking for error message.
948 (md_begin): Set alt_notend_table for '(' and '@'.
949 (get_num): Expression is already parsed. Don't set seg.
950 * configure.in: If cpu_type is m68k, put m68k-parse.o in
951 extra-objects.
952 * configure: Rebuild.
953 * Makefile.in (DISTSTUFF): Add m68k-parse.c.
954 (BISON): Use ../bison/bison if it exists.
955 (BISONFLAGS): Define as empty.
956 (TARG_CPU_DEP_m68k): Depend upon $(srcdir)/config/m68k-parse.h.
957 (m68k-parse.c, m68k-parse.o): New targets.
958
68d04794
JL
959start-sanitize-sh3e
960Mon Aug 7 02:54:20 1995 Jeff Law (law@snake.cs.utah.edu)
961
962 * config/tc-sh.c (parse_reg): Handle new FP registers.
963 (get_specific): Handle new operand types.
964
965end-sanitize-sh3e
966Fri Aug 4 12:29:21 1995 Ian Lance Taylor <ian@cygnus.com>
967
968 * expr.c (op_encoding): Make non-const. Don't set '"' to
969 O_bit_not.
970 (expr_begin): Set op_encoding['"'] in MRI mode.
971
86b58ca2
ILT
972Wed Aug 2 18:39:43 1995 Ian Lance Taylor <ian@cygnus.com>
973
974 * config/tc-m68k.c: Remove BREAK_UP_BIG_DECL stuff.
975 (struct m68k_incant): Change m_operands field to be const.
976 (struct m68k_it): Change args field to be const.
977 (m68k_ip): Change local variable s to be const.
978 (opcode_ptr): Remove.
979 (md_begin): Use m68k_numopcodes, not numopcodes. Use
980 m68k_opcodes, not removed opcode_ptr. Use m68k_numaliases, not
981 numaliases.
982
219deb70
ILT
983Tue Aug 1 17:35:26 1995 Ian Lance Taylor <ian@cygnus.com>
984
985 * config/tc-m68k.c (init_table): Add "control", "status", "iaddr",
986 "sfcr", and "dfcr" as synonyms for existing entries.
987 (md_begin): In MRI mode, force flag_reg_prefix_optional to 1.
988 (md_parse_option): Removed unused locals i and arch. Change type
989 of arch (another one) to unsigned long.
990 (tc_coff_sizemachdep): Add return after abort to avoid warning.
991
992 Initial support for MRI style labels and expressions.
993 * as.h (flag_mri): Declare/define.
994 * as.c (show_usage): Mention -M and its synonym --mri.
995 (parse_args): Add 'M' to std_shortopts. Add "mri" to
996 std_longopts. Set flag_mri if -M is seen.
997 (main): Call parse_args before input_scrub_begin. Call
998 expr_begin.
999 * app.c (do_scrub_begin): Don't set lex for '"' or '\'' in MRI
1000 mode. Do set lex for ';', '*', and '!' in MRI mode.
1001 (do_scrub_next_char): Remove MRI ifdef in LEX_IS_WHITESPACE case.
1002 In MRI mode, keep spaces between labels and colons. Remove MRI
1003 ifndef around LEX_IS_ONECHAR_QUOTE case. In MRI mode, don't use
1004 '!' or '*' as comment characters even if they are in
1005 comment_chars.
1006 * read.h (lex_type): No longer const.
1007 * read.c: Include libiberty.h.
1008 (lex_type): No longer const.
1009 (read_begin): In MRI mode, set lex_type of '?' to 3.
1010 (potable): Add dc, dc.b, dc.d, dc.l, dc.s, dc.w, dc.x, ds, ds.b,
1011 ds.l, ds.w, and xdef.
1012 (read_a_source_file): Change LABELS_WITHOUT_COLON ifdef to check
1013 for MRI mode at runtime rather than compile time. Handle the EQU
1014 pseudo-op in MRI mode. Remove bogus MRI ifdef around done_pseudo.
1015 Change NO_PSEUDO_DOT ifdef to also take effect for MRI mode at
1016 runtime.
1017 (cons): In MRI mode, always call parse_mri_cons rather than
1018 TC_PARSE_CONS_EXPRESSION.
1019 (parse_mri_cons): Always compile, not just when MRI is defined.
1020 Call TC_PARSE_CONS_EXPRESSION, not expression, when the input is
1021 not a string constant. Handle A and E modifiers.
1022 (float_cons): Accept :xxxx, where the x's are hex digits.
1023 * expr.h (operatorT): Add O_eq, O_ne, O_lt, O_le, O_ge, O_gt.
1024 (expr_begin): Declare.
1025 * expr.c (integer_constant): In MRI mode, if the base was not
1026 specified, look for a suffix on the number to set the base.
1027 (mri_char_constant): New static function.
1028 (operand): Remove MRI ifdef. In MRI mode, do various things: Pass
1029 0 as the base when calling integer_constant if there was no
1030 prefix. Check for a hex constant suffix if when a leading '0' is
1031 seen. Don't accept 0x or 0b as a prefix. Check for E'chars' and
1032 A'chars'. Handle MRI character constants. Treat '"' as the
1033 unary bitwise not operator. Treat $ as the program counter, or as
1034 the prefix for a hex constant. Treat % as the prefix for a binary
1035 constant and @ as the prefix for an octal constant. Treat : as
1036 the prefix for a hex constant.
1037 (op_encoding): Set '"' to O_bit_not, '<' to O_lt, and '>' to O_gt.
1038 (op_rank): No longer const. Change rank values.
1039 (expr_begin): New function.
1040 (operator): New static function.
1041 (expr): Use operator. Don't bother to mention the operator in
1042 warnings. Remove bogus #if 0 code. Handle new operatorT values.
1043 * atof-generic.c (atof_generic): In MRI mode, accept underscores
1044 around the exponent in floating point numbers.
1045 * symbols.h (symbols_case_sensitive): Declare.
1046 * symbols.c (symbols_case_sensitive): New global variable.
1047 (symbol_create): Check symbols_case_sensitive.
1048 (symbol_find_base): Likewise.
1049 (resolve_symbol_value): Handle new operatorT values.
1050 (print_expr_1): Likewise.
1051 (S_IS_LOCAL): In MRI mode, names beginning with two '?' characters
1052 are local.
1053
b97bd7d1
SC
1054Tue Aug 1 11:35:18 1995 steve chamberlain <sac@slash.cygnus.com>
1055
1056 * tc-sh.c (md_convert_frag): Make some error messages more
1057 explict.
1058
ac24997f
KR
1059Mon Jul 31 21:40:47 1995 Ken Raeburn <raeburn@cygnus.com>
1060
1061 Sat Jul 29 18:55:23 1995 Pat Rankin <rankin@eql.caltech.edu>
1062
1063 * config/obj-vms.c (COPY_SHORT, COPY_LONG, PUT_SHORT, PUT_LONG):
1064 Make expansion be safe for use in expressions.
1065 (PUT_COUNTED_STRING): Bracket expansion with `do {...} while (0)'
1066 rather than just `{...}'.
1067
5f57cea3
SC
1068Mon Jul 31 18:19:26 1995 steve chamberlain <sac@slash.cygnus.com>
1069
4f2f3011
SC
1070 * gasp.c (main): Parse -I option.
1071 (do_include): Look through include list.
1072 * gasp.c (change_base): Don't modify numbers in strings.
4f2f3011 1073
f641906b
KR
1074Mon Jul 31 12:16:21 1995 Ian Lance Taylor <ian@cygnus.com>
1075
1076 * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Define. From Niclas
1077 Andersson <nican@ida.liu.se>.
1078
1079Thu Jul 27 20:47:12 1995 Ken Raeburn <raeburn@cygnus.com>
1080
1081 * config/obj-coff.c (fixup_segment): Don't do further pcrel
1082 processing after converting difference of two symbols in the
1083 same segment. From Jim Wilson.
1084
1085 * configure.in (i386-*-linuxoldld): Add as synonym for
1086 i386-*-linux*aout*. From Fred Fish.
1087 * configure: Regenerated.
1088
5700b874
KR
1089Thu Jul 27 16:14:56 1995 Pat Rankin <rankin@eql.caltech.edu>
1090
1091 * config/obj-vms.c (enum ps_type {ps_TEXT,ps_DATA,ps_COMMON,
1092 ps_CONST}): New constants.
1093 (VMS_Psect_Spec): Use them instead of literal strings.
1094 (vms_write_object_file, global_symbol_directory): Adjust callers.
1095
1096Wed Jul 26 18:31:35 1995 Pat Rankin <rankin@eql.caltech.edu>
1097
1098 * config/obj-vms.c (const_flag): Change from char to unsigned char.
1099 * config/obj-vms.h (const_flag): Ditto.
1100 (struct nlist): Replace union n_un and n_un.{n_name,n_next,n_strx}
1101 fields with just n_name; delete field n_value; change n_other from
1102 char to unsigned char and n_desc from short to int; insert explicit
1103 padding for alignment.
1104
a619d6d9
KR
1105Mon Jul 24 20:06:17 1995 Ken Raeburn <raeburn@cygnus.com>
1106
1107 * subsegs.h (struct seg_info_trash): Make bitfield types valid.
1108
1109 * config/obj-coff.c (fixup_segment): Local add_number should not
1110 be declared register since its address is taken for
1111 MD_APPLY_FIX3.
1112
5700b874
KR
1113 Fri Jul 21 15:28:18 1995 Pat Rankin <rankin@eql.caltech.edu>
1114
1115 Split huge vms_write_object_file routine into managable pieces.
1116
1117 * config/obj-vms.c (vms_fixup_text_section, synthesize_data_segment,
1118 vms_fixup_data_section, global_symbol_directory, local_symbols_DST,
1119 vms_build_DST): New routines.
1120 (vms_write_object_file): Call them.
1121 (struct vms_obj_state): New file scope variable used by the above.
1122
a91c6b08
ILT
1123Mon Jul 24 14:10:24 1995 Ian Lance Taylor <ian@cygnus.com>
1124
1125 * config/tc-sh.c (md_pseudo_table): Add "uses".
1126 (s_uses): New static function.
1127 (sh_coff_frob_file): New function.
1128 (md_convert_frag): Call subseg_change before calling fix_new.
1129 (sh_handle_align): New function.
1130 (SWITCH_TABLE): Define.
1131 (sh_force_relocation): New function.
1132 (md_apply_fix): Handle R_SH_USES, R_SH_COUNT and R_SH_ALIGN.
1133 (sh_coff_reloc_mangle): Likewise. Also handle switch table
1134 entries.
1135 * config/tc-sh.h (HANDLE_ALIGN): Define.
1136 (sh_handle_align): Declare.
1137 (TC_FORCE_RELOCATION): Define.
1138 (sh_force_relocation): Declare.
1139 (TC_COUNT_RELOC): Simplify; rely on TC_FORCE_RELOCATION instead.
1140 (tc_frob_file): Define.
1141 (sh_coff_frob_file): Declare.
1142 * config/obj-coff.c (write_object_file): Call tc_frob_file if it
1143 is defined.
1144 (fixup_mdeps): Call HANDLE_ALIGN if it is defined.
1145 (TC_FORCE_RELOCATION): Define if not defined.
1146 (fixup_segment): Use TC_FORCE_RELOCATION to decide whether to
1147 clear the symbol fields of fixP.
1148
1149Fri Jul 21 22:38:00 1995 Michael Meissner <meissner@cygnus.com>
1150
1151 * config/tc-ppc.c (ppc_elf_suffix): Add support for R_PPC_SDAREL
1152 relocation.
1153 (md_apply_fix3): Ditto.
1154
9d249d34
KR
1155Thu Jul 20 13:00:56 1995 Ken Raeburn <raeburn@cygnus.com>
1156
1157 * config/tc-m68k.c (md_convert_frag): Rename argument seg to sec,
1158 since seg is a macro name in this file.
1159
5a929558
KR
1160 * configure.in (arm-*-riscix*): Don't set emulation.
1161
d0ac7e70
DE
1162Wed Jul 19 16:08:29 1995 Doug Evans <dje@canuck.cygnus.com>
1163
1164 * config/obj-coff.h (TE_PE): Delete.
1165 * config/tc-arm.h (BYTE_ORDER): Delete.
1166 (TARGET_FORMAT): Provide value for OBJ_COFF and TE_PE.
1167 (ARM_BI_ENDIAN): Define if OBJ_COFF and TE_PE.
1168 * config/tc-arm.c (byte_order): Delete.
1169 (md_number_to_chars): Reference target_big_endian, not byte_order.
1170 (md_chars_to_number): Likewise.
1171 (md_longopts): Add -EB/-EL if ARM_BI_ENDIAN.
1172 (md_parse_options): Recognize -EB/-EL.
1173 (md_show_usage): List -EB/-EL.
1174
5f8cb05e
ILT
1175Wed Jul 19 11:49:25 1995 Ian Lance Taylor <ian@cygnus.com>
1176
fe98e22d
ILT
1177 * gasp.c (process_assigns): Use toupper before comparing against
1178 upper case letter.
1179 (whatcond): Likewise.
1180
5f8cb05e
ILT
1181 * config/tc-sh.c (sh_relax): Rename from relax, and make global.
1182 Renamed all uses.
1183 (insert): Pass a size of 2, not 4.
1184 (build_relax): Remove unused len variable.
1185 (md_show_usage): Mention -little option.
1186 (md_convert_frag): Add segT argument. Rewrite to generate relocs
1187 rather than to generate complete instructions here.
1188 (md_apply_fix): Adjust and clarify R_SH_PCRELIMM8BY4 case for
1189 changes in insert and md_pcrel_from. Add cases for R_SH_PCDISP
1190 and R_SH_PCDISP8BY2.
1191 (md_pcrel_from): Don't subtract 1, add 2.
1192 (tc_coff_fix2rtype): Remove.
1193 (sh_coff_reloc_mangle): New function.
1194 * config/tc-sh.h (TC_COFF_FIX2RTYPE): Just return fx_r_type.
1195 (sh_relax): Declare.
1196 (TC_COUNT_RELOC): If relaxing, count PC relative relocs.
1197 (TC_RELOC_MANGLE): Define.
1198 (sh_coff_reloc_mangle): Declare.
1199 (tc_coff_sizemachdep): Declare.
1200 * tc.h (md_convert_frag): Add segT parameter to non BFD_ASSEMBLER
1201 declaration.
1202 * write.c (cvt_frag_to_fill): Add sec argument to non
1203 BFD_ASSEMBLER version. Pass it to md_convert_frag.
1204 (write_object_file): Pass SEG_TEXT to cvs_frag_to_fill.
1205 * config/obj-coff.c (do_relocs_for): Pass segment info to
1206 TC_RELOC_MANGLE.
1207 (fixup_mdeps): Pass segment type to md_convert_frag.
1208 * config/tc-a29k.c (md_convert_frag): Add segT argument.
1209 * config/tc-h8300.c (md_convert_frag): Likewise.
1210 * config/tc-h8500.c (md_convert_frag): Likewise.
1211 * config/tc-i386.c (md_convert_frag): Likewise.
1212 * config/tc-i860.c (md_convert_frag): Likewise.
1213 * config/tc-i960.c (md_convert_frag): Likewise.
1214 * config/tc-m68k.c (md_convert_frag): Likewise.
1215 * config/tc-m88k.h (md_convert_frag): Likewise.
1216 * config/tc-ns32k.c (md_convert_frag): Likewise.
1217 * config/tc-rce.c (md_convert_frag): Likewise.
1218 * config/tc-tahoe.c (md_convert_frag): Likewise.
1219 * config/tc-vax.c (md_convert_frag): Likewise.
1220 * config/tc-w65.c (md_convert_frag): Likewise.
1221 * config/tc-z8k.c (md_convert_frag): Likewise.
1222 * config/tc-h8300.h (TC_RELOC_MANGLE): Add segment argument.
1223 * config/tc-h8500.h (TC_RELOC_MANGLE): Likewise.
1224 * config/tc-rce.h (TC_RELOC_MANGLE): Likewise.
1225 * config/tc-w65.h (TC_RELOC_MANGLE): Likewise.
1226 * config/tc-z8k.h (TC_RELOC_MANGLE): Likewise.
1227
1228Mon Jul 17 15:02:54 1995 Pat Rankin <rankin@eql.caltech.edu>
1229
1230 * config/obj-vms.c (Current_Routine, Text_Psect): Delete as file
1231 scope variables.
1232 (Define_Routine, Define_Local_Symbols): Take Current_Routine and
1233 Text_Psect as arguments.
1234 (VMS_DBG_Define_Routine): Delete.
1235 (VMS_TBT_Block_End): Change `Size' argument from int to valueT.
1236 (vms_write_object_file: text and data fixup loops): Difference
1237 of two symbols has type offsetT rather than int; convert with
1238 md_number_to_chars before passing to VMS_Store_Immediate_Data.
1239 (vms_write_object_file: debug symbol loop): Call Define_Routine
1240 instead of VMS_DBG_Define_Routine.
1241
fadd4ee1
MM
1242Sat Jul 15 00:01:35 1995 Michael Meissner <meissner@cygnus.com>
1243
1244 * config/tc-ppc.c (ppc_elf_suffix): Add @fixup so that the
1245 compiler can mark which relocs not to complain about with
1246 -mrelocatable.
1247 (ppc_elf_validate_fix): Add .fixup to sections not to complain
1248 about, and also don't complain for BFD_RELOC_CTOR relocations in
1249 writable non-code segments.
1250 (md_apply_fix): Treat BFD_RELOC_CTOR just like BFD_RELOC_32.
1251
88f4ab5f
ILT
1252Fri Jul 14 19:54:28 1995 Ian Lance Taylor <ian@cygnus.com>
1253
1254 Add support for SPARC SunOS PIC:
1255 * config/tc-sparc.h (sparc_pic_code): Always declare, not just
1256 when OBJ_ELF.
1257 (TC_RELOC_RTSYM_LOC_FIXUP): Define when OBJ_AOUT.
1258 (tc_fix_adjustable): New definition for OBJ_AOUT.
1259 * config/tc-sparc.c (sparc_pic_code): Always define, not just when
1260 OBJ_ELF.
1261 (md_apply_fix): Adjust reloc addend for OBJ_AOUT and PIC. In
1262 BFD_RELOC_32_PCREL_S2 case, don't increment val for an external
1263 symbol when PIC.
1264 (tc_gen_reloc): Generate different PIC relocs when OBJ_AOUT, as
1265 well as when OBJ_ELF.
1266 (md_shortopts): If OBJ_AOUT, include `k'.
1267 (md_parse_option): If OBJ_AOUT, handle 'k'.
1268 (md_show_usage): Mention -k if OBJ_AOUT, and -KPIC if OBJ_ELF.
1269 (md_pcrel_from): Don't add in size for an external symbol when
1270 PIC.
1271
403d21d2
DE
1272start-sanitize-arc
1273Fri Jul 14 10:26:43 1995 Doug Evans <dje@canuck.cygnus.com>
1274
1275 * config/tc-arc.c (byte_order): Provide explicit initial value.
1276end-sanitize-arc
1277
4575a69d
JL
1278Thu Jul 13 21:16:43 1995 Jeff Law (law@snake.cs.utah.edu)
1279
1280 * config/tc-hppa.h (UNDEFINED_DIFFERENCE_OK): Define for SOM.
1281 * write.c (adjust_reloc_syms): Set sy_used_in_reloc for both
1282 symbols in a fixup where a defined symbol is subtracted from an
1283 undefined symbol (when UNDEFINED_DIFFERENCE_OK is defined).
1284 (fixup_segment): Do nothing for the difference of two symbols if
1285 UNDEFINED_DIFFERENCE_OK is defined.
1286
ac7530a8
ILT
1287Wed Jul 12 23:33:40 1995 Ian Lance Taylor <ian@cygnus.com>
1288
1289 * config/obj-coff.c (fixup_segment): Support MD_APPLY_FIX3.
1290
f7da4a99
KR
1291Wed Jul 12 01:12:12 1995 Ken Raeburn <raeburn@kr-pc.cygnus.com>
1292
1293 * write.c (fix_new): Use int, not short int, for argument type.
1294 (fix_new_exp): Ditto.
1295
1296 * configure.in (arm-*-riscix*): Don't set emulations.
1297
1298 * config/tc-mips.c (NO_ECOFF_DEBUGGING): Define if ECOFF_DEBUGGING
1299 wasn't previously defined.
1300 (s_extern): Don't set ecoff_extern_size if NO_ECOFF_DEBUGGING.
1301 (nopic_need_relax): Don't check it if NO_ECOFF_DEBUGGING.
1302 (macro_build) [!USE_STDARG]: Don't use variadic prototype.
1303 (mips_local_label) [NO_ECOFF_DEBUGGING]: Don't preserve potential
1304 ECOFF debugging symbols.
1305
1306 * emul.h (struct emulation): Use unsigned, not unsigned char, for
1307 bitfields.
1308 * obj.h (struct format_ops): Likewise.
1309
1310 * config/tc-arm.c (symbol_make_empty) [BFD_ASSEMBLER]: Set
1311 udata.p, not udata.
1312
6804bd6c
ILT
1313Tue Jul 11 14:30:19 1995 Ian Lance Taylor <ian@cygnus.com>
1314
1315 * doc/c-mips.texi: Document -m4010 and -mno-4010.
1316
1317Tue Jul 11 14:28:55 1995 Jeff Spiegel <jeffs@lsil.com>
1318
1319 * config/tc-mips.c (mips_4010): New static variable.
1320 (interlocks): New static variable.
1321 (md_begin): Check for a cpu of "r4010". Set mips_4010 correctly.
1322 If mips_4650 or mips_4010, set interlocks.
1323 (append_insn): Check interlocks, not mips_4650.
1324 (mips_emit_delays): Likewise.
1325 (mips_ip): Only permit INSN_4010 instructions if mips_4010.
1326 (md_longopts): Add "m4010" and "no-m4010".
1327 (md_parse_option): Accept -mcpu=r4010. Handle -m4010 and
1328 -no-m4010.
1329 (md_show_usage): Document -m4010 and -no-m4010.
1330
e5fa3f23
ILT
1331Tue Jul 11 13:22:50 1995 Ian Lance Taylor <ian@cygnus.com>
1332
1333 * ecoff.c (struct efdr): Add new field fake.
1334 (init_file): Initialize fake.
1335 (add_file): Add new parameter fake. Change all callers.
1336 (ecoff_build_debug): Don't warn about a missing .end for a fake
1337 file.
1338
cc02a8a9
KR
1339Mon Jul 10 16:01:31 1995 Ken Raeburn <raeburn@cygnus.com>
1340
e5fa3f23
ILT
1341 * doc/as.texinfo: Split out most cpu chapters...
1342 * doc/c-*.texi: ...to here.
1343
cc02a8a9
KR
1344 * read.c (po_hash): Now static.
1345
84144a8f
ILT
1346Mon Jul 10 13:47:22 1995 Ian Lance Taylor <ian@cygnus.com>
1347
fb33961b
ILT
1348 Based on patches from H.J. Lu <hjl@nynexst.com>:
1349 * config/tc-i386.c (md_apply_fix3): Rename from md_apply_fix1.
1350 Accept pointer to value and segment. Fix OBJ_ELF PCREL case to
1351 handle global defined symbols correctly.
1352 (md_apply_fix): Remove both versions.
1353 * config/tc-i386.h (MD_APPLY_FIX3): Define.
1354
84144a8f
ILT
1355 * configure.in: When switching on ${cpu}, use ${cpu}, not
1356 $[target_cpu}, in default case.
1357 * configure: Rebuild.
1358
ed453d2e
ILT
1359Sat Jul 8 13:27:55 1995 Ian Lance Taylor <ian@cygnus.com>
1360
1361 * write.c (fixup_segment): Call resolve_symbol_value on
1362 sub_symbolP, in case it isn't in the symbol table.
1363
cebf05ad
ILT
1364Fri Jul 7 11:17:27 1995 Ian Lance Taylor <ian@cygnus.com>
1365
c71a604a
ILT
1366 * read.c (s_lcomm): For .lcomm 1, set align to 0, not 1.
1367
ae99a672
ILT
1368 * config/obj-coff.c (coff_frob_symbol): If SF_GET_FUNCTION, set
1369 BSF_FUNCTION.
1370 (symbol_globalP, symbol_global_lastP): New global variables.
1371 (yank_symbols): Sort defined global symbols to the end, just
1372 before the undefined symbols.
1373 (glue_symbols): Add two arguments, and use them instead of
1374 referring directly to global variables.
1375 (crawl_symbols): Call glue_symbols twice, once for defined globals
1376 and once for undefined. Add corresponding know calls.
1377
6be977fb
ILT
1378 * app.c (do_scrub_next_char): Always accept \v. Don't make it
1379 conditional on BACKSLASH_V.
1380 * read.c (next_char_of_string): Likewise.
1381 * config/obj-bout.h (BACKSLASH_V): Don't define.
1382 * config/tc-mips.h (BACKSLASH_V): Don't define.
1383
5767cfb7
ILT
1384 Add SPARC ELF PIC support.
1385 * write.c (fixup_segment): Pass fixP to TC_RELOC_RTSYM_LOC_FIXUP,
1386 not fixP->fx_r_type.
1387 * config/tc-sparc.c (sparc_pic_code): New global variable.
1388 (md_apply_fix): If generating PIC, adjust fx_addnumber for any non
1389 PC relative reloc.
1390 (tc_gen_reloc): If generating PIC, adjust various reloc types.
1391 Remove fx_pcrel assert, since it is no longer true.
1392 (md_parse_option): Handle -K PIC.
1393 * config/tc-sparc.h (sparc_pic_code): Declare if OBJ_ELF.
1394 (TC_RELOC_RTSYM_LOC_FIXUP): Define if OBJ_ELF.
1395 (tc_fix_adjustable): Don't adjust PC relative relocs if PIC.
1396 * config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Take a fixp, not a
1397 reloc type.
1398
cebf05ad
ILT
1399 * Makefile.in (Makefile): Add dependency on conf.in, so that conf
1400 is rebuilt when conf.in changes.
1401
a2a5a4fa
KR
1402Thu Jul 6 16:49:38 1995 Ken Raeburn <raeburn@cygnus.com>
1403
1404 * All files: Updated FSF address.
1405
37ea6121
JW
1406Thu Jul 6 16:30:34 1995 Jim Wilson <wilson@chestnut.cygnus.com>
1407
1408 * ecoff.c (add_file): Don't collapse multiple .file commands into
1409 a single file structure.
1410 (ecoff_build_lineno): Set ilineBase to sum of previous file's
1411 ilineBase and cline.
1412
265d172e
ILT
1413Thu Jul 6 12:54:27 1995 Ian Lance Taylor <ian@cygnus.com>
1414
85a961c6
ILT
1415 Patches from Jerry Blakely <gerry_blakley@wellfleet.com>:
1416 * as.c (listing_filename): New static variable.
1417 (show_usage): Mention -a=file.
1418 (parse_args): Support = option of -a to set name of listing file.
1419 (main): Pass listing_filename to listing_print.
1420 * listing.c (list_file): New static variable.
1421 (various): Replace printf with fprintf to list_file.
1422 (listing_print): If name argument is not NULL, open it as
1423 list_file.
1424 * doc/as.texinfo, doc/as.1: Document -a=file.
1425
a0eb1c2c
ILT
1426 * config/tc-sparc.c (s_reserve): Don't permit redefinition, even
1427 if the symbol was already in bss_section. Fix warning message.
1428
bcaa9b05
ILT
1429 * listing.c (struct file_info_struct): Rename end_pending field to
1430 at_end.
1431 (file_info): Initialize at_end, not end_pending.
1432 (buffer_line): If at_end set, just return immediately. Don't
1433 worry about end_pending cases. Set at_end when EOF is read.
1434 (print_source): Check at_end, not end_pending.
1435 (listing_listing): Likewise.
1436
265d172e
ILT
1437 * config/tc-alpha.h (alpha_do_align): Don't declare.
1438 (md_do_align): Don't define.
1439 (tc_frob_label): Define.
1440 (alpha_define_label): Declare.
1441 (md_flush_pending_output): Define.
1442 (alpha_flush_pending_output): Declare.
1443 * config/tc-alpha.c (insn_label): New static variable.
1444 (auto_align): New static variable.
1445 (md_pseudo_table): Add cases for .text, .data, .align, .byte,
1446 .hword, .int, .long, .octa, .quad, .short, .word, .double, .float,
1447 and .single. Change .t_floating, .s_floating, .f_floating,
1448 .g_floating, and .d_floating to use s_alpha_float_cons rather than
1449 float_cons.
1450 (s_alpha_text, s_alpha_data): New static functions.
1451 (s_rdata, s_sdata): Clear insn_label and set auto_align.
1452 (s_gprel32): If auto_align, align. Clear insn_label.
1453 (emit_insn): Clear insn_label.
1454 (s_alpha_align): New static function.
1455 (alpha_align): Make static. Take label argument.
1456 (alpha_flush_pending_output): New static function.
1457 (s_alpha_cons, s_alpha_float_cons): New static functions.
1458 (alpha_define_label): New function.
1459
4b18b7cd
KR
1460Wed Jul 5 22:49:31 1995 Ken Raeburn <raeburn@cygnus.com>
1461
ad0ab4eb
KR
1462 * conf.in: Regenerate with autoreconf.
1463
4b18b7cd
KR
1464 Mon Jul 3 19:47:53 1995 Pat Rankin (rankin@eql.caltech.edu)
1465
1466 * config/obj-vms.h (vms_resolve_symbol_redef): Use full prototype.
1467 (vms_check_for_special_label, tc_frob_label): Move them to group
1468 with other prototypes.
1469 [WANT_VMS_OBJ_DEFS]: Only define the many OBJ_x, DBG_x, and DST_x
1470 macros when this is defined.
1471 * config/obj-vms.c: Fully prototype all local functions.
1472 [symbolS, fragS]: Use consistently instead of their struct tags.
1473 [WANT_VMS_OBJ_DEFS]: Define this.
1474 (s_const): Make definition correctly match actual usage.
1475 (VMS_stab_parse): Make `expected_type' arg be int rather than char.
1476 (get_VMS_time_on_unix): Define as `static void'.
1477 (hash_string): Make definition match actual usage; argument is
1478 `char const *' rather than `unsigned char *'.
1479 (VMS_Case_Hack_Symbol, VMS_Modify_Psect_Attributes, VMS_Psect_Spec,
1480 VMS_Global_Symbol_Spec): Declare string args as `const char *'.
1481 [IS_GXX_VTABLE]: New macro.
1482 (vms_write_object_file: GSD loop): Use it.
1483 (vms_write_object_file: data segment): Reorganize `fill' loop.
1484
22ba90ce
ILT
1485Wed Jul 5 12:01:49 1995 Ian Lance Taylor <ian@cygnus.com>
1486
a7aa7a2b
ILT
1487 * config/tc-sparc.c (md_shortopts): Add "K:" if OBJ_ELF.
1488 (md_parse_option): If OBJ_ELF, check for -K. Die if -K PIC, since
1489 PIC code is not currently supported.
1490
1491 * as.c (parse_args): Change std_shortopts to be an array rather
1492 than a constant string. Only include 'K' if WORKING_DOT_WORD is
1493 not defined. Only check for 'K' in that case as well.
1494 * as.h (flag_warn_displacement): Only declare if WORKING_DOT_WORD
1495 is not defined.
1496
9814e22f
ILT
1497 * conf.in: Add undef of HAVE_SBRK.
1498
3f8416d5
ILT
1499 * config/obj-coff.c (obj_coff_line): Call listing_source_line, in
1500 both BFD_ASSEMBLER and non BFD_ASSEMBLER versions of the function.
1501
56dc989a
ILT
1502 * symbols.c (S_SET_EXTERNAL): Warn if symbol is weak.
1503 (S_CLEAR_EXTERNAL): Likewise.
1504 (S_SET_WEAK): Warn if symbol is global.
1505
f219dc65
ILT
1506 * config/obj-aout.c (obj_aout_frob_symbol): Warn about an attempt
1507 to put an undefined symbol into a set.
1508
816a827b
ILT
1509 * Makefile.in: Remove @configure_input@; it's not needed in
1510 files named Makefile.
1511
ca046e34
ILT
1512 * config/tc-m88k.c (md_pseudo_table): Add ".set" so that the
1513 explicit pseudo-op works, while continuing to treat "set" as an
1514 instruction.
1515
22ba90ce
ILT
1516 * ecoff.c (ecoff_debugging_seen): New global variable.
1517 (ecoff_directive_def): Set ecoff_debugging_seen.
1518 (ecoff_stab): Likewise.
1519 * ecoff.h: Make idempotent.
1520 (ecoff_debugging_seen): Declare.
1521 * config/tc-mips.c: Include ecoff.h.
1522 (mips_debug): New static variable.
1523 (s_stringer, s_mips_space): Remove unneeded declarations.
1524 (md_parse_option): In case 'g', set mips_debug to debugging level.
1525 (mips_local_label): New function.
1526 * tc-mips.h (LOCAL_LABEL): Call mips_local_label.
1527 (mips_local_label): Declare.
1528
e63c594d
FF
1529Wed Jul 5 00:59:22 1995 Fred Fish (fnf@cygnus.com)
1530
1531 * as.c (main): Only use sbrk when HAVE_SBRK defined.
1532 * configure.in: Add test for sbrk.
1533 * configure: Regenerate using autoconf 2.4.
1534
249c7415
JL
1535Mon Jul 3 15:58:16 1995 Jeff Law (law@snake.cs.utah.edu)
1536
1537 * config/tc-hppa.h (MAX_RELOC_EXPANSION): Bump to 6.
1538 * config/tc-hppa.c (tc_gen_reloc, SOM version): Handle
1539 relocations for the difference of two (possibly external)
1540 symbols.
1541 (hppa_fix_adjustable): For SOM, reject reductions involving
1542 the difference of two symbols.
1543 (hppa_force_relocation): Force relocations for expressions
1544 involving the difference of two symbols.
1545
6c186c48
SC
1546Mon Jul 3 14:22:59 1995 Steve Chamberlain <sac@slash.cygnus.com>
1547
1548 * configure[.in] (i386-*-win32): New host and target.
1549
e5c5ce23
SC
1550Thu Jun 29 17:25:43 1995 Steve Chamberlain <sac@slash.cygnus.com>
1551
ac7530a8 1552 Support for long filenames non-bfd coff.
e5c5ce23
SC
1553 * config/obj-coff.c (filename_list_head, filename_list_tail): New.
1554 (yank_symbols): Notice and record filenames which are too long.
1555 (w_strings): Write out filename strings.
1556 (c_dot_file_symbols): Put long filenames onto list.
1557
30355216
SC
1558Wed Jun 28 17:33:13 1995 Steve Chamberlain <sac@slash.cygnus.com>
1559
e5c5ce23 1560 * config/obj-coff.c (fixup_segment): PE doesn't use
30355216
SC
1561 the strange common symbol format that other 386s formats
1562 do.
1563 * config/tc-i386.c (md_begin): If LEX_AT defined then
1564 '@' is in the set of identifiers.
1565 (i386_operand): If LEX_AT, then don't look for @goto stuff.
1566 * config/te-pe.h: Define LEX_AT.
1567
4a998308
KR
1568Wed Jun 28 17:49:59 1995 Ken Raeburn <raeburn@cygnus.com>
1569
1a9924d8
KR
1570 * doc/as.texinfo (H8/500 Floating Point): Indicate that IEEE FP
1571 numbers are for the standard emulation code.
1572 (SH Floating Point): Ditto.
1573 (Overview): Describe new --emulation option for MIPS.
4a998308
KR
1574 * doc/*.m4: Deleted.
1575
1576Thu Jun 22 19:26:25 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1577
1578 Sun May 7 11:53:41 MDT 1995 Bryan Ford <baford@cs.utah.edu>
1579
1580 * configure.in: Added i386-*-moss* target.
1581
3f4ca874
MM
1582Thu Jun 22 14:41:23 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1583
1584 * write.c (write_object_file): Cast decode_local_label_name
1585 argument to char * to avoid warning.
1586
a1835409
KR
1587Wed Jun 21 18:07:59 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1588
c151fd1e
KR
1589 Changes from Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>:
1590 * config/tc-m68k.c (insword): Increment the frag offsets.
1591 (struct m68k_it): Add reloc[].pcrel_fix field to hold pc-rel
1592 fixup.
1593 (add_fix): Accept additional parameter, the pc-rel fixup. All
1594 callers changed. Fix offset address if width == 'b'.
1595 (m68k_ip) [case AINDX]: Allow explicit size spec. Don't make the
1596 outer displacement pc-relative.
1597 (md_pcrel_from): Make it relative to the first extension word of
1598 the operand.
1599 (opcode_ptr): Make it a macro if DO_BREAK_UP_BIG_DECL is
1600 undefined.
1601 (md_convert_frag_1): Don't reference fragP->fr_opcode[2..].
1602 (md_estimate_size_before_relax) [case TAB (FBRANCH, SZ_UNDEF)]:
1603 Turn on long bit.
1604 (m68k_ip) [case 'C']: Don't set set long bit, set it in the opcode
1605 table.
1606 (md_estimate_size_before_relax) [case TAB (PCINDEX, SZ_UNDEF)]:
1607 Variable part increases by four, not six.
1608 * write.c (fixup_segment) [TC_M68K]: Don't do further pcrel
1609 processing after converting difference of two symbols in the
1610 same segment.
1611
1612 * write.c (fixup_segment): Don't conditionalize the pcrel fix on
1613 TC_M68K.
1614
a1835409
KR
1615 * config/tc-sparc.c (sparc_ip, case 'A'): If ASI is not a "#"
1616 value, don't shift it an extra time.
1617
85b369b3
SC
1618Wed Jun 21 14:18:37 1995 Steve Chamberlain <sac@slash.cygnus.com>
1619
1620 * gasp.c (do_print, do_form, buffer_and_nest): Use case insensitive
ac7530a8 1621 string compares.
85b369b3 1622
34308df7
KR
1623Tue Jun 20 14:55:02 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1624
1625 * config/obj-coff.c (write_object_file): Cast time() argument to
1626 time_t *.
1627
420c479b
JL
1628Tue Jun 20 12:00:53 1995 Jeff Law (law@snake.cs.utah.edu)
1629
1630 * config/tc-hppa.c (pa_build_unwind_subspace): Fix typo in last
1631 change.
1632
76477190
JL
1633Mon Jun 19 15:27:17 1995 Jeff Law (law@snake.cs.utah.edu)
1634
1635 * config/tc-hppa.c (pa_build_unwind_subspace): Zero out memory
1636 from frag_more calls.
1637
d21041b3
SS
1638Thu Jun 15 16:53:37 1995 Stan Shebs <shebs@andros.cygnus.com>
1639
1640 * config/obj-coff.c: Don't use "bfd/" when including libbfd.h
1641 and libcoff.h.
1642 (fill_section): Call PROGRESS.
1643 * Makefile.in (INCLUDES): Add bfd srcdir.
1644
1645 * mpw-config.in: Add bfd_gas flag and set for each config.
1646 (i386-unknown-go32, m68k-unknown-coff): Recognize.
1647 * mpw-make.in (HACK_O_RAMA, OBJ_COFF_OMIT_TIMESTAMP): Add to
1648 config.h.
1649
f6d6f102
DE
1650Thu Jun 15 10:04:26 1995 Doug Evans <dje@canuck.cygnus.com>
1651
1652 * config/tc-arm.h (LOCAL_LABEL): Prepend '.' if not OBJ_AOUT.
1653 (FAKE_LABEL_NAME): Likewise.
1654
4ff6f92a
JL
1655Mon Jun 12 22:25:39 1995 Jeff Law (law@snake.cs.utah.edu)
1656
1657 * config/tc-hppa.c (pa_ip): Check for invalid register in single
1658 precision fmpyadd and fmpysub instructions.
1659
69cb5925 1660Thu Jun 8 19:33:02 1995 Pat Rankin (rankin@eql.caltech.edu)
3c650d09
KR
1661
1662 * config/obj-vms.c (myname): Delete all references.
1663 (VMS_stab_parse, Write_VMS_MHD_Records, VMS_Case_Hack_Symbol):
1664 Replace printf calls with as_tsktsk.
1665 (PUT_LONG, PUT_SHORT): Use COPY_LONG, COPY_SHORT.
1666 (VMS_Store_Immediate_Data): Move second buffer capacity check
1667 below bottom of loop; first check at top suffices for loop itself.
1668 (find_file): Remove redundant pointer checks in first two loops;
1669 replace third loop with pointer to last list element determined
1670 in first loop.
1671
0cd27550
DE
1672start-sanitize-arc
1673Thu Jun 8 11:44:35 1995 Doug Evans <dje@chestnut.cygnus.com>
1674
1675 * config/tc-arc.h (MD_APPLY_FIX3): Define.
1676 * config/tc-arc.c (md_apply_fix3): Renamed from md_apply_fix.
1677 Undo effects of md_pcrel_from if symbol is in another section.
1678end-sanitize-arc
1679
d5263ab4
KR
1680Tue Jun 6 13:53:06 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1681
0cd27550
DE
1682 * config/tc-sparc.c (sparc_ip): Handle defined absolute symbols as
1683 ASI values.
1684
d5263ab4
KR
1685 * config/obj-vms.c (vms_write_object_file, case N_DATA): Use
1686 strcmp against FAKE_LABEL_NAME instead of checking third
1687 character. (Suggested by Pat Rankin.)
1688
69cb5925 1689Mon Jun 5 20:10:46 1995 Pat Rankin (rankin@eql.caltech.edu)
d5263ab4
KR
1690
1691 Add support for N_ABS and N_ABS|N_EXT type symbols.
1692
1693 * config/obj-vms.h (LSY_S_M_{DEF,REL}, ENV_S_M_{DEF,NESTED}):
1694 New macros for local symbols (from <lsydef.h> and <envdef.h>).
1695 * config/obj-vms.c (Current_Environment): New file-scope variable.
1696 (VMS_Local_Environment_Setup): New routine.
1697 (GBLSYM_LCL): New macro.
1698 (VMS_Global_Symbol_Spec): Handle local symbols too.
1699 (VMS_Psect_Spec): Set GLOBALVALUE_BIT for absolute symbols.
1700 (VMS_Emit_Globalvalues): Handle local and global absolute symbols.
1701 (VMS_Store_PIC_Symbol_Reference): Ditto.
1702 (vms_write_object_file: GSD symbol loop): Ditto.
1703
1704Mon Jun 5 16:10:40 1995 Steve Chamberlain <sac@slash.cygnus.com>
1705
1706 * config/tc-arm.h (LOCAL_LABELS_FB): Define.
1707
1be0c30e
KR
1708Mon Jun 5 02:17:58 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
1709
1710 * configure.in (i386-*-gnu*): Always use GNU ELF config.
1711
69cb5925 1712Wed May 31 17:49:18 1995 Pat Rankin (rankin@eql.caltech.edu)
58abad7d
KR
1713
1714 * config/obj-vms.c (obj_crawl_symbol_chain): Update *symbolPP
1715 in `else' clause when removing a symbol. Also, revise comments
1716 to match the code.
1717 (vms_write_object_file (GSD symbol loop, case N_DATA)): Never
1718 output symbol definitions for local numeric labels.
1719
1cb0d00d
KR
1720Tue May 30 18:29:10 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
1721
1722 * configure.in (architecture variants, cases armeb and arm*): Remove
1723 spaces round assignment to endian.
1724
0b143492
KR
1725Tue May 30 12:31:31 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1726
1727 * write.c (write_object_file): Check for undefined local dollar
1728 and fb labels.
1729
1730 * symbols.c (decode_local_label_name): Extract instance number
1731 from the correct location.
1732
6053ed62
C
1733Sat May 27 21:28:49 1995 J.T. Conklin <jtc@rtl.cygnus.com>
1734
1735 * config/te-dpx2.h: Include obj-format.h.
1736 (COFF_MAGIC): Renamed from FILE_HEADER_MAGIC.
1737
1738Wed May 24 13:45:32 1995 Steve Chamberlain <sac@slash.cygnus.com>
1739
1740 * configure, configure.in, config/obj-coff.c, config/obj-coff.h:
1741 Add support for ARM pe
1742
2e715f06
DE
1743Tue May 23 17:00:32 1995 Doug Evans <dje@canuck.cygnus.com>
1744
1745 * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP16
1746 and BFD_RELOC_SPARC_WDISP19.
1747
6e43bf82
KR
1748Tue May 23 19:18:33 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1749
1750 * as.c (parse_args) [! USE_EMULATIONS]: Always print an error
1751 message.
1752
2e715f06
DE
1753 * doc/internals.texi: Document obj_app_file and
1754 TARGET_BYTES_BIG_ENDIAN.
1755
4761bb02
KR
1756Mon May 22 20:03:23 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1757
70d6c396
KR
1758 * ecoff.c (ecoff_stab): Add extra leading argument, for 4 May
1759 change.
1760 * ecoff.h (ecoff_stab): Fix declaration.
1761 * obj.h (format_ops.process_stab): Include prototype.
1762 * config/obj-elf.h (OBJ_PROCESS_STAB): Pass through seg argument.
1763 * config/obj-ecoff.h (OBJ_PROCESS_STAB): Ditto.
1764
4761bb02
KR
1765 * config/e-mipself.c (mipself): New emulation mode, doesn't change
1766 endianness from configured default.
1767 * config/e-mipsecoff.c (mipsecoff): Ditto.
1768 * configure.in (mips ecoff/elf targets): Include them.
1769 * as.c (mipself, mipsecoff): Declare.
1770
1771 * as.c (emulation_name): New variable.
1772 (select_emulation_mode): Set emulation_name. Don't change argv.
1773 (parse_args): Handle --emulation; complain if the supplied name
1774 isn't what select_emulation_name came up with.
1775
1fc2205e
DE
1776start-sanitize-arc
1777Mon May 22 16:56:58 1995 Doug Evans <dje@chestnut.cygnus.com>
1778
1779 * config/tc-arc.c (md_pcrel_from): Return 0 for undefined symbols.
1780end-sanitize-arc
1781
1782Sun May 21 21:36:17 1995 Jeff Law (law@snake.cs.utah.edu)
1783
1784 * config/tc-hppa.c: Reverse changes from Dec. 19th which
1785 changed the way unwinds were built for ELF. Rely on relocation
1786 symbol reductions to avoid placing the end of function marker
1787 symbols into the object file's symbol table.
1788
a088fb62
KR
1789Sat May 20 12:31:36 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
1790
0509f064
KR
1791 Added improved VMS support from Pat Rankin:
1792
1793 Fri 19 May 16:51:40 1995 Pat Rankin (rankin@eql.caltech.edu)
1794
1795 * config/obj-vms.h (AOUT_STABS): Define.
1796
1797 * config/obj-vms.c (fpush, rpush): New routines.
1798 (push): Replaced by the above.
1799 (find_symbol): Slight reorganization to expose tail recursion.
a088fb62
KR
1800
1801 Fri Mar 17 18:40:36 1995 Pat Rankin (rankin@eql.caltech.edu)
1802
1803 * Makefile.in (VMS_OTHER_OBJS): delete this.
1804 * vmsconf.sh (make-gas.com): build ../libiberty/liberty.olb
1805 first if necessary; link gas against it.
1806
078d1a5a
KR
1807Fri May 19 16:37:39 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
1808
1809 * gasp.c (istrue): Correctly test for string inequality.
1810
ff15324f
KR
1811Thu May 18 04:25:11 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
1812
1813 Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
1814
69cb5925 1815 * config/tc-arm.c (CP_T_{Pre,UD,WB}): Define, bits in co-processor
ff15324f
KR
1816 instructions.
1817 ([ls]fm_flags): Correct error in bitmasks.
69cb5925
KR
1818 (cp_address_required_here): Delete second parameter, FLAGS. All
1819 callers changed. Remove all dead code referring to FLAGS. If
ff15324f 1820 address is just "[Reg]" then convert into a PRE-INCREMENT UP format.
69cb5925 1821 (do_fp_ldmstm): Handle full-descending and empty-ascending stack
ff15324f
KR
1822 formats explicitly.
1823
1824 * config/tc-arm.c (internalError): Define.
1825 (ARM_{1,2,250,3,6,7,7DM,ANY,2UP,ALL,3UP,6UP,LONGMUL}): Define processor
1826 variants.
1827 (FPU_{CORE,FPA10,FPA11,NONE,ALL,MEMMULTI}): Define floating point
1828 variants.
1829 ({CPU,FPU}_DEFAULT): Define.
1830 (cpu_variant): New variable.
1831 (asm_flg): Change more_flags to flag_bits.
1832 Add prototypes for new functions.
1833 (FLAG_{S,P,B,T,ED,FD,FA,EA,IB,IA,DB,DA,L}): Delete.
1834 (s_flag[], ldst_flags[], byte_flag[], cmp_flags[], ldm_flags[],
1835 stm_flags[], lfm_flags[], sfm_flags[], round_flags[], except_flags[],
1836 cplong_flag[]): New variables.
1837 (asm_opcode, insns[]): New format, add version support.
1838 (arm_flg_hsh): Delete.
1839 (do_mul, do_mla): Remove "Warning" from warning messages.
1840 (do_arit): Simplify.
1841 (do_swap): Make error message more appropriate.
1842 (md_begin): Build hash tables starting at first entry in tables.
1843 (md_number_to_chars): Cope with big/little-endian selection.
1844 (md_chars_to_number): New function.
1845 (md_apply_fix): Rewrite to make endian independent.
1846 (tc_gen_reloc): Better error messages.
1847 (md_assemble): Reject opcodes forbidden by the currently selected cpu
1848 variant. Rewrite handling code for instruction flags.
1849 (md_shortopts): Add option "m:".
1850 (md_parse_option): Get the desired cpu/fpu variant.
1851
1852 From: David Taylor (dtaylor@armltd.co.uk)
1853 * configure.in (architecture variants): Check for "armeb" and "arm*",
1854 set endianness accordingly.
1855 * read.c (read_a_source_file): New hooks md_start_line_hook and
1856 md_after_pass_hook.
1857 * config/arm-{big,lit}.mt: New files
1858 * config/tc-arm.h ({LITTLE,BIG}_ENDIAN, BYTE_ORDER): Define.
69cb5925 1859 (TARGET_FORMAT): Select depending on endianness and emulation and
ff15324f
KR
1860 object format.
1861 (md_after_pass_hook, md_start_line_hook): Define.
1862 * config/tc-arm.c: Include subsegs.h, symbols.h and listing.h.
1863 (shift[]): Add uppper case equivalents.
1864 (CP_T_[XY], TRANS_BIT): Define.
69cb5925 1865 (conds[]): Delete initial NULL entry, add "lo" entry as synonym for
ff15324f
KR
1866 "cc".
1867 (LONGEST_FLAG, flags[]): Delete.
1868 (arm_psr): New structure.
1869 (psrs[]): New variable.
1870 (PSR_ALL): Define.
1871 (LONGEST_INST): Bump to 5.
1872 (LITERAL_MASK, COND_MASK, OPCODE_MASK, DATA_OP_SHIFT): Define.
1873 (OPCODE_{AND,EOR,SUB,RSB,ADD,ADC,SBC,RSC,TST,TEQ,CMP,CMN,ORR,MOV,BIC,
1874 MVN}): Define.
1875 (insns[]): Add smull, umull, smlal, umlal, ldfm, stfm, msr and mrs
1876 instructions. Add nop and adr pseudo ops.
1877 (reg_table): Add APCS register name variants.
1878 (arm_psr_hsh): New hash table.
69cb5925 1879 (md_pseudo_table): Add "ltorg", "pool", "extend", "ldouble" and
ff15324f
KR
1880 "packed".
1881 (MAX_LITERAL_POOL_SIZE): Define.
1882 (struct literalS): New structure.
1883 (literals, next_literal_pool_place, lit_pool_num, current_poolP): New
1884 variables.
1885 (add_to_lit_pool, symbol_locate, symbol_make_empty): New functions.
1886 (validate_immediate): Return FAIL on failure.
1887 (s_ltorg): New function.
1888 (psr_required_here, psrf_required_here): New functions.
1889 (cp_address_required_here): New parameter, flag, all callers changed.
1890 If flag is non-zero, restrict the legal addressing modes.
1891 (do_nop, do_mrs, do_msr, do_mull): New functions.
1892 (negate_data_op): New function.
1893 (data_op2): accept #x,y meaning x rotated right by y, but only when
1894 suitable constants. If immediate is not legal, try changing the
1895 opcode.
1896 (do_adr): New function.
1897 (do_ldst): accept "ldr reg, =expr". Put expr in the pool if it can't
1898 be done as an immediate.
1899 (do_fp_ldst): Use CP_T_[XY], not immediate values.
1900 (do_fp_ldmstm): New function.
1901 (arm_psr_parse): New function.
1902 (output_inst): Use INSN_SIZE in call to md_number_to_chars.
1903 (md_assemble): Add hack so that "Label instruction" causes alignment of
1904 the label.
69cb5925 1905 (arm_after_pass_hook, arm_start_line_hook, arm_frob_symbol): New
ff15324f
KR
1906 functions.
1907
1908Wed May 17 05:25:16 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1909
1910 * config/tc-ppc.c (md_show_usage): Add \'s at end of lines in
1911 strings for non-GCC compilers.
1912
ff17873d
KR
1913Tue May 16 19:36:00 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1914
1915 * config/obj-ecoff.c (ecoff_pop_insert): New function.
1916 (ecoff_format_ops): Use it.
1917 (obj_ecoff_frob_symbol): Now static.
1918
99146659
MM
1919Wed May 17 00:59:12 1995 Andrew Cagney - aka Noid <cagney@highland.com.au>
1920
1921 * config/tc-ppc.c (md_begin): Was assuming that an instruction was
1922 bigendian and hence 16bit relocs withing instructions would
69cb5925 1923 ALWAYS be at addresses i+2-i+3. In LE mode it is i+0-i+1.
99146659 1924
b0d41996
KR
1925Tue May 16 16:29:58 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1926
739708fa
KR
1927 * config/obj-multi.h (obj_frob_symbol, obj_frob_file, S_GET_SIZE,
1928 S_SET_SIZE, S_GET_ALIGN, S_SET_ALIGN, obj_copy_symbol_attributes,
1929 OBJ_PROCESS_STAB): New macros.
1930 * config/tc-mips.c: Protect against redefining them also when
1931 including obj-elf.h. Test only OBJ_ELF for including elf/mips.h.
b444036d
KR
1932 (mips_init_after_args): New function. Set byte_order here.
1933 (md_parse_option): Not here.
1934 (byte_order): Don't bother initializing.
1935 * config/tc-mips.h (mips_init_after_args): Declare.
1936 (tc_init_after_args): New macro.
739708fa 1937
b0d41996
KR
1938 * read.c (s_lcomm): Do ELF/ECOFF test at run time, not compile
1939 time.
1940
b04b02a5
SC
1941Fri May 12 14:17:47 1995 Steve Chamberlain <sac@slash.cygnus.com>
1942
1943 Initial support for PE object files.
1944 * configure.in, configure (i386-*-pe, i386-*-*nt): Add.
1945 * config/obj-coff.c (fixup_segment): Cope with PE wierdness.
1946 * config/obj-coff.h (TE_PE): New target format.
1947
bb2c9281
KR
1948Thu May 11 14:58:21 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1949
1950 * config/obj-elf.c (NEED_ECOFF_DEBUG): Define if ECOFF_DEBUGGING
1951 was defined by header files. Test in preprocessor conditionals
1952 instead of ECOFF_DEBUGGING.
1953 (ecoff_debug_pseudo_table): Make empty if NEED_ECOFF_DEBUG is not
1954 defined.
1955 (obj_read_begin_hook, obj_symbol_new_hook, elf_frob_symbol,
1956 elf_frob_file): Only call ecoff routines if NEED_ECOFF_DEBUG is
1957 defined.
1958 (elf_ecoff_set_ext, elf_get_extr, elf_set_index): Define only if
1959 NEED_ECOFF_DEBUG is defined.
1960 (elf_format_ops): Reference elf_ecoff_set_ext only if
1961 NEED_ECOFF_DEBUG.
1962
e7757ad0
KR
1963Wed May 10 18:09:12 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
1964
1965 * Makefile.in (OBJS): Include @extra_objects@.
1966 (obj-elf.o, obj-ecoff.o, e-mipself.o, e-mipsecoff.o): New rules
1967 for building these independently.
1968 * emul-target.h, config/e-mipself.c, config/e-mipsecoff.c: New
1969 files.
1970
1971 * acconfig.h (DEFAULT_EMULATION, EMULATIONS, USE_EMULATIONS,
1972 OBJ_MAYBE_*, I386COFF, M68KCOFF, M88KCOFF): New macros.
1973 * aclocal.m4 (GAS_UNIQ): New macro.
1974
1975 * as.c (emulations, n_emulations) [USE_EMULATIONS]: New variable.
1976 (select_emulation_mode, default_emul_bfd_name, common_emul_init)
1977 [USE_EMULATIONS]: New functions.
1978 (main) [USE_EMULATIONS]: Call select_emulation_mode before other
1979 initialization.
1980 * emul.h: New file.
1981 * as.h [USE_EMULATIONS]: Include it.
1982
1983 * configure.in: Handle enable-targets option. Iterate over target
1984 list, building up a list of object file formats and emulation
1985 configurations. (Only supports emulations for MIPS CPU so far.)
1986 If multiple formats are needed, set obj_format to multi and add
1987 format config files to extra_files. If emulation modes are
1988 needed, add the relevant files to extra_files.
1989
1990 * configure.in: Define I386COFF, M68KCOFF, M88KCOFF for those
1991 configurations.
1992
1993 * ecoff.c (ecoff_generate_asm_lineno): Filename argument now
1994 points to const.
1995 * ecoff.h (ecoff_generate_asm_lineno): Updated declaration.
1996
1997 * obj.h (obj_read_begin_hook): Don't declare function if it's
1998 already a macro.
1999
2000 * read.c (s_space, cons, stringer): If md_flush_pending_output is
2001 defined, call it on entry.
2002 * config/obj-elf.c (obj_elf_section): If md_flush_pending_output
2003 is defined, call it on entry. If md_elf_section_change_hook is
2004 defined, call it before returning normally.
2005
2006 * read.h (target_big_endian): Declare.
2007
2008 * obj.h (struct format_ops): Added new function pointer fields
2009 ecoff_set_ext, read_begin_hook, symbol_new_hook.
2010 (ecoff_format_ops, elf_format_ops): Declare.
2011 * config/obj-elf.c (elf_s_get_size, elf_s_set_size,
2012 elf_s_get_align, elf_s_set_align, elf_copy_symbol_attributes,
2013 elf_sec_sym_ok_for_reloc): New functions.
2014 (elf_format_ops): New variable.
2015 (elf_frob_symbol): Now takes additional int* argument.
2016 * config/obj-elf.h (elf_frob_symbol): Update declaration.
2017 (elf_pop_insert): Declare.
2018 (obj_pop_insert): Define to call elf_pop_insert.
2019 * config/obj-ecoff.c (ecoff_sec_sym_ok_for_reloc,
2020 obj_ecoff_frob_symbol): New functions.
2021 (ecoff_format_ops): New variable.
2022
2023 * config/te-generic.h: If OBJ_HEADER is defined, use it as the
2024 filename to include in place of obj-format.h.
2025 * config/te-multi.h: New file, copied from te-generic.h.
2026 * config/obj-elf.c (OBJ_HEADER): Define it to "obj-elf.h".
2027 * config/obj-ecoff.c (OBJ_HEADER): Define it to "obj-ecoff.h".
2028
2029 * config/obj-elf.c (ECOFF_DEBUGGING): Default to 0.
2030 (obj_read_begin_hook, obj_symbol_new_hook, elf_frob_symbol,
2031 elf_frob_file): Test it at run time.
2032 (obj_ecoff_set_ext, elf_get_extr, elf_set_index): Define
2033 unconditionally.
2034 (elf_pseudo_table): Renamed from obj_pseudo_table, now static.
2035 (ecoff_debug_pseudo_table): Split off into separate table. Define
2036 it unconditionally.
2037 (elf_pop_insert): New function.
2038 * config/obj-elf.h (elf_pop_insert): Declare.
2039 (obj_pop_insert): New macro.
2040 (obj_ecoff_set_ext) [!OBJ_MAYBE_ELF]: Define to elf_ecoff_set_ext.
2041 * config/obj-ecoff.h (obj_ecoff_set_ext): Define to ecoff_set_ext.
2042
2043 * config/tc-mips.h: Protect against multiple inclusions.
2044 (mips_pop_insert): Declare.
2045 (md_pop_insert): Call it.
2046
2047 * config/tc-mips.c: If OBJ_MAYBE_ELF is defined, include
2048 obj-elf.h, but preserve OUTPUT_FLAVOR and protect some other
2049 macros from redefinition.
2050 (ECOFF_DEBUGGING): Default to 0. All references changed to
2051 run-time tests or made unconditional.
2052 (s_stringer, s_mips_space, s_elf_section): Deleted.
2053 (md_pseudo_table): Don't refer to them. Split table into three
2054 sections, for MIPS, non-ECOFF_DEBUGGING, and ELF.
2055 (mips_pop_insert): New function.
2056 (mips_flush_pending_output): New function.
2057 (mips_enable_auto_align): New function.
2058 * config/tc-mips.h (mips_pop_insert): Declare.
2059 (md_pop_insert): New macro.
2060 (mips_flush_pending_output): Declare.
2061 (md_flush_pending_output): New macro.
2062 (mips_enable_auto_align): Declare.
2063 (md_elf_section_change_hook): New macro, calls
2064 mips_enable_auto_align.
2065
8370e93e
MM
2066Tue May 9 17:07:41 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2067
2068 * configure.in: Add little endian PowerPC support.
2069 * configure: Rebuild with autoconf.
2070 * config/ppc-big.mt: New file for big endian PowerPC systems.
2071 * config/ppc-lit.mt: New file for little endian PowerPC systems.
2072
2073 * config/tc-ppc.h (target_big_endian): Declare.
2074 (TARGET_FORMAT): Deal with little and big endian ELF variants.
2075 (TARGET_BYTES_BIG_ENDIAN): Define as 1, not empty.
2076
2077 * config/tc-ppc.c (ppc_big_endian): Delete variable, use
2078 target_big_endian instead.
2079 (md_parse_option): Parse -mlittle and -mlittle-endian to use
2080 little endian support. Parse -mbig and -mbig-endian to use big
2081 endian support.
2082 (md_show_usage): Update to reflect current switches.
2083 (ppc_set_cpu): Recognize powerpcle as little endian PowerPC. Use
2084 as_fatal, not abort if unknown machine.
2085
56187f65
JL
2086Tue May 9 10:58:41 1995 Jeff Law (law@snake.cs.utah.edu)
2087
2088 * config/tc-hppa.c (md_apply_fix): Cast *valp to an integer when
2089 comparing against signed values.
2090 (hppa_force_relocation): Make "distance" an integer.
2091
1e63de91
KR
2092Tue May 9 00:47:03 1995 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2093
2094 * obj.h (struct format_ops) [BFD_ASSEMBLER]: New type.
2095 (this_format) [BFD_ASSEMBLER]: Declare new variable, if not
2096 already defined as a macro.
2097
fd1fdba2
KR
2098Mon May 8 21:44:13 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2099
2100 * subsegs.h (seg_info): Provide dummy version for
2101 non-BFD_ASSEMBLER, non-MANY_SEGMENTS configuration. It should
2102 never get invoked, but this is easier than conditionalizing some
2103 of the uses.
2104 (struct seg_info_trash): Dummy type used by above to make code
2105 compile.
2106
e51a3912
KR
2107Fri May 5 14:47:13 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2108
2109 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define to 1, not
2110 empty.
2111 * config/obj-elf.h (SEPARATE_STAB_SECTIONS): Ditto.
2112 * config/obj-som.h (SEPARATE_STAB_SECTIONS): Ditto.
2113
8c5e0f5e
KR
2114Thu May 4 19:26:55 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2115
2116 * stabs.c (get_stab_string_offset): Always define. If
2117 SEPARATE_STAB_SECTIONS isn't set, abort.
2118 (SEPARATE_STAB_SECTIONS): Default to zero.
2119 (aout_process_stab): New function, split out from s_stab_generic.
2120 (OBJ_PROCESS_STAB) [AOUT_STABS]: Define to call aout_process_stab,
2121 if not already defined.
2122 (s_stab_generic): Test SEPARATE_STAB_SECTIONS at run time. If
2123 it's not set, and OBJ_PROCESS_STAB isn't defined, abort. Always
2124 pass six arguments to OBJ_PROCESS_STAB.
52f969e2 2125 * read.h (get_stab_string_offset): Declare unconditionally.
8c5e0f5e
KR
2126 * config/obj-aout.h (AOUT_STABS): Define.
2127 * config/obj-bout.h (AOUT_STABS): Define.
2128 * config/obj-ecoff.h (OBJ_PROCESS_STAB): Add new first argument,
2129 ignored.
2130 * config/obj-elf.h (OBJ_PROCESS_STAB) [ECOFF_DEBUGGING]: Ditto.
2131
2132 * config/obj-ecoff.h (ECOFF_DEBUGGING): Define to 1, not empty.
2133 * config/obj-elf.h (ECOFF_DEBUGGING): Ditto. Test value, not
2134 whether it's defined.
2135
9777b772
KR
2136Wed May 3 21:38:20 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2137
2138 * as.h (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): If not already
2139 defined, define them to zero.
2140 * config/tc-*.h, config/te-*.h: If defining them, define them to
2141 be 1 instead of empty.
2142 * expr.c (integer_constant, operand): Test them at run time
2143 instead of compile time.
2144 * read.c (read_a_source_file): Ditto.
2145 * symbols.c (colon): Ditto.
2146 (dollar_*, define_dollar_label, fb_*): Define unconditionally.
2147 * symbols.h (dollar_*, define_dollar_label, fb_*): Declare
2148 unconditionally.
2149
4829cd65
JL
2150Wed May 3 13:08:53 1995 Jeff Law (law@snake.cs.utah.edu)
2151
69cb5925 2152 * config/tc-hppa.c (md_apply_fix): Do nothing for an out of range
4829cd65
JL
2153 PC relative call since those only occur in cases where the linker
2154 can fix them up.
2155 (hppa_force_relocation): Force relocations for out of range PC
2156 relative calls.
2157
55ac59da
JL
2158Tue May 2 16:34:47 1995 Jeff Law (law@snake.cs.utah.edu)
2159
2160 * configure (hppa*-*-lites*): Handle just like hppa*-*-*elf*.
2161 * configure.in: Likewise.
2162
2c4022af
KR
2163Tue May 2 11:22:00 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2164
2165 * read.c (pop_insert): New function.
2166 (pop_override_ok, pop_table_name): New variables.
2167 (md_pop_insert, obj_pop_insert): New macros.
2168 (pobegin): Use them.
2169
2170 * config/tc-mips.c: Use USE_STDARG and USE_VARARGS instead of
2171 NO_STDARG &c.
2172
2173 * read.c (target_big_endian): If TARGET_BYTES_BIG_ENDIAN is
2174 defined, initialize to 1.
2175 * config/tc-mips.c (mips_target_format): Changed to a function,
2176 checking flavor and byte order at run time.
2177 (md_parse_option, cases OPTION_EB and OPTION_EL): Set
2178 target_big_endian here.
2179 (md_begin): Not here.
2180 * config/tc-mips.h (mips_target_format): Adjust declaration.
2181 (TARGET_FORMAT): Call mips_target_format.
2182
2183 * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Define in terms of
2184 OUTPUT_FLAVOR.
2185 * config/tc-mips.c (g_switch_value, g_switch_seen): Define
2186 unconditionally.
2187 (md_begin, mips_ip, md_parse_option, s_change_sec, s_option,
2188 s_abicalls, nopic_need_relax): Check USE_GLOBAL_POINTER_OPT at run
2189 time, instead of compiling conditionally on GPOPT.
2190 (GPOPT): Don't define.
2191 (md_shortopts): Always include -G.
2192 (RDATA_SECTION_NAME): Select at run time.
2193 (md_begin): Test for ELF format at run time instead of compile time.
2194 (mips_ip, s_change_sec): Ditto.
2195 (md_parse_option, cases OPTION_CALL_SHARED and OPTION_NON_SHARED):
2196 Ditto.
2197 (OPTION_CALL_SHARED, OPTION_NON_SHARED, mips_regmask_frag): Define
2198 unconditionally.
2199
91a165d1
KR
2200Tue May 2 00:17:04 1995 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2201
833c46e1
KR
2202 * Makefile.in (TARG_CPU_DEP_*): New variables.
2203 (targ-cpu.o): Depend on one, selected by autoconf substitution,
2204 instead of TARG_CPU_DEPENDENTS.
2205 * configure.in: Substitute $cpu_type, $obj_format, $atof, and
2206 $emulation into Makefile.in.
2207start-sanitize-arc
2208 * config/arc.mt: Deleted.
2209end-sanitize-arc
2210 * config/h8300.mt: Deleted.
2211 * config/h8500.mt: Deleted.
2212 * config/i386coff.mt (TARG_CPU_DEPENDENTS): Deleted.
2213 * config/m68k.mt: Deleted.
2214 * config/m68kcoff.mt (TARG_CPU_DEPENDENTS): Deleted.
2215 * config/m88kcoff.mt (TARG_CPU_DEPENDENTS): Deleted.
2216 * config/mips-big.mt (TARG_CPU_DEPENDENTS): Deleted.
2217 * config/mips-lit.mt (TARG_CPU_DEPENDENTS): Deleted.
2218start-sanitize-rce
2219 * config/rce.mt: Deleted.
2220end-sanitize-rce
2221 * config/sh.mt: Deleted.
2222 * config/w65.mt: Deleted.
2223 * config/z8k.mt: Deleted.
2224
78dace0a
KR
2225 * config/te-dpx2.h (dpx2): Deleted unused macro.
2226 * config/te-generic.h (TE_GENERIC): Ditto.
91a165d1
KR
2227 * config/te-go32.h (TE_GO32): Ditto.
2228 * config/te-hp300.h (TE_HP300): Ditto.
78dace0a 2229 * config/te-hppa.h (PA, _TE_PA_H): Ditto.
91a165d1
KR
2230 * config/te-ic960.h (TE_IC960): Ditto.
2231 * config/te-nbsd532.h (TE_NETBSD532): Ditto.
2232 * config/te-pc532mach.h (TE_PC532MACH): Ditto.
2233 * config/te-ppcnw.h (TE_PPCNW): Ditto.
78dace0a 2234 * config/te-sco386.h (scounix): Ditto.
91a165d1
KR
2235
2236Mon May 1 15:59:56 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2237
2238 * read.c (s_app_file): If obj_app_file is defined, call it with
2239 string as argument. Don't call c_dot_file_symbol or
2240 elf_file_symbol.
2241 * config/obj-coff.h (obj_app_file): Define as c_dot_file_symbol.
2242 * config/obj-elf.h (obj_app_file): Define as elf_file_symbol.
2243
2244 * as.h (OUTPUT_FLAVOR): Don't define here.
2245 * config/obj-aout.h (OUTPUT_FLAVOR) [BFD_ASSEMBLER]: Define.
2246 * config/obj-bout.h (OUTPUT_FLAVOR): Define.
2247 * config/obj-coff.h (OUTPUT_FLAVOR) [BFD_ASSEMBLER]: Define.
2248 * config/obj-ecoff.h (OUTPUT_FLAVOR): Define.
2249 * config/obj-elf.h (OUTPUT_FLAVOR): Define.
2250
86a90ab9
DE
2251start-sanitize-arc
2252Sat Apr 29 21:44:57 1995 Doug Evans <dje@chestnut.cygnus.com>
2253
2254 * config/tc-arc.c (delay_slot_type): Deleted.
2255 (md_assemble): Remember suffixes seen.
2256 Issue warnings for 8 byte jump with delay slot, and conditional
2257 branch immediately following set of condition codes.
2258end-sanitize-arc
2259
85f667f7
DE
2260Thu Apr 27 20:07:33 1995 Doug Evans <dje@canuck.cygnus.com>
2261
2262 * Makefile.in (RUNTEST): Use one in srcdir if present.
2263 (RUNTESTFLAGS): Define.
2264
931a8fab
KR
2265Wed Apr 26 15:54:10 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2266
2267 Support for more portable alignment handling in assembly code,
2268 based on patches from Bryan Ford <baford@schirf.cs.utah.edu>:
2269 * read.c (potable): Added balign and p2align, for aligning by
2270 bytes or powers of two independent of what ".align" does for a
2271 given target.
2272 * doc/as.texinfo: Document them.
2273
404f16f5
RS
2274Tue Apr 25 11:12:04 1995 Rob Savoye <rob@thepub.cygnus.com>
2275
2276 * configure, configure.in: Look for m68k-*-vxworks* rather than
2277 just m68k-wrs-vxworks so gas can be configured for
2278 m68k-vxworks5.1.
2279
2280Fri Apr 21 15:19:06 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2281
2282 * config/tc-sh.c (md_apply_fix): If fx_r_type is zero, handle
2283 fx_size of 1, and abort on unrecognized sizes.
2284
2285 * config/tc-m68k.c (m68k_ip): Fix bug in last change regarding
2286 non-isvar case.
2287
2288Sun Apr 16 01:52:52 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
2289
2290 * config/tc-m68k.h (md_relax_table, TC_GENERIC_RELAX_TABLE):
2291 Missed this one in 11 Apr changes.
2292
2293 * config/tc-i386.h (TC_GENERIC_RELAX_TABLE): Fix typo.
2294
bcee935e
KR
2295Thu Apr 13 18:18:08 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2296
51ba1ae6
KR
2297 * config/tc-sh.c (md_convert_frag): Instead of aborting on large
2298 displacements, print an error message. Don't invoke the code that
2299 followed the abort call until it's been verified.
2300
bcee935e
KR
2301 * config/tc-m68k.c (md_show_usage): Add 68060 to list. Split cpu
2302 list into three lines.
2303
2304Thu Apr 13 14:34:36 1995 Torbjorn Granlund <tege@adder.cygnus.com>
2305
2306 * tc-m68k.c (m68k_init_after_args): Test for m68360.
2307 (md_parse_option): Likewise.
2308 (md_show_usage): Mention m68360.
2309 * tc-m68k.h (TARGET_WORD_SIZE): Define.
2310 (TARGET_ARCH): Define.
2311
2312 * expr.c (integer_constant): If TARGET_WORD_SIZE is defined,
2313 sign-extend appropriately.
2314
2315Thu Apr 13 11:20:17 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2316
2317 * config/tc-ppc.c (ppc_elf_validate_fix): Properly use PARAMS to
2318 hide prototype from non-ANSI compilers, and don't use ANSI syntax
2319 for arguments.
2320
b5549686
SS
2321Wed Apr 12 12:20:19 1995 Stan Shebs <shebs@andros.cygnus.com>
2322
2323 * mpw-config.in (TDEFINES): Put empty definition into
2324 makefile fragment.
2325 * mpw-make.in (xmalloc.c.o): Remove.
2326 (as.new): Depend on Version.r.
2327 (Version.r): Generate from version info.
2328
2329 * mpw-make.in: Delete references to hex-value.c.
2330
2331 * mpw-config.in: Add mapping from configs to object file formats,
2332 get VERSION from Makefile.in and add to mk.tmp.
2333 (mips-idt-ecoff) [TDEFINES]: Add TARGET_BYTES_BIG_ENDIAN.
2334 * mpw-make.in (VERSION, gC): Don't define.
2335 (ALL_CFLAGS): Remove -d flags.
2336 (config.h): Remove definition of MPW, add HAVE_STDARG_H,
2337 BFD_ASSEMBLER.
2338
2339 * mpw-make.in (ALL_CFLAGS): Add definition of HAVE_STDARG_H,
2340 include of ::libiberty:.
2341 (config.h): Ifdef contents on GAS_VERSION.
2342
2343 * mpw-make.in (as.c): Compile with C not gC.
2344 (config-stamp): Touch correctly.
2345 (install-only): New target.
2346 (install): Depend on all and install-only.
2347
2348 * mpw-config.in: Parse target and use to generate forward includes
2349 to tc-, obj-, and atof- files, use te-generic.h for emulation.
2350 * mpw-make.in (VERSION): Define.
2351 (as.c): Compile with GCC.
2352 (TARG_OBJECTS, CLIBS): Define.
2353 (as.new): Use LDFLAGS, TARG_OBJECTS, CLIBS and EXTRALIBS in link
2354 command.
2355 (config.h, config-stamp): Build.
2356
2357 * mpw-make.in (C, CFLAGS): Removed definitions.
2358 (ALL_CFLAGS): Define.
2359 Set default rule to use {CC} instead of {C}.
2360
2361 * mpw-make.in (install): Moved here from mpw-build.in.
2362 * mpw-build.in: Removed, functionality in mpw-make.in
2363
2364 * mpw-make.in (CFLAGS): Add more include paths.
2365
2366 * mpw-config.in (varargs.h, sys/*.h): Don't create when
2367 configuring.
2368 * mpw-make.in (CFLAGS): Add -w flag.
2369
2370 * mpw-make.in: Replace 8-bit chars with their names.
2371
2372 * mpw-config.in: New file, MPW version of configure.in.
2373 * mpw-make.in: New file, MPW version of Makefile.in.
2374
5d57a66b
DE
2375start-sanitize-arc
2376Wed Apr 12 07:35:44 1995 Doug Evans <dje@canuck.cygnus.com>
2377
2378 * config/tc-arc.c (delay_slot_type): New function.
2379 (md_assemble): Use hashed list of insns.
2380 Print warning if 8 byte insn appears in delay slot.
2381 (md_operand): Handle %st(sym1-sym2).
2382 (get_arc_exp_reloc_type): Likewise.
2383 (md_apply_fix, case BFD_RELOC_ARC_B26): Now using implicit addends
2384 so must store them here.
2385end-sanitize-arc
2386
7beebeb6
KR
2387Tue Apr 11 01:42:36 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2388
98df0912
KR
2389 * configure.in: Require at least autoconf 2.3, because earlier
2390 versions lose on some AIX versions.
2391 * configure: Regenerated.
2392
2393 * configure.in: Add m68k-*-elf.
2394 * config/tc-m68k.c (comment_chars) [OBJ_ELF]: Include '#'.
2395 (md_pseudo_table) [OBJ_ELF]: Ignore "swbeg".
2396 (md_begin): Set alt_notend_table['&'], so svr4-style immediate
2397 operands are accepted.
2398 (md_apply_fix): Argument VALP should point to valueT.
2399 (md_convert_frag): Argument SEC should be type segT.
2400 (md_shortopts) [OBJ_ELF]: Accept 'Q' with an argument.
2401 (md_parse_option): Ignore it.
2402 (md_convert_frag_1): Add in frag address for the symbol in the
2403 displacement calculation.
2404 * config/tc-m68k.h (TARGET_FORMAT) [OBJ_ELF]: Use "elf32-m68k".
2405 (TARGET_ARCH): Define.
2406 (REGISTER_PREFIX_OPTIONAL) [OBJ_ELF]: Default to 0.
2407 (LOCAL_LABEL, FAKE_LABEL_NAME, REGISTER_PREFIX_OPTIONAL): Handle
2408 these the same way for OBJ_ELF as for M68KCOFF.
2409
7beebeb6
KR
2410 * gdbinit.in: Add breakpoint in as_abort.
2411
2412 * write.c (cvt_frag_to_fill): If offset is less than zero,
2413 complain about it specifically, instead of reporting an assertion
2414 failure.
2415 (relax_segment): Complain about .org backwards, then ignore it.
2416 Do generic rs_machine_dependent relaxation only if
2417 TC_GENERIC_RELAX_TABLE is defined, and use its value for the base
2418 of the table.
2419 * tc.h (md_relax_table): Delete declaration.
7b1f56d4 2420 * as.h (struct relax_type): Add forward declaration for type.
7beebeb6
KR
2421 * config/tc-a29k.c: Deleted md_relax_table.
2422 * config/tc-{alpha,arm,h8300,hppa,i860,m88k,mips,ppc,sparc,z8k}.c:
2423 Ditto.
2424 * config/tc-{h8500,i386,i960,ns32k,sh,tahoe,vax,w65}.h: Declare
2425 md_relax_table here, and define TC_GENERIC_RELAX_TABLE to expand
2426 to md_relax_table.
2427 * config/tc-h8500.c (md_relax_table): No longer const.
2428 * config/tc-w65.c (md_relax_table): Ditto.
2429 * config/tc-sparc.c (md_short_jump_size, md_long_jump_size):
2430 Deleted.
2431start-sanitize-arc
2432 * config/tc-arc.c (md_relax_table, md_short_jump_size,
2433 md_long_jump_size): Deleted.
2434end-sanitize-arc
2435start-sanitize-rce
2436 * config/tc-rce.h: Declare md_relax_table here, and define
2437 TC_GENERIC_RELAX_TABLE to expand to it.
2438end-sanitize-rce
faf2dc27
KR
2439 * doc/internals.texi: Describe TC_GENERIC_RELAX_TABLE and
2440 WORKING_DOT_WORD. Mention md_*_jump_size (but description needs
2441 to be fleshed out later). Note m68k PCINDEX mode has been checked
2442 in.
7beebeb6 2443
7015284b
KR
2444Mon Apr 10 15:57:42 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2445
7beebeb6
KR
2446 * config/tc-mips.c (nopic_need_relax): New static function, split
2447 out from md_estimate_size_before_relax.
2448 (md_estimate_size_before_relax): Call it.
2449 (load_address, macro): In NO_PIC branches, if nopic_need_relax
2450 returns nonzero, don't attempt GP optimization.
2451
2452 * config/tc-m68k.c (PCINDEX): New macro.
2453 (md_relax_table): No longer const. Add PCINDEX entries.
2454 (m68k_ip): For AINDX with simple symbol operand, generate a
2455 PCINDEX frag if PC is used, or do normal non-AINDX processing for
2456 address register.
2457 (m68k_init_after_args): If cpu is 68000 or 68010, fix
2458 md_relax_table to prevent relaxation of PCINDEX/BYTE mode to
2459 SHORT, since they don't support that mode.
2460 (md_convert_frag_1, case PCLEA/LONG): Add 4 to offset, not 2. Add
2461 support for new PCINDEX modes.
2462 (md_estimate_size_before_relax): Process PCINDEX/SZ_UNDEF mode.
2463
2464 * config/tc-m68k.c (md_convert_frag_1, case PCLEA/SHORT): Add 2 to
2465 offset.
2466 (m68k_ip, case most punctuation/AOFF): If using PC, call add_frag
2467 using PCLEA.
2468
2469 * config/tc-m68k.c: Don't explicitly include config.h. Deleted a
2470 bunch of "#if 0" code and useless comments.
2471 (struct m68k_cpu): New type.
2472 (archs, n_archs): New variables, with single list of name/enum
2473 mapping and aliases.
2474 (m68k_ip): Delete the table here.
2475 (m68k_init_after_args): Use the new table here instead of
2476 open-coding it.
2477 (md_parse_option, case 'm'): Ditto.
2478
7015284b
KR
2479 * doc/Makefile.in (Makefile): Fix rule for running config.status.
2480 (internals.dvi, internals.ps, internals.ps4): New targets, not
2481 built by default.
2482
2483 * doc/internals.texi: Add loud disclaimer. Refill to 79 columns,
2484 specify fill-column in local-variables section. Change
2485 subheadings to subsections so they can be cross-referenced.
2486 Describe broken words, frags, frag chains, generic relaxation,
2487 relax table, m68k relaxation, m68k addressing modes, test suite
2488 code. Add a few words about various file formats.
2489
2490 * doc/as.texinfo (m68k): Recommend using `%' with registers as the
2491 normal case, instead of the exceptional case.
2492
47ba63b2
DE
2493start-sanitize-arc
2494Thu Apr 6 20:00:11 1995 Doug Evans <dje@chestnut.cygnus.com>
2495
2496 * config/tc-arc.c (arc_condition_codes): Deleted.
2497 (init_opcode_tables): Delete cpu_type_map, call
2498 arc_get_opcode_mach instead.
2499 (arc_common): Delete non-ELF stuff. Require leading '.' in .data.
2500 (md_apply_fix): Delete non-ELF stuff.
2501 Disable special handling of limm values, treat them normally.
2502 (get_arc_exp_reloc_type): New argument `data_p'. Callers updated.
2503 (md_assemble): All limm operands must be output by gas, the opcode
2504 insertion routines cannot be used (they don't do anything and we're
69cb5925 2505 using implicit addends now so we need to output something).
47ba63b2
DE
2506 * config/tc-arc.h (FAKE_LABEL_NAME): Define.
2507end-sanitize-arc
2508
2509Thu Mar 30 14:38:47 1995 H.J. Lu (hjl@nynexst.com)
2510
2511 * configure.in: Change linux to default to elf. Using
2512 i[345]86-*-linuxaout will defaults to a.out.
2513 * configure: Rebuild.
2514
6d7bcd2f
TG
2515Wed Mar 29 17:16:30 1995 Torbjorn Granlund <tege@adder.cygnus.com>
2516
2517 * config/tc-m68k.c (md_apply_fix_2): Cast negative offsets to offsetT
2518 (for hosting on 64 bit machines).
2519
350f083c
ILT
2520Tue Mar 21 16:53:27 1995 Ian Lance Taylor <ian@cygnus.com>
2521
2522 * config/tc-mips.c (md_show_usage): Mention -mips4 and -m4650.
2523
2524Fri Mar 17 16:47:13 1995 Stan Shebs <shebs@andros.cygnus.com>
2525
2526 * write.c (write_object_file): Add PROGRESS macros.
2527
bff1e14d
JL
2528Fri Mar 17 12:40:34 1995 Jeff Law (law@snake.cs.utah.edu)
2529
2530 * config/tc-hppa.c (pa_comm): Make sure to always reset the frag
2531 and section for common symbols.
2532
2533Thu Mar 16 17:26:18 1995 Michael Meissner <meissner@cygnus.com>
2534
2535 * config/tc-ppc.c (ppc_elf_validate_fix): Allow non PC relative
2536 pointers in the .ctors and .dtors section also when using the
2537 -mrelocatable option.
2538 (md_parse_option): Support -m403 as a PowerPC computer.
2539 (md_show_usage): Ditto.
2540
e5926c4a
ILT
2541Wed Mar 15 14:45:42 1995 Ian Lance Taylor <ian@cygnus.com>
2542
2543 * ecoff.c (ecoff_build_debug): The cur_scope field of a fil_ptr
2544 may be NULL when given strange input. Don't core dump.
2545
a7f668c0
ILT
2546Tue Mar 14 21:36:34 1995 Ian Lance Taylor <ian@cygnus.com>
2547
2548 * config/tc-mips.c (load_register): Don't use addiu for dli of an
2549 unsigned seemingly negative number. Don't bother shifting a zero
2550 value.
2551 (mips_ip): For case 'j', if there are more alternatives, and the
2552 ISA level is at least 3, don't accept an unsigned seemingly
2553 negative number.
2554
f6bc42a3
KR
2555Tue Mar 14 19:16:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2556
2557 * read.c (s_app_line): Fix last patch to deal with a line number
2558 of 1.
2559
ce9a2805
MM
2560Tue Mar 14 17:00:57 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2561
2562 * config/tc-ppc.c (ppc_elf_validate_fix): Use as_warn_where, not
2563 as_bad_where to give a warning instead of an error.
2564
85a30e59
KR
2565Mon Mar 13 17:03:46 1995 Pat Rankin (rankin@eql.caltech.edu)
2566
2567 * config/tc-vax.c (md_assemble): issue a warning if a constant
2568 is used as an operand where an immediate value is not allowed.
2569
78fcad58
KR
2570Fri Mar 10 19:21:19 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2571
69cb5925 2572 * config/obj-coff.c: Redo my 10 Jan change, but get it right this
78fcad58
KR
2573 time. :-)
2574 (fixup_segment): If linkrelax is set, just return.
2575 (write_object_file): Don't treat h8300 and z8k specially with
2576 regard to fixups.
2577 * config/tc-h8300.c (md_begin): Set linkrelax.
2578 * config/tc-z8k.c (md_begin): Ditto.
2579
5fc2a6ec
ILT
2580Thu Mar 9 18:01:37 1995 Ian Lance Taylor <ian@cygnus.com>
2581
2582 * config/obj-coff.c (coff_header_append): Check return value of
2583 bfd_coff_swap_scnhdr_out.
2584
9a6ec5eb
DE
2585Thu Mar 9 13:51:30 1995 Doug Evans <dje@canuck.cygnus.com>
2586
2587 Delete this patch, it breaks the h8300 assembler.
2588 Tue Jan 10 13:34:14 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2589 * config/obj-coff.c (write_object_file): Don't treat h8300 and z8k
2590 specially with regard to fixups.
2591
2592Thu Mar 9 12:28:18 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2593
2594 * config/tc-ppc.c (mrelocatable): Change type to boolean.
2595 (md_begin): Set the EF_PPC_RELOCATABLE if -mrelocatable.
2596
a79bf95d
ILT
2597Wed Mar 8 15:39:39 1995 Ian Lance Taylor <ian@cygnus.com>
2598
2599 * config/tc-mips.c (md_begin): Check for a cpu string of r8000 or
2600 r10000. If mips_isa is 4, set the machine number to 8000.
2601 (append_insn): If mips_isa is at least 4, don't generate nops for
2602 coprocessor delays. Check INSN_READ_FPR_R when setting
2603 mips_cprmask[1].
2604 (mips_emit_delays): If mips_isa is at least 4, don't generate nops
2605 for coprocessor delays.
2606 (mips_ip): Check for INSN_ISA4 instructions. Handle new argument
2607 types 'h', 'R', 'N', and 'M'.
2608 (md_longopts): Accept "mips4".
2609 (md_parse_option): Handle -mips4, and -mcpu=10000 and -mcpu=8000.
2610 (s_mipsset): Permit .set mips4.
2611
74e1b52e
MM
2612Wed Mar 8 09:36:05 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2613
2614 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .stab sections to
2615 have non PC relative relocations with -mrelocatable.
2616
82a7c457
KR
2617Wed Mar 8 02:57:53 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2618
2619 * config/tc-m68k.c (opcode_ptr): Return pointer to const.
2620 (md_begin): Make hash table errors fatal. Process opcode aliases
2621 after main opcode table.
2622 (md_apply_fix_2, case 4): Recode setting of lower_limit to avoid
2623 gcc warning.
2624
3f4487d0
DE
2625start-sanitize-arc
2626Tue Mar 7 20:42:35 1995 Doug Evans <dje@chestnut.cygnus.com>
2627
2628 * config/tc-arc.h (LITTLE_ENDIAN, BIG_ENDIAN): Define.
2629 (DEFAULT_TARGET_FORMAT): Define.
2630 (DEFAULT_BYTE_ORDER): Define to little endian.
2631 (TARGET_FORMAT): Byte order is now selectable.
2632 * config/tc-arc.c (arc_target_format): New variable.
2633 (byte_order): New variable.
2634 (md_longopts): New options -EL, -EB.
2635 (md_parse_option): Recognize them.
2636 (md_show_usage): Print them.
2637 (md_begin): Set target_big_endian.
2638end-sanitize-arc
2639
3e39a556
ILT
2640Tue Mar 7 16:07:10 1995 Ian Lance Taylor <ian@cygnus.com>
2641
2642 * doc/as.texinfo: Add documentation for SPARC V9, from Doug Evans
2643 <dje@cygnus.com>.
2644
5f241617
JL
2645Mon Mar 6 09:58:34 1995 Jeff Law (law@snake.cs.utah.edu)
2646
2647 * config/tc-hppa.c: Change all occurences of pa-89 with pa-11 to
2648 be consistent with current naming conventions.
2649 (md_begin): Set a default architecture and machine type.
2650 (pa_ip): If the current instruction specifies a newer machine type
2651 than the current machine type, then update the current machine
2652 type.
2653 (need_pa11_opcode): Likewise.
2654
2c23d22b
JL
2655Sun Mar 5 19:38:09 1995 Jeff Law (law@snake.cs.utah.edu)
2656
2657 * config/tc-hppa.c (pa_ip, case 'z'): Don't lose argument
2658 relocation bits for absolute calls.
2659
0578ade3
KR
2660Fri Mar 3 17:41:50 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2661
cb7973c3
KR
2662 * config/tc-h8300.* (md_operand): Change empty function to empty
2663 macro.
2664
2665 * config/tc-h8300.c (build_bytes): Make H8/300-H warning message
2666 clearer.
2667
0578ade3
KR
2668 * write.c (write_contents): If bfd_set_section_contents fails,
2669 print a message and exit, instead of aborting.
2670
3f81f3cf
MM
2671Fri Mar 3 16:26:19 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2672
2673 * tc.h (md_apply_fix3): If MD_APPLY_FIX3 is defined, declare
2674 md_apply_fix3.
2675
2676 * write.c (fixup_segment): If MD_APPLY_FIX3 is defined, call
2677 md_apply_fix3 with the normal 2 arguments and the current segment
2678 pointer instead of md_apply_fix.
2679
2680 * config/tc-ppc.h (MD_APPLY_FIX3): Define.
2681
2682 * config/tc-ppc.c (ppc_elf_validate_fix): Warn if -mrelocatable
2683 and a non PC relative relocation that isn't in the .got2 segment
2684 was performed.
2685 (md_apply_fix3): Rename from md_apply_fix and take segment pointer
2686 as third argument. If ELF object format, call ppc_elf_validate_fix
2687 for normal relocations.
2688 (md_parse_option): If ELF object format, recognize the
2689 -mrelocatable switch.
2690
2691Thu Mar 2 16:34:44 1995 Ian Lance Taylor <ian@cygnus.com>
2692
2693 * config/tc-i386.h (AOUT_MACHTYPE): Define as 100, not 0.
2694
33d8f469
KR
2695Tue Feb 28 18:29:27 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2696
2697 * config/tc-arm.c, config/tc-arm.h (md_operand): Replaced empty
2698 function in .c file with empty macro in .h file.
2699 * config/tc-h8500.*, config/tc-hppa.*, config/tc-i386.*,
2700 config/tc-i860.*, config/tc-i960.*, config/tc-ns32k.*,
2701 config/tc-ppc.*, config/tc-sh.*, config/tc-sparc.*,
2702 config/tc-tahoe.*, config/tc-vax.*, config/tc-w65.*,
2703 config/tc-z8k.*: Ditto.
2704start-sanitize-rce
2705 * config/tc-rce.*: Ditto.
2706end-sanitize-rce
46f12809
KR
2707 * config/tc-m68k.*: Ditto.
2708
2709 * config/tc-m68k.c (mote_pseudo_table): Removed dots from opcode
2710 names.
33d8f469
KR
2711
2712 * read.c (s_app_line): Ignore non-positive line numbers.
2713
0877841d
ILT
2714Tue Feb 28 15:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
2715
2716 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust PLT or
2717 GOT relocs either.
2718
d2c02060
KH
2719Mon Feb 27 13:03:41 1995 Kung Hsu <kung@mexican.cygnus.com>
2720
2721 * configure.in: add a29k-*-vxworks configuration.
2722
7811254c
ILT
2723Fri Feb 24 14:41:15 1995 Ian Lance Taylor <ian@cygnus.com>
2724
d2c02060
KH
2725 * config/tc-mips.c (load_register): Take dbl argument to determine
2726 handling of signed 32 bit values in 64 bit modes. Change all
2727 callers.
2728 (macro): Handle M_DLI and M_DLA_AB.
7811254c 2729
e386acc8
JL
2730Wed Feb 22 23:10:56 1995 Jeff Law (law@snake.cs.utah.edu)
2731
2732 * config/tc-hppa.c (md_apply_fix): Don't subtract the value of the
2733 add symbol if it's a common symbol (the value of a common symbol
2734 is its size, not a value in the traditional sense).
2735
546f5536
ILT
2736Wed Feb 22 21:12:28 1995 Ian Lance Taylor <ian@cygnus.com>
2737
2738 * config/tc-mips.c (append_insn): If listing_prev_line is called,
2739 call frag_grow to make sure there is still room for a variant.
2740
7a3761e1
ILT
2741Fri Feb 17 14:50:08 1995 Ian Lance Taylor <ian@cygnus.com>
2742
61420a20
ILT
2743 * config/tc-mips.c (md_pseudo_table): Add 2byte, 4byte and 8byte
2744 if OBJ_ELF. From gary@Intrepid.COM (Gary Funck).
2745
7a3761e1
ILT
2746 * config/obj-elf.c (elf_frob_symbol): Warn if a symbol is both
2747 weak and common.
2748 * config/obj-aout.c (obj_aout_frob_symbol): Likewise.
2749
5836732b
MM
2750Fri Feb 17 12:43:47 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2751
2752 * config/tc-ppc.c (md_pseudo_table): Don't redefine byte under
2753 ELF.
2754 (ppc_elf_cons): Don't support @pcrel any more, since DIFF_EXPR_OK
2755 allows the normal expressions to generate it.
2756 (md_apply_fix): Convert BFD_RELOC_32 with pcrel bit set into
2757 BFD_RELOC_32_PCREL. Abort if either BFD_RELOC_16 or BFD_RELOC_8
2758 need PC relative relocations.
2759
2760 * config/tc-ppc.h (DIFF_EXPR_OK): Define to allow PC relative
2761 expressions to be handled.
2762
b8ed3de3
DE
2763Thu Feb 16 14:30:13 1995 Doug Evans <dje@cygnus.com>
2764
2765 * expr.c (operand): Move md_operand handling to default case
2766 (so it works).
2767
efc538ba
ILT
2768Wed Feb 15 16:08:47 1995 Jason Molenda <crash@cygnus.com>
2769
2770 * config/tc-h8500.c (tc_coff_symbol_emit_hook): Add ignored
2771 parameter, to match prototype.
2772
4a6b2f8b
MM
2773Wed Feb 15 15:07:00 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2774
2775 * config/tc-ppc.c (md_pseudo_table): If ELF, go to ppc_elf_cons
2776 instead of cons.
2777 (md_show_usage): Show all of the PowerPc options.
2778 (ppc_elf_suffix): New function to recognize ELF suffixes that
2779 specify a relocation, such as @GOT.
2780 (ppc_elf_cons): Replacement for the standard cons function that
2781 knows about the ELF suffixes.
2782 (ppc_fixup): Add reloc field to hold non-standard relocation.
2783 (md_assemble): Handle ELF suffixes like @GOT.
2784 (md_create_short_jump): Dummy in case WORKING_DOT_WORD is not
2785 defined.
2786 (md_create_long_jump): Ditto.
2787 (md_short_jump_size): Ditto.
2788 (md_long_jump_size): Ditto.
2789 (md_apply_fix): Handle BFD_RELOC_32_PCREL, BFD_RELOC_LO16,
2790 BFD_RELOC_HI16, BFD_RELOC_HI16_S, BFD_RELOC_PPC_TOC16, and
2791 BFD_RELOC_16 relocations. If relocation can not be found, print
2792 the decimal value of the relocation.
2793
b2b8c24e
ILT
2794Wed Feb 15 11:46:02 1995 Ian Lance Taylor <ian@cygnus.com>
2795
49ad0c4c
ILT
2796 * config/tc-mips.c (md_apply_fix): Accept BFD_RELOC_16, for
2797 DWARF. From gary@Intrepid.COM (Gary Funck).
2798
adcf2b9d
ILT
2799 * config/tc-mips.c (macro): Handle M_U{L,S}D[_A] (unaligned double
2800 loads and stores).
2801
2802 * config/tc-i386.c (tc_i386_fix_adjustable): Do adjust global
2803 symbols if OBJ_AOUT.
2804
b2b8c24e
ILT
2805 * config/tc-mips.c (macro): Don't use the target register as a
2806 base register when building the address for M_L{W,D}{L,R}_AB.
2807
08b7351f
ILT
2808Mon Feb 13 14:44:32 1995 Ian Lance Taylor <ian@cygnus.com>
2809
b2b8c24e
ILT
2810 * config/tc-mips.c (KT0, KT1): Define.
2811 (mips_ip): Recognize $kt0 and $kt1 as register names.
2812
08b7351f
ILT
2813 * config/tc-sparc.h (tc_fix_adjustable): Define if OBJ_ELF.
2814 * config/tc-sparc.c (md_apply_fix): If OBJ_ELF, subtract out the
2815 value of a defined symbol; the value was added in by
2816 fixup_segment. This was previously corrected, if the reloc was
2817 changed to be against a section symbol, in tc_gen_reloc.
2818
2819start-sanitize-arc
2820Mon Feb 13 10:02:35 1995 Doug Evans <dje@canuck.cygnus.com>
2821
2822 * config/tc-arc.h (TC_PARSE_CONS_EXPRESSION): Define.
2823 (TC_CONS_FIX_NEW): Define.
2824 * config/tc-arc.c (get_arc_exp_operand_type): New function.
2825 (init_opcode_tables): Insert registers into global symbol table.
2826 (md_assemble): Call `expression' to parse all expressions.
2827 Call `get_arc_exp_operand_type'.
2828 (md_operand): Recognize %st(foo).
2829 (arc_parse_cons_expression): New function.
2830 (arc_cons_fix_new): New function.
2831 (md_apply_fix): Handle new reloc BFD_RELOC_ARC_B26.
2832end-sanitize-arc
2833
e13a80f7
ILT
2834Fri Feb 10 14:04:04 1995 Ian Lance Taylor <ian@cygnus.com>
2835
2836 * config/tc-i386.c (tc_i386_fix_adjustable): Use S_IS_EXTERN
2837 rather than !S_IS_LOCAL.
2838
2ec8f45e
DE
2839start-sanitize-arc
2840Thu Feb 9 17:44:29 1995 Doug Evans <dje@canuck.cygnus.com>
2841
2842 * config/tc-arc.c (md_pseudo_table): Add .cpu.
2843 (comment_chars): Add ';'.
2844 (arc_mach_type, mach_type_specified, cpu_tables_init_p): New globals.
2845 (md_parse_option): Delete support for -mmult. Add -mcpu=xxx.
2846 (md_begin): Current ARCs are little endian.
2847 Call bfd_set_arch_mach to set the cpu type.
2848 (init_opcode_tables): New function.
2849 (md_begin): Ignore suffixes and registers not supported by cpu.
2850 (md_assemble): Initialize opcode tables here.
2851 Ignore opcodes not supported by selected cpu.
2852 Always ask for more memory in one piece.
2853 (arc_cpu): New function.
2854 (md_numbers_to_chars): Support both endians (will probably be needed
2855 eventually anyway).
2856 (md_apply_fix): Likewise.
2857 * config/tc-arc.h (LOCAL_LABEL): Delete "_.L_", gcc works around
2858 dwarfout.c quirk.
2859end-sanitize-arc
2860
79c4bb34
ILT
2861Thu Feb 9 18:16:34 1995 Ian Lance Taylor <ian@cygnus.com>
2862
2863 * config/tc-i386.c (md_assemble): Adjust conditions for changing
2864 BFD_RELOC_32 to BFD_RELOC_386_GOTPC to handle a switch in frags.
2865 Patch originally from Rob Ryan <robr@cmu.edu>.
2866
2867 * config/tc-i386.c: Include subsegs.h.
2868 (tc_i386_fix_adjustable): Declare return value.
2869 (i386_operand): Don't use an assignment directly as a condition.
2870
e6d31135
JL
2871Thu Feb 9 10:37:13 1995 Jeff Law (law@snake.cs.utah.edu)
2872
2873 * config/tc-hppa.c (md_apply_fix): In some cases subtract the
2874 value of the add symbol from valp. Offsets braindamage in the
2875 "machine independent" fixup_segment.
2876
15f146be
KR
2877Wed Feb 8 18:51:23 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2878
e10c7dfc
KR
2879 * messages.c (as_abort): New function.
2880 * as.h (as_abort): Declare it.
2881 (abort): New macro.
2882
15f146be
KR
2883 Thu Jan 19 18:10:05 1995 Pat Rankin (rankin@eql.caltech.edu)
2884
2885 * config/vms-conf.h (HAVE_UNISTD_H): define it unconditionally.
2886 * config-gas.com: test for availability of <unistd.h>; create a
2887 rudimentary one if necessary.
2888
06c08e9a
MM
2889Tue Feb 7 13:34:46 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2890
2891 * configure.in: Add powerpc-*-eabi support, which is the same as
2892 powerpc-*-elf.
2893 (configure): Rebuild with autoconf.
2894
c54c7aac
KR
2895Mon Feb 6 03:37:00 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2896
2897 Changes from Bryan Ford <baford@schirf.cs.utah.edu> for i386
2898 16-bit and msdos support:
2899 * config/tc-i386.c (flag_16bit_code): New variable.
2900 (set_16bit_code_flag): New function.
2901 (md_pseudo_table): Added entries "code16" and "code32".
2902 (md_assemble): Ensure that correct data-size prefixes get emitted,
2903 based on the current mode. Ensure that 32-bit addressing will
2904 always be done. Move segment-prefix handling code. (Why?) Use
2905 16-bit jumps for 16-bit code, 32-bit jumps for 32-bit code.
2906 * config/tc-i386.h (MAX_PREFIXES): Bump to 5.
2907 (Data16, Data32): Define.
2908 * doc/as.texinfo (i386-16bit): New node.
2909 * configure.in (i386-*-msdos*): New target, using a.out format.
2910 * configure: Regenerated.
2911
e2bf6880
KR
2912Thu Feb 2 15:21:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2913
2914 * config/tc-m68k.c (cpu32_control_regs): New macro.
2915 (m68k_init_after_args): Use it, for cpu32 processors.
2916
b003a2d9
KR
2917 Tue Jan 31 17:20:45 1995 Pat Rankin (rankin@eql.caltech.edu)
2918
2919 * config/obj-vms.c (vms_tir_stack_psect): new routine;
2920 (VMS_Set_Data, VMS_Set_Psect, VMS_Store_PIC_Symbol_Reference,
2921 VMS_TBT_Routine_Begin, VMS_TBT_Line_PC_Correlation): use it;
2922 (VMS_Global_Symbol_Spec, VMS_Procedure_Entry_Pt): treat
2923 Psect_Number as `unsigned'.
2924
2925 Thu Jan 26 17:06:28 1995 Pat Rankin (rankin@eql.caltech.edu)
2926
2927 * config/obj-vms.c: performance tuning.
2928 (VMS_Symbol_type_list): convert from single list head to small
2929 array of list heads;
2930 (SYMTYP_HASH): new macro for accessing VMS_Symbol_type_list[];
2931 (find_symbol, setup_basic_type, VMS_typedef_parse): use it;
2932 (VMS_RSYM_Parse): move S_GET_VALUE() inside switch to avoid
2933 calling it for uninteresting cases.
2934
b4682e51
JL
2935Wed Feb 1 23:52:45 1995 Jeff Law (law@snake.cs.utah.edu)
2936
2937 * config/tc-hppa.c (md_apply_fix): Go ahead and call
2938 hppa_field_adjust to get a new value for R_DATA_ONE_SYMBOL
2939 relocations in SOM.
2940 (hppa_fix_adjustable): Refine somewhat.
2941
e2bf6880
KR
2942Fri Jan 27 21:29:53 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2943
2944 * config/tc-ppc.h (NO_STRING_ESCAPES): Don't define if we are
2945 using ELF.
2946
a18a0f22
KR
2947Thu Jan 26 19:03:42 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2948
2949 * config/tc-h8300.c (get_specific): Add parens around | inside &.
2950 (skip_colonthing): Set L_8 if ":8" is specified.
2951
76e30835
ILT
2952Thu Jan 26 18:38:01 1995 Ian Lance Taylor <ian@cygnus.com>
2953
2954 * config/tc-ppc.c (md_begin): Permit mfdec to be duplicated on the
2955 601. Check that the error return from hash_insert is "exists".
2956
da8fa3ba
MM
2957Thu Jan 26 11:35:33 1995 Michael Meissner <meissner@cygnus.com>
2958
2959 * configure: Add support for configuring powerpc-*-eabi.
2960
2961 * config/tc-ppc.c (GOT_symbol): Define if object format is ELF.
2962
2963 * config/tc-ppc.h (GLOBAL_OFFSET_TABLE_NAME): Define if object
2964 format is ELF and not defined to be "_GLOBAL_OFFSET_TABLE_".
2965
8d9a1cce
JW
2966Wed Jan 25 16:23:13 1995 Jim Wilson <wilson@chestnut.cygnus.com>
2967
2968 * tc-sh.c (little): Add argument IGNORE to avoid compiler warnings.
2969 (md_pseudo_table): Add space for consistent formatting.
2970 (COND8_RANGE, COND12_RANGE): Delete unused macros.
2971 (COND8_F, COND8_M, COND12_F, COND12_M, UNCOND12_F, UNCOND12_M):
2972 Correct minimum and maximum branch offsets. Add comments explaining
2973 why these numbers are correct.
2974
1eeb357e
ILT
2975Wed Jan 25 15:32:09 1995 David Edelsohn <edelsohn@mhpcc.edu>
2976
2977 * config/tc-ppc.c (md_parse_option): Accept mpwr2 as a synonym for
2978 mpwrx; mppc32, m603, and m604 as synonyms for mppc; and mppc64 and
2979 m620 for PowerPC64 mode.
2980 (ppc_symbol_new_hook): Add T0 as synonym for TC0 suffix.
2981
f2224fe2
KR
2982Tue Jan 24 16:44:23 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2983
2984 * config/tc-vax.c (vip): Introduce new ptr-to-const local variable
2985 for scanning operand string.
2986
2987 Sat Jan 21 17:50:38 1995 Pat Rankin (rankin@eql.caltech.edu)
2988
2989 * config/vax-inst.h (struct vop, fields `vop_warn', `vop_error'):
2990 make them pointers to const char;
2991 (struct vit, field `vit_error'): ditto.
2992 * config/atof-vax.c (md_atof): rename local `littlenum_pointer'
2993 to `littlenumP' to avoid shadowing file scope variable.
2994 * config/tc-vax.c (vip_begin, vip_op_defaults, vip_op_1): make
2995 string arguments be pointers to const char;
2996 (vip): make `alloperr' const char *;
2997 (vip_op): make `err' and `wrn' const char *; rename `access' to
2998 `access_mode' to avoid shadowing library function.
2999 * config/obj-vms.c (`symbol_name'): make it const char *;
3000 (get_struct_name): cast one use of `symbol_name' to char *
3001 [caller guarantees that it won't modify the pointer's target];
3002 (PUT_COUNTED_STRING): use pointer to const char;
3003 (VMS_typedef_parse): make `pnt2' const char *;
3004 (Write_VMS_MHD_Records): make `cp' const char *;
3005 (VMS_Modify_Psect_Attributes, array `Attributes'): make const,
3006 and make field `Name' pointer to const char;
3007
3008 * as.h (`seg_name[]' declaration): pointers to const char;
3009 (struct _pseudo_type, field `poc_name'): pointer to const char.
3010 * subsegs.c (`seg_name[]' definition): ditto;
3011 * hash.c (hash_ask): rename argument `access' to `access_type'
3012 to avoid shadowing library function.
3013 * write.c (variable `the_object_file'): move from file scope
3014 to block scope within write_object_file(); free it after use;
3015 (fixup_segment): conditionally exclude it for OBJ_VMS.
3016 (cvt_frag_to_fill): rename argument `headers' to `headersP'
3017 to avoid shadowing file scope variable.
3018
359bb9a3
JL
3019Mon Jan 23 21:42:39 1995 Jeff Law (law@snake.cs.utah.edu)
3020
3021 * config/tc-hppa.c (pa_ip, case 'D'): Fix typo which caused
3022 miscompilation of "diag" instructions.
3023
73433384
KR
3024Mon Jan 23 15:51:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3025
3026 * configure: Regenerated.
3027
3028 * config/tc-mips.c: Include libiberty.h.
3029
eb10ff23
ILT
3030Mon Jan 23 14:07:58 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
3031
9cc7c60b
ILT
3032 * config/tc-sh.h (tc_init_after_args): Don't define.
3033 * config/tc-sh.c (md_begin): Remove unused variable table.
3034 (md_assemble): Remove unused variable p.
3035 (md_convert_frag): Cast fr_address to unsigned long for printf.
3036 (md_apply_fix): Use as_warn_where rather than as_warn.
3037 (sh_init_after_args): Remove empty function.
3038
eb10ff23
ILT
3039 * configure.in (i386-*-gnu*elf*): New target.
3040
be7571b6
ILT
3041Sat Jan 21 19:02:23 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
3042
3043 * hash.c (hash_ask): If we find the slot after wrapping around,
3044 break out of the loop. Fixes bug in Jan 18 change.
3045
b2683e09
KR
3046Fri Jan 20 17:07:31 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3047
3048 * hash.c (hash_code): Undo last change.
3049
8e86815b
KR
3050Thu Jan 19 14:49:47 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3051
11618ce8
KR
3052 * config/tc-alpha.c (alpha_ip): Initialize local variables to keep
3053 gcc quiet.
3054 (gpdisp_hi16_howto): Don't use "const" with reloc_howto_type.
3055 (in_range_signed): Add parens around subtraction inside shift.
3056 * gasp.c (do_data): Initialize local variable "opname".
3057 (istrue): Provide a default case to set "res" and keep "gcc -Wall"
3058 quiet.
3059 * write.c (write_contents): Deleted unused variable.
3060 (print_symbol_value_1): Declare.
3061 * hash.c (hash_ask): Delete disabled non-strcmp version of the
3062 code, and automatic variables used only in those sections.
3063 * write.c (chain_frchains_together_1): Only define local variable
3064 "prev_fix" if BFD_ASSEMBLER.
3065 * flonum-konst.c (dummy1): Return void.
3066 * config/tc-vax.c (md_assemble): Remove two comparisons of
3067 unsigned numbers versus zero.
b2683e09
KR
3068 * as.h (bcopy): If neither memcpy nor bcopy is defined as a macro,
3069 define to use memcpy.
11618ce8
KR
3070
3071 * config/tc-alpha.c, config/alpha-opcode.h: Revert 2 June changes.
3072 Turns out we never got the assignment done after all.
3073
8e86815b
KR
3074 Cleanup of VAX and VMS code, from Pat Rankin:
3075 * config/obj-vms.c: Changed exported function names to lower case.
3076 (Changed call sites in write.c.) Declare VMS system function
3077 names used, conditional on actually being on VMS. Changed many
3078 functions that returned no useful value to now be declared to
3079 return void. Removed many unused variables. Supply missing
3080 return statements or values. Supply `default' case in switch
3081 statements. Ensure local variables get initialized.
3082 * config/tc-vax.c: Minor changes to silence "gcc -Wall".
3083 * config/obj-vms.h, config/tc-vax.h: Added some missing
3084 declarations.
3085
29c8d82c
KR
3086Wed Jan 18 13:49:26 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3087
fca2796a
KR
3088 * atof-generic.c (flonum_print) [TRACE]: New function.
3089 (atof_generic) [TRACE]: Print multiplier before multiplication,
3090 and print multiplication result before and after copy.
3091
3092 * flonum-mult.c (flonum_multip): Avoid sign extension problems
3093 around multiplication operation.
3094
3095 * atof-generic.c (ASSUME_DECIMAL_MARK_IS_DOT): Define.
3096 (atof_generic) [ASSUME_DECIMAL_MARK_IS_DOT]: Check for '.'
3097 explicitly instead of calling strchr.
3098
29c8d82c
KR
3099 * config/tc-sparc.c (sparc_ip): When scanning successive opcode
3100 table entries, check names for pointer equality before doing
3101 string comparisons.
3102
3103 * hash.c (hash_ask): Call strcmp instead of expanding it inline.
3104 (hash_code): Replaced with a version from bfd.
3105
3106 * config/obj-coff.c (write_object_file): If COFF_FLAGS isn't
3107 defined, default it to zero.
3108
96d1566d
ILT
3109Wed Jan 18 12:16:07 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
3110
6ece68f0
ILT
3111 * write.c (fix_new_internal): Clear fx_bsr on those targets which
3112 use it.
3113
96d1566d
ILT
3114 * expr.c (operand): Parenthesize && within ||.
3115 * listing.c (listing_newline): Likewise.
3116 (list_symbol_table): Use %lu to print sizeof.
3117 * symbols.c: Comment out unused function indent.
3118 (print_symbol_value_1): Cast pointer to unsigned long for printf.
3119 * config/obj-coff.c (do_relocs_for): Only declare symbol_ptr if it
3120 will be used.
3121 * config/tc-h8300.c (md_begin): Remove unused variable reg.
3122 (get_operand): Declare type of parameter direction. Remove unused
3123 variable size.
3124 (get_specific): Fix comment to avoid nested comments.
3125 (check_operand): Cast X_add_number to unsigned long for printf.
3126 (build_bytes): Remove unused local variables output_ptr, part, and
3127 high.
3128 (build_bytes): Cast X_add_number to unsigned long for printf.
3129 (clever_message): Remove unused variable scan.
3130 (md_assemble): Remove unused variable i.
3131 (tc_coff_sizemachdep): Remove unused function.
3132 * tc-h8300.h (tc_reloc_mangle): Declare.
3133
23f61eaa
ILT
3134Tue Jan 17 10:58:06 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
3135
3136 * config/tc-mips.c (mips_4650): New static variable.
3137 (md_begin): Handle a cpu string of "4650". If mips_4650 was not
3138 initialized, set it to 0.
3139 (append_insn): Don't insert nops around HI and LO on a 4650.
3140 (mips_emit_delays): Likewise.
3141 (mips_ip): Use INSN_ISA mask to check ISA of instruction. Check
3142 for INSN_4650.
3143 (md_longopts): Add m4650 and no-m4650.
3144 (md_parse_option): Handle mips-cpu=4650. Handle -m4650 and
3145 -no-m4650.
3146 * doc/as.texinfo: Document new MIPS options.
3147
a11a8d55
SC
3148Sat Jan 14 23:48:13 1995 Steve Chamberlain <sac@jonny>
3149
3150 * config/tc-w65.c, config/tc-w65.h, config/w65.mt: Newfiles.
3151 * config/obj-coff.h: Cope with w65.
3152 * configure, configure.in: Recognize w65.
3153
3a762a0b
KR
3154Thu Jan 12 17:56:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3155
20323565
KR
3156 * app.c (do_scrub_next_char) [__GNUC__ && __OPTIMIZE__]: If `get'
3157 function is scrub_from_file, call scrub_from_file directly, and
3158 get gcc's inlining capability into the act.
3159
3a762a0b
KR
3160 * Makefile.in (VMS_OTHER_OBJS): Add ../libiberty/hex.o.
3161 (OBJS): Delete hex-value.o.
3162 (REAL_SOURCES): Delete hex-value.c.
3163 (hex-value.o): Delete dependencies.
3164 * hex-value.c: Deleted.
3165 * as.c (main): Call hex_init.
3166 * expr.c, config/tc-mips.c: Include libiberty.h. Replace
3167 hex_value array references with hex_* macros.
3168
c01ebe2a
KR
3169Wed Jan 11 17:51:38 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3170
3a762a0b
KR
3171 * config/tc-h8300.h (COFF_FLAGS): Don't define.
3172 * config/tc-h8500.h (COFF_FLAGS), config/tc-sh.h (COFF_FLAGS),
3173 config/tc-z8k.h (COFF_FLAGS): Ditto.
3174start-sanitize-rce
3175 * config/tc-rce.h (COFF_FLAGS): Ditto.
3176end-sanitize-rce
3177
3178 * config/obj-coff.c (KEEP_RELOC_INFO): Make sure it's always
3179 defined.
3180
c01ebe2a
KR
3181 * config/tc-m68k.c (m68k_ip, cases AOFF and AINDEX): Don't
3182 generate 68020 addressing modes for a 68000 processor.
3183 (md_estimate_size_before_relax, cases PCREL and PCLEA): Ditto.
3184
7a55f462
KR
3185Tue Jan 10 13:34:14 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3186
3187 * config/obj-coff.c (write_object_file): Don't treat h8300 and z8k
3188 specially with regard to fixups.
3189
aac4d5a7
KR
3190Mon Jan 9 16:22:28 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3191
483971bd
KR
3192 * config/tc-mips.c (RELAX_RELOC1, RELAX_RELOC2): Cast values to
3193 bfd_vma before subtracting.
3194
aac4d5a7
KR
3195 * config/obj-coff.c (size_section): Handle rs_space like rs_fill,
3196 but make sure fr_symbol is null.
3197 (fill_section): Ditto.
3198
1113140a
ILT
3199Sun Jan 8 16:14:19 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
3200
3201 * config/tc-mips.c (mips_ip): Fix handling of floating point
3202 values when GPOPT is not defined.
3203
2a6978af
KR
3204Fri Jan 6 16:59:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
3205
3206 * gasp.c: Include string.h. Put config.h before other includes.
3207
71f9b3c0
KR
3208 * config/tc-alpha.c (alpha_ip): Delay calls to emit_add64 until
3209 after any remaining operands are also known to match.
3210
f949f7b8
KR
3211Fri Dec 30 18:21:41 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3212
3213 * listing.c (list_symbol_table): Build a format string based on
3214 the size of the value to be printed, as long as "unsigned long" is
3215 at least as wide, after handling the special case of 4-byte
3216 values.
3217
84951544
KR
3218 * Makefile.in (dependencies): Make $(OBJS) depend on as.h and
3219 everything it includes. Delete those files from per-file
3220 dependencies.
3221
cd3b81bd
KR
3222 * as.h (relax_substateT): Now defined to be unsigned int.
3223 (relax_stateT): Separate typedef from enum definition.
3224 (enum _relax_state): Reordered for better punctuation. Added new
3225 values rs_align_code and rs_space.
3226 (lineno, struct lineno_struct): Unused, deleted.
3227
3228 * as.h: No longer include assert.h.
3229 (as_assert): Declare.
3230 (assert): New definition, calls as_assert longer needed.
3231 (__PRETTY_FUNCTION__): Provide default for older versions of gcc.
3232 * messages.c (as_assert): New function.
3233 * gdbinit.in: Put a breakpoint there.
3234
3235 * read.c (s_space): Rewrite to handle general expressions.
3236 Generate rs_space frags for non-constant values.
3237 * write.c (cvt_frag_to_fill): Treat rs_align_code and rs_space
3238 like rs_align and rs_org. Verify that fr_offset is non-negative,
3239 and force frag type to rs_fill only after assertion checks.
3240 (relax_segment): Treat rs_align_code like rs_align. Treat
3241 rs_space like rs_org in the first switch; in the second, force the
3242 operand to a constant, and use it for the growth size.
3243
582d2a4d
JL
3244Wed Dec 28 20:57:37 1994 Jeff Law (law@snake.cs.utah.edu)
3245
3246 * config/tc-hppa.c (pa_subspace): For sections with the ZERO
3247 attribute, set the "bss" field in the appropriate seginfo structure.
3248
4a9c666e
KR
3249Wed Dec 28 15:01:01 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3250
3251 * subsegs.h: Include obstack.h.
3252
3253Tue Dec 27 18:16:04 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3254
3255 * as.h (struct frag): Enable align* components now.
3256
7e2283d4
KR
3257Tue Dec 20 14:56:31 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3258
87e48495
KR
3259 * frags.c (frag_init): Call obstack_begin on `frags'.
3260 * subsegs.c (subsegs_begin): Don't do it here.
3261 * as.c (main): Call frag_init before subsegs_begin.
3262
3263 * frags.c (frag_append_1_char): New function.
3264 * frags.h (frag_append_1_char): Declare it.
3265 (FRAG_APPEND_1_CHAR): Call it. Old definition is commented out
3266 for now.
3267
3268 * as.h (struct frag): Added (but commented out) new fields for
3269 tracking current alignment.
3270 (frag_now_fix): Changed macro to function declaration.
3271 * frags.c (frag_now_fix): Define function here.
3272 (frag_new): Use it instead of accessing `frags' directly.
3273 * frags.h (frags): Change comment to indicate it shouldn't be
3274 accessed directly.
3275 * subsegs.h (struct frchain): New field frch_obstack, intended to
3276 eventually replace global `frags' obstack.
3277 * subsegs.c (subseg_set_rest): Use frag_now_fix instead of
3278 accessing `frags' directly. Initialize fields of new frchainS
3279 explicitly instead of with memset.
3280 * config/obj-coff.c (obj_coff_ln) [!BFD_ASSEMBLER]: Use
3281 frag_now_fix.
3282 * config/tc-mips.c (s_loc), config/obj-vms.c
3283 (vms_resolve_symbol_redef), symbols.c (colon): Likewise.
3284
9ad5755f
KR
3285 * config/tc-m68k.c (md_apply_fix_2): Use offsetT and addressT
3286 instead of long and unsigned long.
3287 (md_apply_fix): Cast value before passing it.
3288
d675782a
KR
3289 * config/obj-aout.h, config/obj-coff.c, config/obj-elf.h,
3290 config/obj-som.h, config/tc-h8500.c, config/tc-hppa.c,
3291 config/tc-hppa.h, config/tc-sh.c, config/tc-z8k.c: Don't rely on
3292 use of ".." when including header files.
3293start-sanitize-rce
3294 * config/tc-rce.c: Ditto.
3295end-sanitize-rce
3296
3297 * config/obj-coff.c (fixup_segment): Reformat condition in an `if'
3298 statement.
3299
7e2283d4
KR
3300 * Makefile.in (SUBDIR_INCLUDES): Deleted.
3301
972b2401
ILT
3302Tue Dec 20 13:40:36 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3303
3304 * config/obj-coff.h: Include bfd/libcoff.h, not libcoff.h.
3305
3306start-sanitize-arc
3307Tue Dec 20 09:10:40 1994 Doug Evans <dje@canuck.cygnus.com>
3308
3309 * config/tc-arc.c: Delete lots of sparc pseudo-ops.
3310end-sanitize-arc
3311
847a01cd
ILT
3312Mon Dec 19 16:53:36 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3313
3314 * config/tc-mips.c (load_register): Rewrite to handle O_big 64 bit
3315 constants.
3316 (mips_ip): Accept O_big constants in case 'I'. Change case
3317 'i'/'j' to treat an O_big constant as an out of range value.
3318
60937ce7
JL
3319Mon Dec 19 14:15:07 1994 Jeff Law (law@snake.cs.utah.edu)
3320
b8f7596c
JL
3321 * config/tc-hppa.c (pa_subspace): Make sure SEC_HAS_CONTENTS is
3322 clear for a section with the "ZERO" attribute.
3323
60937ce7
JL
3324 * Reduce useless symbols for ELF in an attempt to make smaller
3325 objects and speed up the linker.
3326 * config/tc-hppa.c (struct call_info): Replace end_symbol field
3327 with a size field.
3328 (hppa_elf_mark_end_function): Delete unneeded function.
3329 (pa_build_unwind_subspace): For the 2nd unwind relocation, use
3330 the function symbol + function size instead of a special symbol
3331 for the end of the function.
69cb5925 3332 (process_exit): Compute the function size here. Don't call
60937ce7
JL
3333 hppa_elf_mark_end_of_function anymore.
3334 (pa_procend): Likewise.
3335 (hppa_fix_adjustable): Only reject 32bit relocations for SOM.
3336 (elf_hppa_final_processing): Simplify.
3337
88cc1324
DE
3338start-sanitize-arc
3339Mon Dec 19 12:57:09 1994 Doug Evans <dje@canuck.cygnus.com>
3340
3341 * config/tc-arc.c (arc_insert_operand): Change reg parm to pointer
3342 to table entry. All callers changed.
3343 (md_shortopts): New argument -mmult.
3344 (md_parse_option): Recognize it.
3345 (md_show_usage): Print it.
3346 (md_begin): If -mmult, say we have the new multiply and shift insns.
3347 (md_assemble): Fix reloc generation for 32 bit immediate values.
3348 Clean up modifier handling. Try next insn if fake operand says there's
3349 an error. Update to new syntax of insertion/extraction fns.
3350 Recognize predefined aux regs. Don't abort if insertion fn missing.
3351end-sanitize-arc
3352
703139a8
KR
3353Mon Dec 19 13:49:07 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3354
5cda0c7a
KR
3355 * configure.in: Recognize mips-sony-bsd and mips-dec-bsd, but
3356 reject other vendors until we can be sure we're consistent with
3357 bfd.
3358
703139a8
KR
3359 * config/obj-vms.c (Create_VMS_Object_File): Instead of formatting
3360 a buffer to pass to `error', just call `as_fatal' directly.
3361 (VMS_Psect_Spec): Ditto.
3362 (VMS_TBT_Module_Begin, VMS_TBT_Source_File, gen1,
3363 VMS_typedef_parse, VMS_LSYM_Parse, VMS_Emit_Globalvalues): Call
3364 as_tsktsk instead of printf.
3365 (VMS_TBT_Module_Begin, VMS_TBT_Line_PC_Correlation,
3366 VMS_TBT_Source_File, VMS_TBT_Source_Lines,
3367 VMS_Store_Repeated_Data, VMS_Check_For_Main): Use explicit
3368 integers rather than sizeof expressions using basic integer types,
3369 in case host and target aren't the same. Use memcpy or COPY_*
3370 macros instead of possibly unaligned word or longword assignment.
3371
3372 * config/obj-vms.h (OBJ_SYMFIELD_TYPE): New macro.
3373 * config/obj-vms.c (VMS_Store_PIC_Symbol_Reference,
3374 VMS_Check_For_Main, VMS_write_object_file): Use sy_obj instead of
3375 forcing sy_number to hold a pointer.
3376
b63defaa
KR
3377Fri Dec 16 14:40:16 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3378
d6905776
KR
3379 * config/tc-sh.c (md_begin): Don't fill in md_relax_table here.
3380 (md_relax_table): Use static initialization.
3381
091f3a62
KR
3382 * config/tc-h8300.c (parse_exp, get_operands, clever_message,
3383 md_assemble, tc_crawl_symbol_chain, md_undefined_symbol,
3384 tc_headers_hook, md_operand, md_number_to_chars): Don't use DEFUN.
3385
b63defaa
KR
3386 * Makefile.in (CHECKFLAGS): Don't pass AS_FOR_TARGET,
3387 CC_FOR_TARGET, OBJDUMP_FOR_TARGET, NM_FOR_TARGET; they're not
3388 used.
3389 (AS_FOR_TARGET, CC_FOR_TARGET, OBJDUMP, OBJDUMP_FOR_TARGET, NM,
3390 NM_FOR_TARGET): Don't define.
3391 (VMS_OTHER_OBJS): Add xmalloc.o and xexit.o from libiberty.
3392 (tooldir): Use exec_prefix, not libdir.
3393
719153bf
SS
3394Fri Dec 16 11:07:10 1994 Stan Shebs <shebs@andros.cygnus.com>
3395
254603ca
SS
3396 * config/obj-coff.h: Include libcoff.h, not ../bfd/libcoff.h.
3397
719153bf
SS
3398 * as.h: Include progress.h.
3399 * as.c (main): Call START_PROGRESS and END_PROGRESS.
3400 (main, perform_an_assembly_pass): Call PROGRESS.
3401
0141b6c2
ILT
3402Fri Dec 16 00:46:08 1994 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
3403
3404 * write.c (adjust_reloc_syms): Use bfd_is_und_section and
3405 bfd_is_abs_section rather than comparing against &bfd_und_section
3406 and &bfd_abs_section.
3407
8b1f3552
JW
3408Thu Dec 15 15:27:14 1994 Jim Wilson <wilson@chestnut.cygnus.com>
3409
3410 * config/tc-sh.c (md_begin): Use a local variable when
3411 initializing md_relax_table to avoid errors about modifying a
3412 const data structure.
3413
7ac36f64
ILT
3414Tue Dec 13 15:42:27 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3415
3416 * config/tc-ppc.c (tc_gen_reloc): Remove OBJ_ELF hack which
3417 appears to no longer be needed.
3418
6baef6d2
ILT
3419Tue Dec 13 08:04:15 1994 Ian Lance Taylor <ian@cygnus.com>
3420
3421 * config/tc-mips.c (macro_build): Accept BFD_RELOC_PCREL* without
3422 requiring that the X_op_symbol be in the text_section.
3423 (macro): Change the test for a legel expression difference to
3424 correspond to changes in pseudo_set in read.c.
3425
bd869652
KR
3426Fri Dec 9 21:04:17 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3427
a55774a1
KR
3428 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Use
3429 bfd_install_relocation.
3430
3504635a
KR
3431 * ecoff.c (ecoff_set_gp_prolog_size): If there is no current
3432 routine, just return.
3433
bd869652
KR
3434 * config/tc-alpha.c (alpha_ip, case 'B', subcase 'c'): Use opcode
3435 value from pattern instead of assuming jsr.
3436 * config/alpha-opcode.h (jmp): Add a "1,Bc" form.
3437
4181c985
KR
3438Thu Dec 8 17:48:25 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3439
b8f52750
KR
3440 * Makefile.in (NM_FOR_TARGET): Use ../binutils/nm.new, not just
3441 plain nm.
3442
4181c985
KR
3443 * configure.in (ns32k-pc532-mach*): Select correct emulation.
3444 (mips-sony-bsd*): Use ecoff.
c5745996 3445 (mips-*-gnu*): New target, using aout format, from Roland McGrath.
4181c985
KR
3446 * configure: Regenerated.
3447
6ea93cc9
DE
3448start-sanitize-arc
3449Tue Nov 29 18:12:22 1994 Doug Evans <dje@canuck.cygnus.com>
3450
3451 * configure.in (arc-*-elf*): Recognize.
3452 * configure: "regenerated".
4181c985 3453 * config/tc-arc.c, config/tc-arc.h, config/arc.mt: New files.
6ea93cc9
DE
3454end-sanitize-arc
3455
75af551f
KR
3456Tue Nov 29 13:58:10 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3457
d2a0c9f9
KR
3458 Use libiberty version of xmalloc:
3459 * Makefile.in (REAL_SOURCES): Delete xmalloc.c.
3460 (OBJS): Delete xmalloc.o.
3461 (xmalloc.o): Delete dependencies.
3462 * as.c (main): Call xmalloc_set_program_name once program name is
3463 known.
3464
75af551f
KR
3465 * config/tc-alpha.c (in_range_signed, in_range_unsigned): New
3466 routines, split from in_range.
3467 (in_range): Deleted. All calls changed to in_range_*signed.
3468 (create_lita_section): Macro deleted. Single use expanded in
3469 place.
3470 (alpha_ip): Handle `t' and `8' operand types.
3471 (md_apply_fix): Handle BFD_RELOC_12_PCREL. Print name of
3472 unhandled relocation types.
3473 * config/alpha-opcode.h: Added HALT and DRAINA. Disabled MOVI,
3474 since it doesn't work, and isn't supported by the native
3475 assembler.
3476
3477 * input-scrub.c: Change wording of a comment to avoid interference
3478 with Cygnus source-control tools.
3479
3480 * as.h (errno) [NEED_DECLARATION_ERRNO]: Declare.
3481
3482 * config/tc-m68k.c (init_table): List buscr and pcr control
3483 registers.
3484 (m68k_ip, case 'J'): Handle them.
3485
23c17fea
KR
3486 Delete signal handler code. It's been disabled since March 1993
3487 without complaints.
3488 * as.c: Don't include signal.h.
3489 (got_sig): Unused function deleted, declaration deleted.
3490 (SIGTY): Macro deleted.
3491 (main): Deleted disabled code for establishing signal handler.
3492
4181c985 3493start-sanitize-rce
75af551f
KR
3494 Tiemann should've noted something like this:
3495 * config/tc-rce.c, config/tc-rce.h: New files.
3496 * as.c (main) [TC_RCE]: Call dump_literals.
3497 * configure.in: Handle rce-*-aout.
3498 * configure: Regenerated.
4181c985 3499end-sanitize-rce
75af551f 3500
326fe1a3
DE
3501Mon Nov 28 11:37:35 1994 Doug Evans <dje@canuck.cygnus.com>
3502
3503 * app.c (do_scrub_next_char): Insert missing newline at end of file
3504 like warning says we do.
3505
e07f8926
JL
3506Mon Nov 28 00:11:15 1994 Jeff Law (law@snake.cs.utah.edu)
3507
3508 * config/tc-hppa.h (pa_check_eof): Declare new extern function.
3509 (tc_frob_file): Define to call pa_check_eof.
3510
3511 * config/tc-hppa.c (pa_check_current_space_and_subspace): New
3512 function to verify the current space and subspace are reasonable.
3513 Call for the appropriate pseudo-ops and before instruction parsing.
3514 (pa_check_eof): New function to verify enter/exit and proc/procend
3515 pairs match at EOF.
3516 (pa_code): Simplify.
3517
3518 * config/obj-som.c: Delete #if 0 code.
3519
3f67e000
SC
3520Wed Nov 23 19:36:09 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3521
3f81f3cf
MM
3522 * config/obj-coff.h (TARGET_FORMAT): Select between coff-shl and
3523 coff-sh.
3f67e000
SC
3524 * config/sh.mh (TARG_CPU_DEPENDENTS): Get it right.
3525 * config/tc-sh.c (little): New function.
3526 (md_parse_option): Notice new option.
3527 (build_relax, build_Mytes, md_atof, md_convert_frag, md_apply_fix):
69cb5925 3528 Cope with little endian data.
3f67e000
SC
3529 * config/tc-sh.h (COFF_MAGIC, LISTING_HEADER): Endian dependent.
3530
32c7d5d8
JL
3531Wed Nov 23 10:54:38 1994 Jeff Law (law@snake.cs.utah.edu)
3532
3533 * config/tc-hppa.c (tc_gen_reloc, ELF variant): Revert last
3534 change. The real bug was in bfd/elfcode.h and has been fixed.
3535
740e5428
JL
3536Tue Nov 22 23:31:20 1994 Jeff Law (law@snake.cs.utah.edu)
3537
3538 * config/tc-hppa.c (tc_gen_reloc, ELF variant): Add section->vma
3539 to the relocation's offset.
3540
aa30c7ee
SC
3541Tue Nov 22 14:37:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3542
3543 * Makefile.in (INSTALL_XFORM): Fix typo.
3544
3a443b1e
C
3545Tue Nov 22 10:23:25 1994 J.T. Conklin <jtc@rtl.cygnus.com>
3546
3547 * config/tc-alpha.c (s_alpha_set): Ignore the .set (no)move and
3548 .set (no)volatile directives.
3549
e67b3aa3
JL
3550Tue Nov 15 21:44:13 1994 Jeff Law (law@snake.cs.utah.edu)
3551
3a443b1e
C
3552 * config/tc-hppa.c (pa_subspace): Make sure to always reset
3553 current_subspace.
3554 (pa_text, pa_data): Likewise.
3555
e67b3aa3
JL
3556 * config/tc-hppa.c (pa_align): New function. Aligns the current
3557 offset within the current subspace along with updating the
3558 alignment of the subspace itself.
3559 (pa_subspace): Default alignment to one byte rathern than zero
3560 bytes to avoid setting alignment to log2(0).
3561 (md_pseudo_table): Use pa_alignment for .align.
3562
8de6b5f8
KR
3563Tue Nov 15 15:24:45 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3564
3565 * messages.c (as_fatal): Always put a space after "fatal error:"
3566 when printing message.
3567
1a9a95bb
JL
3568Tue Nov 15 11:10:43 1994 Jeff Law (law@snake.cs.utah.edu)
3569
3570 * config/tc-hppa.h (obj_frob_symbol): Delete.
3571 (tc_frob_symbol): Make definition conditional on OBJ_SOM or
3572 OBJ_ELF. For ELF subtract out symbol->section->vma for non common
3573 symbols.
3574
757d4129
KR
3575Wed Nov 9 14:53:03 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3576
3577 * config/te-delta.h: New file, derived from te-sysv32.h.
3578
642b6186
ILT
3579Wed Nov 9 11:52:44 1994 Ian Lance Taylor (ian@cygnus.com)
3580
3581 * config/tc-ppc.c (ppc_bf): Always set coff_line_base.
3582
f4c01c95
KR
3583Mon Nov 7 01:58:49 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3584
642b6186
ILT
3585 * Makefile.in (VERSION): Bump to 2.5.3.
3586
3e7acf98
KR
3587 * configure.in: Compare generic cpu name against "sparc", not
3588 "sparc*", since sparc variants should be changed to "sparc".
3589 * configure: Regenerated with autoconf 2.1.
3590
f4c01c95
KR
3591 * config/tc-a29k.c (octal, toHex): Variables deleted.
3592 (isoctal): Macro deleted.
3593 (md_begin): Don't initialize them.
3594 (machine_ip, case 'P'/'A'): For absolute operand, generate an
3595 error message if it's out of range.
3596 (md_apply_fix, case RELOC_JUMPTARG): Check range for PC-relative
3597 jumps.
3598 (md_apply_fix): Delete code inside "#if 0".
3599
5b162d37
KR
3600Thu Nov 3 20:20:40 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3601
b4123234
KR
3602 * config/go32.mh: Unused file deleted.
3603
5b162d37
KR
3604 * read.c (get_absolute_expression): Indicate that the error may
3605 merely be that the expression can't currently be reduced.
3606
0cb42d6f
C
3607Thu Nov 3 16:09:59 1994 J.T. Conklin (jtc@rtl.cygnus.com)
3608
3609 * config/tc-m68k.h (TARGET_FORMAT): If TE_NetBSD define as
3610 "a.out-m68k-netbsd".
3611 * config/tc-sparc.h (TARGET_FORMAT): If TE_NetBSD define as
3612 "a.out-sparc-netbsd".
3613
3614 * config/te-nbsd.h: New file, NetBSD target emulation
3615 * config/te-netbsd.h: Removed.
69cb5925 3616 * configure.in (i[345]86-*-netbsd*,m68*-*-netbsd*,sparc*-*-netbsd*):
0cb42d6f
C
3617 Set bfd_gas. Use nbsd emulation.
3618
f2889110
KR
3619Thu Nov 3 17:44:47 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3620
3621 Changes from net 2.5.2 release branch:
3622
3623 * configure.in: Put AC_DEFINE(sparcv9) on its own line, so that
3624 the shell variable settings associated with it are permanent. For
3625 CPUs requiring bfd_gas=yes, select it based on CPU only, not
3626 individual target names. Handle m68k-hp-hpux*, not just -hpux.
3627
3628 * config/tc-z8k.c (tc_coff_symbol_emit_hook): Add dummy argument
3629 to match prototype in obj-coff.h.
3630
3631 * configure.in: Skip tests for defining WANT_FOPEN_BIN and
3632 IBM_COMPILER_SUX.
3633 * acconfig.h: Deleted them.
3634 * configure, conf.in: Rebuild with autoconf 2.0.
3635 * config/go32.cfg, config/vms-conf.h: Updated.
3636
3637 * config/tc-m68k.c (md_apply_fix_2, md_convert_frag_1): Always use
3638 IBM_COMPILER_SUX version of code, with comments indicating why.
3639
3640 * listing.c (file_info): Use text mode when opening file for read.
3641 Use "r" directly, no macro.
3642 * input-file.c (input_file_open): Don't use FOPEN_RT, just use
3643 "r".
3644 * read.c (s_include): Ditto.
3645 * output-file.c (output_file_create): Try both "wb" and "w", don't
3646 bother with FOPEN_* macros.
3647 * as.h: Don't include fopen-*.h.
3648
3649 * config/alpha-opcode.h: Make "ret" with no operands equivalent to
3650 "ret zero,(ra)", to match OSF1 and to be consistent with both
3651 one-operand forms.
3652
3653 Patches from DJ Delorie:
3654 * as.h (alloca): undef alloca before defining it just in case
3655 * config/go32.cfg: new file for autoconf values
3656 * config/te-go32.h: new file
3657 * configure.bat: new for autoconf
3658
3659 * config/tc-i386.c (md_assemble): Fix typo in GOTPC check; had =
3660 for ==.
3661
3662 * configure.in: If target_frag doesn't exist, use /dev/null.
3663
3664 * as.c (parse_args): For non-VMS systems, re-add `v' to
3665 std_shortopts. Add "verbose" to list of long options.
3666
3667 * write.c (adjust_reloc_syms): When generating an absolute section
3668 symbol as a placeholder, don't mark it as used in a relocation
3669 entry, here.
3670
3671 * Makefile.in (comparison): Compare using makefile code from gcc,
3672 stripped down to discard subdir stuff and adapted to give a
3673 non-zero exit status if either file differs.
3674
a2c49209
ILT
3675Thu Nov 3 15:43:02 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3676
3677 * config/tc-mips.c (load_address): Fix RELAX_ENCODE arguments for
3678 NO_PIC case.
3679
2622a6c2 3680Tue Nov 1 16:10:59 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
da15a93e
ILT
3681
3682 * config/tc-mips.c (s_change_sec): If not GPOPT, don't permit
3683 switching to the readonly data section.
2622a6c2
ILT
3684
3685 * ecoff.c (ecoff_directive_type): Fix warning message.
3686
ec11c09c
JL
3687Sun Oct 30 00:57:35 1994 Jeff Law (law@snake.cs.utah.edu)
3688
3689 * config/tc-hppa.c (pa_proc): Delete disabled code to put each
3690 proc in its own subspace, we're not going to use it.
3691
4bb0cc41
ILT
3692Tue Oct 25 14:44:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3693
94b68f04
ILT
3694 * config/tc-mips.c (macro): Ensure that mips2 case of M_LI_DD in
3695 .rdata does not become a variant frag.
3696
4bb0cc41
ILT
3697 * config/tc-mips.c (mips_cpu): Initialize to -1.
3698 (md_begin): Don't mips_cpu if it was already set.
3699 (md_parse_option): For -mipsN, don't set mips_cpu if it was
3700 already set. For -mcpu=, just set mips_cpu, not mips_isa.
3701
9da4c5d1
ILT
3702Fri Oct 21 20:42:29 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3703
3704 * config/tc-mips.c (md_pseudo_table): If OBJ_ELF, handle .section.
3705 (s_elf_section): New static function.
3706 * ecoff.c (ecoff_build_symbols): Don't abort if we don't recognize
3707 the section when setting the storage class; default to sc_Data.
3708
e443a021
JL
3709Thu Oct 20 00:43:38 1994 Jeff Law (law@snake.cs.utah.edu)
3710
3711 * config/tc-hppa.c (md_apply_fix): Set new_val to 8 for all
3712 fixups to branch instructions (not just pc-relative ones) which
3713 will generate SOM relocations.
3714
030915dc
ILT
3715Wed Oct 19 13:41:56 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3716
3717 * config/tc-a29k.c: Include ctype.h with angle brackets.
3718 (define_some_regs): Add new special register names defined on the
3719 29040.
3720 (parse_operand): Add argument opt. If non-zero, don't warn about
3721 a missing operand.
3722 (machine_ip): If handling argument type 'I', pass opt as non-zero
3723 to parse_operand. Handle new optional operand type 'I'.
3724 (md_undefined_symbol): Handle special register names (srNN).
3725
683f4743
ILT
3726Tue Oct 18 00:45:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3727
3728 * write.c (renumber_sections): New static BFD_ASSEMBLER function.
3729 (write_object_file): Call it after removing gas created sections.
3730
f10a96cb
ILT
3731Mon Oct 17 18:06:05 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3732
62d39689
ILT
3733 * symbols.c (symbol_create): Use udata.p, not just udata.
3734 * config/obj-elf.c (obj_ecoff_set_ext): Likewise.
3735 (elf_get_extr): Likewise.
3736
f10a96cb
ILT
3737 * read.c (read_a_source_file): The second argument to as_where is
3738 unsigned int *, not int *.
3739
3740Mon Oct 17 02:26:32 1994 Jeff Law (law@snake.cs.utah.edu)
3741
3742 * config/tc-hppa.c: Eliminate all uses of fx_addnumber.
3743 (tc_gen_reloc): Simplify. It's no longer necessary to set a
3744 reloc's addend field to zero for function symbols.
3745 (md_apply_fix): Simplify. For fixups which will require a SOM
3746 reloc, just clear out the necessary bits in the output file.
3747
2d928291
KR
3748Fri Oct 14 19:06:46 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3749
3750 * Makefile.in (BISON): Use bison -y, not bison.
3751
3752Thu Oct 13 19:22:54 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3753
3754 * Makefile.in (VERSION): Updated to 2.5.
3755 (clean-here): Delete stamp-mk.com.
3756 (distclean): Delete .gdbinit.
3757 * Version 2.5 released.
3758
ba49e48d
KR
3759Wed Oct 12 20:30:51 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3760
3761 * config/te-nbsd532.h: Renamed from te-netbsd532.h.
3762 * configure.in, configure: Adjusted.
3763
4992dbc9
C
3764Wed Oct 12 16:33:38 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
3765
3766 * config/cplus-dem.c: Removed. It isn't used. Even if it was,
3767 it's better to use the one in libiberty.
3768
2cc0357f
KR
3769Wed Oct 12 18:48:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3770
3771 * symbols.c (resolve_symbol_value, case O_symbol): Undo last
3772 change; it breaks the rs6000 support, and doesn't seem to be
3773 needed.
3774
eab55c1c
C
3775Wed Oct 12 11:56:50 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
3776
3777 * config/tc-i386.h,te-netbsd532.h (TARGET_FORMAT): Changed to
3778 a.out-<arch>-netbsd to match corresponding changes in BFD.
3779
f0b556a2
ILT
3780Wed Oct 12 11:06:11 1994 Ian Lance Taylor (ian@cygnus.com)
3781
3782 * config/tc-ppc.c (ppc_fix_adjustable): Resolve symbol values
3783 rather than explicitly adding the frag address.
3784 * config/obj-coff.c (coff_frob_symbol): Add a zero entry to mark
3785 the end of the line numbers; this replaces the zero entry which
3786 used to be added by coff_add_linesym, removed Oct 7.
3787 (coff_adjust_section_syms): Ignore sections with no seginfo.
3788
3256c4b5
KR
3789Wed Oct 12 01:41:37 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3790
3791 * Makefile.in (bootstrap, bootstrap2, bootstrap3): Create a
3792 "stage" symlink to the appropriate stage* directory, and use it
3793 instead in the -B options.
3794 (comparison): Revert yesterday's change.
3795
15dc8a20
KR
3796Tue Oct 11 16:48:11 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3797
3798 * config/tc-sparc.c (tc_gen_reloc): For non-a.out relocations, if
3799 pc-relative, use fx_offset only, ignore address of relocation.
3800
c8caa6c5
ILT
3801Tue Oct 11 15:24:00 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3802
3803 * config/tc-mips.c (mips_ip): Don't use S_IS_LOCAL when checking
3804 for an embedded PIC switch expression, since the definition of
3805 S_IS_LOCAL was changed.
3806
6d60424f
KR
3807Tue Oct 11 15:05:11 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3808
3809 * Makefile.in (comparison): When comparing as.new or gasp.new, try
3810 running the binary through sed to avoid differences due to
3811 "stage1" or "stage2" having been written into the binary.
3812
15a90f75
KR
3813Sat Oct 8 01:48:04 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3814
3815 ELF symbol size handling, based on code from Eric Youngdale:
3816 * config/obj-elf.h (OBJ_SYMFIELD_TYPE): New macro. Adds an
3817 expression pointer to the symbol structure, used for `size'
3818 expressions that couldn't be reduced to constants when initially
3819 processed.
3820 (elf_frob_symbol): Declare.
3821 (obj_frob_symbol): Call elf_frob_symbol always, rather than
3822 ecoff_frob_symbol only if ECOFF_DEBUGGING defined.
3823 * config/obj-elf.c (obj_symbol_new_hook): Deleted unused code.
3824 Clear sy_obj field.
3825 (obj_elf_size): Deleted unused code. If size is non-reducible
3826 expression, allocate some storage for the sy_obj field and copy
3827 the expression.
3828 (elf_frob_symbol): New function. Computes sizes, calls
3829 ecoff_frob_symbol if appropriate.
3830
3831 * write.c (fixup_segment): For i386 elf and coff (for now), don't
3832 add in value of symbol from another defined section of the file.
3833
ecee4027
KR
3834Fri Oct 7 17:54:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3835
3836 * config/tc-m88k.h (TC_KEEP_FX_OFFSET): Define.
3837 * config/obj-coff.c (do_relocs_for): Test only TC_KEEP_FX_OFFSET,
3838 rather than both it and TC_M88K.
3839 (coff_adjust_section_syms): New function.
3840 (coff_frob_section): For non-empty sections, create aux entry for
3841 the section symbol, indicating the size.
3842 (n_line_nos): New variable.
3843 (add_lineno): Increment it.
3844 (coff_add_linesym): Increment n_line_nos, don't call add_lineno.
3845 (coff_frob_file): New function; map coff_adjust_section_syms over
3846 sections.
3847 (obj_coff_line): Only reset line_base for .bf symbols.
3848 * config/obj-coff.h (coff_adjust_section_syms, coff_frob_file):
3849 Declare.
3850 (obj_frob_file): New macro.
3851
3852 * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Renamed from
3853 obj_frob_forward_symbol, and rewritten for new parameter list.
3854
3855 Mon Oct 3 21:02:38 1994 Pat Rankin (rankin@eql.caltech.edu)
3856
3857 * config/obj-vms.h (S_IS_LOCAL): fix obsolete flagseen[] reference.
3858
3859Wed Oct 5 11:49:26 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
3860
3861 * config/obj-ecoff.c (obj_pseudo_table): Accept .esize and .etype
3862 as synonyms for .size and .type.
3863
b2d7b325
ILT
3864Wed Oct 5 00:08:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3865
3866 * config/obj-coff.c (coff_frob_section): Remove assert about
3867 section alignment.
3868 * config/tc-sparc.c (md_section_align): Use section alignment, not
3869 xvec align_power_min field.
3870
dc87e0ce
KR
3871Fri Sep 30 19:05:20 1994 Pat Rankin (rankin@eql.caltech.edu)
3872
3873 * vmsconf.sh (make-gas.com): handle DCL verification to enable
3874 sensible feedback to the user while gas is being built.
3875
76a390e2
KR
3876Fri Sep 30 16:23:31 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3877
13a336c4
KR
3878 * Makefile.in (DISTSTUFF): New variable, listing only make-gas.com
3879 for now.
3880 (diststuff): New target; builds DISTSTUFF.
3881 (realclean): Separate target, depend on clean and distclean, then
3882 delete DISTSTUFF.
dc87e0ce
KR
3883 * make-gas.com: Deleted.
3884
76a390e2
KR
3885 * config/tc-i386.c (i386_validate_fix) [BFD_ASSEMBLER]: New
3886 function. Converts reloc for "foo-GOT" to BFD_RELOC_386_GOTOFF
3887 reloc for "foo".
3888 (i386_operand): Don't look up section symbol for
3889 undefined_section.
3890 (reloc): Always permit return of 8- and 16-bit relocation types.
3891 Add a space after "pc-relative" in the error message.
3892 (tc_i386_fix_adjustable) [BFD_ASSEMBLER]: Reject
3893 BFD_RELOC_386_GOTOFF relocs.
3894 (i386_operand): For any GOTOFF reloc, convert it to a BFD_RELOC_32
3895 with a "foo-GOT" value.
3896 * config/tc-i386.h (i386_validate_fix): Declare it.
3897 (TC_VALIDATE_FIX): New macro -- call it.
3898 (NOP_OPCODE): Cast to `char' to avoid compiler warnings.
3899
3900 * as.h: If __STDC__ is not defined and varargs.h is available, use
3901 it rather than stdarg.h.
3902
3903 * write.h (struct fix): Added new bitfield fx_plt, for fixups
3904 referring to PLT entries.
3905 * write.c (fix_new_internal): Initialize fx_plt to zero.
3906 (adjust_reloc_syms): Re-fetch `sym' after top of reduction loop.
3907 Don't adjust fx_offset by frag address, since S_GET_VALUE now
3908 includes the frag address.
3909 (fixup_segment): Changed local var PCREL to type int, added PLT.
3910 If PC-relative fixup refers to a PLT entry for a symbol in the
3911 current section, don't reduce it.
3912
3913 * write.c (adjust_reloc_syms): Exit loop through a label. If
3914 DEBUG5 is defined, print out each fixup before and after
3915 processing.
3916 (fixup_segment): If DEBUG5 is defined, print out each fixup before
3917 and after processing.
3918 (print_fixup): Added prototype. Show address on first line. Show
3919 fx_offset and fx_subsy. [!BFD_ASSEMBLER]: Only show fx_r_type if
3920 NEED_FX_R_TYPE is defined.
3921
3922 * symbols.c (print_symbol_value_1): Check S_IS_LOCAL, S_IS_EXTERN,
3923 S_IS_DEBUG, S_IS_DEFINED also.
3924
9dc6c00f
KR
3925Thu Sep 29 18:57:06 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3926
10ff87e9
KR
3927 * Makefile.in (all): Depend on .gdbinit.
3928 (.gdbinit): Rebuild from gdbinit.in by running config.status.
3929
3930 * gdbinit.in: Define new function "pf". Fix doc on "pe" and "ps".
3931
9dc6c00f
KR
3932 * write.c (print_fixup): Print source location on first line.
3933 Show fx_r_type and fx_addsy fields.
3934
648acaa0
KR
3935Wed Sep 28 14:56:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3936
b8480abc
KR
3937 * configure.in: Set bfd_gas for all sparc targets in one place,
3938 instead of separately for each. Correctly handle user-supplied
3939 "--enable-bfd-gas" option.
3940
3941 * gdbinit.in: Move "break abort" to end, in case gdb complains.
3942
3943 * as.h (PRINTF_WHERE_LIKE, PRINT_LIKE) [USE_STDARG, !__GNUC__]:
3944 Use PARAMS macro.
3945
3946 * symbols.c (resolve_symbol_value, case O_symbol): Don't do any
3947 processing if add_symbol is undefined or in expr_section.
3948 (resolve_symbol_value, case O_add): For symbol plus
3949 constant-valued symbol, convert to O_symbol and re-reduce.
3950 (S_GET_VALUE): If symbol needs resolving, resolve it.
3951 (indent_level): No longer static.
3952 (print_symbol_value_1): Don't print frag address if it matches
3953 zero_address_frag. Don't print "resolving" if already resolved.
3954 Print segment name. Don't call print_expr_1 on an undefined
3955 symbol.
3956 (print_expr_1): Fix whitespace before printing X_add_number.
3957
648acaa0
KR
3958 * expr.c (make_expr_symbol): No longer static. Use symbol_create,
3959 not symbol_new, for symbols holding expression values.
3960 * expr.h (make_expr_symbol): Move declaration here.
9ff0f5ef
KR
3961 * write.c (fix_new_exp): Handle O_add by creating an
3962 expression-valued symbol, and calling fix_new_exp recursively.
3963 (adjust_reloc_syms): If a fixup's symbol value is a sum of an
3964 undefined symbol and a constant, fold the constant into the fixup,
3965 and refer to the undefined symbol directly. Then process the
3966 fixup again from scratch.
3967 (write_object_file): Before calling adjust_reloc_syms, make a pass
3968 through the symbol list trying to resolve values.
3969
3970 * write.c (print_fixup): New routine, for debugging.
3971 (write_relocs): Call bfd_install_relocation. Deleted various
3972 hacks for working around problems with bfd_perform_relocation.
3973
3974 * Makefile.in (VERSION): Update to 2.4.90.
648acaa0 3975
7b777690
ILT
3976Wed Sep 28 11:50:40 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3977
620a590e
ILT
3978 * Makefile.in (gasp.o): Depends upon config.h.
3979
3f42c69e
ILT
3980 * config/tc-mips.c: Include subsegs.h.
3981 (md_apply_fix): If an unconditional b or bal overflows, and we are
3982 not assembling PIC code, replace it with a j or jal.
3983
7b777690
ILT
3984 * config/tc-mips.c (md_apply_fix): Correct branch overflow test.
3985 Use as_bad_where and as_warn_where rather than as_bad and as_warn.
3986
3987Mon Sep 26 17:15:59 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3988
3989 * write.c (write_relocs): Add file name and line number to
3990 as_fatal calls. Handle bfd_reloc_overflow case specifically when
3991 RELOC_EXPANSION_POSSIBLE.
3992
3993Fri Sep 23 16:11:28 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3994
3995 * as.h (USE_STDARG, USE_VARARGS): Define one or neither of these
3996 here. Use them for deciding which PRINTF*LIKE macro definitions
3997 to use.
3998 * messages.c: Use them, instead of NO_STDARG, NO_VARARGS.
3999 [!USE_STDARG && !USE_VARARGS] (va_alist, va_dcl, ...): Provide
4000 default definitions matching what we were doing before.
4001 (as_tsktsk): Remove the non-stdarg, non-varargs version, and
4002 always use the varargs form if not using stdarg. It's safe to
4003 always use vfprintf, because libiberty will provide it if the
4004 native system doesn't. Also, always make format be const.
4005 (as_warn, as_warn_where, as_bad, as_bad_where, as_fatal): Ditto.
4006
144659ab
ILT
4007Fri Sep 23 14:42:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4008
4009 * config/tc-mips.c (load_register): Always use addiu when adding a
4010 constant to $zero--no need to use daddiu.
4011 (macro): Hack the -mips3 overflow tests to not fail when offsetT
4012 is only 32 bits.
4013
4014 * symbols.h (copy_symbol_attributes): Declare.
4015
4016Thu Sep 22 21:58:24 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
4017
4018 * listing.c: Bugfixes based in part on patches from Paul
4019 Kranenburg.
4020 (listing_newline): Check filename as well as line number when
4021 deciding whether to record it.
4022 (list_symbol_table) [S_IS_REGISTER]: Check that S_IS_REGISTER is
4023 false (if defined) as well as checking for reg_section.
4024 (listing_listing): Iterate fetching lines while line number is too
4025 low, and we haven't run off the end of the input file.
4026
4027 * config/vms-conf.h: Changed HAVE_DELETE to HAVE_REMOVE.
4028
bdaa198a
KH
4029Thu Sep 22 13:39:10 1994 Kung Hsu (kung@x1.cygnus.com)
4030
4031 * ecoff.c (ecoff_generate_asm_lineno): check if
4032 current_stabs_filename is NULL before strcmp.
cacd15c4 4033 * read.c (read_a_source_file): fix a bug in generate_asm_lineno
bdaa198a
KH
4034 checking.
4035
8068b96a
KR
4036Wed Sep 21 18:17:35 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
4037
4038 * config/ho-*.h: Now-unused files deleted.
4039
4040 * symbols.c (copy_symbol_attributes): New function. Copies BFD
4041 symbol flags and calls OBJ_COPY_SYMBOL_ATTRIBUTES.
4042 (resolve_symbol_value, case O_symbol): Call it, if X_add_number is
4043 zero. Don't call obj_frob_forward_symbol.
4044 * read.c (pseudo_set): Call copy_symbol_attributes, but only if
4045 X_add_number is zero.
4046 * config/obj-elf.h (obj_frob_forward_symbol): Deleted.
4047
144659ab
ILT
4048 * config/tc-i960.c: Lots of whitespace, comment reformatting,
4049 using GNU indent.
4050 (strchr): Don't declare.
4051 [BFD_ASSEMBLER]: Don't compile md_convert_frag,
4052 md_estimate_size_before_relax, md_ri_to_chars,
4053 md_create_short_jump, md_create_long_jump.
4054 (brtab_emit): Use data_section, not SEG_DATA.
4055
cacd15c4 4056 Mon Sep 19 17:14:44 1994 Pat Rankin (rankin@eql.caltech.edu)
8068b96a
KR
4057
4058 * config/vms-conf.h: new file, manually derived from conf.in.
4059 * config-gas.com: use it, and eliminate obsolete "host.h".
4060
3af9783a
ILT
4061Wed Sep 21 11:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4062
87bbf920
ILT
4063 * config/tc-ppc.c (ppc_current_block): New static variable.
4064 (ppc_stabx): Set sy_tc.within of a C_STSYM symbol to
4065 ppc_current_block. Don't move around any stab symbol, just those
4066 for common symbols.
4067 (ppc_bs): Set ppc_current_block.
4068 (ppc_es): Clear ppc_current_block.
4069 (ppc_frob_symbol): Set the value of a C_STSYM symbol to the offset
4070 from the csect of the enclosing block.
4071
3af9783a
ILT
4072 * config/tc-mips.c (insns_since_cache_access): Remove.
4073 (append_insn): Remove setting of insns_since_cache_access, and
4074 special 4600 handling; it turns out not to be required.
4075
e8d4d475
ILT
4076Tue Sep 20 16:13:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4077
4078 * config/tc-mips.c (md_shortopts): Remove E.
4079 (md_longopts): Add EB and EL.
4080 (md_parse_option): Handle -EB and -EL as separate options, rather
4081 than as a single -E option with an argument.
4082
8268e3ec
JL
4083Mon Sep 19 12:42:05 1994 Jeff Law (law@snake.cs.utah.edu)
4084
4085 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions
4086 involving global symbols too.
4087
eb3028aa
KR
4088Mon Sep 19 12:12:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4089
4090 * as.h: Test NEED_DECLARATION_*, not NEED_*_DECLARATION.
4091
4092 * configure.in: Test for remove, not delete. Fix cross-assembler
4093 test.
4094 * as.h: Test HAVE_REMOVE, not HAVE_DELETE; define unlink to
4095 remove, not delete.
4096
35e70f58
KR
4097 * read.c (pseudo_set, case O_symbol): If
4098 OBJ_COPY_SYMBOL_ATTRIBUTES is defined, invoke it.
4099 [BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
4100 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
4101
4102 Wed Aug 10 19:15:30 1994 Pat Rankin (rankin@eql.caltech.edu)
4103
4104 * config/obj-vms.h (DSG_S_C_UBITU, DST_K_VFLAGS_DSC, DST_K_TS_ATOM,
4105 many others): new macros; values obtained from "DSTRECRDS.SDL".
4106 * config/obj-vms.h (various): use them.
4107 (USE_BITSTRING_DESCRIPTOR): new macro, for selecting bitfield
4108 representation (only enum bitfields can avoid being bitstrings).
4109 (bitfield_suffix, setup_basic_type): new routines.
4110 (VMS_typedef_parse): use them. Now recognize bitfields of all
4111 integral types, not just type `int'. Caveat: the representation
4112 used for bitfields still does not work for objects placed in
4113 registers, and gcc's optimizer sometimes puts small structs there.
4114
4115 Tue Jun 14 17:31:44 1994 Pat Rankin (rankin@eql.caltech.edu)
4116
4117 * read.c (s_text) [#if OBJ_VMS]: clear the IN_DEFAULT_SECTION
4118 bit from const_flag.
4119 * config/obj-vms.h (IN_DEFAULT_SECTION): define this macro.
4120 (tc_frob_label): define this to call vms_check_for_special_label,
4121 and declare the latter.
4122 * config/obj-vms.c (vax_g_doubles): declare this file-scope
4123 variable.
4124 (const_flag): initialize to IN_DEFAULT_SECTION instead of 0.
4125 (vms_check_for_special_label): new routine (tc_frob_label).
4126 (VMS_TBT_Routine_End): don't bother checking for `gcc_compiled.'
4127 and `gcc2_compiled.' labels; they won't reach here any more.
4128 (VMS_typedef_parse) [case 'r']: for types `double' and `complex
4129 double', use `vax_g_doubles' flag to select type of double.
4130 (VMS_write_object_file) [traceback setup]: don't pass symbols
4131 with the IN_DEFAULT_SECTION attribute to the TBT_Routine_Begin
4132 and TBT_Routine_End functions.
4133
4134 Mon Jun 6 20:52:20 1994 Pat Rankin (rankin@eql.caltech.edu)
4135
4136 * config/obj-vms.c (VMS_TBT_Routine_End): cache the result of
4137 S_GET_VALUE() to avoid many repeated function calls.
4138 (VMS_Check_For_Main) [#if HACK_DEC_C_STARTUP]: capitalize
4139 _C$MAIN_ARGS in advance, in case -h3 (leave symbol name as-is)
4140 gets requested. [All the HACK_DEC_C_STARTUP code appears to
4141 be obsolete; gcc does it automatically for vms target. It's
4142 also misnamed, because it is for the "VAX C" run-time library,
4143 not the newer "DEC C" one which has much different startup code.]
4144 {various}: use `S_SET_xxx(symbol,new_value)' rather than
4145 `S_GET_xxx(symbol) = new_value'.
4146
d1578de3
ILT
4147Mon Sep 19 12:05:03 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4148
4149 * config/obj-coff.c (c_dot_file_symbol): Use bfd_abs_section_ptr,
4150 not &bfd_abs_section.
4151
e3683042
ILT
4152Thu Sep 15 18:36:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4153
4154 * expr.c (clean_up_expression): Use addressT, not bfd_vma.
4155
75c28b49
JL
4156Tue Sep 13 20:05:47 1994 Jeff Law (law@snake.cs.utah.edu)
4157
fcacfef6
JL
4158 * expr.c (expr): Don't reduce the difference of two symbols in the
4159 same frag if the symbols are not in normal sections.
4160
75c28b49
JL
4161 * config/obj-som.h (S_SET_OTHER, S_SET_TYPE): Delete a.out crud.
4162 (S_SET_DESC, S_GET_OTHER, S_GET_TYPE, S_GET_DESC): Likewise.
4163 (obj_attach_unwind_info): Do not define. Not needed anymore.
4164 * config/tc-hppa.c: Delete whitespace at EOL.
4165 (struct hppa_fix_struct): Delete fx_unwind field and all references.
4166 (fix_new_hppa): Last arg is now a pointer to an int. Do not
4167 call obj_attach_unwind_info anymore. For SOM R_ENTRY and R_EXIT
4168 fixups, store 32bits of unwind information in the fx_addnumber
4169 field of the fixup.
4170 (md_assemble, pa_entry, process_exit, pa_procend): For SOM R_ENTRY
4171 and R_EXIT fixups, pass a NULL pointer to fix_new_hppa, and a
69cb5925 4172 pointer to 32 bits of unwind info.
75c28b49
JL
4173 (tc_gen_reloc): For SOM R_ENTRY and R_EXIT fixups, set the symbol
4174 pointer to the dummy symbol; set the addend field to fx_addnumber.
4175 (pa_comm, pa_equ, pa_type_args, pa_import): Use bfd_XXX_section_ptr
4176 rather than &bfd_XXX_section.
4177
26f4447a
KR
4178Tue Sep 13 21:15:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4179
d7152d07
KR
4180 * config/tc-i386.c (md_apply_fix_1): For GOTPC relocs, decrement
4181 value by one; discard adjustments previously being made. From
4182 Eric Youngdale.
4183
26f4447a
KR
4184 VMS- and Vax-related changes from Pat Rankin:
4185 * Makefile.in (VMS_OTHER_OBJS): add concat, getopt, and getopt1.
4186 * vmsconf.sh: no longer have make-gas.com echo text about needing
4187 to modify the gcc-vms driver when intending to use with gcc 1.x.
4188 * as.c (parse_options): suppress 'v' from std_short_options and
4189 eliminate VMS-specific conditional initialization;
4190 [default case]: check for '-v' if md_parse_options doesn't recognize
4191 an option;
4192 [default case, #if VMS]: check for filename argument when '-v' seen;
4193 [case 'v']: delete.
4194 * config/tc-vax.c (md_assemble): don't rely on `this_add_number'
4195 for O_big literal operands (double floats and long long ints);
4196 [VMS, md_shortopts]: add second colon after 'v';
4197 (md_parse_options) [VMS, case 'v']: check for argument, so
4198 caller can handle `-v' w/o arg.
4199
a9898563
SC
4200Tue Sep 13 16:45:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4201
4202 * config/obj-coff.c (do_relocs_for): If TC_KEEP_FX_OFFSET
4203 is defined, put the tx_offset into the r_offset.
4204 * config/tc-sh.c (line_comment_chars): Add #
4205 (tc_reloc_mangle): Deleted.
4206 * config/tc-sh.h (TC_KEEP_FX_OFFSET): Define.
4207 (TC_RELOC_MANGLE): Delete.
4208
28d3e4a3
KR
4209Tue Sep 13 16:20:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4210
b9419dd2
KR
4211 * flonum-konst.c: Change preprocessor tests of HO_VMS to just VMS.
4212 * hex-value.c: Ditto.
4213 * config/obj-vms.c: Ditto.
4214
460531da
KR
4215 * config/tc-sparc.c (sparc_ip): Replace as_bad/exit sequence with
4216 a call to as_fatal.
4217 * config/tc-i860.c (i860_ip): Ditto.
4218 * config/tc-hppa.c (pa_ip): Ditto.
4219 * config/tc-alpha.c (alpha_ip): Ditto.
4220 * as.c (parse_args): Ditto.
4221
4222 * config/tc-mips.c (mips_ip): Replace as_warn/exit sequence with a
4223 call to as_fatal.
4224
4225 * write.c (write_contents): Use EXIT_FAILURE.
4226 * output-file.c (output_file_create, output_file_close,
4227 output_file_create, output_file_close): Ditto.
4228 * messages.c (as_fatal): Ditto.
4229 * config/obj-som.c (obj_som_version, obj_som_copyright): Ditto.
4230 * config/obj-ieee.c (write_object_file): Ditto.
4231 * config/obj-coff.c (write_object_file): Ditto.
4232 * config/tc-vax.c (main): Use EXIT_SUCCESS.
4233 * config/tc-m68k.c (main): Ditto.
4234
4235 * hash.c (main): Pass a value to exit().
4236
4237 * as.h (EXIT_SUCCESS, EXIT_FAILURE): Moved here.
4238 * as.c: ...from here.
4239 (parse_args): Use them always.
4240 (main): Use exit rather than return.
4241
28d3e4a3
KR
4242 * Makefile.in (*_FOR_TARGET, INSTALL_XFORM, install, uninstall):
4243 Rewrite handling of program_transform_name.
4244
b9419dd2
KR
4245 * configure.in: Test for functions unlink and delete.
4246 * as.h: If unlink isn't available but delete is, define unlink to
4247 be delete.
28d3e4a3
KR
4248
4249 Update for autoconf 1.118:
4250 * gdbinit.in: New file, created from old .gdbinit.
4251 * .gdbinit: Deleted.
4252 * aclocal.m4 (GAS_GDBINIT): Deleted.
4253 * configure.in: Don't use it. Instead, generate .gdbinit from
4254 gdbinit.in. Don't substitute cpu_type, obj_format, emulation,
4255 atof. Switched order of AC_LINK_FILES arguments. Use AC_PREREQ
4256 to ensure that older versions of autoconf aren't used.
4257 * Makefile.in: Added @configure_input@ line.
4258 (configure): Deleted rule.
4259
430a3997
ILT
4260Tue Sep 13 12:08:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4261
4262 * config/obj-coff.c (fixup_segment): After handling the difference
4263 of two symbols from the same segment, set fx_subsy to NULL, to
4264 satisfy existing TC_COUNT_RELOC macros.
4265
e23b25ec
KR
4266Tue Sep 13 01:47:08 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4267
4268 * aclocal.m4 (GAS_GDBINIT): New macro.
4269 * configure.in: Use it.
4270 * configure: Regenerated.
4271
c570d361
KR
4272Mon Sep 12 20:56:38 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
4273
4274 * .gdbinit (pe, ps): Define new commands.
4275 * symbols.c (indent_level): New static variable.
4276 (indent, print_expr_1, print_symbol_value_1, print_symbol_value,
4277 print_expr): New functions.
4278
4279 * Makefile.in (config-stamp): Add a "this file generated by make"
4280 message to config.h.
4281
4282 PIC implementation for i386-linux, based on code from Eric
4283 Youngdale and Paul Kranenburg, with some work of my own:
4284
4285 * write.c (fixup_segment): Test TC_RELOC_RTSYM_LOC_FIXUP on fixup
4286 before processing same-section pcrel relocations.
4287 (TC_RELOC_RTSYM_LOC_FIXUP): Default to 1.
4288
4289 * expr.c (make_expr_symbol): If operator is O_symbol and
4290 X_add_number is zero, just return the symbol. If operator is
4291 O_constant, resolve the symbol's value before returning.
4292 (operand): Permit use of "[]" for grouping.
4293 (clean_up_expression): For difference of two symbols in the same
4294 frag, add the difference of their offsets into X_add_number.
4295 (expr): Reduce difference of two symbols in same frag to their
4296 difference.
4297
4298 * config/tc-i386.c (TC_RELOC): New macro.
4299 (struct _i386_insn): New field disp_reloc.
4300 (GOT_symbol): New variable.
4301 (operand_special_chars): Added square-brackets and at-sign.
4302 (reloc) [BFD_ASSEMBLER]: Added new argument OTHER; if it is not
4303 NO_RELOC, just return it.
4304 (reloc) [! BFD_ASSEMBLER]: Add third argument to dummy macro.
4305 (BFD_RELOC_386_PLT32, _GOT32, _GOTOFF) [! BFD_ASSEMBLER]: More
4306 dummy macros.
4307 (tc_i386_fix_adjustable): New function. Returns zero if symbol in
4308 fixup is not local, to prevent relocations against externals from
4309 being dropped.
4310 (md_assemble): Initialize disp_reloc field to NO_RELOC. Pass
4311 disp_reloc field to reloc() function, and use TC_RELOC to generate
4312 value to pass to fix_new_exp.
4313 (md_assemble): Change 32-bit reloc against GOT_symbol into a GOTPC
4314 reloc.
4315 (i386_operand): Initialize disp_reloc field to NO_RELOC. Handle
4316 @GOTOFF, @PLT, @GOT operands. For GOTOFF relocations with local
4317 symbols, force generation of the section symbol.
4318 (md_estimate_size_before_relax): If GOT_symbol exists, decide
4319 we're generating PIC code, and convert relocations against
4320 undefined symbols from PCREL to PLT32.
4321 (md_apply_fix_1) [OBJ_ELF]: Fix up values for dynamic-linking
4322 relocs.
4323 (md_undefined_symbol): Notice GLOBAL_OFFSET_TABLE_NAME and set
4324 and return GOT_symbol if it matches.
4325 (F, MAP): Move macro definitions outside function.
4326 (tc_gen_reloc): Only switch on size and pcrel if code wasn't
4327 already supplied as PLT32. GOT32, GOTOFF, or GOTPC. Convert
4328 BFD_RELOC_32 using GOT_symbol into GOTPC.
4329 * config/tc-i386.h (TC_RELOC, tc_fix_adjustable,
4330 TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): New
4331 macros.
4332 (NEED_FX_R_TYPE): Define.
4333 (LOCAL_LABEL): Accept ".X" prefix too.
4334 (GLOBAL_OFFSET_TABLE_NAME): Default to "_GLOBAL_OFFSET_TABLE_".
4335
1b434ced
ILT
4336Mon Sep 12 17:51:39 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4337
1779d515
ILT
4338 * config/obj-elf.c (obj_elf_type): Rewrite to accept syntax
4339 reportedly to be used on Irix 6.
4340
c1444ec4
ILT
4341 * config/tc-mips.c (md_pseudo_table): Handle .globl and .global.
4342 (s_mips_globl): New static function; needed for Irix 5 support.
4343 * ecoff.c (ecoff_build_symbols): If BSF_FUNCTION is set for an
4344 external symbol with no type, set the type to st_Proc rather than
4345 st_Global. Don't set the index of an external st_Proc or
4346 st_StaticProc symbol unless it is also a local symbol.
4347
1b434ced
ILT
4348 * read.c (read_a_source_file): The second argument to as_where is
4349 unsigned int *, not int *.
4350
326d16ca
KH
4351Thu Sep 8 17:18:24 1994 Kung Hsu (kung@mexican.cygnus.com)
4352
4353 * config/obj-ecoff.h : Change names to OBJ_GENERATE_ASM_LINENO,
4354 and generate_asm_lineno.
4355 * config/obj-elf.h : ditto.
4356 * read.h : ditto.
4357 * read.c (read_a_source_file): if no file when inst is read, set
4358 generate_asm_lineno to true.
4359 * ecoff.h : change name to generate_asm_lineno and add function
4360 ecoff_no_current_file.
4361 * ecoff.c : change name to generate_asm_lineno.
69cb5925 4362 * ecoff.c (ecoff_generate_asm_lineno) : new function, to generate
326d16ca
KH
4363 ecoff style line for asm file.
4364
eb4fd16f
ILT
4365Thu Sep 8 19:43:49 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4366
4367 * config/obj-coff.c (size_section): Do an fprintf to stderr rather
4368 than a printf.
4369 (fixup_segment): Use as_bad_where rather than as_bad.
4370
20c9d49a
SC
4371Wed Sep 7 17:21:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4372
eb4fd16f
ILT
4373 * config/tc-{h8300,sh}.[ch] (tc_coff_symbol_emit): Function doing
4374 nothing becomes macro doing nothing.
20c9d49a 4375
bf111c9f
KR
4376Wed Sep 7 19:10:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4377
353acf31
KR
4378 * Makefile.in (Makefile): Depend on config.status.
4379 (config.status): Run config.status from . instead of srcdir.
4380
72373532
KR
4381 * config/tc-i386.c (tc_gen_reloc): Use bfd_get_reloc_code_name to
4382 display the name of the relocation type that couldn't be handled.
4383 * config/tc-sparc.c (tc_gen_reloc): Likewise.
4384 * config/tc-alpha.c (tc_gen_reloc): Likewise. Deleted abort call
4385 after call to as_fatal.
4386
4387 * configure.in (i386-*-linux*): Don't set bfd_gas.
4388
4389 * Makefile.in (CC_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET,
4390 install, uninstall): Don't use "brokensed" hack any more, the new
4391 autoconf code should never let program_transform_name be empty.
4392
bf111c9f
KR
4393 Update for autoconf beta 1.112:
4394 * aclocal.m4 (GAS_CHECK_DECL_NEEDED, GAS_WORKING_ASSERT): New
4395 macros.
4396 * configure.in: Use them. Use AC_ARG_PROGRAM (now provided by
4397 autoconf) instead of my hacked-up AC_PROGRAM_TRANSFORM_NAME. Move
4398 test for CROSS_COMPILE just before AC_FUNC_ALLOCA, and emit a
4399 message to try to ease confusion about autoconf's
4400 "cross-compiling" message.
4401 * acconfig.h (NEED_DECLARATION_MALLOC, NEED_DECLARATION_FREE,
4402 NEED_DECLARATION_ERRNO): Renamed from NEED_*_DECLARATION.
4403 * configure, conf.in: Regenerated.
4404
c8570de8
ILT
4405Wed Sep 7 12:49:55 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4406
4407 * configure.in: Check ${host} and ${target} rather than
4408 ${host_canon} and ${target_canon}.
4409 * configure: Likewise.
4410
8c63448a
ILT
4411Tue Sep 6 11:42:38 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4412
4413 * config/tc-mips.c (mips_cpu): New static variable.
4414 (insns_since_cache_access): New static variable.
4415 (md_begin): Set mips_cpu as well as mips_isa.
4416 (append_insn): If mips_cpu is 4600, require four nop instructions
4417 between an instruction which accesses the cache and certain CACHE
4418 instructions. Keep track of the number of instructions seen since
4419 an instruction which accesses the cache.
4420 (md_parse_option): Set mips_cpu as well as mips_isa.
4421
a5a2f156
KR
4422Mon Sep 5 07:09:00 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
4423
4424 * doc/Makefile.in (VPATH): Define using @srcdir@.
4425 (prefix, program_transform_name, exec_prefix): Use autoconf style
4426 @-substitutions.
4427
8c63448a 4428Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
318b02b6
KR
4429
4430 * config/ho-riscix.h, config/tc-arm.c, config/tc-arm.h: New files
4431 * configure.in: Recognize the arm.
4432
3ffbc907
ILT
4433Fri Sep 2 16:05:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4434
4435 * ecoff.c (add_file): Don't try to generate line numbers if the
4436 symbol table has been frozen.
4437
4438Thu Sep 1 19:48:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4439
4440 * aclocal.m4 (AC_PROG_CC): Use AC_DEFUN, and omit AC_PROVIDE.
4441
4442 * configure.in: Handle user-specified bfd-assembler option with
4443 separate variable from preferred configuration, until the two are
4444 resolved. Indicate bfd_gas=preferred for linux a.out. Use
4445 AC_PROGRAM_TRANSFORM_NAME, for which a patch has been sent to djm.
4446 * Makefile.in (target_alias, program_transform_name): Define,
4447 using autoconf @-substitutions.
4448
fb589130
KR
4449Wed Aug 31 17:43:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4450
7f64fd4e
KR
4451 * atof-generic.c: Deleted alloca handling here.
4452
fb589130
KR
4453 * Makefile.in (prefix, exec_prefix): Use @-subtitutions.
4454
4455 * aclocal.m4 (AC_OUTPUT_LINKS): Deleted redefinition, since
4456 autoconf 1.109 has this fixed.
4457 * configure.in: Don't change quote characters around AC_MSG_ERROR
4458 invocation. Don't use AC_HEADER_STDC, since it requires running a
4459 program. Cache NEED_*_DECLARATION values.
4460 * configure, conf.in: Regenerated with a modified autoconf 1.109.
4461
c7072f56
KR
4462 * as.h (volatile): Don't test or define here; not needed.
4463 (alloca): Replace alloca-conf.h inclusion with code recommended in
4464 autoconf documentation. Include config.h first.
4465
bdee23af
ILT
4466Wed Aug 31 11:20:48 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4467
4468 * config/obj-coff.h (S_IS_DEFINED): Absolute symbols are defined
4469 also.
4470
4471 * configure.in, configure: Initialize bfd_gas to no.
4472
a48f997a
KR
4473Tue Aug 30 19:31:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4474
4475 * as.h: Include alloca-conf.h from "libiberty", not
4476 "../libiberty".
4477
0c49642d
ILT
4478Mon Aug 29 16:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4479
4480 * config/tc-ppc.c (md_apply_fix): Don't generate a reloc when a
4481 symbol is used as an offset into a CSECT that is not a TOC. These
4482 types of loads are generated by gcc -mminimal-toc.
4483
65ad84c1
KR
4484Sun Aug 28 13:22:52 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
4485
e9296bdb
KR
4486 * as.h (flag_*): Added comments describing meanings of some of
4487 these variables.
4488 (struct frag): Add some comments about the ns32k-specific fields
4489 and why they're here.
4490 (SIZEOF_STRUCT_FRAG): Cast addresses to char*, not int.
4491 (flag_print_statistics): Declare.
4492
4493 * as.c (parse_args): Set flag_print_statistics instead of
4494 statistics_flag. Options array is now const. Added new option
4495 "dump-config"; if specified, print TARGET_ALIAS, TARGET_CANONICAL,
4496 TARGET_CPU, TARGET_OBJ_FORMAT, and TARGET_FORMAT, if defined.
4497 (main): Change test to check flag_print_statistics.
4498 (statistics_flag): Deleted.
4499
c72aa0e2
KR
4500 * frags.c (frag_variant): Removed PCREL_ADJUST and BSR arguments.
4501 Always initialize them to zero.
4502 * frags.h (frag_variant): Fixed prototype.
4503 * config/tc-i960.c (get_cdisp): Don't pass the extra zero args.
4504 * config/tc-ns32k.c (convert_iif): Don't pass the arguments; cache
4505 the value of frag_now and fill in the fields later.
4506
65ad84c1
KR
4507 * Makefile.in (distclean, realclean): Remove new
4508 configure-generated files.
4509
aaeee550
KR
4510Sat Aug 27 20:26:12 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
4511
b11fb939
KR
4512 Conversion to autoconf:
4513 * acconfig.h, aclocal.m4: New files.
4514 * configure.in: Rewritten (except for some target-specific code)
4515 for autoconf.
4516 * conf.in, configure: New files, generated from the above.
4517 * Makefile.in: Changed magic sequence indicating insertion of
4518 makefile fragments.
4519 (VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions
4520 from configure.
4521 (LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
4522 (config.status, configure): Rewrite rules.
4523 (config-stamp): Depend on conf. Skip variables that configure is
4524 now substituting itself.
4525 (*.o dependencies): Deleted host.h.
4526 (distclean, realclean): Don't delete host.h.
4527 * as.c: Don't include stdio.h, string.h, sys/types.h. Include
4528 signal.h after as.h.
4529 * as.h: Include alloca-conf.h first. Include ctype.h, string.h,
4530 strings.h, stdlib.h, unistd.h, sys/types.h, fopen-bin.h,
4531 fopen-same.h, as suggested by autoconf test results.
4532 [BROKEN_ASSERT]: Don't include assert.h.
4533 (strdup): Declare.
4534 (volatile, const): Define if not __STDC__ and not already defined.
4535 (malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
4536 (free) [NEED_FREE_DECLARATION]: Declare.
4537 * gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't
4538 include host.h.
4539 (malloc) [NEED_MALLOC_DECLARATION]: Declare.
4540 * messages.c: Include as.h first. Include errno.h only if
4541 HAVE_ERRNO_H. If HAVE_VARARGS_H and not __STDC__, undefine
4542 HAVE_STDARG_H. Set NO_STDARG and NO_VARARGS as appropriate.
4543 * doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM,
4544 INSTALL_DATA): Use autoconf @-substitutions.
4545
27bf48ec
KR
4546 * input-file.c: Don't include assert.h here, 'cause as.h already
4547 includes it.
4548
aaeee550
KR
4549 * config/tc-alpha.c: Added various prototypes for static
4550 functions.
4551 (in_range): New function, tests whether a value can fit in an
4552 N-bit field.
4553 (build_mem, build_operate_n): New functions for constructing
4554 opcode values.
4555 (emit_sll_n, emit_ldah_num, emit_addq_r, emit_lda_n): New
4556 functions for emitting single instructions, no longer requiring a
4557 recursive call to md_assemble.
4558 (emit_add64): New function for expanding a REG:=REG+CONST
4559 operation into one or more instructions, to handle wide constants.
4560 (clear_insn): New variable.
4561 (md_begin): Fill it in with zeros and BFD_RELOC_NONE values.
4562 (alpha_ip): Use it to initialize local variable insns.
4563 (alpha_ip, label "immediate" and cases 'P', 'G'): Use emit_add64
4564 for calculations.
4565
6668a062
KR
4566Fri Aug 26 14:46:15 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
4567
4568 * subsegs.c (section_symbol): Reverse still-wrong test of
4569 EMIT_SECTION_SYMBOLS.
4570
8ef75e2c
KR
4571 * write.c (BFD_FAST_SECTION_FILL): Always define.
4572 (write_contents): If fill_size is 1, use memset instead of looping
4573 calling memcpy.
4574
904b6037
ILT
4575Wed Aug 24 12:46:08 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4576
20ae2fb8
ILT
4577 * config/tc-mips.h (LOCAL_LABEL): Define as 0, for compatibility
4578 with native MIPS assembler.
4579 * configure.in (mips-*-irix*): Don't set emulation.
4580 * config/te-irix.h: Remove.
4581
fd4f335c
ILT
4582 * ecoff.c (ecoff_symbol_new_hook): Don't add a new file if we
4583 haven't seen any input files yet.
4584 * config/tc-alpha.c (md_begin): Just call symbol_create, rather
4585 than calling symbol_new and then removing the symbol from the
4586 list.
4587
a2a1a548
ILT
4588 * as.c (main): Move a inside the #if 0 block which uses it.
4589 * ecoff.c (current_stabs_filename): Make const.
4590 * frags.h (frag_align_pattern): Declare.
4591 * gasp.c (new_file): Cast isp to long, and use %ld to print it.
4592 * config/tc-alpha.h (md_operand): Add cast to void.
4593 (alpha_do_align): Declare argument types.
4594 (tc_get_register): Declare.
4595 (alpha_frob_ecoff_data): Declare.
4596 * config/tc-alpha.c: Include <ctype.h>.
4597 (s_mask): Don't declare; does not exist.
4598 (line_comment_chars): Remove /* from descriptive comment.
4599 (tc_get_register): Remove unused local reg.
4600 (tc_gen_reloc): Don't bother to compare unsigned to zero.
4601 (s_base): Correct warning to actually print register number.
4602 (md_begin): Remove unused locals retval, lose, and i.
4603 (alpha_fix_adjustable): Move default case inside switch to avoid
4604 warning.
4605 (load_symbol_address): Remove unused locals reloc_addr, p, sym,
4606 and addend.
4607 (emit_byte_manip_r): Declare types for all arguments.
4608 (emit_extract_r, emit_insert_r, emit_mask_r): Likewise.
4609 (emit_sign_extend, emit_bis_r, s_proc): Likewise.
4610 (alpha_ip): Use sprint_value to print offsetT value. Remove
4611 unused local size. Remove unused label get_macro.
4612 (alpha_do_align): Make fill const.
4613 (md_apply_fix): Remove unused label check_zov.
4614
904b6037
ILT
4615 * configure.in: Recognize i586 as a synonym for i[34]86.
4616
4617Tue Aug 23 12:32:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4618
4619 * config/obj-coff.c (c_line_new): Change line_number argument from
4620 unsigned short to int so that the type in the prototype matches
4621 the promoted type in the definition.
4622 (stack_delete): Comment out; not used.
4623 * config/obj-coff.h (tc_coff_symbol_emit_hook): Declare if not
4624 BFD_ASSEMBLER, not if BFD_ASSEMBLER. Declare argument type.
4625 * config/tc-m68k.h (tc_coff_sizemachdep): Declare.
4626 * config/tc-m68k.c (tc_coff_symbol_emit_hook): Add ignored
4627 argument.
4628
2cffb4f4
JL
4629Tue Aug 16 01:48:20 1994 Jeff Law (law@snake.cs.utah.edu)
4630
05d0c2cc
JL
4631 * gas/config/tc-hppa.c (pa_comm): Undo last change. Set sy_frag for
4632 the common symbol to the zero address frag (the correct fix).
4633
4634Tue Aug 16 01:48:20 1994 Jeff Law (law@snake.cs.utah.edu)
4635
4636 * gas/config/tc-hppa.c (pa_comm): Undo last change. Set sy_frag for
4637 the common symbol to the zero address frag (the correct fix).
4638
4639 * config/tc-hppa.c (pa_comm): Set sy_resolved for the common
69cb5925 4640 symbol.
2cffb4f4 4641
101fbf7e
ILT
4642Fri Aug 12 17:51:48 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4643
4644 * config/tc-mips.c (md_begin): Drop "el" from the end of
4645 TARGET_CPU. Check for mips64orion.
4646
a1dafd55
SG
4647Tue Aug 9 19:43:45 1994 Stu Grossman (grossman@cygnus.com)
4648
4649 * configure.in: Recognize ppc-*-netware.
4650 * config/te-ppcnw.h: New file to support Power-PC/Netware
4651 configurations. Currently, it just enables the use of backslash
4652 escapes in string directives.
4653
55933a58
ILT
4654Tue Aug 9 11:12:13 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4655
8e479636
ILT
4656 * config/tc-ppc.c (ppc_stabx): Call expression directly, rather
4657 than via pseudo_set. If expression is a symbol, move stab symbol
4658 to just after symbol from expression.
4659
c9a89891
ILT
4660 * ecoff.c (ecoff_build_procs): Don't force adr of first fdr to be
4661 zero. Undoes change of June 4, 1993.
4662
55933a58
ILT
4663 * config/tc-mips.c (md_parse_option): Accept -mcpu=4400, 4600, and
4664 orion.
4665
4666Mon Aug 8 16:28:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4667
4668 * as.h: Remove FOPEN_WB patch of Aug 6.
4669 * configure.in: Configure for ho-go32 correctly.
4670 * config/ho-go32.h: Fix copyright.
4671
1503edcc
JL
4672Mon Aug 8 11:59:51 1994 Jeff Law (law@snake.cs.utah.edu)
4673
4674 * gas/config/tc-hppa.c (md_pseudo_table): Delete redundant
4675 upper-case versions of the pseudo-ops.
4676
2cd14ddc
ILT
4677Mon Aug 8 13:42:16 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4678
4679 * config/tc-sparc.c (md_apply_fix): If we are going to generate a
4680 non PC relative reloc, don't put the addend in the object file.
4681
6670b7f3
SC
4682Sat Aug 6 01:15:02 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4683
4684 * as.h: If FOPEN_WB is not defined, do the right thing in a go32
4685 environment.
4686
4687Mon Jul 11 11:34:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4688
4689 * config/tc-h8300.c (pint): New function for handling varying
4690 size of int pseudo op.
4691 * doc/as.texinfo: Fix typo describing .h8300h pseduop.
4692
363d6150
JL
4693Mon Aug 1 02:40:43 1994 Jeff Law (law@snake.cs.utah.edu)
4694
fbf71886
JL
4695 * config/tc-hppa.c (create_new_space): Initialize sd_subspaces
4696 field in the space chain.
4697
363d6150
JL
4698 * config/tc-hppa.c (tc_gen_reloc): Cast return value from
4699 hppa_gen_reloc_type.
4700
5e0a90a8
KR
4701Thu Jul 28 15:45:37 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4702
4703 * config/tc-sparc.c (sparc_ip): Check more carefully for
4704 conflicting architectures.
4705 (md_parse_option) [NO_V9]: Complain if v9 was selected.
4706 (md_show_usage): Derive architecture list in usage message from
4707 architecture_pname array.
4708 (cypress): Macro deleted.
4709 (op_hash): Don't initialize.
4710 (s_common): Use bfd_und_section_ptr instead of bfd_und_section.
4711
4712 * config/tc-sparc.c (BSR): New function.
4713 (sparc_ip): Use it for right-shift operations of 32 bits or more.
4714
4715 * config/tc-sparc.c (sparc_ip): Implement new operand type 'x'.
4716
39792caf
KR
4717Tue Jul 26 18:21:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4718
4719 * config/obj-coff.h: Moved common includes and TARGET_FORMAT
4720 definitions together.
4721 (WORKING_DOT_WORD, WARN_SIGNED_OVERFLOW_WORD,
4722 OBJ_COFF_OMIT_OPTIONAL_HEADER, BFD_HEADERS, BFD) [!BFD_ASSEMBLER]:
4723 Moved these definitions to the start of the file, before the
4724 includes.
4725 (SYMBOLS_NEED_BACKPOINTERS, OBJ_COFF_MAX_AUXENTRIES): Always
4726 define these.
4727 (S_GET_ZEROES): Deleted.
4728 (S_SET_ZEROES): Moved to obj-coff.c.
4729
4730 * config/obj-coff.c (obj_coff_* psuedo-op fns): Deleted
4731 forward declarations.
4732 (obj_pseudo_table): Moved to one version end of file,
4733 conditionalized internally.
4734 (stack typedef, stack_init, stack_delete, stack_push, stack_pop,
4735 tag_hash, tag_init, tag_insert, tag_find, tag_find_or_make): Moved
4736 to one combined version at top of file, unconditional. Deleted
4737 forward declarations.
4738 (s_get_name): Moved one copy of declarations to start of file.
4739 (def_symbol_in_progress): Ditto. Don't initialize.
4740 (S_SET_ZEROES): Moved here from obj-coff.h.
4741 (write_object_file): If TC_COFF_SET_MACHINE is defined, call it on
4742 the file headers.
4743
4744 * config/obj-coff.c (seg_info_off_by_4): Now const and static.
4745 (SEG_INFO_FROM_SEG_NUMBER): Unused macro deleted.
4746 (previous_file_symbol, def_symbol_in_progress, symbol_externP,
4747 symbol_extern_lastP, last_functionP) [!BFD_ASSEMBLER]: Don't
4748 bother explicitly initializing to zero value.
4749
4750 * config/obj-coff.c (fixup_segment) [TC_I960]: Use SF_GET_BALNAME
4751 and SF_GET_CALLNAME instead of the TC_S_IS_ versions.
4752
10db66ec
KR
4753 * config/tc-i960.h (TC_COFF_SET_MACHINE): New macro. Calls
4754 tc_headers_hook.
4755
4756 * config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX
4757 was used previously.
4758 (tc_headers_hook): If I_CX2 is found, set flags to F_I960CA.
4759
4760 * config/tc-i960.c (po_hash): Declaration deleted.
4761 (next_object_file_charP): Ditto.
4762 (regnames, aregs, coj): Now const.
4763 (parse_memop): Static array def_scale now const.
4764 (md_begin): Cast away const when passing hash routines addresses
4765 of values in regnames or aregs.
4766 (md_longopts): Added "link-relax" and "no-relax" hyphenated forms.
4767 Continue to accept one-word forms.
4768 (struct tabentry, arch_tab): Moved to top level from inside
4769 md_parse_option. Now const.
4770 (md_show_usage): Use arch_tab to generate usage message. Print
4771 hyphenated forms of relax options.
4772
4773 * config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC,
4774 TC_S_FORCE_TO_*): Moved from here...
4775 * config/tc-i960.c: ... to here. Changed DEFINE_I960_AOUT stuff
4776 to test OBJ_AOUT and OBJ_BOUT directly.
4777
4778 * config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ,
4779 M1-M3, REG_OPC, R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F,
4780 {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK, FP_OK, REG_ALIGN, MEMOP, I_*):
4781 Macros deleted.
4782
4783 start-sanitize-i960xl
4784 * config/tc-i960.c (ARCH_XL): Define.
4785 (arch_tab): Include XL.
4786 (targ_has_sfr, targ_has_iclass): Handle XL.
4787 (tc_headers_hook): Set flags to F_I960XL for i960XL.
4788 end-sanitize-i960xl
4789
39792caf
KR
4790Fri Jul 15 15:36:51 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4791
4792 * subsegs.c (section_symbol): Had last change backwards.
4793
3b6d6f71
KR
4794Thu Jul 14 13:21:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4795
462ab71d
KR
4796 * config/atof-ns32k.c: Deleted.
4797
3b6d6f71
KR
4798 * config/obj-aout.c (obj_aout_frob_symbol): Use
4799 bfd_ind_section_ptr and bfd_und_section_ptr.
4800
4801 * subsegs.c (subseg_set_rest): Compare segT values directly,
4802 without casting to int first.
4803
259e35d4
KR
4804 * config/tc-ns32k.c (md_begin): Return value from hash_insert
4805 should be pointer to const. Don't call exit explicitly after
4806 calling as_fatal; it won't return.
4807 (convert_iif): Make local variable j be pointer to bit_fixS, since
4808 that's how it's used.
4809 (encode_operand, case 'b'): Ignore sprintf return value. Don't try
4810 converting freeptr to int and back.
4811
4812 Merged in NS32K support update from Ian Dall (dall@hfrd.dsto.gov.au):
4813
4814 * config/te-pc532mach.h: New file. pc532-mach target emulation.
4815
4816 * config/te-netbsd532.h: New file. Netbsd532 target emulation.
4817
4818 * config/tc-ns32k.h: Add definition of NOP_OPCODE.
4819
4820 * config/tc-ns32k.h: Add prototype for fix_new_ns32k_exp.
4821
4822 * config/tc-ns32k.h: Add BFD_ASSEMBLER support.
4823
4824 * config/tc-ns32k.c (tc_gen_reloc): New function for BFD_ASSEMBLER.
4825
4826 * config/tc-ns32k.c (fix_new_ns32k_exp): Get reloc type
4827 differently for BFD_ASSEMBLER.
4828
4829 * config/tc-ns32k.c (md_estimate_size_before_relax): Get reloc
4830 type differently for BFD_ASSEMBLER.
4831
4832 * config/tc-ns32k.c (md_create_long_jump): Size of opcode is one
4833 not 2.
4834
4835 * config/tc-ns32k.c (md_convert_frag): Code for the BFD_ASSEMBLER
4836 case. Also use smart md_pcrel_adjust function.
4837
4838 * config/tc-ns32k.c (md_apply_fix): Code for the BFD_ASSEMBLER
4839 case. Also use smart md_fix_pcrel_adjust function.
4840
4841 * config/tc-ns32k.c (md_fix_pcrel_adjust): New function which can
4842 find offset from opcode to operand even if in another frag
4843 and in the presence of relaxing.
4844
4845 * config/tc-ns32k.c (md_pcrel_adjust): New function which can
4846 find offset from opcode to operand even if in another frag
4847 and in the presence of relaxing.
4848
4849 * config/tc-ns32k.c (md_number_to_disp): Check ranges properly.
4850
4851 * config/tc-ns32k.c (md_atof): use atof_ieee instead of special
4852 atof_ns32k.
4853
4854 * config/tc-ns32k.c (reloc): New (static) function for
4855 BFD_ASSEMBLER.
4856
4857 * config/tc-ns32k.c (convert_iif): More correct pc relative code.
4858 md_relax must be able to find opcode address even if in another frag.
4859
4860 * config/tc-ns32k.c: More extensive comments.
4861
4862 * config/tc-ns32k.c (encode_operand): Support new operand classes I
4863 and Z. Drop Q.
4864
4865 * config/tc-ns32k.c (fix_new_ns32k_exp): new function and
4866 corresponding prototype.
4867
4868 * config/tc-ns32k.c: make 32532 default machine instead of 32032.
4869
4870 * config/tc-ns32k.c: include opcode/ns32k.h after as.h
4871
4872 * aout_gnu.h: r_disp needs to be 2 bits for TC_NS32K
4873
4874 * write.h: fx_im_disp needs to be 2 bits big for TC_NS32K
4875
4876 * write.c (relax_segment): Use TC_PCREL_ADJUST macro (if defined)
4877 instead of adding pcrel_adjust.
4878
4879 * write.c (write_object_file): Adjust to_addr for the
4880 BROKEN_DOT_WORD feature for the BFD_ASSEMBLER case.
4881
4882 * write.c (write_object_file): Use TC_CONS_FIX_NEW if it is defined.
4883
4884 * write.c (write_contents): Add code (currently if
4885 BFD_FAST_SECTION_FILL is defined) to make large fills a lot faster.
4886
4887 * configure.in: Remove ns32k from special FP list. All the ns32k
4888 series use ieee float.
4889
4890 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd targets
4891
4892 * as.h: include expr.h before targ-env.h. Some target dependent file
4893 want to use expr structures.
4894
4ac7a9e4
ILT
4895Wed Jul 13 14:49:05 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4896
4897 * config/tc-m68k.c (m68k_ip): Change rp to be a const pointer.
4898 (md_parse_option): Clear cpu field of current_architecture before
4899 setting a new cpu type. Clear no_68881 for m68881 or m68882.
4900 Clear no_68851 for m68851.
4901
6b510a40
KR
4902Tue Jul 12 21:27:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4903
4904 * config/ho-sysv.h (realloc): Declare.
4905
3c498933
KR
4906 * symbols.c (symbol_create): New function, most of the guts of the
4907 old symbol_new function.
4908 (symbol_new): Now just checks symbol_table_frozen, calls
4909 symbol_create, and enters the symbol into the symbol table.
4910 * subsegs.c (section_symbol): If EMIT_SECTION_SYMBOLS is not true,
4911 and the symbol table is frozen, call symbol_create instead of
4912 symbol_new.
4913 * symbols.h (symbol_create, symbol_table_frozen): Declare.
4914
4915 * symbols.c (symbol_clear_list_pointers): Always a function now.
4916 * struc-symbol.h (symbol_clear_list_pointers): Deleted macro
4917 version.
4918
4919 * symbols.c (debug_verify_symchain): New macro, defined to be
4920 verify_symbol_chain or a cast to void, depending on DEBUG_SYMS.
4921 (many functions): Invoke debug_verify_symchain unconditionally.
4922
a85cd289
KH
4923Tue Jul 12 12:06:42 1994 Kung Hsu (kung@x1.cygnus.com)
4924
4925 * config/obj-ecoff.h: change calling interface of
4926 OBJ_GENERATE_ASM_LINE_STAB.
4927 * config/obj-elf.h: ditto.
4928 * read.c (read_a_source_file): ditto.
4929 * ecoff.h: change calling interface of
4930 ecoff_generate_asm_line_stab.
4931 * ecoff.c (add_file): record of filename to handle case of include
4932 files, also change default built-in type from int to void for
4933 asm file.
4934 * ecoff.c (ecoff_generate_asm_line_stab): handle case of include
4935 files.
4936
51d8e5ae
ILT
4937Mon Jul 11 17:20:23 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
4938
4939 * config/tc-mips.c (macro): In case M_LA_AB, SVR4_PIC, large
4940 constant, and case ldd_std, set mips_optimize to 2 temporarily to
4941 avoid inserting an unexpected nop instruction.
4942
64d527f7
ILT
4943Sat Jul 9 00:05:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4944
4945 * ecoff.c (ecoff_build_lineno): Handle count correctly for last
4946 line number.
4947
6f15d409
SC
4948Fri Jul 8 15:22:07 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4949
6670b7f3 4950 * gasp.c (process_pseudo_op): Pass right args to do do_aif.
6f15d409
SC
4951 (get_any_string): New arg 'pretend_quote'.
4952 (get_and_process, do_formals, macro_expand, do_sdata,
4953 process_pseudo_op): Use new arg.
4954
daad3bbf
KH
4955Fri Jul 8 12:23:44 1994 Kung Hsu (kung@mexican.cygnus.com)
4956
4957 * config/obj-ecoff.h: define macro OBJ_GENERATE_ASM_LINE_STAB.
4958 * config/obj-elf.h: ditto.
4959 * read.c (read_a_source_file): generate line stabs for asm file.
4960 * read.h: add extern generate_asm_line_stab.
4961 * ecoff.h : add prototype for ecoff_generate_asm_line_stab().
4962 * ecoff.c (add_file): if there's no filename provided, set switch
4963 to generate line stabs for .s file.
4964 * ecoff.c (add_procedure): add stabs symbol for .ent directive.
4965 * ecoff.c (generate_ecoff_stab): creates an artificial stabs.
4966 * ecoff.c (generate_asm_line_stab): generate a artifitial label
4967 for each line and generate a stabn for the line.
4968
13d9fd33
SC
4969Thu Jul 7 17:04:03 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4970
4971 * gasp.c (get_any_string): Cope with getting a string with an
4972 alternate base specifier.
4973 (do_aif, do_aelse): Only enable output if expression is true and previous
4974 level was on.
4975 (chartype_init): Add BASEBIT chartype.
4976 (process_pseudo_op): Notice nesteed AIFs.
4977
4978Thu Jul 7 12:30:22 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4979
4980 * h8300.c (do_a_fix_imm): Code for 2 bit reloc type using in trapa
4981 insn. (fix pr 5165, 5174)
4982
8fd04cba
JL
4983Thu Jul 7 11:31:32 1994 Jeff Law (law@snake.cs.utah.edu)
4984
13d9fd33
SC
4985 * config/tc-hppa.c (R_DLT_REL): If it isn't defined, then define
4986 to an appropriate value to avoid losing on old hpux systems.
4987
8fd04cba
JL
4988 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions for
4989 symbols in DLT relative relocs.
4990 (tc_gen_reloc): Zero out the addend field for DLT relative relocs.
4991
8882a587
ILT
4992Wed Jul 6 01:07:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4993
4994 * config/tc-ppc.c (ppc_tc): If not OBJ_COFF, force TOC entry to
4995 align to a four byte boundary.
4996
4174e052
KR
4997Tue Jul 5 15:42:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4998
4999 * config/tc-alpha.c (load_expression): Handle 32-bit addends.
5000 (gpdisp_hi16_howto): Now points to const.
5001 (load_insn_table, alpha_ip): Fix uses of const.
5002
10f67315
KR
5003 * doc/internals.texi: Updates to COFF description. Added "@end
5004 defmac" as needed, and some extra heading and "@bye" so it'll
5005 format as a separate document.
5006
bcb62abf
ILT
5007Tue Jul 5 13:54:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5008
5009 * config/obj-elf.h (S_GET_ALIGN, S_SET_ALIGN): Define.
5010 * config/obj-elf.c (obj_elf_common): Set alignment of common
5011 symbol.
5012 * config/tc-sparc.c (s_common): If OBJ_ELF, set alignment of
5013 common symbol.
5014
655f3ef4
JL
5015Mon Jul 4 18:29:43 1994 Jeff Law (law@snake.cs.utah.edu)
5016
5017 * config/tc-hppa.c (is_complex): New macro.
5018 (cons_fix_new_hppa): "Handle" complex expressions.
5019
5020Fri Jul 1 00:48:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5021
5022 * config/obj-coff.c (write_object_file): Set s_align field from
5023 section_alignment array.
5024
04f0c2e3
KR
5025Thu Jun 30 15:05:28 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5026
5027 * write.c (write_object_file): Use bfd_com_section_ptr.
5028 * as.h (absolute_section, undefined_section): Use new BFD macros
5029 bfd_abs_section_ptr and bfd_und_section_ptr.
5030
f2554579
ILT
5031Thu Jun 30 14:36:37 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5032
5033 * config/tc-mips.c (macro): For M_LI_SS, decide how to handle it
5034 based on contents of imm_expr and offset_expr, rather than
5035 mips_pic. For M_LI_DD, decide how to handle it based on segment
5036 name of offset_expr, rather than mips_pic.
5037 (mips_ip): If g_switch_value < 4, use immediate values for 'l'.
5038 If g_switch_value < 8, use .rdata rather than .lit for 'L'.
5039
6f0b87c3
SS
5040Wed Jun 29 17:30:46 1994 Stan Shebs (shebs@andros.cygnus.com)
5041
5042 * as.c (show_usage): Break long string into shorter ones.
5043 (parse_args): Add -v, prints version id and continues.
5044 * config/tc-mips.c (md_show_usage): Break long string.
5045
5046Mon Jun 27 09:47:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
5047
5048 * config/tc-i386.c (md_parse_option): Handle "-V" and "-Q" if
5049 OBJ_ELF is defined.
5050
f488a4d6
SS
5051Sun Jun 26 16:30:48 1994 Stan Shebs (shebs@andros.cygnus.com)
5052
5053 * as.c (main) [HOST_SPECIAL_INIT]: New hook, for host-specific
5054 initialization.
5055
1f12ae43
JL
5056Wed Jun 22 00:24:55 1994 Jeff Law (law@snake.cs.utah.edu)
5057
5058 * config/tc-hppa.h (obj_frob_symbol): Define for OBJ_ELF.
5059 More gas/bfd lossage exposed by the new linker code.
5060
dff770c8
ILT
5061Tue Jun 21 11:32:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5062
1f12ae43
JL
5063 * subsegs.c (subseg_change): Clear seginfo after allocating it.
5064 (subseg_get): Pass actual size of seginfo to memset.
5065
dff770c8
ILT
5066 * subsegs.c (abs_seg_info, und_seg_info): Define if BFD_ASSEMBLER.
5067 (subseg_change): Store seg_info for bfd_abs_section_ptr in
5068 abs_seg_info, and store seg_info for bfd_und_section_ptr in
5069 und_seg_info.
5070 (subseg_get): Likewise. Also, don't set output_section if it is
5071 already set.
5072 (seg_info): Define as function.
5073 * subsegs.h (seg_info): Declare as function rather than defining
5074 as macro.
5075 * write.c (relax_and_size_seg): Call seg_info rather than
5076 bfd_get_section_userdata.
5077
e0b36f18
KR
5078Mon Jun 20 16:30:54 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5079
639c820d
KR
5080 * configure.in (ppc-*-elf*): New target, like -sysv4*.
5081
e0b36f18
KR
5082 * expr.c (operand): If "0f" is followed by '\0', don't do eol
5083 checks.
5084
256816ca
ILT
5085Mon Jun 20 15:17:43 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5086
5087 * ecoff.c (ecoff_build_aux): Call swap_tir_out and swap_rndx_out
5088 via backend pointer, not directly.
5089
de442a3c
ILT
5090Fri Jun 17 18:05:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5091
5092 * Makefile.in (config-stamp): Make sure there is at least one
5093 element in the for loop.
5094
0e68b3bc
JL
5095Fri Jun 17 11:01:04 1994 Jeff Law (law@snake.cs.utah.edu)
5096
239f16dd
JL
5097 * config/tc-hppa.c: Misc trivial changes to make gcc -Wall happy.
5098
0e68b3bc
JL
5099 * config/tc-hppa.h (elf_hppa_final_processing): Declare.
5100
5ee93e0a
KR
5101Wed Jun 15 20:44:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5102
286272fb
KR
5103 * as.c (parse_args): Cast xmalloc return value.
5104
5ee93e0a
KR
5105 * Makefile.in (config-stamp): If $(defs) contains multiple words,
5106 emit a #define line for each.
5107 * configure.in: For sparc64 target, use sparc cpu files and add
5108 sparcv9 to extra_defs. No longer treat sparc64-*-aout* specially.
5109
5110 * config/tc-sparc.c (membar_masks): Now static and const.
5111 (md_show_usage) [!NO_V9]: Add -Av9 to usage message.
5112 (current_architecture) [sparcv9]: Initialize to v9.
5113 (md_begin) [sparcv9]: Don't bother changing it unconditionally
5114 here.
5115 (s_reserve): Don't pass unexpected argument to as_bad with
5116 bad-segment message.
5117
5118 * as.h (bfd_alloc_by_size_t) [BFD_ASSEMBLER]: Declare.
5119
5120 * config/atof-ieee.c (int_to_gen): Commented out unused routine.
5121
5122 * config/tc-vax.c (md_assemble): Removed check of operand section.
5123
5124 Fri Jun 3 17:25:08 1994 Pat Rankin (rankin@eql.caltech.edu)
5125
5126 * config/obj-vms.h (DBG_S_C_COMPLX4, DBG_S_C_COMPLX8): define
5127 these new VMS symbol-type macros for `complex float' and
5128 `complex double' support. Their values come from the existing
5129 DSC$K_DTYPE_FC and DSC$K_DTYPE_DC macros in <descrip.h>.
5130 (DBG_S_C_REAL8_G, DBG_S_C_COMPLX8_G): G_float versions of
5131 REAL8 and COMPLX8; not used yet, because gcc outputs the same
5132 .stabs for `double' regardless of whether `-mg' is used.
4174e052 5133 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
5ee93e0a
KR
5134 for gcc2's predefined types "complex float", "complex double",
5135 and "complex long double" (identical to complex double).
5136
36a87ad7
ILT
5137Wed Jun 15 12:32:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5138
0e35ba9b
ILT
5139 * config/obj-coff.c (coff_frob_symbol): Use C_STAT for the .text
5140 section symbol, not C_LABEL.
5141
adf05987
ILT
5142 * config/tc-mips.c (mips_ip): Permit a modifier in 'o' case, and
5143 permit non constant expressions in 'u' case. Lets ``lui
5144 $8,%hi(foo); lw $8,%lo(foo)($8)'' work correctly.
36a87ad7 5145
a5183648
ILT
5146Mon Jun 13 12:08:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5147
5148 * config/obj-aout.c (obj_aout_frob_symbol): Warn about an attempt
5149 to put a common symbol in a set.
5150
02d4e923
ILT
5151Sat Jun 11 16:41:21 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5152
5153 Add weak symbols as an extension to a.out.
5154 * read.c (pseudo_set): Only preserve external bit for OBJ_AOUT and
5155 OBJ_BOUT if not BFD_ASSEMBLER.
5156 * config/aout_gnu.h (N_WEAKU, N_WEAKA, N_WEAKT, N_WEAKD, N_WEAKB):
5157 Define as in ../include/aout/aout64.h.
5158 * config/obj-aout.h (OBJ_SYMFIELD_TYPE): If not BFD_ASSEMBLER,
5159 define as char.
5160 (S_GET_WEAK, S_SET_WEAK): Define if not BFD_ASSEMBLER.
5161 * config/obj-aout.c (obj_pseudo_table): Add "weak".
5162 (obj_emit_symbols): Adjust type of weak symbols.
5163 (obj_aout_weak): New static function.
5164
726672c5
ILT
5165Fri Jun 10 13:48:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5166
7b1e07b4
ILT
5167 * config/obj-elf.c (obj_elf_section): Don't set any flags based on
5168 the type of a special section.
5169
726672c5
ILT
5170 * config/ho-sunos.h: Include <stdlib.h>. Don't declare malloc,
5171 realloc, free, or atol.
5172
0b3d0999
BC
5173Wed Jun 8 06:28:37 1994 Bill Cox (bill@cygnus.com)
5174
5175 * Makefile.in (check): Delete as.new dependency, so that
5176 regression test doesn't trigger an assembler build.
5177
daa7e184
ILT
5178Tue Jun 7 13:33:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5179
5180 * Makefile.in (mostlyclean, realclean): New targets.
5181 * doc/Makefile.in, testsuite/Makefile.in: Likewise.
5182
d2c71068
ILT
5183Mon Jun 6 13:10:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5184
5185 * config/tc-mips.c (RDATA_SECTION_NAME): Define.
5186 (macro): Correct M_LI_SS SVR4_PIC/EMBEDDED_PIC case. After M_LI_D
5187 or M_L_DOB or label dob, force a new frag to avoid getting
5188 confused in tc_gen_reloc.
5189 (mips_ip): Use RDATA_SECTION_NAME, not .rdata.
5190 (s_change_sec): Likewise.
5191
1fbfe108
ILT
5192Fri Jun 3 23:35:36 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5193
5194 * read.c (emit_expr): Use memset to zero out memory, rather than
5195 going through md_number_to_chars. This permits handling symbolic
5196 arguments when the size is larger than sizeof (valueT), if
5197 TC_CONS_FIX_NEW is prepared to handle the case (as it is on MIPS).
5198
f3d817d8
DM
5199Fri Jun 3 12:50:13 1994 David J. MacKenzie (djm@rtl.cygnus.com)
5200
baed44cd
DM
5201 * as.c (show_usage), config/tc-alpha.c (md_show_usage),
5202 config/tc-mips.c (md_show_usage): Fix up messages.
5203
def66e24
DM
5204 * as.h: Replace flagseen with separate variables.
5205 * as.c (parse_args): Set them. Don't accept -1 option, or -v
5206 explicitly (it's a synonym for --version).
69cb5925 5207 * as.c, input-scrub.c, messages.c, read.c, symbols.c, write.c,
def66e24
DM
5208 config/obj-aout.c, config/obj-aout.h, config/obj-bout.c,
5209 config/obj-bout.h, config/obj-coff.c, config/obj-coff.h,
5210 config/obj-vms.c, config/tc-hppa.c, config/tc-i386.c,
5211 config/tc-i960.c, config/tc-m68k.c, config/tc-mips.c,
5212 config/tc-vax.c: Use the new flag variables instead of flagseen.
5213 * config/tc-vax.c [OBJ_VMS]: Recognize -+, -1, -v, and document in
69cb5925 5214 usage.
def66e24 5215
f3d817d8
DM
5216 * as.c (show_usage): Remove target specific messages;
5217 instead, call md_show_usage.
5218 (parse_args): Use getopt_long_only. Take pointers to argc and
5219 argv.
5220 (main): Pass parse_args pointers.
5221 * as.h: Remove 3 variables that are redundant with flagseen.
5222 * as.c, messages.c: Change their users to use flagseen.
5223 Define getopt stuff.
5224 * tc.h: Update md_parse_option decl. Add md_show_usage decl.
5225 * config/tc-*.c: Add md_shortopts, md_longopts,
5226 md_longopts_size, md_show_usage. Change calling convention for
5227 md_parse_option. Remove md_parse_long_option.
5228 * config/tc-ns32k.c: Rename `struct option' to `struct ns32k_option'.
5229 * config/tc-i386.h: Don't define md_parse_option.
5230
ebd6f117
DM
5231Thu Jun 2 13:54:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
5232
5233 * as.c (show_usage): New function.
5234 (parse_args): Code moved from main.
5235 Recognize --help and --version.
5236 * config/tc-ns32k.h: Define TC_NS32K.
5237 * doc/as.texinfo: Document all of the target-independent command
5238 line options.
5239
314628f6
KR
5240Thu Jun 2 12:07:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5241
5242 * gasp.c (hash_new_table): Clear newly allocated table.
5243
5244 * config/tc-m68k.c (enum _register): Add 68060 control registers
5245 BUSCR and PCR.
5246 (last_movec_reg): New macro.
5247 (m68000_control_regs, m68010_control_regs, m68020_control_regs,
5248 m68040_control_regs, m68060_control_regs): New arrays.
5249 (control_regs): New pointer.
5250 (m68k_ip): Use control_regs instead of testing CPU every time.
5251 Use last_movec_reg too. In error messages, handle 68060, and
5252 print 68060 for mfloat, too.
5253 (m68k_init_after_args): Handle "68060". Use m68040up for making
5254 m68851 choice. Set control_regs.
5255 (md_parse_option): Handle "68060".
5256 * configure.in: Setting cpu_type, recognize m68060 too.
5257
5258 * config/obj-coff.c (fixup_segment) [!BFD_ASSEMBLER]
5259 [DIFF_EXPR_OK]: Do conversion to pc-relative for difference, even
5260 if pcrel is already set.
5261
5262 * read.c (potable): Add this_gcc_requires_the_gnu_assembler in all
5263 lower-case, in case we're ignoring case of opcodes in the input
5264 file.
5265
5266 * doc/as.texinfo (.section): Document as unavailable for a.out
5267 type formats.
5268
5269 * config/tc-alpha.c (machine): New variable.
5270 (load_insn): New macro.
5271 (load_insn_table): New function.
5272 (md_begin): Call load_insn_table, once for basic instructions and
5273 once for appropriate PAL instruction table.
5274 (md_parse_option): Set `machine' based on -m##### arguments.
5275 * config/alpha-opcode.h (alpha_pal21064_opcodes): Split out from
5276 alpha_opcodes.
5277 (alpha_pal21164_opcodes): New table.
5278 (NUM21064OPCODES, NUM21164OPCODES): New macros.
5279
5280 * configure.in (target i386-*-netbsd0.8): Use 386bsd emulation.
5281
5282 * doc/Makefile.in (install-info-gasp): Use $$dir when installing
5283 file.
5284
0221ddf7
ILT
5285Wed Jun 1 10:48:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5286
5287 * config/tc-mips.c (mips_ip): Force floating point values to be
5288 aligned correctly.
5289
488442d4 5290Fri May 27 10:05:53 1994 Ken Raeburn (raeburn@cygnus.com)
c06e55d9
KR
5291
5292 Merged in changes from gas-2.3 net release:
5293
5294 * Makefile.in (VERSION): Updated to cygnus-2.3.1.
5295
5296 * config/obj-vms.c: Replaced unchecked uses of malloc with
5297 xmalloc.
5298
5299 * listing.c (list_symbol_table): Only test BFD64, not
5300 BFD_ASSEMBLER too.
5301
314628f6
KR
5302 * config/obj-coff.c (fixup_segment) [BFD_ASSEMBLER]
5303 [DIFF_EXPR_OK]: Don't check pcrel, just convert it.
c06e55d9
KR
5304
5305 * config/obj-vms.c: Removed lots of extra semicolons after
5306 compound statements.
5307 (strchr): Don't declare here.
5308
5309 * config/ho-vax.h (realloc): Declare.
5310
5311 * config/ho-vms.h (strchr, strdup): Declare.
5312
5313 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Accept and ignore
5314 option `-q'.
5315
5316 Wed May 18 20:50:35 1994 Pat Rankin (rankin@eql.caltech.edu)
5317
5318 * config/obj-vms.h (DBG_S_C_SQUAD, DBG_S_C_UQUAD): define these
5319 new VMS symbol-type macros; signed and unsigned quadword integers,
5320 for `long long' support. Their values come from the existing
5321 DSC$K_DTYPE_QU and DSC$K_DTYPE_Q macros in <descrip.h>. The
5322 VMS debugger now recognizes `long long' variables correctly.
4174e052 5323 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
c06e55d9
KR
5324 for gcc2's predefined types "long double" (same as double, as
5325 per gcc's current state), "long long int", "long long unsigned
5326 int", and final `otherwise' case (to avoid uninitialized type
5327 and size fields). [caveat: predefined types "complex int",
5328 "complex float", "complex double", and "complex long double" are
5329 still missing.]
5330
5331 * config/ho-vms.h (EXIT_FAILURE): define as 0x10000002 instead
5332 of 0, because the latter indicates success rather than failure
5333 when passed to `exit' or return from `main' compiled by gcc2.
5334
5335 * config/obj-vms.c (array_suffix, generate_suffix): replace two
5336 hardcoded `0xa3's with macro DBG_S_C_ADVANCED_TYPE from obj-vms.h.
5337 (VMS_typedef_parse): eliminate redundant if-then-else when
5338 allocating new symbol entry and linking it to VMS_Symbol_type_list.
5339
5340 Tue May 17 20:47:31 1994 Pat Rankin (rankin@eql.caltech.edu)
5341
5342 * config/obj-vms.c (Write_VMS_MHD_Records): don't try to interpret
5343 the contents of the GAS_VERSION string when falling back to it for
5344 language processor identification.
5345
5346 * make-gas.com, vmsconf.sh (ENVIRON): fix misspelling of
5347 `psect_attr' in linker options.
5348
5349 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
5350
5351 * configure.bat: update to latest makefile.in
5352 * config/te-go32.h: [new] go32's environment
5353
a193acc0
ILT
5354Fri May 20 17:59:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5355
5356 * as.h: Don't declare parameters for strstr.
5357
f9c57637
ILT
5358Thu May 19 15:40:13 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5359
5360 * config/tc-sparc.c (md_section_align): Don't change the size if
5361 OBJ_ELF.
5362
ac7f7dfe
ILT
5363Wed May 18 13:08:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5364
5365 * Makefile.in (install): Redirect ln output to /dev/null. If ln
5366 fails on gasp, install gasp.new, not gasp.
5367
44e8d616
JL
5368Wed May 18 09:16:36 1994 Jeff Law (law@snake.cs.utah.edu)
5369
5370 * config/tc-hppa.c (pa_ip): Use R_HPPA_ABS_CALL, not R_HPPA for
5371 absolute calls.
5372
ee8b8346
JL
5373Tue May 17 12:50:46 1994 Jeff Law (law@snake.cs.utah.edu)
5374
5375 * config/tc-hppa.c (pa_parse_fp_cmp_cond): Report an error
5376 on a partial completer match.
5377
3315c7c7
JL
5378Mon May 16 12:03:49 1994 Jeff Law (law@snake.cs.utah.edu)
5379
5380 * config/tc-hppa.c: Change .hppa_unwind to .PARISC.unwind
5381 throughout code.
5382 (is_complex): Delete definition and support for complex relocation
5383 types.
5384 (tc_gen_reloc): Delete special unwind crud for ELF. Simplify and
5385 rewrite ELF code based on 94-02-02 PA ELF draft spec.
5386 (pa_build_unwind_subspace): Use standard PARISC_DIR32 relocs for
5387 the unwind descriptors.
5388
c794f0aa
SC
5389Fri May 6 14:13:15 1994 Steve Chamberlain (sac@cygnus.com)
5390
69cb5925 5391 * config/go32.mh: New makefile fragment for go32 crossing.
c794f0aa
SC
5392 * configure.in (host==go32): Use new fragment.
5393
2db90a63
ILT
5394Fri May 6 14:35:58 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5395
5396 * gasp.c: Include libiberty.h.
5397 (main): Remove unused variable i.
5398
5399 * config/tc-ppc.c (md_begin): When using -many, permit comparison
5400 instructions to appear multiple times in the opcode table.
5401
59232011
KR
5402Thu May 5 19:14:43 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5403
2db90a63
ILT
5404 * Makefile.in (VERSION): Update to 2.2.90.
5405
fbefddfb
KR
5406 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Don't permit additions
5407 to the symbol table if it's already been set in the output bfd.
5408 (symbol_begin) [! EMIT_SECTION_SYMBOLS] [RELOC_REQUIRES_SYMBOL]:
5409 Don't use bfd_abs_section.symbol for gas absolute symbol.
5410
59232011
KR
5411 * doc/Makefile.in (distclean, clean-dvi, clean-info): Delete gasp
5412 files too.
5413
6d41de19
ILT
5414Thu May 5 18:12:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5415
5416 * config/tc-mips.c (mips_emit_delays): Make call to
5417 mips_no_prev_insn unconditional.
5418
a139d99b
KR
5419Thu May 5 17:25:38 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5420
5421 * config/obj-coff*.*: Merged coffbfd versions into coff versions,
5422 with a single "#ifdef BFD_ASSEMBLER" controlling most of it for
5423 now. Deleted obj-coffbfd.* files.
5424 * configure.in: Always use obj-coff.* for COFF targets.
5425
9267b020
KR
5426Wed May 4 13:34:11 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5427
a139d99b
KR
5428 * config/te-dpx2.h (TARGET_FORMAT, REGISTER_PREFIX_OPTIONAL):
5429 Define.
5430 * configure.in (m68k-bull-sysv3*): Enable.
5431
9267b020
KR
5432 * config/coff_gnu.h: Deleted.
5433
9fc63ce0
ILT
5434Wed May 4 11:29:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5435
2237e240
ILT
5436 * config/tc-m68k.h (TARGET_FORMAT): If not TE_SUN3, define as
5437 "a.out-zero.big".
5438
9fc63ce0
ILT
5439 * config/obj-coffbfd.c (fixup_segment): Make common symbol and PC
5440 relative adjustments when TE_LYNX is defined as well as when
5441 TC_I386 is defined.
5442
a3547e53
KR
5443Wed May 4 02:29:21 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
5444
3f048548
KR
5445 * as.h (strstr): Restore declaration.
5446 (subseg_get) [BFD_ASSEMBLER]: Declare.
5447
5448 * write.c (write_object_file): If obj_adjust_symtab is defined,
5449 invoke it. Then call set_symtab, and finally invoke *_frob_file
5450 hooks.
5451 * config/obj-coff.c (coff_adjust_symtab): Renamed from
5452 coff_frob_file.
5453 * config/obj-coff.h (coff_adjust_symtab): Changed declaration
5454 accordingly.
5455 (obj_adjust_symtab): Macro also changed.
5456
a3547e53
KR
5457 * configure.in (i386-*-gnu*): New target, handled like i386-mach.
5458
5459Tue May 3 21:04:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5460
5461 * config/obj-coff.h (TARGET_FORMAT) [TC_I960]: Select little
5462 endian version.
5463
5464 * config/obj-coffbfd.h (TARGET_FORMAT) [TC_I960]: Ditto.
5465
5466 * config/obj-coff.c (coff_frob_section): Round up the size of
5467 every section to a multiple of the alignment, so that BFD doesn't
5468 surprise us.
5469
5470 Eliminate many simple differences between the two COFF back ends:
5471
5472 * config/obj-coffbfd.c: Removed all uses of DEFUN and DEFUN_VOID.
5473 Made minor stylistic changes, deleted some register declarations.
5474 (stack_top): Deleted.
5475 (symbol_to_chars): Use absolute_section and reg_section instead of
5476 the corresponding SEG_* symbols.
5477 (obj_coff_endef, tag_find_or_make, fixup_segment): Likewise.
5478 (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
5479 Moved to just after pseudo-op table. All functions now static.
5480 (stack_delete): Removed declaration.
5481 (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
5482 after stack functions.
5483 * config/obj-coffbfd.h: Reordered some declarations and macros.
5484 (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
5485 (stack typedef): Deleted.
5486 (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
5487 (SYM_AUXENT): New macro.
5488 (SA_GET_*, SA_SET_*): Define in terms of SYM_AUXENT when feasible.
5489 (SF_GET_*, SF_SET_*): Define in terms of SF_GET when feasible.
5490 (SA_GET_SYM_TAGNDX, SA_GET_SYM_ENDNDX, SA_SET_SYM_TAGNDX,
5491 SA_SET_SYM_ENDNDX, object_headers typedef, data_section_header,
5492 text_section_header): Delete non-BFD_HEADERS versions, since we
5493 always define that symbol now.
5494
5495 * config/obj-coff.c (stack_top): Deleted.
5496 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
5497 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Change
5498 argument name from "ignored" to "ignore".
5499 (obj_coff_val): Use frag_now_fix.
5500 (obj_pseudo_table): Removed IGNORE_DEBUG version, since it doesn't
5501 get used.
5502 (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
5503 Moved to just after pseudo-op table. All functions now static.
5504 (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
5505 after stack functions.
5506 * config/obj-coff.h: Reordered some declarations and macros.
5507 Protected against multiple inclusions.
5508 (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
5509 (stack typedef): Deleted.
5510 (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
5511 (stdoutput): Deleted declaration.
5512 (TARGET_FORMAT) [TC_I386]: Don't define if already defined.
5513
1b96bdce
ILT
5514Mon May 2 17:09:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5515
5516 * subsegs.h (segment_info_type): Use fix_tail field even if
5517 BFD_ASSEMBLER.
5518 * subsegs.c (subseg_change): Initialize fix_tail field.
5519 (subseg_get): Likewise.
5520 * write.c (frags_chained): New static variable.
5521 (fix_new_internal): If frags_chained is set, use fix_root and
5522 fix_tail from seg_info (now_seg), rather than frchain_now.
5523 (chain_frchains_together_1): Set fix_tail field.
5524 (chain_frchains_together): Set frags_chained.
5525
17f0b355
KR
5526Thu Apr 28 01:39:15 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
5527
5528 * config/tc-mips.c (s_option): Only refer to g_switch_* variables
5529 if GPOPT is defined.
5530 (s_abicalls): Ditto.
5531 (md_apply_fix): Cast char* to unsigned char* to avoid pointer
5532 mismatch.
5533
fa1a86f3
SC
5534Wed Apr 27 11:06:32 1994 Steve Chamberlain (sac@cygnus.com)
5535
5536 * configure.in (i386-*-go32): Uses coff now.
69cb5925 5537 * gasp.c (main): Now takes -D on command line.
fa1a86f3
SC
5538 (show_usage): Describe new options.
5539
b46f83f2
KR
5540Tue Apr 26 17:10:30 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5541
5542 * listing.c (list_symbol_table): Print "NO DEFINED SYMBOLS" and
5543 "NO UNDEFINED SYMBOLS" if there aren't any, instead of displaying
5544 the header with an empty list.
5545
fb51366f
KR
5546 * config/obj-coffbfd.c (fill_section): Check COFF_NOLOAD_PROBLEM
5547 also before setting STYP_NOLOAD for .bss section.
5548
926ffe94
KR
5549 * config/tc-m68k.c (flag_reg_prefix_optional): New variable.
5550 Initialized to value of REGISTER_PREFIX_OPTIONAL, if defined, or
5551 zero.
5552 (m68k_reg_parse): If flag_reg_prefix_optional is set, permit
5553 register prefix to be absent.
5554 (m68k_ip_op): Accept `&' also for immediate constants.
5555 (insert_reg): Don't bother with (two!?) sanity checks of the
5556 symbol table when inserting each register.
5557 (m68k_parse_long_option): New function. Set
5558 flag_reg_prefix_optional if "register-prefix-optional" is passed.
5559 * config/tc-m68k.h (REGISTER_PREFIX): Always define if not already
5560 defined.
5561 (OPTIONAL_REGISTER_PREFIX): Don't define.
5562 (REGISTER_PREFIX_OPTIONAL): If not already defined, define as zero
5563 or one depending on M68KCOFF.
5564
5565 Some changes to help Apollo support, from troy@cbme.unsw.edu.au:
5566 * config/tc-m68k.c (DATA, ADDR, SP, FPREG, COPNUM, BAD, BAC):
5567 Define as macros instead of enumerators, since the Apollo compiler
5568 can't handle "enumVal1, enumVal2 = enumVal1" when defining an enum
5569 type.
5570 (make_pcrel_absolute) [NO_PCREL_RELOCS]: New function.
5571 (tc_coff_fix2rtype) [NO_PCREL_RELOCS]: Generate only R_RELBYTE,
5572 R_DIR16, and R_DIR32 relocs.
5573 * config/tc-m68k.h [TE_APOLLO] (COFF_MAGIC, COFF_AOUTHDR_MAGIC):
5574 Use Apollo versions.
5575 [TE_APOLLO] (OBJ_COFF_OMIT_OPTIONAL_HEADER): Undefine. That is,
5576 do include the optional header for Apollo target.
5577 (COFF_MAGIC): Don't define as MC68MAGIC if it's already defined.
5578
5579 * config/tc-m68k.h [TE_DELTA] (LEX_PCT): Define as 1, so that `%'
5580 can be used within a label name.
5581
5582 * config/tc-m68k.h (m68k_init_after_args): Declare.
5583 (tc_init_after_args): Define as m68k_init_after_args.
5584 * config/tc-m68k.c (m68k_init_after_args): New function,
5585 containing one-shot code from md_assemble. Added warning for
5586 combination of 68040 and 68851.
5587 (md_assemble): Startup-time code deleted.
5588
497c179a
ILT
5589Mon Apr 25 16:19:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5590
5591 * doc/Makefile.in (clean, distclean): Remove asconfig.texi.
5592
f38cd6ec
JL
5593Sun Apr 24 00:13:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
5594
5595 * config/tc-hppa.c (pa_ip): 13 bit immediate constant (for break
5596 instruction) is unsigned.
5597
92867d8e
ILT
5598Fri Apr 22 17:58:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5599
5600 * config/obj-ecoff.c (ecoff_frob_file): Use bfd_ecoff_set_gp_value
5601 and bfd_ecoff_set_regmasks to set the GP value and the register
5602 masks, rather than using the now obsolete fake .reginfo section.
5603
e860dfd0
KR
5604Fri Apr 22 15:17:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5605
5606 * listing.c (list_symbol_table): Don't print register symbols as
5607 undefined.
5608
988238d3
KR
5609 * config/obj-coff.c (obj_symbol_new_hook): Don't need to strip
5610 underscores, since symbol_new will already have done it.
5611 * config/obj-coffbfd.c (obj_symbol_new_hook): Ditto.
5612
a926dd6a
KR
5613 * as.c (main): If tc_init_after_args is defined, invoke it after
5614 all arguments have been processed.
5615
5616 Some changes to help Apollo support, from troy@cbme.unsw.edu.au:
5617 * as.c (perform_an_assembly_pass) [TE_APOLLO]: Create .wtext
5618 section instead of .text. Call create_target_segments.
5619 * read.c (demand_copy_string): No longer static.
5620
6fdc26e6
ILT
5621Thu Apr 21 15:50:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5622
5623 * config/tc-mips.c (append_insn): Permit branches to be switched
5624 with the preceding instruction even if .set nobopt has been seen.
5625 .set nobopt actually controls whether to bring up an instruction
5626 from the branch target, which gas does not currently support.
5627
a6652b1c
KR
5628Wed Apr 20 18:46:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5629
71b4de6f
KR
5630 * config/obj-coff.h, config/obj-coff.c: Deleted all code used only
5631 when BFD_ASSEMBLER is not defined, and all conditionals relating
5632 to such code. No such targets remain.
5633
5634 Fixes for stabs-in-coff:
5635 * config/obj-coff.c: Include subsegs.h.
5636 (coff_frob_section): New function.
5637 (obj_coff_init_stab_section): New function.
5638 * config/obj-coff.h (obj_coff_init_stab_section,
5639 coff_frob_section): Declare.
5640 (obj_frob_section): New macro; uses coff_frob_section.
5641 (INIT_STAB_SECTION): New macro; uses obj_coff_init_stab_section.
5642
a6652b1c
KR
5643 * config/tc-sparc.c (md_section_align): Always round up to
5644 multiple of alignment power specified in bfd target vector.
d924d209
KR
5645
5646 * gasp.c: Include ctype.h.
5647
19990560
KR
5648Mon Apr 18 21:08:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5649
5650 * doc/Makefile.in, doc/as.texinfo: Renamed asdoc-config.texi to
5651 asconfig.texi.
5652
5653 * doc/Makefile.in (install-info-as, install-info-gasp): Get file
5654 names from source directory without pathname.
5655
5656 * config/obj-vms.c (VMS_write_object_file): While looking for
5657 register mask, skip empty fill frags caused by enabling listing
5658 output.
5659
5660 * config/ho-sysv.h: Include string.h.
5661
5662 * doc/internals.texi: New (well, recently added) file. Just added
5663 info on as_warn and friends.
5664
9de7c1fc
JL
5665Mon Apr 18 14:28:22 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
5666
5667 * config/tc-hppa.c (pa_parse_space_stmt): Use the built-in
5668 defaults for defined, private, and spnum fields for the
5669 $TEXT$ and $PRIVATE$ spaces. Do not clobber spnum. Do
5670 not reset the segment if just updating a space.
5671 (pa_spaces_begin): Set BFD section flags for all built-in
5672 subspaces.
5673
e904716c
ILT
5674Fri Apr 15 10:51:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5675
37032d95
ILT
5676 * ecoff.c (first_proc_ptr): New static variable.
5677 (add_procedure): Set first_proc_ptr if it hasn't been set.
5678 (ecoff_build_lineno): If the first procedure does not start at
5679 address zero, insert a dummy line to compensate.
5680
e904716c
ILT
5681 * Makefile.in (bootstrap, bootstrap2, bootstrap3): Make gasp.new
5682 as well as as.new.
5683
d6f98c55
KR
5684Thu Apr 14 15:12:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5685
5686 * expr.c (operand): Try to parse "0f" and "0b" sequences as
5687 floating point and binary numbers respectively; if it doesn't
5688 work, treat them as local labels.
5689
c92d9ee9
KR
5690 * Makefile.in: Make $(OBJS) depend on $(ALL_OBJ_DEPS).
5691 * configure.in: Set ALL_OBJ_DEPS in output Makefile.
5692
5693 Based on suggestions from <BAILEY@hmivax.humgen.upenn.edu>
5694 (Charles Bailey):
5695 * vmsconf.sh: In generated file, get ".obj" suffix right, build
5696 source files from other directories into objects in the current
5697 directory, and specify PSECT attributes explicitly to linker.
5698 Also added missing label.
5699 * Makefile.in (stamp-mk.com): Reference new variable
5700 VMS_OTHER_OBJS for list of non-local object files, instead of
5701 listing them here.
5702 (VMS_OTHER_OBJS): New variable, added more libiberty files.
5703 * make-gas.com: Regenerated.
5704
5705 * config/ho-vms.h (unlink): Define as delete.
5706
5707 * config-gas.com: Fix quoting on TARGET_CANONICAL definition.
5708 Delete files before creating them.
5709
1a69212c
ILT
5710Thu Apr 14 13:34:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5711
b3cd8555
ILT
5712 * Makefile.in (de-stage1, de-stage2, de-stage3): Use rm -f.
5713
1a69212c
ILT
5714 * config/tc-mips.h (DIFF_EXPR_OK): Define.
5715 * config/tc-mips.c (macro_build): Permit BFD_RELOC_PCREL_LO16 for
5716 certain cases of 'i', 'j' and 'o'. Change 'u' to take an
5717 argument, the reloc type.
5718 (load_register): Pass reloc type to macro_build for 'u'.
5719 (macro): Likewise. For M_LA_AB permit a difference expression
5720 when generating embedded PIC code between an arbitrary symbol and
5721 a symbol in the .text section.
5722 (mips_force_relocation): Force BFD_RELOC_PCREL_HI16_S and
5723 BFD_RELOC_PCREL_LO16 to be emitted.
5724 (md_apply_fix): Check that most relocs are not PC relative.
5725 Handle BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
5726 (tc_gen_reloc): Change #error to as_fatal. Handle
5727 BFD_RELOC_PCREL_LO16 and BFD_RELOC_PCREL_HI16_S.
5728
cc886e3d
SS
5729Tue Apr 12 18:25:13 1994 Stan Shebs (shebs@andros.cygnus.com)
5730
5731 * subsegs.c (subsegs_begin): Call memset with args in the correct
5732 order.
5733 (subseg_get): Clear newly allocated seginfo, set its pointer slots
5734 to NULL instead of 0.
5735
05210990
JL
5736Mon Apr 11 09:00:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
5737
caed9e82
JL
5738 * config/tc-hppa.c (pa_procend): Handle case where label was
5739 defined after the .proc directive.
5740
05210990
JL
5741 * config/tc-hppa.c (pa_procend): Give an error if we encounter a
5742 procend for a procedure without a name.
5743
1c803e52
ILT
5744Thu Apr 7 14:28:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5745
5746 * config/tc-mips.c (macro): Pass NULL for expression argument to
5747 macro_build for nori case.
5748 (SWITCH_TABLE): Define.
5749 (mips_force_relocation): Force a relocation for a switch table
5750 entry.
5751 (md_apply_fix): Write switch table entry value into file.
5752 (tc_gen_reloc): Use BFD_RELOC_GPREL32 for a switch table entry,
5753 and set the addend to the difference between the reloc address and
5754 the subtrahend.
5755
0b503989
JL
5756Thu Apr 7 10:38:18 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
5757
5758 * config/tc-hppa.h (elf_tc_symbol): Delete. No longer used.
5759 (elf_tc_make_sections): Likewise.
5760 (hppa_tc_make_sections, hppa_tc_symbol): Delete extern decls.
5761
5762 * config/tc-hppa.c (hppa_tc_make_sections): Delete function.
5763 (hppa_tc_symbol): Likewise.
5764
5765 * config/obj-elf.c (elf_frob_file): Delete elf_tc_symbol and
5766 elf_tc_make_sections stuff. It was there to support PA braindamage
5767 which has been fixed, and in the case of elf_tc_make_sections is
5768 redundant with elf_tc_final_processing.
5769
f39a73b1
JL
5770Wed Apr 6 20:48:30 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
5771
5772 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
5773 manufacturer.
5774
f3645945
ILT
5775Tue Apr 5 15:48:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5776
5777 * config/tc-mips.c (mips_ip): For case 'o', when generating
5778 embedded PIC code, accept the difference between two local symbols
5779 as being constant.
5780 (mips_force_relocation): Only force a reloc to be generated for a
5781 PC relative fixup.
5782 (md_apply_fix): For BFD_RELOC_32 and BFD_RELOC_LO16, put the fixup
5783 value into the file if the fixup will not generate a reloc.
5784
03fcf1f8
KR
5785Tue Apr 5 11:14:14 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
5786
5787 * config/tc-sparc.c (s_reserve): If section passed isn't bss,
5788 don't spew remainder of input file in error message.
5789 (tc_gen_reloc): If bfd_reloc_type_lookup returns null, print error
5790 message with reloc type and try to process remainder of file.
5791
5792 * doc/Makefile.in (install-info-as, install-info-gasp): New
5793 targets, now explicitly checking $(srcdir) for info files.
5794 (install-info): Depend on both of them; do nothing more.
5795
79381848
JL
5796Mon Apr 4 17:06:04 1994 Jeffrey A. Law (law@cygnus.com)
5797
5798 * config/tc-hppa.c (tc_gen_reloc): Fix thinko in ELF version.
5799
1e147242
ILT
5800Mon Apr 4 12:39:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5801
1937a665
ILT
5802 * config/tc-ppc.c (ppc_insert_operand): Check PPC_OPERAND_SIGNED
5803 flag rather than signedp field. Only permit extended range if
5804 PPC_OPERAND_SIGNOPT flag is set and assembling in 32 bit mode.
5805 Based on patch from David Edelsohn (edelsohn@npac.syr.edu).
5806
1e147242
ILT
5807 * config/tc-ppc.c (ppc_size): New static variable.
5808 (ppc_arch): Check for PPC_OPCODE_PPC before PPC_OPCODE_POWER.
5809 (md_begin): If an instruction has a size specific flag set, only
5810 add it if we are assembling that size.
5811
7ab2e983
ILT
5812Thu Mar 31 16:51:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5813
5814 * config/tc-sparc.c (tc_gen_reloc): Add a gruesome hack to get
5815 cross section PC relative relocs right for COFF and ELF.
5816
75d20ac8
KR
5817Mon Mar 28 14:38:23 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5818
5819 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Always define.
5820 (OBJ_PROCESS_STAB): Don't define.
5821
57afabd0
ILT
5822Mon Mar 28 12:40:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5823
5824 * config/obj-aout.c (obj_aout_frob_symbols): Don't let BFD clobber
5825 the type of symbol set symbols which happen to be in the absolute
5826 or undefined section.
5827
882bdc69
ILT
5828Mon Mar 28 12:35:00 1994 David Edelsohn (edelsohn@npac.syr.edu)
5829
5830 * config/tc-ppc.c (md_parse_option): Add -mpwrx (POWER/2 aka
5831 RIOS2), -mpwr (POWER aka RIOS1), -mppc (PowerPC aka MPC603/604),
5832 and -many (all architectures).
5833
de3ffc7a
JL
5834Sun Mar 27 14:04:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
5835
69cb5925 5836 * config/tc-hppa.c (tc_gen_reloc): Set addend for relocation
de3ffc7a
JL
5837 involving a function symbol which is not a plabel to zero.
5838 (md_apply_fix): Never pass a function symbol to field_adjust.
5839
5b63f465
ILT
5840Fri Mar 25 17:35:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5841
645f842c
ILT
5842 * config/obj-aout.c (obj_aout_frob_symbol): If N_EXT is set for an
5843 N_INDR symbol, set BSF_EXPORT and clear BSF_LOCAL.
5844
5b63f465
ILT
5845 * config/tc-mips.c (append_insn): If EMBEDDED_PIC, don't swap a
5846 branch with an instruction that uses $at, in case the branch is
5847 later expanded.
5848 (macro): If EMBEDDED_PIC, case M_JAL_A may use $at.
5849 (md_pcrel_from): If not OBJ_AOUT, return 4 for an undefined symbol
5850 to make it pcrel_offset.
5851 (tc_gen_reloc): If not OBJ_AOUT, set the reloc addend to
5852 reloc->address; another gruesome hack to get gas reloc handling to
5853 do the right thing.
5854
11d7c064
KR
5855Thu Mar 24 21:29:29 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5856
5857 * config/tc-alpha.c (alpha_ip): Only set GP prolog size if using
5858 PV register.
5859 (T12): New macro.
5860 (emit_insn): New function.
5861 (md_assemble): Call it.
5862 (alpha_force_relocation): Handle BFD_RELOC_26, for call_pal
5863 instructions.
5864 (lituse_pending): New variable. Set by anything that generates a
5865 LITERAL reloc, cleared by anything that generates a LITUSE reloc,
5866 tested by code that might want to emit a LITUSE reloc.
5867 (emit_unaligned_io): New function. Currently calls md_assemble,
5868 but it should eventually be converted to generate the insn itself
5869 and call emit_insn directly.
5870 (emit_load_unal, emit_store_unal, emit_byte_manip_r,
5871 emit_extract_r, emit_insert_r, emit_mask_r, emit_sign_extend,
5872 emit_bis_r): Likewise.
5873 (alpha_ip, case 'I'): Handle with BFD_RELOC_23.
5874 (alpha_ip, label get_macro): Don't emit the final instruction if
5875 the opcode is zero.
5876 (alpha_ip, case 'B', subcase 'd'): New case, for subword and
5877 unaligned memory access macros.
5878 (md_apply_fix): Handle BFD_RELOC_26. Generate an error message if
5879 the value can't be resolved.
5880
5881Wed Mar 23 16:06:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5882
5883 * config/tc-mips.c (md_parse_option): For -membedded-pic, force
5884 the -G value to 0x7fffffff. For SVR4 PIC options, don't call
5885 bfd_set_gp_size here, it's done in md_begin. Don't permit -G with
5886 -membedded-pic.
5887 (mips_force_relocation): New function.
5888 (md_apply_fix): Set fixP->fx_done appropriately.
5889 (s_change_sec): For EMBEDDED_PIC, change .data and .rdata to
5890 .sdata.
5891 * config/tc-mips.h (TC_FORCE_RELOCATION): Define.
5892 (mips_force_relocation): Declare.
5893 (TC_HANDLE_FX_DONE): Define.
5894
e1b5066f
ILT
5895Tue Mar 22 13:58:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5896
d9aba805
ILT
5897 * config/tc-mips.c (enum mips_pic_level): New enum.
5898 (mips_pic): Change from int to enum mips_pic_level. Change all
5899 uses (0 becomes NO_PIC, 2 becomes SVR4_PIC).
5900 (load_address): Handle EMBEDDED_PIC.
5901 (macro): Handle EMBEDDED_PIC in all PIC cases.
5902 (md_parse_option): Accept -membedded-pic to use EMBEDDED_PIC. If
5903 OBJ_ELF, accept -KPIC and -call_shared to use SVR4_PIC and accept
5904 -non_shared to use NO_PIC (this is how the Irix 5 assembler
5905 works). Do not permit -G with SVR4_PIC.
5906 (s_abicalls): Warn if -G was used, and force -G 0.
5907 (tc_gen_reloc): Set reloc->addend to 0 for a PC relative reloc for
5908 anything but a.out, not just for ELF. For ECOFF, don't generate a
5909 BFD_RELOC_16_PCREL_S2 reloc unless using EMBEDDED_PIC.
5910
e1b5066f
ILT
5911 * config/obj-ecoff.h (obj_sec_sym_ok_for_reloc): Define to be 1.
5912
5913Sun Mar 20 16:31:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
5914
5915 * config/tc-hppa.c (create_new_space): Use ints, not chars as
5916 parameters to avoid losing when compiling with HP CC.
5917 (create_new_subspace, update_subspace, fix_new_hppa): Likewise.
5918
1871f91a
KR
5919Sun Mar 20 14:43:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5920
c37f6138
KR
5921 * Makefile.in (config-stamp): If `defs' is defined, emit a
5922 preprocessor directive to create a macro named by this value into
5923 config.new; don't explicitly go for BFD_ASSEMBLER.
5924 * configure.in: Define `defs', not `BFDDEF'. Set it to
5925 MANY_SEGMENTS for any obj-coffbfd target.
5926 * config/obj-coffbfd.h (BFD_HEADERS, BFD): Define.
5927 * config/i386coff.mt (TDEFINES): Don't define BFD, MANY_SEGMENTS,
5928 or BFD_HEADERS.
5929 (LOCAL_LOADLIBES): Deleted.
5930 * config/m68kcoff.mt (TDEFINES): Don't define those macros.
5931 * config/m88kcoff.mt (TDEFINES): Ditto.
5932 * config/ebmon29k.mt: Deleted.
5933 * config/h8300hds.mt: Deleted.
5934 * config/ic960coff.mt: Deleted.
5935 * config/sparc.mt: Deleted.
5936 * config/h8300.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
5937 * config/h8500.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
5938 * config/sh.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
5939 * config/z8k.mt (LOCAL_LOADLIBES): Deleted.
5940 (TDEFINES): Don't define the coffbfd macros.
5941
5942 * Makefile.in: Insert makefile fragments before OBJS definition.
5943 (OBJS): Add $(TE_OBJS).
5944
3680de74
KR
5945 * config/obj-coff.c (obj_pseudo_table): Supply "section"
5946 unconditionally.
5947
1871f91a
KR
5948 * write.c (set_symtab): Define only if BFD_ASSEMBLER.
5949
c20c7506
JL
5950Sun Mar 20 12:06:05 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
5951
5952 * Makefile.in (STAGESTUFF): Add gasp.new.
5953
634233a3
KR
5954Fri Mar 18 20:09:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
5955
1cf7548e
KR
5956 * write.c (symbol_table_frozen): New variable, to be set after
5957 bfd_set_symtab is called.
5958 (dump_section_relocs): Note whether a symbol is a section symbol
5959 or not.
5960 (adjust_reloc_syms): For now, always supply an absolute symbol for
5961 fixups without symbols but not yet `done'. Use section_symbol to
5962 get the symbol, instead of going directly for abs_symbol.
5963 (write_relocs) [DEBUG4]: Abort if any symbol referred to by a
5964 reloc is not a section symbol and is not in the symbol table.
5965 (set_symtab): New function, broken out from write_object_file.
5966 Counts symbol table instead of relying on an earlier count.
5967 (write_object_file): Call set_symtab, but do it after potentially
5968 invoking the *_frob_file macros. Don't bother counting symbols.
5969 Call symbol_remove, instead of expanding it in place. Moved the
5970 conditionalized `object_file_size' declaration down to
5971 conditionalized block where it's used. When using the absolute
5972 symbol for a fixup without a symbol, set sy_used_in_reloc.
5973 (write_object_file) [BFD_ASSEMBLER]: Call section_symbol to get
5974 the correct symbol for the absolute section.
5975
ec3c65e1
KR
5976 * subsegs.c (section_symbol): Use symbol_new instead of
5977 symbol_make, since we may want it to go into the symbol table.
5978 Make the new symbol have internal linkage. If
5979 obj_sec_sym_ok_for_reloc says it's okay, use the BFD section
5980 symbol with the newly created GAS symbol.
5981 (obj_sec_sym_ok_for_reloc): Default to always returning 0.
5982 * config/obj-aout.h (obj_sec_sym_ok_for_reloc) [BFD_ASSEMBLER]:
5983 New macro.
5984 * config/obj-elf.h (obj_sec_sym_ok_for_reloc): New macro.
5985
5986 * config/tc-sparc.c: Include subsegs.h.
5987 (in_signed_range): New function.
5988 (sparc_ip): Use it.
5989 (sparc_ip, case 'i'): Use BFD_RELOC_SPARC13, not _BASE13.
5990 (sparc_ip, label "immediate"): Reject constants for pcrel
5991 instructions only if the relocation type indicates a "call"
5992 instruction and the offset is within range of a "jmpl %g0". If
5993 it's not in range, use the absolute section symbol plus an offset.
5994 (md_apply_fix): Use in_signed_range. Combined _SPARC13 and
5995 _BASE13 cases.
5996 (tc_gen_reloc): Permit BFD_RELOC_SPARC13.
5997
1be3cf74
KR
5998 * config/ic960coff.mt (TDEFINES): Fixed typo (MANY_SECTIONS, not
5999 MANY_SEGMENTS).
6000
634233a3
KR
6001 * configure.in: Eliminated all targets using obj-coff but not
6002 defining BFD_ASSEMBLER; I think all such targets that are
6003 supported will be matched by real CPU-OS combinations earlier in
6004 the case statement.
6005 (targets *-*-coff*, *-sysv*, *-*-sco*, *-*-sysv32): Deleted. Made
6006 some comments about the dpx2 configuration, but left it disabled,
6007 since it couldn't be reached before.
6008 (target a29k-amd-ebmonold): Deleted.
6009
49ccc555
JL
6010Thu Mar 17 13:36:09 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6011
6012 * config/tc-hppa.c (pa_import): Correctly handle importing of an
6013 already defined symbol.
6014
23dc1ae3
ILT
6015Wed Mar 16 17:11:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6016
614a3211
ILT
6017 * config/tc-mips.c (mips_ip): Only accept overly large values for
6018 the 'j' operand if there are no further alternatives for this
6019 instruction.
6020
d6e6bc1c
ILT
6021 * config/obj-coffbfd.c (adjust_stab_section): Initialize
6022 stabstrseg to SEG_UNKNOWN, not -1. After loop, check whether it
6023 is not SEG_UNKNOWN rather than checking whether it is >= 0.
6024
23dc1ae3
ILT
6025 * config/tc-mips.c (mips_align): Take new argument, label, and use
6026 it instead of global insn_label.
6027 (s_align, s_cons, s_float_cons, s_gpword): Save insn_label before
6028 call to mips_emit_delay and pass it to mips_align.
6029
6030Wed Mar 16 11:54:12 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6031
69cb5925 6032 * config/tc-hppa.c (pa_equ): Handle both .reg and .equ correctly.
c38c91da 6033
f2ada910
JL
6034 * config/tc-hppa.c (pa_callinfo): Accept "millicode" as an
6035 argument to a .callinfo directive. Don't loop forever on errors.
6036
69cb5925
KR
6037 * config/tc-hppa.c (pa_equ): Use pa_parse_number so that we can
6038 use pre-defined registers as arguments.
23dc1ae3 6039
954979ca
KR
6040Mon Mar 14 14:29:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6041
dbc529c4
KR
6042 * write.c (write_object_file): Check both S_IS_LOCAL and
6043 S_IS_EXTERNAL when deciding whether to discard a symbol.
6044
6045 * config-gas.com: Scan Makefile.in, not version.c, for current
6046 version number. Delete all versions of temp files when finished
6047 with them. Create config.h.
6048
6049 * config/obj-vms.c (VMS_Initialized_Data_Size): Cache symbol
6050 values to reduce number of lookups with S_GET_VALUE. Skip debug
6051 symbols to avoid "a really nasty bug". (From Holger Teutsch,
6052 holger@botbso.rhein-main.de.)
6053 (VMS_write_object_file): For "__vt.*" symbols, set S_GET_OTHER
6054 field. (Also from Holger Teutsch.) Watch for a would-be register
6055 mask that spans frags.
6056
6057 * config/obj-coffbfd.c (obj_coff_line): Set symbol lnno field with
6058 this_base, not line_base. (Patch from Andreas Arens,
6059 ari@obelix.av.rwth-aachen.de.)
6060
6061 * config/obj-aout.c (obj_crawl_symbol_chain): Retain symbols that
6062 look local if they're exported or undefined. Used to be done for
6063 i960 only.
6064
6065 * read.c (s_lcomm, s_comm): Print symbol name being redefined.
6066 Get it from the looked-up symbol, instead of using the string from
6067 the input stream, which is no longer null-terminated.
6068 (LEX_PCT): New macro, defaults to 0.
6069 (lex_type): Use it for `%'.
6070
6071 * config/tc-vax.c (md_parse_option): Handle `-h#' option for VMS.
6072 (vip_op): Now static, and returns void. Callers changed. Added
6073 forward decl.
6074 (vip): Ditto. Call as_fatal directly if a program bug is
6075 detected.
6076 (op_hash): Let default initialization suffice.
6077
954979ca
KR
6078 * Makefile.in (literal.o): Provide dependencies.
6079
6080 * configure.in: Set new makefile variable OPCODES_LIB.
6081 * Makefile.in (LIBS): Use it.
6082
6083 * Makefile.in (make-gas.com, stamp-mk.com): New targets.
6084 * vmsconf.sh: New file.
6085 * make-gas.com: Regenerated from new script.
6086
6087 * configure.in (sparc*-*-lynxos*): Handle any version number
6088 suffix after "lynxos". Set emulation to lynx.
6089
6090Mon Mar 14 11:30:49 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6091
6092 * config/obj-coff.c (obj_coff_section): Delete declaration.
6093
62ea7974
ILT
6094Fri Mar 11 22:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6095
6096 * config/tc-ppc.c (md_pcrel_from): Return 0 for undefined ELF
6097 symbols.
6098 (ppc_is_toc_sym): Change .toc to .got.
6099 (md_apply_fix): Change handling of ELF relocs.
6100 (tc_gen_reloc): Likewise.
6101
63ca2e81
KR
6102Fri Mar 11 17:42:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6103
6104 * config/obj-vms.c (Close_VMS_Object_File): Add comment pointing
6105 out some code that doesn't belong in this file.
6106
6107 * config/obj-vms.h: Include aout/stab_gnu.h.
6108 (N_GSYM, ..., N_LENG): Deleted.
6109 (NO_RELOC): Undefine before defining as part of enum reloc_type.
6110
6111 * config/tc-alpha.c: Add comment questioning need for all the
6112 characters in FLT_CHARS.
6113
6114 * as.c (main) [OBJ_VMS]: Don't call output_file_close.
6115
6116 * config/obj-ecoff.c (ecoff_frob_file): Set strict order for
6117 sections with recognized names, before computing VMA values.
6118
be22008b
ILT
6119Fri Mar 11 17:56:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6120
6121 * config/tc-mips.c (mips_ip): Accept numbers between 0x8000 and
6122 0xffff for 'j' to be compatible with MIPS assembler. These
6123 numbers are actually treated as negative.
6124
2c6db5a1
DE
6125Thu Mar 10 13:36:29 1994 Doug Evans (dje@canuck.cygnus.com)
6126
6127 * config/tc-sparc.h (LOCAL_LABEL): Local labels are .Lfoo.
6128
9e12fbbc
KR
6129Tue Mar 8 21:17:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6130
6131 * config/obj-coff.c: Minor formatting/stylistic changes, plus:
6132 (obj_coff_section): Declare.
6133 (obj_pseudo_table): Make it available only if MANY_SECTIONS.
6134 (obj_symbol_to_chars) [CROSS_COMPILE]: Some attemps to make this
6135 work. It still doesn't. It now fails to compile, instead of
6136 silently compiling to do nothing.
6137 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define only if
6138 MANY_SECTIONS.
6139 (OBJ_PROCESS_STAB) [! MANY_SECTIONS]: New macro, just emits
6140 warning.
6141
6142 Handle Alpha load-immediate-FP pseudo-instructions:
6143 * config/alpha-opcode.h (ldif, ldig, ldis, ldit): New patterns.
6144 * config/tc-alpha.c (lit8_sec, lit4_sec, lit8_sym, lit4_sym): New
6145 variables.
6146 (create_literal_section): New function.
6147 (create_lita_section): Now a macro.
6148 (get_lit8_offset, get_lit4_offset): New functions.
6149 (maybe_set_gp): New function.
6150 (select_gp_value): Call it.
6151 (load_expression): Preserve addend if symbol is a section symbol.
6152 (alpha_ip): Handle new operand type `F' for floating-point
6153 constants; store them in .lit{4,8} sections.
6154 (alpha_ip, case 'G'): Emit LITUSE relocations for symbol exprs.
6155
6156 * config/tc-i386.c (smallest_imm_type): Never return Imm1.
6157
2bac8c54
SC
6158Tue Mar 8 14:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6159
6160 * config/obj-coffbfd.c (w_strings): Only copy strings out if
6161 their symbols are going to be written.
6162
d16938f5
ILT
6163Tue Mar 8 11:49:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6164
6165 * messages.c (as_perror): Declare arguments const.
6166 * as.h (as_perror): Change declaration.
6167
8ea7f4e8
ILT
6168Mon Mar 7 16:08:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6169
6170 * config/tc-mips.c (load_address): When calling frag_grow, allow
6171 for the (up to) two nops which may be inserted by append_insn if
6172 mips_optimize is 0.
6173 (macro): Likewise.
6174
fa47b47e
DE
6175Thu Mar 3 11:37:55 1994 Doug Evans (dje@canuck.cygnus.com)
6176
6177 * config/atof-ieee.c (make_invalid_floating_point_number):
6178 Add cast to avoid warning from gcc.
6179
34b16850
JL
6180Wed Mar 2 10:31:01 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6181
69cb5925 6182 * config/tc-hppa.c: Add a few casts to make HP C compiler happy.
fb338f1d 6183
69cb5925 6184 * config/obj-som.c (obj_som_version, obj_som_copyright): Be
fb338f1d 6185 prepared
69cb5925 6186 to handle an error from bfd_som_attach_aux_hdr.
fb338f1d 6187
34b16850
JL
6188 * config/tc-hppa.h: Wrap ELF specific decls inside an ifdef.
6189
994fde6d
KR
6190Mon Feb 28 15:03:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6191
6192 * config/tc-alpha.c (md_atof): Omit warning about FP values.
6193 (line_comment_chars): Add ! to list.
6194 (md_apply_fix): Do process 32- and 64-bit relocations.
6195
6196 * config/obj-coffbfd.c (obj_coff_lcomm): Put "#if 0" around the
6197 unused parts (most of the function).
6198 (obj_coff_init_stab_section): Cast alloca result.
6199
6200 * configure.in (i960-*-coff, i960-*-vxworks5.*): Use coffbfd, and
6201 gas_target ic960coff.
6202 * config/ic960coff.mt: New file.
6203 * config/obj-coffbfd.h [TC_I960]: Include coff/i960.h.
6204 (TARGET_FORMAT) [TC_I960]: Use coff-Intel-little.
6205 * config/te-ic960.h (CROSS_COMPILE): Don't undef this. We'll
6206 always build little-endian object files.
6207 * config/tc-i960.c (md_reloc_size): Don't define at all if BFD or
6208 BFD_ASSEMBLER is defined.
6209 (mem_fmt): Since COFF doesn't handle callx relocations yet, treat
6210 them like normal 32-bit relocations.
6211 (md_apply_fix): For callx relocations, store zero.
6212 (tc_bout_fix_to_chars): Store symbol index for all callx
6213 relocations, regardless of link-relax setting.
6214 (tc_coff_fix2rtype, tc_coff_sizemachdep): New functions.
6215 (i960_handle_align) [! OBJ_BOUT]: If link-relax option is
6216 selected, print an error message and clear it.
6217 * config/tc-i960.h (BFD_ARCH, COFF_FLAGS, COFF_MAGIC,
6218 TC_COUNT_RELOC, TC_COFF_FIX2RTYPE, TC_COFF_SIZEMACHDEP,
6219 tc_fix_adjustable): New macros.
6220 (tc_coff_fix2rtype, tc_coff_sizemachdep): Declare.
6221
e03095c9
JL
6222Fri Feb 25 20:56:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6223
6224 * config/tc-hppa.c (hppa_tc_symbol): Call PA ELF BFD version.
6225 (hppa_tc_make_sections): Likewise.
6226 (pa_build_symextn_section): Delete unused function.
6227 (hppa_tc_make_symextn_section): Likewise.
6228 (pa_export): Delete call to pa_build_symextn_section.
6229
6230 * config/tc-hppa.h (hppa_tc_symbol): Add extern decl.
6231 (elf_hppa_final_processing): Delete extern decl.
6232 (hppa_tc_symbol): Delete extern decl.
6233
3919ffeb
ILT
6234Fri Feb 25 13:15:31 1994 Ian Lance Taylor (ian@cygnus.com)
6235
6236 * config/obj-coffbfd.c (fill_section): Correct test for whether to
6237 fill a section (from Minh Tran-Le <TRANLE@intellicorp.com>).
6238
f95de5d9
KR
6239Thu Feb 24 11:30:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6240
3919ffeb
ILT
6241 * configure.in: Don't require version number for i386-*-mach.
6242
f95de5d9
KR
6243 * read.c (potable): Added ".this_GCC_requires_the_GNU_assembler",
6244 which is ignored by gas, but will cause other assemblers to choke.
6245 Intended for use by gcc ports that require gas instead of native
6246 assemblers.
6247
cb6af928
JL
6248Thu Feb 24 07:10:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6249
6250 * config/ho-hppaosf.h: Fix braino in test for ANSI-C.
6251
08c5812c
JL
6252Wed Feb 23 16:51:43 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6253
6254 * write.c (write_contents): Give the user a reasonable error
6255 message rather than "assertion failed" if bfd_set_section_contents
6256 fails.
6257
c9c45af1
KR
6258Tue Feb 22 10:07:32 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
6259
6260 * config/ho-mach3.h: New file.
6261
9eb5f4b8
ILT
6262Mon Feb 21 11:41:18 1994 Ian Lance Taylor (ian@cygnus.com)
6263
2e5fdb1d
ILT
6264 * ecoff.c (ecoff_build_debug): Don't set hdr->magic here. It is
6265 now set in bfd/ecofflink.c:ecoff_write_symhdr.
6266
9d90491e
ILT
6267 * config/obj-coffbfd.c (write_object_file): use bfd_get_error (),
6268 not bfd_error.
6269 * config/obj-elf.c (elf_frob_file): Likewise.
6270
6271 * read.c (s_lcomm): Use an alignment power of 3 for 8 byte .lcomm
6272 variables.
6273
c8d02404
ILT
6274 * config/ho-hpux.h (BROKEN_ASSERT): Define if not __GNUC__.
6275
9eb5f4b8
ILT
6276 * read.c (read_a_source_file): Use correct arguments to memcpy
6277 (broken 19 Jul 1993). From kjd@pescadero.stanford.edu (Kenneth
6278 Duda).
6279
4d88d6dc
ILT
6280Sun Feb 20 18:01:54 1994 Ian Lance Taylor (ian@lisa.cygnus.com)
6281
6282 * config/obj-coff.h (obj_coff_section): Declare.
6283 * config/obj-coff.c (obj_pseudo_table): For "section", use
6284 obj_coff_section.
6285 (obj_coff_section): Rewrite.
6286
741f4d66
KR
6287Fri Feb 18 14:16:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6288
9e0cbfbb
KR
6289 * configure.in (i386-*-mach3*): New target; uses BFD.
6290 * config/te-mach.h: New file.
6291 * config/obj-aout.c (obj_aout_frob_file): New function.
6292 * config/obj-aout.h (obj_aout_frob_file): Declare it.
6293 (frob_file): New macro.
6294 * config/tc-i386.c (md_apply_fix_1) [TE_Mach]: Don't adjust
6295 pcrel32 relocations.
6296 * config/tc-i386.h (TARGET_FORMAT) [TE_Mach]: Use a.out-mach3.
6297
741f4d66
KR
6298 * write.c (write_object_file): Removed register declarations.
6299
5e65fbc8
ILT
6300Thu Feb 17 16:25:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6301
254f8450 6302 Some support for PowerPC ELF.
5e65fbc8
ILT
6303 * configure.in: If cpu is powerpc*, use ppc.
6304 (ppc-*-sysv4*): Use object format elf.
6305 * config/tc-ppc.h: Only declare a number of things if OBJ_COFF is
6306 defined.
6307 (TARGET_ARCH): Make it call ppc_arch.
6308 (ppc_arch): Declare.
6309 (TARGET_FORMAT): Set based on OBJ_COFF or OBJ_ELF.
6310 (NO_STRING_ESCAPES): Define.
6311 (LOCAL_LABEL, FAKE_LABEL_NAME): Define for OBJ_ELF.
6312 * config/tc-ppc.c: Only define a number of functions of OBJ_COFF
6313 is defined.
6314 (md_pseudo_table): Most pseudo-ops are OBJ_COFF specific. Added
6315 OBJ_COFF specific "bi" and "ei".
6316 (md_parse_option): Fix handling of -u. Make -m601 set
6317 PPC_OPCODE_601. If OBJ_ELF, accept -V and -Q.
6318 (ppc_set_cpu): New function.
6319 (ppc_arch): New function.
6320 (md_begin): Call ppc_set_cpu.
6321 (ppc_insert_operand): For a signed operand accept an unsigned
6322 value, for IBM compatibility.
6323 (ppc_byte): Don't call stringer for strings; instead, treat two
6324 double quotes as a single double quote.
6325 (ppc_comm): Set sy_tc.output for a .lcomm symbol.
6326 (ppc_biei): New function.
6327 (ppc_tc): If not OBJ_COFF, ignore first argument.
6328 (ppc_fix_adjustable): Call as_bad_where, not as_bad.
6329 (ppc_is_toc_sym): New function.
6330 (md_apply_fix): Use ppc_is_toc_sym. Handle BFD_RELOC_16 and
6331 BFD_RELOC_8.
6332
f61b81b7
DM
6333Thu Feb 17 09:29:37 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6334
6335 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_get_error and
69cb5925 6336 bfd_set_error and new error names.
f61b81b7 6337
c25be7f4
KR
6338Tue Feb 15 20:23:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6339
6340 * configure.in: Support i960-vxworks versions > 5.0 as coff.
6341 Default is still bout if no version is specified.
6342
04bde70d
KR
6343 * atof-generic.c (atof_generic): Use switch and strcasecmp instead
6344 of large number of compares when looking for inf/nan values.
6345
b1237b9d
ILT
6346Fri Feb 11 13:13:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6347
6348 * config/tc-mips.c (macro): Do unaligned loads and stores
6349 correctly when big endian, and give errors on overflow rather than
6350 generating incorrect code.
6351
605e1d90
ILT
6352Thu Feb 10 11:24:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6353
6354 * as.c: Include libiberty.h.
6355
6356 * read.c (do_align): Don't define label just_record_alignment
6357 unless it might be used.
6358
6359 * as.c (main): If md_parse_long_option is defined, call it with a
6360 long option.
6361 * config/tc-mips.h (md_parse_long_option): Define.
6362 * config/tc-mips.c (mips_trap): New static variable.
6363 (md_begin): Report an error if mips_trap is set at ISA level 1.
6364 (macro): If mips_trap, use trap instructions instead of break
6365 instructions for overflow and divide by zero detection.
6366 (mips_parse_long_option): New function. Support --trap,
6367 --no-break, --break and --no-trap.
6368 * doc/as.texinfo: Document new options.
6369
6370 * read.c (potable): Add "zero".
6371 * config/tc-i386.c (md_pseudo_table): Remove "zero".
6372 * config/tc-m88k.c (md_pseudo_table): Likewise.
6373
6440d65c
KR
6374Thu Feb 10 01:24:27 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6375
6376 * config/tc-sparc.c (sparc_ip): Reject integer values for
6377 pc-relative operand fields. This forces "call 0" to become "jmpl
6378 %g0,%o7" with no relocations needed.
6379
ddb393cf
ILT
6380Wed Feb 9 13:08:32 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6381
d87c080e
ILT
6382 * as.h (xmalloc, xrealloc): Declare using PTR rather than char *.
6383 * xmalloc.c (xmalloc, xrealloc): Use PTR rather than char *.
6384
ddb393cf
ILT
6385 * app.c (do_scrub_next_char): If NO_STRING_ESCAPES is defined,
6386 don't treat backslash specially inside strings.
6387 * read.c (next_char_of_string): Likewise.
6388
66c774bb
SS
6389Wed Feb 9 09:42:45 1994 Stan Shebs (shebs@andros.cygnus.com)
6390
6391 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use memset
6392 instead of memcpy to zero the initial stab symbol, duh.
6393 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
6394 * config/obj-som.c (obj_som_init_stab_section): Ditto.
6395
356315fe
ILT
6396Tue Feb 8 17:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6397
6398 * write.c (fixup_segment): Use as_bad_where, not as_bad.
6399
6400 * subsegs.c (subseg_set_rest): Call memset with the arguments in
6401 the right order. Explicitly clear fix_root and fix_tail fields.
6402
df44a852
KR
6403Tue Feb 8 16:00:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6404
cfaf70e3
KR
6405 * config/obj-coff.c (coff_frob_symbol): For abs_symbol, set *punt
6406 and do nothing else.
6407
6408 * symbols.c (symbol_begin): Initialize value of abs_symbol
6409 properly.
6410
6411 * write.c (adjust_reloc_syms): Use abs_symbol instead of calling
6412 section_symbol.
6413
cafb569b
KR
6414 * ecoff.c (ecoff_build_debug): Fix "/*" in comment to silence
6415 complaint from "gcc -Wall".
6416
7496639a
KR
6417 * configure.in (alpha-*-netware*): New target, like alpha-*-osf*.
6418
8a74b870
KR
6419 * config/tc-alpha.c (GP_ADJUSTMENT): Move definition to start of
6420 file.
6421 (tc_gen_reloc): Remove uninitialized variable `code', and code
6422 that tried to use it (incorrectly). For LITERAL reloc, set addend
6423 to negative of GP value.
6424 (load_symbol_address): Don't adjust return value by GP_ADJUSTMENT.
6425
df44a852
KR
6426 * write.c (write_relocs): Print some sensible error message if
6427 bfd_perform_relocation returns bfd_reloc_overflow.
6428
6429Mon Feb 7 15:49:24 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6430
6431 * configure.in (hppa*-*elf*): New configuration for PA ELF.
6432 (hppa*-*-osf*): Default object format is SOM.
6433
c3591adb
KR
6434Mon Feb 7 16:07:35 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6435
2d33b3aa
KR
6436 * config/tc-alpha.c (md_atof): Warn that floating-point values
6437 might not assemble properly.
6438
c3591adb
KR
6439 * configure.in (target alpha-*-osf*): Don't set "dev=yes" any
6440 more.
6441
6442 * config/tc-alpha.c (load_expression): Parenthesize operations in
6443 range checking, to avoid precedence questions.
fc6b54fd 6444
c3591adb
KR
6445 * config/tc-alpha.c (addr32): New static variable.
6446 (md_parse_option): Set it for "-32addr".
6447 (load_symbol_address): If addr32 is set, use ldl instead of ldq.
6448
6449 * atof-generic.c (atof_generic): Calculate maximum_useful_digits
6450 and more_than_enough_bits_for_digits in integer arithmetic, to
6451 eliminate the only sources of dependence on floating point
6452 support, which doesn't work yet on the Alpha.
6453
6454Mon Feb 7 03:56:05 1994 Ken Raeburn (raeburn@cambridge.cygnus.com)
fc6b54fd
KR
6455
6456 * ecoff.c (ecoff_build_debug) [TC_ALPHA]: Specify version stamp as
6457 0x30b for Alpha for now, until ".verstamp" is handled.
6458
6459 * literal.c (add_to_literal_pool): Use seginfo->frchainP, which
6460 actually refers to the literal pool section, rather than
6461 frchain_now, which refers to whatever section the assembler was
6462 in.
6463
6464 * write.c (fixup_segment): Only do range checking if size of fixup
6465 is smaller than word size. Otherwise, we always wind up with
6466 zeros.
6467
5facbfd4
KR
6468 * config/tc-alpha.c (md_section_align): Change second argument and
6469 return type to valueT, to agree with tc.h.
6470 (alpha_do_align): Local static array nop_pattern is now unsigned
6471 char, to avoid overflow warnings.
6472 * config/tc-alpha.h (md_section_align): Delete declaration.
6473
6474 * config/obj-ecoff.c (ecoff_frob_file): Ensure that ecoff_data for
6475 output bfd is non-null before indirecting through it.
6476
6477 * config/tc-alpha.c (alpha_frob_ecoff_data): Renamed from
6478 alpha_frob_file.
6479 * config/tc-alpha.h (tc_frob_file): Macro deleted.
6480 * config/obj-ecoff.c (ecoff_frob_file) [TC_ALPHA]: Call
6481 alpha_frob_ecoff_data, then fill in optional-header info with gp
6482 value and register masks.
6483
dc536cc0
JL
6484Sun Feb 6 16:13:47 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6485
f8693e71
JL
6486 * configure.in (hiux): Fixes from m-kasahr@sramhc.sra.co.JP.
6487
dc536cc0
JL
6488 * config/obj-som.c (obj_som_init_stab_section): Same change
6489 as coffbfd and elf below. Zero the initial stab symbol after
6490 allocating it.
6491
41b5ef0f
SS
6492Sat Feb 5 12:30:32 1994 Stan Shebs (shebs@andros.cygnus.com)
6493
6494 * config/obj-coffbfd.c (obj_coff_init_stab_section): Zero the
6495 initial stab symbol after allocating it.
6496 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
6497
fa4beb7e
JL
6498Sat Feb 5 11:53:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6499
6500 * config/tc-hppa.c (pa_ip): addb[tf] should only accept
6501 non-negated condition completers. Add support for addb pseudo-op
6502 which accepts both negated and non-negated completers.
6503
1c11ab0e
ILT
6504Sat Feb 5 00:15:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6505
6506 * configure.in (rs6000*): Use cpu_type ppc.
6507 (ppc-*-aix*): New target; use coff and force bfd_gas.
6508 * config/tc-ppc.h, config/tc-ppc.c: New files for PowerPC/POWER
6509 (RS/6000) support. At the moment, only XCOFF is supported.
6510
6511 * config/obj-coff.c (SA_SET_SYM_ENDNDX): Made non-static.
6512 (S_SET_DATA_TYPE): Likewise.
6513 (coff_last_function): Renamed from local static last_functionP in
6514 coff_frob_symbol and made externally visible.
6515 (coff_frob_symbol): New local static set_end; use it to try to
6516 avoid calling SA_SET_SYM_ENDNDX on a symbol that will be punted.
6517 * config/obj-coff.h (S_SET_DATA_TYPE): Declare.
6518 (SA_SET_SYM_ENDNDX): Declare.
6519 (coff_last_function): Declare.
6520
6521 * expr.c (operand): If DOLLAR_DOT is defined, accept `$' as
6522 equivalent to `.' to mean the current location.
6523
6524 * read.c (LEX_BR): If not defined, define as 0.
6525 (lex_type): Use LEX_BR as the type of `{',`}',`[',`]'.
6526
6527 * symbols.c (symbol_new): If tc_canonicalize_symbol_name is
6528 defined, call it with preserved_copy_of_name. If
6529 tc_symbol_new_hook is defined, call it on the new symbol.
6530 (symbol_find_base): If tc_canonicalize_symbol_name is defined,
6531 call it on a copy of the name argument.
6532
6533 * write.c (write_object_file): Simplified usage of obj_frob_symbol
6534 and tc_frob_symbol. Always call both if the symbol is going to be
6535 output.
6536
6537 * write.c (relax_segment): Use %ld rather than %d when printing
6538 fragP->fr_var, and cast it to long.
6539
6540 Changed relocs to be based on subsegments (when BFD_ASSEMBLER).
6541 * subsegs.h (struct frchain): If BFD_ASSEMBLER, added new fields
6542 fix_root and fix_tail.
6543 (segment_info_type): If BFD_ASSEMBLER, don't define fix_tail
6544 field.
6545 * write.c (fix_new_internal): If BFD_ASSEMBLER, set fix_rootP and
6546 fix_tailP based on frchain_now, not seg_info (now_seg).
6547 (chain_frchains_together_1): Chain the subsegment relocs together.
6548 * subsegs.c (subseg_change): Don't clear fix_tail field.
6549 (subseg_get): Likewise.
6550 * literal.c (add_to_literal_pool): Look through the relocs via
6551 frchain_now, not seginfo.
6552
f85ad9d5
ILT
6553Thu Feb 3 23:07:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6554
6555 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Changed
6556 ecoff_undefined to ecoff_extern_size.
6557 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Likewise.
6558 * config/tc-mips.c (s_extern): Set ecoff_extern_size to the
6559 external symbol size, rathern than setting the symbol value.
6560 (md_estimate_size_before_relax): Check both ecoff_extern_size and
6561 symbol value to see if GP referencing can be used.
6562 * ecoff.c (ecoff_symbol_new_hook): Clear ecoff_extern_size, not
6563 ecoff_undefined.
6564 (ecoff_frob_symbol): Don't check ecoff_undefined.
6565 (ecoff_build_symbols): Get size of an undefined symbol from
6566 sym->ecoff_extern_size, not S_GET_VALUE (sym).
6567
b4bd2c92
JL
6568Wed Feb 2 13:55:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6569
6570 * Makefile.in: Avoid bug in losing hpux sed.
6571
1051c97f
ILT
6572Wed Feb 2 11:40:11 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6573
6574 * config/tc-mips.c (file_mips_isa): New static variable.
6575 (md_begin): Set it.
6576 (s_mipsset): Add support for .set mipN to set the ISA level.
6577
6578 * gasp.c (kinfo): Fully bracket initializer.
6579
f2cdeec4
KR
6580Tue Feb 1 19:28:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6581
6582 * gasp.c (malloc): Don't declare, since host.h or system header
6583 files may declare it differently.
6584
6585 * config/atof-ieee.c (int_to_gen): Now static.
6586
6587 * config/ho-i386aix.h: Include sys/types.h and stdlib.h, not
6588 ho-sysv.h. Based loosely on a patch from Minh Tran-Le.
6589
e2847e64
SC
6590Tue Feb 1 10:50:17 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6591
6592 * gasp.c: Include host.h.
6593
9cbf9e57
ILT
6594Tue Feb 1 12:13:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6595
8bbad6fd
ILT
6596 * config/tc-mips.c (mips_ip): Make an unsupported instruction a
6597 warning, not an error.
6598
9cbf9e57
ILT
6599 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
6600 dot_bss_symbol): Don't define if BFD_ASSEMBLER.
6601 (obj_symbol_to_chars): bfd_coff_swap_aux_out now takes more
6602 arguments.
6603 (coff_line_base): Renamed from line_base. Changed all uses.
6604 (coff_add_linesym): Renamed from add_line_sym. Made non-static.
6605 Changed all uses.
6606 * config/obj-coff.h: If TC_PPC, include coff/rs6000.h.
6607 (S_SET_STORAGE_CLASS, S_GET_STORAGE_CLASS): Declare if
6608 BFD_ASSEMBLER.
6609 (coff_line_base): Declare.
6610 (coff_add_linesym): Declare if BFD_ASSEMBLER.
6611 * config/obj-coffbfd.c (symbol_to_chars): bfd_coff_swap_aux_out
6612 now takes more arguments.
6613
2abb453d
SS
6614Mon Jan 31 17:55:14 1994 Stan Shebs (shebs@andros.cygnus.com)
6615
6616 * as.c (statistics_flag): Renamed from quiet_flag.
6617 (main): Get statistics with --statistics instead of -noquiet.
6618
a5a4b5ac
SC
6619Mon Jan 31 07:19:30 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6620
6621 * Makefile.in: Support for Gnu ASsembler Preprocessor.
6622 * gasp.c: New file.
6623 * read.c (s_lcomm): Align lcomm data.
69cb5925 6624 * config/tc-z8k.c (tc_reloc_mangle): Don't allow subtraction
a5a4b5ac
SC
6625 from different sections.
6626
7909261f
KR
6627Sun Jan 30 14:58:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6628
6629 * write.c (write_object_file): If tc_frob_file is defined, call it
6630 just before calling obj_frob_file.
6631 * config/tc-alpha.c (alpha_gp_value): Renamed from gp_value
6632 (references changed), and made non-static.
6633 (getExpression): Return void.
6634 (select_gp_value): Abort if gp_value is non-zero. Delete call to
6635 non-existent bfd_set_gp_value.
6636 (alpha_validate_fix): Function deleted.
6637 (alpha_frob_symbol): Function deleted.
6638 (alpha_local_label): Function deleted.
6639 (alpha_frob_file): Renamed from alpha_end.
6640 * config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix,
6641 alpha_local_label, alpha_end): Declarations deleted.
6642 (alpha_gp_value, alpha_frob_file): Declare.
6643 (tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
6644 (LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
6645 (md_convert_frag): Simplified slightly.
6646 (tc_frob_file): New macro.
6647
6648 * read.c (do_align): New function, most of guts of s_align_*
6649 functions. Look for md_do_align macro, give it a chance to bypass
6650 all but recording of section alignment.
6651 (s_align_bytes, s_align_ptwo): Call do_align.
6652 (s_lcomm) [TC_ALPHA]: Align object to largest power of two that
6653 divides object size.
6654
6655 * frags.c (frag_align_pattern): New function.
6656 (frag_align): Rewrite for clarity.
6657
6658 * config/tc-vax.c (md_assemble): Handle O_constant expression.
6659 (vip_begin): Returns pointer to const char. Cast hash_insert arg
6660 to PTR to avoid compiler complaints about const.
6661 (md_begin): Local variable errtxt must point to const.
6662
6663 * configure.in: Handle host vax-*-ultrix* like vax-*-bsd*. Don't
6664 bother with *-*-ultrix or *-*-sysv*, except *-*-sysv, since only
6665 the last has an existing host support file. Do handle vax-bsd and
6666 vax-ultrix targets.
6667
1f029792
ILT
6668Fri Jan 28 11:26:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6669
6670 * config/obj-coff.c (obj_coff_section_header_append): Do not
6671 declare if BFD_ASSEMBLER.
6672 (stack_pop): Correct test for stack underflow.
6673 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
6674 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
6675 type of ignored argument to avoid gcc warning.
6676 (align): Removed unused function.
6677
6221fe20
KR
6678Thu Jan 27 18:14:19 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6679
81f6013a
KR
6680 * config/tc-alpha.c, config/tc-alpha.h, config/alpha-opcode.h: New
6681 files, based on port of gas-1.38 contributed by CMU, using a.out
6682 variant. Updated for gas-2.x and ECOFF. Floating-point constants
6683 are still broken, bootstrap testing incomplete.
6684
6685 * literal.c: Comment changes.
6686
6687 * listing.c (listing_source_file): Check for null listing_tail
6688 before indirecting through it.
6689
6690 * expr.h (struct expressionS): Added struct tag.
6691
6692 * as.h: If __GNUC__ and inline are both undefined, define inline
6693 away.
6694
6695 * write.c (cvt_frag_to_fill): Don't assume that fr_var for
6696 rs_align or rs_org frags will be 1.
6697 (relax_segment): For rs_align, if fr_var is not 1, complain if
6698 required padding is not a multiple of the size of the pad pattern.
6699 (fixup_segment): Leave gp-relative relocations alone. For pcrel
6700 relocations referring to the same segment, clear fx_pcrel when
6701 clearing fx_addsy.
6702 * as.h: Adjust comments on rs_align.
6703
6221fe20
KR
6704 * atof-generic.c: Some reformatting.
6705 (atof_generic): Be careful when mixing signed/unsigned values of
6706 different sizes.
6707
81f6013a
KR
6708 * write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c:
6709 Query the fx_done field instead of fx_addsy to see if the fixup
6710 still needs to be applied. Set fx_done and clear fx_addsy both,
6711 for now. If TC_HANDLES_FX_DONE isn't defined, assume md_apply_fix
6712 will only clear fx_addsy, and set fx_done accordingly after
6713 returning.
6714 * config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.
6715 * config/tc-sparc.c (md_apply_fix): Set fx_done for non-pcrel fix
6716 with no fx_addsy.
6717
6718 * symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
6719 Deleted.
6720 (symbol_begin): Moved to end of file, so function inlining can
6721 work better.
6722 (fb_label_count, fb_label_max): Default C static initializers are
6723 sufficient.
6724 * symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
6725 Declarations deleted.
6726 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
6727 dot_bss_symbol): Defined here, static.
6728
6729 * config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before
6730 including aout/aout64.h.
6731
6732 * write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false,
6733 don't write out a section symbol even if it's used in a
6734 relocation; assume relocations will handle section numbers
6735 somehow. Rename "punt_it" label to "punt_it_if_unused" to reflect
6736 it's true use.
6737 (EMIT_SECTION_SYMBOLS): Default to 1.
6738 (adjust_reloc_syms): Don't create a new symbol for an absolute
6739 reference; just use the absolute section symbol.
6740 (write_relocs): Make printout of reloc values dependent on flag
6741 DEBUG3, not DEBUG2.
6742 * config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
6743 * config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
6744
a57180ad
ILT
6745Thu Jan 27 16:43:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6746
ec7a69ea
ILT
6747 * read.c (lex_type): No longer make '{' a valid character for
6748 symbol names.
6749
fe920573
ILT
6750 * as.c (main): Print long values using %ld.
6751
a57180ad
ILT
6752 * messages.c (as_warn_internal): New static function.
6753 (as_warn, 3 versions): Use as_warn_internal.
6754 (as_warn_where, 3 versions): New function.
6755 * as.h (as_warn_where): Declare.
6756
ca7bd557
SS
6757Tue Jan 25 18:30:34 1994 Stan Shebs (shebs@andros.cygnus.com)
6758
6759 * as.c (quiet_flag): New flag.
6760 (main): If -noquiet given, display execution time and memory used.
6761
9dcf8057
JL
6762Tue Jan 25 15:53:11 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6763
6764 * doc/{all.texi,as.texinfo}: Add documentation for HPPA port.
6765
f71babce
ILT
6766Mon Jan 24 19:18:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6767
6768 * ecoff.c (ecoff_frob_symbol): New function. Put undefined
6769 symbols of known size in the undefined section. Put small common
6770 symbols in a .scommon section.
6771 * ecoff.h (ecoff_frob_symbol): Declare.
6772 * config/obj-ecoff.h (obj_frob_symbol): Define.
6773 * config/obj-elf.c (obj_elf_write_symbol_p, obj_elf_write_symbol,
6774 obj_elf_frob_symbol): Removed unused functions.
6775 * config/obj-elf.h (obj_frob_symbol, obj_write_symbol): Removed
6776 unused macros.
6777 (obj_elf_frob_symbol, obj_elf_write_symbol): Removed declarations
6778 of unused functions.
6779 (obj_frob_symbol): Define if ECOFF_DEBUGGING.
6780
6781 * tc-mips.c (g_switch_seen): New static variable.
6782 (md_parse_option): Set g_switch_seen for -G option.
6783 (s_option): If creating PIC code, force the GP size to be 0. Warn
6784 if -G switch used with a non-zero value.
6785
6786 * symbols.c (S_IS_COMMON): Use bfd_is_com_section rather than
6787 comparing against bfd_com_section.
6788
2ef7731d
KR
6789Mon Jan 24 14:12:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6790
6791 * read.c (s_lcomm): Treat Alpha like MIPS in handling of .sbss
6792 section.
6793
7691379e
KR
6794Thu Jan 20 13:17:58 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6795
6796 * expr.c (operand): For floating point operand with unusual fp
6797 char from FLT_CHARS, preserve the character. Patch from Lisa
6798 Repka.
6799
eb8fd0e9
ILT
6800Wed Jan 19 23:15:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6801
6802 * config/tc-mips.c (md_pseudo_table): Add all data allocation
6803 pseudo-ops: .hword, .int, .long, .octa, .quad, .short, .single.
6804
d9420fc1
SC
6805Tue Jan 18 15:51:59 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6806
6807 * config/obj-coffbfd.c (obj_coff_endef): For C_EFCN, C_BLOCK and
6808 C_FCN assume .val has been set to .
6809
2f156c92
JL
6810Tue Jan 18 16:19:58 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6811
6812 * config/tc-hppa.c: Disable multiple $CODE$ subspace code. It
6813 confuses GDB for some unknown reason.
6814 * cofnig/obj-som.c: Likewise.
6815
19302e44
KR
6816Tue Jan 18 19:05:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6817
6818 * literal.c (add_to_literal_pool): Handle duplicates of values
6819 already written to literal pool.
6820
4bda835f
ILT
6821Tue Jan 18 17:23:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6822
6823 * config/obj-aout.c (obj_aout_frob_symbol): Try to get symbols
6824 with explicitly marked stabs through BFD: if a symbol marked
6825 N_UNDF | N_EXT is in the absolute section, move it to the
6826 undefined section; move a symbol marked N_INDR into
13655af6
ILT
6827 bfd_ind_section and set the BSF_INDIRECT flag; set the
6828 BSF_WARNING flag for a symbol makred N_WARNING.
4bda835f 6829
17ed84ed
ILT
6830Mon Jan 17 15:40:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6831
6832 * ecoff.h (ecoff_set_gp_prolog_size): Declare.
6833 * ecoff.c (ecoff_set_gp_prolog_size): Return type is void.
6834
d0286a21
JL
6835Mon Jan 17 00:18:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6836
51517966
JL
6837 * config/tc-hppa.c (pa_ip): Explicitly check for comma before 'u'
6838 and 'f' template operand.
6839
d0286a21
JL
6840 * config/tc-hppa.c (pa_ip): Handle 'N', 'O', 'o', '0', '1', 'u',
6841 and '2' in copr and sfu instruction templates.
6842
e7501ac7
JL
6843Sun Jan 16 16:44:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6844
6845 * as.h (subseg_force_new): Add prototype.
6846
d2550c72
DE
6847Sat Jan 15 09:20:55 1994 Doug Evans (dje@canuck.cygnus.com)
6848
d307fed1
DE
6849 * app.c (do_scrub_next_char): Allow lines like " foolab :".
6850
d2550c72
DE
6851 * read.c (emit_expr): Fix computation of mask.
6852 * config/obj-elf.c (obj_elf_section): Fix loop termination test.
6853
d211303d
KR
6854Thu Jan 13 16:15:15 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6855
64270963
KR
6856 * ecoff.c (ecoff_set_gp_prolog_size): New function.
6857 (current_file_idx): New static variable.
6858 (add_file): Use and increment current_file_idx instead of indx
6859 parameter.
6860
ff4325cb
KR
6861 * struc-symbol.h (struct symbol): Make all bitfields unsigned.
6862
d211303d
KR
6863 * config/tc-i960.c (i960_validate_fix): Added argument
6864 add_symbolPP. Indirect through it to get "add_symbolP".
6865 * config/tc-i960.h (i960_validate_fix): Supply prototype.
6866 (TC_VALIDATE_FIX): Pass address of add_symbolP.
6867
6868 * configure.in (i386-*-netbsd*): New target, using te-netbsd.h.
6869 (i386-*-netbsd0.8): New target, like 386bsd.
6870
6871 * configure.in: Set BFDDEF in Makefile to "define" or "undef".
6872 * Makefile.in (config.h): Protect against multiple inclusions.
6873 Define or undef BFD_ASSEMBLER as specified by $(BFDDEF).
6874 (ALL_CFLAGS): Omit $(BFDDEF).
6875 * as.h: Include config.h.
6876 (struct symbol): Added forward declaration.
6877 (add_to_literal_pool): Fix declaration.
64270963 6878 * as.c: Don't include config.h.
d211303d
KR
6879
6880 * literal.c (add_to_literal_pool): Take symbol and addend as
6881 arguments, instead of expression, for now. Fix calculation of
6882 offset to return.
6883
6884 * subsegs.h (segment_info_type) [NEED_LITERAL_POOL]: Add field
6885 literal_pool_size.
6886
500828a0
JL
6887Thu Jan 13 12:14:21 1994 Jeffrey A. Law (law@snake.cs.utah.edu
6888
6889 * subsegs.c (subseg_get): Accept new argument "force_new". If
6890 set then a new segment is always created. All callers changed.
6891 (subseg_force_new): New function. Similar to subseg_new, but
6892 always force a new segment to be created.
6893
6894 * config/obj-som.c (som_frob_file): Call adjust_code_sections
6895 for each section.
6896 (adjust_code_sections): New function. Adjusts the VMA for all the
6897 $CODE$ subspaces.
6898
6899 * config/tc-hppa.c (md_assemble): Also handle creating a fixup
6900 for the unwind descriptors if a function's label follows the
6901 .PROC and .ENTRY directives.
6902 (pa_entry): Don't set BSF_FUNCTION for the label symbol here; it
6903 is done elsewhere. Don't create a fixup for the unwind
6904 descriptors if the function's label has not been defined yet.
6905 (pa_proc): For SOM, place each procedure within a new $CODE$
6906 subspace. Adjust the segment and frag for the associated
6907 function label if it exists.
6908
6909Wed Jan 12 22:05:33 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6910
6911 * config/tc-hppa.c (hppa_fix_struct): Add new "segment" field.
6912 (hppa_fix_new): Initialize segment field.
6913 (md_apply_fix): Do nothing for pc-relative fixup which involves
6914 crossing a segment boundary.
6915 (pa_procend): Undefine the current label after handling .PROC
6916 and .PROCEND directives.
6917 (dummy_symbol): Make type "symbolS *". Change references as
6918 appropriate.
6919
bbf7e43d
ILT
6920Wed Jan 12 13:29:31 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6921
6922 * read.c (read_a_source_file): Cast array argument to unsigned
6923 char.
6924 * write.c (adjust_reloc_syms): Remove unused variable symseginfo.
6925 (write_object_file): Don't define punt_it if it won't be used.
6926 (fixup_segment): Don't define skip if it won't be used.
6927
6928 * config/tc-mips.h (TARGET_FORMAT): Define as mips_target_format.
6929 (mips_target_format): Declare.
6930 * config/tc-mips.c (mips_target_format): Define with appropriate
6931 default definition.
6932 (md_parse_option): If -EL or -EB is used, change byte_order and
6933 mips_target_format as appropriate.
6934
a1c91916
JL
6935Tue Jan 11 21:52:36 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6936
6937 * app.c (do_scrub_next_char): Another attempt to fix bugs
6938 dealing with labels without colons (for HPPA and MRI).
6939
44ce2f32
DE
6940Tue Jan 11 17:01:06 1994 Doug Evans (dje@canuck.cygnus.com)
6941
fd4b7c25
KR
6942 * config/tc-sparc.c (sparc_ip): Truncate args to %hi/%lo to 32 bits.
6943
44ce2f32
DE
6944 * expr.c (integer_constant): Fix computation of too_many_digits.
6945 Variable digit_2 renamed to start. Fix check for whether number
6946 will fit in 32 bits.
6947 * read.c (emit_expr): Use valueT instead of long.
6948
af255ca0
ILT
6949Tue Jan 11 13:01:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6950
f34e27a1
ILT
6951 * config/obj-elf.c: If TC_MIPS, include elf/mips.h.
6952 (special_sections): Define.
6953 (obj_elf_special_section): Get default types and attributes from
6954 list of special sections.
6955 * config/tc-mips.c (ELF_TC_SPECIAL_SECTIONS): Define.
6956
4e76ae53
ILT
6957 * config/obj-ecoff.c (ecoff_frob_file): Force .sdata and .sbss
6958 sections to be close together.
6959
8197b589
ILT
6960 * config/tc-mips.c (macro): Corrected $at warnings in a couple of
6961 spots.
6962
af255ca0
ILT
6963 * listing.c (listing_prev_line): New function.
6964 * listing.c: Include subsegs.h.
6965 (listing_prev_line): New function.
6966 (calc_hex): Reset byte_in_frag to zero for each new frag.
6967 * config/tc-mips.c (append_insn): Call listing_prev_line after
6968 emitting nop instructions.
6969 * Makefile.in (listing.o): Depends upon subsegs.h.
6970
4047ff1d
JL
6971Mon Jan 10 09:52:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6972
6973 * config/tc-hppa.c (pa_ip): Put check for missing label on .PROC
6974 here. Handle case where label may be defined after the .PROC.
6975 (pa_proc): It is not an error if the procedure's label isn't
6976 defined before the .PROC directive.
6977
6f1c6a67
KR
6978Sun Jan 9 04:43:30 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6979
6980 * config/te-netbsd.h: New file.
6981 * config/tc-i386.h (TARGET_FORMAT) [TE_NetBSD]: Use bfd target
6982 a.out-netbsd-386 for this configuration.
6983
fe4e3290
ILT
6984Fri Jan 7 17:38:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6985
6986 * ecoff.c (ecoff_stab): Don't clobber the ECOFF symbol information
af255ca0 6987 with the associated stabs information.
fe4e3290
ILT
6988 (ecoff_build_symbols): Never set the type of stabs symbols to
6989 st_Global. Don't update the symbol index or ifd if the gas symbol
6990 is not the same as the ECOFF symbol (which is now the case for
6991 stabs symbols).
6992
917fae09
SS
6993Fri Jan 7 11:14:07 1994 Stan Shebs (shebs@andros.cygnus.com)
6994
6995 * config/tc-mips.c (macro): Add a LOSING_COMPILER ifdef that
6996 splits the function.
6997 (macro2): New function, if LOSING_COMPILER defined.
6998
03a372ed
SC
6999Fri Jan 7 09:38:25 1994 Steve Chamberlain (sac@cygnus.com)
7000
7001 * config/obj-coffbfd.c (fill_section): Don't ever fill past the
7002 end of a section. (write_object_file): Temporary fix - setup
7003 stdoutput.
7004
fd0e2cf2
KR
7005Thu Jan 6 18:05:21 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
7006
7007 * config/tc-sparc.c (tc_gen_reloc): Fix handling of addends in
7008 non-pcrel_offset relocations.
7009
13fe1379
ILT
7010Thu Jan 6 01:06:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7011
7012 * config/tc-mips.c (mips_ip): Warn about using $1 as well as $at
7013 without .set noat.
7014
311ff8d6
KR
7015Wed Jan 5 14:22:22 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
7016
2d29d89d 7017 * literal.c: New file.
d4aad2b4
KR
7018 * Makefile.in (REAL_SOURCES, OBJS): List it.
7019
7020 * as.h (DEBUG): Don't define.
7021 (struct expressionS, struct fix): Declare in case they're used in
7022 prototypes.
7023 (add_to_literal_pool) [BFD_ASSEMBLER]: Declare.
2d29d89d 7024
311ff8d6
KR
7025 * config/tc-mips.h (TARGET_FORMAT) [OBJ_AOUT]: Fix for new names
7026 in bfd.
7027
7028 * subsegs.c (subseg_get): New function. Creates segment if
7029 needed, returns pointer, but doesn't change current segment.
7030 (subseg_new): Use it.
7031
5a051773
SS
7032Tue Jan 4 15:12:43 1994 Stan Shebs (shebs@andros.cygnus.com)
7033
7034 * Makefile.in (INCLUDES): Add $(srcdir)/.. to places to search.
7035 * config/obj-ecoff.c: Include files as "bfd/" instead of "../bfd/".
7036 * app.c, flonum.h, hex-value.c (const): Change #if to be more
7037 portable.
7038
fce98d63
RS
7039Tue Jan 4 22:11:34 1994 Rob Savoye (rob@darkstar.cygnus.com)
7040
69cb5925
KR
7041 * config/ho-vsta.h, configure.in, .Sanitize: Add support for VSTa
7042 micro-kernel.
fce98d63 7043
5a051773
SS
7044Thu Dec 30 15:27:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7045
7046 * write.c (write_relocs): bfd_perform_relocation now takes an
7047 additional argument, to return an error string (which we ignore).
7048
9314b3a1
KR
7049Wed Dec 29 14:37:26 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
7050
7051 * write.h (struct fix): Field tc_fix_data should be type PTR, not
7052 void*, for compatibility with non-ANSI compilers. Added
7053 single-bit field "fx_done".
7054
45db9caf
TG
7055Sun Dec 26 14:31:47 1993 Torbjorn Granlund (tege@adder.cygnus.com)
7056
7057 * tc-hppa.c (pre_defined_registers): Convert to lower case.
7058 Delete spurious register names "%r4L", etc.
7059 (selector_table): Sort and convert to lower case.
7060 (cons_fix_new_hppa): `reloc_type' => `rel_type'.
7061 (pa_ip): Always use strcmp for non-text and strcasecmp for text.
7062 (reg_name_search): Rewrite to call strcasecmp only once per
7063 iteration.
7064 (pa_chk_field_selector): Rewrite to use binary search.
7065 (pa_parse_neg_add_cmpltr): Use strcasecmp for completer comparisons.
7066 (pa_parse_space_stmt): $TEXT$ and $PRIVATE$ are symbols; use case
7067 sensitive comparisons.
7068 (pa_parse_space_stmt): Canonicalize strncasecmp arg to lower case.
7069 (pa_space): "$text$" => "$TEXT$"; "$private$" => "$PRIVATE$". Use
7070 case sensitive comparison for all symbolic names.
7071 (pa_subspace): Canonicalize strncasecmp arg to lower case.
7072 (pa_subspace_start): Use case sensitive comparison for symbolic names.
7073
8b13fa4e
KR
7074Mon Dec 20 10:37:48 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
7075
0a75cb6c
KR
7076 * write.c (adjust_reloc_syms) [RELOC_REQUIRES_SYMBOL]: If no
7077 symbol is present (i.e., relocation against absolute), create a
7078 phony local symbol, and use it in the reloc.
7079 (fixup_segment): When adjusting a reloc with an absolute symbol,
7080 have TC_FORCE_RELOCATION control clearing add_symbolP too.
7081 * config/tc-sparc.h (RELOC_REQUIRES_SYMBOL): Define, for OBJ_COFF.
7082
7083 * symbols.c (S_IS_EXTERNAL, S_IS_LOCAL): Don't use both BSF_EXPORT
7084 and BSF_GLOBAL, since they're the same.
7085
d3e3010b
KR
7086 * as.c (main): Only invoke md_end if it's defined as a macro.
7087 * tc.h (md_end): Don't declare it.
7088 * config/tc-*.[ch] (md_end): Deleted, in cases where it doesn't do
7089 anything.
7090 * config/tc-vax.c (vip_end): Deleted null function.
7091 * config/tc-mips.c (md_mips_end): Renamed from md_end.
7092 * config/tc-mips.h (md_mips_end): Declare.
7093 (md_end): New macro, calls md_mips_end.
7094
7095 * write.c (write_object_file): Don't close output file.
7096 * as.c (main): Close output file (if needed) after calling
7097 listing_print, which should be after calling write_object_file,
7098 which sets the frag addresses.
7099
7100 * config/obj-coff.c (obj_coff_dim, obj_coff_endef, obj_coff_line,
7101 obj_coff_scl, obj_coff_size, obj_coff_tag, obj_coff_type,
7102 obj_coff_val): Add unused int argument to satisfy prototypes; goes
7103 with Ian's 10 Sep changes.
7104 (S_GET_DATA_TYPE, S_SET_DATA_TYPE, S_GET_STORAGE_CLASS,
7105 S_SET_STORAGE_CLASS): Now function instead of macros.
7106 (obj_emit_lineno) [BFD_ASSEMBLER]: Deleted.
7107 (tag_insert): Local var ERROR_STRING is const. Use "const" not
7108 "CONST" for argument NAME. Fixed prototype.
7109 (coff_frob_symbol): Removed explicit "#if 1" directive. If
7110 S_IS_EXTERNAL, set storage class to C_EXT.
7111 (s_get_name): Use "const" not "CONST".
7112 * config/obj-coff.h (S_GET_DATA_TYPE, S_SET_DATA_TYPE,
7113 S_GET_STORAGE_CLASS, S_SET_STORAGE_CLASS): Deleted.
7114 (obj_emit_lineno): Declare only for non-BFD_ASSEMBLER. For
7115 BFD_ASSEMBLER, define as macro that aborts.
7116 (obj_extra_stuff, tc_headers_hook): Declare only for
7117 non-BFD_ASSEMBLER.
7118 (coff_frob_symbol): Fix prototype.
8b13fa4e
KR
7119
7120Sun Dec 19 00:37:20 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7121
7122 * config/tc-sparc.c (tc_gen_reloc): Test of pcrel_offset had sense
7123 reversed.
7124
5ea18b5d
JL
7125Thu Dec 16 21:13:11 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7126
7127 * config/tc-hppa.c (md_begin): Initialize "dummy_label".
7128 (tc_gen_reloc, SOM version): For relocations which have no symbol,
7129 set sym_ptr_ptr to dummy_label. Avoids lossage in generic BFD code.
7130
a8a72d74
KR
7131Thu Dec 16 16:07:56 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
7132
7133 * read.c (lex_type): No longer make '[' a valid character for
7134 symbol names.
7135
50f75add
KR
7136 * config/tc-vax.c (tc_aout_fix_to_chars): Local variable
7137 NBYTES_R_LENGTH now const.
7138
7139 * config/obj-*.c, config/tc-*.c: Omit superfluous "return"
7140 statements at ends of functions. Don't check for null return from
7141 hash_new, since it won't return at all if there's no memory
7142 available. Also, check for null return from hash_insert, rather
7143 than zero-length string, as success indicator.
7144
7145 * subsegs.c (section_symbol): New function.
7146 * subsegs.h (section_symbol): Declare.
7147 * write.c (adjust_reloc_syms): Use it.
7148
cf4aca57
KR
7149Wed Dec 15 15:39:53 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
7150
7387c355
KR
7151 * Makefile.in (RUNTEST): New variable.
7152 (CHECKFLAGS): Pass it down.
7153
cf4aca57
KR
7154 * ecoff.c (ecoff_directive_frame): Permit extra trailing operands;
7155 unused for now, but supplied by Alpha OSF1 compiler.
7156
7157 * as.h: Protect against multiple inclusions.
7158 (int_to_gen): Don't declare.
7159
7160 * config/atof-vax.c (atof_vax): NULL is not a valid character
7161 constant.
7162
551d2fd4
JL
7163Tue Dec 14 21:38:25 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7164
26da0351
JL
7165 * configure.in (hppa*-*-osf*): Do not consider this a developmental
7166 configuration.
7167
551d2fd4
JL
7168 * config/tc-hppa.c (md_apply_fix): Handle cases where no
7169 relocation will be emitted for 32bit formats.
7170
9d5a9b20
JL
7171Mon Dec 13 23:33:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7172
7173 * config/tc-hppa.c (md_apply_fix): Do not call hppa_field_adjust
7174 for any of the 'T' field selectors.
7175
2b5936ff
SC
7176Sat Dec 11 11:23:12 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7177
7178 * config/tc-h8500.c (build_bytes): Get reloc type right for a
7179 %page operation. (md_assemble): Don't modify input_line_pointer.
7180 (mdcoff_sizemachdep): New function.
7181 * config/tc-h8500.h (TC_COFF_SIZEMACHDEP): New macro.
7182 * config/tc-z8k.c (get_operand): Delete bogus check.
7183
a1328e79
KR
7184Wed Dec 8 16:31:51 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
7185
7186 * write.c (number_to_chars_*): Delete bogus range check.
7187
7188 * output-file.c (TARGET_ARCH): No default.
7189
ef7ce769
SC
7190Tue Dec 7 16:02:53 1993 Steve Chamberlain (sac@jonny.cygnus.com)
7191
7192 * config/tc-sh.c (md_convert_frag): Truncate disps before calling
7193 md_number_to_chars. (md_assemble): Don't modify
7194 input_line_pointer.
7195
67707031
DE
7196Mon Dec 6 11:49:03 1993 Doug Evans (dje@canuck.cygnus.com)
7197
7198 * config/tc-h8300.c (md_assemble): Don't update input_line_pointer.
7199
dd2f509f
JL
7200Mon Dec 6 11:20:02 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7201
7202 * config/obj-som.[ch] (obj_read_begin_hook): Remove last change.
7203 Breaks with the HP compilers.
7204
7205 * config/tc-hppa.c (struct call_info): Remove fields which were
7206 set but never used. Remove all code which sets those fields.
7207 (struct subspace_dictionary_chain): Likewise.
7208 (struct space_dictionary_chain): Likewise.
7209 (pa_desc): Delete useless function. Delete all references.
7210 (hppa_tc_make_sections): No need to count the number of symbols for
69cb5925 7211 the symbol extension section.
dd2f509f 7212
7b624bf2
JL
7213Sun Dec 5 17:05:29 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7214
eb91665b
JL
7215 * config/obj-som.c (obj_som_version): Pass version string to
7216 SOM BFD backend.
7217 (obj_som_copyright): New function. Much like obj_som_version.
7218
7219 * config/tc-hppa.c (obj_copyright): Define as appropriate for
69cb5925 7220 SOM and ELF.
eb91665b
JL
7221 (pa_copyright): Just a stub now.
7222
42ecb409
JL
7223 * config/obj-som.c (obj_read_begin_hook): Delete unused function.
7224 * config/obj-som.h (obj_read_begin_hook): Provide dummy definition.
7225 (TARGET_SYMBOL_FIELDS): Delete. SOM isn't making use of them.
7226
4165dcc2
JL
7227 * config/tc-hppa.c (tc_gen_reloc, SOM version): Handle relocation
7228 expansion due to rounding mode selectors. Handle R_[RDSN]_MODE
7229 relocations for selecting the current rounding mode.
7230
7b624bf2
JL
7231 * config/tc-hppa.c (evaluate_absolute): Support e_rrsel and
7232 e_rlsel field selectors.
7233
7234Fri Dec 3 18:33:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7235
7236 * config/obj-elf.h: If ECOFF_DEBUGGING, undef
7237 SEPARATE_STAB_SECTIONS and INIT_STAB_SECTION, and define
7238 OBJ_PROCESS_STAB to call ecoff_stab.
7239 * config/obj-elf.c: Don't compile obj_elf_init_stab_section if
7240 INIT_STAB_SECTION is not defined.
7241
753dcbbd
JL
7242Fri Dec 3 10:56:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7243
7244 * config/tc-hppa.c (md_apply_fix): Delete old wrapper function.
7245 (md_apply_fix_1): Rename to md_apply_fix. Fix argument decls.
7246 Fix comments in various places. Always return a value.
7247 Avoid dereferencing a NULL fx_addsy.
7248 (hppa_force_relocation): Avoid dereferencing a NULL fx_addsy.
7249
585635c7
JL
7250 Fri Dec 3 09:47:30 1993 Pete Hoogenboom (hoogen@cs.utah.edu)
7251
7252 * tc-hppa.c: (tc_gen_reloc): Addend for a plabel relocation should
7253 be either 0 or 2 (no static link or static link required). Always
7254 assume no static link.
7255
bfbfba45
KR
7256Thu Dec 2 11:52:21 1993 Ken Raeburn (raeburn@cygnus.com)
7257
7258 * config/tc-sparc.c (tc_gen_reloc): Make adjustment to addend be
7259 dependent on howto fields, not on format flavour.
7260
7261 * struc-symbol.h (struct symbol): New fields sy_obj and sy_tc,
7262 defined as types OBJ_SYMFIELD_TYPE and TC_SYMFIELD_TYPE, if those
7263 macros are defined.
7264 * config/obj-coff.h (TC_SYMFIELD_TYPE, OBJ_SYMFIELD_TYPE): Define.
7265 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): Don't define.
7266 (sy_tc, sy_obj): Define so that the fields look like they used to,
7267 until all references get changed.
7268
7269 * write.c (fixup_segment): Lots of variables no longer register.
7270 Reordered some code for easier reading.
7271 * config/obj-coff.c (obj_coff_dim): dim_index no longer register.
7272 Deleted superfluous return statement.
7273 (obj_coff_line, obj_coff_size, obj_coff_scl, obj_coff_type,
7274 obj_coff_val, tag_init, tag_insert): Deleted superfluous return
7275 statement.
7276 (align, obj_coff_section): Deleted debugging printfs.
7277 * config/tc-i386.c (md_assemble): Discard some register decls.
7278 Use assignment rather than memcpy to copy template.
7279 (op_hash, reg_hash, prefix_hash): Default C initialization of
7280 statics is sufficient.
7281 * config/tc-sparc.c (print_insn): Array Reloc is now const, and
7282 points to const.
7283
7284 * config/obj-coff.h (TARGET_FORMAT): Only use coff-sparc-lynx if
7285 TE_LYNX; use coff-sparc otherwise.
7286 [USE_NATIVE_HEADERS]: Delete this code; it isn't used.
7287
7288 * write.c (fixup_segment): Call TC_VALIDATE_FIX, if defined,
7289 before processing a fixup. Call TC_ADJUST_RELOC_COUNT just before
7290 returning. Remove some i960-coff-specific code.
7291 (TC_ADJUST_RELOC_COUNT): Default to doing nothing.
7292 * config/tc-i960.h (TC_ADJUST_RELOC_COUNT) [OBJ_COFF]: Define.
7293 (i960_validate_fix): Declare.
7294 (TC_VALIDATE_FIX): Define.
7295 * config/tc-i960.c (i960_validate_fix): New function.
7296
7297 * write.c (number_to_chars_littleendian): New function. Write out
7298 bytes in little endian order, doing size and range checking.
7299 (number_to_chars_bigendian): New function, similar.
7300 * write.h: Declare them.
7301 * config/tc-*.c (md_number_to_chars): Use them.
7302 * config/tc-vax.c (md_apply_fix): Ditto.
7303 * config/tc-i386.c (md_apply_fix): Ditto.
7304
7305 * config/obj-coff.c: Rearranged code for handling line number
7306 data.
7307 (line_fsym): Renamed from function_lineoff in BFD_ASSEMBLER case,
7308 since the usage is different from non-BFD_ASSEMBLER case.
7309 (in_function, clear_function, set_function): New macros, to
7310 combine some of the functionality implemented in differnet ways in
7311 BFD_ASSEMBLER and non-... code. Used in other functions that used
7312 to check function_lineoff &c.
7313 (obj_emit_lineno): Split into two copies, one for BFD_ASSEMBLER,
7314 one for not. Non-BFD_ASSEMBLER version now has temporary variable
7315 to contain char* pointer pointed to by char** argument. Always
7316 follow CROSS_COMPILE code; easier to read that way.
7317 (obj_coff_ln): Don't call add_lineno or c_line_new if appline is
7318 set.
7319 (obj_coff_endef) [BFD_ASSEMBLER]: Don't do anything special for
7320 ".bf", it's been done elsewhere.
7321 (coff_frob_symbol): If ilne number data is pending, call
7322 add_linesym to flush it.
7323 (coff_frob_file): Don't do that here.
7324 * config/obj-coff.h (coff_frob_file): Declare.
7325 (obj_frob_file): Define, to call it.
7326
7327 * config/tc-sparc.h (md_create_short_jump, md_create_long_jump,
7328 md_estimate_size_before_relax: Define them as macros calling
7329 as_fatal.
7330 * config/tc-sparc.c: Don't define them as functions.
7331
7332 * configure.in: Handle target alpha-*-osf*. (No cpu files yet.)
7333
0a8ae18f
JL
7334Wed Dec 1 23:37:14 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7335
7336 * Makefile (clean): Depend on clean-here.
7337
9a048e48
KR
7338Wed Dec 1 11:35:21 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
7339
7340 * config/ho-go32.h: Include fopen-bin.h.
7341 * as.h: If FOPEN_WB isn't defined, include fopen-same.h.
7342 * output-file.c (output_file_create): Use FOPEN_WB instead of "w".
7343 * input-file.c (input_file_open): Use FOPEN_RT instead of "r".
7344 * listing.c (file_info): Use FOPEN_RB instead of "rb".
7345 * read.c (s_include): Use FOPEN_RT instead of "r".
7346
7347 * stabs.c: Include obstack.h.
7348
7349 * tc.h (md_create_long_jump): Don't declare if it's already
7350 defined as a macro.
7351 (md_create_short_jump, md_estimate_size_before_relax): Ditto.
7352
7353 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_errmsg instead
7354 of strerror. Clear bfd_error.
7355
7356 * config/te-lynx.h (LOCAL_LABELS_FB): Define, if not already
7357 defined.
7358
44c0de53
JL
7359Wed Dec 1 10:41:56 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7360
7361 * config/tc-hppa.c (hppa_elf_mark_end_of_function): New function.
7362 (pa_process_exit, pa_procend): Call it for ELF objects.
7363
777ad64d
ILT
7364Wed Dec 1 12:10:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7365
7366 * config/tc-mips.c (macro): Subtract 8 from offset in non PIC l.d
4032d3f0
ILT
7367 case. See comment. From wilson@cygnus.com: for M_L_DAB, set
7368 coproc before doing goto ld.
777ad64d 7369
335d35c8
JL
7370Tue Nov 30 13:40:30 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7371
7372 * write.c (TC_FORCE_RELOCATION): Provide a default definition.
69cb5925 7373 (fixup_segment): Allow the target machine to specify that a
335d35c8
JL
7374 relocation must be generated for a particular fixup. Remove
7375 #ifndef TC_HPPA hack.
7376
7377 * config/tc-hppa.h (TC_FORCE_RELOCATION): Define.
7378
7379 * config/tc-hppa.c (md_apply_fix_1): Never change fx_addsy to
7380 be NULL. Only fixup_segment is supposed to do that.
7381 (hppa_force_relocation): New function.
7382
018f2bba
ILT
7383Tue Nov 30 11:21:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7384
c751ad19
ILT
7385 * Makefile.in (stabs.o): Added dependencies.
7386
018f2bba
ILT
7387 * config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab.
7388
81413fa2
JL
7389Sun Nov 28 12:11:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7390
278cd007
JL
7391 * app.c (do_scrub_next_char): Output a TAB before any
7392 .app* directive.
7393
81413fa2
JL
7394 * config/tc-hppa.c (fix_new_hppa): Make sure a sub_symbol
7395 exists before trying to peek at its name.
7396 (pa_space): Do not call pa_align_subseg. See hppa/unsorted/align3.s
7397 for testcase.
7398 (pa_align_subseg): Delete unused/unwanted function.
7399
385ce433
JL
7400Sat Nov 27 22:49:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7401
7402 * read.c (read_a_source_file): Fix test for when to stick a colon
7403 on the end of a label. Make code conditional on either MRI or
7404 LABELS_WITHOUT_COLONS.
7405
7406 * app.c (do_scrub_next_char): If a line begins with whitespace, leave
7407 the single whitespace character alone. Eat all others.
7408
7409 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define.
7410
31a385d1
JL
7411Wed Nov 24 01:22:54 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7412
7413 * config/tc-hppa.c (pa_procend): Do not call process_exit.
7414 (exit_processing_complete): Delete unwanted variable and all
7415 references.
7416
c5953036
ILT
7417Wed Nov 24 02:31:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7418
7419 * ecoff.c (ecoff_setup_ext): Renamed from ecoff_build_ext.
7420 Changed to not actually build the external symbol information, as
7421 that is now done by the ECOFF back end.
7422 (ecoff_build_debug): Changed accordingly.
7423 * ecoff.h (obj_ecoff_set_ext): Declare. obj-format.c function
7424 called by ecoff_setup_ext.
7425 * config/obj-ecoff.c (ecoff_frob_file): If debug_info count is 0,
7426 set corresponding pointer to NULL. Don't set raw_size and
7427 raw_syments.
7428 (obj_ecoff_set_sym_index): Removed.
7429 (obj_ecoff_set_ext): New function.
7430 * config/obj-ecoff.h (obj_set_sym_index): Don't define.
7431 (obj_ecoff_set_sym_index): Don't declare.
7432 * config/obj-elf.c (obj_ecoff_set_ext, elf_get_extr,
7433 elf_set_index): New functions used for ECOFF_DEBUGGING.
7434 (elf_frob_file): Reworked ECOFF debug generation to use
7435 new functions in bfd/ecofflink.c.
7436
7437Sun Nov 21 23:54:52 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7438
7439 * config/tc-hppa.c (pa_def_subspaces): Only create the unwind
7440 subspace for ELF. In the SOM world, the linker is responsible
7441 for creating the unwind subspaces.
7442
e0209756
ILT
7443Fri Nov 19 16:25:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7444
7445 * config/obj-coffbfd.c: Use PARAMS rather than EXFUN.
7446 (yank_symbols): Don't call S_SET_EXTERNAL if the storage class is
7447 already set. Fixes .def var; .val external_var; .scl 3; .endef.
7448 (adjust_stab_section): Make static. Declare return type. Remove
7449 unused variables.
7450
7451 * config/tc-i386.h: Declare tc_coff_fix2rtype and
7452 tc_coff_sizemachdep.
7453
0669e047
KR
7454Fri Nov 19 04:33:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7455
7456 * write.c (write_object_file): Disable obj_check_file_symbols
7457 hook; only back end using it wasn't using it correctly.
7458 (write_object_file): Always call obj_frob_symbol and
7459 tc_frob_symbol; always retain symbol if it's used by a relocation,
7460 regardless of what these routines indicate.
7461 * config/obj-coff.c (coff_frob_symbol): Renamed from
7462 coff_check_file_symbols.
7463 * config/obj-coff.h (obj_check_file_symbols): Deleted.
7464 (coff_frob_symbol): Declare.
7465 (obj_frob_symbol): Call it.
7466
7467 * config/obj-coff.c (obj_crawl_symbol_chain, obj_emit_strings,
7468 obj_pre_write_hook): Don't define for BFD_ASSEMBLER.
7469 (c_section_header): Ditto. Delete superfluous return at end of
7470 function.
7471
7472 * config/obj-coff.h [TC_SPARC]: Include coff/sparc.h, and specify
7473 coff-sparc-lynx.
7474 (SA_GET_SYM_TAGNDX): Use BFD_HEADERS version for BFD_ASSEMBLER
7475 too.
7476 (c_section_header): Rewrite prototype so that it contains no
7477 preprocessing directives. Don't declare it at all if
7478 BFD_ASSEMBLER.
7479
7480 * configure.in (sparc*-*-lynxos): New target, using coff and
7481 BFD_ASSEMBLER.
7482
7483 * stabs.c: New file.
7484 * Makefile.in (REAL_SOURCES, OBJS): List it.
7485 * read.c (STAB_SECTION_NAME, STAB_STRING_SECTION_NAME,
7486 get_stab_string_offset, s_stab_generic, s_stab, s_xstab, s_desc):
7487 Moved to new file.
7488
7489 * config/tc-sparc.c (tc_gen_reloc): Handle coff files like elf
7490 files.
7491
29cc5816
ILT
7492Wed Nov 17 17:23:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7493
7494 * configure.in (mips-*-irix5*): New target. Use elf and mips-big.
7495 * config/obj-elf.c: If ECOFF_DEBUGGING, include ecoff.h.
7496 (obj_pseudo_table): If ECOFF_DEBUGGING, define ECOFF
7497 pseudo-ops.
7498 (obj_read_begin_hook): If ECOFF_DEBUGGING, call
7499 ecoff_read_begin_hook.
7500 (obj_symbol_new_hook): If ECOFF_DEBUGGING, call
7501 ecoff_symbol_new_hook.
7502 (obj_elf_init_stab_section): Cast alloca result.
7503 (elf_frob_file): If ECOFF_DEBUGGING, finish up ECOFF debugging
7504 information and write it out into .mdebug section.
7505 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): New macro.
7506 (TARGET_SYMBOL_FIELDS): Use ELF_TARGET_SYMBOL_FIELDS.
7507 (ECOFF_DEBUGGING): Define if TC_MIPS.
7508 (TARGET_SYMBOL_FIELDS): If ECOFF_DEBUGGING, override to add
7509 fields required by ECOFF.
7510 * config/tc-mips.c: Check ECOFF_DEBUGGING rather than
7511 OBJ_ECOFF in many cases.
7512 (mips_any_noreorder): New variable.
7513 (mips_cprestore_offset): Initialize to -1.
7514 (mips_frame_reg): New variable.
7515 (RELAX_ENCODE, RELAX_OLD, RELAX_NEW, RELAX_RELOC1,
7516 RELAX_RELOC2, RELAX_RELOC3, RELAX_WARN): New macros.
7517 (md_pseudo_table): Handle "gpword" and "cpadd".
7518 (md_begin): Initialize ok to false. If OBJ_ELF, set alignment
7519 of text, data and bss sections to 4. Set alignment of
7520 .reginfo section to 2. If ECOFF_DEBUGGING, create .mdebug
7521 section.
7522 (ALIGN_ERR, ALIGN_ERR2): Removed unused and useless alignment
7523 check.
7524 (append_insn, macro_build, macro_build_lui): Take place
7525 argument. Changed all callers.
7526 (append_insn): If appending a nop, don't emit one.
7527 (macro_build): Changed assertion for 'i', 'j', 'o' case.
7528 (gp_reference): Removed.
7529 (load_address): New function.
7530 (macro): If mips_noreorder is used, set mips_any_noreorder.
7531 Extensive changes to handle GP and PIC symbols differently.
7532 Build both possible code choices using a variant frag, and
7533 make a final decision at the end of assembly when all
7534 information is known. Added PIC support for all symbol
7535 references.
7536 (mips_ip): Don't permit anything but a number after $ for a
7537 coprocessor register. Don't use .lit4 or .lit8 sections when
7538 generating PIC code. If OBJ_ELF, set alignment of .lit4 or
7539 .lit8 section to 4.
7540 (md_apply_fix): Accept and ignore GOT16 and GPREL32 relocs.
7541 (s_change_sec): Set alignment of ELF .rodata or .sdata section
7542 to 4.
7543 (s_mipsset): If .set noreorder, set mips_any_noreorder.
7544 (s_cpload): Ignore .cpload if not generating PIC code. Warn
7545 if .cpload is not in noreorder section.
7546 (s_cprestore): Ignore .cprestore if not generating PIC code.
7547 (s_gpword, s_cpadd): New functions.
7548 (tc_get_register): Added frame argument; if true, set
7549 mips_frame_reg to return value. Changed all callers.
7550 (md_estimate_size_before_relax): Don't error out, but instead
7551 determine how much a frag should grow.
7552 (tc_gen_reloc): Return multiple relocs if appropriate, as
7553 determined by md_estimate_size_before_relax.
7554 (md_convert_frag): New function.
7555 (mips_elf_final_processing): Set ELF header flags based on
7556 mips_any_noreorder and mips_pic.
7557 * config/tc-mips.h (RELOC_EXPANSION_POSSIBLE): Define.
7558 (MAX_RELOC_EXPANSION): Define to be 3.
7559 (md_relax_frag): Define to be 0.
7560 (md_convert_frag): Don't define.
7561 (tc_get_register): Changed declaration.
7562
7563 * ecoff.h, ecoff.c: New files pulled out of config/obj-ecoff.c to
7564 support generating ECOFF debugging information for MIPS ELF
7565 targets. Compiled only if ECOFF_DEBUGGING is defined. Changed
7566 handling of external symbols: it now always generates exactly
7567 those external symbols that are defined in the global symbol list.
7568 * Makefile.in (REAL_SOURCES): Added ecoff.c.
7569 (REAL_HEADERS): Added ecoff.h.
7570 (OBJS): Added ecoff.o.
7571 (ecoff.o): New target.
7572 * config/obj-ecoff.c: Almost entirely moved into ecoff.c.
7573 Remaining code mostly just calls ecoff.c code.
7574 * config/obj-ecoff.h: Define ECOFF_DEBUGGING.
7575 (TARGET_SYMBOL_FIELDS): Make ecoff_symbol a pointer to a
7576 struct localsym.
7577 (obj_read_begin_hook, obj_symbol_new_hook): Define to call
7578 functions in ecoff.c.
7579 (ecoff_stab): Don't declare (now declared in ecoff.h).
7580 (obj_set_sym_index): Define.
7581 (obj_ecoff_set_sym_index): Declare.
7582
7583 * frags.h (frag_grow): Declare.
7584 * frags.c (frag_grow): Made non-static.
7585
7586 * write.c (is_dnrange): Do not define if md_relax_frag is defined.
7587 (relax_segment): If md_relax_frag is defined, use it to handle a
7588 frag of type rs_machine_dependent rather than looking through
7589 md_relax_table.
7590
7591 * read.c (read_a_source_file): If we find a bad pseudo-op,
7592 do a continue to go on to the next line rather than a break.
7593 Removed duplicate bad pseudo-op code which was never executed.
7594
7595 * read.c (s_lcomm): Do not require a comma after the name.
7596
7597 * subsegs.h (segment_info_type): Changed hadone field to bitfield.
7598 Added bss bitfield.
7599 * as.c (perform_an_assembly_pass): Set bss flag for bss_section.
7600 * read.c (s_lcomm): Set bss flag for .sbss section if used.
7601 * write.c (relax_and_size_seg): Don't set SEC_HAS_CONTENTS for a
7602 bss section. Set SEC_RELOC if there are any relocations, even for
7603 a zero size section.
7604
7605 * write.c (write_relocs): In RELOC_EXPANSION_POSSIBLE case, base
7606 data offset on reloc[0]->address rather than reloc[j]->address, so
7607 that multiple relocs can affect different memory locations.
7608
7609 * write.c (chain_frchains_together, relax_and_size_seg,
7610 adjust_reloc_syms, write_relocs): Make third argument PTR, not
7611 char *, to match definition of bfd_map_over_sections.
7612
7613 * app.c (do_scrub_next_char): Don't interpret a comment character
7614 as starting a CPP line directive unless it is a '#' and is the
7615 very first characters on the line (i.e., do not permit leading
7616 whitespace).
7617
7618 * messages.c (identify): Make file argument non-const, to match
7619 callers.
7620
c5e9ccd0
JL
7621Tue Nov 16 20:38:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7622
7623 * config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check.
7624
7625Sat Nov 13 18:22:48 1993 Steve Chamberlain (sac@jonny.cygnus.com)
7626
7627 * config/tc-sh.c (md_apply_fix): Cope with IMM16 type too.
7628 * config/tc-z8k.c (build_bytes, md_apply_fix): Understand nDISP7
7629 relocs.
7630
4a1b59ef
JL
7631Fri Nov 12 16:51:47 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7632
3e330968 7633 * config/tc-hppa.[ch]: Fix assorted trivial indention problems.
4a1b59ef
JL
7634 * config/obj-som.c (obj_som_version): Add missing ';'.
7635 (som_frob_file): Delete whitespace at EOL.
7636
f3b6e1f2
KR
7637Fri Nov 12 15:26:21 1993 Ken Raeburn (raeburn@cygnus.com)
7638
7639 * Makefile.in (VERSION): Updated following 2.2 release.
7640
c5e9ccd0 7641Fri Nov 12 14:52:17 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
f2eed884
JL
7642
7643 * config/tc-hppa.c (hppa_fix_struct): Use a real type for the
7644 field selector, rather than an int. All uses of field selectors
7645 fixed.
7646 (tc_gen_reloc): For SOM PLABELs, always set addend to zero for now.
7647 (md_apply_fix_1): Do not call hppa_field_adjust for any PLABEL
7648 field.
7649
7650 Thu Nov 11 15:49:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
a721c80b
JL
7651
7652 * config/tc-hppa.c (pa_type_args): For .import statements,
69cb5925 7653 silently ignore attempt to change the symbol type for a function
f2eed884 7654 from ST_ENTRY to ST_CODE on .import.
a721c80b 7655
ca16b5e5
ILT
7656Wed Nov 10 16:19:13 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7657
7658 * write.h (fixS): Rename fx_callj field to fx_tcbit.
7659 * write.c, config/obj-coff.c, config/obj-coffbfd.c,
7660 config/tc-i960.c: Corresponding changes.
7661
48153d49
JL
7662Tue Nov 9 00:49:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7663
7420b02b
JL
7664 * Makefile.in (distclean): Delete config-stamp and config.h
7665
f41f3d72
JL
7666 * config/tc-hppa.c (evaluate_absolute): Avoid relying on
7667 ANSI-C features.
7668
48153d49
JL
7669 * config/tc-hppa.c (pa_type_args): Renamed from pa_export_args.
7670 Accept new argument "is_export". All callers changed. When
7671 processing a .export directive for a function, do not allow
7672 the user to set the type to "CODE", instead warn and set the
7673 type to "ENTRY".
7674
9226253a
ILT
7675Mon Nov 8 12:05:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7676
7677 * config/tc-mips.c (mips_ip, printInsn): Handle 'k' (from Ted
7678 Lemon <mellon@pepper.ncd.com>).
7679 (mips_ip): Permit odd numbered floating point registers if -mips3.
48153d49 7680 (macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
9226253a 7681
53087850
DE
7682Mon Nov 8 07:45:01 1993 Doug Evans (dje@canuck.cygnus.com)
7683
7684 * configure.in: Remove h8300h, we have multilib now.
7685
5f8a3788
DHW
7686Mon Nov 8 06:09:18 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com)
7687
7688 * configure.in: Support generic netware as being ELF format.
7689 Recognise unixware if the user supplies it.
7690
163aac84
JL
7691Sun Nov 7 01:02:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7692
513f0471
JL
7693 * First cut at cleaning up PA instruction parsing.
7694 * config/tc-hppa.c (pa_get_absolute_expression): Accept pointer to
7695 insn structure as an argument, and a pointer to a string. All
7696 callers changed. Always read any field selector here. Call
7697 evaluate absolute to get a return value.
7698 (evaluate_absolute): Addept pointer to insn structure as its
7699 argument. All callers changed.
7700 (INSERT_FIELD_AND_CONTINUE): New macro for inserting a bitfield
7701 into an instruction and continuing the main pa_ip loop.
7702 (CHECK_FIELD): New macro for simple range checking of fields.
7703 (pa_ip): Delete unused variables. Use INSERT_FIELD_AND_CONTINUE
7704 and CHECK_FIELD. All immediate fields now pass through
7705 pa_get_absolute_expression which will also handle field selectors.
7706 Delete dead code. Simplify.
7707 (md_apply_fix_1): Use CHECK_FIELD to verify any fixes that are
7708 applied are in range. Use bfd_put_32 rather than inserting each
7709 byte of the fixed instrution into the buffer ourselves.
7710
3e411021 7711 * write.c (fixup_segment): Delete {SEG,GLOBAL}_DIFF_ALLOWED code,
69cb5925 7712 it was PA specific and is no longer needed (it's now handled
3e411021
JL
7713 within the PA backend).
7714 * config/tc-hppa.h (SEG_DIFF_ALLOWED): Delete definition.
7715 * config/tc-hppa.c (fix_new_hppa): If the subtract symbol for
7716 a fixup is $global$ change it to NULL as $global$ is really only
7717 needed long enough to determine the base type of relocation to use.
7718
240cbc57
JL
7719 * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
7720
163aac84
JL
7721 * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
7722 for 'z' operands (target of ble branch).
7723
1cc248d2
JL
7724Sat Nov 6 22:41:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7725
18c4f112
JL
7726 * config/tc-hppa.c: (update_subspace): Fix type and name of last
7727 parameter. All callers fixed.
7728 (md_begin, pa_chk_field_selector, pa_entry): Lint.
7729
1cc248d2
JL
7730 * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
7731 to default state after it's been used.
7732
88eb7ea6
JL
7733Fri Nov 5 12:08:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7734
7735 * config/obj-som.c (obj_som_init_stab_section): Change
7736 space/subspace sort keys for the stab sections so as to avoid
7737 bugs in the hp linker and pxdb.
7738
0f894895
JL
7739Thu Nov 4 17:00:05 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7740
7741 * write.c (chain_frchains_together): Update pointer to last
7742 frag for a segment in the seginfo structure.
7743
de074576
JW
7744Thu Nov 04 09:09:35 1993 Jeffrey Wheat (cassidy@cygnus.com)
7745
7746 * Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
7747
7748Wed Nov 3 12:16:27 1993 Ken Raeburn (raeburn@rover.cygnus.com)
7749
7750 * write.c (fixup_segment): Handle conversion of subtraction to
7751 pc-relative addressing even if pc-relative flag is already set.
7752
7753 * config/tc-m68k.c (m68k_ip_op): Use strchr, not index. Don't
7754 declare either.
7755
7756 * doc/Makefile.in (distclean): Delete intermediate files from dvi
7757 build, but not the dvi or info files.
7758 * Makefile.in (clean-here): New target; cleans up current
7759 directory only.
7760 (distclean): Use it instead of clean.
7761
7762 * read.c (s_xstab): Don't use alloca.
7763
7764 * messages.c (identify): New routine; print message identifying
7765 following messages as coming from assembler.
7766 (as_show_where, as_bad_internal, as_bad_where): Call it.
7767 (as_fatal): Don't need to identify program any more.
7768
efe8ef02
ILT
7769Tue Nov 2 18:04:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7770
fd4b7c25
KR
7771 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
7772
efe8ef02
ILT
7773 * read.c (s_lcomm): Put small objects in .sbss for MIPS ELF as
7774 well as MIPS ECOFF.
7775 (get_stab_string_offset): Remove unused variable aligned.
7776
aa14e863
JL
7777Tue Nov 2 15:07:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7778
d6e524f3
JL
7779 * tc-hppa.c: Add %dp and %rp as synonyms for %r27 and %r2 in the
7780 predefined register table.
7781 (pa_parse_number): Handle %rp in common register shortcut code.
7782 Consistently set return value to -1 for an error. Clean up error
7783 messages and only print them when "print_errors" is true. Handle
7784 empty string case like the HP assembler -- assume a value of
7785 zero.
69cb5925 7786
20cee6d8
JL
7787 * config/ho-hpux.h: Do not include ho-sysv.h. Instead include
7788 standard hpux include files to pick up various function decls.
7789
aa14e863
JL
7790 * config/ho-hppaosf.h: Delete _IO* macros. They are defined in
7791 stdio.h. Delete bogus declaration of free. Get path to
7792 alloca-conf.h right.
7793
25270a1c
KR
7794Tue Nov 2 13:57:30 1993 Ken Raeburn (raeburn@rover.cygnus.com)
7795
7796 * expr.c (operand): Fix checks for characters following "0b" or
7797 "0f".
7798
f197d7eb
JL
7799Mon Nov 1 21:37:04 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7800
ff852e11
JL
7801 * config/obj-som.h (obj_attach_unwind_info): Define as a hook
7802 so GAS can attach unwind descriptor information to a BFD symbol.
7803 * config/tc-hppa.c (fix_new_hppa): If necessary attach unwind
7804 descriptor information to the BFD symbol.
7805 (md_apply_fix): R_HPPA_ENTRY and R_HPPA_EXIT can never be "applied",
7806 they are simply markers. Make R_HPPA_UNWIND_* handling OBJ_ELF
7807 dependent.
7808 (pa_build_unwind_subspace): Whole function is OBJ_ELF dependent.
7809 (pa_entry): Build a R_HPPA_ENTRY relocation when configured for SOM.
7810 (pa_exit): Likewise, but built a R_HPPA_EXIT relocation. Do not
7811 build "end-of-function" symbols for SOM, they are not needed.
7812
a50e9b55
JL
7813 * config/tc-hppa.c (process_exit): Create temporary symbols with
7814 correct prefixes so they can be eliminated later.
7815
49fc68a1 7816 * config/tc-hppa.c (call_info struct): Delete unused "frame" field.
69cb5925 7817 (pa_callinfo): Insert framesize into the unwind information as
49fc68a1
JL
7818 soon as it's available.
7819 (pa_build_unwind_subspace): Do not insert framesize into the unwind
7820 information here.
7821
c43d56f7
JL
7822 * Add support for marker type relocations. These mark areas
7823 of interest to the linker. ENTRY/EXIT relocations for SOM are
7824 an example of marker relocations.
7825 * write.c (write_relocs): Instead of assuming size of a relocation
7826 is 4 bytes, pick up the size from relocation itself.
69cb5925 7827 (fixup_segment): Do not complain that a value is too small for
c43d56f7
JL
7828 marker relocations.
7829
009dc5e1
JL
7830 * struc-symbol.h: Add new "sy_used" field to the symbol structure.
7831 * expr.c (operand): Set sy_used for any symbol used as an operand.
7832 (expr): Likewise for any symbol used in an expression.
7833 * config/tc-hppa.h (tc_frob_symbol): Define. Punt imported
7834 symbols which are never used and absolute symbols which local scope.
7835
f197d7eb
JL
7836 * config/obj-som.h (obj_frob_file): Define.
7837 * config/obj-som.c (obj_som_init_stab_section): Set alignment
7838 of stab sections. Make space for the special stab entry.
69cb5925 7839 (adjust_stab_sections): Adjust the special entry in the
f197d7eb
JL
7840 stabs section.
7841 (som_frob_file): New function. Simply calls adjust_stab_sections
7842 for each section.
7843
bca9cf0b
ILT
7844Mon Nov 1 17:54:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7845
7846 * config/tc-mips.c (PIC_CALL_REG, SP, FP): Define.
7847 (mips_pic, mips_cprestore_offset): New static variables.
7848 (md_pseudo_table): Handle .abicalls, .cpload, and .cprestore.
7849 Ignore .bgnb and .endb.
7850 (gp_reference): _gp_disp is never addressed off GP.
7851 (macro_build): Ignore macros while searching for insn. For cases
7852 i, j, and o, accept the reloc type as an argument rather than
7853 assuming BFD_RELOC_LO16. Don't try to convert BFD_RELOC_LO16 to
7854 BFD_RELOC_MIPS_GPREL. Added new case a.
7855 (set_at, load_register, macro): Changed calls to macro_build to
7856 pass new argument for i, j and o cases.
7857 (macro): Handle M_JAL_1, M_JAL_2 and M_JAL_A. These require
7858 special handling when generating SVR4 PIC code.
7859 (mips_ip, tc_get_register, s_frame): Use macros FP, SP, GP and AT
7860 rather than hard coded constants.
7861 (md_apply_fix): Handle BFD_RELOC_MIPS_LITERAL and
7862 BFD_RELOC_MIPS_CALL16.
7863 (s_option): Set mips_pic based on .option picN.
7864 (s_abicalls): New function; set mips_pic to 2.
7865 (s_cpload): New function; handle .cpload.
7866 (s_cprestore): New function; handle .cprestore.
7867
7868 * config/obj-ecoff.c (obj_pseudo_table): Add entries for .bgnb,
7869 .endb and .verstamp, setting them to s_ignore.
7870
d191a03c
JL
7871Sun Oct 31 00:36:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7872
47f45d66
JL
7873 * config/tc-hppa.c (subspace_dictionary_chain): Add new ssd_defined
7874 field. Define SUBSPACE_DEFINED accessor macro.
7875 (pa_subspace): Allow user to override subspace attributes for
7876 built-in subspaces. Set ssd_defined at the end of fcn -- that
7877 way the attributes can only be changed once. Pass newly allocated
7878 name to is_defined_subspace, not a pointer to the input line.
7879 Fix typo in space/subspace rework.
7880 (is_defined_subspace): Delete unused 2nd arg. All callers changed.
7881
7882 * config/tc-hppa.c (pa_import): If currently in the text segment
7883 and a symbol is imported without type information, set BSF_FUNCTION
7884 for the symbol.
20b39b6f
JL
7885 * write.c (relax_and_size_seg): Correct test to determine if
7886 the section's size was rounded up.
7887
e75acd68
JL
7888 * config/obj-som.h (obj_set_symbol_type): Define a hook so GAS
7889 can properly set all the SOM symbol types.
69cb5925 7890 * config/tc-hppa.c (pa_symbol_type): New enum to represent the
e75acd68
JL
7891 symbol types which can be set from an IMPORT/EXPORT statement.
7892 (pa_export_args): Set the pa_symbol_type type based on arguments.
7893 If defined, call obj_set_symbol_type to pass this information on
7894 to the BFD backend.
7895
69cb5925 7896 * read.c (get_stab_string_offset): Set SEC_DEBUGGING for any
d191a03c
JL
7897 stab section we make.
7898 (s_stab_generic): Likewise.
7899
12696e9c
JL
7900Sat Oct 30 14:26:20 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7901
65a7f8a6
JL
7902 * Allow backends to override the value of the fake label.
7903 * write.h (LOCAL_LABEL): Delete DOT_LABEL_PREFIX code. Instead
7904 assume backends will define LOCAL_LABEL if anything other than
7905 'L' is used to denote a local label.
7906 (FAKE_LABEL_NAME): New macro. Defines the default name used for
7907 the "fake" label.
7908 * expr.c (make_expr_symbol): Delete DOT_LABEL_PREFIX code
7909 and instead simply use the string defined by FAKE_LABEL_NAME.
7910 (operand): Likewise.
7911 * read.c (s_stab_generic): Likewise.
7912 * config/tc-hppa.h (FAKE_LABEL_NAME): Define as L$0\001 so it's
7913 known to be a local label.
7914 * config/tc-i386.h (DOT_LABEL_PREFIX): Delete.
7915 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
7916 * config/tc-m68k.h (DOT_LABEL_PREFIX): Delete.
7917 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
7918 * config/te-sco386.h (DOT_LABEL_PREFIX): Delete.
7919 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
7920
6bc14195
JL
7921 Rework space/subspace handling in PA code to fully support
7922 SOM spaces/subspaces.
7923 * config/tc-hppa.c (USE_ALIASES): New object-format dependent define
7924 to control the use of space/subspace name aliases.
7925 (update_subspace): Accept space chain entry for containing space
7926 as a new parameter. All callers changed.
7927 (pa_get_label): Use current_space rather than pa_segment_to_space.
7928 (pa_define_label): Likewise.
7929 (pa_undefine_label): Likewise.
7930 (md_begin): Change into the (possibly modified) text_section.
7931 (pa_parse_space_stmt): Create a new segment/space if create_flag
7932 is true, and the space name is not one of the two predefined spaces.
69cb5925
KR
7933 (pa_subspace): Use current_space rather than a lookup via
7934 pa_segment_to_space. Reset BFD section flags as required by
6bc14195
JL
7935 the .subspace directive. Likewise for the section alignment.
7936 Pass the current space to update_subspace and create_new_subspace.
7937 (pa_spaces_begin): Only use space/subspace aliases if USE_ALIASES
7938 is true. When not using aliases, create a BFD section for each
7939 subspace encountered. When not using aliases replace the default
7940 text, data, and bss segments with new ones.
69cb5925 7941 (create_new_subspace): When not using aliases each subspace has a
6bc14195 7942 section/segment and subsegments are not needed, so set the subsegment
69cb5925 7943 to zero.
6bc14195 7944
548ea75b 7945 * config/tc-hppa.c (pa_parse_space_stmt): If needed, call
69cb5925 7946 obj_set_section_attributes to pass space attributes to the
548ea75b
JL
7947 BFD backend.
7948 (create_new_space): Likewise.
69cb5925 7949 (create_new_subspace): Likewise for subspace attributes using
548ea75b
JL
7950 obj_set_subsection_attributes.
7951 (update_subspace): Likewise for subspace attributes using
7952 obj_set_subsection_attributes.
7953
0f3b419c
JL
7954 * config/tc-hppa.c (pa_parse_space_stmt): Get segment and sort key
7955 for $TEXT$ and $PRIVATE$ from the default space structure.
7956
9a182533
JL
7957 * config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
7958 as appropriate for the given type.
7959
62f0841b
JL
7960 * config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
7961 SOM relocations.
7962
d56f45f5
JL
7963 * config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
7964 redefinition.
7965
3c87583d
JL
7966 * config/obj-som.[ch]: New files for SOM support. Note SOM
7967 support is not yet complete in GAS or BFD.
7968
69cb5925 7969 * config/ho-hppabsd.h: Delete IO* macros, they are defined in
12696e9c
JL
7970 stdio.h. Delete declaration of free. Include stdlib.h, unistd.h,
7971 and string.h.
7972
37ed805e
JL
7973Fri Oct 29 13:26:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7974
12696e9c
JL
7975 * Allow backends to override the section names used for embedded
7976 stabs support. Needed for SOM.
7977 * read.c (STAB_SECTION_NAME): Default the name of the stab section
69cb5925 7978 to ".stab".
12696e9c
JL
7979 (STAB_STRING_SECTION_NAME): Likewise for the stab strings section.
7980 (get_stab_string_offset): Is now passed the full name for the
7981 stab string section rather than a name prefix. All references
7982 changed.
7983 (s_stab_generic): New argument for the stab string section name.
7984 all references changed.
7985 (s_xstab): Append "str" to the stab section name to get the
7986 stab string section name.
7987 * config/obj-coffbfd.c (obj_coff_init_stab_section): Append "str"
7988 to stab section name to get the stab string section name. Pass
7989 the full name of the stab string section to get_stab_string_offset.
7990 * config/obj-elf.c (obj_elf_init_stab_section): Likewise.
69cb5925 7991
53c0b9e7
JL
7992 * config/tc-hppa.c (md_begin): Disable "-R" option to fold
7993 textand data segments. Warn user "-R" is unsupported on the
7994 PA.
37ed805e 7995
48ac0c90
JL
7996Thu Oct 28 12:36:13 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7997
d33ace2e
JL
7998 * config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
7999 .align and .ALIGN directives.
8000
48ac0c90
JL
8001 * config/tc-hppa.c (pa_space): Do not report an error for a .space
8002 directive which does not define a "well-known" space and does
8003 not include a space number as an argument.
69cb5925 8004
48ac0c90
JL
8005 * config/tc-hppa.c (pa_def_subspaces): Correct initialization of the
8006 "defined", "loadable", "code_only" and "space_index" fields.
8007 (pa_def_spaces): Correct initialization of the "spnum", "defined",
8008 and "private" fields.
8009
8010 * write.h (struct fix): Add new tc_fix_data field for the various
8011 backends to attach machine dependent fixup information to.
8012 * write.c (fix_new_internal): Initialize new tc_fix_data field.
8013 * config/tc-hppa.c (hppa_fix_struct): Delete unnecessary fix_fixP and
8014 fx_next fields.
8015 (hppa_find_hppa_fix): Delete unnecessary function. Fix all
69cb5925 8016 callers to get HPPA fixup information from the tc_fix_data field
48ac0c90
JL
8017 in the GAS fixup.
8018 (hppa_fix_root): Delete unnecessary variable.
8019 (fix_new_hppa): Attach HPPA fixup data to the GAS fixup.
8020
8021 * config/tc-hppa.c (pa_set_start_symbol); Delete unwanted
8022 function. Fix all callers.
8023 (subspace_dictionary_chain): Delete unused ssd_start_sym field.
8024
8025 * config/tc-hppa.c (hppa_fix_adjustable): New function to determine
8026 if a particular fixup is adjustable.
8027 * config/tc-hppa.h (tc_fix_adjustable): Call hppa_fix_adjustable to
8028 perform the real work.
8029
8030 * config/tc-hppa.h (RELOC_EXPANSION_POSSIBLE): Move definition out
8031 of OBJ_XXX conditionals.
8032 (MAX_RELOC_EXPANSION): Likewise.
8033
8034 * config/tc-hppa.c (log2): Renamed from is_power_of_2. Fix all
8035 callers. Now returns log2 (N) for positive N which are an exact
8036 power of two or -1 for an error.
8037
69cb5925 8038 * config/tc-hppa.c (pa_callinfo): Range check values provided for
48ac0c90
JL
8039 ENTRY_GR, ENTRY_FR and ENTRY_SR. Properly adjust vaues before
8040 inserting them into the unwind table.
8041
8042 * config/tc-hppa.c (NEEDS_FIXUP): Delete definition and all references.
8043 (hppa_gen_reloc_type): New object format dependent macro.
8044 (pa_ip): Delete tons of code which was either OBJ_SOM or OBJ_ELF
8045 conditional. The code can (and will) be shared between SOM & ELF
8046 formats in the near future.
8047 (cons_fix_new_hppa, md_apply_fix_1): Likewise.
8048 (pa_build_unwind_subspace, process_exit, pa_exit): Likewise.
8049 (tc_gen_reloc): Use hppa_gen_reloc rather than an object format
8050 specific call.
8051
8052 * config/tc-hppa.c (pa_comm): Set the segment for a common symbol
8053 to bfd_und_section.
8054
8055 * config/obj-elf.h (obj_elf_version): Add extern prototype.
8056
8057 * configure.in (hppa-*-bsd*): New configuration.
8058 BFD is always used for GAS generating SOM objects.
8059
8060 * write.c (adjust_reloc_syms): Set sy_used_in_reloc if an
8061 adjustment is rejected by the target machine.
8062
8063 * config/tc-hppa.c (pa_big_cons): Delete function and its
8064 declaration. All callers changed to use pa_cons.
8065
8066 * write.c (fixup_segment): Fix indention and open/close brace
8067 problem.
8068
8069 From Pete Hoogenboom:
8070 * config/tc-hppa.c (md_atof): Return a NULL on success rather than
8071 an empty string.
8072
3515a504
JL
8073 * config/tc-hppa.c (pa_parse_space_stmt): Advance
8074 input_line_poitner when an invalid argument is encountered.
8075
6121fb06
ILT
8076Thu Oct 28 13:09:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8077
8078 * config/tc-a29k.c (md_begin): When opcodes are mashed together in
8079 the table, require that the one without bit 0x1000000 set come
8080 first. Require further that it be case 'b' or 'P'. The a29k
8081 opcode table already meets these constraints.
8082 (machine_ip): When handling case 'i' or 'A', make sure that the
8083 appropriate opcode really exists by looking at the next entry in
8084 the opcode table.
8085
56c96faa
ILT
8086Wed Oct 27 11:48:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8087
729f4bba
ILT
8088 * config/tc-m68k.c (m68k_ip): Adjust offsets for PC relative
8089 fixups. Add 6 for long 7.3 case, 2 for short 7.2 case.
8090
007ff46b
ILT
8091 * config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
8092 after a .ent directive.
8093
d1ee509b
ILT
8094 * config/tc-mips.c (mips_ip): Handle '>' case (shift amount
8095 between 32 and 63 for double shift instruction). Do & 0x1f rather
8096 than % 32.
8097 (printInsn): Handle '>'.
56c96faa 8098
fa20b8bf
ILT
8099Tue Oct 26 16:58:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8100
5694ad93
ILT
8101 * config/tc-ns32k.c (tc_aout_fix_to_chars): Output the symbol
8102 number in the right place. Untested. Probably does not work for
8103 cross assembly. From cagney@cs.adelaide.edu.au (Andrew Cagney).
8104
f3751617
ILT
8105 * config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
8106 an illegal offset of 0 or -1.
8107
fa20b8bf
ILT
8108 * config/obj-elf.c (obj_elf_init_stab_section): Align .stab
8109 section to a longword boundary.
8110
4da7942d
KR
8111Tue Oct 26 10:24:31 1993 Ken Raeburn (raeburn@cygnus.com)
8112
8113 * Makefile.in (CHECKFLAGS): Pass down RUNTESTFLAGS.
8114
8115 From Jeff Law:
8116 * config/tc-hppa.c (tc_gen_reloc): ELF32_HPPA_R_ADDEND ->
8117 HPPA_R_ADDEND.
8118
fd4b7c25
KR
8119Mon Oct 25 14:06:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8120
8121 * config/tc-sparc.c (sparc_ip): Fix up membar argument handling.
8122
24934035
SC
8123Mon Oct 25 11:17:58 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
8124
8e5afd4f
SC
8125 * config/tc-sh.c (build_Mbytes): Write the relocs to the correct
8126 address. (md_assemble): Make error handling a bit more graceful.
8127 (md_apply_fix): Don't warn on non aligned displacement.
fd4b7c25 8128
24934035
SC
8129 * config/tc-z8k.c (get_specific, built_bytes): Understand all the
8130 aspects of lda.
8131
84678d16
KR
8132Mon Oct 25 10:20:31 1993 Ken Raeburn (raeburn@rover.cygnus.com)
8133
8134 * doc/Makefile.in (install-info): Use "$<*" so VPATH will find
8135 as.info* even if they're in $(srcdir) (e.g., for FSF
8136 distributions).
8137
8138 * write.c (write_relocs): For relocs that are pc_relative and
8139 pcrel_offset and not partial_inplace, adjust reloc->addend to
8140 compensate for a bfd_perform_relocation bug.
8141
8142 * config/tc-sparc.h: Removed remaining non-BFD_ASSEMBLER code.
8143 * config/tc-sparc.c: Ditto.
8144 (tc_gen_reloc): Include fx_offset for pcrel fixups.
8145
52aa70b5
JW
8146Sun Oct 24 16:49:00 1993 Jim Wilson (wilson@x1.cygnus.com)
8147
8148 * tc-mips.c (md_pseudo_table): Add dword pseudo op.
8149
ab0751c8
DZ
8150Fri Oct 22 20:40:56 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
8151
8152 * messages.c: replaced all variables called Format with 'format',
8153 for consistency throughout
8154
8155 * configure.in: handle mips*- instead of mips, mips*el for little
8156 endian configurations
8157
8efed14f
ILT
8158Fri Oct 22 14:45:49 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8159
8160 * input-scrub.c (physical_input_file, logical_input_file,
8161 physical_input_line, logical_input_line): Made static.
8162 (as_where): Return current file name and line number, don't print
8163 them out.
8164 * messages.c (as_show_where): New static function. Other
8165 functions use it instead of as_where.
8166 (as_bad_internal): New static function.
8167 (as_bad): Use as_bad_internal.
8168 (as_bad_where): New function, like as_bad but taking a file name
8169 and line number.
8170 * as.h (as_bad_where): Declare.
8171 (as_where): Change prototype for new arguments.
8172 * write.h (fixS): Added fields fx_file and fx_line.
8173 * write.c (fix_new_internal): Save file and line number in fix.
8174 (fixup_segment): Use as_bad_where, not as_bad.
8175 * input-file.c (f_in, file_name): Made static.
8176 * cond.c (struct file_line): Just use file and line fields.
8177 (s_else): Use as_where and as_bad_where, not get_file_line and
8178 set_file_line.
8179 (get_file_line, set_file_line): Removed.
8180 * listing.c (listing_newline): Use as_where.
8181 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use as_where.
8182 * config/obj-ecoff.c (add_file): Use as_where.
8183 * config/obj-elf.c (obj_elf_init_stab_section): Use as_where.
8184 * config/tc-m68k.c (md_apply_fix_2): Use as_bad_where.
8185 * config/tc-mips.c (tc_gen_reloc): Use as_bad_where, not assert.
8186
efa0c22e
KR
8187Thu Oct 21 12:52:01 1993 Ken Raeburn (raeburn@cygnus.com)
8188
8189 * config/tc-m68k.h: Don't define REGISTER_PREFIX or
8190 OPTIONAL_REGISTER_PREFIX if either is already defined.
8191
8192 * config/tc-m68k.c (m68k_ip): Delete some code in "#if 0".
8193
8194 * configure.in: Set bfd_gas for all sparc targets. Added facility
8195 for keeping or rejecting configurations still under development;
8196 default is to assume production environment, and reject configs
8197 still being worked on. Mark Elf configurations (except sparc and
8198 i386) as developmental. Deleted cases matching some generic names
8199 in favor of more specific names. (E.g., when we get Alpha
8200 support, we'll still only support VMS for Vax.)
8201
8202 * config/tc-sparc.h (md_end): New macro.
8203 * config/tc-sparc.c (md_end): Function deleted.
8204 (BFD_RELOC_*): Delete macros that used to help keep the non-bfd
8205 version compiling. All sparc targets will use bfd now.
8206 * tc.h (md_end): Don't declare if it's defined as a macro.
8207
8208 Changes from Jeff Law and Peter Hoogenboom:
8209
8210 * read.c (next_char_of_string): Limit octal character constants to
8211 three digits.
8212
8213 * config/tc-hppa.h: Major cleanup. Use GNU-style comments. Warn
8214 against placing additional object-file dependent code here. Warn
8215 against contaminating all of GAS with the internals of tc-hppa.c
8216 through inclusion of tc-hppa.h. Delete all forward declarations
8217 for functions only used within tc-hppa.c, likewise for structures,
8218 variables, and #defines. Try to group OBJ_ELF and OBJ_SOM
8219 conditional code in a few small places.
8220
8221 * config/tc-hppa.c: Major cleanup. Use GNU-style comments. Group
8222 structures, global variables, forward declarations together.
8223 Reduce (or in some cases eliminate) OBJ_ELF and OBJ_SOM
8224 conditional code -- try to group conditional code together
8225 into a few places. Make all functions and variables which
8226 are only used within tc-hppa.c static. PARAMize all functions.
8227 Add comments to functions. Delete unused functions, variables,
8228 #defines, etc. Delete unused members within structures. Delete
8229 ldil;ble hacks -- it is believed they were installed to work
8230 around old gas bugs. Avoid using mixed case for local
8231 functions, variables, and structures. Fix formatting problems
8232 not found by GNU-indent. Add FIXME notices for things which
8233 should be worked on the near future. Delete lots of old
69cb5925 8234 useless (1.36 PA-SOM) code.
efa0c22e
KR
8235
8236 * config/tc-hppa.c: (fix_new_hppa): Initialize the fx_r_type
8237 field of the fixS structure. Needed to build unwind
8238 descriptors correctly.
8239
8240 * write.c: (fixup_segment): Allow expressions such as
8241 sym1-sym2+const as long as sym2 is $global$.
8242
8243 * write.c (adjust_reloc_syms): Provide a hook so that a target
8244 cpu configuration can reject certain relocation reductions.
8245 * tc-hppa.h (tc_fix_adjustable): New macro. Only accept relocations
8246 which do not involve function symbols.
8247
8248 * config/tc-hppa.h: Reindent with GNU-indent. Delete references
8249 to OBJ_OSFROSE. Fix typos (OBJ_SOME -> OBJ_SOM). Delete unused
8250 STAB_FIXUP macro.
8251 * config/tc-hppa.c: Likewise.
8252
8253 * config/tc-hppa.c (md_apply_fix_1): Use elf_symbol_type, instead
8254 of elf32_symbol_type.
8255 (pa_export_args): Likewise.
8256 (elf_hppa_final_processing): Likewise.
8257 (pa_desc): Do not call obj_elf_desc. (Is pa_desc even needed
8258 anymore?)
8259 (hppa_tc_make_sections): Do not declare elf_get_symtab_map any
8260 ore.
8261
8262 * config/tc-hppa.c: (md_section_align): Align all sections to
8263 a multiple of the section alignment rather than always a
8264 multiple of 8.
8265
8266 * config/tc-hppa.c (hppa_tc_symbol): If the argument relocation
8267 bits are zero (eg they specify no relocations), then do not even
8268 bother adding their entries to thesymextn section.
8269
7766838e
ILT
8270Thu Oct 21 15:44:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8271
8272 * config/tc-sparc.c (md_parse_option): Accept and ignore -sparc
8273 option, which is used by the SunOS make default .s.o rule.
8274
fd4b7c25
KR
8275Wed Oct 20 12:26:33 1993 Ken Raeburn (raeburn@rover.cygnus.com)
8276
8277 * config/tc-sparc.c (sparc_ip, label "immediate"): Convert relocs
8278 operating on upper 32 bits of immediate constants to lower-half
8279 relocs with adjusted constants.
8280
dff60b7d
ILT
8281Tue Oct 19 18:13:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8282
8283 * config/tc-m68k.h (AOUT_MACHTYPE): Define to be external variable
8284 m68k_aout_machtype.
8285 * config/tc-m68k.c (omagic): Remove obsolete and unused variable.
8286 (m68k_aout_machtype): New variable, if OBJ_AOUT.
8287 (md_assemble): Initialize m68k_aout_machtype based on
8288 current_architecture, if OBJ_AOUT.
8289 (md_parse_option): Remove obsolete reference to omagic.
8290
c17cd709
ILT
8291Thu Oct 14 16:51:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8292
dd3f1f76
ILT
8293 * config/tc-mips.c (md_pseudo_table): Ignore .livereg pseudo-op.
8294 (s_option): Ignore .option O* and .option pic*.
8295 (s_ent): Skip whitespace between symbol and optional digit.
dff60b7d 8296 (my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
dd3f1f76 8297
54508138
ILT
8298 * app.c (do_scrub_next_char): Always accept 'x' and 'X' as escape
8299 characters in state 6.
8300 * read.c (next_char_of_string): Accept \Xh* and \xh* where h* are
8301 hexidecimal digits.
8302
c17cd709
ILT
8303 * config/tc-i386.c (md_apply_fix_1): Make cross segment calls work
8304 for ELF by hacking around bizarre bfd_perform_relocation behaviour
8305 that I don't dare change.
8306
ad660eb1
ILT
8307Thu Oct 14 11:33:25 1993 Michael Meissner (meissner@osf.org)
8308
8309 * config/tc-i386.c: (md_begin): Do not zero static arrays. Don't
8310 call strchr for each character to see if it is a special char,
8311 instead add a second loop over special_chars. Set alignment
8312 of text, data and bss sections to 4.
8313 (pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
8314 used again.
8315 (reloc): Don't return 8 and 16 bit non-PC relative relocations on
8316 ELF, since the ELF object format does not have these type of
8317 relocations. Change the abort into as as_bad and return
8318 BFD_RELOC_NONE to silence compiler warnings.
8319 (md_assemble): Keep track of the instruction size. Allow white
8320 space between the $ and the constant for compatibility with older
8321 gases and other assemblers.
8322 (i386_operand): Skip spaces between $ and expression.
8323 (tc_gen_reloc): Don't allow anything but 32 bit relocations on
8324 ELF. Convert abort into an as_bad and assert into as_fatal.
8325
132239bf
KR
8326Wed Oct 13 16:50:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8327
8328 * config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
8329 sub_symbolP is in the current segment, convert to a PC-relative
8330 fixup and discard the symbol.
8331
b7cbb59f
ILT
8332Wed Oct 13 14:00:02 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8333
463b1851
ILT
8334 * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
8335 for st_StaticProc just like st_Proc.
8336
b7cbb59f
ILT
8337 * write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
8338 so that OBJ_BOUT doesn't forget to adjust all the fragments in the
8339 .bss section.
8340
f2a663d3
ILT
8341Tue Oct 12 17:26:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8342
8343 * config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
8344 (mips_regmask_frag): New static variable, if OBJ_ELF.
8345 (md_begin): If OBJ_ELF, create .reginfo section and set
8346 mips_regmask_frag to a frag.
8347 (mips_elf_final_processing): New function, if OBJ_ELF. Set
8348 mips_regmask_frag to register mask information.
8349 * config/tc-mips.h (elf_tc_final_processing): New macro, defined
8350 if OBJ_ELF.
8351
99024047
KR
8352Tue Oct 12 03:33:26 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8353
2145a183
KR
8354 * messages.c (as_fatal): Use myname when printing messages.
8355
99024047
KR
8356 * config/tc-i960.c (md_begin): Use null pointer, not empty string,
8357 as initial "return" value in case hashing isn't needed.
8358
8359 * config/tc-a29k.c (md_atof): Return null, not empty string, on
8360 success.
8361 * config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
8362 config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
8363 config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
8364 config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
8365
8366Mon Oct 11 16:46:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2dd45209
SC
8367
8368 fix for pr 3571
8369 * config/tc-h8300.c (get_specific): Special action if 8 bit
8370 address seen. (check_operand): Don't complain if truncating top
8371 bits of an 8 bit address. (build_bytes): Allow an immediate and
8372 an absolute in the same insn.
8373
f37449aa
ILT
8374Mon Oct 11 17:18:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8375
8376 * write.c (write_contents): Don't crash if seginfo is NULL.
8377
8378 * config/obj-ecoff.c (ecoff_frob_file): Write out register masks
8379 by modifying .reginfo section, not by directly modifying BFD
8380 backend data.
8381
fec552ce
DZ
8382Mon Oct 11 14:11:32 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
8383
8384 * config/ho-sunos.h: remove extern time declaration
8385
8d3be803
KR
8386Mon Oct 11 16:14:43 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8387
8388 * messages.c (as_fatal): Do mention that it's the assembler that
8389 got the fatal error.
8390
88225433
ILT
8391Fri Oct 8 14:09:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8392
1aa6938e
ILT
8393 * config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
8394 hold register masks.
8395 (md_begin): Initialize them to zero.
8396 (append_insn): Update mips_gprmask and mips_cprmask. Also add
8397 register variables pinfo and prev_pinfo.
8398 * config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
8399 * config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
8400 and cprmask from mips_gprmask and mips_cprmask.
8401
88225433
ILT
8402 * config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
8403 * config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
8404 (various): Change all references to GP references to apply if
8405 GPOPT, not if OBJ_ECOFF.
8406 (s_change_sec): Rearrange somewhat. If OBJ_ELF, use .rodata
8407 instead of .rdata. If OBJ_ELF, set section flags for .rodata and
8408 .sdata sections.
8409 (s_frame, s_loc, s_mask): Comment out entire functions, rather
8410 than just body. They're not used anyhow.
8411 * configure.in: Set cpu_type to mips for mips*. Accept
8412 mips-*-elfl* and mips-*-elf*.
8413
17a0da33
ILT
8414Thu Oct 7 18:36:29 1993 Michael Meissner (meissner@osf.org)
8415
8416 * config/obj-elf.c (obj_elf_common): Allow the alignment field to
8417 not be specified.
8418
80aab579
ILT
8419Wed Oct 6 13:01:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8420
abdad6bc
ILT
8421 * config/tc-mips.c (cons_fix_new_mips): New function. Turn
8422 BFD_RELOC_64 into BFD_RELOC_32.
8423 * config/tc-mips.h (TC_CONS_FIX_NEW): Define.
8424 (cons_fix_new_mips): Declare.
8425
80aab579
ILT
8426 Changes to let cons handle bignums like general expressions.
8427 * expr.h (expressionS): New field X_unsigned.
8428 * expr.c (operand): Initialize X_unsigned to 1. Set it to 0 for
8429 unary minus case.
8430 (expr) Fix typo resultP to right if missing operand. Set
8431 X_unsigned to 1 when building new expression.
8432 * read.c (potable): Make "octa" and "quad" call cons, not
8433 big_cons.
8434 (cons): Handle bignums. If given an O_constant (small integer) to
8435 fill a big space, turn it into a bignum.
8436 (parse_bitfield_cons): Set X_unsigned field.
8437 (bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
8438 Removed.
8439 * read.h (big_cons): Remove prototype.
8440 * symbols.c (resolve_symbol_value): Don't give a warning if a
8441 symbol in expr_section can not be resolved.
8442 (S_SET_VALUE): Clear X_unsigned.
8443 * write.c (write_object_file): If resolve_symbol_value failed on a
8444 symbol we are writing out, give a warning.
8445 * config/tc-h8500.c (parse_reglist): Set X_unsigned.
8446 * config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
8447 call pa_cons, not pa_big_cons.
8448 (pa_big_cons): Remove.
8449 * config/tc-hppa.h (pa_big_cons): Remove declaration.
8450 * config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
8451 not big_cons.
8452
8453Tue Oct 5 10:53:36 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
8454
8455 * doc/as.texinfo (Copying): new node, to handle the recent changes
8456 in the texinfo/gpl.texinfo file
8457
4f5666c5
ILT
8458Mon Oct 4 17:10:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8459
8460 * read.c (big_cons): Handle "0" correctly.
8461
8462 * config/tc-mips.c (md_begin): Set target_big_endian correctly.
8463
8208ab5a
KR
8464Mon Oct 4 15:37:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8465
8466 * config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
8467 have pc-relative fixup.
8468 (md_parse_option): Move "-k" case down near "-pic" case.
8469
31909d40
KR
8470 * configure.in: Alphabetize list of cpu type alternatives. Enable
8471 OS values of "linux*elf*" and "linux*coff*" to select those
8472 formats, with linux emulation. Don't bother checking for upper-
8473 or mixed-case versions of "ose".
8474
8208ab5a
KR
8475Thu Sep 30 11:05:35 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
8476
8477 * config/z8k.c (md_pseudo_table): add "unseg".
8478
6cc87fbb
RP
8479Wed Sep 29 16:15:11 1993 K. Richard Pixley (rich@sendai.cygnus.com)
8480
8481 * config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
8482 found while extending the dissassembler.
8483
8f3956b3
SS
8484Tue Sep 28 12:02:04 1993 Stan Shebs (shebs@rtl.cygnus.com)
8485
8486 * configure.in: Split i386 LynxOS out from other coff targets,
8487 add a specific Lynx emulation.
8488 Add m68k LynxOS target.
8489 * config/tc-i386.c: Define specific Lynx target format.
8490 * config/tc-m68k.c: Define specific Lynx target format.
8491 * config/te-lynx.h: New file.
8492
8493 * config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
8494 "coff-{i386,m68k}" if TARGET_FORMAT already defined.
8495 (INIT_STAB_SECTION): Define.
8496 * config/obj-coffbfd.c: Include <time.h>.
8497 (write_object_file): Look for .stab sections and call
8498 adjust_stab_section.
8499 (adjust_stab_section): New function, fills in the first symbol
8500 of a stab section with number of symbols and string table size.
8501 (obj_coff_init_stab_section): New function, creates the initial
8502 symbol for a stab section.
8503
43029a8f
KR
8504Mon Sep 27 15:21:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8505
8506 * config/atof-vax.c (md_atof): Return null on success instead of
8507 empty string.
8508 * config/atof-tahoe.c (md_atof): Ditto.
8509 * read.c (float_cons): Expect a null pointer for success, not an
8510 empty string.
8511
8512 * hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
8513 on success, instead of empty string. All callers changed.
8514
8515 * config/tc-vax.c: Use PARAMS in declarations.
8516 (vip_op): Use NULL instead of empty string for success in error
8517 and warning fields.
8518
b7318ac4
KR
8519Sun Sep 26 23:45:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8520
b9790da8
KR
8521 * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
8522 in different defined segments.
8523
b7318ac4 8524 * write.c (relax_segment): Localize "aim" variable. If
132239bf 8525 DIFF_EXPR_OK, don't impose checks on symbol segment types.
b7318ac4
KR
8526 (fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
8527 segment, convert to a PC-relative fixup and discard the symbol.
8528
8529 * config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
8530 (md_parse_option) [TE_SUN3]: Set it for "-k".
8531 (m68k_ip): Generate proper fixup for mode 7.3.
8532 * config/tc-m68k.h (DIFF_EXPR_OK): Define.
8533
c996b199
KR
8534Sat Sep 25 05:08:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8535
8536 * config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
8537 earlier in the file.
8538 (insop, add_exp): Now defined as functions, for readability.
8539 (insop): Now takes two arguments; callers changed.
8540
6d6b97b7
RP
8541Fri Sep 24 12:37:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
8542
58f3e8a9
RP
8543 * config/tc-m88k.c (get_o6): new function.
8544 (get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
8545 get_vec9, getval, get_pcr, calcop, match_name): make static and
8546 prototype.
8547 (s_file): remove extraneous forward decl.
8548 (md_begin): add const to retval decl.
8549 (calcop): cope with instructions without arguments. Handle 'o'
8550 type argument, the o6 field of the prot insn.
8551 (md_estimate_size_before_relax): return a dummy value.
8552
6d6b97b7
RP
8553 * config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
8554 in bits 10 through 7. flt.[dxs]s requires an r register in the
8555 second argument. New instruction lda.x. New instruction muls
8556 (alias for mul).
8557
8558Fri Sep 24 13:43:30 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8559
8560 * Makefile.in (distclean): Recurse like clean.
8561 * doc/Makefile.in (distclean): New target.
8562
8563 * config/tc-mips.c (md_begin): Set BFD architecture and machine
8564 based on MIPS ISA level.
8565
8566Thu Sep 23 17:58:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8567
8568 * as.c (main): "exhausted", not "exhuasted".
8569
8570 * struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
8571 * write.c (adjust_reloc_syms): Set sy_used_in_reloc.
8572 (write_object_file): Never strip symbols with sy_used_in_reloc
8573 set.
8574
8575 * config/obj-elf.c (obj_elf_section): Rewrote to handle both
8576 Solaris and SVR4 style .section pseudo-ops.
8577 (obj_elf_ident): Set SEC_READONLY for .comment section.
8578 * config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
8579 generating a reloc, don't apply a fix.
8580
6110df28
KR
8581Thu Sep 23 13:16:58 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8582
8583 * config/obj-coffbfd.c (relax_align): Now static.
8584
9bd0d649
ILT
8585Mon Sep 20 19:23:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8586
8587 * read.c (get_stab_string_offset): Make non-static. Make
8588 arguments const. Don't align strings to 4 byte boundaries.
8589 * read.h: Declare get_stab_string_offset.
8590 * config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
8591 SEC_LOAD for progbits section.
8592 (obj_elf_init_stab_section): New function.
8593 (adjust_stab_sections): Add casts to avoid warnings.
8594 * config/obj-elf.h (INIT_STAB_SECTION): Call
8595 obj_elf_init_stab_section.
8596 (OBJ_PROCESS_STAB): Removed definition.
8597
80903ca6
ILT
8598Fri Sep 17 18:12:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8599
8600 * config/obj-elf.h (S_GET_SIZE): Define.
8601 (obj_frob_forward_symbol): Define.
8602 * config/tc-i386.c (line_comment_chars): Initialize in all cases.
8603
13998021
ILT
8604Thu Sep 16 14:23:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8605
9bd0d649 8606 * tc.h: Declare tc_gen_reloc differently depending upon
13998021
ILT
8607 RELOC_EXPANSION_POSSIBLE.
8608 * config/obj-elf.c (obj_elf_section): Only set flags when first
8609 creating the section.
8610
8611Wed Sep 15 12:15:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8612
8613 * config/tc-mips.c (append_insn): Don't swap a trap instruction
8614 with a branch.
8615
4f0bccc7
ILT
8616Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8617
90397ff8
ILT
8618 * config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
8619 set previous_section and previous_subsection and then call s_data
8620 and s_text, respectively.
8621 (obj_pseudo_table): Add data and text.
8622 (obj_elf_section): Add SEC_LOAD to default initialization of
8623 flags. Treat .rodata1 like .rodata. Set SEC_LOAD as well as
8624 SEC_ALLOC for "alloc" string. Don't bother trying to find the
8625 section; just use subseg_new.
8626
4f0bccc7
ILT
8627 * read.c (change_to_section): Removed. This is now done by
8628 subseg_new.
8629 (get_stab_string_offset): Rearranged somewhat. Create the section
8630 using subseg_new. Store the string index in seg_info, rather than
8631 in a static variable. Force the first string to be empty. Use
8632 frag_more rather than FRAG_APPEND_1_CHAR.
8633 (s_stab_generic): Rewrote.
8634 * subsegs.h (segment_info_type): Added stabu union.
8635 * subsegs.c (subseg_new): Initialize stab_string_size to 0.
8636 * config/obj-aout.c: Don't include aout/stab_gnu.h.
8637 (obj_aout_stab, obj_aout_desc): Removed.
8638 (obj_pseudo_table): Removed desc and stabX entries.
8639 * config/obj-bout.c: Same changes as config/obj-aout.c.
8640 * config/obj-bout.h (S_SET_TYPE): Define.
8641 (tc_bout_fix_to_chars): Declare.
8642 * config/obj-coff.c (obj_coff_stab): Removed.
8643 (obj_pseudo_table): Removed desc and stabX entries.
8644 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
8645 * config/obj-coffbfd.c (current_stab_symbol): Removed.
8646 * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
8647 n_other, n_desc and n_value fields.
8648 (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
8649 (MAKE_STAB_SYMBOL): Removed.
8650 * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
8651 Changed arguments and removed parsing code.
8652 (obj_pseudo_table): Removed stabX entries.
8653 * config/obj-ecoff.h (ecoff_stab): Declare.
8654 (OBJ_PROCESS_STAB): Define.
8655 * config/obj-elf.c: Don't include aout/stab_gnu.h.
8656 (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
8657 elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
8658 Removed.
8659 (obj_pseudo_table): Removed desc, stabX and xstabs entries.
8660 (obj_elf_version): Use subseg_new, not bfd_make_section. Don't
8661 set SEC_LOAD for .note section.
8662 (adjust_stab_sections): Get frag pointer from seg_info, rather
8663 than looking through frags.
8664 * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
8665 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
8666 Define.
8667 * config/obj-vms.c (obj_aout_stab): Removed.
8668 (obj_pseudo_table): Removed stabX entries.
8669 * config/obj-vms.h (S_SET_TYPE): Define.
8670
8671 * as.h: Declare listing.
8672 * read.c: Don't declare listing.
8673 (emit_expr): Cast fix_new_exp argument.
8674 (parse_bitfield_cons): Correct printf format.
8675 * symbols.c (symbol_new): Add cast to avoid warning.
8676 * write.h: Declare text_last_frag and data_last_frag.
8677 * config/obj-bout.c (obj_bout_line): Added dummy argument.
8678 * config/obj-coffbfd.c: Add some casts to avoid warnings.
8679 * config/tc-a29k.c: Likewise.
8680 * config/tc-i960.c: Likewise. Also fully bracket structure
8681 initializations, fix printf formats, and remove unused variables.
8682
604633ae
ILT
8683Mon Sep 13 16:48:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8684
8685 * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
8686 * struc-symbol.h: Declare verify_symbol_chain and
8687 verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
8688 * symbols.c (verify_symbol_chain): Removed useless expression.
8689 * write.c (headers, the_object_file): Only use if not
8690 BFD_ASSEMBLER and not BFD.
8691 (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
8692 not BFD.
8693 (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
8694 not OBJ_AOUT).
8695 * write.h: Declare relax_segment.
8696 * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
8697 static.
8698 (stack_top): Commented out, since it's not used.
8699 Fixed up pseudo-op functions to take an ignored int argument.
8700 (size_section): Added default BAD_CASE to switch.
8701 Changed bzero calls to memset.
8702 * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
8703 (s), not on s itself.
8704 * config/tc-a29k.c (s_use): Take ignored int argument. Only
8705 define if OBJ_COFF is not defined.
8706 * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
8707 argument signed again.
8708 * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
8709 argument.
8710 (m68k_ip): Fully bracket initialization of archs.
8711 Correct several formats for __LINE__ to be %d rather than %s.
8712 (init_table): Fully bracket initialization.
8713 Cast values larger than 0x7f assigned to fr_opcode to char.
8714
8715 * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
8716 Wrote non-BFD_ASSEMBLER subseg_new. Now subseg_new always takes a
8717 section name, and subseg_set always takes a segT. Changed all
8718 callers as appropriate.
69cb5925 8719 * config/obj-coffbfd.c (change_to_section): Renamed to
604633ae
ILT
8720 obj_coff_add_segment. Corrected. Made callers use subseg_new.
8721 * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
8722 Define.
8723
54e3e909
DE
8724Mon Sep 13 13:15:03 1993 Doug Evans (dje@canuck.cygnus.com)
8725
8726 * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
8727
58d4951d
ILT
8728Fri Sep 10 11:22:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8729
8730 * config/obj-elf.h (S_SET_SIZE): Actually set the size.
8731
8732 Gcc lint.
54e3e909 8733 * Added a number of casts to function calls.
58d4951d
ILT
8734 * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
8735 operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
8736 read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
8737 ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
8738 read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
8739 (obj_elf_section), config/tc-i386.c (parse_register),
8740 config/tc-sparc.c (isoctal, s_proc): Cast char
8741 array indices to unsigned char.
54e3e909
DE
8742 * app.c (process_escape): Make static. Add prototype. Change
8743 argument from char to int.
58d4951d
ILT
8744 * as.c: Include output-file.h for prototypes. Comment out unused
8745 function got_sig.
8746 * Makefile.in (as.o): Depend on output-file.h.
8747 * as.h (BAD_CASE): Cast val argument to long, and use %ld.
54e3e909
DE
8748 (pseudo_typeS): Add prototype to poc_handler field.
8749 (print_version_id): Add prototype.
8750 (xmalloc, xrealloc): Change size arguments to unsigned long.
8751 (do_scrub_next_char): Add prototypes for function arguments.
8752 (had_errors, had_warnings, scrub_from_file): Remove duplicate
8753 declarations.
8754 * atof-generic.c (atof_generic): Make size variables unsigned.
58d4951d 8755 * cond.c (ignore_input): Removed unused local variable ptr.
54e3e909
DE
8756 * expr.c (floating_constant, integer_constant): Make static. Add
8757 prototypes.
8758 * flonum-copy.c (flonum_copy): Make size variables unsigned.
58d4951d 8759 * frags.h: Add prototype for frag_init.
54e3e909
DE
8760 * hash.h, hash.c: Change hash values from char * to PTR, make hash
8761 strings const, make returned error strings const char *. Added
8762 prototypes for functions.
8763 * input-file.h, input-file.c (input_file_buffer_size): Return
8764 unsigned int.
8765 * input-scrub.c (buffer_length): Make unsigned.
8766 (input_scrub_push, input_scrub_pop): Make static.
58d4951d
ILT
8767 * listing.c (list_symbol_table): Cast sprintf argument to unsigned
8768 long and use %lx. Print name of segment rather than address of
8769 structure.
54e3e909
DE
8770 (listing_list, listing_title): Change argument to int.
8771 (listing_eject, listing_flags, listing_psize): Add int argument.
8772 * listing.h: Corresponding declaration changes.
8773 * obj.h (obj_emit_symbols): Rename prototype argument to avoid
8774 shadowing.
58d4951d 8775 * read.h: Change get_absolute_expression prototype to return
54e3e909
DE
8776 offsetT. Add prototype for next_char_of_string. Various
8777 prototype changes.
58d4951d 8778 * read.c: Remove prototype for next_char_of_string.
54e3e909
DE
8779 (pobegin): Make errtxt const. Make new_length, tmp_len and num
8780 unsigned.
8781 (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
8782 s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
8783 Change all callers.
58d4951d
ILT
8784 (s_comm): Change temp from valueT to offsetT. Cast to long when
8785 printing and use %ld (only for error messages anyhow).
54e3e909
DE
8786 (s_long, s_int): Remove unused functions.
8787 (cons): Change argument to int.
58d4951d
ILT
8788 (emit_expr): Use %lx when printing longs.
8789 (get_absolute_expression): Return offsetT, not long.
8790 (get_stab_string_offset): Comment out unless
8791 SEPARATE_STAB_SECTIONS.
8792 (s_stab_generic): Remove unused offset. Define seg_is_new only
8793 if SEPARATE_STAB_SECTIONS. Use toP only in local block.
54e3e909 8794 * struc-symbol.h (verify_symbol_chain_2): Add prototype.
58d4951d 8795 * symbols.c: Remove nested comment.
54e3e909 8796 (symbol_new): Rename value to valu.
58d4951d 8797 (colon): Use %ld and cast to long in error message.
54e3e909
DE
8798 * symbols.h: Remove duplicate verify_symbol_chain declaration.
8799 * tc.h: Remove unused md_emit_relocations declaration.
8800 (tc_gen_reloc): Add declaration.
58d4951d
ILT
8801 * write.c (cvt_frag_to_fill): Change first argument name depending
8802 on BFD_ASSEMBLER.
54e3e909
DE
8803 (write_relocs): Remove unused offset, frags. Remove tc_gen_reloc
8804 declarations. Make n unsigned.
8805 (write_contents): Remove unused i, n, relocs, fixp. Rename frags
8806 to f to avoid shadowing.
58d4951d
ILT
8807 (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
8808 WORKING_DOT_WORD. Remove unused keep. Only declare punt and
54e3e909 8809 punt_it if they will be used. Make i and n unsigned.
58d4951d 8810 (fixup_segment): Cast to long and use %ld in error message.
54e3e909 8811 * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
58d4951d
ILT
8812 * config/obj-aout.h: Remove nested comment. Add prototype for
8813 obj_aout_frob_symbol.
54e3e909
DE
8814 (obj_aout_line, obj_aout_desc): Add int argument.
8815 * config/obj-ecoff.c: Changed build routines to use an unsigned
8816 offset.
8817 (add_string): Make len unsigned long.
58d4951d
ILT
8818 (obj_ecoff_stab): Use %lu in error message.
8819 * config/obj-elf.c (obj_elf_common): Comment out unused label
8820 allocate_bss.
8821 (obj_elf_frob_symbol): Return 0 (currently broken).
54e3e909
DE
8822 (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
8823 obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
8824 obj_elf_line, obj_elf_previous): Add int argument.
8825 (obj_elf_write_symbol_p): Make static.
8826 * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
58d4951d
ILT
8827 * config/tc-hppa.h: Remove declarations of functions declared in
8828 read.h.
54e3e909
DE
8829 * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
8830 (s_bss): Add int argument.
8831 (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
8832 (dummy): Remove unused function.
8833 (md_assemble): Rename local o to op to avoid shadowing.
8834 (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
8835 * config/tc-m68k.c (s_data1, s_data2): Add int argument.
58d4951d
ILT
8836 * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
8837 %ld in error messages.
54e3e909
DE
8838 * config/tc-sparc.c: Remove duplicate declarations.
8839 (getExpression): Rewrite condition to avoid empty conditional
8840 body.
8841 (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
8842 argument.
58d4951d 8843
892a3ff1
KR
8844Thu Sep 9 17:10:00 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8845
8846 Changes from Jeff Law:
8847
8848 * config/tc-hppa.c (md_assemble): Fix typo.
132239bf 8849 (pa_ip): Delete unused variables and labels. Do not check for
892a3ff1
KR
8850 unsigned values being < 0, it can't happen.
8851 (is_same_frag): Return a value in recursive call case.
8852 (pa_callinfo): Delete unused variables and labels.
8853 (pa_comm): Likewise.
8854 (pa_copyright): Likewise.
8855 (pa_export): Likewise.
8856 (pa_import): Likewise.
8857 (pa_param): Likewise.
8858 (pa_space): Likewise.
8859 (pa_subspace): Likewise.
8860
abdd08c9
ILT
8861Thu Sep 9 15:05:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8862
8863 * read.c (get_stab_string_offset, s_stab_generic): If
8864 BFD_ASSEMBLER, call subseg_set rather than subseg_new.
8865
414b2c8f
ILT
8866Wed Sep 8 15:09:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8867
8868 * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
8869 default flag values.
8870
4064305e
SS
8871Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
8872
1531386b
SS
8873 * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
8874
4064305e
SS
8875 * read.c: (s_stab, s_xstab, s_desc): New functions to parse
8876 various stab-related directives.
8877 * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
8878 * write.c: (merge_data_into_text): Fix ifdef tangle.
8879 * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
8880 for stab reader to use.
8881 * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
132239bf 8882 stab reader, macros to access.
4064305e 8883
81b407c9
KR
8884Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8885
fd4b7c25
KR
8886 * config/obj-elf.h (elf_symbol): No longer special-cased on
8887 sparcv9, since elf_symbol_type is now independent of size.
8888
81b407c9
KR
8889 * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
8890
8891 * config/tc-hppa.h (struct default_subspace_dict, struct
8892 default_space_dict): Field "sort" is now unsigned char.
8893
8894 * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
8895 columns for easier reading.
8896 (bcmp, index): Deleted USG-specific definitions. Should be dealt
8897 with in ho-*.h, or in libiberty. Changed mention of index to
8898 strchr.
8899 (label_symbolP, label_symbol_defined, callinfo_found,
8900 within_entry_exit, exit_processing_complete, within_procedure,
8901 pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
8902 label_symbols_rootP, pa_get_label, pa_label_is_defined,
8903 pa_undefine_label): Now static.
8904 (movers): Now const, in addition to pointing to const data.
8905 * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
8906 pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
8907 Delete declarations.
8908
8909 Merged more changes from Jeff Law and Pete Hoogenboom:
8910
8911 * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
8912 entries for .stab and .stabstr.
8913
8914 * config/obj-elf.c: (elf_stab_symbol_string): Set the
8915 SEC_LOAD attribute for the .stabstr section.
8916 (obj_elf_stab_generic): Set the SEC_LOAD attribute for the
8917 .stab section.
8918 (obj_elf_stab_generic): Change '#if 1' to '#if 0'.
8919 (obj_elf_stab_generic): Incorrect byte count on call to
8920 md_number_to_chars function.
8921
8922 * config/tc-hppa.c (hppa_tc_symbol): Static functions need
8923 argument relocation bits too.
8924
8925 * config/tc-hppa.c (pa_stringer): Correctly handle escaping
8926 characters which should appear unaltered in the output string (for
8927 example an escaped double-quote).
8928
8929 * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
8930 initialize name.
8931 (pa_parse_neg_cmpsub_cmpltr): Likewise.
8932 (pa_parse_nonneg_add_cmpltr): Likewise.
8933 (pa_parse_neg_add_cmpltr): Likewise.
8934
8935 * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
8936 for now.
8937 (cons_fix_new_hppa): Likewise.
8938 * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
8939 prototype.
8940
8941 * config/tc-hppa.c: Include libhppa.h.
8942
132239bf 8943 * config/tc-hppa.h: Delete extern declarations of functions
81b407c9
KR
8944 found in libhppa.h.
8945
8946 * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
8947 OBJ_ELF conditionals.
8948 * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
8949 on the PA.
8950
1849d646
ILT
8951Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8952
ff3a5c18
ILT
8953 * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
8954 (macro): Use "z,s,t" for div instructions to match corresponding
8955 change in opcode table.
8956 (mips_ip): Added 'z'--must be zero register.
1849d646 8957
e96d50d0
KR
8958Wed Sep 1 15:56:42 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8959
8960 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
8961 tc_gen_reloc correctly.
8962
8963 * configure.in: Use "case" instead of "if" when possible. Rewrote
8964 Makefile editing to reduce work done. Treat "hppa*" as "hppa".
8965
56607c4e
RP
8966Wed Sep 1 12:19:07 1993 K. Richard Pixley (rich@sendai.cygnus.com)
8967
8968 * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
8969 section type of data. 'd' seems to be used for m88k.
8970
8971Wed Aug 25 22:33:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8972
8973 * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
8974 s_mips_space): Set insn_label to NULL to avoid changing it at the
8975 next .align statement.
8976 (append_insn): Don't swap jal with instruction that sets the
8977 register that jal sets.
8978
37d719bb
RP
8979Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
8980
8981 * configure.in: recognize m88110.
8982
28344993
KR
8983Wed Aug 25 13:37:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8984
8985 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
8986 * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
8987 not be on for .hppa_unwind.
8988 (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
8989 (pa_param): New function to handle .PARAM directives.
8990 (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
8991 functions. Handle '|' for movb; allow movb,n.
8992 (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
8993 version. Handle cases where no completer exists for
8994 comb,n or addb,n.
132239bf 8995 (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
28344993
KR
8996 completer exists for comb,n or addb,n. Make logic
8997 mirror that of pa_parse_nonneg_cmpsub_cmpltr.
8998 (pa_parse_nonneg_add_cmpltr): Likewise.
8999 (pa_parse_neg_add_cmpltr): Likewise.
9000 * tc-hppa.h (pa_param): Declare.
9001
9002Tue Aug 24 15:41:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9003
9004 * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
9005 Added forward declaration.
9006
9007 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
9008
9009 * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
9010 call to elf_tc_make_sections.
9011 (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
9012 attribute.
9013
9014 * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
9015 handle symbol extension sections.
9016
9017 * config/tc-hppa.c (pa_build_symextn_section): New function to
9018 create a symbol extension section.
9019 (pa_export_args): Make call to pa_build_symextn_section.
9020 (hppa_tc_symbol, hppa_tc_make_sections,
9021 hppa_tc_make_symextn_section): New functions.
9022 * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
9023 macros.
9024
9025 * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
9026 BFD_ASSEMBLER branch as well.
9027
9028 * config/tc-hppa.h: If ELF is the target object format, define
9029 some ELF- and hppa-specific types and constants.
9030
9031 * config/tc-hppa.c (getExpression): Fix a typo.
9032
9033 * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
9034 if a `=' is part of an instruction.
9035 (read_a_source_file): Handle case where end-of-line markers are
9036 also used within instructions.
9037 * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
9038
9039 * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
9040 out-of-range branches/'calls using "bl" or calls which may need
9041 argument relocation stubs. Do not need/keep relocations for
9042 conditional branches.
9043 (elf_hppa_final_processing): Fix calculation of function size.
9044
9045 * config/obj-elf.c (obj_elf_version): Mark .note section as
9046 READONLY.
9047
9048 * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
9049 address of exp, to expression.
9050 (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
9051 (md_apply_fix_1): Delete unwanted comments.
9052 (process_exit): Symbols marking the end of a function are always
9053 BSF_LOCAL.
9054
9055 * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
9056 (pa_space): Declare and initialize gdb_section.
9057
9058 * config/obj-elf.c (elf_frob_file): Change
9059 elf_tc_final_processing_hook to elf_tc_final_processing.
9060
9061 * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
9062 argument type declarations.
9063 (getExpression): Fix typo.
9064 (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
9065 (elf_hppa_final_processing): Likewise. Name changed from
9066 elf_hppa_final_processing_hook.
9067 (start_symbol_root, start_symbol_last): Deleted.
9068
9069 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
9070
9071 * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
9072 avoid changing include ordering.
9073
9074 * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
9075
6e8dda9c
ILT
9076Mon Aug 23 12:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9077
9078 * config/tc-mips.c (set_at): Added unsignedp argument. Use
9079 load_register.
9080 (set_at_unsigned): Removed; changed callers to use set_at.
9081 (load_register): Removed unused ip argument. Changed callers.
9082 (append_insn): Don't swap branch and branch likely.
9083 (macro_build): Handle 'u'.
9084 (load_register): Handle 64 bit constants.
9085 (macro): Added M_DABS, removed M_ABSU. Numerous changes to
9086 support 64 bit constants.
9087 (mips_ip): Use hex constants in range checks for clarity.
9088 (md_number_to_chars): Support 8 byte values.
9089
1e35cd8f
RP
9090Fri Aug 20 16:50:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9091
9092 * config/tc-m88k.h: updated copyrights.
9093 (TC_CONS_RELOC): declare to be RELOC_32.
9094
8358c818
ILT
9095Fri Aug 20 11:16:44 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9096
9097 * config/tc-mips.c (mips_isa): New static variable.
9098 (md_begin): Initialize mips_isa based on TARGET_CPU. Don't sanity
9099 check macros. Set text alignment and GP size here.
9100 (md_assemble): Don't set text alignment and GP size here.
9101 (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
9102 Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S. Add
9103 a NOP after a branch likely.
9104 (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
9105 >= 2.
9106 (macro): Support r6000 and r4000 macros.
9107 (mips_ip): Check insn ISA level against mips_isa before using it.
9108 Added 'x' case for ignored register.
9109 (md_parse_option): Handle -mipsN and -mcpu=XX.
9110
c8d4cda1
KR
9111Fri Aug 20 01:26:52 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9112
9113 * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
9114
9115Thu Aug 19 12:15:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9116
9117 * config/tc-sparc.c (s_local): Function moved and renamed...
9118 * config/obj-elf.c (obj_elf_local): ...to here.
9119 * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
9120 (obj_pseudo_table): Move handling of ".local".
9121
9122 * tc.h (md_parse_option): Don't declare if defined as a macro.
9123
9124 * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
9125 BFD_RELOC_NONE.
9126 (md_parse_option): New macro, converted from function.
9127 * config/tc-i386.c (md_parse_option): Function deleted.
9128 (comment_chars) [OBJ_ELF]: Include "/".
9129 (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
9130 (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
9131 warning.
9132 (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
9133 Call reloc for fix_new type, or use correct enumerator, instead of
9134 always using NO_RELOC.
9135 (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
9136 tests for valid section.
9137 (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
9138 address.
9139 (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
9140 symbol, compensate for location of reloc.
9141 (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
9142 to return zero.
9143
4915cac0
KR
9144Wed Aug 18 16:51:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9145
9146 * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
9147 (obj_elf_weak): New function.
9148 (obj_pseudo_table): Handle ".weak".
9149 (obj_elf_section): If section directive includes a string, ignore
9150 it for now. Accept "progbits" flag.
9151 (obj_elf_type): Accept `@' before flag name.
9152
9153 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
9154 condition.
9155 (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
9156 than checking for bfd_com_section directly.
9157 (fixup_segment): Simplify range check.
9158 (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
9159 test.
9160
9161 * symbols.h (S_SET_WEAK): Declare.
9162 * symbols.c (S_SET_WEAK): New function.
9163 (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
9164 it's not a separate flag any more. Clear BSF_WEAK.
9165
9166 * read.c (potable): Treat "string" like "asciz".
9167
19ed8960
ILT
9168Wed Aug 18 15:30:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9169
9170 * config/tc-mips.c (append_insn): Don't swap branch instructions
9171 if .set nobopt or .set volatile.
9172 (gp_reference): .lit8 and .lit4 are accessed via the GP register.
9173 (macro): Added cases M_LI_S, M_LI_SS. Fixed M_LI_D and M_LI_DD.
9174 (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
9175 * config/obj-ecoff.c: Renamed some variables to avoid shadow
9176 warnings.
9177
ae8c28f8
DZ
9178Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
9179
19ed8960
ILT
9180 * config/obj-coff.h (S_IS_COMMON): add missing backslash
9181
ae8c28f8
DZ
9182 * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
9183
0aa07269
ILT
9184Thu Aug 12 11:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9185
9186 * config/tc-mips.c (mips_ip): Suggested by
9187 davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
9188 names for 'E' and 'G' argument types (coprocessor registers) and
9189 don't warn if $1 is used on the coprocessor.
ae8c28f8 9190 (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
0aa07269
ILT
9191
9192Mon Aug 9 12:09:14 1993 Doug Evans (dje@canuck.cygnus.com)
9193
9194 * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
9195 * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
9196 BFD_RELOC_16.
9197 * config/tc-sparc.h (WORKING_DOT_WORD): Define.
9198
6a9cf6fa
KR
9199Mon Aug 9 13:36:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9200
9201 * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
9202 defined or BFD is not.
9203 (relax_and_size_all_segments): Declare local variable fragP.
9204
b114e492
KR
9205Fri Aug 6 15:22:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9206
9207 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
9208 bytes with real values, not zeros.
9209
ac32a7e7
ILT
9210Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9211
3d2330f8
ILT
9212 * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
9213 targets, using ecoff and mips-big.
9214
ac32a7e7
ILT
9215 * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
9216 Johnson): Added case for 'C' for coprocessor instruction codes.
9217
273aa947
KR
9218Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9219
fd4b7c25
KR
9220 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): Fill in
9221 bytes with real values, not zeros.
9222 (md_pseudo_table): Call cons for .uaxword.
9223
b114e492
KR
9224 * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
9225
273aa947
KR
9226 * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
9227
b114e492
KR
9228 * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
9229 for verifying symbol chain.
9230 (merge_data_into_text, relax_and_size_all_segments): New
9231 functions, split out from write_object_file.
9232
273aa947
KR
9233Tue Aug 3 15:43:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9234
9235 * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
9236 debug section is new, allocate an extra 12 bytes at its start. If
9237 ".stabs" type is N_SO, fill in filename symbol field of that first
9238 entry. Return early if "goof", to simplify later code slightly.
9239 (adjust_stab_sections): New function.
9240 (elf_frob_file): Apply adjust_stab_sections to each section.
9241
9242 * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
9243 static.
9244 * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
9245 * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
9246 and "popsection", and call cons for "uaword" and "uahalf".
9247
9248 * config/obj-elf.c (obj_elf_version): Use English in error
9249 messages.
9250
4573d186
ILT
9251Tue Aug 3 11:29:06 1993 Ian Lance Taylor (ian@cygnus.com)
9252
9253 * config/obj-ecoff.c: Updated for BFD ECOFF changes. Now gets the
9254 swapping routines and external structure sizes via the
9255 ecoff_backend information. No longer includes coff/mips.h.
9256
b4703fa6
ILT
9257Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9258
4c7ff23d
ILT
9259 * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
9260 and in hash_ptr->string.
9261
b4703fa6
ILT
9262 * app.c (do_scrub_next_char): Reset state to 0 after .appline if
9263 file name is not seen.
9264
fd4b7c25
KR
9265Mon Aug 2 11:51:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9266
9267 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): New case,
9268 parallel to BFD_RELOC_32.
9269 (tc_gen_reloc): Accept BFD_RELOC_64.
9270
ced16de6
ILT
9271Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
9272
9273 * write.c: Don't use short int in a prototype.
ab4d34cd
ILT
9274
9275 * expr.c (operand): Make return value simply depend on contents of
9276 returned expression.
9277
b4703fa6
ILT
9278Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
9279
9280 * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
9281
0ccc65ec
DZ
9282Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
9283
9284 * config/ho-sunos.h: remove some old function decls that conflict
9285 w/ ANSI, and which weren't needed anyway
9286
9287Wed Jul 28 16:34:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9288
9289 * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
9290 and disabled since it breaks Ian's new symbol-value code.
9291
9292 * expr.c (integer_constant): Accept more digits if BFD64.
9293
7fe17970
ILT
9294Wed Jul 28 11:30:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9295
9296 * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
9297 expect a bignum, turn it into a bignum. Output extra zeroes
9298 before a short bignum, rather than after.
9299
0c2734c3
KR
9300Tue Jul 27 15:54:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9301
9302 * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
9303 on DEBUG_SYMS, not DEBUG.
9304 (symbol_remove): Likewise.
9305 (symbol_insert): Likewise.
9306
4fe45d22
ILT
9307Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
9308
9309 * config/tc-mips.c (mips_optimize): New static variable.
e9f108bc
ILT
9310 (append_insn): If mips_optimize == 0, always insert NOP
9311 instructions. If mips_optimize < 2, don't swap branches.
9312 (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
4fe45d22 9313
de9310b9
RP
9314Mon Jul 26 18:02:43 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9315
9316 * Makefile.in (clean): if testsuite does not exist, then skip it.
9317
9318Fri Jul 23 14:13:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9319
9320 * config/tc-mips.c (prev_insn_unreordered,
9321 prev_prev_insn_unreordered): New static variables.
9322 (append_insn): Don't swap branch instruction if
9323 prev_prev_insn_unreordered (see comment).
9324 (mips_no_prev_insn): Clear the unreordered variables.
9325 (s_mipsset): When turning on reordering, set the unreordered
9326 variables.
9327
7767e7e9
KR
9328Fri Jul 23 13:09:44 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9329
9330 * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
9331 are also magic, and have special default flag settings.
9332 (obj_elf_frob_symbol): Since the return value from this function
9333 isn't used, don't bother calling obj_elf_write_symbol_p, since it
9334 doesn't accomplish anything else.
9335
9336 * config/tc-sparc.c (md_section_align): Round up section size only
9337 for a.out format.
9338
9339 * symbols.c: Don't define DEBUG by default.
9340
88b457e5
ILT
9341Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
9342
2a2d3d08
ILT
9343 * write.c (fix_new_exp): Handle a O_uminus expression.
9344
e979ea04
ILT
9345 * expr.c (expr): Don't let absolute_section override
9346 undefined_section for the return value.
9347
cf897ce2
ILT
9348 * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
9349 pseudo-op with a poc_handler field of NULL, ignore it and treat it
9350 as an instruction instead.
9351 * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
9352 poc_handler field.
9353
88b457e5
ILT
9354 * config/tc-h8500.c (md_begin): Use a local variable when
9355 initializing md_relax_table to avoid warnings about modifying a
9356 supposedly const data structure.
9357
88e12460
BK
9358Thu Jul 22 10:58:51 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
9359
9360 * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
9361 is defined.
9362
86a6ada2
FF
9363Wed Jul 21 17:32:02 1993 Fred Fish (fnf@deneb.cygnus.com)
9364
9365 * configure.in (case ${host}): Map *-*-sysv4* to gas_host=sysv.
9366 * configure.in (case ${generic_target}): Add i[34]86-*-sysv4*
9367 case to set obj_format=elf. Must go before i386-*-sysv* case that
9368 sets obj_format=coffbsd. Add *-*-sysv4* to *-*-elf and
9369 *-*-solaris case, and move to before *-sysv* case that wants to
9370 set obj_format to coff.
9371 * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
9372 'exp->X_op'.
9373 * config/tc-i386.c (md_apply_fix): Fix valp to be 'valueT *' for
9374 BFD_ASSEMBLER case.
9375
8ff6f40e
ILT
9376Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9377
2c5c299f
ILT
9378 * config/obj-aout.c: Include aout/aout64.h.
9379 (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
9380 symbol, so that BFD doesn't tamper with the type.
9381
8ff6f40e
ILT
9382 * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
9383 up opcodes as pseudo-ops even if they don't start with '.'.
9384 * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
9385 * config/tc-m88k.c (md_assemble): Removed special pseudo-op
9386 handling.
9387 (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
9388 Output the low 16 bits for RELOC_HI16, not the high 16 bits.
9389 * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
9390 r_offset field of the reloc to the fixup offset.
9391 (fixup_segments): If TC_M88K, don't warn about fixup overflows.
9392 * doc/as.texinfo: Minor updates.
9393
5ac34ac3
ILT
9394Tue Jul 20 19:28:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9395
9396 * Extensive changes to permit symbols to contain any expression
9397 type and to delay the computation of the expression until the
9398 value is actually needed. This permits setting symbols to values
9399 calculated based on object code size. Expressions were changed to
9400 no longer be in a section, to stop the overloading of segment and
9401 expression type that previously occurred.
9402
9403 * as.c (big_section, pass1_section, diff_section, absent_section):
9404 Removed.
9405 (expr_section): Added (used for dummy symbols which hold
9406 intermediate expression values).
9407 (perform_an_assembly_pass): Create expr_section, do not create the
9408 sections now removed.
9409 * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
9410 SEG_DIFFERENCE. Added SEG_EXPR.
9411 (SEG_NORMAL): Corresponding changes.
9412 * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
9413 * write.c (write_object_file): Ditto.
9414 * config/obj-aout.c (seg_N_TYPE): Ditto.
9415 * config/obj-bout.c (seg_N_TYPE): Ditto.
9416 * config/obj-coff.c (seg_N_TYPE): Ditto.
9417 * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
9418 * config/obj-vms.c (seg_N_TYPE): Ditto.
9419
9420 * expr.h (operatorT): Moved in from expr.c, added some values.
9421 (expressionS): Added X_op field, removed X_seg field; renamed
9422 X_subtract_symbol to X_op_symbol.
9423 * expr.c: Extensive changes to assign expression types rather than
9424 sections and to simplify the parsing.
9425 * write.c (fix_new_internal): New static function.
9426 (fix_new): Removed sub_symbol argument.
9427 (fix_new_exp): New function, takes expression argument.
9428 * write.h: Prototype changes for fix_new and fix_new_exp.
9429 * cond.c (s_if): Changed accordingly.
9430 * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
9431 parse_repeat_cons, get_segmented_expression,
9432 get_known_segmented_expression, get_absolute_expression): Ditto.
9433 * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
9434 Ditto.
9435 * write.c (write_object_file): Ditto.
9436 * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
9437 * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
9438 obj_coff_endef, yank_symbols): Ditto.
9439 * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
9440 * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
9441 print_insn, md_operand): Ditto.
9442 * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
9443 do_a_fix_imm, build_bytes): Ditto.
9444 * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
9445 get_specific, check, insert, md_convert_frag): Ditto.
9446 * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
9447 md_assemble, pa_ip, getExpression, getAbsoluteExpression,
9448 evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
9449 process_exit): Ditto.
9450 * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
9451 is_complex): Ditto.
9452 * config/tc-i386.c (pe, md_assemble, i386_operand,
9453 md_estimate_size_before_relax, md_create_long_jump): Ditto.
9454 * config/tc-i860.c (md_assemble, getExpression, print_insn):
9455 Ditto.
9456 * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
9457 get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
9458 i960_handle_align): Ditto.
9459 * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
9460 subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
9461 md_estimate_size_before_relax, md_create_long_jump, get_num):
9462 Ditto.
9463 * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
9464 md_create_short_jump, md_create_long_jump): Ditto.
9465 * config/tc-mips.c (md_assemble, append_insn, gp_reference,
9466 macro_build, macro, my_getExpression): Ditto. Also removed
9467 get_optional_absolute_expression; just use get_absolute_expression
9468 instead.
9469 * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
9470 fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
9471 * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
9472 * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
9473 Ditto.
9474 * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
9475 print_insn): Ditto.
9476 * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
9477 tip_op, md_assemble): Ditto.
9478 * config/tc-vax.c (seg_of_operand, md_assemble,
9479 md_estimate_size_before_relax, md_create_long_jump): Ditto.
9480 * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
9481
84873870
DZ
9482Tue Jul 20 12:17:16 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
9483
9484 * configure.in: i386-lynx is the same as i386-coff
9485
623d6e9a
KR
9486Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
9487
9488 * config/obj-elf.c (obj_elf_previous): New function.
9489 (previous_section, previous_subsection): New vars.
9490 (obj_elf_section): Save current place in case DWARF code wants us
9491 to pop back to it. Handle unquoted section name as well as quoted
9492 section name. Don't crash on invalid strings.
9493 (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
9494 "4byte".
9495
9496 * config/obj-elf.h: Don't include struc-symbol.h.
9497 (obj_elf_frob_symbol): Declare arg as struct symbol *.
9498
9499 * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
9500 "L" or "_.L_".
9501
9502 * write.c (write_relocs): New function, split off from
9503 write_contents. Use memset instead of bzero.
9504 (write_object_file): Apply write_relocs to each section before
9505 applying write_contents.
9506
9507 * read.c (read_begin): Call obstack_begin with values closer to 1K
9508 multiples.
9509 (read_a_source_file, big_cons, float_cons): Use memcpy instead of
9510 bcopy.
9511
ffffc8fb
ILT
9512Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9513
ce2ad89a
ILT
9514 * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
9515 calculating opP->isiz; this permits the expression size to be
9516 determined as well, later on.
9517
ffffc8fb
ILT
9518 * expr.c (clean_up_expression): Don't cancel the subtraction of
9519 undefined symbols.
9520
9521 * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
9522 switch to text section rather than data section.
9523
9d4dfbf3
KR
9524Mon Jul 19 12:35:39 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9525
9526 * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
9527 expression (to take the pc-rel instruction itself into account)
9528 before using the expression, instead of after.
9529
04acd059
ILT
9530Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
9531
1e9cf565
ILT
9532 * read.c (float_cons): Simplified parsing logic. If
9533 REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
9534
9535 * symbols.c (colon): Rather than a special case for TC_HPPA,
9536 use new macro tc_frob_label.
9537 * config/tc-hppa.h (tc_frob_label): Define.
9538
9539 * config/tc-mips.c: Many changes to support simple assembler
9540 optimization.
9541 (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
9542 prev_insn_valid, prev_insn_frag, prev_insn_where,
9543 prev_insn_fixp, prev_insn_is_delay_slot): New static
9544 variables.
9545 (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
9546 mips_align, s_stringer, s_mips_space): New static functions.
9547 (mips_define_label): New global function.
9548 (md_pseudo_table): For "ascii", "asciz", "asciiz", call
9549 s_stringer. Changed argument to float_cons from 0 or 1 to 'f'
9550 or 'd'. For "space" call s_mips_space.
9551 (md_begin): Call mips_no_prev_insn.
9552 (append_insn): Only insert necessary NOP instructions.
9553 (macro): Call mips_emit_delays before setting mips_noreorder.
9554 Increment and decrement mips_noreorder rather than using
9555 save_reorder_condition. Don't bother to use noreorder in
9556 M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
9557 (md_atof): Handle floating point numbers correctly for both
9558 big and little endian targets.
9559 (s_align, s_cons): Call mips_align rather than frag_align.
9560 (s_change_seg, s_cons): Call mips_emit_delays.
9561 (s_float_cons): Let float_cons do the work.
9562 (s_mipsset): Call mips_emit_delays when setting noreorder.
9563 * config/tc-mips.h (tc_frob_label): Define to be
9564 mips_define_label.
9565
04acd059
ILT
9566 * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
9567 ecoff_frob_files): Consistently use S_GET_VALUE rather than
9568 bfd_asymbol_value. Warn if taking difference of symbols in
9569 different segments.
9570
c978e704
ILT
9571Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9572
5276e361
ILT
9573 * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
9574 with a warning.
9575
2368ec63
ILT
9576 * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
9577 by md_pcrel_from if we are relocating against a symbol (we still
9578 need md_pcrel_from for a PC relative relocation within the same
9579 file).
9580 * config/tc-m88k.c (md_pcrel_from): Corrected return value.
cb441b38 9581 (omagic): Removed unused variable.
2368ec63 9582
c978e704
ILT
9583 * Preliminary support for m88k-coff.
9584 * configure.in (m88k-*-coff*): New target. Use coffbfd and
9585 m88kcoff.
9586 * config/m88kcoff.mt: New file.
9587 * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
9588 (pseudo_set): Handle difference of symbols in different fragments
9589 by saving the entire expression as the value of the symbol.
9590 * symbols.c (resolve_symbol_value): Resolve difference
9591 expressions.
9592 * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
9593 "sdef" as a synonym for "def".
9594 * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
9595 TARGET_FORMAT.
9596 (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
9597 * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
9598 m88k port up to date, and to add COFF support.
9599
85051959
ILT
9600Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9601
5868b1fe
ILT
9602 * Removed sy_forward and replaced it with an undefined expression
9603 as the value of a symbol.
9604 * struc-symbol.h (struct symbol): Removed sy_forward field. Added
9605 sy_resolved and sy_resolving single bit fields.
9606 * symbols.c (symbol_new): Don't initialize sy_forward field.
9607 (resolve_symbol_value): New function to adjust symbol value by
9608 fragment address, using recursion to resolve forward symbols.
9609 * symbols.h: Added prototype for new function.
9610 * read.c (pseudo_set): Set symbolP->sy_value to an undefined
9611 expression rather than setting symbolP->sy_forward.
9612 * write.c (write_object_file): Use resolve_symbol_value on
9613 symbols, keeping the common case (the old behaviour) inline.
9614 * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
9615 handling (subsumed by write.c change).
9616 * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
9617 sy_value rather than sy_forward.
9618 * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
9619 expression segment rather than sy_forward.
9620 (yank_symbols): Use resolve_symbol_value.
9621 (crawl_symbols): Removed extra pass over symbols.
9622 * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
9623 config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
9624 symbols which handled sy_forward; use resolve_symbol_value
9625 instead.
9626 * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
9627 Define.
9628 * config/obj-elf.c (obj_elf_stab_generic): Check expression
9629 segment rather than sy_forward.
9630 * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
9631 sy_forward; do initialize sy_resolved and sy_resolving.
9632 * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
9633
85051959
ILT
9634 * Changes to keep a full expression as the value of a symbol, not
9635 just a longword:
9636 * struc-symbol.h: New field sy_value.
9637 * as.h: Include expr.h before struc-symbol.h.
9638 * expr.h: Use struct symbol rather than symbolS.
9639 * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
9640 of sy_value field; compile unconditionally, not just if
9641 BFD_ASSEMBLER.
9642 * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
9643 * write.c (write_object_file): Set BFD symbol value to gas symbol
9644 value.
9645 * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
9646 config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
9647 (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
9648 * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
9649 * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
9650 S_GET_VALUE rather than ost_entry.n_value.
9651 * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
9652 (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
9653 config/obj-coffbfd.c (symbol_to_chars): Get value to write out
9654 using S_GET_VALUE--don't assume it is already set.
9655 * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
9656 symbol value.
9657 * config/obj-vms.c (various): Don't assign directly to
9658 S_GET_VALUE; use S_SET_VALUE instead.
9659
b50401c9
DE
9660Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
9661
fd4b7c25
KR
9662 * configure.in: Make sparc64-*-aout* use bfd gas.
9663
b50401c9
DE
9664 * configure.in: Recognize h8300h.
9665
489a93f3
SC
9666Tue Jul 13 12:09:44 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
9667
9668 * config/tc-h8500.c (line_comment_chars): Add hash.
9669 (parse_exp, skip_colonthing, build_bytes): Add support for
9670 R_H8500_HIGH16 relocation type.
9671
5d4ef296
KR
9672Mon Jul 12 11:15:34 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
9673
9674 * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
9675 attribute name. Handle `execinstr' attribute.
9676
99c24539
ILT
9677Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com)
9678
9679 * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
9680 there is another alternative for the instruction.
9681
ec1c752b
RP
9682Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
9683
9684 * doc/as.texinfo: updates for H8/300H
9685
d358969d
ME
9686Thu Jul 8 14:41:43 1993 Mark Eichin (eichin@cygnus.com)
9687
9688 * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
9689 md_number_to_chars, md_section_align): Adjusted to use valueT,
9690 addressT, to match tc.h.
9691
ff4cac38
KR
9692Thu Jul 8 14:15:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9693
9694 * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
b2565433 9695 independent of format.
ff4cac38 9696
42206996
DE
9697Thu Jul 8 07:25:25 1993 Doug Evans (dje@canuck.cygnus.com)
9698
9699 * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
9700
e9baeb46
DZ
9701Wed Jul 7 18:11:07 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
9702
9703 * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
9704 build; also recognize h8300-*-coff
9705
76c64db0
ILT
9706Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
9707
e154ecf4
ILT
9708 * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
9709 core just because somebody uses a label before it is defined.
9710
76c64db0
ILT
9711 * config/mips-opcode.h: Moved to opcode/mips.h.
9712 * config/tc-mips.c: Include opcode/mips.h rather than
9713 mips-opcode.h.
9714 (append_insn): An extra NOP is only needed after instructions
9715 which set HI or LO, not after instructions which read it.
9716 (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
9717 (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
9718 * config/tc-mips.h (struct mips_opcode): Don't define.
9719 * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
9720 Set to $(srcdir)/../include/opcode/mips.h.
9721
9722 Get the MIPS assembler up to speed with other gas changes:
9723
9724 * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
9725 Removed; don't change the symbol value.
9726 (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
9727 bfd_asymbol_value rather than S_GET_VALUE to include section
9728 vma in symbol value.
9729 (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
9730 doesn't output them. Set the vma of sections.
9731 * config/obj-ecoff.h: Don't define obj_frob_symbol.
9732 * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
9733 longer necessary.
9734 (various): use valueT rather than long.
9735
e28e0b95
KR
9736Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9737
fd4b7c25
KR
9738 * config/tc-sparc.h (ENV64): Define for v9.
9739
9740 * config/tc-sparc.c (s_xword): For numbers, call big_cons.
9741 (sparc_ip, md_apply_fix, tc_gen_reloc): Handle some sparc64
9742 relocation types.
9743 (md_number_to_chars): Handle 8-byte value.
9744
9745 * config/obj-elf.h (elf_symbol): For v9, use 64-bit symbol type.
9746
e28e0b95
KR
9747 * as.h (valueT): Typedef moved here.
9748 * struc-symbol.h (valueT): ...from here.
9749 * write.c (write_object_file): Locals from_addr, to_addr,
9750 table_addr are now addressT. Supply prototype for bfd_alloc for
9751 now.
9752 (fixup_segment): Local add_number is now valueT. Correct some
9753 range-checking bugs.
9754 (relax_align): Type `int' should be sufficient for the exponent.
9755 (fix_new): Argument offset is type offsetT. Locals size and
9756 newsize are type valueT.
9757 * write.h (struct fix): Fields fx_offset and fx_addnumber are now
9758 type valueT.
9759 (fix_new): Fix prototype.
9760 * symbols.c (symbol_new): Symbol value is type valueT.
9761 (S_SET_VALUE, S_GET_VALUE): Likewise.
9762 (S_IS_*): Specify int return type explicitly.
9763 * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
9764 prototypes.
9765 * read.c (s_comm): Values read are type valueT.
9766 * expr.h (expressionS): Field X_add_number is an offsetT.
9767 * tc.h (md_create_long_jump, md_create_short_jump,
9768 md_section_align): Addresses are now type addressT.
9769 (md_number_to_chars, md_apply_fix): Pass value as valueT.
9770 * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
9771 md_number_to_chars, md_section_align): Adjusted.
9772 * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
9773 gcc shut up.
9774 (md_create_short_jump, md_create_long_jump, md_number_to_chars,
9775 md_section_align): Adjusted.
9776
9777 * config/tc-sparc.c (s_reserve): Permit use for other than a.out
9778 format.
9779 (s_common): Handle Solaris-2 version.
9780
9781 * config/ho-generic.h (free): Returns void if __STDC__.
9782
9783 * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
9784 elf_file_symbol): Declare.
9785
9786 * expr.c (floating_constant, integer_constant): Now return void.
9787
9788Thu Jul 1 12:13:43 1993 Ian Lance Taylor (ian@cygnus.com)
9789
9790 * configure.in: Match on sparc*-fujitsu-none rather than
9791 sparclite*-fujitsu-none.
9792
267389df
ILT
9793Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
9794
9795 * read.c (cons): Conditionalize parsing of expression. Move
9796 putting value into object file into separate function. Separate
9797 out MRI and WANT_BITFIELDS cases into separate functions.
9798 (emit_expr): New function to write data into object file.
9799 Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
9800 processor types.
9801 (parse_bitfield_cons): New function to parse bitfield expressions
9802 as used by i960 assemblers. Only compiled if
9803 BITFIELD_CONS_EXPRESSIONS is defined.
9804 (parse_mri_cons): New function to parse MRI style strings. Only
9805 compiled if MRI is defined.
9806 (parse_repeat_cons): New function to parse repeat counts. Only
9807 compiled if REPEAT_CONS_EXPRESSIONS is defined.
9808 * read.h (emit_expr): Added declaration of new function.
9809 * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
9810 * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
9811 * config/tc-hppa.c (parse_cons_expression_hppa): New function to
9812 parse a HPPA expression, rather than special case in cons
9813 function.
9814 (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
9815 than special case in emit_expr function.
9816 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
9817 Define to use new functions from tc-hppa.c.
9818 * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
9819 (WANT_BITFIELDS): Removed; now obsolete.
9820 * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
9821 * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
9822 NS32K fixup, rather than special case in emit_expr function.
9823 * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
9824 cons_fix_new_ns32k. Also use PARAMS rather than checking
9825 __STDC__.
9826 * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
9827
9828 * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
9829 Don't core dump if gas has no information about a section.
9830
9831Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9832
fd4b7c25
KR
9833 * config/tc-sparc.c (md_begin): If sparcv9 is defined, reset
9834 current_architecture to v9 automatically.
9835
9836 * config/tc-sparc.h (TARGET_FORMAT): Use elf64-sparc for v9.
9837
9838 * config/tc-sparc64.h, config/tc-sparc64.c: New files.
9839 * configure.in: Use sparc64 cpu files for v9, and default to elf
9840 format.
9841
267389df
ILT
9842 * write.c (relax_and_size_seg): Always fully process a section.
9843 Section size is last frag's (vm)address plus its size. If no
9844 relocations are present, force SEC_RELOC flag clear.
9845 (dump_section_relocs): New debugging routine.
9846 (adjust_reloc_syms): New routine, broken out from write_contents.
9847 Don't adjust relocs that are already relative to section symbol.
9848 Look for obj_fix_adjustable macro to know what else to skip,
9849 instead of obj_write_symbol. Look for section symbol stored in
9850 section information.
9851 (write_object_file): Map adjust_reloc_syms over all sections.
9852 (write_contents): Clear SEC_RELOC flag if no relocations are
9853 found.
9854
9855 * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
9856 keep it quiet.
9857
9858 * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
9859
e28e0b95
KR
9860Fri Jun 25 14:42:53 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9861
9862 * Makefile.in (all, dvi, info, install-info, clean-info): do not
9863 echo recursion lines.
9864 (install-info, clean-info): collapse into the dvi and info rule.
9865
fd4b7c25
KR
9866Fri Jun 25 10:47:24 1993 Doug Evans (dje@canuck.cygnus.com)
9867
9868 * config/tc-sparc.c (sparc_ip): Remove support for %d/%q fp regs.
9869 All fp regs are now specified as %f.
9870 (priv_reg_table): fpq -> fq.
9871
267389df
ILT
9872Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
9873
9874 * as.h (strstr): Disable declaration for now.
9875 (fprint_value, sprint_value): Declare.
9876
9877 * subsegs.c (subseg_new_rest): Use memset to clear new frag.
9878 (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
9879
9880 * expr.c (expr_part): Made sanity checks a.out-specific.
9881 (expr): Disabled sanity checks.
9882
9883 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
9884 section symbol.
9885 * subsegs.c (subseg_change): Initialize section symbol pointer
9886 when setting up a new section.
9887
9888 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
9889 field back at gas symbol structure.
9890
9891 * symbols.c (colon): Cast obstack_next_free value to char* before
9892 doing arithmetic on it.
9893 * subsegs.c (subseg_new_rest): Likewise.
9894 * as.h (frag_now_fix): Likewise.
9895
9896 * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
9897 calling bfd_make_section_old_way directly, and call subseg_set
9898 instead of subseg_change. Now returns void.
9899 (obj_elf_write_symbol): Only check local symbols for now.
9900 (elf_stab_symbol): Now static and void, and disabled until it
9901 works completely.
9902 (obj_elf_size): For expression values, fail silently for now.
9903 (obj_symbol_new_hook): Do nothing.
9904
9905 * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
9906 relocation.
9907 (s_local) [OBJ_ELF]: New function.
9908 (md_pseudo_table) [OBJ_ELF]: Call it for "local".
9909 (s_common): Rearrange to handle Solaris .common pseudo, which may
9910 sometimes use bss space instead of common.
9911 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
9912
a8285504
DZ
9913Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9914
9915 * configure.in: set host config to hpux for hppa*-hp-hpux
9916
267389df
ILT
9917Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
9918
9919 * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
9920
9921Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
9922
9923 * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
9924 * config/obj-aout.c (s_sect): Do it here.
9925
9926 * as.h (BAD_CASE): Don't make some lame compilers think we want
9927 substitution inside strings.
9928
9929 * as.c (print_version_id): New function, split off from main.
9930 (main): Call it.
9931 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
9932 for -V. Ignore -Q and -s options for now.
9933
a8285504
DZ
9934Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9935
9936 * Makefile.in: make installation & builds work again for crosses
9937
267389df
ILT
9938Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
9939
9940 * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
9941 symbol values correctly.
9942
9943 * write.c (write_object_file): Deleted unused variables.
9944 (fixup_segment): Use sprint_value.
9945
9946 * messages.c (sprint_value, fprint_value): New routines.
9947
9948 * config/obj-elf.c (elf_stab_symbol): Now returns void.
9949 (obj_elf_stab_generic): Fix typo in logic.
9950
9951 * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
9952
9953 * as.h (addressT, offsetT): New types, using BFD types if
9954 available.
9955 (relax_addressT, struct frag): Use them.
9956 * struc-symbol.h (valueT, struct broken_word): Likewise.
9957
9958 * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
9959 * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
9960
9126738c 9961Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
132239bf 9962
9126738c
DZ
9963 * Makefile.in: canonicalize install.sh; for use within
9964 this directory (and subdirs)
9965
267389df
ILT
9966Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
9967
9968 * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
9969 specified, should have both S1 and S2 fields identical
9970 If only finding the problem was as fast as fixing the bug !!!!
9971
9972Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9973
9974 * write.c (write_contents): Do write out non-loadable sections.
9975 Debug sections can fall in this category.
115147fb 9976
267389df
ILT
9977 * read.c (s_app_file): Call elf_file_symbol for ELF files.
9978 * config/obj-elf.c (elf_file_symbol): New function.
9979
9980 * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
9981 added argument to specify section base name.
9982 (obj_elf_stab_generic): Renamed from ..._stab. New argument
9983 specifies section base name.
9984 (obj_elf_stab): New function, calls obj_elf_stab_generic with
9985 ".stab" as section base name.
9986 (obj_elf_xstab): New function, calls obj_elf_stab_generic.
9987 (obj_elf_type): Handle "object". Use bitwise-or to merge in
9988 symbol flags rather than simply replacing, so global/local flags
9989 are preserved.
9990 (obj_elf_ident): Rewrite.
115147fb 9991
a00ee522
DZ
9992Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9993
9994 * Makefile.in: remove parentdir support; use INSTALL_XFORM
9995
9996Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
9997
9998 * config/tc-i386.c (md_pseudo_table): .align uses a power of two
9999 for any a.out target, not just Linux and 386BSD.
10000 * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
10001 target.
10002
267389df
ILT
10003Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10004
10005 * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
10006 don't exist or duplicate other inclusions.
10007
10008 * config/tc-vax.h (NO_RELOC): Define.
10009
fd4b7c25
KR
10010Mon Jun 7 09:55:03 1993 Doug Evans (dje@canuck.cygnus.com)
10011
10012 * config/tc-sparc.c (sparc_ip): Fix parsing of asi number.
10013 Fix error message.
10014
267389df
ILT
10015Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
10016
10017 * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
10018 * gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
10019 char to reg_prefix instead of to 'r'.
10020 (calcop): Change calls to get_reg.
10021 (calcop): Handle new case 'x' to set reg_prefix.
10022 (calcop): Set reg_prefix to 'r' after each call to get_reg.
10023 (cmpslot): Add 88110 conditions.
10024
10025 * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
10026
10027 * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
10028 before returning.
10029
10030 * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
10031 adjacent; mov.s and mov.d swapped.
10032 (m88k_opcodes): Fix typo `r2' -> `2'.
10033
a00ee522
DZ
10034Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
10035
10036 * config/h8300.c: Support for H8/300-H opcodes.
10037
10038 * config/obj-coffbfd.c (w_strings): String table length is 4
10039 bytes, no matter what the host int size is.
10040
10041 * configure.in (alpha-*-osf*): New.
10042
68ad4c92
ILT
10043Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
10044
47fcc4f5
ILT
10045 * configure.in (mips-*-ecoffl*): New target; use ecoff and
10046 mips-lit.
10047 (mips-*-ecoff*): Added trailing '*'.
10048
68ad4c92
ILT
10049 * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
10050 first FDR in a file to be zero.
10051
75776695
KR
10052Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10053
b7067d7f
KR
10054 * Makefile.in (VERSION): Jump to 2.1.4.
10055
75776695
KR
10056 * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
10057
10058 * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
10059 ECOFF format.
10060
10061Tue Jun 1 15:21:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10062
10063 * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
10064 separate '851 mmu.
10065
10066 * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
10067 and routine names. Assuming 32 bits for now.
10068
10069 * config/obj-elf.c (elf_frob_file): Look for macro
10070 elf_tc_final_processing_hook, instead of assuming a function
10071 always exists.
10072 * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
10073 tc_final_processing_hook.
10074 * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
10075
10076 * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
10077 moved here from obj-elf.h.
10078 * config/obj-elf.h: Don't include CPU-specific header files.
10079
10080Sun May 30 16:49:37 1993 Peter Hoogenboom (hoogen@fast.cs.utah.edu)
10081
10082 * configure.in: configurations should match on 'hppa*' not 'hppa'.
10083
10084 * read.c: Add support for HPPA assembly language syntax (denoted
10085 with '#ifdef TC_HPPA').
10086
10087 * symbols.c: Add support for HPPA assembly language syntax (denoted
10088 with '#ifdef TC_HPPA').
10089
10090 * write.c (write_contents): Add support for HPPA-style
10091 relocations.
10092
10093 * config/obj-elf.c: Stab symbols weren't written properly.
10094 (obj_elf_version):
10095 (obj_elf_desc):
10096 (obj_elf_write_symbol):
10097 (obj_elf_write_symbol_p):
10098 (obj_elf_frob_symbol):
10099 (elf_stab_symbol):
10100 (elf_frob_file):
10101
10102 * config/tc-hppa.c: Support for HPPA symbol extension sections.
10103 Remove some unused code. Support for HPPA assembly language
10104 syntax.
10105
10106 * app.c:
10107
10108 * symbols.c:
10109
10110 * config/obj-elf.h:
10111 (obj_write_symbol):
10112 (obj_frob_file):
10113 (elf_tc_symbol):
10114 (elf_tc_make_sections):
10115
10116 * config/tc-hppa.h:
10117
10118Sun May 30 21:44:45 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
10119
10120 * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
10121 hash_new will have succeeded if it returns.
10122 * config/tc-a29k.c (md_begin): Likewise.
10123
10124 * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
10125 const.
10126 (mode_from_disp_size, opcode_suffic_to_type): Now inline under
10127 gcc.
10128 (fits_in_{signed,unsigned}_{byte,word}): Likewise.
10129
10130 * expr.c: Delete register declarations; gcc ignores them anyways.
10131
10132Fri May 28 19:03:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10133
10134 * hash.c (hash_new): Use xmalloc, since many callers don't check
10135 for failure.
10136
49864cfa
KR
10137Thu May 27 13:02:15 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10138
10139 * frags.c (zero_address_frag, bss_address_frag): These are
10140 external.
10141
10142 * tc.h (md_reloc_size): This is const.
10143 * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
10144 (md_reloc_size): Now const.
10145
10146 * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
10147 trailing commas.
10148 * as.h (enum _segT): Ditto.
10149
10150 * struc-symbol.h (N_TYPE_seg): This should be const.
10151
10152Thu May 27 11:43:59 1993 Michael Meissner (meissner@osf.org)
10153
10154 * config/obj-ecoff.c (add_file): Cast file_name to char * in
10155 listing_source_file call.
10156
10157 * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
10158 of subseg_new call to eliminate const attribute.
10159 (obj_elf_stab): Ditto.
10160 (obj_symbol_new_hook): Cast first argument of bzero call to char *.
10161
10162 * read.c (s_align_bytes): Properly record alignment.
10163
10164 * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
10165 for the prototype/no prototype macro.
10166
10167 * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
10168 void.
10169
10170 * as.h (relax_stateT enum): Delete trailing comma.
10171
9a7d824a
ILT
10172Thu May 27 11:07:50 1993 Ian Lance Taylor (ian@cygnus.com)
10173
10174 * app.c (do_scrub_begin): Let line_comment_chars override
10175 comment_chars.
10176 (do_scrub_next_char): If a line comment character is not at the
10177 start of a line, treat it as a comment character if it is one.
10178 For a CPP line comment use pseudo-op .appline rather than .line.
10179 * input-scrub.c (logical_input_line): Make int rather than
10180 unsigned.
10181 (input_scrub_push, input_scrub_begin): Initialize
10182 logical_input_line to -1 rather than 0.
10183 (bump_line_counters): Increment logical_input_line.
10184 (new_logical_line): If line_number is -2, decrement
10185 logical_input_line.
10186 (as_where): Use logical_input_line even if it is 0.
10187 * read.h (s_app_file prototype): Now takes an int argument.
10188 * read.c (potable): Make .appfile call s_app_file with 1. New
10189 .appline pseudo-op calls s_app_line.
10190 (s_app_file): If .appfile, call new_logical_line with -2 to
10191 account for newline inserted by do_scrub_next_char. If listing,
10192 call listing_source_file.
10193 (s_app_line): New function to handle fake pseudo-op .appline.
10194 * config/obj-coff.c (obj_pseudo_table): Make .appline call
10195 obj_coff_ln.
10196 (obj_coff_ln): Added argument to indicate whether .appline.
10197 * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
10198 obj_coff_ln.
10199 (obj_coff_ln): Added argument to indicate whether .appline.
10200 * config/tc-mips.c (s_file): Pass argument to s_app_file.
10201
61f14fb0
ILT
10202Tue May 25 11:59:07 1993 Ian Lance Taylor (ian@cygnus.com)
10203
10204 * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
10205
10206Thu May 20 19:14:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10207
10208 * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
10209 invalid values.
10210
6eef4543
SC
10211Wed May 19 07:33:17 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
10212
10213 * config/tc-h5000.c (build_bytes): Understand @rd mode and build
10214 relocations correctly.
10215
f8f61478
KR
10216Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
10217
6eef4543
SC
10218 * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
10219 it's wrong.
10220
f8f61478
KR
10221 * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
10222 if value is out of range.
10223
10224 Patch from Minh Tran-Le:
10225 * config/tc-i386.c (i386_operand): For in/out port register used
10226 as base reg, include InOutPortReg in operand type.
10227 (MATCH): Accept overlap value of InOutPortReg.
10228
10229Mon May 17 09:29:34 1993 Ian Lance Taylor (ian@cygnus.com)
10230
10231 * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
10232 Add calls to listing routines to produce combined source/assembler
10233 listings.
10234 (obj_ecoff_stab): Create a file pointer if none used yet.
10235 (ecoff_frob_file): Set symcount to correct value.
10236
10237Fri May 14 06:53:33 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
10238
10239 * Makefile.in (VERSION): Bump to version 2.1, in preparation for
10240 release.
10241
10242 * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
10243 Define in terms of constants, not C structure sizes.
10244
10245 * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
10246
10247Thu May 13 17:01:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10248
10249 * config/obj-aout.c (obj_header_append): Don't define if it's
10250 defined as a macro.
10251 * config/obj-hp300.h (obj_header_append): Define it as a macro.
10252 * config/obj-hp300.c (hp300_header_append): New function.
10253
10254 * Makefile.in (distclean): Don't bother cleaning up doc files;
10255 they aren't going to be in this directory.
10256
204ff785
ILT
10257Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
10258
f8f61478
KR
10259 * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
10260 symbols.
10261
204ff785
ILT
10262 * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
10263 * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
10264
65824763
KR
10265Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
10266
204ff785
ILT
10267 * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
10268 initialization.
10269
65824763
KR
10270 * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
10271
21bb48b9
ILT
10272Wed May 5 14:00:49 1993 Ian Lance Taylor (ian@cygnus.com)
10273
10274 * config/tc-mips.c (macro): Correct floating point double word
10275 loads and stores for big endian target.
10276
e7c2f943
KR
10277Wed May 5 08:39:21 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
10278
10279 * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
10280 calls. Deleted some unused code.
10281 * config/obj-coff.c: Likewise.
10282
10283 ELF support, mostly contributed by Utah:
10284 * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
10285 obj_elf_type): Rewrite.
10286 (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
10287 obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
10288 New functions.
10289 (obj_elf_ident): Dummy.
10290 * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
10291 TARGET_SYMBOL_FIELDS): New macros.
10292 (gdb_section): New variable decl.
10293
10294 * config/tc-i386.c (md_atof): Return zero, not empty string, on
10295 success.
10296
10297 BFD_ASSEMBLER conditional changes:
10298 * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
10299 Don't define these.
10300 (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
10301 (fetch_coff_debug_section): Ditto.
10302 (obj_coff_endef): Call fetch_coff_debug_section.
10303 (struct line_no): New type.
10304 (c_symbol_merge): New way for copying aux fields.
10305 (c_dot_file_symbol): Put symbol in absolute section, and set flag
10306 BSF_DEBUGGING.
10307 (function_lineoff): New symbol.
10308 (function_lineoff, text_lineno_number, our_lineno_number,
10309 lineno_lastP): Don't define.
10310 (c_line_new): Don't define.
10311 (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
10312 placeholders, until
10313 line-number recording gets implemented.
10314 (obj_new_symbol_hook): New code for handling aux fields.
10315 (add_lineno, add_linesym): New functions.
10316 (obj_coff_ln): Call add_lineno, not c_line_new.
10317 (obj_coff_endef): New code for handling symbol names. New lineno
10318 code. Look for section name "*DEBUG*" for debugging section.
10319 (align, coff_check_file_symbols, obj_coff_section,
10320 coff_frob_file): New functions.
10321 * config/obj-coff.h: Reordered some includes.
10322 (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
10323 DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
10324 define these.
10325 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
10326 (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
10327 aux entries. Most SA_* macros now use it unconditionally.
10328 (S_*): Use `bsym' field, and access BFD private data.
10329 (SF_*): Use `sy_flags' symbol field for most of these.
10330 (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
10331 define.
10332 (*_section_header): Don't define.
10333 * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
10334 interface.
10335 (tc_gen_reloc) [I386COFF]: New function.
10336 (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
10337 * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
10338 macros.
10339
10340 * config/obj-coff.c (stack_init): Don't do assignments inside
10341 conditions.
10342 (obj_coff_def): Simplified handling of symbol name a bit.
10343 (tag_insert): Name argument is now pointer to CONST.
10344 (obj_crawl_symbol_chain): Commented out.
10345
10346 * config/obj-coff.h: Use PARAMS macro in prototypes.
10347
10348 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
10349 through frchainP pointer if it is null.
10350
10351 * configure.in: Warn if BFD mode is explicitly turned off but is
10352 required by specified target.
10353 (mips ecoff targets): Don't need to set bfd_gas here; it gets
10354 taken care of later.
10355
10356 * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
10357 field.
10358 (yank_symbols): Merge symbols only if sy_forward is null.
10359
10360 * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
10361 defined.
10362
10363 * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
10364 pointer.
10365 * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
10366
10367 * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
10368 with "." is a local label.
10369
10370 * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
10371 files.
10372
10373 * config/te-linux.h, config/te-386bsd.h: New config files.
10374 * configure.in (i386-*-linux, i386-*-bsd): Use them.
10375 * config/tc-i386.h (TARGET_FORMAT): Select format based on target
10376 environment.
10377 (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
10378
5d6cfa60
ILT
10379Wed May 5 13:14:01 1993 Ian Lance Taylor (ian@cygnus.com)
10380
10381 * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
10382 to want it that way.
10383 (ecoff_build_symbols): Turn local st_Proc symbols into
10384 st_StaticProc symbols. Set index field of external st_Proc and
10385 st_staticProc symbols correctly.
10386 * config/tc-mips.h (NO_LISTING): Don't define. People might want
10387 listings.
10388
e7c2f943
KR
10389Tue May 4 21:22:54 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10390
10391 * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
10392 files.
10393 * configure.in (m68k-*-hpux): Use them.
10394
10395 * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
10396 defined, otherwise zero.
10397
10398 * config/aout_gnu.h (OMAGIC): Don't define if already defined.
10399
5d6cfa60
ILT
10400Mon May 3 15:59:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10401
10402 * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
10403 address space number.
10404
10405Wed Apr 28 19:11:22 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
10406
10407 * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
10408
10409 * config/tc-a29k.c: Include ctype.h.
10410 (define_some_regs): Added special-purpose registers for 29050.
10411
e7c2f943
KR
10412 * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
10413
10414 * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
10415 (change_to_section): Set it here instead.
10416
a1387260
ILT
10417Wed Apr 28 13:40:29 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
10418
10419 * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
10420 hasn't been seen yet.
10421 (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
10422
4a1bbbe7
SC
10423Mon Apr 26 18:29:05 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10424
10425 * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
10426 SH.
10427
be2f6bd6
ILT
10428Mon Apr 26 12:28:27 1993 Ian Lance Taylor (ian@cygnus.com)
10429
10430 * expr.c (operand): Fix unary plus operator (previously was the
10431 same as '~' operator!).
10432
10433Wed Apr 21 00:20:11 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10434
10435 * write.c (cvt_frag_to_fill): Define even if BFD is defined.
10436 (write_object_file): Do define if BFD_ASSEMBLER. Invoke
10437 obj_check_file_symbols if defined. Call verify_symbol_chain_2
10438 instead of open-coding it. Fix some bugs in patching up symbol
10439 chain.
10440 (relax_segment): Make some code we "ought to be able to" use for
10441 all targets no longer conditionalized on ns32k target; instead, do
10442 it always, and if the appropriate conditions fail, abort.
10443
10444 * symbols.c (DEBUG): Enabled.
10445 (symbol_new): Make sure bfd_make_empty_symbol works.
53499500 10446 (verify_symbol_chain_2): New function; takes one symbol as
be2f6bd6
ILT
10447 argument, anywhere in the chain.
10448 (dollar_label*): Use default initializers.
10449
10450 * as.c (perform_an_assembly_pass): Call md_begin here...
10451 (main): ...and not here.
10452
10453 * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
10454 (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
10455
10456 * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
10457 (add_fix, add_frag): Now functions instead of macros.
10458 (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
10459 s_data1, s_data2, s_bss): Use new *_section names, for
10460 compatibility with BFD_ASSEMBLER mode; rewrite switch statements
10461 to handle non-integral segT.
10462 (tc_coff_fix2rtype, tc_aout_fix_to_chars,
10463 tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
10464 (tc_gen_reloc): New routine for BFD_ASSEMBLER.
10465 (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
10466 md_apply_fix_2; new md_apply_fix definition varies interface
10467 depending on BFD_ASSEMBLER.
10468 (md_convert_frag, md_convert_frag_1): Likewise. Use new *_section
10469 names.
10470
10471 * config/obj-vms.c: Include config.h.
10472 (version_string): Delete declaration.
10473 (Write_VMS_MHD_Records): Use GAS_VERSION instead.
10474 (vms_resolve_symbol_redef): New function, taken from VMS code in
10475 symbols.c.
10476 (_doprnt): Deleted.
10477 (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
10478 VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
53499500 10479 VMS_Psect_Spec): Fixed to compile under traditional C.
be2f6bd6
ILT
10480 * config/obj-vms.h: Use PARAMS macro.
10481 (vms_resolve_symbol_redef): Declare.
10482 (RESOLVE_SYMBOL_REDEFINITION): New macro.
10483 * symbols.c (colon): Remove some VMS-specific code, look for
10484 RESOLVE_SYMBOL_REDEFINITION macro instead.
10485
10486 * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
10487 instructions.
10488
10489 * config/tc-i386.c: Reordered some functions so inlining might
10490 work. Use PARAMS in function declarations.
10491 (reloc): New routine.
10492 (md_assemble): Rearrange switch statements to work with
10493 non-integral segT.
10494
10495 * struc-symbol.h [BFD_ASSEMBLER]: Undefine
10496 SYMBOLS_NEED_BACKPOINTERS before defining it.
10497
10498 * subsegs.c (subseg_new_rest): Now static.
10499
10500 * read.c (pseudo_set): Better error message for difference of
10501 symbols in different frags.
10502
10503 * Makefile.in (check): Pass down some new variables, indicating
10504 pathname or program name for cc, nm, objdump.
10505
10506 * as.h (OUTPUT_FLAVOR): New macro.
10507 * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
10508
10509 * configure.in: Initialize bfd_gas properly. Warn that ELF
10510 support is incomplete.
10511
10512Thu Apr 15 22:39:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10513
10514 * read.c (float_cons): Accept null pointer return from md_atof.
10515 * config/tc-m68k.c (md_atof): Return null for success.
10516 * config/tc-sparc.c (md_atof): Ditto.
10517
97a6070c
RP
10518Thu Apr 15 16:04:39 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
10519
10520 * doc/as.texinfo: formatting and comment cleanups; show SPARC
10521 alternative options in same style as other machines; simplify some
10522 conditional use; include GPL as separate file (from texinfo dir)
10523
10524 * doc/Makefile.in: (as.info) include directory containing GPL in
10525 makeinfo search path
10526
10527 * doc/h8.texi: new file; conditional settings for GAS manual
10528 on Hitachi chips
10529
10530Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
10531
10532 * doc/as.texinfo: mention SPARC architecture options.
10533
be2f6bd6
ILT
10534Fri Apr 9 17:43:11 1993 Ken Raeburn (raeburn@cygnus.com)
10535
10536 * configure.in: Rearranged whitespace in per-host/per-target
10537 sections. Added hooks for dropping in HPPA support (not included
10538 yet). Separate out overrides of variables based on target format
10539 and bfd-gas selection from actual target-specific commands. Add
10540 error message for recognized but unsupported format name.
10541
349f20de
ILT
10542Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
10543
10544 * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
55ff56bd 10545 symbolic header match cline in FDR; the native linker seems to
349f20de
ILT
10546 want that.
10547
5316696f
DZ
10548Thu Apr 8 15:51:28 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10549
10550 * doc/Makefile.in: as.texinfo is in $(srcdir). Use
10551 $(srcdir)/as.texinfo explicitly in several places
10552
8ac18b21
RP
10553Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
10554
132239bf 10555 * doc/Makefile.in: update dvi, clean targets for new source
69cb5925 10556 file structure
8ac18b21 10557
d565311f
ILT
10558Thu Apr 8 12:52:46 1993 Ian Lance Taylor (ian@cygnus.com)
10559
10560 * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
10561 rather than undefining know.
8ac18b21 10562 * configure.in: Match ultrix*, not just ultrix.
d565311f 10563
0742a6fd
RP
10564Wed Apr 7 20:18:10 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
10565
10566 * doc/as.texinfo: converted conditional markup to use new
10567 Texinfo facilities, avoiding m4.
10568
10569 * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
10570
10571 * doc/Makefile.in: recast doc configuration to use a link to an
10572 included texinfo file.
10573
10574 * doc/all.texi: settings for generic form of documentation.
10575
10576Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
10577
10578 * read.c (cons): Zero out frag when creating reloc.
10579
367fc835
ILT
10580Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
10581
84e4920f
ILT
10582 * config/tc-mips.c (gp_reference): Certain magic symbols can never
10583 be referenced off the GP register.
10584
367fc835
ILT
10585 * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
10586 when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
10587 LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
10588
10589 * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
10590 definition from other MIPS targets.
10591 * configure.in (mips-*-irix): Use emulation irix.
10592
dd4227d3
SC
10593Sun Apr 4 15:21:09 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10594
10595 * config/tc-h8500.c: Get relax size of branch instructions right,
10596 (get_operand): Parse @sp+ correctly.
10597
be2f6bd6
ILT
10598Fri Apr 2 15:59:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10599
10600 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
10601 COFF section header field.
10602
10603 * configure.in: Print error message if host or target is not
10604 supported.
10605
10606 * configure.in: If with-bfd-assembler, use obj-coff instead of
10607 obj-coffbfd.
10608
10609 * config/ho-generic.h: Include string.h.
10610
ed364bb6
ILT
10611Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
10612
0433135d
ILT
10613 * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
10614 '$' as local, for any object file format.
10615
477b4b04
ILT
10616 * config/tc-mips.c (macro): Optimizations to branching code and a
10617 couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
10618 Campbell).
10619
ed364bb6
ILT
10620 * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
10621 * configure.in (mips-sgi-irix*): Set gas_host to irix.
10622
670a50eb
ILT
10623Wed Mar 31 17:53:54 1993 Ian Lance Taylor (ian@cygnus.com)
10624
10625 * subsegs.c (subseg_new): Set output_section of new section.
10626 * as.c (perform_an_assemly_pass): Don't set output_section here.
10627 * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
10628 since it has additional sections.
10629 * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
10630 not bss_section.
10631 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
10632 ecoff_undefined field.
10633 * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
10634 ecoff_undefined field.
10635 (add_file): If using stabs, just output a stabs symbol rather than
10636 creating a new fdr.
10637 (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
10638 it with get_absolute_expression, rather than skipping it by hand.
10639 (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
10640 than ECOFF line number information.
10641 (obj_ecoff_stab): Accept non-zero values for stabs line number.
10642 (ecoff_build_symbols): Set ifilesym correctly. Set storage class
10643 to small, undefined and/or readonly sections if appropriate.
10644 Don't output symbol names containing \001 characters.
10645 (ecoff_frob_file): Make sure at least one fdr is output.
10646 * config/tc-mips.h: Define TC_MIPS.
10647 * config/tc-mips.c (g_switch_value): New static variable.
10648 (md_assemble): Set gp size of output BFD.
10649 (gp_reference): New function; returns 1 if expression can be
10650 accesssed via gp. Always returns 0 if not using ECOFF.
10651 (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
10652 possible.
10653 (macro): Generate sequences using gp if possible.
10654 (md_parse_option): Ignore -EL and -EB. Parse -G.
10655 (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
10656 (s_change_sec): Handle .rdata and .sdata for ECOFF.
10657 (s_extern): Mark symbol as external. Set ecoff_undefined field.
10658
2b1b5697
KR
10659Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10660
670a50eb
ILT
10661 * output-file.c (output_file_create): Don't call as_perror for
10662 filename rejected by application.
10663
10664 * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
10665 the output file.
10666
4b061a2a
KR
10667 * doc/as.texinfo: Don't use @value in node names for the moment;
10668 references don't appear to work right.
10669
4478def8
KR
10670 * as.h (const, volatile): Put these definitions back, and use
10671 them.
10672
2b1b5697
KR
10673 * doc/as.texinfo: First pass at using new texinfo features --
10674 variables, conditional tests. Far from complete.
10675
10676Mon Mar 29 16:05:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10677
10678 * read.c: Temporary hack to handle some 64-bit constants. This
10679 should be redone later.
10680 (target_big_endian): Declare.
10681 (big_cons): If it's set, reverse order of bytes being copied.
10682 * config/tc-sparc.c (md_begin): Set target_big_endian.
10683
10684 * read.c (s_ignore): Delete declaration of is_end_of_line.
10685
10686 * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
10687 forward pointers properly.
10688
e02eaa59
SC
10689Mon Mar 29 13:47:33 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10690
10691 * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
10692 wasn't being stored into scnhdr.
10693 * config/obj-coffbfd.h: Add prototype of s_get_segment.
10694 * read.c (TC_START_LABEL): Default definition.
10695 (read_a_source_file): Use TC_START_LABEL macro to work out
10696 if a label has been seen.
10697
543d88e4
ILT
10698Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
10699
c39b3eba
ILT
10700 * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
10701 the bottom (make expands variables in dependencies when the
10702 dependencies are read, not when they are used).
10703
543d88e4
ILT
10704 * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
10705 a29k .bss section; the mondfe program doesn't like it.
10706
2b1b5697
KR
10707Sun Mar 28 08:12:53 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
10708
10709 * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
10710 const.
10711 (current_architecture): Don't need initializer.
10712
10713Fri Mar 26 08:12:48 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10714
10715 * doc/none.m4: Define Z8000.
10716 * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir). Remove the
10717 texinfo file before recreating it.
10718 (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
10719 this directory.
10720 (srcdir): Delete second, bogus definition.
10721 (as.info): Look for as-*.texinfo in current directory rather than
10722 in $(srcdir).
10723 (as.dvi): Ditto.
10724 (dvi): New rule.
10725 * doc/configure.in: Create links to all as-*.texinfo files in the
10726 source directory, if that's not the current directory.
10727
10728 * configure.in (per-host): Accept MIPS host with BSD version
10729 number.
10730 (per-target): Classify i486 as i386. Use generic cpu_type instead
10731 of target_cpu in selecting format etc.
10732
10733 * app.c (do_scrub_next_char): Use .appfile, not .app-file.
10734 * read.c (potable): Change .app-file to .appfile.
10735
10736 * config/ho-decstatn.h: Renamed from ho-decstation.h.
10737 * configure.in: Adjusted.
10738
10739 * config/obj-bfd-sunos.*: Unused; deleted.
10740
10741 * Makefile.in (version.c, vers-stamp): Deleted.
10742 (config.h): Define GAS_VERSION.
10743 * as.c (version_string): Deleted declaration.
10744 (main): Look for GAS_VERSION instead.
10745
10746 * doc/as.texinfo: Updated description of -a* (listing) options,
10747 and describe how to pass them through from gcc.
10748
10749 * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
10750 process relocs if there aren't any relocs to process. Avoids
10751 malloc/free bug on SCO too.
10752
10753 * as.h: Move local include files below system include files, to
10754 avoid some redefinition complaints on some systems.
10755 (const, volatile): Don't need these conditionally defined if we
10756 use CONST and VOLATILE from ansidecl.h.
10757 (seg_name): Use CONST, not const.
10758
543d88e4
ILT
10759Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
10760
10761 * config/tc-mips.c: Reindented to GNU standards.
10762
2c19a57c
ILT
10763Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
10764
61001d96
ILT
10765 * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
10766 (fixup_segment): Add a29k special case; the linker is not prepared
10767 to see a segment offset here.
10768
2c19a57c
ILT
10769 * app.c (do_scrub_next_char): Added new state, 10, modifying state
10770 9 to only keep a space in between identifier characters.
10771
afcc637a
DZ
10772Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
10773
2d4bef5e
DZ
10774 * Makefile.in: add dvi target; as-$(config).texinfo might live in
10775 srcdir, might be in objdir.
afcc637a
DZ
10776
10777 * doc/Makefile.in: dvi depends on as.dvi
10778
80c8fd72
DZ
10779Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10780
10781 * Makefile.in: add installcheck target
10782
fd4b7c25
KR
10783Mon Mar 22 16:25:57 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
10784
10785 * config/tc-sparc.c (sparc_ip): Add support for membar mask names.
10786 Add missing colons in prefetch error messages. Add support for
10787 ASI names.
10788
1369949e
ILT
10789Mon Mar 22 10:19:00 1993 Ian Lance Taylor (ian@cygnus.com)
10790
10791 * config/tc-mips.c (macro): Use $AT for any floating point load.
10792
63cdddad
KR
10793Sat Mar 20 12:50:51 1993 Ken Raeburn (raeburn@urth.cygnus.com)
10794
10795 * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
10796 bignums, but don't emit error message.
10797
69498fa2
JW
10798Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
10799
10800 * Makefile.in (targ-cpu.o): Depend on config.h.
10801
f6a91cc0
ILT
10802Wed Mar 17 16:44:06 1993 Ian Lance Taylor (ian@cygnus.com)
10803
10804 * app.c (do_scrub_next_char): Added new state, 9, to avoid
10805 dropping a space immediately following an identifier.
10806 * expr.c, write.c: Rewrote assert expressions to not use multiple
10807 lines; I don't think that can be done portably.
10808 * config/tc-mips.c (macro): Use $AT if target register is zero in
10809 load instruction, which it can be for a floating point load.
10810
a36f6645
ILT
10811Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
10812
3d3c5039
ILT
10813 * write.c (write_contents): Compute the relocs before writing out
10814 the section contents.
10815 * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
10816 symbol table and values right.
10817 * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
10818 with $L is local.
10819 * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
10820 by the section vma.
10821
10822 * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
10823 z8k-opc.h, not z8k.h.
10824
a36f6645
ILT
10825 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
10826 symbol.
10827
2a697fa4
DZ
10828Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10829
10830 * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
10831
f2f7d044
ILT
10832Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
10833
10834 * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
10835 to be on a single line.
10836
ed099874
KR
10837Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10838
10839 * Makefile.in (config.h): Create file, writing out definitions of
10840 target cpu, alias, and canonical name.
10841 (ALL_CFLAGS): No longer define TARGET_CPU.
10842
10843 * Makefile.in (check): Print a message, instead of quitting
10844 silently.
10845
10846 * as.c (main): Don't catch any signals, for now.
10847
10848 * version.c: Deleted.
10849 * Makefile.in: Generate it, putting in only the version number
10850 itself.
10851 (VERSION): New variable.
10852 * as.c: Include config.h.
10853 (main): Reformatted version string. Include target alias. Don't
10854 print if not requested (i.e., unknown -v argument).
10855
10856 * as.c (stralloc): Deleted.
10857 (main): Call strdup instead.
10858
10859 * configure.in: Handle all 68300 series chips.
10860 * config/tc-m68k.c: Include config.h.
10861 (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
10862 series cpus as defaults.
10863 (md_parse_option): Accept some m68300 series CPUs as defaults.
10864
10865Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10866
10867 * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
10868 not already defined.
10869 (main, got_sig): Use them.
10870 * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
10871 values.
10872
10873Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
10874
10875 * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
10876 support.
10877
10878 * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
10879 OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
10880 (struct loc, struct proc, struct file): Moved to tc-mips.c within
10881 #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
10882 * config/tc-mips.c: Rearranged for ECOFF support. Added
10883 prototypes for all static functions. Moved existing minimal
10884 debugging format support info #ifndef OBJ_ECOFF blocks.
10885 (macro_build_lui): Eliminated sign_extend argument, because ECOFF
10886 does not support a non sign extended high 16 bits reloc. Adjusted
10887 all callers accordingly.
10888 (tc_get_register): Renamed from get_register, and made non-static.
10889
10890 * config/mips-big.mt, config/mips-lit.mt: New files. Define
10891 TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
10892 respectively.
10893 * configure.in (mips-*-bsd*): Use gas_target mips-lit.
10894 (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
10895 obj_format ecoff and gas_target mips-lit or mips-big.
10896
c5d4bc88
KR
10897Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
10898
10899 * version.c: Bump to version 2.0.1.
10900
fefba3a5
ILT
10901Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
10902
10903 * write.c (chain_frchains_together): Check that seg_info (section)
10904 is not NULL.
10905 (write_object_file): Call obj_frob_file after setting the symbols,
10906 not before.
10907
2b1b5697
KR
10908Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
10909
10910 * Version 2.0 released.
10911
fefba3a5
ILT
10912Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10913
10914 * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
10915
10916Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
10917
10918 * read.h: Define stringer here.
10919 read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
10920 places.
10921
bf449293
SC
10922Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10923
10924 * read.c (s_space): Multiply repeat count by mult, not fill.
10925
9471a360
KR
10926Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
10927
10928 * read.c: Include ctype.h.
10929
1101551c
KR
10930Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10931
10932 Patches from Eric Youngdale:
10933 * make-gas.com: Find obstack.obj if it's not in the current
10934 directory.
10935 * read.c (s_ignore): Don't declare is_end_of_line. It's
10936 redundant, and triggers a VMS gcc compiler bug.
10937
10938 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
10939 current segment as an argument. (Ignored in all cases but VMS.)
10940 All callers and definitions changed.
10941
5e4cddb7
ILT
10942Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
10943
10944 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
10945 case compile again.
10946
f3ca2a64
KR
10947Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
10948
10949 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
10950 so "~0x80" won't be rejected.
10951
10952 * config/obj-elf.c: No longer include elf/reloc.h.
10953 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
10954 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
10955 routines.
10956 (obj_elf_xstab): New routine.
10957 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
10958 argument to s_ignore. Put "#if 0" around unused code.
10959 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
10960 Call elf_xstabs for .stabs and .xstabs operators.
10961
10962 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
10963
10964 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
10965 present.
10966
10967 * configure.in: mips-bsd configuration was missing format spec.
10968 Should use aout.
10969
10970 * Makefile.in (Makefile): Depends on configure.in.
10971
10972 * config/tc-mips.c (append_insn): Don't check for alignment of
10973 frag in memory; alignment of instructions in section is a separate
10974 matter.
10975
10976 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
10977 C availability.
10978
10979 * listing.h: Always provide function declarations, not macros, so
10980 pcc won't lose.
10981
7687d89b
JG
10982Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
10983
10984 * CONTRIBUTORS: Update Gilmore entry.
10985
fd4b7c25
KR
10986Mon Mar 1 12:03:16 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
10987
10988 * config/tc-sparc.c (sparc_ip): Correctly assemble prefetch
10989 instructions. Accept integer prefetch function numbers.
10990
7687d89b
JG
10991Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10992
fd4b7c25
KR
10993 * config/tc-sparc.c (s_xword): Now call big_cons, so large
10994 constants are accepted, but symbolic values are not. GCC will not
10995 generate the latter currently.
10996
7687d89b
JG
10997 * frags.c (frag_init): New function.
10998 (zero_address_frag, bss_address_frag): Now initialized at run
10999 time.
11000 * as.c (main): Call frag_init.
11001
160b7f0f
ILT
11002Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
11003
11004 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
11005 Don't unget ch2 if we didn't get it.
11006
0cca30f3
KR
11007Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
11008
11009 * doc/Makefile.in (TEXIDIR): Updated for new layout.
11010
11011 * config/tc-sparc.c (s_common): Add support for ELF version.
11012 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
11013 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
11014 New macros.
11015 (md_convert_frag): New macro.
11016
11017 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
11018 symbol, fix the offset so "+2" isn't required.
11019
11020 * config/tc-i960.c (line_comment_chars, line_separator_chars):
11021 Define as common/bss.
11022 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
11023 initializers are sufficient.
11024
11025 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
11026 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
11027 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
11028 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
11029 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
11030 "IGNORE_DEBUG" conditional, since both branches are identical.
11031 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
11032 referencing symbol structure members.
11033 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
11034
11035 * as.h (struct frag): Reordered a couple of fields for better
11036 packing.
11037
11038 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
11039 section info.
11040 (write_contents) [BFD_ASSEMBLER]: New function.
11041 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
11042 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
11043 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
11044 (fixup_segment): Make sure common-section symbols get treated the
11045 same as undefined symbols.
11046 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
11047 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
11048 section info.
11049 * write.h (fix_new): Update prototype.
11050
11051 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
11052 md_section_align, md_undefined_symbol): Don't provide prototypes
11053 if these are defined as macros.
11054 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
11055 section passed.
11056
11057 * symbols.c (symbol_new): Argument NAME is now pointer to const.
11058 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
69cb5925 11059 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
0cca30f3
KR
11060 BFD symbol.
11061 (colon): Display other/desc fields of redefined symbol only if
11062 S_GET_OTHER and S_GET_DESC are defined.
11063 (symbol_make): Argument NAME is now pointer to const.
11064 (symbol_find, symbol_find_base): Likewise.
11065 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
11066 * symbols.h: Fix prototypes for new const arguments. Add
11067 prototypes for BFD_ASSEMBLER S_* functions.
11068
11069 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
11070 for changing to an existing section.
11071 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
11072 called by subseg_new and subseg_set.
11073 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
11074 given section name and subseg number.
11075 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
11076 new section/subsection.
11077
11078 * read.c: Don't include ctype.h.
11079 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
11080 for now; should be machine-dependent.
11081
11082 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
11083 targets, forcing BFD use.
11084
11085Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
11086
11087 * config/tc-sparc.c: Use PARAMS macro for static function
11088 declarations. Use BFD_RELOC_ macros everywhere, with
11089 compatibility macros declared for non-BFD mode.
11090 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
11091 instead of enum reloc_type.
11092 (emit_sparc_reloc): Commented-out function deleted.
11093 (md_convert_frag): Deleted.
11094 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
11095 (md_apply_fix): Changed calling sequence (conditionally) for BFD
11096 version.
11097 * config/tc-sparc.h (md_convert_frag): New macro.
11098
11099 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
11100 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
11101 of referencing fields directly.
11102
11103 * write.c (cvt_frag_to_fill): New function; extracted from
11104 write_object_file.
11105 (write_object_file) [! BFD_ASSEMBLER]: Call it.
11106 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
11107 and set its size and flags.
11108
11109 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
11110 fields with BFD equivalents. Turn on back-pointers, and add
11111 target-specific fields at end.
11112
11113Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
11114
11115 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
11116 (write_object_file): Set it here instead, so that fixup_segment
11117 can see the correct value.
11118
11119Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
11120
11121 * write.c (write_object_file): Check for errors and warnings and
11122 bail out before processing contents.
11123 (chain_frchains_together_1): New function, does most of the work
11124 of remove_subsegs.
11125 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
11126 (remove_subsegs) [! BFD]: Call it.
11127 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
11128 structures and routines.
11129
11130 * config/obj-elf.*: New files.
11131
11132 * config/mips.mt, config/rs6000.mt: Deleted.
11133
11134 * config/h8300.mt: Don't specify compiler here.
11135
7687d89b 11136 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
11137 not the h8300 one.
11138 * config/tc-z8k.h: Comment fix.
11139
11140 * write.c: Reordered some functions for better inlining.
11141 (fixup_segment): Linkrelax code is no longer conditional on
11142 TC_I960.
11143
11144Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
11145
11146 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
11147 obj-coffbfd.h}: support for the H8/500
11148
11149Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
11150
11151 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
11152 * write.c (write_object_file): Not here.
11153 (fix_new): Initialize fx_addnumber.
11154
11155 * listing.c: Don't include target-cpu.h explicitly, since as.h
11156 includes it.
11157
11158Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
11159
11160 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
11161 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
11162 (struct fix): Reordered fields for compactness and efficiency.
11163 Converted some logical fields to 1-bit fields.
11164
11165 * config/obj-aout.h: Use PARAMS.
11166 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
11167 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
11168
11169 * read.c: Don't include listing.h; as.h includes it. Removed
11170 DONTDEF code.
11171 [BFD_ASSEMBLER]: Include subsegs.h.
11172 (old_buffer, new_broken_words): Default initialization is
11173 sufficient.
11174
11175 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
11176 to 0, define stdoutput.
11177 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
11178 Call bfd_set_arch_mach.
11179 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
11180 bfd_close_all_done. Call bfd_perror on failure.
11181 (output_file_append) [BFD_ASSEMBLER]: Don't define.
11182
11183 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
11184
11185 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
11186 if not MANY_SEGMENTS. Define new field bfd_section if
11187 BFD_ASSEMBLER.
11188 (seg_info): New macro.
11189
11190 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
11191 variables, and some irrelevant comments.
11192
11193 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
11194 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
11195 * configure.in: Permit --with-bfd-assembler now, with a warning.
11196 Variable need_bfd is now a boolean, as is new variable bfd_gas.
11197 Set BFDDEF and BFDLIB in Makefile when appropriate.
11198
11199 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
11200 (main): Refer to flag_always_generate_output instead of
11201 flagseen['Z'].
11202
11203 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
11204 (*_section) [BFD_ASSEMBLER]: Define them.
11205 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
11206 set section flags when appropriate.
11207 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
11208 section is not absolute, undefined, or an assembler internal one.
11209 (absolute_section, undefined_section): Always define.
11210 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
11211 switch statements into if-else trees.
11212 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
11213 SEG_BSS and SEG_DATA.
11214
11215 * as.h (frag_now_fix): New macro.
11216 * symbols.c (colon): Use it.
11217
11218Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
11219
11220 * config/tc-mips.c: Added mips support for mips-dec-bsd.
11221 * config/tc-mips.h: Added mips support for mips-dec-bsd.
11222 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
11223 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
11224 * configure.in: Added mips support for mips-dec-bsd.
11225 * atof-generic.c: Define TRUE and FALSE if not defined.
11226
11227Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
11228
11229 * version.c: Bumped version number to 1.93.05.
11230
11231Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
11232
11233 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
11234 (obj_emit_lineno): Don't need return at end of void function.
11235 (obj_symbol_new_hook): Ditto.
11236
11237 * config/tc-m68k.c: Removed some unused code.
11238 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
11239
11240 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
11241 offset field is set.
11242
11243Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
11244
fd4b7c25
KR
11245 * config/tc-sparc.c (sparc_ip): For %uhi and %ulo, if not
11246 ENV64, emit no reloc.
11247 (md_pseudo_table): For ".xword", call s_xword.
11248 (s_xword): New function.
11249
0cca30f3
KR
11250 * config/tc-sparc.c (architecture_requested, warn_on_bump,
11251 md_relax_table): Use default zero initialization.
11252 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
11253 latter, instead of selecting with preprocessor conditionals.
11254
11255Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
11256
11257 * configure.in: recognise all sparclite variants
11258
11259Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
11260
11261 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
11262 accidentally changed to use subseg_change where it should have
11263 been subseg_new.
11264
6c5f9998
KR
11265Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
11266
0bd77bc4
KR
11267 * expr.c (operand): If character other than comma or newline is a
11268 logical end-of-line character, use the newline case.
0cca30f3
KR
11269 From Eric Youngdale:
11270 (operand): Set X_add_number field for floating-point numbers.
11271 (operand): Treat zero byte as end-of-operand.
0bd77bc4 11272
6c5f9998
KR
11273 * configure.in (per-target): Look for with_bfd_assembler option.
11274 For now, only accept "no", until the merge is done.
11275
0cca30f3
KR
11276 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
11277 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
11278 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
11279 * read.c: Finish conversion to S_* macros in the VMS only
11280 parts of the program. Add "const" modifier to hex_value.
11281 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
11282 "ifdef OBJ_VMS".
11283 * expr.c: Add "const" modifier to hex_value.
11284 * symbols.c: Finish conversion to S_* macros in the VMS only
11285 parts of the program. Add "const" modifier to
11286 md_[long,short]_jump_size. Remove declaration of const_flag
11287 (which will be declared in obj-vms.h).
11288 * write.c: Add "const" modifier to md_[long,short]_jump_size.
11289 Fix arguments to VMS_write_object_file.
11290 * config-gas.com: New file. Script for VMS systems to set up the
11291 configuration to build gas for VMS, and create config.status.
11292 * make-gas.com: Redone to work with new scheme.
11293 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
11294 stabs directives.
11295 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
11296 will swap bytes if needed on a big endian system. Use throughout
11297 as needed.
11298 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
11299 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
11300 types of malformed stabs. Change parsing algorithm so that we are
11301 more certain of having all of the information that we need on hand.
11302 * obj-vms.c (final_forward_reference): New function, used to help
11303 resolve the data types of as many struct elements as possible
11304 when some part of the struct is not fully defined by the compiler.
11305 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
11306 stabs directives.
11307 * obj-vms.c (VMS_write_object_file): Define all vtable psects
11308 as symbols as well in the object file. Look for external functions
11309 that start with "__vt.", and turn them into variables, since the
11310 g++ compiler is incapable of doing this.
11311 * tc-vax.c: Add '1' option for backward compatibility with older GCC
11312 versions.
11313 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
11314 * input-scrub.c (as_where): Fix bug where as would crash if we did not
11315 have the name of the source file yet.
11316 * config/ho-vms.h: define HO_VMS, not HO_VAX.
11317
9d76a195
KR
11318Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
11319
11320 * read.c (s_data): Always use "data_section", since it'll map to
11321 SEG_DATA or SEG_E1 if needed.
11322 (s_lcomm): Likewise with bss_section.
11323 (s_fill): Use memset, not bzero.
11324
11325Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
11326
11327 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
11328 handling GDB symbol table data.
11329
11330 * config/obj-aout.h (segment_name): Delete definition.
11331 (seg_name): Delete declaration.
11332 * config/obj-bout.h (segment_name, seg_name): Ditto.
11333 * config/obj-vms.h (segment_name, seg_name): Ditto.
11334 * config/obj-coff.h (segment_name): Ditto.
11335 * config/obj-coffbfd.h (segment_name): Ditto.
11336
11337 * Changes for BFD_ASSEMBLER:
11338 * obj.h (obj_crawl_symbol_chain): Declare only if not
11339 BFD_ASSEMBLER.
11340 (obj_header_append, obj_pre_write_hook): Ditto.
11341 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
11342 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
11343 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
11344 otherwise, use seg_name array.
11345 (seg_name): Declare only if not BFD_ASSEMBLER.
11346 (section_alignment): Declare only if not BFD_ASSEMBLER.
11347 (big_section, reg_section, pass1_section, diff_section,
11348 absent_section, text_section, data_section, bss_section): If
11349 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
11350 mapping to segT enum values.
11351 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
11352 if these are used or defined, if BFD_ASSEMBLER.
11353 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
11354 subseg_new split into two functions.
11355 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
11356
11357 * as.h (volatile): Don't define if already defined.
11358 (had_errors, had_warnings): Provide prototypes for ANSI C even if
11359 NO_STDARG.
11360 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
11361 declare with format attribute for -Wformat checking.
11362
85825401
ILT
11363Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
11364
11365 * app.c, config/tc-*.c: Don't include read.h, since it is already
11366 included by as.h.
11367
11368 * These are based on patches from Minh Tran-le
11369 <mtranle@paris.intellicorp.com>.
11370 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
11371 obj_format coffbfd and gas_target i386coff for target.
11372 (i[34]86-*-isc*): New host (uses sysv).
11373 * config/i386aix.mt: Removed (no longer used).
11374 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
11375 (MINUS_G): Removed.
11376 (LDFLAGS): Added, defined as -shlib.
11377 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
11378 * config/te-sco386.h (LOCAL_LABEL): Don't define.
11379 (DOT_LABEL_PREFIX): Define.
11380 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
11381 name rather than L0\001.
11382 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
11383 local_bss_counter.
11384 * symbols.c, symbols.h (local_bss_counter): Removed.
11385 * write.c (write_object_file): bss no longer uses
11386 local_bss_counter. Pass correct data and bss size to
11387 VMS_write_object_file.
11388 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
11389 argument, rather than using local_bss_counter.
11390 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
11391 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
11392 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
11393 (size_section): Restored sanity check.
11394 (do_relocs_for): Base section address on s_paddr rather than
11395 computing it. Adjust a29k R_IHIHALF special case to account for
11396 section paddr (used to require paddr to be zero). If there are no
11397 reclos, set s_relptr to 0. Set relocation size in object_headers.
11398 (fill_section): Always set s_vaddr here, removing
11399 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
11400 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
11401 Set STYP_INFO for .comment.
11402 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
11403 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
11404 (crawl_symbols): Handle 8 character section name correctly. Use
11405 H_{SET,GET}_* macros.
11406 (do_linenos_for): Set lineno size in object_headers.
11407 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
11408 set s_vaddr here. If string_byte_count remains 4, set it back to
11409 0, and only write strings out if there are some. Call
11410 fill_section before do_relocs_for and do_linenos_for.
11411 (obj_coff_section): Handle optional quoted second argument giving
11412 section characteristics.
11413 (obj_coff_bss): Added to handle .bss.
11414 (obj_coff_ident): Added to handle .ident (puts string in .comment
11415 section).
11416 (obj_coff_lcomm): Put common symbols in .bss, not .data.
11417 (fixup_mdeps): Change to segment. Call frag_wane after
11418 md_convert_frag.
11419 (fixup_segment): Explicitly check S_IS_COMMON before making 386
11420 adjustment (already happened only for common symbols, but this is
11421 clearer).
11422 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
11423 * config/tc-i386.c (s_bss): Don't use if I386COFF.
11424 (md_pseudo_table): Ignore .optim and .noopt.
11425 (tc_coff_sizemachdep): New function.
11426 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
11427 compatibility.
11428 (LOCAL_LABEL): Removed definition.
11429 (DOT_LABEL_PREFIX): Defined.
11430
4539aa02
KR
11431Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
11432
6d331d71
KR
11433 * app.c (app_push): Use memcpy, not bcopy.
11434 (do_scrub_next_char): For \", return " not '.
11435 (symbol_chars): Now const.
11436
4539aa02
KR
11437 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
11438 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
11439
11440 * config/obj-coff.h: Don't use #elif.
11441
11442 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
11443 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
11444
3eb802b5
ILT
11445Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
11446
11447 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
11448 already defined.
11449
be06bdcd
SC
11450Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
11451
11452 * app.c (do_scrub_begin): allow single quote strings if so
11453 configured.
11454
11455 * config/*z8k*: checkpoint
11456
11457Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
11458
11459 * read.c (read_a_source_file): avoid calling xmalloc (0).
11460
016e0d42
ILT
11461Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
11462
11463 * listing.c: Call xmalloc, not malloc; don't declare malloc.
11464
11465 * Changes to support SCO 3.2v4:
11466 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
11467 SEG_BSS, fill with NOP_OPCODE.
11468 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
11469 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
11470 using ZERO_BASED_SEGMENTS.
11471 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
11472 never set segment address for SEG_E2 (.bss) and don't write out
11473 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
11474 (obj_coff_endef): Don't merge labels or symbols awaiting forward
11475 definitions, and don't merge tags with non-tags. Check for .bf
11476 rather than just checking whether the second character is b and
11477 the third character is f.
11478 (obj_coff_val): gcc can generate values which we don't handle
11479 correctly; discard information for now, since it only affects the
11480 debugging information.
11481 (tag_find_or_name): Don't insert tags in the symbol table.
11482 (yank_symbols): Don't merge labels.
11483 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
11484 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
11485 set segment address if ZERO_BASED_SEGMENTS.
11486 (obj_coff_section): Accept and ignore a trailing quoted string, as
11487 used in AT&T i386 syntax.
11488 (fixup_segment): Take segment as argument. On the i386, adjust PC
11489 relative addends by the segment vaddr.
11490 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
11491 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
11492 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
11493
db33220f
KR
11494Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
11495
016e0d42
ILT
11496 * config/obj-coffbfd.c: Include libcoff.h.
11497
db33220f
KR
11498 * version.c: Now version 1.93.
11499
dde624ef
KR
11500Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
11501
db33220f
KR
11502 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
11503 power-of-two alignment for .align.
11504
dde624ef
KR
11505 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
11506 and leave everything else alone.
11507
11508Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
11509
11510 * Makefile.in (as.new): Don't bother saving as.old.
11511
11512 * write.c: Conditionalize on OBJ_VMS, not VMS.
11513 (magic_number_for_object_file): Don't define if OBJ_VMS.
11514
11515 * config/obj-vms.c: Changes for traditional C.
11516
7f2cb270
KR
11517Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
11518
11519 * config/ho-generic.h (malloc, realloc): Declare.
11520
11521 * Lots of comment/whitespace changes.
11522
11523 * write.h (struct fix): Some fields reordered, narrowed.
11524
11525 * read.c (MASK_CHAR): Define using C types, not magic number.
11526
11527 * as.c, input-file.c: Deleted some unused code.
11528
11529 * app.c, as.h: Doc fix.
11530
11531 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
11532
11533 * as.h (xmalloc): Argument is long.
11534
11535 * xmalloc.c (error): Remove declaration; as.h takes care of it.
11536
0cca30f3
KR
11537 * doc/as.texinfo: Regrouped documentation of some command-line
11538 options. Updated options documentation for m68k. Some minor
11539 wording/punctuation changes.
11540
7f2cb270
KR
11541Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
11542
11543 * configure.in: Accept target OS "vms".
11544
11545 * symbols.c: Merged ANSI and non-ANSI function decls, using
11546 PARAMS macro.
11547
11548 * xmalloc.c: Just include as.h, don't bother trying to figure out
11549 other header files.
11550
11551 * strstr.c, strerror.c: Deleted.
11552 * Makefile.in: Deleted references.
11553
11554 * config/tc-ns32k.c: Don't include header file for string
11555 declarations; leave that to ho-*.h.
11556
11557Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
11558
11559 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
11560 imported from FSF sources.
11561
11562 * messages.c (strerror): Declare unconditionally.
11563
11564 * as.h: Delete alloca and register definitions.
11565
11566 * config/atof-ieee.c (mask): Now const.
11567
11568 * obstack.c, obstack.h: Deleted.
11569
11570 * as.h (flag_readonly_data_in_text): New flag.
11571 * as.c (main): Set it for -R.
11572
11573 * as.h (flag_suppress_warnings): New flag.
11574 * as.c (main): Set it for -W.
11575 * messages.c (as_warn): Check it instead of flagseen['W'].
11576
11577 * as.h (flag_always_generate_output): New flag.
11578 * as.c (main): Set it for -Z.
11579
11580 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
11581 * config/tc-a29k.h: Ditto.
11582 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
11583 macros.
11584
11585 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
11586 macro.
11587 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
11588 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
11589 write.h: Likewise.
11590 * read.c: Likewise.
11591
11592 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
11593 xrealloc from xrealloc.c.
11594 * xrealloc.c: Deleted.
11595 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
11596
11597 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
11598 or vms ho- files.
11599
11600 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
11601
11602 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
11603 don't initialize it with NULL.
11604
11605 * config/ho-vax.h (M_VAX): Deleted; was unused.
11606
11607 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
11608 New files imported from FSF version, contributed by Eric Youngdale.
11609 * README-vms-dbg, config/vms: Deleted.
11610
11611 * ChangeLog, config/ChangeLog: Merged.
11612
11613 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
11614 version.
11615
11616 * input-file.c (input_file_open): Eliminate call to setvbuf.
11617 [USG] (setbuffer): Deleted macro.
11618
6efd877d
KR
11619Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
11620
11621 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 11622 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
11623
11624 * configure.in: No te-386bsd.h file exists; don't try to use it.
11625
7f2cb270
KR
11626 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
11627
11628 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
11629 could be doing emulation.
11630
0cca30f3 11631Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
132239bf 11632
69cb5925 11633 z8000 documentation
0cca30f3
KR
11634 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
11635 all modified.
11636
6efd877d
KR
11637Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
11638
11639 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
11640
11641 * subsegs.h: add extern to segment_info declaration.
11642
11643 * read.h: added extern declarations for comment_chars,
11644 line_comment_chars, and line_separator_chars.
11645 read.c, app.c: removed definitions of comment_chars,
11646 line_comment_chars, and line_separator_chars.
11647
7f2cb270
KR
11648 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
11649 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
11650 the register name.
11651 (insert_reg): put REGISTER_PREFIX before register names before
11652 putting them in the symbol table.
11653 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
11654 M68KCOFF.
11655
11656 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
11657 section.
11658
11659 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
11660 comment_chars, line_comment_chars and line_seperator_chars
11661 consistently const, and always initialized them. Included read.h.
11662
11663Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
11664
11665 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
11666 constant will not fit in an immediate field.
11667 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
11668
11669Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
11670
11671 * obj-coff.c (callj_table): Delete global variable.
11672 (obj_emit_relocations): Define it locally here, and only if
11673 TC_I960 is defined.
11674
11675 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
11676 (m68k_ip): Don't warn about bignum used as float bit-pattern.
11677
11678 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
11679 with a single set using PARAMS macro.
11680
11681 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
11682 of 2.
11683
11684 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
11685
11686 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
11687 so widening works consistently.
11688
6efd877d
KR
11689Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
11690
11691 * version.c: Put conditional "const" before version_string, not
11692 before dummy function for VMS. Now version 1.91.03.
11693
11694 * app.c (do_scrub_next_char): Need double-\ before `000' to show
11695 printed rep of null character.
11696
7f2cb270
KR
11697Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
11698
11699 * obj-coffbfd.c (write_object_file): check return value of
11700 bfd_close_all_done.
11701
559d9aac
ILT
11702Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
11703
7f2cb270
KR
11704 * Support for i386-sysv.
11705 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
11706 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
11707 be used to set them all to zero as was done before.
11708 (fill_section): segment addresses now set in write_object_file.
11709 (fill_section): Don't set STYP_NOLOAD for .bss section.
11710 (fixup_segment): 386 uses strange common symbol format.
11711 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
11712 compatibility with SVR3.2 linker.
6efd877d
KR
11713 * configure.in: i386-sysv and i386-sco use coffbfd.
11714
559d9aac
ILT
11715 * app.c (do_scrub_next_char): discard whitespace after a label.
11716
0f8b9790
DZ
11717Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
11718
11719 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
11720 hosts, use the sysv configuration for solaris2
11721
7f2cb270
KR
11722Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
11723
132239bf 11724 fix i960+non-bfd coff bit rot.
7f2cb270
KR
11725 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
11726 support for C source listings. (obj_coff_endef): look in the right
11727 part of the symbol for the symbol name
11728
11729 * tc-m68k.c (get_num): make it work for all segments, not just the
11730 first three.
11731
984cf2d7
ME
11732Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
11733
69cb5925 11734 * configure.in: recognize i386-*-bsd emulation.
984cf2d7
ME
11735
11736Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
11737
11738 * configure.in: use the cpu-vendor-os triple for host and target
11739
7f2cb270
KR
11740Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
11741
11742 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
11743 * tc-z8k.c: lots of bug fixes
11744
11745Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
11746
11747 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
11748 #elif, since it is not supported by old compilers.
11749 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
11750 couple of expressions in tc-m68k.c.
11751
984cf2d7
ME
11752Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
11753
11754 * read.c (cons): If NO_RELOC is defined, use it.
11755
7f2cb270
KR
11756 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
11757
11758Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
11759
11760 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
11761 local labels to start with a .) and set REGISTER_PREFIX to %.
11762 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
11763
5a0fc1d4
JG
11764Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
11765
11766 * messages.c: Comment changes.
11767
4959cb7b
KR
11768Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
11769
11770 * as.h: Test if __STDC__ is defined only, don't test its value.
11771 * messages.c: If __STDC__ is not defined, define NO_STDARG.
11772
5e9d510e
BK
11773Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
11774
11775 * listing.c (debugging_pseudo): Add stabs and stabn as things to
11776 ignore.
11777
7f2cb270
KR
11778Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
11779
11780 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
11781 sections starting from zero, rather than making them consecutive.
11782 This makes subsequent reloc calculations easier, esp if the object
11783 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
11784 allocate lcomm in .data rather than in .bss. It seems that some
11785 tools can't cope with a non-zero sized bss before linkage.
132239bf 11786
7f2cb270
KR
11787Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
11788
11789 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
11790 throughout. That enum no longer means what we thought it meant.
11791
11792 * tc-m68k.c (md_assemble, md_parse_option): Handle new
11793 "-mno-688[58]1" options.
11794
11795 * tc-m68k.c: Added CPU32 support.
11796
11797Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
11798
11799 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
11800
569dac15
JW
11801Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
11802
11803 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
11804 Change LIBDEPS dependence to LIBS.
11805
efbfb612
ILT
11806Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
11807
11808 * Makefile.in (install): if $(tooldir) exists, install as in
11809 $(tooldir)/bin.
11810
987b1491
ILT
11811Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
11812
ca5e9d49
ILT
11813 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
11814 .word is < -32768 or > 32767. The -J flag causes the error to be
11815 ignored. This is to catch over-sized switches generated by gcc on
11816 systems which don't support the broken .word hack.
11817 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
11818 write.c (fixup_segment): check for signed .word overflow if
11819 WARN_SIGNED_OVERFLOW_WORD.
11820
987b1491
ILT
11821 * write.c (fixup_segment): fixed missing parens in expression
11822 checking for byte or word overflow.
11823
7f2cb270
KR
11824 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
11825 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
11826 WARN_SIGNED_OVERFLOW_WORD.
11827
11828 * obj-coffbfd.c (fixup_segment): fixed missing parens in
11829 expression checking for byte or word overflow.
11830
11831Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
11832
11833 Support for i386 coff
132239bf 11834 * obj-coffbfd.h : added stuff
7f2cb270
KR
11835 * tc-i386.c (tc_coff_fix2rtype): new function
11836 * tc-i386.h : new coff defines
11837
b1520b1f
ILT
11838Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
11839
11840 * input-scrub.c (input_scrub_push): call input_file_begin, not
11841 input_scrub_begin.
11842 messages.c (as_perror): print ": " between the passed in error and
11843 the strerror, like perror does.
11844
b53ccaac
ILT
11845Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
11846
11847 * Makefile.in: use gas_target instead of modifying target_cpu.
11848 From Steve Chamberlain:
11849 Makefile.in: Handle m68*-*-coff*.
11850 read.c, read.h: add mult argument to s_space
11851
7f2cb270
KR
11852 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
11853 Motorola and MIT syntax; gas can now assemble either type of
11854 file.
11855 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
11856 From Steve Chamberlain:
11857 m68kcoff.mt: for m68k COFF.
11858 obj-coffbfd.c: (fixup_mdeps) added
11859 (size_section) removed bad sanity check
11860 (fill_section) added rs_machine_dependent case
11861 (write_object_file) call fixup_mdeps
11862 (fixup_segment) set fx_subsy to 0.
11863 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
11864 handle m68k.
11865 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
11866 pseudo ops.
11867
db4d20e5
KR
11868Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
11869
11870 * Makefile.in (LIBS): Include opcode library.
11871
e53ab768
KR
11872Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
11873
11874 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
11875 including zero are accepted, pass +0.0.
11876
7e10f53c
ILT
11877Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
11878
11879 * Makefile.in: map "as" through program_transform_name when
11880 installing.
11881
0cca30f3
KR
11882 * doc/Makefile.in: map "as" through program_transform_name when
11883 installing.
11884
b0952e12
JW
11885Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
11886
11887 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
11888
7f2cb270
KR
11889Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
11890
11891 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
11892 tc-i960.c (md_ri_to_chars): Always output bout object file in
11893 little endian byte order (used to use endianness of host).
11894
b2f221a9
KR
11895Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
11896
11897 * config/tc-m68k.c (init_table): Now const. Always include 68851
11898 data, so that "bc" is available to 68040 cache instructions.
11899 Added "tt0", "tt1", and 68ec030 variants.
11900 (md_assemble): Complain if 68000 (only) and 68881 are specified.
11901 (enum _register): Added TT0, TT1.
11902 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
11903 line number correctly in "internal error" messages. Don't print
11904 architecture-mismatch message for operand errors.
11905
11906 From Colin Smith (colin@wrs.com):
11907 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
11908 than install_operand.
11909
ab737e51
SC
11910Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
11911
11912 * listing.c (buffer_line): rewind to the start of include
11913 files, they might be included twice.
11914
7f2cb270
KR
11915 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
11916
7121231f
ILT
11917Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
11918
11919 * Makefile.in: defined TARGET_CPU for C code so that it can choose
11920 one element of a family.
11921
7f2cb270
KR
11922 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
11923
11924 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
11925 so that we can assemble hand-written libgcc code.
11926
4772861e
KR
11927Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
11928
11929 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
11930 has already been formatted (but may still contain %-characters).
11931 (as_bad): Likewise.
11932
7f2cb270
KR
11933Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
11934
11935 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
11936 written with indirection on the last two operands, which can be
11937 either data or address registers. Added a new operand type 'r'
11938 which accepts either register type. Added '(' to notend stuff in
11939 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
11940
09952cd9
KR
11941Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
11942
11943 * as.h (enum _relax_state): Start off at one, not zero, to better
11944 catch uninitialized-variable errors.
11945 (linkrelax): Declare new variable.
11946
11947 * messages.c (warning_count, error_count): Default initializer is
11948 sufficient.
11949
11950 * write.c: Merged some declarations, using PARMS macro.
11951 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
11952 data_last_frag): No longer static.
11953 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
11954 defined, call it. Change segments before calling fixup_segment.
11955 (relax_align): If linkrelax, provide extra padding.
11956
11957 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
11958 their not having symbols associated.
11959
11960 * tc-i960.c (norelax, instrument_branches): Default initializer is
11961 sufficient.
11962 (linkrelax): Delete variable definition.
11963 (mem_fmt): Call fix_new with NO_RELOC.
11964 (tc_bout_fix_to_chars): Handle alignment relocs.
11965 (i960_handle_align): New function.
11966 * tc-i960.h (linkrelax): Delete declaration.
11967 (HANDLE_ALIGN): New macro; calls i960_handle_align.
11968 (NEED_FX_R_TYPE, NO_RELOC): New macros.
11969
a457f4d9
KR
11970Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
11971
11972 * config/sparc.mt: New file. Grab sparc opcode table from bfd
11973 library.
11974
4b857710
ILT
11975Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
11976
11977 * Makefile.in: always create installation directories. Removed
11978 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
11979 FLAGS_TO_PASS to recursive makes.
11980
0cca30f3
KR
11981 * doc/Makefile.in: always create installation directories.
11982
f7e9bc5a
SC
11983Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
11984
11985 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
11986 being used with args swapped, causing occasional lossage when
11987 refilling buffers after an include file.
11988
c1c28543
KR
11989Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
11990
11991 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
11992 version. Discard bogus DONTDEF version.
11993 (as_warn, as_bad, as_fatal): Likewise.
11994
2e20e59a
KR
11995Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
11996
11997 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
11998 selected architecture, print a message saying so and listing what
11999 processors support it, rather than saying "operands mismatch".
12000
c8c7e0bf
KR
12001Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
12002
12003 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
12004
12005 * config/ho-rs6000.h (M_RS6000): Don't define it.
12006 (free): Declare it.
12007 (BROKEN_ASSERT): Define it if not __STDC__.
12008
7f2cb270
KR
12009Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
12010
12011 * sparc.mt: New file.
12012
12013Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
12014
12015 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
12016 if TN_SUN3; otherwise align to 2**N-byte bounary.
12017
7fd3560a
SC
12018Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12019
12020 * read.c (s_fill): make the .fill size clamped error a warn and
12021 fix bug where 0's were always placed.
12022
7f2cb270
KR
12023 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
12024 two bytes of any constant with 0xff:
12025
62594bd7
SC
12026Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12027
12028 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
4f3569fa 12029 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 12030
7f2cb270
KR
12031Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
12032
12033 * tc-m68k.c (try_index): Error if index scaling specified and
12034 assembling for an older CPU than a 68020.
12035
680227f3
KR
12036Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
12037
12038 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
12039 fx_offset into account.
12040
c51ccfd5
KR
12041Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
12042
12043 * configure.in (mips host): Accept "ultrix" with version number.
12044
12045 * expr.c (floating_constant): Separate "=-" to avoid confusing
12046 ancient or broken compilers.
12047
12048 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
12049 processor/opcode mismatch, so reword the error message.
12050 (md_assemble): If no CPU has been set (even if FPU/PMMU
12051 characteristics have been), default to 68020. Don't need extra
12052 quotes around error string.
12053
14f1fc24
JW
12054Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
12055
12056 * read.c (potable): Revert sac's incorrect change made Jul 13.
12057 Align really is supposed to be ptwo not nbytes.
12058
12059Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
12060
12061 * Makefile.in: _Do_ include libiberty. (from sef)
12062
12063Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
12064
12065 * expr.c (integer_constant): Handle "0f" and "0b" label references
12066 properly.
12067
462088b8
SC
12068Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12069
12070 * write.c (fixup_segment): if relaxing, don't do anything.
12071 * config/obj-bout.[ch] : maintain the a_relaxable file header info
12072 * config/tc-i960.c: new option -linkrelax
12073
12074Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12075
12076 * expr.c (expr): allow SEG_BSS in expressions
12077 * read.c (potable): align should be nbytes, not ptwo!
12078 * write.c (write_object_file): extra glue for new bss attributes
12079 (relax_segment): SEG_BSS is ok now
12080 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
12081
7f2cb270
KR
12082Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
12083
12084 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
12085
462088b8
SC
12086Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
12087
12088 * configure.in: recognize m680x0 as having sun3 emulation mode for
12089 vxworks environment.
12090
12091
0b0b5dba
DHW
12092Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
12093
12094 * Makefile.in: Add program_suffix (parallel to program_prefix)
12095
7c2d4011
SC
12096Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12097
12098 * app.c (process_escape): new function to handle escapes the right
12099 way, (do_scrub_next_char): use new function
12100 * cond.c (s_ifdef): do ifdef/ifndef right
12101 * read.c (s_fill): make the , expressions optional like the doc
12102 says
12103 * config/tc-h8300.[ch]: better warnings
12104
90d49457
SC
12105Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12106
65bfcf2e
SC
12107 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
12108 as data0_frchainP
12109
12110 * write.c (write_object_file): various changes to handle data in
132239bf 12111 the BSS segment in much the same was as stuff in the DATA segment.
65bfcf2e 12112
7f2cb270
KR
12113 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
12114 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
12115 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
12116 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
12117 it into SEG_BSS
462088b8 12118
f8701a3f
SC
12119Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12120
12121 * expr.c(expr): allow SEG_REGISTER in expressions.
12122 * read.c(pseudo_set): register expressions can be the source of a
12123 set.
12124 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
12125 goto SEG_TEXT (if a.out)
12126 * write.c (write_object_file): If a.out don't use the old way for
12127 -R.
12128 * config/obj-a.out (s_sect): complain if the user tries to use a
12129 subsegment with a value which might interfere with out -R hackery.
12130 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
12131 rather than use ugly if tree. (init_regtable): insert register
12132 names into symbol table.
12133
ebfb4167
MT
12134Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
12135
12136 * write.c (write_object_file): keep the fix_tail clean, which
12137 fixes a bug in -R where relocations were being lost.
12138
12139Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
12140
12141 * configure.in: recognize m680x0 as having sun3 emulation mode for
12142 vxworks environment.
12143
12144Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
12145
69cb5925 12146 * configure.in: recognize m680x0 as an m68k
ebfb4167 12147
dfd53fe9
JW
12148Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
12149
12150 * configure.in: Recognize sparclite as a sparc variant.
12151
7f2cb270
KR
12152 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
12153 -Asparclite flag.
12154
d312e231
SC
12155Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12156
12157 * config/tc-a29k.c: lint
12158 * listing.c, expr.c: patches from Andrew Smith
12159
0cca30f3
KR
12160Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
12161
12162 * doc/Makefile.in: use m4 rather than gm4.
12163
7f2cb270
KR
12164Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12165
12166 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
12167 calc the base of relocs correctly.
12168 * tc-a29k.c (parse_operand): allow expressions to be in any section.
12169
d312e231
SC
12170Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
12171
12172 * as.c, write.c: use -K rather than -k for the broken word warning
12173 option.
12174
fa493b93
RP
12175Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
12176
12177 * Makefile.in: do not print recursion lines.
12178
d96c09ed
RP
12179Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
12180
12181 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
12182
12183Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
12184
12185 * write.c (write_object_file): For b.out format, round up section
12186 start addresses to match required alignment.
12187
81484684
KR
12188Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
12189
12190 * Makefile.in (install): Install into $(tooldir)/bin, since that's
12191 where gcc looks for it.
12192
3876b4c5
SEF
12193Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
12194
12195 * Makefile.in: Changed some lines to be less confusing for some
12196 makes.
12197
12198 * input-file.c: Conditionalize on _IOFBF, not VMS.
12199
12200 * read.c, write.c: Change a series of ifdef/elif to
12201 ifdef/else/ifdef etc.
12202
12203Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
12204
12205 * symbols.c (fb_label_init): fix sizeof to memset.
12206
95a925b8
RP
12207Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
12208
3876b4c5
SEF
12209 * Makefile.in: install the man page.
12210
95a925b8
RP
12211 * Makefile.in: pass down MAKEINFO explicitly on info.
12212
0cca30f3
KR
12213 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
12214
5d53038b
SC
12215Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
12216
12217 * flonum-const.c: renamed flonum-konst.c to stop dos name
12218 conflict.
12219
7f2cb270
KR
12220Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
12221
12222 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
132239bf 12223 tc-m68k.h to te-sun3.h.
7f2cb270 12224
8c1b25e4
RP
12225Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
12226
12227 * configure.in: vxworks68 gets te-sun3.h.
12228
12229 * expr.c: remove limitation that local_labels_dollar or
12230 local_labels_fb must be < 10.
12231
12232 * symbols.c: remove local_labels_dollar, replace with a function
12233 interface for a sparse array. All users adjusted.
12234
7f2cb270
KR
12235 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
12236
0cca30f3
KR
12237Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
12238
12239 * doc/Makefile.in: commented out line for building as-all.texinfo.
12240 This is temporary.
12241
12242 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
12243
8c1b25e4
RP
12244Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
12245
12246 * Makefile.in: added check target.
12247
12248Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
12249
12250 * Makefile.in: added tooldir and program_prefix.
12251
12252Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
12253
12254 * write.{c,h} (fix_new): Make these declarations consistent.
12255
1651b22d
MT
12256Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
12257
12258 * Makefile.in (strerror.o): Add rule so that broken Sun make can
12259 work in subdirs.
12260
5373c439
SC
12261Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
12262
12263 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
12264
12265 * expr.c (operand): if can't work out what sort of operand it is,
12266 then look through FLT_CHARS for a hint.
12267
8c1b25e4
RP
12268Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
12269
12270 * Makefile.in, configure.in: removed traces of namesubdir,
12271 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
12272 copyrights to '92, changed some from Cygnus to FSF.
12273
0cca30f3
KR
12274 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
12275 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
12276 copyrights to '92, changed some from Cygnus to FSF.
12277
f24f7577
SC
12278Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
12279
14d3e47b
SC
12280 * expr.c: If an expression is single comma, then return with
12281 SEG_ABSENT rather than an error - since the sparc front end does
132239bf 12282 really strange things with things like fbge,a
14d3e47b 12283
f24f7577
SC
12284 * as.h: include bfd.h if using many sections
12285 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
12286 local labels didn't work.
12287 * listing.c (list_symbol_table): don't core dump when there's no
12288 symbol there.
12289 * write.c, write.h: call fix_new with the right number of args on
12290 the H8.
12291 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
12292 errors nices
12293
c593cf41
SC
12294Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
12295
12296 * app.c: MRI compatibility - allow single quote to start a string.
12297 * as.c: fix typo recently introduced.
12298 * as.h : Don't include aout/reloc.h - it's not right for COFF!
12299 * expr.c: Much rewriting, to accomodate MRI syntax for
12300 expressions. Also easier to read now.
12301 * listing.c: Put back defuns
12302 * read.c: modified to accept MRI syntax, put back listing pseudo
12303 ops so that an assembler built with NO_LISTING ignores list ops
12304 rather than pukes.
12305 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
12306 machine is a SPARC or a 29K.
12307 * config/obj-aout.c: added s_sect pseudo op
12308 * config/obj-coffbfd.c: lints, set the filehdr flags right and
12309 fill in the timestamp.
12310 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
12311 anymore, define all the relocs which the tc-<x> bit will use so we
12312 can translate from them to the coff types.
12313 * config/tc-a29k.c: reloc_type isn't ane enum any more
12314 * config/tc-m68k.c: Added NO_RELOC definition.
12315
2d97273c
RP
12316Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
12317
c593cf41
SC
12318 * Makefile.in: put header files before C source for TAGS; remove
12319 references to non-existent syscalls.h.
12320
2d97273c
RP
12321 * read.c, write.c subsegs.c: back out the .bss changes.
12322
7f2cb270
KR
12323 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
12324
12325 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
12326
12327 * a.out.h: removed.
12328
6d5460ab
RP
12329Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
12330
12331 * symbols.c (local_label_name): symbols now start with ^A.
12332
12333 * read.c, subsegs.c, write.c obj-coff.c: added handling of
12334 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
12335 generate these sections. .align: will use NOP_OPCODE or 0
12336 for padding. This is just for being nice to the
12337 disassembler.
12338
12339 * expr.c (operand): changed to generate local label "\001L0"
12340 starting with a ^A so that it is recognized as a local label.
12341
12342 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
12343
7f2cb270
KR
12344 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
12345 i/o opcodes - inb, inw, outb and outw. string manipulation with
12346 att syntax - scmp, slod, smov, ssca, ssto.
12347
12348 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
12349 to just after .file .
12350
12351 In obj_crawl_symbol_chain() where it tries to put the external
12352 symbols apart, with the condition:
12353 (!S_IS_DEFINED(symbolP) &&
12354 !S_IS_DEBUG(symbolP) &&
12355 !SF_GET_STATICS(symbolP))
12356 it was moving too many symbols out. So I switch it back to the
12357 condition:
12358 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
12359
12360 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
12361 so that we don't use the F_RELFLG which make the linker complain
12362 that somebody has stripped the relocation info.
12363
12364 Also, the AIX ld program require that the relocation table
12365 is sorted by r_vaddr like the standard ATT assembler does.
12366
12367 [he also changed the sizeof(struct ...)'s into the coff
12368 style FOOSZ macros. I'm not sure this is right, but I can't
12369 remember why. xoxorich.]
12370
d6e344db
RP
12371Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
12372
12373 * Makefile.in, configure.in, doc: use the doc. Build it, install
12374 it, clean it, etc.
12375
eb9eacd3
RP
12376Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
12377
aa3782d2
RP
12378 * read.c: white space and comments only.
12379
f816adbc
RP
12380 * configure.in: use the new atof-ns32.c for ns32k.
12381
eb9eacd3
RP
12382 * write.c: comment change only.
12383
7f2cb270
KR
12384 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
12385 aren't yet integrated.
12386
12387 * tc-i860.[hc]: blew off the dust. Something must still be done
12388 about conflicting relocation types.
12389
12390 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
12391 real thing.
12392
12393 * tc-i960.c, tc-sparc.c: white space and comments only.
12394
12395 * tc-a29k.h: delete duplicate macro definition.
12396
12397 * new file atof-ns32k.c copied from hack's last unreleased gas.
12398
542e1629 12399Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 12400
eb9eacd3
RP
12401 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
12402 rather than abort.
132239bf 12403
542e1629
RP
12404 * nearly everything. flush ChangeLog, package as gas-1.92.1.
12405 ChangeLog's prior to this are sketchy at best. I have logs.
12406 They just aren't ChangeLogs.
This page took 0.755221 seconds and 4 git commands to generate.