* config/tc-mips.c (macro): The 4650 doesn't permit M_LDC1_AB,
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
1c6f3441
ILT
1Mon Dec 22 12:54:07 1997 Ian Lance Taylor <ian@cygnus.com>
2
3 * config/tc-mips.c (macro): The 4650 doesn't permit M_LDC1_AB,
4 M_SDC1_AB, M_L_DOB, M_L_DAB, M_S_DAB, or M_S_DOB.
5 (mips_ip): Always check for FP_D, not just for instructions that
6 are not part of the regular ISA.
7
76b53472
RH
8Thu Dec 18 16:49:28 1997 Richard Henderson <rth@cygnus.com>
9
10 * config/tc-d10v.c (build_insn): Make `number' a long for 64-bit hosts.
11
915f6ba3
RH
12Thu Dec 18 16:42:57 1997 Richard Henderson <rth@cygnus.com>
13
14 * config/tc-alpha.c (cpu_types): 21164pc/pca56 does not have CIX.
15
b463948b
JL
16Wed Dec 17 21:23:07 1997 Jeffrey A Law (law@cygnus.com)
17
18 * expr.c (integer_constant 32bit bignum): Mask off bits outside
19 the range we care about.
20
343b2ab8
MM
21start-sanitize-d30v
22Wed Dec 17 15:29:03 1997 Michael Meissner <meissner@cygnus.com>
23
24 * config/tc-d30v.c (md_shortopts): Add 'n' and 'N' options.
25 (exec_type_enum): Enumeration giving all of the exec types.
26 (warn_nops): New static variable to give nop warning level.
27 ({cur,prev}_mul32_p): New static variable to keep track of whether
28 the current/previous instruction is a 32-bit multiply.
29 (Optimizing): Make static.
30 (NOP{2,_LEFT,_RIGHT}): Macros for word of nops and left/right
31 nops.
32 (d30v_insert_operand): Delete declaration of unused function.
33 (write_2_short): Make exec_type argument enum, not int.
34 (parallel_ok): Ditto.
35 (check_range): Delete unused variable(s).
36 (build_insn): Ditto.
37 (find_format): Ditto.
38 (md_apply_fix3): Ditto.
39 (md_show_usage): Document -n and -N.
40 (md_parse_option): Parse -n and -N.
41 (write_1_short): If -n, warn about adding a nop. Use
42 NOP_{LEFT,RIGHT}.
43 (write_2_short): Use enumeration values instead of hard coded
44 integers. Reset exec_type for default operations. For explicit
45 parallel operations, call parallel_ok to make sure everything is
46 ok. If writing out a parallel operation, and the previous
47 instruction was a 32-bit multiply, indicate current instruction
48 is.
49 (parallel_ok): Allow add/tx ... to be done in parallel with
50 another add/tx ... assuming the gpr registers don't overlap.
51 (md_assemble): Use exec type enumeration values, not hard coded
52 ints. Check for loads or 16-bit multiplies following in the next
53 cycle after a 32-bit multiply. Add nops if that is the case.
54 (do_assemble): Copy prev_mul32_p to cur_mul32_p, and set
55 cur_mul32_p if current instruction is a 32-bit multiply.
56 (find_format): Change spacing and layout.
57
58end-sanitize-d30v
37f82cb4
FF
59start-sanitize-tic80
60Tue Dec 16 16:55:45 1997 Fred Fish <fnf@cygnus.com>
61
62 * config/tc-tic80.c (tic80_relax): New static variable.
63 (md_longopts): Add new OPTION_RELAX and OPTION_NO_RELAX options.
64 (md_parse_option): Handle new relax options.
65 (md_show_usage): Document new relax options.
66 (find_opcode): Don't use short forms of PC relative branches if
67 tic80_relax is set.
68
69end-sanitize-tic80
e0882f34
MM
70start-sanitize-d30v
71Tue Dec 16 15:26:03 1997 Michael Meissner <meissner@cygnus.com>
72
73 * config/tc-d30v.c (parallel_ok): Remove non-register bits from
74 used/set flag fields. Make flag vars unsigned long. Use
75 FLAG_A{0,1} for accumulators. Allow any 2 insns to be done in
76 parallel if they use the same conditional flag with reversed
77 meaning. Allow 2 add/sub insns that set the carry or overflow
78 flags but do not query them to be done in parallel. Don't allow 2
79 word store operations to be done in parallel with ADDppp or
80 SUBppp. Don't allow loads to be done in parallel with 16 bit
81 multiplies.
82
83end-sanitize-d30v
9efc7d59
NC
84Tue Dec 16 09:20:43 1997 Nick Clifton <nickc@cygnus.com>
85
86 * config/tc-arm.c: Prevent use of interworking support for
87 non-COFF targets.
88
a450e9f4
NC
89Mon Dec 15 15:20:32 1997 Nick Clifton <nickc@cygnus.com>
90
ee73be40
NC
91 * doc/all.texi: Add M32R cpu.
92
93 * doc/as.texinfo: Add documentation of m32r processor.
94
95 * doc/c-m32r.texi: New file, documenting m32r specific features.
96
d745e6d9 97start-sanitize-m32rx
a450e9f4
NC
98 * config/tc-m32r.c (allow_m32rx): New function.
99 (enable_m32rx): New variable.
100 (md_pseudo_table): Added .m32r and .m32rx pseudo ops
101 (md_show_usage): Document new --m32rx command line option.
102 (md_parse_option): Implement new --m32rx command line option.
d745e6d9 103end-sanitize-m32rx
a450e9f4 104
09162f6f
JL
105Mon Dec 15 10:32:28 1997 Jeffrey A Law (law@cygnus.com)
106
107 * config/tc-mips.c (mips_ip): Correctly insert 'P' operands into
108 the instruction.
109
599ef811
FF
110start-sanitize-tic80
111Fri Dec 12 11:44:20 1997 Fred Fish <fnf@cygnus.com>
112
113 * config/tc-tic80.c (build_insn): Handle instructions that have
114 long (32 bit) PC relative offsets. Fix places that previously
115 misused R_MPPCR for 15 bit offsets to use the new R_MPPCR15W type.
116 (md_apply_fix): Add case to handle long PC relative offsets.
117
118end-sanitize-tic80
f520aaee
NC
119Fri Dec 12 10:35:01 1997 Nick Clifton <nickc@cygnus.com>
120
121 * doc/c-arm.texi (ARM Options): Document support for new ARM
122 processor names.
123
124 * config/tc-arm.c (md_parse_option): Add support for new ARM
125 processor names.
126
290c51b5
RH
127Thu Dec 11 17:46:50 1997 Richard Henderson <rth@cygnus.com>
128
129 * config/tc-m68k.c (m68k_ip): Don't overwrite opcode table data.
130 (insop, m68k_ip): Make `opcode' const so it doesn't happen again.
131
df09ec8d
NC
132Fri Dec 5 11:23:59 1997 Nick Clifton <nickc@cygnus.com>
133
290c51b5
RH
134 * config/tc-v850.c (md_assemble): Fix BFD_RELOC_32 against a
135 symbol + offset.
136
df09ec8d
NC
137 * config/tc-v850.h (ELF_TC_SPECIAL_SECTIONS): Use
138 SHT_V850_{S|T|Z}COMMON to mark special common sections.
139
d4b2cc56
NC
140Tue Dec 2 17:05:13 1997 Nick Clifton <nickc@cygnus.com>
141
142 * config/tc-v850.c: Brought up to date with the branch.
143
6fdb746d
JR
144Mon Dec 1 20:24:18 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
145
146 * config/tc-sh.c (SWITCH_TABLE_CONS): Handle (fix)->fx_size == 1.
147 (SWITCH_TABLE): Handle BFD_RELOC_8.
148 (md_apply_fix): #ifndef BFD_ASSEMBLER code: Handle fixP->fx_size == 1.
149 (coff_reloc_map): Add BFD_RELOC_8_PCREL entry.
150 (sh_coff_reloc_mangle): SWITCH_TABLE case: Handle BFD_RELOC_8.
151
152Sat Nov 22 16:19:22 1997 Richard Henderson <rth@cygnus.com>
153
154 * tc-alpha.c (range_signed_16, range_signed_32): Work around an
155 apparent bug in gcc's long long support crossing from x86.
156
33cb4925
NC
157Sat Nov 22 14:26:09 1997 Nick Clifton <nickc@cygnus.com>
158
159 * config/tc-arm.c: Brought up to date with latest changes on arm
160 branch.
161
c699ff04
ILT
162Sat Nov 22 15:50:09 1997 Klaus Kaempf <kkaempf@progis.de>
163
8046e281
ILT
164 * config-gas.com: Get version info from configure.in.
165
db5bb86e
ILT
166 * makefile.vms: include depend.obj in OBJS.
167
6dbf3268
ILT
168 * config/tc-alpha.c (s_alpha_section): Remove ".lcomm" handling.
169
c699ff04
ILT
170 * config/tc-alpha.c (alpha_basereg_clobbered): Remove variable and
171 all corresponding code.
172
19bc147e
NC
173Thu Nov 20 15:06:08 1997 Richard Earnshaw <rearnsha@arm.com>
174
175 * config/tc-arm.h (TARGET_FORMAT for generic a.out targets): Allow
176 run-time endian selection.
177
04b26b00
RH
178start-sanitize-sh4
179Wed Nov 19 17:44:42 1997 Richard Henderson <rth@cygnus.com>
180
181 * tc-sh.c (parse_reg): Properly quote for fv4.
182
183end-sanitize-sh4
942f33ae
ILT
184Wed Nov 19 23:46:18 1997 Ian Lance Taylor <ian@cygnus.com>
185
186 * symbols.c (resolve_symbol_value): Add missing breaks in case on
187 symbol value operator.
188
35baf6dd
KR
189start-sanitize-vr5400
190Wed Nov 19 02:24:07 1997 Ken Raeburn <raeburn@cygnus.com>
191
192 * config/tc-mips.c (gpr_interlocks, cop_interlocks): VR5400 has
193 these.
194
195end-sanitize-vr5400
fe00b2ed
JR
196Tue Nov 18 18:45:14 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
197
198 * config/tc-d10v.c (parallel_ok, find_opcode):
199 Split OPERAND_FLAG into OPERAND_FFLAG and OPERAND_CFLAG.
200
8d869386
FF
201Sun Nov 16 10:05:07 1997 Fred Fish <fnf@cygnus.com>
202
203 * config/obj-coff.c (fixup_segment): Cast second arg of
204 md_apply_fix3 call to type "valueT *".
205
206Thu Nov 13 13:53:10 1997 Andrew Cagney <cagney@b1.cygnus.com>
207
208 * configure.in (emulations): Make FreeBSD an aout / i386bsd
209 variant.
210 * configure: Re-generate.
211
9bb4d384
GRK
212Thu Nov 13 11:07:14 1997 Gavin Koch <gavin@cygnus.com>
213
214 * config/tc-mips.c (macro_build): Use the membership field
215 for INSN_MACRO's.
216 (mips_ip): Same.
217
832ef2cc
JR
218Thu Nov 13 02:04:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
219
220 * config/tc-d10v.c (find_opcode): For OPCODE_FAKE, add check for
221 first argument if it's supposed to be a register.
222
42444087
GRK
223start-sanitize-tx49
224Wed Nov 12 10:06:27 1997 Gavin Koch <gavin@cygnus.com>
225
226 * config/tc-mips.c (mips_4900): Added.
227 (hilo_interlocks): Added mips_4900.
228 (md_begin): Set default for mips_4900.
229 (macro_build,mips_ip): Test for INSN_4900 if mips_4900.
230 (md_longopts): Add "m4900" and "no-m4900".
231 (md_parse_option): Handle above options.
232
233end-sanitize-tx49
f2fafcca
JR
234Tue Nov 11 19:25:05 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
235
236 * app.c (do_scrub_chars): If d10v, re-insert a space before
237 a '#' when in state 10.
238
5de020b4
ILT
239Tue Nov 11 13:33:15 1997 Ian Lance Taylor <ian@cygnus.com>
240
241 * config/tc-h8300.c: Include "subsegs.h".
242 (tc_reloc_mangle): Handle references to symbols which are not
243 being output, so that references to `.' work.
244
f19d08dc
ILT
245Mon Nov 10 13:43:33 1997 Ian Lance Taylor <ian@cygnus.com>
246
77635763
ILT
247 * config/tc-m68k.c (m68k_ip): Call add_fix when needed for '_'
248 case.
249
f19d08dc
ILT
250 * macro.c (sub_actual): If we don't find a parameter for an &,
251 just substitute &.
252
b3ed1af3
KR
253Fri Nov 7 21:29:32 1997 Ken Raeburn <raeburn@cygnus.com>
254start-sanitize-vr5400
255
256 * config/tc-mips.c (mips_ip): Added cases for "e", "%", and "P"
257 operand types.
258 (hilo_interlocks): VR5400 has interlocks.
259 (md_begin): Expect mips64vr5400, not mips64r5400.
260end-sanitize-vr5400
261
262 * config/tc-mips.c (mips_ip): In default case, call as_bad
263 instead of fprintf, to get "assembler messages:" message output
264 before instead of after.
265
4afb407d
DE
266Fri Nov 7 10:36:22 1997 Doug Evans <devans@canuck.cygnus.com>
267
268 * frags.h: Handle multiple inclusion.
269
070937ba
DE
270Wed Nov 5 10:51:49 1997 Doug Evans <devans@canuck.cygnus.com>
271
272 Based on a patch from Ian.Dall@dsto.defence.gov.au.
273 * as.h (struct frag, frag support): Moved from here.
274 * frags.h: To here.
275 (struct frag, member tc_frag_data): New member if TC_FRAG_TYPE
276 is defined.
277 (struct frag, member fr_cgen): Renamed from fr_targ.cgen.
278 * cgen.c (cgen_asm_finish_insn): Update.
279 * config/tc-m32r.c (md_estimate_size_before_relax): Update.
280 * config/tc-m32r.h (TC_FRAG_INIT): Renamed from md_init_frag.
281 (md_convert_frag): Ditto.
282 * config/tc-ns32k.h (TC_FRAG_TYPE): Define.
283 (frag_opcode_frag,frag_opcode_offset,frag_bsr): Update.
284 (TC_FRAG_INIT): Update.
285
d57d82d7
DE
286Tue Nov 4 16:35:57 1997 Ian Dall <Ian.Dall@dsto.defence.gov.au>
287
288 * write.c (print_fixup): Use TC_FIX_DATA_PRINT (if defined) to
289 print out MD fields of fix.
290 * frags.c (frag_var, frag_variant): Use TC_FRAG_INIT macro (if
291 defined) to initialize MD fields in frag.
292 * as.h (struct frag, ns32k support): Rename ns32k to fr_ns32k.
293 Delete pcrel_adjust. Add fr_opcode_fragP, fr_opcode_offset.
294 * config/tc-ns32k.h: Add comments. Remove obsolete
295 BFD_FAST_SECTION_FILL definition, change prototypes for
296 fix_new_ns32k and fix_new_ns32k_exp to add new arguments
297 opcode_frag and opcode_offset and remove pcrel_adjust.
298 (TC_FIX_TYPE): add opcode_fragP and opcode_offset fields.
299 (TC_FIX_DATA_PRINT): new macro to print out TC_FIX_TYPE.
300 (TC_FRAG_INIT): new macro to initialize machine dependent field in
301 frags.
302 (frag_opcode_frag, frag_opcode_offset, frag_bsr): macros to access
303 MD fields in frag structure.
304 (fix_im_disp, fix_bit_fixP, fix_opcode_frag, fix_opcode_offset,
305 fix_bsr): macros to access MD fields in fix structure.
306 * config/tc-ns32k.c: Avoid overlength lines. Align comments. Don't
307 use struct opcode_location as these fields are now in the frag
308 structure.
309 (convert_iif): Call frag_more as it is needed instead
310 of trying to allocate for the whole insn. Avoid call of frag_more
311 with negative argument.
312 (md_pcrel_adjust, md_fix_pcrel_adjust, md_apply_fix,
313 md_estimate_size_before_relax, md_pcrel_from,
314 tc_aout_fix_to_chars): use accessor macros to get md fields in fix
315 and frag structures.
316 (fix_new_ns32k, fix_new_ns32k_exp): add new arguments opcode_frag and
317 opcode_offset and remove pcrel_adjust.
318 (convert_iif, cons_fix_new_ns32k): call fix_new_ns32k,
319 fix_new_ns32k_exp with changed arguments.
320
1724c79e
GRK
321Mon Nov 3 13:30:17 1997 Gavin Koch <gavin@cygnus.com>
322
d57d82d7
DE
323 * tc-mips.c (md_begin): Reorganize setting of default values so
324 that mips_cpu depends on TARGET_CPU, and mips_opts.isa depends on
325 mips_cpu.
326 (md_parse_option): Remove all code that sets defaults; md_begin
327 handles all of this now.
1724c79e 328
0ac53ff0
ILT
329Sun Nov 2 14:46:09 1997 Ian Lance Taylor <ian@cygnus.com>
330
331 * Makefile.am (STAGESTUFF): Change bin_PROGRAMS to
332 noinst_PROGRAMS.
333 (bootstrap, bootstrap2, bootstrap3): Likewise.
334 * Makefile.in: Rebuild.
335
336 * config/tc-ppc.c (ppc_fix_adjustable): Don't adjust relocs in the
337 TOC section to be against the csect.
338
aa2e0460
KR
339Fri Oct 31 18:19:55 1997 Ken Raeburn <raeburn@cygnus.com>
340
341start-sanitize-vr5400
342 * config/tc-mips.c (mips_5400): New variable.
343 (md_begin, md_parse_option): Handle 5400 options/names.
344 (macro_build, mips_ip): Check for 5400-specific instructions.
345 (md_longopts, OPTION_M5400, OPTION_NO_M5400): More command-line
346 support for 5400.
347
348end-sanitize-vr5400
349 * config/tc-mips.c (validate_mips_insn): New function, checks
350 match versus mask bits, and also verifies that all bits to be
351 output are actually specified somewhere.
352 (md_begin): Call it for 32-bit instructions, instead of doing
353 match/mask check here. In case of failure, print a message, but
354 check the rest of the opcode table before exiting.
355
6e3fcdf0
NC
356Thu Oct 30 13:46:20 1997 Nick Clifton <nickc@cygnus.com>
357
358 * config/tc-arm.c (md_apply_fix3): Fix thumb ADR pseudo op. Patch
359 from Tony Thompson at ARM: athompso@arm.com
360
42cf6555
MM
361start-sanitize-d30v
362Thu Oct 30 11:11:26 1997 Michael Meissner <meissner@cygnus.com>
363
364 * config/tc-d30v.c (build_insn): Allow odd registers for ld2w and
365 friends.
366
367end-sanitize-d30v
4ebda395
GRK
368start-sanitize-tx49
369Wed Oct 29 16:22:38 1997 Gavin Koch <gavin@cygnus.com>
370
371 * config/tc-mips.c (hilo_interlocks): True for tx49.
372 (md_begin): Add mips64tx49.
373 (md_parse_option): Add 4900 cpu.
374
375end-sanitize-tx49
c14d0cc0
ILT
376Fri Oct 24 15:56:47 1997 Ian Lance Taylor <ian@cygnus.com>
377
e59390a7
ILT
378 * config/tc-ppc.c (md_assemble): When handling @l, always sign
379 extend if the operand expects a signed value.
380
c14d0cc0
ILT
381 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Don't define; use
382 default which is to permit dollar labels.
383
1bb6aaad
RH
384Fri Oct 24 11:19:22 1997 Jakub Jelinek <jj@sunsite.mff.cuni.cz>
385
386 * config/tc-sparc.c (sparc_memory_model): New variable.
387 (md_longopts): Add -TSO/-PSO/-RMO options.
388 (md_parse_options): Handle them.
389 (sparc_elf_final_processing): For 64 ELF, set required
390 memory ordering in e_flags. Default to RMO and let the user
391 override it through command line.
392
393 * config/tc-sparc.h (elf_tc_final_processing): Add.
394
1277cdda
RH
395Wed Oct 22 17:42:12 1997 Richard Henderson <rth@cygnus.com>
396
397 * config/tc-sparc.c (v9a_asr_table): New variable.
398 (sparc_ip): Handle v9a asr's.
399 Patch from David Miller <davem@vger.rutgers.edu>.
400
7532235c
RH
401Wed Oct 22 17:22:59 1997 Richard Henderson <rth@cygnus.com>
402
403 * config/tc-sparc.h (md_do_align): New macro.
404 * config/tc-sparc.c (sparc_handle_align): Handle rs_align_code.
405 Patch from Jakub Jelinek <jj@sunsite.mff.cuni.cz>.
406
517640d9
ILT
407Wed Oct 22 12:51:18 1997 Ian Lance Taylor <ian@cygnus.com>
408
82b4217b
ILT
409 * config/tc-sh.c (sh_small): New variable.
410 (OPTION_SMALL): Define.
411 (md_longopts): Add "small".
412 (md_parse_option): Handle OPTION_SMALL.
413 (md_show_usage): Mention -small.
414 * config/tc-sh.h (sh_small): Declare.
415 (SUB_SEGMENT_ALIGN): Handle sh_small.
416 * config/obj-coff.h (TARGET_FORMAT): Check sh_small in TC_SH
417 case.
418
517640d9
ILT
419 * config/tc-mips.c (macro): Correct handling of constant in M_LI_D
420 case in little endian mode.
421
61a60a8a
DE
422Tue Oct 21 10:20:11 1997 Doug Evans <devans@canuck.cygnus.com>
423
424 * config/tc-sparc.c (md_apply_fix3, cases ..._H44, ..._HIX22): Leave
425 overflow signalling to linker.
426
71e0e8f9
ILT
427Mon Oct 20 14:54:06 1997 Klaus K"ampf <kkaempf@progis.de>
428
9659c18b
ILT
429 * makefile.vms: Fix for dec c.
430
431 * config-gas.com: Give explanation for dec c setup in error
432 message.
433
434 * config/tc-alpha.c (s_alpha_comm): Make .comm symbols separate
435 sections on openvms/alpha.
436
71e0e8f9
ILT
437 * config/obj-evax.c: support .weak pseudo-op
438
595da85d
DE
439Mon Oct 20 10:13:32 1997 Doug Evans <devans@canuck.cygnus.com>
440
70ee7782 441 * config/tc-sparc.c (default_arch_size): New static local.
595da85d
DE
442 (struct sparc_arch): Rename arch_size to default_arch_size.
443 New member user_option_p.
444 (sparc_arch_table): Always include v9, v9a. New entry v9-64.
445 (init_default_arch): Check whether default arch is valid.
446 Set default_arch_size in addition to sparc_arch_size.
447 (OPTION_32,OPTION_64): Define.
448 (md_longopts): New entries for -32, -64.
449 (md_parse_option): Handle them.
450 (md_show_usage): Print them. Ensure init_default_arch called.
70ee7782
DE
451 * configure.in (sparc64): Set arch to v9-64.
452 * configure: Regenerated.
595da85d 453
891a1584
ILT
454Sun Oct 19 13:50:50 1997 Ian Lance Taylor <ian@cygnus.com>
455
66a6a381
ILT
456 * write.c (subsegs_finish): New function, broken out of
457 write_object_file.
458 (write_object_file): Some code moves into subsegs_finish.
459 * write.c (subsegs_finish): Declare.
460 * as.c (main): Call subsegs_finish.
461
891a1584
ILT
462 * read.c (s_include): Check for error return from
463 demand_copy_string.
464
08ce71f5
RH
465Tue Oct 14 20:50:58 1997 Richard Henderson <rth@cygnus.com>
466
467 * read.c (get_line_sb): Accept any eol marker while scanning macros.
468
10b8f7f0
RH
469Tue Oct 14 19:12:45 1997 Richard Henderson <rth@cygnus.com>
470
471 * config/tc-alpha.h (DIFF_EXPR_OK): Define.
472 * config/tc-i386.h (DIFF_EXPR_OK): Define.
473 * config/tc-alpha.c (md_apply_fix): Notice fx_pcrel and substitute
474 the correct relocation when it exists.
475 * config/tc-i386.c (md_apply_fix3): Likewise.
476
477 * config/tc-ppc.h: Correct typo in comment.
478 * config/tc-v850.h: Likewise.
479
a0a5f4e2
AC
480Fri Oct 10 16:09:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
481
482 * config/tc-d10v.c (parallel_ok): Allow parallel instruction issue
483 when second instruction is writing to first instructions inputs.
484
856f843e
RH
485Mon Oct 13 15:27:17 1997 Richard Henderson <rth@cygnus.com>
486
487 * ecoff.c (PAGE_SIZE): Double to 8k as a hack to allow some C++
488 templated programs to build with -g.
489
c2806093
NC
490Fri Oct 10 17:48:29 1997 Nick Clifton <nickc@cygnus.com>
491
492 * config/tc-v850.c (md_relax_table): Add support for relaxing
493 unconditional branches. This patch is courtesy of Jim Wilson.
494 (md_convert_frag): Fix relaxing of branches. This patch is
495 courtesy of Jim Wilson.
496 (md_assemble): Create different fixups for conditional and
497 unconditional branches. This patch is courtesy of Jim Wilson.
498 (md_estimate_size_before_relax): Estimate size of variable part of
499 fixup based on whether it is for a conditional or an unconditional
500 branch. This patch is courtesy of Jim Wilson.
501 (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
502 v850_zbss, v850_rosdata, v850_rozdata, v850_bss): Add call to
503 obj_elf_section_change_hook().
504 (v850_comm): New function.
505 (md_pseudo_table): Add new pseudo ops .zcomm, .scomm and .tcomm.
506 (md_begin): Add bss flag to seg_info of bss sections.
507
508 Add support for .scommon, .tcommon and .zcommon sections.
509
510 * config/tc-v850.h (ELF_TC_SPECIAL_SECTIONS): Add .scommon,
511 .zcommon, .tbss, .call_table_data and .call_table_text.
512
e01e18a8
DE
513Fri Oct 10 15:01:14 1997 Doug Evans <dje@canuck.cygnus.com>
514
515 * configure.in (sparc): Set DEFAULT_ARCH from correct target.
516 * configure: Regenerated.
517
b83565de
MH
518Fri Oct 10 11:22:45 1997 Martin M. Hunt <hunt@cygnus.com>
519
520 * config/tc-d10v.c: Fixes to make sure the AT_WORD
521 expression is not confused with -1.
522
528859ea
AC
523Fri Oct 10 11:54:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
524
525 * config/tc-d10v.c (parallel_ok): Flag SP as modified for @-sp
526 operand - OPERAND_ATMINUS.
527
719ddab4
MM
528Fri Oct 10 00:47:44 1997 Michael Meissner <meissner@cygnus.com>
529
530 * config/tc-d10v.c (parallel_ok): Note that auto increment and
531 decrement modify the index register.
532
ed1ed9f9
ILT
533Thu Oct 9 15:17:50 1997 Ian Lance Taylor <ian@cygnus.com>
534
15ab76e5
ILT
535 From Robin Kirkham <Robin.Kirkham@mlb.dmt.csiro.au>:
536 * config/tc-m68k.c (archs): Add 68306, 68307, 68322, 68356, 68334,
537 68336, 68341, 68349.
538 * doc/c-m68k.texi (M68K-Opts): Add -m68ec000 -m68hc000 -m68hc001
539 -m68306, -m68307, -m68322, -m68356, -m68ec020, -m68ec030,
540 -m68ec040, -m68ec060, -m68330, -m68334, -m68336, -m68341,
541 -m68349.
542
57f269b1
ILT
543 * doc/Makefile.am (CPU_DOCS): Define.
544 (as.info): Depend upon $(CPU_DOCS).
545 * doc/Makefile.in: Rebuild.
546
ed1ed9f9
ILT
547 * configure.in: Remove AM_PROG_INSTALL; it's called by
548 AM_INIT_AUTOMAKE.
549 * configure: Rebuild.
550
d78d3671
JR
551Thu Oct 9 01:44:36 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
552
553 * tc-d10v.h (TC_START_LABEL): Don't define.
554 (tc_frob_label): Define.
555
c7b2ac28
JR
556Thu Oct 9 00:07:23 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
557
558 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't allow
559 to pair a branch and link with anything but an exe instruction.
560
8a8a91a5
RH
561Wed Oct 8 16:28:53 1997 Richard Henderson <rth@cygnus.com>
562
563 * config/tc-alpha.c (load_expression): Disable the sym+const .got
564 optimization to reduce the alignment surprises for gcc.
565
54b9ebdd
DE
566Wed Oct 8 16:11:15 1997 Doug Evans <dje@canuck.cygnus.com>
567
568 * config/obj-coff.h (TC_SPARC): Don't define TARGET_FORMAT.
569 * config/tc-sparc.c (sparc_target_format): Handle coff here.
570 (sparc_ip): Add %hix,%lox.
571 (md_apply_fix3): Call as_bad_where, not as_bad.
572 Add support for BFD_RELOC_SPARC_{HIX22,LOX10}.
573 (tc_gen_reloc): Add support for BFD_RELOC_SPARC_{HIX22,LOX10}.
574
0170f1c3
RH
575Wed Oct 8 12:33:32 1997 Richard Henderson <rth@cygnus.com>
576
577 * configure.in: Change alpha-*-* to alpha*-*-*; config.guess now
578 recognizes alphaev5 etc.
579 * configure: Rebuild.
580
6fd819cf
GRK
581Wed Oct 8 00:04:05 1997 Gavin Koch <gavin@cygnus.com>
582
583 * config/tc-mips.c (md_begin): Replace the TARGET_CPU value
584 of mipsr3900 with mipstx39.
585
586 * config/tc-mips.c (mips_ip): Don't print the 'opcode requires
587 -mipsXX message' if the insn isn't an ISA insn.
588
49136667
DE
589Tue Oct 7 12:48:30 1997 Doug Evans <dje@canuck.cygnus.com>
590
591 * config/tc-sparc.h (TARGET_FORMAT support): Moved to tc-sparc.c.
592 Redefine TARGET_FORMAT to call sparc_target_format.
593 * config/tc-sparc.c (in_unsigned_range): New function.
594 (sparc_arch_size): Make static.
595 (sparc_target_format): New function.
596 (sparc_ip): Delete variable immediate_max. Rewrite %hi/etc reloc
597 handling. Add support for %hh,%hm,%lm,%h44,%m44,%l44.
598 (output_insn): Set `fx_no_overflow'.
599 (md_apply_fix3): Handle BFD_RELOC_SPARC_{7,H44,M44,L44}.
600 (tc_gen_reloc): Likewise.
601
a9da34ae
NC
602Mon Oct 6 14:04:50 1997 Nick Clifton <nickc@cygnus.com>
603
604 * config/tc-v850.c (v850_section): Remove.
605
606 * config/obj-elf.c (obj_elf_section): Enhance error message.
607
7e5c196e
ILT
608Fri Oct 3 15:40:38 1997 Ian Lance Taylor <ian@cygnus.com>
609
a3e8c5b7
ILT
610 * config/tc-mips.c: Undef OBJ_COPY_SYMBOL_ATTRIBUTES before
611 including obj-elf.h in OBJ_MAYBE_ELF case.
612 (mips_target_format): Return NULL after abort to avoid warning.
613
0e7c7b89
ILT
614 * ecoff.c (generate_ecoff_stab): Remove unused static function.
615
1175a6c6
ILT
616 * expr.c (operator): Accept ==. From Anders Blomdell
617 <anders.blomdell@control.lth.se>.
618
7e5c196e
ILT
619 * config/atof-ieee.c (gen_to_words): When generating a denormal
620 number, handle an overflow into the smallest normalized number.
621
002e8e4d
JR
622Mon Sep 29 15:24:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
623
624 * as.h, input-scrub.c (new_logical_line): New return value.
625 * read.c (s_app_file): Don't note the same file several times
626 in a row.
627
89b308f4
ILT
628Thu Sep 25 13:08:02 1997 Ian Lance Taylor <ian@cygnus.com>
629
630 * config/tc-m68k.c (m68k_ip): Remove ` operand specifier.
631
5e4e4739
ILT
632Wed Sep 24 16:54:40 1997 Joel Sherrill <joel@oarcorp.com>
633
634 * configure.in (sh*-*-rtems*): New target, like sh-*-elf*.
635 * configure: Rebuild.
636
b5db0960
ILT
637Wed Sep 24 11:30:25 1997 Ian Lance Taylor <ian@cygnus.com>
638
469adf23
ILT
639 * config/tc-m68k.c (m68k_ip): Handle q and v operand specifiers.
640
c1503b28
ILT
641 * doc/c-i386.texi (i386-Float): Remove incorrect assertion that
642 fn* instructions do not insert implicit fwait. This was changed
643 Jan 29, 1996.
644
fdfabd68
ILT
645 * config/m68k-parse.y (yylex): Permit an expression to be used for
646 the scale factor.
647
3d07d766
ILT
648 * Makefile.am (EXTRA_as_new_SOURCES): Set to config/m68k-parse.y,
649 not m68k-parse.y.
650 * Makefile.in: Rebuild.
651
b5db0960
ILT
652 * aclocal.m4: Rebuild with new libtool.
653 * configure: Rebuild.
654
d70bab10
ILT
655Tue Sep 23 17:48:09 1997 Ian Lance Taylor <ian@cygnus.com>
656
15cfc4ad
ILT
657 * app.c (do_scrub_chars): Clear mri_state at end of .mri
658 pseudo-op.
659
d70bab10
ILT
660 * config/tc-mips.c (hilo_interlocks): Change from a static
661 variable to a macro, so that it varies with the variables upon
662 which it depends.
663 (gpr_interlocks, cop_interlocks): Likewise.
664 (md_begin): Don't initialize them.
665
e205ecb8
JL
666Fri Sep 19 17:08:41 1997 Jeffrey A Law (law@cygnus.com)
667
668 * config/tc-mn10300.c (md_assemble): Use strcasecomp instead
669 of strcmp where appropriate.
670
920b87c4
NC
671Thu Sep 18 14:11:56 1997 Nick Clifton <nickc@cygnus.com>
672
673 * config/tc-v850.c (md_assemble): Cope with a zero data area
674 relocation with a constant offset.
6df3c45f
NC
675 (md_assemble): Produce error message when special data area
676 relocations are used on instructions which do not support them.
46ad7d6c
NC
677 (md_assemble): Reset processor mask if defined by command line
678 switch.
920b87c4 679
90a579fa
DE
680Thu Sep 18 11:24:01 1997 Doug Evans <dje@canuck.cygnus.com>
681
af6f39b4
DE
682 * config/tc-sparc.c: Reorganize file.
683 (parse_keyword_arg): Allow numbers in reg names.
684 (SPECIAL_CASE_NONE): New macro.
685 (md_assemble): Use it.
2b09622a
DE
686 (lookup_arch,init_default_arch): New functions.
687 (default_arch,default_init_p,sparc_arch_table): New static locals.
688 (sparc_arch_size): New static local.
689 (max_architecture): Initialize in init_default_arch.
690 (md_parse_options): Call init_default_arch if necessary.
691 Rewrite -xarch/-A processing.
692 (md_show_usage): Print -A values from sparc_arch_table.
693 (md_begin): Call init_default_arch if necessary.
694 (sparc_md_end): Handle both 32 and 64 bit environments.
695 * config/tc-sparc.h (TARGET_FORMAT): Likewise.
696 * acconfig.h (SPARC_V9,SPARC_ARCH64): Delete.
697 (DEFAULT_ARCH): Add.
698 * config.in: Regenerate.
699 * configure.in (sparc): Default DEFAULT_ARCH based on target cpu.
700 (SPARC_V9,SPARC_ARCH64): Delete.
701 * configure: Regenerate.
702 * config/vms-conf.h (SPARC_V9,SPARC_ARCH64): Delete.
90a579fa 703
936a8f55
NC
704Wed Sep 17 16:54:20 1997 Nick Clifton <nickc@cygnus.com>
705
706 * config/tc-v850.c (v850_reloc_prefix): Recoded to use CHECK_ ()
707 macro.
708 (handle_tdaoff, handle_zdaoff, handle_sdaoff): New functions.
709start-sanitize-v850e
00fd8294
NC
710
711 * config/tc-v850.c (md_assemble): Corrected typo.
936a8f55
NC
712 * config/tc-v850.c Add new sections: call_table_data and
713 call_table_text.
714 (v850_reloc_prefix): Add support for ctoff() relocation prefix.
715 (handle_ctoff): New Function.
716
717 * doc/c-v850.texi (V850 Opcodes): Document call table relocations.
718end-sanitize-v850e
719
75285178
NC
720Tue Sep 16 14:18:22 1997 Nick Clifton <nickc@cygnus.com>
721
722 * config/tc-v850.c (v850_reloc_prefix): Add support for a 16 bit
723 displacement from the tiny data area pointer.
724
896e248f
JL
725Mon Sep 15 21:28:09 1997 Jeffrey A Law (law@cygnus.com)
726
727 * config/tc-hppa.c (fix_new_hppa): Make declaration match
728 definition.
729
d30a2be4
NC
730Mon Sep 15 18:33:06 1997 Nick Clifton <nickc@cygnus.com>
731
732 * config/tc-v850.c (processor_mask): New variable.
733 (set_machine, md_parse_option): Set processor_mask.
734 (md_assemble): Check that instruction is available to target
735 processor.
736
737 * config/tc-v850.h (TARGET_PROCESSOR): New constant.
738start-sanitize-v850e
739 (TARGET_PROCESSOR): New constant.
d30a2be4 740 (TARGET_PROCESSOR): New constant.
d70bab10 741end-sanitize-v850e
d30a2be4 742
3836d0f3
GRK
743start-sanitize-tx19
744Mon Sep 15 17:26:46 1997 Gavin Koch <gavin@cygnus.com>
745
746 * config/tc-mips.c (mips_1900): Replace with mips_3900 and
747 mips16.
748
749end-sanitize-tx19
a611b1c2
KR
750start-sanitize-d30v
751Mon Sep 15 11:28:04 1997 Ken Raeburn <raeburn@cygnus.com>
752
753 Merge in work from Martin Hunt:
754
755 * config/tc-d30v.c (build_insn): For mvfsys and mvtsys,
756 CR is 0 for PSWL and PSWH.
757
758 * config/tc-d30v.c (do_assemble): Don't accept
759 illegal condition codes for cmpu instruction.
760
761 * config/tc-d30v.c: Add support for BFD_RELOC_D30V_9_PCREL
762 used in d*i instructions.
763
764 * config/tc-d30v.c (check_size): New function. Check
765 relocations for overflows.
766 (md_pcrel_from_section): Fix relocations between sections.
767 (md_apply_fix3): Use new relocation types for 15 and 21
768 bit relocations in the right container. Needed because
769 the address of the instruction is not eight-byte aligned
770 but the relocations must be.
771
772 * config/tc-d30v.c (md_apply_fix3): Check for overflow.
773 (find_format): If ".s" or ".l" are used, don't try
774 to compute branch sizes.
775
776 * config/tc-d30v.c (do_assemble): Check for ".s" or
777 ".l" extensions to opcode names.
778 (find_format): Generate the correct instructions when
779 ".s" or ".l" are used.
780
781 * config/tc-d30v.c (build_insn): Check for odd registers
782 on instructions that require even registers.
783
784 * config/tc-d30v.h (md_start_line_hook): Define.
785 * config/tc-d30v.c (md_start_line_hook): New hook.
786 Checks the beginning of each line for a ".". If it
787 finds one, assume a pseudo-op and flush any unwritten
788 instructions.
789
790 * config/tc-d30v.c (md_apply_fix3): Fix problem
791 with determining when fixups were done.
792
793 * config/tc-d30v.c (build_insn): Fix bug where the numeric
794 part of a symbol (for example, "foo+8") was being written
795 into the instruction.
796 (md_pseudo_table): Change .word to be 32 bits and add
797 .hword as 16 bits.
798
799 * config/tc-d30v.c (parallel_ok): Check to see if first
800 instruction is a jump.
801
802 * config/tc-d30v.c (parallel_ok): Major code reorganization.
803
804end-sanitize-d30v
756adc97
NC
805Wed Sep 10 10:07:08 1997 Nick Clifton <nickc@cygnus.com>
806
210c24d6
NC
807start-sanitize-v850e
808 * config/tc-v850.c (md_assemble): Corrected spelling mistake.
809end-sanitize-v850e
756adc97
NC
810 * configure.in (emulations): Add v850 emulation.
811
fda193d9
DE
812Tue Sep 9 17:14:33 1997 Doug Evans <dje@canuck.cygnus.com>
813
814 * Makefile.am (CPU_TYPES): Add arc.
815 (TARGET_CPU_CFILES): Add tc-arc.c.
816 (TARGET_CPU_HFILES): Add tc-arc.h.
817 (dependencies): Rebuild.
818 * Makefile.in: Rebuild.
29b35953
DE
819 * configure.in: Recognize arc-*-elf*.
820 * configure: Regenerated.
821 * config/tc-arc.[ch]: New files.
fda193d9 822
1ffec081
NC
823Tue Sep 9 10:19:37 1997 Nick Clifton <nickc@cygnus.com>
824
73a04028
NC
825 * doc/c-v850.texi (V850 Opcodes): Document hi0() reloc prefix.
826 Correct description of hi() reloc prefix.
827
9153e643
NC
828start-sanitize-v850e
829 * doc/c-v850.texi (V850 Opcodes): Document new reloc prefix.
830 * config/tc-v850.c (v850_reloc_prefix): Add hilo() reloc prefix.
831 * config/tc-v850.c (md_assemble): Add support for BFD_RELOC_32.
832end-sanitize-v850e
833
92fdb582
NC
834 * doc/c-v850.texi: Document new pseudo ops and command line
835 options.
836
1ffec081
NC
837 * config/tc-v850.c (set_machine): New function.
838 * config/tc-v850.c (.v850): New pseudo op.
839start-sanitize-v850e
840 * config/tc-v850.c (.v850e): New pseudo op.
da5715e6 841 * config/tc-v850.c (.v850ea): New pseudo op.
d70bab10 842end-sanitize-v850e
1ffec081
NC
843
844
47423a92
ILT
845Mon Sep 8 23:08:04 1997 Ian Lance Taylor <ian@cygnus.com>
846
847 Support -alh and -ald for DWARF 1:
848 * listing.c (struct list_info_struct): Add debugging field.
849 (listing_newline): Initialize the debugging field. If ELF, if the
850 section starts with .debug or .line, set the debugging field in
851 the listing structure.
852 (debugging_pseudo): Add list parameter. Change all callers. If
853 the debugging field is set, consider it to be a debugging pseudo.
854 If ELF, skip blank lines between debugging lines.
855 * read.c (emit_expr): If ELF, look for line numbers.
856 (stringer): If ELF, look for file names.
857
1fd5f4fc
NC
858Mon Sep 8 12:33:40 1997 Nick Clifton <nickc@cygnus.com>
859
b0b262f7
NC
860 * config/tc-v850.c (v850_insert_operand): Only test for overflow
861 if there is no insert function.
862
8816811b
NC
863 * config/tc-v850.h (TARGET_MACHINE): New constant.
864
1fd5f4fc
NC
865 * config/tc-v850.c (v850_insert_operand): Add
866 -mwarn_unsigned_overflow.
8816811b 867 (md_begin): Set BFD machine number based on machine variable.
da5715e6 868 (md_parse_option): Add -mv850, -mv850e and -mv850ea options.
1fd5f4fc 869
bb434496
ILT
870Mon Sep 8 11:20:46 1997 Ian Lance Taylor <ian@cygnus.com>
871
872 * as.h: Don't declare alloca if it is a macro.
873 * macro.c: Likewise.
874
b637f306
GRK
875start-sanitize-tx19
876Sun Sep 7 16:04:53 1997 Gavin Koch <gavin@cygnus.com>
877
878 * config/tc-mips.c: Add tx19/r1900.
879
880end-sanitize-tx19
4a04414a
RH
881Sun Sep 7 00:30:19 1997 Richard Henderson <rth@cygnus.com>
882
883 * config/tc-alpha.c (md_parse_option): Move m[] out to top level and
884 rename to cpu_types[].
885 (s_alpha_arch): New function.
886 (md_pseudo_table): Add "arch".
887
888 * config/tc-alpha.c (md_begin): Merge the two loops through the
889 opcode table.
890 (s_alpha_proc): Add initial SKIP_WHITESPACE.
891 (s_alpha_set): Likewise. Use get_symbol_end instead local while loop.
892
8183bd07
FF
893Sat Sep 6 19:38:12 1997 Fred Fish <fnf@ninemoons.com>
894
895 * read.h (s_lcomm_bytes): Add prototype (for real this time).
896
662df350
ILT
897Thu Sep 4 12:10:01 1997 Ian Lance Taylor <ian@cygnus.com>
898
899 * config/obj-elf.c (elf_frob_symbol): Only set BSF_OBJECT for
900 symbols on Irix.
901
2d278484
NC
902Wed Sep 3 11:21:33 1997 Nick Clifton <nickc@cygnus.com>
903
904 * config/tc-v850.c: Remove BFD_RELOC_V850_16_PCREL.
905
d37ce763
JL
906Tue Sep 2 18:32:30 1997 Jeffrey A Law (law@cygnus.com)
907
908 * config/tc-mn10200.c (md_convert_frag): PC relative instructions arex
909 relative to the next instruction, not the current instruction.
910 (md_assemble): Similarly.
911
ccf10718
NC
912Tue Sep 2 15:58:52 1997 Nick Clifton <nickc@cygnus.com>
913
19ebb9e3
NC
914 * doc/c-v850.texi: Explanations of offsets in SDA/ZDA areas
915 correcetd.
916
ccf10718
NC
917 * config/tc-v850.c: Add support for SDA/TDA/ZDA sections.
918 (v850_reloc_prefix): Duplicate code eliminated. Add code to
919 recognise special instructions.
920 (md_assemble): Calculation of the size of a fixups corrected.
921
922 * config/tc-v850.h (ELF_TC_SPECIAL_SECTIONS): Add SDA/TDA/ZDA
923 sections.
924
28e1e54d
AC
925Tue Sep 2 15:40:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
926
927 * config/tc-v850.c (md_assemble): Use opcode->name instead of
928 opcode->opcode as the sentinal. Zero is a valid opcode.
929
11959ebc
ILT
930Tue Aug 26 16:51:14 1997 Ian Lance Taylor <ian@cygnus.com>
931
932 * doc/as.texinfo (Machine Dependencies): Add v850 to menu.
933 * doc/c-v850.texi: Change node name to match other chapter nodes.
934
3f221096
NC
935Tue Aug 26 09:46:22 1997 Nick Clifton <nickc@cygnus.com>
936
937 * doc/c-v850.texi (V850 Opcodes): Correct name for tiny data area
938 pointer.
3f221096 939
02bdbd8b
ILT
940Tue Aug 26 12:23:25 1997 Ian Lance Taylor <ian@cygnus.com>
941
90b83993
ILT
942 * expr.c (integer_constant): If BFD64, don't make a bignum if the
943 number will fit in 64 bits.
944
4b231a26
ILT
945 * config/tc-alpha.c (load_expression): Check explicitly for O_big,
946 rather than calling abort.
947
a089d2da
ILT
948 * as.h: Don't define alloca if __GNUC__. Just declare it.
949 * macro.c: Copy alloca handling from as.h.
950
977d53fc
ILT
951 * config/tc-i386.c (i386_align_code): Correct 16 bit noops. From
952 Gabriel Paubert <paubert@iram.es>.
953
02bdbd8b
ILT
954 * config/tc-i386.c (md_assemble): In JumpByte case, when looking
955 for a WORD_PREFIX_OPCODE, change it to ADDR_PREFIX_OPCODE if this
625ea5db 956 is jcxz or a loop instruction.
02bdbd8b 957
b688e04e
NC
958Mon Aug 25 16:04:14 1997 Nick Clifton <nickc@cygnus.com>
959
960 * config/tc-v850.c (pre_defined_registers): Add 'hp' as alias for
961 r2.
962 (md_begin): Set up machine architecture and type.
b688e04e 963
a77b3837
ILT
964Mon Aug 25 14:25:48 1997 Ian Lance Taylor <ian@cygnus.com>
965
2051ec0e
ILT
966 * symbols.c (resolve_symbol_value): Store the value back into the
967 symbol expression, to handle add or subtract simplification
968 correctly. Handle O_symbol_rva. Add default case.
969
a77b3837
ILT
970 * config/tc-ppc.c (ppc_change_csect): Temporarily lower the
971 chunksize while creating the new subsection.
972 * as.c (chunksize): Initialize to zero.
973 * subsegs.c (subseg_set_rest): Change 5000 to chunksize when
974 calling obstack_begin.
975
cf735d2a
NC
976Mon Aug 25 11:21:48 1997 Nick Clifton <nickc@cygnus.com>
977
978 * config/tc-v850.c (md_assemble): Restore input_line_pointer upon
979 exit.
980
981start-sanitize-v850e
982 * config/tc-v850.c (parse_register_list): Support constant
983 expressions as register lists.
3e906c08 984end-sanitize-v850e
cf735d2a 985
9c506dfb
NC
986Mon Aug 25 10:19:34 1997 Nick Clifton <nickc@cygnus.com>
987
988 * doc/c-v850.texi: Change the major node to v850 Machine
989 Dependencies.
990
d72d8c59
NC
991Fri Aug 22 11:16:14 1997 Nick Clifton <nickc@cygnus.com>
992
68eaa141
NC
993 * doc/as.texinfo: Add inclusion of c-v850.texi
994
995 * doc/c-v850.texi: New file.
996
d72d8c59
NC
997 * read.c (is_end_of_line): Make NUL character be considered to be
998 a line terminator.
999
5f044499
NC
1000Fri Aug 22 10:45:33 1997 Nick Clifton <nickc@cygnus.com>
1001
1002 * config/tc-v850.c (parse_register_list): Add support for curly
1003 brace syntax.
1004 (cc_names): Add "e" and "ne" conditions.
5f044499 1005
346c75cd
NC
1006Thu Aug 21 11:00:36 1997 Nick Clifton <nickc@cygnus.com>
1007
1008 * app.c (do_scrub_chars): Support a double dash as starting a
1009 comment that extends to end of line.
1010
19f40fdc
NC
1011Thu Aug 21 10:54:27 1997 Nick Clifton <nickc@cygnus.com>
1012
1013 * config/tc-v850.c (v850_section, v850_bss, v850_offset): New
1014 functions.
1015 (md_pseudo_table): New pseudo ops: .bss, .offset, .section
19f40fdc 1016
d8beaa96
DE
1017Thu Aug 21 00:59:53 1997 Doug Evans <dje@canuck.cygnus.com>
1018
1019 * config/tc-m32r.c (md_estimate_size_before_relax): Update recorded
1020 insn when changing to a different instruction.
1021
bf5ac1b8
JR
1022start-sanitize-sh4
1023Wed Aug 20 00:45:20 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1024
1025 * tc-sh.c (parse_reg, get_specific, build_Mytes): Add SH4
1026 floating point extensions.
1027 (parse_reg): parse sgr and dbr.
1028
1029end-sanitize-sh4
d8beaa96
DE
1030Tue Aug 19 17:07:34 1997 Nick Clifton <nickc@cygnus.com>
1031
1032 * config/tc-v850.c (system_register_name): Support numbers for
1033 system register IDs.
1034
015b3352
FF
1035Tue Aug 19 08:59:12 1997 Fred Fish <fnf@cygnus.com>
1036
1037 * read.c (s_lcomm_internal): Renamed from s_lcomm, added arg to
1038 flag when alignment is in bytes instead of power of 2, and code to
1039 use that flag to convert alignment to bytes.
1040 (s_lcomm, s_lcomm_bytes): New helpers that call s_lcomm_internal.
1041 * read.h (s_lcomm_bytes): Add prototype.
1042 * config/obj-coff.c (write_object_file): If ALIGNMENT_IN_S_FLAGS is
1043 defined, write alignment to alignment bits in section header s_flags
1044 rather than the s_align field.
1045start-sanitize-tic80
1046 * config/obj-coff.h (ALIGNMENT_IN_S_FLAGS): Define for TC_TIC80.
1047 * config/tc-tic80.c (md_pseudo_table): Use s_lcomm_bytes for bss
1048 pseudo, instead of s_lcomm which wants a power of two for alignment.
1049end-sanitize-tic80
1050
c631cd59
RH
1051Mon Aug 18 20:42:23 1997 Richard Henderson <rth@cygnus.com>
1052
1053 * macro.c (check_macro): use alloca instead of xmalloc to plug leak.
1054
96e0ff46
RH
1055Mon Aug 18 20:33:06 1997 Richard Henderson <rth@cygnus.com>
1056
1057 * as.c (show_usage): Add -am.
1058 * input-scrub.c (input_scrub_include_sb): Don't add leading \n
1059 if we've already got one.
1060 * listing.c (struct list_info_struct): Add line_contents.
1061 (listing_newline): Put unused argument to work: if non-null, save it...
1062 (listing_listing): ... and regurgitate during listing instead of line
1063 from file.
1064 * listing.h (LISTING_MACEXP): New define.
1065 (LISTING_NEWLINE): Argument is NULL.
1066 * read.c (read_a_source_file): If expanding macros, break up input
1067 lines and pass them to listing_newline.
1068 * doc/as.texinfo: Document -ac and -am.
1069
1070 * cond.c (s_ifc): Add missing demand_empty_rest_of_line.
1071
a365cd79
NC
1072Mon Aug 18 11:26:36 1997 Nick Clifton <nickc@cygnus.com>
1073
1074 * config/tc-v850.c (md_apply_fix3): Add support for new 16 bit PC
1075 relative reloc.
1076
1077start-sanitize-v850e
1078Mon Aug 18 11:24:21 1997 Nick Clifton <nickc@cygnus.com>
1079
1080 * config/tc-v850.c: Remove support_v850e flag and command line
1081 option.
1082
1083 * configure.in (emulations): Add support for v850e target
1084
1085 * configure (emulations): Add support for v850e target
a365cd79 1086
a365cd79
NC
1087Mon Aug 18 11:24:21 1997 Nick Clifton <nickc@cygnus.com>
1088
da5715e6 1089 * config/tc-v850.c: Remove support_v850ea flag and command line
a365cd79
NC
1090 option.
1091
da5715e6 1092 * configure.in (emulations): Add support for v850ea target
a365cd79 1093
da5715e6 1094 * configure (emulations): Add support for v850ea target
d70bab10 1095end-sanitize-v850e
a365cd79 1096
cd924033
ILT
1097Fri Aug 15 14:00:13 1997 Ian Lance Taylor <ian@cygnus.com>
1098
999f3587
ILT
1099 * Makefile.am (check-DEJAGNU): Don't cd into testsuite until after
1100 setting EXPECT and TCL_LIBRARY.
1101 * Makefile.in: Rebuild.
1102
cd924033
ILT
1103 * as.h (enum debug_info_type): Define.
1104 (debug_type): Declare.
1105 * as.c (debug_type): New global variable.
1106 (show_usage): Add --gstabs.
1107 (parse_args): Handle --gstabs.
1108 * read.c (generate_asm_lineno): Remove.
1109 (read_a_source_file): Output stabs debugging if appropriate.
1110 Change checks of generate_asm_lineno to check debug_type. Only
1111 generate ECOFF debugging if ECOFF_DEBUGGING is defined.
1112 * read.h (generate_asm_lineno): Don't declare.
1113 (stabs_generate_asm_lineno): Declare.
1114 * stabs.c (stabs_generate_asm_lineno): New function.
1115 * ecoff.c (add_file): Use debug_type, not generate_asm_lineno.
1116 Don't turn off debugging.
1117 (add_file): Remove old #if 0 code.
1118 (ecoff_new_file): Set debug_type, not generate_asm_lineno.
1119 (ecoff_directive_end): Don't generate stabs line symbols.
1120 (ecoff_generate_asm_lineno): Don't check stabs_seen. Don't set
1121 generate_asm_lineno.
1122 (line_label_cnt): Remove.
1123 (ecoff_generate_asm_line_stab): Remove.
1124 * ecoff.h (ecoff_generate_asm_line_stab): Don't declare.
1125 * doc/as.texinfo, doc/as.1: Document --gstabs.
1126
58036ae4
NC
1127Wed Aug 13 18:58:56 1997 Nick Clifton <nickc@cygnus.com>
1128
d70bab10 1129start-sanitize-v850e
58036ae4 1130 * config/tc-v850.c (md_assemble, md_show_usage, md_parse_option):
da5715e6 1131 Add support for v850ea instructions.
d70bab10 1132
58036ae4
NC
1133 * config/tc-v850.c (md_assemble, md_show_usage, md_parse_option):
1134 Add support for v850e instructions.
3e906c08 1135end-sanitize-v850e
58036ae4
NC
1136
1137 * config/tc-v850.c (md_assemble): Fix error recovery to reload
1138 text of entire opcode.
58036ae4 1139
4b67a719
RH
1140Tue Aug 12 10:27:34 1997 Richard Henderson <rth@cygnus.com>
1141
1142 * doc/internals.texi: Document rs_leb128.
1143
de815f61
ILT
1144Tue Aug 12 12:17:03 1997 Ian Lance Taylor <ian@cygnus.com>
1145
1146 * config/tc-m68k.c (m68k_ip): Give an error message for SIZE_BYTE
1147 in ABSL case, rather than calling abort.
1148
8cf777d6
RH
1149Mon Aug 11 21:48:00 1997 Richard Henderson <rth@cygnus.com>
1150
1151 * as.h (enum _relax_state): Add rs_leb128.
1152 * read.c (potable): Add sleb128 and uleb128.
1153 (sizeof_*leb128, output_*leb128, emit_leb128_expr, s_leb128): New
1154 functions.
1155 * read.h: Update prototypes.
1156 * symbols.c (resolve_symbol_value): Streamline quite a bit. Return
1157 the symbol value, add a second FINALIZE argument that prevents
1158 changes from being comitted. Update all callers.
1159 * write.c (cvt_frag_to_fill, relax_segment): Handle rs_leb128.
1160 * doc/as.texinfo: Document the new pseudos.
1161
210e033e
ILT
1162Sun Aug 10 14:51:49 1997 Ian Lance Taylor <ian@cygnus.com>
1163
1164 * Makefile.am (MOSTLYCLEANFILES): Add site.bak, site.exp, stage,
1165 stage1, and stage2.
1166 (DISTCLEANFILES): Define.
1167 * doc/Makefile.am (DISTCLEANFILES): Define.
1168 * Makefile.in, doc/Makefile.in: Rebuild.
1169
29e28dd6
ILT
1170Wed Aug 6 00:30:30 1997 Ian Lance Taylor <ian@cygnus.com>
1171
4dc4c45d
ILT
1172 * configure.in: Define TARGET_BYTES_BIG_ENDIAN if endian is set.
1173 Don't set targ or gas_target. Define SCO_ELF and
1174 TARGET_SOLARIS_COMMENT when appropriate. Don't substitute for
1175 target_frag.
1176 * Makefile.am: Remove @target_frag@.
1177 (INCLUDES): Remove $(INTERNAL_CFLAGS), $(CROSS), $(HDEFINES), and
1178 $(TDEFINES).
1179 (dep-am): Mark as phony.
1180 * acconfig.h: Add TARGET_BYTES_BIG_ENDIAN, TARGET_SOLARIS_COMMENT,
1181 and SCO_ELF.
1182 * config/arm-big.mt, config/arm-lit.mt: Remove.
1183 * config/mips-big.mt, config/mips-lit.mt: Remove.
1184 * config/ppc-big.mt, config/ppc-lit.mt: Remove.
1185 * config/ppc-sol.mt: Remove.
1186 * config/i386coff.mt, config/m68kcoff.mt: Remove.
1187 * config/m88kcoff.mt: Remove.
1188 * config/sco5.mt: Remove.
1189 * configure, config.in, Makefile.in: Rebuild.
1190
2a562314
ILT
1191 * Makefile.am ($(srcdir)/config/m68k-parse.h): New target, to
1192 further try to circumvent the .y.h rule.
1193 * Makefile.in: Rebuild.
1194
e535307a
ILT
1195Tue Aug 5 12:32:07 1997 Ian Lance Taylor <ian@cygnus.com>
1196
e2b4bd2a
ILT
1197 * Makefile.am: New file, based on old Makefile.in.
1198 * acinclude.m4: New file, from old aclocal.m4.
1199 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
1200 shared library handling; now handled by libtool. Replace
1201 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
1202 AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
1203 AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
1204 * config.in: New file, created by autoheader.
1205 * conf.in: Remove.
1206 * acconfig.h: Mention PACKAGE, VERSION, and USING_CGEN.
1207 * stamp-h.in: New file.
1208 * as.c (print_version_id): Change GAS_VERSION to VERSION.
1209 (parse_args): Likewise.
1210 * config/obj-vms.c: (Write_VMS_MHD_Records): Likewise.
29e28dd6
ILT
1211 * doc/Makefile.am: New file, based on old doc/Makefile.in.
1212 * Makefile.in, doc/Makefile.in: Now built with automake.
e2b4bd2a
ILT
1213 * aclocal.m4: Now built with aclocal.
1214 * configure: Rebuild.
1215
e535307a
ILT
1216 * cond.c (s_else): If not listing false conditionals, turn listing
1217 off in the false branch of the else.
1218
c5cb7682
ILT
1219Mon Aug 4 11:28:35 1997 Ian Lance Taylor <ian@cygnus.com>
1220
703f5e6e
ILT
1221 * config/tc-mips.c (macro): Fix handling of a double load from a
1222 symbol plus an offset.
1223
c5cb7682
ILT
1224 * ecoff.c (ecoff_build_symbols): Set fMerge to 0 for an FDR which
1225 has an associated external symbol.
1226
04269551
RH
1227Sun Aug 3 23:23:59 1997 Richard Henderson <rth@cygnus.com>
1228
1229 * config/tc-alpha.c (s_alpha_ucons): New function.
1230 (md_pseudo_table): Add unaligned data pseudos for DWARF.
1231
15d8ae9d
JL
1232Thu Jul 31 15:13:43 1997 Jeffrey A Law (law@cygnus.com)
1233
c1b2205e
JL
1234 * config/tc-v850.c (md_assemble): Ignore the rest of the current
1235 line if we encounter an error.
1236
15d8ae9d
JL
1237 * config/tc-v850.c (md_assemble): Sign extend constants value
1238 for hi and hi0 expressions.
1239 (v850_insert_operand): Enable range checking for generic 16bit
1240 operands.
1241
d222309a
JL
1242Tue Jul 29 14:20:43 1997 Jeffrey A Law (law@cygnus.com)
1243
1244 * config/tc-v850.c (md_assemble): Turn on fx_no_overflow for
1245 LO16, HI16 and HI16_S relocs.
1246
2e37047c
RS
1247Mon Jul 28 18:41:41 1997 Rob Savoye <rob@chinadoll.cygnus.com>
1248
1249 * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
1250 win32 dependencies.
1251 * configure: Regenerated with autoconf 2.12.
1252 * Makefile.in: Add $(EXEEXT) to all executables.
1253
e0362be2
JL
1254Fri Jul 25 10:54:43 1997 Jeffrey A Law (law@cygnus.com)
1255
1256 * tc-hppa.c (md_apply_fix): Improve warnings for out of range
1257 unconditional branches.
1258 (hppa_fix_adjustable): Don't adjust anything with a RR% or LR%
1259 field selector.
1260
09e1d695
DE
1261Thu Jul 24 15:21:49 1997 Doug Evans <dje@canuck.cygnus.com>
1262
1263 * tc-sparc.c (md_begin): Cast sparc_opcodes to PTR for hash_insert.
1264
280cdd54
ILT
1265Thu Jul 24 17:51:29 1997 Ian Lance Taylor <ian@cygnus.com>
1266
1267 * macro.c (define_macro): Make sure the index is in range before
1268 checking for '('.
1269
e6e676a5
FF
1270start-sanitize-tic80
1271Thu Jul 24 12:13:19 1997 Fred Fish <fnf@cygnus.com>
1272
1273 * config/tc-tic80.c (build_insn): Remove "extended" and replace with
1274 "fx" and "fxfrag". Add "ffrag". Change code to initialize and use
1275 the right f/ffrag and fx/fxfrag pairs since instruction may be split
1276 across frags.
1277
1278end-sanitize-tic80
68299279
ILT
1279Tue Jul 22 18:38:56 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
1280
1281 * config/te-go32.h (USE_ALIGN_PTWO): Define.
1282 * config/tc-i386.c (md_pseudo_table): If USE_ALIGN_PTWO is
1283 defined, use s_align_ptwo for .align.
ea1c39ce
ILT
1284 * configure.in (i386-*-msdosdjgpp*): New target.
1285 (i386-*-go32*): Set em to go32 and targ to coffgo32.
1286 * configure: Rebuild.
68299279 1287
bd3a1eba
DE
1288Tue Jul 22 12:41:40 1997 Doug Evans <dje@canuck.cygnus.com>
1289
1290 * config/tc-sparc.c (last_opcode): New static local.
1291 (md_assemble): Don't issue "FP branch in delay slot" warning if
1292 the delay slot has been annulled.
1293
1d303653
ILT
1294Tue Jul 22 13:25:13 1997 Ian Lance Taylor <ian@cygnus.com>
1295
1296 * config/tc-m68k.c (md_apply_fix_2): Check for PC relative reloc
1297 code if BFD_ASSEMBLER.
1298
47bfb6fc
JL
1299Mon Jul 21 08:57:17 1997 Jeffrey A Law (law@cygnus.com)
1300
1301 * config/tc-v850.c (system_registers): Fix ordering of registers.
1302
e53430c4
FF
1303start-sanitize-tic80
1304Tue Jul 15 16:29:54 1997 Fred Fish <fnf@cygnus.com>
1305
1306 * config/tc-tic80.c (build_insn): Initialize extended word to zero
1307 when it will be filled in later by relocation information.
1308
1309end-sanitize-tic80
a652f74c
ILT
1310Mon Jul 14 23:10:58 1997 Ian Lance Taylor <ian@cygnus.com>
1311
1312 * config/tc-mips.c (macro_build): Restore check of fmt argument.
1313 (mips_ip): Fix ISA checks.
1314
9587640a
JL
1315start-sanitize-r5900
1316Tue Jul 15 10:15:39 1997 Jeffrey A Law (law@cygnus.com)
1317
1318 * configure.in: Default the r5900 to little endian.
1319 * configure: Rebuilt.
1320
1321end-sanitize-r5900
8ae66b94
FF
1322start-sanitize-tic80
1323Mon Jul 14 19:30:55 1997 Fred Fish <fnf@cygnus.com>
1324
1325 * config/tc-tic80.c (build_insn): Fix endianness problem with
1326 O_big operands.
1327
1328end-sanitize-tic80
4dc85508
ILT
1329Sun Jul 13 20:43:46 1997 Ian Lance Taylor <ian@cygnus.com>
1330
1331 * config/tc-mips.c (check_absolute_expr): Change warning to
1332 error.
1333
931a1858
JL
1334Fri Jul 11 10:18:47 1997 Jeffrey A Law (law@cygnus.com)
1335
1336 * config/tc-mips.c (macro_build): Refine code to check if an
1337 instruction is available on a particular cpu variant.
1338 (mips_ip): Likewise.
1339
76fb6d2f
ILT
1340Mon Jul 7 22:53:08 1997 Ian Lance Taylor <ian@cygnus.com>
1341
1342 * config/tc-i386.c (tc_i386_fix_adjustable): Change ifndef
1343 OBJ_AOUT to ifdef OBJ_ELF.
1344 (md_apply_fix3): When mangling 32 bit PC relative reloc for
1345 BFD_ASSEMBLER, handle one ELF case for COFF as well, and add a PE
1346 case.
1347 * write.c (fixup_segment): Change special case for i386-coff to
1348 not apply for i386-pe.
1349 * config/obj-coff.c (coff_adjust_section_syms): Only count fixups
1350 which were not done.
1351 (coff_frob_file_after_relocs): Rename from coff_frob_file.
1352 (coff_format_ops): Initialize frob_file_after_relocs field rather
1353 than frob_file field.
1354 * config/obj-coff.h (coff_frob_file): Don't declare.
1355 (coff_frob_file_after_relocs): Declare.
1356 (obj_frob_file): Don't define.
1357 (obj_frob_file_after_relocs): Define.
1358 * configure.in: Set bfd_gas to yes for i386-*-cygwin32.
1359 * configure: Rebuild.
1360
b709b16f
ILT
1361Wed Jul 2 12:05:00 1997 Ian Lance Taylor <ian@cygnus.com>
1362
1363 * config/obj-coff.c (fixup_segment): Never subtract section
1364 address from PC relative reloc which will be fully resolved.
1365
db3152ef
JL
1366Tue Jul 1 15:23:07 1997 Jeffrey A Law (law@cygnus.com)
1367
1368 * ecoff.c (page_type): Renamed from page_t to avoid conflict
1369 with hpux10 header files.
1370
b73fcae8
ILT
1371Mon Jun 30 12:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
1372
1373 From Jason Merrill <jason@cygnus.com>:
1374 * read.c (do_align): If BFD_ASSEMBLER, only use NOP_OPCODE if
1375 SEC_CODE is set.
1376 * config/tc-i386.h (md_maybe_text): Define.
1377 (md_do_align): Use md_maybe_text.
1378
d006e435
MM
1379Fri Jun 27 19:15:27 1997 Michael Meissner <meissner@cygnus.com>
1380
1381 * config/tc-ppc.h (tc_fix_adjustable): Only check for GOT type
1382 relocations, don't check for symbol being external, weak, etc.
1383
24a3e622
ILT
1384Mon Jun 16 19:12:51 1997 Geoff Keating <geoffk@ozemail.com.au>
1385
1386 * config/tc-ppc.h (tc_fix_adjustable): Don't let the assembler
1387 calculate relocations to any external symbol, because we might be
1388 linking a shared object and the symbol might be overriden or moved
1389 (for instance, moved into a static executable's .bss section).
1390 (GLOBAL_OFFSET_TABLE_NAME): Delete. This is an i386 wierdness.
1391
1392 * config/tc-ppc.h (tc_fix_adjustable): GOT-based relocations can't
1393 be calculated by the assembler.
1394
1395 * config/tc-ppc.c (md_apply_fix3): Handle @plt or @local branch
1396 whose destination lies in the same file, by ignoring the @plt or
1397 @local and aiming the branch at its destination.
1398
b0447a0e
ILT
1399Mon Jun 16 13:59:18 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1400
1401 * symbols.c (copy_symbol_attributes): Copy BSF_OBJECT flag.
1402 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy size
1403 expression.
1404
1405 * config/obj-multi.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define instead
1406 of obj_copy_symbol_attributes.
1407
be2c18bd
ILT
1408Mon Jun 16 12:45:56 1997 Ian Lance Taylor <ian@cygnus.com>
1409
3a035861
ILT
1410 * config/tc-ppc.c (ppc_insert_operand): In 32 bit mode, with a
1411 signed operand, sign extend a 32 bit value to the host size.
1412
1413 * Makefile.in (CFLAGS): Subsitute from configure script. From
1414 Jeff Makey <jeff@cts.com>.
1415
a52f90a4
ILT
1416 * config/tc-i386.c (i386_operand): Use alloca rather than a fixed
1417 buffer size to make a copy of the symbol.
1418
be2c18bd
ILT
1419 * Makefile.in (OBJS): Put @extra_objects@ on the same line as
1420 macro.o.
1421
7799bb2c
ILT
1422Thu Jun 12 12:16:20 1997 Ian Lance Taylor <ian@cygnus.com>
1423
1424 * write.c (write_object_file): In non BFD_ASSEMBLER code, as we
1425 step through the frags calling cvt_frag_to_fill, switch to
1426 SEG_DATA when we reach data_frag_root.
1427
43ee18a0
JL
1428Tue Jun 10 17:08:34 1997 Jeffrey A Law (law@cygnus.com)
1429
1430 * config/tc-mn10300.c (md_assemble): Allow an empty register
1431 list for instructions which use register lists.
1432
ccc30467
ILT
1433Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1434
d2e5779b
ILT
1435 * config/tc-arm.c (md_apply_fix3): Make temp unsigned long.
1436
7436e4de
ILT
1437 * config/tc-arm.c (arm_adjust_symtab): Only set storage classes if
1438 OBJ_COFF.
1439
ccc30467
ILT
1440 * config/tc-arm.c: Add prototypes for many static functions.
1441 (struct asm_opcode ): Add prototypes for parms field.
1442 (struct thumb_opcode ): Likewise.
1443 (fp_op2): Remove unused flags parameter.
1444 (output_inst): Make static.
1445 (arm_after_pass_hook): Remove unused ignore parameter.
1446 * config/tc-arm.h (arm_after_pass_hook): Declare.
1447 (arm_start_line_hook): Declare.
1448 (arm_frob_label): Declare.
1449
170cdf75
ILT
1450Mon Jun 9 12:55:45 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1451
1452 * depend.c (wrap_output): new prototype.
1453
af438bdb
ILT
1454Mon Jun 9 12:52:44 1997 Ian Lance Taylor <ian@cygnus.com>
1455
4b4c1e0f
ILT
1456 * config/tc-sh.c (md_apply_fix): Check for overflow.
1457
af438bdb
ILT
1458 * config/tc-m68k.c (md_section_align): If a.out and BFD, force
1459 section size to be aligned.
1460
72574181
ILT
1461Fri Jun 6 17:15:55 1997 Ian Lance Taylor <ian@cygnus.com>
1462
1463 * config/tc-sh.h (md_cons_align): Define.
1464 (sh_cons_align): Declare.
1465 * config/tc-sh.c (md_pseudo_table): Add .uaword and .ualong.
1466 (sh_no_align_cons): New static variable.
1467 (s_uacons): New static function.
1468 (sh_cons_align): New function.
1469 (sh_handle_align): Warn about misaligned data.
1470 * doc/c-sh.texi: Document .uaword and .ualong.
1471
1472Thu Jun 5 15:38:17 1997 Ian Lance Taylor <ian@cygnus.com>
1473
1474 * macro.c (macro_expand): In MRI mode, treat single quote as a
1475 separator character when checking for a positional argument.
1476
d0badeab
NC
1477Tue Jun 3 16:15:13 1997 Nick Clifton <nickc@cygnus.com>
1478
48e509bf
NC
1479 * config/tc-arm.c (md_parse_option): Merge in changes from
1480 armT-970328-branch.
f8a21443 1481
48e509bf
NC
1482 * config/tc-arm.h: Merge in changes from armT-970328-branch.
1483
1484 * configure.in (emulations): Add Thumb architecture support from
d0badeab
NC
1485 armT-9703-28-branch.
1486
2903fb6e
NC
1487Mon Jun 2 16:25:07 1997 Nick Clifton <nickc@cygnus.com>
1488
3357a5ab
NC
1489 * doc/all.texi: Add enabling of ARM documentation.
1490
2903fb6e
NC
1491 * doc/as.texinfo: Add ARM documentation from armT-970328-branch.
1492
5c6f5923
GRK
1493Mon Jun 2 11:55:12 1997 Gavin Koch <gavin@cygnus.com>
1494
1495 * config/tc-mips.c: Added r3900 support.
1496
dccd4d2c
ILT
1497Thu May 29 12:58:26 1997 Ben Pfaff <pfaffben@pilot.msu.edu>
1498
1499 * as.c: (parse_args) `-t' option requires an argument.
1500
1501Wed May 28 15:45:07 1997 Nick Clifton <nickc@cygnus.com>
1502
1503 * config/tc-arm.c (md_begin): Change call to
1504 coff_arm_bfd_set_private_flags() to a call to
1505 bfd_set_private_flags().
1506
5ac3db53
ILT
1507Wed May 28 16:17:34 1997 Ian Lance Taylor <ian@cygnus.com>
1508
1d6f438f
ILT
1509 * Makefile.in: Rebuild dependencies.
1510
5ac3db53
ILT
1511 * config/tc-i386.c (tc_gen_reloc): Don't try to convert the type
1512 of a BFD_RELOC_RVA reloc.
1513
f22950b9
JL
1514Wed May 28 10:48:14 1997 Jeffrey A Law (law@cygnus.com)
1515
1516 * config/tc-hppa.c (tc_fix_adjustable): Reject absolute calls/jumps.
1517 (hppa_force_relocation): Force a relocation for an absolute
1518 call/jump.
1519
1079e76c
ILT
1520Mon May 26 13:24:25 1997 Ian Lance Taylor <ian@cygnus.com>
1521
1522 * doc/as.texinfo: Don't use @value in section names or index
1523 entries; it confuses texinfo.tex.
1524
8a51eeaf
TT
1525Fri May 23 00:09:35 1997 Tom Tromey <tromey@cygnus.com>
1526
1527 * doc/as.texinfo: Updated for -MD option.
1528 * Makefile.in (CFILES): Added depend.c.
1529 (OBJS): Added depend.o.
1530 * as.h (start_dependencies, register_dependency,
1531 print_dependencies): New declarations.
1532 * depend.c: New file.
1533 * as.c (parse_args): Added -MD option.
1534 (main): Call print_dependencies.
1535 (show_usage): Added help for -MD.
1536 * read.c (s_app_file): Call register_dependency.
1537 (s_include): Call register_dependency when file is found.
1538 (read_a_source_file): Call register_dependency.
1539
1a7a427e
ILT
1540Wed May 21 17:39:28 1997 Ian Lance Taylor <ian@cygnus.com>
1541
1542 * config/obj-coff.c (symbol_to_chars): If TE_PE, don't add the
1543 section address to the symbol value.
1544
e17449bc
GRK
1545Tue May 20 11:23:31 1997 Gavin Koch <gavin@cygnus.com>
1546
1a7a427e
ILT
1547 * config/tc-mips.c (macro_build,mips_ip): Move the INSN_ISA field
1548 into the new membership field.
e17449bc 1549
de046e7c
NC
1550Thu May 15 10:00:53 1997 Nick Clifton <nickc@cygnus.com>
1551
1552 * config/tc-arm.c (md_begin): If no cpu type is specified on the
1553 command line then the ARM7 is now chosen by default when setting
1554 the BFD machine and architecture.
1555
46686c78
NC
1556Wed May 14 09:54:53 1997 Nick Clifton <nickc@cygnus.com>
1557
1558 * config/tc-arm.c (global variables): Added 'uses_apcs_26' flag to
1a7a427e
ILT
1559 hold APCS selection.
1560 (md_begin): Added code to generate flags to be set into the COFF
1561 header and the calls to the BFD functions to do this.
1562 (md_parse_option, md_show_usage): Added new command line
46686c78
NC
1563 options -mapcs-32, -mapcs-26, -marmv2, -marmv2a, -marmv3,
1564 -marmv3m, -marmv4, -marmv4t.
1565
1566 * tc-arm.h (LOCAL_LABEL): Removed the definition of this macro
1567 as it is never used.
1568
2393a966
JL
1569Tue May 13 22:26:14 1997 Jeffrey A Law (law@cygnus.com)
1570
1571 * config/tc-mn10200.c (md_convert_frag): Prefix temporary
1572 label name with ".".
1573 * config/tc-mn10300.c (md_convert_frag): Likewise.
1574
cd05cc5e
ILT
1575Tue May 13 14:44:39 1997 Ian Lance Taylor <ian@cygnus.com>
1576
1577 * config/tc-mips.c (set_at): Check for bignum.
1578 (check_absolute_expr, macro, mips16_macro): Likewise.
1579
7b02bacd
FF
1580start-sanitize-tic80
1581Tue May 13 10:45:56 1997 Fred Fish <fnf@cygnus.com>
1582
1583 * config/tc-tic80.c (md_apply_fix): Check PC relative relocations
1584 for overflow/underflow, only insert lower 15 bits into instruction.
1585
1586end-sanitize-tic80
98b4161a
ILT
1587Mon May 12 13:33:08 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1588
1589 * config/tc-i386.c (pi): Check for RegMMX.
1590
ee42e25b
ILT
1591Thu May 8 11:10:15 1997 Ian Lance Taylor <ian@cygnus.com>
1592
1593 * expr.c (expr): When subtracting values in the same frag,
1594 subtract X_add_number rather than adding it.
1595
a5586bdc
ILT
1596Wed May 7 15:39:48 1997 Ian Lance Taylor <ian@cygnus.com>
1597
662a6d9e
ILT
1598 * config/obj-coff.c (write_object_file): Just pass NULL to
1599 md_do_align, not the address of a char holding NOP_OPCODE.
1600
a5586bdc
ILT
1601 * config/tc-mips.c (macro): Handle constants for M_LI_D and
1602 M_LI_DD.
1603 (mips_ip): For 'F', 'L', 'f', and 'l', generate a constant rather
1604 than an address if the floating point value looks sufficiently
1605 simple.
1606
91951af6
ILT
1607Tue May 6 12:18:09 1997 Ian Lance Taylor <ian@cygnus.com>
1608
1609 * config/tc-i386.c (md_section_align): If a.out and BFD, force
1610 section size to be aligned.
1611
454b0ccd
ILT
1612Mon May 5 17:16:55 1997 Ian Lance Taylor <ian@cygnus.com>
1613
0239838b
ILT
1614 * cond.c: Include "macro.h".
1615 (struct conditional_frame): Add macro_nest field.
1616 (initialize_cframe): Initialize macro_nest.
1617 (cond_finish_check): Add nest parameter. Change all callers.
1618 (cond_exit_macro): New function.
1619 * as.h (cond_finish_check): Update declaration.
1620 (cond_exit_macro): Declare.
1621 * input-scrub.c (macro_nest): Make globally visible.
1622 (input_scrub_next_buffer): Call cond_finish_check.
1623 * macro.h (macro_nest): Declare.
1624 * read.c (s_mexit): Call cond_exit_macro.
1625
454b0ccd
ILT
1626 * config/tc-i386.h (RegMMX): Define.
1627 * config/tc-i386.c (pi): Check for all register types.
1628 (type_names): Add RegMMX.
1629 (md_assemble): Handle RegMMX.
1630
1631Wed Apr 30 12:47:00 1997 Manfred Hollstein <manfred@s-direktnet.de>
1632
1633 * config/obj-coff.c (c_section_symbol): Clear the LOCAL bit #ifdef
1634 TE_DELTA.
1635
1636Tue Apr 29 20:23:10 1997 Jim Wilson <wilson@cygnus.com>
1637
1638 * config/tc-mips.c (nopic_need_relax): Add new parameter
1639 before_relaxing. Use it when testing ecoff_extern_size.
1640 (load_address, macro, md_estimate_size_before_relax): Fix all
1641 callers.
1642
24d4b4e1
ILT
1643Tue Apr 29 19:54:36 1997 Richard Henderson <rth@tamu.edu>
1644
1645 * config/obj-elf.c (elf_pseudo_table): Add "subsection".
1646 (obj_elf_subsection): New static function.
1647
4a38edaa
ILT
1648Tue Apr 29 19:52:47 1997 Ian Lance Taylor <ian@cygnus.com>
1649
1650 * config/obj-coff.c (coff_header_append): Don't reset string_size
1651 each time through the loop.
1652
1416631f
ILT
1653Fri Apr 25 14:17:46 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1654
1655 * Makefile.in (DISTSTUFF): Add itbl-parse.h.
1656
49f5a035
ILT
1657Fri Apr 25 12:03:15 1997 Ian Lance Taylor <ian@cygnus.com>
1658
8f9b2cea
ILT
1659 * doc/internals.texi (Porting GAS): Correct documentation for
1660 current configure handling of targ-cpu.h, et. al.
1661 (CPU backend): Document listing macros.
1662
49f5a035
ILT
1663 * listing.c (data_buffer): Set size based on other listing macros,
1664 rather than always using 100.
1665 (data_buffer_size): Remove static variable.
1666 (calc_hex): Make data_buffer_size a local variable. Don't leave
1667 any slop when filling data_buffer.
1668
a21dd1e0
ILT
1669Mon Apr 21 15:33:19 1997 Ian Lance Taylor <ian@cygnus.com>
1670
1671 * doc/c-mips.texi: Document .set autoextend.
1672
49f90a34
ILT
1673Sat Apr 19 23:09:25 1997 Niklas Hallqvist <niklas@petra.appli.se>
1674
1675 * configure.in (i386-*-openbsd*, m68k-*-openbsd*,
1676 mips-dec-openbsd*, ppc-*-*bsd*, ns32k-pc532-openbsd*,
1677 sparc-*-openbsd*): New targets.
1678 * configure: Rebuild.
1679
aff65ed9
ILT
1680Sat Apr 19 22:52:03 1997 Jim Wilson <wilson@cygnus.com>
1681
1682 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
1683 for all undefined symbols.
1684
fec391b1
ILT
1685Fri Apr 18 13:37:35 1997 Ian Lance Taylor <ian@cygnus.com>
1686
1687 * config/tc-ppc.c (ppc_fix_adjustable): Handle zero length csects
1688 correctly.
1689
894cca25
ILT
1690Fri Apr 18 11:51:35 1997 Niklas Hallqvist <niklas@appli.se>
1691
1692 * configure.in (alpha*-*-openbsd*): New target.
1693 * configure: Rebuild.
1694
fc984eb0
ILT
1695Thu Apr 17 13:59:47 1997 Per Fogelstrom <pefo@openbsd.org>
1696
1697 * configure.in (mips-*-openbsd*): New target.
1698 * configure: Rebuild.
1699
4bdb83fc
MH
1700start-sanitize-d30v
1701Wed Apr 16 12:31:24 1997 Martin Hunt <hunt@cygnus.com>
1702
1703 * config/tc-d30v.c (parallel_ok): Fix parallel checking
1704 for instructions using conditional execution.
1705
1706end-sanitize-d30v
68952421
GRK
1707Tue Apr 15 18:11:44 1997 Gavin Koch <gavin@cygnus.com>
1708
1709 * config/tc-mips.c (insn_uses_reg): Correct test for fpr pairs.
1710
e366a2d6
ILT
1711Tue Apr 15 13:04:47 1997 Ian Lance Taylor <ian@cygnus.com>
1712
1713 * Makefile.in (srcroot): Remove.
1714 (INSTALL): Set to @INSTALL@.
1715 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
1716 (all, dvi): Don't set srcroot.
1717 (install): Depend upon as.new, gasp.new, and installdirs. Use
1718 $(program_transform_name) directly, rather than using
1719 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
1720 (installdirs): New target.
1721 * doc/Makefile.in (INSTALL_XFORM1): Remove.
1722 (install): Depend upon installdirs. Use $(program_transform_name)
1723 directly, rather than using $(INSTALL_XFORM) and
1724 $(INSTALL_XFORM1).
1725 (installdirs): New target.
1726 (install-info-as): Run mkinstalldirs.
1727 (install-info-gasp): Likewise.
1728
dca6429f
ILT
1729Mon Apr 14 11:59:08 1997 Ian Lance Taylor <ian@cygnus.com>
1730
e366a2d6
ILT
1731 * Makefile.in (INSTALL): Change install.sh to install-sh.
1732
dca6429f
ILT
1733 * symbols.c (resolve_symbol_value): Check for division by zero.
1734
1735 From Thomas Graichen <graichen@rzpd.de>:
1736 * Makefile.in: Always use $(SHELL) when running move-if-change.
1737 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
1738 * configure: Rebuild.
1739
4e9d8dea
DE
1740Thu Apr 10 14:40:00 1997 Doug Evans <dje@canuck.cygnus.com>
1741
f3f00e94
DE
1742 * cgen.c (cgen_parse_operand): Renamed from cgen_asm_parse_operand.
1743 New argument `want'. Update enum cgen_parse_operand_result values.
1744 Initialize if CGEN_PARSE_OPERAND_INIT.
1745 * config/tc-m32r.c (md_begin): Set cgen_parse_operand_fn.
4e9d8dea
DE
1746 (md_assemble): Call cgen_asm_init_parse.
1747 Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
1748
902a77ac
ILT
1749Wed Apr 9 11:49:41 1997 Ian Lance Taylor <ian@cygnus.com>
1750
1751 * config/tc-m68k.c (m68k_ip): Handle #j.
1752
96742953
JL
1753Tue Apr 8 16:37:57 1997 Jeffrey A Law (law@cygnus.com)
1754
1755 * config/tc-mn10300.c (md_convert_frag): Create fixup at the
1756 right address for call label:32,regs,imm.
1757
e41369a4
JL
1758Mon Apr 7 14:58:22 1997 Jeffrey A Law (law@cygnus.com)
1759
1760 * config/tc-hppa.c (pa_subspace_start): If OBJ_ELF, then always return
1761 zero.
1762 * config/tc-hppa.h (tc_frob_symbol): Don't reset the value of the
1763 symbol for OBJ_ELF anymore.
1764
39ffbb4d
DE
1765Mon Apr 7 10:54:59 1997 Doug Evans <dje@canuck.cygnus.com>
1766
1767 * Makefile.in: Regenerate dependencies.
1768 (TARG_CPU): New variable.
1769 (cgen.o): Depend on cgen.h, $(TARG_CPU)-opc.h.
1770 (.dep1): Delete creating of cgen-opc.h.
1771 (.tcdep): Put proper contents in cgen-opc.h.
1772 * configure.in (m32r): Delete setting of extra_files, extra_links.
1773 (AC_OUTPUT): Create cgen-opc.h.
1774 * configure: Regenerated.
1775
596c5b74
ILT
1776Sat Apr 5 13:19:12 1997 Klaus Kaempf <kkaempf@progis.de>
1777
1778 * makefile.vms: Update to build gasp.exe.
1779
374bdac7
DE
1780Fri Apr 4 16:10:02 1997 Doug Evans <dje@canuck.cygnus.com>
1781
c8cf7e17
DE
1782 * write.c (relax_frag): Make non-static.
1783 * write.h (relax_frag): Add prototype for.
1784 * config/tc-m32r.h (md_do_align): New arg `max'.
1785 * config/tc-m32r.c (m32r_do_align): Likewise.
1786 Update calls to frag_align, frag_align_pattern.
1787 (fill_insn): Update call to m32r_do_align.
1788 (m32r_scomm): Update call to frag_align.
1789
374bdac7
DE
1790 * config/tc-m32r.[ch]: New files.
1791 * cgen.c: New file.
1792 * Makefile.in (CPU_TYPES): Add m32r.
374bdac7
DE
1793 (TARGET_CPU_CFILES): Add tc-m32r.c.
1794 (TARGET_CPU_HFILES): Add tc-m32r.h.
374bdac7
DE
1795 (DISTCLEAN_HERE): Add cgen-opc.h.
1796 (.dep1,.tcdep): Create empty cgen-opc.h.
1797 (cgen.o): Add dependencies.
1798 (dependencies): Regenerate.
1799 * as.h (struct frag): New member fr_targ.
1800 (fr_pcrel_adjust,fr_bsr): Move into union fr_targ.ns32k.
1801 * conf.in (USING_CGEN): New macro.
1802 * configure.in (m32r-*-*): Add entry for.
39ffbb4d 1803 Add cgen.o to extra_objects.
374bdac7 1804 * configure: Regenerate.
403c708e
DE
1805 * frags.c (frag_var): fr_pcrel_adjust renamed to
1806 fr_targ.ns32k.pcrel_adjust. fr_bsr renamed to fr_targ.ns32k.bsr.
1807 (frag_variant): Likewise.
1808 * write.c (relax_frag): Likewise.
374bdac7 1809 * config/tc-ns32k.c (*): Likewise.
374bdac7 1810
e819d858
ILT
1811Fri Apr 4 13:26:10 1997 Ian Lance Taylor <ian@cygnus.com>
1812
dc966dad
ILT
1813 * config/tc-hppa.h (TC_EOL_IN_INSN): Check explicitly for '!',
1814 rather than for any end of line character.
1815
5c11dba2
ILT
1816 * config/tc-hppa.c (tc_gen_reloc): If hppa_ren_reloc_type fails,
1817 call abort (i.e., as_abort) rather than crashing.
1818
457a20b5
ILT
1819 * config/tc-mips.c: Protect uses of STO_MIPS16 with an ifdef of
1820 OBJ_ELF, rather than of S_GET_OTHER.
1821
e819d858
ILT
1822 * Makefile.in (DISTCLEAN_HERE): Add site.exp and site.bak.
1823
3884d17b
ILT
1824Thu Apr 3 13:16:18 1997 Ian Lance Taylor <ian@cygnus.com>
1825
1826 * Makefile.in (VERSION): Set to 2.8.1.
1827
1828 * Branched binutils 2.8.
1829
08438bef
ILT
1830Wed Apr 2 12:24:10 1997 Ian Lance Taylor <ian@cygnus.com>
1831
64d20049
ILT
1832 * COPYING: Update FSF address.
1833
08438bef
ILT
1834 * config/tc-mips.c (mips16_macro): Handle M_DMUL and M_MUL.
1835
3c83da8a
JW
1836Tue Apr 1 18:29:47 1997 Jim Wilson <wilson@cygnus.com>
1837
1838 * config/tc-mips.c (md_begin): Don't set interlocks for 4100.
1839
396e8d7f
ILT
1840Tue Apr 1 16:24:28 1997 Klaus Kaempf <kkaempf@progis.de>
1841
1842 * config-gas.com: Update to handle both vax and alpha.
1843 * makefile.vms: Update to use config-gas.
1844 * conf-a-gas.com: Remove file.
1845
db237783
ILT
1846Tue Apr 1 16:08:21 1997 Ian Lance Taylor <ian@cygnus.com>
1847
1848 * Makefile.in: Remove unnecessary itbl-parse.h, ibtl-parse.c, and
1849 itbl-lex.c dependencies. Remove rules for itbl-lex.o,
1850 itbl-parse.o, and itbl-ops.o; just use the normal .c.o rule.
1851
64251de5
MM
1852start-sanitize-tic80
1853Tue Apr 1 11:25:56 1997 Michael Meissner <meissner@cygnus.com>
1854
1855 * config/tc-tic80.c (line_comment_char): Make '#' start comments
1856 at the beginning of a line for compatibility with .S files where
1857 cpp leaves the filename transitions beginning with '#'.
1858
1859end-sanitize-tic80
1860Tue Apr 1 00:07:30 1997 Ian Lance Taylor <ian@cygnus.com>
1861
1862 * config/tc-m68k.c: Only compile tc_coff_symbol_emit_hook and
1863 tc_coff_sizemachdep if OBJ_COFF.
1864
3c6adeaf
ILT
1865Mon Mar 31 23:53:44 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1866
1867 * config/tc-ppc.c (register_name): Declare.
1868
332d5c49
ILT
1869Mon Mar 31 16:31:04 1997 Joel Sherrill <joel@oarcorp.com>
1870
1871 * configure.in (hppa*-*-rtems*): New target, like hppa-*-*elf*.
1872 * configure: Rebuild.
1873
6d65a065
ILT
1874Mon Mar 31 14:15:19 1997 Ian Lance Taylor <ian@cygnus.com>
1875
2f2bcadb
ILT
1876 * config/tc-mips.c (mips_pseudo_table): Add "stabn".
1877 (mips16_mark_labels): New static function.
1878 (append_insn): Call mips16_mark_labels.
1879 (mips_emit_delays): Likewise.
1880 (s_insn): Likewise. Don't call mips_clear_insn_labels.
1881 (s_mips_stab): New static function.
1882
6d65a065
ILT
1883 * configure.in: Use ELF for mips-*-gnu*.
1884 * configure: Rebuild.
1885
ca37421e
ILT
1886Mon Mar 31 14:01:40 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1887
1888 * config/tc-m68k.h (TARGET_FORMAT): Set to "coff-m68k-sysv" if
1889 TE_DELTA.
1890
2e013bb7
ILT
1891Fri Mar 28 18:03:19 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
1892
1893 * configure.in: Add AC_ARG_ENABLE for commonbfdlib. If it is set,
1894 set OPCODES_LIB to empty.
1895 * configure: Rebuild.
1896
04b8ad8b
ILT
1897Fri Mar 28 15:25:24 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1898
1899 * configure.in (sparc-*-linux*aout*, sparc-*-linux*): New
1900 targets.
1901 * configure: Rebuild.
1902
acdc7ce3
ILT
1903Fri Mar 28 13:08:33 1997 Ian Lance Taylor <ian@cygnus.com>
1904
ab91e1ef
ILT
1905 * itbl-parse.y (yyerror): Make static. Declare.
1906
515c7142
ILT
1907 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
1908 * configure.in: Set emulations for mips-*-linux*-*.
1909 * configure: Rebuild.
1910
1347404a
ILT
1911 * config/tc-mips.c (struct mips_set_options): Define.
1912 (mips_opts): New static variable.
1913 (mips_isa): Remove. Now a field in mips_opts. Change all
1914 references.
1915 (mips16, mips16_autoextend, mips_warn_about_macros): Likewise.
1916 (mips_noreorder, mips_nomove, mips_noat, mips_nobopt): Likewise.
1917 (struct mips_option_stack): Define.
1918 (mips_opts_stack): New static variable.
1919 (s_mipsset): Add support for .set push and .set pop.
1920 * doc/c-mips.texi: Document .set push and .set pop.
1921
acdc7ce3
ILT
1922 * config/obj-elf.c (obj_elf_section_change_hook): New function.
1923 * config/obj-elf.h (obj_elf_section_change_hook): Declare it.
1924 * config/tc-mips.c (s_change_sec): Call it if OBJ_ELF.
1925
23ac3ca1
ILT
1926Thu Mar 27 12:23:56 1997 Ian Lance Taylor <ian@cygnus.com>
1927
e22e79dc
ILT
1928 * as.c (parse_args): Update copyright date in version message.
1929
9b8b7e97
ILT
1930 * Makefile.in (clean-here): Remove dependency files.
1931
23ac3ca1
ILT
1932 * read.c (s_comm): Check S_IS_COMMON as well as S_IS_DEFINED.
1933 (s_mri_common): Check S_IS_COMMON unconditionally.
1934 * symbols.c (colon): Check S_IS_COMMON as well as S_IS_DEFINED.
1935 * config/tc-alpha.c (s_alpha_comm): Likewise.
1936 * config/tc-mips.c (nopic_need_relax): Likewise.
1937 * config/tc-ppc.c (ppc_elf_lcomm): Likewise.
1938 (ppc_pe_comm): Likewise.
1939 * config/obj-elf.c (obj_elf_common): Likewise. Set segment of
1940 common symbol to bfd_com_section_ptr.
1941 * config/tc-sparc.c (s_common): Likewise.
1942 (tc_gen_reloc): Likewise.
1943
80834add
MH
1944start-sanitize-d30v
1945Thu Mar 27 00:29:46 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1946
1947 * config/tc-d30v.c (md_apply_fix3): Get the relocs right.
1948
1949end-sanitize-d30v
734a9064
ILT
1950Wed Mar 26 13:35:15 1997 H.J. Lu <hjl@lucon.org>
1951
1952 * config/tc-i386.c (tc_i386_fix_adjustable): Only define if
1953 BFD_ASSEMBLER.
1954
efda47f9
ILT
1955Wed Mar 26 11:32:51 1997 Ian Lance Taylor <ian@cygnus.com>
1956
80834add
MH
1957 * input-scrub.c (input_scrub_next_buffer): Handle very long input
1958 lines correctly.
1959
8cd0c287
ILT
1960 * listing.c (print_lines): Add lineno parameter. Change all
1961 callers.
1962 (listing_listing): Only call calc_hex for the right line.
1963 (listing_list): Set the new edict based on the current edict, in
1964 order to handle listing commands in macros correctly.
734a9064 1965
e807a57e
ILT
1966 * config/tc-mips.c (insn_uses_reg): Map register numbers in mips16
1967 instructions.
1968
efda47f9
ILT
1969 * cond.c (cond_finish_check): New function.
1970 * as.h (cond_finish_check): Declare.
1971 * as.c (main): Call cond_finish_check.
1972
710fdf47
MH
1973start-sanitize-d30v
1974Tue Mar 25 14:45:54 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1975
1976 * config/tc-d30v.c (md_assemble): If two instructions
1977 are supposed to be assembled in parallel and the first one is
1978 long, print an error and stop.
1979 (md_apply_fix3): Don't calculate absolute relocs. Just write
1980 them out.
1981
1982end-sanitize-d30v
1361ba77
ILT
1983Mon Mar 24 12:11:18 1997 Ian Lance Taylor <ian@cygnus.com>
1984
2fb44892
ILT
1985 * config/tc-i386.h (iclrKludge): Define.
1986 * config/tc-i386.c (md_assemble): Handle iclrKludge.
1987
1361ba77
ILT
1988 * config/tc-alpha.h (tc_frob_file_before_adjust): Define if
1989 OBJ_ECOFF.
1990 (alpha_frob_file_before_adjust): Declare if OBJ_ECOFF.
1991 * config/tc-alpha.c (alpha_debug): New static variable.
1992 (md_parse_option): Set alpha_debug if -g is seen.
1993 (alpha_frob_file_before_adjust): New function if OBJ_ECOFF.
1994
9c9e75bf
MH
1995start-sanitize-d30v
1996Sun Mar 23 18:03:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1997
1998 * config/tc-d30v.c (build_insn): Enable range-checking code.
1999 (postfix): Stop at space or comma. Fixes PR 11862.
2000 (md_assemble): Change error message.
2001
2002end-sanitize-d30v
65d7de4f
ILT
2003Sat Mar 22 13:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
2004
2005 * Makefile.in: Added automatic dependency building.
2006 * dep-in.sed: New file.
2007
949f1310
ILT
2008Fri Mar 21 15:42:37 1997 Ian Lance Taylor <ian@cygnus.com>
2009
7cad1a89
ILT
2010 * config/obj-ieee.c (segment_name): Don't define function if this
2011 is a macro.
2012
f062ec45
ILT
2013 * config/obj-coff.h (DO_STRIP): Don't define.
2014 * config/tc-h8300.h (DO_STRIP): Don't define.
2015 * config/tc-h8500.h (DO_STRIP): Don't define.
2016 * config/tc-w65.h (DO_STRIP): Don't define.
2017 * config/tc-z8k.h (DO_STRIP): Don't define.
2018
a71dc204
ILT
2019 * symbols.c (colon): Call obj_frob_label if it is defined.
2020 * config/obj-vms.h (obj_frob_label): Rename from tc_frob_label.
2021
949f1310
ILT
2022 * configure.in: Don't set files and links. Don't call
2023 AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
2024 obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
2025 * configure: Rebuild.
2026 * Makefile.in (TARG_CPU_C): New variable.
2027 (TARG_CPU_O, TARG_CPU_H): New variables.
2028 (OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
2029 (TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
2030 (SOURCES): Rename from REAL_SOURCES. Delete old definition.
2031 (LINKED_SOURCES): Remove.
2032 (HEADERS): Rename from REAL_HEADERS. Delete old definition.
2033 (LINKED_HEADERS): Remove.
2034 (OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
2035 ($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
2036 targ-cpu.h, etc.
2037 ($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
2038 (targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
2039 (itbl-cpu.h): Remove target.
2040 (DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
2041 atof-targ.h.
2042
35cfacf0
ILT
2043Thu Mar 20 19:18:58 1997 Ian Lance Taylor <ian@cygnus.com>
2044
2045 * doc/as.texinfo (Symbol Names): Don't use obsolete @ctrl macro.
2046
0dfeb41f
ILT
2047Thu Mar 20 16:49:14 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2048
2049 * config/tc-m68k.c (mri_chip): Replace calls to get_symbol_end by
2050 open coded loop that does not require the name to start with a
2051 name beginner.
2052
29bc322d
ILT
2053Thu Mar 20 13:42:01 1997 H.J. Lu <hjl@lucon.org>
2054
f59fb6ca
ILT
2055 * frags.c (frag_var): Change offset parameter to offsetT.
2056 (frag_variant): Likewise.
2057 * frags.h (frag_variant, frag_var): Update declarations.
2058 * config/tc-m68k.c (struct m68k_it): Change foff field to
2059 offsetT.
2060 (add_frag): Change off parameter to offsetT.
2061 * Several files: Add casts to calls to frag_var.
2062
29bc322d
ILT
2063 * Makefile.in (m68k-parse.c): Depend upon itbl-parse.c, to
2064 serialize a parallel make.
2065 (itbl-parse.h): Split target out from itbl-parse.c.
2066
9afc6631
ILT
2067Thu Mar 20 12:48:45 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2068
39ab5d3a
ILT
2069 * config/m68k-parse.y (motorola_operand): Allow (zdireg,EXPR).
2070
9afc6631
ILT
2071 * config/te-delta.h (COFF_COMMON_ADDEND): Define.
2072 * config/obj-coff.c (fixup_segment): Check COFF_COMMON_ADDEND when
2073 storing the value of a common symbol.
2074
7dd26961
ILT
2075Wed Mar 19 11:37:57 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2076
2077 * config/obj-coff.c (glue_symbols): Unused variable symbolP
2078 removed.
2079 (crawl_symbols): Do not modify symbol_rootP and symbol_lastP here;
2080 that is done by symbol_remove and symbol_insert.
2081
2082 * config/obj-coff.h (S_IS_LOCAL): Return 0 for a debugging
2083 symbol.
2084
ac766f70
ILT
2085Wed Mar 19 11:06:29 1997 Ian Lance Taylor <ian@cygnus.com>
2086
2087 * config/tc-mips.c (load_register): In 32 bit mode, when not
2088 dealing with a 64 bit number, permit the upper 32 bits to be set
2089 even if bit 31 is not set.
2090
58cfdde3
ILT
2091Tue Mar 18 23:30:14 1997 Ian Lance Taylor <ian@cygnus.com>
2092
2093 * read.c (potable): Add "equiv".
2094 (s_set): Handle .equiv based on argument.
2095 * doc/as.texinfo (Equiv): New node to document .equiv.
2096 (Err): New node to document .err.
2097
7cd06f44
ILT
2098Tue Mar 18 15:50:13 1997 H.J. Lu <hjl@lucon.org>
2099
2100 * Many files: Add function prototypes.
2101 * as.c (show_usage, parse_args): Make static.
2102 * frags.h (frag_alloc): Declare.
2103 * subsegs.c (subseg_set_rest): Don't declare frag_alloc.
2104 * symbols.c (dollar_label_instance): Change return type to long.
2105 * symbols.h (print_symbol_value): Declare.
2106 (print_expr, print_expr_1, print_symbol_value_1): Declare.
2107 * write.c (fix_new_exp): Don't declare make_expr_symbol.
2108 (remove_subsegs, relax_frag): Make static.
2109 * config/atof-vax.c (atof_vax_sizeof): Change letter to int.
2110 (what_kind_of_float): Likewise.
2111 (atof_vax): Make static. Change what_kind to int.
2112 (md_atof): Change what_statement_type to int.
2113 * config/obj-ecoff.h (obj_ecoff_set_ext): Declare.
2114 * config/tc-alpha.c (vax_md_atof): Declare.
2115 (md_atof): Don't declare atof_ieee and vax_md_atof.
2116 * config/tc-i386.c (set_16bit_code_flag): Make static.
2117 * config/tc-i386.h (tc_i386_fix_adjustable): Declare.
2118 * config/tc-m68k.c (add_fix): Change width to int.
2119 (insert_reg): Change regname to const.
2120 (md_atof): Don't declare atof_ieee.
2121 (demand_empty_rest_of_line): Don't declare.
2122 * config/tc-m88k.c (md_atof): Don't declare atof_ieee.
2123 * config/tc-sparc.c (cmp_reg_entry): Change args to const PTR.
2124 (parse_keyword_arg): Change lookup_fn to take const arg.
2125 (md_atof): Don't declare atof_ieee.
2126 * config/tc-sparc.h: Add ifdef for multiple inclusion.
2127 (tc_aout_pre_write_hook): Don't declare.
2128
590c50d8
ILT
2129Mon Mar 17 11:21:09 1997 Ian Lance Taylor <ian@cygnus.com>
2130
2131 * as.h (bfd_alloc_by_size_t): Don't declare.
2132 * Many files: Use xmalloc rather than bfd_alloc_by_size_t.
2133
4b0895cf 2134Sun Mar 16 13:49:21 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
e95ef7c1
ILT
2135
2136 * symbols.c (symbol_new): Don't call debug_verify_symchain.
2137 (symbol_append): Set sy_next and sy_previous when adding a single
2138 symbol to an empty list. Call debug_verify_symchain.
2139 (verify_symbol_chain): Use assert, not know.
2140
5cf4e55e
FF
2141Sat Mar 15 20:27:12 1997 Fred Fish <fnf@cygnus.com>
2142
2143 * NEWS: Note BeOS support.
2144 * configure.in: (ppc-*-beos): New target, use coff as object format.
2145 * configure: Regenerate with autoconf.
2146
9591ad40
ILT
2147Sat Mar 15 19:14:02 1997 Ian Lance Taylor <ian@cygnus.com>
2148
18f7e3dc
ILT
2149 * config/tc-mips.c (md_apply_fix): Improve error message for out
2150 of range branch.
2151
9591ad40
ILT
2152 * Makefile.in: Add dependencies on obstack.h where needed.
2153
ef014e09
ILT
2154Fri Mar 14 15:33:38 1997 Ian Lance Taylor <ian@cygnus.com>
2155
46a92fde
ILT
2156 * config/tc-mips.c (md_estimate_size_before_relax): Handle the
2157 case of a symbol equated to another symbol when using SVR4_PIC.
2158
ef014e09
ILT
2159 * Makefile.in (TARG_CPU_DEP_sparc): Add opcode/sparc.h.
2160
2e9974a4
ILT
2161Thu Mar 13 11:20:51 1997 Ian Lance Taylor <ian@cygnus.com>
2162
d428c89f
ILT
2163 * read.c (read_a_source_file): Call LISTING_NEWLINE before
2164 HANDLE_CONDITIONAL_ASSEMBLY when handling an MRI line label.
2165
2e9974a4
ILT
2166 * config/obj-elf.c (obj_elf_data): Call md_flush_pending_output
2167 and md_elf_section_change_hook if they are defined.
2168 (obj_elf_text, obj_elf_previous): Likewise.
2169
80633e8e
ILT
2170Wed Mar 12 11:40:20 1997 Ian Lance Taylor <ian@cygnus.com>
2171
2e9974a4
ILT
2172 * config/obj-multi.h (struct elf_obj_sy): Define if
2173 OBJ_MAYBE_ELF.
2174 (OBJ_SYMFIELD_TYPE): Define as struct elf_obj_sy if
2175 OBJ_MAYBE_ELF.
2176 * config/obj-elf.h (struct elf_obj_sy): Don't define if
2177 OBJ_SYMFIELD_TYPE is defined.
2178
80633e8e
ILT
2179 * doc/as.texinfo (bss): Improve description of .bss section. In
2180 ELF or COFF, you are permitted to switch into the section.
2181 (Comm): Rewrite description of common symbols.
2182 (Lcomm): Mention that some targets permit a third argument.
2183
6d8dfa04
ILT
2184Tue Mar 11 01:13:31 1997 Ian Lance Taylor <ian@cygnus.com>
2185
9be8c0f1
ILT
2186 * config/tc-ppc.c (ppc_elf_lcomm): Don't call S_CLEAR_EXTERNAL.
2187
92b7bfb7
ILT
2188 * symbols.c (colon): Change type of local to int. From Alan Modra
2189 <alan@spri.levels.unisa.edu.au>.
2190
e053e8c1
ILT
2191 * config/tc-m88k.c (m88k_do_align): Don't use a special nop
2192 alignment if a zero fill pattern was explicitly specified.
2193 * config/tc-sh.c (sh_do_align): Likewise.
2194
842b6b06
ILT
2195 * read.c (equals): Always permit register names to be redefined.
2196
ee2c03ed
ILT
2197 * config/tc-mips.c (mips_fix_adjustable): Permit a reloc against a
2198 mips16 symbol to be adjusted if a symbol is being subtracted from
2199 it.
2200
6d8dfa04
ILT
2201 From Eric Youngdale <eric@andante.jic.com>:
2202 * config/obj-elf.c (obj_elf_symver): Check for duplicate or
2203 illegal symbol version names.
2204 (elf_frob_symbol): Check for external default versions.
2205
d88cc85d
ILT
2206Sun Mar 9 23:49:12 1997 Ian Lance Taylor <ian@cygnus.com>
2207
2208 From Eric Youngdale <eric@andante.jic.com>:
2209 * config/obj-elf.h (struct elf_obj_sy): Define.
2210 (OBJ_SYMFIELD_TYPE): Define to elf_obj_sy struct. Change all
2211 users.
2212 * config/obj-elf.c (obj_elf_symver): Just record the name.
2213 (obj_symbol_new_hook): Initialized versioned_name field.
2214 (elf_frob_symbol): If there is a versioned_name, either rename the
2215 symbol, or add an alias with that name.
2216
a405bb3e
JL
2217Thu Mar 6 13:55:32 1997 Jeffrey A Law (law@cygnus.com)
2218
ef03fee0
JL
2219 * config/tc-mn10300.c (md_relax_table): Define.
2220 (md_convert_frag): Implement.
2221 (md_assemble): Handle relaxable operands/instructions correctly.
2222 (md_estimate_size_before_relax): Implement.
2223 * config/tc-mn10300.h (TC_GENERIC_RELAX_TABLE): Define.
2224
27103699
JL
2225 * config/tc-mn10200.c (md_relax_table): Fix typos.
2226
a405bb3e
JL
2227 * config/tc-mn10300.c (md_assemble): Don't use any MN10300 specific
2228 relocs anymore. Tweak fx_offset for pc-relative relocs.
2229
d6545e3f
ILT
2230Wed Mar 5 15:46:16 1997 Ian Lance Taylor <ian@cygnus.com>
2231
2232 * cond.c (s_ifc): Call mri_comment_field and mri_comment_end when
2233 in MRI mode.
2234
e74539b8
FF
2235start-sanitize-tic80
2236Tue Mar 4 19:34:21 1997 Fred Fish <fnf@cygnus.com>
2237
1ea52646
FF
2238 * config/tc-tic80.c (md_pseudo_table): Add "sect" and "section"
2239 pseudo-ops.
e74539b8
FF
2240 * config/tc-tic80.c (md_begin): Declare external variable
2241 coff_flags and insert an F_AR32WR bit into it.
2242
2243end-sanitize-tic80
2244Tue Mar 4 10:01:04 1997 Ian Lance Taylor <ian@cygnus.com>
2245
2246 * read.c (equals): Add reassign parameter. Change all callers.
2247 * read.h (equals): Update declaration.
2248
a941619c
ILT
2249Sat Mar 1 01:04:04 1997 Ian Lance Taylor <ian@cygnus.com>
2250
2251 * config/tc-mips.c (mips16_extended_frag): Don't assume that we
2252 can rely on the frag address to determine whether a frag is
2253 earlier or later.
2254
23604921
ILT
2255Fri Feb 28 14:40:00 1997 Ian Lance Taylor <ian@cygnus.com>
2256
2257 * write.h (LOCAL_LABEL): Only define if not BFD_ASSEMBLER.
2258 (S_LOCAL_NAME): Likewise.
2259 (FAKE_LABEL_NAME): Define unconditionally.
2260 * symbols.c (colon): Call bfd_is_local_label, not LOCAL_LABEL, if
2261 BFD_ASSEMBLER.
2262 (S_IS_LOCAL): Call bfd_is_local_label_name, not LOCAL_LABEL.
2263 * config/tc-*.h: Only define LOCAL_LABEL if not BFD_ASSEMBLER.
2264 Don't define FAKE_LABEL_NAME.
2265 * config/te-ic960.h: Likewise.
2266 * config/tc-mips.h (tc_frob_file_before_adjust): Define.
2267 (mips_frob_file_before_adjust): Declare.
2268 * config/tc-mips.c (mips_frob_file_before_adjust): New function.
2269 (mips_local_label): Remove.
2270
2271 * config/te-sco386.h: Remove; not used.
2272
a88ce21e
FF
2273start-sanitize-tic80
2274Thu Feb 27 15:39:16 1997 Fred Fish <fnf@cygnus.com>
2275
2276 * config/tc-tic80 (md_pseudo_table): Add align pseudo op to do
2277 byte alignment rather than power-of-two alignment that is the
2278 GAS default.
2279
2280end-sanitize-tic80
0f68bf0a
ILT
2281Thu Feb 27 13:29:04 1997 Ian Lance Taylor <ian@cygnus.com>
2282
e053e8c1 2283 * config/tc-m68k.c (md_assemble): Handle a reloc width of 'W'.
f396c4ef 2284
0f68bf0a
ILT
2285 * gasp.c (hash_add_to_string_table): Correct misspelling in error
2286 message, and add newline.
2287 (process_file): Don't process assignments in the label if this is
2288 a equ or assign pseudo-op.
2289 (process_pseudo_op): Swap first argument to do_assign for K_ASSIGN
2290 and K_EQU, to match documentation.
2291
0fe302ac
MM
2292Thu Feb 27 12:00:03 1997 Michael Meissner <meissner@cygnus.com>
2293
2294 * config/obj-coff.c (obj_coff_section): Add 'r' section attribute
2295 to denote read-only data sections.
2296
30d0557c
ILT
2297Thu Feb 27 00:26:33 1997 Ian Lance Taylor <ian@cygnus.com>
2298
35c64f24
ILT
2299 * config/obj-elf.c (obj_elf_common): Set BSF_OBJECT in flags.
2300 * config/tc-sparc.c (s_common): Likewise, if BFD_ASSEMBLER.
2301
30d0557c
ILT
2302 * expr.c (operand): Simplify 0b handling. Don't treat 0b as a
2303 binary number if the next character is '+' or '-'.
2304
1e12595d
FF
2305start-sanitize-tic80
2306Wed Feb 26 20:47:12 1997 Fred Fish <fnf@cygnus.com>
2307
2308 * config/tc-tic80.c (FLT_CHARS): Change from "dD" to "fF".
2309 (find_opcode): Match operands that can be floats.
2310 (build_insn): Handle O_big (float) expressions and build
2311 correct opcode.
2312
2313end-sanitize-tic80
af942793
SS
2314Wed Feb 26 18:19:00 1997 Stan Shebs <shebs@andros.cygnus.com>
2315
2316 * configure.in (mips*-*-lnews*): New target, also make empty
2317 emulation list for this target.
2318 * configure: Update.
2319 * tc-mips.c (ECOFF_LITTLE_FORMAT): Define.
2320 (mips_target_format): Use.
2321 * te-lnews.h: New file.
2322
f92f247b
FF
2323start-sanitize-tic80
2324Wed Feb 26 15:33:46 1997 Fred Fish <fnf@cygnus.com>
2325
2326 * config/tc-tic80.c (find_opcode, build_insn): Changes to match
2327 operands with :m or :s modifiers and generate the right opcodes
2328 for them.
2329
2330end-sanitize-tic80
7a515708
ILT
2331Wed Feb 26 11:56:11 1997 Ian Lance Taylor <ian@cygnus.com>
2332
2333 * Makefile.in (itbl-parse.c itbl-parse.h): Use $(BISON) and
2334 $(BISONFLAGS), not $(YACC) and $(YACCFLAGS).
2335
55be99d6
ILT
2336Tue Feb 25 22:02:23 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2337
2338 * config/tc-m68k.c (instring): Useless local declaration of
2339 crack_operand removed.
2340 * expr.h (expressionS): Changed type of X_op field to operatorT if
2341 __GNUC__.
2342
28d8c671
ILT
2343Tue Feb 25 13:17:27 1997 Ian Lance Taylor <ian@cygnus.com>
2344
034988c6
ILT
2345 Based on patches from Robert Lipe <robertl@dgii.com>:
2346 * configure.in: Add i386coff and i386elf to emulation list.
2347 * configure: Rebuild.
2348 * as.c (i386coff, i386elf): Declare.
2349 * obj.h (coff_format_ops): Declare.
2350 * config/obj-coff.c (OBJ_HEADER): Define.
2351 (coff_obj_symbol_new_hook): Rename from obj_symbol_new_hook.
2352 (coff_obj_read_begin_hook): Rename from obj_read_begin_hook.
2353 (obj_pseudo_table): Add "version".
2354 (coff_pop_insert): New static function.
2355 (coff_sec_sym_ok_for_reloc): New static function.
2356 (no_func): New static function.
2357 (coff_format_ops): New variable.
2358 * config/obj-coff.h (coff_obj_symbol_new_hook): Declare.
2359 (obj_symbol_new_hook): Define.
2360 (coff_obj_read_begin_hook): Declare.
2361 (obj_read_begin_hook): Define.
2362 * config/tc-i386.h (i386_target_format): Declare.
2363 * config/tc-i386.c: Check OBJ_MAYBE_ELF as well as OBJ_ELF; check
2364 OUTPUT_FLAVOR when appropriate.
2365 (i386_target_format): New function.
2366 * Makefile.in (obj-coff.o): New target.
2367 (e-i386coff.o, e-i386elf.o): New targets.
2368
a0c4a241
ILT
2369 From Stephen Williams <steve@icarus.icarus.com>:
2370 * config/tc-i960.h (TC_SYMFIELD_TYPE): Define if OBJ_COFF.
2371 (_tc_get_bal_of_call): Don't declare.
2372 (tc_get_bal_of_call): Declare as function, don't define as macro.
2373 * config/tc-i960.c (tc_set_bal_of_call): If OBJ_COFF, store balP
2374 in sy_tc field, not x_balntry field.
2375 (tc_get_bal_of_call): Rename from _tc_get_bal_of_call. Change
2376 return type to symbolS *. If OBJ_COFF, retrieve value from sy_tc
2377 field, not x_balntry field.
2378
2379 * config/obj-elf.c (obj_elf_section): Permit a .note section to
2380 have the SHF_ALLOC attribute.
2381
a90512ad
ILT
2382 * Makefile.in ($(OBJS)): Don't depend upon $(IT_HDRS).
2383 (TARG_CPU_DEP_mips): Depend upon $(srcdir)/itbl-ops.h.
2384 (itbl-lex.o): Depend upon itbl-parse.h.
2385
2386 * itbl-parse.y (yyerror): Change return type to int. Change to
2387 use old style function declaration.
2388
ee5cb7fe
ILT
2389 * Makefile.in (itbl-lex.o): Remove -Wall.
2390 (itbl-parse.o): Likewise.
2391
28d8c671
ILT
2392 * cond.c (s_ifdef): If we should omit conditionals from listings,
2393 call listing_list.
2394 (s_if, s_ifc, s_endif, s_else, s_ifeqs): Likewise.
2395 * listing.c (list_info_struct): Add EDICT_NOLIST_NEXT.
2396 (listing_listing): Handle EDICT_NOLIST_NEXT.
2397 (listing_list): An argument of 2 means EDICT_NOLIST_NEXT.
2398 * listing.h (LISTING_NOCOND): Define.
2399 (LISTING_SKIP_COND): Define.
2400 * as.c (show_usage): Mention c as a suboption of -a.
2401 (parse_args): Handle c as a suboption of -a.
2402 * doc/as.texinfo: Document -alc.
2403
b16a8c8e
FF
2404start-sanitize-tic80
2405Mon Feb 24 23:34:14 1997 Fred Fish <fnf@cygnus.com>
2406
2407 * config/tc-tic80.c (md_apply_fix): Handle R_ABS type fixups.
2408
2409end-sanitize-tic80
2410Mon Feb 24 18:27:43 1997 Eric Youngdale <eric@andante.jic.com>
2411
2412 * doc/as.texinfo: Document .symver.
2413
4d3410fd
MH
2414Mon Feb 24 15:19:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
2415
2416 * config/tc-d10v.c: Change pre_defined_registers to
2417 d10v_predefined_registers and reg_name_cnt to d10v_reg_name_cnt.
2418
ec72a266
FF
2419Mon Feb 24 10:40:45 1997 Fred Fish <fnf@cygnus.com>
2420
2421 * config/obj-coff.c: Fix typo in comment section.
2422start-sanitize-tic80
2423 * config/tc-tic80.c (md_pseudo_table): Add entry for bss, which takes
2424 an additional alignment argument.
2425 (find_opcode): Allow O_symbol relocs for any 32 bit field, not just
2426 base relative ones.
2427 (build_insn): Handle O_symbol relocs for any 32 bit field, not just
2428 base relative ones.
2429end-sanitize-tic80
2430
16aef5b0
DP
2431Mon Feb 24 02:23:00 1997 Dawn Perchik <dawn@cygnus.com>
2432
2433 * Makefile.in: Remove dependancies on itbl-cpu.h.
2434 * as.c: Define stubs for itbl_parse and itbl_init if HAVE_ITBL_CPU
2435 is not defined.
2436
ac6c6bdb
DP
2437Mon Feb 24 02:03:00 1997 Dawn Perchik <dawn@cygnus.com>
2438
2439 * itbl-ops.h: Include as.h.
2440
72797ffa
DP
2441Mon Feb 24 01:04:00 1997 Dawn Perchik <dawn@cygnus.com>
2442
2443 * as.c: Remove -t option.
2444 * configure, configure.in: Move itbl-cpu.h to mips specific configure.
2445 * itbl-ops.h: Include itbl-cpu.h only if HAVE_ITBL_CPU is defined.
2446 * config/tc-mips.h: Define HAVE_ITBL_CPU.
2447
2f671f84
DP
2448Sun Feb 23 18:01:00 1997 Dawn Perchik <dawn@cygnus.com>
2449
2450 * itbl-ops.c: Don't define DEBUG.
2451
f9f0539f
DP
2452Sun Feb 23 17:49:00 1997 Dawn Perchik <dawn@cygnus.com>
2453
2454 * Makefile.in: Update itbl-test.c to reflect its new location.
2455
8d8a790b
DP
2456Sun Feb 23 15:50:00 1997 Dawn Perchik <dawn@cygnus.com>
2457
2458 * itbl-ops.c: Add test for itbl_have_entries.
2459 * config/tc-mips.c: Remove test for itbl_have_entries.
2460 * config/tc-mips.h: Define tc_init_after_args to mips_init_after_args.
2461
7b9f3d46
ILT
2462Sun Feb 23 18:13:19 1997 Ian Lance Taylor <ian@cygnus.com>
2463
2464 * Makefile.in (DISTSTUFF): Remove itbl-parse.y, itbl-lex.l, and
2465 itbl-ops.c. Add itbl-parse.c and itbl-lex.c.
2466 (LEX, LEXFLAGS): Define.
2467 * itbl-ops.c (append_insns_as_macros): Remove bogus ASSERT.
2468
efec4a28
DP
2469Sat Feb 22 21:25:00 1997 Dawn Perchik <dawn@cygnus.com>
2470
2471 * itbl-parse.y: Fix indentation mistakes from indent program.
2472 * itbl-lex.l: Fix indentation mistakes from indent program.
2473 * itbl-ops.h: Add include for ansidecl.h.
2474 Add PARAMS around function arguments.
2475 Add declaration for itbl_have_entries.
2476 * itbl-ops.c: Add PARAMS around function arguments.
2477 * Makefile.in: Add itbl build rules.
2478 Add dependancies for itbl files to mips target.
2479 * as.c: Add itbl support.
2480 Add new option "--insttbl" for dynamically extending instruction set.
2481 * as.h: Declare insttbl_file_name;
2482 the name of file defining extensions to the basic instruction set
2483 * configure.in, configure: Add itbl-parse.o, itbl-lex.o, and
2484 itbl-ops.o to extra_objects for mips configuration.
2485 Add include file link from itbl-cpu.h to
2486 config/itbl-${target_cpu_type}.h.
2487 * config/tc-mips.c: Allow copz instructions.
2488 Add notes for future additions to the itbl support.
2489 Add debug macros.
2490 (macro): Call itbl_assemble to assemble itbl instructions.
2491 See if an unknown register is specified in an itbl entry.
2492
d160b69e
FF
2493Sat Feb 22 20:53:01 1997 Fred Fish <fnf@cygnus.com>
2494 * doc/internals.texi (CPU backend): Fix typo in md_section_align
2495 description.
2496start-sanitize-tic80
2497 * config/tc-tic80.h (NEED_FX_R_TYPE): Define.
2498 * config/tc-tic80.c (find_opcode): Add code to support O_symbol
2499 operands.
2500 (build_insn): Grab a frag early so we can use the address in
2501 fixups. Take one's complement of BITNUM values before insertion
2502 in opcode. Add code to support O_symbol operands.
2503 (md_apply_fix): Replace unimplemented warning with implementation.
2504 (md_pcrel_from): Ditto.
2505 (tc_coff_fix2rtype): Ditto.
2506end-sanitize-tic80
2507
09d9ef26 2508Fri Feb 21 14:34:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1b524697
MH
2509start-sanitize-d30v
2510 * config/tc-d30v.c (parallel_ok): New function.
2511 * config/tc-d30v.h: Define TARGET_BYTES_BIG_ENDIAN.
2512end-sanitize-d30v
09d9ef26
MH
2513 * config/tc-d10v.c (md_pcrel_from_section): Return 0 if
2514 relocation is in different section. Fixes PR11574.
2515
e2e5acfa
JW
2516Fri Feb 21 10:08:25 1997 Jim Wilson <wilson@cygnus.com>
2517
2518 * tc-mips.c (mips_ip): If configured for an embedded ELF system,
2519 don't set the section alignment to 2**4.
2520
fee3e248
ILT
2521Fri Feb 21 11:55:03 1997 Ian Lance Taylor <ian@cygnus.com>
2522
b2f7cdd0
ILT
2523 * config/tc-m68k.c (line_comment_chars): Add '*'.
2524
830ce631
ILT
2525 * app.c (LEX_IS_TWOCHAR_COMMENT_2ND): Don't define.
2526 (do_scrub_begin): Don't set lex['*'].
2527 (do_scrub_chars): When handling LEX_IS_TWOCHAR_COMMENT_1ST, don't
2528 check for LEX_IS_TWOCHAR_COMMENT_2ND. Instead, just check for
2529 a literal '*'.
2530
fee3e248
ILT
2531 * configure.in: Set em=svr4 for m68k-*-sysv4*.
2532 * configure: Rebuild.
2533 * config/te-svr4.h: New file.
2534 * config/tc-m68k.c (m68k_comment_chars): Only include `#' if
2535 TE_SVR4 or TE_DELTA.
2536
48242b28
JL
2537Thu Feb 20 22:24:39 1997 Jeffrey A Law (law@cygnus.com)
2538
2539 * config/tc-mn10200.c (md_convert_frag): Create a fixup for the
2540 short conditional branch around a long unconditional branch.
2541
1af411e1
ILT
2542Thu Feb 20 13:56:00 1997 Ian Lance Taylor <ian@cygnus.com>
2543
64c5df8d
ILT
2544 * config/obj-coff.c (obj_coff_ln [both versions]): Call
2545 new_logical_line.
2546
1af411e1
ILT
2547 * config/tc-arm.c (fix_new_arm): Use make_expr_symbol to handle a
2548 complex expression.
2549
2550 * symbols.c (resolve_symbol_value): If both left and right
2551 operands are undefined, warn about both of them.
2552
78673fc6
ILT
2553Wed Feb 19 00:53:28 1997 Ian Lance Taylor <ian@cygnus.com>
2554
dd7feeb5
ILT
2555 Based on patches from Eric Youngdale <eric@andante.jic.com>:
2556 * config/obj-elf.c (elf_pseudo_table): Add "symver".
2557 (obj_elf_symver): New static function.
2558 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy the st_other
2559 field.
2560
2561 * write.c (relax_segment): Make type and printf format agree.
2562
78673fc6
ILT
2563 * read.c (get_line_sb): Don't end the line on a semicolon inside a
2564 string.
2565
14f23c28
MH
2566start-sanitize-d30v
2567Tue Feb 18 18:42:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
2568
2569 * config/tc-d30v.c, config/tc-d30v.h: New files.
2570
2571 * configure: Rebuilt.
2572
2573 * configure.in: Add case for d30v.
2574
2575end-sanitize-d30v
2576Sun Feb 16 17:47:29 1997 Fred Fish <fnf@toadfish.ninemoons.com>
2577
2578 * config/tc-alpha.h (md_operand): Define with a null expansion,
2579 like all the other targets.
2580 * doc/internals.texi (CPU backend): Add missing word in
2581 md_flush_pending_output description. Fix typo in md_convert_frag
2582 description.
2583start-sanitize-tic80
2584 * config/tc-tic80: Minor comment additions/changes.
2585end-sanitize-tic80
2586
b253dcff
ILT
2587Fri Feb 14 18:09:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2588
2589 * config/tc-m68k.c (LOCAL_LABEL): Macro redefined if TE_DELTA.
2590 (tc_canonicalize_symbol_name): Macro defined if TE_DELTA.
2591 * config/obj-coff.c (obj_coff_def): Use
2592 tc_canonicalize_symbol_name if defined.
2593 (obj_coff_tag, obj_coff_val): Likewise.
2594 * expr.c (operand): Reject '~' as operator if is_name_beginner.
2595
d7bf6158
ILT
2596Fri Feb 14 17:24:48 1997 Ian Lance Taylor <ian@cygnus.com>
2597
f5ed78de
ILT
2598 Based on notes from Peter Eriksson <peter@ifm.liu.se>. The target
2599 does not actually work, though:
2600 * configure.in (i386-sequent-bsd*): New target.
2601 * configure: Rebuild.
2602 * config/tc-dynix.h: New file.
2603 * config/tc-i386.h: Define TARGET_FORMAT if TE_DYNIX.
2604
d7bf6158
ILT
2605 * read.c (do_align): Add max parameter. Change all callers.
2606 Remove useless static variables.
2607 (s_align): New static function. Do common portion of
2608 s_align_bytes and s_align_ptwo.
2609 (s_align_bytes, s_align_ptwo): Just call s_align.
2610 * frags.c (frag_align): Add max parameter. Change all callers.
2611 (frag_align_pattern): Likewise.
2612 * frags.h (frag_align, frag_align_pattern): Update declarations.
2613 * write.c (relax_segment): Limit alignment change to fr_subtype.
2614 Fix some types to be addressT.
2615 * config/obj-coff.c (size_section): Likewise.
2616 * config/obj-ieee.c (size_section): Likewise.
2617 * config/tc-d10v.h (md_do_align): Add max parameter.
2618 * config/tc-i386.h (md_do_align): Likewise.
2619 * config/tc-m88k.h (md_do_align): Likewise.
2620 * config/tc-m88k.c (m88k_do_align): Likewise.
2621 * config/tc-sh.h (md_do_align): Likewise.
2622 * config/tc-sh.c (sh_do_align): Likewise.
2623 * as.h: Improve comments on rs_align and rs_align_code.
2624 * doc/as.texinfo: Document new alignment arguments.
2625 * doc/internals.texi (Frags): Document use of fr_subtype field for
2626 rs_align and rs_align_code.
2627
2628Fri Feb 14 15:56:06 1997 Gavin Koch <gavin@cygnus.com>
2629
2630 * config/tc-mips.c: Changed opcode parsing.
2631
16171d71
FF
2632Thu Feb 13 20:02:16 1997 Fred Fish <fnf@cygnus.com>
2633
fda193d9 2634 * config/{tc-alpha.h, tc-d10v.h, tc-generic.h, tc-i960.h,
ec2f730d 2635 tc-mn10200.h, tc-mn10300.h, tc-sh.h, tc-vax.h, tc-w65.h}:
16171d71
FF
2636 Add default definition of zero for TARGET_BYTES_BIG_ENDIAN.
2637 * config/{tc-arm.h, tc-hppa.h, tc-i386.h, tc-mips.h, tc-ns32k.h,
2638 tc-ppc.h, tc-sparc.h}: Move definition of TARGET_BYTES_BIG_ENDIAN
2639 to a location consistent with the rest of the target include files.
2640 * config/tc-i386.c: Remove misleading comment.
2641 * doc/internals.texi (CPU backend): Add description of function
2642 md_undefined_symbol.
2643start-sanitize-tic80
2644 * config/tc-tic80.c: Add code to insert predefined symbols into the
2645 symbol table so they can be parsed by the standard expression parser.
2646 Remove custom code that use to parse them.
2647 * config/tc-tic80.h: Move definition of TARGET_BYTES_BIG_ENDIAN
2648 to a location consistent with the rest of the target include files.
2649end-sanitize-tic80
2650
9f13ead9
ILT
2651Thu Feb 13 21:44:18 1997 Klaus Kaempf <kkaempf@progis.de>
2652
2653 * as.h: GNU c provides unlink() function.
2654
2655 Unify section handling on openVMS/Alpha:
2656 * config/tc-alpha.c(s_alpha_link): Remove.
2657 (s_alpha_section): New function.
2658 Remove case-hacking of symbols
2659 Add .code_address pseudo-op.
2660 (BFD_RELOC_ALPHA_CODEADDR): New relocation.
2661 (s_alpha_code_address): New function.
2662 (alpha_ctors_section, alpha_dtors_section): New sections for C++
2663 static constructors/destructors.
2664 Add debug code for crash debugs, to be removed when traceback code
2665 is added to object code.
2666 (s_alpha_name): New function for .name pseudo-op.
2667 (alpha_print_token): New function to print token expressions with
2668 alpha specific extensions.
2669
2670 * makefile.vms: Allow compilation with current gcc snapshot.
2671
af16e411
FF
2672Thu Feb 13 16:29:04 1997 Fred Fish <fnf@cygnus.com>
2673
2674 * doc/Makefile.in (TEXI2DVI): Set to just name of program.
2675 (DVIPS): Set to dvips.
2676 (ps, as.ps, gasp.ps): New targets.
2677 (internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
2678 and MAKEINFO env variables.
2679 (internals.ps): Use DVIPS macro.
2680 (clean): Remove core and backup files.
2681 (distclean): Remove temporary files from building internals.
2682 (clean-dvi): Ditto.
2683 * doc/internals.texi (Frags): Fix typo.
2684 (GAS processing): Ditto.
2685 (CPU backend): Ditto.
2686 * ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
2687 * mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
2688 * read.c: Remove ugly hack that dealt with config files not
2689 correctly defining TARGET_BYTES_BIG_ENDIAN.
2690 (target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
2691 * config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
2692 * config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
2693 * config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
2694 * config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
2695 * config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
2696 * config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
2697 with TARGET_BYTES_BIG_ENDIAN defined to 0.
2698 * config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
2699 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
2700 whether it is defined or not.
2701 * config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
2702 * config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
2703 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
2704 whether it is defined or not.
2705start-sanitize-tic80
2706 * config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
2707 (TARGET_BYTES_BIG_ENDIAN): Define to 0.
2708end-sanitize-tic80
2709
89b41978
DE
2710Thu Feb 13 14:40:16 1997 Doug Evans <dje@canuck.cygnus.com>
2711
2712 * write.c (write_relocs): Correct text in as_fatal error message,
2713 bfd_perform_relocation -> bfd_install_relocation.
2714
151c3ec0
ILT
2715Thu Feb 13 14:48:03 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2716
2717 * config/tc-m68k.c (LEX_TILDE): Define if TE_DELTA.
2718 * read.c (LEX_TILDE): Define if not defined.
2719 (lex_type): Use LEX_TILDE.
2720 * expr.c (get_symbol_end): Check first char with is_name_beginner,
2721 not is_part_of_name.
2722
4a1cb507
ILT
2723Thu Feb 13 11:40:58 1997 Ian Lance Taylor <ian@cygnus.com>
2724
3de9d78c
ILT
2725 * config/tc-sparc.c (md_show_usage): Add missing backslash at end
2726 of continued line.
2727
319305a7
ILT
2728 * config/tc-mips.c (mips16_extended_frag): Correct base address
2729 for an extended PC relative instruction.
2730 (md_convert_frag): Likewise.
2731
4a1cb507
ILT
2732 * config/tc-mips.c (prev_nop_frag): New static variable.
2733 (prev_nop_frag_holds): New static variable.
2734 (prev_nop_frag_required): New static variable.
2735 (prev_nop_frag_since): New static variable.
2736 (append_insn): If we aren't reordering, and prev_nop_frag is not
2737 NULL, and we don't need any nops, then decrease the size of
2738 prev_nop_frag. Don't insert nops because of instructions in
2739 noreorder sections. Remember whether the previous instructions
2740 where in noreorder sections even when not reordering.
2741 (mips_no_prev_insn): Add preserver parameter. Change all
2742 callers. Refer prev_nop_frag variables when appropriate.
2743 (mips_emit_delays): Set up prev_nop_frag.
2744 (s_mipsset): Clear prev_nop_frag if reordering.
2745
ebf28372
ILT
2746Wed Feb 12 14:36:29 1997 Ian Lance Taylor <ian@cygnus.com>
2747
9cd4e6cc
ILT
2748 * config/tc-mips.c (append_insn): Remove useless code which
2749 handled swapping a mips16 jump with a mips16 instruction with a
2750 reloc.
2751
05874c2e
ILT
2752 * config/tc-mips.c (md_parse_option): When debugging, set
2753 mips_optimize to 1, not 0.
2754
56bb6eee
ILT
2755 * config/tc-mips.c (mips16_ip): Handle an extend operand.
2756
eb17f56c
ILT
2757 * config/tc-mips.c (my_getExpression): In mips16 mode, if it looks
2758 like the expression was based on `.', adjust the value of the
2759 symbol.
2760
035936da 2761 * config/tc-mips.c (append_insn): Warn about an attempt to put an
c0df26bb 2762 extended instruction in a delay slot when not reordering.
035936da
ILT
2763 (md_convert_frag): Warn if an extended instruction appears in a
2764 delay slot.
2765
ed3eb786
ILT
2766 * config/tc-mips.c (mips_pseudo_table): Add "insn".
2767 (s_insn): New static function.
2768 * doc/c-mips.texi: Document .insn.
2769
ebf28372
ILT
2770 * config/tc-mips.c (md_begin): Add the general registers to the
2771 symbol table.
2772 (mips16_ip): First parse the expression, and then see whether it
2773 came up with a register, rather than trying to first see whether
2774 we are looking at a register.
2775
11e08196
FF
2776start-sanitize-tic80
2777Tue Feb 11 15:13:39 1997 Fred Fish <fnf@cygnus.com>
2778
2779 * config/tc-tic80.c: Numerous changes and additions to flesh
2780 out functions that were previously just stubs, and fix some
2781 problems found using the new TIc80 testsuite cases.
2782
2783end-sanitize-tic80
16262668
ILT
2784Tue Feb 11 15:52:22 1997 Ian Lance Taylor <ian@cygnus.com>
2785
2786 * config/tc-mips.c (mips16_ip): Handle %gprel modifier.
2787 (md_apply_fix): Handle BFD_RELOC_MIPS16_GPREL.
2788
2789 * config/tc-mips.c (append_insn): Output jump instruction as a
2790 pair of 2 byte instructions, rather than as a single 4 byte
2791 instruction.
2792
2793start-sanitize-r5900
2794 * config/tc-mips.c (md_begin): Correct test of mips_5900.
2795 (mips_ip): Don't check INSN_ISA for a macro.
2796
2797end-sanitize-r5900
276c2d7d
GRK
2798start-sanitize-r5900
2799Fri Feb 7 11:11:06 1997 Gavin Koch <gavin@cygnus.com>
2800
2801 * config/tc-mips.c: added r5900.
2802
2803end-sanitize-r5900
c6745073
DP
2804Mon Feb 10 22:06:00 1997 Dawn Perchik (dawn@cygnus.com)
2805
2806 * itbl-ops.c, itbl-lex.l, itbl-parse.y, itbl-ops.h,
2807 config/itbl-mips.h: Add copyright message and fix indentation.
2808
8e5c905e
DP
2809Mon Feb 10 18:09:00 1997 Dawn Perchik (dawn@cygnus.com)
2810
2811 * itbl-ops.c: New file. Add support for dynamically read
2812 instruction registers, opcodes and formats. Build internal table
2813 for new instructions and provide callbacks for assembler and
2814 disassembler.
2815 * itbl-lex.l, itbl-parse.y: Lex and yacc parsers for instruction
2816 spec table.
2817 * itbl-ops.h: New file. Header file for itbl support.
2818 * config/itbl-mips.h: New file. Mips specific definitions for
2819 itbl support.
2820
a7355c4d
JL
2821Fri Feb 7 09:52:34 1997 Jeffrey A Law (law@cygnus.com)
2822
2823 * config/tc-mn10200.c (md_assemble): If a constant operand won't
2824 fit into the constant field of a relaxable operand, then it does
2825 not match.
2826
e58035e3
JL
2827Thu Feb 6 20:08:12 1997 Jeffrey A Law (law@cygnus.com)
2828
2829 * config/tc-mn10200.c (md_estimate_size_before_relax): Treat
2830 a jsr target in a different section just like a jsr to
2831 an undefined target.
2832
6927c24d
ILT
2833Thu Feb 6 16:52:57 1997 Ian Lance Taylor <ian@cygnus.com>
2834
2835 * config/tc-mips.c (mips_fix_adjustable): Don't adjust relocations
2836 against any mips16 symbols, not just externally visible ones.
2837 (md_apply_fix): Corresponding change.
2838
c9167640
ILT
2839Wed Feb 5 11:11:06 1997 Ian Lance Taylor <ian@cygnus.com>
2840
2841 * config/tc-mips.c (mips16_ip): Accept floating point registers in
2842 the operand of the exit instruction.
2843
76801700
ILT
2844Tue Feb 4 14:12:39 1997 Ian Lance Taylor <ian@cygnus.com>
2845
2846 * symbols.c (resolve_symbol_value): If we leave an equated symbol
2847 as O_symbol, copy over the segment.
2848
3569064f
ILT
2849Mon Feb 3 12:35:54 1997 Ian Lance Taylor <ian@cygnus.com>
2850
1748b9d8
ILT
2851 * config/tc-mips.c (md_apply_fix): If we aren't adjusting this
2852 fixup to be against the section symbol, adjust the value
2853 accordingly.
2854
3569064f
ILT
2855 * symbols.c (resolve_symbol_value): Don't change X_add_number for
2856 an equated symbol.
2857 * write.c (write_relocs): Avoid looping on equated symbols.
2858 Adjust fx_offset by X_add_number for each symbol.
2859 * config/obj-coff.c (do_relocs_for): Avoid looping on equated
2860 symbols.
2861 (fixup_segment): Add a loop to track down equated symbols and
2862 adjust fx_offset appropriately.
2863
f5d7f6fb
JL
2864Fri Jan 31 15:21:02 1997 Jeffrey A Law (law@cygnus.com)
2865
2866 * config/tc-mn10200.c (md_relax_table): Add entries to allow
2867 jmp -> bra relaxing.
2868 (md_convert_frag): Handle jmp->bra relaxing.
2869 (md_assemble): Handle jmp->bra relaxing.
2870 (md_estimate_size_before_relax): Likewise.
2871
fb50cd4e
ILT
2872Fri Jan 31 13:15:05 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
2873
2874 * config/tc-i386.c (i386_align_code): Add comments explaining the
2875 nop instructions.
2876
a75abb6f
ILT
2877Fri Jan 31 10:46:14 1997 Ian Lance Taylor <ian@cygnus.com>
2878
2b063e6d
ILT
2879 * config/tc-sparc.c (enforce_aligned_data): New static variable.
2880 (sparc_cons_align): Don't do anything unless enforce_aligned_data
2881 is set.
2882 (md_longopts): Add "enforce-aligned-data".
2883 (md_show_usage): Mention --enforce-aligned-data.
2884 * doc/c-sparc.texi (Sparc-Aligned-Data): New node; document
2885 enforce-aligned-data.
2886
fbd929fd
ILT
2887 * config/tc-ppc.c (md_pseudo_table): If OBJ_XCOFF, add "long",
2888 "word", and "short".
2889 (ppc_xcoff_cons): New static function.
2890
a75abb6f
ILT
2891 * write.c (relax_segment): Give an error if a .space symbol is
2892 common or undefined.
2893
2894 * read.c (read_a_source_file): Don't handle mri_pending_align if
2895 the handler is s_globl or s_ignore.
2896
f1ce6af4
FF
2897Thu Jan 30 11:46:59 1997 Fred Fish <fnf@cygnus.com>
2898
2899 * config/tc-d10v.c (find_opcode): Remove unused variable "numops".
2900start-sanitize-tic80
2901 * config/tc-tic80.c: Many additions to previous placeholder file.
2902 * config/tc-tic80.h: Ditto.
2903end-sanitize-tic80
2904
0b476c53
ILT
2905Thu Jan 30 12:28:18 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
2906
2907 * config/tc-i386.c (i386_align_code): Improve the nop patterns.
2908
a6b200da
ILT
2909Thu Jan 30 12:08:40 1997 Ian Lance Taylor <ian@cygnus.com>
2910
0d7f9025
ILT
2911 * config/tc-mips.c (mips_fix_adjustable): New function.
2912 * config/tc-mips.h (tc_fix_adjustable): Call mips_fix_adjustable.
2913 (mips_fix_adjustable): Declare.
2914
a6b200da
ILT
2915 Ideas from Srinivas Addagarla <srinivas@cdotd.ernet.in>:
2916 * read.c (read_a_source_file): After doing an mri_pending_align,
2917 adjust the line_label if there is one.
2918 (s_space): Set mri_pending_align if an odd number of bytes were
2919 output.
2920
9073144e
MH
2921Wed Jan 29 15:31:12 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
2922
2923 * config/tc-d10v.h (md_do_align): Add this hook to call
2924 d10v_cleanup() when a ".align" is detected. Fixes PR11487.
2925
2926 * config/tc-d10v.c (find_opcode): Correctly calculate
2927 branch displacement when .aligns are present.
2928
33a4c28d
JL
2929Wed Jan 29 09:42:11 1997 Jeffrey A Law (law@cygnus.com)
2930
2931 * config/tc-mn10200.c (md_relax_table): Define.
2932 (md_convert_frag): Implement.
2933 (md_assemble): Handle relaxable operands/instructions correctly.
2934 (md_estimate_size_before_relax): Implement.
2935 * config/tc-mn10200.h (TC_GENERIC_RELAX_TABLE): Define.
2936
645cb4dc
ILT
2937Tue Jan 28 15:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
2938
39bb58e0
ILT
2939 * config/tc-mips.c (append_insn): Give an error for jumps to a
2940 misaligned address.
2941 (md_apply_fix): Make a branch to an odd address an error rather
2942 than a warning.
3b320c48 2943
31a2c6ff
ILT
2944 * config/tc-mips.c (md_convert_frag): If the user explicitly
2945 requested an extended opcode, pass warn as true to mips16_immed.
2946
645cb4dc
ILT
2947 * config/tc-mips.c (mips16_ip): Handle a missing expression like
2948 an explicit 0, so that explicitly extended instructions work
2949 correctly.
2950
0192b099
ILT
2951Mon Jan 27 17:41:20 1997 Ian Lance Taylor <ian@cygnus.com>
2952
2953 * ecoff.c (ecoff_build_symbols): Don't generate a local ECOFF
2954 symbol for a common symbol.
2955
f7ab9441
DE
2956Wed Jan 22 10:39:39 1997 Doug Evans <dje@canuck.cygnus.com>
2957
2958 Patch presumed to have been checked in awhile ago but wasn't.
2959 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
2960 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
2961 (relax_segment, case rs_org): Move code inside braces. Move locals
2962 target,after inside too.
2963 (relax_segment, case rs_machine_dependent): Guts moved to ...
2964 (relax_frag): New function.
2965 Call md_prepare_relax_scan if defined.
2966
0ce48081
C
2967Mon Jan 20 10:56:47 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2968
2969 * config/tc-m68k.c (m68k_ip): Reject pc-relative addresses for the
2970 'p' operand specifier.
2971
2972Mon Jan 20 10:39:36 1997 J.T. Conklin <jtc@cygnus.com>
ffecfc8b
C
2973
2974 * config/tc-m68k.c (HAVE_LONG_BRANCH): New macro, returns true for
2975 m68k family cpus which support long branch addressing modes.
2976 (m68k_ip, md_convert_frag_1, md_estimate_size_before_relax,
2977 md_create_long_jump): Use it.
2978
c36a90ef
ILT
2979Mon Jan 20 12:42:06 1997 Ian Lance Taylor <ian@cygnus.com>
2980
b3a64736
ILT
2981 * config/tc-mips.c (md_begin): Don't set SEC_ALLOC or SEC_LOAD for
2982 the .reginfo or .MIPS.options section if configured for an
2983 embedded target.
2984
c36a90ef
ILT
2985 * config/tc-mips.c (md_begin): Don't set interlocks for
2986 mips_4650.
2987
ad423373
ILT
2988Wed Jan 15 13:51:50 1997 Ian Lance Taylor <ian@cygnus.com>
2989
2990 * read.c (read_a_source_file): Make sure the symbol ends with
2991 whitespace before checking whether the next character is '='.
2992
03b24037
ILT
2993Tue Jan 14 15:07:27 1997 Robert Lipe <robertl@dgii.com>
2994
2995 * config/tc-i386.c (sco_id): Moved from here...
2996 * config/obj-elf.c (sco_id): ...to here. Adding the identifier
2997 really is an SCO ELF specific thing, not just a SCO x86 specific
2998 thing.
2999
4af93ad0
MM
3000start-sanitize-tic80
3001Mon Jan 13 22:43:01 1997 Michael Meissner <meissner@tiktok.cygnus.com>
3002
3003 * configure.in (tic80-*-*): Don't require 'coff'.
3004 * configure: Regenerate.
3005
3006end-sanitize-tic80
8ff75001
ILT
3007Thu Jan 9 09:08:43 1997 Ian Lance Taylor <ian@cygnus.com>
3008
6468dabd
ILT
3009 * read.c (emit_expr): Check for overflow of a negative value
3010 correctly.
3011 * write.c (fixup_segment): Likewise.
3012 * config/obj-coff.c (fixup_segment): Likewise.
3013
d703b5a7
ILT
3014 * config/tc-m68k.c (struct label_line): Define.
3015 (labels, current_label): New static variables.
3016 (md_assemble): Mark current_label as text, and clear it.
3017 (m68k_frob_label): New function.
3018 (m68k_flush_pending_output): New function.
3019 (m68k_frob_symbol): New function.
3020 * config/tc-m68k.h (tc_frob_label): Define.
3021 (md_flush_pending_output): Define.
3022 (tc_frob_symbol): Don't warn, just call m68k_frob_symbol.
3023 (tc_frob_coff_symbol): Likewise.
3024
8ff75001
ILT
3025 * read.c (read_a_source_file): When defining a macro in MRI mode,
3026 don't add the symbol to the symbol table.
3027
78998629
JL
3028Tue Jan 7 11:21:42 1997 Jeffrey A Law (law@cygnus.com)
3029
3030 * config/tc-mn10300.c (tc_gen_reloc): Handle sym1-sym2 fixups
3031 here since fixup_segment doesn't (linkrelax is set).
3032 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
3033
62b2acba
JL
3034Mon Jan 6 15:19:32 1997 Jeffrey A Law (law@cygnus.com)
3035
3036 * config/tc-mn10200.c (md_assemble): Tweak fx_offset for pc-relative
3037 relocs.
3038
ac866582
JL
3039Fri Jan 3 16:47:08 1997 Jeffrey A Law (law@cygnus.com)
3040
62b2acba 3041 * config/tc-hppa.c (struct hppa_fix_struct): Tweak fx_r_field's type
ac866582
JL
3042 to avoid warnings with the native HP compiler.
3043 (fix_new_hppa): Similarly for the r_type argument.
3044 (pa_build_unwind_subspace, hppa_elf_mark_end_of_function): Enclose
3045 in an #if OBJ_ELF to keep gcc -Wall quiet.
3046 (md_apply_fix): Always initialize "result".
3047
3048 * config/tc-mn10200.c (md_assemble): Generate relocations.
3049
79811f6f
ILT
3050Fri Jan 3 18:17:23 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3051
3052 * config/tc-m68k.c (s_even): Adjust the alignment of the current
3053 section.
3054
ba8f9c09
ILT
3055Fri Jan 3 17:10:33 1997 Richard Henderson <rth@tamu.edu>
3056
3057 * config/obj-elf.c (elf_file_symbol): When using ECOFF debugging,
3058 pass on the new file hook.
3059
3060 * config/tc-alpha.c (alpha_fix_adjustable): Not quite the same as
3061 !alpha_force_relocation, as local LITERALs can be adjusted to be
3062 relative to the section.
3063
a78bc551
ILT
3064Fri Jan 3 12:09:24 1997 Ian Lance Taylor <ian@cygnus.com>
3065
9f94df38
ILT
3066 * config/obj-coff.c (yank_symbols): If tc_frob_coff_symbol is
3067 defined, call it.
3df036e9 3068 * config/tc-m68k.h (tc_frob_symbol): Check whether text label is
9f94df38
ILT
3069 aligned to odd boundary.
3070 (tc_frob_coff_symbol): Define.
3071
039d5a60
ILT
3072 * doc/as.texinfo (Set): Change parenthesized @xref to @pxref.
3073
7b0688df
ILT
3074 * macro.c (macro_expand_body): In MRI mode, just copy a single &.
3075
2156d0d7
ILT
3076 * config/tc-m68k.c (m68k_ip): Call frag_grow before adding a
3077 PCINDEX frag. From Ronald F. Guilmette <rfg@monkeys.com>.
3078
a78bc551
ILT
3079 * config/tc-m68k.c (m68k_ip): Accept 'B' as a size for an
3080 immediate value.
3081 (md_assemble): If the size is 'B', set fx_signed.
3082 (md_apply_fix_2): Use fx_signed when checking for overflow.
3083
3084 * write.h (struct fix): Add fx_signed field.
3085 * write.c (fix_new_internal): Initialize fx_no_overflow and
3086 fx_signed fields.
3087 (fixup_segment): Use fx_signed when checking for overflow.
3088 * config/obj-coff.c (fixup_segment): Check fx_no_overflow and
3089 fx_signed when checking for overflow.
3090
b9129c6f
ILT
3091Thu Jan 2 13:37:29 1997 Ian Lance Taylor <ian@cygnus.com>
3092
0abdf280
ILT
3093 * NOTES, NOTES.config: Removed. These are rarely, if ever,
3094 updated, and all the useful information is in doc/internals.texi.
3095
a986926b
ILT
3096 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
3097 * read.c (read_a_source_file): Check for conditional operators
3098 before doing an MRI pending alignment.
3099 * config/tc-m68k.h (m68k_conditional_pseudoop): Declare.
3100 (tc_conditional_pseudop): Define.
3101 * config/tc-m68k.c (m68k_conditional_pseudop): New function.
3102 * doc/internals.texi (CPU backend): Describe
3103 tc_conditional_pseudoop.
3104
924160b0
ILT
3105 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
3106 * config/tc-m68k.c (m68k_rel32_from_cmdline): New static
3107 variable.
3108 (md_begin): Check m68k_rel32_from_cmdline before setting
3109 m68k_rel32.
3110 (m68k_mri_mode_change): Likewise.
3111 (md_longopts): Add --disp-size-default-16 and
3112 --disp-size-default-32.
3113 (md_parse_option): Handle new options.
3114 (md_show_usage): Mention new options.
3115 * doc/c-m68k.texi (M68K-Opts): Document new options.
3116
b4d51f3d
ILT
3117 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
3118 * config/tc-m68k.c (m68k_index_width_default): New static
3119 variable.
3120 (m68k_ip): Use m68k_index_width_default to set the size of a base
3121 register whose size was not given.
3122 (md_longopts): Add --base-size-default-16 and
3123 --base-size-default-32.
3124 (md_parse_option): Handle new options.
3125 (md_show_usage): Mention new options.
3126 * doc/c-m68k.texi (M68K-Opts): Document new options.
3127
103e1158
ILT
3128 * doc/c-mips.texi: Mention ISA level 4, and the -mips16 option.
3129
e16b9537
ILT
3130 * configure.in: Recognize mips-*-linux* target.
3131 * configure: Rebuild.
3132
a162a490
ILT
3133 * config/tc-mips.c (load_register): Rewrite 64 bit handling to
3134 work if valueT is only 32 bits.
3135
b9129c6f
ILT
3136 * config/tc-mips.c: Throughout, check target_big_endian rather
3137 than byte_order.
3138 (byte_order): Remove.
3139 (mips_init_after_args): Remove.
3140 * config/tc-mips.h (LITTLE_ENDIAN, BIG_ENDIAN): Don't define.
3141 (mips_init_after_args): Don't declare.
3142 (tc_init_after_args): Don't define.
3143
3144 * config/tc-mips.h (tc_frob_after_relocs): Define if
3145 OBJ_MAYBE_ELF.
3146 (mips_elf_final_processing): Likewise.
3147 (ELF_TC_SPECIAL_SECTIONS): Likewise.
3148
6e7d5462
MM
3149Tue Dec 31 15:12:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3150
3151 * config/tc-v850.c (md_assemble): If this is sst.{h,w} or
3152 sld.{h,w} and the operand is relocatable, adjust the adend by
3153 shifting it right one bit.
3154
38fc0ba6
ILT
3155Tue Dec 31 12:56:41 1996 Ian Lance Taylor <ian@cygnus.com>
3156
20868ec6
ILT
3157 * read.c (read_a_source_file): Check mri_pending_align after
3158 checking for a macro. From Ronald F. Guilmette
3159 <rfg@monkeys.com>.
3160
6ded6615
ILT
3161 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
3162
38fc0ba6
ILT
3163 * config/tc-sparc.c (md_apply_fix3): Rename from md_apply_fix, and
3164 add segment argument. If OBJ_ELF, treat a relocation against a
3165 symbol in a linkonce section like a relocation against an external
3166 symbol.
3167 * config/tc-sparc.h (MD_APPLY_FIX3): Define.
3168
18e0764d
ILT
3169Mon Dec 30 11:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
3170
3171 * config/tc-mips.c (mips16_macro): Add case for M_ABS.
3172
64556643
FF
3173Fri Dec 27 22:51:51 1996 Fred Fish <fnf@cygnus.com>
3174
3175 * NOTES.config (Implementation): as.h #define's "GAS" not "gas",
3176 includes config.h instead of host.h, tc.h instead of tp.h, and
3177 targ-env.h instead of target-environment.h.
3178 Also, obj-format.h includes targ-cpu.h instead of
3179 target-processor.h.
3180start-sanitize-tic80
3181 * configure.in (case ${generic_target}): Add tic80-*-coff entry.
3182 * configure: Rebuild with autoconf.
3183 * config/obj-coff.h (coff/tic80.h): Include if TC_TIC80 defined.
3184 (TARGET_FORMAT): Define to "coff-tic80".
3185 * config/tc-tic80.c: New file for TIc80 support.
3186 * config/tc-tic80.h: New file for TIc80 support.
3187end-sanitize-tic80
3188
7d99e8af
ILT
3189Fri Dec 27 11:42:29 1996 Ian Lance Taylor <ian@cygnus.com>
3190
3191 * doc/as.texinfo (M): Mention explicitly that -M changes macro
3192 handling.
3193
9c199842
ILT
3194Thu Dec 19 12:06:08 1996 Ian Lance Taylor <ian@cygnus.com>
3195
3196 * write.c (adjust_reloc_syms): If the fixup symbol has been
3197 equated to an undefined symbol, convert the fixup to being against
3198 the target symbol. Remove obsolete code handling a special case
3199 for i386 PIC.
3200
51cd0ae7
SS
3201Wed Dec 18 22:54:39 1996 Stan Shebs <shebs@andros.cygnus.com>
3202
3203 * mpw-make.sed: Use NewFolderRecursive for installation.
3204
cb07aaeb
MH
3205Wed Dec 18 16:00:42 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3206
3207 * config/tc-d10v.c (do_assemble): Correct previous bug fix.
3208
575453fb
MH
3209Wed Dec 18 15:27:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3210
3211 * config/tc-d10v.c (md_assemble): Fix bug which caused
3212 second instruction in a line to be case sensitize. PR11312
3213
5545556d
JL
3214Wed Dec 18 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
3215
3216 * config/tc-mn10200.c (mn10200_insert_operand): Don't
3217 range check operands with MN10200_OPERAND_NOCHECK set.
3218 (check_operand): Likewise.
3219
c0dea495
ILT
3220Tue Dec 17 10:59:32 1996 Ian Lance Taylor <ian@cygnus.com>
3221
f5e38044
ILT
3222 * config/tc-mips.c: Undo part of last Friday's alignment changes.
3223 (md_begin): Always align the text section to a four byte
3224 boundary.
3225 (append_insn): Remove call to record_align.
3226
fbcfacb7
ILT
3227 * config/tc-mips.c (insn_label): Remove.
3228 (struct insn_label_list): Define.
3229 (insn_labels, free_insn_labels): New static variables.
3230 (mips_clear_insn_labels): New static function.
3231 (append_insn): Mark all mips16 text labels, and make them odd.
3232 Handle all labels after emitting a nop, not just one. Call
3233 mips_clear_insn_labels rather than just clearing insn_label.
3234 (mips_emit_delays): Add insns parameter, and use it to decide
3235 whether to mark mips16 labels. Handle all labels, not just one.
3236 Force mips16 labels to be odd. Change all callers.
3237 (mips16_immed): Don't check for an odd branch target.
3238 (md_apply_fix): Don't check mips16 mode for a branch reloc.
3239 (mips16_extended_frag): Ignore the low bit in a branch target.
3240 (md_convert_frag): Likewise.
3241 (mips_no_prev_insn): Call mips_clear_insn_labels rather than just
3242 clearing insn_label.
3243 (mips_align, mips_flush_pending_output, s_cons): Likewise.
3244 (s_float_cons, s_gpword): Likewise.
3245 (s_align): Use insn_labels rather than insn_label.
3246 (s_cons, s_float_cons, s_gpword): Likewise.
3247 (mips_frob_file_after_relocs): New function.
3248 (mips_define_label): Rewrite to add to insn_labels list.
3249 * config/tc-mips.h (tc_frob_file_after_relocs): Define.
3250 * ecoff.c (ecoff_build_symbols): If the size of a function comes
3251 out odd, increment it.
3252
3253 * config/tc-mips.c (append_insn): Only update prev_insn when not
3254 reordering if place is NULL.
3255
c0dea495
ILT
3256 * config/tc-mips.c (mips16_ip): Check for a missing expression
3257 when using the register indirect addressing mode.
3258
d4ba37af
JL
3259Mon Dec 16 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
3260
3261 * config/tc-mn10200.c (mn10200_insert_operand): Don't
3262 check 24bit operands for overflow.
3263 (check_operand): Likewise.
3264
868c3513
ILT
3265Mon Dec 16 11:50:40 1996 Ian Lance Taylor <ian@cygnus.com>
3266
3267 * doc/as.texinfo (Section): Document how to use the .section
3268 pseudo-op for COFF and ELF.
3269
6259c65f
ILT
3270Sun Dec 15 15:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
3271
3272 * write.c (adjust_reloc_syms): Fix linkonce check for ELF.
3273
a677feeb
ILT
3274Sat Dec 14 22:37:27 1996 Ian Lance Taylor <ian@cygnus.com>
3275
3276 * config/tc-mips.c (prev_insn_reloc_type): New static variable.
3277 (RELAX_MIPS16_ENCODE): Add dslot and jal_dslot arguments, and
3278 store them. Adjust other RELAX_MIPS16 macros.
3279 (RELAX_MIPS16_DSLOT): Define.
3280 (RELAX_MIPS16_JAL_DSLOT): Define.
3281 (append_insn): Pass new arguments to RELAX_MIPS16_ENCODE. Correct
3282 handling of whether previous instruction has a fixup. Set
3283 prev_insn_reloc_type.
3284 (mips_no_prev_insn): Clear prev_insn_reloc_type.
3285 (mips16_extended_frag): Use the right base address for a PC
3286 relative add or load.
3287 (md_convert_frag): Likewise. If a PC relative add or load is
3288 used, record the alignment for the section.
3289
08e17202
ILT
3290Fri Dec 13 13:00:33 1996 Ian Lance Taylor <ian@cygnus.com>
3291
54815b9a
ILT
3292 * write.c (adjust_reloc_syms): Don't reduce a reloc against a
3293 linkonce section into a reloc against the section symbol.
3294
8a8121d5
ILT
3295 * config/tc-mips.c (mips16_macro): Remove nop instructions after
3296 branch instructions.
3297
08e17202
ILT
3298 * config/tc-mips.c (md_begin): If configured for an embedded ELF
3299 system, don't set the section alignment to 2**4.
3300 (s_change_sec): Likewise.
3301 (append_insn): Call record_alignment for the section.
3302 (md_section_align): Don't align the section size for an embedded
3303 ELF system.
3304
73d25784
ILT
3305Thu Dec 12 16:40:47 1996 Ian Lance Taylor <ian@cygnus.com>
3306
3307 * write.c (adjust_reloc_syms): Make sure that symbols are
3308 resolved; expression symbols may have been skipped.
8dd6fde3 3309 * config/obj-coff.c (fixup_segment): Likewise.
73d25784 3310
a460cd78
MM
3311Thu Dec 12 15:18:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3312
3313 * config/tc-ppc.c (ppc_elf_suffix): Move @plt to
3314 BFD_RELOC_24_PLT_PCREL relocation.
3315 (md_apply_fix3): Support BFD_RELOC_24_PLT_PCREL.
3316
60b43c4b
MH
3317Tue Dec 10 13:51:55 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3318
3319 * config/tc-d10v.c (write_2_short): Remove code that called
3320 parallel_ok() when the programmer specified parallel instructions.
3321
42aa2435
JL
3322Tue Dec 10 12:23:19 1996 Jeffrey A Law (law@cygnus.com)
3323
a460cd78
MM
3324 * config/tc-mn10300.c (md_assemble): Update to handle endianness
3325 issues correctly.
3326
42aa2435
JL
3327 * config/tc-mn10200.c (md_assemble): Opcode 0x0 is valid!
3328 * config/tc-mn10300.c (md_assemble): Likewise.
3329
41a0ed22
ILT
3330Tue Dec 10 11:37:14 1996 Ian Lance Taylor <ian@cygnus.com>
3331
9b2ac029
ILT
3332 * config/tc-mips.c (append_insn): Make sure there is enough room
3333 in a frag after a mips16 instruction to switch it with a jump
3334 instruction.
3335
41a0ed22
ILT
3336 * config/tc-mips.c (mips16_extended_frag): Give an error for an
3337 attempt to use a non absolute symbol in an extending frag.
3338
dc1f8a21
JL
3339Mon Dec 9 16:48:20 1996 Jeffrey A Law (law@cygnus.com)
3340
3341 * config/tc-mn10200.c: Flesh out assembler support for MN10200.
3342 * config/tc-mn10200.h: Likewise.
3343
102633ce
ILT
3344Mon Dec 9 17:09:42 1996 Ian Lance Taylor <ian@cygnus.com>
3345
a7dd20e8
ILT
3346 * app.c (do_scrub_chars): At the end of a C comment, pass space to
3347 UNGET rather than PUT. Set old_state before setting state to -2.
3348
559c664a
ILT
3349 * config/tc-mips.c (mips16_extended_frag): Avoid an infinite loop
3350 when extending because the value is exactly maxtiny + 1.
3351
8728fa92
ILT
3352 * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add small and ext
3353 arguments, and store them. Adjust other RELAX_MIPS16 macros.
3354 (RELAX_MIPS16_USER_SMALL): Define.
3355 (RELAX_MIPS16_USER_EXT): Define.
3356 (mips16_small, mips16_ext): New static variables.
3357 (append_insn): Pass mips16_small and mips16_ext to
3358 RELAX_MIPS16_ENCODE.
3359 (mips16_ip): Set mips16_small and mips16_ext.
3360 (mips16_immed): Don't check mips16_autoextend.
3361 (mips16_extended_frag): Check USER_SMALL and USER_EXT.
3362
102633ce
ILT
3363 * write.c (write_relocs): Print an error for an out of range
3364 fixup, rather than calling abort.
3365
3366 * as.c (main): Unlink the output file if there are errors while
3367 generating the fixups.
3368
15e69f98
ILT
3369Fri Dec 6 18:48:13 1996 Ian Lance Taylor <ian@cygnus.com>
3370
f74ba7a3
ILT
3371 * config/tc-mips.c (mips16_extended_frag): Don't call
3372 S_GET_VALUE.
3373 (md_convert_frag): Call resolve_symbol_value before calling
3374 S_GET_VALUE, and don't add in the frag address.
3375
15e69f98
ILT
3376 * config/tc-mips.c (mips16_immed): Add file and line parameters,
3377 and use them when reporting errors. Change all callers.
3378
ca82e4eb
JL
3379Fri Dec 6 15:36:32 1996 Jeffrey A Law (law@cygnus.com)
3380
3381 * config/tc-mn10300.c: Fix various gcc -Wall warnings.
3382 Remove '$' prefixing for registers.
3383
f787a8d9 3384Fri Dec 6 00:55:48 1996 Martin <hunt@cygnus.com>
6cc03ed3 3385
f787a8d9
MH
3386 * config/tc-d10v.c (md_assemble): Check to see if prev_seg
3387 is initialized before using it.
3388 (d10v_cleanup): No longer uses its argument, so make it void.
6cc03ed3 3389
f787a8d9
MH
3390 * config/tc-d10v.h (d10v_cleanup): Change prototype.
3391
00a69b89
ILT
3392Thu Dec 5 11:03:31 1996 Ian Lance Taylor <ian@cygnus.com>
3393
3394 * write.c (fixup_segment): Don't discard the symbol for a PC
3395 relative fixup to an absolute symbol.
3396
996bee90
MH
3397Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3398
3399 * config/tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
3400 with multiple sections.
3401
943321c0
ILT
3402Wed Dec 4 13:00:07 1996 Ian Lance Taylor <ian@cygnus.com>
3403
3404 * config/tc-mips.c (md_longopts): Rename mips-16 to mips16, and
3405 no-mips-16 to no-mips16.
3406 (s_mipsset): Accept .set mips16 and .set nomips16.
3407
8b1e9f12
MM
3408Wed Dec 4 10:35:33 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3409
3410 * config/tc-ppc.c (ppc_elf_suffix): Take expressionS pointer
3411 argument, and check for +/- constant following the suffix, folding
3412 it into the expression.
3413 (ppc_elf_cons): Change ppc_elf_suffix calls.
3414 (md_assemble): Ditto.
3415 (shlib): Replace boolean mrelocatable with enumeration shlib.
3416 (md_parse_option): Discriminate between PIC style shared libraries
3417 and -mrelocatable.
3418 (ppc_elf_validate_fix): Don't report warnings for PIC style shared
3419 libraries.
3420
b61802e7
MM
3421Tue Dec 3 23:18:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3422
3423 * config/tc-ppc.h ({tc,ppc}_comment_chars): Define, so that we can
3424 change the comment characters.
3425
3426 * config/tc-ppc.c (comment_chars): Delete in favor of
3427 tc_comment_chars.
3428 (ppc_{eabi,solaris}_comment_chars): Eabi and Solaris versions of
3429 comment chars.
3430 (ppc_comment_chars): Select appropriate comment chars by default.
3431 (msolaris): New flag for -m{,no-}solaris.
3432 (md_parse_option): Recognize -K pic. Add support for
3433 -m{,no-}solaris.
3434 (md_show_usage): Update.
3435 (md_begin): Do not set ELF flags if Solaris.
3436 (ppc_elf_suffix): @local sets R_PPC_LOCAL24PC relocation.
3437 (md_apply_fix3): Add support for R_PPC_LOCAL24PC.
3438
3439Mon Dec 2 13:48:57 1996 Ian Lance Taylor <ian@cygnus.com>
3440
3441 * as.c (main): Correct handling of flag_always_generate_output.
3442
5840a0e5
JL
3443Sun Dec 1 21:46:05 1996 Jeffrey A Law (law@cygnus.com)
3444
a9f2e3e2
JL
3445 * config/tc-mn10300.c (tc_gen_reloc): Get the addend from
3446 fx_offset, not fx_addnumber.
3447
5840a0e5
JL
3448 * config/tc-mn10300.h (tc_fix_adjustable): Don't do any
3449 reloc adjustments.
3450
b608274a
ILT
3451Sat Nov 30 17:34:48 1996 Eliot Dresselhaus <eliot@wally.edc.com>
3452
3453 * config/tc-i386.c: Correct misspelling: balenced to balanced.
3454
caeea0b4
ILT
3455Wed Nov 27 13:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
3456
3457 * config/tc-mips.c (md_section_align): Check for an alignment of
3458 4, not an alignment of 16. Corrects August 7 patch.
3459
cc5703cd
ILT
3460Tue Nov 26 10:33:16 1996 Ian Lance Taylor <ian@cygnus.com>
3461
775c64a9
ILT
3462 * configure, conf.in: Rebuild with autoconf 2.12.
3463
c830c9ea
ILT
3464 * config/tc-ppc.c (ppc_elf_lcomm): Don't give an error if no
3465 alignment is specified.
3466
cc5703cd
ILT
3467 Add support for mips16 (16 bit MIPS implementation):
3468 * config/tc-mips.c: Extensive additions for mips16 support, not
3469 listed here.
3470 (RELAX_OLD, RELAX_NEW): Use only 7 bits each.
3471 (insn_uses_reg): Change last parameter to an enum.
3472 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Define as 0.
3473 (md_relax_frag): Define as mips_relax_frag.
3474 (mips_relax_frag): Declare.
3475 (struct mips_cl_insn): Add use_extend and extend fields.
3476 (tc_fix_adjustable): Define.
3477 * config/obj-elf.h (S_GET_OTHER): Define.
3478 (S_SET_OTHER): Define.
3479
3ab410cd
C
3480Mon Nov 25 18:02:29 1996 J.T. Conklin <jtc@beauty.cygnus.com>
3481
3482 * config/tc-m68k.c (m68k_ip): Implement cases for new <, >, m, n,
3483 o and p operand specifiers.
3484
a0a2af4f
DE
3485Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
3486
3487 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
3488 (relax_segment, case rs_org): Move code inside braces. Move locals
3489 target,after inside too.
3490 (relax_segment, case rs_machine_dependent): Guts moved to ...
3491 (relax_frag): New function.
3492 Call md_prepare_relax_scan if defined.
3493 * config/tc-m68k.h (md_prepare_relax_scan): Renamed from
3494 M68K_AIM_KLUDGE.
3495
0671e7f6
JL
3496Mon Nov 25 08:49:36 1996 Jeffrey A Law (law@cygnus.com)
3497
a0a2af4f
DE
3498 * config/tc-mn10300.c (address_registers): Use '$' as register
3499 prefix instead of '%'.
3500 (data_registers, other_registers, md_assemble): Likewise.
3501
f98905f1
JL
3502 * config/tc-mn10300.c (address_registers): Use '%' prefix for regs.
3503 (data_registers, other_registers, md_assemble): Likewise.
3504
0671e7f6
JL
3505 * config/tc-mn10300.c (md_assemble): Correctly determine the
3506 correct location and type for each relocation.
3507 (md_pcrel_from): Simplify.
3508
5895d3f2
ILT
3509Fri Nov 22 15:42:26 1996 Ian Lance Taylor <ian@cygnus.com>
3510
3511 * config/tc-sh.c (md_convert_frag): Improve warning when branch is
3512 converted into branch around branch.
3513
d9a9c18f
JL
3514Thu Nov 21 11:56:11 1996 Jeffrey A Law (law@cygnus.com)
3515
3516 * config/tc-mn10300.h (DIFF_EXPR_OK): Don't define this.
3517 (tc_fix_adjustable): Don't adjust relocs against weak symbols or
3518 pc-relative relocs.
3519 * config/tc-mn10300.c (md_begin): Set linkrelax.
3520 (md_assemble): Create fixups as needed.
3521 (md_apply_fix3): Gut. It shouldn't ever get called anymore.
3522
5e9b714f
MM
3523Tue Nov 19 17:48:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3524
3525 * config/tc-d10v.c (parallel_ok): When automatically converting
3526 serial ops to parallel, do not consider a branch as the first
3527 instruction.
3528
7f02192d
JL
3529Tue Nov 19 13:35:22 1996 Jeffrey A Law (law@cygnus.com)
3530
3531 * config/tc-mn10300.c (md_assemble): Handle MN10300_OPERAND_REG_LIST.
3532
43d695a1
JL
3533Mon Nov 18 15:26:55 1996 Jeffrey A Law (law@cygnus.com)
3534
3535 * config/tc-mn10300.c (mn10300_insert_operand): Provide prototype
3536 via PARAMS.
3537 (check_operand): Likewise.
3538
228835a9
MM
3539Mon Nov 18 15:22:28 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3540
3541 * config/tc-d10v.c (parallel_ok): Branch and link instructions
3542 modify r13.
ec5e212b
MM
3543 (write_2_short): Call parallel_ok to check whether two short
3544 instructions the user requested execute in parallel, can be
3545 executed that way.
228835a9 3546
edb89bfc
MH
3547Thu Nov 14 11:17:49 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3548
3549 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't
3550 allow a branch and link in parallel with an exe instruction.
3551
3552Fri Nov 8 13:55:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3553
3554 * doc/c-d10v.texi: Add info on @word modifier.
3555
cdde2f5c 3556Wed Nov 6 13:46:07 1996 Jeffrey A Law (law@cygnus.com)
efba8af0
JL
3557
3558 * config/tc-mn10300.c (mn10300_insert_operand): MN10300_OPERAND_SPLIT
3559 operands are assumed to be 32bits. Use "bits" field to hold the
3560 number of bits in the main instruction word for MN10300_OPERAND_SPLIT.
3561 (mn10300_check_operand): MN10300_OPERAND_SPLIT operands are assumed
3562 to be 32bits.
cdde2f5c 3563
bdd91d4f
JL
3564 * config/tc-mn10300.c (mn10300_insert_operand): Shift low part
3565 of a MN10300_OPERAND_SPLIT operand by operand->shift.
3566
cdde2f5c
JL
3567 * config/tc-mn10300.c (mn10300_insert_operand): Handle
3568 MN10300_OPERAND_SPLIT.
3569
bfe5059c
JL
3570Tue Nov 5 13:30:40 1996 Jeffrey A Law (law@cygnus.com)
3571
3572 * config/tc-mn10300.c (md_assemble): Insert operands into
3573 the extension part of the instruction if necessary.
3574 (mn10300_insert_operand): Accept pointer to extension word
3575 argument. Make insn a pointer argument too. Return type
3576 is now void. All callers changed.
3577
68328dc6
JL
3578Mon Nov 4 12:53:40 1996 Jeffrey A Law (law@cygnus.com)
3579
3580 * config/tc-mn10300.c (mn10300_insert_operand): Handle
3581 repeated register operands.
3582
9af40217
ILT
3583Fri Nov 1 10:42:49 1996 Ian Lance Taylor <ian@cygnus.com>
3584
9a5acea8
ILT
3585 * doc/as.texinfo: Added section on reporting bugs.
3586
9af40217
ILT
3587 * config/tc-alpha.c: Change uses of void * to PTR. Change the
3588 alpha_macro emit field to expect a const argument, and change the
3589 arg field to be const. Fix some spacing to follow the GNU
3590 standard.
3591
3592Fri Nov 1 10:32:03 1996 Richard Henderson <rth@tamu.edu>
3593
3594 * config/tc-alpha.c (md_parse_option): Add knowledge of 21164pc
3595 (pca56) and 21264 (ev6) cpus.
3596 (md_apply_fix): Private relocation types are now negative.
3597 (alpha_force_relocation): Likewise.
3598 (tc_gen_reloc): Likewise.
3599 (emit_insn): Likewise.
3600 (emit_ldXu): Do the right thing when the hardware can do byte insns.
3601 (emit_stX): Likewise.
3602 (emit_sextX): Likewise.
3603
527dc0c9
ILT
3604Thu Oct 31 16:33:21 1996 Ian Lance Taylor <ian@cygnus.com>
3605
3606 * config/obj-coff.c (do_relocs_for): Call resolve_symbol_value on
3607 a symbol found in a reloc.
3608
3609 * symbols.c (resolve_symbol_value): Improve the error message if
3610 an undefined symbol is used in an expression.
3611
fe7e5bdf
ILT
3612Wed Oct 30 20:15:35 1996 Ian Lance Taylor <ian@cygnus.com>
3613
3614 * doc/internals.texi: Rewrite, and add a lot of documentation.
3615 * doc/Makefile.in (internals.info): New target.
3616
193e4197
JL
3617Wed Oct 30 14:55:57 1996 Jeffrey A Law (law@cygnus.com)
3618
3619 * config/tc-v850.h (tc_fix_adjustable): Don't adjust relocs
3620 against weak symbols.
3621
a334533c
JL
3622Tue Oct 29 12:28:16 1996 Jeffrey A Law (law@cygnus.com)
3623
baf385b5
JL
3624 * config/tc-v850.c (md_assemble): Don't lose for relaxable
3625 addresses like .+6.
3626
2385d90a
JL
3627 * config/tc-v850.c (md_convert_frag): Make sure we insert the
3628 fixup at the right address within the frag.
3629
bc49fab8
JL
3630 * config/tc-v850.c (md_convert_frag): Don't set fragP->fr_fix
3631 to an absolute value, instead increment it as needed.
3632
a334533c
JL
3633 * config/tc-v850.h (TC_GENERIC_RELAX_TABLE): Define.
3634 * config/tc-v850.c: Fix some indention problems.
3635 (md_relax_table): Define for D9->D99 branch displacement
3636 relaxing.
3637 (md_convert_frag): Do something useful instead of aborting.
3638 (md_estimate_size_before_relax): Likewise.
3639 (md_assemble): Note if the matching instruction has a relaxable
3640 operand. If it does, allocate frag with frag_var and don't
3641 do any fixups.
3642
a334533c
JL
3643Mon Oct 28 10:48:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3644
3645 * config/tc-d10v.h (md_cleanup): New function. This is needed to
3646 write out any buffered instructions when a ".end" is found.
3647
9051e56f
MH
3648Mon Oct 28 10:43:45 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3649
3650 * read.c (read_a_source_file): New hook md_cleanup().
3651
07f9de2a
ILT
3652Fri Oct 25 00:01:00 1996 Ian Lance Taylor <ian@cygnus.com>
3653
3654 * write.c (fix_new_exp): Use make_expr_symbol to build an
3655 expression symbol for a complex fixup.
3656
3723a1a9
JL
3657Thu Oct 24 14:31:04 1996 Jeffrey A Law (law@cygnus.com)
3658
d3bbd9dc
JL
3659 * config/tc-v850.c (v850_reloc_prefix): Several disgusting
3660 hacks to improve parsing of complex hi, lo, zda, etc
3661 expressions.
3662 (md_assemble): Don't demand and eat a trailing ')' after finding
3663 a v850 relocation prefix. Sign extend the constant in a
3664 BFD_RELOC_LO16 expression. Do eat a trailing ')' after a complete
3665 operand.
3666 (parse_cons_expression_v850): Don't eat a trailing ')' after
3667 finding a v850 relocation prefix.
3668
10fba7f1
JL
3669 * config/tc-v850.h (TC_PARSE_CONS_EXPRESSION): Define.
3670 (TC_CONS_FIX_NEW): Likewise.
3671 * config/tc-v850.c (parse_cons_expression_v850): New function.
3672 (cons_fix_new_v850): Likewise.
3673
3723a1a9
JL
3674 * config/tc-v850.h (tc_fix_adjustable): Don't adjust TDA relocs.
3675
20fbbb59
ILT
3676Wed Oct 23 18:20:29 1996 Ian Lance Taylor <ian@cygnus.com>
3677
3678 * config/tc-ppc.c (md_apply_fix3): Give a better warning message
3679 for an unknown relocation type.
3680
7e96935e
JL
3681Wed Oct 23 16:21:28 1996 Jeffrey A Law (law@cygnus.com)
3682
3683 * config/tc-v850.c (md_pseudo_table): Add .word; allocates
3684 4 bytes of space.
3685
8ea15b86
JL
3686Tue Oct 22 22:01:25 1996 Jeffrey A Law (law@cygnus.com)
3687
3688 * config/tc-v850.c (md_assemble): Handle TDAOFF relocs
3689 differently for movea & sst/sld insns.
3690
39176dfe
MM
3691Tue Oct 22 17:09:32 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3692
3693 * config/tc-d10v.c (parallel_ok): Don't allow illegal combinations
3694 of instructions.
3695
87dd0a93
ILT
3696Tue Oct 22 11:28:39 1996 Ian Lance Taylor <ian@cygnus.com>
3697
3698 * obj.h (struct format_ops): Add frob_file_after_relocs field.
3699 * config/obj-multi.h (obj_frob_file_after_relocs): Define.
3700 * config/obj-ecoff.c (ecoff_format_ops): Initialize new
3701 frob_file_after_relocs field.
3702 * config/obj-elf.c (elf_format_ops): Likewise.
3703 * config/tc-mips.c: Undefine obj_frob_file_after_relocs before
3704 including obj-elf.h.
3705
d12d1f6c
ILT
3706Mon Oct 21 11:38:30 1996 Ian Lance Taylor <ian@cygnus.com>
3707
bf39474f
ILT
3708 * config/tc-mips.c (cons_fix_new_mips): Only treat 8 byte reloc
3709 specially if not ELF.
3710 (md_apply_fix): Handle BFD_RELOC_64.
3711 (tc_gen_reloc): Handle BFD_RELOC_64.
3712
3030e864
ILT
3713 * config/tc-i386.c (md_apply_fix3): Don't increment value for a PC
3714 relative reloc when BFD_ASSEMBLER and OBJ_AOUT (more ugly gas
3715 reloc hacking).
3716
d12d1f6c
ILT
3717 * config/obj-aout.h (S_IS_DEFINE): non BFD_ASSEMBLER version:
3718 Don't check S_GET_OTHER.
3719
b70795e9
ILT
3720Fri Oct 18 14:06:26 1996 Ian Lance Taylor <ian@cygnus.com>
3721
538034cf
ILT
3722 * config/tc-mips.c (mips_ip): Accept an odd floating point
3723 register with l.s or s.s.
3724
b70795e9
ILT
3725 * config/obj-aout.c (obj_pseudo_table): Use obj_aout_type for
3726 .type pseudo-op.
3727 (obj_aout_type): New static function.
3728
b9d55d96
ILT
3729Thu Oct 17 17:55:17 1996 Ian Lance Taylor <ian@cygnus.com>
3730
3731 * Makefile.in ($(OBJS)): Depend upon libiberty.h.
3732
0f8e50bb
JL
3733Wed Oct 16 11:28:31 1996 Jeffrey A Law (law@cygnus.com)
3734
548ddc71
JL
3735 * config/tc-v850.c (v850_reloc_prefix): Recognize zdaoff, tdaoff
3736 and sdaoff expressions.
3737
0f8e50bb
JL
3738 * write.c (fixup_segment): Don't add symbol value to addend if
3739 TC_V850 and OBJ_ELF.
3740 * config/tc-v850.h (tc_fix_adjustable): Don't adjust any
3741 pc-relative fixups.
3742
3743 * config/tc-v850.c (md_pcrel_from): Undo yesterday's changes.
3744 (md_pcrel_from_section): Likewise.
3745 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Likewise.
3746
3747Tue Oct 15 23:19:00 1996 Jeffrey A Law (law@cygnus.com)
f964b01d
JL
3748
3749 * config/tc-v850.c (md_pcrel_from): Delete unused function.
3750 (md_pcrel_from_section): New function.
3751 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
3752
0267c6c9
ILT
3753Mon Oct 14 13:59:12 1996 Ian Lance Taylor <ian@cygnus.com>
3754
3755 * config/tc-mips.c (load_register): Add cast to offsetT when using
3756 a constant with &~.
3757
5d0cd0b8
ILT
3758Mon Oct 14 11:24:28 1996 Richard Henderson <rth@tamu.edu>
3759
3760 * config/obj-elf.c (elf_frob_file): Move ECOFF debug processing to ...
3761 (elf_frob_file_after_relocs): ... here. New function.
3762 * config/obj-elf.h (obj_from_file_after_relocs): New macro.
3763 * write.c (write_object_file): Call *frob_after_relocs after the
3764 call to write_relocs.
3765
3766 * config/tc-alpha.c: Use new BFD_RELOC_ALPHA_ELF_LITERAL reloc.
3767
3768 * config/tc-alpha.c (load_expression): Don't SET_VALUE on the section
3769 symbol, as this messes up linking. Instead, expand the recursive call
3770 inline and change up the appropriate bits to get the 0x8000 offset
3771 in the reloc addend.
3772
914f8998
ILT
3773Thu Oct 10 17:30:31 1996 Ian Lance Taylor <ian@cygnus.com>
3774
1491f2ea
ILT
3775 * config/tc-sparc.h (tc_fix_adjustable): Permit the difference of
3776 two symbols in the same segment to be adjusted.
3777
914f8998
ILT
3778 * configure.in: Don't get confused by CPU-VENDOR-linux-gnu.
3779 * configure: Rebuild.
3780
f8a011cf
MM
3781Thu Oct 10 17:22:18 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3782
3783 * config/tc-ppc.c (ppc_insert_operand): Change most warnings into
3784 errors.
3785 (ppc_elf_validate_fix): Ditto.
3786 (md_assemble): Ditto.
3787 (ppc_tc): Ditto.
3788 (ppc_pe_section): Ditto.
3789 (ppc_frob_symbol): Ditto.
3790
1c3ae169
JL
3791Thu Oct 10 12:05:45 1996 Jeffrey A Law (law@cygnus.com)
3792
3ab9337b
JL
3793 * config/mn10300.c (md_assemble): Pass an extra shift count
3794 to mn10300_insert_operand based on the opcode format.
3795 (mn10300_insert_operand): Accept and use extra shift count
3796 parameter.
3797
778c521b
JL
3798 * config/tc-mn10300.c (md_assemble): Use FMT_* macros for
3799 formats rather than hard-coded constants.
3800
1c3ae169
JL
3801 * config/tc-mn10300.c (md_assemble): Format D5 instructions
3802 are 7 bytes long. Write out instructions in big-endian format.
3803
a6be605a
JL
3804Tue Oct 8 14:56:15 1996 Jeffrey A Law (law@cygnus.com)
3805
1c3ae169 3806 * config/tc-mn10300.c (md_assemble): Tweak further so
a6be605a
JL
3807 that all instructions are parsed correctly.
3808
5e1e8f23
ILT
3809Tue Oct 8 13:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
3810
3811 * as.h: Include libiberty.h.
3812 (xmalloc, xrealloc): Don't declare.
3813 * as.c: Don't include libiberty.h.
3814 * expr.c, read.c, stabs.c, config/obj-coff.c: Likewise.
3815 * config/tc-mips.c: Likewise.
3816 * messages.c: Likewise.
3817 (xstrerror): Don't declare.
3818 * xmalloc.c: Remove.
3819
1217102f
JL
3820Mon Oct 7 16:53:23 1996 Jeffrey A Law (law@cygnus.com)
3821
3822 * config/tc-mn10300.h (pre_defined_registers) Remove.
3823 (system_registers, cc_names): Likewise.
3824 (address_registers, data_registers, other_registers): New register
3825 arrays.
3826 (register_name, system_register_name, cc_name): Remove.
3827 (mn10300_reloc_prefix): Likewise.
3828 (data_register_name): New function.
3829 (address_register_name, other_register_name): Likewise.
3830 (md_assemble): Rough cut at parsing operands. Remove lots of
3831 unwanted code.
3832 (md_apply_fix3): Disable for now.
3833
99e3ccb6
ILT
3834Mon Oct 7 11:38:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3835
3836 * config/tc-m68k.c (select_control_regs): New function, extracted
3837 out of m68k_init_after_args.
3838 (m68k_init_after_args): Use it.
3839 (mri_chip): Use it here as well to update set of allowed control
3840 regs for movec.
3841
0bd28bc4
ILT
3842Mon Oct 7 11:24:29 1996 Ian Lance Taylor <ian@cygnus.com>
3843
3844 * config/obj-elf.c (elf_begin): New function.
3845 (obj_elf_section): Add the section symbol to the symbol table.
3846 * config/obj-elf.h (obj_begin): Define.
3847 (elf_begin): Declare.
3848 * as.c (perform_an_assembly_pass): Call obj_begin if it is
3849 defined.
3850
eb0dafdc
ILT
3851Fri Oct 4 18:37:32 1996 Ian Lance Taylor <ian@cygnus.com>
3852
3853 * config/obj-coff.c (fixup_segment): Subtract the section address
3854 from a PC relative reloc if TC_M68K.
3855
76f841e6
ILT
3856Thu Oct 3 15:15:30 1996 Ian Lance Taylor <ian@cygnus.com>
3857
3858 * config/tc-sparc.c (md_pseudo_table): Make .uahalf, .uaword, and
3859 .uaxword available even if not OBJ_ELF.
3860 (md_atof): Remove unused local variable wordP.
3861
0f91d763
JL
3862Thu Oct 3 00:16:50 1996 Jeffrey A Law (law@cygnus.com)
3863
3864 * config/tc-mn10x00.c, config/tc-mn10x00.h: New files
3865 for Matsushita MN10x00 support.
3866 * configure.in: Recognize mn10x00-*-*
3867 * configure: Rebuilt.
3868
7c328bc7
ILT
3869Wed Oct 2 15:54:03 1996 Klaus Kaempf <kkaempf@progis.de>
3870
3871 * obj-evax.h: move openvms definitions from here to tc-alpha.c.
3872 * tc-alpha.c: add support for vms_case_hack like in vax/vms.
3873 (load_expression): track clobbering of base reg before jmp/jsr.
3874 (s_alpha_file): pass case_hack flags and source filename via
3875 symbol table to bfd.
3876 * tc-alpha.h (TC_CONS_FIX_NEW): define
3877
fed13a5e
ILT
3878Tue Oct 1 16:16:01 1996 Joel Sherrill <joel@oarcorp.com>
3879
3880 * configure.in (mips-*-rtems*): New target, like mips-*-elf*.
3881 * configure: Rebuild.
3882
ffef69a3
ILT
3883Tue Oct 1 12:37:48 1996 Ian Lance Taylor <ian@cygnus.com>
3884
a69e5977
ILT
3885 * read.c (s_macro): Warn if a macro has the same name as a
3886 pseudo-op.
3887 (s_space): In m68k MRI mode, align to a word boundary.
3888 * macro.c (define_macro): Add namep parameter. Change all
3889 callers.
3890 * macro.h (define_macro): Update declaration.
3891
bfc94743
ILT
3892 * as.c (show_usage): Print bug report address.
3893 (parse_args): Change version printing to match current GNU
3894 standards.
3895 * gasp.c (show_usage): Print bug report address.
3896 (main): Change version printing to match current GNU standards.
3897
0b810a6e
ILT
3898 * config/tc-m68k.c (init_table): Correct access control unit
3899 register numbers. From Ken Rose <rose@netcom.com>.
3900
ffef69a3
ILT
3901 * config/tc-alpha.c: Add some static function prototypes.
3902 (alpha_macros): Move to top of file. Make static.
3903 (alpha_num_macros): Move to top of file.
3904
8940a583
SG
3905Tue Oct 1 09:36:19 1996 Stu Grossman (grossman@critters.cygnus.com)
3906
3907 * tc-v850.h: Define LOCAL_LABEL to recognise _.L_* symbols
3908 generated by DWARF.
3909
8940a583
SG
3910Sat Sep 28 03:38:08 1996 Ian Lance Taylor <ian@cygnus.com>
3911
3912 * listing.c (list_symbol_table): Remove bogus code in BFD64 case,
3913 and just call sprintf_vma.
3914
4fc2c99a
ILT
3915Thu Sep 26 16:04:11 1996 Ian Lance Taylor <ian@cygnus.com>
3916
3917 * expr.c (expr): Change >>= to >> (fix typo). (From meissner).
3918
97f8e6ff
ILT
3919Tue Sep 24 19:05:08 1996 Ian Lance Taylor <ian@cygnus.com>
3920
3921 * read.c (float_cons): Call md_flush_pending_output if it is
3922 defined.
3923
97f8e6ff
ILT
3924Tue Sep 24 12:22:18 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3925
3926 * config/tc-d10v.c (md_operand): Created. Allows operands to
3927 start with '#'.
3928 * config/tc-d10v.h (md_operand): Undefined.
3929
6e4f3f09
ILT
3930Mon Sep 23 12:13:18 1996 Ian Lance Taylor <ian@cygnus.com>
3931
3932 * config/tc-m68k.c (add_fix): Treat a width of '3' like 'B'.
3933 (md_assemble): A fixup width of '3' means a 1 byte reloc.
3934
72f70020
ILT
3935Thu Sep 19 12:21:24 1996 Ian Lance Taylor <ian@cygnus.com>
3936
3937 * config/obj-coff.c (fixup_segment): Don't adjust PC relative
3938 reloc for the i960 for a reloc in the same section. This undoes
3939 one of the two changes made Aug 19.
3940
ab299844
ILT
3941Wed Sep 18 12:11:58 1996 Ian Lance Taylor <ian@cygnus.com>
3942
3943 * config/obj-coff.c (obj_coff_endef): Both versions: Move C_STAT
3944 symbols to the position of the debugging information.
3945
15405999
ILT
3946Mon Sep 16 11:41:40 1996 Ian Lance Taylor <ian@cygnus.com>
3947
3948 * expr.c (expr): Always use unsigned right shifts for >>.
3949
f17be658
JSC
3950Thu Sep 12 10:25:45 1996 James G. Smith <jsmith@cygnus.co.uk>
3951
3952 * config/tc-arm.c (md_apply_fix3): Update two thumb instruction
3953 slots when processing BL fixups.
3954
3955 * config/tc-arm.c (output_inst): Ensure Thumb BL fixup is marked
3956 on the first half of the instruction.
3957
475c826b
ILT
3958Wed Sep 11 00:09:35 1996 Ian Lance Taylor <ian@cygnus.com>
3959
1decafee
ILT
3960 * ecoff.c (ecoff_stab): Create an expression symbol for a complex
3961 stabs expression, rather than giving an error.
3962
475c826b
ILT
3963 * ecoff.c (ecoff_new_file): Don't do anything if we are still in
3964 the same file.
3965
8a3bdc3d
ILT
3966Tue Sep 10 11:45:37 1996 Ian Lance Taylor <ian@cygnus.com>
3967
3968 * config/tc-mips.c (append_insn): Fill in the value for a constant
3969 jump, rather than creating a reloc.
3970
517078c1
ILT
3971Mon Sep 9 10:57:42 1996 Ian Lance Taylor <ian@cygnus.com>
3972
d31a3f5e
ILT
3973 * config/tc-mips.c (append_insn): Don't swap an instruction which
3974 sets a condition code with an instruction which uses a condition
3975 code.
3976 (mips_ip): In cases 'N' and 'M', look for $fccN rather than an
3977 immediate value.
3978
ca296aab 3979 * config/tc-mips.c (md_begin): Recognize r5000 for cpu.
517078c1
ILT
3980 (mips_ip): Give a better error message if the ISA level is wrong.
3981 (md_parse_option): Recognize -mcpu=[v][r]5000.
3982
3983Sat Sep 7 13:25:55 1996 James G. Smith <jsmith@cygnus.co.uk>
3984
3985 * config/tc-mips.c (COUNT_TOP_ZEROES): Added macro to count
3986 leading zeroes.
3987 (load_register): Ensure hi32 bits are not lost during lo32bit
3988 processing. Fix shift offset that was overflowing into the next
3989 instruction field. Add code to generate shorter sequences for
3990 constants with a single contiguous seqeuence of ones.
3991
5e6c6406
MH
3992Fri Sep 6 17:07:12 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3993
3994 * config/tc-d10v.c (d10v_dot_word): New function to support
3995 "@word" with the word pseudo-op.
3996 (md_apply_fix3): Cleanup and changes to support correct sizes
3997 for 16 and 18-bit relocs.
3998
df4021c1
DE
3999Fri Sep 6 16:00:29 1996 Doug Evans <dje@canuck.cygnus.com>
4000
4001 * configure.in (sparc-*-aout): Set `em'.
4002 * configure: Regenerated.
4003 * config/te-sparcaout.h: New file.
4004 * config/tc-sparc.h (TARGET_BYTES_BIG_ENDIAN): Define.
4005 Ifdef TE_SPARCOUT define TARGET_FORMAT and SPARC_BIENDIAN.
4006 * config/tc-sparc.c (INSN_BIG_ENDIAN): New macro.
4007 (SPECIAL_CASE_{SETSW,SETX}): Define.
4008 ({NOP,OR,FMOVS,SETHI,SLLX,SRA}_INSN): Define.
4009 (md_begin): Delete setting of `target_big_endian'.
4010 (output_insn): New function.
4011 (md_assemble): Rewrite. Add `setx' support.
4012 (sparc_ip): Handle `0' operand char. Recognize setuw, setsw, setx
4013 special cases.
4014 (md_atof): Add little endian support.
4015 (md_number_to_chars): Likewise.
4016 (md_apply_fix): Likewise.
4017 (md_longopts): Recognize -EL,-EB ifdef SPARC_BIENDIAN.
4018 (md_parse_option): Likewise.
4019 (md_show_usage): Print -EL, -EB ifdef SPARC_BIENDIAN.
4020
cfc71c6d
ILT
4021Thu Sep 5 13:40:29 1996 Ian Lance Taylor <ian@cygnus.com>
4022
4023 * ecoff.c (ecoff_new_file): New function.
4024 * ecoff.h (ecoff_new_file): Declare.
4025 * config/obj-ecoff.h (obj_app_file): Define.
4026
4027Thu Sep 5 13:39:25 1996 Richard Henderson <rth@tamu.edu>
4028
4029 * config/tc-alpha.c (load_expression): Bias the .lit8 section
4030 symbol by 32k so that our 16-bit signed offset can address the
4031 entire chunk. Reported by <matt@lkg.dec.com>.
4032
711254da
ILT
4033Wed Sep 4 10:23:20 1996 Ian Lance Taylor <ian@cygnus.com>
4034
4035 * config/tc-mips.c (load_register): Remove unused variable tmp.
4036
1b68deb5
JSC
4037Wed Sep 4 11:24:29 1996 James G. Smith <jsmith@cygnus.co.uk>
4038
4039 * config/tc-mips.c (load_register): Remove unnecessary code that
4040 was causing the high 32bits of 64bit constants to be lost.
4041
1b68deb5
JSC
4042Tue Sep 3 13:52:56 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4043
4044 * config/tc-d10v.c: Added changes to support function
4045 pointers and "@word" syntax.
4046
05fd83ed
JL
4047Tue Sep 3 11:57:18 1996 Jeffrey A Law (law@cygnus.com)
4048
4049 * config/tc-v850.c: Remove commented out and #if 0'd code.
4050 (v850_reloc_prefix): Provide prototype.
4051 (postfix, get_reloc, build_insn): Remove prototypes for nonexistant
4052 functions.
4053 (md_begin, md_assemble, md_apply_fix3): Remove unused variables.
4054 (md_assemble): Add default to case statement.
4055
270fd2ad
JL
4056Sat Aug 31 16:03:00 1996 Jeffrey A Law (law@cygnus.com)
4057
4058 * config/tc-v850.c (md_assemble): Compute size of the instrction
4059 from the opcode.
74dd0c07 4060
2d56269e
JL
4061 * config/tc-v850.c (md_apply_fix3): Do simple byte, short and
4062 word fixups too.
4063
270fd2ad
JL
4064Fri Aug 30 23:50:08 1996 Jeffrey A Law (law@cygnus.com)
4065
74dd0c07
JL
4066 * config/tc-v850.c (md_apply_fix3): Use little endian get/put
4067 routines to fetch/store the updated instruction from/to memory.
4068 (v850_insert_operand): If the operand has a specialized insert
4069 routine, call it.
4070
c84615bc
C
4071Fri Aug 30 18:35:26 1996 J.T. Conklin <jtc@hippo.cygnus.com>
4072
4073 * config/tc-v850.c (reg_name_search): Align calling convention to
4074 be like identical function found in tc-ppc.c.
4075 (get_reloc): Removed.
4076 (v850_reloc_prefix): New function, parse lo(), hi() and hi0().
4077 (md_assemble): emit fixups.
4078 (md_pcrel_from): renamed from md_pcrel_from_section, emit proper
4079 displacement.
4080 (md_apply_fix3): handle fixups/relocs.
4081 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Removed definition.
4082
0f616818
ILT
4083Fri Aug 30 18:12:00 1996 Ian Lance Taylor <ian@cygnus.com>
4084
4085 Add SH ELF support.
4086 * configure.in (sh-*-elf*): New target.
4087 * config/tc-sh.h (TARGET_ARCH): Define.
4088 (WORKING_DOT_WORD): Define.
4089 (TC_COFF_FIX2RTYPE): Only define if OBJ_COFF.
4090 (BFD_ARCH, COFF_MAGIC, TC_COUNT_RELOC): Likewise.
4091 (TC_RELOC_MANGLE, tc_coff_symbol_emit_hook): Likewise.
4092 (DO_NOT_STRIP, NEED_FX_R_TYPE, TC_KEEP_FX_OFFSET): Likewise.
4093 (TC_COFF_SIZEMACHDEP, tc_frob_file): Likewise.
4094 (SUB_SEGMENT_ALIGN): Likewise.
4095 (RELOC_32): Don't define.
4096 (tc_frob_file_before_adjust): Define if BFD_ASSEMBLER.
4097 (target_big_endian): Declare if OBJ_ELF.
4098 (TARGET_FORMAT): Define if OBJ_ELF.
4099 * config/tc-sh.c: Use BFD reloc codes instead of SH COFF reloc
4100 numbers throughout.
4101 (tc_crawl_symbol_chain): Only define if OBJ_COFF.
4102 (tc_headers_hook, tc_coff_sizemachdep): Likewise.
4103 (struct sh_count_relocs): Define.
4104 (sh_count_relocs): New static function, broken out of
4105 sh_frob_file. Add BFD_ASSEMBLER code.
4106 (sh_frob_section): Likewise.
4107 (sh_frob_file): Call sh_frob_section.
4108 (md_convert_frag): If BFD_ASSEMBLER, change type of headers, and
4109 call section_symbol rather than seg_info (seg)->dot.
4110 (md_section_align): Add OBJ_ELF version.
4111 (SWITCH_TABLE_CONS): Define.
4112 (SWITCH_TABLE): Use SWITCH_TABLE_CONS.
4113 (md_apply_fix): Change parameter types if BFD_ASSEMBLER. Only
4114 handle fx_r_type == 0 if not BFD_ASSEMBLER. Return 0 if
4115 BFD_ASSEMBLER.
4116 (struct reloc_map): Define if not BFD_ASSEMBLER.
4117 (coff_reloc_map): Likewise.
4118 (sh_coff_reloc_mangle): Use coff_reloc_map to convert fx_r_type.
4119 (tc_gen_reloc): New function if BFD_ASSEMBLER.
4120 * write.c (write_relocs): Ifdef out fx_where test which triggers
4121 inappropriately for SH ELF.
4122 (write_object_file): Call tc_frob_file_before_adjust and
4123 obj_frob_file_before_adjust if they are defined.
4124
4125 * write.c (write_object_file): Use BFD_RELOC_16, not
4126 BFD_RELOC_NONE, when calling fix_new_exp for a broken word.
4127
4128 * read.c (emit_expr): Fix conversion of byte count to BFD reloc
4129 code.
4130
20dbcd5c
MH
4131Fri Aug 30 14:47:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4132
4133 * config/tc-d10v.c (find_opcode): Fix problem with calculating
4134 branch sizes in across sections.
4135
05631de2
JL
4136Fri Aug 30 00:44:13 1996 Jeffrey A Law (law@cygnus.com)
4137
4138 * config/tc-850.c (md_assemble): Handle hi() correctly. Handle
4139 hi0() too.
4140
4141Wed Aug 28 23:11:08 1996 Jeffrey A Law (law@cygnus.com)
4142
4143 * config/tc-v850.c (md_begin): Deal with end of opcode
4144 table marker.
4145
e592d28f
MH
4146Wed Aug 28 19:20:04 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4147
4148 * config/tc-d10v.c (find_opcode): Fix a bug which could generate
4149 the wrong opcode for cases like st2w where there are many forms
4150 of the same instruction.
4151
6fce31a6
ILT
4152Tue Aug 27 13:53:22 1996 Ian Lance Taylor <ian@cygnus.com>
4153
4154 * expr.c (operand): If md_parse_name is defined, call it before
4155 calling symbol_find_or_make.
4156 * config/tc-ppc.h (md_parse_name): Define.
4157 (ppc_parse_name): Declare.
4158 * config/tc-ppc.c (reg_name_search): Add regs and regcount
4159 parameters.
4160 (register_name): Update call to reg_name_search.
4161 (cr_operand): New static variable.
4162 (cr_names): New static const array.
4163 (ppc_parse_name): New function.
4164 (md_assemble): If PPC_OPERAND_CR is set in the operand flags, set
4165 cr_operand before calling expression.
4166
a58b037a
JL
4167Tue Aug 27 09:05:50 1996 Jeffrey A Law (law@cygnus.com)
4168
4169 * config/tc-hppa.c (tc_gen_reloc): Add new argument to
4170 hppa_gen_reloc_type call.
4171
3017263b
MH
4172Mon Aug 26 18:24:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4173
4174 * config/tc-d10v.c: Fixed ".word". Fixed problem with range checking
4175 on addresses. Improved error messages.
4176 * doc/c-d10v.texi: Added docs for register pairs.
4177
f9085532
MH
4178Mon Aug 26 13:39:27 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4179
4180 * config/tc-d10v.c (parallel_ok): Fix bug in parallel
4181 checking code.
4182
58275724
ILT
4183Mon Aug 26 14:38:22 1996 Ian Lance Taylor <ian@cygnus.com>
4184
4185 * ecoff.c (init_file): Initialize fMerge to 1.
4186 (add_file): Restore old file merging code, but only merge files if
4187 fMerge is set.
4188 (ecoff_directive_loc): Clear fMerge field of current file.
4189 (ecoff_generate_asm_lineno): Likewise.
4190
b1c28263
MH
4191Fri Aug 23 11:40:47 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4192
4193 * doc/c-d10v.texi: Fix typo.
4194
c9a32d6c
JL
4195Fri Aug 23 10:41:32 1996 Jeffrey A Law (law@cygnus.com)
4196
58275724
ILT
4197 * config/tc-v850.c (md_assemble): Correct bit masking for
4198 hi and lo expressions.
4199
88b47a85
JL
4200 * config/tc-v850.c (md_assemble): Rough cut at demanding
4201 "ep" or "r30" in sst and sld instructions.
4202 (md_apply_fix3): Don't abort. Just warn that we don't
4203 have relocs yet.
4204
c9f1b2d9
JL
4205 * config/tc-v850.c (CC_NAME_CNT): Define.
4206 (cc_name): New function.
4207 (md_assemble): Handle V850_OPERAND_CC correctly.
4208
d5974c57
JL
4209 * config/tc-v850.c (md_assemble): Don't forget to initialize
4210 "insn"!
4211
0e8f9bd1
JL
4212 * config/tc-v850.c (reg_name_search): Generalize to search
4213 any given register table.
4214 (register_name): Pass appropriate table and size to reg_name_search.
4215 (system_register_name): New function.
4216 (SYSREG_NAME_CNT): Define.
4217 (md_assemble): Handle operands which are system registers.
4218
c9a32d6c
JL
4219 * config/tc-v850.c (md_assemble): If we find a register, but the
4220 opcode doesn't want a register, then we don't have a match.
4221 (md_assemble): Get size of the instruction from the opcode table.
4222
eeef602f
ILT
4223Thu Aug 22 10:20:30 1996 Ian Lance Taylor <ian@cygnus.com>
4224
8ee90d35
ILT
4225 * configure.in: Set and substitute HLDENV.
4226 * configure: Rebuild.
4227 * Makefile.in (HLDENV): New variable.
4228 (as.new): Use $(HLDENV).
4229
eeef602f
ILT
4230 * ecoff.c (ecoff_directive_endef): Avoid a division by zero error
4231 if an array dimension is not known.
4232
6be9ec8d
MH
4233Thu Aug 22 10:50:00 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4234
4235 * config/tc-d10v.c: Fix a reloc bug caused by my last change.
4236 * doc/c-d10v.texi: Cleanup.
4237
c6aa56bc
C
4238Tue Aug 20 15:15:16 1996 J.T. Conklin <jtc@hippo.cygnus.com>
4239
4240 * config/tc-v850.c: New file.
4241 * config/tc-v850.h: New file.
4242 * configure (v850-*-elf): New target.
4243 * configure.in (v850-*-elf): New target.
4244
2c2e5626
MH
4245Wed Aug 21 15:50:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4246
4247 * doc/c-d10v.texi: New file.
4248 * doc/all.texi: Added D10V stuff.
4249 * doc/as.texinfo: Added D10V stuff.
4250
ab457c4c
MH
4251Tue Aug 20 14:10:02 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4252
4253 * config/tc-d10v.c: All references to defined symbols should
4254 now use the optimal instruction. .float and .double now work.
4255
d4e1b0be
ILT
4256Mon Aug 19 14:41:36 1996 Ian Lance Taylor <ian@cygnus.com>
4257
4258 * config/obj-coff.c (fixup_segment): Adjust PC relative reloc by
4259 section address for the i960 as is done for the i386.
4260
4261Thu Aug 15 16:37:59 1996 Stan Shebs <shebs@andros.cygnus.com>
4262
4263 * mpw-config.in: Add wildcards for config matching, add mips-*-*
4264 case, forward-include bfd/elf-bfd.h.
4265
b98b04ea
MH
4266Thu Aug 15 13:24:30 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4267
4268 * config/tc-d10v.c: Add additional information to the opcode
4269 table to help determinine which instructions can be done
4270 in parallel.
4271
b98b04ea
MH
4272Thu Aug 15 17:01:31 1996 James G. Smith <jsmith@cygnus.co.uk>
4273
4274 * config/tc-arm.c: Major changes to add Thumb support, with lots
4275 of change input from <rearnsha@armltd.co.uk>.
4276 Reverted to INSN_SIZE macro, rather than insn_size variable.
4277 (insns): Added ARM "bx" instruction support.
4278 (tinsns): Added Thumb instruction definition structure.
4279 (arm_tops_hsh): Added hash structure for Thumb opcodes.
4280 (md_pseudo_table): Added ".arm", ".thumb" and ".code" pseudo-ops.
4281 (opcode_select,s_arm,s_thumb,s_code): Added.
4282 (decode_shift): Allow upper-case RRX.
4283 (do_ldst): Simpler halfword support.
4284 (do_ldmstm): Improved.
4285 (reg_list, do_bx, thumb_reg, thumb_add_sub, thumb_shift,
4286 thumb_mov_compare, thumb_load_store, do_t_arit, do_t_add,
4287 do_t_asr, do_t_branch, do_t_bx, do_t_compare, do_t_ldmstm,
4288 do_t_ldrb, do_t_ldrh, do_t_lds, do_t_lsl, do_t_lsr, do_t_mov,
4289 do_t_push_pop, do_t_str, do_t_strb, do_t_strh, do_t_sub, do_t_swi,
4290 do_t_adr): Added.
4291 (md_apply_fix3): Add support for BFD_RELOC_ARM_THUMB_* relocations.
4292 (md_parse_option): Add support for -mthumb.
4293 (md_show_usage): Updated to reflect new command line option.
4294 (arm_data_in_code, arm_canonicalize_symbol_name): Added.
4295 * config/tc-arm.h: Provide TC_FIX_TYPE to allow private ARM
4296 fragment information to be held.
4297
4298Thu Aug 15 16:12:00 1996 Richard Earnshaw (rearnsha@armltd.co.uk)
4299
4300 * tc-arm.c (md_apply_fix3): Also set fixP->fx_done if fx_addsy is
4301 non-null, but is a constant.
4302 (fix_new_arm): Call make_expr_symbol to make the expression symbol
4303 so that error reporting will work correctly.
4304
126436a8
ILT
4305Wed Aug 14 10:37:21 1996 Ian Lance Taylor <ian@cygnus.com>
4306
4307 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust relocs
4308 against weak symbols.
4309
0e94336e
ILT
4310Tue Aug 13 17:39:24 1996 Ian Lance Taylor <ian@cygnus.com>
4311
4312 * config/tc-ppc.h (TC_FORCE_RELOCTION): Define if OBJ_XCOFF.
4313 (ppc_force_relocation): Declare if OBJ_XCOFF.
4314 * config/tc-ppc.c (ppc_force_relocation): New function if
4315 OBJ_XCOFF.
4316
817e4f75
ILT
4317Mon Aug 12 16:49:43 1996 Ian Lance Taylor <ian@cygnus.com>
4318
4319 * config/tc-mips.h (BYTE_ORDER): Don't define. No longer used.
4320
f494d503
MH
4321Fri Aug 9 17:48:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4322
4323 * config/tc-d10v.c: Fix problem with relocs.
4324
8d07d2c9
ILT
4325Fri Aug 9 14:16:14 1996 Ian Lance Taylor <ian@cygnus.com>
4326
4327 * config/tc-sh.c (sh_do_align): If not BFD_ASSEMBLER, always align
4328 with nops if not in data_section or bss_section.
4329
f649d525
ILT
4330Thu Aug 8 12:32:56 1996 Klaus Kaempf <kkaempf@progis.de>
4331
4332 Add support for openVMS/Alpha.
4333 * as.h (PRINTF_LIKE): Don't define if VMS, for now.
4334 * config/obj-evax.c: New file.
4335 * config/obj-evax.h: New file.
4336 * config/tc-alpha.c: Add support for EVAX format if OBJ_EVAX is
4337 defined.
4338 * config/tc-alpha.h: Add support for EVAX format if OBJ_EVAX is
4339 defined. Add case for bfd_target_evax_flavour.
4340 * config/vms-a-conf.h: New file.
4341 * conf-a-gas.com: New file.
4342 * configure.in: Add target alpha-*-*vms*.
4343 * configure: Rebuild.
4344 * makefile.vms: New file.
4345 * read.c (s_lcomm): Align bss_seg on 8 byte boundary if OBJ_EVAX.
4346 Don't call ffs on openVMS/Alpha.
4347
5cece526
ILT
4348Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
4349
4350 * configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or
4351 <strings.h> if they exist. Call GAS_CHECK_DECL_NEEDED on strstr
4352 and sbrk.
4353 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
4354 (NEED_DECLARATION_SBRK): New macro.
4355 * configure, conf.in: Rebuild.
4356 * as.h: Only include <strings.h> if HAVE_STRINGS_H.
4357 (strstr): Declare if NEED_DECLARATION_STRSTR.
4358 * as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk.
4359
e592f0e6
ILT
4360Wed Aug 7 11:50:26 1996 Ian Lance Taylor <ian@cygnus.com>
4361
d10df990
ILT
4362 * symbols.c (resolve_symbol_value): Handle addition or subtraction
4363 by a constant before entering the main switch. Reject attempts to
4364 apply an arithmetic function to non-absolute symbols, except for
4365 the special case of subtraction of two symbols in the same
4366 section.
4367
cf32394d
ILT
4368 * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but
4369 not to more than a 16 byte boundary.
4370
e592f0e6
ILT
4371 * config/tc-i386.c (tc_gen_reloc): Accept all relocs; remove
4372 #ifndef OBJ_ELF lines. From Eric Valette <valette@crf.canon.fr>.
4373 (tc_gen_reloc): If out of memory call as_fatal rather than
4374 assert. If no howto found, call as_bad_where rather than
4375 as_fatal. Change the error message slightly. Set howto to a
4376 non-NULL value in order to keep going.
4377
5d9a99a7
MH
4378Tue Aug 6 12:58:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4379
4380 * config/tc-d10v.c: Added code to support 32-bit fixups for stabs.
4381
6a8e0036
JL
4382Tue Aug 6 11:15:26 1996 Jeffrey A Law (law@cygnus.com)
4383
4384 * config/tc-h8300.c (get_specific): New operand "size" derived
4385 from ".b", ".w" and ".l" extensions. All callers changed. If
4386 the base instruction has no operands, then use the size to
4387 determine which specific instruction to use.
4388
3d7b0c49
ILT
4389Mon Aug 5 14:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
4390
4391 * config/tc-i960.c (mem_fmt): Call parse_expr before emit.
4392
10a14e36
ILT
4393Fri Aug 2 11:23:31 1996 Ian Lance Taylor <ian@cygnus.com>
4394
4395 * config/tc-mips.c (md_section_align): Don't change addr if
4396 OBJ_ELF.
4397
470a679c
JL
4398Thu Aug 1 23:51:52 1996 Jeffrey A Law (law@cygnus.com)
4399
4400 * config/tc-hppa.c: Revert yesterday's changes.
4401
b5cf6779
MH
4402Wed Jul 31 14:46:11 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4403
4404 * config/tc-d10v.c: Disable range checking on 16-bit values.
4405
159eb3c0
ILT
4406Wed Jul 31 16:27:19 1996 Ian Lance Taylor <ian@cygnus.com>
4407
4408 * config/tc-m68k.c (m68k_ip): Set ok_arch for every instruction,
4409 not just the ones that don't match.
4410
37e05f64
MH
4411Wed Jul 31 11:45:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4412
4413 * config/tc-d10v.c: Fixed bugs in short relocs and range checking.
4414
c479fc62
JSC
4415Wed Jul 31 15:41:42 1996 James G. Smith <jsmith@cygnus.co.uk>
4416
4417 * config/tc-arm.c: Changed INSN_SIZE to variable insn_size, as
4418 pre-cursor to adding Thumb support. Also added cpu_variant flag
4419 information to each of the asm_flg structures.
4420 (md_parse_option): Updated ARM7 parsing to allow 't' for
4421 thumb/halfword support, aswell as 'm' for long multiply.
4422 (md_show_usage): Updated help message.
4423 (md_assemble): Check that instruction flags are applicated to the
4424 current cpu variant.
4425 (md_apply_fix3, tc_gen_reloc): Add BFD_RELOC_ARM_OFFSET_IMM8 and
4426 BFD_RELOC_ARM_HWLITERAL relocation support for new halfword and
4427 signextension instructions.
4428 (do_ldst): Generate halfword and signextension variants if
4429 mnemonic flags match.
4430 (ldst_extend): Do not allow shifts in the offset field of halfword
4431 or signextension instructions.
4432 (validate_offset_imm): Provide check on halfword and signextension
4433 immediate range.
4434 (add_to_lit_pool): Merge identical literal pool values.
4435
448b5aad
JL
4436Tue Jul 30 14:28:23 1996 Jeffrey A Law (law@cygnus.com)
4437
4438 * config/tc-hppa.c (selector_table): Add 'E' selector.
4439 (cons_fix_new_hppa): Don't coke on e_esel.
4440 (tc_gen_reloc, SOM version): Handle R_COMP2 when used
4441 to help generate exception handling tables.
4442 (md_apply_fix): Don't try to apply fixups with an e_esel
4443 selector.
4444 (hppa_fix_adjustable): Fixups with e_esel selectors
4445 are not adjustable.
4446
8dfb05cc
ILT
4447Tue Jul 30 15:51:41 1996 Ian Lance Taylor <ian@cygnus.com>
4448
4449 * config/tc-sparc.c (md_pseudo_table): Add 2byte, 4byte, and 8byte
4450 pseudo-ops.
4451
8544dc03
MH
4452Fri Jul 26 11:43:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4453
4454 * config/tc-d10v.c: Added lots of error checking. Added hacks
4455 to support accumulator shifts.
4456
5ca547dc
ILT
4457Fri Jul 26 11:56:08 1996 Ian Lance Taylor <ian@cygnus.com>
4458
4459 * symbols.c (S_SET_EXTERNAL): Let .weak override.
4460 (S_CLEAR_EXTERNAL): Likewise.
4461 (S_SET_WEAK): Remove error; just let .weak override.
4462
35ad20a1
MH
4463Thu Jul 25 15:22:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4464
4465 * config/tc-d10v.c (md_assemble): Now handles multiline
4466 instructions.
4467
7c096652
MH
4468Thu Jul 25 12:03:33 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4469
4470 * config/tc-d10v.c: Fix packaging bug. Added range checking.
4471 Added kludge for divs instruction. Fixed minor problem with
4472 multiple text sections.
35ad20a1
MH
4473 * config/tc-d10v.h (d10v_cleanup): Change prototype.
4474
93050391
MH
4475Tue Jul 23 10:49:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4476
4477 * config/tc-d10v.c (md_apply_fix3): Fix all instruction
4478 addresses to be right-shifted by 2.
4479
0ef32559
MH
4480Mon Jul 22 11:32:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4481
4482 * config/tc-d10v.c: Many changes to get relocs working.
4483 (register_name): No longer creates a symbol for register names.
4484 (pre_defined_registers): moved to opcodes/d10v-opc.c.
4485 (d10v_insert_operand): Now works correctly for either container.
4486 * config/tc-d10v.h (d10v_cleanup): Declare.
4487
97aca1bc
ILT
4488Mon Jul 22 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
4489
4490 * config/tc-mips.c (tc_gen_reloc): BFD_RELOC_PCREL_HI16_S and
4491 BFD_RELOC_PCREL_LO16 are expected to be PC relative.
4492
6543a7fb
ILT
4493Mon Jul 22 12:46:55 1996 Richard Henderson <rth@tamu.edu>
4494
4495 * tc-alpha.c: Patches to track current minimum alignment to reduce
4496 the number of fragments created with frag_align.
4497 (alpha_current_align): New static variable.
4498 (s_alpha_text): Reset alignment to 0.
4499 (s_alpha_data, s_alpha_rdata, s_alpha_sdata): Likewise.
4500 (s_alpha_stringer, s_alpha_space): New functions.
4501 (s_alpha_cons, alpha_flush_pending_output): Remove functions.
4502 (alpha_cons_align): New function to replace both of them.
4503 (emit_insn): Only align if alpha_current_align is less than 2;
4504 reset alpha_current_align to 2.
4505 (s_alpha_gprel32): Likewise.
4506 (s_alpha_section): New function. Basically duplicate the other
4507 alpha section change hooks. Only define for ELF.
4508 (s_alpha_float_cons): Simplify alignment handling.
4509 (md_pseudo_table): Only define "rdata" and "sdata" if OBJ_ECOFF.
4510 If OBJ_ELF, define "section", "section.s", "sect", and "sect.s".
4511 Don't define the s_alpha_cons pseudo-ops. Do define
4512 s_alpha_stringer and s_alpha_space pseudo-ops.
4513 (alpha_align): Skip if less than current default alignment. Set
4514 default alignment.
4515 * tc-alpha.h (md_flush_pending_output): Remove.
4516 (md_cons_align): Add.
4517
4518 * tc-alpha.c: Add oodles of function description comments.
4519 (md_bignum_to_chars): Remove; there are no callers.
4520 (md_show_usage): Mention some more variants.
4521
091221ce
ILT
4522Thu Jul 18 15:54:54 1996 Ian Lance Taylor <ian@cygnus.com>
4523
0b27ea39
ILT
4524 From Andrew Gierth <ANDREWG@microlise.co.uk>:
4525 * configure.in (sparc-*-sysv4*): New target.
4526 * configure: Rebuild.
4527
8dd07a84
ILT
4528 * config/tc-sparc.c (md_pseudo_table): Change uahalf, uaword, and
4529 uaxword to use s_uacons.
4530 (sparc_no_align_cons): New static variable.
4531 (s_uacons): New static function.
4532 (sparc_cons_align): If sparc_no_align_cons is set, just clear it
4533 and return.
4534
4535 * config/tc-sparc.c (s_common): Remove unused label allocate_bss.
4536
cbe7dccb
ILT
4537 * configure.in: Add mips-*-irix6* target. Handle Irix 6 like Irix
4538 5 with regard to shared libraries.
4539 * configure: Rebuild.
4540
091221ce
ILT
4541 * config/tc-m68k.c (m68k_ip): Use the correct length when
4542 allocating space for the unsupported architecture error message.
4543
05a8bf33
MM
4544Thu Jul 18 12:57:10 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4545
4546 * configure.in (d10v-*-*): Allow d10v-*-*, don't require d10v-*-elf*.
4547
4548Wed Jul 17 14:25:13 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
7be9a312
MH
4549
4550 * config/tc-d10v.c: New file.
4551 * config/tc-d10v.h: New file.
4552 * configure (d10v-*-elf): New target.
4553 * configure.in (d10v-*-elf): New target.
7be9a312 4554
10c9620d
MM
4555Fri Jul 12 20:54:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4556
4557 * config/tc-ppc.c (md_parse_option): Recognize -K PIC.
4558
0ee09671
ILT
4559Wed Jul 10 12:39:08 1996 Richard Henderson <rth@tamu.edu>
4560
4561 * config/tc-alpha.c (alpha_align): Change fill parameter
4562 to a pointer. Take NULL as 0 or nop depending on section. Change
4563 all callers.
4564 (s_alpha_align): Rename local variables.
4565
4566 * doc/as.texinfo (.align): Document action of omitted
4567 fill parameter.
4568
3128726c
ILT
4569Wed Jul 10 00:23:30 1996 Ian Lance Taylor <ian@cygnus.com>
4570
4571 * config/tc-ppc.c (md_apply_fix3): Give a useful error message
4572 when an unsupported PC relative reloc is seen, rather than calling
4573 abort.
4574
4575 * app.c (do_scrub_chars): Remove not_cpp_line local variable.
4576 Instead, check state when '#' comment is seen.
4577
7f003b7f
ILT
4578Mon Jul 8 14:11:49 1996 Ian Lance Taylor <ian@cygnus.com>
4579
a8aed9dd
ILT
4580 * config/tc-mips.c (mips_regmask_frag): Only define if OBJ_ELF or
4581 OBJ_MAYBE_ELF.
4582 (tc_gen_reloc): If fixup was changed to be PC relative, change
4583 reloc type accordingly. Use name of reloc in error message.
4584
a5a78175
ILT
4585 * as.h: Don't define const or volatile.
4586 * flonum.h: Don't define const.
4587
7f003b7f
ILT
4588 * config/tc-m68k.c (tc_gen_reloc): Change the code appropriately
4589 if fx_pcrel is set. Correct setting the addend case in the
4590 OBJ_ELF case (from Andreas Schwab
4591 <schwab@issan.informatik.uni-dortmund.de>).
4592 (md_show_usage): Correct -mfc5200 to -m5200.
4593
8d20a0a8
C
4594Fri Jul 5 10:32:58 1996 J.T. Conklin <jtc@rtl.cygnus.com>
4595
910d7df2
C
4596 * doc/c-m68k.texi: Document -m5200 flag.
4597 * doc/as.texinfo: Likewise.
4598
8d20a0a8
C
4599 * config/tc-m68k.c (m68k_ip): The coldfire does not support 8x
4600 scale factor.
4601
c0b34702
ILT
4602Fri Jul 5 11:07:24 1996 Ian Lance Taylor <ian@cygnus.com>
4603
4604 * symbols.c (S_SET_EXTERNAL): Change as_warn to as_bad.
4605 (S_CLEAR_EXTERNAL, S_SET_WEAK): Likewise.
4606
45c85bcb
ILT
4607Thu Jul 4 11:59:46 1996 Ian Lance Taylor <ian@cygnus.com>
4608
6624477c
ILT
4609 * Makefile.in (VERSION): Set to cygnus-2.7.1.
4610
45c85bcb
ILT
4611 * Released binutils 2.7.
4612
fc636a52
JSC
4613Thu Jul 4 10:11:33 1996 James G. Smith <jsmith@cygnus.co.uk>
4614
4615 * config/tc-mips.c (mips_ip): Only perform range check when
4616 dealing with O_constant expressions.
4617
d41d2ccc
C
4618Wed Jul 3 15:02:21 1996 J.T. Conklin <jtc@rtl.cygnus.com>
4619
4620 * m68k-parse.h (m68k_register): Add new coldfile control
4621 registers.
4622
4623 * config/tc-m68k.c (mcf5200_control_regs): New variable,
4624 array of control registers for the coldfire.
4625 (cpu_of_arch): Added mcf5200.
4626 (archs): Added mcf5200.
4627 (init_table): Add new control registers.
4628 (m68k_ip): Added support for new control registers.
4629 (m68k_init_after_args): Likewise.
4630
4631 * config/tc-m68k.c (md_show_usage): Add -m5200 to usage text.
4632
5af96dce
ILT
4633Wed Jul 3 16:05:50 1996 Ian Lance Taylor <ian@cygnus.com>
4634
c5d8f96e
ILT
4635 * read.h (is_it_end_of_statement): Declare.
4636 * read.c (is_it_end_of_statement): Remove declaration.
4637
4638 * config/tc-ppc.c (ppc_elf_suffix): Correct parenthesization of ||
4639 within &&.
4640 (md_assemble): Fix handling of @l with an unsigned constant. Add
4641 default case to reloc switch.
4642
ac76c7e9
ILT
4643 * config/tc-i386.h (AOUT_MACHTYPE): Define as 0 if TE_386BSD.
4644
5af96dce
ILT
4645 Based on patches from Tom Quiggle <quiggle@sgi.com>:
4646 * ecoff.c (last_lineno): New static variable.
4647 (add_procedure): Set last_lineno.
4648 (ecoff_directive_loc): Likewise.
4649 (ecoff_generate_asm_lineno): Likewise.
4650 (ecoff_fix_loc): New function.
4651 * ecoff.h (ecoff_fix_loc): Declare.
4652 * config/tc-mips.c (append_insn): When inserting nops, and using
4653 ECOFF debugging, call ecoff_fix_loc.
4654
b9bddc84
JL
4655Tue Jul 2 23:02:12 1996 Jeffrey A Law (law@cygnus.com)
4656
4657 * config/tc-h8300.c (build_bytes): If an operand type is
4658 marked as SRC_IN_DST retrieve it from the "destination" op.
4659
379c2fb4
ILT
4660Sat Jun 29 13:38:31 1996 Ian Lance Taylor <ian@cygnus.com>
4661
69c1de90
ILT
4662 * configure.in (arm-*-riscix*): Set emulation to riscix.
4663 * configure: Rebuild.
4664 * config/te-riscix.h: New file to define TE_RISCIX.
4665
379c2fb4
ILT
4666 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Define.
4667
4668Fri Jun 28 15:14:31 1996 Ian Lance Taylor <ian@cygnus.com>
4669
4670 * Makefile.in (config.status): Just run config.status as other
4671 tools do.
4672
c611cd82
SS
4673Fri Jun 28 11:09:38 1996 Stan Shebs <shebs@andros.cygnus.com>
4674
4675 * mpw-config.in (TARGET_OS): Add definition to conf.
4676
fbf011f2
ILT
4677Thu Jun 27 20:39:40 1996 James G. Smith <jsmith@cygnus.co.uk>
4678
4679 * config/tc-mips.c (append_insn): Parenthesize
4680 cop_interlocks expressions.
4681
4682Thu Jun 27 12:18:26 1996 Ian Lance Taylor <ian@cygnus.com>
4683
4684 * listing.c (listing_print): Close the listing file if it is not
4685 stdout. Close the other files opened for the listing.
681dbbc0
ILT
4686
4687 * config/tc-sparc.h (md_cons_align): Define.
4688 (sparc_cons_align): Declare.
4689 (HANDLE_ALIGN): Define.
4690 (sparc_handle_align): Declare.
4691 * config/tc-sparc.c (sparc_cons_align): New function.
4692 (sparc_handle_align): New function.
4693 * read.c (cons_worker): Call md_cons_align if it is defined.
4694
4695 * as.h (struct frag): Add fr_file and fr_line fields.
4696 * frags.c (frag_new): Set fr_file and fr_line.
4697 (frag_var): Likewise.
4698 (frag_variant): Likewise.
4699
7e027ce6
ILT
4700 * as.h (struct frag): Remove unused align_mask and align_offset
4701 fields.
4702
f9b990cd
ILT
4703 * listing.c (calc_hex): Offset by fr_fix when examining fr_var.
4704 From <uddeborg@carmen.se>.
4705
9b4b98bd
ILT
4706Wed Jun 26 13:21:34 1996 Ian Lance Taylor <ian@cygnus.com>
4707
67b48b58
ILT
4708 * configure.in (mips-*-osf*): New target.
4709 * configure: Rebuild.
4710
9b4b98bd
ILT
4711 * config/tc-m68k.c: Add 68ec060 as a synonym for 68060.
4712
344a8d61
JSC
4713Wed Jun 26 16:23:08 1996 James G. Smith <jsmith@cygnus.co.uk>
4714
4715 * config/tc-mips.c: Added cop_interlocks, to avoid NOP insertion
4716 between co-processor comparisons and branches for the VR4300.
4717
1c94de4d
JM
4718Mon Jun 24 18:02:50 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
4719
4720 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
4721 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
4722 (docdir): Removed.
4723 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
4724 * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
4725 includedir): Use autoconf set values.
4726 (docdir): Removed.
4727
b290fd25
ILT
4728Mon Jun 24 11:58:14 1996 Ian Lance Taylor <ian@cygnus.com>
4729
1c94de4d
JM
4730 * listing.c (listing_eject): Don't do anything if listing is 0.
4731 (listing_list): Likewise.
4732 (listing_source_line): Likewise.
4733 (listing_title): Don't save title if listing is 0.
4734 (listing_source_file): Check listing rather than listing_tail.
4735
b290fd25
ILT
4736 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
4737 using shared libraries.
4738 * configure: Rebuild.
4739
4740Fri Jun 21 18:22:23 1996 Ian Lance Taylor <ian@cygnus.com>
4741
4742 * config/tc-mips.c (mips_ip): In case 'i'/'j', don't require an
4743 absolute expression if a relocation type was specified.
4744
644edced
ILT
4745Fri Jun 21 17:40:16 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
4746
4747 * configure.in: Add support for *-*-rtems* configurations.
4748 * configure: Rebuild.
4749
df586de2
ILT
4750Fri Jun 21 16:01:18 1996 Richard Henderson <rth@tamu.edu>
4751
4752 * configure.in: Add alpha-*-linuxecoff* target. Use elf for
4753 alpha-*-linux* target. Force bfd_gas for alpha-*. Require
4754 opcodes library for alpha.
4755 * configure: Rebuild with autoconf 2.10.
4756 * config/tc-alpha.c: Substantial rewrite to add ELF support and
4757 use new opcode table.
4758 * config/tc-alpha.h (md_undefined_symbol): Don't define.
4759 (LOCAL_LABEL): Define differently if OBJ_ELF.
4760 (FAKE_LABEL_NAME): Define if OBJ_ELF.
4761 * config/alpha-opcode.h: Remove.
4762 * config/obj-elf.h: If TC_ALPHA, define ECOFF_DEBUGGING.
4763 * Makefile.in (TARG_CPU_DEP_alpha): Depend upon
4764 include/opcode/alpha.h rather than config/alpha-opcode.h.
4765
7ca8e36e
ILT
4766Thu Jun 20 19:10:28 1996 Ian Lance Taylor <ian@cygnus.com>
4767
edec3111
ILT
4768 * config/obj-aout.c (obj_emit_relocations): Give an error if the
4769 relocation symbol was not resolved.
4770 * config/obj-coff.c (do_relocs_for): Likewise.
4771
7ca8e36e
ILT
4772 * write.c (adjust_reloc_syms): Refetch the symbol section after
4773 calling S_GET_VALUE, since it may have changed.
4774
4775 * expr.c (struct expr_symbol_line): Define.
4776 (expr_symbol_lines): New static variable.
4777 (make_expr_symbol): Add entry to expr_symbol_lines.
4778 (expr_symbol_where): New function.
4779 * expr.h: Use extern on function declarations.
4780 (expr_symbol_where): Declare.
4781 * symbols.c (resolve_symbol_value): Try to use expr_symbol_where
4782 rather than printing the meaningless name of an expression
4783 symbol.
4784
214f540d
KR
4785Thu Jun 20 15:57:41 1996 Ken Raeburn <raeburn@cygnus.com>
4786
4787 * config/tc-i386.c (md_number_to_chars): Deleted.
4788 * config/tc-i386.h (md_number_to_chars): New macro.
4789
4790 * config/tc-alpha.c (build_operate_n, build_mem): Moved earlier in
4791 the file.
4792 (load_symbol_address, load_expression): Use build_mem.
4793 (build_operate): New function.
4794 (emit_addq_r): Use it.
4795
4796 Wed Mar 13 22:14:14 1996 Pat Rankin <rankin@eql.caltech.edu>
4797
4798 * symbols.c (colon): #if VMS, use S_SET_OTHER to store `const_flag'.
4799
4800 Tue Mar 5 14:31:45 1996 Pat Rankin <rankin@eql.caltech.edu>
4801
4802 * config/tc-vax.h (NOP_OPCODE): Define.
4803
4804 Sun Feb 4 21:01:03 1996 Pat Rankin <rankin@eql.caltech.edu>
4805
4806 * config/obj-vms.h (S_IS_COMMON): Define.
4807 (S_IS_LOCAL): Check for \002 as well as \001.
4808 (LONGWORD_ALIGNMENT): New macro.
4809 (SUB_SEGMENT_ALIGN): Use it.
4810
4811 Fri Jan 26 17:44:09 1996 Pat Rankin <rankin@eql.caltech.edu>
4812
4813 * config/vms-conf.h: Reconcile with conf.in.
4814
7b9b1eb2
ILT
4815Wed Jun 19 11:31:50 1996 Ian Lance Taylor <ian@cygnus.com>
4816
793f9558
ILT
4817 * write.c (is_dnrange): Only define if TC_GENERIC_RELAX_TABLE is
4818 defined.
4819
84577dde
ILT
4820 * doc/as.texinfo: Document that any number of hex digits can
4821 follow \x.
4822
0d6cae1e
ILT
4823 * as.c (struct defsym_list): Define.
4824 (defsyms): New static variable.
4825 (parse_args): Just put --defsym arguments on defsyms list, rather
4826 than defining them.
4827 (main): Define defsyms after output file is created.
4828
6e3f7f1b
ILT
4829 * config/tc-m68k.c (m68k_ip): Reject PRE and POST indexing mode on
4830 cpu32. From Eric Norum <Eric.Norum@usask.ca>.
4831
8095b665
ILT
4832 * config/tc-mips.c (mips_ip): In cases 'I', 'i', and 'j', set
4833 insn_error rather than calling check_absolute_expr.
4834
4835 * as.c (emulation_name): Remove unused static variable.
4836 (default_emul_bfd_name): Add return NULL to avoid warning.
4837 * ecoff.c (ecoff_stab): Remove unused variables name and
4838 name_end.
4839 * frags.c (frag_new): Remove unused variable tmp.
4840 * hash.c (hash_grow): Parenthesize + within <<.
4841 (hash_print_statistics): Use %lu, not %d, to print unsigned
4842 long variables.
4843 * messages.c: Include "libiberty.h".
4844 (fprint_value): Add cast to avoid printf warning.
4845 (sprint_value): Likewise.
4846 * read.c: Include "ecoff.h".
4847 (emit_expr): Add casts to avoid printf warnings.
4848 * read.h: Use extern for function declarations.
4849 (pop_insert): Declare.
4850 * stabs.c: Include "ecoff.h".
4851 * subsegs.c (subseg_set_rest): Remove unused variables tmp,
4852 former_last_fragP, and new_fragP.
4853 * subsegs.h (subsegs_print_statistics): Declare.
4854 * symbols.c (debug_verify_symchain): Change macro to discard
4855 arguments.
4856 * write.c (dump_section_relocs): Likewise.
4857 * write.h: Use extern for function declarations.
4858 (write_print_statistics): Declare.
4859 * config/e-mipsecoff.c (mipsecoff_bfd_name): Return NULL to avoid
4860 warning.
4861 * config/e-mipself.c (mipself_bfd_name): Likewise.
4862 * config/obj-elf.h (elf_ecoff_set_ext): Declare.
4863
9ee759fc
ILT
4864 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): If OBJ_ELF, always
4865 emit relocations against external symbols.
4866
faa3f539
ILT
4867 * config/tc-alpha.c (tc_gen_reloc): Output a sensible error
4868 message if bfd_reloc_type_lookup fails, rather than calling
4869 assert.
4870
7b9b1eb2
ILT
4871 * config/tc-alpha.c (alpha_force_relocation): Add
4872 BFD_RELOC_12_PCREL to switch.
4873
4874Tue Jun 18 20:29:57 1996 Doug Evans <dje@canuck.cygnus.com>
4875
4876 * config/tc-i386.h (LOCAL_LABEL,FAKE_LABEL_NAME): Use defaults for
4877 TE_PE (Lfoo, not .Lfoo).
4878
d9453233
ILT
4879Tue Jun 18 17:13:33 1996 Ian Lance Taylor <ian@cygnus.com>
4880
24b018ee
ILT
4881 * read.c (s_fill): Don't warn about a zero repeat count.
4882
c674dcaa
ILT
4883 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
4884 coprocessor register.
4885
d9453233
ILT
4886 * config/tc-i386.c (md_assemble): When checking the size of a
4887 register to set the size of an instruction, do a bitwise and with
4888 Reg8 and Reg16 rather than requiring the type to be exactly Reg8
4889 or Reg16.
4890
3d0afe12
JL
4891Tue Jun 18 13:19:51 1996 Jeffrey A. Law <law@rtl.cygnus.com>
4892
4893 * config/tc-h8300.c (parse_reg): Tweak error messages.
4894 (build_bytes): Likewise.
4895 (skip_colonthing): Handle :32 suffix.
4896 (get_specific): Promote L_24 to L_32 if it makes a match.
4897 Don't always promote L_8 to L_16.
4898 (do_a_fix_imm): Clean up L_32 and L_24 handling.
4899
3d0afe12
JL
4900 * config/tc-h8300.c (Smode): New variable.
4901 (h8300hmode): Turn off Hmode.
4902 (h8300smode): New function. Turn on Smode and Hmode.
4903 (md_pseudo_table): New ".h8300s" pseudo-op.
4904 (parse_reg): Handle "exr" register.
4905 (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
4906 Handle "mach" and "machl" operands for ldmac.
4907 (get_specific): Handle "stm.l" and "ldm.l".
4908 (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
4909 * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
4910 (Smode): Declare.
4911
370181a2
C
4912Mon Jun 17 15:50:53 1996 J.T. Conklin <jtc@rtl.cygnus.com>
4913
4914 * doc/as.texinfo: Reorder chapter of machine dependent options so
4915 that it is sorted by chip name.
4916
4917 * doc/as.texinfo: Use consistant spelling of Vax.
4918 * doc/c-vax.texi: Likewise.
4919
02d4dd87
JL
4920Mon Jun 17 11:26:56 1996 Jeffrey A. Law <law@rtl.cygnus.com>
4921
4922 * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
4923 pseudo ops.
4924 (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
4925 (md_apply_fix): Likewise.
4926 (pa_try): New function.
4927 (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
4928
b81231b7
JL
4929Sun Jun 16 22:57:47 1996 Jeffrey A. Law <law@rtl.cygnus.com>
4930
4931 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
4932 (pa_level): New function.
4933
fe8d0ff3
ILT
4934Fri Jun 14 20:06:44 1996 Ian Lance Taylor <ian@cygnus.com>
4935
4936 * listing.c (listing_newline): Don't do anything if listing is 0.
4937
4938Thu Jun 13 17:50:54 1996 Ian Lance Taylor <ian@cygnus.com>
4939
4940 * subsegs.c (section_symbol): If symbol_table_frozen is set, call
4941 symbol_create, not symbol_new.
4942
9bec2a42
ILT
4943Wed Jun 12 14:10:44 1996 Ian Lance Taylor <ian@cygnus.com>
4944
4945 * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
4946 absolute symbol unless TC_FORCE_RELOCATION returns true.
4947
4948 * config/obj-coff.c (previous_file_symbol): Remove BFD_ASSEMBLER
4949 version.
4950 (c_dot_file_symbol): BFD_ASSEMBLER version: Don't set the value of
4951 the symbol to a pointer. Don't set previous_file_symbol.
4952 Simplify symbol list rearrangement.
4953 (coff_frob_symbol): Don't do anything with C_FILE symbols.
4954 (coff_adjust_symtab): Don't check previous_file_symbol.
4955
c992cf9b
MM
4956Mon Jun 10 14:52:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4957
4958 * config/tc-ppc.c (ppc_elf_lcomm): New function for .lcomm
4959 directive.
4960 (md_pseudo_table): Add ppc_elf_lcomm.
4961
1ba76615 4962Mon Jun 10 11:45:51 1996 Ian Lance Taylor <ian@cygnus.com>
92e61d31
ILT
4963
4964 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
4965 d0{24:1},d0' works without an immediate prefix on the bit numbers.
4966 (md_begin): Add digits to alt_notend_table.
4967 (md_parse_option): Make s a const pointer.
1ba76615 4968
b91e85c2
ILT
4969 * config/tc-sparc.c (md_pseudo_table): Add "empty".
4970 (s_empty): New static function.
4971
e789e620
ILT
4972 * config/obj-coff.c (struct filename_list): Only define if not
4973 BFD_ASSEMBLER.
4974 (filename_list_head, filename_list_tail): Likewise.
4975 (c_section_symbol): Remove unused BFD_ASSEMBLER version.
4976 (obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
4977 flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
4978 have a section of N_ABS rather than N_DEBUG. If we do a merge,
4979 remove the new symbol from the list.
4980 (obj_coff_endef, both versions): Call tag_insert even if there is
4981 an old symbol with the same name, if the old symbol does not
4982 happen to be a tag.
4983 (coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
4984 the SF_GET_DEBUG condition. Don't call SA_SET_SYM_ENDNDX with a
4985 symbol that will be moved to the end of the symbol list.
4986 (coff_adjust_section_syms): Always call section_symbol for .text,
4987 .data, and .bss.
4988 (coff_frob_section): Likewise. Also, remove unused variable
4989 strname.
4990
0670452e
ILT
4991 * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
4992 manipulating frags directly.
4993 (md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
4994 defined.
4995
41822c41
ILT
4996 * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
4997 whether the next character is '*' before checking whether we are
4998 at the start of a line. Permit LINE_COMMENT_START to start a
4999 comment in state 1 (seen some whitespace) as well, to match the
5000 documentation.
5001
1ba76615
ILT
5002 * gasp.c (do_align): Permit a fill value for .align.
5003
ed381b67
JW
5004Wed Jun 5 17:09:26 1996 Ian Lance Taylor <ian@cygnus.com>
5005
5006 * read.c (next_char_of_string): Warn if a newline is seen in the
5007 middle of a string. Call bump_line_counters when appropriate.
5008
5009Wed Jun 5 17:08:36 1996 Richard Henderson <rth@tamu.edu>
5010
5011 * symbols.c (colon): Use LOCAL_LABEL.
5012
2c7aeec6
TT
5013Tue Jun 4 10:55:16 1996 Tom Tromey <tromey@csk3.cygnus.com>
5014
5015 * Makefile.in (install): Don't check to see if tooldir exists.
5016 Make $(tooldir) and $(tooldir)/bin.
5017
527b8324
MM
5018Tue Jun 4 10:14:53 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5019
5020 * config/ppc-sol.mt (TDEFINES): Don't turn on -mregnames by
5021 default.
5022
3b426f5a
ILT
5023Mon Jun 3 11:34:41 1996 Ian Lance Taylor <ian@cygnus.com>
5024
5025 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
5026 insn_error. Don't put the string "ERROR" in insn_error. Set
5027 insn_error rather than calling as_warn for an unsupported opcode.
5028
9c44af60
ILT
5029Sat Jun 1 21:51:55 1996 Ian Lance Taylor <ian@cygnus.com>
5030
5031 * config/tc-mips.c (md_parse_option): Check for a 64 bit format
5032 before permitting -64.
5033 * output-file.c (output_file_create): Remove duplicate
5034 bfd_perror.
5035
98bfd087
ILT
5036Fri May 31 01:08:06 1996 Ian Lance Taylor <ian@cygnus.com>
5037
87178180
ILT
5038 * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
5039 section rather than a .reginfo section.
5040 (mips_elf_final_processing): If -64, write out 64 bit RegInfo
5041 information.
5042
98bfd087
ILT
5043 * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
5044 bit value with the high bit set.
5045
b95bee13
ILT
5046Thu May 30 19:00:19 1996 Ian Lance Taylor <ian@cygnus.com>
5047
5048 * read.c (s_lcomm): Set section flags for .sbss section.
5049
5050 * config/tc-mips.c (mips_64): New static variable.
5051 (mips_target_format): If mips_64, return elf64 targets rather than
5052 elf32 ones.
5053 (md_longopts): Add "32" and "64".
5054 (md_parse_option): Handle -32 and -64.
5055 (md_show_usage): Mention -32 and -64.
5056 (cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
5057 a 4 byte one.
5058
1facd5f0
MM
5059Thu May 30 10:36:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5060
98bfd087
ILT
5061 * config/tc-ppc.c (comment_chars): Make '!' a comment character
5062 for Solaris compatibility.
d0e1c803 5063
1facd5f0
MM
5064 * stabs.c (s_stab_generic): Under PowerPC Solaris, convert a
5065 .stabd with 4 arguments into a .stabn.
5066
a40aee38
ILT
5067Wed May 29 16:43:16 1996 Ian Lance Taylor <ian@cygnus.com>
5068
5069 * config/tc-mips.c (macro): When passing X_add_number to
5070 macro_build, cast it to int first.
5071
943bdfdc
ILT
5072Tue May 28 13:29:39 1996 Ian Lance Taylor <ian@cygnus.com>
5073
54388b85
ILT
5074 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
5075 created by emit_expr.
5076
943bdfdc
ILT
5077 * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
5078 as_perror rather than assert.
5079
9b61d62b
ILT
5080Fri May 24 18:24:11 1996 Ian Lance Taylor <ian@cygnus.com>
5081
5082 * config/tc-mips.c (mips_ip): Mark sections created to hold
5083 floating point information as read only.
5084
e30c0076
MM
5085Fri May 24 12:07:54 1996 David Edelsohn <edelsohn@mhpcc.edu>
5086
5087 * config/tc-ppc.c (ppc_set_cpu): Change defaults to match AIX.
5088
63cafcef
MM
5089Thu May 23 17:34:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5090
adeab39b
MM
5091 * read.c (potable): Add .skip as a synonym for .space.
5092
63cafcef
MM
5093 * stabs.c (s_stab_generic): For PowerPC ELF, allow .stabd to take
5094 4 arguments, providing the 4th argument is 0, to allow
5095 compatibility with the Solaris assembler.
5096
5097Thu May 16 15:51:48 1996 Ian Lance Taylor <ian@cygnus.com>
5098
5099 * config/tc-sh.h (struct sh_segment_info_type): Define.
5100 (TC_SEGMENT_INFO_TYPE): Define.
5101 (sh_frob_label): Declare.
5102 (tc_frob_label): Define.
5103 (sh_flush_pending_output): Declare.
5104 (md_flush_pending_output): Define.
5105 * config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
5106 reloc before the instruction if necessary.
5107 (sh_frob_label): New function.
5108 (sh_flush_pending_output): New function.
5109 (sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
5110 when looking for the reloc for the target of .uses.
5111 (md_convert_frag): Fix printf format (%0xlx to 0x%lx).
5112 (sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
5113 emitted.
5114 (md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
5115 (sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
5116 the absolute symbol.
5117
5118 * subsegs.h (segment_info_type): Add tc_segment_info_data field if
5119 TC_SEGMENT_INFO_TYPE is defined.
5120
3ea36b53
ILT
5121Wed May 15 12:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
5122
5123 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
5124 matches the register size.
5125
ecb9b1ca
JL
5126Wed May 15 08:33:37 1996 Jeffrey A Law (law@cygnus.com)
5127
5128 * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
5129 fx_done set.
5130 (do_relocs_for): Likewise.
5131 (fixup_segment): Don't just quit if linkrelax is set. Try to
5132 apply non pc-relative sym1-sym2 fixups, even if linkrelax is
5133 nonzero.
5134
f122568e
MM
5135Fri May 10 14:16:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5136
5137 * config/tc-ppc.c (ppc_elf_validate_fix): Allow GOT and section
5138 relative relocations with -mrelocatable. Also allow unfixed
5139 relocs in .ex_shared.
5140
6648d3ae
ILT
5141Tue May 7 11:24:10 1996 Ian Lance Taylor <ian@cygnus.com>
5142
5143 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
5144 non-zero before assuming this is a long file name.
5145 (w_strings): Likewise.
5146 (c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.
5147
5148 * config/obj-coff.c (w_strings): Move declaration of i inside
5149 #ifdef block which uses it.
5150
c47fc401
JL
5151Tue May 7 00:49:58 1996 Jeffrey A Law (law@cygnus.com)
5152
5153 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
5154 "relaxmode". Output relocs which identify various relaxing
5155 possibilities for mov.[bwl] instructions.
5156 (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
5157
9ea82743
DE
5158Mon May 6 15:26:28 1996 Doug Evans <dje@canuck.cygnus.com>
5159
5160 * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
5161 (MD_APPLY_FIX3): Define.
5162 * config/tc-arm.c (my_get_expression): Only watch for bad segments
5163 if OBJ_AOUT.
5164 (md_apply_fix3): Renamed from md_apply_fix.
5165 If pcrel reloc and symbol is in different section, undo effects
5166 of md_pcrel_from.
5167
ab7db73b
JL
5168Sat May 4 12:49:35 1996 Jeffrey A Law (law@cygnus.com)
5169
5170 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
5171 any reloc with an LR% or RR% field selector for SOM.
5172
c9324fcd
ILT
5173Sat May 4 11:26:19 1996 Ian Lance Taylor <ian@cygnus.com>
5174
5175 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
5176 variables.
5177
d4d7d98c
ILT
5178Fri May 3 17:58:31 1996 Ian Lance Taylor <ian@cygnus.com>
5179
5180 * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
5181 SF_GET_STATICS set.
5182 (yank_symbols): Likewise.
5183
8fe2ec52
ILT
5184Wed May 1 13:38:17 1996 Ian Lance Taylor <ian@cygnus.com>
5185
7681eb9d
ILT
5186 * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
5187 BFD_ASSEMBLER, add name field.
ba97ba7e
ILT
5188 * config/obj-coff.c: Include "libiberty.h".
5189 (coff_header_append): Handle long section names.
7681eb9d
ILT
5190 (crawl_symbols): Just use the name field for the symbol name,
5191 without worrying about null byte termination.
5192 (w_strings): Handle long section names.
5193 (write_object_file): Likewise. Also, use the name field, rather
5194 than scnhdr.s_name.
5195 (obj_coff_add_segment): Permit long section names.
5196 (obj_coff_init_stab_section): Use the name field, rather than
5197 scnhdr.s_name.
5198 (adjust_stab_section): Likewise.
5199 * config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
5200
8fe2ec52
ILT
5201 * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
5202 (mem_fmt): Likewise.
5203 (md_apply_fix): Don't check fx_im_disp field.
5204
556829bc
ILT
5205Thu Apr 25 11:39:51 1996 Ian Lance Taylor <ian@cygnus.com>
5206
f9e36fc6
ILT
5207 * configure.in: Add * after sparc*-*-vxworks.
5208 * configure: Rebuild.
5209
556829bc
ILT
5210 * app.c (do_scrub_begin): If tc_comment_chars is not defined,
5211 define it to comment_chars. Use tc_comment_chars rather than
5212 comment_chars.
5213 (do_scrub_chars): Use tc_comment_chars rather than comment_chars.
5214 * config/tc-m68k.h (tc_comment_chars): Define.
5215 (m68k_comment_chars): Declare.
5216 * config/tc-m68k.c (m68k_comment_chars): Rename from
5217 comment_chars. Change into a pointer rather than an array.
5218 (md_longopts): Add "bitwise-or".
5219 (md_parse_option): Handle OPTION_BITWISE_OR.
5220 (md_show_usage): Mention --bitwise-or.
5221 * doc/c-m68k.texi: Document --bitwise-or.
5222
116bf30f
ILT
5223Wed Apr 24 11:28:38 1996 Ian Lance Taylor <ian@cygnus.com>
5224
912e4245
ILT
5225 * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
5226 in 68000 mode.
5227
116bf30f
ILT
5228 * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
5229 call demand_empty_rest_of_line. Non BFD_ASSEMBLER version:
5230 correct handling of input line pointer, and call
5231 demand_empty_rest_of_line.
5232
58c9a12b
DE
5233Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com>
5234
5235 * config/tc-sparc.c (in_bitfield_range): New static function.
5236 (sparc_ip): New cases X,Y. Use SPARC_OPCODE_ARCH_V9_P.
5237 (md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
5238 BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
5239 (md_apply_fix): New cases BFD_RELOC_SPARC_[56].
5240 (tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
5241
ff406bd3
ILT
5242Thu Apr 18 18:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
5243
5244 * config/obj-coff.c: BFD_ASSEMBLER:
5245 (coff_last_bf): New static variable.
5246 (coff_frob_symbol): Set endndx of a .bf symbol.
5247 Non BFD_ASSEMBLER:
5248 (obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
5249 (last_bfP): New static variable.
5250 (yank_symbols): Set endndx of a .bf symbol.
5251
47d12b2c
MM
5252Thu Apr 18 11:53:58 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5253
5254 * config/tc-ppc.c (md_parse_option): Add support for Solaris's -le
5255 and -s options. Add -be for good measure.
5256
3ce7f41a
ILT
5257Wed Apr 17 12:31:01 1996 Ian Lance Taylor <ian@cygnus.com>
5258
5259 * read.c (s_space): Support non-constant fill value. Handle fill
5260 value correctly for a size other than 1.
5261
865447db
DE
5262Tue Apr 16 15:17:40 1996 Doug Evans <dje@canuck.cygnus.com>
5263
5264 * config/tc-arm.c (my_get_float_expression): Update call to
5265 gen_to_words, X_PRECISION changed from 6 to 5.
5266
159e6ef8
MM
5267Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5268
5269 * config/tc-ppc.c (register_name,reg_name_search): Move register
5270 name lookup from PE specific code to all targets. Add support for
5271 -mregnames/-mno-regnames to control whether register names are
5272 expanded or not.
5273 (md_assemble): Call register_name for all platforms.
5274 (md_parse_option): Add support for -mregnames/-mno-regnames.
5275
5276 * configure.in (powerpcle*-*-solaris): Add support.
5277 (powerpc*-*-linux): Ditto.
5278 * configure: Regenerate.
5279
5280 * config/ppc-sol.mt: New config file for PowerPC Solaris.
5281
7a15a226
ILT
5282Mon Apr 15 12:26:33 1996 Ian Lance Taylor <ian@cygnus.com>
5283
aa9e2dbe
ILT
5284 * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
5285 be associated with a single %lo reloc.
5286
7a15a226
ILT
5287 * config/tc-mips.c (load_address): Cast X_add_number to valueT
5288 before comparing against MAX_GPREL_OFFSET, so that negative
5289 numbers are handled correctly.
5290 (macro): Likewise.
5291
65feb78d
ILT
5292Thu Apr 11 12:39:02 1996 Ian Lance Taylor <ian@cygnus.com>
5293
ed94c2b8
ILT
5294 * config/tc-sparc.c (last_insn): New static variable.
5295 (md_assemble): Warn about putting floating point branches in a
5296 delay slot. If architecture is less than v9, insert NOP
5297 instructions between floating point instructions and floating
5298 point branches. (The SunOS assembler does both these operations.)
5299 Save the last instruction opcode.
5300 (sparc_ip): Add pinsn parameter. Change caller.
5301
65feb78d
ILT
5302 * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
5303 for byte jump to next instruction to skip empty frags.
5304
456c301f
ILT
5305Wed Apr 10 16:48:12 1996 Ian Lance Taylor <ian@cygnus.com>
5306
5307 * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
5308 for addq with a 16 bit signed value, just emit a lda instruction
5309 instead.
5310
b3ed89e8
JL
5311Wed Apr 10 14:34:49 1996 Jeffrey A Law (law@cygnus.com)
5312
5313 * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
5314 of a 32bit operand.
5315
b4cb4ea2
ILT
5316Mon Apr 8 14:42:53 1996 Ian Lance Taylor <ian@cygnus.com>
5317
5318 * configure.in: Permit --enable-shared to specify a list of
5319 directories.
5320 * configure: Rebuild.
5321
dcb195f8
JL
5322Fri Apr 5 17:01:35 1996 Jeffrey A Law (law@cygnus.com)
5323
5324 * config/tc-h8300.c (get_specific): Remove some #if 0 code.
5325 (build_bytes): Remove all ABSMOV related code; it's unnecessary.
5326
13e4a17e
ILT
5327Fri Apr 5 15:13:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5328
5329 * config/atof-ieee.c: Fix handling of denormalized extended
5330 precision numbers and overflow/underflow detection.
5331 (MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
5332 not include the 16 bit gap in the m68k extended precision format.
5333
2ae5f50b
ILT
5334Fri Apr 5 14:29:23 1996 Ian Lance Taylor <ian@cygnus.com>
5335
5336 * configure.in: Add i386-*-freebsdelf* target; from John Polstra
5337 <jdp@polstra.com>.
5338 * configure: Rebuild.
5339
54ea771f
JSC
5340Fri Apr 5 18:39:28 1996 James G. Smith <jsmith@cygnus.co.uk>
5341
5342 * config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
5343 be accessed using the $gp register.
5344 * config/tc-mips.h (MAX_GPREL_OFFSET): Added.
5345
65b12103
DE
5346Wed Apr 3 10:56:14 1996 Doug Evans <dje@canuck.cygnus.com>
5347
5348 * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
5349 bfd_mach_sparc_sparclet if current_architecture is sparclet.
5350
2271578d
ILT
5351Mon Apr 1 16:55:44 1996 Ian Lance Taylor <ian@cygnus.com>
5352
5353 * read.c (get_line_sb): Bump line counters based on
5354 input_line_pointer[-1], not *input_line_pointer. Don't bother to
5355 call LISTING_NEWLINE.
5356 (s_macro): Don't call demand_empty_rest_of_line.
5357 * app.c (do_scrub_chars): When handling C style comments, unget
5358 ch2 rather than ch.
5359
7d3741ed
ILT
5360Fri Mar 29 16:15:06 1996 Ian Lance Taylor <ian@cygnus.com>
5361
5362 * read.h (enum linkonce_type): Define.
5363 (s_linkonce): Declare.
5364 * read.c (potable): Add "linkonce".
5365 (s_linkonce): New function.
5366 * subsegs.h (segment_info_type): Add linkonce field to
5367 MANY_SEGMENTS && ! BFD_ASSEMBLER section.
5368 * config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
5369 (obj_coff_pe_handle_link_once): Declare if TE_PE.
5370 * config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
5371 "coff/pe.h".
5372 (obj_coff_pe_handle_link_once): New function, defined if TE_PE.
5373 (c_section_symbol): If TE_PE, set the x_comdat field in the aux
5374 entry based on the linkonce field in segment_info.
5375 * doc/as.texinfo: Document .linkonce.
5376
0c203340
C
5377Fri Mar 29 11:31:27 1996 J.T. Conklin (jtc@lisa.cygnus.com)
5378
5379 * doc/as.1: Changed to be recognized by catman -w on Solaris.
5380
867a58b3
ILT
5381Thu Mar 28 15:27:47 1996 Ian Lance Taylor <ian@cygnus.com>
5382
3197da91
ILT
5383 * stabs.c (s_stab_generic): Call the listing functions before
5384 doing the rest of the processing, which may involve freeing the
5385 string. Pass string, not string + stroff, to OBJ_PROCESS_STAB in
5386 SEPARATE_STAB_SECTIONS case.
5387
3c071b9f
ILT
5388 * config/tc-hppa.c: Remove nested comment.
5389 (tc_gen_reloc): Move label done inside the ifdef in which it is
5390 used.
5391 (md_apply_fix): Pass pointers to correct types to libhppa.h
5392 functions. Always return a value.
5393
867a58b3
ILT
5394 * config/tc-mips.h (tc_frob_file): Define.
5395 (mips_frob_file): Declare.
5396 * config/tc-mips.c (struct mips_hi_fixup): Define.
5397 (mips_hi_fixup_list): New static variable.
5398 (imm_unmatched_hi): New static variable.
5399 (md_assemble): Clear imm_reloc, imm_unmatched_hi, and
5400 offset_reloc. Pass imm_unmatched_hi to append_insn.
5401 (append_insn): Add unmatched_hi parameter. If it is set, add the
5402 new fixup to mips_hi_fixup_list. Change all callers.
5403 (mips_ip): Set imm_unmatched_hi when appropriate.
5404 (mips_frob_file): New function.
5405
d0352cbb
DE
5406Thu Mar 28 11:47:59 1996 Doug Evans <dje@canuck.cygnus.com>
5407
5408 * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
5409 * configure: Regenerated.
5410
4f74c042
ILT
5411Tue Mar 26 18:19:12 1996 Ian Lance Taylor <ian@cygnus.com>
5412
5413 * as.c (main): Call bfd_set_error_program_name.
5414
5ba7c0be
ILT
5415Fri Mar 22 11:13:00 1996 Ian Lance Taylor <ian@cygnus.com>
5416
c7a89bde
ILT
5417 * as.h (strdup): Don't declare.
5418 * stabs.c: Include libiberty.h
5419 (get_stab_string_offset): Use xstrdup rather than strdup.
5420 (s_stab_generic): Likewise.
5421 * as.c (parse_args): Likewise.
5422 * read.c (s_mri_sect): Likewise.
5423
5ba7c0be
ILT
5424 * gasp.c (change_base): Recognize \(...) construct documented to
5425 pass through enclosed characters literally through to the output.
5426 (process_assigns): Likewise. Also, be more careful to avoid
5427 looking past the end of the buffer.
5428
5429Thu Mar 21 13:18:43 1996 Ian Lance Taylor <ian@cygnus.com>
5430
5431 * config/tc-i386.c (md_parse_option): If OBJ_ELF, ignore -k for
5432 FreeBSD compatibility. From John Polstra <jdp@polstra.com>.
5433
d1f38e13
ILT
5434Wed Mar 20 18:13:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5435
5436 * doc/as.texinfo, doc/c-i960.texi: Fix typos.
5437
649d87fe
ILT
5438Wed Mar 20 17:05:16 1996 David Mosberger-Tang <davidm@azstarnet.com>
5439
5440 * config/alpha-opcode.h: Added cvtst instruction.
5441
975def01
ILT
5442Mon Mar 18 13:12:46 1996 Ian Lance Taylor <ian@cygnus.com>
5443
5444 * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
5445 string. Extract the addend from the result of expression.
5446
fde6018a
ILT
5447Fri Mar 15 17:10:43 1996 Ian Lance Taylor <ian@cygnus.com>
5448
5449 * app.c (do_scrub_chars): If whitespace is seen in state 11, and
5450 LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
5451 mode, change the state to 3 rather than 1.
5452
ee0f488d
ILT
5453Thu Mar 14 18:18:25 1996 Ian Lance Taylor <ian@cygnus.com>
5454
5455 * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
5456 correspond to 11 March change.
5457
9da28504
JL
5458Thu Mar 14 15:27:10 1996 Jeffrey A Law (law@cygnus.com)
5459
5460 * config/tc-h8300.c (build_bytes, MEMIND case): Generate
5461 an R_MEM_INDIRECT reloc rather than R_RELBYTE.
5462
ea2488ad
ILT
5463Tue Mar 12 12:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
5464
5465 * configure: Rebuild with autoconf 2.8.
5466
8fee8bf3
ILT
5467Mon Mar 11 18:57:12 1996 Ian Lance Taylor <ian@cygnus.com>
5468
5469 * config/atof-ieee.c (gen_to_words): Improve handling of
5470 X_PRECISION numbers. Based on patches from Andreas Schwab
5471 <schwab@issan.informatik.uni-dortmund.de>.
5472
a31c2bc7
SC
5473Mon Mar 11 09:59:53 1996 Steve Chamberlain <sac@slash.cygnus.com>
5474
5475 * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
5476 (SEG_LAST): New.
5477 * subsegs.c (MANY_SEGMENTS): Increase segment limit.
5478 * obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
5479 (do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
5480 crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
5481 SEG_E9.
5482
5483Thu Mar 7 15:17:39 1996 Doug Evans <dje@charmed.cygnus.com>
5484
5485 * config/tc-sparc.c (sparc_ip): Handle operand char 'O' (neg reg).
5486
73578b1e
JL
5487Thu Mar 7 09:19:15 1996 Jeffrey A Law (law@cygnus.com)
5488
5489 * config/tc-hppa.c (SUBSEG_MILLI): Define.
5490 (pa_def_subspaces): Add $MILLICODE$.
5491 (pa_spaces_begin): Set section flags for $MILLICODE$.
5492
0c27542f
ILT
5493Wed Mar 6 14:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
5494
6b8ed20d
ILT
5495 * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
5496 not SHT_NOBITS. Don't tamper with flags based on type if a
5497 special section was found (revert Feb 29 change).
5498
0c27542f
ILT
5499 * config/tc-sh.c (sh_do_align): Only align using the nop pattern
5500 if aligning to a longword boundary or greater.
5501
6a413d6f
JW
5502Tue Mar 5 15:10:43 1996 Jim Wilson <wilson@chestnut.cygnus.com>
5503
5504 * config/tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align.
5505
4b295517
SC
5506Mon Mar 4 20:50:57 1996 Steve Chamberlain <sac@slash.cygnus.com>
5507
5508 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
5509 * configure: Regenerated.
5510
eff5fcda
JL
5511Mon Mar 4 10:13:06 1996 Jeffrey A Law (law@cygnus.com)
5512
421e2c27
JL
5513 * config/tc-hppa.c: Add default definitions for R_N0SEL and
5514 R_N1SEL since they're not defined for old versions of hpux.
5515
eff5fcda
JL
5516 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
5517 Set "sym_ptr_ptr" and "addend" fields to dummy values for
5518 R_N0SEL and R_N1SEL.
5519
bb1013d9
ILT
5520Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5521
d197a7ab
ILT
5522 * flonum-konst.c: Add two more constants for 1e+-2048 and
5523 1e+-4096, and correct the other constants.
5524
bb1013d9
ILT
5525 * symbols.c (resolve_symbol_value): Handle O_logical_not.
5526
30510276
MM
5527Thu Feb 29 13:58:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5528
5529 * config/obj-elf.c (obj_elf_section): Allow predefined section
0d8405e8 5530 types to set the nobits type. Avoid a shadowed declaration.
30510276 5531
75c90d61
JL
5532Wed Feb 28 15:38:56 1996 Jeffrey A Law (law@cygnus.com)
5533
24b216e1
JL
5534 * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
5535 reduce relocs using e_nlrsel field selectors.
5536
75c90d61
JL
5537 * write.c (fix_new_exp): Don't use #elif. Some compilers
5538 don't handle it.
83b59013
JL
5539
5540 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
5541 the selector table.
5542 (pa_chk_field_selector): Handle new field selectors for SOM.
5543
535cfd0f
ILT
5544Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5545
5546 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
5547 * configure: Rebuild.
5548 * config/te-linux.h (LOCAL_LABELS_FB): Define.
5549 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
5550 "a.out-m68k-linux".
5551 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
5552 is defined.
5553
d214421e
SS
5554Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
5555
5556 * mpw-make.sed: Update to handle shared library support.
5557
110b814d
DE
5558Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
5559
5560 * config/tc-sparc.c (sparc_ip): Print all architectures that support
5561 the insn on mismatch.
5562
805e36ab
RS
5563Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
5564
5565 * configure.in: Add support for a29-coff.
5566 * configure: Rebuild.
5567
e41ab2a6
ILT
5568Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
5569
101a2346
ILT
5570 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
5571 of the section when looking for the R_SH_USES fixup, because the
5572 frag addresses have not yet been adjusted.
5573
940c413f
ILT
5574 * gdbinit.in: Set a breakpoint on as_warn_where.
5575
e41ab2a6
ILT
5576 * config/tc-mips.c (macro): Add missing arguments to macro_build
5577 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
5578
c6016ce2
ILT
5579Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
5580
5581 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
5582 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
5583
b32fbe07
DE
5584Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
5585
5586 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
5587
2e5e6879
DE
5588Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
5589
5590 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
5591 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
5592 Recognize [uU] format args as sparclet cpregs.
5593
8a2e1fdd
ILT
5594Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
5595
5596 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
5597 in bss_section.
5598
21965655
ILT
5599Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
5600
5601 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
5602 well as S_IS_EXTERNAL.
5603 (tc_fix_adjustable): Likewise.
5604 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
5605 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
5606 early.
5607 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
5608 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
5609
d8b42b96
DE
5610Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
5611
5612 * config/tc-sparc.c (max_architecture): Change to sparclite for
5613 32 bit arch.
5614 (default_compatible): Delete.
5615 (sparc_ffs): New function.
5616 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
5617 (sparc_ip): Rewrite architecture match and bump logic.
5618
7925f4d4
ILT
5619Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
5620
5621 * configure.in: Check for 'do not mix' from native linker before
5622 trying to use -rpath.
5623 * configure: Rebuild.
5624
ef2074c2
ILT
5625Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
5626
5627 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
5628 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
5629 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
5630 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
5631 is set.
5632 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
5633 to the symbol lnnoptr field, to get the correct file offset.
5634
28910c57
MM
5635Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5636
5637 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
5638 symbols that are not function, file, or section symbols to be
5639 object types.
5640
7c2fadd1
ILT
5641Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
5642
1a2f3c3f
ILT
5643 * configure: Set and substitute RPATH_ENVVAR.
5644 * configure: Rebuild.
5645 * Makefile.in (RPATH_ENVVAR): New variable.
5646 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
5647
7c2fadd1
ILT
5648 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
5649 doesn't need opcodes. If configuring shared, opcodes needs bfd.
5650 * configure: Rebuild.
5651
8a6f53e9
ILT
5652Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
5653
5654 * read.c (s_mri_sect): Don't return '\0' in type. Set all
5655 appropriate flags in BFD section.
5656
5657 * configure.in (m68k-*-psos*): New target.
5658 * configure: Rebuild.
5659 * config/te-psos.h: New file.
5660 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
5661 is defined.
5662
fb251650
ILT
5663Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
5664
ae09d880
ILT
5665 From Alan Modra <alan@spri.levels.unisa.edu.au>:
5666 * configure.in: Remove duplicate setting of cpu_type. Check
5667 whether opcodes library is required for on all targets, not just
5668 primary one.
5669 * configure: Rebuild.
5670
fb251650
ILT
5671 * config/tc-mips.c (mips_big_got): New static variable.
5672 (s_extern): Don't declare.
5673 (reg_needs_delay): New static function.
5674 (macro_build): Permit GOT/CALL_HI/LO relocs.
5675 (macro_build_lui): If place is not NULL, use the number in the
5676 expression.
5677 (load_address): Handle mips_big_got case.
5678 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
5679 store macros.
5680 (OPTION_XGOT): Define.
5681 (md_longopts): Add "xgot" if OBJ_ELF.
5682 (md_parse_option): Handle -xgot.
5683 (md_show_usage): Mention -xgot.
5684 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
5685 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
5686
d9396c16
ILT
5687Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5688
5689 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
5690 the byte relocation, point it to the low byte of the word.
5691
56f9773f
ILT
5692Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
5693
5694 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
5695 * configure: Rebuild.
5696
63e4edb5
DE
5697Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
5698
5699 * configure.in: Recognize any sparc* cpu.
5700 * configure: Regenerated.
5701
15ed5f2c
ILT
5702Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
5703
20710f1c
ILT
5704 * read.c (potable): Add "mri" and ".mri".
5705 (s_mri): New function.
5706 * read.h (s_mri): Declare.
5707 * app.c (scrub_m68k_mri): New static variable.
5708 (mri_pseudo): New static variable.
5709 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
5710 flag_m68k_mri. Initialize scrub_m68k_mri.
5711 (mri_state, mri_last_ch): New static variables.
5712 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
5713 fields.
5714 (app_push): Save new fields.
5715 (app_pop): Restore new fields.
5716 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
5717 If TC_M68K, use a trivial state machine to look for occurrences of
5718 the .mri pseudo-op, and change the mode appropriately.
5719 * as.h (do_scrub_begin): Update prototype.
5720 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
5721 do_scrub_begin.
5722 * config/tc-m68k.c (reg_prefix_optional_seen): New static
5723 variable.
5724 (m68k_mri_mode_change): New function.
5725 (md_parse_option): Set reg_prefix_optional_seen.
5726 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
5727 (MRI_MODE_CHANGE): Define.
5728 * doc/as.texinfo: Document .mri pseudo-op.
5729
15ed5f2c
ILT
5730 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
5731 comment character.
5732
a043f579
ILT
5733Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5734
5735 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
5736 * config/m68k-parse.h (enum pic_relocation): Define.
5737 (struct m68k_exp): Add pic_reloc field.
5738 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
5739 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
5740 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
5741 otherwise.
5742 * config/tc-m68k.c: Delete definition of NO_RELOC.
5743 (struct m68k_it): Add pic_reloc field.
5744 (add_fix): Copy over pic_reloc field.
5745 (md_pseudo_table): Interpret .align parameter as byte count.
5746 (mote_pseudo_table): Likewise.
5747 (tc_m68k_fix_adjustable): New function.
5748 (get_reloc_code): New function.
5749 (md_assemble): Use it as last argument to fix_new_exp.
5750 (md_apply_fix_2): For a relocation against a symbol don't put the
5751 addend into the data.
5752 (tc_gen_reloc): Different addend computation for OBJ_ELF.
5753 (m68k_ip): Don't relax an operand that requires pic relocation.
5754 (md_begin): Align .text, .data and .bss on 4 byte boundary by
5755 default.
5756 * write.c (fixup_segment): Don't add symbol value to addend if
5757 TC_M68K and OBJ_ELF.
5758 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
5759 (motorola_operand): Add rule for `(zapc, EXPR)'.
5760
6ca1156d
ILT
5761Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
5762
5763 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
5764 *really* is permissible before the comma.
5765
fcee3e24
ILT
5766Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
5767
5768 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
5769 inserting nop instructions.
5770
3e1c964d
ILT
5771Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
5772
5773 * config/te-aux.h: Change include of aux.h to aux-coff.h.
5774
4080c270
ILT
5775Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
5776
d782e3cc
ILT
5777 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
5778 class setting for a CALLNAME symbol in COFF.
5779
4080c270
ILT
5780 * read.c (potable): Pass negative numbers for new .balign[wl] and
5781 .p2align[wl] pseudo-ops.
5782 (s_align_bytes): Treat a negative argument as specifying the fill
5783 length.
5784 (s_align_ptwo): Likewise.
5785
1c9dbb83
ILT
5786Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
5787
71dd3c40
ILT
5788 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
5789 (do_align): Take new len parameter. Change all callers. Pass it
5790 to md_do_align.
5791 (s_align_bytes): Arg now indicates the length of the fill pattern.
5792 (s_align_ptwo): Likewise.
5793 * config/obj-coff.c (write_object_file): Pass length to
5794 md_do_align.
5795 * config/tc-i386.h (md_do_align): Take new len parameter.
5796 * config/tc-m88k.h (md_do_align): Likewise.
5797 * config/tc-m88k.c (m88k_do_align): Likewise.
5798 * config/tc-sh.h (md_do_align): Likewise.
5799 * config/tc-sh.c (sh_do_align): Likewise.
5800 * doc/as.texinfo: Document new pseudo-ops.
5801
5802 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
5803 done in cvt_frag_to_fill.
5804
9addcbb1
ILT
5805 * config/tc-sh.h (sh_do_align): Declare.
5806 (md_do_align): Define.
5807 * config/tc-sh.c (sh_do_align): New function.
5808
c15ea23a
ILT
5809 * ecoff.c (ecoff_build_lineno): Don't try to store the address
5810 difference if the next address is before the current one.
5811
9e64486e
ILT
5812 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
5813 (archs): Initialize new field.
5814 (m68k_ip): Don't list alias names when listing CPUs which support
5815 an instruction.
5816
5817 * as.c (main): Call parse_args before read_begin.
5818 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
5819 front of generated pseudo-ops.
5820 * read.c (potable): Ignore "name".
5821 (s_app_file): Permit a single quote after the string, since one
5822 may appear in m68k MRI mode.
5823
1c9dbb83
ILT
5824 * configure.in: Check for --enable-shared. If linking against
5825 shared BFD and opcodes, fix library name on SunOS, and try to set
5826 -rpath reasonably.
5827 * configure: Rebuild.
5828
5829Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
5830
5831 * as.h (flag_m68k_mri): Declare.
5832 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
5833 * Many files: For MRI syntax that is specific to the m68k MRI
5834 assembler, check flag_m68k_mri rather than flag_mri or
5835 MRI_MODE_NEEDS_PSEUDO_DOT.
5836
dd1d79e8
ILT
5837Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
5838
f9e90c2e
ILT
5839 * config/tc-i960.c (ARCH_HX): Define.
5840 (arch_tab): Add HX.
5841 (targ_has_sfr): Handle ARCH_HX.
5842 (targ_has_iclass): Handle ARCH_HX.
5843 (tc_coff_fix2rtype): Add return 0 to avoid warning.
5844 (tc_headers_hook): If the architecture was specified explicitly,
5845 use it when setting the flags. Set the extern variable coff_flags
5846 rather than headers->filehdr.f_flags, since the latter is set
5847 unconditionally in obj-coff.c.
5848 (i960_handle_align): Remove unused variable fixp.
5849
dd1d79e8
ILT
5850 Support for building bfd and opcodes as shared libraries, based on
5851 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
5852 * configure.in: Set OPCODES and BFD to search directories.
5853 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
5854 * configure: Rebuild.
5855 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
5856 (LIBDEPS): New variable.
5857 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
5858 $(HLDFLAGS) in link.
5859 (check): Set LD_LIBRARY_PATH in the environment.
5860
5861Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
5862
5863 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
5864 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
5865 read-only, not read/write.
5866
e277d131
ILT
5867Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
5868
5869 * Makefile.in (INSTALL_XFORM): Remove -e.
5870
e24cf2b5
ILT
5871Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
5872
5873 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
5874 than comparing S_GET_SEGMENT to undefined_section.
5875 (write_object_file): Skip symbols which were equated to an
5876 undefined or common symbol.
5877 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
5878 S_IS_COMMON rather than comparing S_GET_SEGMENT to
5879 undefined_section.
5880 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
5881 or S_IS_COMMON call S_GET_VALUE.
5882 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
5883 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
5884 to an undefined or common symbol, convert the reloc to be against
5885 the target symbol.
5886 (obj_crawl_symbol_chain): Skip symbols which were equated to an
5887 undefined or common symbol.
5888 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
5889 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
5890 to an undefined or common symbol, convert the reloc to be against
5891 the target symbol.
5892 (obj_crawl_symbol_chain): Skip symbols which were equated to an
5893 undefined or common symbol.
5894 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
5895 S_IS_COMMON rather than comparing S_GET_SEGMENT to
5896 undefined_section.
5897 (yank_symbols): Skip symbols which were equated to an undefined or
5898 common symbol.
5899
4d9e33e4
ILT
5900Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
5901
9e396994
ILT
5902 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
5903 * config/obj-bout.h (S_IS_LOCAL): Likewise.
5904
4d9e33e4
ILT
5905 * configure.in: Make sure we only add m68k-parse.o to
5906 ${extra_objects} once, no matter how many m68k targets have been
5907 enabled.
5908 * configure: Rebuild.
5909
0ff513d9
SC
5910Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
5911
5912 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
5913 * configure: Rebuild.
5914
66b935da
ILT
5915Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
5916
c174fb5c
ILT
5917 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
5918 * doc/c-m68k.texi: Document .extend and .ldouble.
5919
66b935da
ILT
5920 * configure.in (m68*-apple-aux*): New target.
5921 * config/te-aux.h: New file.
5922 * config/obj-coff.c (compare_external_relocs): New static function
5923 if TE_AUX.
5924 (do_relocs_for): Sort relocs if TE_AUX.
5925 (fixup_segment): If TE_AUX, store common symbol value in segment.
5926 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
5927
30c2a08e
ILT
5928Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
5929
9e396994 5930 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
615c0a79 5931
30c2a08e
ILT
5932 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
5933 BSF_FUNCTION.
5934 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
5935 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
5936 symbol.
5937 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
5938 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
5939 an undefined symbol and the size of a function symbol.
5940 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
5941 for all common symbols.
5942
0e6f2f82
KR
5943Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
5944
5945 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
5946 scaling of index.
5947
5948 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
5949 m68k.
5950
8e3ff081
ILT
5951Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
5952
3e78d072
ILT
5953 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
5954 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
5955
8e3ff081
ILT
5956 * ecoff.c (localsym_t): Add addend field.
5957 (add_ecoff_symbol): Add addend argument. Change all callers.
5958 (coff_sym_value): Make static.
5959 (coff_sym_addend): New static variable.
5960 (ecoff_directive_def): Initialize coff_sym_addend.
5961 (ecoff_directive_val): Accept symbol + constant.
5962 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
5963 (ecoff_build_symbols): Include the addend in the symbol value.
5964
79edc846
KK
5965Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
5966
5967 * config/tc-ppc.c (md_assemble): Ignore overflow on
5968 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
5969
5970Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5971
5972 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
5973 bytes in size, so offset appropriately in big endian mode when
5974 writing the bottom 2 bytes.
5975
6cbc4e35
DE
5976Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
5977
5978 * config/tc-sparc.c (default_compatible): New static local.
5979 (md_begin): Initialize it. Rewrite warn_on_bump handling.
5980 (sparc_ip): If no architecture or -bump specified, don't mark as
5981 mismatched those in default_compatible.
5982
4fe0fddd
ILT
5983Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
5984
5985 SCO ELF support from Robert Lipe <robertl@arnet.com>:
5986 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
5987 * configure: Rebuild.
5988 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
5989 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
5990 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
5991 (sco_id): Declare if SCO_ELF.
5992
e70ad5d5
DE
5993Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
5994
5995 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
5996 ({max,warn_after}_architecture): New static locals.
5997 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
5998 If both architecture and -bump requested, set max_architecture to max.
5999 (sparc_md_end): Simplify.
6000 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
6001 Rewrite code to bump architecture and check for conflicts.
6002 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
6003 with Solaris assembler.
6004 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
6005 (md_show_usage): Update.
6006
a8248831
DE
6007Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
6008
6009 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
6010
6df07e7f
DE
6011Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
6012
6013 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
6014 #ifdef sparcv9 when choosing value.
6015 (ENV64): Delete.
6016 (md_end): Define.
6017 (sparc_md_end): Declare.
6018 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
6019 (initial_architecture): New static local.
6020 (can_bump_v9_p): Likewise.
6021 (NO_V9): Delete all occurrences.
6022 (sparc_md_end): New function.
6023 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
6024 Don't bump architecture to v9 unless can_bump_v9_p set.
6025 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
6026 * configure.in (sparc64 target cpu): Don't set obj_format here.
6027 (SPARC_V9): Renamed from sparcv9.
6028 (sparc64-*-elf*): Define SPARC_ARCH64.
6029 * configure: Regenerated.
6030 * acconfig.h (SPARC_V9): Renamed from sparcv9.
6031 (SPARC_ARCH64): Add.
7fcb3191 6032 * conf.in: Regenerated.
6df07e7f
DE
6033 * config/vmsconf.h: Update.
6034
c9c7c1d7
JSC
6035Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
6036
6037 * config/tc-mips.c (load_register): Optimise "dli" loads.
6038 (md_show_usage): add "-mcpu=vr4100" to help text.
16ce20d4 6039
07ce72c9
ILT
6040Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
6041
16ce20d4
ILT
6042 * symbols.c (resolve_symbol_value): If a symbol is equated to an
6043 undefined symbol, preserve the X_op of O_symbol.
6044 (S_GET_VALUE): Fix check to permit this case.
6045 * write.c (write_relocs): If a reloc is against an undefined
6046 symbol equated to another symbol, change the reloc to be against
6047 the latter symbol.
6048 * config/obj-coff.c (do_relocs_for): Likewise.
6049
07ce72c9
ILT
6050 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
6051 XMC_PR.
6052
d971d39e
MM
6053Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6054
6055 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
6056 computer is PowerPC.
6057
6058 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
6059
6060 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
6061 mentioned in the eabi.
6062
0291f0f5
KK
6063Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
6064
6065 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
6066 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
6067
c682be53
MM
6068Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6069
6070 * config/tc-ppc.c (mapping): Add more relocation suffixes.
6071
ee4fdbb9
MM
6072Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6073
6074 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
6075 as a section it is ok to have unadorned -mrelocatable pointers in.
6076
6077Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
747b98fe
MM
6078
6079 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
6080 #ifdef OBJ_ELF.
6081
f99d287b
MM
6082Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6083
6084 * config/obj-elf.c (obj_elf_section): Add hooks so machine
6085 dependent section attributes can be handled.
6086
6087 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
6088 macros to add support for exclude section flag and ordered section
6089 type.
6090
6091 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
6092 functions to add support for exclude section flag and ordered
6093 section type.
6094
347a705b
ILT
6095Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
6096
2a4e49a9
ILT
6097 * subsegs.c (section_symbol): Don't try to look up the section
6098 symbol in the hash table. It should be possible to have a symbol
6099 with the same name as a section, but no connection to it.
6100
d9f4dec1
ILT
6101 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
6102 From James Carlson <carlson@xylogics.com>.
6103
347a705b
ILT
6104 * expr.c (operand): Skip whitespace after a close parenthesis.
6105 From James Carlson <carlson@xylogics.com>.
6106
10c8c95e
JW
6107Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
6108
6109 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
6110 as_warn_where for relocation overflow.
347a705b
ILT
6111 (parse_reg): Accept register name only if next character is
6112 not alphanumeric.
10c8c95e 6113
cb844314
JL
6114Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
6115
6116 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
6117 addresses for static variables.
6118
36cb0e7c
MM
6119Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6120
6121 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
6122 and xgot give the old toc16 relocation.
6123 (md_apply_fix3): Support all GOT relocations.
6124
5e69b693
ILT
6125Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
6126
6127 * config/tc-mips.c (load_address): Correctly handle a constant in
6128 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
6129
29861dd0
C
6130Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
6131
6132 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
6133 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
6134 (build_Mbytes): Handle REG_B.
6135
432b8fa8
ILT
6136Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
6137
6138 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
6139
ee68a042
RJ
6140Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
6141
6142 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
6143
b14630f2
ILT
6144Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
6145
6146 * config/obj-coff.c (write_object_file): Set the s_align field to
6147 the number of bytes, rather than to the power of 2.
6148
4a3d48fc
ILT
6149Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
6150
6151 * Makefile.in (DISTCLEAN_HERE): New variable.
6152 (distclean): Use it.
6153 (maintainer-clean): Depend upon clean-here rather than clean,
6154 distclean, and clean-info. Run make maintainer-clean in doc.
6155 Remove files listed in DISTCLEAN_HERE.
6156 * doc/Makefile.in (maintainer-clean realclean): Split out from
6157 distclean. Depend upon clean-info and distclean.
6158
7e5e83cf
SS
6159Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
6160
6161 * mac-as.r: Fix copyright and version strings.
6162 (cfrg): Use PROG_NAME instead of literal name.
6163
1b10f50d
ILT
6164Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
6165
6166 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
6167 call it.
6168 * config/tc-a29k.h (tc_unrecognized_line): Define.
6169 * config/tc-a29k.c (a29k_unrecognized_line): New function.
6170 (md_operand): Handle a29k style local dollar labels.
6171
2f3bbb1b
ILT
6172Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
6173
6174 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
6175
624c91d1
KR
6176Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
6177
6178 * read.c (s_fill): If md_flush_pending_output is defined, call
6179 it.
6180
9e4b3a23
KR
6181Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
6182
6183 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
6184 Treat rs_align_code like rs_align.
6185
3554987a
DE
6186Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
6187
6188 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
6189 converting an absolute address into a PC-relative one.
6190
90f543f6
SS
6191Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
6192
6193 * mpw-config.in: Don't always use te-generic.h for emulation.
6194 (powerpc-apple-macos): Use emulation te-macos.h.
90f543f6
SS
6195 * mpw-make.sed (install, install-only): Edit in Mac-specific
6196 install procedure.
6197
d4c8a45e
ILT
6198Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
6199
2eec8710
ILT
6200 * configure.in: Improve message about unsupported ELF targets.
6201 * configure: Rebuild.
6202
d4c8a45e
ILT
6203 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
6204 pattern is zero. From Manfred Hollstein.
6205
531a1af2
KK
6206Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
6207
6208 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
6209 the various idata sections, we check the name on the .section pseudo.
6210
464070de
ILT
6211Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
6212
6213 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
6214 add section's paddr to add_number; compatibility to native as and
6215 ld forbids.
6216
6a087325
KR
6217Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
6218
9d5aef80
KR
6219 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
6220
ac9ef8ee
KR
6221 * hash.c (struct hash_entry): Moved here...
6222 * hash.h (struct hash_entry): ...from here.
6223
6a087325
KR
6224 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
6225 if it's already known to be null.
6226
77fa4d98
MM
6227Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6228
6229 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
6230 bit relocs converted to PC relative relocs. This turned out to
6231 add the offset from the beginning of .text twice.
6232
c6e4e834
KR
6233Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
6234
6235 * stabs.c (s_stab_generic): In 's' case, free string from
6236 obstack.
6237
6238 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
6239 sy_name_offset.
6240 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
6241 Ditto.
6242
6243 * subsegs.h (segment_info_type): Make bitfields unsigned.
6244
6245 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
6246 and move them together. On most systems this will reduce the
6247 structure size by one word.
6248 (operatorT): Define O_max.
6249 * expr.c (expr_begin): Verify that X_op is wide enough to hold
6250 O_max.
6251
6252 * read.c (pop_insert): Print error returned by hash table
6253 insertion code.
6254
6255 * as.c (dump_statistics): Split out from main; dump some hash
6256 table stats and target-specific stats.
6257 (start_time): No longer automatic to main.
6258 (main): Set file-level start_time and call dump_statistics at
6259 exit. Exit by calling xexit.
6260 (show_usage): Make --statistics description less specific.
6261 * subsegs.c (subsegs_print_statistics): New function.
6262 * write.c (write_print_statistics): New function.
6263 (n_fixups): New static variable.
6264 (fix_new_internal): Increment it.
6265 * read.c (read_print_statistics): New function.
6266 * read.h (read_print_statistics): Declare.
6267 * symbol.c (symbol_print_statistics): New function.
6268 * symbol.h (symbol_print_statistics): Declare.
6269 * hash.c (hash_print_statistics): New function.
6270 * hash.h (hash_print_statistics): Declare.
6271 * config/tc-i386.c (i386_print_statistics): New function.
6272 * config/tc-i386.h (i386_print_statistics): Declare.
6273 (tc_print_statistics): New macro.
6274 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
6275 exit.
6276
6277 * hash.c (DELETED): Rewrite to use a valid but unique address.
6278 (START_POWER): Reduce to 10.
6279 (enum stat_enum): New enumerator, replacing STAT_* index macros.
6280 Add new values for counting strcmp calls.
6281 (GROW_FACTOR): New macro.
6282 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
6283 of nesting blocks.
6284 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
6285 (hash_new): Use FULL_VALUE.
6286 (struct hash_control): Definition moved here.
6287 (hash_code): Don't mask to low bits.
6288 (hash_ask): Mask returned hash code here. Check hash value before
6289 calling strcmp; count strcmp calls.
6290 * hash.h (struct hash_control): Declare, don't define, here.
6291 (HASH_STATLENGTH): Deleted.
6292 (struct hash_entry): Add field for hash code.
6293 (hash_say, hash_apply): Don't declare.
6294
6295 * hash.c (destroy): Return void.
6296 (applicatee): Ditto.
6297 (main): Fix declarations.
6298 (hash_apply): Return void. Argument `function' returns void. Put
6299 inside "#ifdef TEST".
6300 (hash_say): Define only if TEST is defined.
6301 * hash.h (hash_apply, hash_say): Declarations deleted.
6302
6a4667f4
ILT
6303Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
6304
6305 * configure: Rebuild with autoconf 2.7.
6306
330add8a
ILT
6307Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
6308
6309 * aclocal.m4 (AC_PROG_CC): Remove local definition.
6310 * configure: Rebuild with autoconf 2.6.
6311
520dd8d5
ILT
6312Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
6313
6314 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
6315 (ppc_stabx): Don't increment ppc_debug_name_section_size.
6316 (ppc_bc): Likewise.
6317 (ppc_frob_file): Remove.
6318 * config/tc-ppc.h (tc_frob_file): Don't define.
6319 (ppc_frob_file): Don't declare.
6320
880b7429
KR
6321Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
6322
d6c4a3fa
KR
6323 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
6324 * config/alpha-opcode.h: Include one-operand variants of jmp and
6325 jsr.
6326
880b7429
KR
6327 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
6328 with te-delta.h in 8.3 file systems.
6329 * configure.in: Adjusted.
6330
aa8a6656
ILT
6331Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
6332
880b7429
KR
6333 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
6334
aa8a6656
ILT
6335 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
6336 number.
6337 * expr.c (operand): Handle MRI suffixes after unadorned 0.
6338
7b889f5e
KR
6339Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
6340
da9b55af
KR
6341 Version 2.6 released.
6342 * Makefile.in (VERSION): Updated to 2.6.
6343
7b889f5e
KR
6344 * config/obj-coff.c (write_object_file): Change use of md_do_align
6345 to pass a pointer rather than a fill value, to match other uses.
6346
46618ae6
KR
6347Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
6348
7b889f5e
KR
6349 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
6350
46618ae6
KR
6351 * as.c (main): Move md_end call to just after call to
6352 perform_an_assembly_pass. Delete cpu-specific code here.
6353 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
46618ae6
KR
6354 * config/tc-arm.c (md_end): Unused function deleted.
6355 * config/tc-ns32k.c (md_end): Ditto.
6356
6357 * config/tc-i386.c (i386_align_code): New function, moved here
6358 from HANDLE_ALIGN macro.
6359 * config/tc-i386.h (HANDLE_ALIGN): Call it.
6360
6361 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
6362
6363 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
6364 before comparing
6365
6366 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
6367
6368 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
6369 multi-byte nops to avoid changing gcc. The necessary gcc change
6370 might break old assemblers.
6371
6372 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
6373
6374 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
6375 generate optimal multi-byte nop instructions for ".align n"
6376 ".align n,0x90", and aligns requiring more than 15 bytes of
6377 padding still generate multiple 0x90's as before.
6378
6379Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
6380
6381 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
6382
51bc513e
SS
6383Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
6384
6385 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
6386 * configure: Update.
6387 * mpw-make.sed: Reorder commands to make sed happier.
6388 * config/te-macos.h: New file.
6389 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
6390
8b39c5df
JL
6391Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
6392
6393 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
6394 conditional branches.
6395 (md_apply_fix): Likewise.
6396
6397Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
6398
6399 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
6400 generate a reloc which the linker will not handle correctly. Fix
6401 overflow checking--R_IREL is 18 bits, not 17.
6402
6a649eda
ILT
6403Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
6404
a071b8e9
ILT
6405 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
6406 from a PC relative reloc if TC_A29K.
6407
6408 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
6409 code depends upon it.
6410
6a649eda
ILT
6411 * config/tc-a29k.c (md_operand): Handle $float, $double, and
6412 $extend. Based on code from Eric Freudenthal
6413 <freudenthal@nyu.edu>.
6414 * config/tc-a29k.h (LEX_DOLLAR): Define.
6415 * read.c (LEX_DOLLAR): Define if not defined.
6416 (lex_type): Use LEX_DOLLAR.
6417
6364a188
ILT
6418Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
6419
6420 * configure.in (a29k-nyu-sym1): New target, just like other a29k
6421 targets.
6422
0fa6f8f6
ILT
6423Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
6424
6425 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
6426
6427Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
6428
6429 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
6430 used only by "dlltool.c".
6431
eec2cfef
ILT
6432Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
6433
6434 * config/tc-alpha.c: Undefine inline if not __GNUC__.
6435 (md_pseudo_table): Don't define "extern".
6436
df7504dc
ILT
6437Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
6438
a3d1c561
ILT
6439 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
6440
df7504dc
ILT
6441 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
6442
07d012f6
ILT
6443Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
6444
36e80ac6
ILT
6445 * macro.c (macro_expand_body): Don't warn about == with a
6446 nonexistent parameter, in case it is in a comment field.
6447
07d012f6
ILT
6448 * as.c (main): On TC_A29K, call macro_init with macro_alternate
6449 set to 1.
6450 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
6451 set, even if macro_alternate is set.
6452 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
6453 (sub_actual): If macro_strip_at, and kind is '@', don't look up
6454 the token unless it ended in '@'.
6455 * config/tc-a29k.c (line_separator_chars): Remove '@'.
6456 * doc/c-a29k.texi: Document macro usage on A29K.
6457
01f108bc
ILT
6458Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
6459
6460 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
6461 signed word.
6462 (install_operand): Likewise.
6463
6464 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
6465
6466Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
6467
6468 * configure.in (m88k-motorola-sysv*): New target.
6469 * configure: Rebuild.
6470 * config/te-delta88.h: New file.
6471 * config/obj-coff.c (write_object_file): Use md_do_align if it is
6472 defined.
6473 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
6474 (md_do_align): Define.
6475 * config/tc-m88k.c: Include "subsegs.h".
6476 (m88k_do_align): New function.
6477
6478 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
6479 (COFF_NOLOAD_PROBLEM): Define.
6480 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
6481
7954cc14
KR
6482Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
6483
6484 * config/tc-i386.c (md_assemble): For a jump instruction with
6485 non-constant target, require 7 available bytes in the current
6486 frag, not 6.
6487
d033806f
FF
6488Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
6489
6490 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
6491 bfd/libelf.h.
6492
d7b2038f
ILT
6493Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
6494
6495 * configure.in (alpha-*-linux*): Use ecoff.
6496 * configure: Rebuild.
6497 * ecoff.c (ecoff_directive_extern): New function.
6498 (ecoff_directive_weakext): New function.
6499 (ecoff_build_symbols): Handle weak symbols.
6500 (ecoff_setup_ext): Likewise.
59c80ca2 6501 (ecoff_frob_symbol): Warn about weak common symbols.
d7b2038f
ILT
6502 * ecoff.h (ecoff_directive_extern): Declare.
6503 (ecoff_directive_weakext): Declare.
6504 * symbols.c (S_IS_WEAK): New function.
6505 * symbols.h (S_IS_WEAK): Declare.
6506 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
6507 "weakext".
6508 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
6509 (s_extern): Remove.
6510
cbdf59ad
ILT
6511Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
6512
b629f627
ILT
6513 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
6514
7ab1edc8
ILT
6515 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
6516 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
6517 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
6518 * config/obj-coff.c (coff_frob_symbol): Don't call
6519 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
6520 one. If OBJ_XCOFF, try to figure out whether the symbol is going
6521 to be dropped.
6522
31751d9d
ILT
6523 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
6524 (ppc_stab_symbol): New static variable.
6525 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
6526 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
6527 sy_tc.real_name to the stab string.
6528 (ppc_bc, ppc_ec): New static functions.
6529 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
6530 do anything.
6531 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
6532 suffix.
0e3dd9a0
ILT
6533 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
6534 entries.
31751d9d 6535
cbdf59ad
ILT
6536 * input-scrub.c (input_scrub_push): Reset sb_index.
6537
91123dbe
ILT
6538Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
6539
6540 * listing.c (listing_newline): Don't create a frag in the absolute
6541 section.
6542
73255941
ILT
6543Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
6544
df72d2a5
ILT
6545 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
6546 (ppc_csect): Move most of the code to ppc_change_csect, and call
6547 it.
6548 (ppc_change_csect): New static function, taken from ppc_csect.
6549 (ppc_section): New static function.
6550 (ppc_saw_abs): New static varable.
6551 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
6552 a symbol has no csect.
6553 (ppc_adjust_symtab): New function.
6554 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
6555 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
6556
6557 * write.c (write_object_file): If tc_adjust_symtab is defined,
6558 call it just before the call to obj_adjust_symtab.
6559
73255941
ILT
6560 * symbols.c (symbol_find_or_make): Change name to be const.
6561 * symbols.h (symbol_find_or_make): Update declaration.
6562
9bfaf1b9
KR
6563Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
6564
6565 * doc/as.texinfo (Align): Mention SH.
6566 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
6567 .align value.
6568 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
6569 (Z8000 Directives, even): Don't give numeric align value, instead
6570 explain behavior.
6571
ae143278
DE
6572Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
6573
6574 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
6575 instruction.
6576
270433cc
PB
6577Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
6578
6579 * Makefile.in (diststuff): Also make info.
6580 (maintainer-clean realclean): Also make clean-info.
6581
18a11401
JL
6582Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
6583
6584 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
6585 (pa_subspace): For ".nsubspa", always create a new subspace
6586 with the given attributes, even if one already exists with the
6587 same name.
6588
96fe71e1
MM
6589Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6590
6591 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
6592 TC_FORCE_RELOCATION, taking an additional section argument. If
6593 the section of the target symbol is not the same as the current
6594 section, always force the relocation to be used.
6595 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
6596
6597 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
6598 md_pcrel_from function, taking an additional section argument.
6599 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
6600
6601 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
6602 older TC_FORCE_RELOCATION if not defined.
6603 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
6604 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
6605 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
6606 TC_FORCE_RELOCATION.
6607
1d75481b
KR
6608Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
6609
6610 * input-scrub.c (as_where): Set name to null pointer if we don't
6611 have a file name.
6612 * messages.c (identify): Only print filename if non-null.
6613 (as_show_where): Ditto, for line number too.
6614 (as_warn_internal, as_bad_internal): Ditto.
6615
6616 * input-file.c (input_file_open): If the input file can't be
6617 opened, consider it an error.
6618
c625fc23
JSC
6619Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
6620
6621 * config/tc-mips.c: Added mips_4100 control, and support for
6622 accepting the 4100 as a MIPS architecture variant (md_begin,
6623 macro_build, mips_ip, md_parse_option). Adding suitable
6624 command-line OPTIONs, and updating the help text (md_show_usage).
6625
dd1a5316
KR
6626Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
6627
c625fc23
JSC
6628 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
6629 BFD_ASSEMBLER is defined.
6630
3366a224
KR
6631 * Use one active frag and one obstack per frag chain:
6632 * frags.c (frags): Variable deleted.
6633 (frag_alloc): New function.
6634 (frag_grow, frag_more, frag_variant, frag_now_fix,
6635 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
6636 frags variable.
6637 (frag_new): Ditto. Verify that frch_last and frag_now match on
6638 entry and exit, and that old frag_now has non-zero type. Replace
6639 "know" uses with "assert". Use frag_alloc instead of mucking with
6640 obstack alignment.
6641 * frags.h (frags): Declaration deleted.
6642 * subsegs.h (struct frchain): Add new field frch_frag_now.
6643 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
6644 variables.
6645 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
6646 give it any stricter alignment than frchainS structures need. Do
6647 not initialize frags obstack. Set frag_now to point to
6648 dummy_obstack. Initialize absolute_frchain.
6649 (subseg_set_rest): Save and restore frag_now in frch_frag_now
6650 field of frchainS. Don't create new frags on section switch, and
6651 use frag_alloc when creating a new frag chain. For absolute
6652 section, set frchain_now to absolute_frchain. Verify that
6653 frch_last and frag_now match on entry and exit. Initialize
6654 per-chain obstack, and under gcc, set required alignment to that
6655 needed by fragS structure.
c625fc23 6656
3366a224
KR
6657 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
6658
6659 * stabs.c (get_stab_string_offset): Only copy input string if a
6660 fresh copy is needed, not if the section already exists.
6661 (s_stab_generic): Cache stab section name to bypass lookups, since
6662 usually it will match. Could be made faster still by changing the
6663 memory allocation rules.
6664 (s_xstab): Cache section name to bypass repeated string
6665 allocation.
6666
6667 * frags.c (frag_new): Deleted register declarations.
6668
6669 * listing.c (frag_now): Don't declare.
6670
6671 * as.c (chunksize): New variable.
6672 (debug_memory): New variable.
6673 (main): If debug_memory is set, reduce chunksize and
6674 _bfd_chunksize.
6675 * as.h (chunksize): Declare it.
6676 * read.c (read_begin): Use it.
6677
de5ebe2e
KR
6678 * config/tc-alpha.c (md_shortopts): Include 'g'.
6679 (md_parse_option): Ignore it.
6680
dd1a5316
KR
6681 * Makefile.in (distclean): Remove Makefile and config.status from
6682 testsuite directory.
6683 (clean-here): Don't delete testsuite. Instead, delete only the
6684 files within it that would be generated by running tests.
6685
de5ebe2e
KR
6686 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
6687 frag_now_fix instead of accessing obstack info directly.
6688 * config/tc-arm.c (s_ltorg): Ditto.
6689 (md_assemble): Ditto.
6690
6691 * config/tc-i386.c (md_assemble): Call frag_grow instead of
6692 obstack_room.
6693
625f4e48
KR
6694Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
6695
6696 * stabs.c (aout_process_stab): Insert debug symbol into symbol
6697 chain after parsing value expression, if any, to avoid separating
6698 continued .stabs lines.
6699
33a8c1b6
ILT
6700Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
6701
6702 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
6703 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
6704
b6b8f911
MM
6705Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
6706
625f4e48
KR
6707 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
6708 -mcom support and PPC_OPCODE_ANY for -many.
6709 (md_parse_option): Ditto.
6710 (ppc_arch): Ditto.
6711 (md_begin): For duplicate instructions, print all duplicates
6712 before aborting.
b6b8f911 6713
4c2935f4
MM
6714Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
6715
6716 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
6717 common mode operation.
6718 (md_show_usage): Add -mcom to usage message.
4c2935f4
MM
6719
6720Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
6721
6722 * expr.c (op_rank): Add O_symbol_rva.
6723 * expr.h (operatorT): Add O_symbol_rva.
6724 * read.c (cons_worker): Set O_symbol_rva when necessary.
6725 * write.c (fix_new_exp): Understand O_symbol_rva.
6726
7db865dc
ILT
6727Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
6728
6729 * config/tc-mips.c: Correct s_cons arguments. From Michael
6730 Joosten <joost@ori.cadlab.de>.
6731
1b13e6fc
ILT
6732Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
6733
6734 * config/tc-ppc.c (ppc_macro): Make count unsigned.
6735 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
6736 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
6737 the fix_line field.
6738 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
6739 make non-static. Change all users.
6740 * config/obj-coff.h (coff_n_line_nos): Declare.
6741
9e3e3d4c
KR
6742Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
6743
6744 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6745
6746 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
6747
6748 * config/obj-elf.c (obj_elf_common): Convert specified byte
6749 alignment to power of two. Set size of local bss symbol.
6750
6751 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
6752
13a6c753
ILT
6753Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
6754
6755 * sb.c, macro.c: Decide whether to include <string.h> or
6756 <strings.h> just as as.h does.
6757
a75aafcd
DE
6758Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
6759
6760 * Makefile.in (site.exp): Fix setting of $srcdir.
6761
6762 * config/tc-arm.c (md_atof): Fix little-endian output.
f6ec8c46
DE
6763 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
6764 all coff targets.
a75aafcd 6765
d89861c7
KR
6766Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
6767
4d2ba393
KR
6768 * doc/as.texinfo: Split out the NS32k family documentation,
6769 despite its being commented out for now.
6770 * doc/c-ns32k.texi: New file.
6771
2c5eb48d
KR
6772 * sb.c, macro.c: Include string.h.
6773
6b0a6eaa
KR
6774 * Makefile.in (comparison): Only check *.o; we don't care if
6775 timestamps inserted by the native linker differ.
6776
d89861c7
KR
6777 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
6778 if alignment stricter than 4 bytes is requested; in that case,
6779 align to a 4-byte boundary first.
6780
70aeac05
KR
6781 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
6782
6783 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
6784 uninitialized" warning for `Max_Source_Offset'.
6785
eaaa2a42
KK
6786Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
6787
6788 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
6789 qualifiers and detect errors if present.
6790 (md_assemble): Add call to parse_toc_entry. Also added some support
6791 for the [tocv] qualifier.
6792 (ppc_pe_tocd): New function to support data in the toc section.
6793
cd557d83
ILT
6794Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
6795
6796 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
6797 an absolute symbol.
6798
42ac8fa8
ILT
6799Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
6800
01f108bc 6801 * config/tc-m68k.c (isword): Accept all values from -65536 to
cd557d83
ILT
6802 +65535, so ~VAL will not be rejected.
6803
42ac8fa8
ILT
6804 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
6805 skip characters after the pseudo-op.
6806 (s_else): Likewise.
6807 * read.c (get_line_sb): Don't look past buffer_limit.
6808 (s_include): In MRI mode, skip characters after the file name.
6809
eef66934
ILT
6810Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
6811
6812 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
6813 periods in register names.
6814
cdc49cba 6815For older changes see ChangeLog.1.
This page took 0.439021 seconds and 4 git commands to generate.