]>
Commit | Line | Data |
---|---|---|
630c79be | 1 | 2000-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 |
40 | 2000-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 |
72 | 2000-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 |
78 | 2000-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 |
85 | 2000-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 |
89 | 2000-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 |
94 | 2000-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 |
100 | 2000-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 |
105 | 2000-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 |
110 | 2000-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 |
115 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
116 | ||
117 | * config/ia64/ia64.md (mulhi3): New. | |
118 | ||
d8d7a286 RH |
119 | 2000-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 |
127 | 2000-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 |
133 | 2000-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 |
138 | 2000-09-04 Craig Newell <CraigN@ieee.org> |
139 | ||
140 | * gcc.c: Undefine "__WCHAR_TYPE__" before redefining it. | |
141 | ||
4993ddc1 AS |
142 | 2000-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 |
149 | 2000-09-04 Andrew Haley <aph@redhat.com> |
150 | ||
151 | * dwarf2out.c: (stack_adjust_offset): New prototype. | |
152 | ||
25ffb1f6 JH |
153 | Wed 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 | ||
158 | Wed 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 |
164 | 2000-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 |
170 | 2000-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 |
178 | 2000-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 |
183 | Sun 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 |
189 | 2000-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 |
230 | Sat 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 |
235 | 2000-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 |
240 | 2000-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 | ||
255 | 2000-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 |
287 | 2000-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 |
303 | 2000-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 |
308 | 2000-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 |
332 | 2000-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 |
355 | 2000-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 |
361 | Fri 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 |
370 | 2000-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 |
377 | 2000-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 |
385 | 2000-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 |
398 | 2000-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 |
404 | 2000-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 |
410 | 2000-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 |
418 | Wed 30-Aug-2000 23:18:59 BST Neil Booth <NeilB@earthling.net> |
419 | ||
420 | * contrib.texi: Add self. | |
421 | ||
b23ca156 AO |
422 | 2000-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 |
428 | 2000-08-30 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
429 | ||
430 | * fixinc/gnu-regex.c: Don't define `const'. | |
431 | ||
85f3d674 RK |
432 | Tue 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 |
442 | 2000-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 |
450 | 2000-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 |
489 | 2000-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 |
494 | 2000-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 |
503 | 2000-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 |
511 | 2000-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 |
533 | Wed 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 |
540 | Tue 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 |
631 | Tue 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 |
639 | 2000-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 |
643 | 2000-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 |
659 | 2000-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 |
667 | 2000-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 |
676 | 2000-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 |
682 | 2000-08-28 Jason Merrill <jason@redhat.com> |
683 | ||
684 | * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer. | |
685 | ||
686 | 2000-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 |
691 | 2000-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 |
698 | 2000-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 |
707 | 2000-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 |
722 | 2000-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 |
736 | 2000-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 |
776 | Mon 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 |
783 | 2000-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 |
789 | 2000-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 |
795 | 2000-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 |
802 | 2000-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 |
809 | 2000-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 |
815 | 2000-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 |
823 | 2000-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 |
831 | 2000-08-25 Jason Merrill <jason@redhat.com> |
832 | ||
833 | * integrate.c (expand_inline_function): Pull out the original decl. | |
834 | ||
caa511fd JW |
835 | 2000-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 |
841 | 2000-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 |
846 | 2000-08-25 Richard Earnshaw <rearnsha@arm.com> |
847 | ||
848 | * arm.h (STRUCT_VALUE): Define to 0, not NULL. | |
849 | ||
b949ea8b JW |
850 | Fri 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 |
865 | 2000-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 |
870 | 2000-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 |
875 | 2000-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 | ||
887 | 2000-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 |
902 | 2000-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 |
907 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
908 | ||
909 | * loop.c (constant_high_bytes): Delete. | |
910 | ||
e375c819 MH |
911 | 2000-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 |
917 | Fri 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 |
922 | Fri 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 |
927 | 2000-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 |
959 | 2000-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 |
964 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
965 | ||
966 | * toplev.c (main): Enable flag_reorder_blocks at -O2. | |
967 | ||
054f5e69 ZW |
968 | 2000-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 | ||
977 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> | |
978 | ||
979 | * cppfiles.c (read_include_file): Rearrange initializations. | |
980 | ||
0551c32d RH |
981 | 2000-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 |
1031 | 2000-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 |
1036 | 2000-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 |
1043 | 2000-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 |
1087 | 2000-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 |
1099 | 2000-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 |
1105 | 2000-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 |
1120 | 2000-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 |
1125 | 2000-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 |
1133 | 2000-08-23 Alexandre Oliva <aoliva@redhat.com> |
1134 | ||
1135 | * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'. | |
1136 | ||
d9fe00bb HPN |
1137 | 2000-08-23 Hans-Peter Nilsson <hp@axis.com> |
1138 | ||
1139 | * Makefile.in (GCC_PASSES): Add specs. | |
1140 | ||
b97644fc JW |
1141 | 2000-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 |
1148 | 2000-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 |
1156 | 2000-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 |
1165 | 2000-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 |
1172 | 2000-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 |
1177 | 2000-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 |
1182 | Wed 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 |
1189 | Tue 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 |
1207 | 2000-08-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1208 | ||
1209 | * c-parse.in (unop +): Restrict -Wtraditional warnings to user code. | |
1210 | ||
62432849 DA |
1211 | 2000-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 |
1219 | Tue 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 |
1224 | 2000-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 |
1233 | 2000-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 |
1245 | Tue 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 |
1253 | 2000-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 |
1260 | 2000-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 | |
1271 | 2000-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 |
1277 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
1278 | ||
1279 | * flow.c (tidy_fallthru_edge): Update b->end properly. | |
1280 | ||
d061bc1e SC |
1281 | 2000-08-22 Stan Cox <scox@redhat.com> |
1282 | ||
60a3c181 RH |
1283 | * Makefile.in (OBJS): Add dependence.o. |
1284 | * dependence.c: New file. | |
1285 | ||
23d16877 | 1286 | 2000-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 |
1292 | 2000-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 |
1298 | 2000-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 |
1304 | 2000-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 |
1310 | Tue 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 |
1314 | 2000-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 |
1320 | Tue 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 |
1325 | 2000-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 |
1330 | 2000-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 |
1337 | 2000-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 |
1341 | 2000-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 |
1346 | 2000-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 |
1359 | 2000-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 |
1368 | 2000-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 | |
1390 | 2000-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 |
1396 | 2000-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 |
1402 | 2000-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 |
1412 | 2000-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 |
1422 | 2000-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 |
1437 | 2000-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 |
1446 | Mon 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 |
1465 | 2000-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 |
1479 | 2000-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 |
1484 | 2000-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 |
1488 | 2000-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 | 1493 | Sun 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 |
1507 | 2000-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 |
1515 | 2000-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 |
1523 | 2000-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 |
1544 | Sun 20-Aug-2000 09:25:45 BST Neil Booth <NeilB@earthling.net> |
1545 | ||
1546 | * fix-header.c (main): Initialize cpplib. | |
1547 | ||
f1e42c81 MM |
1548 | 2000-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 |
1560 | Sat 19-Aug-2000 21:11:45 BST Neil Booth <NeilB@earthling.net> |
1561 | ||
1562 | * cpp.texi: Add @section for assertions. | |
1563 | ||
e76d9acb JW |
1564 | Sat 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 |
1569 | Sat 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 |
1579 | 2000-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 |
1592 | 2000-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 |
1597 | 2000-08-18 Richard Henderson <rth@cygnus.com> |
1598 | ||
1599 | * combine.c (make_compound_operation): Break after creating | |
1600 | the extraction. | |
1601 | ||
6e19bb38 ZW |
1602 | 2000-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 |
1607 | 2000-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 |
1612 | Fri 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 |
1623 | Fri 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 |
1638 | Fri 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 |
1658 | 2000-08-18 Emmanuel Marty <emarty@suntech.fr> |
1659 | ||
1660 | * arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return | |
1661 | insn. | |
1662 | ||
bc08aefe RH |
1663 | 2000-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 |
1668 | Thu 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 |
1676 | 2000-08-17 Rodney Brown <RodneyBrown@mynd.com> |
1677 | ||
1678 | * cse.c (insert_regs): Remove unused `regno'. | |
1679 | ||
dd69c71b NB |
1680 | 2000-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 |
1687 | 2000-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 |
1695 | 2000-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 |
1703 | 2000-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 |
1714 | Thu 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 |
1719 | 2000-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 |
1724 | 2000-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 |
1729 | 2000-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 |
1736 | 2000-08-16 Manfred Hollstein <manfredh@redhat.com> |
1737 | ||
1738 | * configure.in (libstdcxx-v3): Fix test. | |
1739 | * configure: Regenerate. | |
1740 | ||
43db0363 RK |
1741 | Wed 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 |
1747 | 2000-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 |
1753 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
1754 | ||
1755 | * combine.c (simplify_shift_const): Bound shift count when | |
1756 | combining shifts. | |
1757 | ||
f507188a RK |
1758 | Tue 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 |
1786 | 2000-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 |
1792 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
1793 | ||
1794 | * flow.c (mark_used_reg): Set reg_cond_reg appropriately. | |
1795 | ||
f99fce0c RE |
1796 | 2000-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 |
1803 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
1804 | ||
1805 | * arm.md (splits generating cond_exec): Disable. | |
1806 | ||
2c210617 RE |
1807 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
1808 | ||
1809 | * arm/linux-elf.h (text_section): Delete declaration. | |
1810 | ||
05ed98a1 RE |
1811 | 2000-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 |
1828 | Tue 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 |
1833 | 2000-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 |
1838 | 2000-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 |
1894 | 2000-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 |
1906 | 2000-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 |
1914 | 2000-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 |
1919 | 2000-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 |
1926 | 2000-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 |
1931 | 2000-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 |
1940 | Mon 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 |