]>
Commit | Line | Data |
---|---|---|
c29f60c0 BS |
1 | 1999-11-23 Bernd Schmidt <bernds@cygnus.co.uk> |
2 | ||
3 | * loop.c: Include "basic-block.h". | |
4 | (try_copy_prop, replace_loop_reg): New functions. | |
5 | (load_mems): Detect registers that just hold copies of the hoisted | |
6 | mem, and call try_copy_prop to eliminate them. | |
7 | * Makefile.in (loop.o): Update dependencies. | |
8 | ||
43849fa9 HPN |
9 | Tue Nov 23 01:03:29 1999 Hans-Peter Nilsson <hp@axis.com> |
10 | ||
11 | * Makefile.in (gencheck.o): Depend on gencheck.h. | |
12 | (insn-emit.o): Depend on flags.h, hard-reg-set.h and resource.h. | |
13 | (insn-peep.o): Depend on except.h and function.h. | |
14 | (insn-attrtab.o): Depend on RECOG_H. | |
15 | (insn-output.o): Depend on toplev.h and flags.h. | |
16 | (gengenrtl.o): Depend on real.h. | |
17 | (gen-protos.o): Depend on cpplib.h and cpphash.h. | |
18 | Unify all dependencies to be on RECOG_H rather than recog.h. | |
19 | ||
a242e6f5 RO |
20 | Tue Nov 23 00:57:10 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
21 | ||
22 | From Casper H.S. Dik on comp.unix.solaris, 23 Oct 1998: | |
23 | * configure.in: Try building a bi-arch 32/64-bit compiler on | |
24 | sparc-*-solaris2.7 and higher. | |
25 | * configure: Rebuild. | |
26 | ||
d7ebf9ea DB |
27 | Mon Nov 22 23:09:44 1999 David O'Brien <obrien@FreeBSD.org> |
28 | ||
4e32293c JL |
29 | * config/freebsd.h: New, FreeBSD architecture independent file. |
30 | * config/i386/freebsd-elf.h: removed FreeBSD architecturally | |
31 | independent pieces. | |
32 | * config/i386/freebsd.h: include i386/perform.h via tm.h rather than | |
33 | directly by i386/freebsd.h. | |
34 | * configure.in (*-*-freebsdelf): Include new FreeBSD architecturally | |
35 | independent configuration file. | |
36 | (*-*-freebsdelf): Include i386/perform.h via tm.h rather than | |
37 | directly by i386/freebsd.h. | |
38 | * configure: Rebuilt. | |
39 | ||
d7ebf9ea DB |
40 | * xm-i386.h: Define `__i386__' if not defined, rather than `i386' |
41 | which is in the user's namespace. | |
42 | * libgcc2.c: Look for the ANSI-C approved `__i386__' symbol, vs. | |
43 | `i386' which is not in our namespace. | |
44 | ||
2ef56612 KC |
45 | Mon Nov 22 22:58:01 1999 "R. Kelley Cook" <KelleyCook@attglobal.net> |
46 | ||
47 | * invoke.texi (ARM Options): Add in -mno-alignment-traps | |
48 | ||
a96c67ec JM |
49 | 1999-11-22 Jason Merrill <jason@casey.cygnus.com> |
50 | ||
51 | * dwarf2out.c (die_struct): Remove die_attr_last and die_child_last. | |
52 | (add_dwarf_attr, add_child_die): Just push onto the front. | |
53 | (reverse_die_lists): New fn. | |
54 | (add_sibling_attributes): Use it. | |
55 | (push_decl_scope): Reorganize. | |
a96c67ec JM |
56 | (add_name_and_src_coords_attributes): Don't set file and line for |
57 | an artificial decl. | |
58 | (gen_subprogram_die): An artificial function doesn't need to match | |
59 | file and line. | |
60 | (gen_compile_unit_die): Return the generated die. Only add | |
61 | AT_comp_dir if the filename is relative. | |
62 | (remove_AT): Simplify loop. Also free string values. | |
63 | (output_die): A DIE ref can't be null. | |
64 | (output_value_format, value_format): Take a dw_attr_ref. | |
65 | (dwarf_last_decl, is_extern_subr_die, sibling_offset): Remove. | |
66 | (AT_class, AT_flag, AT_int, AT_unsigned, AT_string, AT_ref, AT_loc, | |
67 | AT_addr, AT_lbl): New fns. | |
68 | (various): Use them. | |
69 | (various): Constify. | |
70 | ||
54f3b5c2 R |
71 | Mon Nov 22 23:53:50 1999 J"orn Rennecke <amylaar@cygnus.co.uk> |
72 | ||
73 | * combine.c (combine_simplify_rtx): When handling a SUBREG, | |
74 | take SUBREG_WORD into account. | |
75 | (if_then_else_cond): Likewise. | |
76 | ||
a8196924 JM |
77 | 1999-11-22 Jason Merrill <jason@casey.cygnus.com> |
78 | ||
79 | * gmon.c, i386/gmon-sol2.c, sparc/gmon-sol2.c: Remove advertising | |
80 | clause from BSD license, pursuant with | |
81 | ||
82 | ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change | |
83 | ||
328f4006 BS |
84 | 1999-11-22 Bernd Schmidt <bernds@cygnus.co.uk> |
85 | ||
86 | * loop.c (load_mems): Reformat slightly. | |
b1dbfa1d BS |
87 | * basic-block.h (regset_head): New typedef. |
88 | (INIT_REG_SET): New macro. | |
328f4006 | 89 | |
8aeb3b0e BK |
90 | 1999-11-22 Bruce Korb <autogen@linuxbox.com |
91 | ||
92 | * fixinc/mkfisinc.sh(i?86-*-linux): disable script, run fixincl exe | |
93 | (mips-dec-bsd*): non-functional code | |
94 | (alpha*-*-linux-gnu*): redundant, duplicated by "*-*-linux-gnu*" | |
95 | ||
96 | * fixinc/inclhack.def(AAB_fd_zero_glibc_*): | |
97 | added three replacement fixes | |
98 | (no_double_slash): removed comments that are not (any longer) pertinent | |
99 | (bad_lval): this fix currently runs against many files. | |
100 | The comment seems to indicate that we should select for files | |
101 | containing 'pragma extern_prefix'. | |
102 | ||
d3201a2c | 103 | * fixinc/fixinc.x86-linux-gnu: deleted |
8aeb3b0e BK |
104 | * fixinc/inclhack.sh: regen |
105 | * fixinc/fixincl.x: regen | |
106 | * fixinc/fixincl.sh: regen | |
107 | ||
ee265800 AH |
108 | Fri Nov 12 14:08:40 1999 Andrew Haley <aph@cygnus.com> |
109 | ||
110 | * emit-rtl.c (gen_sequence): Only return the pattern of an insn if | |
111 | its code is INSN and it has no notes. | |
112 | ||
6c85df69 AH |
113 | 1999-11-22 Andrew Haley <aph@cygnus.com> |
114 | ||
115 | * varasm.c (function_defined): Remove. | |
116 | (make_function_rtl): Don't set function_defined. | |
117 | (make_decl_rtl): Remove global register warning. | |
118 | * regclass.c (no_global_reg_vars): New variable. | |
119 | (globalize_reg): Warn if function has already been defined. | |
120 | (regclass_init): Set no_global_reg_vars. | |
121 | ||
9ffc5a70 JH |
122 | Mon Nov 22 14:42:22 MET 1999 Jan Hubicka <hubicka@freesoft.cz> |
123 | ||
124 | * regclass.c (reg_pref): New structure and static variable | |
125 | (prefclass): Delete. | |
126 | (altclass): Delete. | |
127 | (all uses of prefclass and altclass): Use reg_pref instead. | |
128 | ||
5f1e6755 NC |
129 | 1999-11-21 Nick Clifton <nickc@cygnus.com> |
130 | ||
131 | * invoke.texi (ARM Options): Replace -mshort-load-bytes with | |
132 | -malignment-traps. | |
133 | (arm.h): Replace -mshort-load-bytes with -malignment-traps. | |
134 | (arm.c): Replace TARGET_SHORT_BY_BYTES with TARGET_MMU_TRAPS. | |
135 | (arm.md): Replace TARGET_SHORT_BY_BYTES with TARGET_MMU_TRAPS. | |
136 | ||
137 | Sun Nov 21 17:11:13 1999 Geoffrey Keating <geoffk@cygnus.com> | |
138 | ||
139 | * varasm.c (output_constructor): Solve problem with long long | |
140 | bitfields, even on BYTES_BIG_ENDIAN machines (testcase 991118-1). | |
141 | ||
142 | Fri Nov 19 05:48:45 CET 1999 Jan Hubicka <hubicka@freesoft.cz> | |
246fd41f | 143 | |
5b8ad699 JH |
144 | * global.c (allocno): New structure and static variable. |
145 | (allocno_reg): Remove, all references replaced by allocno. | |
146 | (allocno_size): Likewise. | |
147 | (hard_reg_conflicts): Likewise. | |
148 | (hard_reg_preferences): Likewise. | |
149 | (hard_reg_copy_preferences): Likewise. | |
150 | (hard_reg_full_preferences): Likewise. | |
151 | (regs_someone_prefers): Likewise. | |
152 | (allocno_calls_crossed): Likewise. | |
153 | (allocno_n_refs): Likewise. | |
154 | (allocno_live_length): Likewise. | |
155 | (find_reg): Rename ALLOCNO to NUM. | |
156 | ||
ee59f29b JH |
157 | * regclass.c (may_move_in_cost): Rename from may_move_cost, all |
158 | references updated. | |
159 | (may_move_out_cost): New variable. | |
160 | (init_reg_sets_1): Initialize may_move_out_cost. | |
161 | (record_reg_classes): Use may_move_out_cost. | |
162 | ||
246fd41f JH |
163 | * regclass.c (dump_regclass): New function. |
164 | (regclass): New parameter DUMP, call DUMP_REGCLASS. | |
ee59f29b | 165 | * toplev.c (rest_of_compilation): Open lreg dump file before regclass, |
246fd41f JH |
166 | pass rtl_dump_file to regclass. |
167 | * rtl.h (regclass): Update prototype. | |
168 | ||
c37d59c3 | 169 | Fri Nov 19 06:32:19 CET 1999 Jan Hubicka <hubicka@freesoft.cz> |
06a964de JH |
170 | |
171 | * i386.md (neg, not and abs patterns): Revmap to use | |
172 | ix86_expand_unary_operator and ix86_unary_operator_ok. | |
173 | (add?f and sub?f expanders): Force operand 1 to register. | |
174 | * i386.c (ix86_expand_unary_operator): Rewrite. | |
175 | (ix86_unary_operator_ok): Ensure that memory operands | |
176 | match real opcode. | |
177 | (ix86_binary_operator_ok): Do not allow operand 1 to | |
178 | come into memory and operand 0 not. | |
179 | (ix86_expand_binary_operator): Ensure that | |
180 | src1 is not non-matching memory. | |
181 | ||
1ce485ec JH |
182 | * i386.md (negs?2): Rewrite to expanders, new patterns and splitters |
183 | to support integer registers and memory. | |
184 | (abss?2_integer): Likewise. | |
c37d59c3 | 185 | |
8fcaaa80 JH |
186 | * i386.h (enum reg_class): Add FLOAT_INT_REGS. |
187 | (REG_CLASS_NAMES): Likewise. | |
188 | (REG_CLASS_CONTENTS): Define FLOAT_INT_REGS as union of FLOAT_REGS | |
189 | and GENERAL_REGS. | |
190 | * i386.md (pushsf): Do not preferre FLOAT_REGS over GENERAL_REGS. | |
191 | (movsf): Likewise; unify 4th and 5th alternative. | |
192 | (pushdf): Likewise. | |
193 | (movdf_1): Likewise; rename to movdf_integer. | |
194 | (pushxf): Likewise; rename to pushxf_integer; fix output template; | |
195 | remove redundant splitter. | |
196 | (movxf_1): Likewise; rename to movxf_integer; fix splitter's condition. | |
197 | (movdf_nointeger): New. | |
198 | (movxf_nointeger): New. | |
199 | (pushxf_nointeger): New. | |
200 | ||
f97d9ec3 JH |
201 | * i386.md (extend?f?f): Split to expander and pattern, refuse two |
202 | memory operands in patterns. | |
203 | (fop*): Refuse two memory operands. | |
204 | ||
c37d59c3 JH |
205 | * i386.md (ashrsi3_31): Allow cltd when optimizing for size even |
206 | on !TARGET_USE_CLTD CPUs. | |
207 | ||
535233a8 NS |
208 | Fri Nov 19 10:41:15 GMT 1999 Nathan Sidwell <nathan@acm.org> |
209 | ||
210 | * extend.texi: Document C++ restricted pointers and references. | |
211 | ||
73d65336 BS |
212 | 1999-11-19 Bernd Schmidt <bernds@cygnus.co.uk> |
213 | ||
214 | * cse.c (addr_affects_sp): No longer conditional on AUTO_INC_DEC. | |
215 | (invalidate_skipped_set): Call it unconditionally. | |
216 | (cse_set_around_loop): Likewise. | |
217 | ||
14592a41 DN |
218 | Thu Nov 18 17:29:34 MST 1999 Diego Novillo <dnovillo@cygnus.com> |
219 | ||
220 | * rtl.texi (mem): Add documentation for alias-set argument | |
221 | to RTX `mem'. | |
222 | ||
535233a8 NS |
223 | Fri Nov 18 13:39:22 CET 1999 Jan Hubicka <hubicka@freesoft.cz> |
224 | ||
225 | * i386.h (struct_processor_costs): New fileds int_load, int_store, | |
226 | fp_move, fp_load and fp_store | |
96e7ae40 JH |
227 | (REGISTER_MOVE_COST): Fix comment, calculate exactly the cost of |
228 | fp->int moves | |
229 | (MEMORY_MOVE_COST): New macro. | |
230 | * i386.c (386_cost): Define new fields. | |
231 | (i486_cost): Likewise. | |
232 | (pentium_cost): Likewise. | |
233 | (pentiumpro_cost): Likewise. | |
234 | (k6_cost): Likewise. | |
235 | ||
b71733d5 GM |
236 | Fri Nov 19 11:11:55 1999 Greg McGary <gkm@gnu.org> |
237 | Geoffrey Keating <geoffk@cygnus.com> | |
238 | ||
239 | * config/m68k/m68kelf.h: Suppress '/* within comment' warning. | |
240 | ||
241 | * config/m68k/m68k.h (MASK_PCREL): Don't use same value as | |
242 | MASK_ALIGN_INT. | |
243 | ||
244 | * config/m68k/m68k.h (MASK_NO_STRICT_ALIGNMENT): New macro. | |
245 | (TARGET_STRICT_ALIGNMENT): New macro. | |
246 | (TARGET_SWITCHES): Add "strict-align" and "no-strict-align". | |
247 | (STRICT_ALIGNMENT): Depend on TARGET_STRICT_ALIGNMENT. | |
248 | * invoke.texi (M680x0 Options): Document -mstrict-align. | |
249 | ||
2450a057 JH |
250 | Thu Nov 18 11:10:03 1999 Jan Hubicka <hubicka@freesoft.cz> |
251 | Richard Henderson <rth@cygnus.com> | |
252 | ||
253 | * i386-protos.h (split_xf, ix86_split_movdi): Remove. | |
254 | (ix86_split_long_move): Declare. | |
255 | * i386.c (split_xf, ix86_split_movdi): Remove. | |
256 | (ix86_split_to_parts, ix86_split_long_move): New. | |
257 | * i386.md (dimode move splitters): Use ix86_split_long_move. | |
258 | (dfmode move splitters): Likewise. | |
259 | (xfmode move splitters): Likewise. | |
260 | (movsf_1): Allow F->r. | |
261 | (movdf_1, movxf_1): Allow F->ro. | |
262 | ||
1e4ceb6f MM |
263 | 1999-11-17 Mark Mitchell <mark@codesourcery.com> |
264 | ||
265 | * except.h (struct eh_entry): Add goto_entry_p. | |
266 | (eh_region_from_symbol): Remove prototype. | |
267 | * except.c (find_func_region_from_symbol): New function. | |
268 | (emit_cleanup_handler): Likewise. | |
269 | (eh_region_from_symbol): Make it static. | |
270 | (add_new_handler): Verify the argument. | |
271 | (find_func_region): Update comment. | |
272 | (expand_eh_region_end): Expand handlers here, rater than waiting | |
273 | until expand_leftover_cleanups or start_all_catch. | |
274 | (expand_leftover_cleanups): Don't expand here. | |
275 | (expand_start_all_catch): Or here. | |
276 | (expand_rethrow): Check the return value from find_func_region. | |
277 | * function.c (expand_function_end): Emit the catch_clauses. | |
278 | ||
0e6b2107 GRK |
279 | 1999-11-18 Gavin Romig-Koch <gavin@cygnus.com> |
280 | ||
281 | * integrate.c (expand_inline_function): Add necessary check for NULL. | |
282 | ||
bb51178f NC |
283 | 1999-11-18 Nick Clifton <nickc@cygnus.com> |
284 | ||
285 | * toplev.c (main): Correctly detect an unrecognised option. | |
286 | ||
287 | * cppinit.c (cpp_handle_option): Do not claim to have consumed | |
288 | a -f option if it has not been recognised. | |
289 | ||
5a425893 MG |
290 | Thu Nov 18 00:59:11 1999 Michael Gschwind <mikeg@alagoas.watson.ibm.com> |
291 | ||
292 | * basic-block.h (update_life_extent): Remove trailing comma on | |
293 | enumeration type list. | |
294 | ||
dfb2c079 HB |
295 | 1999-11-18 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
296 | ||
297 | * varasm.c (output_constructor) Solved problem with long long | |
298 | bitfields. Corrected calculating this_time and shift. Also | |
299 | corrected calculating mask when BITS_PER_UNIT == 32 (c4x). | |
300 | ||
9aa137f3 JL |
301 | Wed Nov 17 23:46:14 1999 Jeffrey A Law (law@cygnus.com) |
302 | ||
303 | * flow.c (split_edge): Take looping structure into account when | |
304 | determining where to put the new block note. | |
305 | ||
d7160de9 JH |
306 | Wed Nov 17 20:42:43 1999 Jeff Holcomb <jeffh@cygnus.com> |
307 | ||
308 | * Makefile.in (ggc-none.o): Provide host specific version if | |
309 | needed. | |
310 | ||
e7a59e04 RH |
311 | Wed Nov 17 16:51:23 1999 Richard Henderson <rth@cygnus.com> |
312 | ||
313 | * cse.c (delete_trivially_dead_insns): Identify no-op insns | |
314 | containing subregs too. | |
315 | ||
919509ce DN |
316 | Wed Nov 17 17:39:48 MST 1999 Diego Novillo <dnovillo@cygnus.com> |
317 | ||
318 | * invoke.texi: Add documentation for -muninit-const-in-rodata. | |
319 | * config/mips/mips.h (MASK_UNINIT_CONST_IN_RODATA): Define. | |
320 | (TARGET_UNINIT_CONST_IN_RODATA): Define. | |
321 | (text_section): Add switches -munint-const-in-rodata and | |
322 | -mno-uninit-const-in-rodata. | |
323 | (ASM_OUTPUT_COMMON): Remove. | |
324 | (ASM_OUTPUT_ALIGNED_DECL_COMMON): Define. Check if uninitialized | |
325 | const objects should be placed in read-only data. Otherwise declare | |
326 | them in common. | |
327 | ||
d49256bb RH |
328 | Wed Nov 17 16:38:32 1999 Richard Henderson <rth@cygnus.com> |
329 | ||
330 | * jump.c (jump_optimize_1): Revert last change. | |
331 | ||
bc6c134e RH |
332 | Wed Nov 17 15:18:30 1999 Richard Henderson <rth@cygnus.com> |
333 | ||
334 | * jump.c (jump_optimize_1): Don't try to duplicate the loop exit | |
335 | test if optimizing for size. | |
336 | ||
fc99263b MM |
337 | 1999-11-17 Mark Mitchell <mark@codesourcery.com> |
338 | ||
339 | * Makefile.in (toplev.o): Depend on except.h. | |
340 | (dwarf2out.o,loop.o,flow.o,haifa-sched.o): Likewise. | |
341 | ||
40745eec | 342 | Mon Nov 15 22:45:39 CET 1999 Jan Hubicka <hubicka@freesoft.cz> |
bc6c134e | 343 | |
40745eec JH |
344 | * i386.md (divmodsi4): Rewrite to expander. |
345 | (*divmodsi4_nocltd): New. | |
346 | (*divmodsi4_cltd): New. | |
347 | (divmodsi4 splitter): Handle the case when input comes in edx. | |
348 | (udivmodhi4): Do not use constraints in exander. | |
349 | (ashrsi3_31): Conditionize by TARGET_USE_CLTD. | |
350 | ||
75e3fbdf JM |
351 | 1999-11-17 Jason Merrill <jason@yorick.cygnus.com> |
352 | ||
353 | * dwarf2out.c (push_decl_scope): Still use decl_scope_depth - 1 | |
354 | for the common case. | |
355 | ||
4dc07bd7 JJ |
356 | 1999-11-16 Jakub Jelinek <jakub@redhat.com> |
357 | ||
358 | * explow.c (hard_function_value): Add outgoing argument. | |
359 | * expr.h (hard_function_value): Declare it. | |
360 | * calls.c (expand_call, emit_library_call_value): Update callers. | |
361 | * function.c (aggregate_value_p): Ditto. | |
362 | (diddle_return_value): Must look at the outgoing registers | |
363 | on archs with register windows. | |
364 | ||
d4b15af9 RH |
365 | Mon Nov 15 20:46:45 1999 Richard Henderson <rth@cygnus.com> |
366 | ||
367 | * alpha.c (alpha_build_va_list): Use make_lang_type and | |
368 | initialize TYPE_NAME for the va_list record. | |
369 | ||
1344f8d5 RH |
370 | * flow.c (calculate_global_regs_live): Zero bb->aux to begin. |
371 | ||
63408827 RH |
372 | * ggc-common.c (ggc_print_statistics): Cast size_t to unsigned long |
373 | for printing. | |
374 | * ggc.h (struct ggc_statistics): Rearrange elements for better | |
375 | packing on 64-bit hosts. | |
376 | * lcm.c (compute_laterin): Store a size_t not an int in bb->aux. | |
377 | (compute_nearerout): Likewise. | |
378 | ||
a38d360d GK |
379 | Tue Nov 16 14:37:52 1999 Geoffrey Keating <geoffk@cygnus.com> |
380 | ||
381 | * config/rs6000/rs6000.c (first_reg_to_save): Save | |
382 | PIC_OFFSET_TABLE_REGNUM when -fpic even though it is fixed. | |
383 | ||
348bb3c7 JM |
384 | 1999-11-15 Jason Merrill <jason@casey.cygnus.com> |
385 | ||
386 | * dwarf2out.c (scope_die_for): Don't rely on the decl_scope_table | |
387 | notion of nesting to find the DIE for a type or function. | |
388 | DIEs can go in limbo even if we got a context_die. | |
389 | (push_decl_scope): Our context doesn't need to be in decl_scope_table. | |
390 | (gen_struct_or_union_type_die): Don't use TREE_PERMANENT to test | |
391 | for local type. | |
392 | (gen_decl_die): Ignore NAMESPACE_DECLs for now. | |
393 | (gen_type_die): Writing out the context doesn't cause member class | |
394 | template instantiations to be written out as well. | |
395 | ||
290ad355 RH |
396 | Mon Nov 15 15:33:18 1999 Richard Henderson <rth@cygnus.com> |
397 | ||
398 | * rs6000.h (ASM_OUTPUT_DEF): New. | |
399 | Based on proposed addition from David Edelsohn. | |
400 | ||
86765ca0 | 401 | 1999-11-15 Robert Lipe <RobertLipe@usa.net> |
4dc07bd7 | 402 | Bruce Korb <autogen@linuxbox.com> |
86765ca0 RL |
403 | |
404 | * fixinc/inclhack.def | |
405 | (AAB_svr4_replace_byteorder): added. Takes advantage of GCC features | |
406 | (unixware7_byteorder_fix): added. Removes conflicts for new defs | |
407 | in net/inet.h. | |
408 | (svr5_mach_defines): added. Like svr4_mach_defines, with new syntax | |
409 | (svr4_endian): enabled with SVR5 | |
410 | (svr4_mkdev): simplified syntax and enabled with SVR5 | |
411 | ||
e1459ff8 DB |
412 | Sun Nov 14 18:49:37 1999 David O'Brien <obrien@FreeBSD.org> |
413 | ||
414 | * configure.in: Handle libgcc2 threads support on FreeBSD platforms. | |
415 | * configure: Rebuilt. | |
416 | * config/t-freebsd-thread: New file. | |
417 | ||
89e606c9 JL |
418 | Sun Nov 14 23:11:05 1999 Jeffrey A Law (law@cygnus.com) |
419 | ||
329e1d01 JL |
420 | * i386.c (ix86_decompose_address): Verify the base is a REG |
421 | before trying to examine its register number. | |
422 | ||
6b8cf0c5 JL |
423 | * basic-block.h: Remove all #defines and prototypes related to |
424 | integer lists. | |
425 | (free_bb_mem, compute_preds_succs): Remove prototype. | |
426 | * rtl.h (free_bb_mem): Remove prototype. | |
427 | * flow.c (alloc_int_list_node); Remove function. | |
428 | (add_inst_list_node, free_int_list, add_pred_succ): Likewise. | |
429 | (compute_preds_succs, free_bb_mem): Likewise. | |
430 | * gcse.c (gcse_main): Do not call free_bb_mem anymore. | |
431 | * toplev.c (rest_of_compilation): Likewise. | |
432 | * haifa-sched.c (build_control_flow): Use flow generated edge | |
433 | list to build the haifa specific edge list. | |
434 | (find_rgns): Use new CFG data structures instead of pred/succ lists. | |
435 | (schedule_insns): Do not build pred/succ lists anymore. Instead | |
436 | build the edge table. | |
437 | ||
38e90e6c JL |
438 | * basic-block.h (dump_bb_data): Remove declaration. |
439 | * flow.c (dump_bb_data): Remove function. | |
440 | * sbitmap.c (sbitmap_intersect_of_predsucc): Delete function. | |
441 | (sbitmap_union_of_predsucc): Likewise. | |
442 | ||
b71a2ff8 JL |
443 | * gcse.c (delete_null_pointer_checks_1): Kill unused s_preds |
444 | argument. All callers changed. | |
445 | (delete_null_pointer_checks_1): No longer need to compute the | |
446 | pred/succ lists. | |
447 | ||
89e606c9 JL |
448 | * gcse.c (pre_expr_reaches_here_p): Kill CHECK_PRE_COM argument. |
449 | All callers changed. | |
450 | (pre_expr_reaches_here_p_work): Likewise. | |
451 | (pre_edge_insert): No longer call pre_expr_reaches_here_p. | |
452 | * lcm.c (compute_laterin): Fix initialization of LATER. | |
453 | (compute_nearerout): Similarly for NEARER. | |
454 | ||
ef835bb0 BS |
455 | Sun Nov 14 12:41:57 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
456 | ||
457 | * cse.c (set_nonvarying_address_components): Delete unused function. | |
458 | (refers_to_p): Likewise. | |
459 | ||
2cfcc23e JL |
460 | Fri Nov 12 20:53:22 1999 Jeffrey A Law (law@cygnus.com) |
461 | ||
462 | * function.c (diddle_return_value): Set REG_FUNCTION_VALUE_P as | |
463 | needed. | |
464 | ||
3db377a9 MH |
465 | Sat Nov 13 16:20:09 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
466 | ||
467 | * defaults.h (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Wrap macro | |
468 | definition in do while (0). | |
469 | ||
2f985ca6 JW |
470 | Fri Nov 12 16:26:25 1999 Jim Wilson <wilson@cygnus.com> |
471 | ||
472 | * stmt.c (pushcase, pushcase_range): Partially revert Oct 28 change. | |
473 | ||
1953b2a3 RH |
474 | Fri Nov 12 12:43:49 1999 Richard Henderson <rth@cygnus.com> |
475 | ||
476 | * unroll.c (unroll_loop): Make temp an unsigned HOST_WIDE_INT. | |
477 | ||
bcf783f4 VM |
478 | Fri Nov 12 15:14:19 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com> |
479 | ||
480 | * i960.h (CAN_DEBUG_WITHOUT_FP): Don't define it. | |
481 | (FRAME_POINTER_REQUIRED): Don't worry about nonlocal goto. | |
482 | (ELIMINABLE_REGS, CAN_ELIMINATE, INITIAL_ELIMINATION_OFFSET): New. | |
483 | (INITIAL_FRAME_POINTER_OFFSET): Remove it. | |
484 | ||
485 | * i960.c (i960_function_prologue): Don't allocate space for g8-g11 | |
486 | saved on the stack. Output more accurate stack frame statistics | |
487 | into assembler file. | |
488 | ||
8ad1aa56 ZW |
489 | 1999-11-12 11:47 -0800 Zack Weinberg <zack@bitmover.com> |
490 | ||
491 | * genextract.c (record_insn_name): New function. | |
492 | (get_insn_name): No longer a stub. | |
493 | (main): Call record_insn_name for each insn. After each label | |
494 | written, print the insn name in a comment. | |
495 | ||
4dc94be7 KG |
496 | Fri Nov 12 13:45:02 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
497 | ||
498 | * output.h (const_section, init_section, fini_section): Add | |
499 | prototypes. | |
500 | ||
501 | * alpha/elf.h (const_section): Delete declaration. | |
502 | ||
503 | * svr4.h (const_section): Likewise. | |
504 | ||
d26f8097 MM |
505 | Fri Nov 12 08:54:22 1999 Mark Mitchell <mark@codesourcery.com> |
506 | ||
507 | * tree.h (SAVE_EXPR_PERSISTENT_P): New macro. | |
508 | * tree.c (array_type_nelts): Don't handle SAVE_EXPRs specially. | |
509 | (unsave_expr_now): Don't unsave SAVE_EXPR_PERSISTENT_P | |
510 | expressions. | |
511 | * stor-layout.c (variable_size): Set SAVE_EXPR_PERSISTENT_P on | |
512 | variable-sized array bounds. | |
513 | ||
109cceda CM |
514 | Fri Nov 12 08:04:45 1999 Catherine Moore <clm@cygnus.com> |
515 | ||
516 | * defaults.h (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Use | |
4dc07bd7 | 517 | ASM_OUTPUT_LABEL. |
109cceda | 518 | |
15052bd1 BS |
519 | Fri Nov 12 13:31:54 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
520 | ||
521 | * config/arm/arm.h (LEGITIMIZE_RELOAD_ADDRESS): Treat QImode | |
522 | addresses the same way GO_IF_LEGITIMATE_INDEX does. | |
523 | ||
e428d738 BS |
524 | Fri Nov 12 12:36:04 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
525 | ||
526 | * cse.c (hash_arg_in_struct): Delete. | |
527 | (struct table_elt): Delete elt in_struct. | |
528 | (struct set): Delete elt src_in_struct. | |
529 | (merge_equiv_classes): Don't set either hash_arg_in_struct or | |
530 | the corresponding in_struct elts. | |
531 | (canon_hash): Likewise. | |
532 | (safe_hash): Likewise. | |
533 | (find_best_addr): Likewise. | |
534 | (record_jump_cond): Likewise. | |
535 | (cse_insn): Likewise. | |
536 | ||
f292dac5 JW |
537 | Thu Nov 11 19:45:24 1999 Jim Wilson <wilson@cygnus.com> |
538 | ||
d5e3f151 JW |
539 | * loop.c (invariant_p, case MEM): Put MEM_VOLATILE_P check back. |
540 | ||
f292dac5 JW |
541 | * dbxout.c (dbxout_type, case INTEGER_TYPE): Handle too large |
542 | unsigned types. | |
543 | ||
bdc24974 JL |
544 | Thu Nov 11 18:54:24 1999 Jeffrey A Law (law@cygnus.com) |
545 | ||
cfb0346d JL |
546 | * function.c (diddle_return_value): Put back check that the DECL_RTL |
547 | for the function is a register. | |
548 | ||
d3f2edae JL |
549 | * function.c (diddle_return_value): Use hard_function_value to |
550 | get an rtx suitable for use in the USE/CLOBBER insn. | |
551 | ||
bdc24974 JL |
552 | * global.c (global_conflicts): Update comments. |
553 | (record_conflicts): No need to record conflicts between pseudos here. | |
554 | ||
b35926b9 BK |
555 | 1999-11-11 Bruce Korb <autogen@linuxbox.com> |
556 | ||
557 | * fixinc/fixincl.c: Added verbose levels for status messages | |
558 | ||
665853dc BS |
559 | Thu Nov 11 13:23:04 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
560 | ||
561 | * jump.c (jump_optimize_1): Avoid passing an rtx that is not an | |
562 | operand as argument to expand_and or expand_binop. | |
563 | ||
d7627b79 RB |
564 | Thu Nov 11 02:21:16 1999 Rodney Brown <RodneyBrown@pmsc.com> |
565 | ||
566 | * xcoffout.c (xcoffout_source_file): Change ggc_add_root to | |
567 | gcc_add_string_root. | |
568 | ||
2a2ea744 JE |
569 | Wed Nov 10 21:24:19 1999 Jason Eckhardt <jle@cygnus.com> |
570 | ||
571 | * config/pa/pa.h (MASK_RETURN_ADDR): Change 0xfffffffc to -4. | |
572 | ||
bce8fed7 JL |
573 | Wed Nov 10 15:56:16 1999 Jeffrey A Law (law@cygnus.com) |
574 | ||
ce724250 JL |
575 | * flow.c (compute_flow_dominators): Initially put all blocks on |
576 | the worklist. | |
577 | * lcm.c (compute_antinout_edge, compute_available): Similarly. | |
578 | * gcse.c (compute_cprop_avinout): Remove. | |
579 | (compute_cprop_data): Use compute_available. | |
580 | (delete_null_pointer_checks_1): Use compute_available. | |
581 | ||
bd0eaec2 JL |
582 | * basic-block.h (compute_available): Returns a void now. |
583 | * gcse.c (one_classic_gcse_pass): Do not expect compute_available | |
584 | to return a value anymore. | |
585 | * lcm.c (compute_available, compute_antinout_edge): Revamp to use | |
586 | worklists. Fix boundary cases. Compute maximal solutions. | |
587 | (compute_laterin, compute_nearerout): Similarly. | |
588 | ||
4dc07bd7 JJ |
589 | * dwarf2out.c (add_AT_location_description): Allow |
590 | (mem (plus (pseudo) (...)) too. | |
bce8fed7 | 591 | |
a1d9074c TT |
592 | Wed Nov 10 10:52:42 1999 Tom Tromey <tromey@cygnus.com> |
593 | ||
594 | * gcc.c (do_spec_1): Support text between `%u' and `%O'. | |
595 | ||
6c9821b7 | 596 | Wed Nov 10 12:43:21 1999 Philippe De Muyter <phdm@macqel.be> |
4dc07bd7 | 597 | Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6c9821b7 PDM |
598 | |
599 | * cppinit.c: Test `GCC_VERSION', not `HAVE_GCC_VERSION'. | |
600 | ||
601 | * gansidecl.h: Likewise. | |
602 | ||
603 | * rtl.c: Likewise. | |
604 | ||
605 | * rtl.h: Likewise. | |
606 | ||
607 | * toplev.h: Likewise. | |
608 | ||
609 | * tree.c: Likewise. | |
610 | ||
611 | * tree.h: Likewise. | |
612 | ||
613 | * varray.c: Likewise. | |
614 | ||
615 | * varray.h: Likewise. | |
616 | ||
8bfa6fc5 CP |
617 | Wed Nov 10 10:57:22 1999 Clinton Popetz <cpopetz@cygnus.com> |
618 | ||
619 | * gcov.c (struct arcdata): Add hits and total, remove prob. | |
620 | (output_branch_counts): New. | |
621 | (process_args): Set output_branch_counts if -c. | |
622 | (calculate_branch_probs): Store hits and total instead of | |
623 | percentage. | |
624 | (output_data): Emit counts if output_branch_counts is true. | |
625 | * gcov.texi (Invoking Gcov): Document -c switch.. | |
626 | ||
df33da07 PDM |
627 | Wed Nov 10 01:10:41 1999 Philippe De Muyter <phdm@macqel.be> |
628 | ||
629 | * genoutput.c (output_insn_data): Cast `INSN_OUTPUT_FORMAT_MULTI' and | |
630 | `INSN_OUTPUT_FORMAT_FUNCTION' to `PTR'-type. | |
631 | ||
349c29b5 HPN |
632 | Wed Nov 10 00:51:41 1999 Hans-Peter Nilsson <hp@axis.se> |
633 | ||
634 | * invoke.texi (C Dialect Options): Add missing builtins from | |
635 | c-common.c to list. | |
636 | * extend.texi (Other Builtins): Copy to this list. | |
637 | ||
294ffb37 AO |
638 | Wed Nov 10 04:58:09 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
639 | ||
640 | * Makefile.in (recog.o): Use BASIC_BLOCK_H macro. | |
052777b9 | 641 | (print-rtl.o, $(HOST_PREFIX_1)print-rtl.o): Likewise. Remove |
294ffb37 AO |
642 | redundant bitmap.h. |
643 | ||
973d12cb JL |
644 | Wed Nov 10 00:02:53 1999 Jeffrey A Law (law@cygnus.com) |
645 | ||
4dc07bd7 JJ |
646 | * flow.c (compute_flow_dominators): No longer treat basic block 0 |
647 | or (n_basic_blocks - 1) specially. Clear the AUX field before | |
648 | starting computation of doms/pdoms. Fix initial state for pdoms. | |
973d12cb | 649 | |
ca76ec07 AO |
650 | Wed Nov 10 03:58:08 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
651 | ||
652 | * Makefile.in ($(HOST_PREFIX_1)rtl.o): Update dependencies to | |
653 | match rtl.o's: added ggc.h and toplev.h | |
654 | ($(HOST_PREFIX_1)print-rtl.o): Likewise: added system.h. | |
655 | ($(HOST_PREFIX_1)rtlanal.o): Likewise: added system.h. | |
656 | ($(HOST_PREFIX_1)obstack.o): Likewise: added $(CONFIG_H). | |
657 | ||
0deb20df TT |
658 | Tue Nov 9 10:30:08 1999 Tom Tromey <tromey@cygnus.com> |
659 | ||
660 | * config/i386/xm-djgpp.h (HAVE_DOS_BASED_FILE_SYSTEM): Renamed | |
661 | from HAVE_DOS_BASED_FILESYSTEM. | |
662 | * gcc.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM, not | |
663 | HAVE_DOS_BASED_FILESYSTEM. | |
664 | (main): Likewise. | |
665 | (split_directories): Only special-case DOS file names if | |
666 | HAVE_DOS_BASED_FILE_SYSTEM is defined. Use IS_DIR_SEPARATOR | |
667 | instead of explicit tests. Conditionalize on !VMS. | |
668 | (make_relative_prefix): Use IS_DIR_SEPARATOR instead of explicit | |
669 | tests. Conditionalize on !VMS. | |
670 | (process_command): Only use make_relative_prefix if !VMS. | |
671 | (free_split_directories): Conditionalize on !VMS. | |
672 | (DIR_UP): Conditionalize on !VMS. | |
673 | ||
674 | Wed Jun 9 16:57:11 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
675 | ||
676 | * gcc.c (STANDARD_BINDIR_PREFIX): Provide default. | |
677 | ||
678 | Fri Feb 5 14:22:01 1999 Mumit Khan <khan@xraylith.wisc.edu> | |
679 | ||
680 | * gcc.c (make_relative_prefix): Handle the HAVE_EXECUTABLE_SUFFIX | |
681 | case. | |
682 | ||
683 | Mon Nov 8 14:16:57 1999 Michael Meissner <meissner@cygnus.com> | |
684 | ||
685 | * invoke.texi (Environment Variables): Document relative path | |
686 | lookup. | |
687 | * gcc.c (DIR_UP): If not defined, define as "..". | |
688 | (standard_bindir_prefix): New static, holds target location to | |
689 | install binaries. | |
690 | (split_directories): New function to split a filename into | |
691 | component directories. | |
692 | (free_split_directories): New function, release memory allocated | |
693 | by split_directories. | |
694 | (make_relative_prefix): New function, make a relative pathname if | |
695 | the compiler is not in the expected location. | |
696 | (process_command): If GCC_EXEC_PREFIX was not specified, see if we | |
697 | can figure out an appropriate prefix from argv[0]. | |
698 | * Makefile.in (DRIVER_DEFINES): Use unlibsubdir in definition of | |
699 | STANDARD_STARTFILE_PREFIX and TOOLDIR_BASE_PREFIX. Define | |
700 | STANDARD_BINDIR_PREFIX. | |
701 | ||
798f6e6f MH |
702 | Wed Nov 10 11:47:54 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
703 | ||
704 | * config/c4x/c4x-protos.h: New file. Prototypes for functions defined | |
705 | in c4x.c. | |
706 | * config/c4x/c4x.h: Moved prototypes to c4x.h. | |
707 | * config/c4x/c4x.c (c4x_preferred_reload_class, c4x_limit_reload_class, | |
708 | c4x_secondary_memory_needed) Delete. | |
709 | (fp_zero_operand): Add mode argument. | |
710 | ||
dc8842bf AH |
711 | Thu Nov 4 15:52:35 1999 Andrew Haley <aph@cygnus.com> |
712 | ||
713 | * reload1.c (reload_reg_free_for_value_p): Don't use a register | |
714 | that is in reload_reg_used. | |
715 | ||
eb3921e8 NC |
716 | Tue Nov 9 16:43:00 1999 Nick Clifton <nickc@cygnus.com> |
717 | ||
718 | * config/arm/arm-protos.h: New file: Prototypes for functions | |
719 | defined in arm.c and pe.c. | |
720 | * config/arm/arm.h: Fix compile time warnings. | |
721 | * config/arm/arm.c: Fix compile time warnings. | |
722 | * config/arm/pe.h: Fix compile time warnings. | |
723 | * config/arm/aout.h: Fix compile time warnings. | |
724 | ||
56e2e762 NC |
725 | Tue Nov 9 14:55:44 1999 Nick Clifton <nickc@cygnus.com> |
726 | ||
727 | * config/m32r/m32r-protos.h: New file: Prototypes for functions | |
728 | defined in m32r.c | |
729 | ||
730 | * config/m32r/m32r.h: Move prototypes to m32r-protos.h | |
731 | Add support for subtargets. | |
732 | Add prototypes for new predicates. | |
733 | Add scheduling macros. | |
734 | ||
735 | * config/m32r/m32r.c: Fix compile time warnings. | |
736 | (int8_operand): New predicate function. | |
737 | (reg_or_cmp_int16_operand): New predicate function. | |
738 | (extend_operand): New predicate function. | |
739 | (m32r_adjust_code): New scheduling function. | |
740 | (m32r_adjust_priorty): New scheduling function. | |
741 | (m32r_sched_init): New scheduling function. | |
742 | (m32r_sched_reorder): New scheduling function. | |
743 | (m32r_sched_variable_issue): New scheduling function. | |
744 | (direct_return): New codegen function. | |
745 | (m32r_not_same_reg): New rtl testsing function. | |
746 | ||
747 | * config/m32r/m32r.md: Fix compile time warnings. | |
748 | Add support for pre decrement and post increment memory | |
749 | references. | |
750 | Add S<cc> patterns. | |
751 | Add fabs patterns. | |
752 | ||
312618c7 R |
753 | Mon Nov 8 22:20:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk> |
754 | ||
755 | * global.c (EXECUTE_IF_CONFLICT): Don't define. | |
756 | (prune_preferences): Use EXECUTE_IF_SET_IN_ALLOCNO_SET instead. | |
757 | (find_reg): Likewise. | |
04299876 JE |
758 | |
759 | Mon Nov 8 13:16:46 1999 Jason Eckhardt <jle@cygnus.com> | |
760 | ||
761 | * config/pa/pa.md (fmpynfadd,{sgl,dbl} insns): Use %fr0 rather than 0 | |
762 | to avoid assembler errors. | |
763 | ||
674fdc14 NC |
764 | Mon Nov 8 15:38:41 1999 Nick Clifton <nickc@cygnus.com> |
765 | ||
766 | * config/v850/v850-protos.h: New file: Prototypes for functions | |
767 | defined in v850.c | |
768 | * config/v850/v850.h: Move prototypes to v850-protos.h | |
769 | * config/v850/v850.c: Move prototypes to v850-protos.h | |
770 | * config/v850/v850.md: Fix compile time warnings. | |
771 | ||
82a9bba5 NC |
772 | * config/fr30/fr30-protos.h: New file: Prototypes for functions |
773 | defined in fr30.c | |
774 | * config/fr30/fr30.h: Move prototypes to fr30-protos.h | |
775 | * config/fr30/fr30.c: Fix compile time warnings. | |
776 | * config/fr30/fr30.md: Fix compile time warnings. | |
777 | ||
140b60b4 MM |
778 | Mon Nov 8 07:25:37 1999 Mark Mitchell <mark@codesourcery.com> |
779 | ||
780 | * tree.h (get_containing_scope): Declare it. | |
781 | * tree.c (get_containing_scope): New fucntion. | |
782 | (decl_function_context): Use it. | |
783 | * toplev.c (rest_of_compilation): Use get_containing_scope. | |
784 | ||
785 | aMon Nov 8 03:03:07 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
03645a0b AO |
786 | |
787 | * Makefile.in (rtl.o): Depend on toplev.h. | |
788 | ||
4da896b2 MM |
789 | Sun Nov 7 20:55:14 1999 Mark Mitchell <mark@codesourcery.com> |
790 | ||
791 | * cse.c (delete_trivially_dead_insns): Replace alloca with | |
792 | xmalloc/xcalloc. | |
793 | * except.c (update_rethrow_references): Likewise. | |
794 | (init_eh_nesting_info): Likewise. | |
795 | * function.c (identify_blocks): Likewise. | |
796 | * gcse.c (dump_hash_table): Likewise. | |
797 | * graph.c (print_rtl_graph_with_bb): Likewise. | |
798 | * loop.c (combine_movables): Likewise. | |
799 | (move_movables): Likewise. | |
800 | (count_loop_regs_set): Likewise. | |
801 | (strength_reduce): Likewise. | |
802 | * profile.c (compute_branch_probabilities): New function, split | |
803 | out from ... | |
804 | (branch_prob): Here. Replace alloca with xmalloc/xcalloc. | |
805 | * regclass.c (regclass): Likewise. | |
806 | * regmove.c (regmove_optimize): Likewise. | |
807 | * toplev.c (compile_file): Likewise. | |
808 | (main): Don't mess with the stack rlimit. | |
809 | ||
8d170590 CM |
810 | Sun Nov 7 19:41:17 1999 Catherine Moore <clm@cygnus.com> |
811 | ||
4dc07bd7 JJ |
812 | * config/elfos.h (ASM_DECLARE_FUNCTION_NAME): Conditionally define. |
813 | (ASM_DECLARE_FUNCTION_SIZE): Conditionally define. | |
8d170590 | 814 | |
1aecd750 MM |
815 | Sun Nov 7 10:23:28 1999 Mark P. Mitchell <mark@codesourcery.com> |
816 | ||
817 | * integrate.c (save_for_inline_nocopy): Clear in_nonparm_insns. | |
818 | ||
36013ffc JL |
819 | Sun Nov 7 02:58:48 1999 Jeffrey A Law (law@cygnus.com) |
820 | ||
821 | * global.c (EXECUTE_IF_CONFLICT): Undo Robert's change. | |
822 | (EXECUTE_IF_SET_IN_ALLOCNO_SET): Put curleys around CODE in | |
823 | macro expansion. | |
824 | ||
309ca067 RL |
825 | Sat Nov 6 23:48:30 1999 Robert Lipe (robertlipe@usa.net) |
826 | ||
827 | * global.c (EXECUTE_IF_CONFLICT): Correct quoting typo. | |
828 | ||
092ae4ba JL |
829 | Sat Nov 6 17:34:39 1999 Jeffrey A Law (law@cygnus.com) |
830 | ||
831 | * gcse.c (post_dominators): Kill. | |
832 | (alloc_code_hoist_mem, free_code_hoist_mem); Kill post_dominators. | |
833 | (compute_code_hoist_data): Use compute_flow_dominators. Do not | |
834 | pass in a pdom array since we do not need pdoms. | |
835 | * haifa-sched.c (schedule_insns): Similarly. | |
836 | * flow.c (compute_dominators): Remove dead function. | |
837 | (compute_flow_dominators): Do not compute doms or pdoms if the | |
838 | caller does not request them. Split up loop to build doms and | |
839 | pdoms. Use a worklist to compute doms and pdoms. | |
840 | * basic-block.h (compute_dominators): Remove prototype. | |
841 | ||
f66d83e1 RH |
842 | Sat Nov 6 11:38:39 1999 Richard Henderson <rth@cygnus.com> |
843 | ||
844 | * haifa-sched.c (struct haifa_insn_data, h_i_d): New. | |
845 | (insn_luid, insn_priority, insn_costs, insn_units): Remove. | |
846 | (insn_reg_weight, insn_depend, insn_dep_count): Remove. | |
847 | (insn_blockage, insn_ref_count, line_note, insn_tick): Remove. | |
848 | (cant_move, fed_by_spec_load, is_load_insn): Remove. | |
849 | (schedule_region): Remove unused variable. | |
850 | (schedule_insns): Allocate h_i_d, and not all the separate arrays. | |
851 | ||
ff154f78 MM |
852 | Sat Nov 6 10:00:34 1999 Mark Mitchell <mark@codesourcery.com> |
853 | ||
854 | * local-alloc.c (local_alloc): Use xmalloc/xcalloc, not alloca. | |
855 | (update_equiv_regs): Likewise. | |
856 | (block_alloc): Likewise. | |
857 | * reg-stack.c (reg_to_stack): Likewise. | |
858 | (convert_regs_2): Likewise. | |
859 | * reload1.c (reload_as_needed): Likewise. | |
860 | ||
951a525f MM |
861 | Sat Nov 6 09:57:59 1999 Mark Mitchell <mark@codesourcery.com> |
862 | ||
863 | * Makefile.in (dbxout.o): Depend on ggc.h. | |
864 | (dwarf2out.o): Likewise. | |
865 | (xcoffout.o): Likewise. | |
866 | * dbxout.c: Include ggc.h. | |
867 | (dbxout_init): Register lastfile as a root. | |
868 | * dwarf2out.c: Include ggc.h. | |
869 | (dwarf2out_line): Register lastfile as a root. | |
870 | * xcoffout.c: Include ggc.h. | |
871 | (xcoffout_source_line): Register xcoff_lastfile as a root. | |
872 | ||
e06981b0 RH |
873 | Sat Nov 6 09:52:09 1999 Richard Henderson <rth@cygnus.com> |
874 | ||
875 | * i386.md (movdf_1, movxf_1): Earlyclobber general regs destination. | |
876 | ||
65183558 CM |
877 | Sat Nov 6 07:48:59 1999 Catherine Moore <clm@cygnus.com> |
878 | ||
4dc07bd7 JJ |
879 | * config/svr4.h (ASM_DECLARE_FUNCTION): Check if already |
880 | defined. | |
881 | (ASM_DECLARE_FUNCTION_SIZE): Likewise. | |
65183558 | 882 | |
32c8d1bc R |
883 | Fri Nov 5 18:33:39 1999 J"orn Rennecke <amylaar@cygnus.co.uk> |
884 | ||
885 | * global.c (EXECUTE_IF_SET_IN_ALLOCNO_SET): New macro. | |
886 | (EXECUTE_IF_CONFLICT): Likewise. | |
887 | (ALLOCNO_LIVE_P): Avoid signed division. | |
888 | (SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE): Likewise. | |
889 | (prune_preferences, find_reg): Use EXECUTE_IF_CONFLICT. | |
890 | (record_one_conflict): Use EXECUTE_IF_SET_IN_ALLOCNO_SET. | |
891 | ||
b182031e RH |
892 | Fri Nov 5 12:04:02 1999 Richard Henderson <rth@cygnus.com> |
893 | ||
894 | * haifa-sched.c (schedule_block): Don't crash if there's no | |
895 | next insn for an interblock movement. | |
896 | (add_branch_dependences): Don't allow clobber insns to move either. | |
897 | ||
467403ca RH |
898 | Fri Nov 5 10:18:11 1999 Richard Henderson <rth@cygnus.com> |
899 | ||
900 | * i386.c (split_xf): New. | |
901 | * i386-protos.h: Declare it. | |
902 | * i386.md (movxf_1): Add general regs alternatives. | |
903 | (movxf_1+1): New splitter for same. | |
904 | ||
aa608fe6 NC |
905 | Fri Nov 5 12:05:52 1999 Nick Clifton <nickc@cygnus.com> |
906 | ||
907 | * function.c (purge_addressof_1): Add missing return values. | |
908 | ||
8c36698e NC |
909 | Fri Nov 5 10:07:25 1999 Nick Clifton <nickc@cygnus.com> |
910 | ||
911 | * function.c (is_addressof): New function. Returns true if | |
912 | the given piece of RTL is an ADDRESSOF. | |
913 | (purge_addressof_1): Make boolean. Return false if the | |
914 | ADDRESSOFs could not be purged. | |
915 | (purge_addressof): If ADDRESSOFs could not be purged from the | |
916 | notes attached to an insn, remove the offending note(s), | |
917 | unless they are attached to a libcall. | |
918 | ||
f4e2ed09 AJ |
919 | 1999-11-05 Andreas Jaeger <aj@suse.de> |
920 | ||
921 | * genoutput.c (null_operand =): Initialize all fields. | |
922 | ||
923 | * errors.h: Add extern to prototypes. | |
924 | ||
016cebc3 JL |
925 | Fri Nov 5 01:44:09 1999 Jeffrey A Law (law@cygnus.com) |
926 | ||
927 | * configure.in (m68k-next-nextstep4): Handle Openstep 4.2. | |
928 | * configure: Rebuilt. | |
929 | ||
267cf808 JL |
930 | Fri Nov 5 01:24:37 1999 J"orn Rennecke <amylaar@cygnus.co.uk> |
931 | ||
932 | * global.c (CONFLICTP, SET_CONFLICT): Avoid signed division. | |
933 | (mirror_conflicts): New function. | |
934 | (global_alloc): Call it. | |
935 | (expand_preferences): Remove redundant CONFLICTP test. | |
936 | (find_reg, dump_conflicts): Likewise. | |
937 | (prune_preferences): Process conflicts one word at a time. | |
938 | ||
939 | Fri Nov 5 01:05:21 1999 Richard Henderson <rth@cygnus.com> | |
940 | ||
941 | * global.c (build_insn_chain): Use EXECUTE_IF_SET_IN_BITMAP | |
942 | instead of an explicit loop. | |
943 | ||
26132f71 JW |
944 | Thu Nov 4 23:07:14 1999 Jim Wilson <wilson@cygnus.com> |
945 | ||
946 | * cse.c (cse_insn): Revert Oct 31 change. When computing src_elt, | |
947 | if REG_RETVAL check succeeds, then put classp in src_elt. | |
948 | ||
9399d5c6 JL |
949 | Thu Nov 4 23:48:14 1999 Jeffrey A Law (law@cygnus.com) |
950 | ||
951 | * function.c (pad_to_arg_alignment): Only update argument_pad | |
952 | if the argument's alignment is greater than STACK_BOUNDARY. | |
953 | ||
e7749837 RH |
954 | Thu Nov 4 16:44:53 1999 Richard Henderson <rth@cygnus.com> |
955 | ||
956 | * bitmap.h (BITMAP_XFREE): New. | |
957 | * flow.c (life_analysis): Use it. | |
958 | (life_analysis_1): Free blocks. | |
959 | ||
960 | * combine.c (undo_commit): New. | |
961 | (try_combine): Use it. Don't zap undobuf.undos. | |
962 | (combine_instructions): Don't zap undobuf.undos; free the | |
963 | undobuf.frees list. | |
964 | ||
965 | * local-alloc.c (local_alloc): Free qty_phys_num_sugg. | |
966 | ||
967 | * stmt.c (cost_table_): New. | |
968 | (estimate_case_costs): Use it instead of xmalloc. | |
969 | ||
970 | * toplev.c (compile_file): Reuse dumpname memory instead | |
971 | of strdup'ing it. | |
972 | ||
a6028d44 RH |
973 | Thu Nov 4 16:36:44 1999 Richard Henderson <rth@cygnus.com> |
974 | ||
975 | * reg-stack.c (convert_regs_1): Initialize target_stack->top | |
976 | after verifying an EH edge. | |
977 | ||
920a303d RH |
978 | * haifa-sched.c (init_rgn_data_dependences): Correctly |
979 | size bb_pending_lists_length when zeroing. | |
980 | ||
a6028d44 | 981 | Thu Nov 4 16:36:36 1999 Richard Henderson <rth@cygnus.com> |
bd695e1e RH |
982 | |
983 | * function.c (diddle_return_value): New. | |
984 | (expand_function_end): Use it. | |
985 | * stmt.c (expand_null_return): Likewise. | |
986 | (expand_value_return): Likewise. | |
987 | ||
988 | * reg-stack.c (subst_stack_regs_pat): Handle clobbers at top-level. | |
989 | ||
990 | * reload1.c (reload): Don't remove return value clobbers. | |
991 | ||
49886fe1 RH |
992 | Thu Nov 4 13:33:46 1999 Richard Henderson <rth@cygnus.com> |
993 | ||
994 | * rtl.c (read_rtx): Use fatal_with_file_and_line not fatal. | |
995 | ||
75c6bd46 RH |
996 | Thu Nov 4 12:49:52 1999 Richard Henderson <rth@cygnus.com> |
997 | ||
998 | * cse.c (cse_main): Use xmalloc, not alloca. | |
999 | (cse_basic_block): Likewise. | |
1000 | * local-alloc.c (local_alloc): Likewise. | |
1001 | ||
1002 | Thu Nov 4 14:22:12 1999 David Billinghurst <David.Billinghurst@riotinto.com.au> | |
1003 | Alexandre Oliva <oliva@lsd.ic.unicamp.br> | |
17074a35 DB |
1004 | |
1005 | * rtl.c: Include toplev.h. | |
1006 | (fatal): Remove declaration. | |
1007 | ||
eae48b73 JL |
1008 | Thu Nov 4 06:39:47 1999 Jeffrey A Law (law@cygnus.com) |
1009 | ||
1010 | * haifa-sched.c (schedule_block): Fix thinko. | |
1011 | ||
063174ee BK |
1012 | 1999-11-03 James McKelvey <mckelvey@fafnir.com> |
1013 | ||
1014 | * fixinc/fixincl.c(create_file): Allow for systems that do not have | |
1015 | S_IR* defined values | |
1016 | ||
1017 | 1999-11-03 Philippe De Muyter <phdm@macqel.be> | |
1018 | ||
1019 | * fixlib.c (load_file_data): Do not call `realloc' with a NULL pointer; | |
1020 | call `malloc' instead. | |
1021 | ||
673b5311 MM |
1022 | Wed Nov 3 23:05:14 1999 Mark Mitchell <mark@codesourcery.com> |
1023 | ||
1024 | * flags.h (flag_renumber_insns): Declare. | |
1025 | * emit-rtl.c (renumber_insns): Check flag_renumber_insns. Print | |
1026 | renumbering table. | |
1027 | * rtl.h (renumber_insns): Change prototype. | |
1028 | * toplev.c (flag_renumber_insns): Define. | |
1029 | (rest_of_compilation): Pass rtl_dump_file to flag_renumber_insns. | |
1030 | ||
c0ec7a75 DM |
1031 | Wed Nov 3 15:11:27 1999 David S. Miller <davem@redhat.com> |
1032 | ||
1033 | * config/sparc/sparc.md: Remove insn type fpsqrt, add fpsqrts | |
1034 | and fpsqrtd. Use them and create fdiv function unit to more | |
1035 | accurately represent fpu sqrt pipeline semantics on UltraSparc. | |
1036 | * config/sparc/sparc.c: Account for fpsqrt{s,d} changes. | |
1037 | ||
1038 | Wed Nov 3 15:11:27 1999 Matteo Frigo <athena@fftw.org> | |
1039 | ||
1040 | * config/sparc/sparc.md: Adjust FADD/FMUL result latencies to | |
1041 | 3 on UltraSparc. | |
1042 | * config/sparc/sparc.c (ultra_schedule_insn): Insert launched | |
1043 | insn into ready list, do not use just a raw swap. | |
1044 | ||
98903742 MM |
1045 | Wed Nov 3 14:51:59 1999 Mark P. Mitchell <mark@codesourcery.com> |
1046 | ||
aeeeda03 MM |
1047 | * rtl.h (renumber_insns): New function. |
1048 | (remove_unnecessary_notes): Likewise. | |
1049 | * emit-rtl.c (renumber_insns): Define. | |
1050 | (remove_unncessary_notes): Likewise. | |
1051 | * toplev.c (rest_of_compilation): Remove dead code. | |
1052 | Use renumber_insns and remove_unncessary_notes. | |
1053 | ||
0511851c MM |
1054 | * gcse.c (struct null_pointer_info): New type. |
1055 | (get_bitmap_width): New function. | |
1056 | (current_block): Remove. | |
1057 | (nonnull_local): Likewise. | |
1058 | (nonnull_killed): Likewise. | |
1059 | (invalidate_nonnull_info): Take a null_pointer_info as input. | |
1060 | (delete_null_pointer_checks_1): New function. | |
1061 | (delete_null_pointer_checks): Use it. | |
1062 | ||
98903742 MM |
1063 | * haifa-sched.c (find_rgns): Replace uses of alloca with xmalloc. |
1064 | (split_edges): Likewise. | |
1065 | (schedule_block): Likewise. | |
1066 | (compute_block_backward_dependencies): Likewise. | |
1067 | (schedule_region): Likewise. | |
1068 | (schedule_insns): Likewise. | |
1069 | ||
8cd0faaf CM |
1070 | Wed Nov 3 15:40:23 1999 Catherine Moore <clm@cygnus.com> |
1071 | ||
bd695e1e RH |
1072 | * defaults.h (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Provide default. |
1073 | * emit-rtl.c (gen_label_rtx): Support LABEL_ALTERNATE_NAME. | |
1074 | * final.c (final_scan_insn): Emit LABEL_ALTERNATE_NAME. | |
1075 | * ggc-common.c (ggc_mark_rtx_children): Mark LABEL_ALTERNATE_NAME. | |
1076 | * jump.c (delete_unreferenced_labels): Don't delete if | |
1077 | LABEL_ALTERNATE_NAME is set. | |
1078 | * print-rtl.c (print_rtx): Dump alternate name. | |
1079 | * rtl.def (CODE_LABEL): Change format to "iuuis00s". | |
1080 | * rtl.h (LABEL_ALTERNATE_NAME): Define. | |
1081 | * rtl.texi (LABEL_ALTERNATE_NAME): Document. | |
1082 | * tm.texi (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Document. | |
8cd0faaf | 1083 | |
4b66e1c0 KG |
1084 | Wed Nov 3 15:39:19 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1085 | ||
1086 | * fix-header.c (recognized_extern, recognized_function): Constify | |
1087 | a char*. | |
1088 | ||
1089 | * lcm.c (compute_laterin): Remove unused variable `temp_bitmap'. | |
1090 | (pre_edge_lcm): Mark parameter `file' with ATTRIBUTE_UNUSED. | |
1091 | (compute_available): Remove unused variable `last'. | |
1092 | (compute_nearerout): Remove unused variable `temp_bitmap'. | |
1093 | (pre_edge_rev_lcm): Mark parameter `file' with ATTRIBUTE_UNUSED. | |
1094 | Remove unused variable `x'. | |
1095 | ||
1096 | * scan.h (recognized_function, recognized_extern): Constify a | |
1097 | char*. | |
1098 | ||
1099 | * simplify-rtx.c (simplify_rtx): Remove unused variable `new'. | |
1100 | ||
241a1bcc FS |
1101 | Wed Nov 3 10:40:53 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
1102 | ||
1103 | * varasm.c (decode_rtx_const): Use XSTR to access the string | |
1104 | of a SYMBOL_REF. | |
1105 | ||
efd67b42 RH |
1106 | Wed Nov 3 10:10:58 1999 Richard Henderson <rth@cygnus.com> |
1107 | ||
1108 | * c-decl.c (duplicate_decls): Copy DECL_MODE too. | |
1109 | ||
1b3b5765 BS |
1110 | Wed Nov 3 12:12:59 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
1111 | ||
1112 | * reload1.c (eliminate_regs_in_insn): If copying insn, also copy notes. | |
1113 | ||
77355bd5 JL |
1114 | Wed Nov 3 03:26:28 1999 Jeffrey A Law (law@cygnus.com) |
1115 | ||
eb5a4898 JL |
1116 | * pa.c (ireg_operand): New function. |
1117 | * pa.h (PREDICATE_CODES): Handle ireg_operand. | |
1118 | * pa.md (parallel_addb, parallel_movb): Use ireg_operand. | |
1119 | Fix out of date comment. | |
1120 | ||
4aa95f0d JL |
1121 | * pa.md (negdi2): Turn into expander + anonymous pattern. |
1122 | ||
6f04382a JL |
1123 | * reload.c (find_reloads): Fix typos in recent change. |
1124 | ||
77355bd5 JL |
1125 | * dwarf2out.c: Do not include ctype.h. |
1126 | ||
6457af89 RK |
1127 | Tue Nov 2 21:53:44 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1128 | ||
1129 | * regclass.c (record_reg_classes): Always use may_move_cost when | |
1130 | seeing how operand fits with various register classes. | |
1131 | ||
925fa227 RH |
1132 | Tue Nov 2 15:38:17 1999 Richard Henderson <rth@cygnus.com> |
1133 | ||
1134 | * resource.c: Revert Oct 26 20:42 and Oct 27 00:56 changes. | |
1135 | * toplev.c: Revert Nov 1 13:22 change. | |
1136 | ||
b2153414 JE |
1137 | Tue Nov 2 14:21:37 1999 Jason Eckhardt <jle@cygnus.com> |
1138 | ||
1139 | * config/pa/pa.md (height reduction patterns): Add checks for | |
241a1bcc FS |
1140 | overlapping operands to avoid semantic-destroying splits for |
1141 | height reduction patterns. | |
b2153414 | 1142 | |
1a87de8d AO |
1143 | Tue Nov 2 15:27:31 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
1144 | ||
1145 | * configure.in (m68k-hp-hpux*, xm_alloca.h): The underscore should | |
1146 | have been an hyphen, fixed. | |
1147 | * configure: Rebuilt. | |
1148 | ||
b020fd92 NC |
1149 | Tue Nov 2 17:04:36 1999 Nick Clifton <nickc@cygnus.com> |
1150 | ||
1151 | * config/arm/tpe.h: Add prototypes for exported functions. | |
1152 | * config/arm/pe.c: Fix compile time warnings. | |
1153 | * config/arm/semi.h: Fix compile time warnings. | |
1154 | * config/arm/arm.c: Fix compile time warnings. | |
1155 | * config/arm/arm.h: Fix compile time warnings. | |
1156 | * config/arm/arm.md: Fix compile time warnings. | |
1157 | * config/arm/thumb.c: Fix compile time warnings. | |
1158 | * config/arm/thumb.h: Fix compile time warnings. | |
1159 | * config/arm/thumb.md: Fix compile time warnings. | |
1160 | ||
f5da5c87 JH |
1161 | Tue Nov 2 04:10:24 1999 Jan Hubicka <hubicka@freesoft.cz> |
1162 | ||
1163 | * jump.c (jump_optimize_1): Swap the incscc and the conditional mode | |
1164 | detection code | |
1165 | ||
1166 | * unroll.c (unroll_loop): Remove LOOP notes when loop is | |
1167 | completely unrolled. | |
1168 | ||
c3dfacf0 BS |
1169 | Tue Nov 2 16:57:22 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
1170 | ||
1171 | * cse.c (simplify_plus_minus, check_fold_const): Delete declarations. | |
1172 | ||
b5ee7789 CM |
1173 | Tue Nov 2 09:43:00 1999 Catherine Moore <clm@cygnus.com> |
1174 | ||
241a1bcc FS |
1175 | * Makefile.in (genattrtab): Don't use (HOST_RTLANAL). |
1176 | * rtl.h (rtx_equal_p): Move prototype. | |
1177 | * rtl.c (rtx_equal_function_value_matters): Move from | |
1178 | rtlanal.c | |
1179 | (rtx_equal_p): Likewise. | |
1180 | * rtlanal.c (rtx_equal_function_value_matters): Delete. | |
1181 | (rtx_equal_p): Likewise. | |
b5ee7789 | 1182 | |
bf279c4e JM |
1183 | Mon Nov 1 23:21:17 1999 Jason Merrill <jason@yorick.cygnus.com> |
1184 | ||
1185 | * libgcc2.c (__do_global_dtors): Only do EH frame stuff if | |
1186 | ! HAS_INIT_SECTION. | |
1187 | ||
d269eb53 JL |
1188 | Mon Nov 1 23:37:38 1999 Jeffrey A Law (law@cygnus.com) |
1189 | ||
95247088 JL |
1190 | * gcc.1 (PA options): Remove obsolete -mshared-libs options. |
1191 | ||
937ac3f9 JL |
1192 | * pa.h (ADDR_VEC_ALIGN): Define. |
1193 | ||
a5a06a78 JL |
1194 | * jump.c (jump_optimize_1): Also move LOOP_VTOP and LOOP_CONT |
1195 | notes when presented with "if (foo) break; end_of_loop" and | |
1196 | the break sequence gets moved out of the loop. | |
1197 | ||
d269eb53 JL |
1198 | * unroll.c (unroll_loop): Allocate memory for MAP using xcalloc. |
1199 | Remove explicit zero initializations of entries within MAP. | |
1200 | ||
f6d20486 RH |
1201 | Mon Nov 1 18:09:14 1999 Richard Henderson <rth@cygnus.com> |
1202 | ||
1203 | * reg-stack.c (convert_regs_1): Handle EH edges specially. | |
1204 | ||
c05ddfa7 MM |
1205 | Mon Nov 1 15:41:01 1999 Mark P. Mitchell <mark@codesourcery.com> |
1206 | ||
67289ea6 MM |
1207 | * bitmap.h (BITMAP_XMALLOC): New macro. |
1208 | * flow.c (CLEAN_ALLOCA): Remove. | |
1209 | (delete_unreachable_blocks): Use xmalloc/xcalloc instead of alloca. | |
1210 | (life_analysis): Likewise. | |
1211 | (update_life_info): Don't use CLEAN_ALLOCA. | |
1212 | (life_analysis_1): Use xmalloc/xcalloc instead of alloca. | |
1213 | (calculate_global_regs_live): Likewise. | |
1214 | (print_rtl_with_bb): Likewise. | |
1215 | (verify_flow_info): Likewise. | |
1216 | * global.c (global_alloc): Likewise. | |
1217 | (global_conflicts): Likewise. | |
1218 | * integrate.c (save_for_inline_nocopy): Likewise. | |
1219 | (expand_inline_function): Likewise. | |
1220 | * jump.c (jump_optimize_1): Likewise. | |
1221 | (duplicate_loop_exit_test): Likewise. | |
1222 | (thread_jumps): Likewise. | |
1223 | * loop.c (loop_optimize): Likewise. | |
1224 | (combine_givs): Likewise. | |
1225 | (recombine_givs): Likewise. | |
1226 | * reorg.c (dbr_schedule): Likewise. | |
98903742 MM |
1227 | * unroll.c (unroll_loop): Likewise. |
1228 | ||
c05ddfa7 MM |
1229 | * combine.c (combine_instructions): Use xmalloc instead of alloca. |
1230 | ||
9fd4e328 RH |
1231 | Mon Nov 1 13:22:30 1999 Richard Henderson <rth@cygnus.com> |
1232 | ||
1233 | * toplev.c (rest_of_compilation): Don't optimize the CFG | |
1234 | when rebuilding, just before dbr. | |
1235 | ||
d9bba9c3 KG |
1236 | Mon Nov 1 14:35:50 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1237 | ||
1238 | * output.h (assemble_end_function, assemble_destructor, | |
1239 | assemble_constructor, assemble_gc_entry, assemble_global, | |
1240 | assemble_label, output_constant_pool) Constify a char*. | |
1241 | ||
1242 | * varasm.c (assemble_destructor, assemble_constructor, | |
1243 | assemble_gc_entry, assemble_end_function, assemble_global, | |
1244 | assemble_label, output_constant_pool): Likewise. | |
1245 | ||
9074519d NC |
1246 | Mon Nov 1 14:22:51 1999 Nick Clifton <nickc@cygnus.com> |
1247 | ||
1248 | * config/arm/thumb.c (thumb_expand_prologue): Add comments | |
1249 | explaining what is goin on in this function. | |
1250 | ||
da2c0219 RK |
1251 | Mon Nov 1 08:03:15 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1252 | ||
1253 | * regclass.c (record_reg_classes): In matching case, recompute | |
1254 | costs since the direction of movement is different. | |
e5de8c72 | 1255 | |
96e9c98d DN |
1256 | Sun Oct 31 21:59:34 MST 1999 Diego Novillo <dnovillo@cygnus.com> |
1257 | ||
1258 | * resource.c (mark_target_live_regs): For unconditional branches, | |
1259 | the resources found at the branch target should be added to the | |
1260 | resources found so far, not intersected. | |
1261 | ||
99d525c9 PDM |
1262 | Sun Oct 31 15:48:49 1999 Philippe De Muyter <phdm@macqel.be> |
1263 | ||
9fd4e328 RH |
1264 | * fixinc/fixtests.c, fixinc/fixfixes.c : Keep `#' in first column for |
1265 | old cpp's. | |
1266 | * fixinc/fixincl.c (fcntl.h) : Do not include this file twice. | |
1267 | (sys/mman.h): Include this file only if #HAVE_MMAP. | |
1268 | (run_compiles): Initialize `esac_fmt' with one old KR string, not | |
1269 | with automatically concatenated ANSI strings. | |
99d525c9 | 1270 | |
4934cc53 MM |
1271 | Sun Oct 31 23:57:07 1999 Mark Mitchell <mark@codesourcery.com> |
1272 | ||
1273 | * ggc-page.c (struct page_entry): Remove save_num_free_objects. | |
1274 | (DIV_ROUND_UP): Robustify. | |
1275 | (ggc_recalculate_in_use_p): New function. | |
1276 | (release_pages): Don't inline it. | |
1277 | (ggc_alloc_obj): Don't refuse to allocate objects on pages for | |
1278 | outer contexts. | |
1279 | (ggc_pop_context): Use ggc_recalculate_in_use_p. | |
1280 | (clear_marks): Always save in_use_p. | |
1281 | (sweep_pages): Use ggc_recalculate_in_use_p. | |
1282 | (ggc_page_print_statistics): Avoid signed/unsigned comparisons. | |
1283 | Release pages before counting statistics. | |
1284 | ||
3e038608 MM |
1285 | Sun Oct 31 23:42:37 1999 Mark Mitchell <mark@codesourcery.com> |
1286 | ||
1287 | * toplev.c (rest_of_compilation): Fix thinko in this change: | |
1288 | ||
1289 | Fri Oct 29 15:25:07 1999 Arnaud Charlet <charlet@ACT-Europe.FR> | |
1290 | ||
1291 | (rest_of_compilation): If inside an inlined external function, | |
1292 | pretend we are just being declared. | |
1293 | ||
36a1fa96 JL |
1294 | Sun Oct 31 23:03:25 1999 Jeffrey A Law (law@cygnus.com) |
1295 | ||
e5de8c72 JL |
1296 | * flow.c (calculate_global_regs_live): Fix thinko. |
1297 | ||
9fd4e328 RH |
1298 | * integrate.c (expand_inline_function): Fix bugs in previous |
1299 | change from Oct 28, 1999. | |
36a1fa96 | 1300 | |
8988b217 MM |
1301 | Sun Oct 31 20:27:45 1999 Mark Mitchell <mark@codesourcery.com> |
1302 | ||
1303 | * stmt.c (expand_value_return): Fix typo in this change: | |
1304 | ||
1305 | Thu Oct 28 18:06:50 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
1306 | (expand_value_return): Correctly convert VAL when promoting function | |
1307 | return; support RETURN_REG being a PARALLEL. | |
1308 | ||
77fd6d10 MM |
1309 | Sun Oct 31 20:25:42 1999 Mark P. Mitchell <mark@codesourcery.com> |
1310 | ||
1311 | * expr.c (readonly_fields_p): Ignore everything except FIELD_DECLs. | |
1312 | ||
99f44eba KG |
1313 | Sun Oct 31 20:42:17 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1314 | ||
1315 | * hard-reg-set.h (reg_names): Constify a char*. | |
1316 | ||
1317 | * regclass.c (reg_names): Likewise. | |
1318 | ||
1319 | * regs.h (reg_names): Likewise | |
1320 | ||
1321 | * a29k/a29k.c (reg_names): Delete declaration. | |
1322 | ||
1323 | * a29k/a29k.h (CONDITIONAL_REGISTER_USAGE): Constify a char*. | |
1324 | ||
1325 | * arc/arc.c (arc_save_restore, arc_output_function_prologue, | |
1326 | arc_output_function_epilogue): Likewise. | |
1327 | ||
1328 | * elxsi/elxsi.c (reg_names): Likewise. | |
1329 | ||
1330 | * gmicro/gmicro.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise. | |
1331 | ||
1332 | * m32r/m32r.c (m32r_output_function_epilogue, emit_cond_move): | |
1333 | Likewise. | |
1334 | ||
1335 | * m88k/m88k.c (output_function_profiler): Likewise. | |
1336 | ||
1337 | * sparc/sparc.c (sparc_flat_output_function_prologue, | |
1338 | sparc_flat_output_function_epilogue): Likewise. | |
1339 | ||
8fbe1035 ML |
1340 | Sun Oct 31 13:32:15 CET 1999 Marc Lehmann <pcg@goof.com> |
1341 | ||
1342 | * toplev.c (rest_of_compilation): Seperate the setjmp/vfork clobber | |
9fd4e328 RH |
1343 | warning from -Wuninitialized and put it under -W. |
1344 | * function.c (uninitialized_vars_warning): Warn only when the | |
1345 | corresponding flag is set. | |
8fbe1035 | 1346 | |
f5d236de JL |
1347 | Sun Oct 31 01:53:30 1999 Jeffrey A Law (law@cygnus.com) |
1348 | ||
e26ef527 JL |
1349 | * cse.c (cse_insn): If an insn has only a single set, SRC_EQV |
1350 | is nonzero and the single set does not have an elt, then assign | |
1351 | it an elt. | |
1352 | ||
0cedb36c JL |
1353 | * simplify-rtx.c: New file. |
1354 | * Makefile.in (OBJS): Add simplify-rtx.o | |
1355 | (simplify-rtx.o): Add dependencies. | |
1356 | * rtl.h (simplify_gen_binary, simplify_rtx): Add prototypes. | |
1357 | * cse.c: Use simplify_gen_binary intead of cse_gen_binary. | |
1358 | (cse_gen_binary, simplify_unary_operation): Delete. | |
1359 | (simplify_binary_operation, simplify_plus_minus): Likewise. | |
1360 | (check_fold_consts, simplify_relation_operation): Likewise. | |
1361 | (simplify_ternary_operation): Likewise. | |
1362 | (delete_trivially_dead_insns): Simplify the contents of the | |
1363 | REG_EQUAL note before trying to substitute it into the source | |
1364 | of the reg-reg copy at the end of a libcall sequence. | |
1365 | ||
31ec4e5e JL |
1366 | * combine.c (combine_simplify_rtx): Renamed from simplify_rtx. All |
1367 | references/callers changed. | |
1368 | ||
60860055 JL |
1369 | * mn10200.c (mn10200_va_arg): Force the return value into a |
1370 | register. | |
1371 | ||
ee61fc79 JL |
1372 | * fr30.h (EXTRA_CC_NAMES): Remove obsolete macro. |
1373 | ||
f5d236de JL |
1374 | * cccp.c (macroexpand): Avoid out of range accesses for omitted |
1375 | arguments. | |
1376 | ||
2949a9b6 SM |
1377 | Sat Oct 30 22:42:50 1999 Stephen L Moshier <moshier@mediaone.net> |
1378 | ||
1379 | * c-lex.c (yylex): Accept 'f' in mantissa of hex float constant. | |
1380 | ||
0d19c2a1 JL |
1381 | Sat Oct 30 22:19:26 1999 Jeffrey A Law (law@cygnus.com) |
1382 | ||
1383 | * fold-const.c (fold): Fix thinko when optimizing comparisons | |
1384 | against -0.0. | |
1385 | ||
80126298 DS |
1386 | Sat Oct 30 21:32:17 1999 David Starner <dstarner98@aasaa.ofe.org> |
1387 | ||
1388 | * gcc.texi (Passes): Update front-end files to their current | |
1389 | location. | |
1390 | ||
3611aef0 RH |
1391 | Sat Oct 30 14:41:40 1999 Richard Henderson <rth@cygnus.com> |
1392 | ||
1393 | * alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Call secondary_reload_class. | |
1394 | (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. | |
1395 | (PREDICATE_CODES): Add addition_operation. | |
1396 | * alpha-protos.h (addition_operation): Declare. | |
1397 | (secondary_reload_class): Likewise. | |
1398 | * alpha.c (addition_operation): New. | |
1399 | (secondary_reload_class): New, from old SECONDARY_INPUT_RELOAD_CLASS. | |
1400 | * alpha.md (adddi3): Turn into expander. | |
1401 | (*lda, *adddi_2): New. | |
1402 | (movsf, movdf patterns): Don't preference integer regs. | |
1403 | (movsi, movdi patterns): Don't preference fp regs. | |
1404 | ||
1e193337 RH |
1405 | Sat Oct 30 14:38:22 1999 Richard Henderson <rth@cygnus.com> |
1406 | ||
1407 | * genrecog.c (write_switch): Check for duplicate CODE cases. | |
1408 | ||
cb2ec151 RH |
1409 | Sat Oct 30 14:31:48 1999 Richard Henderson <rth@cygnus.com> |
1410 | ||
1411 | * ggc-common.c: Update pre-function commentary. | |
1412 | * ggc-page.c: Likewise. | |
1413 | (poison): Remove. | |
1414 | (poison_pages): Use memset directly. | |
1415 | (ggc_alloc_obj): Likewise. Use a different pattern than poison_pages. | |
1416 | (ggc_collect): Poison before sweeping. | |
1417 | * ggc-simple.c: Update pre-function commentary. | |
1418 | (ggc_alloc_obj): Poison non-zeroed memory. | |
1419 | ||
e225758a MM |
1420 | Sat Oct 30 14:28:52 1999 Mark Mitchell <mark@codesourcery.com> |
1421 | ||
1422 | * ggc-common.c (ggc_print_statistics): Make arguments to fprintf | |
1423 | match format string, even on 64-bit hosts. | |
1424 | * gcc-page.c (ggc_page_print_statistics): Likewise. | |
1425 | ||
e42ea7f9 CM |
1426 | Sat Oct 30 14:38:04 1999 Catherine Moore <clm@cygnus.com> |
1427 | ||
1428 | * config/i386/i386.c (ix86_cpu): Revert last patch. | |
1429 | * config/i386/i386.h (ix86_cpu): Ditto. | |
1430 | ||
501eb93c JW |
1431 | Fri Oct 29 17:00:42 1999 Jim Wilson <wilson@cygnus.com> |
1432 | ||
1433 | * stor-layout.c (layout_type): When compute TYPE_SIZE_UNIT from | |
1434 | TYPE_SIZE, convert type of result to sizetype. | |
1435 | ||
3071fab5 RH |
1436 | Fri Oct 29 14:34:17 1999 Richard Henderson <rth@cygnus.com> |
1437 | ||
1438 | * flow.c (count_or_remove_death_notes): Equate NULL with the | |
1439 | universal set. | |
1440 | ||
1441 | * jump.c, reg-stack.c, toplev.c: Revert Oct 27 change. | |
1442 | * toplev.c (rest_of_compilation): Rebuild CFG immediately before | |
1443 | dbr_schedule. | |
1444 | ||
1445 | * i386.c (pic_label_no): Delete. | |
1446 | (ix86_attr_length_default): Don't use single_set to peek | |
1447 | inside a parallel. | |
1448 | ||
1449 | * recog.c (peephole2_optimize): Allow recog_next_insn to index | |
1450 | the first insn after bb->end. | |
1451 | * i386.md (push mem peeps): Scratch is live after evaluation | |
1452 | of the memory. | |
1453 | (cmp mem peep): Similarly. | |
1454 | ||
7281a327 CM |
1455 | Fri Oct 29 11:50:11 1999 Catherine Moore <clm@cygnus.com> |
1456 | ||
1457 | * calls.c (emit_library_call_value): Fix declaration of alignment_pad. | |
1458 | * function.c (pad_to_arg_alignment): Add missing braces. | |
1459 | ||
e03c5670 KG |
1460 | Fri Oct 29 13:53:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1461 | ||
1462 | * alpha/alpha-protos.h (literal_section): Add prototype. | |
1463 | (alpha_need_linkage, alpha_start_function,alpha_end_function): | |
1464 | Constify a char*. | |
1465 | ||
1466 | * alpha/alpha.c (alpha_ra_ever_killed, set_frame_related_p): Add | |
1467 | prototype. | |
1468 | (alpha_start_function, alpha_end_function, float_strings, | |
1469 | alpha_need_linkage): Constify a char* | |
1470 | ||
1471 | * alpha/alpha.h (ASM_OUTPUT_ASCII, ASM_OUTPUT_MI_THUNK): Likewise. | |
1472 | ||
1473 | * alpha/alpha32.h (ASM_OUTPUT_MI_THUNK): Likewise. | |
1474 | ||
1475 | * alpha/elf.h (ASM_FINISH_DECLARE_OBJECT): Likewise. | |
1476 | ||
1477 | * alpha/vms.h (ASM_OUTPUT_SECTION_NAME): Likewise. | |
1478 | ||
a8f227e7 KG |
1479 | Fri Oct 29 13:49:39 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1480 | ||
1481 | * flow.c (debug_flow_info): Add prototype. | |
1482 | ||
1483 | * gcc.c (main): Likewise. | |
1484 | ||
1485 | * gcse.c (expr_reaches_here_p_work, pre_expr_reaches_here_p_work): | |
1486 | Likewise. | |
1487 | ||
1488 | * reload1.c (failed_reload, set_reload_reg): Likewise. | |
1489 | ||
1490 | * mips-tfile.c (main): Likewise. | |
1491 | (pfatal_with_name, fancy_abort, botch, fatal, catch_signal): Mark | |
1492 | with ATTRIBUTE_NORETURN. | |
1493 | ||
90e0ee00 AH |
1494 | Fri Oct 29 18:16:03 1999 Andrew Haley <aph@cygnus.com> |
1495 | ||
1496 | * config/i386/i386.h (ENCODE_SECTION_INFO): Don't do anything if | |
1497 | DECL is not a memory ref. | |
1498 | ||
4fba1061 CM |
1499 | Fri Oct 29 09:05:34 1999 Catherine Moore <clm@cygnus.com> |
1500 | ||
1501 | * config/i386/i386.h (ix86_cpu): Remove extern attribute. | |
1502 | * config/i386/i386.c (ix86_cpu): Add extern attribute. | |
1503 | ||
273eca16 AH |
1504 | Fri Oct 29 16:30:04 1999 Andrew Haley <aph@cygnus.com> |
1505 | ||
9fd4e328 RH |
1506 | * config/mips/elf.h: remove NAME__MAIN and SYMBOL__MAIN. |
1507 | * config/mips/elf64.h: ditto. | |
273eca16 | 1508 | |
4fc026cd CM |
1509 | Fri Oct 29 08:03:57 1999 Catherine Moore <clm@cygnus.com> |
1510 | ||
1511 | * expr.c (emit_push_insn): New argument alignment_pad. | |
1512 | Update all callers. Adjust stack pointer based on alignment pad. | |
1513 | * function.c (pad_to_arg_alignment): New argument alignment_pad. | |
1514 | Update all callers. Track alignment_pad if boundary > PARM_BOUNDARY. | |
1515 | (locate_and_pad_parm): New argument alignment_pad. Update all | |
1516 | callers. | |
1517 | * expr.h (emit_push_insn): Update prototype. | |
1518 | (locate_and_pad_parm): Update prototype. | |
1519 | * calls.c (arg_data): Add new field alignment_pad. | |
1520 | (initialize_argument_information): Initialize alignment_pad. | |
1521 | ||
5faf03ae MM |
1522 | Fri Oct 29 02:51:35 1999 Mark Mitchell <mark@codesourcery.com> |
1523 | ||
1524 | * except.c (free_eh_nesting_info): Free the info itself. | |
1525 | * function.c (free_after_compilation): Don't free NULL. | |
1526 | * gcse.c (alloc_pre_mem): Free the temp_bitmap, too. | |
1527 | (pre_edge_insert): Free inserted. | |
1528 | * stmt.c (free_stmt_status): Don't free NULL. | |
1529 | ||
14a774a9 RK |
1530 | Fri Oct 29 15:25:07 1999 Arnaud Charlet <charlet@ACT-Europe.FR> |
1531 | ||
1532 | * gcov.c (DIR_SEPARATOR): Provide default. | |
1533 | (output_data): Add test for MS-DOS format absolute filename. | |
1534 | (fancy_abort): Correct program name. | |
1535 | (open_files): Open all files in binary mode. | |
1536 | * libgcc2.c (__bb_exit_func): Likewise. | |
1537 | ||
1538 | * profile.c (init_branch_prob): Specify binary when opening files. | |
1539 | ||
1540 | * flags.h (flag_unwind_tables): New decl. | |
1541 | * toplev.c (flag_unwind_table): New definition. | |
1542 | (f_options): Add -funwind-tables. | |
1543 | (decode_g_option): Clarify warning when unknown -g option is given. | |
1544 | (rest_of_compilation): If inside an inlined external function, | |
1545 | pretend we are just being declared. | |
1546 | ||
1547 | * dwarf2out.c (dwarf2out_do_frame): Check -funwind_tables. | |
1548 | (dwarf2out_frame_finish): Likewise. | |
1549 | ||
14a774a9 RK |
1550 | Fri Oct 29 07:44:26 1999 Vasco Pedro <vp@di.fct.unl.pt> |
1551 | ||
1552 | * fold-const.c (merge_ranges): In not in0, but in1, handle | |
1553 | upper bounds equal like subset case. | |
1554 | ||
1555 | Thu Oct 28 19:22:24 1999 Douglas Rupp <rupp@gnat.com> | |
1556 | ||
1557 | * dbxout.c (dbxout_parms): Generate a second stabs line for parameters | |
1558 | passed in a register but moved to the stack. | |
1559 | ||
1560 | Thu Oct 28 19:12:57 1999 Sam Tardieu <tardieu@act-europe.fr> | |
1561 | ||
1562 | * gcc.c (pass_exit_codes, greatest_status): New variables. | |
1563 | (struct option_map): Add entry for "--pass-exit-codes". | |
1564 | (execute): Update greatest_status if error. | |
1565 | (display_help): Add documentation for -pass-exit-codes. | |
1566 | (process_command): Handle -pass-exit-codes. | |
1567 | (main): Look at pass_exit_codes and greatest_status on call to exit. | |
1568 | ||
1569 | Thu Oct 28 18:06:50 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
1570 | ||
1571 | * reload.c (find_reloads): Refine test for no input reload | |
1572 | case to not includes reloads emitted after insn. | |
1573 | ||
1574 | * function.c (find_temp_slots_from_address): Handle sum involving | |
1575 | a register that points to a temp slot. | |
1576 | (update_temp_slot_address): Make recursive call if both old and | |
1577 | new are PLUS with a common operand. | |
1578 | * calls.c (expand_call): Mark temp slot for result as having | |
1579 | address taken. | |
1580 | ||
1581 | * rtlanal.c (reg_referenced_p, case IF_THEN_ELSE): New case. | |
1582 | ||
1583 | * gcc.c (process_command): Add standard_exec_prefix with "GCC" | |
1584 | component as well as "BINUTILS". | |
1585 | ||
1586 | * integrate.h (copy_rtx_and_substitute): New arg, FOR_LHS. | |
1587 | * integrate.c (copy_rtx_and_substitute): Likewise. | |
1588 | (expand_inline_function, integrate_parm_decls, integrate_decl_tree): | |
1589 | All callers changed. | |
1590 | * unroll.c (inital_reg_note_copy, copy_loop_body): Likewise. | |
1591 | ||
1592 | * dbxout.c (dbxout_type, case INTEGER_TYPE_NODE): If can use | |
1593 | gdb extensions, write size of type; also be more consistent | |
1594 | in using references when this is a subtype. | |
1595 | ||
1596 | * pa.md (extv, extzv, insv): Use define_expand to reject constant | |
1597 | that is out of range. | |
1598 | ||
1599 | * loop.c (unknown_constant_address_altered): New variable. | |
1600 | (prescan_loop): Initialize it. | |
1601 | (note_addr_stored): Set it for RTX_UNCHANGING_P MEM. | |
1602 | (invariant_p, case MEM): Remove handling for volatile and readony; | |
1603 | check new variable if readonly. | |
1604 | (check_dbra_loop): Chdeck unknown_constant_address_altered. | |
1605 | ||
1606 | * cse.c (canon_hash, case MEM): Do not record if BLKmode. | |
1607 | (addr_affects_sp_p): Removed from note_mem_written and only | |
1608 | define #ifdef AUTO_INC_DEC. | |
1609 | ||
1610 | * alpha.c (input_operand, case ADDRESSOF): Treat as REG. | |
1611 | ||
1612 | * regclass.c (record_reg_classes): Properly handle register move | |
1613 | directions. | |
1614 | ||
1615 | * varasm.c (initializer_constant_valid_p, case MINUS_EXPR): | |
1616 | Don't think valid if both operands are invalid. | |
1617 | (struct constant_descriptor): New field RTL. | |
1618 | (mark_const_hash_entry): Mark it. | |
1619 | (record_constant{,_rtx}): Initialize it. | |
1620 | (output_constant_def): Allocate RTL in permanent obstack and | |
1621 | save in table. | |
1622 | ({record,compare}_constant_1): Modes must match for | |
1623 | CONSTRUCTOR of ARRAY_TYPE. | |
1624 | ||
1625 | * c-common.h (initializer_constant_valid_p): Delete decl from here. | |
1626 | * output.h (initializer_constant_valid_p): Move decl to here. | |
1627 | * c-common.c (initializer_constant_valid_p): Delete function from here. | |
1628 | * varasm.c (initializer_constant_valid_p): Move function to here. | |
1629 | ||
1630 | * tree.h (STRIP_SIGN_NOPS): New macro. | |
1631 | * fold-const.c (optimize_minmax_comparison): New function. | |
1632 | (invert_truthvalue, case WITH_RECORD_EXPR): New case. | |
1633 | (fold): Use STRIP_SIGN_NOPS instead of STRIP_TYPE_NOPS. | |
1634 | (fold, case EQ_EXPR): Call optimize_minmax_comparison and add | |
1635 | cases with ABS_EXPR, NEGATE_EXPR, PLUS_EXPR, MINUS_EXPR, and | |
1636 | widening conversions. | |
1637 | (fold, case LE_EXPR): Rework changing unsigned to signed comparisons | |
1638 | to look at size of mode, not precision of type; also add missing cases. | |
1639 | (optimize_bit_field_compare, decode_field_reference): Don't try to | |
1640 | optimize COMPONENT_REF of a PLACEHOLDER_EXPR. | |
1641 | ||
1642 | * dwarf2out.c (ctype.h): Include. | |
1643 | (dwarf2out_set_demangle_name_func): New function. | |
1644 | (size_of_line_info): Deleted. | |
1645 | (output_line_info): Compute size of line info table from difference | |
1646 | of labels. | |
1647 | (base_type_die, add_name_attribute): Call demangle function, if any. | |
1648 | (field_byte_offset): Use bits per word for variable length fields. | |
1649 | (gen_array_type_die): Add array name. | |
1650 | (gen_subprogram_die): Ignore DECL_INLINE if -fno-inline. | |
1651 | (dwarf2out_add_library_unit_info): New function. | |
1652 | ||
1653 | * explow.c (set_stack_check_libfunc): New function. | |
1654 | (stack_check_libfunc): New static variable. | |
1655 | (probe_stack_range): Allow front-end to set up a libfunc to call. | |
1656 | ||
1657 | * combine.c (simplify_comparison): When making comparison in wider | |
1658 | mode, check for having commuted an AND and a SUBREG. | |
1659 | (contains_muldiv): New function. | |
1660 | (try_combine): Call it when dividing a PARALLEL. | |
1661 | (simplify_rtx, case TRUNCATE): Don't remove for umulsi3_highpart. | |
1662 | (simplify_comparison, case ASHIFTRT): Recognize sign-extension of | |
1663 | a PLUS. | |
1664 | (record_value_for_reg): If TEM is a binary operation with two CLOBBERs, | |
1665 | use one of the CLOBBERs instead. | |
1666 | (if_then_else_cond): If comparing against zero, just return thing | |
1667 | being compared. | |
1668 | ||
1669 | * optabs.c (expand_abs): If machine has MAX, ABS (x) is MAX (x, -x). | |
1670 | Don't generate shifts and subtract if have conditional arithmetic. | |
1671 | ||
1672 | * rtl.h (delete_barrier): New declaration. | |
1673 | * jump.c (jump_optimize): Set up to handle conditional call. | |
1674 | In conditional arithmetic case, handle CALL_INSN followed by a BARRIER. | |
1675 | (delete_barrier): New function. | |
1676 | ||
1677 | * rtl.c (read_rtx): Call fatal if bad RTL code; check for bad mode. | |
1678 | ||
1679 | * recog.c (nonmemory_operand): Accept ADDRESSOF. | |
1680 | ||
1681 | * tree.c (build_type_attribute_variant): Push to obstack of | |
1682 | ttype around type_hash_canon call. | |
1683 | ||
1684 | * expr.c (placeholder_list): Move decl to file scope. | |
1685 | (expand_expr): Don't force access to volatile just because its | |
1686 | address is taken. | |
1687 | If ignoring reference operations, just expand the operands. | |
1688 | (expand_expr, case COMPONENT_REF): Propagate | |
1689 | EXPAND_CONST_ADDRESS to recursive call when expanding inner. | |
1690 | Refine test for using bitfield operations vs pointer punning. | |
1691 | (expand_expr, case CONVERT_EXPR): If converting to | |
1692 | BLKmode UNION_TYPE from BLKmode, just return inner object. | |
1693 | Use proper mode in store_field call. | |
1694 | Properly set sizes of object to store and total size in store_field | |
1695 | call for convert to union. | |
1696 | (expand_expr, case ARRAY_REF): If OP0 is in a register, put it in | |
1697 | memory (like for ADDR_EXPR). Also, don't put constant in register if | |
1698 | we'll want it in memory. | |
1699 | (readonly_fields_p): New function. | |
1700 | (expand_expr, case INDIRECT_REF): Call it if LHS. | |
1701 | (expand_assignment): Handle a RESULT_DECL where | |
1702 | DECL_RTL is a PARALLEL. | |
1703 | (do_jump, case WITH_RECORD_EXPR): New case. | |
1704 | (get_inner_reference): Always go inside a CONVERT_EXPR | |
1705 | and NOP_EXPR if both modes are the same. | |
1706 | (store_field): Use bitfield operations if size of bitsize is not same | |
1707 | as size of RHS's type. | |
1708 | Check for bitpos not a multiple of alignment in BLKmode case. | |
1709 | Do block move in largest possible alignment. | |
1710 | (store_constructor): Set BITSIZE to -1 for variable size and properly | |
1711 | in case of array of BLKmode. | |
1712 | (expand_expr_unaligned): New function. | |
1713 | (do_compare_and_jump): Call it. | |
1714 | ||
1715 | * mips/iris5.h (SWITCHES_NEED_SPACES): New macro. | |
1716 | * collect2.c (main): Only allow -ofoo if SWITCHES_NEED_SPACES | |
1717 | does not include 'o'. | |
1718 | ||
1719 | * function.c (instantiate_virtual_regs_1, case SET): Handle case where | |
1720 | both SET_DEST and SET_SRC reference a virtual register. | |
1721 | (gen_mem_addressof): Copy RTX_UNCHANGING_P from new REG to old REG. | |
1722 | ||
1723 | * integrate.c (expand_inline_function): Handle case of setting | |
1724 | virtual stack vars register (from built in setjmp); when parameter | |
1725 | lives in memory, expand virtual_{stack_vars,incoming_args}_rtx early. | |
1726 | (subst_constant): Add new parm, MEMONLY. | |
1727 | (expand_inline_function, integrate_parm_decls): Pass new parm. | |
1728 | (integrate_decl_tree): Likewise. | |
1729 | (copy_rtx_and_substitute, case MEM): Do copy RTX_UNCHANGING_P. | |
1730 | (try_constants): Call subst_constants twice, with MEMONLY 0 and 1. | |
1731 | (copy_rtx_and_substitute, case SET): Add explicit calls to | |
1732 | copy_rtx_and_substitute for both sides. | |
1733 | ||
1734 | * stmt.c (expand_asm_operands): Don't use TREE_STRING_LENGTH for | |
1735 | constraints. | |
1736 | (pushcase{,_range}): Convert to NOMINAL_TYPE after checking for | |
1737 | within INDEX_TYPE, instead of before. | |
1738 | (fixup_gotos): Use f->target_rtl, not the next insn, | |
1739 | since latter may be from a later fixup. | |
1740 | (expand_value_return): Correctly convert VAL when promoting function | |
1741 | return; support RETURN_REG being a PARALLEL. | |
1742 | (expand_return): When checking for result in regs and having | |
1743 | cleanup, consider PARALLEL in DECL_RTL as being in regs. | |
1744 | ||
a9ae4483 ZW |
1745 | 1999-10-28 21:27 -0700 Zack Weinberg <zack@bitmover.com> |
1746 | ||
1747 | * cpplib.h (struct cpp_buffer: fname, nominal_fname, | |
1748 | last_nominal_fname): Mark const. | |
1749 | (struct include_hash: name, nshort, control_macro): Mark | |
1750 | const. | |
1751 | (struct macrodef: symnam): Mark const. | |
1752 | (struct if_stack: fname): Mark const. | |
1753 | (is_idchar, is_idstart, is_hor_space, trigraph_table): Delete. | |
1754 | (IStable): New character-syntax array which encompasses all | |
1755 | the old is_foo arrays. | |
1756 | (is_idchar, is_numchar, is_idstart, is_numstart, is_hspace, | |
1757 | is_space): New macros for interrogating IStable. | |
1758 | (check_macro_name): Kill last argument. All callers changed. | |
1759 | ||
1760 | * cppinit.c (initialize_char_syntax): Delete. | |
1761 | (is_idchar, is_idstart, is_hor_space, is_space, | |
1762 | trigraph_table): Delete. | |
1763 | (IStable): New. Initialize with clever macros to avoid | |
1764 | information duplication. | |
1765 | (builtin_array): Table of builtins to get rid of explicit list | |
1766 | in initialize_builtins. | |
1767 | (initialize_builtins): Use builtins_array. | |
1768 | (cpp_start_read): Call init_IStable, and set IStable['$'] if | |
1769 | opts->dollars_in_ident. | |
1770 | ||
1771 | * cppexp.c: Change all refs to is_xyz[] arrays to use new | |
1772 | is_xyz() macros. | |
1773 | (cpp_parse_expr): Avoid 'format string is not constant' | |
1774 | warning. Use ISGRAPH to identify printable chars. | |
1775 | * cppfiles.c: Change all refs to is_xyz[] arrays to use new | |
1776 | is_xyz() macros. | |
1777 | (read_and_prescan): Map trigraphs to chars with open-coded | |
1778 | if-else-if-... sequence, not a lookup table. | |
1779 | * cpphash.c: Change all refs to is_xyz[] arrays to use new | |
1780 | is_xyz() macros. | |
1781 | * cpplib.c: Change all refs to is_xyz[] arrays to use new | |
1782 | is_xyz() macros. Kill SKIP_ALL_WHITE_SPACE (unused). | |
1783 | (check_macro_name): Remove ability to report an invalid | |
1784 | assertion name, which is never used. | |
1785 | (do_line): Constify a couple of char *'s. | |
1786 | * cppmain.c (main): Call cpp_cleanup before returning. | |
1787 | ||
3277221c MM |
1788 | Thu Oct 28 21:16:35 1999 Mark Mitchell <mark@codesourcery.com> |
1789 | ||
1790 | * ggc.h (struct ggc_statistics): New type. | |
1791 | (ggc_get_size): New function. | |
1792 | (ggc_print_statistics): Likewise. | |
1793 | * ggc-common.c (ggc_stats): New variable. | |
1794 | (ggc_mark_rtx_children): Keep statistics. | |
1795 | (ggc_mark_tree_children): Likewise. | |
1796 | (ggc_print_statistics): New function. | |
1797 | * ggc-page.c (struct globals): Add bytes_mapped field. | |
1798 | (alloc_anon): Update it. | |
1799 | (release_pages): Likewise. | |
1800 | (ggc_get_size): New function. | |
1801 | (ggc_page_print_statistics): New function. | |
1802 | * ggc-simple.c (ggc_get_size): New function. | |
1803 | ||
a6092975 GK |
1804 | Fri Oct 29 06:32:44 1999 Geoffrey Keating <geoffk@cygnus.com> |
1805 | ||
1806 | * flow.c (propagate_block): When the last reference to a label | |
1807 | before an ADDR_VEC is deleted because the reference is a dead | |
1808 | store, delete the ADDR_VEC. | |
1809 | ||
af058220 RH |
1810 | Thu Oct 28 12:28:50 1999 Richard Henderson <rth@cygnus.com> |
1811 | ||
1812 | * resource.c (find_free_register): Don't use the frame pointer | |
1813 | if frame_pointer_needed. | |
1814 | ||
7ab282a5 JW |
1815 | Thu Oct 28 10:02:00 1999 Jim Wilson <wilson@cygnus.com> |
1816 | ||
c9fc373c JW |
1817 | * config/mips/mips.c (mips_va_arg): Delete gen_jump as emit_jump arg. |
1818 | (function_arg_pass_by_reference): Check for a NULL pointer in cum. | |
1819 | ||
7ab282a5 JW |
1820 | * config/i960/i960.c (i960_va_start): New locals base, num. |
1821 | Use INDIRECT_REF instead of ARRAY_REF on valist. | |
1822 | (i960_va_arg): Use INDIRECT_REF instead of ARRAY_REF on valist. | |
1823 | ||
9ed5879d MM |
1824 | Thu Oct 28 09:45:48 1999 Mark Mitchell <mark@codesourcery.com> |
1825 | ||
1826 | * gcse.c (delete_null_pointer_checks): Fix typo in previous change. | |
1827 | ||
2a7b6292 PG |
1828 | Thu Oct 28 03:37:50 1999 Peter Gerwinski <peter@gerwinski.de> |
1829 | ||
1830 | * tree.def (PLACEHOLDER_EXPR): Update comments. | |
1831 | ||
30145215 KG |
1832 | Thu Oct 28 06:47:32 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1833 | ||
1834 | * c-common.c (check_format_info): Avoid non-literal format string | |
1835 | warnings when `first_arg_num' is zero. | |
1836 | ||
4404ce28 BS |
1837 | Thu Oct 28 12:28:48 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
1838 | ||
1839 | * rtl.texi: Delete explicit Prev, Up and Next entries in "@node"s. | |
1840 | ||
e4597bdf RE |
1841 | Thu Oct 28 11:05:13 1999 Richard Earnshaw <rearnsha@arm.com> |
1842 | ||
1843 | * arm.md (casesi_insn): Add a clobber of the condition code | |
1844 | register. | |
1845 | ||
1d96e5b4 FF |
1846 | Mon Oct 18 21:16:06 1999 Fred Fish <fnf@be.com> |
1847 | ||
1848 | * tm.texi (CC1PLUS_SPEC): Make it clear in the docs that CC1_SPEC is | |
1849 | used by both cc1 and cc1plus. | |
1850 | ||
723ae7c1 NC |
1851 | Thu Oct 28 10:00:48 1999 Nick Clifton <nickc@cygnus.com> |
1852 | ||
1853 | * config/arm/arm.c: Initialise arm_structure_size_boundary to | |
1854 | DEFAULT_STRUCTURE_SIZE_BOUNDARY. | |
1855 | * config/arm/arm.h (DEFAULT_STRUCTURE_SIZE_BOUNDARY): Define | |
1856 | to the value 32 if it has not already been defined. | |
1857 | * config/arm/netbsd.h (DEFAULT_STRUCTURE_SIZE_BOUNDARY): | |
1858 | Override definition in arm.h with a value of 8. | |
1859 | ||
566047c2 DS |
1860 | Thu Oct 28 03:12:02 1999 David Starner <dstarner98@aasaa.ofe.org> |
1861 | ||
1862 | * c-pragma.c (push_alignment): Don't check the return value | |
1863 | of xmalloc. | |
1864 | ||
0b24a660 MF |
1865 | Thu Oct 28 03:08:38 1999 Matteo Frigo <athena@fftw.org> |
1866 | ||
1867 | * sparc.h (ADJUST_COST): Fix thinko. | |
1868 | ||
4ed506a4 GN |
1869 | Thu Oct 28 02:44:03 1999 Glen Nakamura <glen.nakamura@usa.net> |
1870 | ||
1871 | * cccp.c (rescan): Fixed obp pointer handling around call to | |
1872 | check_expand subroutine. | |
1873 | ||
3a8de233 JL |
1874 | Thu Oct 28 02:15:22 1999 Jeffrey A Law (law@cygnus.com) |
1875 | ||
5ae520d0 JL |
1876 | * gcse.c (delete_null_pointer_checks): Only record non-null info |
1877 | for pseudos when examining stores. | |
1878 | ||
3a8de233 JL |
1879 | * arm.md (adddi3, adddi_sesidi_di, adddi_sesidi_di): Add |
1880 | splitters for these patterns. Use "#" for output templates. | |
1881 | (addsi3_carryin_shift): New pattern. | |
1882 | ||
62961522 GK |
1883 | Thu Oct 28 10:20:02 1999 Geoffrey Keating <geoffk@cygnus.com> |
1884 | ||
1885 | * config/rs6000/rs6000.md (movsf): Don't convert a SUBREG | |
1886 | of the function return register into a plain REG until | |
1887 | after function inlining is done. | |
1888 | ||
e218fc41 RH |
1889 | Wed Oct 27 15:21:46 1999 Richard Henderson <rth@cygnus.com> |
1890 | ||
1891 | * jump.c (jump_optimize_1): If we did cross-jumping, and | |
1892 | the data will matter, rebuild the CFG. | |
1893 | * reg-stack.c (reg_to_stack): Only (re)build the CFG if | |
1894 | not optimizing. Don't run shorten_branches. | |
1895 | * toplev.c (rest_of_compilation): Run shorten_branches after | |
1896 | reg_to_stack. | |
1897 | ||
84832317 MM |
1898 | Wed Oct 27 12:33:40 1999 Mark Mitchell <mark@codesourcery.com> |
1899 | ||
1900 | * rtl.h (note_stores): Add additional paramter. | |
1901 | * rtlanal.c (reg_set_p_1): Take additional paramter. | |
1902 | (reg_set_last_1): Likewise. | |
1903 | (reg_set_p): Adjust call to note_stores. | |
1904 | (reg_set_last): Likewise. | |
1905 | (note_stores): Pass data parameter to worker function. | |
1906 | * alias.c (record_set): Take additional parameter. | |
1907 | (init_alias_analysis): Pass it. | |
1908 | * caller-save.c (mark_set_regs): Take additional parameter. | |
1909 | (save_call_clobbered_regs): Pass NULL to note_stores. | |
1910 | * combine.c (set_nonzero_bits_and_sign_copies): Take additional | |
1911 | parameter. | |
1912 | (record_dead_and_set_regs_1): Likewise. | |
1913 | (reg_dead_at_p_1): Likewise. | |
1914 | (combine_instructions): Adjust calls to note_stores. | |
1915 | (try_combine): Likewise. | |
1916 | (record_dead_insn): Remove. | |
1917 | (record_dead_and_set_regs): Adjust calls to note_stores. | |
1918 | (reg_dead_at_p): Likewise. | |
1919 | * cse.c (invalidate_skipped_set): Take additional parameter. | |
1920 | (cse_check_loop_start): Likewise. | |
1921 | (cse_check_loop_start_value): Remove. | |
1922 | (cse_set_around_loop): Adjust calls to note_stores. | |
1923 | * flow.c (notice_stack_pointer_modification): Take additional | |
1924 | parameter. Remove duplicate declaration. | |
1925 | (record_volatile_insns): Adjust calls to note_stores. | |
1926 | * gcse.c (record_set_info): Take additional parameter. | |
1927 | (record_last_set_info): Likewise. | |
1928 | (invalidate_nonnull_info): Likewise. | |
1929 | (record_set_insn): Remove. | |
1930 | (compute_sets): Adjust calls to note_stores. | |
1931 | (last_set_insn): Remove. | |
1932 | (compute_hash_table): Adjust calls to note_stores. | |
1933 | (insert_insn_end_bb): Likewise. | |
1934 | (delete_null_pointer_checks): Likewise. | |
1935 | * global.c (mark_reg_store): Take additional parameter. | |
1936 | (mark_reg_clobber): Likewise. | |
1937 | (reg_becomes_live): Likewise. | |
1938 | (global_conflicts): Adjust calls to note_stores. | |
1939 | (build_insn_chain): Likewise. | |
1940 | * integrate.c (note_modified_parmregs): Take additional parameter. | |
1941 | (mark_stores): Likewise. Make it static. | |
1942 | (save_for_inline_nocopy): Adjust calls to note_stores. | |
1943 | (try_constants): Likewise. | |
1944 | * integrate.h (mark_stores): Remove declaration. | |
1945 | * jump.c (mark_modified_reg): Take additional parameter. | |
1946 | (thread_jumps): Adjust calls to note_stores. | |
1947 | * local-alloc.c (validate_equiv_mem_from_store): Take additional | |
1948 | parameter. | |
1949 | (no_equiv): Likewise. | |
1950 | (reg_is_set): Likewise. | |
1951 | (validate_equiv_mem): Adjust calls to note_stores. | |
1952 | (update_equiv_regs): Likewise. | |
1953 | (block_alloc): Likewise. | |
1954 | * loop.c (note_set_pseudo_multiple_uses_retval): Remove. | |
1955 | (note_addr_stored): Take additional parameter. | |
1956 | (note_set_pseudo_multiple_uses): Likewise. | |
1957 | (record_initial): Likewise. | |
1958 | (prescan_loop): Adjust calls to note_stores. | |
1959 | (strength_reduce): Likewise. | |
1960 | (check_dbra_loop): Likewise. | |
1961 | * regmove.c (flags_set_1): Take additional paramter. | |
1962 | (mark_flags_life_zones): Adjust calls to note_stores. | |
1963 | * reload1.c (mark_not_eliminable): Take additional parameter. | |
1964 | (forget_old_reloads_1): Likewise. | |
1965 | (reload_cse_invalidate_rtx): Likewise. | |
1966 | (reload_cse_check_clobber): Likewise. | |
1967 | (reload_combine_note_store): Likewise. | |
1968 | (move2add_note_store): Likewise. | |
1969 | (reload): Adjust calls to note_stores. | |
1970 | (reload_as_needed): Likewise. | |
1971 | (emit_reload_insns): Likewise. | |
1972 | (reload_cse_regs_1): Likewise. | |
1973 | (reload_cse_record_set): Adjust calls to reload_cse_invalidate_rtx. | |
1974 | (reload_combine): Adjust calls to note_stores. | |
1975 | * resource.c (update_live_status): Take additional paramter. | |
1976 | (mark_target_live_regs): Adjust calls to note_stores. | |
1977 | * stupid.c (find_clobbered_regs): Take additional parameter. | |
1978 | (stupid_life_analysis): Adjust calls to note_stores. | |
1979 | ||
6ead9ba5 NC |
1980 | Wed Oct 27 19:26:12 1999 Nick Clifton <nickc@cygnus.com> |
1981 | ||
1982 | * config/arm/coff.h (STRUCTURE_SIZE_BOUNDARY): Delete | |
1983 | definition. | |
1984 | ||
1985 | * config/arm/elf.h (STRUCTURE_SIZE_BOUNDARY): Delete | |
1986 | definition. | |
1987 | ||
1988 | * config/arm/arm.h (STRUCTURE_SIZE_BOUNDARY): Define in terms | |
1989 | of the variable arm_structure_size_boundary. | |
1990 | ||
e05e2395 MM |
1991 | Wed Oct 27 02:05:58 1999 Mark P. Mitchell <mark@codesourcery.com> |
1992 | ||
1993 | * alias.c (init_alias_analysis): Allocate reg_known_value and | |
1994 | reg_known_equiv_p on the heap. Likewise for new_reg_base_value | |
1995 | and reg_seen. | |
1996 | (end_alias_analysis): Free reg_known_value and reg_known_equiv_p. | |
1997 | * cse.c (cse_main): Call end_alias_analysis. | |
1998 | * haifa-sched.c (schedule_insns): Likewise. | |
1999 | * local-alloc. (update_equiv_regs): Likewise. | |
2000 | * reload1.c (reload_cse_regs): Likewise. | |
2001 | ||
46cc13b3 RO |
2002 | Wed Oct 27 01:49:17 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
2003 | ||
2004 | * sparc/sparc.c (sparc_override_options): Clear MASK_FPU_SET. | |
2005 | * sparc/sparc.h (TARGET_SWITCHES): Add "fpu" entry for reverse | |
2006 | mapping from MASK_FPU. | |
2007 | ||
8232d28f SC |
2008 | Wed Oct 27 01:42:26 1999 Scott Christley <scottc@net-community.com> |
2009 | ||
2010 | * sparc.md (call): Don't bound structure return size to 0xfff. | |
2011 | ||
0b8d60fa RH |
2012 | Wed Oct 27 00:56:59 1999 Richard Henderson <rth@cygnus.com> |
2013 | ||
2014 | * resource.c (mark_target_live_regs): Check that the target | |
2015 | insn wasn't created after compute_bb_for_insn. | |
2016 | ||
c831fdea MM |
2017 | Tue Oct 26 23:15:03 1999 Mark Mitchell <mark@codesourcery.com> |
2018 | ||
2019 | * ggc-page.c (poison_pages): Don't be overzealous. | |
2020 | ||
95815af9 JL |
2021 | Tue Oct 26 23:29:18 1999 Jeffrey A Law (law@cygnus.com) |
2022 | ||
b3b5ad95 JL |
2023 | * alias.c: Update comments for ADDRESS. |
2024 | (nonlocal_reference_p): Look inside the ADDRESS to determine if | |
2025 | it is a local memory reference. | |
2026 | ||
95815af9 JL |
2027 | * c-typeck.c (build_function_call): Check that the built-in |
2028 | function is of class BUILT_IN_NORMAL before trying to recongize | |
2029 | it as BUILT_IN_ABS. | |
2030 | * calls.c (calls_function_1): Similarly for BUILT_IN_ALLOCA. | |
2031 | * stmt.c (expand_end_cae): Similarly for BUILT_IN_CLASSIFY_TYPE. | |
283a2545 RL |
2032 | |
2033 | Wed Oct 27 00:14:13 1999 Robert Lipe <robertlipe@usa.net> | |
2034 | ||
2035 | * gcse.c (expr_reaches_here_p): Use xcalloc and explit free instead | |
2036 | of alloca. | |
2037 | (pre_gcse): Likewise. | |
2038 | (hoist_expr_reaches_here_p): Likewise. | |
2039 | (hoist_code): Likewise. | |
2040 | (pre_expr_reaches_here_p): Replace alloca with xcalloc. Move core | |
2041 | code to ... | |
2042 | (pre_expr_reaches_here_p_work): ... here. | |
2043 | (expr_reaches_here_p): Replace alloca with xcalloc. Move core | |
2044 | code to ... | |
2045 | (expr_reaches_here_p_work): ... here. | |
2046 | ||
d0247326 RH |
2047 | Tue Oct 26 20:42:45 1999 Richard Henderson <rth@cygnus.com> |
2048 | ||
2049 | * resource.c (find_basic_block): Delete. | |
2050 | (mark_target_live_regs, incr_ticks_for_insn): Use BLOCK_NUM instead. | |
2051 | (init_resource_info): Call compute_bb_for_insn. | |
2052 | ||
93cba993 RH |
2053 | Tue Oct 26 20:21:02 1999 Richard Henderson <rth@cygnus.com> |
2054 | ||
2055 | * flow.c (merge_blocks_move_predecessor_nojumps): Cope | |
2056 | with already adjacent blocks, but no fallthru. | |
2057 | (merge_blocks_move_successor_nojumps): Simplify. | |
2058 | (debug_flow_info): New. | |
2059 | ||
2060 | * toplev.c (rest_of_compilation): Open jump1 dump file before | |
2061 | jump and close after, as opposed to just using dump_rtl. | |
2062 | ||
09a308fe R |
2063 | Wed Oct 27 03:09:23 1999 J"orn Rennecke <amylaar@cygnus.co.uk> |
2064 | ||
2065 | * reload.h (earlyclobber_operand_p): Declare. | |
2066 | * reload.c (earlyclobber_operand_p): Don't declare. No longer static. | |
2067 | * reload1.c (reload_reg_free_for_value_p): RELOAD_OTHER reloads with | |
2068 | an earlyclobbered output conflict with RELOAD_INPUT reloads - handle | |
2069 | case where the RELOAD_OTHER reload is new. Use earlyclobber_operand_p. | |
2070 | ||
a05924f9 JH |
2071 | Tue Oct 26 18:23:38 1999 Jan Hubicka <hubicka@freesoft.cz> |
2072 | Richard Henderson <rth@cygnus.com> | |
2073 | ||
2074 | * emit-rtl.c (emit_block_insn_before): New. | |
2075 | (emit_block_insn_after): New. | |
2076 | * basic-block.h: Declare them. | |
2077 | ||
2078 | * bitmap.h: Protect from multiple inclusion. | |
2079 | ||
2080 | * recog.c (scratch_operand): Handle VOIDmode correctly. | |
2081 | ||
2082 | * rtl.h (JUMP_CROSS_JUMP_DEATH_MATTERS): New. | |
2083 | ||
2084 | * builtins.c (expand_builtin_apply_args_1): Remove STACK_REGS hack. | |
2085 | * function.c (assign_parms): Likewise. | |
2086 | * global.c (global_conflicts): Clarify STACK_REGS commentary. | |
2087 | ||
2088 | * reg-stack.c (max_uid): Remove. | |
2089 | (blocks, block_begin, block_end, block_drops_in): Remove. | |
2090 | (block_stack_in, block_out_reg_set, block_number): Remove. | |
2091 | (struct block_info_def, BLOCK_INFO): New. | |
2092 | (enum emit_where): New. | |
2093 | (current_block): New. | |
2094 | (BLOCK_NUM): Remove. | |
2095 | (mark_regs_pat, record_label_references): Remove. | |
2096 | (record_reg_life_pat, record_reg_life, find_blocks): Remove. | |
2097 | (nan): New. | |
2098 | (goto_block_pat, print_blocks, dump_stack_info): Remove. | |
2099 | (reg_to_stack): Simplified test for existance of fp code. Use | |
2100 | flow.c code. Call shorten_branches after cross-jump opt. | |
2101 | (check_asm_stack_operands): Renamed from record_asm_reg_life. | |
2102 | Return false if the asm doesn't use stack regs. Don't do life | |
2103 | analysis on the asm. | |
2104 | (emit_pop_insn): Replace function pointer arg `when' with | |
2105 | enum `where'. Update all callers. | |
2106 | (change_stack): Likewise. Update basic block end. | |
2107 | (emit_swap_insn): Use current_block->head to limit reverse search | |
2108 | for start of block. Use emit_block_insn_after. | |
2109 | (subst_stack_regs_pat): Handle USE and CLOBBER patterns. | |
2110 | (subst_asm_stack_regs): Use check_asm_stack_operands. Use direct | |
2111 | structure assignment instead of bcopy. | |
2112 | (print_stack): New. | |
2113 | (convert_regs_entry, convert_regs_exit): New. | |
2114 | (convert_regs_1, convert_regs_2): Split out from convert_regs. | |
2115 | Work on basic blocks and the CFG. | |
2116 | (convert_regs): Use them. | |
2117 | ||
2118 | * i386.c (output_fix_trunc): Remove code for DImode input operand | |
2119 | not at top-of-stack. | |
2120 | * i386.c (fix_truncdfdi2, fix_truncsfdi2): Use scratch with | |
2121 | appropriate mode. | |
2122 | (fix_truncdi_1): Allow any mode scratch. | |
2123 | ||
b517dcd2 RH |
2124 | Tue Oct 26 13:30:35 1999 Richard Henderson <rth@cygnus.com> |
2125 | ||
2126 | * alpha.h (TARGET_MEM_FUNCTIONS): Define here. | |
2127 | * linux.h, netbsd.h, vms.h: Not here. | |
2128 | ||
1d5d552e GRK |
2129 | 1999-10-26 Gavin Romig-Koch <gavin@cygnus.com> |
2130 | ||
2131 | * config/mips/mips.h (ISA_HAS_64BIT_REGS,ISA_HAS_BRANCHLIKELY, | |
2132 | ISA_HAS_FP4,ISA_HAS_CONDMOVE): New. | |
2133 | (GENERATE_BRANCHLIKELY,HAVE_SQRT_P, | |
2134 | CONDITIONAL_REGISTER_USEAGE): Use them. | |
2135 | * config/mips/mips.c (mips_move_1word,mips_move_2words, | |
2136 | gen_conditional_branch,override_options) : Use them. | |
2137 | * config/mips/mips.md : Use them. | |
2138 | ||
044bdac1 RH |
2139 | Tue Oct 26 13:09:23 1999 Richard Henderson <rth@cygnus.com> |
2140 | ||
2141 | * i386.md (zero_extendqihi2): Use SImode register name with andl. | |
2142 | ||
cd8cee7b RH |
2143 | Tue Oct 26 12:35:38 1999 Richard Henderson <rth@cygnus.com> |
2144 | ||
2145 | * integrate.c (function_cannot_inline_p): Don't allow inlining | |
2146 | if setjmp is used. | |
2147 | ||
ec0ce6e2 KG |
2148 | Tue Oct 26 14:10:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2149 | ||
2150 | * c-parse.in (cast_expr): Constify. | |
2151 | ||
2152 | * cccp.c (special_symbol): Likewise. | |
2153 | ||
2154 | * cse.c (hash_cse_reg_info, cse_reg_info_equal_p): Likewise. | |
2155 | ||
2156 | * dwarf2out.c (base_type_die): Likewise. | |
2157 | ||
2158 | * global.c (allocno_compare): Likewise. | |
2159 | ||
2160 | * local-alloc.c (qty_compare_1, qty_sugg_compare_1): Likewise. | |
2161 | ||
2162 | * regclass.c (fix_register): Likewise. | |
2163 | ||
2164 | * rtl.h (fix_register): Likewise. | |
2165 | ||
2166 | * stupid.c (stupid_reg_compare): Likewise. | |
2167 | ||
2168 | * toplev.c (decode_f_option): Likewise. | |
2169 | ||
2170 | * tree.c (build_complex_type): Likewise. | |
2171 | ||
d8d79d15 RE |
2172 | Tue Oct 26 18:35:25 1999 Richard Earnshaw <rearnsha@arm.com> |
2173 | ||
2174 | * output.h: Don't unnecessarily conditionalize prototypes on TREE_CODE. | |
2175 | ||
67e61fe7 BS |
2176 | Tue Oct 26 15:42:56 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
2177 | ||
2178 | * reload.c (find_reloads): Compute mode and nregs fields of all | |
2179 | reloads. | |
2180 | * reload1.c (calculate_needs_all_insns): Simplify a bit. | |
2181 | (calculate_needs): Use precomputed mode/nregs values. | |
2182 | (allocate_reload_reg): Likewise. | |
2183 | Break out two... | |
2184 | (failed_reload, set_reload_reg): ... new functions. | |
2185 | (choose_reload_regs_init): New function, mostly broken out from... | |
2186 | (choose_reload_regs): ... here. Lose all the save_xxx nonsense. | |
2187 | Also lose one #if 0 block. | |
2188 | ||
35f86a50 ME |
2189 | Tue Oct 26 02:48:32 1999 Marc Espie <espie@cvs.openbsd.org> |
2190 | ||
2191 | * Makefile.in (AR_FOR_TARGET, RANLIB_FOR_TARGET): Fix target name | |
2192 | substitution. | |
2193 | ||
2af0ac28 MM |
2194 | Tue Oct 26 01:27:32 1999 Mark Mitchell <mark@codesourcery.com> |
2195 | ||
2196 | * tree.h (BLOCK_TYPE_TAGS): Remove. | |
2197 | (BLOCK_END_NOTE): Likewise. | |
2198 | (BLOCK_LIVE_RANGE_FLAG): Likewise. | |
2199 | (BLOCK_LIVE_RANGE_START): Likewise. | |
2200 | (BLOCK_LIVE_RANGE_END): Likewise. | |
2201 | (tree_block): Remove live_range_flag, live_range_var_flag, and | |
2202 | type_tags. Remove end_note, live_range_start, and live_range_end. | |
2203 | (remember_end_note): Remove prototype. | |
2204 | * tree.c (build_block): Don't set BLOCK_TYPE_TAGS. | |
2205 | * c-decl.c (poplevel): Don't set BLOCK_TYPE_TAGS or call | |
2206 | remember_end_note. | |
2207 | * ggc-common.c (ggc_mark_tree_children): Don't mark | |
2208 | BLOCK_TYPE_TAGS or BLOCK_END_NOTE. | |
2209 | * integrate.c (adjust_copied_decl_tree): Remove. | |
2210 | * print-tree.c (print_node): Don't print BLOCK_TYPE_TAGS. | |
2211 | * stmt.c (last_block_end_note): Remove. | |
2212 | (init_stmt): Don't add a GC root for it. | |
2213 | (expand_fixup): Don't set it. | |
2214 | (remember_end_note): Remove. | |
2215 | (expand_end_bindings): Don't set last_block_end_note. | |
2216 | ||
c2b4b171 BS |
2217 | Tue Oct 26 00:41:54 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
2218 | ||
2219 | * reload1.c (reload_reg_free_for_value_p): Show | |
2220 | RELOAD_FOR_OTHER_ADDRESS reloads can conflict with RELOAD_OTHER | |
2221 | reloads. | |
2222 | ||
7f6dae2a GK |
2223 | Mon Oct 25 23:54:45 1999 Geoff Keating <geoffk@cygnus.com> |
2224 | ||
3306eb80 GK |
2225 | * expmed.c (extract_bit_field): Allow for the case of non-integer |
2226 | objects that are smaller than a word (like SFmode on a 64-bit | |
2227 | machine). | |
2228 | ||
7f6dae2a GK |
2229 | * loop.c (basic_induction_var): A non-integer variable which is |
2230 | being set by a paradoxical subreg is probably not a biv. | |
2231 | ||
7146dfdd HB |
2232 | 1999-10-25 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
2233 | ||
2234 | * prefix.c (translate_name) Check for empty prefix string. | |
2235 | ||
9799e470 AS |
2236 | Mon Oct 25 23:10:45 1999 Andreas Schwab <schwab@suse.de> |
2237 | ||
2238 | * Makefile.in (CPP_CROSS_NAME): New variable. | |
2239 | (install-cpp): Use it instead of CPP_INSTALL_NAME for the cross | |
2240 | xcpp. | |
2241 | (uninstall-cpp): Use CPP_INSTALL_NAME and CPP_CROSS_NAME for the | |
2242 | names of the files to be uninstalled. | |
2243 | ||
4525e228 JL |
2244 | Mon Oct 25 23:03:09 1999 Jeffrey A Law (law@cygnus.com) |
2245 | ||
c2897436 JL |
2246 | * collect2.c (IS_DIR_SEPARATOR): Define. |
2247 | (prefix_from_string): Use IS_DIR_SEPARATOR and DIR_SEPARATOR. | |
2248 | ||
92bcb380 JL |
2249 | * som.h (ASM_DECLARE_FUNCTION_NAME): Set PRIV_LEV for static |
2250 | functions too. | |
2251 | ||
4525e228 JL |
2252 | * haifa-sched.c (add_dependence): Update the true dependency |
2253 | cache the first time we add a true dependence to the LOG_LINKS chain. | |
2254 | ||
a36335da JK |
2255 | Mon Oct 25 22:27:40 1999 Jim Kingdon <http://developer.redhat.com/> |
2256 | ||
2257 | * fold-const.c (fold): Fix comment. | |
2258 | ||
a996cbd4 KG |
2259 | Mon Oct 25 22:49:34 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2260 | ||
2261 | * dbxout.c (lastfile, cwd, dbxout_type_method_1, | |
2262 | dbxout_symbol_location, dbxout_symbol_name, dbxout_init, | |
2263 | dbxout_start_new_source_file, dbxout_source_file, | |
2264 | dbxout_source_line, dbxout_finish, dbxout_type_fields, | |
2265 | dbxout_type_methods, dbxout_symbol, dbxout_prepare_symbol): | |
2266 | Constify a char*. | |
2267 | (dbxout_types, dbxout_args, dbxout_symbol): Delete prototypes. | |
2268 | (dbxout_symbol): Mark parameter `local' with ATTRIBUTE_UNUSED. | |
2269 | (dbxout_block): Initialize variable `blocknum'. | |
2270 | ||
2271 | * dbxout.h (dbxout_init, dbxout_finish, | |
2272 | dbxout_start_new_source_file, dbxout_source_file, dbxout_types, | |
2273 | dbxout_args, dbxout_source_line): Constify a char*. | |
2274 | ||
2275 | * dwarfout.c (dwarf_tag_name, dwarf_attr_name, | |
2276 | dwarf_stack_op_name, dwarf_typemod_name, dwarf_fmt_byte_name, | |
2277 | dwarf_fund_type_name, name_attribute, stmt_list_attribute, | |
2278 | low_pc_attribute, high_pc_attribute, body_begin_attribute, | |
2279 | body_end_attribute, comp_dir_attribute, sf_names_attribute, | |
2280 | src_info_attribute, mac_info_attribute, producer_attribute, | |
2281 | lookup_filename, generate_macinfo_entry, fundamental_type_code, | |
2282 | dwarfout_line, dwarfout_start_new_source_file, dwarfout_define, | |
2283 | dwarfout_undef): Constify a char*. | |
2284 | (add_incomplete_type, retry_incomplete_types): Add prototypes. | |
2285 | ||
2286 | * dwarfout.h (dwarfout_define, dwarfout_undef, | |
2287 | dwarfout_start_new_source_file, dwarfout_line): Constify a char*. | |
2288 | ||
ea09f032 GRK |
2289 | 1999-10-25 Gavin Romig-Koch <gavin@cygnus.com> |
2290 | ||
2291 | * config/mips/mips.h (MIPS_ISA_DEFAULT): Insure it's defined. | |
2292 | (MULTILIB_ISA_DEFAULT): New. | |
2293 | (MULTILIB_DEFAULTS): Use it. | |
2294 | * config/mips/mips.c (): Remove the now unnecessary definition | |
2295 | of MIPS_ISA_DEFAULT. | |
2296 | * config/mips/elf64.h (MULTILIB_DEFAULTS): Remove the now | |
2297 | unnecessary definition. | |
2298 | ||
f12c5ef3 RE |
2299 | Mon Oct 25 22:08:35 1999 Richard Earnshaw (rearnsha@arm.com) |
2300 | ||
2301 | * arm.md (pic_load_addr): Add constraints to operand 1. | |
2302 | ||
dc994a6d BK |
2303 | 1999-10-25 Bruce Korb <autogen@linuxbox.com> |
2304 | ||
f12c5ef3 RE |
2305 | * fixinc/genfixes: Provide a means for specifying -D options to |
2306 | AutoGen | |
dc994a6d | 2307 | |
59487769 JL |
2308 | Mon Oct 25 00:42:35 1999 Jeffrey A Law (law@cygnus.com) |
2309 | ||
2ca12935 JL |
2310 | * arm.c (arm_override_options): Correct initialization of |
2311 | arm_fast_multiply, arm_arch4, arm_arch5, arm_ld_sched, | |
2312 | arm_is_strong, and arm_is_6_or_7. | |
2313 | ||
59487769 JL |
2314 | * loop.c (note_set_pseudo_multiple_uses_retval): New variable. |
2315 | (note_set_pseudo_multiple_uses): New function. | |
2316 | (check_dbra_loop): Use not_set_pseudo_multiple_uses to determine | |
2317 | if a pseudo set in the loop exit is used elsewhere. | |
2318 | ||
20819a09 MM |
2319 | Sun Oct 24 20:52:40 1999 Mark Mitchell <mark@codesourcery.com> |
2320 | ||
2321 | * i386.md (mulsi3): Tweak to work with SCO OSR5 COFF assembler. | |
2322 | ||
ad678cb0 RH |
2323 | Sun Oct 24 21:02:46 1999 Richard Henderson <rth@cygnus.com> |
2324 | ||
2325 | * i386.md (*lea_0): Collapse addsi_0, addsi_lea_[123] into | |
2326 | a single load-address pattern. | |
2327 | ||
f77e39fc MM |
2328 | Sun Oct 24 19:33:24 1999 Mark P. Mitchell <mark@codesourcery.com> |
2329 | ||
2330 | * haifa-sched.c (schedule_insns): Don't assign LUIDs differently | |
2331 | depending on whether or not line-number notes are present. | |
2332 | ||
4b79993f KG |
2333 | Sun Oct 24 20:29:59 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2334 | ||
2335 | * cccp.c (progname, file_buf, default_include, include_file, | |
2336 | macrodef, definition, hashval, wchar_type, user_label_prefix, | |
2337 | directive, out_fname, if_stack, safe_write, index0, get_lintcmd, | |
2338 | expand_to_temp_buffer, is_system_include, base_name, | |
2339 | absolute_filename, read_name_map, open_include_file, | |
2340 | record_control_macro, check_precompiled, check_preconditions, | |
2341 | pcfinclude, pass_thru_directive, create_definition, | |
2342 | check_macro_name, comp_def_part, collect_expansion, | |
2343 | check_assertion, read_token_list, assertion_install, | |
2344 | assertion_lookup, eval_if_expression, conditional_skip, | |
2345 | validate_else, skip_quoted_string, quote_string, macarg1, | |
2346 | error_from_errno, install, lookup, hashf, dump_defn_1, | |
2347 | perror_with_name, pfatal_with_name, main, trigraph_pcp, | |
2348 | check_white_space, rescan, handle_directive, monthnames, | |
2349 | special_symbol, do_include, remap_include_file, write_output, | |
2350 | arglist, do_assert, do_unassert, do_line, do_error, do_once, | |
2351 | do_ident, do_sccs, do_xifdef, skip_if_group, | |
2352 | output_line_directive, macroexpand, macarg, change_newlines, | |
2353 | initialize_builtins, make_definition): Constify a char*. | |
2354 | ||
2355 | * pcp.h (stringdef): Likewise. | |
2356 | ||
65c8a03d RH |
2357 | Sun Oct 24 13:29:28 1999 Richard Henderson <rth@cygnus.com> |
2358 | ||
2359 | * unroll.c (copy_loop_body): Examine SET_DEST of single_set | |
2360 | not of pattern. | |
2361 | ||
ac606739 GS |
2362 | Sun Oct 24 13:14:20 1999 Graham <grahams@rcp.co.uk> |
2363 | Richard Henderson <rth@cygnus.com> | |
2364 | ||
2365 | * alias.c: Include ggc.h. | |
2366 | (reg_base_value, new_reg_base_value, reg_base_value_size): Make static. | |
2367 | (record_set): Verify enough room in reg_base_value. | |
2368 | (init_alias_analysis): Allocate reg_base_value with xcalloc. | |
2369 | Register it as a GC root. | |
2370 | (end_alias_analysis): Free reg_base_value. Remove it as a GC root. | |
2371 | * Makefile.in (alias.o): Depend on ggc.h. | |
2372 | ||
2373 | * unroll.c (unroll_loop): Verify the insn before a barrier | |
2374 | is a JUMP_INSN before checking JUMP_LABEL. | |
2375 | ||
9d73cc12 KG |
2376 | Sun Oct 24 15:46:44 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2377 | ||
2378 | * mips/bsd-5.h (ASM_OUTPUT_ASCII): Constify a char*. | |
2379 | * mips/iris4.h (ASM_OUTPUT_ASCII): Likewise. | |
2380 | * mips/mips-5.h (ASM_OUTPUT_ASCII): Likewise. | |
2381 | * mips/mips.h (ASM_OUTPUT_ASCII): Likewise. | |
2382 | * mips/svr3-5.h (ASM_OUTPUT_ASCII): Likewise. | |
2383 | * mips/svr4-5.h (ASM_OUTPUT_ASCII): Likewise. | |
2384 | ||
7751947b KG |
2385 | Sun Oct 24 15:35:43 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2386 | ||
2387 | * output.h (ctors_section, dtors_section, bss_section): Prototype. | |
2388 | ||
2389 | * alpha/alpha-interix.h (text_section): Delete prototype. | |
2390 | * alpha/elf.h (text_section): Likewise. | |
2391 | * arm/linux-elf.h (text_section): Likewise. | |
2392 | * arm/linux-telf.h (text_section): Likewise. | |
2393 | * c4x/c4x.h (text_section): Likewise. | |
2394 | * dsp16xx/dsp16xx.h (bss_section): Likewise. | |
2395 | * elfos.h (text_section): Likewise. | |
2396 | * i386/aix386ng.h (text_section): Likewise. | |
2397 | * i386/i386-interix.h (text_section): Likewise. | |
2398 | * i386/sco5.h (text_section): Likewise. | |
2399 | * i386/svr3gas.h (text_section): Likewise. | |
2400 | * nextstep.h (text_section): Likewise. | |
2401 | * psos.h (text_section): Likewise. | |
2402 | * ptx4.h (text_section): Likewise. | |
2403 | * svr3.h (text_section): Likewise. | |
2404 | * svr4.h (text_section, ctors_section, dtors_section): Likewise. | |
2405 | ||
36f0e0a6 KG |
2406 | Sun Oct 24 15:20:59 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2407 | ||
2408 | * final.c (peephole): Delete prototype. | |
2409 | ||
2410 | * gcse.c (process_insert_insn, pre_edge_insert): Add prototypes. | |
2411 | (pre_insert_copies): Remove unused variable `bb'. | |
2412 | ||
2413 | * genrecog.c (debug_decision_0, debug_decision_list, main): Add | |
2414 | prototypes. | |
2415 | ||
2416 | * output.h (peephole): Add prototype. | |
2417 | ||
87bb6e4b MM |
2418 | Sun Oct 24 11:35:30 1999 Mark P. Mitchell <mark@codesourcery.com> |
2419 | ||
2420 | * config/mips/iris6.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Define to | |
2421 | -O0. | |
2422 | ||
f120f901 MM |
2423 | Sat Oct 23 21:13:00 1999 Mark Mitchell <mark@codesourcery.com> |
2424 | ||
2425 | * integrate.c (integrate_decl_tree): Tweak setting of DECL_CONTEXT | |
2426 | for inlined declarations. | |
2427 | ||
6ab589e0 JL |
2428 | Fri Oct 22 18:05:43 1999 Jeffrey A Law (law@cygnus.com) |
2429 | ||
2430 | * arm.c (logical_binary_operator): New fucntion. | |
2431 | * arm.h (logical_binary_operator): Declare it. | |
2432 | (PREDICATE_CODES): Handle logical_binary_operator. | |
2433 | * arm.md (anddi3, anddi_zesidi_di, anddi_sesdi_di): Use "#" for | |
2434 | output constraints. Add appropriate splitters. | |
2435 | (anddi_notdi_di, anddi_notzesidi_di, anddi_notsesidi_di): Likewise. | |
2436 | (iordi3, iordi_zesidi_di, iordi_sesidi_di): Likewise. | |
2437 | (xordi3, xordi_zesidi_di, xordi_sesidi_di): Likewise. | |
2438 | ||
dfac187e BS |
2439 | Fri Oct 22 23:46:50 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
2440 | ||
2441 | * genoutput.c (struct operand_data): New elt eliminable. | |
2442 | (output_operand_data): Write it. | |
2443 | (scan_operands): Set it for MATCH_OPERAND, clear for other matchers. | |
2444 | (compare_operands): Take it into account. | |
2445 | * recog.h (struct insn_operand_data): New elt eliminable. | |
2446 | * reload1.c (check_eliminable_occurrences, elimination_effects): New | |
2447 | functions. | |
2448 | (old_asm_operands_vec, new_asm_operands_vec): Delete. | |
2449 | (eliminate_regs): Move code that detects changes to elimination | |
2450 | target regs into new function elimination_effects. | |
2451 | Delete one #if 0 block. | |
2452 | Abort for USE, CLOBBER, ASM_OPERANDS and SET. | |
2453 | (eliminate_regs_in_insn): Return immediately for USEs, CLOBBERs, | |
2454 | ADDR_VECs, ADDR_DIFF_VECs and ASM_INPUTs. | |
2455 | Only call eliminate_regs for real operands of the insn, not for parts | |
2456 | of its structure or parts matched by things like match_operator. | |
2457 | Use elimination_effects and check_eliminable_occurrences. Use | |
2458 | copy_insn to duplicate the pattern when not in the final pass. | |
2459 | ||
7ebb782b MM |
2460 | Fri Oct 22 09:03:44 1999 Mark Mitchell <mark@codesourcery.com> |
2461 | ||
2462 | * i386.md: Add missing `y' modifiers to uses of fst, fstp, fld, | |
2463 | and fld. | |
2464 | ||
8f9ca912 BK |
2465 | 1999-10-22 Bruce Korb <autogen@linuxbox.com> |
2466 | ||
2467 | * fixinc/README: document the "mach" machine matching test | |
2468 | * fixinc/fixfixes.c: Implement the #else/#endif label fix | |
2469 | * fixinc/fixtests.c: Implement the #else/#endif label test | |
2470 | * fixinc/inclhack.def: utilize these tests and fixes | |
2471 | * fixinc/inclhack.sh: regen | |
2472 | * fixinc/fixincl.x: regen | |
2473 | * fixinc/fixincl.sh: regen | |
2474 | ||
d84319de JL |
2475 | Thu Oct 21 20:37:19 1999 Jeffrey A Law (law@cygnus.com) |
2476 | ||
2477 | * Makefile.in (cse.o): Depend on hashtab.h, not splay-tree.h. Also | |
2478 | depend on ggc.h. | |
2479 | ||
84221183 MK |
2480 | Thu Oct 21 20:30:19 1999 Matthias Klose <doko@debian.org> |
2481 | ||
2482 | * gcc.1: Document exit codes. | |
2483 | ||
b1474bb7 KG |
2484 | Thu Oct 21 12:49:05 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2485 | ||
2486 | * calls.c: Include tm_p.h later, so everything we need is defined. | |
2487 | * expr.c: Likewise. | |
2488 | * function.c: Likewise. | |
2489 | ||
2490 | * except.c: Include tm_p.h. | |
2491 | ||
2492 | * sparc.c: Likewise. | |
2493 | (dwarf2out_cfi_label): Don't prototype. | |
2494 | (check_return_regs, epilogue_renumber, | |
2495 | ultra_cmove_results_ready_p, ultra_fpmode_conflict_exists, | |
2496 | ultra_find_type, ultra_build_types_avail, ultra_flush_pipeline, | |
2497 | ultra_rescan_pipeline_state, set_extends, ultra_code_from_mask, | |
2498 | ultra_schedule_insn): Add static prototype. | |
2499 | (data_segment_operand, text_segment_operand): Call itself with the | |
2500 | proper number of arguments. | |
2501 | (sparc_flat_save_restore, sparc_v8plus_shift): Constify a char*. | |
2502 | ||
2503 | * sparc.h: Move all declarations to sparc-protos.h. | |
2504 | (SELECT_RTX_SECTION): Pass a missing MODE argument to | |
2505 | symbolic_operand. | |
2506 | ||
2507 | * sparc/sysv4.h (SELECT_RTX_SECTION): Likewise. | |
2508 | ||
2509 | * config/svr4.h (text_section, ctors_section, dtors_section): Add | |
2510 | Prototypes. | |
2511 | (ASM_OUTPUT_SECTION_NAME, UNIQUE_SECTION, | |
2512 | ASM_FINISH_DECLARE_OBJECT, ASM_OUTPUT_LIMITED_STRING, | |
2513 | ASM_OUTPUT_ASCII): Constify a char*. | |
2514 | ||
2515 | * sparc-protos.h: New file for sparc prototypes. | |
2516 | ||
ec97b83a KG |
2517 | Thu Oct 21 12:23:40 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2518 | ||
2519 | * function.c (record_insns, contains): Always declare and define. | |
2520 | (record_insns): Mark with ATTRIBUTE_UNUSED. | |
2521 | ||
ec8aac6f JL |
2522 | Thu Oct 21 13:03:49 1999 Jonathan Larmour <jlarmour@cygnus.co.uk> |
2523 | ||
2524 | * config/arm/telf.h (ASM_OUTPUT_SECTION_NAME): Add %nobits option | |
2525 | to .section when outputting a .bss section to deal with multiple | |
2526 | .bss input sections (as happens with -fdata-sections) | |
2527 | Also output %progbits, not @progbits so the assembler doesn't treat as | |
2528 | a comment. | |
2529 | * config/arm/unknown-elf.h (ASM_OUTPUT_SECTION_NAME): Likewise | |
2530 | ||
2531 | * config/arm/lib1funcs.asm (_call_via_rX): Allow compilation of | |
2532 | thumb parts even when building with non-thumb CPUs, by forcing | |
2533 | thumb mode. | |
2534 | ||
b768aa38 JL |
2535 | Wed Oct 20 22:57:58 1999 Jeffrey A Law (law@cygnus.com) |
2536 | ||
e54635a2 JL |
2537 | * sparc.md (movsf_const_intreg): If splitting, length must be > 1. |
2538 | (movdf_const_intreg_sp64): Similarly. | |
2539 | ||
b768aa38 JL |
2540 | * local-alloc.c (update_equiv_regs): Check the correct insn |
2541 | for pre-existing REG_EQUIV notes. | |
2542 | ||
16b702cd MM |
2543 | Wed Oct 20 20:41:46 1999 Mark Mitchell <mark@codesourcery.com> |
2544 | ||
2545 | * cse.c (cse_end_of_basic_block): Don't return the end of a basic | |
2546 | block reached by a branch if we're not going to actually process | |
2547 | this block. | |
2548 | ||
417d348c JW |
2549 | Wed Oct 20 15:18:42 1999 Jim Wilson <wilson@cygnus.com> |
2550 | ||
2551 | * integrate.c (integrate_decl_tree): Set DECL_CONTEXT to 0 if this is | |
2552 | a local extern function declaration. | |
2553 | ||
276ab4a4 RH |
2554 | Wed Oct 20 13:56:01 1999 Richard Henderson <rth@cygnus.com> |
2555 | ||
2556 | * i386.c (ix86_expand_prologue): Properly wrap USE around | |
2557 | reg for CALL_INSN_FUNCTION_USAGE. | |
2558 | ||
c26040ee AH |
2559 | Thu Oct 14 18:51:37 1999 Andrew Haley <aph@cygnus.com> |
2560 | ||
2561 | * config/mips/mips.md (movdf_internal1a): Allow floating-point | |
2562 | move between GP_REGs. | |
2563 | ||
7086004d AH |
2564 | Wed Oct 20 15:36:11 1999 Andrew Haley <aph@cygnus.com> |
2565 | ||
2566 | * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Take account of | |
2567 | the mode size when finding out if an offset is legal. | |
2568 | ||
49c3bb12 RH |
2569 | Wed Oct 20 06:26:58 1999 Richard Henderson <rth@cygnus.com> |
2570 | ||
2571 | * basic-block.h (PROP_*): Move constants from ... | |
2572 | * flow.c: ... here. | |
2573 | (compute_bb_for_insn): Free the array before reallocating. | |
2574 | (update_life_info): New arg PROP_FLAGS; pass on to propagate_block. | |
2575 | (allocate_reg_life_data): Reset all reg variables collected by | |
2576 | propagate_block. | |
2577 | (get_block_head_tail): Don't convert from bb to block. | |
2578 | (get_bb_head_tail): New. Update all callers of get_block_head_tail. | |
2579 | (find_insn_reg_weight): Take block not bb. | |
2580 | (schedule_block): Don't set block num for moved insns. | |
2581 | (schedule_region): Don't update_life_info or find_insn_reg_weight. | |
2582 | (schedule_insns): Do it here instead. | |
2583 | * combine.c (combine_instructions): Invoke compute_bb_for_insn | |
2584 | before update_life_info. | |
2585 | * recog.c (split_all_insns, peephole2_optimize): Update for | |
2586 | new arg to update_life_info. | |
2587 | * rtlanal.c (remove_note): Cope with NULL note. | |
2588 | * toplev.c (rest_of_compilation): Don't invoke recompute_reg_usage | |
2589 | if we did sched1. | |
2590 | ||
dc9e9f3f RE |
2591 | Wed Oct 20 10:46:41 1999 Richard Earnshaw (rearnsha@arm.com) |
2592 | ||
2593 | * jump.c (jump_optimize_1): More accurately detect casesi insns. | |
2594 | ||
ee7b8369 RE |
2595 | * flow.c (merge_blocks_move_predecessor_nojumps): Re-order the basic |
2596 | block records so that merge_blocks_nomove will clean up correctly. | |
506f9fbf | 2597 | (split_edge): Handle casesi insns. |
ee7b8369 | 2598 | |
5b918807 RE |
2599 | * gcc-page.c: Try MAP_ANON if we don't have MAP_ANONYMOUS. |
2600 | ||
7978192f JL |
2601 | Tue Oct 19 23:43:50 1999 Jeffrey A Law (law@cygnus.com) |
2602 | ||
2603 | * pa.md (call, call_value): Do not emit a blockage after restoring | |
2604 | the PIC register. | |
2605 | ||
1bef1e7c MM |
2606 | Tue Oct 19 17:22:39 1999 Mark Mitchell <mark@codesourcery.com> |
2607 | ||
2608 | * c-typeck.c (c_expand_asm_operands): Fix typo. | |
2609 | ||
9ce71c6f BS |
2610 | Tue Oct 19 18:42:58 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
2611 | ||
2612 | * arm.c (fpu_rhs_operand): Verify modes. | |
2613 | (fpu_add_operand): Likewise. | |
2614 | (di_operand): Likewise. | |
2615 | (soft_df_operand): Likewise. | |
2616 | ||
3a2ea258 RE |
2617 | Tue Oct 19 15:26:11 1999 Richard Earnshaw (rearnsha@arm.com) |
2618 | ||
2619 | * arm.c (arm_return_in_memory): APCS rules state that the elements | |
2620 | of a structure returned in a register must be 'integer-like'. | |
2621 | ||
db025289 BK |
2622 | 1999-10-19 Bruce Korb <autogen@linuxbox.com> |
2623 | ||
46cc13b3 RO |
2624 | * fixinc/Makefile.in: Change the generation rules to run `genfixes' |
2625 | in the source tree when the generated targets are out of date | |
2626 | * fixinc/genfixes: Alter it to run individual fixes for make. | |
db025289 BK |
2627 | * fixinc/README: rewrite |
2628 | * fixinc/inclhack.def: moved initial comments to README | |
2629 | ||
0c70c30f NC |
2630 | Tue Oct 19 14:01:34 1999 Nick Clifton <nickc@cygnus.com> |
2631 | ||
2632 | * toplev.c (main): Do not generate an error message if an | |
2633 | unrecognised command line switch is recognisable by another | |
2634 | language. If extra_warnings are enabled, then generate a | |
2635 | warning message instead. | |
2636 | ||
61e8b354 MK |
2637 | Tue Oct 19 11:41:12 1999 Mumit Khan <khan@xraylith.wisc.edu> |
2638 | ||
2639 | * c-pragma.h (PRAGMA_INSERT_ATTRIBUTES): Delete macro. | |
2640 | (insert_pack_attributes): Delete prototype. | |
2641 | ||
2642 | * c-pragma.c (default_alignment): New static variable. | |
2643 | (push_alignment): Initialize to current effective alignment. | |
2644 | (pop_alignment): Use to set new alignment. | |
2645 | (insert_pack_attributes): Delete function. | |
2646 | (handle_pragma_token): Set default_alignment as well each time | |
2647 | a #pragma pack(<n>) is encountered. | |
2648 | ||
f099b1c9 JL |
2649 | Tue Oct 19 02:03:00 1999 Jeffrey A Law (law@cygnus.com) |
2650 | ||
2651 | * reg-stack.c (stack_result): Aggregates are not returned in | |
2652 | stack registers. | |
2653 | ||
2af3e5fb AB |
2654 | Tue Oct 19 01:26:48 1999 Alasdair Baird <alasdair@wildcat.demon.co.uk> |
2655 | ||
2656 | * fold-const.c (fold): Fix thinko in x+(-0) -> x transformation. | |
2657 | ||
c88e8206 RH |
2658 | Mon Oct 18 15:19:41 1999 Richard Henderson <rth@cygnus.com> |
2659 | ||
2660 | * basic-block.h (set_block_num): Declare. | |
2661 | * flow.c (update_life_info): Don't call compute_bb_for_insn | |
2662 | or free_basic_block_vars. | |
2663 | * haifa-sched.c (remove_dependence): Conditionalize on HAVE_cc0. | |
2664 | (insn_orig_block): Remove. | |
2665 | (INSN_BLOCK): Remove. Update all callers to use BLOCK_NUM. | |
2666 | (schedule_block): Keep BLOCK_NUM up-to-date. | |
2667 | (schedule_insns): Use compute_bb_for_insn. | |
2668 | * recog.c (split_all_insns): Likewise. | |
2669 | (peephole2_optimize): Likewise. | |
2670 | ||
d3f4f2d6 AS |
2671 | Mon Oct 18 18:50:51 1999 Andreas Schwab <schwab@suse.de> |
2672 | ||
2673 | * config/m68k/m68k.h (INITIAL_FRAME_POINTER_OFFSET): Add one word | |
2674 | if the pic register is used. | |
2675 | ||
e3d2508d BS |
2676 | Mon Oct 18 02:38:46 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
2677 | ||
2678 | * c-decl.c (pushdecl): Use TYPE_CONTEXT rather than TREE_PERMANENT. | |
2679 | (finish_decl): Duplicate test for TREE_ASM_WRITTEN in else branch of | |
2680 | if that tests TREE_PERMANENT. | |
2681 | ||
ca4cd906 JL |
2682 | Mon Oct 18 01:41:35 1999 Jeffrey A Law (law@cygnus.com) |
2683 | ||
b61a6c81 JL |
2684 | * cse.c (invalidate_for_call): Do not remove memory references from |
2685 | the table here. It's handled elsewhere. | |
2686 | ||
35c95c5a JL |
2687 | * haifa-sched.c (add_dependence): Protect references to the |
2688 | true dependency cache with #ifdef INSN_SCHEDULING. | |
2689 | (remove_dependence): Similarly. | |
2690 | ||
87b5c7e5 JL |
2691 | * mn10200.md (outline_epilogue_jump): Embed a (return) to indicate |
2692 | to the cfg code that this is a return instruction. | |
2693 | * mn10300.md (return_internal): Similarly. | |
2694 | ||
ca4cd906 JL |
2695 | * combine.c (get_last_value): If the last set of a register |
2696 | is after subst_low_cuid, then we can not use it to determine | |
2697 | the register's last value. | |
2698 | ||
d336e504 MM |
2699 | Sun Oct 17 11:02:52 1999 Mark Mitchell <mark@codesourcery.com> |
2700 | ||
2701 | * Makefile.in: Back out previous change. | |
2702 | ||
aae0390e JL |
2703 | Sun Oct 17 15:22:50 1999 Jeffrey A Law (law@cygnus.com) |
2704 | ||
7739ebae JL |
2705 | * pa.c (move_operand): Reject (lo_sum (reg) (unspec ...)). |
2706 | ||
aae0390e JL |
2707 | * haifa-sched.c (add_dependence): Only check/update the cache |
2708 | if it exists. | |
2709 | (remove_dependence): Likewise. | |
2710 | (schedule_insns): Only create the true_dependency_cache if the | |
2711 | average number of instructions in a basic block is very large. | |
2712 | ||
81631c48 MM |
2713 | Sun Oct 17 11:02:52 1999 Mark Mitchell <mark@codesourcery.com> |
2714 | ||
2715 | * Makefile.in (ggc-common.o): Depend on genrtl.h. | |
2716 | (ggc-simple.o): Likewise. | |
2717 | (ggc-page.o): Likewise. | |
2718 | ||
3cce638b AM |
2719 | Sun Oct 17 02:09:50 1999 Andrew MacLeod <amacleod@cygnus.com> |
2720 | ||
2721 | * basic-block.h (pre_edge_lcm, pre_edge_rev_lcm, compute_available): | |
2722 | Prototype for exported functions. | |
2723 | (pre_lcm, pre_rev_lcm): Remove prototypes. | |
2724 | * gcse.c (compute_ae_kill): Add ae_gen and ae_kill as parameters. | |
2725 | (compute_available): Move to lcm.c, and change parameter order. | |
2726 | (one_classic_gcse_pass): Call compute_ae_kill with parameters. | |
a42cd965 AM |
2727 | (pre_insert, s_preds, s_succs, num_preds, num_succs): Delete. |
2728 | (gcse_main): No longer call compute_preds_succs. Rebuild the | |
2729 | set table after reach pre pass. | |
2730 | (pre_insert_map, pre_delete_map, edge_list): New. | |
2731 | (alloc_pre_mem): Allocate edge vectors. | |
2732 | (free_pre_mem): Delete edge vectors. | |
2733 | (compute_pre_data): Call new edge based lcm routines. | |
2734 | (process_insert_insn): New function. | |
2735 | (insert_insn_end_bb): Use it. | |
2736 | (pre_edge_insert): New function. | |
2737 | (pre_insert_copy_insn): Formatting fixes. Update BLOCK_END as | |
2738 | needed. | |
2739 | (pre_insert_copies): Revamp using new edge based lcm outputs. | |
2740 | (pre_delete): Likewise. | |
2741 | (one_pre_gcse_pass): Insert & remove fake edges to the exit | |
2742 | block. | |
2743 | (compute_code_hoist_vbeinout): New new edge based routines. | |
3cce638b AM |
2744 | * lcm.c: Remove all the old LCM functions. Replace with new ones |
2745 | that work with the new cfg datastructures and work with edges | |
2746 | instead of blocks. | |
2747 | ||
8ec450a4 BS |
2748 | Sun Oct 17 00:44:17 1999 Bernd Schmidt <bernds@cygnus.co.uk> |
2749 | ||
2750 | * reload.h (struct reload): Add new fields "mode" and "nregs". | |
2751 | * reload1.c: Change all occurrences of reload_mode and reload_nregs | |
2752 | to reference the "mode" and "nregs" field within struct reload. | |
2753 | ||
e75f2df7 JL |
2754 | Sat Oct 16 21:50:28 1999 Jeffrey A Law (law@cygnus.com) |
2755 | ||
356edbd7 JL |
2756 | * haifa-sched.c (true_dependency_cache): New. |
2757 | (add_dependence): Use the true dependency cache to avoid expensive | |
2758 | walks down the LOG_LINKS dependency list. Add entries to the | |
2759 | cache as necessary. | |
2760 | (remove_dependence): Remove entries from the true dependency cache | |
2761 | as needed. | |
2762 | (schedule_insns): Allocate and initialize and free the true | |
2763 | dependency cache. | |
2764 | ||
e75f2df7 JL |
2765 | * haifa-sched.c (schedule_insns): Do not remove inter-block |
2766 | dependencies anymore. | |
2767 | ||
1b284f05 RH |
2768 | Sat Oct 16 11:19:52 1999 Richard Henderson <rth@cygnus.com> |
2769 | ||
2770 | * i386/t-cygwin (winnt.o): Depend on RTL_H and TREE_H. | |
2771 | * i386/t-winnt: Likewise. | |
2772 | ||
2773 | Sat Oct 16 11:11:54 1999 Richard Henderson <rth@cygnus.com> | |
2774 | ||
2775 | * ggc-page.c (init_ggc): Work around SunOS unaligned mmap bug. | |
2776 | ||
28fe2fb7 MH |
2777 | 1999-10-16 Manfred Hollstein <mhollstein@cygnus.com> |
2778 | ||
2779 | * Makefile.in (LANGUAGES): Omit "proto". | |
2780 | (clean): Remove stale comment about removing unprotoize.c. | |
2781 | ||
9c592305 KG |
2782 | Sat Oct 16 11:29:14 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2783 | ||
2784 | * protoize.c (safe_read, safe_write): Avoid the gcc extension of | |
2785 | using arithmetic on void pointers. | |
2786 | ||
706c5c2f JL |
2787 | Sat Oct 16 02:48:22 1999 Jeffrey A Law (law@cygnus.com) |
2788 | ||
2789 | * haifa-sched.c (compute_block_forward_dependencies): Only check | |
2790 | for notes, deleted insns and duplicates if ENABLE_CHECKING is defined. | |
2791 | ||
297c3335 RH |
2792 | Sat Oct 16 00:07:01 1999 Richard Henderson <rth@cygnus.com> |
2793 | ||
2794 | * gcse.c (hash_expr_1): Add in MEM_ALIAS_SET. | |
2795 | (expr_equiv_p): Reject memories with different alias sets. | |
2796 | ||
a8aa7975 GM |
2797 | Fri Oct 15 15:17:29 1999 Greg McGary <gkm@gnu.org> |
2798 | ||
2799 | * flags.h (flag_bounds_check, flag_bounded_pointers): New extern decls. | |
2800 | * toplev.c (flag_bounds_check, flag_bounded_pointers): New flags. | |
2801 | (f_options): Add "bounded-pointers" and "bounds-check" entries. | |
2802 | * c-lang.c (lang_init_options): Set flag_bounds_check as "unspecified". | |
2803 | (lang_init): Set default for flag_bounds_check if still "unspecified". | |
2804 | ||
a9d3cc3f MH |
2805 | Sat Oct 16 13:42:29 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2806 | ||
2807 | * config/c4x/c4x.md (HF mode patterns): Add missing modes. | |
2808 | ||
0dced2c7 MH |
2809 | Sat Oct 16 13:37:46 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2810 | ||
2811 | * config/c4x/c4x.md (movstrqi_small): Utilise parallel move | |
2812 | instructions. | |
2813 | ||
6c7811a8 MH |
2814 | Sat Oct 16 13:26:47 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2815 | ||
2816 | * config/c4x/c4x.md (*db_noclobber, | |
2817 | *decrement_and_branch_until_zero_noclobber): New patterns and | |
2818 | associated splitters. | |
2819 | ||
1f7c7f6f MH |
2820 | Sat Oct 16 13:13:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2821 | ||
2822 | * config/c4x/c4x.md (parallel instruction patterns): Rework | |
2823 | constraints to keep reload happy. | |
2824 | ||
57e5bce8 MH |
2825 | Sat Oct 16 13:03:16 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2826 | ||
2827 | * config/c4x/c4x.md (*absqi2_noclobber, *negqi2_noclobber, | |
2828 | *one_cmplqi2_noclobber, *subqi3_noclobber, *andqi3_255_noclobber, | |
2829 | *andqi3_65535_noclobber, *andnqi3_noclobber, *xorqi3_noclobber): | |
2830 | Add new patterns and associated post-reload splitters. | |
2831 | ||
3411b713 MH |
2832 | Sat Oct 16 12:42:12 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2833 | ||
2834 | * config/c4x/c4x.c (c4x_emit_libcall): Use ggc_alloc_string. | |
2835 | ||
3b5e8a16 MH |
2836 | Sat Oct 16 12:34:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2837 | ||
2838 | * config/c4x/c4x.c (c4x_rptb_insert): Emit rpts_top pattern | |
2839 | if appropriate. | |
2840 | * config/c4x/c4x.md (rpts_top): New pattern and splitter. | |
2841 | ||
1a616dfc MH |
2842 | Sat Oct 16 12:26:30 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2843 | ||
2844 | * config/c4x/c4x.c (src_operand): Check SYMBOL_REF and LABEL_REF | |
2845 | memory mode. | |
2846 | ||
f9b5668e JL |
2847 | Fri Oct 15 17:02:09 1999 Jeffrey A Law (law@cygnus.com) |
2848 | ||
2849 | * pa.c (move_operand): Rely on memory_address_p to determine the | |
2850 | validity of non-indexed memory addresses. | |
2851 | * pa.h (GO_IF_LEGITIMATE_ADDRESS): Allow LO_SUM with a symbolic | |
2852 | operand in DFmode and SFmode when generating PA2.0 code. | |
2853 | ||
d5e3e85b RH |
2854 | Fri Oct 15 14:25:19 1999 Richard Henderson <rth@cygnus.com> |
2855 | ||
2856 | * print-rtl.c (print_rtx): Limit last 'u' change to LABEL_REF. | |
2857 | ||
810c1b83 RH |
2858 | Fri Oct 15 13:48:45 1999 Richard Henderson <rth@cygnus.com> |
2859 | ||
2860 | * mips.c (function_prologue): Fix argument types. | |
2861 | * mips.md (casesi): Use emit_jump_insn for casesi_internal. | |
2862 | (casesi_internal): Write to the scratch register. | |
2863 | ||
a2c8e144 ZW |
2864 | 1999-10-15 11:16 -0700 Zack Weinberg <zack@bitmover.com> |
2865 | ||
2866 | * cppexp.c (cpp_parse_escape): Make static. Change second arg | |
2867 | to U_CHAR **. | |
2868 | (parse_charconst): Delete unnecessary cast when calling | |
2869 | cpp_parse_escape. | |
2870 | (cpplib.h): Kill prototype of cpp_parse_escape. | |
2871 | ||
104dfaa8 RH |
2872 | Fri Oct 15 11:02:46 1999 Richard Henderson <rth@cygnus.com> |
2873 | ||
2874 | Based on patch from Michael Gschwind <mikeg@watson.ibm.com>: | |
2875 | * unroll.c (unroll_loop): Cast return value of alloca. | |
2876 | * i370/i370.c: Include function.h and toplev.h. | |
2877 | (i370_label_scan): Remove c++ commented abort. | |
2878 | * i370/i370.h (HANDLE_PRAGMA): Takes three arguments. | |
2879 | (ASM_OUTPUT_LABELREF): Fix TOUPPER/else broken 16 Sept. | |
2880 | * i370/xm-i370.h (HOST_BITS_PER_LONGLONG): Define. | |
2881 | * i370/xm-mvs.h, i370/xm-oe.h: Likewise. | |
2882 | ||
370c81d6 LR |
2883 | Fri Oct 15 03:01:01 1999 Loren Rittle <ljrittle@acm.org> |
2884 | ||
2885 | * config/t-freebsd: Do not override USER_H. | |
2886 | * ginclude/stddef.h: Generalize check for _MACHINE_ANSI_H_. | |
2887 | ||
ffc3b0f9 AH |
2888 | Fri Oct 15 02:37:28 1999 Alastair J. Houghton <ajh8@doc.ic.ac.uk> |
2889 | Mumit Khan <khan@xraylith.wisc.edu> | |
2890 | ||
2891 | * c-parse.in (component_decl): Support anonymous struct/union. | |
2892 | (%expect): Update. | |
2893 | * c-parse.y: Regenerate. | |
2894 | * c-parse.c: Likewise. | |
2895 | * objc/objc-parse.y: Likewise. | |
2896 | * objc/objc-parse.c: Likewise. | |
2897 | * c-decl.c (finish_struct): Don't sort the fields. | |
2898 | (field_decl_cmp): Delete unused function. | |
2899 | ||
e57ad0c8 RH |
2900 | Fri Oct 15 01:20:52 1999 Richard Henderson <rth@cygnus.com> |
2901 | ||
2902 | * sparc.md (movsf_const_intreg): Revert last constraint change. | |
2903 | (movdf_const_intreg_sp32): Likewise. | |
2904 | ||
c1edba58 VM |
2905 | Fri Oct 15 01:47:51 1999 Vladimir Makarov <vmakarov@loony.cygnus.com> |
2906 | ||
2907 | * cse.c: Include hashtab.h instead of splay-tree.h | |
2908 | (struct cse_reg_info): No longer use variant union. Add new | |
2909 | field "regno". All references changed to avoid union. | |
2910 | (cse_reg_info_used_list, cse_reg_info_used_list_end): New variables. | |
2911 | (free_cse_reg_info): Remove. | |
2912 | (hash_cse_reg_info, cse_reg_info_equal_p): New functions. | |
2913 | (get_cse_reg_info): Revamp to use expandable hash tables instead | |
2914 | of splay trees. Initialize new fields in cse_reg_info structure. | |
2915 | (new_basic_block): Similarly. | |
2916 | ||
aece2740 RH |
2917 | Thu Oct 14 23:51:56 1999 Richard Henderson <rth@cygnus.com> |
2918 | ||
2919 | * genrecog.c (message_with_line): Prototype. | |
2920 | (validate_pattern): Pass along the set for the dest, not a flag. | |
2921 | Fix non-lvalue message. Don't warn for VOIDmode SET_DEST of CALL. | |
2922 | Check for PC/CC0 as sources. | |
2923 | (nodes_identical): Check for children position match before | |
2924 | allowing the combination. | |
2925 | ||
2926 | * rtl.c (read_rtx): Track line number across \\\n. | |
2927 | ||
0e7e9155 RH |
2928 | Thu Oct 14 23:50:25 1999 Richard Henderson <rth@cygnus.com> |
2929 | ||
2930 | * mips.h (SPECIAL_MODE_PREDICATES): New. | |
2931 | * mips.md (*) Use nonimmediate_operand not general_operand for outputs. | |
2932 | (movdi+1, movsi+1): Add output reload constraint. | |
2933 | (casesi_internal): Likewise. Fix commentary. | |
2934 | (return_internal): Use pmode_register_operand. | |
2935 | ||
997718c7 RH |
2936 | Thu Oct 14 23:19:34 1999 Richard Henderson <rth@cygnus.com> |
2937 | ||
2938 | * 1750a.md (movstrqi): Add missing output reload constraint. | |
2939 | (call_value): Likewise. | |
2940 | * a29k.md (cpxxx patterns): Add missing match_operator mode. | |
2941 | (jmpfdec): Add missing inout reload constraint. | |
2942 | * elxsi.md (addsi patterns): Add missing output reload constraint. | |
2943 | (move from sp): Use @ alternates. | |
2944 | (call_value): No constraint on output. | |
2945 | * fr30.md (movsi_pop): Add missing output reload constraint. | |
2946 | (movsf_constant_store): Likewise. | |
2947 | (splits): Remove constraints. | |
2948 | (subsi3): Add missing mode. | |
2949 | * i370.md (cmpstrsi+1): Add missing output reload constraint. | |
2950 | (call_value): Likewise. | |
2951 | * i960.md (cmpinc/cmpdec patterns): Add inout reload constraints. | |
2952 | * m32r.h (PREDICATE_CODES): Add seth_add3_operand. | |
2953 | * m32r.md (movsicc_internal): Add output reload constraint. | |
2954 | (movstrsi_internal): Add inout reload constraints. | |
2955 | * m88k.h (reg_names): Don't declare. | |
2956 | (SPECIAL_MODE_PREDICATES): New. | |
2957 | * m88k.md (*): Use register_operand not reg_or_0_operand | |
2958 | on destinations. | |
2959 | * mn10200.h (PREDICATE_CODES): New. | |
2960 | * ns32k.md (ffs pattern): Add output reload constraint. | |
2961 | * pdp11.md (sob pattern): Add inout reload constraint. | |
2962 | * sh.md (splits): Remove constraints. | |
2963 | (indirect_jump_scratch, fpu_switch): Add output reload constraint. | |
2964 | * v850.md (pattern_is_ok_for_epilogue): Likewise. | |
2965 | * vax.md (jgequ pattern): Add inout reload constraint. | |
2966 | ||
7901f53f JL |
2967 | Fri Oct 15 00:05:00 1999 Jeffrey A Law (law@cygnus.com) |
2968 | ||
2969 | * configure.in (djgpp): Revert previous patch. | |
2970 | * configure: Rebuit. | |
2971 | * config/i386/djgpp.h: Revert previous patch. | |
2972 | ||
70d42369 LR |
2973 | Fri Oct 15 00:00:24 1999 Loren J. Rittle <ljrittle@acm.org> |
2974 | ||
2975 | * fixinc/inclhack.def: Restore patch lost during last merge of | |
2976 | "no_bogosity" branch. | |
2977 | * fixinc/inclhack.sh, fixinc/fixincl.x: Rebuilt. | |
2978 | ||
abf7cec7 GRK |
2979 | Thu Oct 14 23:57:56 1999 Gavin Romig-Koch <gavin@cygnus.com> |
2980 | ||
2981 | * fixincludes: Add a HPUX 11 fix for inttypes.h. | |
2982 | * fixinc/inclhack.def: Same. | |
2983 | * fixinc/inclhack.sh, fixinc/fixincl.sh, fixinc/fixincl.x: Regenerate. | |
2984 | ||
0c5912f4 RH |
2985 | Thu Oct 14 22:51:55 1999 Richard Henderson <rth@cygnus.com> |
2986 | ||
2987 | * alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Accept ADDRESSOF | |
2988 | as the base of a PLUS. | |
2989 | ||
f959ff1a MH |
2990 | Fri Oct 15 18:36:07 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2991 | ||
2992 | * config/c4x/c4x.md: Define mode for remaining unspec operators. | |
2993 | * config/c4x/c4x.c (dst_operand): Use nonimmediate_operand. | |
2994 | ||
fc524c1c RH |
2995 | Thu Oct 14 22:14:23 1999 Richard Henderson <rth@cygnus.com> |
2996 | ||
1c784a0e RH |
2997 | * pa.md (post_stw+1): Use pmode_register_operand. |
2998 | (dcacheflush, icacheflush): Likewise. | |
2999 | ||
fc524c1c RH |
3000 | * i386.md (movstricthi_1): Allow r/r. |
3001 | ||
79e8185c JH |
3002 | Thu Oct 14 19:44:08 1999 Jan Hubicka <hubicka@freesoft.cz> |
3003 | ||
ccc5fd95 JH |
3004 | * fold-const.c (fold): Convert (or (not arg0) (not arg1)) |
3005 | to (not (and (arg0) (arg1))). Similary for and. | |
3006 | ||
79e8185c JH |
3007 | * fold-const.c (fold): Move bit_rotate code to the EXPR_PLUS case, |
3008 | falltrought to assocate code. | |
3009 | Convert XOR to OR in code like (a&c1)^(a&c2) where c1 and c2 don't have | |
3010 | bits in common. | |
3011 | ||
3012 | * combine.c (simplify_logical): Convert XOR to IOR if operands have | |
3013 | no bits in common; remove XOR to ROTATE conversion. | |
3014 | ||
ce577467 MH |
3015 | Fri Oct 15 17:40:11 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
3016 | ||
3017 | * config/c4x/c4x.h (c4x_va_start, c4x_va_arg): Declare. | |
3018 | ||
f416f18c MH |
3019 | Fri Oct 15 17:27:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
3020 | ||
3021 | * config/c4x/c4x.c (dst_operand): New. | |
3022 | (PREDICATE_CODES): Update. | |
3023 | * config/c4x/c4x.h (dst_operand): Declare it. | |
3024 | * config/c4x/c4x.md: Define mode for each unspec usage. | |
3025 | (move patterns): Use dst_operand predicate instead of src_operand. | |
3026 | (movqi_update, movqf_update): Delete. | |
3027 | ||
556ffcc5 RH |
3028 | Thu Oct 14 18:48:54 1999 Richard Henderson <rth@cygnus.com> |
3029 | ||
3030 | * recog.c (pmode_register_operand): New. | |
3031 | * recog.h: Declare it. | |
3032 | * genrecog.c (pred_codes): Likewise. | |
3033 | (special_mode_pred_table): Likewise. | |
3034 | (validate_pattern): Don't warn no mode for address_operand. | |
3035 | ||
3036 | * print-rtl.c (print_rtx) [LABEL_REF]: Only do full subexpression | |
3037 | if the operand is not insn-like. | |
3038 | ||
10414089 JL |
3039 | Thu Oct 14 19:38:42 1999 Jeffrey A Law (law@cygnus.com) |
3040 | Sylvian Pion <Sylvain.Pion@sophia.inria.fr> | |
3041 | ||
3042 | * fold-const.c (fold): Handle more simplifications allowed by IEEE. | |
3043 | ||
db7eb3e8 RH |
3044 | Thu Oct 14 17:30:14 1999 Richard Henderson <rth@cygnus.com> |
3045 | ||
3046 | * sparc.md (*): Use {nonimmediate,register}_operand as appropriate | |
3047 | instead of general_operand in a SET_DEST. Use const_double_operand | |
3048 | instead of an explicit test against CONST_DOUBLE. | |
3049 | (movsf_const_lo): Add missing register mode. | |
3050 | (goto_handler_and_restore): Add auxiliary test for Pmode. | |
3051 | (flush): Adjust to use address_operand. | |
3052 | (return_sf_no_fpu): Add missing output constraint. | |
3053 | ||
2d1086d8 RH |
3054 | Thu Oct 14 17:21:26 1999 Richard Henderson <rth@cygnus.com> |
3055 | ||
3056 | * rs6000.md (call_value_indirect_aix32): Use wildcard match_operand | |
3057 | for call return value. | |
3058 | (call_value_indirect_aix64, call_value_indirect_nt): Likewise. | |
3059 | ||
43a8f6d5 JM |
3060 | Thu Oct 14 13:54:25 1999 Jason Merrill <jason@yorick.cygnus.com> |
3061 | ||
3062 | * toplev.c (main): Only warn about options for other languages. | |
3063 | * collect2.c (main): Pass -w to sub-gcc. | |
3064 | ||
d1abb925 RH |
3065 | Thu Oct 14 16:27:50 1999 Richard Henderson <rth@cygnus.com> |
3066 | ||
3067 | * flow.c (propagate_block): Add call-clobbered registers to | |
3068 | significant too. | |
3069 | ||
ff666313 RH |
3070 | * flow.c (propagate_block): Use free_EXPR_LIST_list instead of |
3071 | zapping mem_set_list. | |
3072 | (invalidate_mems_from_autoinc): Use free_EXPR_LIST_node. | |
3073 | (mark_set_1, mark_used_regs): Likewise. | |
3074 | ||
e99b93ff RH |
3075 | Thu Oct 14 10:51:49 1999 Richard Henderson <rth@cygnus.com> |
3076 | ||
3077 | * m68k.md (zero_extendsidi2): Add missing output reload constraint. | |
3078 | ||
fe50c0eb GP |
3079 | Wed Oct 13 00:09:18 1999 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
3080 | ||
3081 | * invoke.texi: Label -Wbad-function-cast, -Wmissing-prototypes, | |
3082 | -Wnested-externs, -Wstrict-prototypes, and -Wtraditional as C only | |
3083 | options. Also add a new item "C-only Warning Options" to the | |
3084 | option summary. | |
3085 | ||
a4ebb0e6 GRK |
3086 | 1999-10-14 Gavin Romig-Koch <gavin@cygnus.com> |
3087 | ||
3088 | * libgcc2.c (__do_global_dtors): Protect __deregister_frame_info | |
3089 | from multiple calls. | |
3090 | ||
69404d6f RH |
3091 | Thu Oct 14 04:54:54 1999 Richard Henderson <rth@cygnus.com> |
3092 | ||
3093 | * i386.md (call value patterns): Move to the end of the file. | |
3094 | (prologue_set_got, prologue_get_pc): Use register_operand for op 0. | |
3095 | ||
65be5cf0 ME |
3096 | 1999-10-14 Mark Elbrecht <snowball3@bigfoot.com> |
3097 | ||
3098 | * configure.in (djgpp configuration): Define extra_objects.. | |
3099 | * configure: Rebuilt. | |
3100 | * config/i386/djgpp.h (CTORS_SECTION_ASM_OP): Define. | |
3101 | (DTORS_SECTION_ASM_OP): Define. | |
3102 | (INIT_SECTION_ASM_OP): Define. | |
3103 | (FINI_SECTION_ASM_OP): Define. | |
3104 | (DATA_SECTION_ASM_OP): Define. | |
3105 | (TEXT_SECTION_ASM_OP): Define. | |
3106 | (EH_FRAME_SECTION_ASM_OP): Define. | |
3107 | (LINK_COMMAND_SPEC): Remove -Tdjgpp.djl. | |
3108 | (STARTFILE_SPEC): Add crtbegin.o. | |
3109 | (ENDFILE_SPEC): Define and add crtend.o. Move argument -Tdjgpp.djl | |
3110 | to here from LINK_COMMAND_SPEC. | |
3111 | (DO_GLOBAL_CTORS_BODY): Define. | |
3112 | (CRTSTUFF_USE_FINI_SECTION): Define | |
3113 | (HAS_INIT_SECTION): Delete. | |
3114 | ||
d81c9768 AS |
3115 | Thu Oct 14 05:08:14 1999 Andreas Schwab <schwab@suse.de> |
3116 | ||
3117 | * Makefile.in (all.cross): Depend on xcpp$(exeext). | |
3118 | ||
476a33f4 RH |
3119 | Thu Oct 14 04:00:40 1999 Richard Henderson <rth@cygnus.com> |
3120 | ||
0c273d11 RH |
3121 | * pa.h (PREDICATE_CODES): New. |
3122 | ||
476a33f4 RH |
3123 | * genrecog.c (validate_pattern): Condense the destination |
3124 | non-lvalue message. | |
3125 | ||
d41395a5 RH |
3126 | Thu Oct 14 03:23:08 1999 Richard Henderson <rth@cygnus.com> |
3127 | ||
3128 | * alpha.md (call-1): Supply missing mode for operator. | |
3129 | (*): Add missing output reload constraints. Remove constraints | |
3130 | from define_splits. | |
3131 | ||
c76aab11 RH |
3132 | * i386.h (SPECIAL_MODE_PREDICATES): New. |
3133 | * i386.md (movstricthi_1): Use nonimmediate_operand for op 0. | |
3134 | (movqi_1, movdi_1, movdi_2, some splits): Likewise. | |
3135 | (addsi_lea_3): Add missing mode for op 3. | |
3136 | (prologue_set_got, prologue_get_pc): Add missing modes. | |
3137 | (*) Add missing output reload constraints. | |
3138 | ||
9180cca3 SC |
3139 | Thu Oct 14 03:59:57 1999 Stephane Carrez <stcarrez@worldnet.fr> |
3140 | ||
3141 | * stor-layout.c (layout_union): Use HOST_WIDE_INT for const_size; | |
3142 | check for member bit-size overflow and use var_size if it occurs. | |
3143 | (layout_record): Use bitsize_int() to define the type size in bits. | |
3144 | Likewise for computation and assignment to DECL_FIELD_BITPOS. | |
3145 | (layout_decl): Likewise when assigning to DECL_SIZE. | |
3146 | ||
25238622 RH |
3147 | Thu Oct 14 02:57:05 1999 Richard Henderson <rth@cygnus.com> |
3148 | ||
3149 | * genrecog.c (validate_pattern): Typo last change. Verify | |
3150 | that output operands have output reloads. | |
3151 | ||
8fe0ca0c RH |
3152 | Thu Oct 14 01:49:54 1999 Richard Henderson <rth@cygnus.com> |
3153 | ||
3154 | * genrecog.c (special_mode_pred_table): New. | |
3155 | (NUM_SPECIAL_MODE_PREDS): New. | |
3156 | (find_operand): New. | |
3157 | (validate_pattern): New argument `insn'. Warn for assignment to | |
3158 | any predicate accepting non-lvalues. Conditionaly warn for | |
3159 | match_operand without a mode. Try much harder to match source | |
3160 | and destination modes on a set. | |
3161 | * tm.texi (SPECIAL_MODE_PREDICATES): Document. | |
3162 | ||
03e0a65f JL |
3163 | Thu Oct 14 02:54:13 1999 Jeffrey A Law (law@cygnus.com) |
3164 | ||
3165 | * fold-const.c (fold): Detect rotates built from BIT_XOR_EXPRs. | |
3166 | ||
0918eca0 ME |
3167 | Thu Oct 14 02:18:19 1999 Marc Espie <espie@cvs.openbsd.org> |
3168 | ||
3169 | * combine.c (simplify_logical): Recognize xor pattern that encodes | |
3170 | rotation. | |
3171 | ||
5ee95df6 FS |
3172 | Wed Oct 13 23:23:45 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
3173 | ||
3174 | * rs6000.c (expand_block_move): Use INTVAL, not XINT to access | |
3175 | alignment. | |
3176 | ||
8342b467 RH |
3177 | Wed Oct 13 21:47:18 1999 Richard Henderson <rth@cygnus.com> |
3178 | ||
3179 | * ggc-page.c (MAP_FAILED): Provide default. | |
3180 | ||
6871dd65 RH |
3181 | Wed Oct 13 21:41:59 1999 Richard Henderson <rth@cygnus.com> |
3182 | ||
3183 | * sparc.c (symbolic_operand): Verify mode; don't accept CONST_DOUBLE. | |
3184 | * sparc.h (PREDICATE_CODES): Update. | |
3185 | ||
f711a22b RH |
3186 | Wed Oct 13 21:18:17 1999 Richard Henderson <rth@cygnus.com> |
3187 | ||
3188 | * alpha.c (some_ni_operand): New. | |
3189 | * alpha-protos.h: Declare it. | |
3190 | * alpha.h (PREDICATE_CODES): Update. | |
3191 | * alpha.md (sXaddq reload insns): Use some_ni_operand | |
3192 | for SET_DEST instead of some_operand. | |
3193 | ||
4dc320a5 RH |
3194 | Wed Oct 13 21:04:45 1999 Richard Henderson <rth@cygnus.com> |
3195 | Jim Wilson <wilson@cygnus.com> | |
3196 | ||
3197 | * genrecog.c (maybe_both_true_2): Don't compare modes of | |
3198 | two DT_pred tests. | |
3199 | (process_tree): Elide peephole2_insns. Invoke simplify_tests | |
3200 | after find_afterward. | |
3201 | (debug_decision_1): Dump next and afterward codes. | |
3202 | ||
bcdaba58 RH |
3203 | Wed Oct 13 20:35:16 1999 Richard Henderson <rth@cygnus.com> |
3204 | ||
3205 | * rtl.c (dump_and_abort): Remove. | |
3206 | (fatal_with_file_and_line): New. | |
3207 | (fatal_expected_char): New. | |
3208 | (read_rtx_lineno, read_rtx_filename): New. | |
3209 | (read_skip_spaces): Track line number. | |
3210 | (read_name): Use fatal_with_file_and_line. | |
3211 | (read_rtx): Use fatal_expected_char. Track line number. | |
3212 | * rtl.h (read_rtx_filename, read_rtx_lineno): Declare. | |
3213 | ||
3214 | * print-rtl.c (print_rtx): Don't special case LABEL_REF argument | |
3215 | if it isn't a CODE_LABEL. | |
3216 | ||
3217 | * genattr.c (main): Set read_rtx_filename. | |
3218 | * genattrtab.c (main): Likewise. | |
3219 | * gencodes.c (main): Likewise. | |
3220 | * genconfig.c (main): Likewise. | |
3221 | * genemit.c (main): Likewise. | |
3222 | * genextract.c (main): Likewise. | |
3223 | * genflags.c (main): Likewise. | |
3224 | * genopinit.c (main): Likewise. | |
3225 | * genoutput.c (main): Likewise. | |
3226 | * genpeep.c (main): Likewise. | |
3227 | ||
3228 | * genrecog.c (decision_test.u.insn): Add `lineno'. | |
3229 | (pattern_lineno, error_count): New variables. | |
3230 | (message_with_line): New. | |
3231 | (add_to_sequence): Break out checking code to ... | |
3232 | (validate_pattern): ... here. Detect SET_DEST matching CONST_INT. | |
3233 | (merge_insn): Use message_with_line. | |
3234 | (make_insn_sequence): Use validate_pattern. Record insn lineno. | |
3235 | (main): Set read_rtx_filename, pattern_lineno. Exit early on error. | |
3236 | ||
a59f8640 R |
3237 | Wed Oct 13 22:01:35 1999 J"orn Rennecke <amylaar@cygnus.co.uk> |
3238 | ||
3239 | * expr.c (store_constructor): Clear union if constructor is empty. | |
3240 | ||
56e4a0eb JW |
3241 | Wed Oct 13 15:19:04 1999 Jim Wilson <wilson@cygnus.com> |
3242 | ||
3243 | * config/rs6000/sysv4.h (CC1_SPEC): Fix errors from Jan 19 change. | |
3244 | Add !endian checks. Change %{...} to %(...). | |
3245 | ||
7abd4e00 RH |
3246 | Wed Oct 13 13:30:34 1999 Richard Henderson <rth@cygnus.com> |
3247 | ||
3248 | * i386.md (*addsi3_cc): Renamed from addcsi3. | |
3249 | (*addsi3_carry): Renamed from addxsi3. | |
3250 | (*subsi3_cc): Renamed from subcsi3. | |
3251 | (*subsi3_carry): Renamed from subxsi3. | |
3252 | (*xorqi_cc_1): Renamed from xorcqi_1. | |
3253 | (xorqi_cc_ext_1): Renamed from xorcqi_ext_1. | |
3254 | * i386.c (ix86_expand_fp_compare): Update for xorqi_cc_ext_1. | |
3255 | ||
a13c82d4 RH |
3256 | Wed Oct 13 13:10:46 1999 Richard Henderson <rth@cygnus.com> |
3257 | ||
3258 | * Makefile.in (ggc-common.o): Depend on RTL_H not RTL_BASE_H. | |
3259 | (ggc-simple.o, ggc-page.o, ggc-none.o, ggc-callbacks.o): Likewise. | |
3260 | ||
9c07e479 BK |
3261 | 1999-10-13 Brendan Kehoe <brendan@cygnus.com> |
3262 | ||
3263 | * regmove.c (optimize_reg_copy_3): Make sure P is non-nil as we | |
3264 | climb up the chain of insns. | |
3265 | ||
e8f9b13a RH |
3266 | Wed Oct 13 10:20:58 1999 Richard Henderson <rth@cygnus.com> |
3267 | ||
3268 | * genrecog.c (write_subroutine): Careful for null trees. | |
3269 | (process_tree): Don't elide empty functions. | |
3270 | ||
5c371bd0 RH |
3271 | Wed Oct 13 10:07:54 1999 Richard Henderson <rth@cygnus.com> |
3272 | ||
3273 | * Makefile.in (genrtl.o): Depend on ggc.h. | |
3274 | * configure.in (valloc): Probe for it. | |
3275 | (with-gc): Use ggc-page if valloc present. | |
3276 | * ggc-common.c (ggc_mark_rtx_children): Use ggc_mark_if_gcable. | |
3277 | (ggc_mark_rtvec_children): New from corpse of ggc_mark_rtvec. | |
3278 | (ggc_alloc_string): Moved from ggc-page.c. | |
3279 | * ggc-none.c (ggc_alloc_obj): New. | |
3280 | (ggc_alloc_rtx, ggc_alloc_rtvec): Remove. | |
3281 | * ggc-page.c (sys/mman.h): Only include if HAVE_MMAP. | |
3282 | (struct globals): Likewise for dev_zero_fd. | |
3283 | (init_ggc): Likewise for it's initialization. | |
3284 | (ggc_allocated_p): Move careful dereference from ... | |
3285 | (ggc_lookup_page_table): ... here. Delete. | |
3286 | (lookup_page_table_entry): Don't use ggc_lookup_page_table. | |
3287 | (alloc_anon): Use valloc if no mmap. | |
3288 | (release_pages): Use free if using valloc. | |
3289 | (ggc_alloc_obj): Renamed from alloc_obj. | |
3290 | (ggc_set_mark): Renamed from mark_obj. | |
3291 | (ggc_mark_if_gcable): Renamed from ggc_mark_string_if_gcable. | |
3292 | (ggc_alloc_rtx, ggc_alloc_rtvec): Delete. | |
3293 | (ggc_alloc_tree, ggc_alloc_string, ggc_alloc): Delete. | |
3294 | (ggc_set_mark_rtx, ggc_set_mark_rtvec): Delete. | |
3295 | (ggc_set_mark_tree, ggc_mark_string, ggc_mark): Delete. | |
3296 | (ggc_collect): Use fp printing instead of our own rounding. | |
3297 | * ggc-simple.c (IS_MARKED, IGNORE_MARK): Delete. | |
3298 | (GGC_STRING_MAGIC, GGC_STRING_MAGIC_MARK): Delete. | |
3299 | (GGC_ANY_MAGIC, GGC_ANY_MAGIC_MARK): Delete. | |
3300 | (struct ggc_rtx, struct ggc_rtvec, struct ggc_tree): Delete. | |
3301 | (struct ggc_string, struct ggc_any): Delete. | |
3302 | (offsetof): Provide default definition. | |
3303 | (GGC_BALANCE, GGC_ALWAYS_COLLECT, GGC_ALWAYS_VERIFY): New. | |
3304 | (PTR_KEY): New. | |
3305 | (struct ggc_mem): New, from corpse of ggc_any. | |
3306 | (struct ggc_status): Delete. | |
3307 | (ggc_chain, ggc_allocated_strings, ggc_strings_used): Delete. | |
3308 | (n_rtxs_collected, n_vecs_collected, n_trees_collected): Delete. | |
3309 | (n_strings_collected, n_anys_collected): Delete. | |
3310 | (ggc_alloc_rtx, ggc_alloc_rtvec, ggc_alloc_tree): Delete. | |
3311 | (ggc_alloc_string, ggc_alloc): Delete. | |
3312 | (ggc_free_rtx, ggc_free_rtvec, ggc_free_tree): Delete. | |
3313 | (ggc_free_string, ggc_free_any): Delete. | |
3314 | (ggc_set_mark_rtx, ggc_set_mark_rtvec, ggc_set_mark_tree): Delete. | |
3315 | (ggc_compare_addresses, ggc_mark_string): Delete. | |
3316 | (ggc_mark_string_if_gcable, ggc_mark): Delete. | |
3317 | (search_data): Delete. | |
3318 | (struct globals): New. | |
3319 | (GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED): New. | |
3320 | (tree_insert, tree_lookup): New. | |
3321 | (ggc_alloc_obj, ggc_set_mark, ggc_mark_if_gcable): New. | |
3322 | (clear_marks, sweep_objs): New. | |
3323 | (ggc_collect): Gut. Use clear_marks, sweep_objs. | |
3324 | (init_ggc): Set allocated_last_gc. | |
3325 | (ggc_push_context): Gut. Use G.context. | |
3326 | (ggc_pop_context): Likewise. | |
3327 | (ggc_pop_context_1): New. | |
3328 | (debug_ggc_tree): New. | |
3329 | (debug_ggc_balance, tally_leaves): New. | |
3330 | * ggc.h (ggc_mark_rtvec, ggc_mark_string, ggc_mark): Remove decl. | |
3331 | (ggc_mark_string_if_gcable): Remove decl. | |
3332 | (ggc_mark_rtx, ggc_mark_tree): Use ggc_set_mark. | |
3333 | (ggc_mark_rtvec_children): New. | |
3334 | (ggc_mark_rtvec, ggc_mark_string, ggc_mark): New. | |
3335 | (ggc_mark_if_gcable): New decl. | |
3336 | (ggc_alloc_rtx, ggc_alloc_rtvec): Remove decl. | |
3337 | (ggc_alloc_tree, ggc_alloc): Likewise. | |
3338 | (ggc_set_mark_rtx, ggc_set_mark_rtvec, ggc_set_mark_tree): Likewise. | |
3339 | (ggc_alloc_obj): New decl. | |
3340 | (ggc_alloc_rtx, ggc_alloc_rtvec): New macros. | |
3341 | (ggc_alloc_tree, ggc_alloc): Likewise. | |
3342 | (ggc_set_mark): New decl. | |
3343 | * rtl.h (struct rtx_def): Remove gc_mark. | |
3344 | (struct rtvec_def): Likewise. | |
3345 | * tree.h (struct tree_common): Likewise. | |
3346 | ||
a5037588 CL |
3347 | Wed Oct 13 01:44:29 1999 Carol LePage <carolo@hal.com> |
3348 | ||
0e7e9155 | 3349 | * configure.in (sparc-hal-solaris2*): Fix xm_file, xm_defines, |
a5037588 CL |
3350 | float_format and thread_file definitions. |
3351 | * configure: Rebuilt. | |
3352 | ||
22acfb79 NM |
3353 |