]>
Commit | Line | Data |
---|---|---|
47163378 PB |
1 | 2000-02-29 Philip Blundell <pb@futuretv.com> |
2 | ||
3 | * config/arm/conix-elf.h: New file. | |
4 | * configure.in (arm*-*-conix*): New configuration. | |
5 | * configure: Regenerate. | |
6 | ||
1e7f092a JM |
7 | 2000-02-28 Jason Merrill <jason@casey.cygnus.com> |
8 | ||
9 | * dwarf2out.c (gen_block_die): Output abstract blocks even if they | |
10 | don't have TREE_ASM_WRITTEN set. | |
11 | ||
9df2c88c RK |
12 | Mon Feb 28 21:07:59 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
13 | ||
14 | * Eliminate DECL_FIELD_SIZE. | |
15 | * builtins.c (built_in_class_names, built_in_names): New variables. | |
16 | * c-decl.c (finish_struct): Set specified size in DECL_SIZE. | |
17 | * expr.c (expand_expr, case COMPONENT_REF): Get field size from | |
18 | DECL_SIZE, not DECL_FIELD_SIZE. | |
19 | * print-tree.c (print_node): Remove code that prints extra blank | |
20 | lines in some cases. | |
21 | Properly handle inline and builtin function cases. | |
22 | * stor-layout.c (layout_decl): Get specified size from DEC_SIZE. | |
23 | * tree.h (built_in_class_named, built_in_names): New declarations. | |
24 | (union tree_decl): Rename internal unions to u1 and u2 and change | |
25 | some of their components. | |
26 | Add new field built_in_class. | |
27 | (DECL_ALIGN, DECL_INCOMING_RTL, DECL_SAVED_INSNS, DECL_FRAME_SIZE): | |
28 | Reflect above changes. | |
29 | (DECL_FUNCTION_CODE, DECL_BUILT_IN_CLASS): Likewise. | |
30 | (DECL_SET_FUNCTION_CODE, DECL_FIELD_SIZE): Deleted. | |
31 | * objc/objc-act.c (objc_copy_list): Use DECL_SIZE, not DECL_FIELD_SIZE. | |
32 | (encode_field_decl): Likewise; also remove obsolete test for bitfield. | |
33 | ||
c27ba912 DM |
34 | 2000-02-28 Dmitri Makarov <dim@windriver.com> |
35 | ||
36 | * extend.texi: Document ARM's support for long/short calls. | |
37 | ||
38 | * invoke.texi: Document ARM's -mlong-calls command line switch. | |
39 | ||
40 | * config/arm/arm-protos.h (arm_is_longcall_p): Add prototype. | |
41 | (arm_encode_call_attribute): Add prototype. | |
42 | (arm_set_default_type_attribute): Add prototype. | |
43 | (arm_strip_name_encoding): Add prototype. | |
44 | ||
45 | * config/arm/arm.c (arm_init_cumulative_args): replace | |
46 | initialisation og 'long_calls' field with initialisation of | |
47 | 'call_cookie' field. | |
48 | (enum arm_pragma_enum): New enum. | |
49 | (arm_pragma_long_calls): New static variable. | |
50 | (arm_process_pragma): Also process "#pragma long_calls_off". | |
51 | (arm_valid_type_attribute_p): Accept short_call attribute. | |
52 | (arm_comp_type_attributes): Check long/short call attributes. | |
53 | (arm_encode_call_attribute): New function: Encode long_call | |
54 | or short_call attribute in function name. | |
55 | (arm_set_default_type_attributes): New function: Assign | |
56 | default attributes to newly defined type. | |
57 | (current_file_function_operand): New function: Return true if | |
58 | the symbol is a function which has already been compiled. | |
59 | (arm_is_longcall_p): New function: Return true if the | |
60 | indicated function should be called via a long call. | |
61 | (arm_get_strip_length): New function. Returns number of | |
62 | prefix characters to be stripped from a function's name. | |
63 | (arm_strip_name_encoding): New function. Strip prefix characters | |
64 | from a function's name. | |
65 | ||
66 | * config/arm/arm.h (CUMULATIVE_ARGS): Replace 'long_call' field | |
67 | with 'call_cookie'. | |
68 | (SHORT_CALL_FAG_CHAR): Define. | |
69 | (LONG_CALL_FAG_CHAR): Define. | |
70 | (ENCODED_SHORT_CALL_ATTR_P): Define. | |
71 | (ENCODED_LONG_CALL_ATTR_P): Define. | |
72 | (ARM_NAME_ENCODING_LENGTHS): Define. | |
73 | (STRIP_NAME_ENCODING): Define. | |
74 | (ASM_OUTPUT_LABELREF): Define, and use to strip name encoding. | |
75 | (ARM_ENCODE_CALL_TYPE): Define. | |
76 | (ENCODE_SECTION): Invoke ARM_ENCODE_CALL_TYPE. | |
77 | (ARM_DECLARE_FUNCTION_SIZE): Define. | |
78 | (SET_DEFAULT_TYPE_ATTRIBUTES): Define. | |
79 | ||
80 | * config/arm/arm.md (call): Call arm_is_longcall_p to decide | |
81 | if a long call is needed. | |
82 | (call_value): Ditto. | |
83 | (call_symbol): Ditto. | |
84 | ||
85 | * config/arm/elf.h (ASM_DECLARE_FUNCTION_SIZE): Add invocation of | |
86 | ARM_DECLARE_FUNCTION_SIZE. | |
87 | ||
88 | * config/arm/pe.h (ARM_PE_FLAG_CHAR): Define. | |
89 | (SUBTARGET_NAME_ENCODING_LENGTHS): Define. | |
90 | (ARM_STRIP_NAME_ENCODING): Undefine. | |
91 | (STRIP_NAME_ENCODING): Undefine. | |
92 | (ASM_OUTPUT_LABELREF): Use arm_strip_name_encoding. | |
93 | (ASM_DECLARE_FUNCTION_NAME): Ditto. | |
94 | (ASM_OUTPUT_COMMON): Ditto. | |
95 | (ASM_DECLARE_OBJECT_NAME): Ditto. | |
96 | ||
97 | * config/arm/pe.c (arm_dllexport_name_p): Check for | |
98 | ARM_PE_FLAG_CHAR. | |
99 | (arm_dllimport_name_p): Ditto. | |
100 | (arm_mark_dllexport): Use ARM_PE_FLAG_CHAR. | |
101 | (arm_mark_dllimport): Ditto. | |
102 | ||
86f49b02 R |
103 | Mon Feb 28 22:11:12 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
104 | ||
105 | * sh.h (DWARF_LINE_MIN_INSTR_LENGTH): Define. | |
106 | ||
26a13c2b MM |
107 | 2000-02-28 Mark Mitchell <mark@codesourcery.com> |
108 | ||
109 | * xcoffout.c (xcoffout_begin_function): Fix typo in previous change. | |
110 | ||
0209c340 ZW |
111 | 2000-02-28 Zack Weinberg <zack@wolery.cumb.org> |
112 | ||
113 | * tm.texi: Document new target switch, NO_BUILTIN_WCHAR_TYPE. | |
114 | * cppinit.c (builtin_array): Define __WCHAR_TYPE__ only if | |
115 | NO_BUILTIN_WCHAR_TYPE is not defined. | |
116 | (CPP_WCHAR_TYPE): Delete. | |
117 | * cccp.c (main): Don't change wchar_type if cplusplus. | |
118 | (special_symbol, initialize_builtins): Honor NO_BUILTIN_WCHAR_TYPE. | |
119 | ||
7cb4ce12 NC |
120 | 2000-02-28 Nick Clifton <nickc@cygnus.com> |
121 | ||
122 | * config/arm/arm-wince-pe.h (SIZE_TYPE): Define to "unsigned long". | |
123 | ||
90b37266 CM |
124 | Mon Feb 28 14:21:15 2000 Catherine Moore <clm@cygnus.com> |
125 | ||
126 | * config/pa/som.h (MAKE_DECL_ONE_ONLY): Define. | |
127 | (ASM_WEAKEN_LABEL): Define. | |
128 | ||
98c3b850 JH |
129 | Mon Feb 28 13:07:19 MET 2000 Jan Hubicka <jh@suse.cz> |
130 | ||
131 | * expr.c (store_constructor): Do not emit USE. | |
132 | * rtl.h (stupid_life_analysis): Remove. | |
133 | ||
e4884e95 RK |
134 | Mon Feb 28 07:03:27 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
135 | ||
b0e3a658 RK |
136 | * function.c (number_blocks): Reset next_block_index based on |
137 | what debugging format is used, not what is defined. | |
138 | ||
f4e72d6e RK |
139 | * lcm.c: Minor reformatting throughout. |
140 | (reg_dies, reg_becomes_live): Properly handle multiple hard regs. | |
141 | ||
97726216 RK |
142 | * toplev.c (rest_of_compilation): Account for time in |
143 | optimize_mode_switching. | |
144 | ||
e4884e95 RK |
145 | * jump.c (jump_optimize_1): Don't call delete_barrier_successors |
146 | if only marking labels. | |
147 | ||
98c3b850 | 148 | Mon Feb 28 12:53:57 MET 2000 Jan Hubicka <jh@suse.cz> |
4e217aed JH |
149 | |
150 | * calls.c (expand_call): Attempt to combine stack adjustments with | |
151 | pending stack adjustments. | |
152 | ||
035a6890 R |
153 | Mon Feb 28 11:34:43 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
154 | ||
155 | * loop.c (reg_in_basic_block_p): Don't abort when falling through | |
156 | to the end of the function. | |
157 | ||
18c038b9 MM |
158 | 2000-02-27 Mark Mitchell <mark@codesourcery.com> |
159 | ||
160 | * emit-rtl.c (remove_unncessary_notes): Remove notes for empty | |
161 | blocks. | |
162 | * final.c (next_block_index): Remove. | |
163 | (max_block_depth): Likewise. | |
164 | (pending_blocks): Likewise. | |
165 | (init_final): Don't initialize them. | |
166 | (final_start_function): Don't set next_block_index. Set up | |
167 | BLOCK_NUMBER. | |
168 | (final_scan_insn): Use BLOCK_NUMBER, not next_block_index. | |
169 | * function.h (number_blocks): New function. | |
170 | * function.c (get_block_vector): New function. | |
171 | (identify_blocks): Use it. | |
172 | (reorder_blocks): Set NOTE_BLOCK. | |
173 | (number_blocks): New function. | |
174 | * tree.def (BLOCK): Add documentation for TREE_ASM_WRITTEN flag. | |
175 | * tree.h (BLOCK_NUMBER): New macro. | |
176 | (tree_block): Add block_num field. | |
177 | * dbxout.c (next_block_number): Remove. | |
178 | (dbxout_init): Don't set it. | |
179 | (dbxout_block): Only output blocks that have TREE_ASM_WRITTEN | |
180 | set. Use BLOCK_NUMBER, rather than next_block_num, to determine | |
181 | block numbers. | |
182 | * toplev.c (rest_of_compilation): Always call | |
183 | find_loop_tree_blocks. Fix indentation. | |
184 | * dwarf2out.c (next_block_number): Remove. | |
185 | (gen_lexical_block_die): Use BLOCK_NUMBER, not next_block_number, | |
186 | to determine block numbers. | |
187 | (gen_inlined_subroutine_die): Likewise. | |
188 | (gen_block_die): Only output blocks that have TREE_ASM_WRITTEN set. | |
189 | (decls_for_scope): Don't increment next_block_number. | |
190 | * dwarfout.c (next_block_number): Remove. | |
191 | (output_lexical_block_die): Use BLOCK_NUMBER, not next_block_number, | |
192 | to determine block numbers. | |
193 | (output_inlined_subroutine_die): Likewise. | |
194 | (output_block): Only output blocks that have TREE_ASM_WRITTEN set. | |
195 | (output_decls_for_scope): Don't increment next_block_number. | |
196 | * sdbout.c (next_block_number): Remove. | |
197 | (sdbout_block): Use BLOCK_NUMBER. | |
198 | (sdbout_begin_block): Simplify. | |
199 | * xcoffout.c (next_block_number): Remove. | |
200 | (xcoffout_block): Use BLOCK_NUMBER, not next_block_number. | |
201 | (xcoffout_begin_block): Don't set next_block_number. | |
202 | (xcoffout_begin_function): Likewise. Use BLOCK_NUMBER, not | |
203 | next_block_number. | |
204 | ||
fed3cef0 RK |
205 | Sun Feb 27 16:40:33 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
206 | ||
207 | * builtins.c (c_strlen): Use size_diffop and return ssizetype value. | |
208 | (expand_builtin_strcpy): Pass correct type to size_binop. | |
209 | (expand_builtin_strcmp): Likewise. | |
210 | Clean up conditional structure. | |
211 | * c-decl.c (init_decl_processing): Don't call set_sizetype twice. | |
212 | (complete_array_type): Don't use size_binop for MAXINDEX. | |
213 | * c-typeck.c (c_sizeof): Use size_one_node and TYPE_SIZE_UNIT. | |
214 | (c_sizeof_nowarn, c_size_in_bytes): Likewise. | |
215 | (c_alignof): Use size_one_node. | |
216 | (build_unary_op): Pass arg of proper type to size_binop. | |
217 | (really_start_incremental_init, push_init_level): Use sizetype for | |
218 | constructor{,_bit,_unfilled}_index. | |
219 | (pop_init_label, output_init_element): Likewise. | |
220 | (output_pending_init_elements, process_init_element): Likewise. | |
221 | * calls.c (compute_argument_block_size): Field VAR is ssizetype. | |
222 | * expr.c (store_expr): Use size_int. | |
223 | (store_constructor): Use proper types for size_binop args. | |
224 | (get_inner_reference, expand_expr, case ARRAY_REF): Likewise. | |
225 | (expand_expr_unaligned): Likewise. | |
226 | (string_contant): Return object of sizetype. | |
227 | * expr.h (SUB_PARM_SIZE): Call size_diffop and pass proper types. | |
228 | (ARGS_SIZE_RTX): Call ARGS_SIZE_TREE. | |
229 | (ARGS_SIZE_TREE): Pass proper types to size_binop. | |
230 | * fold-const.c (int_const_binop): Refine when size_int is called. | |
231 | (fold_convert): Likewise. | |
232 | (size_int_wide): Rework to take KIND as arg, only take low order | |
233 | bits, handle new sizetype_tab datatype, and chain entries in | |
234 | size_table. | |
235 | (size_int_type_wide): New function. | |
236 | (size_binop): Validate types of arguments. | |
237 | (ssize_binop): Deleted. | |
238 | (size_diffop): New function. | |
239 | (extract_muldiv): Only fold division into multiplication for sizetypes. | |
240 | * function.c (assign_parms): Use size_diffop and make sure | |
241 | VAR field is of ssizetype; also pass proper type to size_binop. | |
242 | (locate_and_pad_parm, pad_to_arg_alignment): Likewise. | |
243 | (round_down): Deleted from here. | |
244 | * store-layout.c (sizetype_tab): Now an array. | |
245 | (sizetype_set, early_root_list): New variables. | |
246 | (variable_size): Use size_one_node. | |
247 | (round_up): Pass proper type to size_binop. | |
248 | (round_down): Moved to here and corrected as above. | |
249 | (layout_record): Pass proper arg types to size_binop. | |
250 | (layout_type): Likewise. | |
251 | If sizetype_set is zero, record the type just laid out. | |
252 | (make_unsigned_type): Don't call set_sizetype; | |
253 | (make_signed_type): Likewise; also, call fixup_signed_type. | |
254 | (initialize_sizetypes): New function. | |
255 | (set_sizetype): Make copy of types, set TYPE_IS_SIZETYPE, and | |
256 | set name of bitsizetype to "bit_size_type". | |
257 | Fix up type of sizes of all types made before call. | |
258 | * tm.texi (ROUND_TYPE_SIZE_UNIT): New macro. | |
259 | * tree.c (fix_sizetype): Deleted. | |
260 | (build_common_tree_nodes): Call initialize_sizetypes. | |
261 | (build_common_tree_nodes_2): Don't call fix_sizetype. | |
262 | * tree.h (TYPE_IS_SIZETYPE): New macro. | |
263 | (initialize_sizetype): New declaration. | |
264 | (enum size_type_kind): New type. | |
265 | (struct sizetype_tab): Deleted. | |
266 | (sizetype_tab): Now array; adjust sizetype macros. | |
267 | (size_diffop, size_int_type_wide): New functions. | |
268 | (size_int_wide): Change number of args and type; access macros changed. | |
269 | (ssize_int, sbitsize_int): New macros. | |
270 | * config/i960/i960.h (ROUND_TYPE_SIZE): Use size_int. | |
271 | (ROUND_TYPE_SIZE_UNIT): New macro. | |
272 | ||
69f21756 ZW |
273 | 2000-02-27 Zack Weinberg <zack@wolery.cumb.org> |
274 | ||
275 | * c-lex.c (putback_buffer): Make 'buffer' an unsigned char *. | |
276 | ||
b8d12d79 RK |
277 | Sun Feb 27 07:44:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
278 | ||
6e38f244 RK |
279 | * gcov-io.h (__fetch_long, __store_long, __read_long, __write_long): |
280 | Mark as possibly unused. | |
281 | ||
4e37e57d RK |
282 | * cse.c (cse_insn): Delete dead code involving tablejump. |
283 | Pass CODE_LABEL, not LABEL_REF to gen_jump and reset INSN_CODE. | |
284 | ||
b8d12d79 RK |
285 | * Makefile.in (libcpp.a): Start by deleting it. |
286 | ||
0172e2bc AO |
287 | 2000-02-27 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
288 | ||
656ac110 AO |
289 | * cpplib.h (enum file_change_code): Added rename_file. |
290 | * cpplib.c (do_line): If a filename is given, set file_change to | |
291 | rename_file. | |
292 | (output_line_command): If file_change is rename_file, always | |
293 | output a # directive with the file name. | |
294 | ||
0172e2bc AO |
295 | * cpplib.c (do_pragma): Accept #pragma without consecutive token. |
296 | ||
a8f8d1cc MM |
297 | 2000-02-26 Mark Mitchell <mark@codesourcery.com> |
298 | ||
299 | * integrate.c (copy_decl_for_inlining): Preserve TREE_ADDRESSABLE | |
300 | when copying a PARM_DECL or RESULT_DECL. | |
301 | ||
ad3ffa44 KG |
302 | 2000-02-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
303 | ||
304 | * fix-header.c (recognized_function): Also fix prototypes for | |
305 | functions taking "void". | |
306 | ||
60ef417d GK |
307 | 2000-02-26 Geoff Keating <geoffk@cygnus.com> |
308 | ||
309 | * reload1.c (do_output_reload): Check reg_reloaded_valid before | |
310 | looking at reg_reloaded_contents. | |
311 | ||
f95e46b9 ZW |
312 | 2000-02-26 Zack Weinberg <zack@wolery.cumb.org> |
313 | ||
314 | * Makefile.in (STMP_FIXINC): New toggle. | |
315 | (LIBGCC2_DEPS): Delete all references. | |
316 | (stmp-headers): Delete target. All references either deleted | |
317 | or changed to stmp-int-headers. | |
318 | (all.cross): Don't depend on stmp-headers or STMP_FIXPROTO. | |
319 | (LIBCPP_OBJS): Take out cppalloc.o. | |
320 | (cppalloc.o): Delete target. | |
321 | (stmp-int-hdrs): Depend on $(STMP_FIXINC). | |
322 | (gen-protos, fix-header): Link with libiberty.a. | |
323 | * build-make: Don't change FIXINCLUDES. Override STMP_FIXINC | |
324 | to empty. | |
325 | ||
326 | * configure.in: Remove refs to strerror. | |
327 | * acconfig.h: Take out NEED_DECLARATION_STRERROR. | |
328 | * system.h: Take out strerror stanza. | |
329 | ||
330 | * cpperror.c (my_strerror): Delete function. | |
331 | (cpp_error_from_errno, cpp_notice_from_errno): Use xstrerror. | |
332 | * cppmain.c (main): Call xmalloc_set_program_name first thing. | |
333 | * cppalloc.c: Delete file. | |
334 | * gen-protos.c: Don't provide xrealloc. | |
335 | ||
336 | * fixinc/fixincl.c, fixinc/fixlib.c, fixinc/procopen.c: Use | |
337 | xstrerror throughout. | |
338 | ||
42a2c30e BK |
339 | 2000-02-26 Bruce Korb <bkorb@gnu.org> |
340 | ||
b8d12d79 | 341 | * fixinc/inclhack.def (undefine_null): the bypass pattern needs to |
42a2c30e | 342 | match for DOS headers, too. |
b8d12d79 | 343 | * fixinc/inclhack.sh,fixincl.x: Regenerate. |
42a2c30e | 344 | |
42235f85 GK |
345 | 2000-02-26 Geoff Keating <geoffk@cygnus.com> |
346 | ||
347 | * config/elfos.h (ASM_OUTPUT_LABELREF): Don't define. The default | |
348 | is right for most ELF targets. | |
349 | * config/ns32k/ns32k.h (ASM_OUTPUT_LABELREF): Don't define. | |
350 | Let the default file use %U properly. | |
351 | * config/sh/elf.h (ASM_OUTPUT_LABELREF): Don't define. Use the | |
352 | default. | |
353 | ||
354 | * config/fp-bit.c (pack_d): Properly handle rounding of denormal | |
355 | numbers. | |
356 | ||
2eecbd3f RK |
357 | Sat Feb 26 09:39:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
358 | ||
4dbba876 RK |
359 | * toplev.c (documented_lang_options): Correct spelling error. |
360 | (decode_d_option, decode_f_option, main): Likewise. | |
361 | ||
362 | * toplev.c (print_time): Avoid SIGFPE when all_time is zero. | |
363 | ||
2eecbd3f RK |
364 | * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Use .set at |
365 | to tell assembler it is permitted to expand large constants. | |
366 | ||
a7db8bbb MK |
367 | 2000-02-25 Mumit Khan <khan@xraylith.wisc.edu> |
368 | ||
369 | * protoize.c: (AUX_INFO_SUFFIX): New macro. | |
370 | (aux_info_suffix): Use. | |
371 | (SAVE_SUFFIX): New macro. | |
372 | (save_suffix): Use. | |
373 | (munge_compile_parms): Fix typo in NUL. DJGPP supports /dev/null. | |
374 | (gen_aux_info_file): Use aux_info_suffix instead of ".X". | |
375 | (edit_file): Handle 8.3 restriction for DOS/DJGPP filenames. | |
376 | ||
377 | * invoke.texi (Running Protoize): Update documentation. | |
378 | ||
0268c501 ME |
379 | 2000-02-25 Mark Elbrecht <snowball3@bigfoot.com> |
380 | ||
381 | * i386/djgpp.h (CPP_PREDEFINES): Remove Unix defines. | |
382 | ||
63be01fb JW |
383 | 2000-02-25 John Wehle (john@feith.com) |
384 | ||
385 | * rtlanal.c (find_last_value): Allow NULL_RTX for valid_to. | |
386 | ||
44a76fc8 AG |
387 | 2000-02-25 Anthony Green <green@cygnus.com> |
388 | ||
389 | * toplev.c (rest_of_compilation): Rebuild jump labels if | |
390 | combine_instructions has created a new direct jump. | |
391 | * combine.c (try_combine): Add new_direct_jump_p argument. Set it | |
392 | when appropriate. | |
393 | (combine_instructions): Call try_combine with new argument. | |
394 | Return non-null value when new direct jump instruction is created. | |
395 | * rtl.h: combine_instructions returns an int. | |
396 | ||
602c4c0d JL |
397 | Fri Feb 25 19:49:08 2000 Jeffrey A Law (law@cygnus.com) |
398 | ||
399 | * cse.c (cse_insn): Replace the PATTERN of the insn with an new | |
400 | jump when changing a computed jump into a jump to a known | |
401 | target. | |
402 | ||
4a92092a GS |
403 | Fri Feb 25 19:22:44 2000 Graham Stott <grahams@rcp.co.uk> |
404 | ||
0cb5d81c GS |
405 | * resource.c (mark_referenced_resources): Changed use SET_DEST (...) |
406 | to XEXP (..., 0) on RTL nodes which are not SET or CLOBBER. | |
407 | ||
4a92092a GS |
408 | * i386.md (define_expand "clrstrsi"): Fix typo. |
409 | ||
3924a578 RP |
410 | Fri Feb 25 18:49:39 2000 "K. Richard Pixley" <rich@microunity.com> |
411 | ||
412 | * rtl.texi: Fix typo. | |
413 | ||
0ad913af R |
414 | Fri Feb 25 20:02:35 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
415 | ||
416 | * sh.c (calc_live_regs): Multiply value assigned to *COUNT_PTR by | |
417 | UNITS_PER_WORD. Change caller initial_elimination_offset. | |
418 | (rounded_frame_size): Take into account that argument pushed has | |
419 | changed. Fix TARGET_ALIGN_DOUBLE problem. | |
420 | ||
0e2eaba4 GK |
421 | 2000-02-25 Geoff Keating <geoffk@cygnus.com> |
422 | ||
423 | * haifa-sched.c (schedule_block): Explain the real reason | |
424 | we delete REG_SAVE_NOTEs on the first insn of a block. | |
425 | Don't delete REG_SAVE_NOTES for NOTE_INSN_SETJMP. | |
426 | ||
68723fae MM |
427 | 2000-02-24 Mark Mitchell <mark@codesourcery.com> |
428 | ||
429 | * input.h (push_srcloc): New function. | |
430 | (pop_srcloc): Likewise. | |
431 | * toplev.c (push_srcloc): Define it. | |
432 | (pop_srcloc): Likewise. | |
433 | ||
c8082519 RH |
434 | 2000-02-24 Richard Henderson <rth@cygnus.com> |
435 | ||
436 | * flow.c (life_analysis): When collecting reg info, clear | |
437 | regs_ever_live. | |
438 | ||
e5f8d4c0 R |
439 | Thu Feb 24 22:06:52 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
440 | ||
441 | Fix bug exposed by reload.c no longer rounding the frame | |
442 | size to BIGGEST_ALIGNMENT: | |
443 | * sh.c (rounded_frame_size): New function. | |
444 | (sh_expand_prologue, sh_expand_epilogue): Use it. | |
445 | (initial_elimination_offset): Likewise. | |
446 | ||
afbc2905 R |
447 | Thu Feb 24 20:04:11 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
448 | ||
449 | Fix breakage from 6th Feb thread_prologue_and_epilogue_insns change: | |
450 | * sh-protos.h (sh_need_epilogue): Declare. | |
451 | * sh.c (sh_need_epilogue_known): New static variable. | |
452 | (sh_need_epilogue): New function. | |
453 | (function_epilogue): Clear need_epilogue_known. | |
454 | * sh.md (return): Split into expander / insn pattern. | |
455 | Make the expander conditional on ! sh_need_epilogue (). | |
456 | ||
36c265b1 NS |
457 | 2000-02-24 Nathan Sidwell <nathan@codesourcery.com> |
458 | ||
459 | * machmode.h (get_mode_alignment): Declare. | |
460 | (GET_MODE_ALIGNMENT): Call it. | |
461 | * stor-layout.c (get_mode_alignment): New function. Make | |
462 | sure alignment is always power of 2. | |
463 | ||
f32d49a8 ZW |
464 | 2000-02-23 Zack Weinberg <zack@wolery.cumb.org> |
465 | ||
466 | * i386.h: Remove useless definition of "I386" and misleading | |
467 | comment above it. | |
468 | ||
23dfa477 ZW |
469 | 2000-02-23 Zack Weinberg <zack@wolery.cumb.org> |
470 | ||
471 | * tree.h (TREE_SET_PERMANENT): New macro. Document conditions | |
472 | under which TREE_PERMANENT will be set. | |
473 | * tree.c (make_node, copy_node, make_tree_vec, tree_cons, | |
474 | build1): Use TREE_SET_PERMANENT. | |
475 | * print-tree.c (print_node): Don't report value of | |
476 | TREE_PERMANENT if ggc_p is true. | |
477 | ||
478 | * c-common.c (c_get_alias_set): Don't use TREE_PERMANENT to | |
479 | decide whether to give a type a new alias set. | |
480 | * objc/objc-act.c (build_objc_string_object): Never copy the string. | |
481 | * tree.c (make_node): Set DECL_IN_SYSTEM_HEADER irrespective | |
482 | of value of 'obstack'. | |
483 | ||
484 | ||
41387ffd MH |
485 | 2000-02-24 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
486 | ||
487 | * config/c4x/c4x.c (c4x_process_after_reload): Split all insns. | |
488 | ||
525bc95d AO |
489 | 2000-02-23 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
490 | ||
491 | * cpplib.h (enum cpp_token): Added CPP_WCHAR and CPP_WSTRING. | |
492 | * cpplib.c (cpp_get_token): Produce them. | |
493 | * cppexp.c (cpp_lex): Handle them. | |
494 | ||
bd7fc26f NC |
495 | 2000-02-23 Nick Clifton <nickc@cygnus.com> |
496 | ||
497 | * config/arm/arm.c (arm_comp_type_attributes): Simply and | |
498 | comment tests on type attributes. | |
499 | ||
2148624a R |
500 | Wed Feb 23 16:42:21 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
501 | ||
9c236404 | 502 | * final.c (shorten_branches): Make value passed to LOOP_ALIGN |
2148624a | 503 | conform to documentation. |
9c236404 | 504 | * sh.h (LOOP_ALIGN): If aligning loops, call sh_loop_align |
2148624a | 505 | to check for special cases. |
8156feba JR |
506 | * sh-protos.h (sh_loop_align): Declare. |
507 | * sh.c (sh_loop_align): Define. | |
2148624a | 508 | |
69972997 AH |
509 | 2000-02-22 Andrew Haley <aph@cygnus.com> |
510 | ||
511 | * config/mips/mips.h (GAS_ASM_SPEC): Pass -mgp32/-mgp64 to gas. | |
512 | (SIZE_TYPE): Is 32 bits when using -mgp32. | |
513 | (PTRDIFF_TYPE): Ditto. | |
514 | ||
4eda9c65 RK |
515 | Wed Feb 23 07:26:27 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
516 | ||
517 | * diagnostic.c (init_output_buffer): Handle case of null PREFIX. | |
518 | ||
6fc605d8 ZW |
519 | 2000-02-23 Zack Weinberg <zack@wolery.cumb.org> |
520 | ||
521 | * config/i386/i386.h: If IN_TARGET_LIBS is defined, make | |
522 | BIGGEST_FIELD_ALIGNMENT a constant. | |
523 | ||
f19f17e0 JM |
524 | 2000-02-21 Jason Merrill <jason@casey.cygnus.com> |
525 | ||
526 | * dwarf2out.c (output_line_info): Put the marker for the end of | |
527 | the line number info at the actual end. | |
528 | (gen_struct_or_union_type_die): Use decl_function_context | |
529 | to check for local classes. | |
530 | * dwarfout.c (output_type): Likewise. | |
531 | ||
24e971f6 JL |
532 | Tue Feb 22 01:38:57 2000 Jeffrey A Law (law@cygnus.com) |
533 | ||
534 | * pa.h (FUNCTION_ARG_PASS_BY_REFERENCE): Handle pass-by-reference | |
535 | for arguments with a mode, but no type. | |
536 | (FUNCTION_ARG_CALLEE_COPIES): Similarly. | |
537 | * t-pa (LIB2FUNCS_EXTRA): Add quadlib.asm. | |
538 | * pa/long_double.h: New file. | |
539 | * configure.in (hpux10, hpux11 configurations): hpux10 and hpux11 | |
540 | both have 128bit wide long doubles. | |
541 | * configure: Rebuilt. | |
542 | ||
47ee9bcb KG |
543 | 2000-02-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
544 | ||
545 | * defaults.h (ASM_OUTPUT_ASCII): Constify a char*. | |
546 | ||
547 | * flow.c (get_common_dest, chain_reorder_blocks, make_reorder_chain, | |
548 | fixup_reorder_chain, skip_insns_between_block): Add static prototypes. | |
549 | (life_analysis): Wrap variable `i' with macro ELIMINABLE_REGS. | |
550 | ||
551 | * haifa-sched.c (rank_for_schedule): Don't cast away const-ness. | |
552 | ||
553 | * integrate.c (compare_blocks, find_block): Likewise. | |
554 | ||
555 | * rtl.c (fatal_with_file_and_line): Add ATTRIBUTE_PRINTF_2. | |
556 | ||
557 | * rtl.h (set_file_and_line_for_stmt): Constify a char*. | |
558 | ||
559 | * stmt.c (stmt_status, set_file_and_line_for_stmt, | |
560 | expand_asm_operands): Likewise. | |
561 | ||
24c3bf68 JE |
562 | Mon Feb 21 17:06:27 2000 Jason Eckhardt <jle@cygnus.com> |
563 | ||
564 | * predict.c (estimate_probability): Added the pointer heuristic to | |
565 | the collection of static branch predictors. | |
566 | ||
1e387156 CM |
567 | 2000-02-21 Catherine Moore <clm@cygnus.com> |
568 | ||
569 | * config/mips/mips.h (ASM_SPEC): Add -mfix700. | |
570 | * invoke.texi (-mfix7000): Document. | |
571 | ||
abcabbbf GDR |
572 | 2000-02-21 Gabriel Dos Reis <gdr@codesourcery.com> |
573 | ||
574 | * diagnostic.c (init_output_buffer): Make it possible to output at | |
575 | least 32 characters if we're given a too long prefix. | |
576 | ||
99740276 MM |
577 | 2000-02-20 Mark Mitchell <mark@codesourcery.com> |
578 | ||
579 | * varasm.c (initializer_constant_valid_p): Call | |
580 | lang_expand_constant to simplify the constant. | |
581 | ||
2260b683 BK |
582 | 2000-02-20 Bruce Korb <bkorb@gnu.org> |
583 | ||
584 | * fixinc/inclhack.def(stdio_va_list): | |
585 | typedef needs to be disabled. | |
586 | * fixinc/inclhack.sh: regen | |
587 | * fixinc/fixincl.x: regen | |
588 | ||
f76ca83c GK |
589 | 2000-02-20 Geoff Keating <geoffk@cygnus.com> |
590 | ||
591 | * print-rtl.c (print_rtx): Don't print addresses when | |
592 | flag_dump_unnumbered. | |
593 | ||
fbd039b2 KG |
594 | 2000-02-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
595 | ||
596 | * sparc.c (sparc_output_scratch_registers): Mark parameter with | |
597 | ATTRIBUTE_UNUSED. | |
598 | (sparc_va_arg, sparc_flat_output_function_prologue, | |
599 | sparc_flat_output_function_epilogue): Cast value to unsigned in | |
600 | comparison. | |
601 | (sparc_emit_float_lib_cmp): Remove unused variable `cmp'. | |
602 | ||
603 | * sparc.md: Add default case in switch. | |
604 | ||
83b091c7 RH |
605 | 2000-02-19 Richard Henderson <rth@cygnus.com> |
606 | ||
607 | * c-typeck.c (add_pending_init): Don't abort for multiple | |
608 | fields at the same offset. | |
609 | (pending_init_member): Test the correct member. | |
610 | ||
a0ec56b7 HB |
611 | 2000-02-19 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
612 | ||
613 | * except.c (start_dynamic_handler) : Use TYPE_MODE (integer_type_node) | |
614 | instead of SImode. | |
615 | (start_catch_handler) : Same. | |
616 | ||
db01dcfa BL |
617 | 2000-02-19 Brad Lucier (lucier@math.purdue.edu) |
618 | ||
619 | * Makefile.in: Have flow.o depend on $(EXPR_H) | |
620 | ||
06ceef4e RK |
621 | Sat Feb 19 18:43:13 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
622 | ||
623 | * c-common.c (decl_attributes): Set DECL_SIZE_UNIT. | |
624 | * c-decl.c (duplicate_decls, finish_enum): Likewise. | |
625 | (finish_decl): Remove -Wlarger-than code from here. | |
626 | * flags.h (id_clash_len): Now int. | |
627 | (larger_than_size): Now HOST_WIDE_INT. | |
628 | * fold-const.c (size_int_wide): No more HIGH parm; NUMBER is signed. | |
629 | Clean up checking to see if in table. | |
630 | (make_bit_field_ref): Remove extra parm to bitsize_int. | |
631 | * ggc-common.c (ggc_mark_tree_children): Mark DECL_SIZE_UNIT. | |
632 | * print-tree.c (print_node): Print DECL_SIZE_UNIT and TYPE_SIZE_UNIT. | |
633 | * stmt.c (expand_decl): Use DECL_SIZE_UNIT for stack checking size | |
634 | and for computing size of decl. | |
635 | * stor-layout.c (layout_decl): Set DECL_SIZE_UNIT. | |
636 | Move -Wlarger-than code to here. | |
637 | (layout_record): Remove extra arg to bitsize_int. | |
638 | Set TYPE_BINFO_SIZE_UNIT. | |
639 | (layout_union): Remove extra arg to bitsize_int. | |
640 | Use proper type for size of QUAL_UNION. | |
641 | (layout_type): Remove extra arg to bitsize_int. | |
642 | * toplev.c (id_clash_len): Now int. | |
643 | (larger_than_size): Now HOST_WIDE_INT. | |
644 | (decode_W_option): Clean up id-clash and larger-than- cases. | |
645 | * tree.c (get_identifier, maybe_get_identifier): Remove unneeded casts. | |
646 | (expr_align, case FUNCTION_DECL): DECL_ALIGN is not defined. | |
647 | * tree.h (BINFO_SIZE_UNIT, TYPE_BINFO_SIZE_UNIT, DECL_SIZE_UNIT): New. | |
648 | (struct tree_decl): New field size_unit. | |
649 | (size_int_wide): No HIGH operand; NUMBER is now signed. | |
650 | (size_int_2): Deleted. | |
651 | (size_int, bitsize_int): Don't use it and rework args. | |
652 | * varasm.c (assemble_variable, output_constructor): Use DECL_SIZE_UNIT. | |
06ceef4e | 653 | |
c9604920 JL |
654 | Fri Feb 18 20:01:58 2000 Jeffrey A Law (law@cygnus.com) |
655 | ||
656 | * pa/quadlib.asm (_U_QFgt, _U_Qfge): Fix flags for _U_Qfcmp call. | |
657 | ||
488d3985 GK |
658 | 2000-02-18 Geoff Keating <geoffk@cygnus.com> |
659 | ||
660 | * invoke.texi (Warning Options): Add an explanation of why | |
661 | you might want the -Wfloat-equal flag. | |
662 | ||
c8d8ed65 RK |
663 | Fri Feb 18 20:08:57 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
664 | ||
665 | * bitmap.c (bitmap_operation): Avoid using -1 for index since unsigned. | |
666 | * cppinit.c (new_pending_define): Add cast to avoid warning. | |
667 | * expmed.c (extract_bit_field): Likewise. | |
668 | * flow.c (enum reorder_skip_type): New type. | |
669 | (skip_insns_between_blcok): New it. | |
670 | Rework to avoid warning about possibly undefined variable. | |
671 | * function.c (assign_parms): Make thisparm_boundary unsigned. | |
672 | * genrecog.c (write_switch): Cast XWINT result to int. | |
673 | * lcm.c: Many static fcns and vars now #ifdef OPTIMIZE_MODE_SWITCHING. | |
674 | * mips-tfile.c (init_file): Make two versions of FDR intializer: | |
675 | one for MIPS and one for Alpha. | |
676 | (get_tag, copy_object): Add casts to avoid warnings. | |
677 | * optabs.c (init_one_libfunc): Cast NAME to (char *). | |
678 | * reload.c (find_reloads): Make TYPE enum reload_type. | |
679 | * sbitmap.c (dump_sbitmap): J is unsigned; don't use "1L". | |
680 | * unroll.c (unroll_loop): Initialize UNROLL_NUMBER. | |
681 | * varasm.c (compare_constant_1): Add cast to avoid warning. | |
682 | * config/alpha/alpha.c (alpha_emit_xfloating_libcall): Cast FUNC | |
683 | to (char *). | |
684 | (alpha_expand_unaligned_load, alpha_expand_unaligned_store): | |
685 | Cast switch operand of size to int. | |
686 | (alpha_expand_epilogue): Always initialize fp_offset and sa_reg. | |
687 | * config/alpha/alpha.h (INITIAL_ELIMINATION_OFFSET): Add abort | |
688 | in unhandled case. | |
689 | ||
72579062 NC |
690 | 2000-02-18 Nick Clifton <nickc@cygnus.com> |
691 | ||
692 | * config/arm/elf.h (ASM_OUTPUT_ALIGN): Do not generate | |
693 | anything for an alignment of zero. | |
694 | ||
695 | * config/arm/thumb.h (ASM_OUTPUT_ALIGN): Do not generate | |
696 | anything for an alignment of zero. | |
697 | ||
8b97e23b ML |
698 | 2000-02-18 Martin von Loewis <loewis@informatik.hu-berlin.de> |
699 | ||
700 | * gcc.texi (Bug Reporting): Refer to bugs.html. | |
701 | (Bug Lists): Likewise. | |
702 | * system.h (GCCBUGURL): New preprocessor define. | |
703 | * rtl.c (fancy_abort): Use it. | |
704 | * gcc.c (main): Likewise. | |
705 | ||
201384ac RH |
706 | 2000-02-18 Richard Henderson <rth@cygnus.com> |
707 | ||
708 | * flow.c (INSN_VOLATILE, SET_INSN_VOLATILE, uid_volatile): Remove. | |
709 | (life_analysis_1): Subsume into ... | |
710 | (life_analysis): ... here. Force PROP_REG_INFO off after reload. | |
711 | Use update_life_info for the relaxation. | |
712 | (update_life_info): Update REG_BASIC_BLOCK for registers live on | |
713 | entry and regs_live_at_setjmp. | |
714 | (set_noop_p): Simplify. | |
715 | (notice_stack_pointer_modification_1): Renamed from s/_1//. | |
716 | (record_volatile_insns): Split into ... | |
717 | (delete_noop_moves): ... here, | |
718 | (notice_stack_pointer_modification): ... here, | |
719 | (insn_dead_p): ... and here. | |
720 | (propagate_block): Don't query INSN_VOLATILE. | |
721 | (mark_used_regs): Mind !PROP_REG_INFO. | |
722 | * toplev.c (rest_of_compilation): Call mark_constant_function here, | |
723 | not in life_analysis. | |
724 | ||
a49a6a68 JW |
725 | Fri Feb 18 01:29:22 EST 2000 John Wehle (john@feith.com) |
726 | ||
727 | * loop.c (canonicalize_condition): New function, | |
728 | broken out of get_condition. | |
729 | (get_condition): Use it. | |
730 | * expr.h (canonicalize_condition): Prototype it. | |
731 | ||
732 | * tree.h (tree_int_cst_msb): Declare. | |
733 | * tree.c (tree_int_cst_msb): New function. | |
734 | ||
277576ee MM |
735 | 2000-02-17 Mark Mitchell <mark@codesourcery.com> |
736 | ||
61d84605 MM |
737 | * stmt.c (set_file_and_line_for_stmt): Don't crash if cfun->stmt |
738 | isn't set. | |
739 | ||
277576ee MM |
740 | * invoke.texi (-fmessage-length=n): Document. |
741 | ||
b9a73e32 JM |
742 | 2000-02-17 Jason Merrill <jason@casey.cygnus.com> |
743 | ||
744 | * bitmap.c (bitmap_operation): Don't leak bitmap elements. | |
745 | ||
9185a8d5 MM |
746 | 2000-02-17 Mark Mitchell <mark@codesourcery.com> |
747 | ||
748 | * function.c (thread_prologue_and_epilogue_insns): Put a line note | |
749 | after the prologue. | |
750 | ||
cb3d6d01 NC |
751 | 2000-02-17 Nick Clifton <nickc@cygnus.com> |
752 | ||
753 | * config/arm/thumb.c: Replace includes of system headers with | |
754 | #include "system.h". | |
755 | ||
ee8d66f7 RH |
756 | 2000-02-16 Richard Henderson <rth@cygnus.com> |
757 | ||
758 | * configure.in (alpha-linux*, alpha-netbsd) [extra_parts]: | |
759 | Add crtbeginS.o and crtendS.o. | |
760 | * alpha/elf.h (STARTFILE_SPEC): Use crtbeginS.o. | |
761 | (ENDFILE_SPEC): Use crtendS.o. | |
762 | * alpha/t-crtbe (crtbeginS.o, crtendS.o): New targets. | |
763 | ||
764 | * alpha/crtbegin.asm (__do_frame_takedown): Merge into ... | |
765 | (__do_global_dtors_aux): ... here. Call __cxa_finalize if | |
766 | shared and present. | |
767 | (__dso_handle): New variable. | |
768 | * alpha/crtend.asm (__do_global_ctors_aux): Remove runtime | |
769 | bias to __CTOR_END__. | |
770 | ||
ceb8e128 RH |
771 | 2000-02-16 Richard Henderson <rth@cygnus.com> |
772 | ||
773 | * Makefile.in (s-crtS, crtbeginS, crtendS): Prefix usage with $(T). | |
774 | ||
3912a603 HPN |
775 | Wed Feb 16 21:40:04 2000 Hans-Peter Nilsson <hp@bitrange.com> |
776 | ||
777 | * longlong.h (__clz_tab): Declare as static to match definition. | |
778 | ||
762f069d ME |
779 | 2000-02-16 Mark Elbrecht <snowball3@bigfoot.com> |
780 | * i386/xm-djgpp.h (LIBSTDCXX): Delete. Moved to config/i386/djgpp.h. | |
781 | (XREF_FILE_NAME): Define. | |
782 | ||
783 | * i386/djgpp.h (DATA_SECTION_ASM_OP): Define. | |
784 | (EH_FRAME_SECTION_ASM_OP): Define. | |
785 | (IDENT_ASM_OP): Define. | |
786 | (TEXT_SECTION_ASM_OP): Define. | |
787 | (CPP_SPEC): Define. | |
788 | (CTORS_SECTION_ASM_OP): Define. | |
789 | (CTOR_SECTION_FUNCTION): Use it. | |
790 | (DTORS_SECTION_ASM_OP): Define. | |
791 | (DTOR_SECTION_FUNCTION): Use it. | |
792 | ||
b7ba4d8d ZW |
793 | 2000-02-16 Zack Weinberg <zack@wolery.cumb.org> |
794 | ||
3a6cc978 ZW |
795 | * reg-stack.c (emit_swap_insn): Do not put a new insn before a |
796 | NOTE_BASIC_BLOCK. | |
797 | ||
b7ba4d8d ZW |
798 | * flow.c (dump_regset, debug_regset, dump_bb, debug_bb, |
799 | debug_bb_n): New functions. | |
800 | (dump_flow_info, print_rtl_with_bb): Use dump_regset. | |
801 | * basic-block.h: Prototype new functions. | |
802 | ||
052a4b28 DC |
803 | Wed Feb 16 21:07:53 2000 Denis Chertykov <denisc@overta.ru> |
804 | ||
d48120fe DC |
805 | * configure.in: Add support for avr target. |
806 | * configure: Rebuilt. | |
807 | ||
052a4b28 DC |
808 | * invoke.texi: Add AVR invocation docs. |
809 | * install.texi: Add information about AVR. | |
810 | * md.texi: Add AVR constraint letters description. | |
811 | * extend.texi: Add description for AVR specific attributes. | |
812 | ||
980be18f JM |
813 | 2000-02-16 Jason Merrill <jason@casey.cygnus.com> |
814 | ||
815 | * fixinc/fixinc.svr4: Wrap byteorder.h with extern "C". | |
816 | ||
47984720 NC |
817 | 2000-02-16 Nick Clifton <nickc@cygnus.com> |
818 | ||
819 | * emit-rtl.c (emit_insn): Move RTL check into make_insn_raw. | |
820 | (make_insn_raw): Move RTL check here. | |
821 | ||
4746ee26 KG |
822 | 2000-02-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
823 | ||
824 | * version.c: Include gansidecl.h and version.h. | |
825 | ||
826 | * version.h: Wrap entire file in macro __GCC_VERSION_H__. | |
827 | ||
828 | * configure.in (gcc_version): When setting, narrow search to | |
829 | lines containing `version_string'. | |
830 | ||
831 | * Makefile.in (mainversion): Likewise. | |
832 | (GCC_H): New variable. | |
833 | (gcc.h): Delete target. | |
834 | (gcc.o, gccspec.o, cppspec.o): Depend on $(GCC_H), not gcc.h. | |
835 | (version.o): Depend on version.h. | |
836 | (dbxout.o): Don't depend on gcc.h. | |
837 | ||
88a56c2e HPN |
838 | Wed Feb 16 15:04:49 2000 Hans-Peter Nilsson <hp@bitrange.com> |
839 | Michael Meissner <meissner@cygnus.com> | |
840 | ||
841 | * md.texi (Simple Constraints): Add item about whitespace. | |
842 | * genoutput.c (strip_whitespace): New. | |
843 | (scan_operands) [MATCH_OPERAND, MATCH_SCRATCH]: Call | |
844 | strip_whitespace for constraints. | |
845 | Test pointer using NULL, not 0. | |
846 | ||
4082292a AO |
847 | 2000-02-16 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
848 | ||
7113a160 AO |
849 | * cpplib.c (do_line): Pedwarn for #line > 32767. |
850 | ||
4082292a AO |
851 | * c-lex.c (readescape): Warn about '\x', but do not reject it. |
852 | ||
3ea8083f JL |
853 | 2000-02-15 Jonathan Larmour <jlarmour@redhat.co.uk> |
854 | ||
855 | * gcc.c (default_compilers): Add new __GNUC_PATCHLEVEL__ define | |
856 | to default cpp spec. | |
857 | (do_spec_1): Add support for %v3 spec used by __GNUC_PATCHLEVEL__. | |
858 | * cpp.texi: Document __GNUC_PATCHLEVEL__. | |
859 | * cpp.1: Likewise. | |
860 | ||
861 | * objc/lang-specs.h: Add new __GNUC_PATCHLEVEL__ define to | |
862 | default spec. | |
863 | ||
ed4acb3b DC |
864 | 2000-02-15 Denis Chertykov <denisc@overta.ru> |
865 | ||
866 | * configure.in: Add support for avr target. | |
867 | ||
c2843061 R |
868 | Wed Feb 16 03:21:43 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
869 | ||
870 | * sh.h (OVERRIDE_OPTIONS): Don't set sh_addr_diff_vec_mode. | |
871 | (sh_addr_diff_vec_mode): Don't declare. | |
872 | * sh.c (sh_addr_diff_vec_mode): Delete. | |
873 | ||
22d05f60 R |
874 | Wed Feb 16 01:27:52 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
875 | ||
876 | * sh.md (mulsi3_highpart): Add REG_EQUAL note to last insn. | |
877 | ||
a512fa97 R |
878 | Wed Feb 16 00:58:06 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
879 | ||
880 | * sh.md (udivsi3_i1, divsi3_i1, umulhisi3_i, mulhisi3_i): Name. | |
881 | (smulsi3_highpart_i): Name. | |
882 | (udivsi3): Wrap emitted insns in REG_LIBCALL / REG_RETVAL notes. | |
883 | (divsi3, mulhisi3, umulhisi3, mulsidi3, umulsidi3): Likewise. | |
884 | (smulsi3_highpart, umulsi3_highpart): Likewise. | |
885 | ||
886 | (mulsidi3_i, umulsidi3_i): Make rtl describe operation | |
887 | correctly independent of endianness. | |
888 | (mulsidi3, umulsidi3): Now define_insn. Hide details that | |
889 | confuse the optimizers. | |
890 | (mulsidi3+1, umulsidi3+1): New define_split. | |
891 | ||
f295bdb5 AH |
892 | Tue Feb 15 23:22:26 2000 Andrew Haley <aph@cygnus.com> |
893 | ||
894 | * config/sh/sh.md: Guard insn splits against illegal registers. | |
895 | * config/sh/sh.h: Correct comment about macros. | |
896 | ||
9f09b1f2 | 897 | Tue Feb 15 22:30:36 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
3ea8083f | 898 | Andrew MacLeod <amacleod@cygnus.com> |
9f09b1f2 R |
899 | |
900 | * Makefile.in (lcm.o): Depend on insn-attr.h. | |
901 | * basic-block.h (optimize_mode_switching): Declare. | |
902 | * lcm.c (tm_p.h, insn-attr.h): #include. | |
903 | (seginfo, bb_info): New structs. | |
904 | (antic, transp, comp, delete, insert) : New file-scope static variables. | |
905 | (new_seginfo, add_seginfo, make_preds_opaque, reg_dies): New functions. | |
906 | (reg_becomes_live, optimize_mode_switching): Likewise. | |
907 | * tm.texi: Add description of mode switching macros. | |
908 | * toplev.c (rest_of_compilation): Call optimize_mode_switching. | |
909 | ||
910 | * sh-protos.h (remove_dead_before_cse): Remove prototype. | |
911 | (fldi_ok, fpscr_set_from_mem): New prototypes. | |
912 | * sh.h (OPTIMIZATION_OPTION): Remove sh_flag_remove_dead_before_cse set. | |
913 | (CONST_DOUBLE_OK_FOR_LETTER_P, SECONDARY_INPUT_RELOAD_CLASS): | |
914 | Disable fldi for (TARGET_SH4 && ! TARGET_FMOVD). | |
915 | (sh_flag_remove_dead_before_cse): Remove declaration. | |
916 | (NUM_MODES_FOR_MODE_SWITCHING, OPTIMIZE_MODE_SWITCHING): New macros. | |
917 | (MODE_USES_IN_EXIT_BLOCK, MODE_NEEDED, MODE_AT_ENTRY): Likewise. | |
918 | (MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise. | |
919 | * sh.c (broken_move): Disable fldi for (TARGET_SH4 && ! TARGET_FMOVD). | |
920 | (barrier_align): Allow for JUMP_INSNS containing a parallel. | |
921 | (machine_dependent_reorg): Remove sh_flag_remove_dead_before_cse set. | |
922 | (fldi_ok): New function. | |
923 | (get_fpscr_rtx): Add fpscr_rtx as GC root. | |
924 | (emit_sf_insn): Only generate fpu switches when optimize < 1. | |
925 | (emit_df_insn): Likewise. | |
926 | (expand_fp_branch, emit_fpscr_use, remove_dead_before_cse): Delete. | |
927 | (sh_flag_remove_dead_before_cse): Delete. | |
928 | (get_free_reg, fpscr_set_from_mem): New functions. | |
929 | * sh.md (movdf, movsf): Remove no_new_pseudos code. | |
930 | (return): Remove emit_fpscr_use / remove_dead_before_cse calls. | |
931 | ||
17eb7951 LR |
932 | 2000-02-15 Loren Rittle <ljrittle@acm.org> |
933 | ||
934 | * ginclude/stddef.h: Correct usage of _BSD_RUNE_T_ for FreeBSD. | |
935 | ||
9f8f4efe KG |
936 | 2000-02-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
937 | ||
938 | * Makefile.in (TREE_H, collect2.o, gcc.h, mips-tfile.o, cccp.o, | |
939 | cpphash.o, cppinit.o, protoize.o, unprotoize.o): Depend on version.h. | |
940 | ||
941 | * cccp.c: Include version.h and/or don't declare `version_string'. | |
942 | * collect2.c: Likewise. | |
943 | * alpha.c: Likewise. | |
944 | * arm/aof.h: Likewise. | |
945 | * arm/coff.h: Likewise. | |
946 | * arm/elf.h: Likewise. | |
947 | * arm/pe.h: Likewise. | |
948 | * arm/tcoff.h: Likewise. | |
949 | * arm/telf.h: Likewise. | |
950 | * arm/tpe.h: Likewise. | |
951 | * arm/vxarm.h: Likewise. | |
952 | * convex/convex.c: Likewise. | |
953 | * i386/dgux.c: Likewise. | |
954 | * i386/sun386.h: Likewise. | |
955 | * m88k/m88k.c: Likewise. | |
956 | * mcore/mcore-pe.h: Likewise. | |
957 | * mips/mips.h: Likewise. | |
958 | * romp/romp.h: Likewise. | |
959 | * sh/sh.c: Likewise. | |
960 | * cpphash.c: Likewise. | |
961 | * cppinit.c: Likewise. | |
962 | * dwarf2out.c: Likewise. | |
963 | * dwarfout.c: Likewise. | |
964 | * gcc.c: Likewise. | |
965 | * gcc.h: Likewise. | |
966 | * mips-tfile.c: Likewise. | |
967 | * protoize.c: Likewise. | |
968 | * toplev.c: Likewise. | |
969 | * tree.h: Likewise. | |
970 | ||
971 | * version.c (version_string): Constify a char*. | |
972 | ||
973 | * version.h: New file. | |
974 | ||
789a3090 NC |
975 | 2000-02-14 Nick Clifton <nickc@cygnus.com> |
976 | ||
977 | * configure.in: Add mcore-elf and mcore-pe targets. | |
978 | * configure: Regenerate. | |
979 | ||
980 | * NEWS: Add note that MCore port has been contributed. | |
981 | ||
982 | * invoke.texi: Document command line switches for MCore port. | |
983 | * install.texi: Add MCore to list of supported targets. | |
984 | ||
59309a85 GK |
985 | 2000-02-14 Geoff Keating <geoffk@cygnus.com> |
986 | ||
987 | * collect2.c (main) [COLLECT_EXPORT_LIST]: If we have frames, | |
988 | then we will need to import the frame handling functions. | |
989 | (scan_prog_file) [COLLECT_EXPORT_LIST]: We will also need | |
990 | to import the frames themselves. | |
991 | ||
11bdd2ae | 992 | Mon Feb 14 13:31:01 2000 Stan Cox <scox@cygnus.com> |
3ea8083f | 993 | Jason Eckhardt <jle@cygnus.com> |
11bdd2ae SC |
994 | |
995 | * basic_block.h: Added prototype for reorder_basic_blocks. | |
996 | * toplev.c: Changes to add -freorder-blocks and graph dump after | |
997 | block reordering is done. | |
998 | * flow.c (reorder_block_def): New structure for use during block | |
999 | reordering. | |
1000 | (REORDER_BLOCK_*): New macros to access members of above structure. | |
1001 | (skip_insns_between_block, get_common_dest, chain_reorder_blocks, | |
1002 | make_reorder_chain, fixup_reorder_chain, reorder_basic_blocks): New | |
1003 | functions for block reordering. | |
1004 | ||
89bcce1b HPN |
1005 | Mon Feb 14 11:24:44 2000 Hans-Peter Nilsson <hp@bitrange.com> |
1006 | ||
1007 | * gcc.texi (Passes): Fix typo. | |
1008 | * md.texi (Standard Names): Ditto. | |
1009 | * tm.texi (Storage Layout): Ditto. | |
1010 | ||
f9ba428f ZW |
1011 | 2000-02-13 Zack Weinberg <zack@wolery.cumb.org> |
1012 | ||
1013 | * cpplib.c (do_define): Only free the old definition if it | |
1014 | actually had one. | |
1015 | ||
67b8719a NB |
1016 | 2000-02-13 Neil Booth <NeilB@earthling.net> |
1017 | ||
1018 | * cppfiles.c (read_and_prescan): When emitting deferred | |
1019 | newlines, test speccase[] again instead of checking each | |
1020 | possible whitespace character in turn. When we encounter \r, | |
1021 | look behind for \n first, then ahead. | |
1022 | ||
4eadede7 ZW |
1023 | 2000-02-13 Zack Weinberg <zack@wolery.cumb.org> |
1024 | ||
1025 | * cse.c (cse_altered): New internal flag. | |
1026 | (cse_insn): Set it if we changed an insn. | |
1027 | (cse_main): Clear cse_altered before each basic block. | |
1028 | Only garbage collect if cse_altered is true afterward. | |
1029 | ||
fd3f9fdb RO |
1030 | Sun Feb 13 14:12:28 2000 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
1031 | ||
1032 | * sparc/sol2.h (LIB_SPEC): Link -ldl if profiling. | |
1033 | ||
d5010e66 JL |
1034 | Sun Feb 13 13:21:55 2000 Jeffrey A Law (law@cygnus.com) |
1035 | ||
1036 | * combine.c (simplify_comparison): Fix typo. | |
1037 | ||
3ea6b476 NB |
1038 | Sun Feb 13 12:57:52 2000 Neil Booth <NeilB@earthling.net> |
1039 | ||
1040 | * prefix.c (concat, lookup_key): Use xmalloc and xrealloc | |
1041 | consistently. | |
1042 | ||
3abd3239 MH |
1043 | 2000-02-13 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
1044 | ||
1045 | * flow.c (flow_loop_tree_node_add): Use better algorithm by passing | |
1046 | previously inserted node instead of root node. Caller changed. | |
1047 | ||
1048 | 2000-02-13 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
f5b647ab MH |
1049 | |
1050 | * basic-block.h (FLOW_LOOP_FIRST_BLOCK, FLOW_LOOP_LAST_BLOCK): Delete. | |
1051 | ||
d1e51320 KG |
1052 | 2000-02-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1053 | ||
1054 | * crtstuff.c (__do_global_ctors_aux, __reg_frame_ctor, | |
1055 | __dereg_frame_dtor): Add prototype argument. | |
1056 | ||
1057 | * gthr-dce.h (__gthread_active_p, __gthread_once): Likewise. | |
1058 | ||
1059 | * gthr-posix.h (__gthread_active_p, __gthread_once): Likewise. | |
1060 | ||
1061 | * gthr-solaris.h (__gthread_active_p, __gthread_once): Likewise. | |
1062 | ||
1063 | * gthr-vxworks.h (__gthread_once): Likewise. | |
1064 | ||
1065 | * gthr-win32.h (__gthread_active_p, __gthread_once): Likewise. | |
1066 | ||
da2d1d3a JH |
1067 | Sat Feb 12 01:44:26 MET 2000 Jan Hubicka <jh@suse.cz> |
1068 | ||
1069 | * i386.c (ix86_emit_restore_regs_using_mov): Break out from ... | |
1070 | (ix86_expand_epilogue): ... here. Use mov instead of add to restore | |
1071 | stack pointer in functions w/o saved registers, output LEAVE more often | |
1072 | on TARGET_USE_LEAVE machines. | |
1073 | ||
914a3b8c DM |
1074 | 2000-02-07 Dmitri Makarov <dim@wrs.com> & Bernd Schmidt <bernds@redhat.com> |
1075 | ||
1076 | * config/arm/arm.c (arm_init_cumulative_args); New function: | |
1077 | Initlaise the CUMULATIE_ARGS strcuture for a function | |
1078 | defintion. | |
1079 | (arm_function_arg): New function: Determine where to place a | |
1080 | function's argument. Also handles deciding the function's | |
1081 | call cookie. | |
1082 | (current_file_function_operand): New function: Return true if | |
1083 | the symbol is a function which has already been compiled. | |
1084 | (arm_is_long_call_p): New function: Return true if the | |
1085 | indicated function should be called via a long call. | |
1086 | (arm_valid_type_attribute_p): New function: Return true if the | |
1087 | attribute is a valid, arm specific, attribute. | |
1088 | (arm_comp_type_attribute): New function: Return true if the | |
1089 | two types have compatable, arm specific, attributes. | |
1090 | ||
1091 | * config/arm/arm.h (CUMULATIVE_ARGS): Redefine to be a | |
3ea8083f | 1092 | structure. |
914a3b8c DM |
1093 | (FUNCTION_ARG): Redefine to call arm_function_arg. |
1094 | (FUNCTION_ARG_PARTIAL_NREGS): Redefine to use correct | |
3ea8083f | 1095 | structure field. |
914a3b8c | 1096 | (INIT_CUMULATIVE_ARGS): Redefine to call |
3ea8083f | 1097 | arm_init_cumulative_args. |
914a3b8c | 1098 | (FUNCTION_ARG_ADVANCE): Redefine to use correct structure |
3ea8083f | 1099 | field. |
914a3b8c | 1100 | (SETUP_INCOMING_VARARGS): Redefine to use correct structure |
3ea8083f | 1101 | field. |
914a3b8c | 1102 | (ARM_MARK_NEARBY_FUNCTION): New macro: Mark already compiled |
3ea8083f | 1103 | functions. |
914a3b8c DM |
1104 | (ENCODE_SECTION): Add call to ARM_MARK_NEARBY_FUNCTION. |
1105 | (VALID_MACHINE_TYPE_ATTRIBUTE): Define. | |
1106 | (COMP_TYPE_ATTRIBUTES): Define. | |
1107 | ||
1108 | * config/arm/arm.md (call): Call arm_is_long_call_p to decide | |
3ea8083f | 1109 | if a long call is needed. |
914a3b8c | 1110 | (call_value): Call arm_is_long_call_p to decide if a long call |
3ea8083f | 1111 | is needed. |
914a3b8c | 1112 | (call_symbol): Call arm_is_long_call_p to decide if a long call |
3ea8083f | 1113 | is needed. |
914a3b8c DM |
1114 | |
1115 | * config/arm/arm-protos.h: Add prototype for arm_is_long_call_p. | |
1116 | ||
90e7678c DC |
1117 | 2000-02-11 Denis Chertykov <denisc@overta.ru> |
1118 | ||
1119 | * README.AVR: New file with information about the avr ports. | |
1120 | * config/avr: New directory with avr port files. | |
1121 | ||
42cdc71d AJ |
1122 | 2000-02-11 Andreas Jaeger <aj@suse.de> |
1123 | ||
1124 | * fixinc/Makefile.in (FIXINC_DEFS): Remove unneeded @fixinc_defs@. | |
1125 | ||
a2a76ce7 ZW |
1126 | 2000-02-11 Zack Weinberg <zack@wolery.cumb.org> |
1127 | ||
1128 | * cpphash.c: Fix formatting, update commentary. | |
1129 | (dump_definition): Take three separate arguments instead of a | |
1130 | MACRODEF structure argument. | |
1131 | * cpphash.h: Update prototype of dump_definition. | |
1132 | * cppinit.c (cpp_finish): Update call of dump_definition. | |
1133 | ||
1134 | * cpplib.c (do_define): Always create new hash entry with | |
1135 | T_MACRO type. Remove redundant check for redefinition of | |
1136 | poisoned identifier. Update call of dump_definition. | |
1137 | (do_undef): Don't call check_macro_name. Rename sym_length to | |
1138 | len. | |
1139 | (do_error, do_warning): Don't use copy_rest_of_line or | |
1140 | SKIP_WHITE_SPACE. | |
1141 | (do_warning): Don't use pedwarn for the actual warning, | |
1142 | only the notice about its not being in the standard. (Fixes | |
1143 | bug with #warning in system headers.) | |
1144 | (do_ident): Stricter argument checking - accept only a single | |
1145 | string after #ident. Also, macro-expand the line. | |
1146 | (do_xifdef): Use cpp_defined. De-obfuscate. | |
1147 | ||
1148 | (do_pragma): Split out specific pragma handling to separate | |
1149 | functions. Use get_directive_token. Update commentary. Do | |
1150 | not pass on #pragma once or #pragma poison to the front end. | |
1151 | (do_pragma_once, do_pragma_implementation, do_pragma_poison, | |
1152 | do_pragma_default): New. | |
1153 | ||
144a5f9d JL |
1154 | Feb 11 12:30:53 2000 Jeffrey A Law (law@cygnus.com) |
1155 | ||
1156 | * jump.c (jump_optimize_1): The first operand in a relational | |
1157 | can be a CONST_INT. | |
1158 | * optabs.c (emit_conditional_move): Handle relationals which | |
1159 | have a known true/false result. | |
1160 | ||
2dd8bc01 GK |
1161 | 2000-02-11 Geoff Keating <geoffk@cygnus.com> |
1162 | ||
1163 | * function.c (thread_prologue_and_epilogue_insns): Don't insert | |
1164 | a RETURN insn into a block which already ends with a jump. | |
1165 | ||
3db18f59 GK |
1166 | 2000-02-11 Geoff Keating <geoffk@cygnus.com> |
1167 | ||
1168 | * haifa-sched.c (BUF_LEN): Increase a lot. | |
1169 | ||
c4ce154a NC |
1170 | 2000-02-11 Nick Clifton <nickc@cygnus.com> |
1171 | ||
1172 | * configure.in: Add tm_p_file specification for thumb targets. | |
1173 | * configure: Regenerate. | |
1174 | ||
1175 | * config/arm/thumb-protos.h: New file: Prototypes for exported | |
1176 | functions defined in thumb.c. | |
1177 | ||
87a8affe RL |
1178 | 2000-02-11 Robert Lipe <robertl@sco.com> |
1179 | ||
1180 | * Makefile.in (bootstrap-lean): Remove additional files. | |
3db18f59 GK |
1181 | (bootstrap2-lean): Likewise. |
1182 | (VOL_FILES): List of files for above. | |
87a8affe | 1183 | |
5a5c85c6 NS |
1184 | 2000-02-11 Nathan Sidwell <nathan@acm.org> |
1185 | ||
1186 | * cpphash.c (special_symbol): Remove spurious argument to | |
1187 | cpp_lookup. | |
1188 | ||
0d4ef09c JS |
1189 | 2000-02-11 Joel Sherrill (joel@OARcorp.com> |
1190 | ||
1191 | * configure.in: (i*86-*-rtems*): Swapped elf and coff | |
1192 | stanzas. | |
1193 | * configure: Rebuilt. | |
1194 | ||
84caa961 RB |
1195 | 2000-02-11 Rodney Brown <RodneyBrown@pmsc.com> |
1196 | ||
1197 | * pa-protos.h: Wrap function_arg_padding in TREE_CODE #ifdef. | |
1198 | ||
8c417c25 JL |
1199 | Fri Feb 11 02:59:05 2000 Jeffrey A Law (law@cygnus.com) |
1200 | ||
1201 | * pa.c, pa.h: Remove trigraph sequences within comments. | |
1202 | ||
d77b4575 PR |
1203 | Fri Feb 11 02:51:56 2000 Pavel Roskin <pavel_roskin@geocities.com> |
1204 | ||
1205 | * invoke.texi (PPC Options): -mno-new-mnenomics -> -mold-mnemonics. | |
1206 | ||
be200dff BL |
1207 | Fri Feb 11 02:48:30 2000 Brad Lucier (lucier@math.purdue.edu) |
1208 | ||
1209 | * sbitmap.h: Make SBITMAP_ELT_BITS unsigned. | |
1210 | ||
f9ef1f02 MH |
1211 | 2000-02-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
1212 | ||
1213 | * config/c4x/c4x.c (fp_zero_operand): Check for CONST_DOUBLE. | |
1214 | ||
eff784fe MH |
1215 | 2000-02-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
1216 | ||
1217 | * config/c4x/c4x.h (ASM_GLOBALIZE_LABEL): Use c4x_global_label. | |
1218 | (ASM_OUTPUT_EXTERNAL): Use c4x_external_ref. | |
1219 | (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise. | |
1220 | (ASM_FILE_END): Use c4x_file_end. | |
1221 | * config/c4x/c4x.c (c4x_global_label): New function. | |
1222 | (c4x_external_ref, c4x_file_end): Likewise. | |
f9ef1f02 | 1223 | |
eff784fe MH |
1224 | * config/c4x/c4x-protos.h (c4x_global_label): Add prototype. |
1225 | (c4x_external_ref, c4x_end_file): Likewise. | |
eff784fe | 1226 | |
cf4ed945 ZW |
1227 | 2000-02-10 Zack Weinberg <zack@wolery.cumb.org> |
1228 | ||
1229 | * cppexp.c: Don't include cpphash.h. | |
1230 | (parse_charconst, cpp_lex): Use cpp_defined. | |
1231 | (cpp_lex): Use get_directive_token throughout. Remove | |
1232 | unnecessary cases from switch. Move assertion-handling code | |
1233 | down to OTHER case. | |
1234 | (cpp_parse_expr): If we see '+' or '-', check the context to | |
1235 | determine if they are unary or binary operators. Streamline | |
1236 | the jumps a bit. Do not call skip_rest_of_line. | |
1237 | ||
1238 | * cpplib.c: Make skip_rest_of_line and cpp_skip_hspace | |
1239 | static. Export get_directive_token. Update commentary. | |
1240 | (cpp_defined): New function. | |
1241 | (do_define): Remove reference to T_PCSTRING. Call | |
1242 | free_definition to release memory for old definition, when | |
1243 | redefining a macro. | |
1244 | (eval_if_expression): Set only_seen_white to 0 before calling | |
1245 | cpp_parse_expr. Call skip_rest_of_line after it returns. | |
1246 | (cpp_read_check_assertion): Don't preserve a pointer into the | |
1247 | token buffer across a call to cpp_get_token. | |
1248 | ||
1249 | * Makefile.in (cppexp.o): Don't depend on cpphash.h. | |
1250 | * cppfiles.c (redundant_include_p): Use cpp_defined. | |
1251 | * cpphash.c (free_definition): New function. | |
1252 | (delete_macro): Use it. Update commentary. | |
1253 | * cpphash.h: Typedef HASHNODE here. Prototype cpp_lookup and | |
1254 | free_definition. | |
1255 | * cpplib.h: Don't typedef HASHNODE here. Delete T_PCSTRING | |
1256 | from enum node_type. Prototype cpp_defined and get_directive_token. | |
1257 | Don't prototype cpp_lookup, skip_rest_of_line, or cpp_skip_hspace. | |
1258 | ||
1259 | * fix-header.c (check_macro_names): Use cpp_defined. | |
1260 | (read_scan_file): Set inhibit_warnings and inhibit_errors in | |
1261 | the options structure. | |
1262 | ||
75cdca5b FS |
1263 | 2000-02-10 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
1264 | ||
1265 | * c-pragma.c (maximum_field_alignment): Remove duplicate declaration. | |
1266 | ||
d10b8e05 JM |
1267 | 2000-02-10 Jason Merrill <jason@casey.cygnus.com> |
1268 | ||
1269 | * dwarf2out.c (add_abstract_origin_attribute): Check TREE_CODE (origin) | |
1270 | rather than die->die_tag. | |
1271 | ||
729a2125 RK |
1272 | Thu Feb 10 16:26:49 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1273 | ||
1274 | * combine.c (make_extraction, force_to_mode): Avoid warning on | |
1275 | mixed-signedness conditionals. | |
1276 | (make_field_assignment, nonzero_bits): Likewise. | |
1277 | * expmed.c (store_fixed_bit_field): ALIGN arg now unsigned. | |
1278 | (store_split_bit_field, extract_split_bit_field): Likewise. | |
1279 | (extract_fixed_bit_field, store_bit_field, | |
1280 | * expr.c: Change alignment to be unsigned everywhere. | |
1281 | (move_by_pieces, store_constructor_field, store_constructor): | |
1282 | Alignment parm is unsigned. | |
1283 | (emit_block_move, emit_group_load, emit_group_store): Likewise. | |
1284 | (clear_storage, emit_push_insn, compare_from_rtx): Likewise. | |
1285 | (do_compare_rtx_and_jump): Likewise. | |
1286 | (move_by_pieces_ninsns, clear_by_pieces): Likewise. | |
1287 | Compare align with GET_MODE_ALIGNMENT. | |
1288 | (expand_expr_unaligned): Pointer to alignment is pointer to unsigned. | |
1289 | (get_inner_reference): Likewise. | |
1290 | (copy_blkmode_from_reg, emit_push_insn): Remove unneeded casts. | |
1291 | (expand_assignment): Local vars for alignment now unsigned. | |
1292 | (store_constructor, store_field, expand_expr, do_jump): Likewise. | |
1293 | (do_compare_and_jump): Likewise. | |
1294 | (store_field): Call new function expr_align. | |
1295 | * expr.h (emit_block_move, emit_group_load, emit_group_store): | |
1296 | Alignment arg now unsigned. | |
1297 | (clear_storage, emit_push_insn, compare_from_rtx): Likewise. | |
1298 | (do_compare_rtx_and_jump, store_bit_field): Likewise. | |
1299 | (extract_bit_field): Likewise. | |
1300 | * fold-const.c (add_double): Add cast to eliminate signedness warning. | |
1301 | * machmode.h (GET_MODE_ALIGNMENT): Result is unsigned. | |
1302 | (get_best_mode): Alignment arg is unsigned. | |
1303 | * rtl.h (move_by_pieces): Likewise. | |
1304 | * store-layout.c (maximum_field_alignment, set_alignment): | |
1305 | Now unsigned. | |
1306 | (layout_decl): Alignment arg is now unsigned. | |
1307 | Remove unneeded casts. | |
1308 | (layout_record, layout_union, layout_type): Remove unneeded casts. | |
1309 | Local alignment variables now unsigned. | |
1310 | (get_best_mode): Alignment arg now unsigned. | |
1311 | * tree.c (expr_align): New function. | |
1312 | * tree.h (expr_align): Likewise. | |
1313 | (maximum_field_alignment, set_alignment): Now unsigned. | |
1314 | (get_inner_reference): Alignment argument is now pointer to unsigned. | |
1315 | * varasm.c (assemble_variable): Add cast to eliminate warning. | |
1316 | ||
c2939b57 JW |
1317 | Thu Feb 10 12:56:47 2000 Jim Wilson <wilson@cygnus.com> |
1318 | ||
5e4900c7 JW |
1319 | * expmed.c (store_bit_field): If op0 and fieldmode are the same size, |
1320 | then store directly into op0. | |
1321 | ||
c2939b57 JW |
1322 | * calls.c (expand_call): When emitting a NOTE_INSN_SETJMP, search for |
1323 | the CALL_INSN, and emit the note immediately after it. | |
1324 | ||
7c5f52db NC |
1325 | 2000-02-10 Nick Clifton <nickc@cygnus.com> |
1326 | ||
1327 | * config/arm/thumb.md (epilogue): Include a (return) in the | |
1328 | generated insn, and emit it using emit_jump_insn not | |
1329 | emit_insn. | |
1330 | ||
44affdae JH |
1331 | Thu Feb 10 18:28:59 MET 2000 Jan Hubicka <jh@suse.cz> |
1332 | ||
1333 | * function.c (assign_temp): Change zero-sized arrays to size 1. | |
1334 | * integrate.c (expand_inline_function): Do not update | |
1335 | stack_alignment_needed | |
1336 | * i386.c (compute_frame_size): Remove #ifdef PREFERRED_FRAME_BOUNDARY, | |
1337 | add some sanity checking, remove optimization for function with | |
1338 | zero frame size. | |
1339 | ||
d219c7f1 KG |
1340 | 2000-02-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1341 | ||
1342 | * flow.c (mark_regs_live_at_end): Delete unused variables. | |
1343 | ||
1344 | * ggc-page.c (ggc_page_print_statistics): bzero -> memset. | |
1345 | ||
1346 | * integrate.c (copy_rtx_and_substitute): Wrap variable `alignment' | |
1347 | in macro FRAME_GROWS_DOWNWARD. | |
1348 | ||
1349 | * stmt.c (expand_end_bindings): Delete unused variable. | |
1350 | ||
1351 | * unroll.c (iteration_info): Mark parameter `loop' with | |
1352 | ATTRIBUTE_UNUSED. | |
1353 | ||
139cfaa7 AO |
1354 | 2000-02-10 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
1355 | ||
d1922b48 AO |
1356 | * fixinc/server.c (load_data): Return NULL if the marker line is |
1357 | not found. | |
1358 | (run_shell): If load_data returns NULL, retry the command once, in | |
1359 | a new shell. | |
1360 | ||
139cfaa7 AO |
1361 | * configure: Rebuilt. |
1362 | ||
547a21a8 BK |
1363 | 2000-02-09 Bruce Korb <bkorb@gnu.org> |
1364 | ||
1365 | * gcc/fixincludes: ** DELETED ** | |
1366 | * gcc/fixcpp: ** DELETED ** | |
1367 | * gcc/fixinc-nt.sed: ** DELETED ** | |
1368 | * gcc/just-fixinc: ** DELETED ** | |
1369 | * gcc/Makefile.in: Removed out-dated commentary | |
1370 | * gcc/configure.in: Removed fast-fixincludes disablement. | |
1371 | * MAINTAINERS(Ian Taylor) moved to "Write after approval" group. | |
1372 | ||
98b7bb38 CP |
1373 | 2000-02-09 Clinton Popetz <cpopetz@cygnus.com> |
1374 | * function.c (thread_prologue_and_epilogue_insns): Uncomment | |
1375 | last change. | |
1376 | ||
ae32f34a RH |
1377 | 2000-02-09 Richard Henderson <rth@cygnus.com> |
1378 | ||
1379 | * jump.c (delete_insn): Don't delete user labels at -O0. | |
1380 | ||
7e1878ef RL |
1381 | 2000-02-09 Robert Lipe <robertl@sco.com> |
1382 | ||
1383 | * Makefile.in (gen-protos): Don't depend on HOST_LIBDEPS. | |
1384 | Don't link with HOST_LIBS. | |
1385 | ||
756ee602 ZW |
1386 | 2000-02-09 Zack Weinberg <zack@wolery.cumb.org> |
1387 | ||
1388 | * configure.in: Correct --help text for --with-dwarf2. | |
1389 | Put tm-dwarf2.h after other tm files, if it's requested. | |
1390 | * configure: Regenerate. | |
1391 | * config/tm-dwarf2.h: #undef PREFERRED_DEBUGGING_TYPE before | |
1392 | defining it. | |
1393 | ||
564ad5f4 ZW |
1394 | 2000-02-09 Zack Weinberg <zack@wolery.cumb.org> |
1395 | ||
bb52fa7f ZW |
1396 | * cpplib.h: Provide HASHNODE typedef and forward decl of |
1397 | struct hashnode only. Kill cpp_hashnode typedef. MACRODEF, | |
1398 | DEFINITION, struct hashnode, struct macrodef, struct | |
1399 | definition, scan_decls prototype, default defn of | |
1400 | INCLUDE_LEN_FUDGE moved elsewhere. | |
1401 | ||
1402 | * cpphash.h: MACRODEF, DEFINITION, struct macrodef, struct | |
1403 | definition, and struct hashnode moved here. Remove the unused | |
1404 | 'predefined' field from struct definition. Replace the 'args' | |
1405 | union with its sole member. All users updated (cpphash.c). | |
1406 | Delete HASHSTEP and MAKE_POS macros, and hashf prototype. Add | |
1407 | multiple include guard. | |
1408 | ||
1409 | * cpphash.c (hashf): Make static; use better algorithm; drop | |
1410 | HASHSIZE parameter; return an unsigned int. | |
1411 | (cpp_lookup): Drop HASH parameter. PFILE parameter is | |
1412 | used. Calculate HASHSIZE modulus here. | |
1413 | (cpp_install): Drop HASH parameter. Calculate HASHSIZE modulus | |
1414 | here. | |
1415 | (create_definition): Drop PREDEFINITION parameter. | |
1416 | * cpplib.c (do_define): Don't calculate a hash value here. | |
1417 | Don't pass (keyword == NULL) to create_definition. | |
1418 | ||
1419 | * scan.h: Prototype scan_decls here. | |
1420 | * cppfiles.c: Move INCLUDE_LEN_FUDGE default defn here. | |
1421 | * cppexp.c, cppfiles.c, cppinit.c, cpplib.c, fix-header.c: All | |
1422 | callers of cpp_lookup and cpp_install updated. | |
1423 | ||
564ad5f4 ZW |
1424 | * cpphash.c (macarg): Hoist all the flag diddling out of the |
1425 | function... | |
1426 | (macroexpand): ... and out of the loop that calls macarg. | |
1427 | Skip over the initial paren before macro arguments with | |
1428 | cpp_get_non_space_token; point may be some distance before | |
1429 | that paren. Abort if it's not there. | |
1430 | ||
1431 | * cpplib.c (parse_clear_mark): Delete function. | |
1432 | (parse_set_mark, parse_goto_mark): Make static. | |
1433 | (ACTIVE_MARK_P): New macro. | |
1434 | (skip_block_comment, skip_line_comment): Do not bump the line | |
1435 | if ACTIVE_MARK_P is true. | |
1436 | (cpp_pop_buffer): The buffer to be popped may not have an | |
1437 | active mark. | |
1438 | (cpp_get_token): When looking for the initial paren before | |
1439 | macro arguments, only set a mark in a file buffer, Always | |
1440 | return to that mark before proceeding to call macroexpand or | |
1441 | return a NAME token. | |
1442 | ||
1443 | * cpplib.h: Remove prototypes of parse_set_mark, | |
1444 | parse_clear_mark, parse_goto_mark. | |
1445 | (struct cpp_options): Rename 'put_out_comments' to | |
1446 | 'discard_comments' and invert its sense. | |
1447 | * cppinit.c, cpphash.c, cpplib.c: All users of | |
1448 | put_out_comments changed to use discard_comments, with | |
1449 | opposite sense. | |
1450 | ||
3a75e42e CP |
1451 | 2000-02-09 Clinton Popetz <cpopetz@cygnus.com> |
1452 | ||
1453 | * function.c (thread_prologue_and_epilogue_insns): Don't delete | |
1454 | the edge from a block that both jumps and falls through to the | |
1455 | fallthru block. | |
1456 | ||
81ee8129 SB |
1457 | 2000-02-09 Scott Bambrough <scottb@netwinder.org> |
1458 | ||
90e7678c DC |
1459 | * config/arm/arm.md (movsi): In PIC mode, make sure that a |
1460 | constant source address is legitimate. | |
81ee8129 | 1461 | |
82e9d970 PB |
1462 | 2000-02-09 Philip Blundell <pb@futuretv.com> |
1463 | ||
90e7678c DC |
1464 | * config/arm/arm.c (legitimize_pic_address): Handle LABEL_REF |
1465 | correctly. | |
82e9d970 | 1466 | |
90e7678c DC |
1467 | * config/arm/arm.h (LEGITIMATE_CONSTANT_P): Allow anything when |
1468 | generating PIC. | |
1469 | (LEGITIMATE_PIC_OPERAND): Disallow references to labels. | |
82e9d970 | 1470 | |
2387c1d4 ZW |
1471 | 2000-02-09 Zack Weinberg <zack@wolery.cumb.org> |
1472 | ||
1473 | * cpplib.c (cpp_define, cpp_undef): Make sure the stacked buffer | |
1474 | ends with a newline and a NUL. Don't be so clever manipulating | |
1475 | strings. | |
1476 | ||
665792eb JH |
1477 | Wed Feb 9 14:18:08 MET 2000 Jan Hubicka <jh@suse.cz> |
1478 | ||
1479 | * reload1.c (reload) Align stack frame to cfun->stack_alignment_needed, | |
1480 | not to BIGGEST_ALIGNMENT. | |
1481 | ||
3f388b42 GK |
1482 | 2000-02-08 Geoff Keating <geoffk@cygnus.com> |
1483 | ||
1484 | * dwarf2.h (DW_CFA_GNU_negative_offset_extended): New constant. | |
1485 | * dwarf2out.c (dwarf_cfi_name): Print name of new constant. | |
1486 | (reg_save): Use DW_CFA_GNU_negative_offset_extended when needed. | |
1487 | (output_cfi): Handle output of DW_CFA_GNU_negative_offset_extended. | |
1488 | * frame.c (execute_cfa_insn): Handle | |
1489 | DW_CFA_GNU_negative_offset_extended. | |
1490 | ||
5568fb48 RH |
1491 | 2000-02-08 Richard Henderson <rth@cygnus.com> |
1492 | ||
1493 | * flow.c (tidy_fallthru_edges): Split out from ... | |
1494 | (delete_unreachable_blocks): ... here. | |
1495 | (find_basic_blocks): Use it. | |
1496 | ||
f5a50010 RK |
1497 | Tue Feb 8 15:51:50 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1498 | ||
1499 | * stmt.c (expand_decl): Do set RTX_UNCHANGING_P for TREE_READONLY. | |
1500 | ||
5fa7f88c ZW |
1501 | 2000-02-08 Zack Weinberg <zack@wolery.cumb.org> |
1502 | ||
1503 | * Makefile.in (GEN_PROTOS_OBJS): Remove libcpp.a. | |
1504 | (gen_protos.o): Don't depend on cpplib.h or cpphash.h. | |
1505 | (fix-header.o): Don't depend on cpphash.h. | |
1506 | ||
1507 | * scan.c (hashstr): New function. | |
1508 | * scan.h: Prototype it. | |
1509 | * fix-header.c: Don't include cpphash.h. Use hashstr. | |
1510 | * gen-protos.c: Don't include cpphash.h or cpplib.h. Use | |
1511 | hashstr. Report hash table statistics. Add private | |
1512 | definition of xrealloc. | |
1513 | ||
4be2e5d9 KG |
1514 | 2000-02-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1515 | ||
1516 | * i386.h (TARGET_SWITCHES): Fix typo in option name. | |
1517 | ||
a617c13f CP |
1518 | 2000-02-08 Clinton Popetz <cpopetz@cygnus.com> |
1519 | ||
90e7678c DC |
1520 | * function.c (thread_prologue_and_epilogue_insns): Don't replace |
1521 | jumps with returns unless they are jumps to the fallthru block. | |
a617c13f | 1522 | |
4d6b6776 JH |
1523 | Tue Feb 8 07:53:55 2000 Jan Hubicka <jh@suse.cz> |
1524 | ||
1525 | * i386.md (addqi3_cc): Fix contraints. | |
1526 | ||
73ef99fb HPN |
1527 | Tue Feb 8 01:39:45 2000 Hans-Peter Nilsson <hp@bitrange.com> |
1528 | ||
1529 | * function.c (emit_return_into_block): Wrap in #ifdef HAVE_return. | |
1530 | ||
f81f5a9d MM |
1531 | 2000-02-07 Mark Mitchell <mark@codesourcery.com> |
1532 | ||
1533 | * cpplib.c (cpp_get_token): Call CPP_BUMP_LINE after reading a | |
1534 | carriage return after a macro name. | |
1535 | ||
f766bd46 FF |
1536 | 2000-02-07 Fred Fish <fnf@be.com> |
1537 | ||
1538 | * i386/beos-elf.h: (ASM_IDENTIFY_GCC): Define to nothing | |
1539 | so the gcc2_compiled symbol doesn't confuse BeOS debuggers. | |
1540 | ||
981cb437 ZW |
1541 | 2000-02-07 Zack Weinberg <zack@wolery.cumb.org> |
1542 | ||
1543 | * cppfiles.c (deps_output): Count spacers in deps_column. | |
1544 | ||
1545 | 2000-02-07 Neil Booth <NeilB@earthling.net> | |
1546 | ||
1547 | * cppinit.c (initialize_dependency_output): If there is no | |
1548 | suffix, don't try to look for known suffixes. Use strrchr. | |
1549 | (cpp_start_read): Remove duplicate initialization. | |
1550 | ||
c2f8b491 JH |
1551 | Mon Feb 7 18:36:41 MET 2000 Jan Hubicka <jh@suse.cz> |
1552 | ||
1553 | * calls.c (compute_argument_block_size): New argument | |
1554 | preferred_stack_boundary. | |
1555 | (expand_call): update cfun->preferred_stack_boundary, update call of | |
1556 | compute_argument_block_size | |
1557 | (emit_library_call): Increate cfun->preferred_stack_boundary | |
1558 | to PREFERRED_STACK_BOUNDARY | |
1559 | (emit_library_call_value): Likewise. | |
1560 | * explow.c (allocate_dynamic_stack_spave): Likewise. | |
1561 | * function.c (prepare_function_start): Set | |
1562 | cfun->preferred_stack_boundary | |
1563 | * function.h (struct function): Add preferred_stack_boundary field. | |
1564 | * integrate.c (expand_inline_function): Update | |
1565 | cfun->preferred_stack_boundary and cfun->stack_alignment_needed. | |
1566 | (copy_rtx_and_substitute): Align frame to stack_alignment_needed only. | |
1567 | * i386.c (compute_frame_size): Use cfun->preferred_stack_boundary. | |
1568 | ||
25e30970 ZW |
1569 | 2000-02-06 Zack Weinberg <zack@wolery.cumb.org> |
1570 | ||
c1212d2f ZW |
1571 | * cpplib.c (my_strerror, cpp_error, cpp_error_with_line, |
1572 | cpp_error_from_errno, cpp_warning, cpp_warning_with_line, | |
1573 | cpp_pedwarn, cpp_pedwarn_with_line, | |
1574 | cpp_pedwarn_with_file_and_line): Move to cpperror.c. | |
1575 | (cpp_print_file_and_line, v_cpp_error, v_cpp_warning, | |
1576 | v_cpp_error_with_line, v_cpp_warning_with_line, | |
1577 | cpp_message_from_errno, cpp_perror_with_name): Delete. | |
1578 | ||
1579 | * cpperror.c (cpp_print_containing_files): Take starting | |
1580 | buffer as argument. | |
1581 | (cpp_file_line_for_message): Rename to cpp_print_file_and_line. | |
1582 | (v_cpp_message): Now called directly by all entry points. | |
1583 | Remove -1 case. | |
1584 | (cpp_pfatal_with_name, cpp_message): Delete. | |
1585 | (cpp_notice_from_errno, cpp_ice): New functions. | |
1586 | (cpp_notice): Is now for reporting error conditions, just | |
1587 | without an associated file. | |
1588 | (cpp_error, cpp_error_with_line): Don't do anything if | |
1589 | opts->inhibit_errors is on. | |
1590 | (cpp_pedwarn_with_file_and_line): Take column argument also. | |
1591 | ||
1592 | * cpplib.h: Update prototypes of exported functions. | |
1593 | (struct cpp_options): Add inhibit_errors. | |
1594 | ||
1595 | * cppalloc.c, cppfiles.c: Use fprintf not cpp_notice for | |
1596 | non-error messages. Include intl.h. | |
1597 | ||
1598 | * cppinit.c, cppmain.c: Likewise. Also, use | |
1599 | cpp_notice_from_errno instead of cpp_perror_with_name or | |
1600 | cpp_pfatal_with_name, and cpp_notice instead of cpp_message. | |
1601 | ||
1602 | * cppexp.c, cpphash.c, cppinit.c, cpplib.c: Use cpp_ice to | |
1603 | report internal errors. | |
1604 | ||
1605 | * cpplib.c (do_define): Switch bcopy to memcpy. | |
1606 | Give cpp_pedwarn_with_file_and_line a dummy column argument. | |
1607 | ||
25e30970 ZW |
1608 | * cpplib.c (copy_rest_of_line): Revert previous change: don't |
1609 | bail out early if we hit a line comment. | |
1610 | ||
69732dcb RH |
1611 | 2000-02-06 Richard Henderson <rth@cygnus.com> |
1612 | ||
1613 | * flow.c (flow_delete_insn, make_edge, remove_edge): Export. | |
1614 | * basic-block.h: Declare them. | |
1615 | * emit-rtl.h (active_insn_p): New. | |
1616 | (next_active_insn, prev_active_insn): Use it. | |
1617 | * rtl.h: Declare it. | |
1618 | * function.c (emit_return_into_block): New. | |
1619 | (thread_prologue_and_epilogue_insns): Insert return insns instead | |
1620 | of epilogues when possible. | |
1621 | * jump.c (jump_optimize_1): Remove code to insert a return insn | |
1622 | on the fallthru to the exit block. | |
1623 | ||
9a7372d6 RH |
1624 | * i386.c (ix86_can_use_return_insn_p): Fail for large poped args |
1625 | and for non-empty stack frames. | |
1626 | * i386.md (return): Expand to return-pop as needed. | |
1627 | ||
52a75c3c RH |
1628 | 2000-02-06 Richard Henderson <rth@cygnus.com> |
1629 | ||
1630 | * simplify-rtx.c (simplify_relational_operation): Canonicalize | |
1631 | constant to op1 for testing. | |
1632 | ||
b027470f MH |
1633 | 2000-02-06 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
1634 | ||
1635 | * config/c4x/c4x.md (*ldi_on_overflow): New pattern. | |
1636 | (fixuns_truncqfqi2): Use it. | |
1637 | ||
d9f0b960 RH |
1638 | 2000-02-06 Richard Henderson <rth@cygnus.com> |
1639 | ||
1640 | * i386.c (ix86_agi_dependant): Handle pro_epilogue_adjust_stack | |
1641 | as a TYPE_LEA insn. | |
1642 | ||
1643 | * i386.md (widening and peepholes): Mask the constant instead of | |
1644 | using gen_lowpart. | |
1645 | ||
40ea76de ZW |
1646 | 2000-02-05 Zack Weinberg <zack@wolery.cumb.org> |
1647 | ||
eaefae0e ZW |
1648 | * cppfiles.c (read_and_prescan) [case SPECCASE_QUESTION]: Bump |
1649 | input pointer before possibly branching off to the backslash | |
1650 | code. | |
1651 | * cpphash.c (macroexpand): Correctly delete \r escapes when | |
1652 | stringifying parameters. | |
1653 | * cpplib.c (copy_rest_of_line): Go directly to skip_block_comment | |
1654 | if we can; bail out early if we hit a line comment. | |
1655 | (handle_directive): Treat '# 123' in an .S file just like | |
1656 | '# <punctuation>'. Discard the shifted '#' if we hit '#\n'. | |
1657 | Return 1 for '# not_a_directive'. | |
1658 | (get_directive_token): Pop macro buffers here, so that | |
1659 | cpp_get_token can't sneakily move past a newline. | |
1660 | Add sanity checks. | |
1661 | (cpp_get_token): goto randomchar if handle_directive returns 0. | |
1662 | ||
1316f1f7 ZW |
1663 | * cppalloc.c: Update copyright. |
1664 | * cpplib.c: Merge all the static function prototypes into one | |
1665 | block. | |
1666 | * cpplib.h: Remove #if 0 block. | |
1667 | ||
40ea76de ZW |
1668 | * cpperror.c: Remove #ifdef EMACS block. |
1669 | * cppmain.c: Likewise. | |
1670 | * cpphash.c: Remove #if 0 blocks. | |
1671 | * cppinit.c: Remove #if 0 blocks, and the -lint option. | |
1672 | * cpplib.c: Remove #if 0 blocks and code referencing | |
1673 | pcp_inside_if or for_lint. Remove duplicate error message. | |
1674 | Fix error messages for #else after #else or #elif. Reformat. | |
1675 | Remove archaic TODO list. | |
1676 | * cpplib.h: Remove pcp_inside_if and for_lint flags. | |
1677 | ||
fd81d24f ZW |
1678 | 2000-02-05 Zack Weinberg <zack@wolery.cumb.org> |
1679 | ||
1680 | * i386/osf1elf.h: Add missing backslash to multiline string. | |
1681 | ||
75874af9 KG |
1682 | 2000-02-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1683 | ||
1684 | * longlong.h [sparc] (udiv_qrnnd): Avoid stringifying macro arg. | |
1685 | ||
c6991660 KG |
1686 | 2000-02-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1687 | ||
1688 | * Makefile.in (c-common.o): Depend on $(EXPR_H). | |
1689 | ||
1690 | * c-common.c: Include expr.h. | |
1691 | ||
1692 | * c-pragma.c (mark_align_stack): Add prototype. | |
1693 | ||
1694 | * caller-save.c (add_stored_regs): Likewise. | |
1695 | ||
1696 | * combine.c (record_promoted_value): Likewise. | |
1697 | ||
1698 | * i386.c (ix86_sched_reorder_pentium, ix86_sched_reorder_ppro): | |
1699 | Likewise. | |
1700 | ||
1701 | * cppinit.c (new_pending_define): Likewise. | |
1702 | ||
1703 | * cpplib.c (skip_block_comment, skip_line_comment): Likewise. | |
1704 | ||
1705 | * dwarf2out.c (save_rtx, splice_child_die, reverse_die_lists, | |
1706 | AT_class, AT_flag, AT_int, AT_unsigned, AT_string, AT_ref, AT_loc, | |
1707 | AT_addr, AT_lbl, get_AT_ref, free_AT, free_die, local_scope_p, | |
1708 | class_scope_p): Likewise. | |
1709 | ||
1710 | * dwarf2out.h (dwarf2out_set_demangle_name_func, | |
1711 | dwarf2out_add_library_unit_info): Likewise. | |
1712 | ||
1713 | * ggc.h (ggc_page_print_statistics): Likewise. | |
1714 | ||
1715 | * haifa-sched.c (propagate_deps): Likewise. | |
1716 | ||
1717 | * reg-stack.c (next_flags_user, record_label_references): Likewise. | |
1718 | ||
1719 | * rtl.h (set_stack_check_libfunc): Likewise. | |
1720 | ||
1721 | * toplev.h (set_fatal_function): Likewise. | |
1722 | ||
1723 | * toplev.c (set_fatal_function): Delete prototype. | |
1724 | ||
1725 | * diagnostic.c: Deconstify functions returning malloc'ed ptrs. | |
1726 | ||
79f4e1c0 GK |
1727 | 2000-02-05 Geoff Keating <geoffk@cygnus.com> |
1728 | ||
1729 | * ginclude/ppc-asm.h (FUNC_START): Use USER_LABEL_PREFIX. | |
1730 | (FUNC_END): Likewise. | |
1731 | ||
63290521 MH |
1732 | 2000-02-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
1733 | ||
1734 | * caller-save.c: Include tm_p.h. | |
1735 | ||
a0b4eeee MH |
1736 | 2000-02-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
1737 | ||
1738 | * Makefile.in (libgcc.a): Add $(LIBGCC1) to libgcc.a after $(LIBGCC2). | |
1739 | ||
f15e0a17 NB |
1740 | 2000-02-04 Neil Booth <NeilB@earthling.net> |
1741 | ||
1742 | * cccp.c (main): Check 'dir' for a NULL pointer before passing | |
1743 | it to strcmp. | |
1744 | ||
706b0f60 ZW |
1745 | 2000-02-04 Zack Weinberg <zack@wolery.cumb.org> |
1746 | ||
1747 | * recog.h: Remove NO_MD_PROTOTYPES ifdefs. | |
1748 | * genflags.c: Use the max_operand_1 logic from genemit.c to | |
1749 | calculate how many arguments gen_insn prototypes have. Remove | |
1750 | NO_MD_PROTOTYPES ifdefs from the generated file. | |
1751 | * genoutput.c: Don't define NO_MD_PROTOTYPES in the generated | |
1752 | file. Cast gen_insn initializers to insn_gen_fn. | |
1753 | * config/alpha/vms.h: Don't define NO_MD_PROTOTYPES. | |
1754 | * gcc.texi: Remove documentation of NO_MD_PROTOTYPES. | |
1755 | ||
c05d48e6 KG |
1756 | 2000-02-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1757 | ||
1758 | * fixinc/Makefile.in (HDR): Add machname.h. | |
1759 | (clean): Likewise. | |
1760 | ||
31113446 MH |
1761 | 2000-02-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
1762 | ||
1763 | * config/c4x/c4x.h (c4x_compare_op0, c4x_compare_op1): Move ... | |
1764 | (c4x_regclass_map, c4x_caller_save_map, c4x_rpts_cycles): Ditto. | |
1765 | (c4x_cpu_version): Ditto. | |
1766 | * config/c4x/c4x-protos.h: ... here. | |
1767 | ||
e40a1c67 JM |
1768 | 2000-02-04 Jason Merrill <jason@casey.cygnus.com> |
1769 | ||
1770 | * dwarf2out.c (add_abstract_origin_attribute): Don't call | |
1771 | gen_abstract_function on our context if we're a nested function. | |
1772 | ||
a5fa6484 MH |
1773 | 2000-02-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
1774 | ||
1775 | * config/c4x/c4x.md (fixuns_truncqfqi2): Rewrite. | |
1776 | * config/c4x/libgcc.S (ufix_truncqfhi2n): Fix. | |
1777 | ||
bff0dc38 BK |
1778 | 2000-02-04 Bruce Korb <bkorb@gnu.org> |
1779 | ||
1780 | * fixinc/genfixes(machname.h): | |
1781 | Move the functionality from gen-machine.h into this file. | |
1782 | UNdef MN_NAME_PAT if there are no names to change. | |
1783 | Also, be a little kinder when AutoGen is not present. | |
1784 | ||
1785 | * fixinc/Makefile.in(machname.h): | |
1786 | Change the generation rule to use genfixes. | |
1787 | ||
1788 | * fixinc/fixfixes.c(machine_name): | |
1789 | machine_name_fix's functionality now dependent upon whether | |
1790 | MN_NAME_PAT is defined. | |
1791 | ||
1792 | * fixinc/fixtests.c(machine_name): | |
1793 | ditto. | |
1794 | ||
1795 | * fixinc/fixlib.c(mn_get_regexps): conditional on definition | |
1796 | of MN_NAME_PAT. | |
1797 | ||
1798 | * fixinc/fixlib.h(mn_get_regexps): | |
1799 | ditto | |
1800 | ||
1801 | * fixinc/gen-machine.h: DELETED | |
1802 | ||
1c71e60e JH |
1803 | 2000-02-04 Jan Hubicka <jh@suse.cz> |
1804 | Richard Henderson <rth@cygnus.com> | |
1805 | ||
52a75c3c RH |
1806 | * i386.c (SAVE_REGS_FIRST): Remove. |
1807 | (ix86_initial_elimination_offset): Handle only SAVE_REGS_FIRST mode. | |
1808 | (ix86_compute_frame_size): Likewise. | |
1c71e60e | 1809 | (ix86_expand_prologue): Likewise. Use pro_epilogue_adjust_stack. |
52a75c3c | 1810 | (ix86_emit_restore_regs): Remove. |
1c71e60e JH |
1811 | (ix86_emit_epilogue_esp_adjustment): Use pro_epilogue_adjust_stack |
1812 | when a frame pointer is in use. | |
52a75c3c | 1813 | (ix86_expand_epilogue): Handle only SAVE_REGS_FIRST mode. Use mov |
1c71e60e JH |
1814 | instead of pop to restore a register when profitable; emit leave |
1815 | when profitable. | |
52a75c3c RH |
1816 | (ix86_attr_length_default): Handle pro_epilogue_adjust_stack |
1817 | as a TYPE_LEA insn. | |
1c71e60e | 1818 | (ix86_adjust_cost): Handle pro_epilogue_adjust_stack as TYPE_ALU. |
52a75c3c | 1819 | * i386.md (prologue_allocate_stack): Remove. |
1c71e60e JH |
1820 | (epilogue_deallocate_stack): Remove. |
1821 | (pro_epilogue_adjust_stack): New. | |
1822 | ||
c13fde05 RH |
1823 | 2000-02-04 Richard Henderson <rth@cygnus.com> |
1824 | ||
1825 | * function.c (diddle_return_value): Rework to use a callback function. | |
1826 | Use current_function_return_rtx if it's been set up. | |
1827 | (do_clobber_return_reg, clobber_return_register): New. | |
1828 | (do_use_return_reg, use_return_register): New. | |
1829 | (expand_function_end): Use them. | |
1830 | * stmt.c (expand_null_return): Likewise. | |
1831 | * function.h: Declare them. | |
1832 | * flow.c (mark_regs_live_at_end): Use diddle_return_value. | |
1833 | (mark_reg): Change arguments as appropriate for callback. | |
1834 | * integrate.c (expand_inline_function): Revert 19 Jan change. | |
1835 | ||
a89608cb HPN |
1836 | Fri Feb 4 20:25:42 2000 Hans-Peter Nilsson <hp@bitrange.com> |
1837 | ||
1838 | * tm.texi (Values in Registers): Fix typo: "fo" "for". | |
1839 | (Misc): Say the scheduler, not the Haifa scheduler. | |
1840 | ||
a76063a6 CP |
1841 | 2000-02-04 Clinton Popetz <cpopetz@cygnus.com> |
1842 | ||
1843 | * jump.c (mark_jump_label): Add in_mem param, check SYMBOL_REFs | |
1844 | when in_mem is set. Update all callers. | |
1845 | ||
2e3af27c RH |
1846 | 2000-02-04 Richard Henderson <rth@cygnus.com> |
1847 | ||
1848 | * i386/openbsd.h (INT_ASM_OP): Define. | |
1849 | ||
8760eaae HPN |
1850 | Fri Feb 4 10:51:30 2000 Hans-Peter Nilsson <hp@bitrange.com> |
1851 | ||
1852 | * tm.texi: Fix various typos. | |
1853 | ||
7d4d8603 SE |
1854 | Thu Feb 3 17:17:32 2000 Steve Ellcey <sje@cup.hp.com> |
1855 | ||
1856 | * config/pa/pa-hpux11.h (LIB_SPEC): Correct typo in !p case. | |
1857 | (MD_STARTFILE_PREFIX_1): New macro. | |
1858 | ||
79f05c19 JH |
1859 | Thu Feb 3 15:08:13 MET 2000 Jan Hubicka <jh@suse.cz> |
1860 | ||
1861 | * i386.md (movstrsi, clrstrsi): Support variable sized copies, align | |
1862 | destination when needed. | |
1863 | (strmovsi, strsetsi): New expander. | |
1864 | (strmovsi_1, strsetsi_1): New pattern. | |
1865 | * i386.h (MASK_NO_ALIGN_STROP, MASK_INLINE_ALL_STROP, | |
1866 | TARGET_ALIGN_STRINGOPS, TARGET_INLINE_ALL_STRINGOPS): New macros. | |
1867 | (TARGET_SWITCHES) Add align-stringops and inline-all-stringops. | |
1868 | * invoke.texi (align-stringops, inline-all-stringops): Document. | |
1869 | ||
cf8e13bb KW |
1870 | Wed Feb 2 23:04:47 2000 Krister Walfridsson <cato@df.lth.se> |
1871 | ||
1872 | * i386/netbsd.h (INT_ASM_OP): Define. | |
1873 | ||
5237f531 ZW |
1874 | 2000-02-02 Zack Weinberg <zack@wolery.cumb.org> |
1875 | ||
1876 | * cpplib.h (cpp_reader): Add new flag, no_directives. | |
1877 | * cpphash.c (macarg): Set it. | |
1878 | * cpplib.c (handle_directive): If no_directives is on and we | |
1879 | find a directive, issue an error and discard the line. | |
1880 | ||
3e7cd49f JW |
1881 | Wed Feb 2 13:07:10 2000 Jim Wilson <wilson@cygnus.com> |
1882 | ||
1883 | * config/sparc/sparc.h (PREFERRED_RELOAD_CLASS): Delete 'E' check for | |
1884 | FP constants. Add ! TARGET_FPU check for FP constants. | |
1885 | ||
2cade2ad CP |
1886 | 2000-02-02 Clinton Popetz <cpopetz@cygnus.com> |
1887 | ||
1888 | * flow.c (find_basic_blocks): Don't kill label_value_list | |
1889 | here. | |
1890 | (cleanup_cfg): Kill it here. | |
1891 | ||
c297a34e RK |
1892 | Wed Feb 2 08:12:30 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1893 | ||
1894 | * expr.c (store_field): Ensure ALIGN is no stricter than the | |
1895 | alignment of EXP. | |
1896 | ||
a7c197f8 RH |
1897 | 2000-02-02 Richard Henderson <rth@cygnus.com> |
1898 | ||
1899 | * jump.c (delete_insn): Partially revert 19 Jan change; | |
1900 | don't convert unused code labels to notes at -O0. | |
1901 | ||
0edaaa41 HB |
1902 | 2000-02-02 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
1903 | ||
1904 | * toplev.c (rest_of_compilation): Run rebuild_jump_labels after | |
1905 | split_all_insns to recreate REG_LABEL notes for flow2 pass. | |
1906 | ||
2c5a510c RH |
1907 | 2000-02-01 Richard Henderson <rth@cygnus.com> |
1908 | ||
1909 | * i386.c (general_no_elim_operand): New. | |
1910 | (nonmemory_no_elim_operand): New. | |
1911 | (ix86_expand_move): Copy eliminable operands before a push. | |
1912 | * i386-protos.h: Declare new functions. | |
1913 | * i386.h (CAN_ELIMINATE): Simplify. | |
1914 | (PREDICATE_CODES): Update. | |
1915 | * i386.md (push insns): Don't allow eliminable register operands. | |
1916 | ||
ea2d416a RH |
1917 | 2000-02-01 Richard Henderson <rth@cygnus.com> |
1918 | ||
1919 | * flow.c (mark_regs_live_at_end): Follow expand_function_end and | |
1920 | replace BLKmode with DECL_RTL's mode. | |
1921 | ||
7ae87061 ZW |
1922 | 2000-02-01 Zack Weinberg <zack@wolery.cumb.org> |
1923 | ||
1924 | * frame.c (find_fde): Convert for loop to do-while so compiler | |
1925 | sees it's always executed at least once. | |
1926 | * libgcc2.c (BBINBUFSIZE): Kill. | |
1927 | (__bb_init_prg): Use fgets. | |
1928 | (__bb_exit_trace_func): Don't paste strings. | |
1929 | * unroll.c (unroll_loop): Initialize unroll_type, not | |
1930 | unroll_number, and tweak logic to match. | |
1931 | ||
1932 | * i386.c (ix86_expand_int_movcc): Add explicit 'return 0' in | |
1933 | all failure paths. | |
1934 | (ix86_flags_dependant): Likewise. Disentangle control flow. | |
1935 | (ix86_sched_reorder): Break guts out to | |
1936 | ix86_sched_reorder_pentium and ix86_sched_reorder_ppro. | |
1937 | (ix86_sched_reorder_ppro): Initialize pair2 and insnp before | |
1938 | any possible use. | |
1939 | ||
1940 | * i386.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Don't | |
1941 | use string concatenation. Don't save and restore esi. | |
1942 | ||
1943 | * fixinc/Makefile.in (fixincl.sh): Don't depend on inclhack.def. | |
1944 | (machname.h): Remove script to separate file. Use two-step | |
1945 | sequence so target is not created if script fails. | |
1946 | * fixinc/gen-machname.h: New file. Handle case where no non-reserved | |
1947 | identifiers are defined. | |
1948 | * fixinc/fixlib.c (mn_get_regexps): Return a flag: if MN_NAME_PAT is | |
1949 | an empty string, machine_name doesn't need to do anything at | |
1950 | all. | |
1951 | (is_cxx_header): Add more cases to regexp. | |
1952 | * fixinc/fixlib.h: Update prototype. | |
1953 | * fixinc/fixtests.c, fixinc/fixfixes.c: Update callers of | |
1954 | mn_get_regexps. | |
1955 | * fixinc/fixincl.c: Define NO_BOGOSITY. | |
1956 | ||
1957 | * fixinc/inclhack.def (no_double_slash, else_endif_label): Ifdef out. | |
1958 | (hp_sysfile): Add missing comma. | |
1959 | (math_exception): Put the wrapper ifdefs at the beginning and | |
1960 | the end of the file. | |
1961 | * fixinc/fixincl.x, fixinc/inclhack.sh: Regenerate. | |
1962 | ||
7ce86678 RH |
1963 | 2000-02-01 Richard Henderson <rth@cygnus.com> |
1964 | ||
1965 | * sparc.c (fp_zero_operand): Turn into a normal predicate. | |
1966 | Use CONST0_RTX. Update all callers. | |
1967 | * sparc.h, sparc-protos.h: Update accordingly. | |
1968 | * sparc.md (fp mov insns): Use fp_zero_operand directly | |
1969 | where applicable. | |
1970 | ||
32bd3974 HPN |
1971 | Wed Feb 2 02:59:45 2000 Hans-Peter Nilsson <hp@bitrange.com> |
1972 | ||
1973 | * tm.texi (Values in Registers): Fix typo in HARD_REGNO_NREGS | |
1974 | example. | |
1975 | ||
f2321837 KG |
1976 | 2000-02-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1977 | ||
1978 | * Makefile.in (specs.ready): New target. | |
1979 | (fixinc.sh): Depend on `specs.ready' instead of `specs'. | |
1980 | ||
dafb9c66 KG |
1981 | 2000-02-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1982 | ||
1983 | * fixinc.irix: Use unique filenames for writing into /tmp, | |
1984 | * fixinc.ptx: Likewise. | |
1985 | * fixinc.sco: Likewise. | |
1986 | * fixinc.svr4: Likewise. | |
1987 | * fixinc.winnt: Likewise. | |
1988 | ||
2e39bdbe KG |
1989 | 2000-02-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1990 | ||
1991 | * tsystem.h: New file. | |
1992 | ||
1993 | * Makefile.in (libgcc2.a, stmp-multilib, crtbegin.o, crtend.o, | |
1994 | s-crtS): Depend on tsystem.h. | |
1995 | ||
1996 | * crtstuff.c: Include tsystem.h. | |
1997 | * frame.c: Likewise. | |
1998 | * libgcc2.c: Likewise. | |
1999 | ||
d33ebef6 JH |
2000 | Tue Feb 1 19:53:27 CET 2000 Jan Hubicka <jh@suse.cz> |
2001 | ||
2002 | * builtins.c (expand_builtin_memset): Expand for variable sized | |
2003 | lengths too. | |
2004 | ||
ef2362a4 DB |
2005 | 2000-02-01 David Billinghurst <David.Billinghurst@riotinto.com.au> |
2006 | ||
2007 | * config/mips/iris6.h (SUBTARGET_ASM_SPEC) : Default ISA based | |
2008 | on ABI. | |
2009 | ||
c294bd99 HPN |
2010 | Tue Feb 1 00:57:40 2000 Hans-Peter Nilsson <hp@bitrange.com> |
2011 | ||
2012 | * dwarfout.c (SHORT_TYPE_SIZE): Correct default. | |
2013 | ||
2014 | * tm.texi (Type Layout): Correct entry for CHAR_TYPE_SIZE. | |
2015 | ||
5ef17dd2 CC |
2016 | 2000-01-31 Chandra Chavva <cchavva@cygnus.com> |
2017 | ||
2018 | * combine.c (try_combine) [HAVE_cc0]: Trying to check the missed | |
2019 | case 3->2 combining (combining with splitting) in which 2 is CC0 | |
2020 | setter/user and 3 is user. The rest of cases 2->1 and 3->2 are | |
2021 | checked at the begining of the function with the aid of calling | |
2022 | function 'can_combine_p'. | |
2023 | ||
a9fda12f DB |
2024 | 2000-01-31 Dave Brolley <brolley@redhat.com> |
2025 | ||
2026 | * cccp.c (struct argdata): Redeclare 'newlines' field as 'int'. | |
2027 | ||
d4cf5733 JM |
2028 | 2000-01-31 Jason Merrill <jason@casey.cygnus.com> |
2029 | ||
2030 | * jump.c (redirect_jump): Move a NOTE_INSN_FUNCTION_END to the | |
2031 | new label. | |
2032 | ||
7025bf19 KG |
2033 | 2000-01-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2034 | ||
2035 | * gansidecl.h (PROTO, VPROTO, PVPROTO): Delete macros. | |
2036 | ||
2037 | * sbitmap.h (sbitmap_first_set_bit, sbitmap_last_set_bit): | |
2038 | PROTO -> PARAMS. | |
2039 | ||
db80ee8e ZW |
2040 | 2000-01-30 Zack Weinberg <zack@wolery.cumb.org> |
2041 | ||
2042 | * i386/386bsd.h, i386/beos-pe.h, i386/bsd386.h, i386/crtdll.h, | |
2043 | i386/cygwin.h, i386/dgux.h, i386/djgpp-rtems.h, i386/djgpp.h, | |
2044 | i386/freebsd.h, i386/gnu.h, i386/i386-aout.h, i386/i386-coff.h, | |
2045 | i386/i386-interix.h, i386/i386elf.h, i386/linux.h, i386/lynx-ng.h, | |
2046 | i386/lynx.h, i386/mach.h, i386/mingw32.h, i386/moss.h, | |
2047 | i386/netbsd.h, i386/next.h, i386/openbsd.h, i386/osf1elf.h, | |
2048 | i386/ptx4-i.h, i386/rtems.h, i386/rtemself.h, i386/sco.h, | |
2049 | i386/sequent.h, i386/sun.h, i386/sysv4.h, i386/uwin.h, i386/vsta.h, | |
2050 | i386/vxi386.h, i386/win-nt.h, i386/win32.h: | |
2051 | Remove -Di386 -Acpu(i386) -Amachine(i386) from CPP_PREDEFINES. | |
2052 | ||
2053 | * i386/osf1elf.h, i386/scodbx.h, i386/seq-sysv3.h, i386/sysv5.h: | |
2054 | Add %(cpp_cpu) to CPP_SPEC. | |
2055 | ||
2056 | * i386/osf1elf.h, i386/osfelf.h, i386/osfrose.h: | |
2057 | Add %(cc1_cpu) to CC1_SPEC. | |
2058 | ||
1d682cca UD |
2059 | 2000-01-28 Ulrich Drepper <drepper@redhat.com> |
2060 | ||
2061 | * c-decl.c (c_decode_option): Accept optional numeric argument to | |
2062 | -Wformat and set warn_format. | |
2063 | * c-common.c: Don't emit warning about non-constant printf format | |
2064 | string unless warn_format > 1. | |
2065 | ||
4d32029d RH |
2066 | 2000-01-30 Richard Henderson <rth@cygnus.com> |
2067 | ||
2068 | * alpha.md (return_internal): Allow after reload only. | |
2069 | ||
eebe34b4 RH |
2070 | 2000-01-30 Richard Henderson <rth@cygnus.com> |
2071 | ||
2072 | * i386.c (ix86_compute_frame_size): Omit padding1 if the | |
2073 | local frame size is zero. | |
2074 | ||
c112e233 RH |
2075 | 2000-01-30 Richard Henderson <rth@cygnus.com> |
2076 | ||
2077 | * alpha.c (alpha_expand_epilogue): Don't emit the return insn. | |
2078 | * alpha.h (EPILOGUE_USES): New. Mark $26 live. | |
2079 | * alpha.md (return): Turn into an expander. | |
2080 | (return_internal): Don't use $26. | |
2081 | (epilogue): Emit the return insn. | |
2082 | ||
51ec054c RH |
2083 | 2000-01-30 Richard Henderson <rth@cygnus.com> |
2084 | ||
2085 | * alpha.md (negtf2, abstf2): Fix word order thinko. | |
2086 | (extendsftf2): New. | |
2087 | (trunctfsf2): Avoid intermediate rounding errors. | |
2088 | ||
a73ac7a5 ZW |
2089 | 2000-01-30 Zack Weinberg <zack@wolery.cumb.org> |
2090 | ||
2091 | * cppfiles.c (find_position): Drop 'colp' argument, return the | |
2092 | new line base. | |
2093 | (read_and_prescan): Adjust to match. Don't ever manipulate | |
2094 | line or line_base except via find_position. | |
2095 | ||
b919445a ZW |
2096 | 2000-01-29 Zack Weinberg <zack@wolery.cumb.org> |
2097 | ||
2098 | * c-parse.in: Apply Ulrich's changes from c-parse.y. | |
2099 | * c-parse.y, objc/objc-parse.y, c-parse.c, objc/objc-parse.c: | |
2100 | Regenerate. | |
2101 | ||
59495f38 ZW |
2102 | 2000-01-29 Zack Weinberg <zack@wolery.cumb.org> |
2103 | ||
2104 | * cpperror.c (cpp_file_line_for_message): If 'line' is zero, | |
2105 | just print "<command line>". If 'filename' is null or an | |
2106 | empty string, print "<stdin>" for the filename. | |
2107 | * cpplib.c (do_define): Don't print the 'location of the | |
2108 | previous definition' message if we're still parsing the | |
2109 | command line. | |
2110 | (cpp_pedwarn_with_file_and_line): Always call | |
2111 | cpp_file_line_for_message. | |
2112 | ||
607ace9b MM |
2113 | 2000-01-29 Mark Mitchell <mark@codesourcery.com> |
2114 | ||
2115 | * flow.c (mark_regs_live_at_end): Fix typo. | |
2116 | ||
e38beabc UD |
2117 | 2000-01-28 Ulrich Drepper <drepper@redhat.com> |
2118 | ||
2119 | * c-common.c: Adjust variable names, comments, help strings to c99. | |
2120 | * c-lex.c: Likewise. | |
2121 | * c-parse.y: Likewise. | |
2122 | * c-tree.h: Likewise. | |
2123 | * cccp.c: Likewise. | |
2124 | * cpplib.h: Likewise. | |
2125 | * c-decl.c: Likewise. Recognize options with names "*99" as well. | |
2126 | * cppinit.c: Likewise. | |
2127 | ||
4fda2521 HB |
2128 | 2000-01-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
2129 | ||
ea2d416a | 2130 | * c4x.h (INIT_TARGET_OPTABS): Add all missing local optab entries. |
4fda2521 HB |
2131 | * c4x.c: Define the optab rtx values. |
2132 | (c4x_add_gc_roots): Add the ggc roots for these optab rtx values. | |
2133 | (c4x_emit_libcall): Use new optab rtx values. | |
2134 | (c4x_emit_libcall3): Likewise. | |
2135 | (c4x_emit_libcall_mulhi): Likewise. | |
2136 | * c4x-protos.h: Add prototypes for optab rtx values and change | |
2137 | prototypes for above c4x_emit_libcall functions. | |
2138 | ||
dfafcb4d HB |
2139 | 2000-01-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
2140 | ||
ea2d416a | 2141 | * c4x.c (c4x_output_ascii): Restrict line length of output when TI |
dfafcb4d HB |
2142 | syntax is used. |
2143 | (c4x_function_prologue): Use regnames intead of float_reg_names when | |
2144 | TI syntax is used. | |
2145 | (c4x_function_epilogue): Likewise. | |
2146 | (c4x_print_operand): Likewise. | |
2147 | * c4x.h (HOST_WIDE_INT_PRINT_HEX): Redefine. | |
2148 | * c4x.md (set_high): Disable for TARGET_TI. | |
2149 | ||
2150 | 2000-01-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | |
ed3614cd HB |
2151 | |
2152 | * c4x.h (PREFERRED_RELOAD_CLASS): Change to restrict the reloading | |
2153 | of framepointer + constant to ADDR_REGS class. | |
2154 | * c4x.md (addqi3, addqi3_noclobber_reload): Update. | |
2155 | * c4x.c (std_or_reg_operand): New function. | |
2156 | * c4x-protos.h (std_or_reg_operand): Prototype it. | |
2157 | ||
29a963d3 HB |
2158 | 2000-01-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
2159 | ||
2160 | * t-c4x: Change qi,qf,di,df into si,sf,hi,hf to generate same | |
2161 | object names as libgcc2.c. | |
2162 | * libgcc.S: Use newly defined names. | |
2163 | ||
65169dcf JE |
2164 | Fri Jan 7 19:48:04 CET 2000 Jan Hubicka <jh@suse.cz> |
2165 | * sbitmap.c (sbitmap_first_set_bit, sbitmap_last_set_bit): New | |
2166 | function. | |
2167 | * sbitmap.h (sbitmap_first_set_bit, sbitmap_last_set_bit): Declare. | |
2168 | * basic_block.h (FLOW_LOOP_FIRST_BLOCK): New macro. | |
2169 | (FLOW_LOOP_LAST_BLOCK): Likewise. | |
2170 | ||
2171 | 2000-01-21 Michael Hayes <m.hayes@elec.canterbury.ac.nz> | |
2172 | ||
2173 | * basic-block.h (struct loop): New fields 'first' and 'last'. | |
2174 | * flow.c (flow_loops_find): Compute loop->first and loop->last. | |
2175 | (flow_loops_dump): Use loop->first to check for NOTE_INSN_LOOP_BEG | |
2176 | and loop->last to check for NOTE_INSN_LOOP_END. | |
2177 | ||
2178 | Fri Jan 28 10:57:58 2000 Jason Eckhardt <jle@cygnus.com> | |
2179 | ||
2180 | * predict.c (estimate_probability): Use the new FIRST and LAST fields | |
2181 | of the loop descriptor rather than HEADER and LATCH. Also added | |
2182 | missing break statements as well making some coding style modifications | |
2183 | as suggested by Michael Hayes. | |
2184 | ||
19d3c25c RH |
2185 | 2000-01-28 Richard Henderson <rth@cygnus.com> |
2186 | ||
2187 | * flow.c (find_basic_blocks): Remove do_cleanup argument. | |
2188 | Break out that code ... | |
2189 | (cleanup_cfg): ... here. | |
2190 | (commit_one_edge_insertion): Detect a return instruction being | |
2191 | emitted to an edge. Emit a barrier following; clear fallthru. | |
2192 | (commit_edge_insertions): Verify CFG consistency. | |
2193 | * function.c (expand_function_start): Kill unused variable. | |
2194 | (expand_function_end): Likewise. | |
2195 | (thread_prologue_and_epilogue_insns): Use insert_insn_on_edge | |
2196 | to insert the epilogue. | |
2197 | ||
2198 | * gcse.c (gcse_main): Adjust for find_basic_blocks change. | |
2199 | (delete_null_pointer_checks): Likewise. | |
2200 | * output.h: Likewise. | |
2201 | * reg-stack.c (reg_to_stack): Likewise. | |
2202 | * toplev.c (rest_of_compilation): Likewise. Run | |
2203 | thread_prologue_and_epilogue_insns after rebuilding the CFG. | |
2204 | ||
ae20388c RH |
2205 | 2000-01-28 Richard Henderson <rth@cygnus.com> |
2206 | ||
2207 | * Makefile.in (flow.o): Revert 24 Jan change. | |
2208 | * flow.c (mark_regs_live_at_end): Likewise. Force BLKmode | |
2209 | FUNCTION_VALUE result to DECL_RESULT's mode. | |
2210 | ||
47e6ea66 RH |
2211 | * haifa-sched.c (schedule_insns): Don't recompute reg info |
2212 | after reload. | |
2213 | ||
a3e0a73b ZW |
2214 | 2000-01-28 Zack Weinberg <zack@wolery.cumb.org> |
2215 | ||
2216 | * configure.in: Make --enable-cpplib the default. | |
2217 | * configure: Regenerate. | |
2218 | * gcc.dg/990119-1.c: No longer expected to fail. | |
2219 | ||
52bea684 BS |
2220 | 2000-01-28 Bernd Schmidt <bernds@cygnus.co.uk> |
2221 | ||
2222 | * jump.c (jump_optimize_1): Delete an optimization that is also done | |
2223 | by merge_blocks in flow. | |
2224 | ||
b9ff4814 KG |
2225 | 2000-01-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2226 | ||
2227 | * diagnostic.c (build_message_string, output_printf, | |
2228 | line_wrapper_printf): Add ATTRIBUTE_PRINTF_*. | |
2229 | (build_location_prefix): Fix non-literal format string. | |
2230 | ||
138eff91 RH |
2231 | 2000-01-27 Richard Henderson <rth@cygnus.com> |
2232 | ||
ea2d416a | 2233 | * alpha.md (trunctfsf2): New. |
138eff91 | 2234 | |
cd038ac2 AH |
2235 | 2000-01-27 Andrew Hobson <ahobson@eng.mindspring.net> |
2236 | ||
2237 | * configure.in (alpha-dec-osf5): Enable MASK_SUPPORT_ARCH. | |
2238 | ||
75ec21db ZW |
2239 | 2000-01-27 Zack Weinberg <zack@wolery.cumb.org> |
2240 | ||
2241 | * cppinit.c (cpp_handle_option): Recognize C++ comments under | |
2242 | -std=gnu89. | |
2243 | * cpplib.c (skip_block_comment, skip_line_comment): Split code | |
2244 | out of... | |
2245 | (skip_comment) ... here. Permit C++ comments in system | |
2246 | headers always. Warn about C++ comments in user code under | |
2247 | -std=gnu89 -pedantic. | |
2248 | (copy_comment): Use skip_comment. | |
2249 | (cpp_skip_hspace, cpp_get_token): skip_comment can no longer | |
2250 | return EOF. | |
2251 | (consider_directive_while_skipping, do_else, do_endif): Call | |
2252 | validate_else unconditionally. | |
2253 | (validate_else): Check CPP_PEDANTIC here. Accept non-comment | |
2254 | text after the conditional in a system header. | |
2255 | * cpplib.h (struct cpp_buffer): Add flag | |
2256 | warned_cplusplus_comments. | |
2257 | ||
d1b81779 GK |
2258 | 2000-01-27 Geoffrey Keating <geoffk@cygnus.com> |
2259 | ||
2260 | * emit-rtl.c (unshare_all_rtl): Unshare virtual parameters too. | |
2261 | Use unshare_all_rtl_1. | |
2262 | (unshare_all_rtl_again): New function. | |
2263 | (unshare_all_rtl_1): New function split out of unshare_all_rtl. | |
2264 | ||
2265 | * function.c (purge_addressof_1): Use unshare_all_rtl_again | |
2266 | rather than resetting the 'used' flags ourself. | |
2267 | ||
2268 | * toplev.c (rest_of_compilation): Add current_function_decl | |
2269 | to the unshare_all_rtl call. | |
2270 | * tree.h: Prototype unshare_all_rtl. | |
2271 | * rtl.h: Prototype unshare_all_rtl_again here. | |
2272 | ||
2273 | 2000-01-27 Geoffrey Keating <geoffk@cygnus.com> | |
3bc9f12b GK |
2274 | |
2275 | * genoutput.c (output_prologue): Include ggc.h in generated | |
2276 | files. | |
2277 | * Makefile.in (insn-output.o): Depends on ggc.h. | |
2278 | ||
4c54e4e4 ID |
2279 | 2000-01-27 Ian Dall <ian@sibyl.beware.dropbear.id.au> |
2280 | Hans-Peter Nilsson <hp@bitrange.com> | |
2281 | ||
2282 | * ns32k/xm-ns32k.h (memcpy, memset, memcmp): Delete. | |
2283 | Remove redundant include of xm-ns32k.h. | |
2284 | * ns32k/xm-genix.h (memcpy, memset, memcmp): Add definitions. | |
2285 | Remove redundant include of xm-ns32k.h. | |
2286 | * ns32k/xm-netbsd.h (memcpy, memset, memcmp): No longer undefine. | |
2287 | Remove redundant include of xm-ns32k.h. | |
2288 | * ns32k/netbsd.h (TARGET_DEFAULT): Enable multiply-add instructions. | |
2289 | ||
2290 | * ns32k/ns32k.h: Update comment on multiply-add instructions. | |
0843179b | 2291 | (TARGET_SWITCHES): Add documentation strings. |
4c54e4e4 ID |
2292 | (DWARF_FRAME_REGNUM): Override default definition. |
2293 | (REG_CLASS_CONTENTS): Add comments. | |
2294 | (SUBSET_P): Format to reduce line length. | |
2295 | (SMALL_REGISTER_CLASSES): Make a run time option. | |
2296 | (GO_IF_NONINDEXED_ADDRESS): Reformat. | |
2297 | (GO_IF_LEGITIMATE_ADDRESS): Ensure that cfun is non NULL before | |
0843179b | 2298 | dereferencing it. Braces to avoid "ambiguous else" were misplaced. |
4c54e4e4 ID |
2299 | (regclass_map): fix typo in comment. |
2300 | * ns32k/ns32k.c: Add spaces before parentheses for consistant style. | |
2301 | Prefer gen_rtx_FOO(...) to gen_rtx(FOO,...). | |
2302 | (trace, reg_or_mem_operand): Delete, unused function. | |
2303 | (calc_address_cost): Small offsets are cheaper than large ones. | |
2304 | (expand_block_move): Generate more efficient code when bytes is a | |
0843179b | 2305 | known at compile time. |
4c54e4e4 ID |
2306 | * ns32k/ns32k.md: Alternate constraints for multiply-add instructions. |
2307 | (udivmodsi4, udivmodhi4, udivmodqi4): Use nonimmediate_operand | |
10b52f46 | 2308 | instead of reg_or_mem_operand. |
0843179b | 2309 | |
4c54e4e4 ID |
2310 | * ns32k/ns32k.md: Use nonimmediate_operand or stricter for outputs, |
2311 | not general_operand. Similarly use "=rm" or stricter, not "=g". | |
2312 | For input operands, use stricter constraints than "g" if not | |
2313 | general_operand. Similarly use stricter predicate than | |
2314 | "general_operand" when stricter constraints than "g" are present, | |
2315 | except for matching constraints. | |
2316 | (movstrsi): Use "memory_operand" for operands 0 and 1. | |
2317 | (truncsiqi2, truncsihi2, trunchiqi2): Remove. | |
2318 | (udivmoddisi4_internal): Use nonimmediate_operand for operand 0, | |
2319 | not reg_or_mem_operand. | |
2320 | (udivmoddisi4): Ditto. | |
2321 | Use nonimmediate_operand for operand 1, not reg_or_mem_operand. | |
2322 | Use nonimmediate_operand for operand 3, not register_operand. | |
2323 | (udivmoddiqi4_internal): Use register_operand for operand 1, not | |
2324 | reg_or_mem_operand. | |
2325 | ||
899905f6 FF |
2326 | 2000-01-27 Fred Fish <fnf@be.com> |
2327 | ||
2328 | * gthr-posix.h: Fix typo; compatibily -> compatibility. | |
2329 | * gthr-single.h: Likewise. | |
2330 | * gthr-solaris.h: Likewise. | |
2331 | * gthr-vxworks.h: Likewise. | |
2332 | * gthr-win32.h: Likewise. | |
2333 | * gthr.h: Likewise. | |
2334 | ||
9082f847 ZW |
2335 | 2000-01-27 Zack Weinberg <zack@wolery.cumb.org> |
2336 | ||
2337 | * cppinit.c: Add " (cpplib)" to end of string printed by | |
2338 | -v / --version. | |
2339 | ||
01b9e84e RH |
2340 | 2000-01-27 Richard Henderson <rth@cygnus.com> |
2341 | ||
2342 | * alpha.c (alpha_emit_conditional_move): Use VOIDmode when | |
2343 | testing for a signed comparison. | |
2344 | (alpha_emit_floatuns): New. | |
2345 | * alpha-protos.h: Declare it. | |
2346 | * alpha.md (floatunsdisf2, floatunsdidf2): New. | |
2347 | (extendsfdf2): Tidy. | |
2348 | ||
31cedf89 JJ |
2349 | 2000-01-27 Jakub Jelinek <jakub@redhat.com> |
2350 | ||
2351 | * config/sparc/linux64.h (CC1_SPEC): If compiling -m32 with -g but | |
2352 | no -g option specifying debugging format, default to -gstabs+. | |
2353 | ||
0843179b | 2354 | Wed Jan 26 22:19:14 1999 J"orn Rennecke <amylaar@cygnus.co.uk> |
e09d24ff R |
2355 | |
2356 | * calls.c (special_function_p): New argument fork_or_exec. | |
2357 | (expand_call): When profile_arc_flag is set and the function | |
2358 | is in the fork_or_exec group, call __bb_fork_func first. | |
2359 | * libgcc2.c, _bb module (__bb_fork_func): New function. | |
2360 | (__bb_exit_func): If fcntl F_SETLKW is available, use it to lock | |
2361 | output file. | |
2362 | * config/svr4.h (TARGET_HAS_F_SETLKW): Define. | |
2363 | * tree.h (special_function_p): Update prototype. | |
2364 | ||
628d74de RH |
2365 | 2000-01-26 Richard Henderson <rth@cygnus.com> |
2366 | ||
2367 | * alpha.c (alpha_split_tfmode_pair): New. | |
2368 | * alpha-protos.h: Declare it. | |
2369 | * alpha.md (abstf2, negtf2): New. | |
2370 | (movtf insn): Add input G constraint. | |
2371 | (movtf splitter): Use alpha_split_tfmode_pair. | |
2372 | ||
c96a8082 KG |
2373 | 2000-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2374 | ||
2375 | * i386/cygwin.h: PROTO -> PARAMS. | |
2376 | ||
5c5c34a4 JJ |
2377 | 2000-01-26 Jakub Jelinek <jakub@redhat.com> |
2378 | ||
2379 | * config/sparc/sparc.c (sparc_emit_float_lib_cmp): Handle | |
2380 | TARGET_ARCH32 again. Handle ORDERED, UN* and LTGT comparisons | |
2381 | using _Qp_cmp/_Q_cmp and testing the return value. | |
2382 | (print_operand): Call reverse_condition_maybe_unordered if | |
2383 | we are handling CCFPmode or CCFPEmode. | |
2384 | Handle ORDERED, UN* and LTGT comparisons. | |
2385 | * config/sparc/sparc.md (cmptf): Use even on TARGET_ARCH32 | |
2386 | if not TARGET_HARD_QUAD. | |
2387 | (seq, sne, sgt, slt, sge, sle, beq, bne, bgt, blt, bge, ble, | |
2388 | bunordered, bordered, bungt, bunlt, buneq, bunge, bunle, bltgt): | |
2389 | Call sparc_emit_float_lib_cmp even on TARGET_ARCH32. | |
2390 | Adjust gen_b* calls so that they reflect return comparison of | |
2391 | sparc_emit_float_lib_cmp. | |
2392 | ||
c77f46c6 AO |
2393 | 2000-01-26 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
2394 | ||
2395 | * config/alpha/alpha.c (alpha_emit_xfloating_cvt): Do not assume | |
2396 | incoming operands array is large enough for one more operand. | |
2397 | (alpha_emit_xfloating_arith): Likewise. | |
2398 | ||
cef40e9f ZW |
2399 | 2000-01-25 Zack Weinberg <zack@wolery.cumb.org> |
2400 | ||
2401 | * fixinc/Makefile.in (machname.h): SunOS 4 sed can't handle a | |
2402 | file with one line and no trailing newline. | |
2403 | Patch by Kaveh Ghazi <ghazi@caip.rutgers.edu>. | |
2404 | * fixinc/fixtests.c (machine_name_test): Fix fencepost error | |
2405 | checking if the match is on the line. | |
2406 | * fixinc/gnu-regex.c: Provide regerror not __regerror. | |
2407 | ||
5850dc00 RH |
2408 | 2000-01-25 Richard Henderson <rth@cygnus.com> |
2409 | ||
2410 | * sparc.c (output_cbranch): Fix accidental squashing of the | |
2411 | fp branch pre-delay nop. | |
2412 | ||
7913f3d0 RH |
2413 | 2000-01-25 Richard Henderson <rth@cygnus.com> |
2414 | ||
2415 | * tree.def (UNNE_EXPR): Remove. | |
2416 | * c-typeck.c (build_binary_op): Don't handle it. | |
2417 | * expr.c (expand_expr, do_jump, do_store_flag): Likewise. | |
2418 | ||
2419 | * rtl.def (UNNE): Remove. | |
2420 | (LTGT): Add. | |
2421 | * jump.c (reverse_condition): Update accordingly. | |
2422 | (swap_condition): Likewise. | |
2423 | (comparison_dominates_p): Handle unordered comparisons. | |
2424 | (reverse_condition_maybe_unordered): New. | |
2425 | * rtl.h (reverse_condition_maybe_unordered): Declare. | |
2426 | ||
2427 | * sparc.c (select_cc_mode): Update for UNNE/LTGT. | |
2428 | (output_cbranch): Use reverse_condition_maybe_unordered and LTGT. | |
2429 | * sparc.h (REVERSIBLE_CC_MODE): Always true. Update docs. | |
2430 | * sparc.md (bltgt): New. | |
2431 | ||
78340c9f NC |
2432 | 2000-01-25 Nick Clifton <nickc@redhat.com> |
2433 | ||
2434 | * emit-rtl.c (emit_insn): Only check machine class insns for | |
2435 | improper emission of a RETURN. | |
2436 | ||
7554ad67 RH |
2437 | 2000-01-25 Richard Henderson <rth@cygnus.com> |
2438 | ||
2439 | * Makefile.in (flow.o): Depend on $(EXPR_H). | |
2440 | * flow.c (mark_regs_live_at_end): Use hard_function_value, i.e. | |
2441 | duplicate the structure of diddle_return_value for keeping regs live. | |
2442 | ||
0534b804 MH |
2443 | 2000-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2444 | ||
2445 | * loop.c (current_loop_info): Delete. | |
2446 | (consec_sets_invariant_p): Add loop argument, update callers. | |
2447 | (get_condition_for_loop): Likewise. | |
2448 | (count_nonfixed_reads, update_giv_derive): Likewise. | |
2449 | (simplify_giv_expr, general_induction_var): Likewise. | |
2450 | (consec_sets_giv, recombine_givs): Likewise. | |
2451 | (move_movables): Delete loop_start and loop_end arguments, | |
2452 | add loop argument, and update callers. | |
2453 | (find_mem_givs, check_final_value): Likewise. | |
2454 | (record_giv, maybe_eliminate_biv, maybe_eliminate_biv_1): Likewise. | |
2455 | (loop_invariant_p): Rename from invariant_p, add loop argument, and | |
2456 | update callers. | |
2457 | (basic_induction_var): Add loop argument, delete loop_level argument, | |
2458 | and update callers. | |
2459 | * unroll.c (iteration_info): Delete loop_start and loop_end arguments, | |
2460 | add loop argument, and update callers. | |
2461 | (find_splittable_regs, find_splittable_givs): Likewise. | |
2462 | (reg_dead_after_loop, loop_find_equiv_value): Likewise. | |
2463 | (final_biv_value, final_giv_value, back_branch_in_range_p): Likewise. | |
2464 | (biv_total_increment): Delete loop_start and loop_end arguments; | |
2465 | update callers. | |
2466 | (precondition_loop_p): Delete loop_start and loop_info arguments; | |
2467 | update callers. | |
2468 | * loop.h (get_condition_for_loop): Add loop argument. | |
2469 | (biv_total_increment): Delete loop_start and loop_end arguments. | |
2470 | (precondition_loop_p): Delete loop_start and loop_info arguments; | |
2471 | add loop argument. | |
2472 | (final_biv_value): Delete loop_start and loop_end arguments; | |
2473 | add loop argument. | |
2474 | (final_giv_value, back_branch_in_range_p): Likewise. | |
2475 | ||
8e466531 GRK |
2476 | 2000-01-25 Gavin Romig-Koch <gavin@cygnus.com> |
2477 | ||
2478 | * config/mips/mips.h (LEGITIMATE_CONSTANT_P): Fix for mips16. | |
2479 | ||
490cab72 GRK |
2480 | 2000-01-25 Gavin Romig-Koch <gavin@cygnus.com> |
2481 | ||
2482 | * Makefile.in (c-gperf.h) : Change the "See" pointer to | |
2483 | point to the new "generated_files" doc. | |
2484 | ||
8c135f84 CP |
2485 | 2000-01-25 Clinton Popetz <cpopetz@cygnus.com> |
2486 | ||
2487 | * config/fp-bit.c (_unord_f2): Fix typo. | |
2488 | ||
4dd7201e ZW |
2489 | 2000-01-25 Zack Weinberg <zack@wolery.cumb.org> |
2490 | ||
2491 | * c-common.c, c-decl.c, c-lang.c, c-lex.c, c-parse.in, c-pragma.c, | |
2492 | c-typeck.c, objc/objc-act.c: Remove all references to obstack | |
2493 | functions obsoleted by GC, such as push_obstacks_nochange, | |
2494 | end_temporary_allocation, savealloc, saveable_tree_cons, etc. | |
2495 | and code which existed only to decide whether or not to call | |
2496 | them. Remove now-unused NESTED argument from start_function; | |
2497 | all callers changed. Do not change behavior based on ggc_p. | |
2498 | The use of the ixp_obstack in c-iterate.c and the util_obstack | |
2499 | in objc/objc-act.c remain; these are not obsoleted by garbage | |
2500 | collection. | |
2501 | * c-tree.h: Update prototype for start_function. | |
2502 | ||
2503 | * c-parse.y, c-parse.c, objc/objc-parse.c, objc/objc-parse.y: Rebuild. | |
2504 | ||
b5031ab7 CP |
2505 | 2000-01-25 Clinton Popetz <cpopetz@cygnus.com> |
2506 | ||
2507 | * config/mips/mips.md (zero_extendsidi2_internal): Disable for | |
2508 | mips16. | |
2509 | ||
e267e177 RH |
2510 | 2000-01-25 Richard Henderson <rth@cygnus.com> |
2511 | ||
2512 | * sparc-protos.h (select_cc_mode): Declare. | |
2513 | * sparc.c (select_cc_mode): New. Handle unordered compares. | |
2514 | (output_cbranch): Always reverse via code change. Handle | |
2515 | unordered compares. Factor tests and string updates. | |
2516 | * sparc.h (SELECT_CC_MODE): Split out to select_cc_mode. | |
2517 | (REVERSIBLE_CC_MODE): Also exclude CCFPmode. | |
2518 | * sparc.md (bunordered, bordered): New. | |
2519 | (bungt, bunlt, buneq, bunge, bunle): New. | |
2520 | ||
ef8288f7 RH |
2521 | 2000-01-25 Richard Henderson <rth@cygnus.com> |
2522 | ||
2523 | * dwarf2out.c (dwarf2out_init): Use ggc_add_rtx_varray_root. | |
2524 | * ggc-common.c (ggc_add_rtx_varray_root): New. | |
2525 | (ggc_mark_rtx_varray): New. | |
2526 | (ggc_mark_rtx_varray_ptr): New. Shift all ggc_mark_foo_ptr | |
2527 | functions down below ggc_mark_foo. | |
2528 | * ggc.h (ggc_add_rtx_varray_root, ggc_mark_rtx_varray): Declare. | |
2529 | ||
41bd3d41 RH |
2530 | 2000-01-25 Richard Henderson <rth@cygnus.com> |
2531 | ||
2532 | * alpha.c (secondary_reload_class): Don't allocate a secondary | |
2533 | for integral mode memories into FLOAT_REGS. Rearrange the more | |
2534 | complicated memory expression inward. | |
2535 | ||
3be1fb72 ZW |
2536 | 2000-01-25 Zack Weinberg <zack@wolery.cumb.org> |
2537 | ||
2538 | * inclhack.def: Fixes to play nicer with FreeBSD, and | |
2539 | corrections to comments. | |
2540 | (cxx_unready): Add select expression. | |
2541 | (irix_sockaddr): Add bypass expression. | |
2542 | (machine_ansi_h_va_list): New fix. | |
2543 | (stdio_va_list): No need to edit _BSD_VA_LIST_. | |
2544 | Split out addition of "#include <stdarg.h>" to... | |
2545 | (stdio_stdarg_h): ... here. | |
2546 | (systypes_for_aix): Rename to systypes_stdlib_size_t. Apply | |
2547 | to stdlib.h also. Do not munge _BSD_SIZE_T_. | |
2548 | (sysz_stdlib_for_sun): Delete duplicate fix for unprotected | |
2549 | size_t. | |
2550 | (ultrix_ifdef): Tighten up select expression. | |
2551 | ||
2552 | * fixincl.tpl: Exorcise 'exesel'. Rewrite calculations of | |
2553 | re_ct and max_mach to avoid use of shell. Make printed names | |
2554 | match names in inclhack.def. Use static copyright date. | |
2555 | Don't count c_test and test expressions as requiring regex_t | |
2556 | slots. Add some commentary. | |
2557 | * inclhack.tpl: Do not include the 'This script contains N | |
2558 | fixup scripts' line if PROGRAM is defined. Use static | |
2559 | copyright date. | |
2560 | ||
1865dbb5 JM |
2561 | 2000-01-24 Jason Merrill <jason@casey.cygnus.com> |
2562 | ||
2563 | * dwarf2out.c: include "varray.h", not dyn-string.h. | |
2564 | (ASM_OUTPUT_DWARF2_ADDR_CONST, ASM_NAME_TO_STRING): Lose. | |
2565 | (addr_const_to_string, addr_to_string): Lose. | |
2566 | (ASM_OUTPUT_DWARF_ADDR_CONST): Copy from dwarfout.c. | |
2567 | (struct dw_val_struct): val_addr is now an rtx. | |
2568 | (add_AT_addr, AT_addr, free_AT, output_aranges): Adjust. | |
2569 | (used_rtx_varray): New varray. | |
2570 | (dwarf2out_init): Initialize it. | |
2571 | (save_rtx): New fn. | |
2572 | (mem_loc_descriptor, add_const_value_attribute): Call it instead of | |
2573 | addr_to_string. | |
0843179b | 2574 | * arm/telf.h, arm/unknown-elf.h, mn10200.h, mn10300.h, |
1865dbb5 JM |
2575 | sparc/sp64-elf.h: Remove definition of ASM_OUTPUT_DWARF2_ADDR_CONST. |
2576 | * Makefile.in (dwarf2out.o): Update dependencies. | |
2577 | ||
2578 | 2000-01-24 Richard Henderson <rth@cygnus.com> | |
2579 | ||
2580 | * i386.c (i386_dwarf_output_addr_const): New. | |
2581 | * i386.h (ASM_OUTPUT_DWARF_ADDR_CONST): New. | |
2582 | ||
2583 | * dwarf2out.c (mem_loc_descriptor): Call ASM_SIMPLIFY_DWARF_ADDR | |
2584 | if defined. | |
2585 | * dwarfout.c (output_mem_loc_descriptor): Likewise. | |
2586 | * i386.c (i386_simplify_dwarf_addr): New. | |
2587 | * i386.h (ASM_SIMPLIFY_DWARF_ADDR): New. | |
2588 | ||
65e1263a JW |
2589 | Mon Jan 24 16:56:10 2000 Jim Wilson <wilson@cygnus.com> |
2590 | ||
2591 | * dwarf2out.c (gen_struct_or_union_type_die): Set complete if | |
2592 | TYPE_STUB_DECL is NULL. | |
2593 | ||
5eda3d66 RH |
2594 | 2000-01-24 Richard Henderson <rth@cygnus.com> |
2595 | ||
2596 | * builtins.c (expand_tree_builtin): Move ... | |
2597 | * c-common.c (expand_tree_builtin): ... here. | |
2598 | ||
52b38064 MH |
2599 | 2000-01-25 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2600 | ||
2601 | * loop.h (LOOP_INFO): New accessor macro. | |
2602 | * basic-block.h (struct loop): Rename field `info' to `aux'. | |
2603 | * loop.c (scan_loop): Replace loop->info with LOOP_INFO (loop). | |
2604 | (prescan_loop, strength_reduce, check_dbra_loop, insert_bct): Likewise. | |
2605 | * unroll.c (loop_iterations, unroll_loop): Likewise. | |
2606 | ||
a1e3399a CF |
2607 | 2000-01-24 Christopher Faylor <cgf@cygnus.com> |
2608 | ||
2609 | * config/i386/t-cygwin: Accomodate new winsup directory layout | |
2610 | when searching for include files. | |
2611 | ||
1eb8759b RH |
2612 | 2000-01-24 Richard Henderson <rth@cygnus.com> |
2613 | ||
2614 | * rtl.def: Add unordered fp comparisions. | |
2615 | * tree.def: Likewise. | |
2616 | * tree.h: Add ISO C 9x unordered fp comparision builtins. | |
2617 | ||
2618 | * builtins.c (expand_tree_builtin): New function. | |
2619 | * c-typeck.c (build_function_call): Use it. | |
2620 | (build_binary_op): Support unordered compares. | |
2621 | * c-common.c (c_common_nodes_and_builtins): Add unordered compares. | |
2622 | ||
2623 | * combine.c (known_cond): Handle reverse_condition returning UNKNOWN. | |
2624 | (reversible_comparison_p): Allow UNORDERED/ORDERED to be reversed. | |
2625 | * cse.c (fold_rtx): Check FLOAT_MODE_P before reversing. | |
2626 | (record_jump_equiv): Handle reverse_condition returning UNKNOWN. | |
2627 | * jump.c (reverse_condition): Don't abort for UNLE etc, but | |
2628 | return UNKNOWN. | |
2629 | (swap_condition): Handle unordered compares. | |
2630 | (thread_jumps): Check can_reverse before reversing. | |
2631 | * loop.c (get_condition): Likewise. Allow UNORERED/ORDERED to be | |
2632 | reversed for FP. | |
2633 | ||
2634 | * optabs.c (can_compare_p): New argument CODE. Verify branch or | |
2635 | setcc is present before acking for cmp_optab. Update all callers. | |
2636 | (prepare_float_lib_cmp, init_optabs): Handle UNORDERED. | |
2637 | * expmed.c (do_cmp_and_jump): Update for can_compare_p. | |
2638 | * expr.c (expand_expr): Likewise. Support unordered compares. | |
2639 | (do_jump, do_store_flag): Likewise. | |
2640 | * expr.h (enum libfunc_index): Add unordered compares. | |
2641 | ||
2642 | * Makefile.in (FPBIT_FUNCS): Add _unord_sf. | |
2643 | (DPBIT_FUNCS): Add _unord_df. | |
2644 | * config/fp-bit.c (_unord_f2): New. | |
2645 | * fp-test.c (main): Try unordered compare builtins. | |
2646 | ||
2647 | * alpha-protos.h (alpha_fp_comparison_operator): Declare. | |
2648 | * alpha.c (alpha_comparison_operator): Check mode properly. | |
2649 | (alpha_swapped_comparison_operator): Likewise. | |
2650 | (signed_comparison_operator): Likewise. | |
2651 | (alpha_fp_comparison_operator): New. | |
2652 | (alpha_emit_conditional_branch): Handle unordered compares. | |
2653 | * alpha.h (PREDICATE_CODES): Update. | |
2654 | * alpha.md (fp compares): Use alpha_fp_comparison_operator. | |
2655 | (bunordered, bordered): New. | |
2656 | ||
d6cde845 RH |
2657 | 2000-01-24 Richard Henderson <rth@cygnus.com> |
2658 | ||
2659 | * alpha.c (alpha_emit_xfloating_cvt): Thinko in operand manipulation. | |
2660 | * alpha.md (movtf): New expander, insn, and splitter. | |
2661 | ||
eedf2f55 JH |
2662 | Mon Jan 24 19:49:47 MET 2000 Jan Hubicka <jh@suse.cz> |
2663 | ||
2664 | * reg-stack.c (subst_stack_regs_pat): Handle correctly USEs of | |
2665 | dead registers. | |
2666 | ||
564d80f4 JH |
2667 | Mon Jan 24 17:37:31 MET 2000 Jan Hubicka <jh@suse.cz> |
2668 | ||
2669 | * i386.h (FIRST_PSEUDO_REGISTER): Set to 21. | |
2670 | (FIXED_REGISTERS, CALL_USED_REGISTERS, | |
2671 | REG_ALLOC_ORDER): Add frame pointer | |
2672 | (FRAME_POINTER_REGNUM): Set to 20 | |
2673 | (HARD_FRAME_POINTER_REGNUM): New macro. | |
2674 | (ELIMINABLE_REGS): Eliminate ARG_POINTER and FRAME_POINTER | |
2675 | to HARD_FRAME_POINTER. | |
2676 | (REGNO_OK_FOR_BASE_P): Accept FRAME_POINTER_REGNUM | |
2677 | (REG_OK_FOR_INDEX_NONSTRICT_P): Likewise. | |
2678 | (REG_OK_FOR_BASE_NONSTRICT_P): Likewise. | |
2679 | (HI_REGISTER_NAMES): Add "frame". | |
2680 | (CAN_ELIMINATE): Handle FRAME_POINTER_REGNUM elimination. | |
2681 | (debug_reg): Handle FRAME_POINTER_REGNUM. | |
2682 | (reg_class): Add arg pointer and frame pointer to NON_Q_REGS, | |
2683 | GENERAL_REGS and INDEX_REGS. | |
2684 | * i386.c (SAVED_REGS_FIRST): new macro. | |
2685 | (AT_BP): Use hard_frame_pointer_rtx instead of frame_pointer_rtx | |
2686 | (ix86_decompose_address, memory_address_length): Likewise. | |
2687 | (regclass_map): Add frame pointer. | |
2688 | (call_insn_operand): Handle frame_pointer_rtx. | |
2689 | (reg_no_sp_operand): Likewise. | |
2690 | (ix86_decompose_address): Handle frame_pointer_rtx as stack_pointer_rtx. | |
2691 | (print_operand, legitimize_pic_address): Fix formating. | |
2692 | (ix86_compute_frame_size): Make static, update prototype, new | |
2693 | parameters padding1, padding2, use ix86_nsaved_regs, use | |
2694 | stack_alignment_needed. | |
2695 | (ix86_initial_elimination_offset): Handle FRAME_POINTER_REGNUM | |
2696 | to HARD_FRAME_POINTER_REGNUM conversions. | |
2697 | (ix86_expand_prologue): Handle SAVED_REGS_FIRST prologues. | |
2698 | (ix86_expand_epilogue): Handle SAVED_REGS_FIRST epilogues. | |
2699 | (print_reg): Abort on FRAME_POINTER_REGNUM | |
2700 | ||
2247f6ed JH |
2701 | Mon Jan 24 16:50:08 MET 2000 Jan Hubicka <jh@suse.cz> |
2702 | ||
2703 | * i386.h (PREDICATE_CODES): Add aligned_operand. | |
2704 | * i386.c (aligned_operand): New function. | |
2705 | (ix86_aligned_p): Kill. | |
2706 | * i386.md (movhi_1): Emit mov for aligned operands. | |
2707 | (promoting peep2s): Use aligned_operand. | |
2708 | ||
3a2e9dd2 ZW |
2709 | 2000-01-23 Zack Weinberg <zack@wolery.cumb.org> |
2710 | ||
2711 | * fixinc/fixfixes.c (fix_char_macro_uses): Correct regular | |
2712 | expression to allow underscores in macro names. | |
2713 | (fix_char_macro_defines): Increment scanning pointer. | |
2714 | ||
5495cc55 RH |
2715 | 2000-01-23 Richard Henderson <rth@cygnus.com> |
2716 | ||
2717 | * alpha/osf.h (TARGET_HAS_XFLOATING_LIBS): Define. | |
2718 | * alpha/osf5.h: New file. | |
2719 | * configure.in (alpha-*-osf5): Add it to tm_file. | |
2720 | ||
2721 | * emit-rtl.c (operand_subword): Support TFmode on a 64-bit target. | |
2722 | ||
2723 | * alpha-protos.h (alpha_emit_xfloating_arith): Declare. | |
2724 | (alpha_emit_xfloating_cvt, function_arg): Declare. | |
2725 | * alpha.c (alpha_emit_conditional_branch): Call | |
2726 | alpha_emit_xfloating_compare for TFmode compares. | |
2727 | (alpha_lookup_xfloating_lib_func): New. | |
2728 | (alpha_compute_xfloating_mode_arg): New. | |
2729 | (alpha_emit_xfloating_libcall): New. | |
2730 | (alpha_emit_xfloating_arith): New. | |
2731 | (alpha_emit_xfloating_compare): New. | |
2732 | (alpha_emit_xfloating_cvt): New. | |
2733 | (print_operand): Add default abort case. | |
2734 | (function_arg): Mind FUNCTION_ARG_PASS_BY_REFERENCE. | |
2735 | * alpha.h (TARGET_HAS_XFLOATING_LIBS): New. | |
2736 | (BIGGEST_ALIGNMENT): Increase to 128 bits. | |
2737 | (RETURN_IN_MEMORY): True for TF/TCmode. | |
2738 | (ALPHA_ARG_SIZE): TF/TCmode is passed indirect. | |
2739 | (FUNCTION_ARG): Move to function_arg. | |
2740 | (FUNCTION_ARG_PASS_BY_REFERENCE): New. | |
2741 | (ASM_OUTPUT_LONG_DOUBLE): New. | |
2742 | (ASM_OUTPUT_DOUBLE): Always output bits. | |
2743 | * alpha.md (addtf3, divtf3, multf3, subtf3, cmptf): New. | |
2744 | (fix_trunctfdi2, floatditf2, floatunsditf2): New. | |
2745 | (extenddftf2, trunctfdf2): New. | |
2746 | ||
ac490444 AO |
2747 | 2000-01-23 Alexandre Oliva <oliva@lsd.ic.unicamp.br> |
2748 | ||
2749 | * config/sparc/sol2-sld-64.h (TRANSFER_FROM_TRAMPOLINE): Moved... | |
2750 | * config/sparc/sol2.h: ... here. | |
2751 | ||
d6181b1b MH |
2752 | 2000-01-24 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2753 | ||
2754 | * basic-block.h (struct loops): New field `levels'. | |
2755 | * flow.c (flow_loops_level_compute): Traverse all outer loops. | |
2756 | (flow_loop_level_compute): Initialise level to 1. | |
2757 | (flow_loops_find): Set loops->levels. | |
2758 | (flow_loops_dump): Print loops->levels. | |
2759 | ||
7e259f25 RH |
2760 | 2000-01-23 Richard Henderson <rth@cygnus.com> |
2761 | ||
2762 | * libgcc2.c (dwarf_reg_size_table): Size with DWARF_FRAME_REGISTERS. | |
2763 | (throw_helper): Iterate over DWARF_FRAME_REGISTERS. | |
2764 | ||
83774849 RH |
2765 | 2000-01-23 Richard Henderson <rth@cygnus.com> |
2766 | ||
2767 | * i386.c (dbx_register_map, svr4_dbx_register_map): New. | |
2768 | * i386.h (DBX_REGISTER_NUMBER): Use them. | |
2769 | * i386/beos-elf.h, i386/freebsd-elf.h, i386/i386elf.h: Likewise. | |
2770 | * i386/linux.h, i386/osfrose.h, i386/ptx4-i.h: Likewise. | |
2771 | * i386/rtemself.h, i386/sco5.h, i386/sysv4.h: Likewise. | |
2772 | * i386/sequent.h: Kill incorrect comment. | |
2773 | ||
ae373eda MM |
2774 | 2000-01-23 Mark Mitchell <mark@codesourcery.com> |
2775 | ||
2776 | * ggc-page.c (struct page_entry): Make `context_depth' an | |
2777 | `unsigned short'. | |
d416576b | 2778 | (struct globals): Likewise. |
ae373eda | 2779 | |
5c75f60e CP |
2780 | 2000-01-23 Clinton Popetz <cpopetz@cygnus.com> |
2781 | ||
2782 | * loop.c (check_dbra_loop): When checking a loop for | |
2783 | reversability, check the source of any stores to ensure | |
2784 | they don't depend on an initial value. | |
2785 | ||
7bea4e7a MH |
2786 | 2000-01-23 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2787 | ||
2788 | * config/c4x/c4x.h (ASM_OUTPUT_BSS): Redefine. | |
2789 | ||
ae5c839b ZW |
2790 | 2000-01-22 Zack Weinberg <zack@wolery.cumb.org> |
2791 | ||
0843179b | 2792 | * fixinc/fixincl.c: Move declarations of 'pz_fname' and |
ae5c839b ZW |
2793 | 'pz_scan' into scope of entire function. Only affects |
2794 | compiles with -DDEBUG. | |
2795 | ||
e8c3586a AM |
2796 | 2000-01-22 Alan Modra <alan@SPRI.Levels.UniSA.Edu.Au> |
2797 | ||
1eb8759b RH |
2798 | * config/elfos.h (UNIQUE_SECTION): Restore uninitialised data |
2799 | section naming to that prior to 2000-01-07 patch. | |
e8c3586a AM |
2800 | * config/mips/elf.h (UNIQUE_SECTION): Ditto. |
2801 | * config/mips/elf64.h (UNIQUE_SECTION): Ditto. | |
2802 | * config/mips/iris6gld.h (UNIQUE_SECTION): Ditto. | |
2803 | * config/i386/interix.c (UNIQUE_SECTION): Ditto. | |
2804 | * config/i386/winnt.c (UNIQUE_SECTION): Ditto. | |
2805 | ||
37b80d2e BS |
2806 | 2000-01-22 Bernd Schmidt <bernds@cygnus.co.uk> |
2807 | ||
2808 | * config/arm/arm.c (soft_df_operand): Reject SUBREGs containing a | |
2809 | constant. | |
2810 | ||
5787d8da JW |
2811 | 2000-01-21 Jim Wilson <wilson@cygnus.com> |
2812 | ||
2813 | * fixinc/inclhack.tpl: Test for directory before trying to cd into it. | |
2814 | * fixinc/fixincl.sh, fixinc/inclhack.sh: Regenerate. | |
2815 | ||
4571dc27 ZW |
2816 | 2000-01-21 Zack Weinberg <zack@wolery.cumb.org> |
2817 | ||
2818 | * cpphash.c (change_newlines): Delete function. | |
2819 | (struct argdata): Delete 'newlines' and 'use_count' fields. | |
2820 | (macroexpand): Remove code referencing those fields. | |
2821 | ||
4cda35d4 MH |
2822 | 2000-01-22 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2823 | ||
2824 | * loop.c (loops_info): New variable. | |
2825 | (loop_optimize): Allocate loops->array and free it on exit. | |
2826 | Allocate memory for loops_info and assign to each loop, | |
0843179b | 2827 | replacing alloca. |
4cda35d4 MH |
2828 | (find_and_verify_loops): Do not allocate loops->array. |
2829 | ||
84c70dec ZW |
2830 | 2000-01-21 Zack Weinberg <zack@wolery.cumb.org> |
2831 | ||
2832 | * fixinc/fixfixes.c (machine_name_fix): Don't free 'scratch'. | |
2833 | ||
7652adb5 JJ |
2834 | 2000-01-21 Jakub Jelinek <jakub@redhat.com> |
2835 | ||
2836 | * config/sparc/sparc.md (movsi_pic_label_ref): Avoid creating new | |
2837 | pseudos if expanded after first flow. | |
2838 | (movdi_pic_label_ref): Likewise. | |
2839 | ||
7c22ee2b RH |
2840 | 2000-01-20 Richard Henderson <rth@cygnus.com> |
2841 | ||
2842 | * jump.c (jump_optimize_1): Don't do addr_vec optimizations at -O0. | |
2843 | ||
52c207e2 ZW |
2844 | 2000-01-20 Zack Weinberg <zack@wolery.cumb.org> |
2845 | ||
2846 | * Makefile.in (fixinc.sh): Depend on specs. | |
1eb8759b RH |
2847 | * fixinc/Makefile.in: Add rule to create machname.h. |
2848 | (fixlib.o): Depend on machname.h. | |
2849 | * fixinc/fixtests.c (machine_name): New test. | |
2850 | * fixinc/fixfixes.c (machine_name): New fix. | |
2851 | * fixinc/fixlib.c (mn_get_regexps): New helper function for | |
2852 | the machine_name test and fix. | |
2853 | * fixinc/fixlib.h: Prototype it. | |
2854 | * fixinc/inclhack.def (machine_name): Use the C test and fix. | |
52c207e2 ZW |
2855 | * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuild. |
2856 | ||
1eb8759b RH |
2857 | * gcc.c (do_spec_1) [case P]: Take care not to create |
2858 | identifiers with three leading or trailing underscores. | |
52c207e2 ZW |
2859 | |
2860 | * fixinc/Makefile.in (FIXINC_DEFS): Add -DIN_GCC. | |
2861 | (fixincl): Don't specify libraries twice on link line. | |
2862 | (gnu-regex.o): Remove special rule. | |
2863 | * fixinc/gnu-regex.c: Define REGEX_MALLOC if C_ALLOCA was | |
2864 | defined by config.h. Do not define _REGEX_RE_COMP. | |
2865 | (regcomp): Allocate and initialize a fastmap. | |
2866 | * fixinc/gnu-regex.h: Do not define _REGEX_RE_COMP. | |
52c207e2 | 2867 | |
d3de1cf7 BL |
2868 | 2000-01-20 Brad Lucier <lucier@math.purdue.edu> |
2869 | ||
2870 | * Makefile.in (predict.o): Depend on $(EXPR_H), not expr.h. | |
2871 | ||
65f6fa24 RH |
2872 | 2000-01-19 Richard Henderson <rth@cygnus.com> |
2873 | ||
0843179b | 2874 | * flow.c (propagate_block): Replace FIRST, LAST and BNUM |
65f6fa24 RH |
2875 | arguments with BB. Update all callers. Tidy line wrapping. |
2876 | ||
ba52f355 CP |
2877 | 2000-01-19 Clinton Popetz <cpopetz@cygnus.com> |
2878 | ||
0843179b | 2879 | * emit-rtl.c (try_split): Return last_insn if we split the |
ba52f355 CP |
2880 | last_insn. |
2881 | ||
0903fcab JH |
2882 | Thu Jan 20 01:01:23 MET 2000 Jan Hubicka <jh@suse.cz> |
2883 | ||
2884 | * i386-protos.h (ix86_compute_frame_size): Remove prototype. | |
2885 | (ix86_initial_elimination_offset): Declare. | |
2886 | * i386.c (ix86_nsaved_regs): Break out from ... | |
2887 | (ix86_can_use_return_insn_p): ... here. | |
2888 | (ix86_emit_save_regs): Break out from ... | |
2889 | (ix86_expand_prologue): ... here. | |
2890 | (ix86_emit_epilogue_esp_adjustment, ix86_emit_restore_regs): Break | |
2891 | out from ... | |
2892 | (ix86_expand_epilogue): ... here. | |
2893 | (ix86_compute_frame_size): Make static, add prototype. | |
2894 | (ix86_initial_elimination_offset): Break out from ... | |
2895 | * i386.h (INITIAL_ELIMINATION_OFFSET): ... here. | |
2896 | ||
0bee0290 KG |
2897 | 2000-01-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2898 | ||
2899 | * recog.h (OUT_FCN): Delete. | |
2900 | ||
2901 | * vax.md: Call `get_insn_template' instead of OUT_FCN. | |
2902 | ||
299d06ad | 2903 | 2000-01-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
0843179b | 2904 | |
f84c2018 KG |
2905 | * cppalloc.c: PROTO -> PARAMS. |
2906 | * cpperror.c: Likewise. | |
2907 | * cppfiles.c: Likewise. | |
2908 | * cpplib.c: Likewise. | |
2909 | * cpplib.h: Likewise. | |
299d06ad KG |
2910 | |
2911 | * config/arm/arm-protos.h: PROTO -> PARAMS. | |
2912 | * config/arm/arm.c: Likewise. | |
2913 | * config/c4x/c4x.c: Likewise. | |
2914 | * config/fr30/fr30-protos.h: Likewise. | |
2915 | * config/nextstep.c: Likewise. | |
2916 | * config/pa/pa.c: Likewise. | |
2917 | * config/pj/pj.c: Likewise. | |
2918 | * config/rs6000/rs6000.c: Likewise. | |
2919 | * config/v850/v850-protos.h: Likewise. | |
2920 | * config/v850/v850.c: Likewise. | |
2921 | ||
f50ec635 KG |
2922 | 2000-01-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2923 | ||
2924 | * i370-protos.h: New file. | |
2925 | ||
2926 | * i370.c: Include tm_p.h. Fix compile time warnings. | |
0843179b | 2927 | |
f50ec635 KG |
2928 | * i370.h: Move prototypes to i370-protos.h. Fix compile time |
2929 | warnings. | |
0843179b | 2930 | |
f50ec635 KG |
2931 | * i370.md: Likewise. |
2932 | ||
b42b4d2c KG |
2933 | 2000-01-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2934 | ||
2935 | * real.c (enan, einan, eiisnan, eiisneg, make_nan): Wrap in NANS. | |
2936 | (target_isinf, target_isnan, eisnan): Mark parameter with | |
2937 | ATTRIBUTE_UNUSED. | |
2938 | (eiisinf): Wrap in INFINITY. | |
2939 | (etoe113, etoe64, etoe53, etoe24): Wrap label `nonorm' in INFINITY. | |
2940 | (ibmtoe): Remove unused variable `rndsav'. | |
2941 | ||
229f17cf R |
2942 | Wed Jan 19 20:23:06 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
2943 | ||
2944 | * sh.h (PASS_IN_REG_P): Remove extraneous paranthesis. | |
2945 | (GO_IF_LEGITIMATE_ADDRESS): Added missing tab. | |
2946 | ||
5c0d5b94 ZW |
2947 | 2000-01-19 Zack Weinberg <zack@wolery.cumb.org> |
2948 | ||
2949 | * fixinc/Makefile.in: Correct dependencies of fixincl and fixincl.o. | |
2950 | * fixinc/fixfixes.c (IO_use, CTRL_use, IO_defn, CTRL_defn): New fixes. | |
2951 | (fix_char_macro_defines, fix_char_macro_uses): New functions. | |
2952 | ||
2953 | * fixinc/fixlib.c (is_cxx_header): Do the text scan with a regexp. | |
2954 | Recognize Emacs mode markers also. | |
2955 | * fixinc/fixtests.c (else_endif_label): Fix bug in recognition of | |
2956 | C++ comments in C++ headers. Call is_cxx_header only if | |
2957 | necessary. | |
2958 | ||
2959 | * fixinc/inclhack.def (avoid_bool): Add select for the problem and | |
2960 | bypass for ncurses. | |
2961 | (bsd43_io_macros, io_def_quotes, ioctl_fix_ctrl): Replace with... | |
2962 | (io_def_quotes, io_use_quotes, ctrl_def_quotes, ctrl_use_quotes): | |
2963 | ... these, which use the new C fixes. | |
2964 | (math_exception): Escape literal '+' in bypass expression. | |
2965 | ||
2966 | * fixinc/fixincl.x, fixinc/fixincl.sh, fixinc/inclhack.sh: | |
2967 | Regenerate. | |
2968 | ||
0d3ffb5a GK |
2969 | 2000-01-19 Geoff Keating <geoffk@cygnus.com> |
2970 | ||
2971 | * rtlanal.c (reg_referenced_p): A CLOBBER of a MEM uses any REGs | |
2972 | inside the MEM. | |
2973 | ||
78458962 MH |
2974 | 2000-01-20 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2975 | ||
2976 | * loop.c (loop_optimize): Allocate loop_info structure for each loop | |
2977 | prior to calling scan_loop. | |
2978 | ||
eda44c78 R |
2979 | Wed Jan 19 19:54:38 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
2980 | ||
10db12e0 R |
2981 | * sh.c (find_barrier, gen_block_redirect): Fix indentation. |
2982 | (split_branches, calc_live_regs): Likewise. | |
eda44c78 | 2983 | |
d64264ff R |
2984 | Wed Jan 19 19:12:36 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
2985 | ||
2986 | * sh.md (fpu_single, fp_mode): New attributes. | |
2987 | ||
e4b68ced MH |
2988 | 2000-01-20 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
2989 | ||
2990 | * loop.c (current_loop_info): Renamed from loop_info_data | |
2991 | and changed to a pointer. | |
2992 | (loop_optimize): Allocate loop_info structure for each loop | |
2993 | and initialise to zero. | |
2994 | (scan_loop): Set current_loop_info. | |
2995 | ||
2996 | * unroll.c (loop_iterations): Don't abort if REG_USERVAR_P set | |
2997 | on iteration_var. | |
2998 | ||
d29c259b RH |
2999 | 2000-01-19 Richard Henderson <rth@cygnus.com> |
3000 | ||
3001 | * stupid.c: Die die die. | |
3002 | * Makefile.in (OBJS): Remove stupid.o. | |
3003 | (stupid.o): Likewise. | |
3004 | ||
3005 | * except.c (emit_eh_context): Don't emit USEs for stupid. | |
3006 | * explow.c (probe_stack_range): Likewise. | |
3007 | * flags.h (obey_regdecls): Remove. | |
3008 | * flow.c (find_basic_blocks): Don't run try_merge_blocks | |
3009 | when not optimizing. | |
3010 | (life_analysis): Limit data collection when not optimizing. | |
3011 | (mark_regs_live_at_end): Always mark the return value registers. | |
3012 | (mark_used_regs): Remove dummy RETURN case. | |
3013 | (print_rtl_with_bb): Don't consult obey_regdecls. | |
3014 | * function.c (use_variable, use_variable_after): Remove. | |
3015 | (assign_parms): Consult optimize not obey_regdecls. | |
3016 | (expand_function_start): Don't emit USEs for stupid. | |
3017 | (expand_function_end): Likewise. | |
3018 | * global.c (build_insn_chain): Export. | |
3019 | * integrate.c (expand_inline_function): Kill return-value USE | |
3020 | handling code. | |
3021 | * jump.c (jump_optimize_1): Do simple jump optimizations and | |
3022 | dead code elimination. | |
3023 | (calculate_can_reach_end): Remove check_deleted argument. | |
3024 | (delete_insn): Patch out insns even when not optimizing. | |
3025 | * local-alloc.c (block_alloc): Don't do tying when not optimizing. | |
3026 | * rtl.h (use_variable, use_variable_after): Remove declarations. | |
3027 | (build_insn_chain): Declare. | |
3028 | * stmt.c (expand_value_return): Don't emit USEs for stupid. | |
3029 | (expand_end_bindings): Likewise. | |
3030 | (expand_decl): Likewise. Consult optimize not obey_regdecls. | |
3031 | * toplev.c (obey_regdecls): Remove. | |
3032 | (rest_of_compilation): Don't set it. Kill stupid in favour of | |
3033 | flow1, local-alloc, and reload. | |
3034 | (main): Don't set obey_regdecls. | |
3035 | ||
3036 | * config/nextstep.c (handle_pragma): Likewise. | |
3037 | ||
3038 | * alpha/alpha.md (allocate_stack): Don't emit USEs for stupid. | |
3039 | ||
3040 | * arm/arm.h (CONDITIONAL_REGISTER_USAGE): Don't fix reg 0 for stupid. | |
3041 | ||
f6da8bc3 KG |
3042 | 2000-01-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3043 | ||
3044 | * alpha-protos.h: PROTO -> PARAMS. | |
3045 | * alpha.c: Likewise. | |
3046 | * elf.h: Likewise. | |
3047 | * h8300.c: Likewise. | |
3048 | * i386-protos.h: Likewise. | |
3049 | * i386.c: Likewise. | |
3050 | * m32r-protos.h: Likewise. | |
3051 | * m32r.c: Likewise. | |
3052 | * mips.c: Likewise. | |
3053 | * mips.md: Likewise. | |
3054 | * gmon-sol2.c: Likewise. | |
3055 | * sparc.c: Likewise. | |
3056 | ||
fabf04b6 KG |
3057 | 2000-01-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3058 | ||
3059 | * ns32k-protos.h: New file. | |
3060 | ||
3061 | * ns32k.c: Fix compile time warnings. | |
0843179b | 3062 | |
fabf04b6 KG |
3063 | * ns32k.h: Move prototypes to ns32k-protos.h. Fix compile time |
3064 | warnings. | |
3065 | ||
3066 | * ns32k.md: Likewise. | |
3067 | ||
2fd58acb KG |
3068 | 2000-01-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3069 | ||
3070 | * vax-protos.h: New file. | |
3071 | ||
3072 | * vax.c: Fix compile time warnings. | |
0843179b | 3073 | |
2fd58acb KG |
3074 | * vax.h: Move prototypes to vax-protos.h. Fix compile time |
3075 | warnings. | |
3076 | ||
3077 | * vax.md: Likewise. | |
3078 | ||
3079 | * vaxv.md: Likewise. | |
3080 | ||
13d516d9 KG |
3081 | 2000-01-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3082 | ||
3083 | * romp-protos.h: New file. | |
3084 | ||
3085 | * romp.c: Fix compile time warnings. | |
0843179b | 3086 | |
13d516d9 KG |
3087 | * romp.h: Move prototypes to romp-protos.h. Fix compile time |
3088 | warnings. | |
3089 | ||
3090 | * romp.md: Likewise. | |
3091 | ||
253f1045 KG |
3092 | 2000-01-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3093 | ||
3094 | * we32k-protos.h: New file. | |
3095 | ||
3096 | * we32k.c: Fix compile time warnings. | |
0843179b | 3097 | |
253f1045 KG |
3098 | * we32k.h: Move prototypes to we32k-protos.h. Fix compile time |
3099 | warnings. | |
3100 | ||
962f1324 KG |
3101 | 2000-01-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3102 | ||
3103 | * calls.c (emit_call_1): Mark parameter with ATTRIBUTE_UNUSED. | |
3104 | ||
3105 | * except.c (eh_regs): Likewise. | |
3106 | ||
3107 | * final.c (output_operand): Likewise. | |
3108 | ||
3109 | * fold-const.c (target_isinf, target_isnan): Likewise. | |
3110 | ||
e2e52e1b JH |
3111 | Tue Jan 18 16:19:55 MET 2000 Jan Hubicka <hubicka@freesoft.cz> |
3112 | ||
17f24ff0 JH |
3113 | * i386.h (BIGGEST_ALIGNMENT): Set to 128. |
3114 | (BIGGEST_FIELD_ALIGNMENT): Set to (TARGET_ALIGN_DOUBLE ? 64 : 32) | |
3115 | ||
e2e52e1b JH |
3116 | * i386.md (memstr): Do not use rep stosb for counts divisible by 4 |
3117 | when optimize_size. | |
3118 | (clrstrsi): Rewrite. | |
3119 | (strsethi, strsetqi): New expanders. | |
3120 | (strsethi_1, strsetqi_1, rep_stossi, rep_stosqi): New insn patterns. | |
3121 | (cmpstrsi): Emit compare insn before cmpstrsi_1 | |
3122 | (cmpstrsi_nz): use flags, set type to str, prefix_length to 1. | |
3123 | (strlensi_1): Likewise. | |
3124 | (cmpstrsi_1): Likewise; do not output compare. | |
3125 | (strlen expander): Do not unroll when optimizing for size. | |
3126 | (*subsi3_carry): Rename to subsi3_carry | |
3127 | (addqi3_cc): New pattern. | |
3128 | * i386.h (processor_costs): Add move_ratio field. | |
3129 | (MOVE_RATIO): Use move_ratio field, set to 3 for OPTIMIZE_SIZE | |
3130 | * i386.c (*_cost): Set move_ratio. | |
3131 | (x86_unroll_strlen): Enable for Athlon, PPro and K6 too. | |
3132 | (x86_expand_strlensi_1): Rewrite the main loop. | |
3133 | ||
12530dbe RH |
3134 | 2000-01-17 Richard Henderson <rth@cygnus.com> |
3135 | ||
3136 | * combine.c (combine_simplify_rtx): Give FLOAT_STORE_FLAG_VALUE a mode. | |
3137 | * cse.c (find_comparison_args, fold_rtx): Likewise. | |
3138 | * integrate.c (subst_constants): Likewise. | |
3139 | * loop.c (get_condition): Likewise. | |
3140 | ||
3141 | * tm.texi (FLOAT_STORE_FLAG_VALUE): Update docs. | |
3142 | ||
3143 | * alpha.h (FLOAT_STORE_FLAG_VALUE): Use REAL_VALUE_ATOF. | |
3144 | ||
101e59f4 ML |
3145 |