]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
Don't use CLASS_LIKELY_SPILLED in local-alloc
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
630c79be 12000-09-06 Bernd Schmidt <bernds@redhat.co.uk>
611bbf2a
BS
2
3 * local-alloc.c (local_alloc): Ignore CLASS_LIKELY_SPILLED.
4 (update_equiv_regs): Likewise, except for the mn10200 kludge.
5 (combine_regs): Likewise.
6
630c79be
BS
7 * Makefile.in (cse.o): Depend on $(BASIC_BLOCK_H).
8 * cse.c: Include "basic-block.h".
9 (struct table_elt): New field REGCOST.
10 (CHEAP_REG): Delete macro.
11 (COST): Return 0 for REGs.
12 (approx_reg_cost_1, approx_reg_cost, preferrable): New functions.
13 (notreg_cost): Return 0 for appropriate SUBREGs.
14 (COSTS_N_INSNS): Return N * 2.
15 (rtx_cost): Return 0 for REGs, and use cost of nested rtx for cheap
16 SUBREGs.
17 (CHEAPER): Use new function preferrable.
18 (insert): Initialize REGCOST member.
19 (find_best_addr): Use approx_reg_cost for estimation of register
20 usage.
21 (cse_insn): Likewise.
22 * loop.c (iv_add_mult_cost): New function.
23 (add_cost, shift_cost, mult_cost): Delete variables.
24 (init_loop): Don't initialize add_cost; reduce copy_cost by half.
25 (strength_reduce): Use iv_add_mult_cost instead of fixed add_cost.
26 Make code that detects autoinc opportunities slightly less optimistic.
27 (simplify_giv_expr): If expression contains other reg that is also a
28 giv, only increment benefit if this is the only use of that reg.
29 (consec_sets_giv): Take that change into account.
30 (combine_givs): Slightly more verbose output.
31
32 * i386.h (RTX_COSTS): For MULT, return true cost of multiplication,
33 not the cost of an equivalent shift.
34 * sh-protos.h (addsubcosts): Declare.
35 * sh.c (addsubcosts): New function.
36 * sh.h (CONST_COSTS): If CONST_OK_FOR_I, then return 0.
37 (RTX_COSTS): Tweak. Use addsubcosts.
38 (ADDRESS_COST): Return higher cost for reg+reg addressing.
39
39a10a29
GK
402000-09-06 Geoff Keating <geoffk@cygnus.com>
41
42 * config/rs6000/rs6000.c (validate_condition_mode): New function.
43 (branch_comparison_operator): Call validate_condition_mode to
44 abort rather than returning 0.
45 (branch_positive_comparison_operator): New function.
46 (scc_comparison_operator): Call validate_condition_mode to abort
47 rather than returning 0.
48 (ccr_bit): Call validate_condition_mode. Update for
49 new branch scheme.
50 (print_operand): Delete %C modifier. Update %E case
51 to use EQ bit not SO bit.
52 (rs6000_reverse_condition): New function.
53 (rs6000_generate_compare): New function.
54 (rs6000_emit_sCOND): New function.
55 (rs6000_emit_cbranch): New function.
56 (output_cbranch): The length of a long branch insn is
57 now only 8 bytes. Add validate_condition_mode. Use
58 rs6000_reverse_condition. Remove cror generation.
59 * config/rs6000/rs6000.h: Update comments.
60 (PREDICATE_CODES): Add new predicate. Update codes used
61 by branch_comparison_operator and scc_comparison_operator.
62 * config/rs6000/rs6000-protos.h: Add prototypes for
63 new external functions.
64 * config/rs6000/rs6000.md: Add new scheduling parameters
65 for cr_logical instructions. Change length of branch
66 instructions.
67 (bCOND patterns): Call rs6000_emit_cbranch.
68 (sCOND patterns): Call rs6000_emit_sCOND.
69 (branch patterns): Change lengths to 4.
70 (cr logical patterns): New.
71
2a4bbffa
RH
722000-09-06 Richard Henderson <rth@cygnus.com>
73
74 * config/i386/i386.md (call_pop): Fix test for setting
75 current_function_uses_pic_offset_table.
76 (call, call_value_pop, call_value): Likewise.
77
eab828ba
ZW
782000-09-06 Zack Weinberg <zack@wolery.cumb.org>
79
80 * timevar.c (timevar_add): Delete.
81 (timevar_get): Also count time since the selected timer was
82 last updated. Do not examine the timevar stack if the
83 selected timer is standalone.
84
f1d6a533
DA
852000-09-05 J. David Anglin <dave@hiauly1.hia.nrc.ca>
86
87 * gthr-dce.h (__gthread_objc_mutex_deallocate): Free mutex->backend.
88
53c5b5d7
JM
892000-09-05 Jason Merrill <jason@redhat.com>
90
91 * c-decl.c (finish_incomplete_decl): Don't call complete_array_type
92 for 'extern' arrays.
93
3392dafc
RH
942000-09-05 Richard Henderson <rth@cygnus.com>
95
96 * config/ia64/lib1func.asm (__divtf3): Rebundle for Itanium.
97 Eliminate final copy from non-trapping case.
98 (__divdf3, __divsf3): Likewise.
99
2a7ffc85
RH
1002000-09-05 Richard Henderson <rth@cygnus.com>
101
102 * config/ia64/ia64.md (mulhi3): Fix typo last change.
103 * config/ia64/lib1func.asm (__divdi3, __udivdi3, __umodsi3): Likewise.
104
204093e6
DT
1052000-09-03 Donn Terry <donn@interix.com>, Laurynas Biveinis <lauras@softhome.net>
106
107 * Makefile.in: Restructure bootstrap stages to allow clean
108 restart after failure.
109
514f96e6
RH
1102000-09-05 Richard Henderson <rth@cygnus.com>
111
112 * config/ia64.md (movsi and movdi patterns): Allow moves from
113 8-bit constants to AR registers.
114
cf1f6ae3
RH
1152000-09-05 Richard Henderson <rth@cygnus.com>
116
117 * config/ia64/ia64.md (mulhi3): New.
118
d8d7a286
RH
1192000-09-05 Richard Henderson <rth@cygnus.com>
120
121 * config/ia64/ia64.h (INIT_TARGET_OPTABS): Remove.
122 * config/ia64/lib1funcs.asm (__divdi3): Update from Intel IA-64
123 Optimization Guide, minimum latency alternative.
124 (__moddi3, __udivdi3, __umoddi3): Likewise.
125 (__divsi3, __modsi3, __udivsi3, __umodsi3): Likewise.
126
a6efbece
BK
1272000-09-05 Bruce Korb <bkorb@gnu.org>
128
53c5b5d7 129 * fixinc/fixincl.c (load_file): always read header files
a6efbece 130 with sizes that are a multiple of the page size.
dc46505a 131 & use libiberty's getpagesize for determining that.
a6efbece 132
c0712acb
AO
1332000-09-05 Alexandre Oliva <aoliva@redhat.com>
134
135 * gcse.c (hash_string_1): Add prototype.
136 * cse.c (canon_hash_string): Likewise.
137
af7f0fde
CN
1382000-09-04 Craig Newell <CraigN@ieee.org>
139
140 * gcc.c: Undefine "__WCHAR_TYPE__" before redefining it.
141
4993ddc1
AS
1422000-09-04 Andreas Schwab <schwab@suse.de>
143
144 * Makefile.in (STAGESTUFF): Remove libgcc.
145 (stage1-start, stage2-start, stage3-start): Copy the contents of
146 the libgcc directory explicitly.
147 (mostlyclean): Clean libgcc.
148
5e640c56
AH
1492000-09-04 Andrew Haley <aph@redhat.com>
150
151 * dwarf2out.c: (stack_adjust_offset): New prototype.
152
25ffb1f6
JH
153Wed Jan 1 00:23:59 MET 1997 Jan Hubicka <jh@suse.cz>
154
155 * combine.c (make_extraction): Fix rtx_cost comparison to
156 match the comment.
157
158Wed Jan 1 00:17:32 MET 1997 Jan Hubicka <jh@suse.cz>
159
160 * i386.md (pushsi2, pushhi2, pophi2, swapsf, swapdf,
161 umulsi3_highpart, smulsi3_highpart, testqi_ccno_1, xorqi_ext_1):
162 Add '*' to insn pattern name.
163
29844fa7
JJ
1642000-09-04 Jakub Jelinek <jakub@redhat.com>
165
166 * cpplex.c (ON_REST_ARG): Check VAR_ARGS flag of current context,
167 use posn - 1 to index into tokens array.
168 (maybe_paste_with_next): Adjust caller.
169
0d86f538
GK
1702000-09-03 Geoff Keating <geoffk@cygnus.com>
171
bff46771
GK
172 * invoke.texi: Document the -mvxworks option for rs6000 ELF.
173
0d86f538
GK
174 * config/rs6000/rs6000.h: Update various comments about XER_REGNO.
175 (REGNO_REG_CLASS): Use symbolic register
176 names.
177
4e67550b
RE
1782000-09-03 Richard Earnshaw <rearnsha@arm.com>
179
180 * arm.c (final_prescan_insn): If the form of a jump insn isn't
181 recognized, don't try to conditionally execute it.
182
150f4100
DC
183Sun Sep 3 13:10:56 2000 Denis Chertykov <denisc@overta.ru>
184
185 * config/avr/avr.md ("*tablejump_lib"): New pattern.
186 (call_value_insn): Right length claculation.
187 (call_insn): Likewise.
188
5fecfd8d
MM
1892000-09-02 Marek Michalkiewicz <marekm@linux.org.pl>
190
191 * config/avr/avr-protos.h, config/avr/avr.c (unique_section,
192 gas_output_limited_string, gas_output_ascii, output_movqi,
193 output_movhi, out_movqi_r_mr, out_movqi_mr_r, out_movhi_r_mr,
194 out_movhi_mr_r, out_movsi_r_mr, out_movsi_mr_r, output_movsisf,
195 out_tstsi, out_tsthi, ret_cond_branch, ashlqi3_out, ashlhi3_out,
196 ashlsi3_out, ashrqi3_out, ashrhi3_out, ashrsi3_out, lshrqi3_out,
197 lshrhi3_out, lshrsi3_out, output_reload_inhi, output_reload_insisf,
198 out_shift_with_cnt, ptrreg_to_str, cond_string, encode_section_info):
199 Add "const" as needed to remove warnings.
200
201 * config/avr/avr.c (avr_override_options, avr_init_once,
202 function_prologue, function_epilogue, frame_pointer_required_p,
203 class_likely_spilled_p, order_regs_for_local_alloc,
204 avr_address_cost, avr_ret_register): Use K&R style arguments.
205 (initial_elimination_offset, gas_output_limited_string):
206 Remove ATTRIBUTE_UNUSED from the used arguments.
207 (output_mov*, out_mov*_r_mr, out_mov*_mr_r, output_reload_insisf):
208 Use local variables src, dest, base to access operands[].
209 Rename reg_dest to reg_src if that's what it is.
210 (output_movhi, output_movsisf): Optimize loading 8-bit immediate
211 constants to LD_REGS if reg_was_0.
212 (output_reload_insisf): Change arg 3 to insn length and set it.
213 (out_movhi_r_mr, out_movhi_mr_r): Use in/out for more efficient
214 access to 16-bit I/O register pairs.
215 (avr_address_cost): Lower cost for the above case.
216 (out_tsthi): Use "or" (faster) instead of "sbiw" if the operand
217 may be clobbered, also for LD_REGS.
218 (adjust_insn_length): Correct insn length for iorhi3 and iorsi3
219 with a CONST_INT.
220
221 * config/avr/avr.h (PTRDIFF_TYPE): Make signed.
222
223 * config/avr/avr.md: Change all uses of the TEST_HARD_REG_CLASS
224 macro to test_hard_reg_class function.
225 (*movsi, *movsf): Change "cc" attribute from "clobber" to "none"
226 for loading immediate constants to LD_REGS.
227 (andsi3, cmphi, cmpsi): Add return statements to avoid warnings.
228
229
bad3869a
MM
230Sat Sep 2 13:58:23 2000 Marek Michalkiewicz <marekm@linux.org.pl>
231
232 * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__
233 * config/avr/libgcc.S: Lost part of the previous patch.
234
802a8181
DA
2352000-08-31 J. David Anglin <dave@hiauly1.hia.nrc.ca>
236
237 * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t
238 object before calling pthread_mutex_init.
239
1a66cd67
AO
2402000-09-02 Alexandre Oliva <aoliva@redhat.com>
241
242 * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm,
243 config/sh/crtn.asm: New files.
244 * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set.
245 (crt1.o, crti.o, crtn.o): New targets.
246 * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added
247 sh/t-elf.
248 * configure: Rebuilt.
249 * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
250 STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define.
251 * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP):
252 Undefine for config/elfos.h to redefine.
253 (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h.
254
2552000-09-02 Alexandre Oliva <aoliva@redhat.com>, Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>
256
257 * config/sh/sh-protos.h (nonpic_symbol_mentioned_p,
258 legitimize_pic_address, output_pic_addr_const): Declare.
259 * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register.
260 (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise.
261 (TARGET_SWITCHES): New switch -mprefergot.
262 (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot.
263 (PIC_OFFSET_TABLE_REGNUM): Define.
264 (GOT_SYMBOL_TABLE): Likewise.
265 (LEGITIMIZE_ADDRESS): Use legitimize_pic_address.
266 (ENCODE_SECTION_INFO): Define.
267 (FINALIZE_PIC): New macros.
268 (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro.
269 (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const.
270 * config/sh/sh.c (print_operand_address): Use output_pic_addr_const.
271 (prepare_move_operands): Call emit_pic_move or
272 emit_pic_const_move if appropriate.
273 (output_far_jump): For PIC, use braf and output long offset.
274 (machine_dependent_reorg):
275 (sh_expand_prologue): Save and initialize the PIC register.
276 (sh_expand_epilogue): Restore it.
277 (initial_elimination_offset): Account for it.
278 (nonpic_symbol_mentioned_p): New function.
279 (legitimize_pic_address): Likewise.
280 (output_pic_addr_const): Likewise.
281 * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns.
282 (call, call_value): Use them.
283 (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg,
284 symPLT_label2reg): New expands.
285 * invoke.texi (SH Options): Document -mprefergot.
286
6462bb43
AO
2872000-09-01 Alexandre Oliva <aoliva@redhat.com>
288
289 * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro.
290 * gcse.c (hash_string_1): New function.
291 (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number.
292 (expr_equiv_p) <ASM_OPERANDS>: Likewise.
293 * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS.
294 (canon_hash_string): New function.
295 (canon_hash) <ASM_OPERANDS>: Disregard filename and line number.
296 (exp_equiv_p) <ASM_OPERANDS>: Likewise.
297 (fold_rtx): Use ASM_OPERANDS accessor macros.
298 * emit-rtl.c (copy_insn_1): Likewise.
299 * integrate.c (copy_rtx_and_substitute): Likewise.
300 * stmt.c (expand_asm_operands): Likewise. Give an
301 ASM_OPERANDS rtx the mode of the output reg being set from it.
302
1b4f90cd
FF
3032000-09-01 Fred Fish <fnf@be.com>
304
305 * fix-header.c (write_rbrac): Add putc and getc to list of
306 functions to protect against prior definition as a macro.
307
3c786c69
JM
3082000-09-01 Joseph S. Myers <jsm28@cam.ac.uk>
309
310 * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE.
311 (c_size_type_node): Define.
312 * c-decl.c (init_decl_processing): Initialize c_size_type_node.
313 * c-common.c (enum format_lengths, enum format_std_version,
314 format_length_info, format_type_detail, BADLEN, NOLENGTHS,
315 format_kind_info, printf_length_specs, scanf_length_specs, T89_I,
316 T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL,
317 T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD,
318 T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI,
319 TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM,
320 format_types): Define.
321 (format_char_info, print_char_table, scan_char_table,
322 time_char_table): Rearrange for new organization of information
323 about format length modifiers and standard versions.
324 (T_ST): Redefine to use c_size_type_node.
325 (check_format_info): Obtain information about length modifiers and
326 standard versions from tables. Adjust warning message wordings.
327 Use the name from the user's program for `ll' and `hh' length
328 modifiers in warning messages. Use more informative names for
329 wanted types where available (for wchar_t, wint_t, size_t, signed
330 size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t).
331
8a09bb27
JW
3322000-09-01 Jim Wilson <wilson@cygnus.com>
333
ca3920ad
JW
334 * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN.
335 * combine.c (distribute_notes): Handle REG_NORETURN.
336 * rtl.c (reg_note_name): Add REG_NORETURN.
337 * rtl.h (enum reg_note): Likewise.
338
339 * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from
340 ia64_file_start.
341 * config/ia64/ia64.c (emit_safe_across_calls): Likewise.
342 (rtx_needs_barrier): Handle unspec_volatile 8 and 9.
343 (emit_predicate_relation_info): Handle conditional calls with
344 REG_NORETURN.
345 * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls
346 instead of ia64_file_start.
347 * config/ia64/sysv4.h (ASM_FILE_START): Likewise.
348 * config/ia64/ia64.md (safe_across_calls_all,
349 save_across_calls_normal): New patterns.
350
8a09bb27
JW
351 * loop.c (check_final_value): Check for biv use before checking for
352 giv use. Check for both biv and giv uses. Always set last_giv_use
353 if there is a giv use.
354
11a13704
RH
3552000-09-01 Richard Henderson <rth@cygnus.com>
356
357 * config/ia64/ia64.md (mulsi3): Use grfr_register_operand.
358 (madddi3): Likewise.
359 (maddsi3): New.
360
6324d2bb
RK
361Fri Sep 1 10:59:47 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
362
fcf1b822
RK
363 * expr.c (clear_storage): Don't use emit_move_insn unless
364 either BLKmode or proper size.
365 (store_constructor): Don't call clear_storage if REG of wrong size.
366
6324d2bb
RK
367 * flow.c (init_propagate_block_info): Don't mark frame dead at end
368 of function if returns wiht stack pointer depressed.
369
1ba5ae8f
AH
3702000-09-01 Andrew Haley <aph@redhat.com>
371
372 * dwarf2out.c (stack_adjust_offset): New function.
373 (dwarf2out_stack_adjust): Break out stack adjust logic into
374 new stack_adjust_offset function. Look inside parallels and
375 sequences for stack adjustments.
376
893f3d5b
JL
3772000-08-31 Jeff Law <law@cygnus.com>
378
94c51f7a
JL
379 * arm.md: Use no_new_pseudos to determine when it is safe
380 to create new pseudo registers.
381
893f3d5b
JL
382 * arm.c (legitimize_pic_address): Use no_new_pseudos to determine
383 when we can safely allocate new registers.
384
1b3d8f8a
GK
3852000-08-31 Geoffrey Keating <geoffk@cygnus.com>
386
387 * stmt.c (expand_asm_operands): Twiddle generating_concat_p
388 so that CONCATs are not generated for ASMs.
389 * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when
390 not generating_concat_p.
391 * function.c (pop_function_context_from): Reset
392 generating_concat_p.
393 (prepare_function_start): Likewise.
394 * rtl.c (generating_concat_p): Define.
395 * rtl.h (generating_concat_p): Declare.
396 * toplev.c (rest_of_compilation): No CONCATs after RTL generation.
397
4e8bd75f
PT
3982000-08-22 Philipp Thomas <pthomas@suse.de>
399 Masanobu Yuhara <yuhara@flab.fujitsu.co.jp>
400
401 * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them
402 for translation.
403
b145ee27
GM
4042000-08-30 Greg McGary <greg@mcgary.org>
405
406 * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh
407 * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC).
408 * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE.
409
2afaa41c
GM
4102000-08-30 Greg McGary <greg@mcgary.org>
411
412 * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct.
413 (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct.
414 (TREE_INT_CST): New macro.
415 * varasm.c (const_hash, compare_constant_1, record_constant_1):
416 Use new macro TREE_INT_CST.
417
1d92b3e1
NB
418Wed 30-Aug-2000 23:18:59 BST Neil Booth <NeilB@earthling.net>
419
420 * contrib.texi: Add self.
421
b23ca156
AO
4222000-08-30 Alexandre Oliva <aoliva@redhat.com>
423
424 * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns.
425 (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps
426 and labels.
427
aef9fbbf
DA
4282000-08-30 J. David Anglin <dave@hiauly1.hia.nrc.ca>
429
430 * fixinc/gnu-regex.c: Don't define `const'.
431
85f3d674
RK
432Tue Aug 29 22:09:59 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
433
434 * expr.c (store_constructor): Allow variable bounds of array type.
435 (expand_expr): Don't blow up if type is ERROR_MARK.
436 * varasm.c (output_constructor): Don't access lower bound of array
437 type unless need it if index is supplied (so it can be a variable
438 if no index is supplied).
439 Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS.
440 Other minor cleanups.
441
5b67ad6f
DA
4422000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca>
443
444 * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS
445 for compilations in stage 1 and subsequent stages, respectively.
446 * configure.in (vax): Add compiler-dependent CFLAGS for stage 1.
447 * configure: Rebuilt.
448 * x-vax, x-vax-gcc: Deleted.
449
63ad61ed
ZW
4502000-08-29 Zack Weinberg <zack@wolery.cumb.org>
451
452 * c-common.c (declare_function_name): Use func_id_node,
453 function_id_node, and pretty_function_id_node. Do not make
454 __func__ visible at file scope.
455 * c-common.h (c_tree_index): Add CTI_FUNCTION_ID,
456 CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID.
457 (function_id_node, pretty_function_id_node, func_id_node): New
458 macros.
459 * c-decl.c (init_decl_processing): Initialize function_id_node,
460 pretty_function_id_node, and func_id_node.
461 (c_make_fname_decl): Correct comment.
462
463 * tree.h (struct tree_identifier): Constify pointer member.
464
465 * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *.
466 * c-pragma.h (struct weak_syms): Constify name and value members.
467 (add_weak): Constify arguments.
468
469 * calls.c (special_function_p): Constify a char *.
470 (expand_call): Remove variable which is initialized and then
471 never used.
472 * dependence.c (struct def_use, struct induction, struct subscript):
473 Constify 'variable' member.
474 (get_low_bound, have_induction_variable): Constify char * argument.
475 (find_induction_variable): Add braces to avoid dangling else.
476 (classify_dependence): Constify char * arrays.
477 * profile.c (output_func_start_profiler): Constify a char *.
478 * stor-layout.c (finalize_record_size): Constify a char *.
479 * tree.c (is_attribute_p): Constify a char *.
480 * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument.
481
482 * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code
483 for comprehensibility. Do not call get_identifier if we did
484 not change the DECL_ASSEMBLER_NAME of the decl. Use alloca to
485 create temporary string constants, not ggc_alloc_string. No
486 need to copy result of ASM_FORMAT_PRIVATE_NAME. Use const
487 char * to hold IDENTIFIER_POINTERs.
488
cee58bc0
RH
4892000-08-29 Richard Henderson <rth@cygnus.com>
490
491 * config/ia64/ia64.md (muldi3): Use grfr_register_operand
492 for the inputs.
493
94aaab7a
RH
4942000-08-29 Richard Henderson <rth@cygnus.com>
495
496 * reload.c (push_secondary_reload): Allow class == reload_class
497 if we're using a reload_in/out pattern.
498
60a3c181
RH
499 * config/ia64/ia64.md (reload_inti): Use a TImode scratch. Use
500 the half that does not conflict with the reload register.
501 (reload_outti): Likewise.
502
9218435e
KH
5032000-08-29 Kazu Hirata <kazu@hxi.com>
504
4381f7c2
KH
505 * reload.c: Fix formatting.
506
507 * stmt.c: Fix formatting.
508
9218435e
KH
509 * gcc.c: Fix formatting.
510
fba0bfd4
ZW
5112000-08-29 Zack Weinberg <zack@wolery.cumb.org>
512
513 * flags.h (time_report, mem_report): New global flags.
514 * toplev.c: Define time_report and mem_report.
515 (f_options): Add -ftime-report and -fmem-report.
516 (compile_file): Turn on time_report if quiet_flag is off.
517 Call ggc_print_statistics at very end if mem_report is on.
518 * timevar.c (TIMEVAR_ENABLE): Examine time_report, not quiet_flag.
519
520 * ggc-common.c (ggc_print_statistics): Rename to
521 ggc_print_common_statistics; all callers changed. Scale
522 quantities above 10K to kilobytes and above 10M to megabytes.
523 * ggc-page.c (ggc_page_print_statistics): Rename to
524 ggc_print_statistics. Report memory consumed by internal data
525 structures for each allocation bucket. Scale quantities above
526 10K to kilobytes and above 10M to megabytes.
527 * ggc-simple.c: Prototype debug_ggc_tree to avoid warning.
528 Cast PTR_KEY(p) to unsigned long in fprintf call to avoid warning.
529 Define tally_leaves always.
530 (ggc_print_statistics): New function.
531 * ggc.h: Adjust for renamed functions.
532
612105a6
DC
533Wed Aug 30 00:11:42 2000 Denis Chertykov <denisc@overta.ru>
534
535 * config/avr/avr.md ("*movsf","*movsi"): Pass NULL to
536 output_movsisf instead of which_alternative.
537
538 * config/avr/avr.c (output_reload_inhi): Check for NULL ponter.
539
6bec29c9
DC
540Tue Aug 29 22:29:58 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl>
541
542 * config/avr/avr-protos.h: (avr_output_ascii) Removed.
543 (avr_progmem_p): New prototype.
544 (output_movsisf): Prototype declaration changed.
545 (output_movqi): New prototype.
546 (output_movhi): New prototype.
547 (call_insn_operand): Likewise.
548 (final_prescan_insn): Likewise.
549 (avr_simplify_comparision_p): Likewise.
550 (avr_normalize_condition): Likewise.
551 (compare_eq_p): Likewise.
552 (out_shift_with_cnt): Likewise.
553 (const_int_pow2_p): Likewise.
554 (output_reload_inhi): Prototype declaration changed.
555
556 * config/avr/avr.c: (debug_hard_reg_set): Prototype declared.
557 (ldi_reg_rtx): New. rtx for r31.
558 (avr_init_stack): Initialize as "__stack".
559 (function_prologue): Use it.
560 Replace all TARGET_ENHANCED with AVR_ENHANCED.
561 (avr_mcu_name): Initialize as "avr2".
562 (avr_enhanced_p, avr_mega_p): New variables.
563 (mcu_types, avr_override_options): Handle all known MCU types.
564 Also handle avr1 (only preprocess, assemble and link).
565 (print_operand): Using of `%K' in output template removed.
566 (out_movqi_r_mr): Optimized.
567 (out_movhi_r_mr): Likewise.
568 (output_movqi): New function.
569 (output_movhi): Likewise.
570 (out_movsi_r_mr): Optimized.
571 (output_movsisf): Compute insn length for `adjust_insn_length'
572 (out_movqi_mr_r): Optimized.
573 (out_movhi_mr_r): Optimized.
574 (adjust_insn_length): Use output_movsisf, output_movqi,
575 output_movhi for insn length adjusting.
576 (reg_unused_after): Use dead_or_set_p.
577 (preferred_reload_class): Now havn't any restriction.
578 (reg_was_0): New function.
579 (io_address_p): Likewise.
580 (const_int_pow2_p): Likewise.
581 (output_reload_inhi): Likewise.
582 (output_reload_insisf): Likewise.
583
584 * config/avr/avr.h (MULTILIB_DEFAULTS): Define.
585 (LIB_SPEC): Use -lc for all supported devices.
586 (LIBGCC_SPEC): Use -lgcc for all supported devices.
587 (AVR_MEGA): Define as avr_mega_p.
588 (AVR_ENHANCED): New, define as avr_enhanced_p.
589 (TARGET_SWITCHES): Remove -menhanced, now handled by -mmcu=...
590 (CPP_SPEC, LINK_SPEC): Handle all known MCU types.
591 (CRT_BINUTILS_SPECS): Handle all known MCU types.
592 Rename gcrt1-*.o to make file names unique on 8.3 filesystems.
593 (EXTRA_SPECS): Add CPP_AVR[1-5]_SPEC.
594 (ASM_SPEC): Pass -mmcu=... to the assembler.
595 Change all -DAVR_* to -D__AVR_*__.
596 (INIT_TARGET_OPTABS), config/avr/libgcc.S:
597 Rename library functions to start with two underscores.
598 (ASM_OUTPUT_COMMON): Outputs `.comm VAR,VAR-SIZE,1' to avoid
599 alignment.
600 (ASM_WEAKEN_LABEL): Declared for __attribute__((weak)).
601 (SUPPORTS_WEAK): Likewise.
602 (LDI_REG_REGNO): New. Register r31 will be used as temporary
603 register for loading constants to r0-r14.
604
605 * config/avr/avr.md: Replace all TARGET_ENHANCED with
606 AVR_ENHANCED.
607 (*mov_r_sp): Removed. Handled by output_movhi.
608 (*mov_sp_r): Likewise.
609 (*mov_sp_r_no_interrupts): Likewise
610 (*mov_sp_r_tiny): Likewise.
611 (*movqi): Use output_movqi.
612 (*reload_inqi): New.
613 (*movhi): Use output_movhi.
614 (*reload_inhi): New.
615 (*negsi2): Optimized.
616 (*negsf2): Likewise.
617 Added peepholes (define_peephole2) for loading constants to r0-r14
618 and for using `cpse' command.
619
620 * config/avr/libgcc.S: Rename library functions to start with two
621 underscores.
622 Add support for enhanced core.
623 (_moqhi3): Fix typo, now _modqi3.
624 (__divsi_raw): Use __zero_reg__ as loop counter, smaller by 1 word.
625 (__prologue_saves__): Remove test for stack adjust by 0.
626 (__tablejump__): New.
627
628 * config/avr/t-avr: Build libgcc2 with -mcall-prologues.
629 Add multilib support.
630
20bd7bfa
JW
631Tue Aug 29 15:17:54 EDT 2000 John Wehle (john@feith.com)
632
633 * loop.c (prescan_loop): Don't check unknown_address_altered
634 when deciding if insert_loop_mem is safe. Add BLKmode MEMs
635 to loop_store_mems as necessary.
636 (loop_invariant_p): Don't check unknown_address_altered
637 or unknown_constant_address_altered.
638
76f941a8
DA
6392000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca>
640
641 * vax.md (sltu, sgeu): Delete sltu and sgeu insn patterns.
642
2c8f0515
ZW
6432000-08-29 Zack Weinberg <zack@wolery.cumb.org>
644
645 * cpperror.c (print_file_and_line): If line is (unsigned int)-1,
646 print just the filename.
647 * cpplex.c (_cpp_run_directive): Add additional argument, the
648 name to give the synthetic buffer. This defaults to
649 translated "<command line>".
650 * cpplib.c (cpp_define, cpp_undef, cpp_assert, cpp_unassert):
651 Adjust to match.
652 (_cpp_define_builtin): New function.
653 * cppinit.c (initialize_builtins): Use _cpp_define_builtin.
654 * cpphash.h: Update prototypes.
655
656 * tradcpp.c (main): Process -D and -U simultaneously, in the
657 order they appeared on the command line.
658
6ad79f1b
KG
6592000-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
660
661 * c-decl.c (define_label): Call warning_with_file_and_line and
662 error_with_file_and_line instead of plain warning or error.
663
664 * c-parse.in (label): Use save_filename/save_lineno to ensure
665 correct values for calls to define_label.
666
4361b41d
MM
6672000-08-29 Mark Mitchell <mark@codesourcery.com>
668
669 * calls.c (expand_call): Don't create a VAR_DECL just to throw it
670 away.
671 * expr.c (expand_expr, case TARGET_EXPR): Don't call
672 mark_addressable.
673 * tree.h (get_file_function_name): Remove two duplicate
674 declarations.
675
abf9af02
KH
6762000-08-28 Kazu Hirata <kazu@hxi.com>
677
dc478a5d
KH
678 * tree.c: Fix formatting.
679
abf9af02
KH
680 * xcoffout.c: Fix formatting.
681
5f632b5e
JM
6822000-08-28 Jason Merrill <jason@redhat.com>
683
684 * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer.
685
6862000-08-28 Daniel Berlin <dberlin@redhat.com>
687
688 * dwarf2out.c (dwarf2out_finish): Don't bother calling
689 break_out_includes if it won't do anything.
690
38323cc3
RH
6912000-08-28 Richard Henderson <rth@cygnus.com>
692
693 * reload.c (push_secondary_reload): Revert 2000-08-16 change.
694 (find_reloads): Likewise.
695 * config/alpha/alpha.md (reload_inqi): Revert 2000-08-11 change.
696 (reload_inhi): Likewise.
697
e1ff012c
RH
6982000-08-28 Richard Henderson <rth@cygnus.com>
699
700 * config/i386/i386.c: Don't error on EXTRA_CONSTRAINT defined.
701 (call_insn_operand): Don't expect a surrounding mem.
702 (constant_call_address_operand): Likewise.
703 * config/i386/i386.h (PREDICATE_CODES): Update.
704 * config/i386/i386.md (call patterns): Move the match_operand
705 for the call destination inside the mem.
706
c2cba7a9
RH
7072000-08-28 Richard Henderson <rth@cygnus.com>
708
709 * local-alloc.c (requires_inout): Don't use reserved range for
710 EXTRA_CONSTRAINTS; use anything not matched by REG_CLASS_FROM_LETTER.
711 * recog.c (asm_operand_ok): Likewise.
712 (preprocess_constraints, constrain_operands): Likewise.
713 * regclass.c (record_reg_classes): Likewise.
714 * reload.c (find_reloads): Likewise.
715 * reload1.c (maybe_fix_stack_asms): Likewise.
716 (reload_cse_simplify_operands): Likewise.
717 * stmt.c (expand_asm_operands): Likewise.
718
719 * md.texi: Update constraints documentation.
720 * tm.texi (EXTRA_CONSTRAINT): Update.
721
5f632b5e
JM
7222000-08-28 Daniel Berlin <dberlin@redhat.com>
723
724 * dwarf2out.c (DIE_LABEL_PREFIX): Remove leading "__".
725 (print_die): If we don't know the offset of the
726 target die, try the symbol. Add a trailing newline.
727 (reverse_all_dies): New fn.
728 (dwarf2out_finish): Call it.
729 (break_out_includes): Reorganize for clarity.
730 (add_sibling_attributes): Don't call reverse_die_lists.
731 (output_comp_unit): Rename from output_comdat_comp_unit. Use for
732 primary CU, too.
733 * flags.h: Add flag_eliminate_dwarf2_dups.
734 * toplev.c (f_options): Support -feliminate-dwarf2-dups.
735
5de0e8d4
JM
7362000-08-28 Jason Merrill <jason@redhat.com>
737
5f632b5e
JM
738 * dwarf2.h (DW_TAG_GNU_BINCL, DW_TAG_GNU_EINCL): New tags.
739 * dwarf2out.c: #include "md5.h".
740 (DIE_LABEL_PREFIX): New macro.
741 (dw_val_struct): Add 'external' flag to val_die_ref.
742 (add_AT_die_ref, AT_ref): Adjust.
743 (AT_ref_external, set_AT_ref_external): New fns.
744 (build_abbrev_table): Call set_AT_ref_external.
745 (value_format): Call AT_ref_external.
746 (die_struct): Add die_symbol field.
747 (new_die): Clear it.
748 (dwarf_tag_name): Handle BINCL/EINCL.
749 (dwarf2out_start_source_file): Add BINCL DIE.
750 (dwarf2out_end_source_file): Add EINCL DIE.
751 (push_new_compile_unit, pop_compile_unit, clear_die_sizes): New fns.
752 (loc_checksum, attr_checksum, die_checksum): New fns.
753 (is_type_die, is_comdat_die, is_symbol_die): New fns.
754 (compute_section_prefix, assign_symbol_names): New fns.
755 (gen_internal_sym, output_die_symbol, output_symbolic_ref): New fns.
756 (output_die): Call output_die_symbol and AT_ref_external.
757 (output_comdat_comp_unit): New fn, split out from...
758 (dwarf2out_finish): ...here. Also call add_sibling_attributes for
759 secondary CUs.
760 (output_pubnames, output_aranges): Abort if we see entries from
761 secondary CUs.
762 * toplev.h: Declare file_name_nondirectory.
763 * toplev.c (file_name_nondirectory): New fn, moved from C++ frontend.
764 (rest_of_type_compilation): Call dwarf2out_decl if at toplevel.
765 (debug_start_source_file): Call dwarf2out_start_source_file
766 regardless of debug verbosity.
767 (debug_end_source_file): Similarly.
768 * tree.h: Declare clean_symbol_name.
769 * tree.c (clean_symbol_name): Split out from...
770 (get_file_function_name_long): ...here.
771
5de0e8d4
JM
772 * dwarf2out.c (new_loc_descr): Use calloc.
773 (splice_child_die): Remove the die from the right parent.
774 (gen_struct_or_union_die): Don't add AT_name to a specification DIE.
775
04324727
RK
776Mon Aug 28 19:02:13 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
777
778 * toplev.c (decode_g_option): Don't give warning for unknown -g
779 option; return 0 instead.
780 (main): If -g option is not recognized by front end or
781 language-independent code, give warning.
782
9e3e266c
GM
7832000-08-28 Greg McGary <greg@mcgary.org>
784
785 * config/i386/i386-protos.h (ix86_expand_compare): Add extern decl.
786 * config/i386/i386.c (ix86_expand_compare): Remove `static'.
787 * config/i386/i386.md (trap, conditional_trap): New insn & expand.
788
a0bff95f
GM
7892000-08-27 Greg McGary <greg@mcgary.org>
790
791 * cpplex.c (parse_string): Don't look for backslash
792 before first char in `namebuf'.
793 * loop.c (strength_reduce): Skip NOTEs.
794
edb4c415
JM
7952000-08-27 Jason Merrill <jason@redhat.com>
796
797 * c-decl.c (duplicate_decls): Don't set TREE_STATIC or clear
798 DECL_EXTERNAL on a local extern. Don't set DECL_IGNORED_P or
799 TREE_ASM_WRITTEN, either.
800 (finish_decl): Adjust.
801
6e88e75c
PT
8022000-08-28 Philipp Thomas <pthomas@suse.de>
803
804 * ABOUT-GCC-NLS: Remove gettext patches from Paul Eggert as
805 they have been incorporated into the gettext CVS. Change the text to
806 reflect the current status of NLS. Add instructions for accessing
807 the gettext CVS and add the patch from Martin v. Loewis.
808
e53ca51f
GK
8092000-08-27 Geoff Keating <geoffk@cygnus.com>
810
811 * config/rs6000/rs6000.md (movdi_internal64+5): Make SUBREG-safe
812 by using gen_lowpart_common.
813 (movdi_internal64+6): Likewise.
814
a0a6fdc8
AO
8152000-08-26 Alexandre Oliva <aoliva@redhat.com>
816
1b2dd04a
AO
817 * tm.texi (FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION):
818 Document.
819
a0a6fdc8
AO
820 * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Remap register
821 numbers to the ranges used by GDB.
822
26a110f5
RH
8232000-08-25 Richard Henderson <rth@cygnus.com>
824
825 * config/ia64/ia64.h (struct machine_function): Add n_varargs.
826 * config/ia64/ia64.c (ia64_compute_frame_size): Use it.
827 (ia64_expand_prologue): Likewise.
828 (ia64_setup_incoming_varargs): Set it. Properly skip the current
829 argument for stdargs.
830
ecff20d4
JM
8312000-08-25 Jason Merrill <jason@redhat.com>
832
833 * integrate.c (expand_inline_function): Pull out the original decl.
834
caa511fd
JW
8352000-08-25 Jim Wilson <wilson@cygnus.com>
836
d51ff7cb
JW
837 * cse.c (cse_insn): Don't pass label subtraction to force_const_mem.
838
caa511fd
JW
839 * function.c (gen_mem_addressof): Clear MEM_ALIAS_SET if no decl.
840
9a56f4f6
GM
8412000-08-25 Greg McGary <greg@mcgary.org>
842
843 * flow.c (dump_edge_info): Use ARRAY_SIZE.
844 * config/alpha/alpha.c (alpha_expand_block_move): Likewise.
845
31448271
RE
8462000-08-25 Richard Earnshaw <rearnsha@arm.com>
847
848 * arm.h (STRUCT_VALUE): Define to 0, not NULL.
849
b949ea8b
JW
850Fri Aug 25 12:52:49 EDT 2000 John Wehle (john@feith.com)
851
852 * i386.c (ix86_find_base_term): New.
853 * i386-protos.h (ix86_find_base_term): Prototype.
854 * i386.h (FIND_BASE_TERM): Define.
855 * alias.c (find_base_term): Use it.
856 * tm.texi (FIND_BASE_TERM): Document it.
857
858 * alias.c (true_dependence, write_dependence_p): Unchanging
859 memory can't conflict with non-unchanging memory.
860
861 * alias.c (memrefs_conflict_p): A BLKmode reference
862 to a symbol (or CONST_INT address) always conflicts
863 with a reference to another symbol.
864
343b7260
JM
8652000-08-25 Joseph S. Myers <jsm28@cam.ac.uk>
866
867 * c-common.c (time_char_table): Don't allow width and flags with
868 "z" format.
869
1f9124e4
JJ
8702000-08-25 Jakub Jelinek <jakub@redhat.com>
871
872 * config/i386/i386.c (ix86_expand_branch): Treat GE and GEU the same
873 way as LT and LTU when the second operand has 0 in low word.
874
6057c0e6
MH
8752000-08-26 Michael Hayes <mhayes@cygnus.com>
876
135ebc36
MH
877 * basic-block.h (struct loop): Rename `exits' field to
878 `exit_edges'. Add `entry_edges' and `num_entries' fields.
879
880 * flow.c (flow_loop_exit_edges_find): Rename from flow_loop_exits_find.
881 (flow_loop_entry_edges_find): Add.
882 (flow_edge_list_print): Rename from flow_exits_print.
883 (flow_loops_find): Call flow_loop_entry_edges_find.
884 (flow_loop_dump): Dump entry_edges list.
885 (flow_loops_free): Free entry_edges.
886
8872000-08-26 Michael Hayes <mhayes@cygnus.com>
888
6057c0e6
MH
889 * loop.c (loop_dump_aux, debug_loop): New functions.
890 (LOOP_BLOCK_NUM_1, LOOP_BLOCK_NUM, LOOP_INSN_UID): New macros.
891
892 * flow.c (flow_loops_dump): Add callback parameter.
893 (flow_loop_dump): Add callback parameter and call it. Move
894 loop note debugging code to loop_dump_aux.
895
896 * basic-block.h (flow_loop_dump): Add callback parameter
897 (flow_loops_dump): Likewise.
898
899 * toplev.c (rest_of_compilation): Add NULL callback function pointer
900 to call to flow_loops_dump.
901
028fc6e7
MH
9022000-08-26 Michael Hayes <mhayes@cygnus.com>
903
904 * loop.c (count_loop_regs_set): Replace start and end arguments
905 with loop argument. All callers udated.
906
371502a8
MH
9072000-08-26 Michael Hayes <mhayes@cygnus.com>
908
909 * loop.c (constant_high_bytes): Delete.
910
e375c819
MH
9112000-08-26 Michael Hayes <mhayes@cygnus.com>
912
913 * loop.c (prescan_loop): Move checks for NOTE_INSN_LOOP_CONT
914 and NOTE_INSN_LOOP_VTOP to...
915 (find_and_verify_loops) ...here.
916
036cfb36
AO
917Fri Aug 25 04:21:13 2000 Alexandre Oliva <aoliva@redhat.com>
918
919 * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Define default.
920 (fini_dummy, init_dummy): Use it.
921
c2e20542
NB
922Fri 25-Aug-2000 08:03:27 BST Neil Booth <NeilB@earthling.net>
923
924 * cpplex.c (is_macro_disabled): Caller has already checked
925 that we're not a preprocessed file.
926
83bab8db
MM
9272000-08-24 Mark Mitchell <mark@codesourcery.com>
928
929 * Makefile.in (C_AND_OBJC_OBJS): Remove c-iterate.o.
930 (c-iterate.o): Remove target.
931 * gcc/c-common.h (enum rid): Remove RID_ITERATOR.
932 * gcc/c-decl.c (init_decl_processing): Remove call to init_iterators.
933 (finish_decl): Don't handle iterators.
934 (grokdeclarator): Likewise.
935 * gcc/c-parse.gperf: Remove __iterator and __iterator__ keywords.
936 * gcc/c-gperf.h: Regenerated.
937 * gcc/c-iterate.c: Removed.
938 * gcc/c-lex.c (init_lex): Don't handle iterators.
939 * gcc/c-parse.in (primary): Remove pop_iterator_stack call.
940 (compstmt_primary_start): Remove push_iterator_stack call.
941 (stmt): Don't allow iterator statements. Replace iterator_expand
942 with expand_expr_stmt.
943 (all_iter_stmt): Remove.
944 (all_iter_stmt_simple): Likewise.
945 (all_iter_stmt_with_decl): Likewise.
946 * gcc/c-tree.h (ITERATOR_P): Remove.
947 (ITERATOR_BOUND_P): Likewise.
948 (init_iterators): Remove declaration.
949 (iterator_expand): Likewise.
950 (iterator_for_loop_start): Likewise.
951 (iterator_for_loop_end): Likewise.
952 (iterator_for_loop_record): Likewise.
953 (push_iterator_stack): Likewise.
954 (pop_iterator_stack): Likewise.
955 * gcc/c-typeck.c (decl_constant_value): Don't check ITERATOR_P.
956 (readonly_warning): Likewise.
957 * gcc/tree.h (ITERATOR_BOUND_P): Don't mention it.
958
aee3c6b0
JW
9592000-08-24 Jim Wilson <wilson@cygnus.com>
960
961 * c-common.c (decl_attributes, case A_ALIGN): Revert last change.
962 Copy type in a TYPE_DECL, just like pushdecl does.
963
58d8c980
RH
9642000-08-24 Richard Henderson <rth@cygnus.com>
965
966 * toplev.c (main): Enable flag_reorder_blocks at -O2.
967
054f5e69
ZW
9682000-08-24 Zack Weinberg <zack@wolery.cumb.org>
969
970 * ggc-page.c (alloc_page): If HAVE_MMAP_ANYWHERE and we're
971 asked for one page, allocate GGC_QUIRE_SIZE of them and put
972 the extras on the free list.
973 (release_pages): Clean up.
974 (ggc_set_mark): Don't adjust G.allocated here...
975 (sweep_pages): ... do it here.
976
9772000-08-24 Zack Weinberg <zack@wolery.cumb.org>
978
979 * cppfiles.c (read_include_file): Rearrange initializations.
980
0551c32d
RH
9812000-08-24 Richard Henderson <rth@cygnus.com>
982
983 * stmt.c (expand_asm_operands): Treat EXTRA_CONSTRAINT like g or X.
984
985 * config/ia64/ia64-protos.h: Update.
986 * config/ia64/ia64.c (gr_register_operand): New.
987 (fr_register_operand, grfr_register_operand): New.
988 (gr_nonimmediate_operand, grfr_nonimmediate_operand): New.
989 (grfr_reg_or_8bit_operand): New.
990 (gr_reg_or_0_operand): Rename from reg_or_0_operand and
991 use gr_register_operand.
992 (gr_reg_or_5bit_operand, gr_reg_or_6bit_operand): Likewise.
993 (gr_reg_or_8bit_operand, gr_reg_or_8bit_adjusted_operand): Likewise.
994 (gr_reg_or_8bit_and_adjusted_operand): Likewise.
995 (gr_reg_or_14bit_operand, gr_reg_or_22bit_operand): Likewise.
996 (fr_reg_or_fp01_operand): Likewise.
997 (not_postinc_memory_operand): New.
998 (ia64_split_timode): Remove unused variables.
999 (rtx_needs_barrier): Check arguments to cmpxchg.
1000 (builtin_description): Remove.
1001 (bdesc_2argsi, bdesc_2argdi): Remove.
1002 (ia64_init_builtins): Declare all builtins directly.
1003 (ia64_expand_fetch_and_op): Rewrite to be called from
1004 ia64_expand_builtin directly. Use expand_binop and co.
1005 (ia64_expand_op_and_fetch): Likewise.
1006 (ia64_expand_compare_and_swap): Likewise.
1007 (ia64_expand_binop_builtin): Remove.
1008 (ia64_expand_lock_test_and_set): New.
1009 (ia64_expand_lock_release): New.
1010 (ia64_expand_builtin): Use them.
1011 * config/ia64/ia64.h (CONSTRAINT_OK_FOR_S): New.
1012 (EXTRA_CONSTRAINT): Use it.
1013 (PREDICATE_CODES): Update.
1014 * config/ia64/ia64.md (*): Use gr_register_operand and co.
1015 (mf): Indicate that we set memory as well as use it.
1016 (fetchadd_acq_si): Show memory being modified as well.
1017 (fetchadd_acq_di, cmpxchg_acq_si, cmpxchg_acq_di): Likewise.
1018 (val_compare_and_swap_si, val_compare_and_swap_di): Remove.
1019 (lock_test_and_set_si, lock_test_and_set_di): Remove.
1020 (fetch_and_add_si, fetch_and_sub_si, fetch_and_or_si): Remove.
1021 (fetch_and_and_si, fetch_and_xor_si, fetch_and_nand_si): Remove.
1022 (fetch_and_add_di, fetch_and_sub_di, fetch_and_or_di): Remove.
1023 (fetch_and_and_di, fetch_and_xor_di, fetch_and_nand_di): Remove.
1024 (add_and_fetch_di, sub_and_fetch_di, or_and_fetch_di): Remove.
1025 (and_and_fetch_di, xor_and_fetch_di, nand_and_fetch_di): Remove.
1026 (add_and_fetch_si, sub_and_fetch_si, or_and_fetch_si): Remove.
1027 (and_and_fetch_si, xor_and_fetch_si, nand_and_fetch_si): Remove.
1028 * config/ia64/ia64intrin.h (*): Cast result to the appropriate
1029 return type. Pretty print definitions.
1030
7c866fb5
JW
10312000-08-24 Jim Wilson <wilson@cygnus.com>
1032
1033 * config/ia64/ia64.md (movdi): Don't call gen_movdi_symbolic if
1034 we have a SYMBOL_REF with SYMBOL_REF_FLAG set.
1035
40e8cc95
JM
10362000-08-24 Jason Merrill <jason@redhat.com>
1037
1038 * dwarf2out.c (AT_flag, AT_int, AT_unsigned, AT_string, AT_ref,
1039 AT_loc, AT_addr, AT_lbl): Abort on unsuitable input.
1040 (get_AT_low_pc, get_AT_hi_pc, get_AT_string, get_AT_flag,
1041 get_AT_unsigned, get_AT_ref): Don't call them if get_AT fails.
1042
b6a1cbae
GM
10432000-08-24 Greg McGary <greg@mcgary.org>
1044
1045 * optabs.c (init_optabs): Initialize fixtab, fixtrunctab, floattab,
1046 and extendtab within their proper array boundaries.
1047 * emit-rtl.c (init_emit_once): Pass `const_tiny_rtx' with bounds
1048 for the entire array.
1049
1050 * config/arm/arm.c (arm_override_options): Use ARRAY_SIZE.
1051 * config/alpha/alpha.c (alpha_lookup_xfloating_lib_func): Likewise.
1052 * config/avr/avr.c (order_regs_for_local_alloc): Likewise.
1053 * config/fr30/fr30.c (fr30_print_operand): Likewise.
1054 * config/i386/dgux.c (output_options): Likewise.
1055 * config/i386/dgux.h (ASM_FILE_START): Likewise.
1056 * config/m88k/m88k.c (output_options): Likewise.
1057 * config/m88k/m88k.h (ASM_FILE_START): Likewise.
1058 * config/mcore/mcore.c (mcore_output_inline_const_forced,
1059 layout_mcore_frame, handle_structs_in_regs): Likewise.
1060 * config/mips/mips.c (output_block_move): Likewise.
1061 * config/rs6000/rs6000.c (rs6000_override_options,
1062 rs6000_file_start): Likewise.
1063 * config/sparc/sparc.c (sparc_add_gc_roots): Likewise.
1064 * fixinc/fixfixes.c (FIX_TABLE_CT): Likewise.
1065 * fixinc/fixtests.c (TEST_TABLE_CT): Likewise.
1066 * builtins.c (expand_builtin_setjmp): Likewise.
1067 * expr.c (safe_from_p): Likewise.
1068 * flow.c (life_analysis): Likewise.
1069 * fold-const.c (size_int_type_wide): Likewise.
1070 * gcc.c (translate_options, init_spec, set_spec, main): Likewise.
1071 * genattrtab.c (make_length_attrs): Likewise.
1072 * genopinit.c (gen_insn): Likewise.
1073 * genrecog.c (NUM_KNOWN_PREDS, NUM_SPECIAL_MODE_PREDS): Likewise.
1074 * global.c (global_alloc): Likewise.
1075 * local-alloc.c (find_free_reg): Likewise.
1076 * mips-tdump.c (print_symbol): Likewise.
1077 * mips-tfile.c (parse_def, parse_input): Likewise.
1078 * reload1.c (NUM_ELIMINABLE_REGS): Likewise.
1079 * stmt.c (expand_nl_goto_receiver): Likewise.
1080 * stor-layout.c (set_sizetype): Likewise.
1081 * varasm.c (decode_reg_name): Likewise.
1082 * toplev.c (decode_f_option, decode_W_option,
1083 set_target_switch, print_switch_values): Likewise.
1084 (NUM_ELEM): Remove macro.
1085 (display_help, main): s/NUM_ELEM/ARRAY_SIZE/
1086
5b47282c
GM
10872000-08-24 Greg McGary <greg@mcgary.org>
1088
1089 * tree.h (enum tree_index): New member `TI_MAIN_IDENTIFIER'.
1090 (MAIN_NAME_P, main_identifier_node): New macros.
1091 * c-common.c (c_common_nodes_and_builtins): Init main_identifier_node.
1092 * c-decl.c (start_decl, grokdeclarator, start_function,
1093 store_parm_decls, finish_function): Use MAIN_NAME_P.
1094 * config/avr/avr.c (function_prologue, function_epilogue): Likewise.
1095 * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise.
1096 * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise.
1097 * config/pdp11/pdp11.c (output_function_prologue): Likewise.
1098
87ae0c74
GM
10992000-08-24 Greg McGary <greg@mcgary.org>
1100
1101 * cppfiles.c (actual_directory): Don't write beyond `dir'
1102 when it contains "".
1103 * real.c (asctoeg): Stay within bounds of etens[][].
1104
b148aeaa
KG
11052000-08-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1106
1107 * dependence.c (dependence_string, direction_string,
1108 dump_one_node, dump_node_dependence): Hide unused identifiers.
1109 (get_low_bound, normalize_coefficients): Match definition to
1110 static prototype.
1111 (get_one_coefficient): Initialize variables `value0_is_idx' and
1112 `value1_is_idx'.
1113 (ziv_test, gcd_test): Mark parameters with ATTRIBUTE_UNUSED.
1114 (ziv_test): Delete variable `idx', use parameter `sub' instead.
1115 (direction_merge): Avoid automatic aggregate initialization.
1116 (have_dependence_p): Use `src' not `dest' to set `src_idx'.
1117 Initialize variables `dest_idx' and `src_idx'.
1118 (end_dependence_analysis): Avoid C89 style function definition.
1119
4894ecce
JM
11202000-08-24 Joseph S. Myers <jsm28@cam.ac.uk>
1121
1122 * c-common.c (time_char_table): Don't allow width with %F.
1123 (check_format_info): Don't allow "Z" length with scanf.
1124
2ab99c46
GDR
11252000-08-24 Gabriel Dos Reis <gdr@codesourcery.com>
1126
1127 * diagnostic.c (finish_diagnostic): Define.
1128 (output_do_printf): Use wrap_text instead of output_add_string.
1129 (default_print_error_function): Avoid embedded '\n'.
1130
1131 * diagnostic.h (flush_diagnostic_buffer): Declare.
1132
335e59bd
AO
11332000-08-23 Alexandre Oliva <aoliva@redhat.com>
1134
1135 * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'.
1136
d9fe00bb
HPN
11372000-08-23 Hans-Peter Nilsson <hp@axis.com>
1138
1139 * Makefile.in (GCC_PASSES): Add specs.
1140
b97644fc
JW
11412000-08-23 Jim Wilson <wilson@cygnus.com>
1142
1143 * frame.h (IA64_UNW_EHANDLER, IA64_UNW_UHANDLER): New.
1144 * config/ia64/frame-ia64.c (__get_personality): Return zero if neither
1145 EHANDLER nor UHANDLER bit is set.
1146 (__get_except_table): Likewise.
1147
64a7723d
NC
11482000-08-23 Nick Clifton <nickc@redhat.com>
1149
02689e18
NC
1150 * config/arm/lib1funcs.asm: Replace upper case condition codes
1151 with lower case versions.
1152
64a7723d
NC
1153 * config/arm/arm.h (STRUCT_VALUE): Define.
1154 (STRUCT_VALUE_REGNUM): Delete.
1155
bbdac7d0
ZW
11562000-08-23 Zack Weinberg <zack@wolery.cumb.org>
1157
1158 * cpphash.h (IN_I): New flag for directive table.
1159 * cpplib.c (DIRECTIVE_TABLE): Mark #define, #undef, #ident, and
1160 #pragma with IN_I.
1161 (_cpp_check_directive): If -fpreprocessed, execute directives
1162 marked with IN_I. Issue no warnings in this case.
1163 * cpplex.c (_cpp_get_token): Expand no macros if -fpreprocessed.
1164
d8eceea4
JM
11652000-08-23 Joseph S. Myers <jsm28@cam.ac.uk>
1166
1167 * c-common.c (print_char_table): Allow 'I' flag with %d, %i and
1168 %u.
1169 (check_format_info): Support printf 'I' flag; warn about it with
1170 -pedantic.
1171
e04c2d6c
RE
11722000-08-23 Richard Earnshaw (rearnsha@arm.com)
1173
1174 * arm.c (arm_expand_prologue): Ensure that the stack-adjustment
1175 barrier can't be ignored by the alias analysis code.
1176
f4306baa
EZ
11772000-08-12 Eli Zaretskii <eliz@is.elta.co.il>
1178
1179 * fixinc/inclhack.def (sysv68_string): Fix the Sed script so it
1180 works inside fixincl.
1181
95d0e5f1
AO
1182Wed Aug 23 04:55:48 2000 Alexandre Oliva <aoliva@redhat.com>
1183
1184 * simplify-rtx.c (simplify_rtx): Don't pass VOIDmode to
1185 simplify_relational_operation() unless both operands are of
1186 VOIDmode.
1187 * cse.c (fold_rtx): Likewise.
1188
55efb413
JW
1189Tue Aug 22 23:53:27 EDT 2000 John Wehle (john@feith.com)
1190
1191 * rtlanal.c (rtx_unstable_p): The pic register is stable
1192 (within one function) and the actual rtx should be used
1193 when checking the registers.
1194 (rtx_addr_can_trap_p): Pic memory addresses can't trap.
1195
1196 * alias.c (true_dependence, write_dependence_p): Fix
1197 bug in previous patch.
1198
1199 * i386.c (ix86_GOT_alias_set): New.
1200 (legitimize_pic_address): Use it.
1201
1202 * rtlanal.c (rtx_unstable_p): An unchanging MEM is
1203 only stable if its address is stable.
1204 (rtx_varies_p): An unchanging MEM can't vary if
1205 its address doesn't vary.
1206
aac625ac
KG
12072000-08-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1208
1209 * c-parse.in (unop +): Restrict -Wtraditional warnings to user code.
1210
62432849
DA
12112000-08-22 J. David Anglin <dave@hiauly1.hia.nrc.ca>
1212
1213 * vax.h (ASM_SPEC): Pass `-J' to assembler.
1214 * x-vax-gcc: New file for bootstrapping with gcc.
1215 * x-vax: Use X_CFLAGS rather than X_CPPFLAGS to pass `-J'.
1216 * configure.in: Use x-vax-gcc with gcc.
1217 * configure: Rebuilt.
1218
1eb994b7
R
1219Tue Aug 22 21:21:05 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1220
1221 * toplev.c (rest_of_compilation): Rebuild label notes after
1222 post-reload splitting pass if new labels have been created.
1223
f6a542de
GDR
12242000-08-22 Gabriel Dos Reis <gdr@codesourcery.com>
1225
1226 * diagnostic.h (output_buffer_state): New macro.
1227 * diagnostic.c (diagnostic_for_decl, sorry,
1228 default_print_error_function, output_do_verbatim,
1229 report_diagnostic, report_problematic_module): Use it.
1230 (wrap_text): Tweak.
1231 (output_format): Use wrap_text instead of maybe_wrap_text.
1232
888e552f
NC
12332000-08-22 Nick Clifton <nickc@redhat.com>
1234
1235 * config/arm/lib1funcs.asm (ARM_DIV_MOD_BODY): New macro.
1236 Common code for ARM divide and modulus functions.
1237 (THUMB_DIV_MOD_BODY): New macro. Thumb equivalent of
1238 ARM_DIV_MOD_BODY.
1239 (FUNC_END): New macro: Common code at the end of the division and
1240 modulo functions.
1241 (THUMB_FUNCTION_START): New macro: Common code at the start of
1242 Thumb functions.
1243 (__divsi3, __udivsi3, __modsi3, __umodsi3): Use new macros.
1244
89e43e33
KK
1245Tue Aug 22 20:34:52 2000 Kaz Kojima <kkojima@rr.iij4u.or.jp>
1246
1247 * config/sh/sh.md (cmpeqdi_t splitter): Fix a reverse testing.
1248
1249 * config/sh/sh.c (prepare_scc_operands): Apply force_reg to
1250 sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't
1251 const0_rtx.
1252
7405dc37
NC
12532000-08-22 Nick Clifton <nickc@redhat.com>
1254
1255 * config/arm/lib1funcs.asm (__umodsi3): Before performing any
1256 restorative additions, test for bottom bits of IP being set,
1257 rather than relying upon the RORs not matching.
1258 (__modsi3): Ditto.
1259
9861b0c9
DE
12602000-08-22 David Edelsohn <edelsohn@gnu.org>
1261
1262 * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or
60a3c181 1263 text_section() as appropriate instead of emitting text csect
9861b0c9
DE
1264 pseudo-op directly.
1265 (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment.
1266 (UNIQUE_SECTION): Define macro.
1267 (ASM_OUTPUT_SECTION_NAME): Define macro.
1268 * rs6000.c (rs6000_override_options): Disable -ffunction-sections
60a3c181 1269 on AIX if debugging and -fdata-sections always.
9861b0c9
DE
1270
12712000-08-22 Steven King <sxking@uswest.net>
df3a88f0
SK
1272
1273 * config/float-i386.h (LDBL_EPSILON): Remove __convert_long_double
1274 machinery.
1275 (LDBL_MAX): Same here.
1276
b578dbd7
RH
12772000-08-22 Richard Henderson <rth@cygnus.com>
1278
1279 * flow.c (tidy_fallthru_edge): Update b->end properly.
1280
d061bc1e
SC
12812000-08-22 Stan Cox <scox@redhat.com>
1282
60a3c181
RH
1283 * Makefile.in (OBJS): Add dependence.o.
1284 * dependence.c: New file.
1285
23d16877 12862000-08-22 Alexandre Oliva <aoliva@redhat.com>, John David Anglin <dave.anglin@nrc.ca>
3cadd778 1287
d60eab50
AO
1288 * calls.c (check_sibcall_argument_overlap_1): Adjust for
1289 ARGS_GROW_DOWNWARD.
1290 (check_sibcall_argument_overlap): Likewise.
1291
23d16877
AO
12922000-08-22 Alexandre Oliva <aoliva@redhat.com>
1293
3cadd778
AO
1294 * invoke.texi (SH Options): Document -m4-nofpu,
1295 -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd,
1296 -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace.
1297
23e4d028
JM
12982000-08-22 Joseph S. Myers <jsm28@cam.ac.uk>
1299
1300 * c-common.c (check_format_info): Give the 'some locales' warning
1301 for strftime %Ey rather than the unconditional 'only last 2 digits
1302 of year' one.
1303
bc82c87c
RH
13042000-08-22 Richard Henderson <rth@cygnus.com>
1305
1306 * alias.c (init_alias_analysis): Do not register
1307 struct_value_incoming_rtx or static_chain_rtx as pointing
1308 to stack memory.
1309
7db9125f
JL
1310Tue Aug 22 01:44:43 2000 Jeffrey A Law (law@cygnus.com)
1311
1312 * protoize.c (munge_compile_params): Fix typo and formatting buglets.
1313
b413d64d
GDR
13142000-08-22 Gabriel Dos Reis <gdr@codesourcery.com>
1315
1316 * diagnostic.h (report_problematic_module): Declare.
1317 * diagnostic.c (report_problematic_module): New function.
1318 (report_error_function): Tweak.
1319
c4a6c0f3
RK
1320Tue Aug 22 02:31:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1321
1322 * stmt.c (expand_goto_internal, fixup_gotos): Only check
1323 TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE.
1324
770a7feb
RH
13252000-08-21 Richard Henderson <rth@cygnus.com>
1326
1327 * flow.c (calculate_global_regs_live): Mark frame pointer live
1328 everywhere before reload.
1329
280db205
JW
13302000-08-21 Jim Wilson <wilson@cygnus.com>
1331
1332 * real.c (ereal_from_int, ereal_from_uint, significand_size): Handle
1333 INTEL_EXTENDED_IEEE_FORMAT.
1334 (toe64): Delete INTEL_EXTENDED_IEEE_FORMAT support. Unconditionally
1335 clear last two bytes of output FP value.
1336
94c21c17
GS
13372000-08-21 Graham Stott <grahams@cygnus.co.uk>
1338
1339 * config/ia64/ia64.h (REDO_SECTION_INFO_P): Change decl to DECL.
1340
6315f068
JJ
13412000-08-21 Jakub Jelinek <jakub@redhat.com>
1342
1343 * unroll.c (loop_find_equiv_value): If ret is modified between
1344 insn and loop_start, ret might not be equivalent to reg.
1345
5804a754
JM
13462000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
1347
1348 * c-common.c (init_dollar_format_checking,
1349 maybe_read_dollar_number, finish_dollar_format_checking): New
1350 functions.
1351 (dollar_arguments_used, dollar_arguments_count,
1352 dollar_first_arg_num, dollar_max_arg_used, dollar_format_warned):
1353 New variables.
1354 (check_format_info): Support $ formats for scanf and printf width
1355 and precision. Always increment format_chars to advance past the
1356 '*' of precision, not just when the format parameters are
1357 available to check.
1358
95adab8e
KG
13592000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1360
1361 * mips.c (block_move_loop, expand_block_move,
1362 function_arg_partial_nregs, save_restore_insns, function_prologue,
1363 mips_expand_prologue, RA_MASK): Avoid using the `U' integer
1364 constant suffix.
1365 (function_arg_advance, function_arg): Match argument to format
1366 specifier `%p'.
1367
49009afd
JL
13682000-08-21 Nix <nix@esperi.demon.co.uk>
1369
1370 * gcc.c (do_spec_1): Implement %j spec flag.
1371 Remove dead comment.
1372
1373 * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET.
60a3c181
RH
1374 * system.h (HOST_BIT_BUCKET): Default to "/dev/null".
1375 * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL".
1376 * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise.
49009afd 1377
60a3c181 1378 * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if
49009afd
JL
1379 writable) instead of hardcoded value.
1380
1381 * toplev.c (compile_file): Output to a file even if -fsyntax-only.
1382
60a3c181
RH
1383 * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill
1384 MKTEMP_EACH_FILE.
49009afd 1385
60a3c181 1386 * gcc.c (cc1_options): Do not process -o or run the assembler if
49009afd 1387 -fsyntax-only.
05a3d06e 1388 * objc/lang-spec.h: Likewise.
49009afd
JL
1389
13902000-08-21 Eli Zaretskii <eliz@is.elta.co.il>
dc13bad7
EZ
1391
1392 * fixinc/fixincl.c (fix_with_system): Pipe the output of
1393 "external" fixes through `cat', to avoid truncating the input
1394 file by redirection.
1395
cb694d2c
JJ
13962000-08-21 Jakub Jelinek <jakub@redhat.com>
1397
1398 * config/i386/i386.md (lea_general_1): Copy insn condition to split
1399 condition.
1400 (lea_general_2, lea_general_3): Likewise.
1401
cde6e684
KG
14022000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1403
1404 * c-decl.c (duplicate_decls, define_label): Restrict -Wtraditional
1405 warnings to user code.
1406
1407 * c-lex.c (readescape, yylex): Likewise.
1408
1409 * c-typeck.c (store_init_value, process_init_element): Likewise
1410 (c_expand_start_case): Format.
1411
120dc6cd
MR
14122000-08-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1413
1414 * mips/linux.h (LINK_SPEC): Use %(endian_spec).
1415
1416 * mips/mips.h: Change LINKER_ENDIAN_SPEC to ENDIAN_SPEC
1417 and linker_endian_spec to endian_spec.
1418 (ENDIAN_SPEC): Add %{EB} and %{EL}.
1419 (LINK_SPEC): Remove %{EB} and %{EL}.
1420 (ASM_SPEC): Likewise. Use %(endian_spec).
1421
93e2382f
JM
14222000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
1423
1424 * c-tree.h (flag_hosted): Move declaration from here...
1425 * c-common.h (flag_hosted): ... to here.
1426 (flag_noniso_default_format_attributes): New declaration.
1427 * c-decl.c (flag_noniso_default_format_attributes): New variable.
1428 (c_decode_option): Set it appropriately for options choosing
1429 language standard variant.
1430 * c-common.c (init_function_format_info): Only provide default
1431 format attributes if flag_hosted. Only provide the gettext
1432 formats if flag_noniso_default_format_attributes. Update
1433 comments.
1434 (check_format_info): Disable treatment of %a as a scanf flag in
1435 C99 mode.
1436
f3d360aa
JM
14372000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
1438
1439 * c-common.c (scan_char_table): Add 'w' to flags for all formats
1440 except 'n'.
1441 (check_format_info): Set 'wide' for scanf format widths. Warn for
1442 a zero scanf width. Make the check for writing into a constant
1443 object at the first level of indirection; at later levels, warn if
1444 any type qualifiers are encountered.
1445
e04ca094
JL
1446Mon Aug 21 07:41:12 2000 Jeffrey A Law (law@cygnus.com)
1447
e6ea3b5f
JL
1448 * reload.c (reload_inner_reg_of_subreg): New function broken out of
1449 push_reload.
1450 (push_reload): Use reload_inner_reg_of_subreg.
1451 (combine_reloads): Do not combine reloads if the input reload
1452 is a SUBREG in which the inner part will need reloading.
1453
e04ca094
JL
1454 * global.c (global_alloc): Avoid passing dumpfile argument to
1455 reload routines.
1456 * toplev.c (rest_of_compilation): Likewise.
1457 * reload.h (reload): Remove dumpfile argument. Callers changed.
1458 (debug_reload, debug_reload_to_stream): Move prototypes here.
1459 * rtl.h (reload): Remove dumpfile argument.
1460 * reload.c (debug_reload): Remove prototype.
1461 (debug_reload_to_stream): Likewise.
1462 * reload1.c: Avoid passing dumpfile around, rely on rtl_dump_file
1463 instead.
1464
24805e80
GDR
14652000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
1466
1467 * diagnostic.c (context_as_prefix): Export.
1468 (need_error_newline): Remove.
1469 (lang_diagnostic_starter, lang_diagnostic_finalizer): New objects.
1470 (error_module_changed, record_last_error_module,
1471 error_function_changed, record_last_error_function): New functions.
1472 (initialize_diagnostics): Default intialize
1473 lang_diagnostic_starter, lang_diagnostic_finalizer.
1474 (init_output_buffer): Tweak.
1475 (file_name_as_prefix): New function.
1476 (announce_function, default_print_error_function,
1477 report_error_function, set_diagnostic_context): Tweak.
1478
056b6841
RE
14792000-08-21 Richard Earnshaw <rearnsha@arm.com>
1480
1481 * flow.c (init_propagate_block_info): Handle SUBREG in a jump
1482 condition expression.
1483
7171b491
RH
14842000-08-20 Richard Henderson <rth@cygnus.com>
1485
1486 * flow.c (merge_blocks_nomove): Don't seek back past the bb note.
1487
3cb553b4
ZW
14882000-08-20 Zack Weinberg <zack@wolery.cumb.org>
1489
1490 * cppinit.c (cpp_init): Set global flag when called.
1491 (cpp_reader_init): Bomb out if cpp_init hasn't been called.
1492
9861b0c9 1493Sun Aug 20 01:41:35 2000 Dennis Chernoivanov <cdi@sparc.spb.su>
3cb553b4 1494
60a3c181
RH
1495 * cpplex.c (cpp_scan_buffer): Move `output_line_command' just
1496 before `process_directive' so that newlines won't be missed
1497 for directives.
1498 (cpp_printf): Increment `print->lineno' when newline is emitted.
3cb553b4 1499
60a3c181
RH
1500 * cppmain.c (cb_ident): Likewise.
1501 (cb_define): Likewise.
1502 (cb_undef): Likewise.
1503 (cb_include): Likewise.
1504 (cb_def_pragma): Likewise.
1505 (dump_macros_helper): Likewise.
3cb553b4 1506
9c668921
RH
15072000-08-20 Richard Henderson <rth@cygnus.com>
1508
1509 * config/ia64/ia64.c (emit_insn_group_barriers): Stop if ar.lc
1510 assigned before a loop.
1511
1512 * config/ia64/ia64.md (ashlsi3): Zero extend the shift count.
1513 (ashrsi3, lshrsi3): Likewise.
1514
4e1e6a01
GDR
15152000-08-20 Gabriel Dos Reis <gdr@codesourcery.com>
1516
1517 * c-lang.c: #include diagnostic.h
1518 (c_tree_printer): New function.
1519 (lang_init): Initialize lang_printer.
1520
1521 * Makefile.in (c-lang.o): Depends on diagnostic.h
1522
e2840263
GDR
15232000-08-20 Gabriel Dos Reis <gdr@codesourcery.com>
1524
1525 * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic.
1526
1527 * diagnostic.c (default_diagnostic_starter,
1528 default_diagnostic_finalizer): New functions.
1529 (diagnostic_for_asm, diagnostic_for_decl): Tweak.
1530 (pedwarn, pedwarn_with_file_and_line, error,
1531 error_with_file_and_line, fatal, warning,
1532 warning_with_file_and_line): Adjust call to report_diagnostic.
1533 (report_diagnostic): Rework.
1534 (set_diagnostic_context): New function.
1535
1536 * diagnostic.h (struct diagnostic_context): New data structure.
1537 (diagnostic_message, diagnostic_argument_list,
1538 diagnostic_file_location, diagnostic_line_location,
1539 diagnostic_is_warning, diagnostic_starter, diagnostic_finalizer,
1540 diagnostic_finalizer, diagnostic_auxiliary_data): New macros.
1541 (set_diagnostic_context): Declare.
1542 (report_diagnostic): Change prototype.
1543
574f7425
NB
1544Sun 20-Aug-2000 09:25:45 BST Neil Booth <NeilB@earthling.net>
1545
1546 * fix-header.c (main): Initialize cpplib.
1547
f1e42c81
MM
15482000-08-19 Michael Meissner <meissner@redhat.com>
1549
34c9e848
MM
1550 * ifcvt.c (find_if_block): Do not assume that a THEN block has any
1551 instructions in it before checking for indirect jumps.
1552
f1e42c81
MM
1553 * ifcvt.c (find_if_block): Do not consider a THEN block that ends
1554 in a indirect jump as a potential for conditional execution.
1555
1556 * d30v.h (d30v_init_expanders): Don't declare here.
1557 * d30v-protos.h (d30v_init_expanders): Declare here with a valid
1558 prototype.
1559
9d6c2770
NB
1560Sat 19-Aug-2000 21:11:45 BST Neil Booth <NeilB@earthling.net>
1561
1562 * cpp.texi: Add @section for assertions.
1563
e76d9acb
JW
1564Sat Aug 19 12:37:08 EDT 2000 John Wehle (john@feith.com)
1565
1566 * loop.c (scan_loop): Use CONST_CALL_P instead of
1567 checking for REG_LIBCALL / REG_RETVAL.
1568
f49957d6
JL
1569Sat Aug 19 09:18:47 2000 Jeffrey A Law (law@cygnus.com)
1570
850aac53
JL
1571 * reload1.c (reload_as_needed): Accept dumpfile argument,
1572 pass it to emit_reload_insns.
1573 (emit_reload_insns): Add new dumpfile argument. If non-null
1574 then dump the reloads for each insn into the dumpfile.
1575 (reload): Pass dumpfile to reload_as_needed.
1576
f49957d6
JL
1577 * invoke.texi: Clean up linux-gnu vs linux comments.
1578
041f25e6
RH
15792000-08-19 Richard Henderson <rth@cygnus.com>
1580
1581 * config/ia64/ia64.c (reg_or_5bit_operand): New.
1582 (ia64_depz_field_mask): New.
1583 * config/ia64/ia64.h (CONSTRAINT_OK_FOR_R): New.
1584 (PREDICATE_CODES): Update.
1585 * config/ia64/ia64.md: Update commentary.
1586 (depz_internal): New.
1587 (ashlsi3): Implement directly.
1588 (ashrsi3, lshrsi3): Simplify; rely on extv and extzv for constants.
1589 (ashldi3): Use shladd.
1590 * config/ia64/ia64-protos.h: Update.
1591
319ea138
ZW
15922000-08-18 Zack Weinberg <zack@wolery.cumb.org>
1593
1594 * toplev.c (independent_decode_option): Always process -g.
1595 Remove third argument, now unused. Adjust caller to match.
1596
8231ad94
RH
15972000-08-18 Richard Henderson <rth@cygnus.com>
1598
1599 * combine.c (make_compound_operation): Break after creating
1600 the extraction.
1601
6e19bb38
ZW
16022000-08-18 Zack Weinberg <zack@wolery.cumb.org>
1603
1604 * cpplib.c (cpp_register_pragma_space): Just return if the
1605 namespace is already registered.
1606
477d303f
RE
16072000-08-18 Ray Essick <essick@ddna.labs.mot.com> & Nick Clifton <nickc@redhat.com>
1608
1609 * config/mcore/mcore.md (rotlsi3): Allow allow rotations by a
1610 constant amount. Do not generate ROTL instruction.
1611
ffe51c8a
AO
1612Fri Aug 18 16:22:20 2000 Alexandre Oliva <aoliva@redhat.com>
1613
1614 * config/sh/elf.h: Do not include sh/sh.h.
1615 * config/sh/rtems.h: Likewise.
1616 * config/sh/rtemself.h: Do not include sh/elf.h.
1617 * configure.in: Get them included with `tm_file's.
1618 * configure: Rebuilt.
1619
8845e874
AO
1620 * config/sh/sh.md (fpu_switch0, fpu_switch1): Simplify.
1621 * config/sh/sh.c (fpscr_set_from_mem): Use them.
1622
3f546a53
RK
1623Fri Aug 18 14:23:18 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1624
7d2950e5
RK
1625 * stor-layout.c (compute_record_type): Don't use mode of single
1626 field as mode of record if not integer mode of same type.
1627
a1c1fdd0
RK
1628 * regmove.c (perhaps_ends_bb_p): New function.
1629 (optimize_reg_copy_1, optimize_reg_copy_2): Call it.
1630 (optimize_reg_copy_3, fixup_match_2, regmove_optimize): Likewise.
1631 (fixup_match_1): Likewise.
1632 (fixup_match_1, combine_stack_adjustments_for_block): Add casts to
1633 avoid signed/unsigned warnings.
1634
3f546a53
RK
1635 * function.c (fixup_var_refs_1, case MEM): Update CODE after
1636 updating X.
1637
61d0346d
NB
1638Fri 18-Aug-2000 18:33:45 BST Neil Booth <NeilB@earthling.net>
1639
1640 * cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS.
1641 (_cpp_trigraph_map): Declaration moved from cpplex.c
1642
1643 * cppinit.c: Define _cpp_trigraph_map. Use UCHAR_MAX + 1
1644 instead of 256. Use consistent test for designated initializers.
1645 (cpp_init): Initialize trigraph_map.
1646 (initialize_standard_includes, parse_option): Use memcmp
1647 instead of strncmp.
1648
1649 * cpplex.c (init_trigraph_map): Remove.
1650 (trigraph_ok, trigraph_replace, lex_line): Refer to
1651 _cpp_trigraph_map.
1652
1653 * cpplib.c (str_match, WARNING, ERROR, ICE): Delete.
1654 (do_unassert): Remove unused "next" local.
1655
1656 * system.h (HAVE_DESIGNATED_INITIALIZERS): New prototype.
1657
ef42b1dd
EM
16582000-08-18 Emmanuel Marty <emarty@suntech.fr>
1659
1660 * arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return
1661 insn.
1662
bc08aefe
RH
16632000-08-17 Richard Henderson <rth@cygnus.com>
1664
1665 * config/ia64/ia64.c (spill_restore_mem): Handle emitting
1666 the first insn in a sequence.
1667
49982682
JW
1668Thu Aug 17 22:40:05 EDT 2000 John Wehle (john@feith.com)
1669
1670 * alias.c (true_dependence, write_dependence_p): A read
1671 involving a label_ref or the constant pool doesn't create
1672 a dependency.
1673
1674 * rtl.h (unchanging): Improve documentation.
1675
889e5964
RB
16762000-08-17 Rodney Brown <RodneyBrown@mynd.com>
1677
1678 * cse.c (insert_regs): Remove unused `regno'.
1679
dd69c71b
NB
16802000-08-17 Neil Booth <NeilB@earthling.net>
1681
1682 * (cppinit.c) merge_include_chains: Use remove_dup_dir,
1683 remove_dup_dirs. If qtail == brack, remove brack not
1684 qtail.
1685 (remove_dup_dir, remove_dup_dirs): New functions.
1686
709e9e50
NB
16872000-08-17 Neil Booth <NeilB@earthling.net>
1688
1689 * cppinit.c (cpp_cleanup): Free include dir chains.
1690 * cpplib.c (do_undef): Let _cpp_free_definition make the node void.
1691 (do_unassert): Free the assert with _cpp_free_definition.
1692 * cppmacro.c (_cpp_free_definition): Free memory allocated for
1693 assertions. Make the node a T_VOID node.
1694
e33f6253
NB
16952000-08-17 Neil Booth <NeilB@earthling.net>
1696
1697 * cppinit.c (path_include, append_include_chain):
1698 Remove 2nd parameter (struct cpp_pending *).
1699 (path_include, initialize_standard_includes, cpp_handle_option):
1700 Update callers appropriately.
1701 (cpp_handle_option): Use pend.
1702
c154ba66
NB
17032000-08-17 Neil Booth <NeilB@earthling.net>
1704
1705 * cppinit.c (sort_options): Remove, put functionality in
1706 cpp_init.
1707 (cpp_init): New.
1708 (initialize_builtins): Free memory.
1709 (cpp_start_read): Move init_IStable to cpp_init.
1710
1711 * cpplib.h (cpp_init): New prototype.
1712 * cppmain.c (main): Call cpp_init.
1713
9c82ac6b
JW
1714Thu Aug 17 13:20:32 EDT 2000 John Wehle (john@feith.com)
1715
1716 * rtlanal.c (rtx_unstable_p): Use CONSTANT_P.
1717 (rtx_unstable_p, rtx_varies_p): Process vectors.
1718
acd50a92
NY
17192000-08-16 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>
1720
1721 * config/sh/lib1funcs.asm (GLOBAL): Define. Use for all
1722 references to GLOBAL symbols. Use LOCAL where appropriate.
1723
cfedbb1f
KG
17242000-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1725
1726 * configure.in (*-ibm-aix4.[12]*): Delete test for gnu ld. Always
1727 use t-aix41 when host == target.
1728
31989264
RH
17292000-08-16 Richard Henderson <rth@cygnus.com>
1730
1731 * reload.c (push_secondary_reload): Revert last change.
1732 If we use a reload_in/out pattern, make the when the same
1733 as the primary reload.
1734 (find_reloads): Likewise.
1735
d84c5634
MH
17362000-08-16 Manfred Hollstein <manfredh@redhat.com>
1737
1738 * configure.in (libstdcxx-v3): Fix test.
1739 * configure: Regenerate.
1740
43db0363
RK
1741Wed Aug 16 08:10:32 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1742
1743 * calls.c (calls_function_1, expand_call): Only test
1744 TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE.
1745 * function.c (thread_prologue_and_epilogue_insns): Likewise.
1746
853d8828
RH
17472000-08-16 Richard Henderson <rth@cygnus.com>
1748
1749 * combine.c (simplify_shift_const): Revert previous two
1750 changes. If SHIFT_COUNT_TRUNCATED, crop the shift count
1751 before the main loop.
1752
3e626beb
RH
17532000-08-15 Richard Henderson <rth@cygnus.com>
1754
1755 * combine.c (simplify_shift_const): Bound shift count when
1756 combining shifts.
1757
f507188a
RK
1758Tue Aug 15 17:33:05 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1759
7393c642
RK
1760 * calls.c (ECF_SP_DEPRESSED): New macro.
1761 (calls_function_1): Treat calling sp-depressed function as alloca.
1762 (emit_call_1): Don't adjust SP if calling sp-depressed function.
1763 (expand_call): Set ECF_SP_DEPRESSED if TYPE_RETURNS_STACK_DEPRESSED.
1764 If sp-depressed, ensure block saves and restores SP.
1765 * fold-const.c (extract_muldiv): Only check TYPE_IS_SIZETYPE
1766 for INTEGER_TYPE.
1767 * function.c (keep_stack_depressed): New function.
1768 (thread_prologue_and_epilogue_insns): Call it.
1769 * print-tree.c (print_node): Use HOST_WIDE_INT_PRINT_UNSIGNED
1770 to print DECL_OFFSET_ALIGN.
1771 Print no-force-blk and transparent-union flags properly.
1772 * stmt.c (expand_goto_internal): Don't restore stack if last block
1773 and function returns with sp depressed.
1774 (fixup_gotos): Likewise.
1775 (save_stack_pointer): New function, from code in expand_decl.
1776 (expand_decl): Call new function.
1777 * tree.h (TYPE_IS_SIZETYPE): Call INTEGER_TYPE_CHECK.
1778 (TYPE_RETURNS_STACK_DEPRESSED): New macro.
1779 (save_stack_pointer): New declaration.
1780
f507188a
RK
1781 * diagnostic.c (fatal_function): New variable.
1782 (set_fatal_function): New function.
1783 (fatal): Call it.
1784 * diagnostic.h (set_fatal_function): New declaration.
1785
56847207
WC
17862000-08-15 William Cohen <wcohen@redhat.com>
1787
1788 * config/sh/elf.h (DWARF2_DEBUGGING_INFO): Defined.
1789 (PREFERRED_DEBUGGING_TYPE): Set to dwarf2 info.
1790 (DWARF2_ASM_LINE_DEBUG_INFO): Defined.
1791
7791b7f9
RH
17922000-08-15 Richard Henderson <rth@cygnus.com>
1793
1794 * flow.c (mark_used_reg): Set reg_cond_reg appropriately.
1795
f99fce0c
RE
17962000-08-15 Richard Earnshaw <rearnsha@arm.com>
1797
1798 * arm.c (arm_function_ok_for_sibcall): New function.
1799 * arm.h (FUNCTION_OK_FOR_SIBCALL): Define.
1800 * arm.md (call expanders): Don't check here for calls that can't
1801 be sibling calls.
1802
74da3101
RE
18032000-08-15 Richard Earnshaw <rearnsha@arm.com>
1804
1805 * arm.md (splits generating cond_exec): Disable.
1806
2c210617
RE
18072000-08-15 Richard Earnshaw <rearnsha@arm.com>
1808
1809 * arm/linux-elf.h (text_section): Delete declaration.
1810
05ed98a1
RE
18112000-08-15 Richard Earnshaw <rearnsha@arm.com>
1812
1813 ARM support for unordered FP operations.
1814 * arm-protos.h (arm_comparison_operator): Declare.
1815 * arm.c (arm_comparison_operator): New function.
1816 (arm_select_cc_mode): Add unordered comparison codes.
1817 (get_arm_condition_code): Likewise.
1818 (arm_final_prescan_insn): Can't handle unordered jumps that can't
1819 be done in one insn.
1820 * arm.h (PREDICATE_CODES): Add arm_comparison_operator.
1821 * arm.md (all uses of comparison_operator): Replace with
1822 arm_comparison_operator.
1823 (bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New
1824 expands.
1825 (arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New
1826 patterns.
1827
ed78c862
OP
1828Tue Aug 15 00:36:36 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
1829
1830 * gthr-posix.h: Conditionally include <sched.h>; include
1831 <config.h> from libobjc/.
1832
4859dd36
RH
18332000-08-14 Richard Henderson <rth@cygnus.com>
1834
1835 * config/i386/i386.c (legitimize_pic_address): Use Pmode
1836 for all CONSTs.
1837
3f622353
RH
18382000-08-14 Richard Henderson <rth@cygnus.com>
1839
1840 * configure.in (ia64-*): Set float_format for i386 long double.
1841
1842 * real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT
1843 as we would for i386 XFmode.
1844 (PUT_REAL): Likewise.
1845 (endian, ereal_atof, real_value_truncate): Likewise.
1846 (ereal_isneg, toe64, etens, make_nan): Likewise.
1847 * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise.
1848
1849 * config/ia64/ia64-protos.h: Update.
1850 * config/ia64/ia64.c (general_tfmode_operand): New.
1851 (destination_tfmode_operand): New.
1852 (tfreg_or_fp01_operand): New.
1853 (ia64_split_timode): New.
1854 (spill_tfmode_operand): New.
1855 (ia64_expand_prologue): Use TFmode not XFmode.
1856 (ia64_expand_epilogue): Likewise.
1857 (ia64_function_arg): Likewise.
1858 (ia64_function_arg_advance): Likewise.
1859 (ia64_return_in_memory): Likewise.
1860 (ia64_function_value): Likewise.
1861 (ia64_print_operand): Likewise.
1862 (ia64_register_move_cost): Set GR<->FR to 5.
1863 (ia64_secondary_reload_class): Get GR for TImode memory op.
1864 * config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove.
1865 (ROUND_TYPE_ALIGN): Remove.
1866 (LONG_DOUBLE_TYPE_SIZE): Set to 128.
1867 (INTEL_EXTENDED_IEEE_FORMAT): Define.
1868 (HARD_REGNO_NREGS): Use TFmode, not XFmode.
1869 (HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs.
1870 (MODES_TIEABLE_P): Use TFmode, not XFmode.
1871 (CLASS_MAX_NREGS): Likewise.
1872 (ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks.
1873 (PREDICATE_CODES): Update.
1874 * config/ia64/ia64.md (movti): New.
1875 (movti_internal): Use a clobber for memory alternatives.
1876 (reload_inti, reload_outti): New.
1877 (movsfcc_astep): Predicate properly.
1878 (movdfcc_astep): Likewise.
1879 (movxf): Remove.
1880 (movtf): New.
1881 (extendsftf2, extenddftf2): New.
1882 (trunctfsf2, trunctfdf2): New.
1883 (floatditf2, fix_trunctfdi2): New.
1884 (floatunsditf2, fixuns_trunctfdi2): New.
1885 (addtf3, subtf3, multf3, abstf2): New.
1886 (negtf2, nabstf2, mintf3, maxtf3): New.
1887 (maddtf3, msubtf3, nmultf3, nmaddtf3): New.
1888 (cmptf): New.
1889 (fr_spill): Use TFmode, not XFmode.
1890 (fr_restore): Likewise.
1891 * config/ia64/lib1funcs.asm (__divtf3): New.
1892 * config/ia64/t-ia64 (LIB1ASMFUNCS): Add it.
1893
e49a1d2e
KG
18942000-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1895
1896 * cse.c (fold_rtx): Avoid empty body in an if-statement.
1897
1898 * doloop.c (doloop_iterations_max, doloop_modify): Avoid using the
1899 `U' integer constant suffix.
1900
1901 * dwarf2out.c (add_subscript_info): Avoid empty body in an
1902 else-statement.
1903
1904 * sparc/sol2.h (__enable_execute_stack): Prototype.
1905
78fbdbf7
DE
19062000-08-14 David Edelsohn <edelsohn@gnu.org>
1907
1908 * collect2.c: Remove use of AIX import file.
1909
1910 * longlong.h: Test ARCH_PWR not ARCH_POWER.
1911
1912 * rs6000.c (print_operand, case 'E'): Add else.
1913
9a89adb8
RH
19142000-08-14 Richard Henderson <rth@cygnus.com>
1915
1916 * config/ia64/ia64.md (movdi): Delay calling ia64_expand_load_address.
1917 (movdi_symbolic): New.
1918
00e149c7
JW
19192000-08-14 Jim Wilson <wilson@cygnus.com>
1920
1921 * config/ia64/ia64.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic
1922 to GNU as. For Intel as, pass -M const_gp and -M no_plabel.
1923 * config/ia64/linux.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic
1924 to GNU as.
1925
2ee5437b
RH
19262000-08-14 Richard Henderson <rth@cygnus.com>
1927
1928 * expr.c (emit_group_load): Don't force constants into registers.
1929 Special case source already in the correct mode.
1930
57119aa9
ZW
19312000-08-14 Zack Weinberg <zack@wolery.cumb.org>
1932
1933 * configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
1934 * fixinc/inclhack.def: Likewise.
1935 * fixinc/mkfixinc.sh: Likewise.
1936 * configure: Regenerate.
1937 * fixinc/fixincl.x: Regenerate.
1938 * install.texi: Document equivalence of linux and linux-gnu.
1939
d9f20424
R
1940Mon Aug 14 18:51:44 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1941
1942 * cse.c (insert_regs): Also in REG case: When finding an invalid
1943 value, and we make a new quantity, make sure that it won't be
1944 mistaken by for a valid one by mention_regs.
1945
c8fa6556
RG
1946