]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
h8300.md (extendqisi2): Change to an expander.
[gcc.git] / gcc / ChangeLog
CommitLineData
f4c07fbf
KH
12003-02-19 Kazu Hirata <kazu@cs.umass.edu>
2
3 * config/h8300/h8300.md (extendqisi2): Change to an expander.
4 (*extendqisi2_h8300): New.
5 (*extendqisi2_h8300hs): Likewise.
6
590734b6
KH
72003-02-19 Kazu Hirata <kazu@cs.umass.edu>
8
9 * config/h8300/h8300-protos.h: Update the prototype for
10 split_adds_subs. Remove the prototypes for
11 const_int_le_2_operand and const_int_le_6_operand.
12 * config/h8300/h8300.c (split_adds_sub): Don't output inc/dec.
13 (const_int_le_2_operand): Remove.
14 (const_int_le_6_operand): Likewise.
15 * config/h8300/h8300.h (PREDICATE_CODES): Remove the entries
16 for const_int_le_2_operand and const_int_le_6_operand.
17 * config/h8300/h8300.md: Update all uses of split_adds_subs.
18 (a peephole2): New.
19
c001c39b
JH
20Tue Feb 18 23:50:59 CET 2003 Jan Hubicka <jh@suse.cz>
21
22 * cgraph.c (NPREDECESORC, SET_NPREDECESORS): Kill.
23 (cgraph_expand_function): Rewrite.
24
2f51bb1d
MA
252003-02-18 Matt Austern <austern@apple.com>
26 * toplev.c, langhooks.c, langhooks-def.h: Move
27 write_global_declarations from toplev.c to langhooks.c.
28
ff6e1a2f
KH
292003-02-18 Kazu Hirata <kazu@cs.umass.edu>
30
31 * config/h8300/h8300.c (general_operand_src): Always check
32 MODE.
33 (general_operand_dst): Likewise.
34
78bd5210
RS
352003-02-18 Roger Sayle <roger@eyesopen.com>
36
37 * convert.c (convert_to_real): Also optimize (float)log(x) into
38 logf(x) where x is a float, i.e. also handle BUILT_IN_LOG{,L}.
39
9f3a9a08
KK
402003-02-18 Kaz Kojima <kkojima@gcc.gnu.org>
41
42 * config/sh/sh.c (unspec_caller_rtx_p): New.
43 (sh_cannot_copy_insn_p): New.
44 (TARGET_CANNOT_COPY_INSN_P): New.
45
d7ddbe24
RH
462003-02-18 Richard Henderson <rth@redhat.com>
47
48 * c-common.c (handle_used_attribute): Accept static data too.
49
502003-02-18 Nick Clifton <nickc@redhat.com>
22d324c1
NC
51 Aldy Hernandez <aldyh@redhat.com>
52
53 * testsuite/gcc.dg/20030218-1.c: New.
54
55 * doc/tm.texi: Document TARGET_VECTOR_TYPES_COMPATIBLE.
56
57 * target-def.h (TARGET_INITIALIZER): Add
58 TARGET_VECTOR_TYPES_COMPATIBLE.
59 (TARGET_VECTOR_TYPES_COMPATIBLE): New macro.
60
61 * target.h (struct gcc_target): Add field vector_types_compatible.
62
63 * c-typeck.c (comptypes): Take into account
64 TARGET_VECTOR_TYPES_COMPATIBLE.
65 (convert_for_assignment): Same.
22d324c1
NC
66
67 * config/rs6000/rs6000.c (is_ev64_opaque_type): New.
68 (rs6000_spe_vector_types_compatible): New.
69 (TARGET_VECTOR_TYPES_COMPATIBLE): Define.
70
e5378e8d
AS
712003-02-19 Andreas Schwab <schwab@suse.de>
72
73 * Makefile.in (toplev.o): Depend on $(LANGHOOKS_DEF_H).
74 * toplev.c: Include langhooks-def.h.
75
fcc11c35
CD
762003-02-18 Chris Demetriou <cgd@broadcom.com>
77
78 * config/mips/mips.h (enum processor_type): Sort entries
79 alphabetically.
80 * config/mips/mips.md (define_attr cpu): Sync with processor_type
81 enum values, including adding entries that were missing.
82
29db2a1e
R
83Tue Feb 18 20:15:54 2003 J"orn Rennecke <joern.rennecke@superh.com>
84
85 * sh.c (calc_live_regs): Also check GET_CODE when checking if initial value
86 for PR_REG is still the PR_REG register.
87
582d11e6
JW
882003-02-18 Jim Wilson <wilson@redhat.com>
89
90 * config/ia64/ia64.md (floatdidf2, floatdisf2): Add %, before second
91 instruction in output template.
92 (bsp_value): Change output template from string to C code, add %,
93 before actual instruction.
94 (flushrs): Mark as not predicable.
95
3edc4b23
KW
962003-02-18 Krister Walfridsson <cato@df.lth.se>
97
98 * inclhack.def (netbsd_bogus_semicolon): New fix.
99 * fixincl.x: Rebuilt.
100 * tests/base/ctype.h: Update.
101
080ea642
RS
1022003-02-18 Roger Sayle <roger@eyesopen.com>
103
104 * fold-const.c (negate_expr_p): New function to determine whether
105 an expression can be negated cheaply.
106 (fold) [MINUS_EXPR]: Use it to determine whether to transform
107 -A - B into -B - A for floating point types.
108
e360ab39
RS
1092003-02-18 Roger Sayle <roger@eyesopen.com>
110
111 * sbitmap.c (sbitmap_resize): New function.
112 * sbitmap.h (sbitmap_resize): Prototype here.
113 * recog.c (split_all_insns): Use sbitmap_resize.
114
6b00cbc7
KH
1152003-02-18 Kazu Hirata <kazu@cs.umass.edu>
116
117 * config/h8300/h8300.md (*zero_extendhisi2_h8300): Fix the
118 insn length.
119 (extendqisi2): Likewise.
120 (*extendhisi2_h8300): Likewise.
121
2b59501b
MA
1222003-02-18 Matt Austern <austern@apple.com>
123
124 * langhooks.h, langhooks-def.h: introduce new langhook,
125 final_write_globals, with write_global_declarations as default.
126 * toplev.c: Move invocation of wrapup_global_declarations from
127 compile_file to new function, write_global_declarations. Change
128 compile_file to use final_write_globals hook. Change
129 wrapup_global_declarations so writing to DECL_DEFER_OUTPUT is
130 conditional.
131
131efcd8
JDA
1322003-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
133
134 * pa.md: Correct and enhance comment.
135
e17aafd1
GK
1362003-02-18 Geoffrey Keating <geoffk@apple.com>
137
138 * gcc.c (validate_switches): Don't scan past closing '}'.
139
f57a2e3a
BE
1402003-02-18 Ben Elliston <bje@redhat.com>
141
142 PR c++/1607
143 * doc/extend.texi (Function Attributes): Document the effect of
144 the C++ "this" parameter on the counting of arguments for the
145 "format" and "format_arg" attributes.
146
9b0c0e9f
AH
1472003-02-17 Aldy Hernandez <aldyh@redhat.com>
148
149 * config/rs6000/spe.h (__ev_stdd): Cast 2nd arg.
150 (__ev_stdw): Same.
151 (__ev_stdh): Same.
152
35a3fa09
JH
153Mon Feb 17 16:16:54 CET 2003 Jan Hubicka <jh@suse.cz>
154
155 * recog.c (split_all_insns): Fix memory overflow.
156
6dc50366
KH
1572003-02-17 Kazu Hirata <kazu@cs.umass.edu>
158
159 * config/h8300/h8300.md (cmpqi): Remove mode from compare.
160 (cmphi): Likewise.
161 (*cmphi_h8300): Likewise.
162 (*cmphi_h8300hs): Likewise.
163 (cmpsi): Likewise.
164 (7 peephole2): Likewise.
165
096daf41
JH
166Sun Feb 16 23:07:52 CET 2003 Jan Hubicka <jh@suse.cz>
167
168 * c-typeck.c (build_c_cast): Fold constant variables into
169 initial values.
170
35113fde
GP
1712003-02-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
172
173 * doc/install.texi (Specific): Fix link for m68k-att-sysv.
174 (Binaries): Ditto for Sinix/Reliant Unix.
175
3a1944a6
RE
1762003-02-16 Richard Earnshaw <rearnsha@arm.com>
177
178 * arm.c (arm_reload_in_hi): Ensure that the scratch register does
179 not overlap the final result register.
180
cdd4b0d4
AB
1812003-02-16 Arend Bayer <arend.bayer@web.de>
182 Richard Henderson <rth@redhat.com>
183
ddb9eedd 184 PR c/8068
cdd4b0d4
AB
185 * fold-const.c (extract_muldiv_1): Rename from extract_muldiv;
186 rearrange mult arguments for less recursion.
187 (extract_muldiv): New. Prevent runaway recursion.
188
616f273a
DS
1892003-02-16 Danny Smith <dannysmith@users.sourceforge.net>
190
191 * config/i386/cygwin.h (TARGET_SUBTARGET_DEFAULT): Set
192 MASK_ALIGN_DOUBLE.
193
881b2a96
RS
1942003-02-15 Roger Sayle <roger@eyesopen.com>
195
196 * config/i386/i386.c (x86_ext_80387_constants): Use 80387 insns
197 to load mathematical constants on K6, Athlon, Pentium 4 and PPro.
198 (ext_80387_constants_table): Global table of 80387 special constants
199 guarded by ext_80387_constants_init flag when not initialized.
200 (init_ext_80387_constants): New function to initialize this table.
201 (standard_80387_constant_p): Extend to recognize extra 80387
202 constants, in XFmode, on processors where this is a win.
203 (standard_80387_constant_opcode): New function to return the
204 opcode associated with standard_80387_constant_p.
205 (standard_80387_constant_rtx): New function to return the XFmode
206 CONST_DOUBLE associated with standard_80387_constant_p.
207 (ix86_rtx_costs): Give the new constants the same cost as 1.0.
208
209 * config/i386/i386-protos.h (standard_80387_constant_opcode):
210 Prototype here.
211 (standard_80387_constant_rtx): Likewise.
212
213 * config/i386/i386.md (*movsf1, *movsf1_nointerunit, *movdf_nointeger,
214 *movdf_integer, *movxf_nointeger, *movtf_nointeger, *movxf_integer,
215 *movtf_integer): Simplify using new standard_80387_constant_opcode.
216
d203738b
GK
2172003-02-15 Geoffrey Keating <geoffk@apple.com>
218
219 * doc/invoke.texi (Optimize Options): Correct @option syntax.
220
0b077eac
RH
2212003-02-15 Richard Henderson <rth@redhat.com>
222
223 * Makefile.in (cfglayout.o): Depend on TARGET_H.
224 * cfglayout.c: Include target.h.
225 (cfg_layout_can_duplicate_bb_p): Check targetm.cannot_copy_insn_p.
226 * target-def.h (TARGET_CANNOT_COPY_INSN_P): New.
227 * target.h (struct gcc_target): Add cannot_copy_insn_p.
228
229 * config/alpha/alpha.c (alpha_cannot_copy_insn_p): New.
230 (TARGET_CANNOT_COPY_INSN_P): New.
231 (override_options): Revert 2003-02-08 hack.
232
9a71ece1
RH
2332003-02-15 Richard Henderson <rth@redhat.com>
234
235 * gcse.c (bypass_block): Use BLOCK_FOR_INSN for resolving LABEL_REFs.
236 (bypass_conditional_jumps): Accept computed_jump_p insns as well.
237
b54cf83a
DE
2382003-02-15 David Edelsohn <edelsohn@gnu.org>
239
240 * config/rs6000/rs6000.h (processor_type): Add PPC440.
241 * config/rs6000/rs6000.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE,
242 TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD,
243 TARGET_SCHED_VARIABLE_ISSUE): Define.
244 (rs6000_use_dfa_pipeline_interface): New function.
245 (rs6000_multipass_dfa_lookahead): New Function.
246 (rs6000_variable_issue): New function.
247 (rs6000_adjust_cost): Add CMP and DELAYED_CR types.
248 (rs6000_issue_rate): Add PPC440.
249 * config/rs6000/rs6000.md (unspec list): Correct typo.
250 (attr "type"): Add load_ext, load_ext_u, load_ext_ux, load_u,
251 store_ux, store_u, fpload_ux, fpload_u, fpstore_ux, fpstore_u,
252 cmp, delayed_cr, mfcr, mtcr.
253 (automata_option): Set "ndfa".
254 (extendMMNN2): Update attributes.
255 (movcc_internal1): Discourage move to non-cr0. Update
256 attributes.
257 (movMM_update): Update attributes.
258 (cmpMM_internal): Update attributes.
259 (sCC CR materialization): Update attributes.
260 (branch patterns): Do not discourage non-cr0.
261 (cr logical patterns): Prefer destructive register allocation.
262 Update attributes.
263 (movesi_from_cr): Update attribute.
264 (mtcrf_operation): Update attribute.
265 (mtcrfsi): Update attribute.
266 * config/rs6000/40x.md: New file.
267 * config/rs6000/603.md: New file.
268 * config/rs6000/6xx.md: New file.
269 * config/rs6000/7450.md: New file.
270 * config/rs6000/7xx.md: New file.
271 * config/rs6000/mpc.md: New file.
272 * config/rs6000/power4.md: New file.
273 * config/rs6000/rios1.md: New file.
274 * config/rs6000/rios2.md: New file.
275 * config/rs6000/rs64.md: New file.
276 [Some DFA descriptions based on work by Michael Hayes]
277
99dc7277
RH
2782003-02-15 Richard Henderson <rth@redhat.com>
279
280 * bb-reorder.c (find_traces_1_round): Don't connect easy to copy
281 successors with multiple predecessors.
282 (connect_traces): Try harder to copy traces of length 1.
283
284 * function.h (struct function): Add computed_goto_common_label,
285 computed_goto_common_reg.
286 * function.c (free_after_compilation): Zap them.
287 * stmt.c (expand_computed_goto): Use them to produce one
288 indirect branch per function.
289
5f24e0dc
RH
2902003-02-15 Richard Henderson <rth@redhat.com>
291
292 * cfgcleanup.c: Include params.h.
293 (try_crossjump_bb): Use PARAM_MAX_CROSSJUMP_EDGES. Fix test for
294 too many outgoing edges from a block.
295 * Makefile.in (cfgcleanup.o): Depend on PARAMS_H.
296 * params.def (max-crossjump-edges): New.
297 * doc/invoke.texi: Document it.
298
9381bbc9
RH
2992003-02-15 Richard Henderson <rth@redhat.com>
300
301 * recog.c (split_all_insns): Include new blocks in life update;
302 do a global life update.
303
e898926c
DS
3042003-02-15 Danny Smith <dannysmith@users.sourceforge.net>
305
306 * config/i386/mingw32.h (LIBGCC_SPEC): Add libmingwex.a.
307 Update copyright.
308 * config/i386/cygwin.h (LIBGCC_SPEC): Add libmingwex.a for
309 -mno-cygwin case.
310
ce65116b
FH
3112003-02-14 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
312
313 PR optimization/7702
314 * reload1.c (reload_cse_simplify_set): Honor
315 CANNOT_CHANGE_MODE_CLASS.
316
fe7496dd
AO
3172003-02-14 Alexandre Oliva <aoliva@redhat.com>
318
319 * config/mn10300/mn10300.c (mn10300_wide_const_load_uses_clr): New
320 function.
321 * config/mn10300/mn10300-protos.h: Declare it.
322 * config/mn10300/mn10300.md (movdi, movdf): Use it to compute
323 attribute cc of instructions that may use clr.
324
6017c719
KH
3252003-02-14 Kazu Hirata <kazu@cs.umass.edu>
326
327 * simplify-rtx.c (simplify_binary_operation): Simplify ~y when
328 (x - (x & y)) is found.
329
9fb28a67
RO
3302003-02-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
331
332 * configure.in: Fix typo.
333 * configure: Regenerate.
334
60f469fa
KH
3352003-02-14 Kazu Hirata <kazu@cs.umass.edu>
336
337 * config/h8300/h8300.md (*iorsi2_and_1_lshiftrt_1): New.
338
8fd73754 3392003-02-13 Adam Nemet <anemet@lnxw.com>
60f469fa 340
ce65116b
FH
341 PR opt/2391
342 * combine.c: Fix spelling in comment.
343 (cached_nonzero_bits): New function.
344 (cached_num_sign_bit_copies): New function.
8fd73754
AN
345 (nonzero_bits_with_known): New macro.
346 (num_sign_bit_copies_with_known): New macro.
ce65116b 347 (nonzero_bits1): Rename from nonzero_bits. Add three new
8fd73754
AN
348 arguments. Change calls from nonzero_bits to
349 nonzero_bits_with_known.
ce65116b 350 (num_sign_bit_copies1): Rename from num_sign_bit_copies. Add
8fd73754
AN
351 three new arguments. Change calls from num_sign_bit_copies to
352 num_sign_bit_copies_with_known.
ce65116b
FH
353 (nonzero_bits): New macro.
354 (num_sign_bit_copies): New macro.
355 (update_table_tick): Don't traverse identical subexpression more
8fd73754 356 than once.
ce65116b 357 (get_last_value_validate): Likewise.
8fd73754 358
ddb0ae00
ZW
3592003-02-13 Zack Weinberg <zack@codesourcery.com>
360
361 * emit-rtl.c (init_emit): Use ggc_alloc for regno_reg_rtx.
362 * function.h (struct emit_status): Length of regno_pointer_align
363 and x_regno_reg_rtx as seen by gengtype is only x_reg_rtx_no,
364 not regno_pointer_align_length (i.e. length actually used, not
365 length as allocated)
366
367 * config/i386/i386.c (struct stack_local_entry): New.
368 (struct machine_function): Replace huge array with alist.
369 (assign_386_stack_local): Change to match.
370
c20b55c0
JDA
3712003-02-13 John David Anglin <dave.anglin@nrc-crnc.gc.ca>
372
373 * inclhack.def (hpux_long_double): Tighten select and add bypass
374 regexp.
375 * fixincl.x: Rebuilt.
376
ffc8f11e
JZ
3772003-02-13 Josef Zlomek <zlomekj@suse.cz>
378
379 * cfgcleanup.c (outgoing_edges_match): When there is single outgoing
380 edge and block ends with a jump insn it must be simple jump.
381
047d636f
DJ
3822003-02-13 Daniel Jacobowitz <drow@mvista.com>
383
384 * Makefile.in (PREPROCESSOR_DEFINES): Add
385 @TARGET_SYSTEM_ROOT_DEFINE@.
386 * configure.in (PREFIX_INCLUDE_DIR): Don't define if $with_sysroot
387 is specified or if building a cross compiler.
388 (TARGET_SYSTEM_ROOT_DEFINE): Add TARGET_SYSTEM_ROOT_RELOCATABLE
389 if the sysroot is under $exec_prefix.
390 * configure: Regenerated.
391 * cppdefault.h: Use native include paths if TARGET_SYSTEM_ROOT is
392 defined.
393 (struct default_include): Add add_sysroot field.
394 (cpp_SYSROOT): Declare.
395 * cppdefault.c (cpp_include_defaults): Fill in add_sysroot
396 field.
397 (cpp_SYSROOT): New variable.
398 * cppinit.c (cpp_create_reader): Initialize
399 CPP_OPTION (pfile, sysroot).
400 (init_standard_includes): Handle add_sysroot. Do not
401 add unrelocated copies of relocated directories.
402 (COMMAND_LINE_OPTIONS): Add -isysroot.
403 (cpp_handle_option): Handle -isysroot.
404 * cpplib.h (struct cpp_options): Add sysroot member.
405 * gcc.c (The Specs Language): Update description of %I.
406 (target_system_root_changed): New variable.
407 (process_command): Conditionalize make_relative_prefix call
408 on !VMS and TARGET_SYSTEM_ROOT_RELOCATABLE. Set
409 target_system_root_changed.
410 (do_spec_1): Add -isysroot to %I.
411 * doc/invoke.texi (Spec Files): Update description of %I.
412 * doc/install.texi (--with-sysroot): Update comment about
413 relocation.
414
4302db79
KH
4152003-02-13 Kazu Hirata <kazu@cs.umass.edu>
416
417 * config/h8300/h8300.md (a peephole2): New.
418
e0d9cc77 4192003-02-13 Robert Lipe <robertlipe@usa.net>
ddb0ae00 420 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
e0d9cc77
RL
421
422 * doc/install.texi (Specific): Update three SCO-related URLs.
423
9fb93b00
AS
4242003-02-13 Andreas Schwab <schwab@suse.de>
425
426 * cgraph.c (SET_NPREDECESORS): Add intermediate cast to size_t.
427 Parenthesize properly.
428 (NPREDECESORS): Parenthesize properly.
429
22ffcc6f
GDR
4302003-02-13 Gabriel Dos Reis <gdr@integrable-solutions.net>
431
432 * timevar.h (POP_TIMEVAR_AND_RETURN): New macro.
433
1fb54135
RS
4342003-02-12 Roger Sayle <roger@eyesopen.com>
435
436 * config/i386/i386.md (UNSPEC_FPATAN): New UNSPEC constant.
437 (atan2sf3, atan2df3, atan2xf3, atan2tf3): New patterns.
438
439 * reg-stack.c (subst_stack_regs_pat): Add support for binary
440 UNSPEC instructions (e.g. "fpatan").
441
19a7414e
MS
4422003-02-12 Mike Stump <mrs@apple.com>
443
444 * varray.c (element_size): Remove.
445 (uses_ggc): Remove.
446 (element): Add.
447 (varray_init): Use new interface.
448 (varray_grow): Use new interface.
449 (varray_clear): Use new interface.
450
e589cc6e
AH
4512003-02-12 Aldy Hernandez <aldyh@redhat.com>
452
ddb0ae00
ZW
453 * config/rs6000/spe.h: Add casts to the arguments of the following
454 macros: evfsabs, evfsnabs, evfsneg, evfsadd, evfssub, evfsmul,
455 evfsdiv, evfscfui, evfscfsi evfscfuf evfscfsf, evfsctui, evfsctsi,
456 evfsctuf, evfsctsf, evfsctuiz, evfsctsiz, __ev_get_upper*,
457 __ev_get_lower*, __ev_get_u32, __ev_get_s32, __ev_get_fs,
458 __ev_get_u16, __ev_get_s16.
e589cc6e 459
2bbfc542
KH
4602003-02-12 Kazu Hirata <kazu@cs.umass.edu>
461
462 * config/h8300/h8300.md (a peephole2): New.
463
e72fcfe8
JH
464Wed Feb 12 22:47:18 CET 2003 Jan Hubicka <jh@suse.cz>
465
466 * Makefile.in (CRTSTUFF_CFLAGS): Add -fno-unit-at-a-time
467 (OBJS): Add callgraph.o
468 (callgraph.o): New.
469 * c-decl.c (expand_body_1): Break out from ...
470 (expand_body): This one; change calling convention
471 (finish_function): Move some of expand_body logic here.
472 (c_expand_deferred_function): Update call of expand_body
473 (c_expand_stmt): Use c_expand_body_1.
474 * c-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Define.
475 * c-objc-commin.c (c_objc_common_finish_file): Use callgraph code.
476 * c-tree.h (c_expand_body): Declare.
477 * callgraph.c: New file.
478 * flags.h (flag_unit_at_a_time): Declare.
479 * langhooks.h (LANG_HOOKS_CALLGRAPH_LOWER_FUNCTION,
480 LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION,
481 LANG_HOOKS_CALLGRAPH_INITIALIZER): New macros.
482 * langhooks.h (struct lang_hooks_for_callgraph): New.
483 (struct lang_hooks): Add callgraph field.
484 * toplev.c (flag_unit_at_a_time): New.
485 (lang_independent_options): Add flag_unit_at_a_time.
486 (process_options): Disable unit-at-a-time mode for frontends not
487 supporting callgraph.
488 * tree-inline.c (typedef struct inline_data): Add "decl"
489 (expand_call_inline): Update callgraph.
490 (optimize_inline_calls): Set id.decl.
491 * tree.h (cgraph_finalize_function, cgraph_finalize_compilation_unit,
492 cgraph_create_edges, dump_cgraph, cgraph_optimize, cgraph_remove_call
493 cgraph_calls_p): Declare.
494 * invoke.texi (-funit-at-a-time): Document
495
9037b0c7
AH
4962003-02-12 Aldy Hernandez <aldyh@redhat.com>
497
ddb0ae00
ZW
498 * config/rs6000/spe.h: Fix misc formatting.
499 (__ev_create_ufix32_fs): Cast ev argument.
500 (__ev_create_sfix32_fs): Same.
501 (__ev_get_sfix32_fs_internal): Cast arguments to builtins.
502 (__ev_get_ufix32_fs_internal): Same.
9037b0c7 503
55ae46b1
RM
5042003-02-12 Ranjit Mathew <rmathew@hotmail.com>
505
506 * doc/tm.texi (MODIFY_JNI_METHOD_CALL): Document.
507 * config/i386/cygwin.h (MODIFY_JNI_METHOD_CALL): New macro.
508
3963c2e0
ZW
5092003-02-12 Zack Weinberg <zack@codesourcery.com>
510
511 * cpplib.c (do_include_common): Move warnings for
512 #include_next and #import out to callers. Use early-return
513 instead of nested ifs. Don't do check_eol here.
514 (parse_include): Do check_eol here with the rest of the
515 parsing stuff.
516 (do_include_next, do_import): Now handle warnings.
517
d1a86812
GP
5182003-02-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
519
520 * doc/install.texi (Specific): Update AVR- and Darwin-related URLs.
521
6efcd268
JH
522Wed Feb 12 15:19:42 CET 2003 Jan Hubicka <jh@suse.cz>
523
524 * predict.c (estimate_probability): Fix roundoff error.
525
9083b5da
KH
5262003-02-12 Kazu Hirata <kazu@cs.umass.edu>
527
528 * config/h8300/h8300.md (a peephole2): Don't handle 65535.
529 (two peephole2): New.
530
86bc9b19
KH
5312003-02-12 Kazu Hirata <kazu@cs.umass.edu>
532
533 * config/h8300/h8300.md (several peephole2): Replace
534 find_regno_note with peep2_reg_dead_p.
535
ceda50e9
RH
5362003-02-11 Richard Henderson <rth@redhat.com>
537
538 * gcse.c (lookup_set): Remove unused argument PAT. Update
539 both callers.
540
886e0865
GK
5412003-02-11 Geoffrey Keating <geoffk@apple.com>
542
543 * diagnostic.c (real_abort): New.
544 (diagnostic_report_diagnostic): Call real_abort on error.
545 * diagnostic.h (diagnostic_abort_on_error): New.
546 (struct diagnostic_context): Add abort_on_error field.
547 * toplev.c (setup_core_dumping): New.
548 (decode_d_option): Handle 'H' case.
549 * doc/invoke.texi (Debugging Options): Document -dH.
550
76438597
NN
5512003-02-11 Nathanael Nerode <neroden@gcc.gnu.org>
552
553 * Makefile.in: Remove pointless setting of CXXFLAGS for dejagnu
554 which refers to obsolete directories.
555
09b568fc
RH
5562003-02-11 Richard Henderson <rth@redhat.com>
557
558 * config/alpha/linux.h (TARGET_C99_FUNCTIONS): New.
559
8b978a57
JH
560Mon Oct 21 17:07:47 CEST 2002 Jan Hubicka <jh@suse.cz>
561
562 * i386.c (contains_128bit_aligned_vector_p): New function.
563 (ix86_function_arg_boundary): Properly align vector modes.
564
a3259be8
BW
5652003-02-11 Bob Wilson <bob.wilson@acm.org>
566
567 * config/xtensa/xtensa.md (set_frame_ptr): Change rtl to set reg a7.
568 * config/xtensa/xtensa.c (xtensa_reorg): Search for UNSPECV_SET_FP
569 as a SET pattern.
570
da52a069
RS
5712003-02-11 Roger Sayle <roger@eyesopen.com>
572
573 * builtins.c: Fix failure caused by commiting wrong patch.
574
d58f6584
DJ
5752003-02-11 Dale Johannesen <dalej@apple.com>
576 * ra-build.c (compare_and_free_webs): Relax checking.
577 * config/rs6000/darwin.h (HOT_TEXT_SECTION_NAME): Define.
578 (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Define.
579
22fd5743
FH
5802003-02-11 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
581
582 PR optimization/9651
583 * rtlanal.c (may_trap_p): Handle FIX.
584
3462df62
DJ
5852003-02-11 Dave Jones <davej@codemonkey.org.uk>
586
587 * config/i386/i386.c (override_options): Define c3-2 as a 686 with SSE.
588 * doc/invoke.texi: Extra alias.
589
a693fbb9
GK
5902003-02-11 Geoffrey Keating <geoffk@apple.com>
591
592 * config/rs6000/host-darwin.c: Fix comment.
593
bb157ff4
DE
5942003-02-11 David Edelsohn <edelsohn@gnu.org>
595
596 * config/rs6000/rs6000.md (divmodsi4): Use register_operand
597 predicate for mod result.
598
16ddb599
JDA
5992003-02-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
600
601 * inclhack.def (hpux_long_double, hpux10_ctype_declarations1,
602 hpux10_ctype_declarations2, hpux_ctype_macros): New hacks.
603 * fixincl.x: Rebuilt.
604 * tests/base/stdlib.h: Update.
605 * tests/base/ctype.h: New file.
606
6f0d3566
JH
607Tue Feb 11 20:44:45 CET 2003 Jan Hubicka <jh@suse.cz>
608
609 * emit-rtl.c (emit_copy_of_insn_after): Copy insn recog cache too.
610
d0a5295a
RH
6112003-02-11 Richard Henderson <rth@redhat.com>
612
613 * config/i386/i386.c (ix86_expand_movstr): Fail if esi or edi
614 appropriated as globals.
615 (ix86_expand_clrstr): Similarly.
616 * config/i386/i386.md (cmpstrsi): Similarly.
617
9672132f
KH
6182003-02-11 Kazu Hirata <kazu@cs.umass.edu>
619
620 * config/h8300/h8300.md (a peephole2): Add a case of 255.
621
b5e01d4b
RS
6222003-02-11 Roger Sayle <roger@eyesopen.com>
623
624 * optabs.h (enum optab_index): Add new OTI_pow and OTI_atan2.
625 (pow_optab, atan2_optab): Define corresponding macros.
626 * optabs.c (init_optabs): Initialize pow_optab and atan2_optab.
627 * genopinit.c (optabs): Implement pow_optab and atan2_optab
628 using pow?f3 and atan2?f3 patterns.
629 * builtins.c (expand_errno_check): New function to update errno
630 if necessary, split out from expand_builtin_mathfn.
631 (expand_builtin_mathfn): Use expand_errno_check.
632 (expand_builtin_mathfn_2): New function to handle expanding binary
633 math functions, reusing the code in expand_errno_check.
634 (expand_builtin): Handle the pow and atan2 math built-ins,
635 BUILT_IN_{POW,POWF,POWL,ATAN2,ATAN2F,ATAN2L} via the new function
636 expand_builtin_mathfn_2.
637
638 * doc/md.texi: Document new pow?f3 and atan2?f3 patterns.
639
cb119f82
JH
640Tue Feb 11 19:03:22 MET 2003 Jan Hubicka <jh@suse.cz>
641
642 * combine.c (combine_simplify_rtx): Fix folding of
643 nested float_truncates.
644
a05566a3
KH
6452003-02-11 Kazu Hirata <kazu@cs.umass.edu>
646
647 * config/h8300/h8300.md (a peephole2): Fix a typo.
648
20ae4500
RE
6492003-02-11 Richard Earnshaw <rearnsha@arm.com>
650
651 * arm.mc (return_address_mask): Use CC_REGNUM for the condition code
652 register number.
653
717d8b71
KH
6542003-02-11 Kazu Hirata <kazu@cs.umass.edu>
655
656 * config/h8300/h8300-protos.h: Add a prototype for
657 gtuleu_operator.
658 * config/h8300/h8300.c (gtuleu_operator): New.
659 * config/h8300/h8300.h (PREDICATE_CODES): Add gtuleu_operator.
660 * config/h8300/h8300.md (a peephole2): New.
661
e36e8f52
JH
662Tue Feb 11 13:32:12 CET 2003 Jan Hubicka <jh@suse.cz>
663
664 * sched-ebb.c (schedule_ebbs): Do not verify_flow_info.
665
c728da61
JH
666Tue Feb 11 10:02:54 CET 2003 Jan Hubicka <jh@suse.cz>
667
668 * predict.c (choose_function_section): Choose sections correctly.
669
4cc0fdd2
JDA
6702003-02-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
671
672 * reload1.c (first_label_num): New.
673 (reload): Index offsets_known_at and offsets_at using difference of
674 label number and first label number. Don't use offset pointers.
675 (set_label_offsets, set_initial_label_offsets): Likewise.
676
44b1fa11
RS
6772003-02-10 Roger Sayle <roger@eyesopen.com>
678
679 * mips-tfile.c (init_file): Add missing initializers in the
680 "#ifdef __alpha" case.
681 (file_offset, max_file_offset): Declare as unsigned long.
682 (write_varray): Cast to "unsigned long" in comparisons against
683 either file_offset or max_file_offset.
684 (write_object): Likewise.
685 (read_seek): Likewise.
686 (copy_object): Likewise. Declare "ifd" as int to match its use
687 in add_ext_symbol, and avoid signed/unsigned conditional warning.
688
2948ade7 6892003-02-10 Nick Clifton <nickc@redhat.com>
3963c2e0 690 Aldy Hernandez <aldyh@redhat.com>
2948ade7 691
3963c2e0
ZW
692 * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Do not
693 override options which have been specified on the command line.
2948ade7 694
2a4e6df4
KH
6952003-02-10 Kazu Hirata <kazu@cs.umass.edu>
696
697 * config/h8300/h8300.md (abssf2): New.
698 (*abssf2_h8300): Likewise.
699 (*abssf2_h8300hs): Likewise.
700
411e2759
PE
7012003-02-10 Phil Edwards <pme@gcc.gnu.org>
702
703 * tree.c (build_tree_list): Fix parameter names in comment.
704
2b24fc41
JJ
7052003-02-10 Janis Johnson <janis187@us.ibm.com>
706
707 * config/rs6000/ppc64-fp.c: New file.
708 * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add ppc64-fp.c.
709
aa634f11
JZ
7102003-02-10 Josef Zlomek <zlomekj@suse.cz>
711
712 * Makefile.in (bb-reorder.o): Add dependency on $(FIBHEAP_H).
3963c2e0 713 * bb-reorder.c (make_reorder_chain): Deleted.
aa634f11
JZ
714 (make_reorder_chain_1): Deleted.
715 (find_traces): New function.
716 (rotate_loop): New function.
717 (mark_bb_visited): New function.
718 (find_traces_1_round): New function.
719 (copy_bb): New function.
720 (bb_to_key): New function.
721 (better_edge_p): New function.
722 (connect_traces): New function.
723 (copy_bb_p): New function.
724 (get_uncond_jump_length): New function.
725 (reorder_basic_blocks): Use new functions (Software Trace Cache).
726 * cfgcleanup.c (outgoing_edges_match): Enable crossjumping across loop
727 boundaries.
728
17edbda5
AH
7292003-02-10 Aldy Hernandez <aldyh@redhat.com>
730
731 * config/rs6000/rs6000.c (bdesc_2arg): Change spe_evxor to xorv2si3.
732
57116c34
DN
7332003-02-09 Dan Nicolaescu <dann@ics.uci.edu>
734
735 * tree.h (struct tree_decl): Remove unused live_range_rtl field.
3963c2e0 736 (DECL_LIVE_RANGE_RTL): Remove.
57116c34 737
4f448245
NC
7382003-02-10 Nick Clifton <nickc@redhat.com>
739
740 * config/arm/aof.h, config/arm/aout.h, config/arm/arm-modes.def,
741 config/arm/arm-protos.h, config/arm/arm.c, config/arm/arm.h,
742 config/arm/arm.md, config/arm/cirrus.md, config/arm/coff.h,
743 config/arm/conix-elf.h, config/arm/ecos-elf.h, config/arm/elf.h,
744 config/arm/freebsd.h, config/arm/linux-elf.h,
745 config/arm/linux-gas.h, config/arm/netbsd-elf.h,
746 config/arm/netbsd.h, config/arm/pe.c, config/arm/pe.h,
747 config/arm/rtems-elf.h, config/arm/semi.h, config/arm/semiaof.h,
748 config/arm/strongarm-coff.h, config/arm/strongarm-elf.h,
749 config/arm/strongarm-pe.h, config/arm/uclinux-elf.h,
750 config/arm/unknown-elf-oabi.h, config/arm/unknown-elf.h,
751 config/arm/xscale-elf.h: Replace occurances of "GNU CC" with "GCC"
752 and reformat as appropriate.
753
19190d27
KH
7542003-02-10 Kazu Hirata <kazu@cs.umass.edu>
755
756 * config/h8300/clzsi2.c: Remove.
757 * config/h8300/ctzsi2.c: Likewise.
758 * config/h8300/paritysi2.c: Likewise.
759 * config/h8300/popcountsi2.c: Likewise.
760 * config/h8300/t-h8300 (LIB2FUNCS_EXTRA): Remove clzsi2,
761 ctzsi2, paritysi2, and popcountsi2.
762
ecf92f82 7632003-02-10 Eric Botcazou <ebotcazou@libertysurf.fr>
3963c2e0 764 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
ecf92f82
EB
765
766 PR c/7741
767 * c-decl.c (duplicate_decls): Discard the initializer of the
768 new decl when the types are conflicting.
769
ac5e69da
JZ
7702003-02-10 Josef Zlomek <zlomekj@suse.cz>
771
772 * Makefile.in (sreal.o): Added.
773 (predict.o): Depends on sreal.h instead of real.h.
774 * sreal.c: New file.
775 * sreal.h: New file.
776 * predict.c: Use sreal.c instead of real.c.
777
9b6b54e2
NC
7782003-02-10 Nick Clifton <nickc@redhat.com>
779
780 * Contributed support for the Cirrus EP9312 "Maverick"
781 floating point co-processor. Written by Aldy Hernandez
3963c2e0 782 <aldyh@redhat.com>.
9b6b54e2
NC
783 (config/arm/arm.c): Add Cirrus support.
784 (config/arm/arm.h): Likewise.
785 (config/arm/aout.h): Likewise.
786 (config/arm/arm.md): Likewise.
787 (config/arm/arm-protos.h): Likewise.
788 (config.gcc): Likewise.
789 (doc/invoke.texi): Describe new -mcpu value and new
790 -mcirrus-fix-invalid-insns switch,
791 (cirrus.md): New file.
792
949824fe
JH
793Mon Feb 10 11:40:18 CET 2003 Jan Hubicka <jh@suse.cz>
794
795 * combine.c (combine_simplify_rtx): Simplify using
796 (float_truncate (float x)) is (float x)
797 (float_extend (float_extend x)) is (float_extend x).
798
546ff777
AM
7992003-02-10 Alan Modra <amodra@bigpond.net.au>
800
801 * calls.c (try_to_integrate): Tidy stack_usage_map access.
802 (emit_library_call_value_1): Likewise. Formatting.
803 (store_one_arg): Likewise.
804
626098f9 8052003-02-09 Nick Clifton <nickc@redhat.com>
3963c2e0 806 Aldy Hernandez <aldyh@redhat.com>
626098f9 807
3963c2e0
ZW
808 * config/rs6000/spe.md: spe_evlhhesplat, spe_evlhhossplat,
809 spe_evlhhousplat, spe_evlwhsplat, spe_evlwwsplat, spe_evldd,
810 spe_evldh, spe_evldw, spe_evlwhe, spe_evlwhos, spe_evlwhou,
811 spe_evstdd, spe_evstdh, spe_evstdw, spe_evstdwx, spe_evstwhe,
812 spe_evstwho, spe_evstwwe, spe_evstwwo: Fix syntax to match newest
813 docs. Add range test for immediate value.
626098f9
AH
814
8152003-02-09 Aldy Hernandez <aldyh@redhat.com>
816
3963c2e0
ZW
817 Rename spe_evxor to xorv2si3.
818 (xorv4hi3): New.
819 (xorv1di3): New.
626098f9 820
8d23a2c8 8212003-02-10 Glen Nakamura <glen@imodulo.com>
3963c2e0 822
8d23a2c8
GN
823 * doc/extend.texi (C++98 Thread-Local Edits): Add missing @item
824 tag.
825
fdc4b40b
JH
826Mon Feb 10 00:29:17 CET 2003 Jan Hubicka <jh@suse.cz>
827
828 * i386.c (vector_move_operand): New predicate.
829 (ix86_expand_vector_move): Be happy about 0.
830 * i386.h (PREDICATE_CODES): Add sse-move_operand.
831 * i386.md (mov*_internal): Add 'C' alternative.
832
35c28a13
JH
833Sun Feb 9 23:58:33 CET 2003 Jan Hubicka <jh@suse.cz>
834
835 * i386.md (floathi*): Deal with SSE.
836
852c8ba1
JH
837Sun Feb 9 23:54:59 CET 2003 Jan Hubicka <jh@suse.cz>
838
839 * simplify-rtx.c (simplify_unary_operation,
840 simplify_binary_operation): Deal with vector modes
841 (simplify_ternary_operation): Deal with no-op VEC_MERGE.
842
2382b79f
RS
8432002-02-09 Richard Sandiford <rsandifo@redhat.com>
844
845 * toplev.c (rest_of_compilation): Recompute register usage after
846 split_all_insns.
847
8275b011
RH
8482003-02-09 Richard Henderson <rth@redhat.com>
849
850 * libgcc-std.ver (__clztf2): New.
851 (__ctztf2, __popcounttf2, __paritytf2): New.
852 * libgcc2.c (__clzSI2, __clzDI2, __ctzSI2, __ctzDI2, __popcountSI2,
853 __popcountDI2, __paritySI2, __parityDI2): Use UWmode and UDWmode;
854 adjust code to match the different type sizes.
855 * libgcc2.h (__clzSI2, __ctzSI2, __popcountSI2, __paritySI2,
856 __clzDI2, __ctzDI2, __popcountDI2, __parityDI2): New macros.
857
858 * optabs.c (init_integral_libfuncs): Don't hard-code SImode and
859 TImode; select word_mode and twice that.
860 (init_floating_libfuncs): Don't hard-code SFmode and TFmode;
861 select the modes from float, double, and long double.
862 (init_optabs): Remove duplicate initializations.
863
794aca5d
WB
8642003-02-09 Wolfgang Bangerth <bangerth@ticam.utexas.edu>
865
866 * doc/install.texi: Squeeze and streamline section on
867 testing and regression checking.
868
d9deed68
JH
869Sun Feb 9 13:33:34 CET 2003 Jan Hubicka <jh@suse.cz>
870
871 * i386.md (ahi?v*3): Set third operand type to TImode.
872 * i386.c (ix86_expand_binop_builtin): Extend operand when needed.
873
874 * simplify-rtx.c (simplify_subreg): Fix conversion from vector into
875 integer mode.
876
877 * rtl.def (VEC_MERGE, VEC_SELECT, VEC_CONCAT, VEC_DUPLICATE):
878 Change code so they are arithmetic expressions now.
879 * simplify-rtx.c (simplify_unary_operation, simplify_binary_operation,
880 simplify_ternary_operation): Deal with VEC_* expressions.
881
882 * i386.md (vmaskcmp, pinsrw, movd patterns): Fix RTL representation.
883
83fd323c
JH
884Sat Feb 8 00:21:22 CET 2003 Jan Hubicka <jh@suse.cz>
885
886 * cfgrtl.c (verify_flow_info): Use control_flow_insn_p.
887 * reload1.c (fixup_abnormal_edges): Split basic blocks when EH edges
888 possibly got duplicated.
889
4ee7aa60
RH
8902003-02-08 Richard Henderson <rth@redhat.com>
891
892 * config/alpha/alpha.c (override_options): Turn off explicit
893 relocs until post-peep2 code duplication resolved.
894
c117dddc
KH
8952003-02-08 Kazu Hirata <kazu@cs.umass.edu>
896
897 * optabs.c (expand_unop): Widen clz properly when clz is done
898 via libcall.
899
8aa063fb
KH
9002003-02-08 Kazu Hirata <kazu@cs.umass.edu>
901
902 * config/h8300/clzsi2.c: Replace "GNU CC" with "GCC".
903 * config/h8300/crti.asm: Likewise.
904 * config/h8300/crtn.asm: Likewise.
905 * config/h8300/ctzsi2.c: Likewise.
906 * config/h8300/fixunssfsi.c: Likewise.
907 * config/h8300/h8300-protos.h: Likewise.
908 * config/h8300/h8300.c: Likewise.
909 * config/h8300/h8300.h: Likewise.
910 * config/h8300/h8300.md: Likewise.
911 * config/h8300/paritysi2.c: Likewise.
912 * config/h8300/popcountsi2.c: Likewise.
913 * config/h8300/rtems.h: Likewise.
914
01a132bb
ZD
9152003-02-08 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
916
917 * doc/invoke.texi: Documentation for my previous commit.
918 * doc/passes.texi: Ditto.
919
617b465c
ZD
9202003-02-08 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
921
922 * cfgloop.h (fix_loop_placement, can_duplicate_loop_p,
923 duplicate_loop_to_header_edge, loopify, remove_path, split_loop_bb):
924 Declare.
925 (DLTHE_FLAG_UPDATE_FREQ): New.
926 * cfgloopmanip.c (duplicate_loop, duplicate_subloops, copy_loops_to,
927 loop_redirect_edge, loop_delete_branch_edge, copy_bbs, remove_bbs,
928 rpe_enum_p, find_branch, alp_enum_p, add_loop, fix_loop_placements,
929 fix_bb_placement, fix_bb_placements, place_new_loop,
930 scale_loop_frequencies, scale_bbs_frequencies, record_exit_edges):
931 New static functions.
932 (fix_loop_placement, can_duplicate_loop_p,
933 duplicate_loop_to_header_edge, loopify, remove_path, split_loop_bb):
934 New functions.
935
936 * cfgloop.h (loop_optimizer_init, loop_optimizer_finalize,
937 unswitch_loops): Declare.
938 * loop-init.c: New file.
939 * loop-unswitch.c: New file.
940 * Makefile.in (loop-init.o, loop-unswitch.o): New.
941 * params.def (PARAM_MAX_UNSWITCH_INSNS, PARAM_MAX_UNSWITCH_LEVEL): New.
942 * toplev.c (DFI_loop2): New dump.
943 (flag_unswitch_loops): New.
944 (lang_independent_options): Add it.
945 (rest_of_compilation): Call new loop optimizer.
946 (parse_options_and_default_flags): Turn flag_unswitch_loops on with -O3.
947
3bd03194
KH
9482003-02-08 Kazu Hirata <kazu@cs.umass.edu>
949
950 * config/h8300/clzsi2.c: New.
951 * config/h8300/ctzsi2.c: Likewise.
952 * config/h8300/paritysi2.c: Likewise.
953 * config/h8300/popcountsi2.c: Likewise.
954 * config/h8300/t-h8300 (LIB2FUNCS_EXTRA): Add above files.
955
d865b122
DE
9562003-02-07 David Edelsohn <edelsohn@gnu.org>
957
958 * config/rs6000/rs6000.h (CLZ_DEFINED_VALUE_AT_ZERO): Define.
959 * config/rs6000/rs6000.md (clzsi2): Rename from cntlzw2.
94993909 960 (ctzsi2): New pattern.
d865b122
DE
961 (ffssi2): Use clz instead of unspec.
962 (clzdi2): Rename from cntlzd2.
94993909 963 (ctzdi2): New pattern.
d865b122
DE
964 (ffsdi2): Use clz instead of unspec.
965
8f37dd98
LR
9662003-02-07 Loren James Rittle <ljrittle@acm.org>
967
968 * config/alpha/freebsd.h (LINK_SPEC): Weaken error to notice.
969 * config/ia64/freebsd.h (LINK_SPEC): Likewise.
970 * config/sparc/freebsd.h (LINK_SPEC): Likewise.
971 * config/i386/freebsd.h (LINK_SPEC): Add clause to mirror other arches.
972
83205b9b
WB
9732003-02-07 Wolfgang Bangerth <bangerth@ticam.utexas.edu>
974
975 * doc/trouble.texi: Document pitfalls of two-stage name lookup.
976
710ee3ed
RH
9772003-02-07 Richard Henderson <rth@redhat.com>
978
979 PR 9226
3963c2e0
ZW
980 * gcse.c (local_cprop_find_used_regs): New.
981 (local_cprop_pass): Use it.
710ee3ed 982
3ef879d2
FF
9832003-02-07 Fred Fish <fnf@intrinsity.com>
984
985 * mips-tfile.c (parse_def): Parenthesize assignments to fix
3963c2e0 986 precedence bugs.
3ef879d2 987
a0f0e963 9882003-02-07 Segher Boessenkool <segher@koffie.nl>
3ef879d2 989
3963c2e0 990 * genoutput.c (output_get_insn_name): Handle NOOP_MOVE_INSN_CODE.
a0f0e963 991
46847aa6
RS
9922003-02-07 Roger Sayle <roger@eyesopen.com>
993
994 * builtin-types.def (BT_FN_FLOAT_FLOAT_FLOAT): New built-in type.
995 (BT_FN_LONG_DOUBLE_LONG_DOUBLE_LONG_DOUBLE): Likewise.
996 (BT_FN_DOUBLE_DOUBLE_DOUBLE): Likewise.
997 * builtins.def: Define pow, powf, powl, atan2, atan2f and atan2l
998 builtin functions (and their __builtin_* variants).
999 * builtins.c (mathfn_built_in): Handle missing log{,f,l} cases.
1000 (expand_builtin): Don't expand log{,f,l}, pow{,f,l} or atan2{,f,l}
1001 when not optimizing.
1002
1003 * doc/extend.texi: Document new pow and atan2 builtins, and
1004 their float and long double variants. Realphabetize builtins.
1005
c48d6750
JH
1006Fri Feb 7 23:24:28 CET 2003 Jan Hubicka <jh@suse.cz>
1007
1008 * i386.md (sse2_nandv2di3): Fix.
1009
5e062767
DS
10102003-03-07 Danny Smith <dannysmith@users.sourceforge.net>
1011
1012 * config/i386/i386.h (MS_AGGREGATE_RETURN): New define.
1013 * config/i386/cygwin.h (MS_AGGREGATE_RETURN): Override default
1014 definition.
1015 * config/i386/i386.h (ix86_return_in_memory): Return aggregate
1016 types of up to 8 bytes via registers if MS_AGGREGATE_RETURN.
1017
3f755ed0
JH
1018Fri Feb 7 22:22:40 CET 2003 Jan Hubicka <jh@suse.cz>
1019
1020 * i386.md (movdi_rex64_1): Fix mmx<->int move opcode.
1021
0816bcd2
DB
10222003-02-07 Daniel Berlin <dberlin@dberlin.org>
1023
1024 * cfg.c (dump_flow_info): Add back accidently deleted line.
1025
7bf0a593
AP
10262003-02-07 Andrey Petrov <petrov@netbsd.org>
1027
1028 * optabs.c (expand_float): Search wider integer modes first.
1029
01e4596e
BW
10302003-02-07 Bob Wilson <bob.wilson@acm.org>
1031
1032 * config/xtensa/xtensa.h (LIBGCC2_WORDS_BIG_ENDIAN): Set this
1033 based on preprocessor flag.
1034
fbef91d8
RS
10352003-02-07 Roger Sayle <roger@eyesopen.com>
1036 Richard Henderson <rth@redhat.com>
1037
1038 * gcse.c (implicit_sets): New.
1039 (compute_hash_table_work): Include them in hash table.
1040 (find_implicit_sets, fis_get_condition): New.
1041 (one_cprop_pass): Allocate and free implicit_sets; call
1042 find_implicit_sets before building hash table.
1043
6713831e
JT
10442003-02-07 Jason Thorpe <thorpej@wasabisystems.com>
1045
1046 * config/t-netbsd (USER_H): Revert previous change.
1047
10d2dbe2
GG
10482003-02-07 Gabor Greif <ggreif@lucent.com>
1049
1050 * doc/c-tree.texi (Namespaces): Fix typo.
1051
d1d3c9a6
JH
1052Fri Feb 7 02:18:57 CET 2003 Jan Hubicka <jh@suse.cz>
1053
1054 * regrename.c (do_replace, find_oldest_value_reg,
1055 copyprop_hardreg_forward_1): Update register attributes.
1056
1b1f249d
VM
10572003-02-06 Vladimir Makarov <vmakarov@redhat.com>
1058
1059 * genautomata.c (VLA_PTR_CREATE, VLA_PTR_EXPAND, VLA_PTR_ADD,
1060 VLA_HWINT_CREATE, VLA_HWINT_EXPAND, VLA_HWINT_ADD): Use temporay
1061 variables starting with underscore.
1062 (struct unit_usage): New structure.
1063 (unit_usages, cycle_alt_unit_usages): New global variables.
1064 (check_unit_distribution_in_reserv): Remove it.
1065 (store_alt_unit_usage): New function.
1066 (check_regexp_units_distribution): Rewrite it.
1067
90330d31
JDA
10682003-02-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1069
1070 * config.gcc (hppa*-*-linux*): Set MASK_NO_SPACE_REGS in
1071 target_cpu_default.
1072 * pa.c (attr_length_call): Add 8 to call length (long indirect PA 1.X)
1073 if not MASK_NO_SPACE_REGS.
1074 (output_call): Adjust return pointer, don't load new space register
1075 into %sr0, and use %sr4 for call if TARGET_NO_SPACE_REGS is true.
1076 (pa_asm_output_mi_thunk): Don't load new space register into %sr0 if
1077 TARGET_NO_SPACE_REGS is true.
1078 * pa.md (return_external_pic): Add TARGET_NO_SPACE_REGS to insn
1079 conditions.
1080 (epilogue): Always use return_internal if TARGET_NO_SPACE_REGS is true.
1081 (interspace_jump): Add new pattern for when TARGET_NO_SPACE_REGS is
1082 true. Use bve when TARGET_64BIT is true.
1083
d1164330
RH
10842003-02-06 Richard Henderson <rth@redhat.com>
1085
1086 * combine.c (nonzero_bits): Fix double break.
1087
5fbf0217 10882003-02-06 Eric Botcazou <ebotcazou@libertysurf.fr>
3963c2e0 1089 Richard Henderson <rth@redhat.com>
5fbf0217
EB
1090
1091 PR c/9530
1092 * config/i386/i386.c (ix86_function_ok_for_sibcall): Forbid sibcalls
1093 from functions that return a float to functions that don't.
1094
8f62128d
JH
1095Thu Feb 6 00:18:38 CET 2003 Jan Hubicka <jh@suse.cz>
1096
1097 * i386.c (x86_inter_unit_moves): New variable.
1098 (ix86_secondary_memory_needed): Fix 64bit case, honor
1099 TARGET_INTER_UNIT_MOVES
1100 * i386.h (x86_inter_unit_moves): Declare.
1101 (TARGET_INTER_UNIT_MOVES): New macro.
1102 * i386.md (movsi_1): Cleanup constraints; disable
1103 when not doing inter-unit moves.
1104 (movsi_1_nointernunit): New.
1105 (movdi_1_rex64): Fix constraints; deal with SSE->GPR moves.
1106 (movdi_1_rex64_nointerunit): New.
1107 (mivsf_1): disable when not doing inter-unit moves.
1108 (movsf_1_nointerunit): New.
1109
1110 * basic-block.h (inside_basic_block_p): Declare.
1111 * cfgbuild.c (inside_basic_block_p): Make global.
1112 * haifa-sched.c (unlink_other_notes0: Deal with NOT_INSN_BASIC_BLOCK.
1113 * scheudle-ebb.c (schedule_ebb): Return last basic block of trace;
1114 update CFG.
1115 (fix_basic_block_boundaries, add_missing_bbs): New.
1116 (rank): Use profile.
1117 (scheudle_ebbs): Rely on CFG; update coments.
1118
476d9098
GK
11192003-02-05 Geoffrey Keating <geoffk@apple.com>
1120
1121 * Makefile.in (host_hook_obj): New.
1122 (OBJS): Add $(host_hook_obj).
1123 (host_default.o): New rule.
1124 * config.gcc (host_hook_obj): New, default to host-default.o.
1125 (powerpc-*-darwin*): Use host-darwin.o.
1126 (out_host_hook_obj): New.
1127 * configure: Regenerate.
1128 * configure.in: Print information about out_host_hook_obj, substitute
1129 into output files.
1130 * host-default.c: New file.
1131 * hosthooks.h: New file.
1132 * toplev.c (general_init): Call host_hooks.extra_signals.
1133 * config/rs6000/host-darwin.c: New file.
1134 * config/rs6000/x-darwin: New file.
1135 * doc/hostconfig.texi: Add documentation for new host hook.
1136 Rearrange existing documentation.
1137
69bd9368
RS
11382003-02-05 Roger Sayle <roger@eyesopen.com>
1139
1140 * dwarf2out.c (mem_loc_descriptor): Replace ASM_SIMPLIFY_DWARF_ADDR
1141 with *targetm.delegitimize_address.
1142 (rtl_for_decl_location): Likewise.
1143 * dwarfout.c (output_mem_loc_descriptor): Likewise. Include target.h.
1144 * Makefile.in (dwarf2out.c, dwarfout.c): Depend upon $(TARGET_H)
1145
1146 * config/i386/i386.h (ASM_SIMPLIFY_DWARF_ADDR): Remove definition.
1147 * config/i386/i386-protos.h (i386_simplify_dwarf_addr): Remove
1148 prototype.
1149 * config/i386/i386.c (ix86_delegitimize_address): Renamed from
1150 i386_simplify_dwarf_addr. Made static. Prototyped.
1151 (TARGET_DELEGITIMIZE_ADDRESS): Update definition from
1152 i386_simplify_dwarf_addr to ix86_delegitimize_address.
1153 (ix86_find_base_term): Likewise.
1154 (maybe_get_pool_constant): Likewise.
1155
1156 * config/s390/s390.h (ASM_SIMPLIFY_DWARF_ADDR): Remove definition.
1157 * config/s390/s390-protos.h (s390_simplify_dwarf_addr): Remove
1158 prototype.
1159 * config/s390/s390.c (s390_delegitimize_address): Renamed from
1160 s390_simplify_dwarf_addr. Made static. Prototyped.
1161 (TARGET_DELEGITIMIZE_ADDRESS): Define as s390_delegitimize_address.
1162
7127fd58
RH
11632003-02-05 Richard Henderson <rth@redhat.com>
1164
8dde7a2c 1165 PR c/8602
3963c2e0
ZW
1166 * integrate.c (output_inline_function): Reset input_filename
1167 and lineno from the decl before rest_of_compilation.
7127fd58 1168
7dba8395
RH
11692003-02-05 Richard Henderson <rth@redhat.com>
1170
1171 * defaults.h (CLZ_DEFINED_VALUE_AT_ZERO): New.
1172 (CTZ_DEFINED_VALUE_AT_ZERO): New.
1173 * doc/rtl.texi, doc/tm.texi: Document them.
1174
1175 * combine.c (nonzero_bits) [CLZ, CTZ]: Handle the definedness
1176 of the value at zero properly.
1177 * fold-const.c (tree_expr_nonnegative_p): Likewise.
1178 * simplify-rtx.c (simplify_unary_operation): Likewise.
1179
1180 * config/alpha/alpha.h (CLZ_DEFINED_VALUE_AT_ZERO): New.
1181 (CTZ_DEFINED_VALUE_AT_ZERO): New.
1182
1183 * config/arm/arm.c (TARGET_INIT_BUILTINS): Remove.
1184 (TARGET_EXPAND_BUILTIN): Remove.
1185 (def_builtin, arm_init_builtins, arm_expand_builtin): Remove.
1186 * config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO): New.
1187 (enum arm_builtins): Remove.
1188 * config/arm/arm.md (UNSPEC_CLZ): Remove.
1189 (clzsi2): Rename from clz; use clz instead of unspec.
1190 (ctzsi2): New.
1191 * config/arm/arm-protos.h: Update.
1192
8d705469
JH
1193Wed Feb 5 23:12:57 CET 2003 Jan Hubicka <jh@suse.cz>
1194
1195 * i386-protos.h (x86_emit_floatuns): Declare.
1196 * i386.c (x86_emit_floatuns): New global function.
1197 * i386.md (floatunssisf2, floatunsdisf2,
1198 floatunsdidf2): New patterns.
1199
bc810602
ZD
12002003-01-25 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1201
1202 * cfgloopmanip.c (force_single_succ_latches): Fix missindentation.
1203
07938cec
HB
12042003-02-05 Hans Boehm <Hans.Boehm@hp.com>
1205
1206 * config/ia64/unwind-ia64.c: include coretypes.h, tm.h to get
1207 config/ia64/linux.h
1208
ca9398d1
RS
12092002-02-05 Roger Sayle <roger@eyesopen.com>
1210
1211 * cfgloop.h (flow_bb_inside_loop_p): Correct prototype again.
1212
4f6ae35d
JJ
12132003-02-05 Jakub Jelinek <jakub@redhat.com>
1214
1215 PR optimization/8555
1216 * config/i386/i386.md (sse_mov?fcc split): Handle op2 == op3 case
1217 instead of aborting.
1218
8acfdd43
RH
12192003-02-04 Richard Henderson <rth@redhat.com>
1220
1221 * config/i386/i386.md (UNSPEC_BSF): Remove.
1222 (ffssi2): Split into cmove and no_cmove insns and splitters;
1223 lose pentium float trick for now.
1224 (ffssi_1): Add * to name; use CTZ instead of UNSPEC.
1225 (ctzsi2, clzsi2, bsr): New.
1226
c407570a
RH
12272003-02-04 Richard Henderson <rth@redhat.com>
1228
1229 * config/ia64/ia64.c (rtx_needs_barrier): Handle POPCOUNT,
1230 UNSPEC_GETF_EXP; remove UNSPEC_POPCNT.
1231 * config/ia64/ia64.md (UNSPEC_POPCNT): Remove.
1232 (ffsdi2): Use popcount instead of unspec.
1233 (popcountdi2): Rename from *popcnt.
1234 (ctzdi2, clzdi2, getf_exp_tf): New.
1235
4b3cf522
KH
12362003-02-04 Kazu Hirata <kazu@cs.umass.edu>
1237
1238 * genconfig.c (main): Generate CC0_P.
1239 * rtl.h (CC0_P): Remove.
1240
dfff898c
RH
12412003-02-04 Richard Henderson <rth@redhat.com>
1242
1243 * libgcc2.h, libgcc2.c (__ffsSI2): New.
1244 (__ffsDI2): Rename from __ffsdi2.
1245 * mklibgcc.in (lib2funcs): Add _ffssi2.
1246
0c9ed856
RH
12472003-02-04 Richard Henderson <rth@redhat.com>
1248
1249 * libgcc2.c (__paritysi2, __paritydi2): Replace last two reduction
1250 rounds with a "bit table" lookup.
1251
9537511b
UW
12522003-02-04 Ulrich Weigand <uweigand@de.ibm.com>
1253
1254 * reload.c (find_reloads): Do not use the mode specified in the insn
3ef879d2 1255 pattern as reload mode for address operands. Do not generate optional
9537511b
UW
1256 reloads for operands where a mandatory reload was already pushed.
1257
1efd0b97
RH
12582003-02-04 Richard Henderson <rth@redhat.com>
1259
1260 * longlong.h [alpha] (count_leading_zeros, count_trailing_zeros): Use
1261 builtins instead of inline assembly.
1262
087fc75a 12632003-02-04 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
3ef879d2 1264
087fc75a
FH
1265 PR c/9376
1266 * libgcc2.c (__subvdi3): Fix typo.
1267
f0f0d98e
JH
1268Tue Feb 4 21:46:05 CET 2003 Jan Hubicka <jh@suse.cz>
1269
1270 * i386.md (movti_rex64): Fix constraint.
1271
09f26fb5
JH
1272Tue Feb 4 18:40:42 CET 2003 Jan Hubicka <jh@suse.cz>
1273
1274 * i386.md (vector push splitters): Fix typo in resolving conflict.
1275
ff6e2d3e
RB
12762003-02-04 Rodney Brown <rbrown64@csc.com.au>
1277
1278 * config/i386/i386.c (x86_function_profiler): Fix typo in format.
1279
9e80ada7
PE
12802003-02-04 Phil Edwards <pme@gcc.gnu.org>
1281
1282 * doc/install.texi (*-*-linux-gnu): Mention glibc requirements
1283 for recent libstdc++. Remove formatting cruft.
1284
79c758fb
JJ
12852003-02-04 Jakub Jelinek <jakub@redhat.com>
1286
1287 * dwarf2out.c (dwarf2out_finish): Add AT_comp_dir
1288 attribute even if input file name is absolute, but one of the
1289 includes is relative.
1290
b3a8389d
JM
12912003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
1292
1293 * doc/gcc.texi, doc/gccint.texi, doc/gcov.texi,
1294 doc/include/fdl.texi, doc/invoke.texi: Update to GFDL 1.2.
1295 * doc/install.texi: Update copyright dates. Update to GFDL 1.2.
1296
dabb3f04
RH
12972003-02-03 Richard Henderson <rth@redhat.com>
1298
1299 * libgcc2.c (__ffsdi2, __clzsi2, __clzdi2, __ctzsi2, __ctzdi2,
1300 __popcountsi2, __popcountdi2, __paritysi2, __paritydi2): Change
1301 return type to "int". Shuffle declarations and undef int trap.
1302 * libgcc2.h: Remove their declarations.
1303 * optabs.c (expand_unop): Force outmode to int for bitops.
1304
985d0d50
BW
13052003-02-03 Bob Wilson <bob.wilson@acm.org>
1306
1307 * config/xtensa/xtensa.c (order_regs_for_local_alloc): Order the
1308 coprocessor registers before floating-point registers.
1309 * config/xtensa/xtensa.h (REG_ALLOC_ORDER): Adjust register numbers
1310 to account for a previously removed register.
1311 (SPEC_REG_FIRST, SPEC_REG_LAST, SPEC_REG_NUM, COUNT_REGISTER_REGNUM):
1312 Delete unused macros.
1313
7f0e57bd
JH
1314Mon Feb 3 21:19:11 CET 2003 Jan Hubicka <jh@suse.cz>
1315
1316 * i386.c (ix86_expand_store_builtin): Always force op1 to register.
1317 (mov*_internal): Fix predicates; require one of operands to not be
1318 memory.
1319 (SSE?MMX move expanders): Fix predicates; force one of operands to
1320 register.
1321 (SSE/MMX push patterns): Reorganize; fix x86-64 code generation.
1322 (movups/movupd/movdqu patterns): Force one of operands to not be
1323 memory.
1324
7daebb7a
RS
13252002-02-03 Roger Sayle <roger@eyesopen.com>
1326
1327 * hooks.c (hook_rtx_rtx_identity): Generic hook function that
1328 takes a single rtx and returns it unmodified.
1329 * hooks.h (hook_rtx_rtx_identity): Prototype here.
ff6e2d3e 1330 * target.h (struct gcc_target): Add "delegitimize_address"
7daebb7a
RS
1331 field to target structure.
1332 * target-def.h (TARGET_DELEGITIMIZE_ADDRESS): Provide default
1333 for delegitimize_address target using hook_rtx_rtx_identity.
1334 (TARGET_INITIALIZER): Initialize delegitimize_address field
1335 using TARGET_DELEGITIMIZE_ADDRESS macro.
1336 * simplify-rtx.c (avoid_constant_pool_reference): Handle float
1337 extensions of constant pool references. Use delegitimize_address
1338 to undo the obfuscation of "-fpic".
1339 * Makefile.in (simplify-rtx.o): Add dependency on target.h.
1340
1341 * config/i386/i386.c (TARGET_DELEGITIMIZE_ADDRESS): Define as
1342 i386_simplify_dwarf_addr.
1343 (ix86_find_base_term): Simplify using i386_simplify_dwarf_addr.
1344 (maybe_get_pool_constant): Likewise.
1345
84520a20
JH
1346Mon Feb 3 16:01:17 CET 2003 Jan Hubicka <jh@suse.cz>
1347
1348 * i386.c (ix86_expand_int_movcc): Fix setcc sign bit case.
1349
035b2a34
JH
1350Mon Feb 3 01:30:11 CET 2003 Jan Hubicka <jh@suse.cz>
1351
1352 * regclass.c (cannot_change_mode_set_regs): Correct argument order.
1353
1f143d5a
KG
13542003-02-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1355
1356 * mips/_tilib.c: Don't include tsystem.h or defaults.h. Don't
1357 define LIBGCC2_WORDS_BIG_ENDIAN. Include coretypes.h and tm.h.
1358
4b550d9f
AS
13592003-02-02 Andreas Schwab <schwab@suse.de>
1360
1361 * varasm.c (asm_output_aligned_bss): Declare as possibly unused.
1362
0732a089
RE
13632003-02-02 Richard Earnshaw <rearnsha@arm.com>
1364
1365 * arm.md (sibcall_epilogue): Set the "conds" to "clob".
1366 (epilogue_insns): Likewise.
1367
f269f54f
JDA
13682003-02-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1369
1370 * doc/install.texi (hppa*-hp-hpux11*): Update installation notes.
1371
611ad29e
JDA
13722003-02-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1373
1374 * pa-protos.h (attr_length_millicode_call): Remove second argument.
1375 (attr_length_indirect_call, attr_length_indirect_call,
1376 attr_length_save_restore_dltp): New prototypes.
1377 * pa.c (attr_length_millicode_call): Remove second argument. Check
1378 INSN_ADDRESSES_SET_P in distance calculation.
1379 (output_millicode_call): Check INSN_ADDRESSES_SET_P before using
1380 INSN_ADDRESSES.
1381 (attr_length_call): Check INSN_ADDRESSES_SET_P in distance calculation.
1382 (output_call): Check INSN_ADDRESSES_SET_P before using INSN_ADDRESSES.
1383 Call attr_length_call directly.
1384 (attr_length_indirect_call, output_indirect_call,
1385 attr_length_save_restore_dltp): New functions.
1386 * pa.md (attr_length_millicode_call): Drop second argument from all
1387 patterns.
1388 (return_internal_pic): Delete.
1389 (return_external_pic): Remove use of PIC register and pic operand and
1390 flag checks.
1391 (epilogue): Use return_internal for both normal and pic code.
1392 (call, call_value): Emit new 32-bit pic patterns for symref and
1393 indirect calls. Remove uses for arg pointer and pic register.
1394 (call_symref_pic, call_symref_pic_post_reload, call_reg_pic,
1395 call_reg_pic_post_reload, call_val_symref_pic,
1396 call_val_symref_pic_post_reload, call_val_reg_pic,
1397 call_val_reg_pic_post_reload): New pre and post reload insn patterns.
1398 Implement define_split and define_peephole2 patterns for pre reload
1399 patterns.
1400 (call_symref_64bit, call_internal_reg_64bit, call_value_symref_64bit,
1401 call_value_internal_reg_64bit): Shorten names.
1402 (all call patterns): Explicitly indicate registers used and clobbered.
1403 Use attr_length_indirect_call and attr_length_save_restore_dltp for
1404 attribute length calculation. Move code generation for indirect calls
1405 to output_indirect_call.
1406 (sibcall, sibcall_value): Don't restore PIC register.
1407 (exception_receiver, builtin_setjmp_receiver): Add blockage after PIC
1408 register retore.
1409
8cacda7c
GP
14102003-02-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1411
1412 * doc/install.texi (Testing): Simplify and compress instructions
1413 concerning Dejagnu.
1414
cbc158bb
JDA
14152003-02-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1416
1417 * collect2.c (pexecute_pid): Rename to pid.
1418 (collect_wait, collect_execute, scan_prog_file, scan_libraries): Use
1419 pid.
1420
dcef1843
GK
14212003-02-01 Geoffrey Keating <geoffk@apple.com>
1422
1423 * doc/extend.texi (Function Attributes): Remove documentation
1424 for PowerPC Windows NT function attributes..
1425
5d7bed9d
DJ
14262003-02-01 Daniel Jacobowitz <drow@mvista.com>
1427
1428 * dwarf2out.c (gen_type_die): Check for typedefs before calling
1429 for TYPE_MAIN_VARIANT.
1430
53585c36
RH
14312003-02-01 Richard Henderson <rth@redhat.com>
1432
1433 * libgcc2.c: Include auto-host.h.
1434 (ATTRIBUTE_HIDDEN): New.
1435 (__clz_tab): Don't declare here for clz and ctz.
1436 (__clzsi2, __clzdi2): Use count_leading_zeros.
1437 (__ctzsi2, __ctzdi2): Use count_trailing_zeros.
1438 (__popcount_tab): Mark ATTRIBUTE_HIDDEN.
1439 (__paritysi2, __paritydi2): Use shifts instead of __popcount_tab.
1440 * longlong.h (__clz_tab): Mark ATTRIBUTE_HIDDEN.
1441
bc8a6d63
RH
14422003-02-01 Richard Henderson <rth@redhat.com>
1443
1444 * config/i386/i386.md (addsi_1_zext splitter): Add TARGET_64BIT
1445 to the conditional.
1446 (ashlsi3_1_zext splitter): Likewise.
1447
2928cd7a
RH
14482003-02-01 Richard Henderson <rth@redhat.com>
1449
1450 * optabs.c (expand_unop): Use word_mode for outmode of bit scaners.
1451 * libgcc2.c (__ffsdi2, __clzsi2, __clzdi2, __ctzsi2, __ctzdi2,
1452 __popcountsi2, __popcountdi2, __paritysi2 __paritydi2): Change
1453 return type to Wtype.
1454
1455 * libgcc-std.ver (GCC_3.4): Fix inheritance.
1456
1457 * config/i386/i386.md (ffssi2): Use nonimmediate_operand for
1458 expander input constraint.
1459
14602003-02-01 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
1461
ff6e2d3e
RB
1462 * optabs.h (optab_index): Add OTI_clz, OTI_ctz, OTI_popcount and
1463 OTI_parity.
1464 (clz_optab, ctz_optab, popcount_optab, parity_optab): New.
1465 * optabs.c (widen_clz, expand_parity): New.
1466 (expand_unop): Handle clz and parity. Hardcode SImode as outmode
1467 for libcalls to clz, ctz, popcount, and parity.
1468 (init_optabs): Init clz_optab, ctz_optab, popcount_optab and
1469 parity_optab, and set up libfunc handlers.
1470 * libgcc2.c (__clzsi2, __clzdi2, __ctzsi2, __ctzdi2,
1471 __popcountsi2, __popcountdi2, __paritysi2 __paritydi2,
1472 __popcount_tab): New.
1473 * libgcc2.h: Declare them.
1474 * libgcc-std.ver (GCC_3.4): Add new functions from libgcc2.c.
1475 * genopinit.c (optabs): Add clz_optab, ctz_optab, popcount_optab
1476 and parity_optab.
1477 * builtin-types.def (BT_FN_INT_LONG, BT_FN_INT_LONGLONG): New.
1478 * builtins.def (BUILT_IN_CLZ, BUILT_IN_CTZ, BUILT_IN_POPCOUNT,
1479 BUILT_IN_PARITY, BUILT_IN_FFSL, BUILT_IN_CLZL, BUILT_IN_CTZL,
1480 BUILT_IN_POPCOUNTL, BUILT_IN_PARITYL, BUILT_IN_FFSLL,
1481 BUILT_IN_CLZLL, BUILT_IN_CTZLL, BUILT_IN_POPCOUNTLL,
1482 BUILT_IN_PARITYLL): New.
1483 * builtins.c (expand_builtin_unop): Rename from expand_builtin_ffs
1484 and add optab argument.
1485 (expand_builtin): Expand BUILT_IN_{FFS,CLZ,POPCOUNT,PARITY}*.
1486 * tree.def (CLZ_EXPR, CTZ_EXPR, POPCOUNT_EXPR, PARITY_EXPR): New.
1487 * expr.c (expand_expr): Handle them.
1488 * fold-const.c (tree_expr_nonnegative_p): Likewise.
1489 * rtl.def (CLZ, CTZ, POPCOUNT, PARITY): New.
1490 * reload1.c (eliminate_regs): Handle them.
1491 (elimination_effects): Likewise.
1492 * function.c (instantiate_virtual_regs_1): Likewise
1493 * genattrtab.c (check_attr_value): Likewise.
1494 * simplify-rtx.c (simplify_unary_operation): Likewise.
1495 * c-common.c (c_common_truthvalue_conversion): Handle POPCOUNT_EXPR.
1496 * combine.c (combine_simplify_rtx): Handle POPCOUNT and PARITY.
1497 (nonzero_bits): Handle CLZ, CTZ, POPCOUNT and PARITY.
1498 * config/alpha/alpha.md (clzdi2, ctzdi2, popcountdi2): New.
1499 * config/arm/arm.c (arm_init_builtins): Rename __builtin_clz to
1500 __builtin_arm_clz.
1501 * Makefile.in (LIB2FUNCS_1, LIB2FUNCS_2): Move...
1502 * mklibgcc.in (lib2funcs): ...here and merge. Add new members.
1503 * doc/extend.texi (Other Builtins): Add new builtins.
1504 * doc/md.texi (Standard Names): Add new patterns.
2928cd7a 1505
112f7223
UW
15062003-02-01 Ulrich Weigand <uweigand@de.ibm.com>
1507
1508 * reload.c: Revert 2003-01-31 change.
1509
434c87d4
JH
1510Sat Feb 1 14:14:40 CET 2003 Jan Hubicka <jh@suse.cz>
1511
1512 * combine.c (combine_simplify_rtx): Use reversed_comparison_code_parts.
1513
271bd540
RS
15142003-02-01 Richard Sandiford <rsandifo@redhat.com>
1515
1516 * flags.h (flag_volatile): Remove declaration.
1517 (flag_volatile_global, flag_volatile_static): Likewise.
1518 * c-typeck.c (build_indirect_ref): Don't check flag_volatile.
1519 * toplev.c (flag_volatile): Remove definition.
1520 (flag_volatile_global, flag_volatile_static): Likewise.
1521 (f_options): Remove corresponding entries here.
1522 * varasm.c (make_decl_rtl): Don't check flag_volatile_global
1523 or flag_volatile_static.
1524 * doc/invoke.texi: Remove documentation of -fvolatile,
1525 -fvolatile-global and -fvolatile-static.
1526
17e6098e
JDA
15272003-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1528
1529 * pa.c (pa_output_function_prologue, pa_output_function_epilogue): Move
1530 updating of total_code_bytes from prologue to epilogue.
1531
2f278625
UW
15322003-01-31 Ulrich Weigand <uweigand@de.ibm.com>
1533
1534 * reload.c (find_reloads): Do not use the mode specified in the insn
1535 pattern as reload mode for address operands. Do not generate optional
1536 reloads for operands where a mandatory reload was already pushed.
1537 Generate optional reloads only in the final pass though find_reloads.
1538 (have_replacement_p): New function.
1539
05c425a9
GP
15402003-01-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1541
1542 * doc/install.texi (Testing): Remove a reference to our obsolete
1543 /testresults web pages and strip redundant information concerning
1544 test results.
1545 (Binaries): Refer to Microsoft Windows instead of listing all
1546 possible variants.
1547
b0c42aed
JH
1548Sat Feb 1 00:28:30 CET 2003 Jan Hubicka <jh@suse.cz>
1549
1550 * loop.c (emit_prefetch_instructions): Do conversion at right place in
1551 RTL chain.
1552
1553 * combine.c (simplify_set): Reverse order of ragumetns to
1554 REG_CANNOT_CHANGE_MODE_P
1555 * df.c (df_def_record_1): Likewise.
1556 * recog.c (register_operand): Likewise.
1557 * simplify-rtx.c (simplify_subreg): Likewise.
1558 * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): Update use of
1559 CANNOT_CHANGE_MODE_CLASS.
1560 * regclass.c (cannot_change_mode_set_regs, invalid_mode_change_p):
1561 Likewise.
1562 * reload.c (push_reload): Likewise.
1563 * alpha.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
1564 * ia64.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
1565 * mips.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
1566 * mips-protos.h (mips_cannot_change_mode_class): Update prototype.
1567 * mips.c (mips_cannot_change_mode_class): Update.
1568 * pa64-regs.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
1569 * rs6000.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
1570 * s390.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
1571 * sh.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
1572 * sh-protos.h (sh_cannot_change_mode_class): Update prototype.
1573 * sh.c (sh_cannot_change_mode_class): Update.
1574 * i386.h (CANNOT_CHANGE_MODE_CLASS): New.
1575 * tm.texi (CANNOT_CHANGE_MODE_CLASS): Update documentation.
1576
1f61a15d
GK
15772003-01-31 Geoffrey Keating <geoffk@apple.com>
1578
1579 * config/darwin.h (LINK_COMMAND_SPEC): Update for Nathan's recent
1580 change to LINK_COMMAND_SPEC in gcc.c.
1581
7c712dcc
LR
15822003-01-31 Jan Hubicka <jh@suse.cz>
1583
1584 PR c/9506
1585 * i386.c (override_options): Use DEFAULT_PCC_STRUCT_RETURN.
1586
e137391e
JDA
15872003-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1588
1589 * pa32-regs.h (REGNO_REG_CLASS, REG_CLASS_FROM_LETTER): Delete
1590 duplicated code.
1591
1824b90d
NS
15922003-01-31 Nathan Sidwell <nathan@codesourcery.com>
1593
1594 * tree.h (TYPE_BINFO_SIZE, TYPE_BINFO_SIZE_UNIT): Remove.
1595 (BINFO_ELTS): New #define.
1596 * stor-layout.c (finalize_record_size): Don't set them.
1597 * cp/cp-tree.h (BINFO_SUBVTT_INDEX, BINFO_VPTR_INDEX,
1598 BINFO_PRIMARY_BASE_OF): Use BINFO_ELTS.
1599 (BINFO_LANG_ELTS): New #define.
1600 * cp/tree.c (make_binfo): Use BINFO_LANG_ELTS.
1601 * java/class.c (make_class): Use BINFO_ELTS.
1602 (set_super_info): Likewse.
1603 (add_interface_do): Likewise.
1604 * objc/objc-act.c (start_class): Use BINFO_ELTS.
1605
8f9a402c
DS
16062003-01-31 Danny Smith <dannysmith@users.sourceforge.net>
1607
1608 * timevar.c (getrusage): Don't ever declare if not HAVE_GETRUSAGE.
1609 (times): Don't ever declare if not HAVE_TIMES.
1610 (clock): Don't ever declare if not HAVE_CLOCK.
1611
cdd1f01b
RH
16122003-01-30 Richard Henderson <rth@redhat.com>
1613
1614 * flow.c (update_life_info): Zap life info after cleanup_cfg.
1615 (regno_uninitialized): Use correct live at function entry set.
1616 (regno_clobbered_at_setjmp): Likewise.
1617
1618 * expr.c (store_expr): Promote all MEM intermediates to regs.
1619
6bc82793
KH
16202003-01-30 Kazu Hirata <kazu@cs.umass.edu>
1621
1622 * config/arm/arm.c: Fix comment typos.
1623 * config/arm/arm.h: Likewise.
1624 * config/arm/netbsd-elf.h: Likewise.
1625 * config/arm/netbsd.h: Likewise.
1626
f099d360
GK
16272003-01-30 Geoffrey Keating <geoffk@apple.com>
1628
1629 * gengtype.c (struct walk_type_data): Add needs_cast_p.
1630 (walk_type): Set needs_cast_p in walk_type_data.
1631 (write_types_process_field): Supply casts when required to suppress
1632 warnings.
1633 (write_root): Cast gt_pch_n_S to suppress warning.
1634 * Makefile.in: Remove -Wno-error from gtype-desc.o and c-decl.o.
f099d360
GK
1635 * config/rs6000/rs6000.c (print_operand): Mask off high bits only
1636 when they might exist.
1637 * config/rs6000/t-rs6000: Remove -Wno-error from varasm.o,
1638 insn-conditions.o, and rs6000.o.
1639
52895e1a
RH
16402003-01-30 Richard Henderson <rth@redhat.com>
1641
1642 * ggc-page.c (G.context_depth_allocations): New.
1643 (G.context_depth_collections): New.
1644 (alloc_page): Set G.context_depth_allocations.
1645 (ggc_collect): Set G.context_depth_collections.
1646 (ggc_push_context): Limit to HOST_BITS_PER_LONG contexts.
1647 (ggc_pop_context): Early exit for no allocations or collections.
1648
c35c7e52
RH
16492003-01-30 Richard Henderson <rth@redhat.com>
1650
1651 * tree-inline.c (walk_tree): Streamline duplicate hash table lookup.
1652
e43dd89d
RE
16532003-01-30 Richard Earnshaw <rearnsha@arm.com>
1654
1655 * arm.c (arm_compute_initial_elimination_offset): If optimizing for
1656 size, the link register is always saved if any other register is
1657 saved.
1658
87a902e4
KH
16592003-01-30 Kazu Hirata <kazu@cs.umass.edu>
1660
1661 * config/h8300/h8300-protos.h: Update the prototype for
1662 compute_plussi_cc.
1663 (cpp_reader): Declare before it is used.
1664 * config/h8300/h8300.c (compute_plussi_cc): Change the return
1665 type to int.
1666 * config/h8300/h8300.md (monitor_prologue): Call abort() if we
1667 see an unknown H8 variant.
1668
16692003-01-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
0186a143 1670
ff6e2d3e 1671 PR target/9316
0186a143
RC
1672 * config/rs6000/rtems.h: Add CPP_OS_DEFAULT_SPEC.
1673 * config/rs6000/sysv4.h: Add CPP_OS_RTEMS_SPEC.
1674 * config/rs6000/t-rtems: New file. multilib variants to match OS.
1675 * config.gcc (powerpc-*-rtems*): Use rs6000/t-rtems instead of
1676 rs6000/t-ppcgas so we get the desired multilibs.
1677
f55d7103
NC
16782003-01-30 Nick Clifton <nickc@redhat.com>
1679
1680 * config/arm/arm.c (arm_output_epilogue): Update stack pointer
1681 when popping saved IP register off the stack.
1682
b6d08ca1
KH
16832003-01-30 Kazu Hirata <kazu@cs.umass.edu>
1684
1685 * config/rs6000/aix43.h: Fix comment typos.
1686 * config/rs6000/aix51.h: Likewise.
1687 * config/rs6000/aix52.h: Likewise.
1688 * config/rs6000/altivec.h: Likewise.
1689 * config/rs6000/rs6000.c: Likewise.
1690 * config/rs6000/rs6000.h: Likewise.
1691 * config/rs6000/rs6000.md: Likewise.
1692 * config/rs6000/spe.md: Likewise.
1693
14d22dd6
MM
16942003-01-29 Mark Mitchell <mark@codesourcery.com>
1695
1696 * c-common.c (builtin_define_float_constants): Define
1697 __<TYPE>_HAS_INFINITY__ and __<TYPE>_HAS_QUIET_NAN__.
1698
825db093
KH
16992003-01-30 Kazu Hirata <kazu@cs.umass.edu>
1700
1701 * config/sh/lib1funcs.asm: Fix comment typos.
1702 * config/sh/linux.h: Likewise.
1703 * config/sh/sh.c: Likewise.
1704 * config/sh/sh.md: Likewise.
1705
f1d5271a
LR
17062003-01-30 Loren James Rittle <ljrittle@acm.org>
1707
1708 * objc/Make-lang.in (objc-parse.y): Find c-parse.in in $(srcdir).
1709
266a9ef1
AO
17102003-01-30 Alexandre Oliva <aoliva@redhat.com>
1711
1712 * config/fp-bit.h (__make_dp): Declare if TMODES.
1713
0889116d
KH
17142003-01-29 Kazu Hirata <kazu@cs.umass.edu>
1715
1716 * config/h8300/h8300.h (PREDICATE_CODES): Add entries for
1717 general_operand_src and general_operand_dst.
1718
c8c99a68
DE
17192003-01-29 David Edelsohn <edelsohn@gnu.org>
1720
1721 * config/rs6000/rs6000.c (function_arg_pass_by_reference):
1722 Return true for variable sized types.
1723 (rs6000_va_arg): Handle variable sized types passed by reference
1724 on non-SVR4 ABI.
1725
ccf4d512
RE
17262003-01-29 Richard Earnshaw <rearnsha@arm.com>
1727
1728 * arm.c (arm_legtimize_address): New function.
1729 * arm-protos.h (arm_legtimize_address): Add prototype.
1730 * arm.h (ARM_LEGITIMIZE_ADDRESS): Use arm_legitimize_address.
1731 (LEGITIMIZE_ADDRESS, THUMB_LEGITIMIZE_ADDRESS): Wrap with
1732 do ... while (0)
1733
0889116d 17342003-01-29 Joel Sherrill <joel@OARcorp.com>
0680c8fb 1735
7429b411 1736 PR bootstrap/9296
0680c8fb 1737 * gthr-rtems.h: Define __GTHREAD_MUTEX_INIT. Apparently no code
7429b411 1738 depended on it being defined until now.
0680c8fb 1739
7429b411 17402003-01-29 Joel Sherrill <joel@OARcorp.com>
c934274a 1741
7429b411 1742 PR target/9295
c934274a
JS
1743 * config/mips/rtems.h: Predefine __USE_INIT_FINI__ so generic
1744 RTEMS code knows which C++ initialization style the toolset
7429b411 1745 configuration is using.
c934274a 1746
0889116d 17472003-01-29 Joel Sherrill <joel@OARcorp.com>
2e327e6e 1748
7429b411 1749 PR bootstrap/9293
ff6e2d3e 1750 * config/m68k/t-crtstuff: Replace spaces with tabs, add
2e327e6e 1751 $(MULTILIB_CFLAGS) as compiler option and multilib crtbegin/end.o.
2e327e6e 1752
0889116d 17532003-01-29 Joel Sherrill <joel@OARcorp.com>
64abe03e 1754
7429b411 1755 PR bootstrap/9292
64abe03e
JS
1756 * config.gcc (hppa1.1-rtems): Did not include t-rtems nor enable
1757 RTEMS threads.
1758 * config/pa/rtems.h (LIB_SPEC): Use -N when linking.
64abe03e 1759
2f12fb2b
NC
17602003-01-29 Nick Clifton <nickc@redhat.com>
1761
1762 * Makefile.in (c-parse.o): Locate source file in $(parsedir)
1763 not $(srcdir).
1764
cf0150b9
AH
17652003-01-29 Andrew Haley <aph@redhat.com>
1766
1767 * tree-inline.c (walk_tree): Add CHAR_TYPE.
1768
9b74f3ea
JH
1769Wed Jan 29 10:26:12 CET 2003 Jan Hubicka <jh@suse.cz>
1770
1771 * i386.md (subdi3_carry_rex64): Fix typo.
1772
e150159c
SS
17732003-01-28 Stan Shebs <shebs@apple.com>
1774
1775 * coretypes.h (cpp_reader): Forward declare struct.
1776 * c-pragma.h (cpp_reader): Remove forward declaration.
1777 * hashtable.h (cpp_reader): Likewise.
1778 * scan.h (cpp_reader): Likewise.
1779 * tree.h (cpp_reader): Likewise.
1780 * config/darwin-protos.h (cpp_reader): Likewise.
1781 * config/arm/arm-protos.h (cpp_reader): Likewise.
1782 * config/rs6000/rs6000-protos.h: Remove GCC_CPPLIB_H ifdef, use
1783 struct cpp_reader in prototypes.
1784
53b50ac1
CC
17852003-01-28 Christian Cornelssen <ccorn@cs.tu-berlin.de>
1786
1787 * doc/install.texi: Add documentation for installation into
1788 tooldirs and with DESTDIR.
1789
021aa6ed
RH
17902003-01-28 Richard Henderson <rth@redhat.com>
1791
1792 * config.gcc (ia64*-*-aix*): Remove.
1793 * config/ia64/aix.h, config/ia64/t-aix: Remove file.
1794 * config/ia64/unwind-aix.c: Remove file.
1795
c1c1d123
AS
17962003-01-28 Andreas Schwab <schwab@suse.de>
1797
ff6e2d3e
RB
1798 * config/m68k/m68k.md (tablejump+2): Don't sign extend an address
1799 register.
1800 * config/m68k/apollo68.h (ASM_RETURN_CASE_JUMP): Likewise.
1801 * config/m68k/coff.h (ASM_RETURN_CASE_JUMP): Likewise.
1802 * config/m68k/linux.h (ASM_RETURN_CASE_JUMP): Likewise.
1803 * config/m68k/m68kelf.h (ASM_RETURN_CASE_JUMP): Likewise.
1804 * config/m68k/mot3300.h (ASM_RETURN_CASE_JUMP): Likewise.
1805 * config/m68k/netbsd-elf.h (ASM_RETURN_CASE_JUMP): Likewise.
1806 * config/m68k/pbb.h (ASM_RETURN_CASE_JUMP): Likewise.
c1c1d123 1807
6d09ef27
RS
18082003-01-28 Richard Sandiford <rsandifo@redhat.com>
1809
1810 * combine.c (nonzero_bits): Fix check for negative divide operands.
1811
1e1bd14e
RH
18122003-01-28 Richard Henderson <rth@redhat.com>
1813
1814 * config/ia64/ia64.c (ia64_rwreloc_section_type_flags): New.
1815 * config/ia64/hpux.h (TARGET_SECTION_TYPE_FLAGS): New.
1816
e37135f7
RH
18172003-01-28 Richard Henderson <rth@redhat.com>
1818
1819 * cse.c (find_best_addr): Kill !ADDRESS_COST code.
1820
75642f32
RH
1821 * config/cris/cris.c (cris_address_cost): Make static.
1822 (TARGET_RTX_COSTS, TARGET_ADDRESS_COST): New.
1823 * config/cris/cris.h (ADDRESS_COST): Remove.
1824 * config/cris/cris-protos.h: Update.
1825
e37135f7 18262003-01-23 Mike Stump <mrs@apple.com>
1f80c9ef
MS
1827
1828 * regclass.c (init_reg_autoinc): New function.
1829 (regclass): Move initialization of forbidden_inc_dec_class from
1830 here...
1831 (init_regs): to here. Avoids reinitialization for each function,
1832 saving compilation time.
1833
9fbd3e41
JM
18342003-01-28 Jason Merrill <jason@redhat.com>
1835
1836 * cpplib.h (struct cpp_options): Add warn_deprecated field.
1837 * cppinit.c (cpp_create_reader): Turn it on by default.
1838 * c-opts.c (c_common_decode_option): Set it.
1839 * cpplib.c (do_pragma_once): Only complain about #pragma once
1840 if warn_deprecated is set.
1841
fe352c29 18422003-01-28 Dale Johannesen <dalej@apple.com>
9fbd3e41 1843
1e1bd14e
RH
1844 * emit-rtl.c (const_double_htab_hash): Use mode in the hash.
1845 * loop.c (scan_loop): Move movables on -Os rich-register targets.
1846 * config/rs6000/rs6000.md (sibcall*): Use match_operand for LR.
fe352c29 1847
dcefdf67
RH
18482003-01-28 Richard Henderson <rth@redhat.com>
1849
1850 * target.h (targetm.address_cost): New.
1851 * target-def.h (TARGET_ADDRESS_COST): New.
1852 (TARGET_RTX_COSTS): Uncomment. Oops.
1853 * cse.c (address_cost): Use new target hook.
1854 (default_address_cost): New.
1855 * output.h (default_address_cost): Declare.
1856 * hooks.c (hook_int_rtx_0): New.
1857 * hooks.h (hook_int_rtx_0): Declare.
1858 * loop.c (combine_givs_p): Remove if 0 code.
1859 * system.h (ADDRESS_COST): Poison.
1860
1861 * config/alpha/alpha.c, config/alpha/alpha.h, config/d30v/d30v.c,
1862 config/d30v/d30v.h, config/ia64/ia64.c, config/ia64/ia64.h,
1863 config/m32r/m32r.c, config/m32r/m32r.h, config/mcore/mcore.c,
1864 config/mcore/mcore.h, config/mmix/mmix.c, config/mmix/mmix.h,
1865 config/rs6000/rs6000.c, config/rs6000/rs6000.h, config/sparc/sparc.c,
1866 config/sparc/sparc.h, config/v850/v850.c, config/v850/v850.h,
1867 config/xtensa/xtensa.c, config/xtensa/xtensa.h
1868 (TARGET_ADDRESS_COST): Define as hook_int_rtx_0.
1869 (ADDRESS_COST): Remove.
1870
1871 * config/arc/arc-protos.h, config/arc/arc.c, config/arc/arc.h,
1872 config/avr/avr-protos.h, config/avr/avr.c, config/avr/avr.h,
1873 config/c4x/c4x-protos.h, config/c4x/c4x.c, config/c4x/c4x.h,
1874 config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c,
1875 config/dsp16xx/dsp16xx.h, config/i386/i386-protos.h,
1876 config/i386/i386.c, config/i386/i386.h, config/i960/i960-protos.h,
1877 config/i960/i960.c, config/i960/i960.h, config/ip2k/ip2k-protos.h,
1878 config/ip2k/ip2k.c, config/ip2k/ip2k.h, config/mips/mips-protos.h,
ff6e2d3e 1879 config/mips/mips.c, config/mips/mips.h,
dcefdf67 1880 config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c,
ff6e2d3e 1881 config/m68hc11/m68hc11.h, config/ns32k/ns32k-protos.h,
dcefdf67
RH
1882 config/ns32k/ns32k.c, config/ns32k/ns32k.h, config/pa/pa-protos.h,
1883 config/pa/pa.c, config/pa/pa.h, config/s390/s390-protos.h,
1884 config/s390/s390.c, config/s390/s390.h, config/vax/vax-protos.h,
1885 config/vax/vax.c, config/vax/vax.h
1886 (foo_address_cost): Make static.
1887 (TARGET_ADDRESS_COST): New.
1888 (ADDRESS_COST): Remove.
1889
1890 * config/arm/arm.h, config/arm/arm.c, config/m88k/m88k.h,
1891 config/m88k/m88k.c, config/romp/romp.h, config/romp/romp.c,
1892 config/sh/sh.c, config/sh/sh.h, config/stormy16/stormy16.c,
1893 config/stormy16/stormy16.h
1894 (ADDRESS_COST): Move code ...
1895 (foo_address_cost): ... here.
1896 (TARGET_ADDRESS_COST): New.
1897
1898 * config/m32r/m32r.c (m32r_address_cost): Remove.
1899 * config/m32r/m32r-protos.h: Update.
1900
1901 * config/mmix/mmix.c (mmix_address_cost): Remove.
1902 * config/mmix/mmix-protos.h: Update.
1903
1904 * config/mn10300/mn10300.c (mn10300_address_cost_1): Rename from
1905 mn10300_address_cost; move unsig allocation ...
1906 (mn10300_address_cost): ... here.
1907 (TARGET_ADDRESS_COST): New.
1908 * config/mn10300/mn10300-protos.h: Update.
1909 * config/mn10300/mn10300.h (ADDRESS_COST): Remove.
1910
75642f32
RH
1911 * doc/tm.texi: Update.
1912
58fb7809
VM
19132003-01-28 Vladimir Makarov <vmakarov@redhat.com>
1914
1915 * haifa-sched.c (schedule_insn): Return necessary cycle advance
1916 after issuing the insn.
1917 (rank_for_schedule): Make a insn with /S the highest priority
1918 insn.
1919 (move_insn): Ignore schedule groups. Clear SCHED_GROUP_P.
1920 (choose_ready): Check SCHED_GROUP_P.
1921 (schedule_block): Advance cycle after issuing insn if it is
1922 necessary. Don't reorder insns if there is an insn with /S.
1923 (set_priorities): Ignore schedule groups.
1924
1925 * sched-deps.c (remove_dependence, group_leader): Remove the
1926 functions.
1927 (add_dependence): Ignore schedule groups.
1928 (set_sched_group_p): Don't make copy of dependencies from previous
1929 insn of the schedule group. Add anti-dependency to the previous
1930 insn of the schedule group.
1931 (compute_forward_dependences): Ignore schedule groups.
1932
1933 * sched-ebb.c (init_ready_list): Ignore schedule groups.
1934
1935 * sched-rgn.c (init_ready_list): Ditto.
1936 (can_schedule_ready_p): Ditto.
ff6e2d3e 1937
371c988b
VM
19382003-01-28 Vladimir Makarov <vmakarov@redhat.com>
1939
1940 * config/i386/i386.md (*movsi_1): Use movdqa to move one xmm
1941 register to another one.
1942
40cdfd5a
RH
19432003-01-28 Richard Henderson <rth@redhat.com>
1944
1945 * calls.c (default_must_pass_in_stack): Fix typo in !type case.
1946
a77b7e32
RS
19472003-01-28 Roger Sayle <roger@eyesopen.com>
1948
1949 * cse.c (cse_insn): Avoid redundant REG_EQUAL notes.
1950
3620944c
RS
19512003-01-28 Richard Sandiford <rsandifo@redhat.com>
1952
1953 * config/sh/sh.h (CLASS_MAX_NREGS): If TARGET_SHMEDIA, and the given
1954 class contains a floating-point register, return the size of the
1955 mode in half words.
1956
e6e81735
JH
1957Tue Jan 28 12:15:13 CET 2003 Jan Hubicka <jh@suse.cz>
1958
1959 * i386.c (ix86_carry_flag_operator): New predicate.
1960 (fcmov_operator): Fix whitespace.
1961 (ix86_expand_carry_flag_compare): Deal with floating point.
1962 (ix86_expand_int_movcc): Deal with fp; update insn expansion
1963 (ix86_expand_int_addcc): Likewise.
1964 (ix86_expand_strlensi_unroll_1): likewsie.
1965 * i386.h (PREDICATE_CODES): Add ix86_carry_flag_operator.
1966 * i386.md (add?i_carry_rex64): Use new predicate.
1967 (sub?i3_carry_rex64): Likewise.
1968 (x86_mov?icc_0_m1*): Likewise.
1969
43196589
AS
19702003-01-28 Andreas Schwab <schwab@suse.de>
1971
32214c32
AS
1972 * cfgloopmanip.c (create_preheader): Initialize src to avoid
1973 warning.
1974
1975 * expmed.c (emit_store_flag): Fix cast to avoid sign
1976 comparison warning.
1977
43196589
AS
1978 * combine.c (force_to_mode): Add cast to fix warning when
1979 STORE_FLAG_VALUE is negative.
1980
3c50106f
RH
19812003-01-27 Richard Henderson <rth@redhat.com>
1982
1983 * Makefile.in (cse.o): Depend on TARGET_H.
1984 * cse.c (rtx_cost): Use targetm.rtx_costs.
1985 * system.h (CONST_COSTS RTX_COSTS DEFAULT_RTX_COSTS): Poison.
1986 * doc/tm.texi: Update.
ff6e2d3e 1987
3c50106f
RH
1988 * target.h (targetm.rtx_costs): New.
1989 * target-def.h (TARGET_RTX_COSTS): New.
1990 * hooks.c (hook_bool_rtx_int_int_intp_false): New.
1991 * hooks.h: Update.
1992
1993 * config/alpha/alpha.c (alpha_rtx_cost_data): New.
1994 (alpha_rtx_costs, TARGET_RTX_COSTS): New.
1995 * config/alpha/alpha.h (PROCESSOR_MAX): New.
1996 (CONST_COSTS, RTX_COSTS): Remove.
1997
1998 * config/arc/arc.c, config/arc/arc.h, config/c4x/c4x.c,
1999 config/c4x/c4x.h, config/cris/cris.c, config/cris/cris.h,
2000 config/d30v/d30v.c, config/d30v/d30v.h, config/dsp16xx/dsp16xx.c,
2001 config/dsp16xx/dsp16xx.h, config/frv/frv.c, config/frv/frv.h,
2002 config/h8300/h8300.c, config/h8300/h8300.h, config/i370/i370.c,
2003 config/i370/i370.h, config/i386/i386.c, config/i386/i386.h,
2004 config/i960/i960.c, config/i960/i960.h, config/ia64/ia64.c,
2005 config/ia64/ia64.h, config/m32r/m32r.c, config/m32r/m32r.h,
2006 config/m68k/m68k.c, config/m68k/m68k.h, config/m88k/m88k.c,
2007 config/m88k/m88k.h, config/mcore/mcore.c, config/mcore/mcore.h,
2008 config/mips/mips.c, config/mips/mips.h, config/mn10200/mn10200.c,
2009 config/mn10200/mn10200.h, config/mn10300/mn10300.c,
2010 config/mn10300/mn10300.h, config/ns32k/ns32k.c, config/ns32k/ns32k.h,
2011 config/pa/pa.c, config/pa/pa.h, config/pdp11/pdp11.c,
2012 config/pdp11/pdp11.h, config/romp/romp.c, config/romp/romp.h,
2013 config/rs6000/rs6000.c, config/rs6000/rs6000.h, config/s390/s390.c,
2014 config/s390/s390.h, config/sh/sh.c, config/sh/sh.h,
2015 config/stormy16/stormy16.c, config/stormy16/stormy16.h,
2016 config/v850/v850.c, config/v850/v850.h,
2017 config/xtensa/xtensa.c, config/xtensa/xtensa.h
2018 (CONST_COSTS, RTX_COSTS): Move code ...
2019 (foo_rtx_costs, TARGET_RTX_COSTS): ... here.
2020
2021 * config/arm/arm.c (arm_rtx_costs_1): Rename from arm_rtx_costs.
2022 (arm_rtx_costs, TARGET_RTX_COSTS): New.
2023 * config/arm/arm-protos.h: Update.
2024 * config/arm/arm.h (DEFAULT_RTX_COSTS): Remove.
2025
2026 * config/avr/avr.h (CONST_COSTS): Move code ...
2027 * config/avr/avr.c (avr_rtx_costs): ... here.
2028 (default_rtx_costs): Make static.
2029 * config/avr/avr-protos.h: Update.
2030
2031 * config/h8300/h8300.c (const_costs): Make static.
2032 (h8300_and_costs, h8300_shift_costs): Likewise.
2033 * config/h8300/h8300-protos.h: Update.
2034
2035 * config/ip2k/ip2k.h (DEFAULT_RTX_COSTS): Remove.
2036 (CONST_COSTS): Move code ...
2037 * config/ip2k/ip2k.c (ip2k_rtx_costs): ... here. Rename from
2038 default_rtx_costs; update for signature change.
2039 * config/ip2k/ip2k-protos.h: Update.
2040
2041 * config/m68hc11/m68hc11.h (RTX_COSTS): Remove.
2042 (CONST_COSTS): Move code ...
2043 * config/m68hc11/m68hc11.c (m68hc11_rtx_costs): ... here.
2044 (TARGET_RTX_COSTS): New.
2045 (m68hc11_rtx_costs_1): Rename from m68hc11_rtx_costs; make static.
2046 * config/m68hc11/m68hc11-protos.h: Update.
2047
2048 * config/m68k/m68k.c (const_int_cost): Make static.
2049 * config/m68k/m68k-protos.h: Update.
2050
2051 * config/mcore/mcore.c (mcore_const_costs): Make static.
2052 (mcore_and_cost, mcore_ior_cost): Likewise.
2053 * config/mcore/mcore-protos.h: Update.
2054
2055 * config/mmix/mmix.c (mmix_rtx_costs, TARGET_RTX_COSTS): New.
2056 (mmix_rtx_cost_recalculated): Remove.
2057 * config/mmix/mmix.h (DEFAULT_RTX_COSTS): Remove.
2058 * config/mmix/mmix-protos.h: Update.
2059
2060 * config/sh/sh.c (shiftcosts): Make static.
2061 (addsubcosts, andcosts, multcosts): Likewise.
2062 * config/sh/sh-protos.h: Update.
2063
2064 * config/sparc/sparc.c (TARGET_RTX_COSTS): New.
2065 (sparc_rtx_costs): Make static; update for change in signature.
2066 * config/sparc/sparc.h (RTX_COSTS_CASES, RTX_COSTS): Remove.
2067 * config/sparc/sparc-protos.h: Update.
2068
2069 * config/v850/v850.c (const_costs): Make static.
2070 * config/v850/v850-protos.h: Update.
2071
2072 * config/vax/vax.h (RTX_COSTS): Remove.
2073 (CONST_COSTS): Move code ...
2074 * config/vax/vax.c (vax_rtx_costs_1): ... here; rename
2075 from vax_rtx_cost.
2076 (vax_rtx_costs, TARGET_RTX_COSTS): New.
2077
b9962e0a
RH
20782003-01-27 Richard Henderson <rth@redhat.com>
2079
2080 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove. Really.
5ca98980 2081 * config/vax/vax-protos.h: Update. Really.
b9962e0a 2082
8a381273
AO
20832003-01-28 Alexandre Oliva <aoliva@redhat.com>
2084
2085 * config/mips/mips.h (UNITS_PER_HWFPVALUE): Renamed from...
2086 (UNITS_PER_FPVALUE): Defined as the width of a long double, or
2087 zero if no hardware floating point.
2088 (LONG_DUBLE_TYPE_SIZE): Set to 128 on N32 and N64.
2089 (MAX_FIXED_MODE_SIZE): Define to LONG_DOUBLE_TYPE_SIZE.
2090 (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define.
2091 (BIGGEST_ALIGNMENT): Same as LONG_DOUBLE_TYPE_SIZE.
2092 (FUNCTION_VALUE_REGNO_P): Set for FP_RETURN+2 on N32 and N64.
2093 * config/mips/mips.c (mips_arg_info): Pass TFmode values in
2094 even FP registers on N32 and N64.
2095 (mips_setup_incoming_varargs): Use UNITS_PER_HWFPVALUE.
2096 (mips_va_start): Adjust alignment of ARG_POINTER_REGNUM.
2097 (mips_va_arg): Use UNITS_PER_HWFPVALUE. Impose additional
2098 even-register-like alignment to 128-bit arguments.
2099 (save_restore_insns): Use UNITS_PER_HWFPVALUE.
2100 (mips_function_value): Likewise. Return TFmode in $f0 and $f2
2101 on N32 or N64.
2102 * config/mips/_tilib.c (__negti2, __ashlti3, __lshrti3): New.
2103 * config/mips/t-iris6 (LIB2FUNCS_EXTRA): Add _tilib.c.
2104 (TPBIT): Set to tp-bit.c.
2105 (tp-bit.c): Create out of fp-bit.c.
2106
820e01be
GDR
21072003-01-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
2108
2109 * c-parse.in: Remove '%expect 32' directive in objc mode.
2110
23af32e6
NS
21112003-01-27 Nathan Sidwell <nathan@codesourcery.com>
2112
2113 * Makefile.in (LIB2FUNCS_ST): Remove _gcov.
2114 (LIBGCOV): New variable.
2115 (libgcc.mk): Add LIBGCOV.
2116 (LIBGCC_DEPS): Add libgcov.c.
2117 (libgcov.a): New target.
2118 (clean): Remove libgcov.a.
2119 (install-libgcc): Do libgcov too.
2120 (stage1-start, stage2-start, stage3-start, stage4-start): Deal
2121 with libgcov.a.
2122 * libgcc2.c (L_gcov): Move into ...
2123 * libgcov.c: ... here. New file.
2124 * mklibgcc.in: Add libgcov rules.
2125 * gcc.c (LINK_COMMAND_SPEC): Add -lgcov when profiling.
2126
2127 * doc/invoke.texi (profile-arcs, test-coverage): Update and
2128 clarify.
ff6e2d3e 2129
23af32e6
NS
2130 * profile.c (index_counts_file): Remove duplicate check for open file.
2131
9fe42917 21322003-01-27 Jerry Quinn <jlquinn@optonline.net>
d4463dfc
JQ
2133
2134 * gcc/doc/invoke.texi (Optimization Options): Group together
2135 optional and experimental flags. Move trapv and bounds-check
95fcd0ab 2136 out of this section. Group floating point flags together.
d4463dfc
JQ
2137 (Code Gen Options): Move trapv and bounds-check to here.
2138
244d05fb
JZ
21392003-01-27 Josef Zlomek <zlomekj@suse.cz>
2140
2141 * gcse.c (constprop_register): Check NEXT_INSN (insn) != NULL.
2142
c552c146
RE
21432003-01-27 Richard Earnshaw <rearnsha@arm.com>
2144
2145 PR optimization/9090
2146 * function.c (purge_addressof_1): After pushing an addressed register
2147 onto the stack, simplify the result.
2148
90a21764
VR
21492003-01-27 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2150
2151 * doc/extend.texi: Fix typo.
2152
9a376494
VR
21532003-01-27 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2154
2155 * doc/cppopts.texi: Fix typo.
2156 * doc/objc.texi: Likewise.
2157 * doc/passes.texi: Likewise.
2158
f004e5f3
AO
21592003-01-27 Alexandre Oliva <aoliva@redhat.com>
2160
2161 * real.c (ibm_extended_format): Add 53 to minimum exponent.
2162 (encode_ibm_extended): Adjust.
2163
58c60e52
GDR
21642003-01-26 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net>
2165
2166 * timevar.def (TV_OVERLOAD, TV_TEMPLATE_INSTANTIATION): New
2167 timevar_id enumerations.
2168
e869aa39
KH
21692003-01-26 Kazu Hirata <kazu@cs.umass.edu>
2170
2171 * combine.c: Fix formatting.
2172
74fb4811
KH
21732003-01-26 Kazu Hirata <kazu@cs.umass.edu>
2174
2175 * doc/gccint.texi: Update the copyright.
2176
3bcf1b13
KH
21772003-01-26 Kazu Hirata <kazu@cs.umass.edu>
2178
2179 * doc/cpp.texi: Fix typos.
2180 * doc/extend.texi: Likewise.
2181 * doc/gty.texi: Likewise.
2182 * doc/install.texi: Likewise.
2183 * doc/passes.texi: Likewise.
2184 * doc/rtl.texi: Likewise.
2185 * doc/tm.texi: Likewise.
2186
9e4f94de
KH
21872003-01-26 Kazu Hirata <kazu@cs.umass.edu>
2188
2189 * config/ia64/fde-glibc.c: Fix comment typos.
2190 * config/ia64/hpux.h: Likewise.
2191 * config/ia64/ia64.c: Likewise.
2192 * config/ia64/ia64.h: Likewise.
2193 * config/ia64/unwind-ia64.c: Likewise.
2194
4aae8a9a
KH
21952003-01-26 Kazu Hirata <kazu@cs.umass.edu>
2196
2197 * config/i386/i386-modes.def: Fix comment typos.
2198 * config/i386/i386.c: Likewise.
2199 * config/i386/i386.md: Likewise.
2200
35d8c8e2
SB
22012003-01-26 Steven Bosscher <s.bosscher@student.tudelft.nl>
2202
2203 * config/avr/avr.h, config/cris/aout.h, config/elfos.h,
2204 config/i386/freebsd-aout.h, config/mips/iris6.h: Undefine
2205 ASM_FINISH_DECLARE_OBJECT before defining it.
2206 * toplev.c (rest_of_decl_compilation): Don't define
2207 ASM_FINISH_DECLARE_OBJECT. Only use it if it is defined.
2208 (rest_of_type_compilation): Don't ATTRIBUTE_UNUSED function
2209 parameters for DWARF2 targets because they _are_ used.
2210
ea976606
AO
22112003-01-26 Alexandre Oliva <aoliva@redhat.com>
2212
b44cf3d9
AO
2213 * fp-bit.h: Define macros for TFmode floating-point constants
2214 in IBM-extended TFmode types.
2215 (TMODES): Define if __LDBL_MANT_DIG__ has the newly-supported
2216 widths.
2217 * config/fp-bit.c (pack_d, unpack_d): Support IBM-extended
2218 TFmode type.
2219
ea976606
AO
2220 * config/fp-bit.h: Define macros for TFmode floating-point
2221 constants in IEEE quad TFmode type. Declare functions according
2222 to L_ macros.
2223 (TMODES): Define if __LDBL_MANT_DIG__ is 113.
2224 (TFtype, TItype, UTItype): Define if TMODES is defined.
2225 (MAX_UDI_INT, MAX_DI_INT, BITS_PER_DI): Likewise.
2226 (F_T_BITOFF, D_T_BITOFF): Define.
2227 (IMPLICIT_1, IMPLICIT_2): Cast constants to types that are
2228 guaranteed to be wide enough.
2229 * config/fp-bit.c: Check for L_ macros for tf functions.
2230 (__thenan_tf): New.
2231 (nan): Adjust.
2232 (pack_d, unpack_d): Support IEEE 854 quad type.
2233 (_fpmul_parts): Support TFmode. Compute exponent adjustment
2234 from FRAC_NBITS, FRAC_BITS and NGARDS.
2235 (usi_to_float): Cast constants to be shifted to fractype
2236 instead of assuming long long is wide enough.
2237 (sf_to_tf, df_to_tf, __make_tp, tf_to_df, tf_to_sf): New.
2238
fd7fd61e
AJ
22392003-01-26 Andreas Jaeger <aj@suse.de>
2240
2241 * df.c: Remove prototype of unused function df_regno_rtl_debug.
2242
8ae91fc0
AO
22432003-01-26 Alexandre Oliva <aoliva@redhat.com>
2244
88e83acb
AO
2245 * Makefile.in (FPBIT_FUNCS): Added _sf_to_tf.
2246 (DBBIT_FUNCS): Added _df_to_tf.
2247 (TPBIT_FUNCS): New.
2248 (libgcc.mk): Pass TPBIT and TPBIT_FUNCS down.
2249 (LIBGCC_DEPS): Added TPBIT.
2250 * mklibgcc.in: Support TPBIT and TPBIT_FUNCS.
2251
2cd622c3
AO
2252 * optabs.c (expand_binop) <add, sub>: Return xtarget if we haven't
2253 been able to move the result to target.
2254
8ae91fc0
AO
2255 * expr.c (emit_group_store): Initialize dst with CONST0_RTX
2256 for the appropriate mode.
2257
c3297561
AO
2258 * calls.c (emit_library_call_value_1): Handle return values
2259 in a PARALLEL.
2260
187515f5
AO
2261 * rtl.c (get_mode_alignment): Moved to...
2262 * stor-layout.c: ... here.
2263
6ebd2ef4
AO
2264 * print-rtl.c (print_rtx): Don't print MEM details in
2265 GENERATOR_FILEs.
2266
7890e8f3
MH
22672003-01-26 Michael Hayes <mph@paradise.net.nz>
2268
2269 * df.h: Update comments, tidy formatting.
2270 (DF_FORWARD, DF_REVERSE, DF_UNION, DF_INTERSECTION): Rename from FORWARD,
2271 REVERSE, UNION, INTERSECTION. All uses updated.
2272 (OLD_DF_INTERFACE): Remove.
2273 (struct insn_info): Remove commented out insn field.
2274 * df.c: Update comments, tidy formatting.
2275 (df_def_table_realloc): Remove.
2276
2277
b820d2b8
AM
22782003-01-26 Alan Modra <amodra@bigpond.net.au>
2279
2280 * calls.c (save_fixed_argument_area): Tidy.
2281 (restore_fixed_argument_area): Tidy. Set alignment of stack_area.
2282 (expand_call): Comment typo fixes. Don't init low_to_save. Start
2283 call chain loop at 1 if !try_tail_call. Formatting.
2284 (emit_library_call_value_1): Don't init low_to_save or high_to_save.
2285 Use save_fixed_argument_area and restore_fixed_argument_area.
2286
42510de4
MH
22872003-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
2288
2289 * df.c (df_uses_record): Handle CC0.
2290
acf9fa5f
UW
22912003-01-25 Ulrich Weigand <uweigand@de.ibm.com>
2292
1e1bd14e
RH
2293 * reload.c (maybe_memory_address_p): New function.
2294 (find_reloads_address): Use it instead of memory_address_p.
acf9fa5f 2295
5a09edba
KK
22962003-01-25 Kaz Kojima <kkojima@gcc.gnu.org>
2297
2298 * final.c (shorten_branches): Align the address of code label
1e1bd14e 2299 when computing initial lengths and addresses.
5a09edba 2300
f5818c0c
KH
23012003-01-25 Kazu Hirata <kazu@cs.umass.edu>
2302
2303 * config/m68hc11/m68hc11.md: Fix a comment typo.
2304
21ff35fb
AJ
23052003-01-25 Andreas Jaeger <aj@suse.de>
2306
2307 * config/i386/i386.c (x86_output_mi_thunk): Correct test for
2308 TARGET_MACHO.
2309
7821bfc7
RS
23102003-01-25 Roger Sayle <roger@eyesopen.com>
2311
2312 * gcse.c (bypass_last_basic_block): New global variable.
2313 (bypass_block): Use redirect_edge_and_branch_force to redirect
2314 fall-through edges. Use bypass_last_basic_block to determine
2315 which blocks have valid PRE information.
2316 (bypass_conditional_jumps): Initialize bypass_last_basic_block.
2317
5f0bea72
JH
2318Sat Jan 25 22:31:59 CET 2003 Jan Hubicka <jh@suse.cz>
2319
2320 * gcse.c (local_cprop_pass): Update reg_sets table when needed.
2321
1649d92f
JH
2322Sat Jan 25 21:04:33 CET 2003 Jan Hubicka <jh@suse.cz>
2323 Eric Botcazou <ebotcazou@libertysurf.fr>
2324 PR opt/8492
2325 * gcse.c (one_cprop_pass): Delete unreachable blocks.
2326
6ca86a1a
RH
23272003-01-25 Richard Henderson <rth@redhat.com>
2328
2329 * config/ia64/ia64.c (ia64_rwreloc_select_rtx_section): Rename
2330 from ia64_aix_select_rtx_section.
2331 (ia64_rwreloc_select_section): Simlarly; use default*_1 function
2332 instead of saving and restoring flag_pic.
2333 (ia64_rwreloc_unique_section): Similarly.
2334 * config/ia64/aix.h (TARGET_ASM_SELECT_SECTION,
2335 TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): Update.
2336 * config/ia64/hpux.h (TARGET_ASM_SELECT_SECTION,
2337 TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): New.
2338
aa2fb4dd
KH
23392003-01-25 Kazu Hirata <kazu@cs.umass.edu>
2340
2341 * config/h8300/h8300.c (h8300_shift_needs_scratch_p): Update a
2342 comment.
2343
1125849a
RH
23442002-01-25 Richard Henderson <rth@redhat.com>
2345
2346 * config/m68k/m68k-none.h (ASM_SPEC): Adjust inter-option spacing.
2347
3900a23b
KC
23482002-01-25 Kelley Cook <kelleycook@comcast.net>
2349
2350 * ggc-simple.c (debug_ggc_tree): Add PTR cast.
2351
72e42e26
SB
23522003-01-25 Segher Boessenkool <segher@koffie.nl>
2353
2354 * bitmap.h (BITMAP_WORD): New typedef: fundamental storage
2355 type for bitmaps. Use unsigned long.
2356 (nBITMAP_WORD_BITS): New macro.
2357 (BITMAP_WORD_BITS): New macro.
2358 (rest of file): Use it.
2359 * bitmap.c: Use it.
2360
8324663f
RH
23612003-01-25 Richard Henderson <rth@redhat.com>
2362
2363 2002-02-19 Robert Lipe <robertlipe@usa.net>
2364 * config/i386/t-sco5gas: (CRTSTUFF_T_CFLAGS_S): Delete -mcoff.
2365
2adc9b0f
RS
23662002-01-25 Roger Sayle <roger@eyesopen.com>
2367
2368 * builtins.c (purge_builtin_constant_p): Scan insn stream
2369 sequentially rather than by basic block.
2370 * function.c (purge_addressof): Simplify test with INSN_P.
2371
ad487c38
KH
23722003-01-25 Kazu Hirata <kazu@cs.umass.edu>
2373
8324663f 2374 * combine.c (simplify_comparison, case AND): Remove a redundant test.
ad487c38 2375
07d9b20d
RS
23762002-01-25 Roger Sayle <roger@eyesopen.com>
2377
2378 * function.h (struct function): New field calls_constant_p.
2379 (current_function_calls_constant_p): New macro for above.
2380 * function.c (prepare_function_start): Initialize calls_eh_return
2381 and calls_constant_p.
2382 * builtins.c (expand_builtin_constant_p): Set calls_constant_p.
2383 * toplev.c (rest_of_compilation): Only call purge_builtin_constant_p
2384 when the current_function_calls_constant_p.
2385 * integrate.c (expand_inline_function): Set calls_constant_p if
2386 the function being inlined has calls_constant_p set.
2387
41559112
RS
23882002-01-25 Roger Sayle <roger@eyesopen.com>
2389
2390 * cse.c (fold_rtx): Instantiate CONSTANT_P_RTX to 0 when not
2391 optimizing, even if flag_gcse is true.
2392 * toplev.c (rest_of_compilation): purge_builtin_constant_p
2393 only needs to be called when "optimize > 0 && flag_gcse".
2394
9bb231fd
RS
23952003-01-25 Roger Sayle <roger@eyesopen.com>
2396
2397 * stmt.c (emit_case_bit_tests): New routine to implement suitable
2398 switch statements using the equivalent of "if ((1<<x) & cst) ... ".
2399 (case_bit_test_cmp): New comparison function for "qsort" to order
2400 case_bit_tests by decreasing number of destination nodes.
2401 (lshift_cheap_p): New function to determine if "1 << x" is cheap.
2402 (expand_end_case_type): Use emit_case_bit_tests to implement
2403 suitable switch statments.
2404 (CASE_USE_BIT_TESTS): New target macro to disable the above.
2405 * Makefile.in (stmt.o): Add dependency on optab.h.
2406 * doc/tm.texi (CASE_USE_BIT_TESTS): Document new target macro.
2407
a073323c
AS
24082003-01-23 Andreas Schwab <schwab@suse.de>
2409
2410 * config/ia64/crtend.asm [HAVE_INITFINI_ARRAY]: Make
2411 __do_global_ctors_aux hidden global and don't put it in
2412 .init_array.
2413 * config/ia64/crtbegin.asm [HAVE_INITFINI_ARRAY]: Put it here
2414 instead so that it comes first.
2415
36ddc6b0
JH
2416Sat Jan 25 16:11:22 CET 2003 Jan Hubicka <jh@suse.cz>
2417
2418 * df.c (read_modify_subreg_p): When osize == UNITS_PER_WORD,
2419 subreg is read/modify.
2420
26771da7
JH
2421Sat Jan 25 15:55:08 CET 2003 Jan Hubicka <jh@suse.cz>
2422
2423 * i386.c (ix86_expand_movstr, ix86_expand_clrstr): Consistently
2424 do libcall for large blocks.
2425 * i386.md (comi patterns): Set type to ssecomi.
2426 (sse2_unpck?pd): Fix mode of vec_select.
2427
2428 * cse.c: Include except.h
2429 (cse_set_around_loop): Do not create new basic blocks.
2430 * Makefile.in (cse.o): Add dependnecy on except.h
2431
27a6aa72
JH
2432Sat Jan 25 12:05:17 CET 2003 Jan Hubicka <jh@suse.cz>
2433
2434 * builtins.c (fold_trunc_transparent_mathfn): New function.
2435 (fold_builtin): Use it.
2436 * convert.c (convert_to_real): Re-enable code to convert
2437 math functions; add support for floor familly functions.
2438
cd68f4e4
ZD
24392003-01-25 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2440
2441 * Makefile.in (cfgloop.o, cfgloopanal.o, cfgloopmanip.o): Add
2442 dependencies on coretypes.h and $(TM_H).
2443
67945f2e
JH
2444Sat Jan 25 11:10:03 CET 2003 Jan Hubicka <jh@suse.cz>
2445
2446 * builtins.c (fold_trunc_transparent_mathfn): Undo accidental commit.
2447
095fa594
SH
24482002-01-24 Stuart Hastings <stuart@apple.com>
2449
08f0414b 2450 * config/i386/i386.c (x86_output_mi_thunk): Add Darwin/x86 support.
095fa594 2451
1e4c04e0
MH
24522003-01-25 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
2453
2454 * config/c4x/c4x.md (UNSPEC_BU): New constants.
2455 (UNSPEC_RPTS, UNSPEC_LSH, UNSPEC_CMPHI, UNSPEC_RCPF): Likewise.
2456 (UNSPEC_RND, UNSPEC_RPTB_FILL, UNSPEC_LOADHF_INT): Likewise.
2457 (UNSPEC_STOREHF_INT, UNSPEC_RSQRF, UNSPEC_LOADQF_INT): Likewise.
2458 (UNSPEC_STOREQF_INT, UNSPEC_LDIV, UNSPEC_PUSH_ST): Likewise.
2459 (UNSPEC_POP_ST, UNSPEC_PUSH_DP, UNSPEC_POP_DP): Likewise.
2460 (UNSPEC_POPQI, UNSPEC_POPQF, UNSPEC_ANDN_ST): Likewise.
2461 (UNSPEC_RPTB_INIT, UNSPEC_TOIEEE, UNSPEC_FRIEEE): Likewise.
2462
a560d4d4
JH
2463Fri Jan 24 23:44:12 CET 2003 Jan Hubicka <jh@suse.cz>
2464
08f0414b 2465 * emit-rtl.c (reg_attrs_htab): New static variable.
a560d4d4
JH
2466 (reg_attrs_htab_hash, reg_attrs_htab_eq, get_reg_attrs): New static
2467 functions.
2468 (reg_rtx): Do not maintain regno_decl.
2469 (gen_rtx_REG_offset, set_reg_attrs_from_mem, set_delc_rtx,
2470 set_mem_attrs_from_reg): New global function.
2471 (init_emit): Do not initialize regno_decl.
2472 (init_emit_once): initialize reg_attrs_htab.
2473 * final.c (alter_subreg): Do not replace REG by SUBREG.
2474 (gen_mem_expr_from_op): Improve output.
2475 (output_asm_operands): Likewise.
2476 * function.c (assign_params): Do not set REGNO_DECL.
2477 * function.h (struct function): Kill regno_decl.
2478 (REGNO_DECL): Kill.
2479 * gengtype.c (adjust_field_rtx_def): Handle new field of reg.
2480 * print_rtl.c (print_rtx): Output REG information.
2481 * regclass.c (reg_scan_mark_refs): Update attrs.
2482 * reload1.c (alter_reg): Likewise.
2483 * simplify_rtx.c (simplify_subreg): Likewise.
2484 * stmt.c (expand_decl): Likewise.
2485 * rtl.def (REG): Add new field.
2486 * rtl.h (struct reg_attrs): New.
2487 (rtunion_def): At rtreg.
2488 (X0MEMATTR): Add checking.
2489 (X0REGATTR, REG_ATTRS, REG_EXPR, REG_OFFSET): New macro.
2490 (set_reg_attrs_from_mem, set_mem_attrs_from_reg, gen_rtx_REG_offset):
2491 Declare.
2492 * tree.h (SET_DECL_RTL): Call set_decl_rtl.
2493
1d0ea52e
BW
24942003-01-24 Bob Wilson <bob.wilson@acm.org>
2495
2496 * config/xtensa/xtensa.c: Remove unused include of machmode.h.
2497 (xtensa_emit_call, print_operand): Fix printf format strings
2498 to avoid compile warnings.
2499 (xtensa_function_prologue, xtensa_function_epilogue): Change type
2500 of "size" argument to HOST_WIDE_INT to fix compile warnings.
2501 * config/xtensa/xtensa-protos.h
2502 (xtensa_function_prologue, xtensa_function_epilogue): Ditto.
2503
272f51a3
JH
2504Fri Jan 24 23:03:32 CET 2003 Jan Hubicka <jh@suse.cz>
2505
2506 * builtins.c (DEF_BUILTIN): Accept 10 arguments.
2507 (implicit_built_in_decls): New global array.
2508 (mathfn_built_in): New global function.
2509 (fold_trunc_transparent_mathfn): New static function
2510 (expand_builtin_strstr, expand_bultin_strchr,
2511 expand_builtin_strpbrk, expand_builtin_strcpy,
2512 expand_builtin_strncpy, expand_bultin_strcmp,
2513 expand_bultin_strncat, expand_builtin_fputs): Use
2514 implicint_built_in_decls.
2515 (fold_builtin): Fold floor/trunc/round/ceil/nearbyint.
2516 * builtins.def: Fix comments.
2517 (DEF_GCC_BUILTIN, DEF_FALLBACK_BUILTIN, DEF_EXT_FALLBACK_BUILTIN,
2518 DEF_LIB_BUILTIN, DEF_LIB_ALWAYS_BUILTIN, DEF_EXT_LIB_BUILTIN,
2519 DEF_C99_BULTIN, DEF_FRONT_END_LIB_BUILTIN,
2520 DEF_EXT_FRONT_END_LIB_BUILTIN): Pass implicit as needed.
2521 (DEF_C99_C90RES_BULTIN): New.
2522 (*f, *l builtins): Update.
2523 * c-common.c (DEF_BUILTIN): Initialize implicit array.
2524 (c_expand_builtin_printf, c_expand_builtin_fprintf): Update.
2525 * convert.c (strip_float_extensions): New global function.
2526 * tree.h (DEF_BUILTIN): Accept 10 arguments.
2527 (implicit_built_in_decls, mathfn_built_in, strip_float_extension):
2528 Declare.
2529 * java/builtins.c (define_builtin): Handle implicit.
2530 (DEF_BUILTIN): Update.
2531 * tm.texi (TARGET_C99_FUNCTIONS): Document.
2532 * defaults.h (TARGET_C99_FUNCTIONS): Default to 0.
2533 * config/linux.h (TARGET_C99_FUNCTIONS): Default to 1
2534 when using glibc2.
2535
1f37a5b2
BW
25362003-01-24 Bob Wilson <bob.wilson@acm.org>
2537
2538 * config.gcc (xtensa-*-elf*): Removed assignments to with_newlib,
2539 extra_parts, and fixincludes. Add xtensa/t-elf tmake_file.
2540 (xtensa-*-linux*): Add xtensa/t-linux tmake_file.
2541 * config/xtensa/crti.asm: New file.
2542 * config/xtensa/crtn.asm: New file.
2543 * config/xtensa/t-elf: New file.
2544 * config/xtensa/t-linux: New file.
2545 * config/xtensa/t-xtensa: Add rules for crti.o and crtn.o.
2546 Move various CFLAGS settings to new t-elf file.
2547
84f5e1b1
RH
25482003-01-24 Richard Henderson <rth@redhat.com>
2549
2550 PR optimization/4382
2551 * tree-inline.c (find_builtin_longjmp_call_1): New.
2552 (find_builtin_longjmp_call): New.
2553 (inlinable_function_p): Use it.
2554
09b2e78d
ZD
25552003-01-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2556
2557 * config/i386/i386-protos.h (function_arg_pass_by_reference): Declare.
2558 * config/i386/i386.h (FUNCTION_ARG_PASS_BY_REFERENCE): Use it.
2559 * config/i386/i386.c (function_arg_pass_by_reference): New.
2560 (ix86_va_arg): Support arguments passed by reference.
2561
3d436d2a
ZD
25622003-01-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2563
2564 * cfgloopanal.c: New file.
2565 * cfgloopmanip.c: New file.
2566 * Makefile.in (cfgloopanal.o, cfgloopmanip.o): New.
2567 (toplev.o, loop.o, doloop.o, unroll.o, cfgloop.o, predict.o,
2568 cfglayout.o): Add dependency on cfgloop.h.
2569 (cfgloop.o): Add flags.h dependency.
2570 * basic-block.h (BB_IRREDUCIBLE_LOOP, BB_SUPERBLOCK): New flags.
2571 (VLS_EXPECT_PREHEADERS, VLS_EXPECT_SIMPLE_LATCHES): Removed.
2572 (struct loop, struct loops, flow_loops_find, flow_loops_update,
2573 flow_loops_free, flow_loops_dump, flow_loop_dump,
2574 flow_loop_scan, flow_loop_tree_node_add, flow_loop_tree_node_remove,
2575 LOOP_TREE,,LOOP_PRE_HEADER, LOOP_ENTRY_EDGES, LOOP_EXIT_EDGES,
2576 LOOP_ALL, flow_loop_outside_edge_p, flow_loop_nested_p,
2577 flow_bb_inside_loop_p, get_loop_body, loop_preheader_edge,
2578 loop_latch_edge, add_bb_to_loop, remove_bb_from_loops,
2579 find_common_loop, verify_loop_structure): Declarations moved to ...
2580 * cfgloop.h: New file.
2581 * bb-reorder.c (reorder_basic_blocks): Modified.
2582 * cfglayout.c: Include cfgloop.h.
2583 (cleanup_unconditional_jumps, cfg_layout_redirect_edge,
2584 cfg_layout_duplicate_bb, cfg_layout_initialize): Update loop structure.
2585 (break_superblocks): New static function.
2586 (cfg_layout_finalize): Use it.
2587 (cfg_layout_split_block): New function.
2588 * cfglayout.h (struct reorder_block_def): Add copy and duplicated
2589 fields.
2590 (cfg_layout_initialize, cfg_layout_redirect_edge): Declaration
2591 changed.
2592 (cfg_layout_split_block): Declare.
2593 * cfgloop.c: Include cfgloop.h and flags.h.
2594 (flow_loop_dump, flow_loops_free, flow_loop_exit_edges_find,
2595 get_loop_body): Avoid signed versus unsigned comparison warnings.
2596 (make_forwarder_block, flow_loops_find, loop_preheader_edge,
2597 loop_latch_edge): Modified.
2598 (verify_loop_structure): Modified to use flags stored in loop structure;
2599 check irreducible loops.
2600 (cancel_loop, cancel_loop_tree): New functions.
2601 (estimate_probability): Use loop analysis code for predictions.
2602 (estimate_loops_at_level): Avoid signed versus unsigned comparison
2603 warnings.
2604 * doloop.c: Include cfgloop.h.
2605 * loop.c: Include cfgloop.h.
2606 * predict.c: Include cfgloop.h.
2607 * toplev.c: Include cfgloop.h.
2608 * unroll.c: Include cfgloop.h.
2609 * tracer.c (tracer): Modified.
2610
a38b3eea
KH
26112003-01-24 Kazu Hirata <kazu@cs.umass.edu>
2612
2613 * config/h8300/h8300.c (get_shift_alg): Fix a typo.
2614
fd3cd001
UW
26152003-01-24 Ulrich Weigand <uweigand@de.ibm.com>
2616
2617 * configure.in (HAVE_AS_TLS): Add s390-*-* and s390x-*-* cases.
2618 * configure: Regenerate.
2619
2620 * config/s390/s390-protos.h (tls_symbolic_operand): Add prototype.
2621 (tls_symbolic_reference_mentioned_p): Add prototype.
2622 (s390_tls_get_offset): Add prototype.
2623 (emit_pic_move): Remove prototype, replace by ...
2624 (emit_symbolic_move): .. this new prototype.
2625
2626 * config/s390/s390.c (TARGET_HAVE_TLS): Conditionally define.
2627 (tls_model_chars): New global variable.
2628 (s390_encode_section_info): Encode TLS model.
2629 Use targetm.binds_local_p to check for local symbols.
2630 (s390_strip_name_encoding): New function.
2631 (TARGET_STRIP_NAME_ENCODING): Define.
2632
2633 (get_thread_pointer): New function.
21ff35fb 2634 (legitimize_tls_address): New function.
fd3cd001
UW
2635 (legitimize_address): Call it.
2636 (emit_pic_move): Remove, replace by ...
2637 (emit_symbolic_move): ... this new function.
2638
2639 (larl_operand): Handle TLS operands.
2640 (legitimate_constant_p): Likewise.
2641 (s390_decompose_address): Likewise.
2642 (s390_cannot_force_const_mem): New function.
2643 (TARGET_CANNOT_FORCE_CONST_MEM): Define.
2644
2645 (s390_output_symbolic_const): Handle TLS unspecs.
2646 (print_operand): New code 'J'.
2647 (machine_function): Add struct member 'some_ld_name'.
2648 (get_some_local_dynamic_name, get_some_local_dynamic_name_1): New.
2649
2650 (enum s390_builtin): New type.
2651 (code_for_builtin_64, code_for_builtin_31): New global variables.
2652 (s390_init_builtins, s390_expand_builtin): New functions.
2653 (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Define.
2654
2655 * config/s390/s390.h (TLS_SYMBOLIC_CONST): New macro.
2656 (ASM_OUTPUT_LABELREF): Define.
2657 (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Handle TLS constants.
2658
2659 * config/s390/s390.md: Define TLS UNSPEC constants.
2660 ("movdi", "movsi"): Handle TLS operands.
2661 ("get_tp_64", "get_tp_31", "set_tp_64", "set_tp_31"): New insns.
2662 ("*tls_load_64", "*tls_load_31"): New insns.
2663 ("call_value_tls", "call_value_tls_exp"): New expanders.
21ff35fb 2664 ("brasl_tls", "bras_tls", "basr_tls_64", "basr_tls_31",
fd3cd001
UW
2665 "bas_tls_64", "bas_tls_31"): New insns.
2666
01f4962d
NS
26672003-01-24 Nathan Sidwell <nathan@codesourcery.com>
2668
2669 * config/rs6000/rs6000.c (rs6000_parse_abi_options): Make sure
2670 spe ABI is configured, if requested.
2671
70b91854
VR
26722003-01-24 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2673
2674 * doc/passes.texi: Fix typo.
2675
b8089d8d
AS
26762003-01-24 Andreas Schwab <schwab@suse.de>
2677
2678 * stor-layout.c (excess_unit_span): Only define if used.
2679
38df970e
JQ
26802003-01-24 Jerry Quinn <jlquinn@optonline.net>
2681
2682 * gcc/doc/invoke.texi (Optimization Options): List -O levels
2683 for each optimization flag.
2684
dff23a65
KH
26852003-01-24 Kazu Hirata <kazu@cs.umass.edu>
2686
2687 * config/h8300/h8300.md (*andsi3_ashift_n_lower): New.
2688
05739753
VR
26892003-01-24 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2690
2691 * doc/bugreport.texi: Use @command instead of @code for commands.
2692 * doc/collect2.texi: Likewise.
2693 * doc/headerdirs.texi: Likewise.
2694 * doc/invoke.texi: Likewise.
2695 * doc/standards.texi: Likewise.
2696 * doc/tm.texi: Likewise.
2697 * doc/trouble.texi: Likewise.
2698
06bea5aa
NC
26992003-01-24 Nick Clifton <nickc@redhat.com>
2700
2701 * config/arm/arm.c (use_return_insn): Do not use a single return
2702 instruction for interrupt handelrs which have to create a stack
2703 frame.
2704 (arm_expand_prologue): Do not pre-bias the return address of
2705 interrupt handlers which create a stack frame.
2706
27072003-01-24 Nick Clifton <nickc@redhat.com>
2708
2709 * Add sh2e support:
2710
2711 2002-08-12 Alexandre Oliva <aoliva@redhat.com>
2712
2713 * config/sh/sh.c (output_branch) [TARGET_SH2E]: Handle
2714 med_cbranches. Fix logic in short_cbranches.
2715
2716 2002-04-03 Alexandre Oliva <aoliva@redhat.com>
2717
2718 * config/sh/sh.md (delay for cbranch): Don't annul delay
2719 slots on SH2e.
2720 * config/sh/sh.c (sh_insn_length_adjustment): Add 2 for
2721 cbranch with unfilled delay slot on SH2e.
2722 (output_branch): Fill with a nop the delay slot of a
2723 branch that required a delay slot but didn't get one.
2724
2725 2002-04-02 Alexandre Oliva <aoliva@redhat.com>
2726
2727 * doc/invoke.texi (SH options): Document -m2e.
2728 * config/sh/crt1.asm: Add __SH2E__ Next to __SH3E__.
2729 * config/sh/lib1funcs.asm: Likewise.
2730 * config/sh/sh.c: Replace all uses of TARGET_SH3E with SH2E.
2731 * config/sh/sh.h (CPP_SPEC): Define __SH2E__ for -m2e, and
2732 not __sh1__.
2733 (CONDITIONAL_REGISTER_USAGE): Don't disable FP regs from
2734 SH2E up.
2735 (SH3E_BIT): Renamed to...
2736 (SH_E_BIT): ... this. Replace all uses.
2737 (TARGET_SH2E): Define from SH_E_BIT and TARGET_SH2.
2738 Replace all uses of TARGET_SH3E with TARGET_SH2E.
2739 (TARGET_SWITCHES): Added 2e.
2740 (OVERRIDE_OPTIONS): Set sh_cpu for SH2E.
2741 (processor_type): Added PROCESSOR_SH2E.
2742 * config/sh/sh.md: Replace all uses of TARGET_SH3E with
2743 TARGET_SH2E, except in sqrtsf2_i.
2744 (attribute cpu): Added sh2e.
2745 * config/sh/t-sh (MULTILIB_OPTIONS): Replace m3e with m2e.
2746 (MULTILIB_MATCHES): Use m2e multilib for m3e.
2747 * config.gcc: Add sh2e target support.
2748
65ca2d60
PE
27492003-01-24 Phil Edwards <pme@gcc.gnu.org>
2750
2751 Rename -W to -Wextra.
2752 * c-decl.c: Update comments.
2753 * c-typeck.c: Likewise.
2754 * flags.h: Likewise.
2755 * function.c: Likewise.
2756 * stmt.c: Likewise.
2757 * toplev.c: Update comments.
2758 (W_options): Add 'extra'.
2759 (display_help): Remove '-W'.
2760 (decode_W_option): Special warn_uninitialized treatment in the case
2761 of -Wextra.
2762 * doc/invoke.texi: Update with new entries.
2763
3de9c088
RH
27642003-01-23 Richard Henderson <rth@redhat.com>
2765
8324663f
RH
2766 * ifcvt.c (noce_process_if_block): Re-add check vs X being changed
2767 in no-else-block case. Add commentary.
3de9c088 2768
49691411
KG
27692003-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2770
b4862477
KG
2771 * configure.in: Revert last change.
2772
27732003-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2774
2775 * configure.in: Don't include ansidecl.h in tconfig.h.
49691411
KG
2776 * gcov-io.h (PARAMS, ATTRIBUTE_UNUSED: Define if IN_LIBGCC2.
2777 * unwind-dw2-fde.h (last_fde): Use __attribute__, not
2778 ATTRIBUTE_UNUSED.
2779
2780 * configure: Regenerate.
2781
c4db7ecb
FS
27822003-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2783
2784 PR java/6748
2785 * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Don't destroy
2786 regs->nip. Fix rt_sigreturn frame layout. Add support for newer
2787 kernels.
2788
fc69c47c
KG
27892003-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2790
2791 * cpplex.c (cpp_interpret_charconst): Squelch warning with cast.
2792
adbe6dfd
UW
27932003-01-23 Ulrich Weigand <uweigand@de.ibm.com>
2794
2795 * genattrtab.c (write_attr_get): Mark 'insn' paramter
2796 as ATTRIBUTE_UNUSED.
2797
76a318e9
RE
27982003-01-23 Richard Earnshaw <rearnsha@arm.com>
2799
2800 * arm.c (thumb_base_register_rtx_p): New function.
2801 (thumb_index_register_rtx_p): New function.
2802 (thumb_legitimate_address_p): New function.
2803 (thumb_legitimate_offset_p): New function.
2804 * arm.h (REG_STRICT_P): Define according to setting of REG_OK_STRICT.
8891b787 2805 (ARM_GO_IF_LEGITIMATE_ADDRESS): Use REG_STRICT_P to avoid duplicate
76a318e9
RE
2806 definitions.
2807 (THUMB_GO_IF_LEGITIMATE_ADDRESS): Use thumb_legitimate_address_p.
2808 (THUMB_LEGITIMATE_OFFSET): Delte.
2809 (THUMB_LEGITIMIZE_RELOAD_ADDRESS): Use thumb_legitimate_offset.
2810 * arm-protos.h (thumb_legitimate_address_p): Add prototype.
2811 (thumb_legitimate_offset_p): Likewise.
2812
9a600d0c
AS
28132003-01-23 Andreas Schwab <schwab@suse.de>
2814
2815 * unwind.h (_Unwind_GetTextRelBase): Mark parameter as unused.
2816
2d110c0a
KG
28172003-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2818
2819 * fixinc/Makefile.in (FL_LIST): Revert last change.
2820
2d1d9215
VR
28212003-01-23 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2822
2823 PR other/7341
2824 * invoke.texi (ftest-coverage): Fix broken cross-reference.
2825 Change @code to @command for gcov command.
2826
2827 * gcc.texi: Adjust title of gcov section.
2828 Adjust copyright.
2829 * gcov.texi: Likewise.
2830
34ee7f82
RS
28312003-01-22 Roger Sayle <roger@eyesopen.com>
2832
2833 PR optimization/8423
2834 * cse.c (fold_rtx): Only eliminate a CONSTANT_P_RTX to 1 when
2835 its argument is constant, or 0 if !flag_gcse.
2836 * simplify-rtx.c (simplify_rtx): Convert CONSTANT_P_RTX to 1
2837 if it's argument is constant.
2838 * gcse.c (want_to_gcse_p): Ignore CONSTANT_P_RTX nodes.
2839 (hash_scan_set): Don't record CONSTANT_P_RTX expressions.
2840 (do_local_cprop): Don't propagate CONSTANT_P_RTX constants.
2841 * builtins.c (purge_builtin_constant_p): New function to force
2842 instantiation of any remaining CONSTANT_P_RTX nodes.
2843 * rtl.h (purge_builtin_constant_p): Prototype here.
2844 * toplev.c (rest_of_compilation): Invoke purge_builtin_constant_p
2845 pass after GCSE and before loop.
2846 (flag_gcse): No longer static.
2847 * flags.h (flag_gcse): Prototype here.
2848
bab0b43b
UW
28492003-01-22 Ulrich Weigand <uweigand@de.ibm.com>
2850
2851 * config/s390/s390.h (HARD_REGNO_MODE_OK): Fix warning regression
2852 introduced by last change.
2853
7e657a61
AS
28542003-01-22 Andreas Schwab <schwab@suse.de>
2855
2856 * ra-rewrite.c (rewrite_program2): Initialize bb to avoid warning.
2857
75a3503b
KH
28582003-01-22 Kazu Hirata <kazu@cs.umass.edu>
2859
2860 * config/h8300/h8300.c (h8300_shift_needs_scratch_p): Don't
2861 request a scratch reg on H8S when the shift count is 8.
2862
4888ec5d
UW
28632003-01-22 Ulrich Weigand <uweigand@de.ibm.com>
2864
2865 * config/s390/s390-protos.h (preferred_la_operand_p):
2866 Remove second parameter.
2867 * config/s390/s390.c (preferred_la_operand_p): Likewise.
2868 * config/s390/s390.h (FRAME_REGNO_P, FRAME_REG_P): New macros.
2869 (HARD_REGNO_MODE_OK): Use FRAME_REGNO_P.
2870 * config/s390/s390.md ("*la_cc_64", "*la_cc_31", splitters): Remove.
2871 Add peepholes to transform ADD to LOAD ADDRESS.
2872
6b990f6b
RE
28732003-01-22 Richard Earnshaw <rearnsha@arm.com>
2874
2875 * arm.c (arm_address_register_rtx_p): New function.
2876 (arm_legitimate_address_p): New function.
2877 (arm_legitimate_index_p): New function.
2878 (legitimize_pic_address): Use arm_legitimate_index_p.
2879 * arm-protos.h (arm_legtimate_address_p): Add prototype.
2880 * arm.h (ARM_GO_IF_LEGITIMATE_INDEX): Delete.
2881 (ARM_GO_IF_LEGITIMATE_ADDRESS): Call arm_legitimate_address_p.
2882
f0bf1270
HP
28832003-01-22 Hartmut Penner <hpenner@de.ibm.com>
2884
2885 * config/s390/s390.md (floatdfdi2): Insn has type 'itof'.
2886 * config/s390/2064.md (define_bypass): Correct 'Load' and
2887 'Load-address' bypass values.
21ff35fb 2888
fcb6a0f5
AS
28892003-01-22 Andreas Schwab <schwab@suse.de>
2890
2891 * config/ia64/t-ia64 (insn-attrtab.o-warn): Define as -Wno-error.
2892
c24b8026
ZW
28932003-01-21 Zack Weinberg <zack@codesourcery.com>
2894
2895 * genautomata.c (output_internal_insn_latency_func,
2896 output_print_reservation_func): Short circuit when there is no
2897 automaton to generate code for.
2898
38afe605
KG
28992003-01-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2900
2901 * Makefile.in (ssa-ccp.o): Depend on coretypes.h $(TM_H).
2902 (df.o): Delete duplicate dependency on coretypes.h $(TM_H).
2903
d24652ee
GK
29042003-01-21 Geoffrey Keating <geoffk@apple.com>
2905
2906 * config/rs6000/rs6000.md: Remove warning.
2907 (builtin_setjmp_receiver): Likewise.
2908 * config/darwin.c (update_stubs): Slightly improve terrible hack
2909 with identifiers. Add comment pointing out problems with it.
2910 (update_non_lazy_ptrs): Likewise.
2911
1c99d804
RH
29122003-01-21 Richard Henderson <rth@redhat.com>
2913
2914 * dwarf2out.c (lookup_filename): Fix printf format warning.
2915 * system.h (fread_unlocked, fwrite_unlocked): Undef.
2916
2917 * fixinc/Makefile.in (FL_LIST): Add $($@-warn) hook.
2918 (fixincl.o-warn, gnu-regex.o-warn): New.
2919 * fixinc/fixfixes.c (FIX_PROC_HEAD): Mark parameters unused.
2920 * fixinc/fixtests.c (TEST_FOR_FIX_PROC_HEAD): Likewise.
2921 * fixinc/fixincl.c (process): Fix printf format warning.
2922
f0b886ab
UW
29232003-01-21 Ulrich Weigand <uweigand@de.ibm.com>
2924
2925 * dwarf2out (output_file_names): Don't crash if called
2926 with empty file_table.
2927
490c57bb
ZW
29282003-01-21 Zack Weinberg <zack@codesourcery.com>
2929
2930 * genautomata.c (output_internal_insn_latency_func): Add
2931 missing break statement to generated code.
2932
100e3acb
RS
29332003-01-21 Roger Sayle <roger@eyesopen.com>
2934
2935 * stmt.c (same_case_target_p): New function to determine whether
2936 two case labels branch to the same target. Split out from...
2937 (group_case_nodes): ... here. Use same_case_target_p instead.
2938 (strip_default_case_nodes): Remove explicit case nodes
2939 that branch to the default destination.
2940 (expand_end_case_type): Call strip_default_case_nodes after
2941 group_case_nodes, to simplify the case-list before we count it.
2942 Only generate table_label RTX when actually needed. Try to share
2943 thiscase->exit_label and thiscase->data.case_stmt.default_label
2944 when a switch has no explicit default case. Simplify test for
2945 constant index.
2946
e8e8c1e5
KH
29472003-01-21 Kazu Hirata <kazu@cs.umass.edu>
2948
2949 * config/h8300/h8300.md (*negsf2_h8300): Use \\t instead of
2950 \t.
2951 (*negsf2_h8300hs): Likewise.
2952 (*addsi3_lshiftrt_16_zexthi): Likewise.
2953 (*iorhi3_lshiftrt_8): Likewise.
2954
044b4de3
UW
29552003-01-21 Ulrich Weigand <uweigand@de.ibm.com>
2956
2957 * dwarf2out.c (fde_table_in_use): Mark GTY.
2958 (dwarf2out_cfi_label_num): New variable, marked GTY.
2959 (dwarf2out_cfi_label): Use it instead of static label_num.
2960 * emit-rtl.c (label_num): Mark GTY.
2961
cfedf91b
KH
29622003-01-21 Kazu Hirata <kazu@cs.umass.edu>
2963
2964 * config/h8300/h8300.c (output_plussi): Support H8/300.
2965 (compute_plussi_length): Likewise.
2966 (compute_plussi_cc): Likewise.
2967 * config/h8300/h8300.md (addsi_h8300): Use output_plussi to
2968 output assembly instructions.
2969
dd859b8a
KG
29702003-01-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2971
1f5b3282
KG
2972 * calls.c (fix_unsafe_tree): Prototype.
2973
dd859b8a
KG
2974 * Makefile.in (GCC_WARN_CFLAGS): Add $(WERROR) $($@-warn)
2975 (gtype-desc.o-warn, c-decl.o-warn, varasm.o-warn, gcc.o-warn,
2976 insn-conditions.o-warn, out_object_file, gengtype-yacc.o-warn,
2977 c-parse.o-warn): Add -Wno-error.
2978 (STAGE2_FLAGS_TO_PASS): Add WERROR="@WERROR@".
2979
2980 * configure.in (--enable-werror): Add new flag.
2981 * doc/install.texi (--enable-werror): Document.
2982 * configure: Regenerate.
2983
2984 * objc/Make-lang.in (objc/objc-parse.o-warn): Add -Wno-error.
2985
4f9365e2
AS
29862003-01-21 Andreas Schwab <schwab@suse.de>
2987
2988 * genautomata.c (output_internal_insn_latency_func): Fix missing
2989 close paren in output.
2990
a543eb5e
ZW
29912003-01-21 Zack Weinberg <zack@codesourcery.com>
2992
2993 * genautomata.c: Space savings in generated code:
2994 (output_dfa_insn_code_func): Split out the table-enlargement
2995 path to an out-of-line static function, dfa_insn_code_enlarge.
2996 (output_internal_insn_latency_func): Use a lookup table for the
2997 default latencies.
2998 (output_print_reservation_func): Use a lookup table for the
2999 strings.
3000
292e35a3
CE
30012003-01-21 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
3002
3003 PR opt/7507
3004 * calls.c (fix_unsafe_tree): Split out from ...
3005 (expand_call): ... here. Use it on the function address too.
3006
d8d0f5af
RH
30072003-01-20 Richard Henderson <rth@redhat.com>
3008
3009 * expr.h (default_must_pass_in_stack): Move decl outside ifdef.
3010
5b50aa9d
RH
30112003-01-20 Richard Henderson <rth@redhat.com>
3012
515e1c9f 3013 PR opt/7154
5b50aa9d
RH
3014 * stmt.c (expand_asm_operands): Validize memory operands.
3015
7a174a15
RH
30162003-01-20 Richard Henderson <rth@redhat.com>
3017
3018 PR opt/8848
3019 * ifcvt.c (noce_process_if_block): Correct arguments to
3020 modified_between_p for no-else-block case.
3021
9ac7ebba
KH
30222003-01-20 Kazu Hirata <kazu@cs.umass.edu>
3023
3024 * config/h8300/h8300.c (const_costs): Remove a warning.
3025 (output_plussi): Likewise.
3026 (compute_plussi_length): Likewise.
3027 (compute_plussi_cc): Likewise.
3028
309c52b5
KH
30292003-01-20 Kazu Hirata <kazu@cs.umass.edu>
3030
3031 * config/h8300/h8300.md (addsi_h8300): Remove the last
3032 alternative.
3033
b30686ec
KH
30342003-01-20 Kazu Hirata <kazu@cs.umass.edu>
3035
3036 * config/h8300/h8300.c (get_shift_alg): Remove redundant code.
3037
87608693
KG
30382003-01-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3039
3040 * system.h (__NO_STRING_INLINES): Define.
3041
475c8250
JDA
30422003-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3043
3044 * ifcvt.c (noce_emit_store_flag): Don't emit store flag if mode of x
3045 is not a scalar int mode.
3046
dbaff908
RS
30472003-01-20 Roger Sayle <roger@eyesopen.com>
3048
3049 * cse.c (cse_insn): Avoid RTL sharing when updating the RETVAL
3050 insn's notes following a substitution inside a libcall.
3051
da8a6064
ZW
30522003-01-20 Zack Weinberg <zack@codesourcery.com>
3053
3054 * configure.in: Check for system-provided 'uchar' type.
a12b5bd9 3055 * configure, config.in: Regenerate.
da8a6064
ZW
3056 * cpphash.h: Only typedef 'uchar' if the system doesn't.
3057
a4b1b92a
RH
30582003-01-20 Richard Henderson <rth@redhat.com>
3059
3060 * expr.h (MUST_PASS_IN_STACK): Move implementation...
3061 * calls.c (default_must_pass_in_stack): ... here.
3062
d530b07f
VM
30632003-01-20 Vladimir Makarov <vmakarov@redhat.com>
3064
da8a6064
ZW
3065 * genattrtab.h (INSN_ALTS_FUNC_NAME): Move it from genautomata.c.
3066
d530b07f
VM
3067 * genautomata.c (INSN_ALTS_FUNC_NAME): Move it into genattrtab.h.
3068
3069 * genattr.c (main): Output default definition of AUTOMATON_ALTS.
3070 Wrap up definition of `insn_alts'.
3071
3072 * genattrtab.c (main): Wrap up `insn_alts'.
3073
351df804
KG
30742003-01-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3075
3076 * collect2.c (ldgetname): Check HAVE_DECL_LDGETNAME before
3077 prototyping.
3078 * configure.in: Check for <ldfcn.h> and ldgetname() prototype.
da8a6064 3079
351df804
KG
3080 * config.in, configure: Regenerate.
3081
e3289412
NC
30822003-01-20 Nick Clifton <nickc@redhat.com>
3083
3084 * config/arm/arm.md (sibcall_epilogue): Add an
3085 UNSPEC_PROLOGUE_USE to prevent the link register from being
3086 considered dead.
3087
5794139a
JH
3088Mon Jan 20 14:36:23 CET 2003 Jan Hubicka <jh@suse.cz>
3089
3090 * i386.md (SSE cmov splitter): Handle memory operand in operand 5.
3091
0a18ddf9
AS
30922003-01-20 Andreas Schwab <schwab@suse.de>
3093
3094 * system.h: Don't declare strsignal if the decl test hasn't been
3095 run yet.
3096
d99c740f
KH
30972003-01-20 Kazu Hirata <kazu@cs.umass.edu>
3098
3099 * config/h8300/h8300.c (notice_update_cc): Don't assume that
3100 recog_data.operands[0] is always associated with cc0.
3101
825c5408
DE
31022003-01-19 David Edelsohn <edelsohn@gnu.org>
3103
3104 * collect2.c (ldgetname): Expand declaration to prototype.
3105 * read-rtl.c (atoll): Add prototype.
da3e0142 3106 * system.h (strsignal): Also declare if no declaration found.
825c5408 3107
3bd6d4c4
AO
31082003-01-19 Alexandre Oliva <aoliva@redhat.com>
3109
3110 * config.gcc (mips64*-*-linux*): Added.
3111 * config/mips/linux64.h, config/mips/t-linux64: New file.
3112 * config/mips/iris6.h (MIPS_TFMODE_FORMAT): Define.
3113 * config/mips/mips.c (override_options): Use it.
3114 * config/mips/mips.h (TARGET_SWITCHES): Added...
3115 (SUBTARGET_TARGET_SWITCHES): New, empty by default.
3116 * Makefile.in (SPECS): New.
3117 (STAGESTUFF, specs, mostlyclean, install-common): Use it.
3118 * gcc.c (process_command): Move self-spec processing past spec
3119 file loading.
3120 * doc/tm.texi (DRIVER_SELF_SPECS): Document the change.
3121 * doc/fragments.texi (MULTILIB_EXTRA_OPTS): Document need for
3122 CRTSTUFF_T_CFLAGS.
3123 (SPECS): Document.
3124 * doc/invoke.texi (-mabi-fake-default): Document.
3125
e9f13564
SC
31262003-01-19 Stephane Carrez <stcarrez@nerim.fr>
3127
3128 * config/m68hc11/m68hc11.c (stack_push_word, stack_pop_word,
3129 z_reg, z_reg_qi): Declare static and GTY().
3130 (da_reg): Remove.
3131 (create_regs_rtx): Don't create da_reg.
3132 ("gt-m68hc11.h"): Include for GTY roots.
3133 * config/m68hc11/m68hc11.h (ix_reg, iy_reg, d_reg): Declare extern
3134 and GTY() here.
3135 (m68hc11_compare_op0, m68hc11_compare_op1): Likewise.
3136 (m68hc11_soft_tmp_reg): Likewise.
3137 * config/m68hc11/m68hc11-protos.h: Remove above declarations.
3138
32dd366d
KH
31392003-01-18 Kazu Hirata <kazu@cs.umass.edu>
3140
3141 * basic-block.h: Fix comment formatting.
3142 * calls.c: Likewise.
3143 * combine.c: Likewise.
3144 * convert.c: Likewise.
3145 * gcov.c: Likewise.
3146 * haifa-sched.c: Likewise.
3147 * libgcc2.c: Likewise.
3148 * loop.c: Likewise.
3149 * profile.c: Likewise.
3150 * system.h: Likewise.
3151
bc3cb712
RS
31522003-01-18 Roger Sayle <roger@eyesopen.com>
3153
3154 * config/pa/pa.md (muldi3): Avoid invalid sharing of SUBREG RTXs.
3155
25e42e9d
KG
31562003-01-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3157
3158 * ra-build.c (undef_to_size_word): Avoid `switch' warning.
3159
6f9c81f5
DJ
31602003-01-17 Dale Johannesen <dalej@apple.com>
3161
da8a6064 3162 * config/rs6000/rs6000.md (*floatsidf2_internal): Add earlyclobbers.
6f9c81f5
DJ
3163 (*floatunssidf2_internal): Ditto.
3164
95bd1dd7
KH
31652003-01-17 Kazu Hirata <kazu@cs.umass.edu>
3166
3167 * alias.c: Fix comment typos.
3168 * basic-block.h: Likewise.
3169 * c-common.c: Likewise.
3170 * c-common.h: Likewise.
3171 * c-decl.c: Likewise.
3172 * c-opts.c: Likewise.
3173 * c-pragma.c: Likewise.
3174 * c-pretty-print.h: Likewise.
3175 * cfg.c: Likewise.
3176 * cfganal.c: Likewise.
3177 * cfgbuild.c: Likewise.
3178 * cfgcleanup.c: Likewise.
3179 * cfglayout.c: Likewise.
3180 * cfgrtl.c: Likewise.
3181 * convert.c: Likewise.
3182 * cpphash.h: Likewise.
3183 * cpplex.c: Likewise.
3184 * cpplib.h: Likewise.
3185 * df.h: Likewise.
3186 * diagnostic.c: Likewise.
3187 * diagnostic.h: Likewise.
3188 * dwarf2.h: Likewise.
3189
d5840e09
SS
31902003-01-17 Stan Shebs <shebs@apple.com>
3191
3192 * config/darwin-protos.h: Forward-declare struct cpp_reader.
3193
e607534b
DR
31942003-01-17 Douglas B Rupp <rupp@gnat.com>
3195
3196 * config/alpha/alpha.c (alpha_need_linkage): Fix obvious
3197 mistake in last checkin.
3198
fbe5a4a6
KH
31992003-01-17 Kazu Hirata <kazu@cs.umass.edu>
3200
3201 * et-forest.c: Fix comment typos.
3202 * et-forest.h: Likewise.
3203 * except.c: Likewise.
3204 * expr.c: Likewise.
3205 * flags.h: Likewise.
3206 * flow.c: Likewise.
3207 * gcc.c: Likewise.
3208 * gcse.c: Likewise.
3209 * genattrtab.c: Likewise.
3210 * genautomata.c: Likewise.
3211 * gengtype.c: Likewise.
3212 * genrecog.c: Likewise.
3213 * global.c: Likewise.
3214 * gthr-rtems.h: Likewise.
3215
095f9093
KG
32162003-01-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3217
3218 * i386.c (x86_function_profiler): Fix format specifier.
3219
084087e1
RH
32202003-01-17 Richard Henderson <rth@redhat.com>
3221
3222 * gengtype.c (walk_type): Allow paramN_is.
3223
4a13592e
NC
32242003-01-17 Nick Clifton <nickc@redhat.com>
3225
3226 * config/i960/t-960bare (i960-c.o): Add missing newline escape.
3227
01193617
RH
32282003-01-16 Richard Henderson <rth@redhat.com>
3229
3230 * config/alpha/linux-elf.h (LIB_SPEC): Adjust inter-option spacing.
3231
f030826a
RH
32322003-01-16 Richard Henderson <rth@redhat.com>
3233
3234 * config/alpha/alpha.c (alpha_sr_alias_set): Mark GTY.
3235 (alpha_next_sequence_number): Likewise.
3236 (alpha_this_literal_sequence_number): Likewise.
3237 (alpha_this_gpdisp_sequence_number): Likewise.
3238 (struct alpha_funcs, alpha_funcs_num): Likewise.
3239 (struct alpha_links): Fix branch merge error.
3240 (alpha_need_linkage, alpha_use_linkage): Use GC for alpha_funcs.
3241
e1551d47
AO
32422003-01-17 Alexandre Oliva <aoliva@redhat.com>
3243
3244 * config/mips/mips.h: Don't use #elif. Reported by Kaveh
3245 R. Ghazi.
3246
3d042e77
KH
32472003-01-16 Kazu Hirata <kazu@cs.umass.edu>
3248
3249 * ifcvt.c: Fix comment typos.
3250 * lcm.c: Likewise.
3251 * libgcc2.c: Likewise.
3252 * local-alloc.c: Likewise.
3253 * loop.c: Likewise.
3254 * predict.c: Likewise.
3255 * ra-build.c: Likewise.
3256 * ra.c: Likewise.
3257 * ra-colorize.c: Likewise.
3258 * ra.h: Likewise.
3259 * ra-rewrite.c: Likewise.
3260 * regmove.c: Likewise.
3261 * reload.h: Likewise.
3262 * rtlanal.c: Likewise.
3263 * toplev.c: Likewise.
3264 * tree.h: Likewise.
3265 * unwind-dw2-fde-glibc.c: Likewise.
3266 * vmsdbgout.c: Likewise.
3267
c4274b22
RH
32682003-01-16 Richard Henderson <rth@redhat.com>
3269
3270 * dwarf2out.c (struct file_table): Remove.
3271 (FILE_TABLE_INCREMENT): Remove.
3272 (file_table): Make a varray; mark for GC. Update all users.
3273 (file_table_last_lookup_index): Extract from struct file_table.
3274 (output_file_names): Fix unsigned compare warnings.
3275 (add_name_attribute): Remove inline marker.
3276 (add_comp_dir_attribute): Split out from gen_compile_unit_die.
3277 (lookup_filename): Don't manage size of file_table.
3278 (init_file_table): Allocate file_table with GC.
3279 (dwarf2out_init): Don't record main_input_filename here.
3280 (dwarf2out_finish): Do it here instead.
3281
19162d0e
BK
32822003-01-16 Bruce Korb <bkorb@gnu.org>
3283
3284 * gcc/fixinc/inclhack.def(limits_ifndef): QNX needs a bypass, too.
3285
f1e2239f
KK
32862003-01-16 Kaz Kojima <kkojima@gcc.gnu.org>
3287
da8a6064
ZW
3288 * config/sh/sh.c (sh_initialize_trampoline): Emit rotrdi3_mextr
3289 instead of rotldi3_mextr.
f1e2239f 3290
cda1f765
VM
32912003-01-16 Vladimir Makarov <vmakarov@redhat.com>
3292
3293 * haifa-sched.c (move_insn): Restore moving all schedule group.
3294 (set_priorities): Restore taking SCHED_GROUP_P into account.
3295
3296 * sched-deps.c (add_dependence): Restore processing the last group
3297 insn.
3298 (remove_dependence, group_leader): Restore the functions.
3299 (set_sched_group_p): Restore adding dependencies from previous insn
3300 in the group.
3301 (compute_forward_dependences): Restore usage of group_leader.
3302
3303 * sched-ebb.c (init_ready_list): Restore taking SCHED_GROUP_P into
3304 account.
3305
3306 * sched-rgn.c (init_ready_list): Restore taking SCHED_GROUP_P into
3307 account.
3308 (can_schedule_ready_p): Ditto.
3309 (add_branch_dependences): Restore skipping over the group insns.
da8a6064 3310
200097cc
SC
33112003-01-16 Stephane Carrez <stcarrez@nerim.fr>
3312
3313 * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix handling
3314 68HC12 pre/post inc/dec side effects.
3315
f411c739
SC
33162003-01-16 Stephane Carrez <stcarrez@nerim.fr>
3317
3318 * config/m68hc11/m68hc11.h (MASK_M6812): Define.
3319
08c43ea7
R
3320Thu Jan 16 21:50:25 2003 J"orn Rennecke <amylaar@onetel.net.uk>
3321
3322 * sh.md (mshflo_w_x): Fix description of operation.
3323
07488f32
ZW
33242003-01-16 Zack Weinberg <zack@codesourcery.com>
3325
3326 * config/rs6000/rs6000.h: Mention Altivec registers in
3327 commentary. Fix typo.
3328
27dc0551
DE
33292003-01-16 David Edelsohn <edelsohn@gnu.org>
3330
3331 * config/rs6000/rs6000.md (movti_string): Remove clobber.
3332 * config/rs6000/rs6000.c (rs6000_emit_move, TImode): Explicitly
3333 generate PARALLEL with clobber for TARGET_POWER.
3334
0334ef47
KG
33352003-01-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3336
3337 * ra-colorize.c (colorize_one_web): Initialize variable.
3338 * regmove.c (fixup_match_1): Likewise.
3339 * reload1.c (reload_as_needed): Likewise.
3340 * sdbout.c (SET_KNOWN_TYPE_TAG): Add cast.
3341
16f2b86a
ZD
33422003-01-16 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3343
3344 * cfgloop.c (flow_loops_find): Fix handling of abnormal edges.
3345
fc555370
KG
33462003-01-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3347
93d8c755
KG
3348 * dbxout.c (lastfile, cwd): Fix `unused' warning.
3349 * dwarf2out.c (fde_table_in_use, current_funcdef_fde,
3350 dw_cfi_oprnd1_desc, dw_cfi_oprnd2_desc, next_die_offset,
3351 is_main_source, file_table, decl_die_table_in_use,
3352 abbrev_die_table_in_use, line_info_table_in_use,
3353 separate_line_info_table_in_use, pubname_table_in_use,
3354 arange_table_in_use, ranges_table_in_use,
3355 current_function_has_inlines): Likewise.
3356 * flow.c (life_analysis): Likewise.
3357 * genemit.c (gen_insn): Likewise.
3358 * protoize.c (cplus_suffix): Likewise.
3359
0c2ca901
KG
3360 * arm.c (ROUND_UP_WORD): Renamed from ROUND_UP.
3361 * arm.h (ROUND_UP_WORD): Likewise.
3362
fc555370
KG
3363 * arm.h (CONDITIONAL_REGISTER_USAGE): Avoid signed/unsigned
3364 warning.
3365 * emit-rtl.c (gen_rtx_REG, set_mem_attributes_minus_bitpos,
3366 init_emit_once): Likewise.
3367 * flow.c (mark_regs_live_at_end, calculate_global_regs_live):
3368 Likewise.
3369 * function.c (assign_stack_temp_for_type): Likewise.
3370 * loop.c (loop_invariant_p): Likewise.
3371 * recog.c (push_operand): Likewise.
3372 * regclass.c (init_reg_sets_1): Likewise.
3373 * reload.c (update_auto_inc_notes): Likewise.
3374 * reload1.c (reload_as_needed, emit_input_reload_insns): Likewise.
3375 * stmt.c (expand_asm_operands): Likewise.
3376 * stor-layout.c (start_record_layout): Likewise.
3377
64510a4f
HB
33782003-01-16 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
3379
07488f32 3380 * config/c4x/c4x.md (epilogue): Correct last patch.
64510a4f 3381
77480b0b
RH
33822003-01-15 Richard Henderson <rth@redhat.com>
3383
3384 * config/alpha/alpha.c (find_lo_sum_using_gp): Rename from find_lo_sum;
3385 also check that GP is being used.
3386 (alpha_find_lo_sum_using_gp): New.
3387 (alpha_does_function_need_gp): Use get_attr_usegp.
3388 * config/alpha/alpha-protos.h: Update.
3389 * config/alpha/alpha.md (attr usegp): New. Annotate patterns
3390 as needed.
3391
a0134312
RS
33922003-01-15 Roger Sayle <roger@eyesopen.com>
3393
3394 * gcse.c (one_cprop_pass): Change function arguments to take both
3395 cprop_jumps and bypass_jumps flags instead of just alter_jumps.
3396 (gcse_main): Update calls to one_cprop_pass, disabling bypassing.
3397 (bypass_jumps): New function to perform separate jump bypassing pass.
3398 * rtl.h (bypass_jumps): Add function prototype.
3399 * timevar.def (TV_BYPASS): New timing variable.
3400 * toplev.c (enum dump_file_index): Add new entry DFI_bypass.
3401 (dump_file): New entry for the bypass RTL dump file.
3402 (rest_of_compilation): Insert new jump bypassing optimization
3403 pass after loop.
3404 * doc/passes.texi: Document new pass.
3405
4af6a063
JDA
34062003-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
3407
3408 * som.h (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY,
3409 ASM_WEAKEN_LABEL, GTHREAD_USE_WEAK): Define.
3410 * pa.h (TARGET_SOM_SDEF): Define.
3411 * pa-hpux11.h (TARGET_SOM_SDEF): Define.
3412
51e13b71
SC
34132003-01-16 Stephane Carrez <stcarrez@nerim.fr>
3414
07488f32 3415 * config/m68hc11/m68hc11.c (expand_prologue): Use push/pop to
51e13b71
SC
3416 allocate 4-bytes of locals on 68HC11.
3417 (expand_epilogue): Likewise.
3418 (m68hc11_memory_move_cost): Increase cost of HI/QI soft registers.
3419
f077f169
SC
34202003-01-15 Stephane Carrez <stcarrez@nerim.fr>
3421
3422 * config/m68hc11/m68hc11.h (ASM_SPEC): Handle -m68hcs12; Pass -mshort
3423 and -mshort-double to the assembler to specify the ABI.
3424 (LINK_SPEC): Likewise.
3425 (CPP_SPEC): Pass HCS12 specific define.
3426 (MASK_M68S12): New define.
3427 (TARGET_M68S12): Likewise.
3428 (TARGET_SWITCHES): New options -m68hcs12 and -m68S12.
3429 (TARGET_VERSION): Update.
3430 * config/m68hc11/m68hc12.h (CPP_SPEC): Pass HCS12 specific define.
3431 (LINK_SPEC): Update.
3432 (ASM_SPEC): Update.
3433 * config/m68hc11/m68hc11.c (m68hc11_asm_file_start): Update.
3434 * doc/invoke.texi (M68hc1x Options): Document -m68hcs12.
3435
c0f684dc
SC
34362003-01-15 Stephane Carrez <stcarrez@nerim.fr>
3437
3438 * config/m68hc11/m68hc11.md ("return"): Use emit_jump_insn to emit
3439 the return code.
3440
6982ae15
JZ
34412003-01-15 Josef Zlomek <zlomekj@suse.cz>
3442
3443 * cfganal.c (set_edge_can_fallthru_flag): Clear the EDGE_CAN_FALLTHRU
3444 flag before setting it.
3445
8cadeff1
RS
34462003-01-15 Roger Sayle <roger@eyesopen.com>
3447
3448 * c-semantics.c (genrtl_while_stmt): Improve initial RTL generation
3449 when loop condition is known true, i.e. "while (1) { ... }".
3450 (genrtl_for_stmt): Similarly for "for" statements.
3451
03cd8aba
RS
34522003-01-15 Roger Sayle <roger@eyesopen.com>
3453
3454 * real.c (real_sqrt): Return a bool result indicating whether
3455 a floating point exception or trap should be raised.
3456 * real.h (real_sqrt): Update function prototype.
3457 * builtins.c (fold_builtin): Only fold non-trapping square
3458 roots unless we're ignoring errno and trapping math.
3459
4da78214
JDA
34602003-01-15 John David Anglin <dave.anglin@nrc.gc.ca>
3461
3462 * expr.h (emit_conditional_add): Add PARAMS to declaration.
3463 * gengtype-lex.l (malloc, realloc): Move defines after include of
3464 system.h. Remove duplicate include of system.h.
3465
9ee0a442
RS
34662003-01-15 Roger Sayle <roger@eyesopen.com>
3467
3468 PR middle-end/9009
3469 * optabs.c (expand_unop): When manipulating the FP sign bit
3470 using integer operations, account for targets with different
3471 integer and FP word orders.
3472 (expand_abs): Likewise.
3473
e3981aab
DE
34742003-01-15 David Edelsohn <edelsohn@gnu.org>
3475
3476 * config/rs6000/rs6000.c (rs6000_gen_section_name): Do not include
3477 file extension in section name.
3478
89c4b810
RE
34792003-01-15 Richard Earnshaw <rearnsha@arm.com>
3480
3481 * flow.c (find_auto_inc): Also try to generate a PRE_MODIFY with
3482 constant offset.
3483
3cd45774
RE
34842003-01-15 Richard Earnshaw <rearnsha@arm.com>
3485
3486 * arm.h (HAVE_PRE_MODIFY_DISP, HAVE_PRE_MODIFY_REG): Define.
3487 (HAVE_POST_MODIFY_DISP, HAVE_POST_MODIFY_REG): Define.
3488 (ARM_GO_IF_LEGITIMATE_ADDRESS): Handle pre/post-modify addresses.
3489 (ARM_PRINT_OPERAND_ADDRESS): Likewise.
3490
b1a6f8db
JH
3491Wed Jan 15 12:23:21 CET 2003 Jan Hubicka <jh@suse.cz>
3492
3493 PR f/9258
07488f32 3494 * global.c (struct allocno): Add no_stack_reg.
b1a6f8db
JH
3495 (global_conflicts): Set no_stack_reg.
3496 (find_reg): Use it.
3497
3498 * convert.c (convert_to_real): Fold - and abs only when profitable.
3499 * fold-const.c (fold): Fold truncates in - and abs.
3500
d18c7e59
JZ
35012003-01-15 Josef Zlomek <zlomekj@suse.cz>
3502
3503 Segher Boessenkool <segher@koffie.nl>
fbe3b30b
SB
3504
3505 * predict.c (real_inv_br_prob_base): New variable.
3506 (propagate_freq): Use multiply by reciprocal instead of
3507 division. Don't divide by 1.0 at all.
3508 (estimate_bb_frequencies): Similar.
3509
027faee7
AO
35102003-01-15 Alexandre Oliva <aoliva@redhat.com>
3511
3512 * configure.in (libgcc_visibility): Force disabled on IRIX 6 too.
3513 * configure: Rebuilt.
3514
077dab3b 35152003-01-15 Hartmut Penner <hpenner@de.ibm.com>
3c0121e4 3516
077dab3b
HP
3517 * config/s390/s390.c (s390_safe_attr_type): New function.
3518 (s390_use_dfa_pipeline_interface): New function, return true for z900.
3519 (s390_issue_rate): New function.
3520 (s390_agen_dep_p): New function.
3521 (addr_generation_dependency_p): Use 's390_safe_attr_type'.
3522 (s390_adjust_cost): Return 'cost' if new DFA is used.
3523 (s390_adjust_priority): Delete function.
3524 * config/s390/s390-protos.h: (s390_agen_dep_p): New prototype.
3525 * config/s390/s390.md (atype attribute): Attribute 'atype' default
3526 determined by 'op_type'.
3527 (type attribute): Added more type attributes.
3528 * config/s390/2064.md: New DFA description for z900 pipeline.
07488f32 3529
077dab3b 35302003-01-15 Alexandre Oliva <aoliva@redhat.com>
2b28d405 3531
acfa9d9f
AO
3532 * config/i386/i386.c (ix86_expand_vector_move): Validize constant
3533 forced to memory. Fixes PR bootstrap/9036.
3534
3c0121e4
AO
3535 * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Define so as
3536 to set $gp before the call.
3537
553eb139
RH
35382003-01-14 Richard Henderson <rth@redhat.com>
3539
3540 * config/alpha/alpha.c (alpha_expand_mov): Use correct mode
3541 for force_const_mem.
3542
dd1b7476
KG
35432003-01-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3544
3545 * genattr.c (main): Rearrange output to avoid prototype warning.
3546 * genautomata.c (transform_3): Fix ambiguous-else warning.
3547 * local-alloc.c (requires_inout): Add parentheses around
3548 assignment used as truth-value.
3549 * timevar.c: Move system includes above local includes. Include
3550 toplev.h
3551 * Makefile.in (timevar.o): Depend on toplev.h.
3552
6028880a
DC
35532003-01-14 Denis Chertykov <denisc@overta.ru>
3554
3555 * config/ip2k/ip2k.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
3556 (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
3557
3558 * config/ip2k/ip2k.c (ip2k_attribute_table): New table of
07488f32 3559 attributes.
6028880a
DC
3560 (TARGET_ATTRIBUTE_TABLE): New macro.
3561 (valid_machine_type_attribute): Remove.
3562 (valid_machine_decl_attribute): Remove.
3563 (ip2k_handle_progmem_attribute): New function.
3564 (ip2k_handle_fndecl_attribute): New function.
3565
4a2953e4 35662003-01-10 Andrew Haley <aph@redhat.com>
a686ea5b
AH
3567
3568 * config/i386/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Rename
3569 registers to be in correct order. Add rip.
3570
4d77fda2
KH
35712003-01-14 Kazu Hirata <kazu@cs.umass.edu>
3572
3573 * config/h8300/h8300.md (*andsi3_lshiftrt_9_sb): New.
3574 (*iorsi3_and_lshiftrt_9_sb): Likewise.
3575
77f9af81
JH
3576Tue Jan 14 00:45:33 CET 2003 Jan Hubicka <jh@suse.cz>
3577
3578 * convert.c (strip_float_extensions): Look for narrowest type handling
3579 FP constants.
3580
3581 * fold-const.c (fold): Fold (double)float1 CMP (double)float2 into
3582 float1 CMP float2.
3583 * convert.c (strip_float_extensions): Make global.
3584 * tree.h (strip_float_extensions): Declare.
3585
fd371a93
GDR
35862003-01-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
3587
3588 * timevar.def: define TV_NAME_LOOKUP.
3589 * timevar.c (timevar_pop): Be verbose when aborting.
3590
dcd1c2b8
AS
35912003-01-13 Andreas Schwab <schwab@suse.de>
3592
3593 * Makefile.in ($(parsedir)/gengtype-lex.c): Don't change to
3594 $(parsedir), just move the temporary file at the end.
3595 ($(parsedir)/gengtype-yacc.c): Likewise.
3596
eb4b5f93
AO
35972003-01-13 Alexandre Oliva <aoliva@redhat.com>
3598
3599 * aclocal.m4 (gcc_AC_PROG_GNAT): Don't try to prepend
3600 ${ac_tool_prefix} to ADAC or CC. Protect them from word
3601 splitting.
3602 * configure: Rebuilt.
3603
f7835768
KG
36042003-01-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3605
3606 * config/sparc/gmon-sol2.c (moncontrol, monstartup, _mcleanup,
3607 internal_mcount): Don't use PARAMS.
3608 (monstartup, _mcleanup, internal_mcount, moncontrol): Convert to
3609 ISO C style.
3610 (internal_mcount): Use __attribute__, not ATTRIBUTE_UNUSED.
3611
38a3dbbb
AS
36122003-01-13 Andreas Schwab <schwab@suse.de>
3613
3614 * config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_LOCAL): Output type
3615 directive.
3616
98dc53e3
KH
36172003-01-13 Kazu Hirata <kazu@cs.umass.edu>
3618
3619 * config/h8300/h8300.md (*andsi3_lshift_n_sb): New.
3620 (*iorsi3_and_lshiftrt_n_sb): Likewise.
3621
e8f2b18d
MM
36222003-01-12 Mark Mitchell <mark@codesourcery.com>
3623
3624 PR c++/9264
3625 * c-lex.c (c_lex): Set the token value to error_mark_node for
3626 invalid numeric constants.
3627
70f8b89f
KG
36282003-01-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3629
3630 * c-pch.c (asm_file_startpos): Change to `long'.
3631 (pch_init): Use ftell, not ftello.
3632 (c_common_write_pch): Use ftell/fseek, not ftello/fseeko.
3633 Use `long' instead of `off_t'.
3634 (c_common_read_pch): Likewise.
3635 * ggc-common.c (gt_pch_save): Use long/ftell instead of
3636 off_t/ftello.
3637
8e37cba8
AM
36382003-01-12 Alan Modra <amodra@bigpond.net.au>
3639
3640 * expr.c (expand_expr <RDIV_EXPR>): Correct recursive call args.
3641
04f08c8e
RE
36422003-01-11 Richard Earnshaw (rearnsha@arm.com)
3643
3644 * arm-protos.h (struct cpp_reader): Add declaration.
3645
a5cf80f0
JH
3646Sat Jan 11 11:02:58 CET 2003 Jan Hubicka <jh@suse.cz>
3647
3648 PR target/9068
3649 * i386.c (output_fp_compare): Fix typo.
3650
bbfb86aa
DE
36512003-01-10 David Edelsohn <edelsohn@gnu.org>
3652
3653 * config/rs6000/rs6000.c (common_mode_defined): Mark for PCH.
3654
223b87b6
GK
36552003-01-10 Geoffrey Keating <geoffk@apple.com>
3656
3859c32a
GK
3657 * Makefile.in (parsedir): New variable.
3658 (docobjdir): New variable.
07488f32 3659 (c-parse.o, c-parse.c, c-parse.y, gengtype-lex.o, gengtype-yacc.o,
3859c32a
GK
3660 gengtype-lex.c, gengtype-yacc.c): Use parsedir.
3661 (info, cpp.info, gcc.info, gccint.info, gccinstall.info,
3662 cppinternals.info, generated-manpages, gcov.1, cpp.1, gcc.1, gfdl.7,
07488f32 3663 gpl.7, fsf-funding.7, maintainer-clean, install-info, install-man):
3859c32a
GK
3664 Use docobjdir.
3665 * objc/Make-lang.in (objc/objc-parse.c, objc/objc-parse.y,
3666 objc.maintainer-clean): Use parsedir.
3667
63af3bd1
GK
3668 * varasm.c (struct constant_descriptor_rtx): Remove unused
3669 `label' field.
3670
223b87b6
GK
3671 * toplev.c (documented_lang_options): Document -Winvalid-pch.
3672
fbadafbc
RH
36732003-01-10 Richard Henderson <rth@redhat.com>
3674
3675 * config/alpha/alpha.h (NO_PROFILE_COUNTERS): Set.
3676 (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Kill.
3677
ab5ecb01
RH
36782003-01-10 Richard Henderson <rth@redhat.com>
3679
3680 * combine.c (make_compound_operation): Use SCALAR_INT_MODE_P,
3681 not INTEGRAL_MODE_P when widening extensions.
3682
7f24e7c5
RH
36832003-01-10 Richard Henderson <rth@redhat.com>
3684
3685 * config/alpha/alpha.c (decl_has_samegp): True for !TREE_PUBLIC.
3686
6dd05d08
GK
36872003-01-10 Geoffrey Keating <geoffk@apple.com>
3688
19cc0dd4
GK
3689 * ggc-page.c (ggc_collect): Avoid overflow computing
3690 min_expand.
3691
6dd05d08
GK
3692 * Makefile.in (RANLIB_FOR_TARGET): Use RANLIB when native.
3693 (RANLIB_TEST_FOR_TARGET): Delete. Don't pass down to sub-makes.
3694 Remove calls.
3695 * mklibgcc.in: Remove uses of RANLIB_TEST_FOR_TARGET.
3696
5f1355ef
JH
3697Fri Jan 10 22:05:35 CET 2003 Jan Hubicka <jh@suse.cz>
3698
3699 * ifcvt.c (noce_try_addcc): Do not call emit_conditional_add
3700 with weird operands.
3701
0cdca92b 37022003-01-10 Dale Johannesen <dalej@apple.com>
6dd05d08
GK
3703
3704 * calls.c (load_register_parameters): Add is_sibcall, sibcall_failure
3705 parameters. Call check_sibcall_argument_overlap if indicated.
3706 (check_sibcall_argument_overlap): Add mark_stored_args_map
3707 parameter. Don't mark parameter area as clobbered if not set.
3708 (expand_call): Adjust calls to above.
3709
37102003-01-10 Kelley Cook <kelleycook@comcast.net>
6cd656d0
KC
3711
3712 * configure.in (linker read-only and read-write section mixing):
3713 Squelch some assembler warnings.
3714 * configure: Likewise.
3715
be2c2a4b
HP
37162003-01-10 Hartmut Penner <hpenner@de.ibm.com>
3717
21ff35fb 3718 * doc/invoke.texi: Document -mtune, delete -mcpu
be2c2a4b
HP
3719 option for S/390 and zSeries.
3720 * config/s390/s390.c (s390_tune_string) New variable.
3721 (s390_cpu_string) Delete variable.
3722 (override_options): Use s390_tune_string instead of
3723 s390_cpu_string.
3724 * config/s390/s390.h: (TARGET_OPTIONS) '-mtune' instead of '-mcpu'.
3725
1f450138
KH
37262003-01-10 Kazu Hirata <kazu@cs.umass.edu>
3727
3728 * config/h8300/h8300.md (*iorsi3_ashift_31): New.
3729
d330ce15
JZ
37302003-01-10 Josef Zlomek <zlomekj@suse.cz>
3731
3732 * jump.c (next_nonnote_insn_in_loop): New function.
3733 (copy_loop_headers): Use next_nonnote_insn_in_loop instead of
3734 next_nonnote_insn.
3735 (duplicate_loop_exit_test). Likewise.
3736
17211ab5
GK
37372003-01-09 Geoffrey Keating <geoffk@apple.com>
3738
3739 Merge from pch-branch:
3740
3741 2003-01-06 Geoffrey Keating <geoffk@apple.com>
3742
3743 * ggc-page.c (ggc_pch_read): Update the statistics after a PCH
3744 load.
3745
3746 2002-12-24 Geoffrey Keating <geoffk@apple.com>
3747
3748 * cpplib.c (count_registered_pragmas): New function.
3749 (save_registered_pragmas): New function.
3750 (_cpp_save_pragma_names): New function.
3751 (restore_registered_pragmas): New function.
3752 (_cpp_restore_pragma_names): New function.
3753 * cpphash.h (_cpp_save_pragma_names): Prototype.
3754 (_cpp_restore_pragma_names): Likewise.
3755 * cpppch.c (struct save_macro_item): Split from save_macro_data.
3756 (struct save_macro_data): New field 'saved_pragmas'.
3757 (save_macros): Update for changes to struct save_macro_data.
3758 (cpp_prepare_state): Call _cpp_save_pragma_names, update
3759 for changes to struct save_macro_data.
3760 (cpp_read_state): Call _cpp_restore_pragma_names, update
3761 for changes to struct save_macro_data.
3762
3763 * cpppch.c (cpp_read_state): Restore the hashtable references
3764 in the cpp_reader.
07488f32 3765
17211ab5
GK
3766 * tree.h (built_in_decls): Mark for PCH.
3767
3768 * dbxout.c (lastfile): Don't mark for PCH.
3769
3770 * ggc.h: Document PCH calls into memory managers.
3771
3772 2002-12-18 Geoffrey Keating <geoffk@apple.com>
3773
3774 * doc/invoke.texi (Precompiled Headers): Document the
3775 directory form of PCH.
3776 * cppfiles.c (validate_pch): New function.
3777 (open_file_pch): Search suitably-named directories for PCH files.
3778
3779 2002-12-14 Geoffrey Keating <geoffk@apple.com>
3780
3781 * doc/gty.texi (GTY Options): Document chain_next, chain_prev,
3782 reorder options.
3783 (Type Information): Mention that the information is also
3784 used to implement PCH.
3785 * doc/passes.texi (Passes): Improve documentation of
3786 language-specific files.
3787
3788 2002-12-11 Geoffrey Keating <geoffk@apple.com>
3789
3790 * gengtype.c (struct write_types_data): Add reorder_note_routine field.
3791 (struct walk_type_data): Add reorder_fn field.
3792 (walk_type): Process 'reorder' option.
3793 (write_types_process_field): Reorder parameters to gt_pch_note_object,
3794 call reorder_note_routine.
3795 (write_func_for_structure): Reorder parameters to gt_pch_note_object.
3796 (ggc_wtd): Update for change to struct write_types_data.
3797 (pch_wtd): Likewise.
3798 * ggc.h (gt_pch_note_object): Reorder parameters.
3799 (gt_handle_reorder): New definition.
3800 (gt_pch_note_reorder): New prototype.
3801 * ggc-common.c (struct ptr_data): Add reorder_fn.
3802 (gt_pch_note_object): Reorder parameters.
3803 (gt_pch_note_reorder): New.
3804 (gt_pch_save): Call reorder_fn.
3805 * stringpool.c (gt_pch_n_S): Update for change to gt_pch_note_object.
3806
3807 * dbxout.c (cwd): Don't mark for PCH.
3808
3809 2002-12-09 Geoffrey Keating <geoffk@apple.com>
3810
3811 * gengtype.c (finish_root_table): Fix some warnings.
3812 (write_root): Handle TYPE_STRING.
3813 * ggc.h (gt_ggc_m_S): Add prototype.
3814 * stringpool.c (gt_ggc_m_S): New function.
3815
3816 2002-11-30 Geoffrey Keating <geoffk@apple.com>
3817
3818 * dwarf2out.c (dw2_string_counter): New.
3819 (AT_string_form): Use it.
3820 (same_dw_val_p): Update for removal of hashtable.h hash tables.
3821
3822 2002-11-22 Geoffrey Keating <geoffk@apple.com>
3823
3824 * dbxout.c: Include gt-dbxout.h.
3825 (lastfile): Mark for PCH/GGC.
3826 (cwd): Likewise.
3827 (struct typeinfo): Likewise.
3828 (typevec): Likewise.
3829 (typevec_len): Likewise.
3830 (next_type_number): Likewise.
3831 (struct dbx_file): Likewise.
3832 (current_file): Likewise.
3833 (next_file_number): Likewise.
3834 (dbxout_init): Allocate typevec, struct dbx_file with GGC.
3835 (dbxout_start_source_file): Allocate struct dbx_file with GGC.
3836 (dbxout_end_source_file): Don't free struct dbx_file.
3837 (dbxout_type): Use GGC to allocate typevec.
3838 * Makefile.in (dbxout.o): Depend on gt-dbxout.h, $(GGC_H).
3839 (GTFILES): Add dbxout.c.
3840 (gt-dbxout.h): New rule.
07488f32 3841
17211ab5
GK
3842 * Makefile.in (c-pch.o): Add debug.h as dependency.
3843 * c-pch.c: Include debug.h.
3844 (pch_init): Call start_source_file to keep nesting right.
3845 (c_common_read_pch): Add orig_name parameter. Call
3846 start_source_file debug hook. Call end_source_file debug hook.
3847 * c-common.h (c_common_read_pch): Update prototype.
3848 * cpplib.h (struct cpp_callbacks): Add fourth field to read_pch
3849 callback.
3850 * cppfiles.c (struct include_file): Add new field `header_name'.
3851 (find_or_create_entry): Default it to `name'.
3852 (open_file_pch): Set it to the original header file searched for.
3853 (stack_include_file): Don't stack an empty buffer, just handle
3854 PCH files immediately. Pass header_name field to read_pch callback.
3855
3856 2002-11-19 Geoffrey Keating <geoffk@apple.com>
3857
3858 * function.c (funcdef_no): Mark to be saved in a PCH.
3859
3860 2002-11-15 Geoffrey Keating <geoffk@apple.com>
3861
3862 * ggc-page.c (ggc_pch_read): Remove unused 'bmap_size'.
3863
3864 * cpppch.c (cpp_read_state): Correct size reallocated for 'defn'.
3865
3866 2002-11-14 Geoffrey Keating <geoffk@apple.com>
3867
3868 * optabs.h (code_to_optab): Add GTY marker.
3869
3870 2002-11-13 Geoffrey Keating <geoffk@apple.com>
3871
3872 * Makefile.in (GTFILES): Add cpplib.h.
3873 * c-common.h (struct c_common_identifier): Don't skip 'node' field.
3874 * c-decl.c (build_compound_literal): Don't use var_labelno.
3875 * cpplib.h (struct cpp_hashnode): Use gengtype to mark.
3876 * dwarf2asm.c (dw2_force_const_mem): Don't use const_labelno.
3877 * varasm.c (const_labelno): Use gengtype to mark.
3878 (var_labelno): Likewise.
3879 (in_section): Likewise.
3880 (in_named_name): Likewise.
3881 (struct in_named_entry): Likewise.
3882 (in_named_htab): Likewise.
3883 (set_named_section_flags): Use GGC to allocate struct in_named_entry.
3884 (init_varasm_once): Use GGC to allocate in_named_htab.
3885 * config/darwin.c (current_pic_label_num): Mark for PCH.
3886
3887 2002-11-11 Geoffrey Keating <geoffk@apple.com>
3888
3889 * ggc-simple.c (init_ggc_pch): New stub procedure.
3890 (ggc_pch_count_object): Likewise.
3891 (ggc_pch_total_size): Likewise.
3892 (ggc_pch_this_base): Likewise.
3893 (ggc_pch_alloc_object): Likewise.
3894 (ggc_pch_prepare_write): Likewise.
3895 (ggc_pch_write_object): Likewise
3896 (ggc_pch_finish): Likewise.
3897 (ggc_pch_read): Likewise.
3898
3899 2002-11-08 Geoffrey Keating <geoffk@apple.com>
3900
3901 * c-pch.c (c_common_write_pch): Write the macro definitions after
3902 the GCed data.
3903 (c_common_read_pch): Call cpp_prepare_state. Restore the macro
3904 definitions after the GCed data.
3905 * cpplib.c (save_macros): New.
3906 (reset_ht): New.
3907 (cpp_write_pch_deps): Split out of cpp_write_pch.
3908 (cpp_write_pch_state): Split out of cpp_write_pch.
3909 (cpp_write_pch): Delete.
3910 (struct save_macro_data): Delete.
3911 (cpp_prepare_state): New.
3912 (cpp_read_state): Erase and restore initial macro definitions.
3913 * cpplib.h (struct save_macro_data): Forward-declare.
3914 (cpp_write_pch_deps): Prototype.
3915 (cpp_write_pch_state): Prototype.
3916 (cpp_write_pch): Delete prototype.
3917 (cpp_prepare_state): Prototype.
3918 (cpp_read_state): Add fourth argument.
3919
3920 2002-11-04 Geoffrey Keating <geoffk@apple.com>
3921
3922 * gengtype.c (adjust_field_rtx_def): Don't use skip on valid fields.
3923 (write_array): Remove warning.
3924
3925 * gengtype.c (contains_scalar_p): New.
3926 (finish_root_table): Add the table to all languages, even if it's
3927 empty.
3928 (write_roots): Output gt_pch_scalar_rtab.
3929 * ggc-common.c (gt_pch_save): Write out scalars.
3930 (gt_pch_restore): Read scalars back.
3931
3932 * ggc-page.c (OBJECTS_IN_PAGE): New macro.
3933 (struct page_entry): Delete pch_page field.
3934 (ggc_recalculate_in_use_p): Use OBJECTS_IN_PAGE.
3935 (clear_marks): Likewise.
3936 (sweep_pages): Likewise.
3937 (poison_pages): Likewise.
3938 (ggc_print_statistics): Likewise.
3939 (ggc_pch_read): Don't free objects read from a PCH.
3940 Properly set up in_use_p and page_tails.
3941
3942 2002-10-25 Geoffrey Keating <geoffk@apple.com>
3943
3944 * gengtype.c (struct write_types_data): New.
3945 (struct walk_type_data): Make `cookie' const; add extra
3946 prev_val item; add `orig_s' field.
3947 (walk_type): Update prev_val[3].
3948 (write_types_process_field): New.
3949 (write_func_for_structure): Take write_types_data structure.
3950 (write_types): New.
3951 (ggc_wtd): New.
3952 (pch_wtd): New.
3953 (write_types_local_process_field): New.
3954 (gc_mark_process_field): Delete.
3955 (write_local_func_for_structure): New.
3956 (gc_mark_func_name): Delete.
3957 (write_gc_types): Delete.
3958 (write_local): New.
3959 (finish_root_table): Don't include 'ggc_' in PFX.
3960 (write_root): Rename from write_root. Fill pchw field of structures.
3961 (write_array): New.
3962 (write_roots): Rename from write_gc_roots. Split out to write_array.
3963 Update to changes to other routines. Write gt_pch_cache_rtab table.
3964 (main): Write PCH walking routines.
3965 * ggc-common.c: Include toplev.h, sys/mman.h.
3966 (ggc_mark_roots): For cache hashtables, also mark the hash table
3967 and the array of entries.
3968 (saving_htab): New.
3969 (struct ptr_data): New.
3970 (POINTER_HASH): New.
3971 (gt_pch_note_object): New.
3972 (saving_htab_hash): New.
3973 (saving_htab_eq): New.
3974 (struct traversal_state): New.
3975 (call_count): New.
3976 (call_alloc): New.
3977 (compare_ptr_data): New.
3978 (relocate_ptrs): New.
3979 (write_pch_globals): New.
3980 (struct mmap_info): New.
3981 (gt_pch_save): New.
3982 (gt_pch_restore): New.
3983 * ggc-page.c (ROUND_UP_VALUE): New.
3984 (ROUND_UP): New.
3985 (struct page_entry): Add field `pch_page'.
3986 (init_ggc): Use ROUND_UP.
3987 (struct ggc_pch_data): Declare.
3988 (init_ggc_pch): New.
3989 (ggc_pch_count_object): New.
3990 (ggc_pch_total_size): New.
3991 (ggc_pch_this_base): New.
3992 (ggc_pch_alloc_object): New.
3993 (ggc_pch_prepare_write): New.
3994 (ggc_pch_write_object): New.
3995 (ggc_pch_finish): New.
3996 (ggc_pch_read): New.
3997 * ggc.h (gt_pointer_operator): New.
3998 (gt_note_pointers): New.
3999 (gt_pch_note_object): New prototype.
4000 (gt_pointer_walker): New.
4001 (struct ggc_root_tab): Use gt_pointer_walker, add `pchw' field.
4002 (LAST_GGC_ROOT_TAB): Update.
4003 (gt_pch_cache_rtab): Declare.
4004 (gt_pch_scalar_rtab): Declare.
4005 (struct ggc_cache_tab): Use gt_pointer_walker, add `pchw' field.
4006 (LAST_GGC_CACHE_TAB): Update.
4007 (gt_pch_save_stringpool): Declare.
4008 (gt_pch_restore_stringpool): Declare.
4009 (gt_pch_p_S): Declare.
4010 (gt_pch_n_S): Declare.
4011 (struct ggc_pch_data): Forward-declare.
4012 (init_ggc_pch): Declare.
4013 (ggc_pch_count_object): Declare.
4014 (ggc_pch_total_size): Declare.
4015 (ggc_pch_this_base): Declare.
4016 (ggc_pch_alloc_object): Declare.
4017 (ggc_pch_prepare_write): Declare.
4018 (ggc_pch_write_object): Declare.
4019 (ggc_pch_finish): Declare.
4020 (ggc_pch_read): Declare.
4021 (gt_pch_save): Declare.
4022 (gt_pch_restore): Declare.
4023 * fold-const.c (size_int_type_wide): Allocate size_htab using GGC.
4024 * emit-rtl.c (init_emit_once): Allocate const_int_htab,
4025 const_double_htab, mem_attrs_htab using GGC.
4026 * c-pch.c: Include ggc.h.
4027 (pch_init): Allow reading PCH file back.
4028 (c_common_write_pch): Call gt_pch_save.
4029 (c_common_read_pch): Call gt_pch_restore.
4030 * c-parse.in (init_reswords): Delete now-untrue comment.
4031 Allocate ridpointers using GGC.
4032 * c-objc-common.c (c_objc_common_finish_file): Write PCH before
4033 calling expand_deferred_fns.
4034 * c-common.h (ridpointers): Mark for GTY machinery.
4035 * Makefile.in (stringpool.o): Update dependencies.
4036 (c-pch.o): Update dependencies.
4037 (ggc-common.o): Update dependencies.
4038 * stringpool.c: Include gt-stringpool.h.
4039 (gt_pch_p_S): New.
4040 (gt_pch_n_S): New.
4041 (struct string_pool_data): New.
4042 (spd): New.
4043 (gt_pch_save_stringpool): New.
4044 (gt_pch_restore_stringpool): New.
4045 * tree.c (init_ttree): Make type_hash_table allocated using GC.
07488f32 4046
17211ab5
GK
4047 2002-10-04 Geoffrey Keating <geoffk@apple.com>
4048
4049 * gengtype.c (adjust_field_rtx_def): Don't pass size_t to printf.
4050 (output_mangled_typename): Don't pass size_t to printf.
4051
4052 * tree.h (union tree_type_symtab): Add tag to `address' field.
4053 (union tree_decl_u2): Add tag to 'i' field.
4054 * varasm.c (union rtx_const_un): Add tags to all fields.
4055 * gengtype.c (struct walk_type_data): New.
4056 (output_escaped_param): Take struct walk_type_data parameter.
4057 (write_gc_structure_fields): Delete.
4058 (walk_type): New.
4059 (write_gc_marker_routine_for_structure): Delete.
4060 (write_func_for_structure): New.
4061 (gc_mark_process_field): New.
4062 (gc_mark_func_name): New.
4063 (gc_counter): Delete.
4064 (write_gc_types): Use write_func_for_structure.
4065 (write_gc_roots): Use walk_type.
4066
4067 2002-10-02 Geoffrey Keating <geoffk@apple.com>
4068
4069 * ggc-common.c (ggc_mark_roots): Delete 'x'.
4070 (ggc_splay_dont_free): Fix warning about unused 'x'.
4071 (ggc_print_common_statistics): Remove warnings.
4072
4073 2002-10-01 Mike Stump <mrs@apple.com>
4074
07488f32
ZW
4075 * ggc-common.c (ggc_splay_alloc): Actually return the allocated area.
4076 * gengtype.c (write_gc_structure_fields): Handle param[digit]_is.
17211ab5
GK
4077
4078 2002-09-01 Geoffrey Keating <geoffk@redhat.com>
4079 Catherine Moore <clm@redhat.com>
4080
4081 * Makefile (c-pch.o): Update dependencies.
4082 (LIBCPP_OBJS): Add cpppch.o.
4083 (cpppch.o): New.
4084 * c-common.c (c_common_init): Don't call pch_init here.
4085 * c-common.h (c_common_read_pch): Update prototype.
4086 * c-lex.c (c_common_parse_file): Call pch_init here.
4087 * c-opts.c (COMMAND_LINE_OPTIONS): Add -Winvalid-pch, -fpch-deps.
4088 (c_common_decode_option): Handle them.
4089 * c-pch.c: Include c-pragma.h.
4090 (save_asm_offset): Delete.
4091 (pch_init): Move contents of save_asm_offset into here, call
4092 cpp_save_state.
4093 (c_common_write_pch): Call cpp_write_pch.
4094 (c_common_valid_pch): Warn only when -Winvalid-pch. Call
4095 cpp_valid_state.
4096 (c_common_read_pch): Add NAME parameter. Call cpp_read_state.
07488f32 4097 * cppfiles.c (stack_include_file): Update for change to
17211ab5
GK
4098 parameters of cb.read_pch.
4099 * cpphash.h (struct cpp_reader): Add `savedstate' field.
4100 * cpplib.h (struct cpp_options): Add `warn_invalid_pch' and
4101 `restore_pch_deps' fields.
4102 (struct cpp_callbacks): Add NAME parameter to `read_pch'.
4103 (cpp_save_state): Prototype.
4104 (cpp_write_pch): Prototype.
4105 (cpp_valid_state): Prototype.
4106 (cpp_read_state): Prototype.
4107 * cpppch.c: New file.
4108 * flags.h (version_flag): Remove prototype.
4109 * mkdeps.c (deps_save): New.
4110 (deps_restore): New.
4111 * mkdeps.h (deps_save): Prototype.
4112 (deps_restore): Prototype.
4113 * toplev.c (late_init_hook): Delete.
4114 (version_flag): Make static again.
4115 (compile_file): Don't call late_init_hook.
4116 * toplev.h (late_init_hook): Delete.
4117 * doc/cppopts.texi: Document -fpch-deps.
4118 * doc/invoke.texi (Warning Options): Document -Winvalid-pch.
4119
4120 2002-08-27 Geoffrey Keating <geoffk@redhat.com>
4121
4122 * c-pch.c (c_common_write_pch): Rename from c_write_pch, change
4123 callers.
4124 (c_common_valid_pch): Rename from c_valid_pch, change callers.
4125 (c_common_read_pch): Rename from c_read_pch, change callers.
4126
4127 * c-opts.c (COMMAND_LINE_OPTIONS): Allow -output-pch= to have
4128 a space between it and its argument.
4129
4130 2002-08-24 Geoffrey Keating <geoffk@redhat.com>
4131
4132 * c-pch.c: New file.
4133 * toplev.h (late_init_hook): Declare.
4134 * toplev.c (late_init_hook): Define.
4135 (version_flag): Make globally visible.
4136 (compile_file): Call late_init_hook.
4137 (init_asm_output): Make output file seekable.
4138 * gcc.c (default_compilers): Update c-header rule.
4139 * flags.h (version_flag): Declare.
4140 * cpplib.h (struct cpp_callbacks): Add 'valid_pch' and 'read_pch'
4141 fields.
4142 * cppfiles.c (struct include_file): Add 'pch' field.
4143 (INCLUDE_PCH_P): New.
4144 (open_file_pch): New.
4145 (stack_include_file): Handle PCH files specially.
4146 (find_include_file): Call open_file_pch instead of open_file.
4147 (_cpp_read_file): Explain why open_file is used instead of
4148 open_file_pch.
4149 * c-opts.c (c_common_decode_option): Correct OPT__output_pch case.
4150 * c-objc-common.c (c_objc_common_finish_file): Call c_write_pch.
4151 * c-lex.c (init_c_lex): Set valid_pch and read_pch fields
4152 in cpplib callbacks.
4153 * c-common.c (pch_file): Correct comment.
4154 (allow_pch): Define.
4155 (c_common_init): Call pch_init.
4156 * c-common.h (allow_pch): Declare.
4157 (pch_init): Declare.
4158 (c_valid_pch): Declare.
4159 (c_read_pch): Declare.
4160 (c_write_pch): Declare.
4161 * Makefile.in (c-pch.o): New.
4162 (C_AND_OBJC_OBJS): Add c-pch.o.
4163 * doc/invoke.texi (Precompiled Headers): Add index entries,
4164 complete truncated paragraph.
4165
4166 2002-08-17 Geoffrey Keating <geoffk@redhat.com>
4167
4168 * c-common.c: (pch_file): Define.
4169 * c-common.h (pch_file): Declare.
4170 * c-opts.c (COMMAND_LINE_OPTIONS): Add --output-pch=.
4171 (missing_arg): Require --output-pch= to have an argument.
4172 (c_common_decode_option): Handle --output-pch=.
4173 * gcc.c: Document new %V.
4174 (default_compilers): Handle compiling C header files.
4175 (do_spec_1): Implement %V.
4176 (main): Handle "gcc foo.h" without trying to run linker.
4177 * doc/invoke.texi (Invoking GCC): Add new menu item for PCH.
4178 (Overall Options): Document what the driver does with header files,
4179 document new -x option possibilities.
4180 (Invoking G++): More documentation for PCH.
4181 (Precompiled Headers): New.
4182
4183 2002-08-09 Geoffrey Keating <geoffk@redhat.com>
4184
4185 * ggc.h: Don't include varray.h. Rearrange functions to be more
4186 organized.
4187 (ggc_add_root): Delete.
4188 (ggc_mark_rtx): Delete.
4189 (ggc_mark_tree): Delete.
4190 (struct ggc_statistics): Remove contents.
4191 * ggc-common.c: Remove unneeded includes.
4192 (struct ggc_root): Delete.
4193 (roots): Delete.
4194 (ggc_add_root): Delete.
4195 (ggc_mark_roots): Don't mark `roots'. Call ggc_mark_stringpool.
4196 (ggc_print_common_statistics): Remove most of the contents.
4197 * Makefile.in (GGC_H): No longer uses varray.h.
4198 (ggc-common.o): Update dependencies.
4199 (c-parse.o): Add varray.h to dependencies.
4200 (c-common.o): Add varray.h.
4201 * stringpool.c (mark_ident): Use mangled name for tree marker routine.
4202 (mark_ident_hash): Rename to ggc_mark_stringpool.
4203 (init_stringpool): Don't use ggc_add_root.
4204 * c-parse.in: Include varray.h.
4205 * c-common.c: Include varray.h.
4206 * objc/Make-lang.in (objc-act.o): Add varray.h.
4207 * objc/objc-act.c: Include varray.h.
4208
4209 2002-07-25 Geoffrey Keating <geoffk@redhat.com>
4210
4211 * dwarf2out.c (dw_cfi_oprnd2_desc): Fix ISO-only function definition.
4212 (dw_cfi_oprnd1_desc): Likewise.
4213
4214 2002-07-17 Geoffrey Keating <geoffk@redhat.com>
4215
4216 * config/alpha/alpha.c (struct alpha_links): Use gengtype to mark;
4217 move out of ifdef.
4218 (alpha_links): Use gengtype to mark; move out of ifdef.
4219 (mark_alpha_links_node): Delete.
4220 (mark_alpha_links): Delete.
4221 (alpha_need_linkage): Use GGC to allocate splay tree, struct
4222 alpha_links, strings. Don't use ggc_add_root.
4223 * ggc-common.c (ggc_splay_alloc): New.
4224 (ggc_splay_dont_free): New.
4225 * ggc.h (ggc_mark_rtx): Update for changed name mangling.
4226 (ggc_mark_tree): Likewise.
4227 (splay_tree_new_ggc): New.
4228 (ggc_splay_alloc): Declare.
4229 (ggc_splay_dont_free): Declare.
4230 * dwarf2asm.c: Include gt-dwarf2asm.h.
4231 (mark_indirect_pool_entry): Delete.
4232 (mark_indirect_pool): Delete.
4233 (indirect_pool): Use gengtype to mark.
4234 (dw2_force_const_mem): Don't use ggc_add_root.
4235 * Makefile.in (dwarf2asm.o): Depend on gt-dwarf2asm.h.
4236 (GTFILES): Add SPLAY_TREE_H, dwarf2asm.c.
4237 (gt-dwarf2asm.h): Depend on s-gtype.
4238
4239 2002-07-08 Geoffrey Keating <geoffk@redhat.com>
4240
4241 * tree.h (union tree_type_symtab): Mark `die' field.
4242 * Makefile.in (dwarf2out.o): Update dependencies.
4243 * dwarf2out.c: Use GGC to allocate all structures. Convert to htab_t
4244 hash tables.
4245 (dw_cfi_oprnd1_desc): New function.
4246 (dw_cfi_oprnd2_desc): New function.
4247 (indirect_string_alloc): Delete.
4248 (debug_str_do_hash): New function.
4249 (debug_str_eq): New function.
4250 (mark_limbo_die_list): Delete.
4251 (dwarf2out_init): Don't call ggc_add_root.
4252
30028c85
VM
42532003-01-09 Vladimir Makarov <vmakarov@redhat.com>
4254
4255 The following changes are merged from itanium-sched-branch:
4256
4257 2003-01-08 David Edelsohn <edelsohn@gnu.org>
4258
4259 * doc/md.texi: Clarify assignment of units to automata description.
4260
4261 2003-01-08 Vladimir Makarov <vmakarov@redhat.com>
4262
4263 * genautomata.c (unit_decl): Remove members
4264 `the_same_automaton_unit' and
4265 `the_same_automaton_message_reported_p'.
4266 (process_unit_to_form_the_same_automaton_unit_lists,
4267 form_the_same_automaton_unit_lists_from_regexp,
4268 form_the_same_automaton_unit_lists, the_same_automaton_lists):
4269 Remove them.
4270 (annotation_message_reported_p): New global variable.
4271 (check_unit_distribution_in_reserv,
4272 check_regexp_units_distribution): New functions.
4273 (check_unit_distributions_to_automata): Rewrite it.
4274
4275 2003-01-04 Vladimir Makarov <vmakarov@redhat.com>
4276
4277 * genautomata.c (form_the_same_automaton_unit_lists_from_regexp):
4278 Use continue instead of break if cycle is too big.
4279
4280 2002-12-20 Vladimir Makarov <vmakarov@redhat.com>
4281
4282 * genautomata.c (check_unit_distributions_to_automata): Output at
4283 most one message for a unit.
4284 (process_unit_to_form_the_same_automaton_unit_lists): Check
4285 automaton of units instead of units themself.
4286
4287 * doc/md.texi: Describe the constraint about assigning unit to
4288 automata.
4289
4290 2002-12-20 Jan Hubicka <jH@suse.cz>
4291 Vladimir Makarov <vmakarov@redhat.com>
4292
4293 * genautomata.c (unit_decl): Add new members `min_occ_cycle_num'
4294 and `in_set_p'.
4295 (gen_cpu_unit): Initialize the new members.
4296 (process_regexp_cycles): Calculate minimal finish cycle too. Set
4297 up `min_occ_cycle_num'.
4298 (evaluate_max_reserv_cycles): Change the function call.
4299 (CLEAR_BIT): New macro.
4300 (states_union, state_shift): Use the mask.
4301 (initiate_excl_sets, form_reserv_sets_list): Set up `in_set_p'.
4302 (form_reservs_matter): New function.
4303 (make_automaton): Call the function and use the mask.
4304 (estimate_one_automaton_bound): Take `min_occ_cycle_num' into
4305 account.
07488f32 4306
30028c85
VM
4307 2002-12-17 Vladimir Makarov <vmakarov@redhat.com>
4308
4309 * config/ia64/itanium2.md (lfetch): Change the insn reservation.
4310
4311 2002-12-17 Vladimir Makarov <vmakarov@redhat.com>
4312
4313 * config/ia64/ia64.c (bundling): Try to insert 2 nops for M insn
4314 for Itanium.
4315
4316 2002-12-17 Vladimir Makarov <vmakarov@redhat.com>
4317
4318 * config/ia64/ia64.c (ia64_override_options): Make itanium2 as
4319 default cpu.
4320
4321 2002-12-17 Vladimir Makarov <vmakarov@redhat.com>
4322 2002-10-31 Dale Johannesen <dalej@apple.com>
4323
4324 * haifa-sched.c (find_set_reg_weight): New function.
4325 (find_insn_reg_weight): Use the new function.
4326 (schedule_block): Do sorting ready queue always
4327 after insn issue.
4328
4329 2002-11-27 Vladimir Makarov <vmakarov@redhat.com>
4330
4331 * config/ia64/ia64.c (bundling): Use MFI template instead of MLX.
4332
4333 2002-11-19 Vladimir Makarov <vmakarov@redhat.com>
4334
4335 * haifa-sched.c (choice_entry): New structure.
4336 (choice_stack, cycle_issued_insns): New variables.
4337 (max_issue): Rewrite it.
4338 (choose_ready): Set up ready_try for unknown insns too.
4339 (schedule_block): Allocate and free choice_stack. Set up
4340 and modify cycle_issued_insns.
4341
4342 * config/ia64/ia64.c (issue_nops_and_insn): Combine insn issue
4343 with and without filling the bundle.
4344 (bundling): Combine calls of issue_nops_and_insn.
07488f32 4345
30028c85
VM
4346 2002-10-17 Vladimir Makarov <vmakarov@redhat.com>
4347
4348 * config/ia64/itanium1.md: New file.
4349
4350 * config/ia64/itanium2.md: New file.
4351
4352 * config/ia64/ia64.md: Move DFA descriptions into the new files.
4353 Remove the old pipeline description.
07488f32 4354
30028c85
VM
4355 * config/ia64/ia64.c (ia64_override_options): Add aliases of
4356 itanium processor names.
07488f32 4357
30028c85
VM
4358 2002-10-16 Vladimir Makarov <vmakarov@redhat.com>
4359
4360 * config/ia64/ia64.c (bundling): Print states for Itanium2 too.
4361 (ia64_reorg): Set up queried unit codes for Itanium2 too.
4362
4363 * config/ia64/ia64.md: Add descriptions for Itanium2.
4364
4365 2002-10-08 Vladimir Makarov <vmakarov@redhat.com>
4366
4367 * config/ia64/ia64.h (processor_type): New enumeration.
4368 (ia64_tune, ia64_tune_string): New external declarations.
4369 (TARGET_OPTIONS): Add option `tune='.
4370
4371 * config/ia64/ia64.c (ia64_tune, ia64_tune_string): New global
4372 variables.
4373 (ia64_override_options): Set up `ia64_tune'.
4374 (ia64_sched_reorder2): Set up `clocks' only for Itanium.
4375 (ia64_dfa_new_cycle): Set up `add_cycles' only for Itanium.
4376 (bundling): Add nops for MM-insns only for Itanium.
4377 (ia64_reorg): Allocate and free `clocks' and `add_cycles' only for
4378 Itanium.
4379
4380 * config/ia64/ia64.md (cpu): New attribute.
4381 (DFA description): Enable it only for Itanium.
07488f32 4382
30028c85
VM
4383 2002-10-08 Vladimir Makarov <vmakarov@redhat.com>
4384 Richard Henderson <rth@redhat.com>
4385
4386 * config/ia64/ia64.h (MASK_TUNE_STOP_BITS): Rename it to
4387 MASK_EARLY_STOP_BITS.
4388 (TARGET_TUNE_STOP_BITS): Rename it to TARGET_EARLY_STOP_BITS.
4389 (TARGET_SWITCHES): Rename option `tune-stop-bits' to
4390 `early-stop-bits'.
07488f32 4391
30028c85
VM
4392 * config/ia64/ia64.c (ia64_dfa_new_cycle,
4393 final_emit_insn_group_barriers): Use TARGET_EARLY_STOP_BITS
4394 instead of TARGET_TUNE_STOP_BITS.
07488f32 4395
30028c85
VM
4396 * doc/invoke.texi: Rename option `-mtune-stop-bits' to
4397 `-mearly-stop-bits'.
4398
4399 * config/ia64/ia64.c (automata_option "v"): Comment it.
07488f32 4400
30028c85
VM
4401 2002-10-07 Vladimir Makarov <vmakarov@redhat.com>
4402
07488f32 4403 * config/ia64/ia64.h (MASK_TUNE_STOP_BITS, TARGET_TUNE_STOP_BITS):
30028c85
VM
4404 New macros.
4405 (TARGET_SWITCHES): Add entries for the new option.
07488f32 4406
30028c85
VM
4407 * config/ia64/ia64.c (dfa_stop_insn, last_scheduled_insn, rtx
4408 dfa_pre_cycle_insn, ia64_nop): Don't make them as roots for GC.
4409 (stops_p, stop_before_p, clocks_length, clocks, add_cycles): New
4410 global variables.
4411 (ia64_sched_reorder2): Set up `clocks'.
4412 (ia64_variable_issue): Set up `stops_p' and reset `stop_before_p'.
4413 (ia64_dfa_new_cycle): Set up add_cycle. Permit sorting ready
4414 queue when TARGET_TUNE_STOP_BITS.
4415 (bundling): Insert additional nops for MM-insns.
4416 (final_emit_insn_group_barriers): Add insertion of stop bits
4417 according `stops_p'.
4418 (ia64_reorg): Initiate the new varibales.
4419
4420 * doc/invoke.texi: Add description of option `-mtune-stop-bits'.
07488f32 4421
30028c85
VM
4422 2002-10-02 Vladimir Makarov <vmakarov@redhat.com>
4423
4424 * haifa-sched.c (schedule_block): Modify INSN_TICK of depended
4425 insns at the end of block insn scheduling.
4426
4427 2002-09-30 Vladimir Makarov <vmakarov@redhat.com>
4428
4429 * sched-deps.c (remove_dependence, group_leader): Remove it.
4430 (add_dependence): Add dependence to group leader to.
4431 (set_sched_group_p): Add dependence to the first insn of the
4432 schedule group too.
4433 (sched_analyze_insn): Make dependence to jump as anti-dependence.
4434 Change true dependence by anti-dependence when
4435 `reg_pending_barrier'.
4436
4437 * sched-rgn.c (init_ready_list, can_schedule_ready_p,
4438 add_branch_dependences): Ignore schedule groups.
4439
4440 * sched-ebb.c (init_ready_list): Ditto.
4441
4442 * (move_insn, set_priorities): Ditto.
4443
4444 * config/ia64/ia64.c (ia64_sched_init): Check that schedule group
4445 flag is clear after reload.
4446 (adjust_cost): Change cost only for output dependencies.
07488f32 4447
30028c85 4448 * config/ia64/ia64.md: Add more insns into bypass for MM-insns.
07488f32 4449
30028c85
VM
4450 2002-09-26 Vladimir Makarov <vmakarov@redhat.com>
4451
4452 * Makefile.in (sched-ebb.o): Add `$(TARGET_H)' to the entry.
4453
4454 * target.h (gcc_target): Add member
4455 `dependencies_evaluation_hook'.
4456
4457 * target-def.h (TARGET_SCHED_DEPENDENCIES_EVALUATION_HOOK): New
4458 macro.
4459 (TARGET_SCHED): Add initiatialization of the new member.
4460
4461 * sched-ebb.c: Include `target.h'.
4462 (schedule_ebb): Call `dependencies_evaluation_hook'.
4463
4464 * sched-rgn.c (schedule_region): Call
4465 `dependencies_evaluation_hook'.
4466
4467 * config/ia64/ia64.c (TARGET_SCHED_DEPENDENCIES_EVALUATION_HOOK):
4468 New macro.
4469 (ia64_dependencies_evaluation_hook): New function.
4470
4471 * doc/tm.texi (TARGET_SCHED_DEPENDENCIES_EVALUATION_HOOK):
4472 Describe the new hook.
07488f32 4473
30028c85
VM
4474 2002-09-25 Vladimir Makarov <vmakarov@redhat.com>
4475
4476 * target.h (gcc_target): Add members
4477 `first_cycle_multipass_dfa_lookahead_guard' and `dfa_new_cycle'.
4478
4479 * target-def.h (TARGET_SCHED_DFA_NEW_CYCLE,
4480 TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD): New
4481 macros.
4482 (TARGET_SCHED): Add initiatialization of the new members.
4483
4484 * haifa-sched.c (schedule_insn): Update last_clock_var for the 1st
4485 insn scheduling too.
4486 (choose_ready): Use `first_cycle_multipass_dfa_lookahead_guard' to
4487 initialize `ready_try'.
4488 (schedule_block): Use `dfa_new_cycle'. Sort `ready' only unless
4489 `dfa_new_cycle' says not to do it.
07488f32 4490
30028c85
VM
4491 * config/ia64/ia64.md: Add DFA Itanium 1 description for insn
4492 bundling.
4493
4494 * config/ia64/ia64.h (CPU_UNITS_QUERY): New macro.
4495
4496 * config/ia64/ia64.c: Include `hashtab.h'.
4497 (ia64_first_cycle_multipass_dfa_lookahead_guard,
4498 ia64_dfa_new_cycle, final_emit_insn_group_barriers,
4499 ia64_dfa_sched_reorder, get_free_bundle_state, free_bundle_state,
4500 initiate_bundle_states, finish_bundle_states, bundle_state_hash,
4501 bundle_state_eq_p, insert_bundle_state,
4502 initiate_bundle_state_table, finish_bundle_state_table,
4503 try_issue_nops, try_issue_insn, issue_nops_and_insn, get_max_pos,
4504 get_template, get_next_important_insn, bundling): New functions.
4505 (ia64_internal_sched_reorder): Remove it.
4506 (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD,
4507 TARGET_SCHED_DFA_NEW_CYCLE): New macros.
4508 (ia64_safe_itanium_requires_unit0): Remove it.
4509 (group_barrier_needed_p): Place group barrier right before a real
4510 insn.
4511 (bundle, ia64_packet, NR_PACKETS, type_names, packets, packets):
4512 Remove them.
4513 (bundle_name): New variable.
4514 (_0mii_, _0mmi_, _0mfi_, _0mmf_, _0bbb_, _0mbb_, _0mib_, _0mmb_,
4515 _0mfb_, _0mlx_, _1mii_, _1mmi_, _1mfi_, _1mmf_, _1bbb_, _1mbb_,
4516 _1mib_, _1mmb_, _1mfb_, _1mlx_, pos_1, pos_2, pos_3, pos_4, pos_5,
4517 pos_6, dfa_stop_insn, last_scheduled_insn, dfa_state_size,
4518 temp_dfa_state, prev_cycle_state): New global variables.
4519 (insn_matches_slot, maybe_rotate, finish_last_head,
4520 rotate_one_bundle, rotate_one_bundles, nop_cycles_until,
4521 cycle_end_fill_slots, packet_matches_p, get_split, find_best_insn,
4522 find_best_packet, itanium_reorder, dump_current_packet,
4523 schedule_stop, gen_nop_type, ia64_emit_nops): Remove them.
4524 (sched_data, sched_ready, sched_types): Remove them.
4525 (ia64_sched_init): Initiate only `last_scheduled_insn' and call
4526 `init_insn_group_barriers'.
4527 (ia64_sched_reorder, ia64_sched_reorder2): Call
4528 ia64_dfa_sched_reorder.
4529 (ia64_variable_issue): Rewrite it.
4530 (bundle_state): New structure.
4531 (index_to_bundle_states, bundle_states_num,
4532 allocated_bundle_states_chain, free_bundle_state_chain): New
4533 global variables.
4534 (ia64_sched_finish): Add stop bits and call `bundling' after the
4535 2nd insn scheduling.
4536 (ia64_use_dfa_pipeline_interface): Return zero always.
4537 (ia64_first_cycle_multipass_dfa_lookahead): Return 6 for the 2nd
4538 insn scheduling.
4539 (ia64_init_dfa_pre_cycle_insn): Initialize `dfa_state_size',
4540 `temp_dfa_state', `prev_cycle_state', and `dfa_stop_insn'.
4541 (ia64_reorg): Add bundling insns.
4542
4543 * doc/tm.texi
4544 (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD,
4545 TARGET_SCHED_DFA_NEW_CYCLE): Describe the new hooks.
07488f32 4546
30028c85
VM
4547 2002-09-23 Vladimir Makarov <vmakarov@redhat.com>
4548
4549 * config/ia64/ia64.md: Add Itanium1 DFA description.
4550 (itanium_class): Add `nop' and `pre_cycle'. Add
4551 define_function_unit for `nop'.
4552 (nop): Change attribute `itanium_class'.
4553 (pre_cycle): New define_insn.
4554
4555 * config/ia64/ia64-protos.h (bundling_p): New external variable.
4556 (ia64_st_address_bypass_p, ia64_ld_address_bypass_p,
4557 ia64_produce_address_p): New function prototypes.
4558
4559 * config/ia64/ia64.c (bundling_p): New global variable.
4560 (ia64_use_dfa_pipeline_interface,
4561 ia64_first_cycle_multipass_dfa_lookahead,
4562 ia64_init_dfa_pre_cycle_insn, ia64_dfa_pre_cycle_insn): New
4563 functions.
4564 (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE,
4565 TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD,
4566 TARGET_SCHED_INIT_DFA_PRE_CYCLE_INSN,
4567 TARGET_SCHED_DFA_PRE_CYCLE_INSN): New macros.
4568 (ia64_sched_init, ia64_sched_reorder, ia64_sched_reorder2,
4569 ia64_variable_issue, ia64_sched_finish): Do nothing before reload.
4570 (dfa_pre_cycle_insn): New variable.
07488f32 4571
30028c85
VM
4572 2002-09-20 Vladimir Makarov <vmakarov@redhat.com>
4573
4574 * rtl.def (FINAL_PRESENCE_SET, FINAL_ABSENCE_SET): New
4575 constructions.
4576
4577 * genattrtab.h (gen_final_presence_set, gen_final_absence_set):
4578 New function prototypes.
4579
4580 * genattrtab.c (main): Process the new constructions.
4581
4582 * genautomata.c (gen_presence_absence_set,
4583 process_presence_absence_names, process_presence_absence_patterns,
4584 add_presence_absence, check_absence_pattern_sets): Add parameter
4585 `final_p'.
4586 (unit_decl): Add new members `final_presence_list' and
4587 `final_absence_list'.
4588 (unit_pattern_rel_decl): Add new member `final_p'.
4589 (gen_final_presence_set, gen_final_absence_set): New functions.
4590 (process_decls): Use member `final_p'.
4591 (temp_reserv): New global variable.
4592 (reserv_sets_are_intersected): Add processing `final_presence_set'
4593 and `final_absence_set'.
4594 (initiate_states): Allocate `temp_reserv'.
4595 (unit_final_presence_set_table, unit_final_absence_set_table): New
4596 gloabal variables.
4597 (initiate_presence_absence_pattern_sets): Initiate them.
4598 (NDFA_to_DFA): Fix typo.
4599 (output_description): Output `final_presence_set' and
4600 `final_absence_set'.
4601
4602 * doc/md.texi (final_presence_set, final_absence_set): Describe
4603 them.
07488f32 4604
30028c85
VM
4605 2002-09-20 Vladimir Makarov <vmakarov@redhat.com>
4606
4607 * genautomata.c (transform_3): Process a missing case (nothing on
4608 unit place).
4609
4610 2002-09-20 Vladimir Makarov <vmakarov@redhat.com>
4611
4612 * rtl.def (DEFINE_QUERY_CPU_UNIT, AUTOMATA_OPTION): Change
4613 comments about queried units and the minimization.
07488f32 4614
30028c85 4615 * doc/md.texi: Ditto.
07488f32 4616
30028c85
VM
4617 * genautomata.c (create_composed_state): Return nonzero if the new
4618 state has been created.
4619 (first_cycle_unit_presence): New function.
4620 (state_is_differed): Add new parameter. Use the new function.
4621 Take queried units into account.
4622 (partition_equiv_class): Pass additional parameter to
4623 `state_is_differed'.
4624 (merge_states): Process composed states too.
4625 (build_automaton, create_automata, output_min_issue_delay_table,
4626 output_tables, output_statistics): Output more information.
4627 (output_reserved_units_table): Use function
4628 `first_cycle_unit_presence'.
4629 (output_tables): Output table of queried units even if the
4630 minimization is switched on.
4631 (write_automata): Output code for querying units even if the
4632 minimization is switched on.
07488f32 4633
30028c85
VM
4634 2002-09-19 Vladimir Makarov <vmakarov@redhat.com>
4635
4636 * rtl.def (PRESENCE_SET, ABSENCE_SET): Add comments about extended
4637 syntax of the constructions.
07488f32 4638
30028c85
VM
4639 * doc/md.texi (PRESENCE_SET, ABSENCE_SET): Add description of
4640 extended syntax of the constructions.
07488f32 4641
30028c85
VM
4642 * genautomata.c (unit_rel_decl): Rename it to
4643 `unit_pattern_rel_decl'.
4644 (pattern_set_el, pattern_reserv): New structures.
4645 (pattern_set_el_t, pattern_reserv_t): New types.
4646 (gen_presence_absence_set): New function.
4647 (process_presence_absence): Remove it.
4648 (process_presence_absence_names,
4649 process_presence_absence_patterns): New functions.
4650 (get_presence_absence_set): Remove it.
4651 (initiate_presence_absence_sets): Rename it on
4652 `initiate_presence_absence_pattern_sets'. Use new function
4653 `form_reserv_sets_list'.
4654 (form_reserv_sets_list, check_presence_pattern_sets,
4655 check_absence_pattern_sets, output_pattern_set_el_list): New
4656 functions.
4657 (unit_decl): Change types of members `presence_list' and
4658 `absence_list'.
4659 (unit_rel_decl): Rename member `names_num' to `all_names_num'.
4660 (decl): Change types of members `excl', `presence', and `absence'.
4661 (get_str_vect): Rename `par_flag' to `paren_p'. Add null element
4662 at the end of the vector.
4663 (gen_cpu_unit, gen_query_cpu_unit, gen_bypass, gen_excl_set,
4664 gen_automaton, gen_regexp_repeat, gen_regexp_allof,
4665 gen_regexp_oneof, gen_regexp_sequence): Use boolean values.
4666 (gen_presence_set, gen_absence_set): Use new function
4667 `gen_presence_absence_set'.
4668 (add_presence_absence): Process `pattern_list' instead of
4669 `source_list'.
4670 (process_decls): USe new functions
4671 `process_presence_absence_names' and
4672 `process_presence_absence_patterns'.
4673 (reserv_sets_are_intersected): Use new function
4674 `check_presence_pattern_sets'.
4675 (presence_set, absence_set): Remove them.
4676 (unit_presence_set_table, unit_absence_set_table): New global
4677 variables.
4678 (output_description): Use new function
4679 `output_pattern_set_el_list'.
4680 (generate): Use `initiate_presence_absence_pattern_sets'.
07488f32 4681
30028c85
VM
4682 2002-09-18 Vladimir Makarov <vmakarov@redhat.com>
4683
4684 * genattr.c (main): Add output of prototype of new interface
4685 function `dfa_clean_insn_cache'.
4686
4687 * genautomata.c (output_dfa_clean_insn_cache_func): New function.
4688 (DFA_CLEAN_INSN_CACHE_FUNC_NAME): New macro.
4689 (output_dfa_start_func): Use function `dfa_clean_insn_cache' in
4690 the generated code.
4691 (write_automata): Call the new function.
07488f32 4692
cb297538
JH
4693Thu Jan 9 22:47:38 CET 2003 Jan Hubicka <jh@suse.cz>
4694
17211ab5
GK
4695 * i386.md (unit, prefix_0f, memory attributes): Hanlde sseicvt
4696 correctly.
cb297538 4697
3a6e2189
PC
46982003-01-09 Paolo Carlini <pcarlini@unitus.it>
4699
4700 * doc/tm.texi (EXTRA_ADDRESS_CONSTRAINT): Fix typo.
4701
97488870
R
4702Thu Jan 9 17:26:40 2003 J"orn Rennecke <joern.rennecke@superh.com>
4703
4704 * defaults.h (EXTRA_MEMORY_CONSTRAINT): Add STR argument.
4705 (EXTRA_ADDRESS_CONSTRAINT): Likewise.
4706 (CONSTRAINT_LEN): Provide default definition.
4707 (CONST_OK_FOR_CONSTRAINT_P): Likewise.
4708 (CONST_DOUBLE_OK_FOR_CONSTRAINT_P): Likewise.
4709 (EXTRA_CONSTRAINT_STR): Likewise.
4710 (REG_CLASS_FROM_CONSTRAINT): Define.
4711 * genoutput.c (check_constraint_len, constraint_len): New functions.
4712 (validate_insn_alternatives): Check CONSTRAINT_LEN for each
4713 constraint / modifier.
4714 (gen_insn): Call check_constraint_len.
4715 * local-alloc.c (block_alloc): Update to use new macros / pass
4716 second argument to EXTRA_{MEMORY,ADDRESS}_CONSTRAINT.
4717 * ra-build.c (handle_asm_insn): Likewise.
4718 * recog.c (asm_operand_ok, preprocess_constraints): Likewise.
4719 (constrain_operands, peep2_find_free_register): Likewise.
4720 * regclass.c (record_operand_costs, record_reg_classes): Likewise.
4721 * regmove.c (find_matches): Likewise.
4722 * reload.c (push_secondary_reload, find_reloads): Likewise.
4723 (alternative_allows_memconst): Likewise.
4724 * reload1.c (maybe_fix_stack_asms): Likewise.
4725 (reload_cse_simplify_operands): Likewise.
4726 * stmt.c (parse_output_constraint, parse_input_constraint): Likewise.
4727 * doc/tm.texi (CONSTRAINT_LEN, REG_CLASS_FROM_CONSTRAINT): Document.
4728 (CONST_OK_FOR_CONSTRAINT_P): Likewise.
4729 (CONST_DOUBLE_OK_FOR_CONSTRAINT_P, EXTRA_CONSTRAINT_STR): Likewise.
4730 (EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT): Add STR argument.
4731 * config/s390/s390.h (EXTRA_MEMORY_CONSTRAINT): Likewise.
e2c734c1
R
4732
4733 * sh.h (OVERRIDE_OPTIONS): Allow first scheduling pass for SH5.
4734
fc182093
KH
47352003-01-09 Kazu Hirata <kazu@cs.umass.edu>
4736
4737 * config/h8300/h8300.md (*extzv_1_r_h8300): Correct the insn
4738 length.
4739 (*extzv_1_r_h8300hs): Likewise.
4740 (*extzv_1_r_inv_h8300): Likewise.
4741 (*extzv_1_r_inv_h8300hs): Likewise.
4742
3b1c9927
KH
47432003-01-09 Kazu Hirata <kazu@cs.umass.edu>
4744
4745 * config/h8300/h8300.h (PREDICATE_CODES): New.
4746
867504e6
KH
47472003-01-09 Kazu Hirata <kazu@cs.umass.edu>
4748
4749 * config/h8300/h8300.md (*addsi3_upper): New.
4750 (*iorsi3_shift): Likewise.
4751 (two splitters): Likewise.
4752 (*addsi3_shift): Likewise.
4753 (two splitters): Likewise.
4754
4a69cf79
JZ
47552003-01-09 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz>
4756
4757 * Makefile.in (optabs.o): Add dependency on basic-block.h.
4758 * basic-block.h (control_flow_insn_p): Fuction was exported.
4759 * cfgbuild.c (control_flow_insn_p): Fuction was made non-static.
4760 * optabs.c (emit_libcall_block): Emit REG_LIBCALL and REG_RETVAL
4761 notes only when the region is contained in a single basic block.
4762
4c46ea23
EB
47632003-01-09 Eric Botcazou <ebotcazou@libertysurf.fr>
4764
4765 PR inline-asm/8832
4766 * tree.h (expand_asm): New prototype.
4767 * stmt.c (expand_asm): Set the MEM_VOLATILE_P flag if instructed
4768 to do so.
4769 * c-semantics (genrtl_asm_stmt): Pass the RID_VOLATILE qualifier
4770 down to expand_asm.
4771 * c-typeck.c (simple_asm_stmt): Set the RID_VOLATILE qualifier.
4772 * rtlanal.c (volatile_insn_p) [ASM_INPUT]: Test the MEM_VOLATILE_P flag.
4773 (volatile_refs_p) [ASM_INPUT]: Likewise.
4774 (side_effects_p) [ASM_INPUT]: Likewise.
4775
f56e86bd
JH
4776Thu Jan 9 12:00:36 CET 2003 Jan Hubicka <jh@suse.cz>
4777
4778 * i386.md (*mul*): FIx constraints; remove confused comment; fix
4779 athlon_decode attributes
4780 (imul/k8 optimization peep2s): New.
4781
4782 * athlon.md (athlon_ssecmp*): Handle ssecomi as well.
4783 * i386.md (type attribute): Add ssecomi.
4784 (unit, memory, prefix attributes): Handle ssecomi.
4785 (cvt?2? patterns): Fix athlon_decode attribute
4786 (comi patterns): Set attribute to ssecomi.
4787
4788 PR target/8343
4789 * m68k.md (umulsidi, mulsidi expanders): Use register operand.
4790
98c29f71
RS
47912003-01-09 Richard Sandiford <rsandifo@redhat.com>
4792
4793 * config/mips/mips.h (PREDICATE_CODES): Add ADDRESSOF for predicates
4794 that match register_operands.
4795 * config/mips/mips.c (reg_or_0_operand, true_reg_or_0_operand): Make
4796 register_operand the default case.
4797
bbb818c6
EB
47982003-01-09 Eric Botcazou <ebotcazou@libertysurf.fr>
4799
4800 PR c/8032
4801 * c-typeck.c (process_init_element) [RECORD_TYPE]: For
4802 an empty element, do not advance the pointer to unfilled
4803 fields if there are pending initializers.
4804
90961eff
AJ
48052003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
4806
4807 * Makefile.in (ORDINARY_FLAGS_TO_PASS): Also pass DESTDIR.
4808 (install-gcc-tooldir, install-cpp, installdirs,
4809 install-common, install-driver, install-info, install-man,
4810 install-headers, install-include-dir, install-headers-tar,
4811 install-headers-cpio, install-headers-cp, install-mkheaders,
4812 install-collect2, uninstall): Prepend $(DESTDIR) to
4813 destination paths in all (un)installation commands.
4814 (install-driver): Rewrite $(LN) commands to support DESTDIR
4815 with "ln" as well as with "ln -s".
4816 (installdirs): Simply use mkinstalldirs.
4817 (install-libgcc, install-multilib): Also pass DESTDIR.
4818 * mklibgcc.in: Prepend $(DESTDIR) to $(libsubdir) in the
4819 installation destination variable ldir.
4820 * config/alpha/t-osf4, config/arm/t-netbsd,
4821 config/ia64/t-hpux, config/mips/t-iris5-6,
4822 config/pa/t-hpux-shlib, config/rs6000/t-aix43,
4823 config/rs6000/t-aix52, config/t-slibgcc-elf-ver,
4824 config/t-slibgcc-sld: Prepend $$(DESTDIR) to $$(slibdir)
4825 in the definition of SHLIB_INSTALL.
4826 * config/arc/t-arc (install-multilib-arc): Prepend $(DESTDIR) to
4827 $(libsubdir) in the installation commands.
4828
8b26829f
KK
48292003-01-08 Kaz Kojima <kkojima@gcc.gnu.org>
4830
4831 * config/sh/sh.h (CASE_VECTOR_MODE): Use SImode for a
4832 non-optimizing compile.
4833 (ASM_OUTPUT_ADDR_VEC_ELT): Use .long for a non-optimizing
4834 compile.
4835
fe77449a
DR
48362003-01-08 Douglas B Rupp <rupp@gnat.com>
4837
4838 * config/i386/i386.c (ix86_attribute_table): Add new attributes
4839 ms_struct and gcc_struct.
4840 (ix86_handle_struct_attribute): New function.
4841 (ix86_ms_bitfield_layout_p): Update to take new attributes
4842 into account.
4843 * doc/extend.texi: Document new attributes.
4844 * testsuite/gcc.dg/bf-ms-attrib.c: New test.
4845
98417968
DS
48462003-01-08 Danny Smith <dannysmith@users.sourceforge.net>
4847
07488f32
ZW
4848 PR optimization/8750
4849 * config/i386/i386.c (ix86_expand_prologue): Don't allow
4850 scheduling pass to move insns across __alloca call.
98417968 4851
e46e3130
DJ
48522003-01-08 Dale Johannesen <dalej@apple.com>
4853
07488f32
ZW
4854 * config/rs6000/rs6000.md: Replace *store_multiple_string
4855 with *stmsi[3-8].
e46e3130 4856
c40e5172
JS
48572003-01-08 Jeff Sturm <jsturm@one-point.com>
4858
4859 PR target/9210
4860 * config/rs6000/rs6000.c (rs6000_elf_encode_section_info):
4861 Set SYMBOL_REF_FLAG on local data sym_ref.
4862
de62b72c 48632003-01-08 Dale Johannesen <dalej@apple.com>
07488f32
ZW
4864
4865 * function.c (assign_parms): Don't set pretend_args_size if
de62b72c 4866 REG_PARM_STACK_SPACE.
07488f32 4867 config/rs6000/rs6000.c (setup_incoming_varargs): Don't set
de62b72c
DJ
4868 pretend_args_size.
4869
25839c41
NN
48702003-01-08 Nathanael Nerode <neroden@gcc.gnu.org>
4871
4872 * gcc.hlp: Delete.
4873
4bdc8610
JH
4874Thu Jan 9 00:57:15 CET 2003 Jan Hubicka <jh@suse.cz>
4875
4876 * i386.c (ix86_expand_int_addcc): Fix thinko.
4877
5b71a4e7
DE
48782003-01-08 David Edelsohn <edelsohn@gnu.org>
4879
4880 * config/rs6000/rs6000.h (FUNCTION_MODE): Always use SImode.
4881 * config/rs6000/rs6000.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Redefine
4882 as hook_bool_tree_hwi_hwi_tree_true.
4883 (rs6000_emit_allocate_stack): Use TARGET_32BIT.
4884 (rs6000_emit_epilogue): Same.
4885 (rs6000_output_mi_thunk): Re-implement as RTL.
4886 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Call
4887 xcoffout_declare_function if any debugging enabled.
4888
2d2a50c3
CD
48892003-01-08 Chris Demetriou <cgd@broadcom.com>
4890
4891 * config.gcc (mipsisa32r2-*-elf*, mipsisa32r2el-*-elf*): New
4892 targets, to support MIPS32 Release 2 (MIPS32R2) configurations.
4893 * config/mips/mips.h (enum processor_type): Rename
4894 PROCESSOR_R4KC to PROCESSOR_4KC, PROCESSOR_R5KC to
4895 PROCESSOR_5KC, and PROCESSOR_R20KC to PROCESSOR_20KC.
4896 Add PROCESSOR_M4K.
4897 (TARGET_MIPS4KC, TARGET_MIPS5KC): Update for the renaming.
4898 (ISA_MIPS32R2): New define.
4899 (GENERATE_MULT3_SI, ISA_HAS_CONDMOVE, ISA_HAS_8CC)
4900 (ISA_HAS_MADD_MSUB, ISA_HAS_CLZ_CLO)
4901 (ISA_HAS_PREFETCH): Add support for MIPS32R2.
4902 (MIPS_ISA_DEFAULT): Likewise. Also, fix indentation.
4903 (TARGET_CPU_CPP_BUILTINS): Add support for MIPS32R2. Add new
4904 predefine __mips_isa_rev for MIPS32, MIPS32R2, and MIPS64.
4905 (ISA_HAS_ROTR_SI): Add support for MIPS32R2, and avoid if
4906 compiling MIPS16 code.
4907 (ISA_HAS_ROTR_DI): Do not use if compiling MIPS16 code, and fix
4908 comment.
4909 (ISA_HAS_SEB_SEH): New define.
4910 (ASM_SPEC, LINK_SPEC): Pass -mips32r2 to assembler and linker.
4911 * config/mips/mips.c (mips_cpu_info_table): Adjust for enum
4912 processor_type value renaming. Add support for MIPS32R2.
4913 Clean up comments, and move "sb1" entry with other MIPS64 CPU
4914 entries.
4915 (override_options): Reimplement -mipsN option handling so that
4916 it will work correctly for -mips32r2. Avoid branch-likely
4917 instructions on MIPS32R2.
4918 * config/mips/mips.md (mulsi3_mult3): Add support for MIPS32R2.
4919 (extendhisi2): Use extendhisi2_hw if ISA_HAS_SEB_SEH.
4920 (extendqisi2): Use extendqisi2_hw if ISA_HAS_SEB_SEH.
4921 (extendhisi2_hw, extendqisi2_hw): New.
4922 * config/mips/netbsd.h (TARGET_CPU_CPP_BUILTINS): Add support
4923 for MIPS32R2. Add new predefine __mips_isa_rev for MIPS32,
4924 MIPS32R2, and MIPS64.
4925 (LINK_SPEC): Pass -mips32r2 to linker.
4926 * config/mips/t-isa3264: Built -mips32r2 multilibs.
4927 * doc/invoke.texi (MIPS Options): Add -mips32r2, add support
4928 for mips32r2 in the -march description. Alphabetically sort
4929 CPU names in the -march description. Add long-missed -mips32
4930 and -mips64 to MIPS option summary.
4931
4932 * config.gcc: Update copyright years to include 2003.
4933 * config/mips/mips.c: Likewise.
4934 * config/mips/mips.h: Likewise.
4935 * config/mips/mips.md: Likewise.
4936 * config/mips/netbsd.h: Likewise.
4937 * doc/invoke.texi: Likewise.
4938
918c4fe4
AS
49392003-01-08 Andreas Schwab <schwab@suse.de>
4940
4941 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): Fix spelling of cache
4942 variable.
4943 * configure: Regenerated.
4944
c5e7ce43
KH
49452003-01-08 Kazu Hirata <kazu@cs.umass.edu>
4946
4947 * config/h8300/h8300.c (output_logical_op): Replace byte/word
4948 extraction of det with b0, b1, w0, w2, etc.
4949 (compute_logical_op_length): Likewise.
4950 (compute_logical_op_cc): Likewise.
4951
eb8a8ec4
KH
49522003-01-08 Kazu Hirata <kazu@cs.umass.edu>
4953
4954 * config/h8300/h8300.h (CONSTANT_ADDRESS_P): Allow CONST and
4955 HIGH on all variants.
4956
56f15830 4957Wed Jan 8 14:06:34 CET 2003 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz>
07488f32 4958
56f15830
JZ
4959 * Makefile.in (PARTITION_H): New.
4960 (BASIC_BLOCK_H): Added hard-reg-set.h and $(PARTITION_H).
4961 * basic-block.h: Include hard-reg-set.h.
4962
ab57893b
RE
49632003-01-08 Richard Earnshaw <rearnsha@arm.com>
4964
4965 * arm.h (ENABLE_XF_PATTERNS): Delete.
4966 * arm.md (addxf3, subxf3, mulxf3, divxf3, modxf3, negxf2, absxf2)
4967 (sqrtxf2, floatsixf2, fix_truncxfsi2, truncxfsf2, truncxfdf2)
4968 (extendsfxf2, extenddfxf2, movxf, cmpxf, cmpxf_insn)
4969 (cmpxf_trap): Delete.
4970 (movxf_hard_insn): Remove test of ENABLE_XF_PATTERNS.
4971
7b52eede
JH
4972Wed Jan 8 12:10:57 CET 2003 Jan Hubicka <jh@suse.cz>
4973
4974 * i386.md (adddi3_carry_rex64, subdi3_carry_rex64): Name pattern.
4975 (addhi3_carry, addqi3_carry, subhi3_carry, subqi3_carry): New patterns.
4976 (add??cc): New expanders.
4977 * i386.c (expand_int_addcc): New function.
4978 * i386-protos.h (expand_int_addcc): Declare.
4979
4980 * alias.c (memory_modified_1): New static function.
4981 (memory_modified): New static varaible.
4982 (memory_modified_in_insn_p): New global function.
4983 * rtl.h (memory_modified_in_insn_p): Declare.
4984 * rtlanal.c (modified_between_p, modified_in_p): Be smart about memory
4985 references.
4986
4987 * expr.h (emit_conditional_add): Declare.
4988
74049755
JJ
49892003-01-07 Janis Johnson <janis187@us.ibm.com>
4990
4991 PR other/8947
4992 * doc/invoke.texi (-malign-double): Explain that the option breaks
4993 binary compatibility.
4994
e7edc5a0
AS
49952003-01-08 Andreas Schwab <schwab@suse.de>
4996
4997 * config.gcc (m68k-*-linux*): Don't set extra_parts and gnu_ld,
4998 should come from the generic *-*-linux* entry.
4999
9635cfad
JH
5000Tue Jan 7 22:29:56 CET 2003 Jan Hubicka <jh@suse.cz>
5001
5002 * cselib.c (cselib_current_insn_in_libcall): New static variable.
5003 (new_elt_loc_list, cselib_process_insn, cselib_init): Keep track on whether
5004 we are inside libcall.
5005 * cselib.h (elt_loc_list): Add in_libcall.
5006 * gcse.c (do_local_cprop): Do not copy propagate using insns
5007 in libcalls.
5008
3ee04299
DE
50092003-01-07 David Edelsohn <edelsohn@gnu.org>
5010
5011 * doc/tm.texi (TARGET_SCHED_VARIABLE_ISSUE): CLOBBER and USE do
5012 not normally affect to issue rate.
5013
068f5dea
JH
5014Tue Jan 7 21:46:57 CET 2003 Jan Hubicka <jh@suse.cz>
5015
5016 * genopinit.c (optabs): Add addc_optab.
5017 * ifcvt.c (noce_try_store_flag): Rename to ...
5018 (noce_try_addcc): ... this one; handle generic conditional increment.
5019 (noce_process_if_block): Update noce_try_addcc call.
5020 * optabs.c (emit_conditional_add): New.
5021 (init_obtabs): Initialize addc_optab.
5022 * optabs.h (optab_index): Add OTI_addcc.
5023 (addcc_optab): New macro.
5024 * md.texi: Document addMcc
5025
5026 PR target/8322
5027 * i386.c (ix86_init_mmx_sse_builtins): Constify arguments of loads.
5028 * xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts.
5029 * xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts.
5030
5031 * reload1.c (delete_output_reload): Avoid repeated attempts
5032 to delete insn.
5033
eb70d86d
AS
50342003-01-07 Andreas Schwab <schwab@suse.de>
5035
e7edc5a0
AS
5036 * configure.in: Restore CFLAGS before gcc_AC_INITFINI_ARRAY.
5037 Move --enable-initfini-array check ...
5038 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): ... here. Define
5039 HAVE_INITFINI_ARRAY also when --enable-initfini-array is given.
5040 Don't AC_SUBST gcc_cv_initfinit_array. Use AC_TRY_RUN.
5041 * configure: Rebuild.
eb70d86d 5042
1afdf91c
RH
50432003-01-07 Richard Henderson <rth@redhat.com>
5044
e7edc5a0
AS
5045 * alias.c (find_base_value): Only use new_reg_base_value shortcut
5046 if the register is set once.
1afdf91c 5047
36210500 50482003-01-07 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
07488f32 5049
36210500
SP
5050 * config/i386/i386.c (ix86_init_mmx_sse_builtins):
5051 __builtin_ia32_ldmxcsr and __builtin_ia32_stmxcsr are SSE, not MXX.
5052 * config/i386/i386.md (ldmxcsr, stmxcsr): SSE, not MMX.
5053
cb25b0ce
BK
50542003-01-07 Benjamin Kosnik <bkoz@redhat.com>
5055 Sunil Davasam <sunil.k.davasam@intel.com>
5056
07488f32 5057 PR libstdc++/9076
cb25b0ce
BK
5058 * unwind-dw2.c (execute_cfa_program): DW_CFA_undefined,
5059 DW_CFA_same_value, read next and ignore.
5060
94c040bd
RH
50612003-01-07 Richard Henderson <rth@redhat.com>
5062
5063 * cfganal.c (flow_call_edges_add): Don't crash on noreturn call.
5064
f6cb56fa
DB
50652003-01-07 Daniel Berlin <dberlin@dberlin.org>
5066
5067 * cfg.c: Include alloc-pool.h
5068 (edge_pool): New pool.
5069 (bb_pool): New pool.
5070 (first_deleted_edge): Remove.
5071 (first_deleted_block): Remove.
5072 (init_flow): Alloc/free the pools.
5073 (free_edge): Use pools.
5074 (alloc_block): Ditto.
5075 (expunge_block): Ditto.
5076 (cached_make_edge): Ditto.
5077
5078 * Makefile.in (cfg.o): Add alloc-pool.h dependency.
5079
50802003-01-07 Daniel Berlin <dberlin@dberlin.org>
5081
5082 * et-forest.c: Include alloc-pool.h.
5083 (struct et_forest): Add node_pool and occur_pool.
5084 (et_forest_create): Create the new pools.
5085 (et_forest_delete): Delete them.
5086 (et_forest_add_node): Allocate and free using pools.
5087 (et_forest_add_edge): Ditto.
5088 (et_forest_remove_node): Ditto.
5089 (et_forest_remove_edge): Ditto.
5090
5091 * Makefile.in (et-forest.o): Add alloc-pool.h dependency.
5092
f9ac2f95
KH
50932003-01-07 Kazu Hirata <kazu@cs.umass.edu>
5094
5095 * config/h8300/h8300.c (output_logical_op): Simplify and
5096 optimize the handling of SImode.
5097 * config/h8300/h8300.c (compute_logical_op_length): Update
5098 accordingly.
5099 * config/h8300/h8300.c (compute_logical_op_cc): Likewise.
5100
83282119
RS
51012003-01-07 Richard Sandiford <rsandifo@redhat.com>
5102
5103 * config/mips/mips.c (mips_va_arg): In the EABI code, apply the
5104 big-endian correction to indirect arguments too.
5105
59a4c851
AH
51062003-01-06 Aldy Hernandez <aldyh@redhat.com>
5107
5108 Segher Boessenkool <segher@koffie.nl>
5109
36210500
SP
5110 * config/rs6000/rs6000.c (rs6000_reg_names): Add missing registers.
5111 (alt_reg_names): Ditto, fix formatting.
5112 * config/rs6000/rs6000.h (DEBUG_REGISTER_NAMES): Fix formatting.
59a4c851 5113
7798db98
KH
51142003-01-06 Kazu Hirata <kazu@cs.umass.edu>
5115
5116 * config/h8300/h8300.c (final_prescan_insn): Constify uid.
5117 (output_logical_op): Constify intval and det.
5118 (compute_logical_length): Likewise.
5119 (compute_logical_cc): Likewise.
5120 (output_a_shift): Constify mask.
5121 (h8300_encode_label): Constify len.
5122
4705d102
KH
51232003-01-06 Kazu Hirata <kazu@cs.umass.edu>
5124
5125 * config/h8300/h8300.c (h8300_expand_prologue): Remove fsize.
5126 (h8300_expand_epilogue): Likewise.
5127
98c9a8e8
AH
51282003-01-06 Aldy Hernandez <aldyh@redhat.com>
5129
5130 Segher Boessenkool <segher@koffie.nl>
5131
36210500
SP
5132 * config/rs6000/altivec.md: Remove spaces from assembler
5133 instruction argument lists.
07488f32 5134
86143814
MH
51352003-01-07 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
5136
5137 * config/c4x/c4x.c (c4x_naked_function_p): Rename from
5138 c4x_assembler_function_p.
5139 (c4x_null_epilogue_p): Complement return value, all uses updated.
5140 (c4x_insert_attributes): Add naked.
5141 * config/c4x/c4x.md (c4x_null_epilogue_p): Changes uses.
5142 * doc/extend.texi: Update C4x function attributes.
5143
52fd80fb
RH
51442003-01-06 Richard Henderson <rth@redhat.com>
5145
5146 * config/alpha/alpha.c (alpha_encode_section_info): Adjust symbol_str
5147 properly when changing "local-ness".
5148 * config/alpha/alpha.md (movdi_er_high_g): Allow all symbols.
5149
a16b43c5
DJ
51502003-01-06 Dale Johannesen <dalej@apple.com>
5151
5152 * config/darwin-protos.h: Add prototypes for new section functions.
5153
ef8dfae6
CD
51542003-01-06 Chris Demetriou <cgd@broadcom.com>
5155
5156 * config.gcc (mipsisa32-*-elf*, mipsisa32el-*-elf*): Default ABI
5157 to EABI.
5158
44f9a8e4
ZW
51592003-01-06 Zack Weinberg <zack@codesourcery.com>
5160
5161 * hwint.h: If the current compiler has no 64-bit type at all,
5162 make HOST_WIDEST_INT 32 bits.
5163
2610198a
EC
51642003-01-06 Eric Christopher <echristo@redhat.com>
5165
5166 * config/mips/mips.md (movdf_internal2): Fix constraints.
5167
efbd757f
KH
51682003-01-06 Kazu Hirata <kazu@cs.umass.edu>
5169
5170 * config/h8300/h8300.md (*twoshifts_l16_r1): New.
5171
727b9b8c
RS
51722003-01-06 Richard Sandiford <rsandifo@redhat.com>
5173
5174 * config/mips/mips.md (leadi): Use dla rather than la.
5175
4705d102 51762003-01-06 Svein E. Seldal <Svein.Seldal@solidas.com>
cebdac46
SS
5177
5178 * config/c4x/c4x.h: Updated specs for new gas format. Fixed bug
5179 in C33_FLAG. Added proper C33 support in ASM_FILE_START macro.
5180
4705d102 51812003-01-06 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
fe1e789f 5182
44f9a8e4 5183 * config/c4x/c4x.h: Remove hwint.h include and HOST_WIDE_INT_PRINT_HEX
fe1e789f
HB
5184 redefinition.
5185
dff0ea43
KH
51862003-01-05 Kazu Hirata <kazu@cs.umass.edu>
5187
5188 * config/h8300/h8300.md (*extzv_8_23): New.
5189
94e6fd3e
JDA
51902003-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
5191
5192 * pa64-hpux.h (JCR_SECTION_NAME): Define.
5193 (PA_INIT_FRAME_DUMMY_ASM_OP): Check EH_FRAME_SECTION_NAME instead of
5194 USE_EH_FRAME_REGISTRY when defining.
5195
cd9b5ca8
KH
51962003-01-05 Kazu Hirata <kazu@cs.umass.edu>
5197
5198 * config/h8300/h8300.c (output_a_shift): Do not output a
5199 variable shift.
5200 * config/h8300/h8300.md (two splitters): New.
5201
1ba8a9c4
RS
52022003-01-05 Richard Sandiford <rsandifo@redhat.com>
5203
5204 * config/mips/mips.md: Disable the movstrsi define_split.
5205
c7c50494
KG
52062003-01-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5207
5208 * alloc-pool.c: Don't include "libiberty.h".
5209 * config/sparc/gmon-sol2.c: Include <fcntl.h>.
5210 * convert.c (convert_to_real): Hide unused variable.
5211
83fa8d7a
KG
52122003-01-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5213
5214 * Makefile.in (gtyp-gen.h): Const-ify.
5215 * gcov-dump.c (tag_table): Likewise.
5216
871dab3e
BK
52172003-01-04 Bruce Korb <bkorb@gnu.org>
5218
5219 * fixinc/fixfixes.c(wrap_fix): the wrapper guard must be a function
5220 of *both* the file name and the fix name.
5221
90961eff 52222003-01-04 John David Anglin <dave.anglin@nrc.ca>
35d434ed
JDA
5223
5224 * config.gcc (hppa*64*-*-hpux11*): Define extra_parts. Don't use
5225 collect2.
5226 * pa-hpux11.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Undefine.
5227 (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Define.
5228 * pa64-hpux.h (HP_INIT_ARRAY_SECTION_ASM_OP,
5229 GNU_INIT_ARRAY_SECTION_ASM_OP, HP_FINI_ARRAY_SECTION_ASM_OP,
5230 GNU_FINI_ARRAY_SECTION_ASM_OP): Define.
5231 (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Define when not using
5232 elfos.h.
5233 (EH_FRAME_IN_DATA_SECTION): Delete define.
5234 (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Undefine.
5235 (STARTFILE_SPEC): Use crtbegin.o.
5236 (ENDFILE_SPEC): Use crtend.o.
5237 (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION,
5238 SUPPORTS_INIT_PRIORITY, PA_CXA_FINALIZE_STUB, PA_INIT_FINI_HACK,
5239 PA_INIT_FRAME_DUMMY_ASM_OP, PA_JV_REGISTERCLASSES_STUB,
5240 DTOR_LIST_BEGIN): Define.
5241 * pa.c (TARGET_ASM_CONSTRUCTOR): Define.
5242 (pa_asm_out_constructor, pa_asm_out_destructor): New functions.
5243 * som.h (SUPPORTS_INIT_PRIORITY): Delete define.
5244
b0588013
BK
52452002-12-31 Larin Hennessy <larin@science.oregonstate.edu>
5246
5247 * fixinc/fixinc.svr4: Remove references to i860, Sony NewsOS, and spur.
5248 * fixinc/inclhack.def: Remove tests for Apple A/UX, ARM/RISCiX, DG/UX,
5249 m88k-*-sysv3*, Sony NewsOS. Remove references to i860.
5250 Cleanup handling of replacement text.
5251 * fixinc/mkfixinc.sh: Remove reference to i?86-*-osf1*
5252
52532003-01-04 Bruce Korb <bkorb@gnu.org>
5254
5255 * fixinc/tests/base/math.h: removed obsolete results
5256 * fixinc/tests/base/stdlib.h: ditto
5257 * fixinc/tests/base/sys/param.h: ditto
5258 * fixinc/tests/base/sys/stat.h: ditto
5259 * fixinc/tests/base/time.h: ditto
5260 * fixinc/tests/base/X11/Intrinsic.h: removed obsolete file
5261 * fixinc/tests/base/sys/byteorder.h: ditto
5262 * fixinc/inclhack.def: Remove superfluous backslashes
5263
68ee6df6
KH
52642003-01-04 Kazu Hirata <kazu@cs.umass.edu>
5265
5266 * config/h8300/h8300-protos.h: Add prototypes for
5267 the new functions defined below.
5268 * config/h8300/h8300.c (TARGET_ASM_FUNCTION_PROLOGUE): Do not
5269 define.
5270 (dosize): Emit RTL instead of assembly code.
5271 (push): Likewise.
5272 (pop): Likewise.
5273 (h8300_output_function_prologue): Remove.
5274 (h8300_expand_prologue): New.
5275 (h8300_expand_epilogue): New.
5276 (h8300_output_function_epilogue): Do only the reset of
5277 pragma_saveall.
5278 * config/h8300/h8300.md (push_h8300): New.
5279 (push_h8300hs): Likewise.
5280 (pop_h8300): Likewise.
5281 (pop_h8300hs): Likewise.
5282 (*stm_h8300s_2): Change the name to stm_h8300s_2.
5283 (*stm_h8300s_3): Change the name to stm_h8300s_3.
5284 (*stm_h8300s_4): Change the name to stm_h8300s_4.
5285 (*ldm_h8300s_2): New.
5286 (*ldm_h8300s_3): Likewise.
5287 (*ldm_h8300s_4): Likewise.
5288 (return): Likewise.
5289 (*return_1): Likewise.
5290 (prologue): Likewise.
5291 (epilogue): Likewise.
5292 (monitor_prologue): Likewise.
5293
d3c300d2
DJ
52942003-01-03 Dale Johannesen <dalej@apple.com>
5295
5296 * config/darwin.h: (EXTRA_SECTIONS): Add machopic_symbol_stub1,
5297 machopic_picsymbol_stub1.
5298 (EXTRA_SECTION_FUNCTIONS): Ditto.
5299 * rs6000/rs6000.c: Update copyright.
5300 (machopic_output_stub): Use them. Remove an insn from stub code.
5301
6cce57b0
JM
53022003-01-02 Jason Merrill <jason@redhat.com>
5303
4e8dca1c
JM
5304 * fold-const.c (fold) [COND_EXPR]: Avoid NOP_EXPRs better.
5305
5306 * integrate.c (copy_decl_for_inlining): Don't clear the rtl for
5307 static/external decls.
2610198a 5308
6cce57b0
JM
5309 * c-common.c (finish_fname_decls): Put the DECL_STMTs inside the
5310 outermost scope.
5311 * c-decl.c (c_make_fname_decl): Push the decls there, too.
5312
e392d367
KH
53132003-01-03 Kazu Hirata <kazu@cs.umass.edu>
5314
5315 * config/h8300/h8300-protos.h: Add a prototype for
5316 h8300_current_function_interrupt_function_p.
5317 * config/h8300/h8300.c (interrupt_handler): Remove.
5318 (os_task): Likewise.
5319 (monitor): Likewise.
5320 (pragma_interrupt): New.
5321 (WORD_REG_USED): Use
5322 h8300_current_function_interrupt_function_p.
5323 (dosize): Likewise.
5324 (h8300_output_function_prologue): Likewise.
5325 Do not set interrupt_handler, os_task, monitor.
5326 (h8300_output_function_prologue): Use
5327 h8300_current_function_interrupt_function_p.
5328 Do not set interrupt_handler, os_task, monitor.
5329 (h8300_current_function_interrupt_function_p): New.
5330 (h8300_pr_interrupt): Set pragma_interrupt.
5331 (h8300_insert_attributes): Reset pragma_interrupt.
5332
b15da5b7
GP
53332003-01-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
5334
5335 * doc/install.texi (Configuration): Fix markup for reference to
5336 gcc/config.gcc.
5337
bf16e745
KH
53382003-01-02 Kazu Hirata <kazu@cs.umass.edu>
5339
5340 * config/h8300/h8300.md (*iorhi3_zext): Relax the condition.
5341 (*iorhi3_two_qi): Likewise.
5342 (*iorsi3_zexthi): Likewise.
5343 (*xorhi3_zextqi): Likewise.
5344 (*xorsi3_zexthi): Likewise.
5345 (*xorsi3_zextqi): Likewise.
5346
8ccf5d5f
KH
53472003-01-02 Kazu Hirata <kazu@cs.umass.edu>
5348
5349 * config/h8300/h8300.c (stack_pointer_operand): New.
5350 (const_int_gt_2_operand): Likewise.
5351 (const_int_ge_8_operand): Likewise.
5352 * config/h8300/h8300.md (a splitter): Likewise.
5353 (a peephole2): Likewise.
5354 * config/h8300/h8300-protos.h: Add prototypes for the new
5355 functions above.
5356
43c6a96a
SB
53572003-01-02 Steven Bosscher <s.bosscher@student.tudelft.nl>
5358
5359 * objc/Make-lang.in, objc/config-lang.in, objc/lang-specs.h,
5360 objc/objc-act.h: Fix copyright years.
5361
96c4e780
SB
53622003-01-02 Steven Bosscher <s.bosscher@student.tudelft.nl>
5363
5364 * doc/passes.texi: Fix documentation for -fssa-ccp
5365
8ed0a104
NB
53662003-01-02 Neil Booth <neil@daikokuya.co.uk>
5367
5368 * gccbug.in: Update for new categories.
5369
1b9f0361
KH
53702003-01-01 Kazu Hirata <kazu@cs.umass.edu>
5371
5372 * config/h8300/h8300.md: Reorder some patterns.
5373
dc5f17ec
KH
53742003-01-01 Kazu Hirata <kazu@cs.umass.edu>
5375
5376 * config/h8300/h8300.c (output_logical_op): Fix a warning.
5377
cd2801fb
NB
53782003-01-01 Neil Booth <neil@daikokuya.co.uk>
5379
5380 * config/darwin-protos.h, config/c4x/c4x-protos.h,
5381 config/cris/cris-protos.h, config/i370/i370-protos.h,
5382 config/i960/i960-protos.h, config/ia64/ia64-protos.h,
5383 config/v850/v850-protos.h: Use struct, and don't conditionally
5384 compile on GCC_C_PRAGMA_H.
5385
378b1b8e
KH
53862003-01-01 Kazu Hirata <kazu@cs.umass.edu>
5387
5388 * config/arm/arm-protos.h: Remove #ifdef GCC_C_PRAGMA_H.
5389 * config/h8300/h8300-protos.h: Likewise.
5390 * config/sh/sh-protos.h: Likewise.
5391
7106a5bc
KH
53922003-01-01 Kazu Hirata <kazu@cs.umass.edu>
5393
5394 * config/arm/arm-protos.h: Use struct cpp_reader instead of
5395 cpp_reader.
5396 * config/h8300/h8300-protos.h: Likewise.
5397 * config/sh/sh-protos.h: Likewise.
5398
231b51a1
NB
53992003-01-01 Neil Booth <neil@daikokuya.co.uk>
5400
5401 * config/arm/arm.c (arm_pr_long_calls, arm_pr_no_long_calls,
5402 arm_pr_long_calls_off): Use struct.
5403 * config/h8300/h8300.c (h8300_pr-interrupt, h8300_pr_saveall)
5404 : Similarly.
5405 Don't include cpplib.h.
5406 * config/sh/sh.c (sh_pr_interrupt, sh_pr_trapa,
5407 sh_pr_nosave_low_regs): Similarly.
5408
0f18b2b0
KH
54092003-01-01 Kazu Hirata <kazu@cs.umass.edu>
5410
5411 * config/h8300/h8300.c: Include cpplib.h.
5412
b9593599
SB
54132003-01-01 Steven Bosscher <s.bosscher@student.tudelft.nl>
5414
5415 * objc/Make-lang.in, objc/config-lang.in, objc/lang-options.h,
5416 objc/lang-specs.h, objc/objc-act.c, objc/objc-act.h,
5417 objc/objc-lang.c, objc/objc-tree.def: Replace "GNU CC" with
5418 "GCC" in the copyright header.
5419
c58b209a
NB
54202003-01-01 Neil Booth <neil@daikokuya.co.uk>
5421
5422 * c-pragma.c (c_register_pragma): New.
5423 (init_pragma): Use it.
5424 * c-pragma.h (cpp_register_pragma): Don't declare.
5425 (c_register_pragma): New.
5426 * cpplib.h: Remove #ifdef GCC_C_PRAGMA_H.
5427 * config/darwin.h (REGISTER_TARGET_PRAGMAS): Update.
5428 * config/arm/arm.h (REGISTER_TARGET_PRAGMAS): Update.
5429 * config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Update.
5430 * config/h8300/h8300.h (REGISTER_TARGET_PRAGMAS): Update.
5431 * config/i370/i370.h (REGISTER_TARGET_PRAGMAS): Update.
5432 * config/i960/i960.h (REGISTER_TARGET_PRAGMAS): Update.
5433 * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Update.
5434 * config/rs6000/rs6000.h (REGISTER_TARGET_PRAGMAS): Update.
5435 * config/sh/sh.h (REGISTER_TARGET_PRAGMAS): Update.
5436 * config/v850/v850.h (REGISTER_TARGET_PRAGMAS): Update.
5437 * doc/tm.texi (REGISTER_TARGET_PRAGMAS): Update
5438
bc455f9c
KH
54392002-12-31 Kazu Hirata <kazu@cs.umass.edu>
5440
5441 * config/h8300/h8300-protos.h: Update the prototypes.
5442 * config/h8300/h8300.c (const_le_2_operand): Change to
5443 const_int_le_2_operand.
5444 (const_int_le_6_operand): Change to const_int_le_6_operand.
5445 * config/h8300/h8300.md (two peepholes): Update the function
5446 names.
5447
3b41afd9
TT
54482002-12-31 Tom Tromey <tromey@redhat.com>
5449
5450 * doc/install.texi (Testing): Fixed typo.
5451
9e56a932
KH
54522002-12-31 Kazu Hirata <kazu@cs.umass.edu>
5453
5454 * config/h8300/h8300.h (TRAMPOLINE_TEMPLATE): Remove.
5455 (TRAMPOLINE_SIZE): Support the normal mode.
5456 (INITIALIZE_TRAMPOLINE): Emit the entire trampoline.
5457
731e8b38
MM
54582002-12-31 Mark Mitchell <mark@codesourcery.com>
5459
5460 * c-common.h (pending_lang_change): Declare.
5461
147d1cd3
JQ
54622002-12-31 Jerry Quinn <jlquinn@optonline.net>
5463
5464 * gcc/doc/invoke.texi (Optimization Options): Clean up -O flag
5465 descriptions.
5466
fad893da
JQ
54672002-12-31 Jerry Quinn <jlquinn@optonline.net>
5468
5469 * gcc/doc/invoke.texi (Optimization Options): List the options
5470 enabled by each -O flag.
5471
ec5b5ef1
GP
54722002-12-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
5473
5474 * doc/install.texi (Configuration): Explicitly refer
5475 gcc/config.gcc for a list of cpu models.
5476
59d7c857
KH
54772002-12-31 Kazu Hirata <kazu@cs.umass.edu>
5478
5479 * config/h8300/h8300.h: Fix comment typos.
5480
5b8f5865
DE
54812002-12-30 David Edelsohn <edelsohn@gnu.org>
5482
5483 * config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define.
5484
582f6e6d
TT
54852002-12-30 Tom Tromey <tromey@redhat.com>
5486
5487 * doc/install.texi (Testing): Mention Jacks.
5488
f75db6bc
JM
54892002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
5490
5491 * doc/gcc.texi, doc/gccint.texi: Update last modification dates.
5492
2d75548f
KH
54932002-12-30 Kazu Hirata <kazu@cs.umass.edu>
5494
5495 * config/h8300/h8300.c (output_logical_op): Use extu.w in more
5496 cases.
5497 (compute_logical_op_length): Update to reflect the change in
5498 output_logical_op.
5499 (compute_logical_op_cc): Likewise.
5500
b351c1d9
JM
55012002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
5502
5503 * doc/service.texi: Uncomment and update FAQ link.
5504
47ab0cbb
AJ
55052002-12-30 Andreas Jaeger <aj@suse.de>
5506
5507 * unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
5508
3cc3e1cd
KH
55092002-12-30 Kazu Hirata <kazu@cs.umass.edu>
5510
5511 * config/h8300/h8300.md (*addsi3_lshiftrt_16_zexthi): New.
5512
a6e8d113
KH
55132002-12-30 Kazu Hirata <kazu@cs.umass.edu>
5514
5515 * config/h8300/h8300.c (output_logical_op): Use extu.w if we
5516 are clearing the most significant byte.
5517 (compute_logical_op_length): Update to reflect the change in
5518 output_logical_op.
5519 (compute_logical_op_cc): Likewise.
5520
c85263d2
KH
55212002-12-29 Kazu Hirata <kazu@cs.umass.edu>
5522
5523 * config/h8300/h8300.md: Give internal names to anonymous
5524 insns.
5525
fbcb02cd
KH
55262002-12-29 Kazu Hirata <kazu@cs.umass.edu>
5527
5528 * config/h8300/h8300.md: Reorder some insns.
5529
2873836b
KH
55302002-12-29 Kazu Hirata <kazu@cs.umass.edu>
5531
5532 * config/h8300/h8300-protos.h: Add prototypes for
5533 const_int_qi_operand and const_int_hi_operand.
5534 * config/h8300/h8300.c (const_int_qi_operand): New.
5535 (const_int_hi_operand): Likewise.
5536 * config/h8300/h8300.md (three peepholes): New.
5537
bdefb2ab
JM
55382002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
5539
5540 * doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
5541 Use @copying.
5542
a38f87a9
JM
55432002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
5544
5545 * configure.in: Increase makeinfo version requirement to 4.[2-9].
5546 * configure: Regenerate.
5547 * doc/install.texi: Update Texinfo version requirement.
5548
c14bc6db
AJ
55492002-12-28 Andreas Jaeger <aj@suse.de>
5550
b9b21a05
AJ
5551 * config/i386/i386.c (x86_function_profiler): Mark labelno as
5552 possibly unused.
5553
c14bc6db
AJ
5554 * c-parse.in (yyprint): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX for
5555 correct format.
5556
62fbd434
KH
55572002-12-27 Kazu Hirata <kazu@cs.umass.edu>
5558
5559 * config/h8300/h8300.md (*iorhi_shift_8): Change the name to
5560 *iorhi_ashift_8.
5561 (*iorhi_lshiftrt_8): New.
5562
27e3f16d
JM
55632002-12-27 Joseph S. Myers <jsm@polyomino.org.uk>
5564
5565 * doc/include/texinfo.tex: Update to version 2002-12-26.16.
5566
b09975de
GP
55672002-12-27 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
5568
5569 * doc/contrib.texi (Contributors): Add Abramo and Roberto Bagnara.
5570
f411c849
KH
55712002-12-26 Kazu Hirata <kazu@cs.umass.edu>
5572
5573 * config/h8300/h8300-protos.h: Fix comment typos.
5574 Update copyright.
5575 * config/h8300/h8300.c: Fix comment typos.
5576
b976d7a0
KH
55772002-12-26 Kazu Hirata <kazu@cs.umass.edu>
5578
5579 * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
5580
d1f87653
KH
55812002-12-26 Kazu Hirata <kazu@cs.umass.edu>
5582
5583 * config/i386/athlon.md: Fix comment typos.
5584 * config/i386/crtdll.h: Likewise.
5585 * config/i386/djgpp.h: Likewise.
5586 * config/i386/i386-interix.h: Likewise.
5587 * config/i386/i386.c: Likewise.
5588 * config/i386/i386.h: Likewise.
5589 * config/i386/i386.md: Likewise.
5590 * config/i386/k6.md: Likewise.
5591 * config/i386/mingw32.h: Likewise.
5592 * config/i386/pentium.md: Likewise.
5593 * config/i386/sco5.h: Likewise.
5594 * config/i386/winnt.c: Likewise.
5595 * config/i386/xmmintrin.h: Likewise.
5596
ecd4a73b
JR
55972002-12-26 Jose Renau <renau@cs.uiuc.edu>
5598
5599 * ssa-dce.c (EXECUTE_IF_UNNECESSARY): Verify INSN is an
5600 INSN_P before checking to see if it is dead.
5601 (mark_all_insn_unnecessary): Similarly.
5602 (ssa_eliminate_dead_code): Similarly.
5603 * rtl.h (struct rtx_def): Update comments for in_struct usage
5604 in dead code elimination pass.
5605 (INSN_DEAD_CODE_P): Allow JUMP_INSN and CALL_INSN as well.
5606
b17bb466
AS
56072002-12-26 Andreas Schwab <schwab@suse.de>
5608
c14bc6db 5609 * config.gcc (powerpc*-*-*, rs6000-*-*): Fix assignment syntax.
b17bb466 5610
b21fb038
DE
56112002-12-25 David Edelsohn <edelsohn@gnu.org>
5612
5613 * config/rs6000/rs6000.c (rs6000_override_options): Convert to
5614 tartet_flags_explicit.
5615 * config/rs6000/rs6000.h (MASK_MULTIPLE_SET, MASK_STRING_SET): Delete.
5616 Compact target_flags bits.
5617 (TARGET_MULTIPLE_SET, TARGET_STRING_SET): Delete.
5618 (TARGET_SWITCHES): Delete references to *_SET flags.
5619
abd2dd6d
JH
5620Wed Dec 25 20:30:53 CET 2002 Jan Hubicka <jh@suse.cz>
5621
5622 * i386.md (memory attribute): Fix setcc attribute.
5623
d55d8fc7
KH
56242002-12-25 Kazu Hirata <kazu@cs.umass.edu>
5625
5626 * output.h: Fix comment typos.
5627 * predict.c: Likewise.
5628 * print-tree.c: Likewise.
5629 * profile.c: Likewise.
5630 * ra-build.c: Likewise.
5631 * ra-colorize.c: Likewise.
5632 * ra-debug.c: Likewise.
5633 * ra-rewrite.c: Likewise.
5634 * ra.c: Likewise.
5635 * ra.h: Likewise.
5636 * real.c: Likewise.
5637 * recog.c: Likewise.
5638 * reg-stack.c: Likewise.
5639 * regclass.c: Likewise.
5640
7a770d8b
KH
56412002-12-25 Kazu Hirata <kazu@cs.umass.edu>
5642
5643 * config/h8300/h8300.c (print_operand_address): Do not negate
5644 a negative number when printing one.
5645
7d6ac401
KH
56462002-12-25 Kazu Hirata <kazu@cs.umass.edu>
5647
5648 * config/h8300/h8300-protos.h: Add prototypes for
5649 output_plussi, compute_plussi_length, and compute_plussi_cc.
5650 * config/h8300/h8300.c (output_plussi): New.
5651 (compute_plussi_length): Likewise.
5652 (compute_plussi_cc): Likewise.
5653 * config/h8300/h8300.md (addsi_h8300h): Call
5654 output_plussi, compute_plussi_length, and compute_plussi_cc.
5655
871d6a01
KH
56562002-12-24 Kazu Hirata <kazu@cs.umass.edu>
5657
5658 * config/h8300/h8300.md (two peepholes): Use match_dup instead
5659 of match_operand in the new patterns.
5660
4fbf9d4a
JM
56612002-12-24 Joseph S. Myers <jsm@polyomino.org.uk>
5662
5663 * doc/include/texinfo.tex: Update to version 2002-11-25.11.
5664
8601608f
NS
56652002-12-24 Nathan Sidwell <nathan@codesourcery.com>
5666
5667 * configure.in (enable-coverage): Add SELF_COVERAGE.
5668 * profile.c (end_branch_prob): Use SELF_COVERAGE.
5669
c28b4e40
JW
56702002-12-24 Jim Wilson <wilson@redhat.com>
5671
5672 * alias.c (record_set): Handle multi-reg hard registers.
5673
14b493d6
KH
56742002-12-24 Kazu Hirata <kazu@cs.umass.edu>
5675
5676 * regmove.c: Fix comment typos.
5677 * reload.c: Likewise.
5678 * reload1.c: Likewise.
5679 * resource.c: Likewise.
5680 * rtl.def: Likewise.
5681 * rtl.h: Likewise.
5682 * rtlanal.c: Likewise.
5683 * sched-deps.c: Likewise.
5684 * sched-rgn.c: Likewise.
5685 * sibcall.c: Likewise.
5686 * simplify-rtx.c: Likewise.
5687 * ssa-ccp.c: Likewise.
5688 * ssa.c: Likewise.
5689 * stmt.c: Likewise.
5690 * stor-layout.c: Likewise.
5691 * system.h: Likewise.
5692 * tlink.c: Likewise.
5693 * toplev.c: Likewise.
5694 * tracer.c: Likewise.
5695 * tree-inline.c: Likewise.
5696 * tree.c: Likewise.
5697 * tree.h: Likewise.
5698 * unroll.c: Likewise.
5699 * varasm.c: Likewise.
5700
c9693e96
LH
57012002-12-23 Larin Hennessy <larin@science.oregonstate.edu>
5702
5703 * doc/install.texi: Remove i386-*-isc, i860-*-bsd,
5704 m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries.
5705 * doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex,
5706 DG/UX entries.
5707 * doc/md.texi: Remove AMD 29K entries.
5708 * doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS
5709 1.38.1, NewsOS, RT PC, WE32K entries.
5710
a67ed43f
AH
57112002-12-23 Aldy Hernandez <aldyh@redhat.com>
5712
44f9a8e4
ZW
5713 PR/8763
5714 * config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector.
5715 (altivec_vspltisw_v4sf): Name pattern.
5716 (altivec_vslw_v4sf): New pattern.
a67ed43f 5717
46d40353
JM
57182002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
5719
5720 * doc/include/gcc-common.texi: Define DEVELOPMENT.
5721
8dc65b6e
MM
57222002-12-23 Mark Mitchell <mark@codesourcery.com>
5723
5724 * stor-layout.c (update_alignment_for_field): Correct handling of
5725 unnamed bitfields on PCC_BITFIELD_TYPE_MATTERS machines.
5726 * doc/tm.texi (PCC_BITFIELD_TYPE_MATTERS): Note that an unnamed
5727 bitfield does not affect alignment.
5728
7c02ae17
DE
57292002-12-23 David Edelsohn <edelsohn@gnu.org>
5730
5731 * expr.c (expand_assignment): Apply special treatment to
5732 ARRAY_TYPE.
5733
317d21e9
KH
57342002-12-23 Kazu Hirata <kazu@cs.umass.edu>
5735
5736 * config/h8300/h8300-protos.h: Update the prototype of
5737 expand_a_shift.
5738 * config/h8300/h8300.c (expand_a_shift): Change the return
5739 type to void.
5740 * config/h8300/h8300.md: Update all the uses of
5741 expand_a_shift.
5742
0c685f12
NS
57432002-12-22 Nathan Sidwell <nathan@codesourcery.com>
5744
5745 * tree.c (save_expr): Allow either side of a dyadic operand to be
5746 constant.
5747
5748 * doc/portability.texi (portability): Update portability goals.
5749
ade53a50
KH
57502002-12-23 Kazu Hirata <kazu@cs.umass.edu>
5751
5752 * config/h8300/h8300.c (output_a_shift): Remove unused code.
5753
d0ff2db5
MM
57542002-12-22 Mark Mitchell <mark@codesourcery.com>
5755
d317855e
MM
5756 * stor-layout.c (update_alignment_for_field): Guard use of
5757 ADJUST_FIELD_ALIGN with #ifdef.
5758
d0ff2db5
MM
5759 * stor-layout.c (update_alignment_for_field): Use
5760 ADJUST_FIELD_ALIGN when computing the alignment for a zero-width
5761 bitfield when PCC_BITFIELD_TYPE_MATTERS.
5762
96e13905
KH
57632002-12-22 Kazu Hirata <kazu@cs.umass.edu>
5764
5765 * genautomata.c: Fix comment typos.
5766
66b4e478
JH
5767Sun Dec 22 18:23:44 CET 2002 Jan Hubicka <jh@suse.cz>
5768
5769 * params.def (tracer-min-branch-probability-feedback): Fix default.
5770 * final.c (compute_alignments): Use profile to avoid code bloat.
5771
a7612343
KH
57722002-12-22 Kazu Hirata <kazu@cs.umass.edu>
5773
5774 * config/h8300/h8300.c (get_shift_alg): Make shift insn
5775 sequences end with a valid cc0 whenever possible.
5776
8fb52ad1
KH
57772002-12-22 Kazu Hirata <kazu@cs.umass.edu>
5778
5779 * config/h8300/h8300.md (negsf2): New.
5780 (*negsf2_h8300): Likewise.
5781 (*negsf2_h8300hs): Likewise.
5782
2a77af27
GK
57832002-12-21 Geoffrey Keating <geoffk@apple.com>
5784
5785 * integrate.c (output_inline_function): Don't hold private
5786 pointers to 'struct function' over GC calls.
5787
5040eb00
KK
57882002-12-21 Kaz kojima <kkojima@gcc.gnu.org>
5789
5790 * config/sh/lib1funcs.asm (__fpscr_values): Conditionalize with
5791 NO_FPSCR_VALUES.
5792 * config/sh/t-linux (TARGET_LIBGCC2_CFLAGS): Add -DNO_FPSCR_VALUES.
5793
5d750136
KH
57942002-12-21 Kazu Hirata <kazu@cs.umass.edu>
5795
5796 * config/h8300/h8300.md (zero_extendqisi2): Correct the
5797 length.
5798
f7e42925
KH
57992002-12-21 Kazu Hirata <kazu@cs.umass.edu>
5800
5801 * config/h8300/h8300.md (*zero_extendqihi2_h8300): Make the
5802 second alternative "#".
5803 (*zero_extendqihi2_h8300hs): Likewise.
5804 (a define_split): New.
5805
3cee1a78
KH
58062002-12-21 Kazu Hirata <kazu@cs.umass.edu>
5807
5808 * config/h8300/h8300-protos.h: Update the prototype for
5809 split_adds_subs.
5810 Add prototypes for const_le_2_operand and const_le_6_operand.
5811 * config/h8300/h8300.c (split_adds_subs): Add an argument to
5812 specify whether inc/dec should be used when possible.
5813 (const_le_2_operand): New.
5814 (const_le_6_operand): Likewise.
5815 * config/h8300/h8300.md (two peepholes): New.
5816
40b982a9
KH
58172002-12-21 Kazu Hirata <kazu@cs.umass.edu>
5818
5819 * config/fr30/fr30.md: Fix a comment typo.
5820 * config/i386/i386.c: Likewise.
5821 * config/ip2k/ip2k.h: Likewise.
5822
60954572
JW
58232002-12-20 Jim Wilson <wilson@redhat.com>
5824
5825 * config/rs6000/spe.h (__ev_subifw): Reverse arguments.
5826 (__ev_subw, __ev_subiw): New.
5827 (ev_mwlssf, ev_mwlsmf, ev_mwlssfa, ev_mwlsmfa, ev_mwlssfaaw,
5828 ev_mwlsmfaaw, ev_mwlssfanw, ev_mwlsmfanw): Delete.
5829
11f43127
JDA
58302002-12-20 John David Anglin <dave.anglin@nrc.gc.ca>
5831
5832 * pa-linux.h (TARGET_HAS_STUBS_AND_ELF_SECTIONS): Delete define.
5833 * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete define.
5834 * pa.c (pa_function_ok_for_sibcall): Allow non indirect sibcalls on
5835 TARGET_ELF32. Add comment on sibcall issues for TARGET_64BIT.
5836
f9d2de4d
KH
58372002-12-20 Kazu Hirata <kazu@cs.umass.edu>
5838
5839 * config/h8300/h8300-protos.h: Add prototypes for
5840 incdec_operand and eqne_operator.
5841 * config/h8300/h8300.c (incdec_operand): New.
5842 (eqne_operator): Likewise.
5843 * config/h8300/h8300.h (CONST_OK_FOR_M): Likewise.
5844 (CONST_OK_FOR_O): Likewise.
5845 (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_M and
5846 CONST_OK_FOR_O.
5847 * config/h8300/h8300.md (UNSPEC_INCDEC): New.
5848 (addhi3_incdec): New.
5849 (addsi3_incdec): Likewise.
5850 (two peepholes): Likewise.
5851
b47900aa
KH
58522002-12-20 Kazu Hirata <kazu@cs.umass.edu>
5853
5854 * config/h8300/h8300.c (dosize): Remove warnings.
5855 (print_operand): Likewise.
5856
3094247f
RH
58572002-12-20 Richard Henderson <rth@redhat.com>
5858
5859 * config/alpha/alpha.c (decl_has_samegp): New.
5860 (samegp_function_operand): Use it. Rename from
5861 current_file_function_operand.
5862 (direct_call_operand): Handle -msmall-text via symbol->jump.
5863 (tls_symbolic_operand_1): Use T for tprel64, t for smaller tprel.
5864 (tls_symbolic_operand_type): Likewise.
5865 (alpha_encode_section_info): Likewise. Handle -msmall-text.
5866 (alpha_function_ok_for_sibcall): Use decl_has_samegp.
5867 (alpha_end_function): Set symbol->jump for functions defined in
5868 the text section.
5869 * config/alpha/alpha-protos.h: Update.
5870 * config/alpha/alpha.h (MASK_SMALL_TEXT, TARGET_SMALL_TEXT): New.
5871 (TARGET_SWITCHES): Add -msmall-text and -mlarge-text.
5872 (PREDICATE_CODES): Update.
c14bc6db 5873 * config/alpha/alpha.md (call patterns): Update for
3094247f
RH
5874 samegp_function_operand rename; use !samegp reloc if
5875 TARGET_EXPLICIT_RELOCS.
5876 * doc/invoke.text: Document -msmall-text and -mlarge-text.
5877
8056c5f2
ID
58782002-12-20 Ian Dall <ian@sibyl.beware.dropbear.id.au>
5879
44f9a8e4
ZW
5880 * config/ns32k/ns32k.md (movdi): Use "l" instead of "f" to match
5881 all registers capable of holding a double float.
5882 (*rcond): change name of "reverse branch" insns to
5883 something more meaningful.
5884 (*rbgt, *rblt, *rbge, *rble): Reverse branches to handle IEEE
5885 comparisons properly.
5886 (*ffs): Change operand 0 from write to read-modify-write.
5887 (*ffsssi2): Drop constraints from define_expand.
8056c5f2 5888
44f9a8e4
ZW
5889 * config/ns32k/ns32k.h (STORE_RATIO, STORE_BY_PIECES): Avoid using
5890 MOVE_RATIO as default for store operations.
8056c5f2 5891
44f9a8e4
ZW
5892 * config/ns32k/ns32k.h (enum reg_class, REG_CLASS_NAMES): Add
5893 LONG_REGS class.
5894 (CANNOT_CHANGE_MODE_CLASS): Can't subreg LONG_REGS.
5895 (GO_IF_LEGITIMATE_ADDRESS): Remove spurious abort().
5896 * config/ns32k/ns32k.c (regclass_map): Add LONG_REGS class.
8056c5f2 5897
44f9a8e4
ZW
5898 * config/ns32k/STATUS: New File
5899 * config/ns32k/NOTES: New file.
8056c5f2 5900
1fec52be 59012002-12-20 Hartmut Penner <hpenner@de.ibm.com>
c14bc6db 5902
21ff35fb 5903 * doc/invoke.texi: Document -mzarch, -mesa, -mcpu= and -march=
1fec52be 5904 option for S/390 and zSeries.
44f9a8e4
ZW
5905 * config/s390/s390.c (s390_cpu, s390_cpu_string, s390_arch,
5906 s390_arch_string): New variables.
5907 (override_options): Checking for options and setting of
1fec52be 5908 appropriate target_flags, cpu and arch flags.
44f9a8e4
ZW
5909 * config/s390/s390.h: (processor_type): New enum.
5910 (TARGET_SWITCHES): New switches -mesa/zarch.
5911 * config/s390/s390.md: New attribute 'cpu'.
1fec52be 5912
5bdc5878
KH
59132002-12-19 Kazu Hirata <kazu@cs.umass.edu>
5914
5915 * c-pretty-print.h: Fix comment typos.
5916 * integrate.c: Likewise.
5917 * varasm.c: Likewise.
5918 * config/c4x/c4x.h: Likewise.
5919 * config/c4x/c4x.md: Likewise.
5920 * config/fr30/fr30.md: Likewise.
5921 * config/frv/frv.c: Likewise.
5922 * config/h8300/h8300.c: Likewise.
5923 * config/i386/i386.c: Likewise.
5924 * config/i386/i386.h: Likewise.
5925 * config/ia64/ia64.c: Likewise.
5926 * config/ia64/ia64.h: Likewise.
5927 * config/ip2k/ip2k.md: Likewise.
5928 * config/m68hc11/m68hc11-crt0.S: Likewise.
5929 * config/m68hc11/m68hc11.h: Likewise.
5930 * config/m68hc11/m68hc11.md: Likewise.
5931 * config/m68hc11/m68hc12.h: Likewise.
5932 * config/mcore/mcore.md: Likewise.
5933 * config/mips/mips.c: Likewise.
5934 * config/mips/mips.md: Likewise.
5935 * config/mmix/mmix-modes.def: Likewise.
5936 * config/pa/pa.c: Likewise.
5937 * config/rs6000/rs6000.c: Likewise.
5938 * config/rs6000/rs6000.h: Likewise.
5939 * config/rs6000/rs6000.md: Likewise.
5940
539dbd15
KH
59412002-12-19 Kazu Hirata <kazu@cs.umass.edu>
5942
5943 * config/h8300/h8300.md (output_a_shift): Clean up the code to
5944 output shifts using rotation.
5945
e505be85
ZD
59462002-12-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
5947
5948 * flow.c (allocate_reg_life_data): Reset REG_FREQ.
5949
191ff852
KH
59502002-12-19 Kazu Hirata <kazu@cs.umass.edu>
5951
5952 * config/h8300/h8300.md (pushqi_h8300): Don't push the stack
5953 pointer.
5954 (pushqi_h8300hs): Likewise.
5955 (pushhi_h8300): Likewise.
5956 (pushhi_h8300hs): Likewise.
5957
b2dfd40f
R
5958Thu Dec 19 23:44:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
5959
5960 * sched-rgn.c (init_regions): Update comment.
5961
310b9b1d
DE
59622002-12-19 David Edelsohn <edelsohn@gnu.org>
5963
5964 * config/rs6000/rs6000.md (define_attr type): Remove altivec.
5965 * config/rs6000/altivec.md (movv4si_internal): Set correct instruction
5966 attributes.
5967 (movv8hi_internal,movv16qi_internal,movv4sf_internal): Same.
5968 (get_vrsave_internal,set_vrsave_internal): Same.
5969 (altivec_vspltisb,altivec_vspltish,altivec_vspltisw): Same.
5970 (absv16qi2,absv8hi2,absv4si2,absv4sf2): Same
5971 (altivec_abss_v16qi,altivec_abss_v8hi,altivec_abss_v4si): Same.
5972
e91f04de
CH
59732002-12-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
5974 Danny Smith <dannysmith@users.sourceforge.net>
5975 Eric Kohl <ekohl@rz-online.de>
5976
5977 * config/i386/i386.c (ix86_handle_cdecl_attribute): Check for
5978 attributes incompatible with fastcall attribute.
5979 (ix86_handle_regparm_attribute): Likewise.
5980
5981 * config/i386/i386.c (ix86_comp_type_attributes): Check for mismatched
5982 fastcall types.
5983
5984 * config/i386/cygwin.h (TARGET_OS_CPP_BUILTINS): Add fastcall
5985 attributes.
5986 (ASM_OUTPUT_LABELREF): Define as i386_pe_output_labelref.
5987 * config/i386/i386-protos.h (i386_pe_output_labelref): Declare.
5988 * config/i386/winnt.c (i386_pe_mark_dllimport). Add __imp_ prefix in
5989 i386_pe_output_labelref rather than here.
5990 (gen_fastcall_suffix): New function. Decorates a label name with the
5991 fastcall prefix (@) and the stdcall suffix.
5992 (i386_pe_encode_section_info): Call gen_fastcall_suffix() if a symbol
5993 has a fastcall attribute.
5994 (i386_pe_output_labelref): New function. Outputs a label reference.
5995 * config/i386/i386.c (ix86_attribute_table): Accept 'fastcall' as a
5996 valid attribute.
5997 (ix86_return_pops_args): Fastcall functions pop the stack.
5998 (init_cumulative_args): Reserve registers ECX and EDX if function has
5999 fastcall attribute.
6000 (function_arg): Use registers ECX and EDX if function has fastcall
6001 attribute.
6002 * config/i386/i386.h (CUMULATIVE_ARGS): Add fastcall attribute flag.
6003 (DLL_IMPORT_EXPORT_PREFIX): Redefine as '#'.
6004 (FASTCALL_PREFIX): Define as '@'.
6005 * config/i386/mingw32.h (TARGET_OS_CPP_BUILTINS): Add fastcall
6006 attributes.
6007 * doc/extend.texi: Add documentation of fastcall attribute.
6008
61138bb6
NN
60092002-12-19 Nathanael Nerode <neroden@gcc.gnu.org>
6010
c14bc6db 6011 * configure.in: FORBUILD when build!=host changed from
61138bb6
NN
6012 ../$build-alias to ../build-$build_alias to match change made
6013 in top directory.
6014 * configure: Regenerated.
6015
039baf9e
EB
60162002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
6017
6018 PR optimization/8988
6019 * loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning
6020 the biv when eliminating.
6021
ee8acf89
DP
60222002-12-19 Devang Patel <dpatel@apple.com>
6023 * gcc.c (struct default_compiler): Recognizes input file name with
6024 .CPP extension as C++ source files
6025 * cp/lang-spec.h: Same
6026 * doc/invoke.texi: Add documentation for .CPP support.
c14bc6db 6027
598119bb
AH
60282002-12-19 Aldy Hernandez <aldyh@redhat.com>
6029
6030 PR 8553
6031 * config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered
6032 registers.
6033 ("absv16qi2"): Same.
6034 ("absv4si2"): Same.
6035 ("absv4sf2"): Same.
6036 ("altivec_abss_v16qi"): Same.
6037 ("altivec_abss_v8hi"): Same.
6038 ("altivec_abss_v4si"): Same.
6039
3af97654
UW
60402002-12-19 Ulrich Weigand <uweigand@de.ibm.com>
6041
6042 * config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly",
6043 "*tstqiCCT", "*tstqiCCT_cconly"): New insns.
6044
e54b4cae
EB
60452002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
6046
6047 PR target/8340
6048 * stmt.c (expand_asm_operands): Produce an error when
6049 the PIC register is clobbered.
6050
7f22efe1
DB
60512002-12-18 Daniel Berlin <dberlin@dberlin.org>
6052
6053 * Makefile.in (OBJS): Add alloc-pool.o
6054 (alloc-pool.o): New object.
6055
6056 * alloc-pool.c: New file.
6057 * alloc-pool.h: New file.
6058
f1d5271a 60592002-12-18 Loren James Rittle <ljrittle@acm.org>
5a0ba8c9
LJR
6060
6061 * gcc.c (validate_switches): Robustify against skipping past '\0'.
6062
064b6c70
GK
60632002-12-18 Geoffrey Keating <geoffk@apple.com>
6064
6065 * config.gcc: Set extra_objs in the generic Darwin rule,
6066 not in the machine-specific rules.
6067
272d0bee
KH
60682002-12-19 Kazu Hirata <kazu@cs.umass.edu>
6069
6070 * ChangeLog: Follow spelling conventions.
6071 * ChangeLog.2: Likewise.
6072 * ChangeLog.4: Likewise.
6073 * ChangeLog.5: Likewise.
6074 * cppexp.c: Likewise.
6075 * df.c: Likewise.
6076 * gcov.c: Likewise.
6077 * gengtype.c: Likewise.
6078 * reload1.c: Likewise.
6079 * sched-rgn.c: Likewise.
6080 * stmt.c: Likewise.
6081 * stor-layout.c: Likewise.
6082 * timevar.c: Likewise.
6083 * toplev.c: Likewise.
6084 * tree.h: Likewise.
6085 * varasm.c: Likewise.
6086 * config/fr30/fr30.md: Likewise.
6087 * config/i386/i386.c: Likewise.
6088 * config/ia64/ia64.c: Likewise.
6089 * config/pa/pa.c: Likewise.
6090
358ecb10
RS
60912002-12-18 Roger Sayle <roger@eyesopen.com>
6092
6093 * basic-block.h (flow_bb_inside_loop_p): Correct prototype.
6094
d486dec6
AH
60952002-12-18 Aldy Hernandez <aldyh@redhat.com>
6096
7f04df0d 6097 PR 8551
d486dec6
AH
6098 * config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in
6099 macro.
6100 (vec_cmplt C++ functions): Reverse arguments.
6101
358ecb10 61022002-12-18 Geoffrey Keating <geoffk@apple.com>
892aebc9 6103
40b4cdbf
GK
6104 * config/rs6000/t-rs6000: Move contents to t-fprules,
6105 add rules for dependencies of rs6000.o and to build rs6000-c.o
6106 * config/rs6000/t-fprules: New file from t-rs6000.
6107 * config/rs6000/t-beos: Remove soft-fp rules.
6108 * config/rs6000/t-ppccomm: Likewise.
6109 * config/rs6000/t-newas: Likewise.
6110 * config/rs6000/t-rs6000-c-rule: Delete.
6111 * config.gcc: Use t-fprules for rs6000/ ports when appropriate.
6112 Use t-rs6000 for all rs6000/ ports instead of t-rs6000-c-rule.
6113 Create generic Darwin rules.
6114
892aebc9
GK
6115 * gengenrtl.c (gencode): Delete unnecessary rtl_obstack declaration.
6116
9d303046
DE
61172002-12-18 Doug Evans <dje@sebabeach.org>
6118
6119 * m32r/m32r.c (addr24_operand): Fix arg to CONSTANT_POOL_ADDRESS_P
6120 and LIT_NAME_P.
6121 (move_src_operand): Remove compile-time warning.
6122 * m32r/m32r.h (ROUND_ADVANCE_ARG): Ditto.
6123
80d83b16
JM
61242002-12-18 Jason Merrill <jason@redhat.com>
6125
6126 * unwind-dw2-fde.c (frame_downheap): Split out from...
6127 (frame_heapsort): Here.
6128
f32ac70d
JM
61292002-12-17 Jason Merrill <jason@redhat.com>
6130
9ec22713
JM
6131 * tree.c (make_node): Don't set TREE_TYPE on 's' class nodes.
6132 (build1): Always set TREE_SIDE_EFFECTS on 's' class nodes.
6133
38540594 6134 * gcc.c (do_spec_1) ['W']: End any pending argument from the braces.
a3a0177e 6135
f32ac70d
JM
6136 * calls.c (expand_call): Don't try to be clever about expanding
6137 the return slot address.
6138
d5db5b97
KK
61392002-12-18 Kaz kojima <kkojima@gcc.gnu.org>
6140
6141 * config/sh/linux.h (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC):
6142 Define.
6143
e489a31f
JM
61442002-12-17 Jason Merrill <jason@redhat.com>
6145
6146 * genmultilib: Use 'cd ./foo'.
6147
5b8f02c6
KH
61482002-12-17 Kazu Hirata <kazu@cs.umass.edu>
6149
6150 * doc/c-tree.texi: Restore deliberate spelling mistakes.
6151
c0478a66
KH
61522002-12-17 Kazu Hirata <kazu@cs.umass.edu>
6153
6154 * doc/c-tree.texi: Fix typos and follow spelling conventions.
6155 * doc/cpp.texi: Likewise.
6156 * doc/extend.texi: Likewise.
6157 * doc/gty.texi: Likewise.
6158 * doc/install.texi: Likewise.
6159 * doc/invoke.texi: Likewise.
6160 * doc/md.texi: Likewise.
6161 * doc/passes.texi: Likewise.
6162 * doc/rtl.texi: Likewise.
6163 * doc/sourcebuild.texi: Likewise.
6164 * doc/tm.texi: Likewise.
6165
3364c33b
JQ
61662002-12-17 Jerry Quinn <jlquinn@optonline.net>
6167
6168 * doc/invoke.texi: Minor spelling and grammar fixes.
6169
d65f135a
UW
61702002-12-17 Ulrich Weigand <uweigand@de.ibm.com>
6171
6172 * config/s390/s390.c (s390_output_constant_pool): Replace
6173 ASM_OUTPUT_INTERNAL_LABEL by (*targetm.asm_out.internal_label).
6174
4b207444
JH
6175Tue Dec 17 09:47:57 CET 2002 Jan Hubicka <jh@suse.cz>
6176
6177 * convert.c (convert_to_real): Disable function transformation for
6178 now.
6179
cde26509
GK
61802002-12-16 Geoffrey Keating <geoffk@apple.com>
6181
6182 * gcc.c (handle_braces): Allow '@' as a switch name.
6183
9f175208
JM
61842002-12-16 Jason Merrill <jason@redhat.com>
6185
e489a31f
JM
6186 * calls.c (expand_call): Handle CALL_EXPR_HAS_RETURN_SLOT_ADDR
6187 with special struct-return ABIs.
6188
9f175208
JM
6189 * c-semantics.c (add_scope_stmt): Abort if the end SCOPE_STMT
6190 doesn't match the begin SCOPE_STMT in partialness.
6191
7a975113
GK
61922002-12-16 Geoffrey Keating <geoffk@apple.com>
6193
c79d892f
GK
6194 * genmultilib: Create temporary files in unique subdirectory.
6195
7a975113
GK
6196 * gcc.c (validate_switches): Allow '@' as a switch name.
6197
8483c7e0
LR
61982002-12-16 Loren J. Rittle <ljrittle@acm.org>
6199
6200 * Makefile.in (gcov-iov.h): Improve portability.
6201
9ee7999f
JH
6202Mon Dec 16 23:39:19 CET 2002 Jan Hubicka <jh@suse.cz>
6203
6204 * mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Do not use qpword on API_N32/not
6205 gas
6206 * mips.md (tablejump insn): Likewise.
6207
7a04c51b
MM
62082002-12-16 Mark Mitchell <mark@codesourcery.com>
6209
6210 * doc/include/gcc-common.texi: Change version number to 3.4.
6211
27eaa708
BK
62122002-12-16 Bruce Korb <bkorb@gnu.org>
6213
6214 * fixinc/fixlib.h: add: #include <signal.h>
6215 * fixinc/fixincl.c: remove: #include <signal.h>
6216
b51dc045
R
6217Mon Dec 16 17:20:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
6218
6219 * sh.h (EXTRA_CONSTRAINT_Z): New macro.
6220 (EXTRA_CONSTRAINT): Use it.
6221 * sh.md (anddi3): Use 'Z' constraint for alternative 2.
6222
4977bab6
ZW
62232002-12-15 Zack Weinberg <zack@codesourcery.com>
6224
6225 * config.gcc (need_64bit_hwint): New variable.
6226 (alpha*-*-*, x86_64-*-*, ia64-*-*, mips*-*-*, powerpc*-*-*,
6227 mmix-knuth-mmixware, rs6000*-*-*, sparc64*-*-*, s390*-*-*,
6228 sh*-*-*, hppa*64*-*-linux, parisc*64*-*-linux, hppa*64*-*-hpux11*,
6229 sparcv9-*-solaris2*, sparc*-*-solaris2.[789], ultrasparc-*-freebsd*):
6230 Set it.
6231 (powerpc*-*-darwin*): Unset it.
6232 (alpha-*-interix, alpha64-dec-*vms*, i?86-*-interix3*,
6233 i?86-*-interix*, sparc64-*-openbsd*): Remove references to
6234 deleted/nonexistent xm-*.h headers.
6235 * configure.in: AC_DEFINE NEED_64BIT_HOST_WIDE_INT if the
6236 target set need_64bit_hwint in config.gcc.
6237 * configure, config.in: Regenerate.
6238
6239 * hwint.h: Overhaul. Don't bother trying int for
6240 HOST_WIDE_INT. Do try __int64 if long is not enough. Base
6241 decision to force 64-bit HOST_WIDE_INT on
6242 NEED_64BIT_HOST_WIDE_INT, not (MAX_)LONG_TYPE_SIZE which is
6243 not visible at this point. Don't allow prior definition of
6244 any macro defined by this file.
6245
6246 * config/alpha/xm-vms.h: Don't define HOST_WIDE_INT or
6247 HOST_BITS_PER_WIDE_INT.
6248 * config/c4x/c4x.h: Adjust redefinition of
6249 HOST_WIDE_INT_PRINT_HEX to match changes to hwint.h.
6250 * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms64.h,
6251 config/i386/xm-i386-interix.h: Delete file.
6252
62532002-12-14 Rodney Brown <rbrown64@csc.com.au>
6254 John David Anglin <dave@hiauly1.hia.nrc.ca>
6255
6256 * pa.c (output_millicode_call): Convert ASM_OUTPUT_INTERNAL_LABEL.
6257 * pa64-hpux.h (ASM_OUTPUT_INTERNAL_LABEL): Delete define.
6258
62592002-12-14 Zack Weinberg <zack@codesourcery.com>
6260
6261 * mkconfig.sh: Correct comment. Add copyright boilerplate.
6262
62632002-12-14 Zack Weinberg <zack@codesourcery.com>
6264
6265 * config/t-darwin, config/arm/t-pe, config/arm/t-strongarm-pe,
6266 config/c4x/t-c4x, config/i370/t-i370, config/i386/t-cygwin,
6267 config/i386/t-interix, config/i960/t-960bare, config/ia64/t-ia64,
6268 config/rs6000/t-rs6000-c-rule, config/sparc/t-sol2,
6269 config/v850/t-v850: Correct dependencies and normalize
6270 compilation commands for files that include coretypes.h and tm.h.
6271
6272 * config/sparc/gmon-sol2.c: Include tconfig.h and tsystem.h,
6273 not config.h and system.h.
6274
6275Sat Dec 14 20:43:41 CET 2002 Jan Hubicka <jh@suse.cz>
6276
6277 * i386.c (flags_reg_operand): New function.
6278 * i386.h (PREDICATE_CODES): Add flags_reg_operand.
6279 * i386.md (cmov splitter, movqicc): Use new predicate.
6280
6281Sat Dec 14 17:03:17 CET 2002 Jan Hubicka <jh@suse.cz>
6282
6283 * i386.md (movqicc splitter): Fix template.
6284
62852002-12-13 Jason Merrill <jason@redhat.com>
6286
6287 * tree.h (CALL_EXPR_HAS_RETURN_SLOT_ADDR): New macro.
6288 * calls.c (expand_call): Handle it.
6289 * tree-inline.c (struct inline_data): Remove target_exprs field.
6290 (optimize_inline_calls): Don't initialize it.
6291 (expand_call_inline): Don't modify it. Handle
6292 CALL_EXPR_HAS_RETURN_SLOT_ADDR.
6293 (declare_return_variable): Take return slot addr.
6294 * langhooks.h (copy_res_decl_for_inlining): Change target_exprs parm
6295 to return_slot_addr.
6296 * langhooks-def.h, langhooks.c: Adjust.
6297 * explow.c (maybe_set_unchanging): Don't set RTX_UNCHANGING_P for
6298 a decl with no DECL_INITIAL.
6299
6300 * expr.c (expand_expr): Don't discard the target of a call which
6301 returns in memory.
6302
63032002-12-13 Neil Booth <neil@daikokuya.co.uk>
6304
6305 * cppinit.c (path_include): Take an environment variable name.
6306 Tidy up.
6307 (init_standard_includes): Simplify environment handling, and
6308 move to ...
6309 (cpp_read_main_file): ...here as -nostdinc should not affect
6310 environment variable paths.
6311
f5f9008b
JDA
63122002-12-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
6313
6314 * pa.c (output_millicode_call): Correct typo.
6315 (output_call): Likewise.
6316
a58be199
AO
6317Fri Dec 13 21:07:18 2002 Alexandre Oliva <aoliva@redhat.com>
6318
6319 * config/mn10300/mn10300.c (print_operand) <case N>: Check
6320 operand's range. Print value directly, without aid from
6321 output_address.
6322 <case U>: New.
6323 <case S>: Make sure argument to fprintf has the right type.
6324 * config/mn10300/mn10300.h (OK_FOR_T): New macro.
6325 (EXTRA_CONSTRAINT): Adjust.
6326 * config/mn10300/mn10300.md: Add new all-QImode pattern for
6327 bclr. Use %U for immediate operands of bset and bclr.
6328 (iorqi3): New expand, with insns for AM33 and mn10300.
6329
d9da94a1
R
6330Fri Dec 13 16:02:27 2002 J"orn Rennecke <joern.rennecke@superh.com>
6331
6332 * sh.c (sh_register_operand): New function.
6333 (prepare_move_operands): Use it.
6334 * sh.h (PREDICATE_CODES): Add entry for sh_register_operand.
6335 * sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0.
6336 (movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise.
6337 (movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise.
6338 (movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise.
6339 (movv2si_i): Likewise.
6340
580fb356
JW
63412002-12-13 Jim Wilson <wilson@redhat.com>
6342
6343 * doc/extend.texi (Complex Numbers): Update info on debug info.
6344
697d8028
KH
63452002-12-13 Kazu Hirata <kazu@cs.umass.edu>
6346
6347 * config/h8300/h8300.md (addhi3_h8300): Remove the last
6348 alternative.
6349
4977bab6
ZW
63502002-12-12 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
6351
6352 * hooks.h (hook_tree_tree_bool_false): Declare
6353 hook_bool_tree_tree_false instead.
6354
dd05b1b4 63552002-12-12 Devang Patel <dpatel@apple.com>
697d8028 6356
dd05b1b4
DP
6357 * doc/invoke.texi: Document Darwin linker options, -bundle
6358 -bind_at_load, -all_load and -arch_errors_fatal
6359
24aacafb
JW
63602002-12-12 Jim Wilson <wilson@redhat.com>
6361
6362 * dbxout.c (dbxout_fptype_value): New.
6363 (dbxout_type, case COMPLEX_TYPE): Call it. Use 'R' instead of 'r'.
6364
09da1532
KH
63652002-12-12 Kazu Hirata <kazu@cs.umass.edu>
6366
6367 * c-decl.c: Fix a comment typo.
6368 * cfg.c: Likewise.
6369 * cfgcleanup.c: Likewise.
6370 * cfglayout.c: Likewise.
6371 * cfgrtl.c: Likewise.
6372 * c-typeck.c: Likewise.
6373 * dominance.c: Likewise.
6374 * dwarf2asm.c: Likewise.
6375 * dwarfout.c: Likewise.
6376 * expmed.c: Likewise.
6377 * expr.c: Likewise.
6378 * final.c: Likewise.
6379 * flow.c: Likewise.
6380 * function.c: Likewise.
6381 * gcc.c: Likewise.
6382 * genautomata.c: Likewise.
6383 * integrate.c: Likewise.
6384 * loop.c: Likewise.
6385 * loop.h: Likewise.
6386 * output.h: Likewise.
6387 * profile.c: Likewise.
6388 * ra.h: Likewise.
6389 * reload1.c: Likewise.
6390 * reload.c: Likewise.
6391 * sched-rgn.c: Likewise.
6392 * stmt.c: Likewise.
6393 * tree.h: Likewise.
6394 * vmsdbgout.c: Likewise.
6395
7930523d
KH
63962002-12-12 Kazu Hirata <kazu@cs.umass.edu>
6397
6398 * config/h8300/h8300.md: Add a new peephole2.
6399
59578c84
KH
64002002-12-12 Kazu Hirata <kazu@cs.umass.edu>
6401
6402 * config/h8300/h8300.md (a peephole2): Accept a constant
6403 that's accepted by CONST_OK_FOR_J.
6404
8cc5359b
KH
64052002-12-12 Kazu Hirata <kazu@cs.umass.edu>
6406
6407 * config/h8300/h8300.h (CONST_OK_FOR_J): New.
6408 (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J.
6409 * config/h8300/h8300.md (*addhi_h8300): Add a new alternative.
6410 (*addhi_h8300hs): Likewise.
6411
ec555f32
R
6412Thu Dec 12 16:24:59 2002 J"orn Rennecke <joern.rennecke@superh.com>
6413
6414 * sh.c (reg_class_from_letter): No longer const. Add 'e' entry.
6415 (sh_register_move_cost): Add clause for SImode fp-fp moves.
6416 Increase cost for moves involving multiple general purpose registers.
6417 * sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to
6418 TARGET_FMOVD.
6419 (HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose
6420 registers, and SImode in fp registers, for ! TARGET_SHMEDIA.
6421 (enum reg_class reg_class_from_letter): No longer const.
6422 (SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG /
6423 REGCLASS_HAS_GENERAL_REG.
6424 Handle SImode moves from/to fp registers.
6425 ! TARGET_SHMEDIA && TARGET_FMOVD.
6426 (SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG.
6427 * sh.md (movsi_ie): Add alternatives to move from / to fp regisyters.
6428
83ebfdc0
AS
64292002-12-12 Andreas Schwab <schwab@suse.de>
6430
6431 * config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last
6432 change and some warnings.
6433
299c5111
KH
64342002-12-12 Kazu Hirata <kazu@cs.umass.edu>
6435
6436 * doc/md.texi (pushm): Fix a typo.
6437
852dff61
AO
64382002-12-12 Alexandre Oliva <aoliva@redhat.com>
6439
6440 * config/mips/mips.c (mips_output_conditional_branch): Support
6441 PIC-safe out-of-range branch and branch-likely.
6442 * config/mips/mips.md (attr length): PIC-safe out-of-range
6443 branches are longer.
6444 ("jump"): Support PIC-safe out-of-range-for-branch jumps. Remove
6445 unused code to support indirect jumps.
6446
4977bab6
ZW
64472002-12-11 Zack Weinberg <zack@codesourcery.com>
6448
6449 * Makefile.in (GTFILES): Add $(host_xm_file_list) and
6450 $(tm_file_list).
6451
64522002-12-11 David Edelsohn <edelsohn@gnu.org>
6453
6454 * config/rs6000/t-rs6000-c-rule: Add coretypes.h $(TM_H) dependencies.
6455
6456Wed Dec 11 15:20:45 CET 2002 Jan Hubicka <jh@suse.cz>
6457
6458 * i386.md (cmove splitters): Avoid creation of unnecesary subregs.
6459
d6567b3a
JDA
64602002-12-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
6461
6462 * pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
6463 (MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
6464 BIGGEST_ALIGNMENT.
6465 (PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
6466 (FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
6467
355bd14f
KH
64682002-12-11 Kazu Hirata <kazu@cs.umass.edu>
6469
6470 * doc/invoke.texi: Correct dump file names.
6471
9a3873b4
SE
64722002-12-09 Steve Ellcey <sje@cup.hp.com>
6473
6474 * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
6475 name to globalize_label or assemble_name.
6476
9a4816af
R
6477Wed Dec 11 20:15:19 2002 J"orn Rennecke <joern.rennecke@superh.com>
6478
6479 * sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
6480 if not TARGET_SHMEDIA.
6481
6482Wed Dec 11 19:05:05 2002 J"orn Rennecke <joern.rennecke@superh.com>
6483
6484 * sh.h (REG_CLASS_HAS_FP_REG): New.
6485 (REGISTER_MOVE_COST) Use it. Put body into a function and
6486 move it into:
6487 * sh.c (sh_register_move_cost).
6488 * sh-protos.h (sh_register_move_cost): Declare.
6489
6490 * sh.c (sh_expand_builtin): Abort for unexpected nop values.
6491 (sh_adjust_cost): Always return a value.
6492
70a72ca4
R
6493Wed Dec 11 18:39:52 2002 J"orn Rennecke <joern.rennecke@superh.com>
6494
6495 * sh.h (REG_CLASS_HAS_GENERAL_REG): New.
6496 (REGISTER_MOVE_COST): Use it.
6497
5d5cd66f
RH
64982002-12-11 Richard Henderson <rth@redhat.com>
6499
6500 * tree.h (MODULE_LOCAL_P): Kill.
6501 * varasm.c (default_binds_local_p_1): Use decl_visibility instead.
6502
68d0a3d2
KH
65032002-12-11 Kazu Hirata <kazu@cs.umass.edu>
6504
6505 * config/h8300/h8300.md (two define_peephole2): New.
6506
722d59a3
KH
65072002-12-11 Kazu Hirata <kazu@cs.umass.edu>
6508
6509 * config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
6510 (CONST_OK_FOR_K): Likewise.
6511 (CONST_OK_FOR_M): Likewise.
6512 (CONST_OK_FOR_LETTER_P): Do not use the above macros.
6513
b3a5a50c
NB
65142002-12-11 Neil Booth <neil@daikokuya.co.uk>
6515
6516 * c-common.c (builtin_define_type_max): Handle unsigned
6517 types too.
6518
4977bab6
ZW
65192002-12-10 David Edelsohn <edelsohn@gnu.org>
6520
6521 * haifa-sched.c (rank_for_schedule): Correct style.
6522
65232002-12-10 Per Bothner <pbothner@apple.com>
6524
6525 * cpplib.h (struct cpp_hashnode): Split a non-portably-signed field
6526 directive_index into an unsigned field and a new is_directive field.
6527 * cppinit.c (mark_named_operators): Update to set new fields.
6528 * cpplex.c (_cpp_lex_direct): Now directive_field is unsigned.
6529 * cpplib.c [_cpp_handle_directive]: Test is_directive field.
6530 No longer need to subtract 1 from directive_index.
6531 (_cpp_init_directives): No longer need to add 1 to directive_index.
6532 * cpptrad.c (scan_out_logical_line): Use is_directive field.
6533
65342002-12-10 Roger Sayle <roger@eyesopen.com>
6535
6536 * builtins.c (fold_builtin): Remove -funsafe-math-optimizations
6537 check for evaluating sqrt of a constant at compile time.
6538 * simplify-rtx.c (simplify_unary_operation): Likewise.
6539
40d81ee4
JJ
65402002-12-10 Janis Johnson <janis187@us.ibm.com>
6541
6542 PR other/8882
6543 * doc/tm.texi (PUSH_ARGS): Remove misplaced line.
6544
48aec0bc 65452002-12-10 Devang Patel <dpatel@appple.com>
40d81ee4 6546
48aec0bc
DP
6547 * config/darwin.h(LINK_SPEC): Add darwin specific linker options.
6548 * doc/invoke.texi: Add new "Darwin Options" section.
4977bab6 6549
0e9f8e82
JW
65502002-12-10 Jim Wilson <wilson@redhat.com>
6551
6552 * rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in
6553 memory.
6554
3e25353e
AH
65552002-12-10 Andrew Haley <aph@redhat.com>
6556
6557 * cse.c (cse_insn): Don't cse past a basic block boundary.
6558
17772b2a
JJ
65592002-12-10 Jakub Jelinek <jakub@redhat.com>
6560
6561 * config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
6562 -shared.
6563 * config/alpha/linux-elf.h (LIB_SPEC): Likewise.
6564 * config/alpha/linux.h (LIB_SPEC): Likewise.
6565 * config/arm/linux-elf.h (LIB_SPEC): Likewise.
6566 * config/pa/pa-linux.h (LIB_SPEC): Likewise.
6567 * config/sparc/linux.h (LIB_SPEC): Likewise.
6568 * config/sparc/linux64.h (LIB_SPEC): Likewise.
6569
63358530
LH
65702002-12-09 Larin Hennessy <larin@science.oregonstate.edu>
6571
6572 * doc/invoke.texi: Document UltraSparc III option.
6573
2e37b0ce
RH
65742002-12-09 Richard Henderson <rth@redhat.com>
6575
6576 * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
6577 __tune_pentium2__ and __tune_pentium3__ as necessary.
6578
3a04ff64
RH
65792002-12-09 Richard Henderson <rth@redhat.com>
6580
6581 * target.h (gcc_target): Add cannot_force_const_mem.
6582 * target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New.
6583 (TARGET_INITIALIZER): Add it.
6584 * varasm.c (force_const_mem): Fail if cannot_force_const_mem.
6585 * expr.c (emit_move_insn): Be prepared for force_const_mem to fail.
6586 * reload1.c (reload): Likewise.
6587 * hooks.c (hook_bool_rtx_false): New.
6588 * hooks.h: Declare it.
6589
6590 * config/i386/i386.c (ix86_cannot_force_const_mem): New.
6591 (TARGET_CANNOT_FORCE_CONST_MEM): New.
6592 (ix86_expand_move): Remove de-const-pooling hack.
6593
a9a4005f
JH
6594Mon Dec 9 21:33:38 CET 2002 Jan Hubicka <jh@suse.cz>
6595
6596 * toplev.c (dump_file): Fix order to match reality.
6597
7ef788f0
GK
65982002-12-08 Geoffrey Keating <geoffk@apple.com>
6599
6600 * config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv.
6601 (store_multiple): Likewise.
6602
3f320b7e
JDA
66032002-12-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
6604
6605 * pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize
6606 function pointers in page 0.
6607
3870df96
SE
66082002-12-09 Steve Ellcey <sje@cup.hp.com>
6609
6610 * config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove
6611 definition
6612 (MEMBER_TYPE_FORCES_BLK): Move.
6613 * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass
6614 aggregate arguments.
6615 (ia64_function_value): Use PARALLEL to return aggregate values.
6616
9ac3e73b
SE
66172002-12-09 Steve Ellcey <sje@cup.hp.com>
6618
6619 * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
6620 * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
6621 * calls.c (store_unaligned_arguments_into_pseudos) Remove
6622 FUNCTION_ARG_REG_LITTLE_ENDIAN.
6623 * stmt.c (expand_return): Ditto.
6624 * expr.c (move_block_from_reg): Ditto.
6625 (copy_blkmode_from_reg): Ditto.
4977bab6 6626 * expmed.c (store_bit_field): Ditto.
9ac3e73b 6627
7f0db92a
SS
66282002-12-09 Svein E. Seldal <Svein.Seldal@solidas.com>
6629
6630 * config.gcc: Added tic4x-* target as an alias to c4x-*
6631
37c66aa6
JH
6632Sun Dec 8 14:57:39 CET 2002 Jan Hubicka <jh@suse.cz>
6633
7ef788f0
GK
6634 * i386.c (ix86_expand_int_movcc): Use force_operand instead of
6635 constructing insn directly.
37c66aa6 6636
4977bab6
ZW
66372002-12-06 Per Bothner <pbothner@apple.com>
6638
6639 * cpplib.h (struct cpp_hashnode): Change field directive_index from
6640 char to an int bit-field, for hosts where char is unsigned.
6641
66422002-12-07 Roger Sayle <roger@eyesopen.com>
6643 Richard Henderson <rth@redhat.com>
6644
6645 * real.c (ieee_extended_motorola_format,
6646 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
6647 ieee_quad_format, vax_d_format, vax_g_format, i370_double_format):
6648 Provide appropriate values for new signbit field.
6649
66502002-12-07 Roger Sayle <roger@eyesopen.com>
6651
6652 * real.h (real_format): Add signbit field.
6653 * real.c (ieee_single_format, ieee_double_format,
6654 ieee_extended_motorola_format, ieee_extended_intel_96_format,
6655 ieee_extended_intel_128_format, ibm_extended_format,
6656 ieee_quad_format, vax_f_format, vax_d_format,
6657 vax_g_format, i370_single_format, i370_double_format,
6658 c4x_single_format, c4x_extended_format, real_internal_format):
6659 Provide suitable signbit value, or -1 to avoid bit twiddling.
6660
6661 * optabs.c (expand_unop): Try implementing negation of
6662 floating point modes by flipping the sign bit.
6663 (expand_abs): Try implementing abs of floating point modes
6664 by clearing the sign bit.
6665
6666Sat Dec 7 22:29:47 CET 2002 Jan Hubicka <jh@suse.cz>
6667
6668 * i386.c (ix86_expand_int_movcc): Use force_operand instead
6669 of constructing insn directly.
6670
2a598b3a
KH
66712002-12-07 Kazu Hirata <kazu@cs.umass.edu>
6672
6673 * config/h8300/h8300.md (*iorhi_shift_8): New.
6674
70899148
BS
66752002-12-06 Bernd Schmidt <bernds@redhat.com>
6676
6677 * doc/invoke.texi: Document FRV port options.
6678 * doc/md.texi: Document FRV register classes.
6679
377dfc82
GP
66802002-12-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
6681
6682 * doc/install.texi (Configuration): Improve description of cases
6683 where `make distclean` may fail; clarify --with-gnu-as; fix grammar.
6684
4977bab6
ZW
66852002-12-06 Per Bothner <pbothner@apple.com>
6686
6687 * cpplib.h (NODE_MACRO_ARG): New flag.
6688 (struct cpp_hashnode): Give _cpp_hashnode_value tag to value union.
6689 Remove value.operator field. Move arg_index field to value union.
6690 (directive_index): Make signed, since also used for C++ operators.
6691 * cppmacro.c (_cpp_save_parameter): Use NODE_MACRO_ARG flag to
6692 check for duplicate parameter. Set NODE_MACRO_ARG flag.
6693 Save node->value, and set node->value.arg_index.
6694 (_cpp_create_definition): For each paramater, restore node->value.
6695 (lex_expansion_token): Use NODE_MACRO_ARG flag, and moved arg_index.
6696 * cpptrad.c (scan_out_logical_line): Likewise.
6697 (scan_out_logical_line): Check for directive > 0.
6698 * cpplib.c (cpp_handle_directive): Likewise.
6699 * cpplex.c (_cpp_lex_direct): Update as value.operator is replaced
6700 by negative of directive_index.
6701 * cppinit.c (mark_named_operators): Likewise.
6702
6703 * hashtable.h (struct ht_identifier): Swap fields, for better packing.
6704
7144b2d8
DD
67052002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com>
6706
6707 * gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has
6708 FPU.
6709 (push): Generate push_fpscr.
6710 (pop): Generate pop_fpscr.
6711 * gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr".
6712 (fpu_switch): Add alternative to push fpscr. Enable for TARGET_SH3E.
6713
aa06e8f5
R
6714Fri Dec 6 19:36:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
6715
6716 * sh.c (dump_table): DImode pool constants need only 32 bit alignment.
6717 DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
6718
0113c3c0
R
6719Fri Dec 6 19:17:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
6720
6721 * sh.md (movdi_i): Name. Remove inappropriate comment.
6722
8d6b008d
R
6723Fri Dec 6 15:44:46 2002 J"orn Rennecke <joern.rennecke@superh.com>
6724 Merged from basic improvements branch (excerpt):
6725
6726 2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
6727 * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
6728
61f6c84f
JJ
67292002-12-06 Jakub Jelinek <jakub@redhat.com>
6730
6731 * expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place.
6732
4977bab6
ZW
6733Thu Dec 5 16:58:25 CET 2002 Jan Hubicka <jh@suse.cz>
6734
6735 * i386.md (dimode peep2s): Re-add "&& 1".
6736
6737Thu Dec 5 14:10:15 CET 2002 Jan Hubicka <jh@suse.cz>
6738
6739 * i386.c (ix86_expand_prologue): Add comment, do not use
6740 fast prologues for cold and normal functions.
6741
6742Thu Dec 5 00:52:37 CET 2002 Jan Hubicka <jh@suse.cz>
6743
6744 * i386.c (x86_rep_movl_optimal): New variable.
6745 (ix86_expand_movstr, ix86_expand_clrstr): Use TARGET_REP_MOVL_OPTIMAL
6746 * i386.h (TARGET_REP_MOVL_OPTIMAL): New macro.
6747
6748 * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
6749 absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
6750 neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
6751 generate unnecesary subregs.
6752
bf97847b
JDA
67532002-12-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
6754
6755 * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define.
6756 * pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here.
6757
1fcfaf37
DJ
67582002-12-05 Dale Johannesen <dalej@apple.com>
6759
6760 * tree.c (unsafe_for_reeval): Consider callee child of CALL_EXPR.
6761
1a823ac1
DS
67622002-12-05 Danny Smith <dannysmith@users.sourceforge.net>
6763
6764 * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with
6765 PROFILE_HOOK.
6766 * config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef.
6767
747db477
AH
67682002-12-05 Aldy Hernandez <aldyh@redhat.com>
6769
6770 * config/rs6000/spe.h (__ev_mwlufi): Remove.
6771 (__ev_mwlufia): Remove.
6772 (__ev_mwlumfaaw): Remove.
6773 (__ev_mwlusfaaw): Remove.
6774 (__ev_mwlumfanw): Remove.
6775 (__ev_mwlusfanw): Remove.
6776
94f09825
KH
67772002-12-05 Kazu Hirata <kazu@cs.umass.edu>
6778
6779 * config/h8300/h8300.md (*andorsi3_shift_8): New.
6780
1e5bdc40
KH
67812002-12-05 Kazu Hirata <kazu@cs.umass.edu>
6782
6783 * config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
6784 lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
6785 (get_shift_alg): Return optimal assembly instructions for the
6786 shifts mentioned above.
6787
4977bab6
ZW
6788Wed Dec 4 11:53:07 CET 2002 Jan Hubicka <jh@suse.cz>
6789
6790 * i386.c (ix86_expand_int_movcc): Force operand into register for QImode
6791 condtiional moves.
6792
b6fd51f6
KH
67932002-12-04 Kazu Hirata <kazu@cs.umass.edu>
6794
6795 * config/h8300/h8300.c (h8300_init_once): Do not use loop to
6796 implement ashiftrt:HI by 13 bits on H8S.
6797
9e1ab8c1
JDA
67982002-12-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
6799
6800 * pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
6801 * pa.md (canonicalize_funcptr_for_compare): Output library call to
6802 canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
6803 * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
6804 CTOR_LIST_BEGIN): New defines.
6805 * pa/t-linux (LIB2FUNCS_EXTRA): New define.
6806 (fptr.c): Add make rules.
6807
16823694
GK
68082002-12-04 Geoffrey Keating <geoffk@apple.com>
6809
6810 * combine.c (combine_simplify_rtx): Add new canonicalizations.
6811 * doc/md.texi (Insn Canonicalizations): Document new
6812 canonicalizations for multiply/add combinations.
6813 * config/rs6000/rs6000.md: Add and modify floating add/multiply
6814 patterns to ensure they're used whenever they can be.
6815
5ec0b66e
KH
68162002-12-04 Kazu Hirata <kazu@cs.umass.edu>
6817
6818 * config/h8300/h8300.c: Update the comments related to shifts.
6819
7fa9ed65
CD
68202002-12-04 Chris Demetriou <cgd@broadcom.com>
6821
6822 * config/mips/mips.md (get_fnaddr): Correct length attribute.
6823
6bd6fd35
KH
68242002-12-04 Kazu Hirata <kazu@cs.umass.edu>
6825
6826 * config/h8300/h8300.md (*extzv_8_8): New.
6827 (*extzv_8_16): Likewise.
6828
c246c65d
JM
68292002-12-04 Jason Merrill <jason@redhat.com>
6830
6831 PR c++/8461, c++/8625
6832 * integrate.c (copy_decl_for_inlining): Handle explicit invisible
6833 references.
6834 * tree-inline.c (initialize_inlined_parameters): Likewise.
6835
6836 * tree.c (variably_modified_type_p): Just return an error_mark_node.
6837
ae598ab9
CD
68382002-12-04 Chris Demetriou <cgd@broadcom.com>
6839
6840 * config/mips/mips.md (get_fnaddr): Avoid placing an "la"
6841 macro instruction in a branch delay slot, to avoid assembler
6842 warnings.
6843
a9b6f1e7
EB
68442002-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
6845
6846 PR c/7622
6847 * c-semantics (genrtl_scope_stmt): Do not output inlined
6848 nested functions that contain no code.
6849
a3716585
JH
6850Wed Dec 4 15:20:54 CET 2002 Jan Hubicka <jh@suse.cz>
6851
6852 * cfgrtl.c (force_nonfallthru_and_redirect): Allow abnormal edge
6853 to be forced into nonfallthru.
6854
44924a36
JT
68552002-12-03 Jason Thorpe <thorpej@wasabisystems.com>
6856
6857 * config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS).
6858
3678a93e
AH
68592002-12-03 Aldy Hernandez <aldyh@redhat.com>
6860
4977bab6 6861 * config/rs6000/spe.md (*movv1di_const0): New pattern.
3678a93e 6862
6e1be6b1
RH
68632002-12-03 Richard Henderson <rth@redhat.com>
6864
6865 * libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0.
6866
c47eb51b
HPN
68672002-12-03 Hans-Peter Nilsson <hp@bitrange.com>
6868
6869 * bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff):
6870 Initialize tmp.using_obstack to 0.
6871
2cff4a6e
AS
68722002-12-03 Andreas Schwab <schwab@suse.de>
6873
6874 * config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define.
6875 (EH_RETURN_STACKADJ_RTX): Define.
6876 (EH_RETURN_HANDLER_RTX): Define.
6877 (ASM_PREFERRED_EH_DATA_FORMAT): Define.
6878 * config/m68k/m68k.c (m68k_save_reg): New function. Handle eh
6879 registers and don't save fixed registers.
6880 (m68k_output_function_prologue): Use it.
6881 (use_return_insn): Likewise.
6882 (m68k_output_function_epilogue): Likewise.
6883
491a9777
KH
68842002-12-03 Kazu Hirata <kazu@cs.umass.edu>
6885
6886 * config/h8300/h8300.c (single_one_operand): Fix a warning.
6887 (single_zero_operand): Likewise.
6888
4977bab6
ZW
68892002-12-02 Nathanael Nerode <neroden@gcc.gnu.org>
6890
6891 * Makefile.in configure configure.in dummy-conditions.c fix-header.c
6892 gcov-iov.c gen-protos.c genattr.c genattrtab.c genautomata.c
6893 gencheck.c gencodes.c genconditions.c genconfig.c genconstants.c
6894 genemit.c genextract.c genflags.c gengenrtl.c gengtype-lex.l
6895 gengtype-yacc.y gengtype.c genopinit.c genoutput.c genpeep.c
6896 genpreds.c genrecog.c gensupport.c mkconfig.sh read-rtl.c
6897 scan-decls.c scan.c config/sh/sh.h doc/configfiles.texi
6898 doc/install-old.texi: Replace hconfig.h with bconfig.h.
6899 * Makefile.in: Replace HCONFIG_H with BCONFIG_H.
6900
69012002-12-02 Andrew Pinski <pinskia@physics.uc.edu>
6902
6903 * config/rs6000/rs6000.md (ffssi): Convert to expander.
6904 (ffsdi): Likewise.
6905 (cntlzw2, cntlzd2): New patterns.
6906
69072002-12-02 H.J. Lu <hjl@gnu.org>
6908
6909 * config.gcc (mips*-*-netbsd*): Remove mips/t-netbsd.
6910 (mips*-*-linux*): Remove mips/t-linux.
6911
6912Mon Dec 2 19:26:30 CET 2002 Jan Hubicka <jh@suse.cz>
6913
6914 * i386.c (ix86_expand_int_movcc): Avoid overflow.
6915
e8a68017
KH
69162002-12-02 Kazu Hirata <kazu@cs.umass.edu>
6917
6918 * config/h8300/h8300.c (dosize): Replace argument op with
6919 sign.
6920 (h8300_output_function_prologue): Update the call to dosize.
6921 (h8300_output_function_epilogue): Likewise.
6922
834572b8
BW
69232002-12-02 Bob Wilson <bob.wilson@acm.org>
6924
6925 * config/xtensa/xtensa.h: Delete ifndefs with nothing inside them.
6926
69272002-12-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
9118405f
CR
6928
6929 * configure.in: Use "missing" script to generate warning if
6930 flex or bison programs not found, instead of invoking "false".
6931 * configure: Rebuilt.
6932
4ff38cd5
JH
6933Mon Dec 2 20:28:48 CET 2002 Jan Hubicka <jh@suse.cz>
6934
6935 * unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P.
6936
adc72fa6
JH
6937Mon Dec 2 19:42:52 CET 2002 Jan Hubicka <jh@suse.cz>
6938
6939 * i386.c (ix86_expand_int_movcc): Avoid overflow.
6940
513f31eb
KH
69412002-12-02 Kazu Hirata <kazu@cs.umass.edu>
6942
6943 * config/h8300/h8300.c (dosize): Output r7/er7 instead of sp.
6944 (push): Likewise.
6945 (pop): Likewise.
6946 (h8300_output_function_prologue): Likewise.
6947 (h8300_output_function_epilogue): Likewise.
6948
7ffc9761
R
6949Mon Dec 2 14:43:22 2002 J"orn Rennecke <joern.rennecke@superh.com>
6950
6951 * expmed.c (store_bit_field): Use int_mode_for_mode to find
6952 corresponding mode of non-integer mode, unless it is VOIDmode.
6953
0a2a0a58
KH
69542002-12-02 Kazu Hirata <kazu@cs.umass.edu>
6955
6956 * config/h8300/h8300.md (stm_h8300s_2): New.
6957 (stm_h8300s_3): Likewise.
6958 (stm_h8300s_4): Likewise.
6959 (five define_peephole2): Likewise.
6960
28432d9f
KH
69612002-12-02 Kazu Hirata <kazu@cs.umass.edu>
6962
6963 * ra-build.c: Fix a comment typo.
6964
4977bab6
ZW
6965Sun Dec 1 16:50:47 CET 2002 Jan Hubicka <jh@suse.cz>
6966
6967 * i386.c (ix86_expand_int_movcc): fix
6968 reversed BRANCH_COST test; be curefull about infinite recursion.
6969
e651d484
KH
69702002-12-01 Kazu Hirata <kazu@cs.umass.edu>
6971
6972 * config/h8300/h8300.c (h8300_output_function_prologue):
6973 Remove variable idx.
6974 (h8300_output_function_epilogue): Likewise.
6975
558bb2c4
ZW
69762002-12-01 Zack Weinberg <zack@codesourcery.com>
6977
6978 * config/frv/xm-frv.h: Delete, unnecessary.
6979
96cc06af
KH
69802002-12-01 Kazu Hirata <kazu@cs.umass.edu>
6981
6982 * config/h8300/h8300.md: Add comments for define_peephole2.
6983
c9f8536c
MM
69842002-12-01 Mark Mitchell <mark@codesourcery.com>
6985
6986 * builtin-types.def (BT_SIZE): Use size_type_node.
6987 * builtins.c (fold_builtin): Make the builtin strlen returns a
6988 size_t, not a sizetype.
6989 * c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
6990 c_size_type_node.
6991 (c_alignof_expr): Likewise.
6992 (c_common_nodes_and_builtins): Likewise.
6993 * c-common.h (CTI_C_SIZE_TYPE): Remove.
6994 (c_size_type_node): Likewise.
6995 * c-format.c (T_ST): Use size_type_node, not c_size_type_node.
6996 * tree.h (TI_SIZE_TYPE): New enumeral.
6997 (size_type_node): Likewise.
4977bab6
ZW
6998
69992002-11-30 Zack Weinberg <zack@codesourcery.com>
7000
7001 * configure.in: Don't put ${tm_file} into host_xm_file,
7002 build_xm_file, or xm_file. Do put tm-preds.h into tm_p_file.
7003 Take location of tm-preds.h into account when calculating
7004 tm_p_file_list.
7005 * configure: Regenerate.
7006 * mkconfig.sh: No need for separate TM_DEFINES and XM_DEFINES
7007 arguments. Do not provide rtx, rtvec, tree, or GTY here.
7008 Remove special case code for tm_p.h and *config.h; add new
7009 special case code for tm.h and tconfig.h. Clean up a bit.
7010
7011 * Makefile.in (tm_file, tm_file_list): New variables set from
7012 @-substitutions.
7013 (GCONFIG_H): Deleted.
7014 (GTM_H, TM_H): New.
7015 (CONFIG_H): Is now just config.h $(host_xm_file_list).
7016 (TM_P_H): Move up with the other mkconfig.sh-generated
7017 headers; don't mention tm-preds.h explicitly.
7018 (tm.h, cs-tm.h): New rule.
7019 (cs-config.h, cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): Adjust
7020 invocations of mkconfig.sh for changes to that program.
7021 (mostlyclean): Delete print-rtl1.c.
7022 (clean): Delete tm.h.
7023 Update dependencies for the files listed below.
7024
7025 * mklibgcc.in: Add 'coretypes.h $(TM_H)' to libgcc2_c_dep.
7026
7027 * coretypes.h: New file.
7028 * system.h: #define malloc to xmalloc and realloc to xrealloc
7029 when FLEX_SCANNER or YYBISON is defined, independent of the
7030 value of GCC_VERSION.
7031 * alias.c, attribs.c, bb-reorder.c, bitmap.c, builtins.c,
7032 c-aux-info.c, c-common.c, c-convert.c, c-decl.c, c-dump.c,
7033 c-errors.c, c-format.c, c-lang.c, c-lex.c, c-objc-common.c,
7034 c-opts.c, c-parse.in, c-pragma.c, c-pretty-print.c,
7035 c-semantics.c, c-typeck.c, caller-save.c, calls.c, cfg.c,
7036 cfganal.c, cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c,
7037 cfgrtl.c, collect2.c, combine.c, conflict.c, convert.c,
7038 cppdefault.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
7039 cppinit.c, cpplex.c, cpplib.c, cppmacro.c, cppmain.c,
7040 cppspec.c, cpptrad.c, crtstuff.c, cse.c, cselib.c, dbxout.c,
7041 debug.c, df.c, diagnostic.c, doloop.c, dominance.c,
7042 dummy-conditions.c, dwarf2asm.c, dwarf2out.c, dwarfout.c,
7043 emit-rtl.c, errors.c, et-forest.c, except.c, explow.c,
7044 expmed.c, expr.c, final.c, fix-header.c, flow.c, fold-const.c,
7045 function.c, gcc.c, gccspec.c, gcov-dump.c, gcov-iov.c, gcov.c,
7046 gcse.c, gen-protos.c, genattr.c, genattrtab.c, genautomata.c,
7047 gencheck.c, gencodes.c, genconditions.c, genconfig.c,
7048 genconstants.c, genemit.c, genextract.c, genflags.c,
7049 gengenrtl.c, gengtype-lex.l, gengtype-yacc.y, gengtype.c,
7050 genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
7051 gensupport.c, ggc-common.c, ggc-none.c, ggc-page.c,
7052 ggc-simple.c, global.c, graph.c, haifa-sched.c, hashtable.c,
7053 hooks.c, ifcvt.c, integrate.c, intl.c, jump.c, langhooks.c,
7054 lcm.c, libgcc2.c, line-map.c, lists.c, local-alloc.c, loop.c,
7055 main.c, mbchar.c, mips-tdump.c, mips-tfile.c, mkdeps.c,
7056 optabs.c, params.c, predict.c, prefix.c, print-rtl.c,
7057 print-tree.c, profile.c, protoize.c, ra-build.c,
7058 ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, read-rtl.c,
7059 real.c, recog.c, reg-stack.c, regclass.c, regmove.c,
7060 regrename.c, reload.c, reload1.c, reorg.c, resource.c,
7061 rtl-error.c, rtl.c, rtlanal.c, sbitmap.c, scan-decls.c,
7062 scan.c, sched-deps.c, sched-ebb.c, sched-rgn.c, sched-vis.c,
7063 sdbout.c, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c,
7064 ssa.c, stmt.c, stor-layout.c, stringpool.c, timevar.c,
7065 tlink.c, toplev.c, tracer.c, tree-dump.c, tree-inline.c,
7066 tree.c, unroll.c, varasm.c, varray.c, varray.h, vmsdbgout.c,
7067 xcoffout.c, config/darwin-c.c, config/darwin.c,
7068 config/fp-bit.c, config/alpha/alpha.c, config/alpha/vms-cc.c,
7069 config/alpha/vms-ld.c, config/arc/arc.c, config/arm/arm.c,
7070 config/arm/pe.c, config/avr/avr.c, config/c4x/c4x-c.c,
7071 config/c4x/c4x.c, config/cris/cris.c, config/d30v/d30v.c,
7072 config/dsp16xx/dsp16xx.c, config/fr30/fr30.c,
7073 config/frv/frv.c, config/h8300/h8300.c, config/i370/i370-c.c,
7074 config/i370/i370.c, config/i386/i386.c, config/i386/winnt.c,
7075 config/i960/i960-c.c, config/i960/i960.c,
7076 config/ia64/ia64-c.c, config/ia64/ia64.c, config/ip2k/ip2k.c,
7077 config/m32r/m32r.c, config/m68hc11/m68hc11.c,
7078 config/m68k/m68k.c, config/m88k/m88k.c, config/mcore/mcore.c,
7079 config/mips/irix6-libc-compat.c, config/mips/mips.c,
7080 config/mmix/mmix.c, config/mn10200/mn10200.c,
7081 config/mn10300/mn10300.c, config/ns32k/ns32k.c,
7082 config/pa/pa.c, config/pdp11/pdp11.c, config/romp/romp.c,
7083 config/rs6000/rs6000-c.c, config/rs6000/rs6000.c,
7084 config/s390/s390.c, config/sh/sh.c, config/sparc/gmon-sol2.c,
7085 config/sparc/sparc.c, config/stormy16/stormy16.c,
7086 config/v850/v850-c.c, config/v850/v850.c, config/vax/vax.c,
7087 config/xtensa/xtensa.c, objc/objc-act.c, objc/objc-lang.c:
7088 Include coretypes.h and tm.h.
7089
7090 * genattrtab.c, genconditions.c, genemit.c, genextract.c,
7091 gengenrtl.c, gengtype.c, genopinit.c, genoutput.c, genpeep.c,
7092 genrecog.c: Include coretypes.h and tm.h from the file
7093 generated by this program.
7094
7095 * unwind-dw2-fde-darwin.c, unwind-dw2-fde-glibc.c,
7096 unwind-dw2-fde.c, unwind-dw2.c, unwind-sjlj.c: Include
7097 coretypes.h and tm.h, and tsystem.h when not already included.
7098 No need to include stddef.h nor stdlib.h.
7099
7100 * fixinc/fixlib.h: Include coretypes.h and tm.h. Do not
7101 include auto-host.h or ansidecl.h/
7102 * fixinc/server.h: Do not include stdio.h, unistd.h, or fixlib.h.
7103 * fixinc/procopen.c: Include server.h after fixlib.h. Do not
7104 include auto-host.h, ansidecl.h, or system.h.
7105 * fixinc/server.c: Likewise. Also, do not include signal.h,
7106 and do not redefine volatile.
7107
7108Sat Nov 30 17:16:46 CET 2002 Jan Hubicka <jh@suse.cz>
7109
7110 * i386.md (movdf_integer): Always enable in 64bit.
7111 (movdf_nointeger): Always disable in 64bit.
7112
f6318a2b
JDA
71132002-11-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
7114
7115 * cfg.c (dump_flow_info): Use max_reg_num () to determine the largest
7116 pseudo register number plus 1.
7117
4977bab6
ZW
7118Fri Nov 29 20:10:56 2002 J"orn Rennecke <joern.rennecke@superh.com>
7119
7120 * expmed.c (store_bit_field): Use int_mode_for_mode to find
7121 corresponding mode of non-integer mode, unless it is VOIDmode.
7122
2402645b
HPN
71232002-11-29 Hans-Peter Nilsson <hp@bitrange.com>
7124
7125 * cpplib.c (_cpp_test_assertion): Default *value to 0.
7126
7127 * cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
7128
8ef34c0d
UW
71292002-11-29 Ulrich Weigand <uweigand@de.ibm.com>
7130
7131 * config/s390/t-crtstuff: New target makefile fragment.
7132 * config.gcc [s390-*-linux, s390x-*-linux]: Use it.
7133
b8bbda91
KH
71342002-11-29 Kazu Hirata <kazu@cs.umass.edu>
7135
7136 * config/h8300/h8300.md (movsi_h8300hs): Change the order of
7137 alternatives to correct the length when the memory operand is
7138 either pre_dec or post_inc.
7139
d23dff51
KH
71402002-11-29 Kazu Hirata <kazu@cs.umass.edu>
7141
7142 * config/h8300/h8300.md (an anonymous pattern): Give an
7143 internal name *tst_extzv_bitqi_1_n.
7144 Accept bit_operand instead of bit_memory_operand.
7145 Do not accept bit tests with the MSB.
7146 (*tst_extzv_memqi_1_n): New.
7147
4977bab6
ZW
7148Thu Nov 28 23:56:24 CET 2002 Jan Hubicka <jh@suse.cz>
7149
7150 * i386.c (ix86_expand_int_movcc): Add copy_rtx to avoid invalid RTX
7151 sharing when operand is SUBREG.
7152
7153Thu Nov 28 08:57:26 CET 2002 Jan Hubicka <jh@suse.cz>
7154
7155 * athlon.md (athlon-decodev): New reservation unit.
7156 (athlon-direct0): New reservation.
7157 (athlon-vector): New use athlon-decodev.
7158 (athlon-double, athlon-direct): Better model.
7159 (athlon_imul_k8): Use athlon-direct0.
7160 (athlon_movlpd_load): New insn reservation.
7161
3f7211f1
KH
71622002-11-28 Kazu Hirata <kazu@cs.umass.edu>
7163
7164 * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
7165 Fix a comment typo.
7166 (h8300_tiny_constant_address_p): Likewise.
7167
fcb204ce
MM
71682002-11-28 Michael Matz <matz@suse.de>
7169
7170 * doc/passes.texi: Mention the other register allocator.
7171
7957fde4
KH
71722002-11-28 Kazu Hirata <kazu@cs.umass.edu>
7173
7174 * config/h8300/h8300.md (6 new peephole2 patterns): New.
7175
17c04c5e
JJ
71762002-11-28 Jakub Jelinek <jakub@redhat.com>
7177
7178 * config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff.
7179 * config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
7180 * config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define.
7181
73cc75e9
KH
71822002-11-28 Kazu Hirata <kazu@cs.umass.edu>
7183
7184 * config/h8300/h8300.c (h8300_and_costs): New.
7185 * config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs.
7186 * config/h8300/h8300-protos.h: Add a prototype for
7187 h8300_and_costs.
7188
4977bab6
ZW
7189Wed Nov 27 20:34:13 CET 2002 Jan Hubicka <jh@suse.cz>
7190
7191 * i386.c (x86_sse_partial_regs_for_cvtsd2ss): New.
7192 * i386.h (x86_sse_partial_regs_for_cvtsd2ss): Declare.
7193 (TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS): New macro.
7194 * i386.md (truncdfsf patterns and splitters): Use
7195 TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS
7196
0dbc3651
ZW
71972002-11-27 Zack Weinberg <zack@codesourcery.com>
7198
7199 * config/rs6000/rs6000.c (altivec_init_builtins): Make the
7200 pointer argument in the prototypes of the following builtins
7201 be (const TYPE *) rather than (TYPE *):
7202 + __builtin_altivec_ld_internal_4sf
7203 + __builtin_altivec_ld_internal_4si
7204 + __builtin_altivec_ld_internal_8hi
7205 + __builtin_altivec_ld_internal_16qi
7206 + __builtin_altivec_lvsl
7207 + __builtin_altivec_lvsr
7208 + __builtin_altivec_lvebx
7209 + __builtin_altivec_lvehx
7210 + __builtin_altivec_lvewx
7211 + __builtin_altivec_lvxl
7212 + __builtin_altivec_lvx
7213 + __builtin_altivec_dst
7214 + __builtin_altivec_dstt
7215 + __builtin_altivec_dstst
7216 + __builtin_altivec_dststt
7217
fe3f9515
KG
72182002-11-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7219
7220 * except.c (default_exception_section): Move variable into the
7221 scope where it is used.
7222
4e85eada
KW
72232002-11-27 Krister Walfridsson <cato@df.lth.se>
7224
7225 * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for
7226 correct version.
7227
f248423a
KH
72282002-11-27 Kazu Hirata <kazu@cs.umass.edu>
7229
7230 * config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses.
7231
ae557002
KH
72322002-11-27 Kazu Hirata <kazu@cs.umass.edu>
7233
7234 * config/h8300/h8300.c (h8300_shift_costs): New.
7235 * config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs.
7236 * config/h8300/h8300-protos.h: Add a prototype for
7237 h8300_shift_costs.
7238
c9b93e1a
JW
72392002-11-27 Jim Wilson <wilson@redhat.com>
7240
0dbc3651
ZW
7241 * config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands
7242 in output template.
c9b93e1a 7243
249e6b63
CH
72442002-11-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
7245
7246 * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define.
7247 * config/i386/winnt.c (i386_pe_dllexport_name_p): Use
7248 DLL_IMPORT_EXPORT_PREFIX, not '@'.
7249 (i386_pe_dllimport_name_p): Likewise.
7250 (i386_pe_mark_dllexport): Likewise.
7251 (i386_pe_mark_dllimport): Likewise.
7252 (i386_pe_encode_section_info): Likewise.
7253 (i386_pe_strip_name_encoding): Likewise.
7254
5a5c00af
RH
72552002-11-27 Richard Henderson <rth@redhat.com>
7256
7257 * mkmap-symver.awk (BEGIN): Set sawsymbol false.
7258 (nm && NF == 3): Set sawsymbol true.
7259 (END): Exit if no symbols seen.
7260 (output): Fix map syntax error if no globals for the version.
7261
1dc46545
JH
7262Wed Nov 27 14:45:46 CET 2002 Jan Hubicka <jh@suse.cz>
7263
7264 * builtins.def (DEF_C99_BUILTIN): Fix.
7265
4977bab6
ZW
72662002-11-26 Kaz Kojima <kkojima@gcc.gnu.org>
7267
7268 * config/sh/lib1funcs.asm (FUNC, ENDFUNC0, ENDFUNC): New macros.
7269 (all): Add .size and .type information.
7270
7271Tue Nov 26 22:43:50 CET 2002 Jan Hubicka <jh@suse.cz>
7272
7273 * i386.c (ix86_expand_int_movcc): Do not emit lea for short mode on
7274 partial_reg_stall target.
7275
7276Tue Nov 26 22:27:47 CET 2002 Jan Hubicka <jh@suse.cz>
7277
7278 * i386.md (movhicc): Allow general operand.
7279 (movqicc): New expander.
7280 (movqicc_noc): New pattern.
7281 * i386.c (ix86_expand_carry_flag_compare): New function.
7282 (ix86_expand_int_movcc): Optimize harder using sbb; support more
7283 HImode conversion; support QImode conditional moves
7284
7285Tue Nov 26 16:30:59 CET 2002 Jan Hubicka <jh@suse.cz>
7286
7287 * i386.c (FAST_PROLOGUE_INSN_COUNT): Set to 20.
7288 (ix86_expand_prologue): Multiply the count by amount of registers to be
7289 pushed.
7290
7291Tue Nov 26 15:55:27 CET 2002 Jan Hubicka <jh@suse.cz>
7292
7293 * i386.c (override_options): Error about wrong -mcpu on x86-64
7294 compilation.
7295
72962002-11-26 NIIBE Yutaka <gniibe@m17n.org>
7297
7298 * config/sh/linux.h (FUNCTION_PROFILER): Implemented.
7299
7300Tue Nov 26 00:14:20 CET 2002 Jan Hubicka <jh@suse.cz>
7301
7302 * i386-protos.h (x86_extended_QIreg_mentioned_p,
7303 x86_extended_reg_mentioned_p): Declare.
7304 * i386.c (extended_reg_mentioned_1): New static function.
7305 (x86_extended_QIreg_mentioned_p,
7306 x86_extended_reg_mentioned_p): New global functions.
7307 * i386.h (REX_SSE_REGNO_P): New macro.
7308 * i386.md (prefix_rex): New attribute.
7309 (length attribute): Add rex.
7310
5154b05d
AH
73112002-11-26 Andrew Haley <aph@redhat.com>
7312
7313 * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename
7314 from_Unwind_Find_Enclosing_Function.
7315 * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise.
7316 * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise.
7317 * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from
7318 _Unwind_Find_Enclosing_Function, export @@GCC_3.3.
7319 * unwind.h (_Unwind_FindEnclosingFunction): Add.
0dbc3651 7320
0f942cae
HP
73212002-11-26 Hartmut Penner <hpenner@de.ibm.com>
7322
0dbc3651
ZW
7323 * config/s390/s390.c (390_output_constant_pool): Set alignment
7324 before label in 64 bit mode, behind otherwise.
0f942cae 7325
25fdb4dc
RH
73262002-11-26 Richard Henderson <rth@redhat.com>
7327
7328 * c-common.c (handle_visibility_attribute): Accept "default".
7329 * tree.h (enum symbol_visibility): New.
7330 (decl_visibility): Declare.
7331 * target.h (gcc_target.visibility): Take visibility arg as integer.
7332 * varasm.c (default_assemble_visibility): Likewise.
7333 (decl_visibility): New.
7334 (maybe_assemble_visibility): Use it.
7335 * output.h (default_assemble_visibility): Update prototype.
7336 * config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
7337 visibility arg as integer.
d5c4db17 7338 * doc/extend.texi: Document default visibility.
25fdb4dc 7339
920e86b8
KH
73402002-11-26 Kazu Hirata <kazu@cs.umass.edu>
7341
7342 * config/h8300/h8300.c: Adjust spacing.
7343 * config/h8300/h8300.h: Likewise.
7344
7b1bd3c5
RH
73452002-11-26 Richard Henderson <rth@redhat.com>
7346
7347 * hooks.c (hook_bool_void_false, hook_void_tree_int,
7348 hook_void_FILEptr_constcharptr): Rename so that the return
7349 type is first.
7350 (hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr,
7351 hook_bool_tree_false): New.
7352 * hooks.h: Update.
7353 * langhooks-def.h: Update for renames.
7354 * target-def.h: Likewise.
7355 * tree.c (default_comp_type_attributes,
0dbc3651 7356 default_set_default_type_attributes, default_insert_attributes,
7b1bd3c5
RH
7357 default_function_attribute_inlinable_p,
7358 default_ms_bitfield_layout_p): Remove.
7359 * tree.h: Update.
7360
44571d6e
JDA
73612002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
7362
7363 * pa-protos.h (function_value): New prototype.
7364 * pa.c (function_value): Use a PARALLEL to return small aggregates on
7365 TARGET_64BIT.
7366 * pa.h (FUNCTION_VALUE): Use function_value.
7367 * pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
7368 call_value_internal_reg, sibcall_value_internal_symref,
7369 sibcall_value_internal_symref_64bit): Remove =rf constraint on return
7370 value.
7371
084a1106
JDA
73722002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
7373
7374 * expr.c (gen_group_rtx, emit_group_move): New functions.
7375 * expr.h (gen_group_rtx, emit_group_move): Prototype.
7376 * function.c (expand_function_start): Use gen_group_rtx to create a
7377 PARALLEL rtx to hold the return value when the real return rtx is a
7378 PARALLEL.
7379 (expand_function_end): Use emit_group_move to move the return value
7380 from a PARALLEL to the real return registers.
7381 * rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
7382 in PARALLELs.
7383
5d2fe493
JT
73842002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
7385
7386 * config/t-libc-ok: Fix typo.
7387
13c22933
JJ
73882002-11-26 Jakub Jelinek <jakub@redhat.com>
7389
7390 * configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back
7391 before AC_PROG_CC.
7392 * configure: Rebuilt.
7393
5326cd3d
NS
73942002-11-26 Nathan Sidwell <nathan@codesourcery.com>
7395
7396 * c-decl.c: (start_struct): Commonize flag setting.
7397
647d340d
JT
73982002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
7399
7400 * config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New.
7401 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use
0dbc3651 7402 RS6000_CPU_CPP_ENDIAN_BUILTINS.
647d340d
JT
7403 * config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine.
7404
29742ba4
HP
74052002-11-26 Hartmut Penner <hpenner@de.ibm.com>
7406
7407 * config/s390/s390.md (literal_pool_64, literal_pool_31 ): New
7408 insns.
7409 * config/s390/s390.c (struct machine_function): Introduction of
7410 struct machine_function.
0412a4d4
HP
7411 (s390_output_symbolic_const): Use of cfun.
7412 (s390_optimize_prolog): Likewise.
7413 (s390_fixup_clobbered_return_reg): Likewise.
7414 (s390_frame_info): Likewise.
7415 (s390_emit_prologue, s390_emit_epilogue): Likewise.
7416 (s390_init_machine_status): New function.
7417 (override_options): call s390_init_machine_status.
0dbc3651 7418 * config/s390/s390-protos.h (s390_output_constant_pool): Changed
29742ba4 7419 prototype.
0dbc3651 7420
f4111593
JJ
74212002-11-26 Jakub Jelinek <jakub@redhat.com>
7422
7423 * varasm.c (output_constant_pool): For pool constants in mergeable
7424 section ensure each constant is padded to multiple of entity size.
7425
96d0f4dc
JJ
74262002-11-26 Jakub Jelinek <jakub@redhat.com>
7427
7428 * varasm.c (default_exception_section): Move to...
7429 * except.c (default_exception_section): ... here. Make
7430 .gcc_except_table read-only if it is not expected to have any
7431 dynamic relocations and linker handles it.
7432 * dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
7433 if it is not expected to have any dynamic relocations and linker
7434 handles it.
7435 * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
7436 when linking read-only and read-write sections together.
7437 * configure, config.in: Rebuilt.
7438 * crtstuff.c (EH_FRAME_SECTION_CONST): Define.
7439 (__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
7440
4977bab6
ZW
7441Mon Nov 25 18:32:37 CET 2002 Jan Hubicka <jh@suse.cz>
7442
7443 * i386.md (pushsf_rex64): Fix typo.
7444
020a7b12
AH
74452002-11-25 Aldy Hernandez <aldyh@redhat.com>
7446
249e6b63
CH
7447 * config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into
7448 new function.
7449 (__ev_create_ufix32_fs): Same.
7450 (__ev_get_sfix32_fs_internal): New.
7451 (__ev_get_sfix32_fs): Define to use function.
7452 (__ev_get_ufix32_fs_internal): New.
7453 (__ev_get_ufix32_fs): Define to use function.
7454 (__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs.
7455 (__ev_get_lower_ufix32_fs): Same.
7456 (__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs.
7457 (__ev_get_lower_sfix32_fs): Same.
7458 (__ev_set_sfix32_fs_internal): New.
7459 (__ev_set_ufix32_fs_internal): New.
7460 (__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal.
7461 (__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal.
7462 (__ev_set_upper_sfix32_fs): Call function.
7463 (__ev_set_lower_sfix32_fs): Same.
7464 (__ev_set_upper_ufix32_fs): Same.
7465 (__ev_set_lower_ufix32_fs): Same.
020a7b12 7466
d2dff06b
DR
74672002-11-25 Douglas B Rupp <rupp@gnat.com>
7468
7469 * gcc.c (do_spec_1): Reset delete_this_arg to zero.
7470
32f0ffb3
JT
74712002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
7472
7473 * config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1.
7474 * config/interix.h (HANDLE_SYSV_PRAGMA): Likewise.
7475 * config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
7476 * config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise.
7477 * config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise.
7478 * config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
7479 * config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise.
7480 * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise.
7481 * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
7482 * config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise.
7483 * config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise.
7484 * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise.
7485 * config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise.
7486 * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise.
7487 * config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise.
7488 * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise.
7489 * config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise.
7490 * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise.
7491 * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise.
7492 * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise.
7493 * config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
7494 * config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise.
7495 * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise.
7496 * config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before
7497 defining.
7498 * config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise.
7499 * config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise.
7500
160f9a4c
DP
75012002-11-25 Dave Pitts <dpitts@cozx.com>
7502
7503 * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
7504
3c0f5389
KH
75052002-11-25 Kazu Hirata <kazu@cs.umass.edu>
7506
7507 * config/h8300/h8300.md (an anonymous pattern): New.
7508
83bbd9b6
RH
75092002-11-25 Richard Henderson <rth@redhat.com>
7510
7511 * alias.c (find_base_value): Use new_reg_base_value if it's live.
7512 (copying_arguments): Make boolean.
7513
7c64a860
JT
75142002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
7515
7516 * gcc.c (static_spec_functions): Add if-exists-else spec
7517 function.
7518 (if_exists_else_spec_function): New function.
7519 * doc/invoke.texi: Document the if-exists-else spec function.
7520
7521 * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
7522 "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
7523
a4967b8d
JT
75242002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
7525
7526 * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
7527 "netbsd.h netbsd-elf.h" in tm_file. Set tmake_file to
7528 "${tmake_file} rs6000/t-netbsd".
7529 * config/rs6000/netbsd.h: Rewrite.
7530 * config/rs6000/t-netbsd: New file.
7531
a91dce31
KH
75322002-11-25 Kazu Hirata <kazu@cs.umass.edu>
7533
7534 * config/h8300/h8300.md (an anonymous pattern): Relax the
7535 condition for the pattern.
7536
fe29a4ea
AH
75372002-11-25 Aldy Hernandez <aldyh@redhat.com>
7538
7539 * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
7540 evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
7541 evmwlssfanw, evmwlsmfanw.
7542
7543 * config/rs6000/rs6000.c (bdesc_2arg): Same.
7544
7545 * config/rs6000/spe.md: Same for patterns.
7546
b77f3744
CE
75472002-11-25 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
7548
7549 PR c/8639
7550 * fold-const.c (extract_muldiv): Don't propagate division unless
7551 both arguments are multiples of C.
7552
5dafd282
AH
75532002-11-25 Andrew Haley <aph@redhat.com>
7554
249e6b63
CH
7555 * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
7556 * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
7557 * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
7558 * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
5dafd282 7559
4977bab6
ZW
7560Sun Nov 24 10:38:04 CET 2002 Jan Hubicka <jh@suse.cz>
7561
7562 * i386.c (x86_use_ffreep): New global variable.
7563 * i386.h (x86_use_frfeep): Declare
7564 (TARGET_USE_FFREEP): New macro
7565 * i386.md (movs?f*): Use freep when asked for.
7566 (push?f): Remove dead code.
7567
92d4b8a0
KH
75682002-11-24 Kazu Hirata <kazu@cs.umass.edu>
7569
7570 * config/h8300/h8300.c (h8300_init_once): Fix a typo in the
7571 target help message.
7572
1169f9e0
JT
75732002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
7574
7575 * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
7576 extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
7577 crtbeginT.o".
7578 (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
7579 (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
7580 to "" for a.out configurations.
7581 * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
7582
adde288a
JT
75832002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
7584
7585 * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
0dbc3651 7586 NETBSD_CPP_SPEC directly.
adde288a
JT
7587 (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec. Add
7588 netbsd_endfile_spec.
7589 (ENDFILE_SPEC): Use %(netbsd_endfile_spec).
7590
1ebe8c03
JT
75912002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
7592
7593 * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
7594 NETBSD_STARTFILE_SPEC.
7595 (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
7596 (ENDFILE_SPEC): Likewise.
7597 * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
7598
bdabc150
AS
75992002-11-24 Andreas Schwab <schwab@suse.de>
7600
523cb499
AS
7601 * Makefile.in (install-driver): Remove versioned link before
7602 trying to create it.
7603
bdabc150
AS
7604 * config/m68k/m68k.c: Fix typo in last change defining
7605 TARGET_ASM_CAN_OUTPUT_MI_THUNK.
7606
4977bab6
ZW
76072002-11-23 H.J. Lu <hjl@gnu.org>
7608
7609 * aclocal.m4: Include ../config/accross.m4.
7610 (gcc_AC_COMPILE_CHECK_SIZEOF): Removed.
7611 (gcc_AC_C_COMPILE_ENDIAN): Removed.
7612 (gcc_AC_C_FLOAT_FORMAT): Check $ac_cv_c_bigendian
7613 instead of $ac_cv_c_compile_endian.
7614
7615 * configure.in: Replace gcc_AC_COMPILE_CHECK_SIZEOF with
7616 AC_COMPILE_CHECK_SIZEOF.
7617 Replace gcc_AC_C_COMPILE_ENDIAN with AC_C_BIGENDIAN_CROSS.
7618 * configure: Rebuild.
7619
56b8e164
KH
76202002-11-23 Kazu Hirata <kazu@cs.umass.edu>
7621
7622 * config/h8300/h8300.c (print_operand): Update the use of
7623 h8300_tiny_constant_address_p.
7624 (h8300_adjust_insn_length): Likewise.
7625 (h8300_tiny_constant_address_p): Check if the given rtx is a
7626 variable declared with __attribute__ ((tiny_data)).
7627
2bb74773
DJ
76282002-11-22 Dale Johannesen <dalej@apple.com>
7629
249e6b63 7630 * toplev.c (rest_of_compilation): Fix comments.
2bb74773 7631
199cbacc
GK
76322002-11-22 Geoffrey Keating <geoffk@apple.com>
7633
7634 * aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
7635 allow mmap from /dev/zero. Don't make decisions for the host
7636 based on presence or absence of /dev/zero on the build machine.
7637 (ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
7638 (AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
7639 * configure: Regenerate.
7640
42766f8d
DJ
76412002-11-22 Daniel Jacobowitz <drow@mvista.com>
7642
7643 * gcc.c (make_relative_prefix, split_directories)
7644 (free_split_directories): Removed.
7645
80486e06
DJ
76462002-11-22 Daniel Jacobowitz <drow@mvista.com>
7647
7648 * configure.in: Set insn=nop for DWARF-2 tests on ARM.
7649 * configure: Regenerated.
7650
41c3eb5d
KH
76512002-11-22 Kazu Hirata <kazu@cs.umass.edu>
7652
7653 * config/h8300/h8300.c (compute_a_shift_length): Fix the insn
7654 length computation when xor.l is output.
7655
4977bab6
ZW
76562002-11-21 Douglas B Rupp <rupp@gnat.com>
7657
7658 * alpha.md (movstrdi, clrstrdi): New VMS patterns.
7659 (call_vms_1, call_value_vms_1): Cleanup syntax.
7660
7661Thu Nov 21 19:20:27 CET 2002 Jan Hubicka <jh@suse.cz>
7662
7663 * athlon.md (define_atuomaton): Add athlon_load.
7664 (athlon-double): New reservation.
7665 (athlon-ieu0): New CPU unit.
7666 (athlon-load?): Use athlon_load automaton.
7667 (*_k8 reservations): New.
7668 (other insn revervations): Activate for K8.
7669
7670Thu Nov 21 15:07:42 CET 2002 Jan Hubicka <jh@suse.cz>
7671
7672 * cfgrtl.c (verify_flow_info): Accept EDGE_CAN_FALLTHRU flag.
7673
57de2c8f
JW
76742002-11-21 Jim Wilson <wilson@redhat.com>
7675
7676 * config/rs6000/rs6000.c (function_arg): Set inner mode of SPE
7677 vectors to SI.
7678
58db834b
BW
76792002-11-21 Bob Wilson <bob.wilson@acm.org>
7680
7681 * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare.
7682 * config/xtensa/xtensa.c (struct machine_function): Add
7683 incoming_a7_copied flag.
7684 (xtensa_copy_incoming_a7): Define.
7685 (xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7.
7686 * config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto.
7687
c05dbe81
JH
7688Thu Nov 21 23:52:04 CET 2002 Jan Hubicka <jH@suse.cz>
7689
7690 * i386-protos.h (x86_64_sign_extended_value): Fix prototype.
7691 * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
0dbc3651 7692 x86_64_nonmemory_operand, x86_64_movabs_operand,
c05dbe81
JH
7693 x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
7694 ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
7695 (local_symbolic_operand): Do not care the 64bit limits.
7696 (x86_64_sign_extended_value): Remove allow_rip support.
7697 (legitimate_pic_address_disp_p): Handle all cases allowed
7698 with RIP addressing.
7699 (legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
7700 (legitimize_pic_address): Reorganize.
7701 * i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
7702
ff3afb56
JT
77032002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
7704
7705 * config.gcc (arm*-*-netbsdelf*): Enable configuration.
7706 * config/arm/netbsd-elf.h: New file.
7707
57c21a42
JT
77082002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
7709
7710 * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
7711 subtarget_asm_float_spec.
7712 (SUBTARGET_ASM_FLOAT_SPEC): Define, moving the
7713 defaults from...
7714 (ASM_SPEC): ...here. Use subtarget_asm_float_spec.
7715
3d5ee65b
NC
77162002-11-21 Nick Clifton <nickc@redhat.com>
7717
7718 * config/fr30/fr30.md (movsf_constant_store): Move code to
7719 detect 0.0 into fr30.c.
7720 * config/fr30/fr30-protos.h (fr30_const_double_is_zero):
7721 Prototype.
7722 * config/fr30/fr30.c (fr30_const_double_is_zero): New
7723 function. Return true if the rtx is 0.0.
7724
4d938a09
JT
77252002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
7726
7727 * config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL
7728 if -mlittle-endian is specified.
7729
1dda7ee4
RE
77302002-11-21 Richard Earnshaw <rearnsha@arm.com>
7731
7732 PR optimization/2903
7733 * arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1.
7734 (anddi_notsesidi_di): Likewise.
7735
7c143ed2
KH
77362002-11-21 Kazu Hirata <kazu@cs.umass.edu>
7737
7738 * config/h8300/h8300.c (print_operand): Use
7739 h8300_eightbit_constant_address_p and
7740 h8300_tiny_constant_address_p.
7741 (h8300_adjust_insn_length): Likewise.
7742 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove.
7743 (TINY_CONSTANT_ADDRESS_P): Likewise.
7744 (OK_FOR_U): Use eightbit_constant_address_p.
7745
b5798b2a
UW
77462002-11-21 Ulrich Weigand <uweigand@de.ibm.com>
7747
7748 * config/s390/libgcc-libc.ver: Add multilib support.
7749 * config/s390/linux.h (MULTILIB_DEFAULT): Define.
0dbc3651
ZW
7750 * config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
7751 MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC,
b5798b2a
UW
7752 EXTRA_MULTILIB_PARTS): Define.
7753
c231c91e
RE
77542002-11-21 Richard Earnshaw <rearnsha@arm.com>
7755
7756 * arm.c (arm_get_frame_size): A leaf function does not need its
7757 stack padding to an aligned boundary if it has no frame.
7758 (thumb_get_frame_size): Likewise.
7759
4977bab6
ZW
7760Wed Nov 20 22:25:53 CET 2002 Jan Hubicka <jh@suse.cz>
7761
7762 * x86-64.h (MCOUNT_NAME): Fix typo in my previous patch.
7763 (override_options): Likewise.
7764
7765Wed Nov 20 19:07:17 CET 2002 Jan Hubicka <jh@suse.cz>
7766
7767 * config.gcc: Add k8 target alias support
7768 * i386.c (_cost): Declare costs for various variants of divides and
7769 multiplies.
7770 (k8_cost): New.
7771 (m_K8, m_ATHLON_K8): New macros.
7772 (x86_use_leave, x86_push_memory, x86_movx, x86_unroll_strlen,
7773 x86_cmove, x86_3dnow_a, x86_deep_branch, x86_use_fiop,
7774 x86_promote_QImode, x86_sub_esp_?, x86_add_esp_?,
7775 x86_integer_DFmode_moves, x86_partial_reg_dependency,
7776 x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
7777 x86_prologue_using_move, x86_epilogue_using_move,
7778 x86_arch_always_fancy_math_387, x86_sse_partial_regs,
7779 x86_sse_typeless_stores): Set for K8
7780 (override_options): Add k8 support; fix athlon alignment;
7781 complain about non-x86-64 capable CPU being used in x86-64 compilation.
7782 (ix86_issue_rate): Set for K8.
7783 (ix86_adjust_cost, ia32_use_dfa_pipeline_interface,
7784 x86_machine_dependent_reorg): Handle K8 like
7785 * i386.h
7786 (x86_costs): Change mult_init and divide into array.
7787 (TARGET_K8, TARGET_ATHLON): New macros.
7788 (MODE_INDEX): New macro.
7789 (RTX_COST): Use new costs.
7790 (TARGET_CPU_CPP_BUILTINS): Define __k8__ and __tune_k8__.
7791 (TARGET_CPU_DEFAULT_NAMES): Add k8
7792 (TARGET_CPU_DEFAULT_k8): New constant
7793 (enum processor_type): Add PROCESSOR_K8.
7794 * i386.md (cpu attribute): Add k8.
7795
7796 * invoke.texi: Document -march=k8.
7797
7798 * i386.md (type attribute): Add leave
7799 (mode attribute): Remove unknownfp.
7800 (length_immediate, modrm, memory attributes): Handle leave correctly.
7801 (fp comparison patterns): Determine FP mode.
7802 (leave, leave_rex64): Remove special cases.
7803 * ppro.md (ppro_uops, ppro_p2): Add leave
7804 * pentiun.md (pent_pop): Handle leave too.
7805 * k6.md (k6_load): Handle leave.
7806 * athlon.md (athlon_leave, athlon_pop): Fix.
7807 (athlon_decode): Handle leave.
7808
27e58a70
SE
78092002-11-20 Steve Ellcey <sje@cup.hp.com>
7810
7811 * emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type
7812 to component type using GET_MODE_INNER.
7813 * expr.c (emit_move_insn_1): Ditto.
7814 * optabs.c (expand_binop): Ditto.
7815 (expand_unop): Ditto.
7816 (expand_complex_abs): Ditto.
7817
964b104a
DR
78182002-11-20 Douglas B Rupp <rupp@gnat.com>
7819
7820 * hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64).
7821
3d4b192a
DD
78222002-11-20 DJ Delorie <dj@redhat.com>
7823
7824 * config/stormy16/stormy16.c (s16builtins,
7825 xstormy16_init_builtins, xstormy16_expand_builtin): New.
7826 * config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New.
7827
414d23ae
HPN
78282002-11-20 Hans-Peter Nilsson <hp@bitrange.com>
7829
7830 * Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables.
7831 (DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES).
7832 (executing gencheck, genconfigs, genconditions, genflags,
7833 gencodes, genconstants, genemit, genrecog, genopinit, genextract,
7834 genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds,
7835 gengtype, genprotos): Prepend $(RUN_GEN).
7836 * configure.in: Move host compiler tests before --enable-checking
7837 tests.
7838 (--enable-checking=valgrind): New.
7839 * config.in, configure: Regenerate.
7840 * cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
7841 Define as empty.
7842 (read_include_file): When doing the mmap+1 trick,
7843 valgrind-annotate the byte after the mmap:ed area as readable.
7844 (purge_cache): Remove above annotation.
7845 * gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend
7846 VALGRIND_PATH -q to each command.
7847
9a0a7d5d
HPN
7848 * ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
7849 Define as empty.
7850 (ggc_realloc): Update valgrind annotations.
7851 * ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
7852 Define as empty.
c14bc6db 7853 (alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to
9a0a7d5d
HPN
7854 valgrind-annotate memory.
7855
3ba2436a
UW
78562002-11-20 Ulrich Weigand <uweigand@de.ibm.com>
7857
7858 * recog.c (constrain_operands): Prefer exact match over reloadable
7859 EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT.
7860
7861 * reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT
7862 operands in Pmode.
7863
a9b6f1e7 78642002-11-20 Eric Botcazou <ebotcazou@libertysurf.fr>
02a362d9
EB
7865
7866 PR c/8518
7867 * c-decl.c (duplicate_decls): Outline the second definition
7868 of an extern inline function in all cases.
7869
5354730b
RS
78702002-11-20 Richard Sandiford <rsandifo@redhat.com>
7871
7872 * stor-layout.c (place_field): Update rli->offset as well as
7873 rli->bitpos.
7874
5720520f
RS
78752002-11-20 Richard Sandiford <rsandifo@redhat.com>
7876
7877 * sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED.
7878
4392ebd3
RS
78792002-11-20 Richard Sandiford <rsandifo@redhat.com>
7880
7881 * config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions
7882 into a libcall block.
7883 (divsi3): Likewise divsi3_i4_media.
7884
3748bd9e
RS
78852002-11-20 Richard Sandiford <rsandifo@redhat.com>
7886
7887 * global.c (find_reg): Check HARD_REGNO_NREGS before kicking
7888 out another register.
7889
bc02f8d3
JJ
78902002-11-20 Jakub Jelinek <jakub@redhat.com>
7891
7892 * combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
7893 (not just mask) are set in C.
7894
4977bab6
ZW
78952002-11-19 Steven Bosscher <steven.bosscher@usafa.af.mil>
7896
7897 * config/mips/vr.h (DRIVER_SELF_SPECS): Change %{<mgp32} to %<mgp32.
7898
78992002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
7900
7901 * profile.c (index_counts_file): Fix obvious mistake.
7902
79032002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
7904
7905 * Makefile.in (profile.o): Add hashtab.h dependency.
7906 * gcov-io.h (GCOV_SUMMARY_LENGTH): New.
7907 * profile.c: Include hashtab.h.
7908 (htab_counts_index_hash, htab_counts_index_eq, htab_counts_index_del,
7909 cleanup_counts_index, index_counts_file, struct section_reference,
7910 struct da_index_entry, counts_file_name, counts_file_index): New.
7911 (get_exec_counts, init_branch_prob): Modified.
7912
79132002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
7914
7915 * config.gcc (sh*-*-linux*): Add t-slibgcc-elf-ver and t-linux
7916 to tmake_file. Remove setting gas and gnu_ld here.
7917 * config/sh/libgcc-glibc.ver: New file.
7918 * config/sh/t-linux (EXTRA_MULTILIB_PARTS): Add crtbeginT.o.
7919 (SHLIB_MAPFILES): New.
7920 * config/sh/linux.h (MD_EXEC_PREFIX): Undefine.
7921 (MD_STARTFILE_PREFIX): Likewise.
7922 (HANDLE_PRAGMA_PACK_PACK_PUSH_POP): Define.
7923 (DWARF2_UNWIND_INFO): Redefine.
7924 (ASM_PREFERRED_EH_DATA_FORMAT): Define.
7925 (LINK_EH_SPEC): Redefine.
7926 (MD_FALLBACK_FRAME_STATE_FOR): Define except for SH-media.
7927 (SH_FALLBACK_FRAME_FLOAT_STATE): Define.
7928 (SH_DWARF_FRAME_GP0, SH_DWARF_FRAME_FP0, SH_DWARF_FRAME_XD0,
7929 SH_DWARF_FRAME_BT0, SH_DWARF_FRAME_PR, SH_DWARF_FRAME_PR_MEDIA,
7930 SH_DWARF_FRAME_GBR, SH_DWARF_FRAME_MACH, SH_DWARF_FRAME_MACL,
7931 SH_DWARF_FRAME_PC, SH_DWARF_FRAME_SR, SH_DWARF_FRAME_FPUL,
7932 SH_DWARF_FRAME_FPSCR): Likewise.
7933 * config/sh/sh-protos.h (sh_set_return_address): Declare.
7934 * config/sh/sh.c (calc_live_regs): Count EH_RETURN_DATA_REGNO
7935 registers if the current function calls EH return.
7936 (sh_expand_epilogue): Handle EH stack adjustments.
7937 (sh_set_return_address): New function.
7938 * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
7939 Don't abort even if the number is mapped to -1.
7940 (EH_RETURN_DATA_REGNO): Define.
7941 (EH_RETURN_STACKADJ_RTX): Define.
7942 * config/sh/sh.md (UNSPEC_EH_RETURN): New.
7943 (eh_return): New pattern.
7944 (eh_set_ra_di, eh_set_ra_si): Likewise.
7945 Add splitter to perform EH return after reload.
7946
7947Tue Nov 19 12:52:07 2002 J"orn Rennecke <joern.rennecke@superh.com>
7948
7949 * stor-layout.c (excess_unit_span): New function.
7950 (place_field): Use it.
7951
79522002-11-19 Andreas Schwab <schwab@suse.de>
7953
7954 * unwind.h (_Unwind_GetTextRelBase): Revert last change, this is
7955 not valid in C++.
7956
79572002-11-19 Nathanael Nerode <neroden@gcc.gnu.org>
7958
7959 * configure.in, Makefile.in: Correct BUILD/HOST confusion.
7960 * configure: Regenerate.
7961
7962Tue Nov 19 00:11:44 CET 2002 Jan Hubicka <jh@suse.cz>
7963
7964 * convert.c (strip_float_extensions): New function.
7965 (convert_to_real): Optimize some cases.
7966
3bdcef4d
AJ
79672002-11-19 Andreas Jaeger <aj@suse.de>
7968
7969 * loop.c (record_giv): Initialize not_replaceable.
7970 (check_final_value): Likewise.
7971
ec5b0c68
KH
79722002-11-19 Kazu Hirata <kazu@cs.umass.edu>
7973
7974 * config/h8300/h8300.c (h8300_init_once): Replace 1 with
7975 MASK_H8300S.
7976
79772002-11-19 Vijay L. Khuspe <vijayk1@kpit.com>
39ba95b5
VK
7978
7979 * config/h8300/h8300.c (h8300_init_once): Allow -mn switch
7980 only if -mh or -ms present.
7981 (h8300_eightbit_constant_address_p): Support the normal mode.
7982 (h8300_tiny_constant_address_p): Likewise.
7983 * config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
7984 (POINTER_SIZE): Add 16 bit pointer for the normal mode.
7985 (Pmode): Evaluate to HImode for the normal mode.
7986 (SIZE_TYPE): Evaluate to unsigned int for normal mode.
7987 (PTRDIFF_TYPE): Evaluate to int for the normal mode.
7988 (ASM_WORD_OP): Evaluate to word for the normal mode.
7989 * config/h8300/h8300.md (tablejump_normal_mode): New.
7990 (indirect_jump_normal_mode): New.
7991 * config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
7992 directory.
7993 (MULTILIB_DIRNAMES): Create target dependent directory
7994 'normal'.
249e6b63 7995 (MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
39ba95b5
VK
7996 * doc/invoke.texi (gccoptlist): Describe the new switch -mn.
7997
efcc7037
JH
7998Tue Nov 19 23:50:56 CET 2002 Jan Hubicka <jh@suse.cz>
7999
8000 * i386.md (length_immediate): Do not refer to insn address.
8001 (jcc*, jmp patterns): Compute length explicitly.
8002
80032002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr>
35f1c975
EB
8004
8005 PR c/8588
8006 * optabs.c (expand_binop): Convert CONST_INTs in shift
8007 operations too.
8008
a500466b
RS
80092002-11-19 Roger Sayle <roger@eyesopen.com>
8010
8011 * gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note.
8012
3b161153
KH
80132002-11-19 Kazu Hirata <kazu@cs.umass.edu>
8014
8015 * config/h8300/h8300.md (an anonymous pattern): Relax the
8016 condition to accept the same operands and/or subregs.
8017
85af47b9
DJ
80182002-11-19 Daniel Jacobowitz <drow@mvista.com>
8019
8020 * config/sh/sh.c (gen_shl_and): Revert previous patch.
8021 * config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on
8022 reload_completed.
8023
9675a91e
KH
80242002-11-19 Kazu Hirata <kazu@cs.umass.edu>
8025
8026 * config/h8300/h8300.c (print_operand): Update the use of
8027 EIGHTBIT_CONSTANT_ADDRESS_P.
8028 (h8300_adjust_insn_length): Likewise.
8029 (h8300_eightbit_constant_address_p): Check if the given rtx is
8030 a variable with __attribute__((eightbit_data)).
8031 * config/h8300/h8300.h (OK_FOR_U): Update the use of
8032 EIGHTBIT_CONSTANT_ADDRESS_P.
8033
7b61fa4d
GP
80342002-11-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
8035
8036 * doc/contrib.texi (Contributors): Add self as second contact in
8037 addition to Jeff Law.
8038
50aadcbc
AJ
80392002-11-19 Andreas Jaeger <aj@suse.de>
8040
8041 * tree-inline.c: Move prototpyes of find_alloca_call_1 and
8042 find_alloca_call to right place.
8043
dc65cd60
KH
80442002-11-19 Kazu Hirata <kazu@cs.umass.edu>
8045
8046 * cppfiles.c: Fix formatting.
8047
f3226a90
JT
80482002-11-19 Jason Thorpe <thorpej@wasabisystems.com>
8049
8050 * gcc.c (The Specs Language): Document spec functions.
8051 (static_spec_functions, lookup_spec_function)
8052 (eval_spec_function, handle_spec_function)
8053 (if_exists_spec_function, alloc_args): New.
8054 (execute): Abort if processing_spec_function is true.
8055 (do_spec_1): Hand off spec to handle_spec_function if %:
8056 is encountered. If processing_spec_function is true,
8057 end any pending argument when the end of the string is reached.
8058 (main): Use alloc_args to allocate the initial argument vector.
8059 * gcc.h (struct spec_function): New.
8060 (lang_specific_spec_functions): New extern.
8061
8062 * config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
8063 (ENDFILE_SPEC): Add if-exists(crtn%O%s).
8064 * config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
3bdcef4d 8065
f3226a90
JT
8066 * doc/invoke.texi: Document spec functions.
8067
8068 * cppspec.c (lang_specific_spec_functions): New.
8069 * gccspec.c: Likewise.
8070
08c42743
SE
80712002-11-18 Steve Ellcey <sje@cup.hp.com>
8072
8073 * config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
8074 (FIXUNS_TRUNCTFDI2_LIBCALL): New.
8075 (fixunstfsi_libfunc): Change.
8076 (fixunstfdi_libfunc): Change.
8077 (sdiv_optab): Don't zero out SImode handler.
8078 (udiv_optab): Don't zero out SImode handler.
8079 (smod_optab): Don't zero out SImode handler.
8080 (umod_optab): Don't zero out SImode handler.
8081
8128cccf
NB
80822002-11-18 Neil Booth <neil@daikokuya.co.uk>
8083
8084 PR preprocessor/8524
8085 * cpplib.c (run_directive): Remove previous kludge to _Pragma.
8086 Add a new one in its place, which hopefully works.
8087 (skip_rest_of_line): Change test for bottom-of-context-stack.
8088
95199202
JH
8089Mon Nov 18 21:29:03 CET 2002 Jan Hubicka <jh@suse.cz>
8090
8091 * i386.md (addqi_1_slp): Fix output template.
8092 (subqi_1_slp): Fix type.
8093
c986baf6
JH
8094Sun Nov 17 00:01:28 CET 2002 Jan Hubicka <jh@suse.cz>
8095
8096 * calls.c (alloca_call_p): New global function.
8097 * tree.h (alloca_call_p): New.
8098 * tree-inline.c (inlinable_function_p): Do not inline when
8099 function calls alloca.
8100 (find_alloca_call, find_alloca_call_1): New functions.
8101
ac655495
KH
81022002-11-18 Kazu Hirata <kazu@cs.umass.edu>
8103
8104 * config/h8300/h8300.md (*andorqi3): Use bor between bld and
8105 bst. Update the insn length.
8106 (*andorhi3): Likewise.
8107 (*andorsi3): Likewise.
8108
ea4210ef
RS
81092002-11-18 Richard Sandiford <rsandifo@redhat.com>
8110
8111 * config/sh/sh-protos.h (sh_mark_label): Declare.
8112 * config/sh/sh.c (sh_mark_label): New function, taken from
8113 movdi_const, but fixing the case when the address has an addend.
8114 * config/sh/sh.md (movdi_const, movdi_const_32bit): Use it.
8115
3503150c
RS
81162002-11-18 Richard Sandiford <rsandifo@redhat.com>
8117
8118 * config/sh/sh.c (pool_node): New field: part_of_sequence_p.
8119 (add_constant): Set it.
8120 (dump_table): Don't reorder a constant if part_of_sequence_p.
8121 (machine_dependent_reorg): Assume that float constants will
8122 stay in their original order if used as a sequence.
8123
180bde4f
RS
81242002-11-18 Richard Sandiford <rsandifo@redhat.com>
8125
8126 * config/sh/sh.c (calc_live_regs): Update check for PIC liveness
8127 in compact code.
8128
e300c78c
RS
81292002-11-18 Richard Sandiford <rsandifo@redhat.com>
8130
8131 * config/sh/sh.md (initialize_trampoline): Do not force the
8132 trampoline address into R0_REGS here.
8133
4977bab6
ZW
8134Sun Nov 17 14:01:09 CET 2002 Jan Hubicka <jh@suse.cz>
8135
8136 * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
8137 absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
8138 (neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
8139 generate unnecesary subregs.
8140
ec748ec8
KH
81412002-11-17 Kazu Hirata <kazu@cs.umass.edu>
8142
8143 * df.c: Fix formatting.
8144
cf0cec73
KH
81452002-11-17 Kazu Hirata <kazu@cs.umass.edu>
8146
8147 * config/h8300/h8300.md (two anonymous patterns): Fix insn
8148 lengths.
8149
d2b2c7cd
DJ
81502002-11-17 Daniel Jacobowitz <drow@mvista.com>
8151
8152 * sh.c (gen_shl_and): Don't create a zero_extend if the operand
8153 is not an arith_reg_operand.
8154
6ddb1bc1
GS
81552002-11-17 Graham Stott <graham.stott@btinternet.com>
8156
8157 * real.c (real_to_decimal): Fix buffer overrun when buffer size
8158 is smaller than representation.
8159
5ab2f7b7
KH
81602002-11-17 Kazu Hirata <kazu@cs.umass.edu>
8161
8162 * builtins.c: Fix formatting.
8163
4977bab6
ZW
8164Sat Nov 16 16:49:58 CET 2002 Jan Hubicka <jh@suse.cz>
8165
8166 * i386.md (truncdfsf2_1_sse, truncdfsf2_1_sse_nooverlap, truncdfsf2_2,
8167 floats?dff2_i387):
8168 Work around regclass stupidity.
8169 (truncdfsf_2_1_sse splitter): Accept !TARGET_PARTIAL_SSE_REGS
8170
8171Sat Nov 16 02:17:48 CET 2002 Jan Hubicka <jh@suse.cz>
8172
8173 * i386.md (fop_df_6): New pattern.
8174 (fop_xf_4, fop_xf_5): Handle both SF and DFmode extensions.
8175 (fop_xf_6): Rewrite
8176 (fop_xf_7): Delete.
8177 (fop_tf_4, fop_tf_5): Handle both SF and DFmode extensions.
8178 (fop_tf_6): Rewrite
8179 (fop_tf_7): Delete.
8180
0d964e40
KH
81812002-11-16 Kazu Hirata <kazu@cs.umass.edu>
8182
8183 * config/h8300/h8300.md (two anonymous patterns): Fix typos.
8184
6d55e887
KH
81852002-11-16 Kazu Hirata <kazu@cs.umass.edu>
8186
8187 * config/h8300/h8300.md: Fix formatting.
8188
4d5ad877
KH
81892002-11-16 Kazu Hirata <kazu@cs.umass.edu>
8190
8191 * config/h8300/h8300.md: Replace spaces with tabs.
8192 * config/h8300/t-h8300: Remove a trailing empty line.
8193
17fa74a2
KH
81942002-11-16 Kazu Hirata <kazu@cs.umass.edu>
8195
8196 * tlink.c: Fix formatting.
8197
9caa3eb2
DE
81982002-11-16 David Edelsohn <edelsohn@gnu.org>
8199
68a7da97 8200 PR 8362
9caa3eb2
DE
8201 * config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function.
8202 * config/rs6000/rs6000.md (movti_string): Remove output modifier
8203 when scratch register never needed.
8204 (ldmsi[3-8]): New patterns.
8205
476c5eb6
KH
82062002-11-16 Kazu Hirata <kazu@cs.umass.edu>
8207
8208 * hard-reg-set.h: Follow spelling conventions.
8209 * real.c: Likewise.
8210 * target.h: Likewise.
8211
5dab517f
JJ
82122002-11-16 Jakub Jelinek <jakub@redhat.com>
8213
8214 * config/i386/x86-64.h (MCOUNT_NAME): Change into string literal.
8215
7e1a450d
KH
82162002-11-16 Kazu Hirata <kazu@cs.umass.edu>
8217
8218 * optabs.c: Fix formatting.
8219
1b245ade
JH
8220Sat Nov 16 02:06:02 CET 2002 Jan Hubicka <jh@suse.cz>
8221
8222 * athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1
8223 * i386.md (attribute type): Add type shift1 and rotate1.
8224 (*_slp): Rewrite to have just two operands to avoid reload problems.
8225
6368a493
KH
82262002-11-15 Kazu Hirata <kazu@cs.umass.edu>
8227
8228 * config/h8300/h8300.md (4 anonymous patterns): New.
8229
737c38d1
GK
82302002-11-15 Geoffrey Keating <geoffk@apple.com>
8231
8232 * params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem.
8233 * doc/invoke.texi: Correct description of what needs to be done to
8234 force collection at every ggc_collect call.
8235
2120e3cd
UW
82362002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
8237
3bdcef4d 8238 * config/s390/s390.c (optimization_options): Set
2120e3cd
UW
8239 flag_asynchronous_unwind_tables to 1 by default.
8240
18789f4e
UW
82412002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
8242
8243 * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
8244
a5fa1ecd
JH
8245Fri Nov 15 14:54:19 CET 2002 Jan Hubicka <jh@suse.cz>
8246
8247 * i386-protos.h (x86_function_profiler): New function
8248 * i386.h (MCOUNT_NAME): New.
8249 (PROFILE_COUNT_REGISTER): New.
a36fc5f8 8250 (FUNCTION_PROFILER): Move offline to ...
a5fa1ecd
JH
8251 * i386.c (x86_function_profiler) ... here; fix 64bit support
8252 * beos-elf.h (FUNCTION_PROFILER): Kill.
8253 (MCOUNT_NAME): New.
8254 * freebsd-aout.h (FUNCTION_PROFILER): Kill.
8255 (MCOUNT_NAME): New.
8256 (PROFILE_COUNT_REGISTER): New.
8257 * linux.h (FUNCTION_PROFILER): Kill.
8258 (MCOUNT_NAME): New.
8259 * x86-64.h (FUNCTION_PROFILER): Kill.
8260 (MCOUNT_NAME): New.
8261 * freebsd.h (FUNCTION_PROFILER): Kill.
8262 (MCOUNT_NAME): New.
8263
1741620c
JD
82642002-11-14 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
8265
8266 * config/arm/arm.h (EXPAND_BUILTIN_VA_ARG,
8267 FUNCTION_ARG_PASS_BY_REFERENCE): Define.
8268 * config/arm/arm.c (arm_va_arg,
8269 arm_function_arg_pass_by_reference): New.
8270 * config/arm/arm-protos.h: Add prototypes.
8271
24985beb
KH
82722002-11-14 Kazu Hirata <kazu@cs.umass.edu>
8273
8274 * gthr-single.h: Fix formatting.
8275
fa7b533b
ZW
82762002-11-14 Zack Weinberg <zack@codesourcery.com>
8277
8278 * tree.c (tree_vec_elt_check_failed): New function.
8279 * tree.h (TREE_VEC_ELT_CHECK): New checking macro.
8280 (TREE_VEC_ELT): Use it.
8281
8282 * tree-inline.c (optimize_inline_calls): Don't copy a
8283 zero-length vector.
8284
9fc910d1
GDR
82852002-11-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
8286
8287 * diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text.
8288
7eca317a
JJ
82892002-11-14 Jakub Jelinek <jakub@redhat.com>
8290
8291 * varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if
8292 both operands contain local relocations.
8293 (categorize_decl_for_section): Don't use mergeable sections if
8294 initializer has any relocations.
8295
57751dd6
KH
82962002-11-14 Kazu Hirata <kazu@cs.umass.edu>
8297
8298 * gthr-vxworks.h: Fix formatting.
8299
f702e700
JJ
83002002-11-13 Janis Johnson <janis187@us.ibm.com>
8301
8302 * doc/install.texi (Testing): Document extra Java testing.
8303 * doc/sourcebuild.texi (Test Suites): Document libgcj testing.
8304
08ec53e7
JDA
83052002-11-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
8306
8307 * pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the
8308 beginning of the spec.
8309 (LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete.
8310 (LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable. Add comment
8311 regarding problems with global constructors when using GNU ld.
8312
e6179f45
KH
83132002-11-13 Kazu Hirata <kazu@cs.umass.edu>
8314
8315 * gthr-solaris.h: Fix formatting.
8316
fe83a9ce
KH
83172002-11-13 Kazu Hirata <kazu@cs.umass.edu>
8318
8319 * gthr-posix.h: Fix formatting.
8320
4977bab6 83212002-11-12 Devang Patel <dpatel@apple.com>
4977bab6
ZW
8322 * gcc.c (display_help): Two new options -Xpreprocessor and -Xassembler.
8323 (process_command): Same.
8324 * doc/invoke.texi: Info about these two new options.
8325
eed13f9b
KH
83262002-11-12 Kazu Hirata <kazu@cs.umass.edu>
8327
8328 * config/h8300/h8300.md (*andorsi3): New.
8329
e8a7b0c2
FS
83302002-11-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
8331
8332 * doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement.
8333
94aec8dd
KH
83342002-11-12 Kazu Hirata <kazu@cs.umass.edu>
8335
8336 * config/h8300/h8300.c (tiny_constant_address_p): Parenthesize
8337 expressions appropriately.
8338
fc98f5cb
KH
83392002-11-12 Kazu Hirata <kazu@cs.umass.edu>
8340
8341 * gthr-win32.h: Fix formatting.
8342
e27051f7
KH
83432002-11-12 Kazu Hirata <kazu@cs.umass.edu>
8344
8345 * config/h8300/h8300.c (single_one_operand): Correctly compute
8346 mask when mode is SImode.
8347 (single_zero_operand): Likewise.
8348 * config/h8300/h8300.md (two new anonymous insns): New.
8349
10bb8214
GP
83502002-11-12 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
8351
8352 * doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer
8353 to that entire project.
8354
ffe11c6b
RO
83552002-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8356
8357 * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old
8358 directories.
8359
3788cc17
ZW
83602002-11-11 Zack Weinberg <zack@codesourcery.com>
8361
8362 * params.def (ggc-min-expand, ggc-min-heapsize): New parameters.
8363 * doc/invoke.texi: Document them.
8364
8365 * ggc-page.c: Include params.h. Remove definitions of
8366 GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED. Replace
8367 GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define.
8368 (init_gcc): Don't set G.allocated_last_gc here.
8369 (ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and
8370 PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to
8371 perform collection.
8372 * ggc-simple.c: Similarly.
8373 * Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to
8374 dependencies.
8375
dd697f8c
KH
83762002-11-11 Kazu Hirata <kazu@cs.umass.edu>
8377
8378 * gthr-dce.h: Fix formatting.
8379
303b90b0
FS
83802002-11-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
8381
8382 PR c/8467
8383 * stmt.c (tail_recursion_args): Handle DECL_MODE differing from the
8384 mode of DECL_RTL case.
8385
e8437165
JJ
83862002-11-11 Janis Johnson <janis187@us.ibm.com>
8387
8388 * doc/contrib.texi: Merge in the list from the libstdc++ web pages.
8389
12f5c45e
JH
8390Mon Nov 11 12:06:08 CET 2002 Jan Hubicka <jh@suse.cz>
8391
8392 * i386.c (construct_container): Fix handling of SSE_CLASS.
8393
f981a754
JS
83942002-11-10 Joel Sherrill <joel@gcc.gnu.org>
8395
8396 * config/m68k/t-crtstuff (crti.o): Use this...
8397 ($(T)crti.o): ... instead.
8398 (crtn.o): Use this...
8399 ($(T)crtn.o): ... instead.
8400
a9b6f1e7 84012002-11-10 Eric Botcazou <ebotcazou@libertysurf.fr>
45ed7228
EB
8402
8403 PR c/8439
8404 * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
8405 if there is something new to be simplified.
8406
2da4124d
L
84072002-11-10 H.J. Lu <hjl@gnu.org>
8408
8409 * calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
8410 * expr.c (PUSH_ARGS_REVERSED): Likewise.
8411
8412 * config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1.
8413
7bb9f927
ZW
84142002-11-10 Zack Weinberg <zack@codesourcery.com>
8415
8416 * config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here...
8417 * config/rs6000/linux.h, config/rs6000/linux64.h,
8418 config/rs6000/windiss.h: ... not here.
8419
d8986082
JT
84202002-11-10 Jason Thorpe <thorpej@wasabisystems.com>
8421
8422 * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define
8423 __ABICALLS__ if TARGET_ABICALLS.
8424
2e64c636
JH
8425Sun Nov 10 18:49:21 CET 2002 Jan Hubicka <jh@suse.cz>
8426
8427 * i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc.
8428
04e6db94
JM
84292002-11-10 Joseph S. Myers <jsm@polyomino.org.uk>
8430
8431 * c-decl.c (grokdeclarator): Make error for duplicate type
8432 qualifiers into a pedwarn, disabled for C99.
8433
e9986d3a
HPN
84342002-11-10 Hans-Peter Nilsson <hp@bitrange.com>
8435
8436 * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
8437 as FUNCTION_ARG_PASS_BY_REFERENCE.
8438
4977bab6
ZW
84392002-11-09 Zack Weinberg <zack@codesourcery.com>
8440
8441 * doc/install.texi: Add *-*-vxworks* specific installation
8442 instructions.
8443
8444 * config/vxlib.c: Rewrite using generation numbers to identify
8445 valid TSD keys.
8446
8447Sat Nov 9 00:10:54 CET 2002 Jan Hubicka <jh@suse.cz>
8448
8449 * i386.c (x86_machine_dependent_reorg): Fix even more side cases.
8450
581d9404
JDA
84512002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
8452
8453 * pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
8454
8455 * config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define.
8456 (hppa*64*-*-hpux11*): Likewise. Use elfos.h with gas.
8457 * pa.c (output_millicode_call): Use symbol difference rather than
8458 $PIC_pcrel$0 when using HP assembler.
8459 * pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or
8460 not elfos.h (i.e., gas) is being used.
8461 (ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
8462 DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON,
8463 ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME,
8464 ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL,
8465 ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when
8466 using elfos.h.
8467 (TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h.
8468 (DWARF2_ASM_LINE_DEBUG_INFO): Delete.
8469 (ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not
8470 using elfos.h.
8471 (TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
8472 BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h.
8473 (TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL):
8474 Don't define when not using elfos.h.
8475 (ASM_DECLARE_RESULT): Don't define.
8476 * doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler
8477 doesn't work on hppa64-hp-hpux11.
8478 (hppa*-hp-hpux11): Update.
8479
9f689d92
JT
84802002-11-09 Jason Thorpe <thorpej@wasabisystems.com>
8481
8482 * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC
8483 to the assembler if -mno-abicalls was specified.
8484
1c03af86
JDA
84852002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
8486
8487 * pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
8488 ASM_OUTPUT_DEF): Delete.
8489
57800e9e
NB
84902002-11-09 Neil Booth <neil@daikokuya.co.uk>
8491
8492 * c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit.
8493
4977bab6
ZW
84942002-11-08 Roger Sayle <roger@eyesopen.com>
8495
8496 * real.c (real_sqrt): Update comment with bibliographic reference.
8497
8498Fri Nov 8 13:33:58 CET 2002 Jan Hubicka <jh@suse.cz>
8499
8500 * i386.md (sse_loadss, sse2_loadsd): Fix expander.
8501
8502Fri Nov 8 13:25:41 CET 2002 Jan Hubicka <jh@suse.cz>
8503
8504 * i386.c (x86_machine_dependent_reorg): Fix handling of empty functions.
8505
8506Fri Nov 8 13:01:42 CET 2002 Jan Hubicka <jh@suse.cz>
8507
8508 * builtins.c (expand_builtin_mathfn): Handle floor/ceil/trunc/round/nearbyint
8509 (expand_builtin): Likewise.
8510 * builtins.def: Add
8511 __builtin_floor, __builtin_floorf, __builtin_floorl
8512 __builtin_ceil, __builtin_ceilf, __builtin_ceill
8513 __builtin_round, __builtin_roundf, __builtin_roundl
8514 __builtin_trunc, __builtin_truncf, __builtin_truncl
8515 __builtin_nearbyint, __builtin_nearbyintf, __builtin_nearbyintl.
8516 * genopinit.c (optabs): Initialize the new optabs.
8517 * optab.c (init_optabs): Likewise.
8518 * optabs.h (optab_index): Add OTI_floor, OTI_ceil, OTI_trunc,
8519 OTI_round, OTI_nearbyint.
8520 (floor_optab, ceil_optab, trunc_optab, round_optab, nearbyint_optab): New.
8521 * doc/md.texi: Document new named patterns.
8522 * doc/extend.texi (builtin functions) Document
8523 floor, floorf, floorl, ceil, ceilf,
8524 ceill, round, roundf, roundl, trunc,
8525 truncf, truncl, nearbyint, nearbyintf, nearbyintl.
8526
8527Fri Nov 8 11:36:11 CET 2002 Jan Hubicka <jh@suse.cz>
8528
8529 * i386.md (sse_movdfcc, sse_movsfcc): Fix typo in previous patch.
8530
489d6e8e
DJ
85312002-11-08 Dale Johannesen <dalej@apple.com>
8532
7bb9f927 8533 * dbxout.c (dbxout_type): Fix stabs info for vector types.
489d6e8e 8534
a4b1e653
NB
85352002-11-08 Neil Booth <neil@daikokuya.co.uk>
8536
8537 PR preprocessor/8497
8538 PR preprocessor/8501
8539 * cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't
8540 start a directive. In assembler, #NUM is not a line directive.
8541
e6e8c772
NB
85422002-11-08 Neil Booth <neil@daikokuya.co.uk>
8543
8544 * cppmain.c (cpp_preprocess_file): Loop to pop any -included
8545 buffers.
8546
ffdf5eae
KH
85472002-11-08 Kazu Hirata <kazu@cs.umass.edu>
8548
8549 * config/h8300/h8300.md (two anonymous test insns): New.
8550
8dd3ca88
JH
8551Fri Nov 8 11:20:19 CET 2002 Jan Hubicka <jh@suse.cz>
8552
8553 * jump.c (mark_jump_label): Handle subregs of label_refs.
8554
4977bab6
ZW
8555Thu Nov 7 21:54:22 CET 2002 Jan Hubicka <jh@suse.cz>
8556
8557 * i386.md (sse_movdfcc, sse_movsfcc): Avoid overactive matching.
8558 * i386.c (ix86_expand_fp_movcc): Match the reversed cases.
8559
07cf4226
DM
85602002-11-07 David Mosberger <davidm@hpl.hp.com>
8561
7bb9f927
ZW
8562 * config/ia64/crtend.asm: Include "auto-host.h".
8563 [HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array.
8564 * config/ia64/crtbegin.asm: Similarly.
8565 * config/ia64/t-ia64 (crtbegin.o): Include from current directory.
8566 (crtend.o, crtbeginS.o, crtendS.o): Likewise.
07cf4226 8567
7bb9f927
ZW
8568 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): New.
8569 * configure.in: Use it if --enable-initfini-array not specified.
8570 * doc/install.texi (Configuration): Document --enable-initfini-array.
07cf4226
DM
8571 * configure, config.in: Rebuild.
8572
0977774b 85732002-11-07 Jason Thorpe <thorpej@wasabisystems.com>
7bb9f927 8574
0977774b 8575 * config/arm/arm-protos.h (arm_get_frame_size)
7bb9f927 8576 (thumb_get_frame_size): New prototypes.
0977774b 8577 * config/arm/arm.c (arm_get_frame_size)
7bb9f927
ZW
8578 (thumb_get_frame_size): New functions.
8579 (use_return_insn, arm_output_epilogue, arm_output_function_epilogue)
8580 (arm_compute_initial_elimination_offset, arm_expand_prologue): Use
0977774b
JT
8581 arm_get_frame_size.
8582 (thumb_expand_prologue, thumb_expand_epilogue): Use
8583 thumb_get_frame_size.
8584 * config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define.
8585 (machine_function): Add frame_size member.
8586 (THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size.
8587
85882002-11-07 Richard Earnshaw <rearnsha@arm.com>
8589
8590 * arm.c (bit_count): Make argument unsigned long. Return unsigned.
8591 Adjust code to use portable unsigned bit manipulation.
8592 (insn_flags, tune_flags): Change type to unsigned.
8593 (struct processors): Make flags unsigned long.
8594 (arm_override_options): Change type of count and current_bit_count
8595 to unsigned.
8596
74c13308
RE
85972002-11-07 Richard Earnshaw <rearnsha@arm.com>
8598
8599 * arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %.
8600
e284643a
R
8601Thu Nov 7 15:50:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
8602
8603 * sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM.
8604
c2905f7b
JH
8605Thu Nov 7 11:18:01 CET 2002 Jan Hubicka <jh@suse.cz>
8606
8607 * reg-stack.c (compensate_edge): Fix sanity check.
8608
3cfe49da
GK
86092002-11-05 Geoffrey Keating <geoffk@apple.com>
8610
8611 * config.gcc: Don't create crtbegin, crtend on Darwin; do create
8612 crt2.o. Rearrange t-darwin makefiles.
8613 * crtstuff.c [OBJECT_FORMAT_MACHO]: Delete.
8614 * unwind-dw2-fde-darwin.c: New.
8615 * unwind-dw2-fde-glibc.c: Correct comment.
8616 * unwind-dw2-fde.c (__register_frame_info_bases)
8617 [DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end.
8618 (classify_object_over_fdes): Use last_fde.
8619 (add_fdes): Likewise.
8620 (linear_search_fdes): Likewise.
8621 * unwind-dw2-fde.h (struct object)
8622 [DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field.
8623 (last_fde): New.
8624 * config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o.
8625 (ENDFILE_SPEC): No crtend.o.
8626 * config/t-darwin: New.
8627 * config/i386/t-darwin: Delete.
8628 * config/darwin-crt2.c: New.
8629 * config/rs6000/t-darwin: Delete contents duplicated in t-rs6000
8630 or config/t-darwin.
8631
4977bab6
ZW
86322002-11-06 Douglas B Rupp <rupp@gnat.com>
8633
8634 * config/i386/i386-interix.h (TARGET_SUBTARGET_DEFAULT): Or
8635 MASK_MS_BITFIELD_LAYOUT
8636 (SUBTARGET_OVERRIDE_OPTIONS): Warn about and turn off
8637 MS bitfields for Objective-C.
8638 (PCC_BIT_FIELD_TYPE_TEST, GROUP_BITFIELDS_BY_ALIGN): Remove
8639 defines.
8640
8641 * config/i386/i386.c (ix86_ms_bitfield_layout): New function.
8642 (TARGET_MS_BITFIELD_LAYOUT_P): Define to above function.
8643 (TARGET_USE_MS_BITFIELD_LAYOUT): Define.
8644
8645 * config/i386/i386.h (MASK_MS_BITFIELD_LAYOUT: New mask.
8646 TARGET_USE_MS_BITFIELD_LAYOUT): New macro.
8647 (TARGET_SWITCHES): Add above mask.
8648
8649 * testsuite/gcc.dg/bf-ms-layout.c: New test case.
8650 * testsuite/gcc.dg/bf-no-ms-layout.c: New test case.
8651 * testsuite/gcc.dg/i386-bitfield1.c (dg-options): Add appropriate
8652 flags for interix.
8653
8654Wed Nov 6 18:54:47 2002 Alexandre Oliva <aoliva@redhat.com>
8655
8656 * config/mips/mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output
8657 .gpword/.gpdword for ABI_N32 and ABI_64 too, if using the GNU
8658 assembler.
8659 * config/mips/mips.md (tablejump_internal3): Output .cpadd
8660 before jump on ABI_N32 too.
8661 (tablejump_internal4): Ditto on ABI_64. Increase maximum
8662 length to match.
8663
8664Wed Nov 6 17:16:48 CET 2002 Jan Hubicka <jh@.suse.cz>
8665
8666 * i386.md (negsf splitter): Accept memory operand in second register.
8667 (abssf/absdf splitters): Simplify
8668 (sse_loadss, sse_loadsd): Turn into expander.
8669
5d7e6254
DE
86702002-11-06 David Edelsohn <edelsohn@gnu.org>
8671
8672 PR target/8480
8673 * config/rs6000/rs6000.md (movdi_internal64): Discourage
8674 FPR to FPR moves.
8675
4fc6ad08
JJ
86762002-11-06 Janis Johnson <janis187@us.ibm.com>
8677
8678 * doc/contrib.texi: Merge in the list from the Java web pages.
8679
fa123c53
DB
86802002-11-06 David O'Brien <obrien@FreeBSD.org>
8681
8682 * config/sparc/freebsd: Fix typo.
8683
81e5bc3d
JDA
86842002-11-06 John David Anglin <dave@hiauly1.hia.nrc.ca>
8685
8686 * pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define.
8687
021fa809
AO
86882002-11-06 Alexandre Oliva <aoliva@redhat.com>
8689
8690 * config/mips/mips.md (call_value_multiple_internal2): Use dla for
8691 non-SImode addresses.
8692
4977bab6
ZW
8693Tue Nov 5 14:34:36 CET 2002 Jan Hubicka <jh@suse.cz>
8694
8695 * i386.md (float_truncate SSE splitter): Ensure that operand is not
8696 stack register.
8697 (float SSE splitters): Reorder conditional.
8698
e9577224
BW
86992002-11-05 Bob Wilson <bob.wilson@acm.org>
8700
8701 * config/xtensa/elf.h (LIB_SPEC): Add "-lhal".
8702
a9b11d44
JDA
87032002-11-05 John David Anglin <dave2hiauly1.hia.nrc.ca>
8704
8705 * pa64-hpux.h (LIB_SPEC): Fix p and pg options.
8706 (STARTFILE_SPEC): Remove p and pg options.
8707
5c7cd663
AH
87082002-11-05 Andrew Haley <aph@redhat.com>
8709
8710 * fold-const.c (fold): Don't transform (a0 op compound(a1,a2))
8711 to (compound(a1,a0 op a2)) if a0 or a1 have side effects.
8712
97ab1175
RS
87132002-11-05 Richard Sandiford <rsandifo@redhat.com>
8714
8715 * config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to...
8716 * config/mips/mips.c (mips_cannot_change_mode_class): ...here.
8717
4977bab6
ZW
87182002-11-04 Zack Weinberg <zack@codesourcery.com>
8719
8720 * gthr-vxworks.h: Rewritten from scratch.
8721 * config/vxlib.c: New file.
8722 * config/t-vxworks: Add config/vxlib.c to LIB2FUNCS_EXTRA.
8723 * config/rs6000/t-vxworks: Add config/vxlib.c to
8724 LIB2FUNCS_EXTRA here too, because of clash with
8725 config/rs6000/t-ppccomm.
8726
2aff9508
DJ
87272002-11-04 Dale Johannesen <dalej@apple.com>
8728
7bb9f927
ZW
8729 * doloop.c (doloop_modify_runtime): Fix loop count computation
8730 for unrolled loops.
2aff9508
DJ
8731 * loop.c (loop_invariant_p): Support calling from unroller.
8732
e86e721f
UW
87332002-11-04 Ulrich Weigand <uweigand@de.ibm.com>
8734
8735 * config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx
8736 for comparison.
8737
cff9f8d5
AH
87382002-11-04 Aldy Hernandez <aldyh@redhat.com>
8739
8740 * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New.
8741
8742 * config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove.
8743 (CLASS_CANNOT_CHANGE_MODE): Remove.
8744 (CANNOT_CHANGE_MODE_CLASS): New.
8745
8746 * config/alpha/alpha.h: Same.
8747
8748 * config/ia64/ia64.h: Same.
8749
8750 * config/mips/mips.h: Same.
8751
8752 * config/s390/s390.h: Same.
8753
8754 * config/sh/sh.h: Same.
8755
8756 * config/pa/pa64-regs.h: Same.
8757
8758 * config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype.
7bb9f927 8759
cff9f8d5
AH
8760 * config/sh/sh.c (sh_cannot_change_mode_class): New.
8761
8762 * config/mips/mips-protos.h (mips_cannot_change_mode_class): Add
8763 prototype.
8764
8765 * config/mips/mips.c (mips_cannot_change_mode_class): New.
8766
8767 * doc/tm.texi (Register Classes): Remove
8768 CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P.
8769 Document CANNOT_CHANGE_MODE_CLASS.
8770
8771 * reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS.
8772 (push_reload): Same.
8773
8774 * simplify-rtx.c (simplify_subreg): Same.
8775
8776 * reload1.c (choose_reload_regs): Same.
8777
8778 * recog.c (register_operand): Same.
8779
8780 * regrename.c (mode_change_ok): Change to use new
8781 CANNOT_CHANGE_MODE_CLASS infrastructure.
8782
8783 * regclass.c (cannot_change_mode_set_regs): New.
8784 Declare subregs_of_mode.
8785 (regclass): Use subregs_of_mode.
8786 Remove references to reg_changes_mode.
8787 (init_reg_sets_1): Remove class_can_change_mode and
8788 reg_changes_mode code.
8789 (invalid_mode_change_p): New.
8790 (dump_regclass): Use invalid_mode_change_p instead of
8791 class_can_change_mode.
8792 (regclass): Same.
8793 (record_operand_costs): Do not set reg_changes_mode.
8794
8795 * local-alloc.c (struct qty): Remove changes_mode field.
8796 (alloc_qty): Remove changes_mode initialization.
8797 (update_qty_class): Remove set of changes_mode.
8798 (find_free_reg): Use subregs_of_mode.
8799
8800 * global.c (find_reg): Use subregs_of_mode info.
8801
8802 * rtl.h (cannot_change_mode_set_regs): New prototype.
8803 (invalid_mode_change_p): Same.
8804 (REG_CANNOT_CHANGE_MODE_P): New macro.
8805
8806 * flow.c (mark_used_regs): Calculate subregs_of_mode. Remove
8807 REG_CHANGES_MODE.
8808 (life_analysis): Clear subregs_of_mode.
8809
8810 * combine.c (subst): Pass class to CLASS_CANNOT_CHANGE_MODE_P.
8811 Remove use of CLASS_CANNOT_CHANGE_MODE.
8812 (simplify_set): Same.
8813 (gen_lowpart_for_combine): Calculate subregs_of_mode. Remove
8814 REG_CHANGES_MODE.
7bb9f927 8815
cff9f8d5
AH
8816 * regs.h: Add extern for subregs_of_mode;
8817 Include hard-reg-set and basic-block.
8818 (REG_CHANGES_MODE): Delete.
8819
4977bab6
ZW
88202002-11-03 Roger Sayle <roger@eyesopen.com>
8821
8822 * real.c (real_sqrt): New function to calculate square roots.
8823 * real.h (real_sqrt): Add function prototype.
8824 * builtins.c (fold_builtin): Fold sqrt of constant argument.
8825 * simplify-rtx.c (simplify_unary_operation): Simplify sqrt
8826 of constant argument.
8827
2ff363e0
JDA
88282002-11-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
8829
8830 * jump.c (never_reached_warning): Don't set contains_insn until the
8831 first line note is seen.
8832
cd1d3445
DE
88332002-11-03 David Edelsohn <edelsohn@gnu.org>
8834
8835 * config/rs6000/rs6000.md (movti_string): Use string instructions.
8836
c9fe6f9f
RS
88372002-11-03 Roger Sayle <roger@eyesopen.com>
8838
8839 PR c/7128
8840 * c-typeck.c (c_expand_asm_operands): Defend against
8841 error_mark_nodes in the output argument to avoid ICE.
8842
0b40e88e
EB
88432002-11-03 Eric Botcazou <ebotcazou@libertysurf.fr>
8844
8845 PR middle-end/8408
8846 * genrecog.c (preds): Handle ADDRESSOF.
8847 (validate_pattern): Mark it as an lvalue.
8848
dff9f1b6
DE
88492002-11-02 David Edelsohn <edelsohn@gnu.org>
8850
8851 * config/rs6000/rs6000.c (rs6000_override_options): Use string
8852 instructions when optimizing for size.
8853
46eefac4
KH
88542002-11-02 Kazu Hirata <kazu@cs.umass.edu>
8855
8856 * config/h8300/h8300.h: Fix comment typos.
8857 * config/h8300/h8300.md: Likewise.
8858 * config/h8300/lib1funcs.asm: Likewise.
8859
102b60d1
GP
88602002-11-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
8861
8862 Revert this change:
8863
8864 *doc/install.texi (Installing GCC: Configuration): Clarify
8865 the only supported ways to configure gcc.
8866
46be79e7
KH
88672002-11-01 Kazu Hirata <kazu@cs.umass.edu>
8868
8869 * config/h8300/h8300.md (anonymous and:QI pattern): Use 'n'
8870 instead of 'O' for the constraint for the second operand.
8871
bec80a45
MM
88722002-11-01 Mark Mitchell <mark@codesourcery.com>
8873
8874 PR c++/8391
8875 * toplev.c (rest_of_compilation): Do not refuse to output code for
8876 an inline function in a local class.
8877
8df91177
DB
88782002-11-01 David O'Brien <obrien@FreeBSD.org>
8879
8880 * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
8881 (TRANSFER_FROM_TRAMPOLINE): Reformat.
8882 Add comment.
8883
616dc555
KH
88842002-11-01 Kazu Hirata <kazu@cs.umass.edu>
8885
8886 * config/h8300/h8300.h (CAN_ELIMINATE): Simplify.
8887
25a533a0
TM
88882002-11-01 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
8889
8890 * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New.
8891
dcffbade
SE
88922002-11-01 Steve Ellcey <sje@cup.hp.com>
8893
8894 * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove.
8895 (MASK_INLINE_DIV_THR): Remove.
8896 (TARGET_INLINE_DIV_LAT): Remove.
8897 (TARGET_INLINE_DIV_THR): Remove.
8898 (TARGET_INLINE_DIV): Remove.
8899 (MASK_INLINE_FLOAT_DIV_LAT): New macro.
8900 (MASK_INLINE_FLOAT_DIV_THR): New macro.
8901 (MASK_INLINE_INT_DIV_LAT): New macro.
8902 (MASK_INLINE_INT_DIV_THR): New macro.
8903 (TARGET_INLINE_FLOAT_DIV_LAT): New macro.
8904 (TARGET_INLINE_FLOAT_DIV_THR): New macro.
8905 (TARGET_INLINE_INT_DIV_LAT): New macro.
8906 (TARGET_INLINE_INT_DIV_THR): New macro.
8907 (TARGET_INLINE_FLOAT_DIV): New macro.
8908 (TARGET_INLINE_INT_DIV): New macro.
8909 * config/ia64/ia64.md (divsi3): Change to use new macros.
8910 (modsi3): Ditto.
8911 (udivsi3): Ditto.
8912 (umodsi3): Ditto.
8913 (divsi3_internal): Ditto.
8914 (divdi3): Ditto.
8915 (moddi3): Ditto.
8916 (udivdi3): Ditto.
8917 (umoddi3): Ditto.
8918 (divdi3_internal_lat): Ditto.
8919 (divdi3_internal_thr): Ditto.
8920 (divsf3): Ditto.
8921 (divsf3_internal_lat): Ditto.
8922 (divsf3_internal_thr): Ditto.
8923 (divdf3): Ditto.
8924 (divdf3_internal_lat): Ditto.
8925 (divdf3_internal_thr): Ditto.
8926 (divtf3): Ditto.
8927 (divtf3_internal_lat): Ditto.
8928 (divtf3_internal_thr): Ditto.
8929 * config/ia64/ia64.c (ia64_override_options): Change
8930 to check new macros for conflicts in settings.
8931 * doc/invoke.texi (-minline-divide-min-latency): Remove.
8932 (-minline-divide-max-throughput): Remove.
8933 (-minline-float-divide-min-latency): New.
8934 (-minline-float-divide-max-throughput): New.
8935 (-minline-int-divide-min-latency): New.
8936 (-minline-int-divide-max-throughput): New.
7bb9f927 8937
d5db54a1
RE
89382002-11-01 Richard Earnshaw (rearnsha@arm.com)
8939
8940 PR target/7856
8941 * arm.c (use_return_insn): Don't use a return insn if there are
8942 saved integer regs, but LR is not one of them.
8943
075fc17a
JH
8944Fri Nov 1 10:33:15 CET 2002 Jan Hubicka <jh@suse.cz>
8945
8946 * expr.c (emit_move_insn): Use SCALAR_FLOAT_MODE_P
8947 * machmode.h (SCALAR_FLOAT_MODE_P): New macro.
8948
4977bab6
ZW
8949Thu Oct 31 18:20:50 CET 2002 Jan Hubicka <jh@suse.cz>
8950
8951 * i386.md (sse_loadss, sse_loadsd): Canonicalize; add expander
8952 (movps, movpd splitters): Use canonical form.
8953 (movv2di): Fix merge problem.
8954
8955Thu Oct 31 16:22:31 CET 2002 Jan Hubicka <jh@suse.cz>
8956
8957 * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
8958
9efb4cb6
NN
89592002-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
8960
8961 PR optimization/6162
8962 * doc/md.texi: Document restriction on commutative operand
8963 specification.
8964
ce02ba25
EC
89652002-10-31 Eric Christopher <echristo@redhat.com>
8966
7bb9f927 8967 * explow.c (convert_memory_address): Use shallow_copy_rtx.
ce02ba25 8968
8efb33ec
SE
89692002-10-31 Steve Ellcey <sje@cup.hp.com>
8970
8971 * expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN.
8972
a543c709
SE
89732002-10-31 Steve Ellcey <sje@cup.hp.com>
8974
8975 * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats.
8976
cdc58a82
DJ
8977Thu Oct 31 Dale Johannesen <dalej@apple.com>
8978
8979 * config/rs6000/darwin.h: Correct formatting in previous.
8980
e381c27a
DJ
8981Thu Oct 31 Dale Johannesen <dalej@apple.com>
8982
8983 * config/rs6000/darwin.h: Enable -falign-xxx options.
8984
55ba61f3
JH
8985Thu Oct 31 18:08:00 CET 2002 Jan Hubicka <jh@suse.cz>
8986
8987 * i386.c (override_options): Set defaults for flag_omit_frame_pointer,
8988 flag_asynchronous_unwind_tables, flag_pcc_struct_return.
8989 * i386.c (optimization_options): Set flag_omit_frame_pointer,
8990 flag_asynchronous_unwind_tables, flag_pcc_struct_return to 2.
8991 Do not clear -momit-leaf-frame-pointer when profiling.
8e746279 8992 (ix86_frame_pointer_required): Frame pointer is always required when
55ba61f3
JH
8993 profiling.
8994
f7e5dfbd
JH
8995Thu Oct 31 16:09:44 CET 2002 Jan Hubicka <jh@suse.cz>
8996
8997 * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
8998
ff881d52
R
8999Thu Oct 31 12:45:55 2002 J"orn Rennecke <joern.rennecke@superh.com>
9000
9001 * sh.h (binary_logical_operator): Declare.
9002 * sh.c (binary_logical_operator): New function.
9003 * sh.md (xordi3+1): New combiner splitter pattern.
9004
e8e4c876
DB
90052002-10-31 David O'Brien <obrien@FreeBSD.org>
9006
9007 * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Define
9008 __enable_execute_stack function.
9009
4977bab6
ZW
90102002-10-30 Zack Weinberg <zack@codesourcery.com>
9011
9012 * gthr.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h,
9013 gthr-solaris.h, gthr-win32.h: Remove __gthread_key_dtor.
9014 * unwind-sjlj.c (fc_key_dtor): Delete.
9015 (fc_key_init): Adjust __gthread_key_create call to match.
9016
27bd7792
AH
90172002-10-30 Aldy Hernandez <aldyh@redhat.com>
9018
7bb9f927 9019 * c-common.c: Add GTY to vector_type_node_list.
27bd7792 9020
a02aa5b0
JDA
90212002-10-30 John David Anglin <dave@hiauly.hia.nrc.ca>
9022
9023 * pa-linux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
9024 * pa-protos.h (attr_length_millicode_call, attr_length_call,
9025 pa_init_machine_status): Declare new global functions.
9026 * pa.c (void copy_fp_args, length_fp_args, get_plabel): Declare and
9027 implement new functions.
9028 (attr_length_millicode_call, attr_length_call): Implement.
9029 (total_code_bytes): Change type to long.
9030 (pa_output_function_prologue): Compute total_code_bytes on TARGET_64BIT.
9031 Reset counter if flag_function_sections.
9032 (output_deferred_plabels): Set output alignment to 3 for TARGET_64BIT.
9033 (output_cbranch): Move call to gen_label_rtx.
9034 (output_millicode_call): Rewrite adding long TARGET_64BIT call, expose
9035 delay slot in all variants, shorten pc-relative calls.
9036 (output_call): Rewrite adding long TARGET_64BIT call, improved delay
9037 slot usage and exposure, various new call variants, and shortened
9038 sequences for some variants on TARGET_PA_20.
9039 Miscellaneous format changes.
9040 * pa.h (total_code_bytes): Change type to long.
9041 (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_LONG_ABS_CALL,
9042 TARGET_LONG_PIC_SDIFF_CALL, TARGET_LONG_PIC_PCREL_CALL): Define.
9043 (TARGET_SWITCHES): Add "-mlong-calls" and "-mno-long-calls" options.
9044 (EXTRA_CONSTRAINT, GO_IF_LEGITIMATE_ADDRESS,
9045 LEGITIMIZE_RELOAD_ADDRESS): Don't use long floating point loads and
9046 stores on TARGET_ELF32.
9047 *pa.md (define_delay): Allow insns in delay on TARGET_PORTABLE_RUNTIME.
9048 (unnamed patterns for mulsi3, divsi3, udivsi3, modsi3, umodsi3 and
9049 canonicalize_funcptr_for_compare expanders): Calculate attribute length
9050 attr_length_millicode_call().
9051 (call_internal_symref, call_value_internal_symref): Clobber register 1.
9052 Calculate attribute length using attr_length_call().
9053 (call_internal_reg_64bit, call_value_internal_reg_64bit): Move gp load
9054 to delay slot.
9055 (sibcall, sibcall_value): Rewrite.
9056 (sibcall_internal_symref, sibcall_value_internal_symref): Clobber
9057 register 1. Use attr_length_call().
9058 (sibcall_internal_symref_64bit, sibcall_value_internal_symref_64bit):
9059 New patterns.
9060 (unamed pattern for canonicalize_funcptr_for_compare): Rewrite.
9061 * som.h (MEMBER_TYPE_FORCES_BLK): Define.
9062 * t-pa64 (TARGET_LIBGCC2_CFLAGS): Add "-mlong-calls".
9063 * doc/invoke.texi (mlong-calls): Document.
9064
9402f6fb
RS
90652002-10-30 Roger Sayle <roger@eyesopen.com>
9066
9067 * fold-const.c (fold_binary_op_with_conditional_arg): Improve
9068 handling of cases where one or both branches of the conditional
9069 have void type, i.e. throw an exception or don't return.
9070 (fold): Only apply (and undo) type conversion to the non-void
9071 branches of a COND_EXPR.
9072
9b5b7e3a
MM
90732002-10-30 Mark Mitchell <mark@codesourcery.com>
9074
9075 PR c++/8333
9076 * varasm.c (asm_output_aligned_bss): Do not call
9077 ASM_GLOBALIZE_LABEL.
9078
df7a8989
DE
90792002-10-30 David Edelsohn <edelsohn@gnu.org>
9080 Torbjorn Granlund <tege@swox.com>
9081
9082 * config/rs6000/rs6000.md (load_toc_v4_PIC_1): Use preferred form
9083 for addressibility.
9084 (load_toc_v4_PIC_1b): Same.
9085
d2d199a3
KH
90862002-10-30 Kazu Hirata <kazu@cs.umass.edu>
9087
9088 * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
9089 Truncate the addresses for H8/300 using HImode.
9090
4977bab6
ZW
9091Tue Oct 29 23:28:10 CET 2002 Jan Hubicka <jh@suse.cz>
9092
9093 * i386.md (negdf splitter): Fix construction of the constant.
9094
9095Tue Oct 29 20:47:06 CET 2002 Jan Hubicka <jh@suse.cz>
9096
9097 * i386.md (negsf, negdf): Reorganize to use vector modes
9098 for SSE variants.
9099 (abssf, absdf): Use force_reg.
9100 (movv4sf, movv2df): New splitters.
9101 * i386.h (PREDICATE_CODES): add zero_extended_scalar_load_operand
9102 * i386.c (zero_extended_scalar_load_operand
9103
9104 * i386-protos.h (ix86_expand_call): Update prototype.
9105 * i386.c (ix86_function_ok_for_sibcall): Handle 64bit
9106 (ix86_expand_call): Use r11 for indirect sibcalls.
9107 * i386.md (call, call_value, untyped_call, call_value_pop):
9108 update x86_expand_call call.
9109 (sibcall, sibcall_value): new patterns
9110 (call_rex64, call_value_rex64): Do not accept sibcalls.
9111 (sibcall_rex64, sibcall_value_rex64,
9112 sibcall_rex64_v, sibcall_value_rex64_v): New.
9113
9114Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
9115
9116 * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
9117 before final pass.
9118
33c21f5c
HPN
91192002-10-29 Hans-Peter Nilsson <hp@bitrange.com>
9120
9121 * toplev.c (rest_of_type_compilation): Return early in case of
9122 errors.
9123 (check_global_declarations): Don't call debug_hooks->global_decl
9124 in case of errors.
9125
d1445f8d
AB
91262002-10-28 Andreas Bauer <baueran@in.tum.de>
9127
9128 * doc/c-tree.texi (Tree overview): Fix typos.
9129
fc556cb9
PE
91302002-10-29 Phil Edwards <pme@gcc.gnu.org>
9131
9132 * Makefile.in (gnucompare*): Only record bad comparisons
9133 if there really was a bad comparison.
9134
f8ca7923
JH
9135Tue Oct 29 19:32:16 CET 2002 Jan Hubicka <jh@suse.cz>
9136
9137 * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H'
9138 * i386.md (movsf*, movdf*): Use 'C' instead of 'H'
9139 * md.texi (machine dependent constraints): Document 'C'
9140
9141 * simplify-rtx.c (simplify_subreg): Fix const_int->vector subregging.
9142
9143 * i386.c (ix86_expand_vector_move): Fix.
9144
9145 * i386.c (ix86_expand_builtin): Use sse2_maskmovdqu_rex64.
9146 * i386.md (sse2_maskmovdqu_rex64): New pattern
9147
9148 PR target/8322
9149 * xmmintrin.h (_mm_stream_pi, _mm_stream_pd): Fix cast.
9150 (ix86_init_mmx_sse_builtins): Fix type.
9151
c95d07f8
JT
91522002-10-29 Jason Thorpe <thorpej@wasabisystems.com>
9153
9154 * gthr-posix.h: Include <unistd.h> for feature tests.
9155 (sched_get_priority_max, sched_get_priority_min)
9156 (pthread_getschedparam, pthread_setschedparam): Only use
9157 if _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
272d0bee 9158 (__gthread_objc_thread_set_priority): Don't treat all nonzero
c95d07f8
JT
9159 returns from sched_get_priority_max and sched_get_priority_min
9160 as an error.
9161
3950794d
KH
91622002-10-29 Kazu Hirata <kazu@cs.umass.edu>
9163
9164 * config/h8300/h8300.h (TARGET_DEFAULT): Make it
9165 MASK_QUICKCALL.
9166
803d56f5
KH
91672002-10-29 Kazu Hirata <kazu@cs.umass.edu>
9168
9169 * config/h8300/h8300.c (h8300_eightbit_constant_address_p): New.
9170 (h8300_tiny_constant_address_p): Likewise.
9171 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Use
9172 h8300_eightbit_constant_address_p.
9173 (TINY_CONSTANT_ADDRESS_P): Use h8300_tiny_constant_address_p.
9174 * config/h8300/h8300-protos.h: Add the prototypes for the two
9175 new functions.
9176
6bb8a3f7
KH
91772002-10-29 Kazu Hirata <kazu@cs.umass.edu>
9178
9179 * reload1.c (update_eliminables): Unconditionally check if
9180 frame_pointer_needed has changed.
9181
fc8dfa20
JH
9182Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
9183
9184 * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
9185 before final pass.
9186
6e7727eb
EB
91872002-10-29 Eric Botcazou <ebotcazou@libertysurf.fr>
9188
a5163dcd 9189 PR optimization/8334
7bb9f927
ZW
9190 * expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation;
9191 check for zero operands explicitly.
6e7727eb 9192
02c6a17a
RS
91932002-10-29 Richard Sandiford <rsandifo@redhat.com>
9194
9195 * config/mips/mips.md (extv, extzv, insv): Set size of referenced
9196 memory after adjusting to BLKmode.
9197
1862869d
KH
91982002-10-29 Kazu Hirata <kazu@cs.umass.edu>
9199
9200 * config/h8300/h8300.h (MASK_*): New.
9201 (TARGET_*): Use MASK_*.
9202
4977bab6
ZW
92032002-10-28 Zack Weinberg <zack@codesourcery.com>
9204
9205 * config.gcc (*-*-vxworks, powerpc-wrs-vxworks*): New stanzas.
9206 * config/t-vxworks, config/vxworks.h, config/rs6000/t-vxworks,
9207 config/rs6000/vxworks.h: New files.
9208 * config/rs6000/sysv4.h: Rip out -mvxworks and all related code.
9209
9210 * config.gcc (alpha*-*-vxworks*, arm-*-vxworks*,
9211 i?86-wrs-vxworks*, i960-wrs-vxworks* [all],
9212 m68k-wrs-vxworks*, mips-wrs-vxworks, powerpc-wrs-vxworks*,
9213 powerpcle-wrs-vxworks*, sparc*-wrs-vxworks* [all],
9214 sparc-*-vxsim*): Delete stanzas.
9215 * gthr-vxworks.h: Rip out all substantive code and just
9216 include gthr-single.h.
9217
9218 * config/alpha/vxworks.h, config/arm/vxarm.h,
9219 config/i386/vxi386.h, config/i960/t-vxworks960,
9220 config/i960/vx960-coff.h, config/i960/vx960.h,
9221 config/m68k/t-vxworks68, config/m68k/vxm68k.h,
9222 config/mips/vxworks.h, config/rs6000/vxppc.h,
9223 config/sparc/t-vxsparc, config/sparc/t-vxsparc64,
9224 config/sparc/vxsim.h, config/sparc/vxsparc.h,
9225 config/sparc/vxsparc64.h: Delete files.
9226
ee3c755a
JT
92272002-10-28 Jason Thorpe <thorpej@wasabisystems.com>
9228
9229 * config.gcc (*-*-netbsd*): Add NETBSD_ENABLE_PTHREADS to
9230 tm_defines if pthreads are enabled.
9231 * config/netbsd.h (LIB_SPEC): Only support the -pthread option
9232 if NETBSD_ENABLE_PTHREADS is defined.
9233
423adbb9
KH
92342002-10-28 Kazu Hirata <kazu@cs.umass.edu>
9235
9236 * ChangeLog.1: Fix typos.
9237 * cse.c: Fix a comment typo.
9238 * reload1.c: Likewise.
9239
d7521977
HPN
92402002-10-27 Hans-Peter Nilsson <hp@bitrange.com>
9241
9242 * fixinc/inclhack.def (libc1_G_va_list): Correct test_text.
9243 * fixinc/tests/base/_G_config.h: New file.
9244
3eae4643
KH
92452002-10-27 Kazu Hirata <kazu@cs.umass.edu>
9246
9247 * combine.c: Fix comment formatting.
9248 * loop.c: Likewise.
9249 * real.c: Likewise.
9250 * regclass.c: Likewise.
9251 * regmove.c: Likewise.
9252 * regrename.c: Likewise.
9253 * reg-stack.c: Likewise.
9254 * reload1.c: Likewise.
9255 * reload.c: Likewise.
9256 * reload.h: Likewise.
9257 * unroll.c: Likewise.
9258
e591c83d
KH
92592002-10-27 Kazu Hirata <kazu@cs.umass.edu>
9260
9261 * reload1.c (reload): Fix a comment typo.
9262
a0ba837e
JH
9263Sun Oct 27 10:15:24 CET 2002 Jan Hubicka <jh@suse.cz>
9264
9265 * linux64.h (DEFAULT_PCC_STRUCT_RETURN): Define.
9266
cc0017a9
ZD
92672002-10-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
9268
9269 * Makefile.in (dwarf2out.o): Add dependendcy on hashtab.h.
9270 * dwarf2out.c: Include hashtab.h.
9271 (is_main_source): New static variable.
9272 (attr_checksum, die_checksum): Modified to handle die references.
9273 (same_loc_p, same_dw_val_p, same_attr_p, same_die_p, same_die_p_wrap,
9274 unmark_all_dies, htab_cu_hash, htab_cu_eq, htab_cu_del, check_duplicate_cu,
9275 record_comdat_symbol_number): New static functions.
9276 (output_comp_unit, compute_section_prefix, is_type_die, break_out_includes,
9277 mark_dies, unmark_dies, dwarf2out_start_source_file): Modified.
9278 * toplev.c (rest_of_decl_compilation): Call of dwarf2out_decl for type
9279 declarations added.
9280
d7af42bc
KH
92812002-10-26 Kazu Hirata <kazu@cs.umass.edu>
9282
9283 * config/h8300/h8300.c (initial_offset): Change to
9284 h8300_initial_elimination_offset.
9285 * config/h8300/h8300.h (INITIAL_ELIMINATION_OFFSET): Use
9286 h8300_initial_elimination_offset.
9287 * config/h8300/h8300-protos.h: Update the prototype.
9288
7e5037dc
HPN
92892002-10-26 Hans-Peter Nilsson <hp@bitrange.com>
9290
4b32269b
HPN
9291 * config/mmix/mmix.h (LIBCALL_VALUE): Use
9292 MMIX_RETURN_VALUE_REGNUM, not MMIX_OUTGOING_RETURN_VALUE_REGNUM.
9293 (FUNCTION_VALUE_REGNO_P): Similar, but move code to...
9294 * config/mmix/mmix.c (mmix_function_value_regno_p): New.
9295 * config/mmix/mmix-protos.h: Remove needless ifdefs on TREE_CODE
9296 and RTX_CODE.
9297 (mmix_function_value_regno_p): Declare.
9298
7e5037dc
HPN
9299 * config/mmix/mmix.md ("fixuns_truncdfdi2"): Replace unsigned_fix,
9300 invalid for floating point mode result, with fix.
9301
4977bab6
ZW
9302Fri Oct 25 00:04:21 2002 Alexandre Oliva <aoliva@redhat.com>
9303
9304 * Makefile.in (GCC_FOR_TARGET): Add -L$(objdir)/../ld.
9305 (STAGE2_FLAGS_TO_PASS): Pass GCC_FOR_TARGET.
9306 (stage1_build): Likewise.
9307
94c1e0e8
MS
93082002-10-25 Mike Stump <mrs@apple.com>
9309
da89b956 9310 Fixes gcc.dg/warn-1.c.
4977bab6
ZW
9311 * c-typeck.c (warn_for_assignment): Don't print argument number,
9312 if zero.
94c1e0e8 9313
0fb53e68
JH
9314Sat Oct 26 01:44:46 CEST 2002 Jan Hubicka <jh@suse.cz>
9315
9316 * toplev.c (dump_file_index): Add DFI_ce3.
9317 (dump_file_info): Likewise.
9318 (rest_of_compilation): Run first ifcvt pass before tracer.
9319
794186ca
SE
93202002-10-25 Steve Ellcey <sje@cup.hp.com>
9321
9322 * config/ia64/hpux.h (BITS_BIG_ENDIAN): Remove.
9323
cd60b4b8
RH
93242002-10-25 Richard Henderson <rth@redhat.com>
9325
9326 * real.c (real_to_decimal): If the >1 tens reduction loop results
9327 in a negative exponent, fall into the <1 pten computation.
9328
f3763a44
ZW
93292002-10-25 Zack Weinberg <zack@codesourcery.com>
9330
9331 PR middle-end/6994
9332 * c-objc-common.c (inline_forbidden_p): Can not inline
9333 functions containing structures or unions containing VLAs.
9334 * tree-inline.c (walk_tree): For all class 't' nodes, walk
9335 TYPE_SIZE and TYPE_SIZE_UNIT.
9336 (copy_tree_r): Copy types if they are variably modified.
9337
8c40b097
UW
93382002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
9339
9340 * config/s390/s390.md: Remove old-style peepholes.
9341
522ec94e
UW
93422002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
9343
9344 * config/s390/s390.c (s390_decompose_address): Do not range check the
9345 displacement if base or index is the argument pointer register.
9346
a7475ab1
HPN
93472002-10-24 Hans-Peter Nilsson <hp@bitrange.com>
9348
85c87994
HPN
9349 PR other/3337
9350 PR bootstrap/6763
9351 PR bootstrap/8122
a7475ab1
HPN
9352 * fixinc/inclhack.def (libc1_G_va_list): New fix.
9353 * fixinc/fixincl.x: Regenerate.
9354 * config/i386/linux.h: Move MD_FALLBACK_FRAME_STATE_FOR inside
9355 ifndef IN_LIBGCC2. Wrap it together with signal.h and
9356 sys/ucontext.h inclusion in ifndef USE_GNULIBC_1.
9357 * configure.in (gcc_AC_CHECK_DECLS): Check vasprintf too.
9358 * config.in, configure: Regenerate.
9359
7a360cce
IS
93602002-10-24 Igor Shevlyakov <igor@microunity.com>
9361
7bb9f927 9362 * varasm.c (struct rtx_const): Array size 16 for V16QImode.
7a360cce 9363
fcbe3b89
RH
93642002-10-24 Richard Henderson <rth@redhat.com>
9365
9366 * config/i386/i386.c (x86_output_mi_thunk): Fix x86_64 pic jump.
9367
1a86c850
KH
93682002-10-24 Kazu Hirata <kazu@cs.umass.edu>
9369
9370 * config/h8300/h8300.c (initial_offset): Simplify by using
9371 round_frame_size.
9372
de7999ba
MM
93732002-10-24 Marek Michalkiewicz <marekm@amelek.gda.pl>
9374
9375 * doc/install.texi (avr): Update required binutils version.
9376
93772002-10-24 Theodore A. Roth <troth@openavr.org>
9378
9379 * doc/install.texi: Point avr users at more up-to-date information.
9380
84817c5d
UW
93812002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
9382
9383 * config/s390/s390.md (movdi, movsi, movhi, movqi): Add peepholes2
9384 to pull operands out of the literal pool where possible.
9385
d0749053
DC
93862002-10-24 Denis Chertykov <denisc@overta.ru>
9387
9388 * config/avr/avr.c (init_cumulative_args): Test fntype for zero.
9389
37d0b254
SE
93902002-10-24 Steve Ellcey <sje@cup.hp.com>
9391
9392 * expr.c (convert_move): If unsignedp is less then zero there
9393 is no equivalent code.
9394
7af907e9
ZW
93952002-10-24 Zack Weinberg <zack@codesourcery.com>
9396
9397 * tree.def: Delete mention of nonexistent ARRAY_TYPE fields.
9398
862a2d83
UW
93992002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
9400
7af907e9 9401 * config/s390/s390.h: Rework comments; re-sort target macro definitions
862a2d83
UW
9402 according to the sequence they are defined in the manual.
9403 (POINTER_BOUNDARY): Remove.
9404
489eda65
KH
94052002-10-24 Kazu Hirata <kazu@cs.umass.edu>
9406
9407 * config/h8300/h8300.c (round_frame_size): Replace 8 with
9408 BITS_PER_UNIT.
9409
2ba08201
KH
94102002-10-24 Kazu Hirata <kazu@cs.umass.edu>
9411
9412 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Make it
9413 64-bit safe.
9414 (TINY_CONSTANT_ADDRESS_P): Likewise.
9415
5f13cfc6
RH
94162002-10-24 Richard Henderson <rth@redhat.com>
9417
9418 * config/ia64/ia64.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
9419 (ia64_output_mi_thunk): Rewrite to use rtl, and to handle the
9420 vcall offset.
9421
3bd216f2
RH
94222002-10-24 Richard Henderson <rth@redhat.com>
9423
7af907e9
ZW
9424 PR opt/7944
9425 * reload.c (find_reloads_toplev): Mode of X is not important
3bd216f2
RH
9426 when simplifying subregs of constants.
9427
60bc2b4b
RS
94282002-10-24 Richard Sandiford <rsandifo@redhat.com>
9429
9430 * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Add
9431 MIPS_MARCH_CONTROLS_SOFT_FLOAT=1 to $tm_defines.
9432 * config/mips/mips.c (MIPS_MARCH_CONTROLS_SOFT_FLOAT): Default to 0.
9433 (override_options): Base default setting of MASK_SOFT_FLOAT on -march
9434 if MIPS_MARCH_CONTROLS_SOFT_FLOAT.
9435
5be5c8d4
RS
94362002-10-24 Richard Sandiford <rsandifo@redhat.com>
9437
9438 * optabs.c (expand_binop): Don't reuse the shift target in the
9439 middle of shift sequences.
9440
4977bab6
ZW
9441Wed Oct 23 22:48:44 CEST 2002 Jan Hubicka <jh@suse.cz>
9442
9443 * i386.md (abs splitters): Do not produce nested subregs.
9444
9445Wed Oct 23 12:42:32 CEST 2002 Jan Hubicka <jh@suse.cz>
9446
9447 * i386.md (movti_rex64): Fix constraints.
9448
9449Wed Oct 23 12:01:21 CEST 2002 Jan Hubicka <jh@suse.cz>
9450
9451 * i386.md (abssf,absdf): Use vector operands for SSE
9452 (abssf2_ifs, absdf2_ifs, absdf2_ifs_rex64 and splitters): Update for
9453 vector operand.
9454
196e1ae3
ZL
94552002-10-23 Ziemowit Laski <zlaski@apple.com>
9456
9457 * objc/objc-act.c (get_static_reference): Remove unneeded
9458 TYPE_BINFO initialization.
9459 (get_object-reference): Likewise.
9460 (build_constructor): Tighten precondition check.
9461 (finish_message_expr): Likewise.
9462
8bfb45f8
JJ
94632002-10-23 Jakub Jelinek <jakub@redhat.com>
9464
9465 * config/i386/i386.c (local_symbolic_operand): Move LABEL_REF test
9466 after CONST test.
9467
16448fd4
SE
94682002-10-23 Steve Ellcey <sje@cup.hp.com>
9469
9470 * config/ia64/ia64.c (hfa_element_mode): Don't allow 128 bit floats
9471 in HFAs.
9472
e2358068
RH
94732002-10-23 Richard Henderson <rth@redhat.com>
9474
9475 * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
9476 (alpha_output_mi_thunk_osf): Handle vcall_offset.
9477
8bcefb43
ZW
94782002-10-23 Zack Weinberg <zack@codesourcery.com>
9479
9480 * langhooks.h (struct lang_hooks_for_tree_inlining): Add
9481 var_mod_type_p.
9482 * langhooks-def.h: Default for tree_inlining.var_mod_type_p is
9483 hook_tree_bool_false.
9484
9485 * tree.c (variably_modified_type_p): Moved here from
9486 cp/tree.c. Use lang_hooks.tree_inlining.var_mod_type_p for
9487 language-specific cases. Due to this, must weaken some 'if
9488 and only if' checks to merely 'if'.
9489 * tree.h: Prototype variably_modified_type_p.
9490
9491 * tree-inline.c (walk_tree): #undef WALK_SUBTREE_TAIL at end.
9492
8e509cf9
UW
94932002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
9494
9495 * config/s390/linux.h (CC1_SPEC, CC1PLUS_SPEC): Remove.
9496 * config/s390/s390.c (optimization_options): Disable -fcaller-saves.
9497
9498 * config/s390/s390-protos.h (fp_operand): Remove.
9499 * config/s390/s390.c (fp_operand): Remove.
9500 * config/s390/s390.md ("movdi"): Replace fp_operand by FP_REG_P.
9501 ("*movdi_lhi", "*movdi_lli", "*movdi_larl"): Likewise.
9502 ("movsi", "*movsi_lhi", "*movsi_lli"): Likewise.
9503 (movdi_31, movdf_31 splitters): Likewise.
8bcefb43 9504
8e509cf9
UW
9505 * config/s390/s390.h (IEEE_FLOAT): Remove.
9506 (TARGET_FLOAT_FORMAT): Define in terms of TARGET_IEEE_FLOAT.
9507 (INT_REGNO_P): Rename to ...
9508 (GENERAL_REGNO_P): ... this.
9509 (FLOAT_REGNO_P): Rename to ...
9510 (FP_REGNO_P): ... this.
9511 (ADDR_REGNO_P): New macro.
9512 (GENERAL_REG_P, ADDR_REG_P, FP_REG_P, CC_REG_P): New macros.
9513 (REGNO_OK_FOR_DATA_P, REGNO_OK_FOR_FP_P): Remove.
9514 (DATA_REG_P, FP_REG_P, ADDRESS_REG_P): Likewise.
9515 (HARD_REGNO_NREGS): Adapt to macro renaming.
9516 (HARD_REGNO_MODE_OK): Likewise.
9517
34bb030a
DE
95182002-10-23 David Edelsohn <edelsohn@gnu.org>
9519 Geoff Keating <geoffk@apple.com>
9520
9521 * config/rs6000/rs6000.c (rs6000_register_move_cost): New function.
9522 (rs6000_memory_move_cost): New function.
9523 * config/rs6000/rs6000-protos.h: Declare them.
9524 * config/rs6000/rs6000.h: Use them.
9525
1ab9ba62
UW
95262002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
9527
8bcefb43 9528 * libgcc2.c (__udiv_w_sdiv): Use attribute ((always_inline)) when
1ab9ba62
UW
9529 inlining it into other libgcc2 routines.
9530 (__udivmoddi4): Likewise.
9531
4b2ece8f
NN
95322002-10-22 Nathanael Nerode <neroden@gcc.gnu.org>
9533
9534 * doc/sourcebuild.texi (Test Suites): Improve.
9535
2d173d20
SS
95362002-10-22 Stan Shebs <shebs@apple.com>
9537
9538 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Add missing
9539 case for Darwin.
9540
43146684
JW
95412002-10-22 Jim Wilson <wilson@redhat.com>
9542
9543 * config/i386/i386.md (subdi3_1): Add call to ix86_binary_operator_ok.
9544
a00782ed
JH
9545Wed Oct 23 01:52:36 CEST 2002 Jan Hubicka <jh@suse.cz>
9546
9547 PR other/8289
9548 * xmmintrin.h: Add const to the argument of loads.
9549
9550 * i386.md (pushv2di): New pattern.
9551 PR target/6890
9552 * xmmintrin.h (_MM_TRANSPOSE4_PS): New.
9553
3961e8fe
RH
95542002-10-22 Richard Henderson <rth@redhat.com>
9555
9556 * target.h (gcc_target.asm_out): Merge output_mi_thunk and
9557 output_mi_vcall_thunk into a single hook. Add can_output_mi_thunk.
9558 * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Don't conditionalize.
9559 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
9560 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
9561 (TARGET_ASM_OUT): Update.
9562 * hooks.c (hook_bool_tree_hwi_hwi_tree_false): New.
9563 (hook_bool_tree_hwi_hwi_tree_true): New.
9564 (default_can_output_mi_thunk_no_vcall): New.
9565 * hooks.h: Declare them.
9566 * system.h (ASM_OUTPUT_MI_THUNK): Poison.
9567
9568 * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
9569 (alpha_output_mi_thunk_osf): Add VCALL_OFFSET parameter.
9570 * config/arm/arm.c, config/cris/cris.c, config/frv/frv.c,
9571 config/i960/i960.c, config/ia64/ia64.c, config/m68k/m68k.c,
9572 config/mmix/mmix.c, config/pa/pa.c, config/sparc/sparc.c,
9573 config/stormy16/stormy16.c: Similarly.
9574
9575 * config/i386/i386.c (x86_output_mi_thunk): Merge vcall_offset code.
9576 Handle 64-bit properly. Streamline.
9577 (x86_output_mi_vcall_thunk): Remove.
9578 (x86_this_parameter): Rename from ia32_this_parameter; handle 64-bit.
9579 (x86_can_output_mi_thunk): New.
9580 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
9581 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
9582 (override_options): Don't zap targetm.asm_out.output_mi_vcall_thunk.
9583
9584 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Rename from
9585 output_mi_thunk; make static; always use function_section.
9586 (TARGET_ASM_OUTPUT_MI_THUNK): New.
9587 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
9588 (rs6000_ra_ever_killed): Test no_new_pseudos not
9589 targetm.asm_out.output_mi_thunk in conjunction with thunks.
9590 * config/rs6000/rs6000-protos.h: Update.
9591 * config/rs6000/sysv4.h (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
9592 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't call
9593 xcoffout_declare_function when using rs6000_output_mi_thunk.
9594
8bcefb43 9595 * config/s390/s390.c (s390_output_mi_thunk): Rename from
3961e8fe
RH
9596 s390_output_mi_vcall_thunk.
9597 (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
9598 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
9599
9600 * config/vax/vax.c (vax_output_mi_thunk): Static; add vcall_offset.
9601 (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
9602 * config/vax/vax-protos.h: Update.
9603 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove.
9604
0e67d460
JH
9605Wed Oct 23 00:33:11 CEST 2002 Jan Hubicka <jh@suse,cz>
9606
9607 * i386.c (standard_sse_constant_p): Accept vector and integer zeros too.
9608 * i386.h (EXTRA_CONSTRAINT): Recognize 'C'
9609 * i386.md (movti_internal): Use 'C'
9610
9611 * xmmintrin.h (_mm_cmplt_epi*): New.
9612
d5869ca0
UW
96132002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
9614
9615 * config/s390/s390.md ("*movdi_64"): Fix op_type attribute.
9616 ("*movdf_64"): Likewise.
9617 ("*lshrdi3_64"): Likewise.
9618 ("blockage"): Add length attribute.
9619 ("lit"): Likewise.
9620
680dd104
JH
9621Tue Oct 22 23:51:34 CEST 2002 Jan Hubicka <jh@suse.cz>
9622
9623 * i386.md: FIx typo.
9624 (sse2_cvtsi2sd, sse2_pslrdq): Fix template.
9625 (sse2_umulv2siv2di3): Fix predicate.
9626 (sse2_psadbw, ashrv8hi3, ashrv4si3, lshrv8hi3 lshrv4si3,
9627 lshrv2di3, ashlv8hi3, ashlv4si3, ashlv2di3): Likewise.
9628 * xmmintrin.h (_mm_mul_epu16): Rename to...
9629 (_mm_mul_epu32): This one.
9630 (_mm_cvtsi32_si128, _mm_cvtsi128_si32): New.
9631
9632 (contains_128bit_aligned_vector_p): Undo accidental checkin.
9633
3aabf9a5
EC
96342002-10-22 Eric Christopher <echristo@redhat.com>
9635
9636 * config/sparc/sparc.h: Add #error.
9637
42c78618
UW
96382002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
9639
9640 * config.gcc [s390-*-linux]: Remove s390/t-linux from tmake_file.
9641 [s390x-*-linux*]: Likewise.
9642 * config/s390/t-linux: Remove.
9643 * config/s390/s390.h: Include fixdfdi.h when building libgcc2.
9644
077084dd
JH
9645Tue Oct 22 19:07:03 CEST 2002 Jan Hubicka <jh@suse.cz>
9646
9647 * i386.c (builtin_description): Add IX86_BUILTIN_PUNPCKHQDQ128.
9648 (ix86_expand_builtin): Fix MASKMOVDQU expasion.
9649 * i386.h (ix86_builtins): Add IX86_BUILTIN_PUNPCKHQDQ128.
9650 * i386.md (mmx_punpck?dq): Simplify.
9651 (sse2_pubpcklqdq): Fix.
9652 (sse2_pubpckhqdq): New.
9653 * xmmintrin.h (_mm_unpackhi_epi32): New.
9654
9655 * xmmintrin.h (_mm_cvt*, _mm_stream_pd): Fix prototypes.
9656 (_mm_shufflehi_epi16, _mm_shufflelo_epi16): Fix typo.
9657
8fe734a3
NS
96582002-10-22 Nathan Sidwell <nathan@codesourcery.com>
9659
9660 PR c++/7209
9661 * fold_const.c (fold_binary_op_with_conditional_arg): Always
9662 build compound_expr if we used save_expr.
9663
6a0a6ac4
AM
96642002-10-22 Alan Modra <amodra@bigpond.net.au>
9665
9666 * output.h (SECTION_NOTYPE): Define.
9667 * varasm.c (default_section_type_flags_1): Set SECTION_NOTYPE for
9668 init array sections.
9669 (default_elf_asm_named_section): Mind SECTION_NOTYPE.
9670 * config/arm/arm.c (arm_elf_asm_named_section): Likewise. Also
9671 merge TLS support.
9672
4977bab6
ZW
96732002-10-21 Richard Henderson <rth@redhat.com>
9674
9675 * config/i386/i386.c (ix86_function_ok_for_sibcall): Look at
9676 the function type, not the return type.
9677
5e26e5a2
RH
96782002-10-21 Richard Henderson <rth@redhat.com>
9679
9680 * real.c (sticky_rshift_significand): Return inexact, don't
9681 or it in immediately.
9682 (sub_significands): Accept incomming carry.
9683 (div_significands, rtd_divmod): Update for sub_significands change.
9684 (round_for_format): Update for sticky_rshift_significand change.
9685 (do_add): Don't involve the inexact bit in addition, do give the
9686 inexact bit as the subtraction carry-in.
9687 (encode_internal, decode_internal, real_internal_format): New.
9688 * real.h (real_internal_format): Declare.
9689
f8eef883
UW
96902002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
9691
9692 * libgcc2.c: Fix __udiv_w_sdiv breakage on platforms that
9693 don't define sdiv_qrnnd.
9694
89e56fe5
KH
96952002-10-21 Kazu Hirata <kazu@cs.umass.edu>
9696
9697 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Simplify
9698 using IN_RANGE.
9699 (TINY_CONSTANT_ADDRESS_P): Likewise.
9700
f02e1358
JH
9701Tue Oct 22 00:04:20 CEST 2002 Jan Hubicka <jh@suse.cz>
9702
9703 * i386.c (builtin_description): Add punpcklqdq and movdq2q
9704 (ix86_init_mmx_sse_builtins): Add v2di_ftype_void, di_ftype_v2di,
9705 v16qi_ftype_pchar, void_ftype_pchar_v16qi, v4si_ftype_pchar,
9706 void_ftype_pchar_v4si; Initialize __builtin_ia32_movdq2q,
9707 __builtin_ia32_loaddqa, __builtin_ia32_loaddqu, __builtin_ia32_loadd
9708 __builtin_ia32_storedqa, __builtin_ia32_storedqu, __builtin_ia32_stored
9709 __builtin_ia32_setzero128.
9710 (ix86_expand_builtin): Handle IX86_BUILTIN_CLRTI, IX86_BUILTIN_LOADDQA,
9711 IX86_BUILTIN_LOADDQU, IX86_BUILTIN_LOADD, IX86_BUILTIN_STOREDQA,
9712 IX86_BUILTIN_STOREDQU, IX86_BUILTIN_STORED, Ix86_BUILTIN_MOVQ.
9713 * i386.h (ix86_builtins): Add IX86_BUILTIN_LOADDQA, IX86_BUILTIN_LOADDQU,
9714 IX86_BUILTIN_STOREDQA, IX86_BUILTIN_STOREDQU, IX86_BUILTIN_LOADD,
9715 IX86_BUILTIN_STORED, IX86_BUILTIN_CLRTI, IX86_BUILTIN_MOVDQ2Q,
9716 IX86_BUILTIN_PUNPCKLQDQ128, Ix86_BUILTIN_MOVQ.
9717 * i386.md (sse2_punpcklqdq, sse2_movqsse2_loadd, sse2_stored,
9718 sse2_movq): New patterns.
9719 (sse2_movdqa, sse2_movdqu, sse2_movdq2q): Fix.
9720 * xmmintrin.h (_mm_load_si128, _mm_loadu_si128, _mm_loadl_epi64,
9721 _mm_store_si128, _mm_storeu_si128, _mm_storel_epi64,
9722 _mm_setzero_si128, _mm_set_epi64, _mm_set_epi32, _mm_set_epi16,
9723 _mm_set_epi8, _mm_set1_epi64, _mm_set1_epi32, _mm_set1_epi16,
9724 _mm_set1_epi8, _mm_setr_epi64, _mm_setr_epi32, _mm_setr_epi16,
9725 _mm_setr_epi8, _mm_unpacklo_epi64,_mm_set_moveq): New functions.
9726 (_mm_insert_epi16): Fix.
9727
de40e1df
DJ
97282002-10-21 Dale Johannesen <dalej@apple.com>
9729
8bcefb43 9730 * config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
de40e1df
DJ
9731 unsafe math reversals correctly for RTL generation.
9732 (output_cbranch): Replace rs6000_reverse_condition call
9733 by its former definition.
9734
75d38379
JJ
97352002-10-21 Jakub Jelinek <jakub@redhat.com>
9736
9737 * config/i386/i386.c (x86_64_sign_extended_value): Add allow_rip
9738 argument. In CM_SMALL_PIC model consider SYMBOL_REFs binding locally or
9739 from constant pool or LABEL_REFs as sign extended if allow_rip.
9740 Change all +-1GB limits to +-16MB.
9741 (x86_64_general_operand, x86_64_szext_general_operand,
9742 x86_64_nonmemory_operand, x86_64_movabs_operand,
9743 x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
9744 legitimate_address_p, ix86_expand_int_movcc): Update callers.
9745 (local_symbolic_operand): Don't allow offsets bigger than +-16MB
9746 in CM_SMALL_PIC model.
9747 (legitimate_pic_address_disp_p): Don't check offsets before
9748 calling local_symbolic_operand.
9749 (legitimize_pic_address): Force offsets bigger than +-16MB into
9750 register.
9751 * config/i386/i386.h (EXTRA_CONSTRAINT, CONST_COSTS): Likewise.
9752 * config/i386/i386-protos.h (x86_64_sign_extended_value): Update
9753 prototype.
9754
9755 * configure.in: Test for @GOTNTPOFF and @INDNTPOFF on IA-32 too.
9756 Add x86-64 test. Set tls_first_minor to 14 on IA-32 and x86-64.
9757 * configure: Rebuilt.
9758 * config/i386/i386.c (x86_64_sign_extended_value): Don't allow TLS
9759 SYMBOL_REFs unless enclosed in UNSPEC. Handle UNSPEC_DTPOFF,
9760 UNSPEC_GOTNTPOFF and UNSPEC_NTPOFF.
9761 (legitimate_address_p): Allow foo@dtpoff(base) even on TARGET_64BIT
9762 -fpic.
9763 (ix86_encode_section_info): Don't ever generate TLSGD or TLSLD for
9764 non-pic code if TARGET_64BIT.
9765 (legitimize_address): Generate 64-bit TLS sequences.
9766 (output_pic_addr_const): Support x86-64 TLS operators.
9767 (i386_output_dwarf_dtprel): Output 64-bit DTPOFF as .long f@DTPOFF, 0.
9768 (print_operand_address): Use %fs instead of %gs on TARGET_64BIT.
9769 Don't append (%rip) in 64-bit TLSGD and TLSLD sequences.
9770 (output_addr_const_extra): Support x86-64 TLS operators.
9771 (maybe_get_pool_constant): Handle TARGET_64BIT -fpic.
9772 (ix86_tls_get_addr): Use __tls_get_addr on TARGET_64BIT
9773 unconditionally.
9774 * config/i386/i386.md (*tls_global_dynamic_gnu): Renamed to...
9775 (*tls_global_dynamic_32_gnu): ..., add !TARGET_64BIT.
9776 (*tls_global_dynamic_sun): Renamed to...
9777 (*tls_global_dynamic_32_sun): ..., add !TARGET_64BIT.
9778 (tls_global_dynamic): Renamed to...
9779 (tls_global_dynamic_32): ... this.
9780 (tls_global_dynamic_64, *tls_global_dynamic_64): New.
9781 (*tls_local_dynamic_base_dynamic_gnu): Renamed to...
9782 (*tls_local_dynamic_base_dynamic_32_gnu): ..., add !TARGET_64BIT.
9783 (*tls_local_dynamic_base_dynamic_sun): Renamed to...
9784 (*tls_local_dynamic_base_dynamic_32_sun): ..., add !TARGET_64BIT.
9785 (tls_local_dynamic_base_dynamic): Renamed to...
9786 (tls_local_dynamic_base_dynamic_32): ... this.
9787 (tls_local_dynamic_base_dynamic_64,
9788 *tls_local_dynamic_base_dynamic_64): New.
9789 (*tls_local_dynamic_once): Renamed to...
9790 (*tls_local_dynamic_32_once): ... this.
9791
59798a0c
UW
97922002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
9793
9794 * libgcc2.c: Inline __udiv_w_sdiv when compiling __udivdi3,
9795 __divdi3, __umoddi3, or __moddi3.
9796
97d05bfd
UW
97972002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
9798
9799 * c-opts.c (missing_arg): Use cl_options[opt_index].opt_code
9800 instead of just opt_index as switch expression.
9801
9802 * calls.c (store_one_arg): Change type of 'excess_align'
9803 to unsigned int.
9804
9805 * profile.c (output_gcov_string): Change type of 'temp'
9806 to size_t.
9807
5d4d885c
UW
98082002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
9809
9810 * config/s390/fixdfdi.h (__fixunsdfdi, __fixdfdi): Add prototypes.
9811 (__fixunssfdi, __fixsfdi): Likewise.
9812 * config/s390/s390.c (s390_single_hi): Initialize 'value'.
9813 (s390_single_qi): Likewise.
9814 (s390_emit_epilogue): Initialize 'offset'. Remove signed vs.
9815 unsigned comparison warning.
9816 (s390_return_addr_rtx): New function.
9817 * config/s390/s390-protos.h (s390_return_addr_rtx): Declare it.
9818 * config/s390/s390.h (RETURN_ADDR_RTX): Use it.
9819 (HARD_REGNO_MODE_OK): Rewrite condition to silence warnings.
9820
3062825f
UW
98212002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
9822
9823 * config/s390/s390.c (s390_output_mi_vcall_thunk): New function.
9824 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define target hook.
9825 (s390_output_mi_thunk): Remove.
9826 (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
9827
2918c993
KH
98282002-10-21 Kazu Hirata <kazu@cs.umass.edu>
9829
9830 * config/h8300/h8300.h (N_REG_CLASSES): Parenthesize.
9831
4977bab6
ZW
98322002-10-20 Zack Weinberg <zack@codesourcery.com>
9833
9834 * config/i386/i386.c (ix86_function_ok_for_sibcall): Fix an
9835 inverted test in the conditional determining the possibility
9836 of sibcalls in PIC mode.
9837
c590b625
RH
98382002-10-20 Richard Henderson <rth@redhat.com>
9839
9840 * target.h (struct gcc_target): Line wrap.
9841
9842 * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Static.
9843 (TARGET_ASM_OUTPUT_MI_THUNK): Define here...
9844 * config/alpha/alpha.h: ... not here.
9845 * config/alpha/alpha-protos.h: Update.
9846
9847 * config/arm/arm.c, config/arm/arm.h, config/arm/arm-protos.h
9848 config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
9849 config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
9850 config/i386/i386-protos.h, config/i386/i386.c, config/i386/openbsd.h,
9851 config/i386/unix.h, config/i960/i960-protos.h, config/i960/i960.c,
9852 config/i960/i960.h, config/ia64/ia64-protos.h, config/ia64/ia64.c,
9853 config/ia64/ia64.h, config/m68k/linux.h, config/m68k/m68k-protos.h,
9854 config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
9855 config/mmix/mmix-protos.h, config/mmix/mmix.c, config/mmix/mmix.h,
3aabf9a5 9856 config/pa/pa-protos.h, config/pa/pa.c, config/pa/pa.h,
c590b625
RH
9857 config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
9858 config/sparc/openbsd.h, config/sparc/sparc-protos.h,
9859 config/sparc/sparc.c, config/sparc/sparc.h,
9860 config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
9861 config/stormy16/stormy16.h: Similarly.
9862
9863 * config/m68k/m68k.c (m68k_output_mi_thunk): Replicate mnemonic
9864 selection logic from call patterns.
9865
16f7d029
MM
98662002-10-20 Mark Mitchell <mark@codesourcery.com>
9867
9868 * config/m68k/m68k.c (m68k_output_mi_thunk): Fix typo.
9869
ab3146fd
ZD
98702002-10-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
9871
9872 PR other/8202
9873 * i386.c (ix86_init_mmx_sse_builtins, ix86_expand_builtin): Define and
9874 expand __builtin_ia32_pslldqi128 and __builtin_ia32_psrldqi128.
9875 * i386.h (IX86_BUILTIN_PSLLDQI128, IX86_BUILTIN_PSRLDQI128): New.
9876 * xmmintrin.h (_mm_srli_si128, _mm_slli_si128): New.
9877
e03b7153
RS
98782002-10-20 Roger Sayle <roger@eyesopen.com>
9879
9880 PR c/761
9881 * toplev.c (flag_unsafe_profile_arcs): Remove.
9882 (flag_bounded_pointers): Remove.
9883 (flag_bounds_check): Correct comments.
9884 (lang_independent_options): Remove -funsafe-profile-arcs and
9885 -fbounded-pointers. Correct -fbounds-check comments.
9886
9887 * flags.h: Correct flag_schedule_interblock comments.
9888 (flag_bounded_pointers): Remove prototype.
9889 (flag_bounds_check): Correct comments.
9890
9891 * c-opts.c (c_common_init_options): No need to mark
9892 flag_bounds_check as unspecified.
9893 (c_common_post_options): And no need to set it from
9894 flag_bounded_pointers if its still unspecified.
9895
9896 * doc/invoke.texi: Fix some overfull hboxes in "make dvi".
9897 Document --version, -feliminate-dwarf-2-dups, -fno-sched-interblock,
9898 -fno-sched-spec, -fsched-spec-load, -fsched-spec-load-dangerous,
9899 -fsched-verbose=n, -fno-branch-count-reg and -fbounds-check.
9900
4977bab6
ZW
9901Sat Oct 19 22:02:28 2002 Alexandre Oliva <aoliva@redhat.com>
9902 Angela Marie Thomas <angela@releasedominatrix.com>
9903 Brendan Kehoe <brendan@zen.org>
9904 Nick Clifton <nickc@redhat.com>
9905 Andrew Haley <aph@redhat.com>
9906
9907 * configure.in (--with-sysroot): New. Don't inhibit libc if
9908 given. AC_SUBST TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE
9909 and CROSS_SYSTEM_HEADER_DIR.
9910 * configure: Rebuilt.
9911 * Makefile.in (CROSS_SYSTEM_HEADER_DIR): Set in configure.
9912 (TARGET_SYSTEM_ROOT): New.
9913 (DRIVER_DEFINES): Define CROSS_INCLUDE_DIR from
9914 CROSS_SYSTEM_HEADER_DIR.
9915 (install-gcc-tooldir): New target.
9916 (stmp-fixinc): Do not create $(libsubdir), but rather bail out
9917 if SYSTEM_HEADER_DIR does not exist and it's not the default
9918 sys-include directory.
9919 (deduced.h, stmp-fixproto): Quote SYSTEM_HEADER_DIR properly.
9920 (install-mkheaders): Likewise.
9921 * gcc.c (target_system_root): New variable.
9922 (add_sysrooted_prefix): New function.
9923 (process_command): Recompute run-time target_system_root from
9924 gcc_exec_prefix, keeping it unchanged if the relocated sysroot
9925 does not exist.
9926 (do_spec_1): Process 'R' spec.
9927 (main): Add md_exec_prefix to exec_prefixes regardless of
9928 startfile_prefix_spec. Use add_sysrooted_prefix for
9929 startfile_prefixes, and don't skip the default ones when cross
9930 compiling with sysroot enabled. Removed unused case of
9931 non-absolute standard_startfile_prefix.
9932 * config/interix.h: Remove the only potential, yet disabled,
9933 occurrence of non-absolute (empty) standard_startfile_prefix.
9934 * config/sh/linux.h (LIB_SPEC): Add -rpath-link in non-static
9935 linking.
9936 * config/mips/linux.h (LIB_SPEC): Define as in sh/linux.h.
9937 * doc/install.texi (--with-sysroot): Document.
9938 (--with-headers, --with-libs): Deprecate.
9939
eb0424da 99402002-10-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8bcefb43 9941 Mark Mitchell <mark@codesourcery.com>
eb0424da
MM
9942
9943 * alpha-protos.h (alpha_output_mi_thunk_osf): Update signature to
9944 match target.h.
9945 * arm-protos.h, arm.c (arm_output_mi_thunk): Likewise.
9946 * cris-protos.h, cris.c (cris_asm_output_mi_thunk): Likewise.
9947 * frv-protos.h, frv.c (frv_asm_output_mi_thunk): Likewise.
9948 * i386-protos.h, i386.c (x86_output_mi_vcall_thunk,
9949 x86_output_mi_thunk): Likewise.
9950 * i960-protos.h, i960.c (i960_output_mi_thunk): Likewise.
9951 * ia64-protos.h, ia64.c (ia64_output_mi_thunk): Likewise.
9952 * m68k-protos.h, m68k.c (m68k_output_mi_thunk): Likewise.
9953 * mmix-protos.h, mmix.c (mmix_asm_output_mi_thunk): Likewise.
9954 * rs6000-protos.h, rs6000.c (output_mi_thunk): Likewise.
9955 * s390-protos.h, s390.c (s390_output_mi_thunk): Likewise.
9956 * stormy16-protos.h, stormy16.c (xstormy16_asm_output_mi_thunk):
9957 Likewise.
9958 * vax-protos.h, vax.c (vax_output_mi_thunk): Likewise.
3aabf9a5 9959
eb0424da
MM
9960 * target.h (gcc_target): Update output_mi_thunk and
9961 output_mi_vcall_thunk to take a HOST_WIDE_INT delta and
9962 vcall_index.
9963
9964 * config/alpha/alpha.c: Replace ASM_OUTPUT_MI_THUNK with
9965 TARGET_ASM_OUTPUT_MI_THUNK in comments.
9966 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): Don't #undef it.
9967 (TARGET_ASM_OUTPUT_MI_THUNK): #undef it.
9968 * config/frv/frv.h (DEFAULT_VTABLE_THUNKS): Remove definition.
9969 * config/i386/i386-protos.h (x86_output_mi_vcall_thunk): Update
9970 signature.
9971 * config/i386/i386.c (x86_output_mi_vcall_thunk): Likewise.
9972 * config/i386/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
9973 TARGET_ASM_OUTPUT_MI_THUNK in comments.
9974 * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Don't define.
9975 (TARGET_ASM_OUTPUT_MI_THUNK): Do define.
9976 * config/m68k/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
9977 TARGET_ASM_OUTPUT_MI_THUNK in comments.
9978 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Remove #ifdef
9979 ASM_OUTPUT_MI_THUNK and replace with check of targetm.
9980
9981 * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Update signature.
9982 (TARGET_ASM_OUTPU_MI_VCALL_THUNK): Likewise.
3aabf9a5 9983
433d5d04
BL
99842002-10-19 Brad Lucier <lucier@math.purdue.edu>
9985
9986 * real.c (do_add): Fix 0+0 sign corner case.
9987 (do_divide): Fix Inf/0 corner case.
9988
1194ca05
JH
9989Sun Oct 20 00:31:31 CEST 2002 Jan Hubicka <jh@suse.cz>
9990
9991 * i386.c (classify_argument): Pass MMX arguments in memory
9992 (ix86_expand_builtin): Expand proper address mode for cflush.
9993 * i386.md (movdqa): Fix typo.
9994 (sse2_cflush): Accept DImode addresses.
9995
9996 * xmmintrin.h (_mm_sqrt_sd): Accept two arguments.
9997 (_mm_max_sd): Fix pasto.
9998 (_mm_storeh_pd, _mm_storel_pd): Fix.
9999
10000 * i386.c (bdesc_comi): Fix to match specification.
10001 (ix86_expand_sse_comi): Emit the comparison properly.
10002 * i386.md (sse_comi, sse2_comi, sse_ucomi, sse2_ucomi):
10003 Do not use comparison operator.
10004 (vnmaskcmp): Fix template.
10005
10006 * xmmintrin.h (_mm_cvtps_pi16): Fix.
10007
3df5d99e
SP
100082002-10-19 Sebastian Pop <s.pop@laposte.net>
10009
10010 * dependence.c : Removed.
8bcefb43 10011 * Makefile.in : Remove dependence.o.
3df5d99e 10012
822eda12
JH
10013Sat Oct 19 10:46:52 CEST 2002 Jan Hubicka <jh@suse.cz>
10014
10015 * mmintrin.h (__m64): typedef it to v2si.
10016 (_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16,
10017 _mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16,
10018 _mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64,
10019 _mm_srli_pi64, _mm_and_si64, _mm_andnot_si64,
10020 _mm_or_si64, _mm_xor_si64): Add neccesary casts.
10021 * xmmintrin.h (_mm_setzero_si64): Likewise.
10022
10023 * i386.h (ALIGN_MODE_128): Update comment; add missing modes
10024 (SSE_REG_MODE_P, MMX_REG_MODE_P): New macros.
10025
10026 PR target/7693
10027 Patch by Shawn Wagner
10028 * mmintrin.h: Replace pi64 by si64.
10029
914a7297
DE
100302002-10-18 David Edelsohn <edelsohn@gnu.org>
10031
10032 * rs6000.md (movdf_hardfloat32): Order alternatives consistently.
10033 Use length of 4 not *.
10034 (movdf_hardfloat64): Same. Support DFmode moves to/from CTR/LR.
10035 (movdf_softfloat64): Likewise.
10036 (movdi_internal32): Use length of 4 not *.
10037 (movti_power): Same.
10038 (ctrsi, ctrdi): Same.
10039
4a7510cb
ZW
100402002-10-18 Zack Weinberg <zack@codesourcery.com>
10041
10042 * c-decl.c (start_decl): Point users of the old initialized-
10043 typedef extension at __typeof__.
10044
99c57613
RH
100452002-10-18 Richard Henderson <rth@redhat.com>
10046
10047 * real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New.
10048 (real_to_decimal): Re-implement using the logic from the
10049 gcc 3.2 etoasc. Comment heavily.
10050 (div_significands): Simplify loop startup and comparison logic.
10051
483ab821
MM
100522002-10-18 Mark Mitchell <mark@codesourcery.com>
10053
10054 * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL.
10055 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise.
10056 (TARGET_ASM_OUT): Add them.
10057 * target.h (asm_out): Add output_mi_thunk and
10058 output_mi_vcall_thunk.
10059 * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10060 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10061 * config/arm/arm-protos.h (arm_output_mi_thunk): Declare.
10062 * config/arm/arm.c (arm_output_mi_thunk): Define.
10063 * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10064 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10065 * config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10066 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10067 * config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10068 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10069 * config/i386/i386-protos.h (x86_output_mi_thunk): Adjust
10070 prototype.
10071 (x86_output_mi_vcall_thunk): Declare.
10072 * config/i386/i386.c (override_options): Clear
10073 output_mi_vcall_thunk in 64-bit mode.
10074 (ix86_fntype_regparm): New function.
10075 (ix86_return_pops_args): Use it.
10076 (ia32_this_parameter): New function.
10077 (x86_output_mi_vcall_thunk): New function.
10078 (x86_output_mi_thunk): Use it
10079 * config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust.
10080 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define.
10081 * config/i960/i960-protos.h (i960_output_mi_thunk): Declare.
10082 * config/i960/i960.c (i960_output_mi_thunk): New function.
10083 * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust.
10084 * config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare.
10085 * config/ia64/ia64.c (ia64_output_mi_thunk): Define.
10086 * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10087 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10088 * config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function.
10089 * config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10090 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10091 * config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10092 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10093 * config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10094 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10095 * config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10096 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10097 * config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10098 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10099 * config/s390/s390-protos.h (s390_output_mi_thunk): Declare.
10100 * config/s390/s390.c (s390_output_mi_thunk): Define.
10101 * config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10102 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10103 * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10104 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10105 * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10106 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10107 * config/vax/vax-protos.h (vax_output_mi_thunk): Declare.
10108 * config/vax/vax.c (vax_output_mi_thunk): Define.
10109 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ...
10110 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
10111 * doc/tm.texi: Adjust documentation.
4a7510cb 10112
90e021a0
JT
101132002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
10114
4a7510cb
ZW
10115 * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define
10116 __enable_execute_stack function.
90e021a0
JT
10117 * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define
10118 as NETBSD_ENABLE_EXECUTE_STACK.
10119 * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
10120 * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
10121 * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
10122 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
10123 * config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
10124
5791cc29
JT
101252002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
10126
10127 * config/i386/i386.c (x86_initialize_trampoline): Emit a call
10128 to __enable_execute_stack with the address of the trampoline
10129 if TRANSFER_FROM_TRAMPOLINE is defined.
10130 * config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
10131 constant if building libgcc2.
10132
4977bab6
ZW
10133Thu Oct 17 17:40:05 CEST 2002 Jan Hubicka <jh@suse.cz>
10134
10135 * i386.c (pentium4_cost): Fix according to Intel recommendations.
10136 (ix86_memory_move_cost): Fix for 64bit compilation.
10137
7b35bba3
RS
101382002-10-17 Roger Sayle <roger@eyesopen.com>
10139
10140 * doc/c-tree.texi: Update description of COND_EXPR tree nodes.
10141
b991a865
GK
101422002-10-17 Geoffrey Keating <geoffk@apple.com>
10143
10144 * config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes
10145 in CTR/LR/MQ.
10146 * config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves
10147 to/from CTR/LR/MQ.
10148 (movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ.
10149 (movsf_softfloat): Likewise.
10150
fa870451
JJ
101512002-10-17 Janis Johnson <janis187@us.ibm.com>
10152
10153 * Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS.
10154
e31c2957
JT
101552002-10-17 Jason Thorpe <thorpej@wasabisystems.com>
10156
10157 * config/alpha/alpha.c (alpha_initialize_trampoline): Use
10158 tramp, not addr, to pass the trampoline address to
10159 __enable_execute_stack.
10160
48126a97
JH
10161Thu Oct 17 18:40:47 CEST 2002 Jan Hubicka <jh@suse.cz>
10162
10163 * mmintrin.h: Guard by __MMX__
10164 * xmmintrin.h: Guard by __SSE__
10165
10166 PR other/8062
10167 * xmmintrin.h (_MM_SHUFFLE2): New macro.
10168 (_mm_load*_?d): New functions.
10169 (_mm_set*_?d): New functions.
10170 (_mm_store*_?d): New functions.
10171
2ffa9932
JH
10172Wed Oct 16 15:01:29 CEST 2002 Jan Hubicka <jh@suse.cz>
10173
10174 Really commit patch announced at Oct 14
10175 PR c/7344
10176 * predict.c (can_predict_insn_p): New function.
10177 (estimate_probability): Avoid unnecesary work.
10178 (process_note_prediction): Likewise.
10179 * toplev.c (rest_of_compilation): Account early branch prediction pass
10180 as TV_BRANCH_PROB.
10181
ccc4bdea
JH
10182 PR other/8048
10183 Found by Ian Ollmann
10184 * xmmintrin.h (_mm_shuffle_pd): Fix typo.
10185 (_mm_load?_pd): Likewise.
10186 (_mm_store?_pd): Likewise.
10187
10188 PR target/7386
10189 * i386.c (builtin_description):Drop cmpg[te]s[sd].
10190 * xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using
10191 swapped alternative.
10192
10193 PR opt/7630
10194 * reload1.c (reload_inner_reg_of_subreg): New argument output;
10195 (push_reload): Update call.
10196
4db83639
RS
101972002-10-17 Richard Sandiford <rsandifo@redhat.com>
10198
10199 * config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines
10200 if using mips/elf.h or mips/elf64.h.
10201 * config/mips/elf.h (OBJECT_FORMAT_ELF): Remove.
10202 * config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove.
10203
f9dd72da
AH
102042002-10-16 Aldy Hernandez <aldyh@redhat.com>
10205
10206 * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
10207 SI.
10208
63a1ff86
UW
102092002-10-16 Ulrich Weigand <uweigand@de.ibm.com>
10210
10211 * config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
10212 (LPREFIX): Likewise.
10213 (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME,
10214 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
10215 ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS,
10216 TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
10217 GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h.
10218
4a7510cb
ZW
10219 * config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX,
10220 ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP,
10221 ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
63a1ff86
UW
10222 BSS_SECTION_ASM_OP): Move from linux.h.
10223 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
10224 Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
10225
4a7510cb 10226 * config/s390/s390.c (s390_function_profiler): Use
63a1ff86
UW
10227 ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
10228
4977bab6
ZW
102292002-10-15 Eric Christopher <echristo@redhat.com>
10230
10231 * stor-layout.c (layout_type): Call GET_MODE_BITSIZE once.
10232 * java/parse.y (obtain_incomplete_type): Make pointer
10233 ptr_mode.
10234
da6eec72
RH
102352002-10-15 Richard Henderson <rth@redhat.com>
10236
10237 * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
10238 as arguments. Bound DIGITS by the available buffer size.
10239 (real_to_hexadecimal): Likewise.
10240 * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
10241 (REAL_VALUE_TO_DECIMAL): Remove.
10242 * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
10243 sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
4a7510cb 10244 config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
da6eec72
RH
10245 config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
10246 config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
4a7510cb 10247 config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
da6eec72
RH
10248 config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
10249 use real_to_decimal directly, and with the proper arguments.
10250 * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
10251
c15c18c5
JW
102522002-10-15 Jim Wilson <wilson@redhat.com>
10253
10254 * reload1.c (merge_assigned_reloads): After converting overlapping
10255 reloads to RELOAD_OTHER, abort if there are now conflicting reloads.
10256
10257 * config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok.
10258
74f6d071
JH
10259Tue Oct 15 22:08:35 CEST 2002 Jan Hubicka <jh@suse.cz>
10260
10261 * expr.c (do_tablejump): Fix typo in my previous commit.
10262
a2ee89d8
RS
102632002-10-15 Richard Sandiford <rsandifo@redhat.com>
10264
10265 * config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}.
10266
aee4e0db
UW
102672002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
10268
10269 * config/s390/s390.c (s390_split_branches): Add return
10270 value. Add parameters TEMP_REG and TEMP_USED. Use unspec 104.
10271
10272 (find_base_register_in_addr): New function.
10273 (find_base_register_ref): New function.
10274 (replace_base_register_ref): New function.
10275
10276 (struct constant_pool): Add members pool_insn, insns, and anchor.
10277 Remove member last_insn.
10278 (s390_start_pool): Initialize them.
4a7510cb 10279 (s390_end_pool): Emit pool placeholder insn.
aee4e0db
UW
10280 (s390_add_pool_insn): New function.
10281 (s390_find_pool): Use insns bitmap instead of addresses.
10282 (s390_dump_pool): Replace placeholder insn. Emit anchor.
10283 Replace unspec 104 by local-pool-relative references.
10284 (s390_output_constant_pool): Output anchor label if required.
10285 (s390_output_symbolic_const): Handle unspec 104 and 105.
10286 (s390_add_pool): Remove, replace by ...
10287 (s390_add_constant, s390_find_constant): ... these new functions.
10288 (s390_add_anchor): New function.
10289
10290 (s390_chunkify_pool): Delete, replace by ...
4a7510cb 10291 (s390_chunkify_start, s390_chunkify_finish,
aee4e0db
UW
10292 s390_chunkify_cancel): ... these new functions.
10293 (s390_optimize_prolog): Add parameter TEMP_REGNO.
10294 Recompute register live data for special registers.
10295 (s390_fixup_clobbered_return_reg): New function.
10296 (s390_machine_dependent_reorg): Rewrite to use new
10297 s390_chunkify_... routines.
10298
10299 config/s390/s390.md ("reload_base"): Rename to ...
10300 ("reload_base_31"): ... this.
10301 ("reload_base_64"): New insn.
10302 ("reload_base2"): Remove.
10303 ("reload_anchor"): New insn.
10304 ("pool"): New insn.
10305
10306 s390.c (s390_pool_overflow): Remove.
10307 s390.h (s390_pool_overflow): Likewise.
10308 s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow.
10309
c034672a
R
10310Tue Oct 15 16:51:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
10311
10312 * sh.md (movv8qi_i+2): Don't split if source is -1.
10313
b8db17af
JJ
103142002-10-15 Janis Johnson <janis187@us.ibm.com>
10315
10316 * doc/install.texi: Formatting changes for conformance to HTML 4.01.
10317
2d34c587
UW
103182002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
10319
10320 PR opt/7409
10321 * loop.c (loop_regs_scan): Mark registers used for function
10322 argument passing as MAY_NOT_OPTIMIZE.
10323
4977bab6
ZW
10324Mon Oct 14 19:22:19 CEST 2002 Jan Hubicka <jh@suse.cz>
10325
10326 * gcov-io.h (gcov_info): Fix type.
10327 * profile.c (create_profiler): Fix type mismatch.
10328
1877be45
JH
10329Mon Oct 14 20:33:12 CEST 2002 Jan Hubicka <jh@suse.cz>
10330
10331 * i386.md (movv2di_internal): New pattern.
10332 (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate.
10333 (movv2di): New expander.
10334 * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands.
10335
10336 * i386.c (ix86_expand_timode_binop_builtin): Delete.
10337 (builtin_description): Add SSE1 logicals; rename SSE2 logicals.
10338 (ix86_init_mmx_sse_builtins): Kill SSE1 logicals.
10339 (ix86_expand_builtin): Likewise.
10340 * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
4a7510cb 10341 sse_andti3,
1877be45 10342 sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
4a7510cb 10343 sse_andnti3,
1877be45 10344 sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2,
4a7510cb 10345 sse_orti3,
1877be45 10346 sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2,
4a7510cb 10347 sse_xorti3): Kill.
1877be45
JH
10348 (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3,
10349 sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders.
10350 (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3,
10351 *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns.
10352 (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3,
10353 *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns.
10354
10355 * xmmintrin.h (__m128i): Define as __v2di.
10356
1877be45
JH
10357 PR c++/6419
10358 (expand_expr): Use DECL_RTL_SET_P.
10359
dbf4f1a2
RS
103602002-10-14 Roger Sayle <roger@eyesopen.com>
10361
10362 * combine.c (simplify_set): Treat MODE_CC registers like cc0.
10363
4f770e7b
RS
103642002-10-14 Roger Sayle <roger@eyesopen.com>
10365 Zack Weinberg <zack@codesourcery.com>
10366
10367 * config/i386/i386.c (k6_cost): Correct typo.
10368
a3b88570
MM
103692002-10-14 Mark Mitchell <mark@codesourcery.com>
10370
10371 PR optimization/6631
10372 * alias.c (objects_must_conflict_p): Check honor_readonly when
10373 examining TYPE_READONLY.
10374 * function.c (assign_stack_temp_for_type): Likewise.
10375
f5204e6c
FH
103762002-10-14 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
10377
10378 * config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix):
10379 Swap zero extension arguments.
10380 (umaxhi3): Fix instruction class.
10381 PR target/7211
10382 (prefetch): Fix prefetch instructions.
10383 PR target/7238
10384 (pkwb): Fix output constraint.
10385
40e6bc7e
AO
103862002-10-14 Alexandre Oliva <aoliva@redhat.com>
10387
10388 * config/mips/mips.c (print_operand): Increase buffer size for
10389 real numbers.
10390
f4e3e618
RH
103912002-10-14 Richard Henderson <rth@redhat.com>
10392
10393 PR opt/8165
10394 * gcse.c (adjust_libcall_notes): Revert last change.
10395 * simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM.
10396
3eb429b2
AH
103972002-10-14 Andrew Haley <aph@redhat.com>
10398
10399 * tree-inline.c (remap_block): All local class initialization
10400 flags go in the outermost scope.
10401 (expand_call_inline): Call java_inlining_map_static_initializers.
10402 (expand_call_inline): Call java_inlining_merge_static_initializers.
10403 * java/lang.c (merge_init_test_initialization): New.
10404 (java_inlining_merge_static_initializers): New.
10405 (inline_init_test_initialization): New.
10406 (java_inlining_map_static_initializers): New.
10407
10408 * tree-inline.c (expand_call_inline): Convert retvar to expected
10409 type.
10410
34146b94
GS
104112002-10-14 Graham Stott <graham.stott@btinternet.com>
10412
10413 * stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check.
10414
3a840c93
AH
104152002-10-14 Aldy Hernandez <aldyh@redhat.com>
10416
10417 * stmt.c: Fix typo in comment.
10418
7457a126
R
10419Mon Oct 14 11:35:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
10420
10421 * c-common.c (c_common_type_for_mode): Add V2HImode case.
10422 * tree.c (build_common_tree_nodes_2): Initialize
10423 unsigned_V2HI_type_node and V2HI_type_node.
10424 * tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE.
10425 (unsigned_V2HI_type_node, V2HI_type_node): Define.
10426
0d1c5774
JJ
104272002-10-14 Jakub Jelinek <jakub@redhat.com>
10428
10429 * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
10430 Handle TARGET_64BIT.
10431
adadd183
RS
104322002-10-14 Richard Sandiford <rsandifo@redhat.com>
10433
10434 * config/mips/vr.h (DRIVER_SELF_SPECS): Define.
10435 * config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32.
10436 (MULTILIB_DIRNAMES): Remove long32.
10437 (MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs.
10438 (MULTILIB_REDUNDANT_DIRS): Remove.
10439
db36994b
RS
104402002-10-14 Richard Sandiford <rsandifo@redhat.com>
10441
10442 * doc/tm.texi (DRIVER_SELF_SPECS): Document.
10443 * gcc.c (driver_self_specs): New variable.
10444 (do_self_spec): New function.
10445 (main): Use it to process driver_self_specs.
10446
11e5489b
RH
104472002-10-13 Richard Henderson <rth@redhat.com>
10448
4977bab6
ZW
10449 * config/i386/i386.c (ix86_function_ok_for_sibcall): Reject
10450 indirect sibcalls when regparm >= 3.
10451
10452 * config/i386/i386.c (sibcall_insn_operand): New.
10453 * config/i386/i386.h (PREDICATE_CODES): Update.
10454 * config/i386/i386-protos.h: Update.
10455 * config/i386/i386.md (sibcall_1, sibcall_value_1): Use it.
10456
11e5489b
RH
10457 * rtl.c (shallow_copy_rtx): Use memcpy for the entire node.
10458
4977bab6
ZW
104592002-10-12 Roger Sayle <roger@eyesopen.com>
10460
10461 * simplify-rtx.c (simplify_binary_operation) [ASHIFTRT]: Optimize
10462 arithmetic right shifts of ~0 during RTL simplifications.
10463
4ca1256f
NB
104642002-10-12 Neil Booth <neil@daikokuya.co.uk>
10465
10466 PR preprocessor/7862
10467 PR preprocessor/8190
10468 * gcc.c (cpp_unique_options): Don't delete .d files.
10469 Remove stray whitespace.
10470
cf860dc2
NS
104712002-10-12 Naohiko Shimizu <pshimizu@fa2.so-net.ne.jp>
10472
10473 * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant.
10474 (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
10475 * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o.
10476 (pdp11_output_function_epilogue, output_ascii): Likewise.
10477 (output_addr_const_pdp11): Likewise.
10478 * pdp11.md (movdi): Use offsetable memory for floating store.
10479 (lshrsi3, negsi2): Delete irrelevant comment.
10480
4977bab6
ZW
104812002-10-11 Andreas Bauer <baueran@in.tum.de>
10482
10483 * config/i386/i386.c (ix86_function_ok_for_sibcall): Allow
10484 indirect calls to be sibcall optimized.
10485 * config/i386/i386.md (sibcall_1): New.
10486 (call_1): Add no-sibcalls condition.
10487 (sibcall_value_1): New.
10488 (call_value_1): Add no-sibcalls condition.
10489
104902002-10-11 Eric Christopher <echristo@redhat.com>
10491
10492 * output.h (default_valid_pointer_mode): Declare.
10493 * varasm.c (default_valid_pointer_mode): Define.
10494 * target-def.h (TARGET_VALID_POINTER_MODE): Use.
10495 * target.h: Ditto.
10496 * tree.c (build_pointer_type_for_mode): New function.
10497 (build_pointer_type): Use.
10498 (build_reference_type_for_mode): New function.
10499 (build_reference_type): Use.
10500 * tree.h: Declare new functions.
10501 * c-common.c (handle_mode_attribute): Use new functions, check
10502 for type.
10503 * stor-layout.c (layout_type): Depend on machine mode for
10504 REFERENCE_TYPE and POINTER_TYPE.
10505 * dwarf2out.c (simple_type_size_in_bits): Move upward in file.
10506 (modified_type_die): Use instead of PTR_SIZE for POINTER_TYPE
10507 and REFERENCE_TYPE.
10508 * config/mips/mips.c (mips_valid_pointer_mode): New function.
10509 (TARGET_VALID_POINTER_MODE): Use and define.
10510 * config/mips/mips-protos.h (mips_valid_pointer_mode): Declare.
10511
5dd78e9a
GK
105122002-10-11 Geoffrey Keating <geoffk@apple.com>
10513
10514 * cse.c (mention_regs): Set SUBREG_TICKED to the register number,
10515 not the address of the REG.
10516 (struct cse_reg_info): Make subreg_ticked unsigned.
10517
8eb32f94
JJ
105182002-10-11 Janis Johnson <janis187@us.ibm.com>
10519
10520 * doc/compat.texi: Add info about C++ libraries.
10521
e197b6fc
RH
105222002-10-11 Richard Henderson <rth@redhat.com>
10523
10524 PR opt/8165
10525 * gcse.c (adjust_libcall_notes): Also adjust notes for INSN.
10526
a0bed689
JDA
105272002-10-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
10528
10529 * cfganal.c (dfs_enumerate_from): Use PARAMS.
10530 * genautomata.c (output_insn_code_cases): Likewise.
10531 * real.c (real_format): Likewise.
10532 * tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to
10533 ensure value is promoted before doing subtraction.
10534
db655634
JH
10535Fri Oct 11 22:22:38 CEST 2002 Jan Hubicka <jh@suse.cz>
10536
10537 * calls.c (expand_call): Simplify noreturn call.
10538
10539 PR c/7344
10540 * cfgbuild.c (make_edges): Create edge cache when we do have
10541 large jumptable.
1877be45 10542 * expr.c (do_tablejump): Note size of maximal jumptable.
db655634
JH
10543 * function.c (prepare_function_start): Zero out size.
10544 * function.h (function): Add max_jumptable_ents.
10545
10546 * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
10547
750afc12
R
10548Fri Oct 11 12:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
10549
10550 * sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI
10551 register for mperm_w operation.
10552
0488fa7c
JR
10553Fri Oct 11 10:56:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
10554
10555 * emit-rtl.c (gen_lowpart_common): When asked to make a vector from
10556 an integer, use simplify_gen_subreg.
10557
4977bab6
ZW
105582002-10-10 Diego Novillo <dnovillo@redhat.com>
10559
10560 * calls.c (flags_from_decl_or_type): Make extern.
10561 (ECF_*): Move ...
10562 * rtl.h (ECF_*): ... here.
10563 (flags_from_decl_or_type): Declare.
10564
105652002-10-10 Roger Sayle <roger@eyesopen.com>
10566 Nathan Sidwell <nathan@codesourcery.com>
10567
10568 * fold-const.c (fold) [RSHIFT_EXPR]: Optimize arithmetic right
10569 shifts of the form -1 >> x.
10570
10571Thu Oct 10 16:52:55 CEST 2002 Jan Hubicka <jh@suse.cz>
10572
10573 * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
10574
349e9f4b
AH
105752002-10-10 Aldy Hernandez <aldyh@redhat.com>
10576
10577 * extend.texi (Vector Extensions): Remove comment about single
10578 element vectors.
10579
7bdfd72e
KG
105802002-10-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10581
10582 * fold-const.c (size_htab_hash): Use htab_hash_pointer.
10583 * function.c (insns_for_mem_hash): Likewise.
10584 * varasm.c (STRHASH): Likewise.
10585
46081bb3
SH
105862002-10-10 Stuart Hastings <stuart@apple.com>
10587
10588 * cse.c (struct cse_reg_info): Add subreg_ticked.
10589 (SUBREG_TICKED): New.
10590 (get_cse_reg_info): Initialize SUBREG_TICKED.
10591 (mention_regs): Use it.
10592 (invalidate): Set SUBREG_TICKED.
10593 (invalidate_for_call): Likewise.
10594 (addr_affects_sp_p): Likewise.
10595
9785f1d9
JJ
105962002-10-10 Jakub Jelinek <jakub@redhat.com>
10597
10598 * config/i386/i386.md (tls_local_dynamic_base): Put pic reg
10599 into proper operand.
10600
b6878188
DC
106012002-10-10 Denis Chertykov <denisc@overta.ru>
10602
10603 * config/ip2k/ip2k.c (function_epilogue): Optimize stack
10604 deallocation.
10605 * config/ip2k/libgcc.S: Combine routines used by function
10606 epilogue.
10607
f930bfd0
JW
106082002-10-10 Jim Wilson <wilson@redhat.com>
10609
10610 * cse.c (fold_rtx): Don't perform associative optimization for DIV and
10611 UDIV.
10612
5f5d5417
DE
106132002-10-10 David Edelsohn <edelsohn@gnu.org>
10614
10615 * config/rs6000/aix52.h: New file.
10616 * config/rs6000/t-aix52: New File.
10617 * config.gcc (rs6000-ibm-aix5.1.*): New entry.
10618 (rs6000-ibm-aix[56789].*): Default to AIX 5.2.
10619
7eafc329
JH
10620Thu Oct 10 19:37:54 CEST 2002 Jan Hubicka <jh@suse.cz>
10621
10622 PR target/5610
10623 * invoke.texi (-msse-math): Kill
10624 (-msse): Add note to mfpmath=sse.
10625
b105d6da
JH
10626Thu Oct 10 17:08:30 CEST 2002 Jan Hubicka <jh@suse.cz>
10627
10628 PR target/7723
10629 * i386.c (ix86_expand_vector_move): Do not generate const0->mem moves.
10630
5febdf0d
NB
106312002-10-10 Neil Booth <neil@daikokuya.co.uk>
10632
10633 PR preprocessor/8179
10634 * gcc.c (cpp_options): Add {ansi}, move %{m*} to same location
10635 as cc1_options.
10636 (default_compilers): Pass debug options when preprocessing
10637 stdin.
10638
7db40b5f
RH
106392002-10-06 Richard Henderson <rth@redhat.com>
10640
10641 * toplev.c (rest_of_compilation): Revert opt/2960 change.
10642
4977bab6
ZW
10643Wed Oct 9 21:18:43 CEST 2002 Jan Hubicka <jh@suse.cz>
10644
10645 * i386.c (*_cost): Add branch costs.
10646 (override_options): set ix86_branch_cost.
10647 (ix86_expand_int_movcc): Use BRANCH_COST.
10648 * i386.h (costs): Add branch_cost.
10649
95f79357
ZW
106502002-10-09 Zack Weinberg <zack@codesourcery.com>
10651
10652 PR c/7353
10653 * c-decl.c (start_decl): Unconditionally issue error for
10654 'typedef foo = bar'.
10655 (finish_decl): Remove special case for TYPE_DECL with initializer.
10656
10657 * doc/extend.texi: Delete "Naming Types" section. Change all
10658 cross-references to that section to refer to "Typeof" instead.
10659 Add the useful safe-max()-macro example from "Naming Types" to
10660 "Typeof", rewritten using that extension. Add some compatibility
10661 notes to "Typeof."
10662
44a5565d
KG
106632002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10664
10665 * loop.c: Revert 2002-08-15 change.
10666 (LOOP_REGNO_NREGS): Ensure type is int.
10667
a2419b96
DE
106682002-10-09 David Edelsohn <edelsohn@gnu.org>
10669
10670 * config/rs6000/rs6000.md (extenddftf2): Change to define_insn
10671 which copies first FPR and clears second.
10672 (extendsftf2): Same.
10673 (floatditf2): Fix typo.
10674 (floatsitf2): Same.
10675 (fix_trunctfdi2): Same.
10676 (fix_trunctfsi2): Same.
10677
fb7e6024
KG
106782002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10679
10680 * conflict.c (arc_hash): Change return type to hashval_t.
10681 * cselib.c (get_value_hash): Likewise.
10682 * genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash,
10683 state_hash, automata_list_hash): Likewise.
10684 * read-rtl.c (def_hash): Likewise.
10685 * tree.c (type_hash_hash): Likewise.
10686
36f7e964
AH
106872002-10-08 Aldy Hernandez <aldyh@redhat.com>
10688
10689 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call
10690 prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes.
10691
e3c62520
R
10692Wed Oct 9 15:54:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
10693
10694 * sh.md (ffssi2): Fix emitted code.
10695
a3745024
UW
106962002-10-09 Ulrich Weigand <uweigand@de.ibm.com>
10697
10698 * cse.c (insn_live_p): Pass insn pattern, not full insn
10699 to may_trap_p.
10700
5cc67323
NB
107012002-10-09 Neil Booth <neil@daikokuya.co.uk>
10702
10703 * cppmacro.c (paste_tokens): Only allow / to paste with =.
10704
f5264b52
DE
107052002-10-09 David Edelsohn <edelsohn@gnu.org>
10706
10707 * config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on
10708 64-bit hosts.
10709 (movtf_internal): Reference correct displacement for second value
10710 in memory.
10711 (movtf splitter): Correct generation of constants in 64-bit mode.
10712
cef1c1ba
AM
107132002-10-09 Alan Modra <amodra@bigpond.net.au>
10714
10715 * libgcc2.c (__floatdisf): Properly cure double rounding.
10716
8d15eebc
GDR
107172002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
10718
10719 * c-common.c (cb_register_builtins): Define __WCHAR_MAX__.
10720 * doc/cpp.texi (Common Predefined Macros): Document.
10721
87ec8de9
GDR
107222002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
10723
10724 PR doc/7484
10725 * doc/invoke.texi (Option Summary): List
10726 -Wmissing-declarations as a C only option.
10727
4977bab6
ZW
107282002-10-08 Roger Sayle <roger@eyesopen.com>
10729
10730 * fold-const.c (fold) [LROTATE_EXPR, RROTATE_EXPR]: Optimize
10731 left and right rotates of ~0, i.e. integer_all_onesp (arg0).
10732 [LSHIFT_EXPR, RSHIFT_EXPR]: Optimize shifts and rotates of zero.
10733
10734Tue Oct 8 01:24:19 CEST 2002 Jan Hubicka <jh@suse.cz>
10735
10736 * i386.c (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
10737 x86_sse_typeless_stores, x86_sse_load0_by_pxor): New global
10738 variables.
10739 (safe_vector_operand): Update sse_clrv4sf call.
10740 (ix86_expand_buildin): Likewise
10741 * i386.h (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
10742 x86_sse_typeless_stores, x86_sse_load0_by_pxor): Declare.
10743 (TARGET_SSE_PARTIAL_REG_DEPENDENCY, TARGET_SSE_PARTIAL_REGS,
10744 TARGET_SSE_TYPELESS_STORES, TARGET_SSE_TYPELESS_LOAD0): New
10745 macros.
10746 * i386.md (movsf*, movdf*, movti, movv4sf, movv2df, movv16qi, movv8hi,
10747 movv4si): Obey the new flags.
10748 (floatsi2sf, floatdi2sf, truncatedf2sf): Emit extra load of 0 to avoid
10749 reformating penalty.
10750 (anddf, cmov patterns): Avoid reformating by first converting.
10751 (sse_cvtsd2ss): Fix predicate.
10752 (sse2_clrti): Fix mode,
10753 (sse_clrv4sf): Avoid unspec.
10754
fb7d9c35
JJ
107552002-10-08 Jakub Jelinek <jakub@redhat.com>
10756
10757 * config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove
10758 mno-app-regs|mcmodel=medany.
10759 (MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt.
10760 (MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove.
10761 (CRTSTUFF_T_CFLAGS): Define.
10762
11f3e4c7
RS
107632002-10-08 Roger Sayle <roger@eyesopen.com>
10764
10765 PR target/8087
10766 * simplify-rtx.c (avoid_constant_pool_reference): Allow constant
10767 pool references that are constructed using LO_SUM.
10768
bf52f899
NS
107692002-10-08 Nathan Sidwell <nathan@codesourcery.com>
10770
10771 * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to
10772 -Wall.
10773 * c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak
10774 message.
10775 * flags.h (warn_strict_aliasing): Declare.
10776 * toplev.c (warn_strict_aliasing): Define.
10777 (lang_independent_options): Add it.
10778 * doc/invoke.texi (-Wstrict-aliasing): Document it.
10779
36624850
ZW
107802002-10-08 Zack Weinberg <zack@codesourcery.com>
10781
10782 * system.h (GCCBUGURL): Delete.
10783 * version.c (bug_report_url): New. Add commentary about
10784 modifying both these strings in modified distributions.
10785 * version.h: Declare bug_report_url.
10786
10787 * diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with
10788 bug_report_url.
10789
218145d6
NC
107902002-10-08 Nick Clifton <nickc@redhat.com>
10791
10792 * config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to
10793 convert uint64_t into __ev64_opaque__.
10794 (__ev_set_acc_s64): Likewise, but using signed types.
10795
bb02f6ed
UW
107962002-10-08 Ulrich Weigand <uweigand@de.ibm.com>
10797
10798 * config/s390/s390.md ("*doloop_si_long"): Add missing operand.
10799 ("*doloop_di_long"): Likewise.
10800
4fdbcfb2
JH
10801Tue Oct 8 16:50:10 CEST 2002 Jan Hubicka <jh@suse.cz>
10802
10803 * print-rtl.c (print_rtx): Increase buffer size for real numbers.
10804
e80f2609
RS
108052002-10-08 Richard Sandiford <rsandifo@redhat.com>
10806
10807 * config/mips/mips.md (define_attr cpu): Add r4111.
10808
36624850 108092002-10-08 Anthony Green <green@redhat.com>
4213a3b6 10810
36624850 10811 * bitmap.c (bitmap_equal_p): Clear all bitmap_head fields.
4213a3b6 10812
25009e02
MH
108132002-10-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
10814
10815 * config/c4x/c4x.c (c4x_print_operand): Enlarge buffer
10816 for REAL_VALUE_TO_DECIMAL output.
10817
4977bab6
ZW
108182002-10-07 Richard Henderson <rth@redhat.com>
10819
10820 * cse.c (fixed_base_plus_p): Turn FIXED_BASE_PLUS_P into a
10821 function; cleanup PLUS case by using recursion. Update all users.
10822 (NONZERO_BASE_PLUS_P): Remove.
10823 (find_comparison_args): Use rtx_addr_can_trap_p instead.
10824 (fold_rtx): Use nonzero_address_p.
10825 * rtl.h (nonzero_address_p): Declare.
10826 * rtlanal.c (rtx_varies_p): Handle ADDRESSOF.
10827 (rtx_addr_can_trap_p): Likewise.
10828 (nonzero_address_p): New.
10829 * simplify-rtx.c (NONZERO_BASE_PLUS_P): Remove.
10830 (simplify_relational_operation): Use nonzero_address_p.
10831
fcce224d
DE
108322002-10-07 David Edelsohn <edelsohn@gnu.org>
10833
10834 * config/rs6000/rs6000.c (rs6000_override_options): Set
10835 real_format_for_mode for IBM extended format, if enabled.
10836 (easy_fp_constant): Add TFmode.
10837 (rs6000_legitimize_address): Add TFmode.
10838 (rs6000_legitimate_address): Same.
10839 (function_arg_advance): TFmode uses two FPRs.
10840 (rs6000_emit_prologue): Fix warning.
10841 (rs6000_output_function_epilogue): Add TFmode.
10842 (output_toc): Add TFmode.
10843 * rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode.
10844 (LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode.
10845 * rs6000.md (movtf splitter): Load TFmode constant.
10846
dad482e6 108472002-10-07 Dale Johannesen <dalej@apple.com>
fcce224d 10848
dad482e6
DJ
10849 * rtl.h: Add NOTE_PRECONDITIONED.
10850 * unroll.c: Set it.
10851 * loop.c: Set loop_info->preconditioned from it.
10852 * doloop.c: Permit doloop treatment when loop_info->preconditoned.
10853
de3beb7c
RH
108542002-10-07 Richard Henderson <rth@redhat.com>
10855
10856 * config/i960/i960.c (i960_setup_incoming_varargs): Create a
10857 new rtx for comparing the argument pointer against zero.
10858 (i960_va_start): Similarly.
10859
87cb2a87
RH
108602002-10-07 Richard Henderson <rth@redhat.com>
10861
10862 * config/i960/i960.md (*): Use TFmode, not XFmode.
10863 * config/i960/i960.c (*): Likewise.
10864 (i960_arg_size_and_align): Remove XFmode alignment hack.
10865 (i960_round_align): Merge code from ROUND_TYPE_ALIGN.
10866 * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96.
10867 (MAX_LONG_DOUBLE_TYPE_SIZE): Likewise.
10868 (DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove.
10869
5ef38d2a
RH
108702002-10-07 Richard Henderson <rth@redhat.com>
10871
10872 * config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode
10873 entry points; use void return value and argument list.
10874
4977bab6
ZW
108752002-10-06 Andreas Bauer <baueran@in.tum.de>
10876
10877 * calls.c (expand_call): Fix function-is-volatile check.
10878
e7f9979a
NS
108792002-10-05 Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp>
10880
10881 * t-pdp11: Add MULTILIB support for msoft-float.
10882 * pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case.
10883
10884 * t-pdp11: Add LIB2FUNCS_EXTRA.
36624850 10885 * pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit,
e7f9979a
NS
10886 add preceding 0 to the octal constant, rename 'fp' to 'r5', rename
10887 'fldd' to 'ldd', rename 'fstd' to 'std'.
10888 (pdp11_output_function_epilogue): Likewise.
10889 (output_move_quad): Make the comment gas compatible.
10890 (output_ascii): Add preceding 0 to the octal constant.
10891 (print_operand_address): Add pre_modify, post_modify.
10892 (output_addr_const_pdp11): Add preceding 0 to the octal constant.
10893 * pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case
36624850 10894 with the indication of Paul Koning.
e7f9979a
NS
10895 (PRINT_OPERAND): Fix floating constant.
10896 * pdp11.md (movdi): Restrict matching pattern.
10897 (movqi): Generalize the matching pattern.
10898 (movdf): Restrict matching pattern.
10899 (zero_extendqihi2): Change constant representation.
10900 (floatsidf2): Fix wrong operands.
10901 (addqi3): Fix wrong instruction name.
10902 (subqi3): Fix wrong instruction name.
10903 (andsi3, andhi3, andqi3): Simplify and fix to use 'bic'.
10904 (xorsi3): Fix wrong insn.
10905 (one_cmplqi2): Add two operand pattern.
10906 (lsrsi3): New.
10907 (negsi2): New.
10908 (call): Add register indirect case.
10909 (mod): Fix wrong subreg.
10910
a9b6f1e7 109112002-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
36624850 10912 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
4ef7870a
EB
10913
10914 PR c/7411
10915 * expr.c (expand_expr) [PLUS]: Simplify after the operands
10916 have been expanded in EXPAND_NORMAL mode.
10917
a2900460
RH
109182002-10-06 Richard Henderson <rth@redhat.com>
10919
10920 * config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint.
10921
ff025ab9
RH
109222002-10-06 Richard Henderson <rth@redhat.com>
10923
10924 PR optimization/2960
10925 * toplev.c (rest_of_compilation): Don't copy_loop_headers if
10926 optimize_size.
10927
48b80d93
AO
109282002-10-06 Alexandre Oliva <aoliva@redhat.com>
10929
10930 * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override
10931 previously definitions.
10932
7c7c549e
FCE
109332002-10-06 Frank Ch. Eigler <fche@redhat.com>
10934
10935 * cppinit.c (init_standard_includes, parse_option): Use strncmp.
10936 * c-opts.c (find_opt): Similarly.
10937
4977bab6
ZW
10938Sat Oct 5 22:48:06 CEST 2002 Jan Hubicka <jh@suse.cz>
10939
10940 * athlon.md: rewrite to DFA.
10941 * i386 (ix86_adjust_cost): Drop memory latency code.
10942 (ia32_use_dfa_pipeline_interface): Return true for Athlon.
10943
c49d2df6
JJ
109442002-10-05 Jakub Jelinek <jakub@redhat.com>
10945
10946 * gcc.c (set_multilib_dir): Don't access *end.
10947 Use memcpy instead of strncpy. Don't write beyond malloced buffer.
10948 (print_multilib_info): Don't show paths starting with ".:".
10949 * genmultilib: Add new option, "yes" if multilibs are enabled.
10950 Update comments. If multilibs not enabled, print .:${osdirout}
10951 for each directory. If multilibs are enabled, always print
10952 ${dirout}:${osdirout}, even if the two are the same.
10953 * Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib.
10954 Pass all MULTILIB_* variables to genmultilib even if
10955 --disable-multilib but MULTILIB_OSDIRNAMES is not empty.
10956
4977bab6
ZW
109572002-10-04 Zack Weinberg <zack@codesourcery.com>
10958
10959 * gcc.c (process_command): Set .validated for -pipe. Correct
10960 grammar in comment.
10961
d758c1db
BK
109622002-10-04 Bruce Korb <bkorb@gnu.org>
10963
10964 * fixinc/inclhack.def(hpux11_abs): use format fix
10965 * fixinc/fixincl.x: regenerate
10966 * fixinc/tests/base/stdlib.h: accommodate new fix test
10967
b3dc87c5
JH
10968Sat Oct 5 19:42:45 CEST 2002 Jan Hubicka <jh@suse.cz>
10969
10970 * c-common.c (cb_register_builtins): Use really_no_inline.
10971
f7a21c70
DE
109722002-10-04 David Edelsohn <edelsohn@gnu.org>
10973
10974 * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
10975 copied instruction if the note is not loop invariant.
10976
081d6fb9
LR
109772002-10-04 Loren J. Rittle <ljrittle@acm.org>
10978
10979 * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
10980
c5d3d49b
SE
109812002-10-04 Steve Ellcey <sje@cup.hp.com>
10982
10983 * doc/invoke.texi (HPPA): Add -mlinker-opt, -mgnu-ld,
10984 and -mhp-ld options to list of options. Add -mgnu-ld
10985 and -mhp-ld option descriptions.
10986
0fca111b
SE
109872002-10-04 Steve Ellcey <sje@cup.hp.com>
10988
10989 * fixinc/inclhack.def (hpux11_abs): New.
10990 (stdio_va_list): change __va_list__ to __gnuc_va_list.
10991 * fixinc/fixincl.x: Rebuild.
10992
229b303a
RS
109932002-10-04 Roger Sayle <roger@eyesopen.com>
10994
10995 * config/i386/i386.h (processor_costs): Add new fields fadd,
10996 fmul, fdiv, fabs, fchs and fsqrt to costs structure.
10997 (RTX_COSTS): Use these fields to determine the RTX costs
10998 of floating point addition/subtraction, multiplication,
10999 division, fabs, negation and square root respectively.
11000 * config/i386/i386.c (size_cost): Provide instruction sizes
11001 for these new fields.
11002 (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
11003 k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
11004 counts for these new fields for all x86 processor variants.
11005
481ed21a
KG
110062002-10-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11007
6017ba03
KG
11008 * mips.c (mips_const_double_ok): Delete unused variable.
11009
481ed21a
KG
11010 * gengtype.c (rtx_next): Change type to int.
11011
635f4680
AJ
110122002-10-04 Andreas Jaeger <aj@suse.de>
11013
11014 * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
11015
ee6ff319
RH
110162002-10-04 Richard Henderson <rth@redhat.com>
11017
11018 * real.h (SIGNIFICAND_BITS): Add one more word.
11019 (CONST_DOUBLE_FORMAT): Accomodate 6 words.
11020 * real.c (times_pten): New.
11021 (real_to_decimal, real_from_string): Use it.
11022 (sticky_rshift_significand): Use & to find modulus.
11023 (rshift_significand, lshift_significand): Likewise.
11024 (do_divide): Apply sticky bit after normalization.
11025 (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
11026
4977bab6
ZW
110272002-10-03 Andreas Bauer <baueran@in.tum.de>
11028
11029 * doc/tm.texi (FUNCTION_OK_FOR_SIBCALL): Remove.
11030 (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
11031
6d8dd940
AJ
110322002-10-03 Andreas Jaeger <aj@suse.de>
11033
11034 * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
11035 to unsigned long, adjust printf format string.
11036 (output_mangled_typename): Likewise.
11037
191fe2bb
JT
110382002-10-03 Jason Thorpe <thorpej@wasabisystems.com>
11039
11040 * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
11041 * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
11042 (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
11043 assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
11044 (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
11045 (PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
11046 * config/vax/elf.h (FUNCTION_PROFILER): Remove.
11047 (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
11048
6397d80b
MM
110492002-10-03 Mark Mitchell <mark@codesourcery.com>
11050
11051 * doc/invoke.texi (-Wabi): Document mangling bug.
11052
69c75916
AM
110532002-10-04 Alan Modra <amodra@bigpond.net.au>
11054
11055 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
11056 name for the tbtab label that depends on the function asm name.
11057 Don't output tbtab label unless optional_tbtab.
11058 (output_mi_thunk): Formatting.
11059
adf2ac37
RH
110602002-10-03 Richard Henderson <rth@redhat.com>
11061
11062 * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
11063 * config/m68k/m68k.c (override_options): ... here.
11064 * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
11065 * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
11066 * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
11067 * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
11068
a7519393
RH
110692002-10-03 Richard Henderson <rth@redhat.com>
11070
11071 * real.h (struct real_value): Use ENUM_BITFIELD.
11072
41552736
RH
110732002-10-03 Richard Henderson <rth@redhat.com>
11074
11075 * config/i960/i960.md (call, call_value): Use emit_call_insn.
11076
882affa8
SE
110772002-10-03 Steve Ellcey <sje@cup.hp.com>
11078
11079 * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
11080
83eb95f9
SE
110812002-10-03 Steve Ellcey <sje@cup.hp.com>
11082
11083 * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
11084 * config/pa/pa.h (MASK_GNU_LD): New.
11085 (TARGET_GNU_LD): New.
6d8dd940 11086 * config/pa/pa64-hpux.h (LINK_SPEC): Set based
83eb95f9
SE
11087 on gnu-ld and MASK_GNU_LD.
11088 (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
11089
b72b1c29
JH
11090Thu Oct 3 23:35:51 CEST 2002 Jan Hubicka <jh@suse.cz>
11091
11092 * i386.c (athlon_cost): Fix the move costs.
11093
92b7a2a5
JH
11094Thu Oct 3 23:20:58 CEST 2002 Jan Hubicka <jh@suse.cz>
11095
11096 * final.c (final): Use symbol name as function name for profiling.
11097 * profile.c (get_exec_counts): Likewise.
11098 (branch_prob): Likewise.
11099
429489e5
JJ
111002002-10-03 Jakub Jelinek <jakub@redhat.com>
11101
11102 * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
11103
5bbcd587
JJ
111042002-10-03 Jakub Jelinek <jakub@redhat.com>
11105
11106 * gcc.c (print_multi_os_directory): New variable.
11107 (option_map): Support --print-multi-os-directory.
11108 (struct prefix_list): Add os_multilib field.
11109 (multilib_os_dir): New variable.
11110 (static_specs): Add multilib_options.
11111 (find_a_file): Add multilib argument. Search in GCC or OS multilib
272d0bee 11112 subdirs if nonzero.
5bbcd587
JJ
11113 (read_specs, execute): Update callers.
11114 (find_file): Likewise. Don't prefix name with multilib_dir, instead
11115 pass 1 as multilib option.
11116 (display_help): Include --print-multi-os-directory.
11117 (add_prefix): Add os_multilib argument. Initialize pl->os_multilib.
11118 (process_command): Update callers. Handle --print-multi-os-directory.
11119 (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
11120 set.
11121 (main): Update find_a_file and add_prefix callers.
11122 Handle print_multi_os_directory.
11123 (struct mdswitchstr): New.
11124 (mdswitches, n_mdswitches): New variables.
11125 (used_arg): Add MULTILIB_DEFAULT switches too if they are not
11126 present on the command line nor their mutually incompatible
11127 switches.
11128 (default_arg): Optimize.
11129 (set_multilib_dir): Compute multilib_os_dir. Initialize mdswitches
11130 array.
11131 (print_multilib_info): Only print GCC multilib dir name, not OS
11132 multilib dirname.
11133 * genmultilib: Add osdirnames parameter. Output multilib_options
11134 variable. If osdirnames is specified, output dirnames as
11135 dirname:osdirname.
11136 * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
11137 and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
11138 to compute libgcc_s soname and install path.
11139 * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
11140 SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
11141 (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
11142 argument.
11143
11144 * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
11145 (SHLIB_SLIBDIR_SUFFIXES): Remove.
11146 * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
11147 ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
11148 (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
11149 and -m64.
11150 * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
11151 (SHLIB_SLIBDIR_SUFFIXES): Remove.
11152 * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
11153 (STARTFILE_ARCH_SPEC): Remove.
11154 * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
11155 (SHLIB_SLIBDIR_SUFFIXES): Remove.
11156 * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
11157 * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
11158 (SHLIB_SLIBDIR_SUFFIXES): Remove.
11159
c07f146f
JH
11160Thu Oct 3 21:42:20 CEST 2002 Jan Hubicka <jh@suse.cz>
11161
11162 * predict.c (choose_function_section): Avoid choice for linkonce functions.
11163
4c9c9a3d
JH
11164Thu Oct 3 15:15:00 CEST 2002 Jan Hubicka <jh@suse.cz>
11165
11166 * i386.md (lea to mul peep2): Fix condition.
6d8dd940 11167
f50df1d5
JDA
111682002-10-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
11169
11170 * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
11171 * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
11172
4977bab6
ZW
111732002-10-02 David Mosberger-Tang <David.Mosberger@acm.org>
11174
11175 * unwind.h (_Unwind_GetTextRelBase): Mark _C argument with
11176 attribute "unused".
11177
11178 * config/t-libunwind: Mention unwind-sjlj.c.
11179 * unwind-libunwind.c: Change #ifdef __USING_LIBUNWIND_EXCEPTIONS__
11180 to #ifndef __USING_SJLJ_EXCEPTIONS__.
11181
11182 * configure.in: Move sjlj-exceptions and --enable-libunwind-exceptions
11183 before inclusion of config.gcc, but after configuring the compiler etc.
11184 Determine default value for --enable-libunwind-exceptions based on
11185 whether the host has a libunwind library (not guaranteed to be correct,
11186 but it's a reasonable first guess and can always be overridden with an
11187 explicit --enable/disable-libunwind-exceptions.
11188 * config.gcc: For target ia64*-*-linux*, mention t-libunwind as a
11189 tmake_file when $use_libunwind_exceptions is enabled.
11190 * Makefile.in: Update comment: LIB2ADDEH is updated not just by
11191 ia64 (e.g., config/t-linux also updates it).
11192 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS]: Mention -lunwind
11193 along with the shared version of libgcc since the latter requires
11194 the former.
11195 * unwind-libunwind.c: New file.
11196 * config/t-libunwind: Ditto.
11197
111982002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
11199
11200 * config.gcc: Remove support for vax-*-vms*.
11201 * config/vax/vms.h: Remove.
11202 * config/vax/xm-vms.h: Remove.
11203 * config/vax/vax-protos.h: Remove VMS-specific code.
11204 * config/vax/vax.c: Remove VMS-specific code.
11205
d631b80a
RH
112062002-10-02 Richard Henderson <rth@redhat.com>
11207
11208 PR opt/7124
11209 * config/i386/i386.c (ix86_register_move_cost): Increase cost
11210 for secondary_memory_needed pairs.
11211
854ef390
NN
112122002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
11213
11214 * doc/vms.texi: Blow away false include file section.
11215
f963b5d9
RS
112162002-10-02 Roger Sayle <roger@eyesopen.com>
11217
11218 PR optimization/6627
11219 * toplev.c (force_align_functions_log): New global variable.
11220 * flags.h (force_align_functions_log): Add extern prototype.
11221 * varasm.c (assemble_start_function): Use it to force minimum
11222 function alignment.
11223 * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
11224 minimum function alignment to one byte.
11225 (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
11226 the least significant bit of vtable member function pointers.
11227 * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
11228 here from cp/cp-tree.h.
11229
200bcf7e
JH
11230Wed Oct 2 17:01:36 CEST 2002 Jan Hubicka <jh@suse.cz>
11231
11232 * i386.c (print_operand_address): Use RIP addressing for offsetted
11233 label refs too.
11234
88d0be17
DM
112352002-09-30 David S. Miller <davem@redhat.com>
11236
11237 PR middle-end/7151
11238 * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
11239 (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
11240
4977bab6
ZW
112412002-10-01 Andreas Bauer <baueran@in.tum.de>
11242
11243 * calls.c (expand_call): Remove the `no indirect check'
11244 for sibcall optimization; use function_ok_for_sibcall
11245 target hook; refine check for `function is volatile'.
11246 (FUNCTION_OK_FOR_SIBCALL): Remove the redefinition.
11247 * hooks.c (hook_tree_tree_bool_false): New.
11248 * hooks.h (hook_tree_tree_bool_false): Declare.
11249 * target-def.h (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
11250 (TARGET_INITIALIZER): Add it.
11251 * target.h (struct gcc_target): Add function_ok_for_sibcall.
11252 * config/alpha/alpha.c: (alpha_function_ok_for_sibcall): New.
11253 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
11254 * config/alpha/alpha.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11255 * config/arm/arm-protos.h: (arm_function_ok_for_sibcall):
11256 Remove function declaration.
11257 * config/arm/arm.c: (arm_function_ok_for_sibcall): Make
11258 function static and accept another argument of type `tree'.
11259 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
11260 * config/arm/arm.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11261 * config/frv/frv.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11262 * config/i386/i386.c: (ix86_function_ok_for_sibcall): New.
11263 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
11264 * config/i386/i386.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11265 * config/pa/pa-linux.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11266 (TARGET_HAS_STUBS_AND_ELF_SECTIONS): New definition.
11267 * config/pa/pa.c: (pa_function_ok_for_sibcall): New.
11268 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
11269 * config/pa/pa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11270 * config/rs6000/rs6000-protos.h: (function_ok_for_sibcall):
11271 Remove function declaration.
11272 * config/rs6000/rs6000.c: (rs6000_function_ok_for_sibcall):
11273 Rename function_ok_for_sibcall to rs6000_function_ok_for_sibcall;
11274 rename first argument to `decl'; accept another argument
11275 of type `tree'; make static.
11276 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
11277 * config/rs6000/rs6000.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11278 * config/sh/sh.c: (sh_function_ok_for_sibcall): New.
11279 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
11280 * config/sh/sh.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11281 * config/sparc/sparc.c: (sparc_function_ok_for_sibcall): New.
11282 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
11283 * config/sparc/sparc.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11284 * config/xtensa/xtensa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
11285
f10aac29
RS
112862002-10-01 Roger Sayle <roger@eyesopen.com>
11287
11288 * unroll.c (loop_iterations): Revert 2002-09-08 change.
11289
69bd00e6
RH
112902002-10-01 Richard Henderson <rth@redhat.com>
11291
11292 * real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0.
11293 (real_to_hexadecimal): Likewise.
11294 * print-rtl.c (print_rtx): If we are linked with real.c, don't
11295 dump the XWINT fields of a floating point CONST_DOUBLE.
11296
3b5742ab
JT
112972002-10-01 Jason Thorpe <thorpej@wasabisystems.com>
11298
11299 * config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call.
11300
fd1e5d25
RH
113012002-10-01 Richard Henderson <rth@redhat.com>
11302
11303 * calls.c (precompute_register_parameters): Force non-legitimate
11304 constants into pseudos.
11305
78872ad9
NC
113062002-10-01 Nick Clifton <nickc@redhat.com>
11307
11308 * config/rs6000/spe.md (spe_evrlwi): Add missing third operand
11309 to assembler template.
11310
3c655f42
RH
113112002-10-01 Richard Henderson <rth@redhat.com>
11312
11313 * dwarf2out.c (loc_descriptor_from_tree): Relax requirement
11314 for TLS debug info to !DECL_EXTERNAL.
11315
ec20cffb 113162002-10-01 Matt Thomas <matt@3am-software.com>
ee6ff319 11317 Jason Thorpe <thorpej@wasabisystems.com>
ec20cffb
JT
11318
11319 * config.gcc (vax-*-netbsdelf*): Enable configuration.
6d8dd940 11320 * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
ec20cffb
JT
11321 if not already defined.
11322 * config/vax/elf.h: New file.
11323 * config/vax/netbsd-elf.h: New file.
11324 * config/vax/vax.c: Include "debug.h".
11325 (vax_output_function_prologue): Add dwarf2 support. Use
11326 MAIN_NAME_P when checking for VMS_TARGET stack adjust.
11327 * config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
11328 'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
11329 'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
11330 (VAX_ISTREAM_SYNC): Remove.
11331 (INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
11332 (JUMP_TABLES_IN_TEXT_SECTION): Define.
11333 (ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
11334 (ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
11335 and assemble_name.
11336 (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
11337 (PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
11338 (PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
11339 (INCOMING_RETURN_ADDR_RTX): Define.
11340 * config/vax/vax.md (VUNSPEC_BLOCKAGE)
11341 (VUNSPEC_SYNC_ISTREAM): Define.
11342 (blockage): Use VUNSPEC_BLOCKAGE.
11343 (sync_istream): New insn.
11344
113452002-10-01 Richard Henderson <rth@redhat.com>
11346
11347 * config/vax/vax.md (call_pop, *call_pop, call_value_pop)
11348 (*call_value_pop, call, call_value): Add dwarf2 EH support.
11349 (*call): New insn.
11350
73a73768
NS
113512002-10-01 Nathan Sidwell <nathan@codesourcery.com>
11352
11353 PR c/8083
11354 * c-typeck.c (build_c_cast): Warn about type punning which breaks
11355 type based aliasing.
11356
0645ba8f
MM
113572002-10-01 Mark Mitchell <mark@codesourcery.com>
11358
11359 * stor-layout.c (update_alignment_for_field): New function.
11360 (place_union_field): Use it.
11361 (place_field): Likewise.
6d8dd940 11362
f7e466a3
NS
113632002-10-01 Nathan Sidwell <nathan@codesourcery.com>
11364
73a73768 11365 PR other/8077
f7e466a3
NS
11366 * gcc.c (cc1_options): Add space on -auxbase-strip.
11367
bc9ec51b
JW
113682002-10-01 Jim Wilson <wilson@redhat.com>
11369
11370 * config/v850/v850.h (EPILOGUE_USES): Define.
11371
a646f6cc
AH
113722002-09-30 Andrew Haley <aph@redhat.com>
11373
6d8dd940 11374 * flow.c (insn_dead_p): When using non-call-exceptions, don't
a646f6cc
AH
11375 eliminate insns that may trap.
11376 * cse.c (insn_live_p): Likewise.
11377
3f7967e3
RS
113782002-10-01 Richard Sandiford <rsandifo@redhat.com>
11379
11380 * config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
11381 (TARGET_MIPS4121): Rename to TARGET_MIPS4120.
11382 * config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
11383 * config/mips/mips.md: Apply same renaming here.
11384
41f9efba
RS
113852002-10-01 Richard Sandiford <rsandifo@redhat.com>
11386
11387 * config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
11388 (GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
11389 * config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
11390 * config/mips/mips.md (define_attr cpu): Remove r4320.
11391 Remove vr4320 scheduler and uses of TARGET_MIPS4320.
11392
366356d3
RS
113932002-10-01 Richard Sandiford <rsandifo@redhat.com>
11394
11395 * config/mips/mips.c (mips16_strings): New variable.
11396 (mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
11397 symbol in mips16_strings. Free the list.
11398 (mips_encode_section_info): Keep track of local strings.
11399
8ab907e8
RS
114002002-10-01 Richard Sandiford <rsandifo@redhat.com>
11401
11402 * config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
11403 (sordered_df, sordered_sf): Remove.
11404 * config/mips/mips.c (get_float_compare_codes): New fn.
11405 (gen_int_relational, gen_conditional_move): Use it.
11406
d12b8c85
RS
114072002-10-01 Richard Sandiford <rsandifo@redhat.com>
11408
11409 * config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
11410 * config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
11411 * config/mips/mips.c (fcc_register_operand): New function.
11412 (mips_emit_fcc_reload): New function, extracted from reload_incc.
11413 (override_options): Allow TFmode values in float registers
11414 if ISA_HAS_8CC.
11415 * cnfig/mips/mips.md (reload_incc): Change destination prediate
11416 to fcc_register_operand. Remove misleading source constraint.
11417 Use mips_emit_fcc_reload.
11418 (reload_outcc): Duplicate reload_incc.
11419
4977bab6
ZW
114202002-09-30 Zack Weinberg <zack@codesourcery.com>
11421
11422 * gcc.c (validate_switches): Handle all new forms of spec
11423 syntax introduced recently. Now returns a char *.
11424 (validate_all_switches): Repetitive logic broken out to...
11425 (validate_switches_from_spec): ...here.
11426 * mklibgcc.in: Don't @-flag commands to generate .oS files.
11427
7e765675
UW
114282002-09-30 Ulrich Weigand <uweigand@de.ibm.com>
11429
11430 * longlong.h: Partially synchronize with GMP-4.1 version:
11431 Use i370 definitions also for s390.
11432 Add generic definition of umul_ppmm in terms of smul_ppmm.
11433 [s390] (umul_ppmm): Remove.
11434 [s390] (smul_ppmm): Fix incorrect assembler constraints.
11435 [s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.
11436
89f6025d
BW
114372002-09-30 Bob Wilson <bob.wilson@acm.org>
11438
11439 * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
11440 Add new RL_REGS register class.
11441 (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
ee6ff319 11442 Call xtensa_preferred_reload_class for both input and output reloads.
89f6025d
BW
11443 * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
11444 (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
11445 instead of either AR_REGS or GR_REGS classes.
11446 (xtensa_secondary_reload_class): Use new RL_REGS class.
11447 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.
11448
7830ba7b
JDA
114492002-09-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
11450
11451 * pa.c (hppa_encode_label): Don't drop '*' from function labels.
11452 (pa_strip_name_encoding): Strip '@' and '*', in that order.
11453 * pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
11454 there is a '*' prefix in NAME.
11455
344b78b8
JH
11456Mon Sep 30 21:33:23 CEST 2002 Jan Hubicka <jh@suse.cz>
11457
11458 * reload.c (push_reload): Handle subregs and secondary memory.
11459 * reload1.c (gen_reload): Likewise.
11460
11461 * jump.c (reg_or_subregno): New function.
11462 * rtl.h (reg_or_subregno): Declare
11463 * unroll.c (find_splittable_givs): Handle subregs.
11464
17bbb839
MM
114652002-09-30 Mark Mitchell <mark@codesourcery.com>
11466
11467 * store-layout.c (finish_record_layout): Add free_p parameter.
11468 (layout_type): Pass it.
11469 * tree.h (finish_record_layout): Update prototype.
92e89ef0 11470
48ddd46c
JH
11471Mon Sep 30 14:57:18 CEST 2002 Jan Hubicka <jh@suse.cz>
11472
11473 * i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
11474
11475 * gcse.c (cprop_jump): Check that the register has not
11476 been modified
11477 (cprop_jump): Likewise.
11478
b93a0fe6
RE
114792002-09-30 Richard Earnshaw <rearnsha@arm.com>
11480
11481 * arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
11482 (MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
11483 that we have a SImode access, and only then if reload hasn't completed;
11484 for all other cases, use LO_REGS.
11485
4977bab6
ZW
114862002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11487
11488 * openbsd.h: Fix typo in last change.
11489
98ee7e6c
RH
114902002-09-29 Richard Henderson <rth@redhat.com>
11491
11492 * real.c (real_from_string): Apply sign last. Tidy exponent handling.
11493
ccf7aef4
RH
114942002-09-29 Richard Henderson <rth@redhat.com>
11495
b5371c18 11496 PR c/8002
ccf7aef4
RH
11497 * combine.c (force_to_mode): Handle FLOAT_MODE destinations
11498 for CONST_INT.
11499
d454e75a
DE
115002002-09-29 David Edelsohn <edelsohn@gnu.org>
11501
11502 * real.h (ibm_extended_format): Declare.
11503 * real.c (encode_ibm_extended, decode_ibm_extended): New
11504 functions.
11505
89b06540
KG
115062002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11507
11508 * darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
11509
11510 * ia64.c (ia64_hpux_asm_file_end): Const-ify.
11511
6ca6193b
JDA
115122002-09-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
11513
11514 * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
11515
991b6592
KH
115162002-09-29 Kazu Hirata <kazu@cs.umass.edu>
11517
11518 * builtins.def: Fix comment formatting.
11519 * c-common.def: Likewise.
11520 * cfgcleanup.c: Likewise.
11521 * combine.c: Likewise.
11522 * gengtype.c: Likewise.
11523 * params.def: Likewise.
11524 * predict.def: Likewise.
11525 * rtl.def: Likewise.
11526 * stab.def: Likewise.
11527 * stor-layout.c: Likewise.
11528 * tree.def: Likewise.
11529 * config/darwin.c: Likewise.
11530 * config/darwin.h: Likewise.
11531 * config/dbxcoff.h: Likewise.
11532 * config/elfos.h: Likewise.
11533 * config/fp-bit.c: Likewise.
11534 * config/freebsd-spec.h: Likewise.
11535 * config/interix.h: Likewise.
11536 * config/libgloss.h: Likewise.
11537 * config/linux-aout.h: Likewise.
11538 * config/linux.h: Likewise.
11539 * config/lynx-ng.h: Likewise.
11540 * config/lynx.h: Likewise.
11541 * config/netbsd-aout.h: Likewise.
11542 * config/netbsd.h: Likewise.
11543 * config/netware.h: Likewise.
11544 * config/psos.h: Likewise.
11545 * config/ptx4.h: Likewise.
11546
43aa4e05
KH
115472002-09-28 Kazu Hirata <kazu@cs.umass.edu>
11548
11549 * ChangeLog.4: Fix typos.
11550 * ChangeLog.6: Likewise.
11551 * FSFChangeLog.10: Likewise.
11552 * genattrtab.c: Fix comment typos.
11553 * haifa-sched.c: Likewise.
11554 * real.c: Likewise.
11555 * tree.h: Likewise.
11556 * config/arm/arm.c: Likewise.
11557 * config/arm/crti.asm: Likewise.
11558 * config/arm/crtn.asm: Likewise.
11559 * config/frv/frv.c: Likewise.
11560 * config/frv/frv.md: Likewise.
11561 * config/h8300/h8300.md: Likewise.
11562 * config/i386/rtemself.h: Likewise.
11563 * config/ia64/unwind-ia64.c: Likewise.
11564 * config/ip2k/ip2k.h: Likewise.
11565 * config/m88k/m88k.c: Likewise.
11566 * config/m88k/m88k.md: Likewise.
11567 * config/mips/sr71k.md: Likewise.
11568 * config/mmix/mmix.c: Likewise.
11569 * config/rs6000/rs6000.c: Likewise.
11570 * config/sh/sh.md: Likewise.
11571
13e8651c
TR
115722002-09-26 Theodore A. Roth <troth@verinet.com>
11573
92e89ef0
ZW
11574 * config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
11575 * config/avr/avr.md: Ditto.
13e8651c 11576
57147be1
ZW
115772002-09-27 Alexander N. Kabaev <ak03@gte.com>
11578
11579 PR preprocessor/8055
11580 * cppmacro.c (stringify_arg): Do not overflow the buffer
11581 with the terminating NUL when the argument to be stringified
11582 has no tokens.
11583
5d0f3df7
RH
115842002-09-27 Richard Henderson <rth@redhat.com>
11585
11586 * unroll.c (simplify_cmp_and_jump_insns): New.
11587 (unroll_loop): Use it. Use simplify_gen_foo+force_operand
11588 instead of expand_simple_foo.
11589
3dfda826
RH
115902002-09-27 Richard Henderson <rth@redhat.com>
11591
11592 PR optimization/7520
11593 * cfganal.c (flow_active_insn_p): New.
11594 (forwarder_block_p): Use it.
11595
23b8ba81
RH
115962002-09-27 Richard Henderson <rth@redhat.com>
11597
11598 * emit-rtl.c (active_insn_p): Revert last change.
11599
dce81a1a
JJ
116002002-09-27 Jakub Jelinek <jakub@redhat.com>
11601
11602 * doc/extend.texi (tls_model): Document.
11603 * varasm.c (decl_tls_model): New.
11604 * c-common.c (handle_tls_model_attribute): New.
11605 (c_common_attribute_table): Add tls_model.
11606 * config/alpha/alpha.c (alpha_encode_section_info): Use
11607 decl_tls_model.
11608 * flags.h (enum tls_model, flag_tls_default): Move...
11609 * tree.h (enum tls_model, flag_tls_default): ...here.
11610 (decl_tls_model): New prototype.
11611 * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
11612 * config/i386/i386.c (ix86_encode_section_info): Likewise.
11613 * config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
11614 Allow !flag_pic.
11615
0e9e1e0a
KH
116162002-09-27 Kazu Hirata <kazu@cs.umass.edu>
11617
11618 * LANGUAGES: Follow spelling conventions.
11619 * rtl.def: Likewise.
11620 * sbitmap.c: Likewise.
11621 * sched-int.h: Likewise.
11622 * sched-rgn.c: Likewise.
11623 * sibcall.c: Likewise.
11624 * simplify-rtx.c: Likewise.
11625 * ssa.c: Likewise.
11626 * stab.def: Likewise.
11627 * stmt.c: Likewise.
11628 * stor-layout.c: Likewise.
11629 * target.h: Likewise.
11630 * timevar.c: Likewise.
11631 * toplev.c: Likewise.
11632 * tree-dump.c: Likewise.
11633 * tree-inline.c: Likewise.
11634 * tree.c: Likewise.
11635 * tree.def: Likewise.
11636 * tree.h: Likewise.
11637 * unroll.c: Likewise.
11638 * varasm.c: Likewise.
11639 * vmsdbgout.c: Likewise.
11640 * treelang/treelang.texi: Likewise.
11641 * treelang/treetree.c: Likewise.
11642
b9b575e6
KH
116432002-09-27 Kazu Hirata <kazu@cs.umass.edu>
11644
11645 * config/h8300/h8300.c (compute_saved_regs): Use a macro
11646 instead of a hard register number.
11647 (get_shift_alg): Use an enumerated type instead of numbers.
11648 (h8300_shift_needs_scratch_p): Likewise.
11649
4977bab6
ZW
116502002-09-26 Kazu Hirata <kazu@cs.umass.edu>
11651
11652 * varasm.c (force_data_section): Remove.
11653 (assemble_constant_align): Likewise.
11654 * output.h: Remove corresponding prototypes.
11655
116562002-09-26 Roger Sayle <roger@eyesopen.com>
11657
11658 * stmt.c (expand_exit_loop_if_false): Expand a simple conditional
11659 jump, if the loop to exit is the top of the current nesting stack.
11660
116612002-09-26 Torbjorn Granlund <tege@swox.com>
11662
11663 * libgcc2.c (fixunsdfdi, fixunssfdi): Rewrite, avoiding `long long'
11664 arithmetic.
11665
99a32567
DM
116662002-09-26 David S. Miller <davem@redhat.com>
11667
11668 PR optimization/7335
11669 * calls.c (emit_library_call_value_1): Passing args by reference
11670 converts a CONST function into a PURE one.
11671
67cef334
DE
116722002-09-26 David Edelsohn <edelsohn@gnu.org>
11673
11674 * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
11675 text_section.
57147be1 11676 * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
67cef334
DE
11677 text section.
11678 * config/rs6000/rs6000.c (rs6000_override_options): Allow
11679 function-sections and data-sections functionality on AIX.
11680
116812002-09-26 David Edelsohn <edelsohn@gnu.org>
11682 Dale Johannesen <dalej@apple.com>
11683
11684 * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
11685 in RTL for sub-word loads from memory.
11686
c2310f51
RH
116872002-09-26 Richard Henderson <rth@redhat.com>
11688
11689 PR c/7160
11690 * sched-deps.c (sched_analyze_insn): Make clobber insns depend
11691 on call insns.
11692
7847d627
RH
116932002-09-26 Richard Henderson <rth@redhat.com>
11694
11695 * emit-rtl.c (const_double_htab_eq): Remove unused variable.
11696
cde0ce6e
CL
116972002-09-26 Chris Lattner <sabre@nondot.org>
11698
11699 * ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when
11700 handling undefined values.
11701
03a62672
RH
117022002-09-26 Richard Henderson <rth@redhat.com>
11703
5fd452e8 11704 PR opt/7520
03a62672
RH
11705 * emit-rtl.c (active_insn_p): Consider a clobber of the
11706 function return value to be active even after reload.
11707
b5a77fef
AM
117082002-09-27 Alan Modra <amodra@bigpond.net.au>
11709
11710 * doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust
11711 by absolute loop increment, not loop increment.
11712
40f03658
KH
117132002-09-26 Kazu Hirata <kazu@cs.umass.edu>
11714
11715 * c-common.h: Follow spelling conventions.
11716 * cpplex.c: Likewise.
11717 * cpplib.h: Likewise.
11718 * gthr-dce.h: Likewise.
11719 * gthr-posix.h: Likewise.
11720 * optabs.c: Likewise.
11721 * output.h: Likewise.
11722 * profile.c: Likewise.
11723 * protoize.c: Likewise.
11724 * ra-rewrite.c: Likewise.
11725 * real.c: Likewise.
11726 * recog.c: Likewise.
11727 * reg-stack.c: Likewise.
11728 * regclass.c: Likewise.
11729 * regmove.c: Likewise.
11730 * reload.c: Likewise.
11731 * reload.h: Likewise.
11732 * reload1.c: Likewise.
11733 * reorg.c: Likewise.
11734 * resource.c: Likewise.
11735 * rtl.h: Likewise.
11736 * rtlanal.c: Likewise.
11737
ee8a73d6
SE
117382002-09-26 Steve Ellcey <sje@cup.hp.com>
11739
11740 * config/ia64/ia64.c (ia64_expand_load_address): Ensure correct mode
11741 for symbol address.
11742
2eb2bbdc
EC
117432002-09-24 Eric Christopher <echristo@redhat.com>
11744
57147be1
ZW
11745 * config/mips/elf.h: Add HANDLE_SYSV_PRAGMA.
11746 * config/mips/elf64.h: Ditto.
2eb2bbdc 11747
0ab38418
EC
117482002-09-24 Eric Christopher <echristo@redhat.com>
11749
57147be1 11750 * except.c (expand_builtin_extract_return_address): Handle case
0ab38418
EC
11751 where Pmode != ptr_mode.
11752
68bb91b1
SE
117532002-09-26 Steve Ellcey <sje@cup.hp.com>
11754
11755 * config/ia64/hpux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): New
11756
5429802d
SE
117572002-09-26 Steve Ellcey <sje@cup.hp.com>
11758
11759 * config/ia64/hpux.h (TARGET_DEFAULT): Include TARGET_ILP32.
11760
855c3a2e
IS
117612002-09-26 Igor Shevlyakov <igor@microunity.com>
11762
11763 * combine.c (simplify_set): Don't call to force_to_mode if size
11764 of integer type is larger than HOST_BITS_PER_WIDE_INT.
11765
2d556baf
JJ
117662002-09-26 Janis Johnson <janis187@us.ibm.com>
11767
11768 * Makefile.in (qmtest-g++): Fix file path.
11769
1717e19e
UW
117702002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
11771
0ab38418 11772 * expr.c (expand_expr) [MINUS_EXPR]: Convert A - const to
1717e19e
UW
11773 A + (-const) on RTX level, even for unsigned types.
11774
6cabe79e
UW
117752002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
11776
11777 * reload.c (dup_replacements): New function.
11778 (find_reloads): Use it to duplicate replacements at the top level
11779 of match_dup operands.
11780
0855247a
MB
117812002-09-26 Miles Bader <miles@gnu.org>
11782
11783 * v850.md ("length"): Change default value to 4.
11784
6335b0aa
KH
117852002-09-26 Kazu Hirata <kazu@cs.umass.edu>
11786
11787 * ChangeLog.1: Follow spelling conventions.
11788 * ChangeLog.4: Likewise.
11789 * ChangeLog.6: Likewise.
11790 * FSFChangeLog.11: Likewise.
11791 * doc/cpp.texi: Likewise.
11792 * doc/invoke.texi: Likewise.
11793 * doc/tm.texi: Likewise.
11794
09818236
NC
117952002-09-26 Nick Clifton <nickc@redhat.com>
11796
11797 * config.gcc: Add x prefix to v850e case for handling
11798 --with-cpu=v850e.
11799
4977bab6
ZW
118002002-09-25 Zack Weinberg <zack@codesourcery.com>
11801
11802 * gcc.c (input_suffix_matches, switch_matches,
11803 mark_matching_switches, process_marked_switches,
11804 process_brace_body): New functions - split from handle_braces.
11805 (handle_braces): Rewrite; handle %{S:X;T:Y;:D} syntax; accept
11806 and ignore whitespace in more places.
11807 (specs documentation comment): Document %{S:X;T:Y;:D}.
11808 Clarify other %{...} docs.
11809 * doc/invoke.texi: Document %{S:X;T:Y;:D}. Clarify other
11810 %{...} docs.
11811
11812 * config/arm/aof.h (LINK_SPEC): Change %{ov*,*} to %{ov*}.
11813 * config/rs6000/sysv4.h: Use N-way choice spec syntax.
11814
8a3996fd
DM
118152002-09-25 David S. Miller <davem@redhat.com>
11816
11817 PR target/7842
11818 * config/sparc/sparc.c (set_extends): SImode ASHIFT does not
11819 extend.
11820
8580f7a0
RH
118212002-09-25 Richard Henderson <rth@redhat.com>
11822
11823 * emit-rtl.c (const_double_htab_eq): Distinguish integer and
11824 fp CONST_DOUBLE; use real_identical.
11825
956d9305
MM
118262002-09-25 Mark Mitchell <mark@codesourcery.com>
11827
11828 * doc/invoke.texi: Add more -Wabi examples.
11829
3ccbe819
RS
118302002-09-25 Richard Sandiford <rsandifo@redhat.com>
11831
11832 * config/mips/mips.h (TARGET_MIPS4100): Add missing bracket.
11833
4977bab6
ZW
118342002-09-24 Nathan Sidwell <nathan@codesourcery.com>
11835
11836 * profile.c (end_branch_prob): Only look for __gcov_init on
11837 weak-enabled native compilers.
11838
2106e42a
DC
118392002-09-24 Denis Chertykov <denisc@overta.ru>
11840
11841 * config/ip2k/ip2k.c (function_epilogue): Fix wrong numbers in
11842 cases of optimizing "add sp,w" to "inc sp".
11843
58e60158
AN
118442002-09-24 Adam Nemet <anemet@lnxw.com>
11845
57147be1
ZW
11846 * config/arm/arm.c (thumb_unexpanded_epilogue): Don't generate
11847 epilogue for naked functions.
58e60158 11848
59be6073 118492002-09-24 Adam Nemet <anemet@lnxw.com>
57147be1 11850 Nick Clifton <nickc@redhat.com>
59be6073
AN
11851
11852 * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Remove.
11853 (FUNCTION_PROFILER): Only invoke THUMB_FUNCTION_PROFILER if it
11854 is defined.
11855
100c7420
UW
118562002-09-24 Ulrich Weigand <uweigand@de.ibm.com>
11857
11858 * config/s390/s390.c (preferred_la_operand_p): New function.
11859 * config/s390/s390-protos.h (preferred_la_operand_p): Declare it.
11860 * config/s390/s390.md ("addaddr_esame", "*la_ccclobber"): Replace by ...
11861 ("*la_64_cc", "*la_31_cc", splitters): ... these.
11862 ("*la_31"): Deactivate for TARGET_64BIT.
11863 ("*la_31_and", "*la_31_and_cc"): New.
11864
9fc63af5
KG
118652002-09-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11866
11867 * real.h (real_value): Make `exp' explicitly signed.
11868
43a88a8c
KH
118692002-09-24 Kazu Hirata <kazu@cs.umass.edu>
11870
11871 * config/elfos.h: Follow spelling conventions.
11872 * config/alpha/alpha.h: Likewise.
11873 * config/arc/arc.h: Likewise.
11874 * config/arm/arm.md: Likewise.
11875 * config/avr/avr.h: Likewise.
11876 * config/cris/cris.md: Likewise.
11877 * config/d30v/d30v.h: Likewise.
11878 * config/frv/frv.c: Likewise.
11879 * config/frv/frv.h: Likewise.
11880 * config/h8300/h8300.c: Likewise.
11881 * config/h8300/h8300.h: Likewise.
11882 * config/h8300/h8300.md: Likewise.
11883 * config/i386/cygwin.h: Likewise.
11884 * config/i386/i386.h: Likewise.
11885 * config/i386/sysv3.h: Likewise.
11886 * config/i960/i960.h: Likewise.
11887 * config/ia64/ia64.h: Likewise.
11888 * config/ia64/ia64.md: Likewise.
11889 * config/ip2k/ip2k.h: Likewise.
11890 * config/m32r/m32r.h: Likewise.
11891 * config/m68k/m68k.h: Likewise.
11892 * config/m88k/m88k.h: Likewise.
11893 * config/mcore/mcore.c: Likewise.
11894 * config/mcore/mcore.h: Likewise.
11895 * config/mcore/mcore.md: Likewise.
11896 * config/mips/mips.h: Likewise.
11897 * config/mmix/mmix.h: Likewise.
11898 * config/mmix/mmix.md: Likewise.
11899 * config/ns32k/netbsd.h: Likewise.
11900 * config/ns32k/ns32k.h: Likewise.
11901 * config/ns32k/ns32k.md: Likewise.
11902 * config/pa/pa.h: Likewise.
11903 * config/romp/romp.h: Likewise.
11904 * config/rs6000/rs6000.h: Likewise.
11905 * config/rs6000/rs6000.md: Likewise.
11906 * config/sparc/sparc.h: Likewise.
11907 * config/stormy16/stormy-abi: Likewise.
11908 * config/stormy16/stormy16.h: Likewise.
11909 * config/vax/vax.h: Likewise.
11910
4977bab6
ZW
119112002-09-23 Kazu Hirata <kazu@cs.umass.edu>
11912
11913 * config/alpha/alpha.h: Remove commented-out macro
11914 definitions of HAVE_{POST|PRE}_{INC|DEC}REMENT.
11915 * config/avr/avr.h: Likewise.
11916 * config/d30v/d30v.h: Likewise.
11917 * config/dsp16xx/dsp16xx.h: Likewise.
11918 * config/i370/i370.h: Likewise.
11919 * config/i386/i386.h: Likewise.
11920 * config/i960/i960.h: Likewise.
11921 * config/m68k/m68k.h: Likewise.
11922 * config/m88k/m88k.h: Likewise.
11923 * config/mips/mips.h: Likewise.
11924 * config/ns32k/ns32k.h: Likewise.
11925 * config/pdp11/pdp11.h: Likewise.
11926 * config/romp/romp.h: Likewise.
11927 * config/rs6000/rs6000.h: Likewise.
11928 * config/s390/s390.h: Likewise.
11929 * config/sh/sh.h: Likewise.
11930 * config/sparc/sparc.h: Likewise.
11931 * config/stormy16/stormy16.h: Likewise.
11932 * config/vax/vax.h: Likewise.
11933
119342002-09-23 Kazu Hirata <kazu@cs.umass.edu>
11935
11936 * function.c (push_temp_slots_for_block): Remove.
11937 (push_temp_slots_for_target): Likewise.
11938 (get_target_temp_slot_level): Likewise.
11939 (set_target_temp_slot_level): Likewise.
11940 (get_first_block_beg): Likewise.
11941 * function.h: Remove corresponding prototypes.
11942
b4f94ac1
ZW
119432002-09-23 Zack Weinberg <zack@codesourcery.com>
11944
11945 * version.c (version_string): Now const char[].
11946 * version.h: Update to match.
11947
9ef1b13a
RH
119482002-09-23 Richard Henderson <rth@redhat.com>
11949
11950 * config/i386/i386.h (MASK_ACCUMULATE_OUTGOING_ARGS_SET, MASK_MMX_SET,
11951 MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET, MASK_3DNOW_A_SET): Kill.
11952 (TARGET_SWITCHES): Don't reference them.
11953 * config/i386/i386.c (override_options): Use target_flags_explicit
11954 to examine bits set by the user.
11955
ca9d6748 119562002-09-23 Dale Johannesen <dalej@apple.com>
9ef1b13a 11957
ca9d6748
DJ
11958 * dbxout.c (dbxout_parms): Set current_sym_code for params
11959 passed on stack by invisible reference.
11960
97d48e5a
RE
119612002-09-23 Richard Earnshaw <rearnsha@arm.com>
11962
11963 * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Always allocate
11964 at least one byte of space.
11965
46c83bce
MM
119662002-09-23 Mark Mitchell <mark@codesourcery.com>
11967
11968 * c-common.h (flag_abi_version): Fix typo in comment.
11969 * doc/invoke.texi (flag_abi_version): Document default value.
11970
acb5d088
HPN
119712002-09-23 Hans-Peter Nilsson <hp@axis.com>
11972
11973 * doc/extend.texi (Extended Asm): Clarify that overlap between
11974 asm-declared register variables used in an asm and the asm clobber
11975 list is not allowed.
11976 * stmt.c (decl_conflicts_with_clobbers_p): New function.
11977 (expand_asm_operands): Keep track of clobbered registers. Call
11978 decl_conflicts_with_clobbers_p for each input and output operand.
11979 If no conflicts found before, also do conflict sanity check when
11980 emitting clobbers.
11981
ddf0fc72
RH
119822002-09-23 Richard Henderson <rth@redhat.com>
11983
11984 * c-common.c (cpp_define_data_format): Remove.
11985 (cb_register_builtins): Don't define __WCHAR_BIT__, __SHRT_BIT__,
11986 __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
11987 __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
11988 * doc/cpp.texi: Don't document them either.
11989 (__SCHAR_MAX__, __SHRT_MAX__, __INT_MAX__, __LONG_MAX__,
11990 __LONG_LONG_MAX__): Document.
11991 (__TARGET_FLOAT_FORMAT__): Remove.
11992
a520ff95
RH
119932002-09-23 Richard Henderson <rth@redhat.com>
11994
11995 * real.c (do_multiply): Normalize U before addition.
11996
2d3e278d
MM
119972002-09-23 Mark Mitchell <mark@codesourcery.com>
11998
11999 * c-common.c (flag_abi_version): New variable.
12000 * c-common.h (flag_abi_version): Declare it.
12001 * c-opts.c (missing_arg): Add -fabi-version.
12002 (c_common_decode_option): Process -fabi-version.
12003 * doc/invoke.texi (-fabi-version): Document it.
12004 (-Wabi): Add information about bit-fields in unions.
b4f94ac1 12005
4977bab6
ZW
120062002-09-22 Roger Sayle <roger@eyesopen.com>
12007
12008 * expr.c (STORE_BY_PIECES_P): New target macro.
12009 (can_store_by_pieces, store_by_pieces): Use STORE_BY_PIECES_P
12010 instead of MOVE_BY_PIECES_P.
12011 * doc/tm.texi: Document this new macro.
12012
173b51b5
JT
120132002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
12014
12015 * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Always pass -KPIC
12016 unless -fno-pic or -fno-PIC is specified.
12017
c219e1da
JDA
120182002-09-22 John David Anglin <dave@hiauly1.hia.nrc.ca>
12019
12020 * c-common.c (preprocessing_trad_p): Define.
12021 * pa-hiux.h, pa-hpux.h, pa-hpux7.h (CPP_PREDEFINES): Delete.
12022 (TARGET_OS_CPP_BUILTINS, SUBTARGET_SWITCHES): Define.
12023 * pa-hpux10.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
12024 * pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define.
12025 * pa-linux.h (CPP_PREDEFINES): Delete.
12026 (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
12027 * pa32-linux.h, pa64-linux.h (CPP_SPEC): Delete.
12028 * pa-osf.h, pa-pro-end.h, rtems.h (CPP_PREDEFINES): Delete.
12029 (TARGET_OS_CPP_BUILTINS): Define.
12030 * pa.h (MASK_SIO, TARGET_SIO, TARGET_PA_10): Define.
12031 (TARGET_SWITCHES): Reformat. Use N_() macro. Add SUBTARGET_SWITCHES.
12032 (SUBTARGET_SWITCHES): Provide default definition.
12033 (TARGET_OPTIONS): Reformat. Use N_() macro.
12034 (CPP_PA10_SPEC, CPP_PA11_SPEC, CPP_PA20_SPEC, CPP_64BIT_SPEC,
12035 CPP_CPU_DEFAULT_SPEC, CPP_64BIT_DEFAULT_SPEC, SUBTARGET_EXTRA_SPECS,
12036 EXTRA_SPECS, CPP_SPEC, CPLUSPLUS_CPP_SPEC, CPP_PREDEFINES): Delete.
12037 (TARGET_CPU_CPP_BUILTINS): Define.
12038 (TARGET_OS_CPP_BUILTINS): Define for BSD-like systems.
12039 * doc/invoke.texi (msio, mwsio): Document new hppa options.
12040 * doc/tm.texi (TARGET_CPU_CPP_BUILTINS): Document macro
12041 preprocessing_trad_p().
12042
65a824f6
JT
120432002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
12044
12045 * doc/install.texi: Document behavior of --with-headers and
12046 --with-libs when arguments are omitted.
12047
cc2902df
KH
120482002-09-22 Kazu Hirata <kazu@cs.umass.edu>
12049
12050 * dbxout.c: Follow spelling conventions.
12051 * defaults.h: Likewise.
12052 * df.c: Likewise.
12053 * diagnostic.h: Likewise.
12054 * doloop.c: Likewise.
12055 * dwarf2out.c: Likewise.
12056 * dwarfout.c: Likewise.
12057 * emit-rtl.c: Likewise.
12058 * except.c: Likewise.
12059 * explow.c: Likewise.
12060 * expmed.c: Likewise.
12061 * expr.c: Likewise.
12062 * expr.h: Likewise.
12063 * flags.h: Likewise.
12064 * flow.c: Likewise.
12065 * fold-const.c: Likewise.
12066 * function.c: Likewise.
12067 * function.h: Likewise.
12068 * gcc.c: Likewise.
12069 * gcov-io.h: Likewise.
12070 * gcov.c: Likewise.
12071 * gcse.c: Likewise.
12072 * genattrtab.c: Likewise.
12073 * genconfig.c: Likewise.
12074 * genrecog.c: Likewise.
12075 * ggc-page.c: Likewise.
12076 * ggc.h: Likewise.
12077 * global.c: Likewise.
12078 * gthr-win32.h: Likewise.
12079 * integrate.c: Likewise.
12080 * jump.c: Likewise.
12081 * langhooks.c: Likewise.
12082 * langhooks.h: Likewise.
12083 * line-map.h: Likewise.
12084 * local-alloc.c: Likewise.
12085 * longlong.h: Likewise.
12086 * loop.c: Likewise.
12087 * loop.h: Likewise.
12088
ef49d42e
JH
12089Tue Aug 27 22:26:35 CEST 2002 Jan Hubicka <jh@suse.cz>
12090
12091 * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
12092
12093Tue Aug 27 20:07:01 CEST 2002 Jan Hubicka <jh@suse.cz>
12094
12095 * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128
12096 for -Os/TARGET_64BIT too.
12097
da7d8304
KH
120982002-09-21 Kazu Hirata <kazu@cs.umass.edu>
12099
12100 * ChangeLog: Follow spelling conventions.
12101 * ChangeLog.0: Likewise.
12102 * ChangeLog.1: Likewise.
12103 * ChangeLog.2: Likewise.
12104 * ChangeLog.3: Likewise.
12105 * ChangeLog.4: Likewise.
12106 * ChangeLog.5: Likewise.
12107 * ChangeLog.6: Likewise.
12108 * FSFChangeLog.10: Likewise.
12109 * FSFChangeLog.11: Likewise.
12110 * alias.c: Likewise.
12111 * basic-block.h: Likewise.
12112 * c-aux-info.c: Likewise.
12113 * c-common.c: Likewise.
12114 * c-common.h: Likewise.
12115 * c-decl.c: Likewise.
12116 * c-format.c: Likewise.
12117 * c-semantics.c: Likewise.
12118 * c-typeck.c: Likewise.
12119 * calls.c: Likewise.
12120 * cfganal.c: Likewise.
12121 * cfgloop.c: Likewise.
12122 * collect2.c: Likewise.
12123 * combine.c: Likewise.
12124 * conflict.c: Likewise.
12125 * cppexp.c: Likewise.
12126 * cppfiles.c: Likewise.
12127 * cpphash.h: Likewise.
12128 * cppinit.c: Likewise.
12129 * cpplex.c: Likewise.
12130 * cpplib.c: Likewise.
12131 * cpplib.h: Likewise.
12132 * cppmacro.c: Likewise.
12133 * cse.c: Likewise.
12134
330cc6c7
RE
121352002-09-21 Richard Earnshaw <rearnsha@arm.com>
12136
12137 * netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): New, takes old definition of
12138 LINK_SPEC.
12139 (LINK_SPEC): Define to NETBSD_LINK_SPEC_AOUT.
12140 * arm/netbsd.h (SUBTARGET_EXTRA_SEPCS): Add NETBSD_LINK_SPEC_AOUT.
12141 (LINK_SPEC): Rework to use NETBSD_LINK_SPEC_AOUT).
12142
5b437e0f
RE
121432002-09-21 Richard Earnshaw <rearnsha@arm.com>
12144
9ee4fa29
RE
12145 PR opt/7930
12146 * cse.c (fold_rtx): Calculate old_cost before we fold each
5b437e0f
RE
12147 operand.
12148
2a15d344
RH
121492002-09-21 Richard Henderson <rth@redhat.com>
12150
12151 * c-common.c (cpp_define_data_format): Remove __GCC_LITTLE_ENDIAN__,
12152 __GCC_BIG_ENDIAN__, __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
12153 __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
12154 __TARGET_USES_VAX_F_FLOAT__, __TARGET_USES_VAX_D_FLOAT__,
12155 __TARGET_USES_VAX_G_FLOAT__, __TARGET_USES_VAX_H_FLOAT__.
12156 * doc/cpp.texi: Don't document them.
12157
3fdacdf9
RH
121582002-09-21 Richard Henderson <rth@redhat.com>
12159
12160 * c-common.c (builtin_define_float_constants): Use real_format
12161 to get the floating-point parameters.
12162
3dc85dfb
RH
121632002-09-21 Richard Henderson <rth@redhat.com>
12164
12165 * real.c (struct real_format): Move to real.h.
12166 (real_format_for_mode): Rename from fmt_for_mode; update all users;
12167 initialize with ieee defaults.
12168 (real_to_target_fmt, real_from_target_fmt): New.
12169 (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
12170 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
b4f94ac1 12171 ieee_quad_format, i370_single_format, i370_double_format,
3dc85dfb
RH
12172 c4x_single_format, c4x_extended_format): Rename from s/_format//.
12173 (ieee_quad_format): Fix emin.
12174 (format_for_size, init_real_once): Remove.
12175 * real.h (struct real_format): Move from real.c.
12176 (real_format_for_mode): Declare.
12177 (real_to_target_fmt, real_from_target_fmt): Declare.
12178 (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
12179 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
12180 ieee_quad_format, vax_f_format, vax_d_format, vax_g_format,
12181 i370_single_format, i370_double_format, c4x_single_format,
12182 c4x_extended_format): Declare.
12183 * toplev.c (do_compile): Don't call init_real_once.
12184
12185 * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
12186 * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Remove.
12187
12188 * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Define.
12189 * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): 64, if vax mode.
12190 * config/alpha/alpha.c (override_options): Set real_format_for_mode
12191 for VAX, if enabled.
12192
12193 * config/c4x/c4x.c (c4x_override_options): Set real_format_for_mode
12194 for C4X.
12195
12196 * config/i370/i370.h (OVERRIDE_OPTIONS): New.
12197 * config/i370/i370.c (override_options): New.
12198 * config/i370/i370-protos.h: Update.
12199
12200 * config/i386/i386.c (override_options): Set real_format_for_mode
12201 for Intel 80-bit extended.
12202 * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
12203
12204 * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Mind -mlong-double-64.
12205 (OVERRIDE_OPTIONS): Move code...
12206 * config/i960/i960.c (i960_initialize): ... here. Set
12207 real_format_for_mode for Intel 80-bit extended.
12208
12209 * config/ia64/ia64.c (ia64_override_options): Set real_format_for_mode
12210 for Intel 80-bit extended, if enabled.
12211
12212 * config/m68k/m68k.c (override_options): Set real_format_for_mode
b4f94ac1 12213 for Motorola 96-bit extended.
3dc85dfb
RH
12214
12215 * config/vax/vax.h (OVERRIDE_OPTIONS): New.
12216 * config/vax/vax.c (override_options): New.
12217 * config/vax/vax-protos.h: Update.
12218
42a6388c
AM
122192002-09-21 Alan Modra <amodra@bigpond.net.au>
12220
84d7dd4a
AM
12221 * config/rs6000/rs6000.md (builtin_setjmp_receiver): Add
12222 #if TARGET_MACHO.
12223
42a6388c
AM
12224 * config/rs6000/rs6000.md (floatdisf2_internal2): Combine
12225 insns. Supply missing clobber of scratch reg.
12226
a0ab749a
KH
122272002-09-20 Kazu Hirata <kazu@cs.umass.edu>
12228
12229 * config/m32r/m32r.c: Follow spelling conventions.
12230 * config/m32r/m32r.h: Likewise.
12231 * config/m32r/m32r.md: Likewise.
12232 * config/m68k/m68k.c: Likewise.
12233 * config/m88k/m88k.c: Likewise.
12234 * config/mcore/mcore.c: Likewise.
12235 * config/mips/mips.c: Likewise.
12236 * config/mips/mips.h: Likewise.
12237 * config/mmix/mmix.c: Likewise.
12238 * config/mn10200/mn10200.c: Likewise.
12239 * config/ns32k/ns32k.h: Likewise.
12240 * config/pa/pa.c: Likewise.
12241 * config/pa/pa64-linux.h: Likewise.
12242 * config/pdp11/pdp11.h: Likewise.
12243 * config/romp/romp.c: Likewise.
12244 * config/romp/romp.h: Likewise.
12245 * config/rs6000/eabi.asm: Likewise.
12246 * config/rs6000/linux64.h: Likewise.
12247 * config/rs6000/rs6000.c: Likewise.
12248 * config/rs6000/rs6000.h: Likewise.
12249 * config/rs6000/rs6000.md: Likewise.
12250 * config/rs6000/sysv4.h: Likewise.
12251 * config/rs6000/xcoff.h: Likewise.
12252
2f0da74c
JW
122532002-09-20 Jim Wilson <wilson@redhat.com>
12254
12255 * config/v850/v850/lib1funcs.asm (__muldi3): Change r5 to r28.
12256
dea73790
JJ
122572002-09-20 Jakub Jelinek <jakub@redhat.com>
12258
12259 * config/i386/i386.md (UNSPEC_GOTNTPOFF, UNSPEC_INDNTPOFF): New.
12260 * config/i386/i386.c (legitimate_pic_address_disp_p): Handle
12261 UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF like UNSPEC_GOTTPOFF.
12262 (legitimate_address_p): Likewise.
12263 (legitimize_address): Use @gotntpoff and @indntpoff.
12264 (output_pic_addr_const): Handle UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF.
12265 (output_addr_const_extra): Likewise.
12266
a9b2f059
JW
122672002-09-20 Jim Wilson <wilson@redhat.com>
12268
12269 * combine.c (try_combine): When split an instruction pair, where the
12270 first has a sign_extend src, verify that the src and dest modes match.
12271
1f7422bd
RH
122722002-09-20 Richard Henderson <rth@redhat.com>
12273
12274 * config/mips/mips.c (dfhigh, dflow, sfhigh, sflow): Remove.
12275 (override_options): Do not initialize them.
12276 (mips_const_double_ok): Allow no fp constants except zero,
12277 and not even that for mips16.
12278 (const_float_1_operand): Use dconst1.
12279 * config/mips/mips.md (movsf, movsf_internal1, movsf_internal2,
12280 movdf, movdf_internal1, movdf_internal1a, movdf_internal2):
6d8dd940 12281 Don't allow arbitrary constants; fix predicates and C constraint.
1f7422bd 12282
56941bf2
NB
122832002-09-20 Neil Booth <neil@daikokuya.co.uk>
12284
12285 * cppmacro.c: Don't warn about function-like macros without
27eba309 12286 '(' during pre-expansion.
56941bf2 12287
66a0dfeb
JW
122882002-09-20 Jim Wilson <wilson@redhat.com>
12289
12290 * config/v850/v850.c (current_function_anonymous_args): Delete.
12291 (expand_prologue): Use current_function_args_info.anonymous_args.
12292 (expand_epilogue): Delete use of current_function_anonymous_args.
12293 * config/v850/v850.h (struct cum_arg): Add anonymous_args field.
12294 (INIT_CUMULATIVE_ARGS): Clear anonymous_args field.
12295 (current_function_anonymous_args): Delete extern declaration.
12296 (SETUP_INCOMING_VARARGS): Set anonymous_args field.
12297
97b23853
GK
122982002-09-20 Geoffrey Keating <geoffk@apple.com>
12299
f51eee6a
GK
12300 * config/rs6000/rs6000.c (rs6000_emit_prologue): Update for change
12301 to load_macho_picbase.
12302 * config/rs6000/rs6000.md: Document Darwin-specific unspec IDs.
12303 (load_macho_picbase): Take the symbol to use as a parameter.
12304 (macho_correct_pic): New insn.
12305 (builtin_setjmp_reciever): On Darwin, restore the PIC register.
12306
97b23853
GK
12307 * config/rs6000/rs6000.h (ELIMINABLE_REGS): Use
12308 RS6000_PIC_OFFSET_TABLE_REGNUM rather than hardcoding 30.
12309 (CAN_ELIMINATE): Likewise.
12310 (INITIAL_ELIMINATION_OFFSET): Likewise.
12311 (TOC_REGISTER): Likewise.
12312
46b33600
RH
123132002-09-20 Richard Henderson <rth@redhat.com>
12314
12315 * real.c (real_hash): New.
12316 * real.h: Declare it.
12317 * cse.c (canon_hash): Use it.
12318 * cselib.c (hash_rtx): Likewise.
12319 * emit-rtl.c (const_double_htab_hash): Likewise.
12320 * rtl.h (CONST_DOUBLE_REAL_VALUE): New.
12321 * varasm.c (struct rtx_const): Reduce vector size; separate
12322 integer and fp vectors.
12323 (HASHBITS): Remove.
12324 (const_hash_1): Rename from const_hash. Use real_hash. Do not
12325 take modulus MAX_HASH_TABLE.
12326 (const_hash): New. Do take modulus MAX_HASH_TABLE.
12327 (output_constant_def): Do not take modulus MAX_HASH_TABLE.
12328 (SYMHASH): Don't use HASHBITS.
12329 (decode_rtx_const): Copy only active bits from REAL_VALUE_TYPE.
12330 Fix CONST_VECTOR thinko wrt fp vectors. Fix kind comparison.
12331 (simplify_subtraction): Fix kind comparison.
12332 (const_hash_rtx): Return unsigned int. Don't use HASHBITS.
12333 Use a union to pun integer array.
12334 * config/rs6000/rs6000.c (rs6000_hash_constant): Use real_hash;
12335 only hash two words of integral CONST_DOUBLE.
12336
40ad65d0
SE
123372002-09-20 Steve Ellcey <sje@cup.hp.com>
12338
12339 * config/ia64/hpux.h (STARTFILE_SPEC): Modify.
12340 (STARTFILE_PREFIX_SPEC): New.
12341 (LINK_SPEC): Modify.
12342 (LIB_SPEC): Modify.
12343 (LIBGCC_SPEC): New.
12344
600f3392
JJ
123452002-09-20 Jakub Jelinek <jakub@redhat.com>
12346
12347 * config/i386/i386.c (legitimate_pic_address_disp_p): Allow
12348 UNSPEC_NTPOFF and UNSPEC_DTPOFF to be offsetted by constant.
12349
c1ff6200
JD
123502002-09-20 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
12351
12352 * config/arm/arm.md (sign_extract_onebit, not_signextract_onebit):
12353 Add clobber of the condition code register.
12354
60b78700
RH
123552002-09-20 Richard Henderson <rth@redhat.com>
12356
12357 * real.c (do_fix_trunc): Static.
12358 (encode_ieee_single, encode_ieee_double, encode_ieee_extended,
12359 encode_ieee_quad, encode_vax_f, encode_vax_d, encode_vax_g,
12360 encode_i370_single, encode_i370_double, encode_c4x_single,
12361 encode_c4x_extended): Add default abort case.
12362
0ee6fdb5
RH
123632002-09-20 Richard Henderson <rth@redhat.com>
12364
12365 * real.h (enum real_value_class, SIGNIFICAND_BITS, EXP_BITS,
12366 MAX_EXP, SIGSZ, SIG_MSB, struct real_value): Move from real.c.
12367 (struct realvaluetype): Remove.
12368 (REAL_VALUE_TYPE): Use struct real_value.
12369 (REAL_VALUE_TYPE_SIZE): Use SIGNIFICAND_BITS.
12370 (test_real_width): New.
12371 * real.c: Global replace struct real_value with REAL_VALUE_TYPE.
12372 (real_arithmetic): Avoid hoops for REAL_VALUE_TYPE parameters.
12373 (real_compare, real_exponent, real_ldexp, real_isinf, real_isnan,
12374 real_isneg, real_isnegzero, real_identical, exact_real_inverse,
12375 real_to_integer, real_to_integer2, real_to_decimal,
12376 real_to_hexadecimal, real_from_string, real_from_integer,
12377 real_inf, real_nan, real_2expN, real_convert, real_to_target,
12378 real_from_target): Likewise.
12379 * tree.h (struct tree_real_cst): Use real_value not realvaluetype.
12380 * gengtype-yacc.y (bitfieldopt): Accept an ID as well.
12381
66d93b5a
RH
123822002-09-20 Richard Henderson <rth@redhat.com>
12383
12384 * real.h (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT,
12385 IBM_FLOAT_FORMAT, C4X_FLOAT_FORMAT, TARGET_FLOAT_FORMAT): Move ...
12386 * defaults.h: ... here.
12387 * config/arm/arm.h, config/avr/avr.h, config/d30v/d30v.h,
12388 config/fr30/fr30.h, config/frv/frv.h, config/ia64/ia64.h,
12389 config/ip2k/ip2k.h, config/mips/mips.h, config/stormy16/stormy16.h,
12390 config/xtensa/xtensa.h (TARGET_FLOAT_FORMAT): Remove.
12391
6ee3db61
HPN
123922002-09-20 Hans-Peter Nilsson <hp@bitrange.com>
12393
12394 * config/mmix/mmix.md ("negdf2"): Rewrite.
12395 ("*expanded_negdf2"): New.
12396
ff076520
JW
123972002-09-19 Jim Wilson <wilson@redhat.com>
12398
12399 * combine.c (simplify_set): When optimizing a subreg src with a
12400 cc0 dest, use GET_MODE (src) for mask instead of inner_mode.
12401
307f767b
DJ
124022002-09-19 Dale Johannesen <dalej@apple.com>
12403 * combine.c (make_extraction): Don't create
12404 invalid subreg.
12405
4977bab6
ZW
124062002-09-19 Roger Sayle <roger@eyesopen.com>
12407
12408 * tree.c (integer_nonzerop): New predicate for nonzero integers.
12409 * tree.h (integer_nonzerop): Add function prototype.
12410 * stmt.c (expand_end_loop): Don't rotate the loop when there
12411 are no instructions in the test, i.e. the loop is unconditional.
12412 (expand_exit_loop_if_false): Optimize RTL generation of loop
12413 tests when the condition is always true or always false.
12414 * c-semantics.c (genrtl_do_stmt): Optimize RTL generation of
12415 do-loops when the condition is always true.
12416 (genrtl_for_stmt): Optimize RTL generation of for-loops when
12417 the for-expression is empty.
12418
124192002-09-19 Zack Weinberg <zack@codesourcery.com>
12420
12421 * gcc.c (use_pipes): New flag.
12422 (process_command): Set it. Adjust check for -pipe conflicting
12423 with -time or -save-temps.
12424 (do_spec_1): Use it. Handle %|SUFFIX, %mSUFFIX, and
12425 %<SWITCH. Drop %| (without a SUFFIX).
12426 (handle_braces): Drop %{<SWITCH}, %{^SWITCH}, %{|...}.
12427 (give_switch): Third argument eliminated.
12428 (invoke_as, @assembler_with_cpp spec): Use %|.s or %m.s
12429 depending on AS_NEEDS_DASH_FOR_PIPED_INPUT.
12430 (specs documentation comment): Update.
12431
12432 * config/netbsd-aout.h, config/openbsd.h, config/ptx4.h,
12433 config/svr4.h, config/i386/freebsd-aout.h,
12434 config/m68k/netbsd-elf.h, config/m68k/netbsd.h,
12435 config/m68k/openbsd.h, config/mips/openbsd.h,
12436 config/sparc/sparc.h: Define AS_NEEDS_DASH_FOR_PIPED_INPUT
12437 instead of putting %| into ASM_SPEC and/or ASM_FINAL_SPEC.
12438 * config/avr/avr.h: Delete do-nothing ASM_FINAL_SPEC.
12439 * config/cris/cris.h: Update comment.
12440
12441 * ada/lang-specs.h: Use %(invoke_as). Straighten out
12442 error messages. Don't use %{^SWITCH}.
12443 * ada/misc.c (gnat_decode_option): Handle -I with a
12444 separate argument.
12445
12446 * f/lang-specs.h: Use %| and %m.
12447 * java/jvspec.c: Use %m and %(invoke_as). Change all
12448 uses of %{<SWITCH} to %<SWITCH.
12449
12450 * doc/invoke.texi: Update documentation of specs.
12451 * doc/tm.texi: Document AS_NEEDS_DASH_FOR_PIPED_INPUT.
12452
cc7ab9b7
UW
124532002-09-19 Ulrich Weigand <uweigand@de.ibm.com>
12454
b4f94ac1 12455 * config/s390/s390.c (addr_generation_dependency_p): Handle SUBREG
cc7ab9b7
UW
12456 and STRICT_LOW_PART within SET_DEST.
12457 * config/s390/s390.md ("*extractqi", "*extracthi"): New insns with
12458 splitters, replacing pre-reload splitters.
b4f94ac1 12459 ("*zero_extendhisi2_31", "*zero_extendqisi2_31",
cc7ab9b7
UW
12460 "*zero_extendqihi2_31"): New insns.
12461 ("*zero_extendqihi2_64"): Do not clobber CC.
12462
4977bab6
ZW
124632002-09-18 Devang Patel <dpatel@apple.com>
12464
12465 * cp/cp-tree.h: New prototype for walk_vtables().
12466 * cp/decl.c (walk_vtables_r): New function.
12467 (struct cp_binding_level): Add new members, namespaces,
12468 names_size and vtables.
12469 (add_decl_to_level): Add decl in namespaces or vtables
12470 chain, if conditions match.
12471 (walk_vtables): New function.
12472 (walk_namespaces_r): Travers separate namespace chain
12473 for namespace decls.
12474 (wrapup_globals_for_namespace): Use names_size instead
12475 of list_length().
12476 * cp/decl2.c (finish_file): Use walk_vtables() instead of
12477 walk_globals() to walk vtable decls.
12478
b64ddb88
SE
124792002-09-19 Steve Ellcey <sje@cup.hp.com>
12480
12481 * config/ia64/hpux.h (CTORS_SECTION_ASM_OP): New.
12482 (DTORS_SECTION_ASM_OP): Ditto.
12483 (READONLY_DATA_SECTION_ASM_OP): Moved.
12484 (DATA_SECTION_ASM_OP): New.
12485 (SDATA_SECTION_ASM_OP): New.
12486 (BSS_SECTION_ASM_OP): New.
12487 (SBSS_SECTION_ASM_OP): New.
12488 (TEXT_SECTION_ASM_OP): New.
12489
9cd10576
KH
124902002-09-19 Kazu Hirata <kazu@cs.umass.edu>
12491
12492 * config/fp-bit.c: Follow spelling conventions.
12493 * config/d30v/d30v.c: Likewise.
12494 * config/d30v/d30v.h: Likewise.
12495 * config/fr30/fr30.c: Likewise.
12496 * config/fr30/fr30.h: Likewise.
12497 * config/fr30/fr30.md: Likewise.
12498 * config/frv/frv.c: Likewise.
12499 * config/frv/frv.h: Likewise.
12500 * config/h8300/h8300.c: Likewise.
12501 * config/h8300/lib1funcs.asm: Likewise.
12502 * config/i370/i370.c: Likewise.
12503 * config/i386/i386.h: Likewise.
12504 * config/i386/i386.md: Likewise.
12505 * config/i386/pentium.md: Likewise.
12506 * config/i386/winnt.c: Likewise.
12507 * config/i960/i960.c: Likewise.
12508 * config/ia64/ia64.h: Likewise.
12509 * config/ip2k/ip2k.c: Likewise.
12510 * config/ip2k/ip2k.h: Likewise.
12511 * config/ip2k/ip2k.md: Likewise.
12512 * config/ip2k/libgcc.S: Likewise.
12513
fff08fd8
SC
125142002-09-19 Stephen Clarke <stephen.clarke@superh.com>
12515
12516 * config/sh/sh.h (UNSPEC_GOTOFF_P): Define.
12517 (GOTOFF_P): Extend to allow gotoff plus constant.
12518
bf3d27e6
RH
125192002-09-18 Richard Henderson <rth@redhat.com>
12520
12521 * ifcvt.c (noce_process_if_block): Correctly detect X modified
b4f94ac1 12522 with INSN_B before COND_EARLIEST. Don't check A and B for
bf3d27e6
RH
12523 modification in condition range. Reorder INSN_B for A==B properly.
12524 (if_convert): Iterate until no matches for a block.
12525
1b1f20ca
RH
125262002-09-18 Richard Henderson <rth@redhat.com>
12527
12528 * calls.c (store_one_arg): Rename default_align to parm_align;
12529 always adjust parm_align for downward padding.
12530
724838b9
RH
125312002-09-18 Richard Henderson <rth@redhat.com>
12532
12533 * toplev.c (backend_init): Move init_real_once invocation ...
12534 (do_compile): ... here.
12535
2c67b7c6
RH
125362002-09-18 Richard Henderson <rth@redhat.com>
12537
12538 * sibcall.c (optimize_sibling_and_tail_recursive_call): Also remove
12539 RTX_UNCHANGING_P markers for successful tail-recursive replacement.
12540
15769ca3
RH
125412002-09-18 Richard Henderson <rth@redhat.com>
12542
12543 * real.c (round_for_format): Collect sticky as unsigned long, not bool.
12544
678b7733
AM
125452002-09-19 Alan Modra <amodra@bigpond.net.au>
12546
12547 * config/rs6000/rs6000.md: (floatdisf2): Rename to
12548 floatdisf2_internal1.
12549 (floatdisf2): New define_expand.
12550 (floatdisf2_internal2): Likewise.
12551
c402b6bf
RH
125522002-09-18 Richard Henderson <rth@redhat.com>
12553
b4f94ac1 12554 * real.c (sticky_rshift_significand): Collect sticky as
c402b6bf
RH
12555 unsigned long, not bool.
12556
dea09b1b
UW
125572002-09-18 Ulrich Weigand <uweigand@de.ibm.com>
12558
12559 * config/s390/s390.c (s390_address_cost): New function.
12560 config/s390/s390-protos.h (s390_address_cost): Add prototype.
12561 config/s390/s390.h (ADDRESS_COST): Call s390_address_cost.
12562 (RTX_COST): Use COSTS_N_INSNS.
12563
e4850f36
DR
125642002-09-18 Douglas Rupp <rupp@gnat.com>
12565 Donn Terry <donnte@microsoft.com>
12566
12567 * stor-layout.c (place_field): Handle alignment of whole
12568 structures when MSVC compatible bitfields are involved.
12569 Change method of computing location of MS bitfields to
12570 be compatible with #pragma pack(n).
12571
12572 * tree.h (record_layout_info): Add new field
12573 remaining_in_alignment.
12574
12575 * doc/tm.texi: (TARGET_MS_BITFIELD_LAYOUT_P): Update.
4977bab6 12576 (pragma pack): Add paragraph on MSVC bitfield packing.
e4850f36 12577
872e50d3
RE
125782002-09-18 Richard Earnshaw (reanrsha@arm.com)
12579
12580 PR optimization/7967
12581 * arm.md (ne_zeroextractsi): Add clobber of the condition code
12582 register.
12583
5e7a8ee0
KH
125842002-09-18 Kazu Hirata <kazu@cs.umass.edu>
12585
9cd10576 12586 * config/s390/s390.c: Follow spelling conventions.
5e7a8ee0
KH
12587 * config/sh/lib1funcs.asm: Likewise.
12588 * config/sh/sh.c: Likewise.
12589 * config/sh/sh.h: Likewise.
12590 * config/sparc/sparc.c: Likewise.
12591 * config/sparc/sparc.h: Likewise.
12592 * config/sparc/sparc.md: Likewise.
12593 * config/stormy16/stormy16.c: Likewise.
12594 * config/stormy16/stormy16.h: Likewise.
12595 * config/v850/v850.c: Likewise.
12596 * config/v850/v850.h: Likewise.
12597 * config/vax/vax.c: Likewise.
12598 * config/vax/vax.h: Likewise.
12599
00a892b8
NC
126002002-09-18 Nick Clifton <nickc@redhat.com>
12601
12602 * config/rs60000/rs6000.c (rs6000_emit_move): Handle V1DImode moves.
12603 * config/rs60000/rs6000.c (SPE_VECTOR_MODE): Include V1DImode.
12604 * config/rs6000/spe.md (movv1di, movv1di_internal): New patterns.
12605
4977bab6
ZW
126062002-09-17 Kazu Hirata <kazu@cs.umass.edu>
12607
12608 * function.c (max_parm_reg_num): Remove.
12609 * stmt.c (in_control_zone_p, stmt_loop_nest_empty,
12610 drop_through_at_end_p, move_cleanups_up,
12611 expand_end_case_dummy, case_index_expr_type): Likewise.
12612 * stor-layout.c (pos_from_byte): Likewise.
12613 * tree.c (chain_member_value, chain_member_purpose, listify,
12614 tree_int_cst_msb, index_type_equal): Likewise.
12615 * tree.h: Remove prototypes for unused functions.
12616
bfb53001
ZW
126172002-09-17 Zack Weinberg <zack@codesourcery.com>
12618
12619 * ABOUT-GCC-NLS: Remove reference to enquire, and out-of-date
12620 statement that the only translation is to en_UK.
12621
825dda42
KH
126222002-09-17 Kazu Hirata <kazu@cs.umass.edu>
12623
12624 * config/alpha/alpha.c: Follow spelling conventions.
12625 * config/alpha/alpha.h: Likewise.
12626 * config/alpha/alpha.md: Likewise.
12627 * config/arc/arc.h: Likewise.
12628 * config/arm/arm.c: Likewise.
12629 * config/arm/arm.h: Likewise.
12630 * config/arm/arm.md: Likewise.
12631 * config/arm/pe.c: Likewise.
12632 * config/arm/unknown-elf.h: Likewise.
12633 * config/avr/avr.c: Likewise.
12634 * config/avr/avr.h: Likewise.
12635 * config/c4x/c4x.c: Likewise.
12636 * config/cris/cris.c: Likewise.
12637 * config/cris/cris.h: Likewise.
12638
8e16ab99 126392002-09-17 Samuel Figueroa <figueroa@apple.com>
825dda42 12640
8e16ab99
SF
12641 * final.c (final_scan_insn): Use new macro ASM_OUTPUT_ALIGN_WITH_NOP.
12642 * config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP) New macro.
12643 * doc/tm.texi (ASM_OUTPUT_ALIGN_WITH_NOP) New description.
12644
ac19be7e 126452002-09-17 Dale Johannesen <dalej@apple.com>
825dda42 12646
ac19be7e
DJ
12647 * cfgcleanup.c (try_forward_edges): Do not forward a
12648 branch to just after a loop exit before loop optimization;
12649 this interfered with doloop detection.
12650
f1acdf8b
NC
126512002-09-17 Nick Clifton <nickc@redhat.com>
12652
12653 * config/arm/arm.c (output_return_instruction): Do not
12654 writeback the stack pointer when it is being loaded.
12655 (arm_output_epilogue): Likewise.
12656
24491a09
KH
126572002-09-17 Kazu Hirata <kazu@cs.umass.edu>
12658
12659 * optabs.c (prepare_cmp_insn): Let emit_library_call_value
12660 generate a pseudo reg that receives the result of a libcall.
12661 (prepare_float_lib_cmp): Likewise.
12662
e6c247e0
SE
126632002-09-17 Steve Ellcey <sje@cup.hp.com>
12664
b4f94ac1 12665 * config/ia64/elf.h: Remove CPP_PREDEFINES.
e6c247e0 12666
1074d9d4
NP
12667Tue Sep 17 13:58:04 2002 Nicola Pero <n.pero@mi.flashnet.it>
12668
12669 Fix PR/7014 and related objc bugs:
12670 * c-typeck.c (comp_target_types): Added a reflexive argument.
12671 Pass it to ObjC when/if calling objc_comptypes(). Updated all
12672 callers to provide the appropriate reflexive argument.
12673 * objc/objc-act.c (objc_comptypes): Carefully checked and fixed
12674 typechecking for all cases of comparisons and assignments,
12675 particularly the obscure and less common ones involving protocols.
12676
256e9fd2
NC
126772002-09-17 Nick Clifton <nickc@redhat.com>
12678
12679 * machmode.def (V1DImode): New mode. A single element vector.
12680 * tree.h (TI_UV1DI_TYPE, TI_V1DI_TYPE): New tree_index enums.
12681 (unsigned_V1DI_type_node, V1D1_type_node): New type nodes.
12682 * tree.c (build_common_tree_nodes_2): Build
12683 unsigned_V1DI_type_node and V1D1_type_node.
12684 * c-common.c (c_common_type_for_mode): Return
12685 unsigned_V1DI_type_node or V1D1_type_node for V1DImode.
12686 * rtl.c (class_narrowest_): Start integer vector nodes with V1DImode.
12687
838c4534
NP
12688Tue Sep 17 13:40:13 2002 Nicola Pero <n.pero@mi.flashnet.it>
12689
12690 * doc/objc.texi (Constant string objects): Extended documentation
12691 to make clear that the constant string class ivar layout is
12692 completely fixed.
b4f94ac1 12693
07532fad
RS
126942002-09-17 Roger Sayle <roger@eyesopen.com>
12695
12696 * cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned
12697 NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
12698
4977bab6
ZW
126992002-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
12700
12701 * config/mips/mips.c (save_restore_insns): Remove unused variable.
12702 * gcc.c (make_relative_prefix): Likewise.
12703 * loop.c (check_final_value): Likewise.
12704 * jump.c (init_label_info): Remove return value.
12705 * cse.c (prev_insn): Move variable between #ifdef HAVE_cc0 ... #endif.
12706
127072002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12708
12709 * dsp16xx.h (ASM_FORMAT_PRIVATE_NAME): Delete.
12710 (ASM_PN_FORMAT): Define.
12711
127122002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12713
12714 * alpha.h, alpha/vms.h, arc.h, arm/aof.h, arm/aout.h, avr.h,
12715 c4x.h, cris.h, d30v.h, fr30.h, frv.h, h8300.h, i370.h, i386.h,
12716 i960.h, ia64.h, ip2k.h, m32r.h, m68hc11.h, m68k/3b1.h,
12717 m68k/hp320.h, m68k.h, m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h,
12718 m88k.h, mcore.h, mips.h, mmix.h, mn10200.h, mn10300.h, ns32k.h,
12719 pa.h, pdp11.h, romp.h, rs6000.h, s390/linux.h, sh.h, sparc.h,
12720 stormy16.h, v850.h, vax.h, xtensa.h (ASM_FORMAT_PRIVATE_NAME):
12721 Delete.
12722 * alpha/vms.h, h8300.h, i370.h, ia64.h, m68k/3b1.h, m68k/hp320.h,
12723 m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h, mmix.h, mn10200.h,
12724 mn10300.h, pa.h, v850.h (ASM_PN_FORMAT): Define.
12725
12726 * defaults.h (ASM_PN_FORMAT, ASM_FORMAT_PRIVATE_NAME): Define.
12727 * doc/tm.texi (ASM_FORMAT_PRIVATE_NAME): Update documentation.
12728
cb38fd88
RH
127292002-09-16 Richard Henderson <rth@redhat.com>
12730
12731 * expr.c (emit_block_move): Set memory block size as appropriate
12732 for the copy.
12733
bd055118
RH
127342002-09-16 Richard Henderson <rth@redhat.com>
12735
12736 PR fortran/3924
b4f94ac1 12737 * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol.
bd055118 12738
8c317c5f
RH
127392002-09-16 Richard Henderson <rth@redhat.com>
12740
12741 * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE
12742 as well as OFFSET for BITPOS.
12743
3780101d
JG
127442002-09-16 Jeff Garzik <jgarzik@mandrakesoft.com>
12745
b4f94ac1
ZW
12746 * config.gcc: Treat winchip_c6-*|winchip2-*|c3-* as pentium-mmx.
12747 * config/i386/i386.c (processor_alias_table): Add winchip-c6,
3780101d 12748 winchip2 and c3.
b4f94ac1 12749 * doc/invoke.texi: Mention new aliases.
3780101d 12750
9dff28ab
JDA
127512002-09-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
12752
12753 * calls.c (store_one_arg): Set default alignment for BLKmode arguments
12754 to BITS_PER_UNIT when ARGS_GROW_DOWNWARD and the padding direction is
12755 downward.
12756 * function.c (pad_below): Always compile.
12757 (locate_and_pad_parm): If defined ARGS_GROW_DOWNWARD, pad argument to
12758 alignment when it is not in a register or REG_PARM_STACK_SPACE is true.
12759 Pad below when the argument is not in a register and the padding
12760 direction is downward.
12761
12762 * pa-64.h (MUST_PASS_IN_STACK): Move define to pa.h.
12763 (PAD_VARARGS_DOWN): Define.
12764 * pa.c (function_arg_padding): Revise padding directions to make them
12765 compatible with the 32 and 64-bit runtime architecture documentation.
12766 (hppa_va_arg): Add code to handle variable and size zero arguments
12767 passed by reference on TARGET_64BIT. Reformat.
12768 (function_arg): Use a PARALLEL for BLKmode and aggregates args on
12769 TARGET_64BIT. Use a DImode PARALLEL for BLKmode args 5 to 8 bytes
12770 wide when !TARGET_64BIT. Move forward check for mode==VOIDmode.
12771 Add comments.
12772 * pa.h (MAX_PARM_BOUNDARY): Correct define for TARGET_64BIT.
12773 (RETURN_IN_MEMORY): Return size zero types in memory.
12774 (FUNCTION_VALUE): Return TFmode in general registers.
12775 (MUST_PASS_IN_STACK): Define.
12776 (FUNCTION_ARG_BOUNDARY): Simplify.
12777 (FUNCTION_ARG_PASS_BY_REFERENCE): Pass variable and zero sized types
12778 by reference.
12779 (FUNCTION_ARG_CALLEE_COPIES): Define to FUNCTION_ARG_PASS_BY_REFERENCE.
12780
94313f35
RH
127812002-09-16 Richard Henderson <rth@redhat.com>
12782
12783 * real.c (do_fix_trunc): New.
12784 (real_arithmetic): Call it.
12785 * simplify-rtx.c (simplify_unary_operation): Handle FIX
12786 with a floating-point result mode.
12787
1472e41c
RH
127882002-09-16 Richard Henderson <rth@redhat.com>
12789
12790 * builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
12791 (BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New.
12792 * builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New.
12793 (__builtin_nans, __builtin_nansf, __builtin_nansl): New.
12794 * builtins.c (fold_builtin_nan): New.
12795 (fold_builtin): Call it.
12796 * real.c (real_nan): Parse a non-empty string.
12797 (round_for_format): Fix NaN significand truncation.
12798 * real.h (real_nan): Return bool.
12799 * doc/extend.texi: Document new builtins.
12800
f354b828
JM
128012002-09-16 Jason Merrill <jason@redhat.com>
12802 Danny Smith <dannysmith@users.sourceforge.net>
12803
12804 * config/i386/winnt.c (ix86_handle_dll_attribute): Set
12805 DECL_EXTERN and TREE_PUBLIC for dllimported variables here...
12806 (i386_pe_mark_dllimport): Not here.
12807
85341ddd
NS
128082002-09-16 Nathan Sidwell <nathan@codesourcery.com>
12809
12810 * c-semantics.c (genrtl_do_stmt): Cope with NULL cond.
12811
045572c7
GK
128122002-09-16 Geoffrey Keating <geoffk@redhat.com>
12813
12814 * config/rs6000/rs6000.c (build_mask64_2_operands): Suppress
12815 warnings about unused operands when HOST_BITS_PER_WIDE_INT is
12816 < 64.
12817 (rs6000_emit_cmove): Use real_isinf not target_isinf.
12818
d57551c7
KH
128192002-09-16 Kazu Hirata <kazu@cs.umass.edu>
12820
12821 * calls.c (emit_library_call_value_1): Don't refer to
12822 hard_libcall_value.
12823 * optabs.c (prepare_float_lib_cmp): Likewise.
12824
36a5eadd
GK
128252002-09-16 Geoffrey Keating <geoffk@apple.com>
12826
12827 * ggc-common.c (ggc_mark_rtx_children_1): Update for changed name
12828 mangling.
12829
12830 The following changes are merged from pch-branch:
12831
12832 * doc/gty.texi (GTY Options): Document %a.
12833 * gengtype.c (do_scalar_typedef): New function.
12834 (process_gc_options): Handle `length' option.
12835 (set_gc_used_type): A pointer to an array of structures doesn't
12836 qualify as a pointer to a structure.
12837 (output_escaped_param): Add `%a' escape.
12838 (write_gc_structure_fields): Allow 'desc' on array of unions.
12839 (main): Define `uint8', `jword' and `JCF_u2' as scalars; use
12840 do_scalar_typedef.
12841
12842 * gengtype.c (enum rtx_code): Make global.
12843 (rtx_format): Make global.
12844 (rtx_next): New.
12845 (gen_rtx_next): New.
12846 (write_rtx_next): New.
12847 (adjust_field_rtx_def): Skip fields marked by chain_next.
12848 (open_base_files): Delete redundant prototype.
12849 (write_enum_defn): New.
12850 (output_mangled_typename): Correct abort call.
12851 (write_gc_marker_routine_for_structure): Handle chain_next and
12852 chain_prev options.
12853 (finish_root_table): Don't output redundant \n.
12854 (main): Call gen_rtx_next, write_rtx_next, write_enum_defn.
12855 * c-tree.h (union lang_tree_node): Add chain_next option.
12856
12857 * gengtype.h (NUM_PARAM): New definition.
12858 (struct type): For TYPE_PARAM_STRUCT, allow multiple parameters.
12859 * gengtype.c (find_param_structure): New.
12860 (adjust_field_type): Handle param<n>_is option.
12861 (process_gc_options): Detect use_params option. Update callers.
12862 (set_gc_used_type): Add 'param' parameter, update callers. Handle
12863 'use_params' option.
12864 (open_base_files): Add splay-tree.h to list of files included.
12865 (output_mangled_typename): New.
12866 (write_gc_structure_fields): Update 'param' parameter to support
12867 multiple parameters. Change name mangling. Allow parameterized
12868 fields to have an apparent scalar type. Handle param<n>_is options,
12869 use_param option.
12870 (write_gc_marker_routine_for_structure): Update for change to name
12871 mangling. Better guess the output file for parameterized types.
12872 (write_gc_types): Update for change to name mangling.
12873 (write_gc_root): Update for change to name mangling. Handle (ignore)
12874 param<n>_is options.
12875 * doc/gty.texi (GTY Options): Add description of param<n>_is
12876 options, use_params option.
12877 * ggc.h (ggc_mark_rtx): Update for changed name mangling.
12878 * gengtype-lex.l: Produce token for param<n>_is.
12879 * gengtype-yacc.y: Parse param<n>_is.
12880
12881 * gengtype.c (adjust_field_tree_exp): Don't name a variable 'rindex'.
12882
12883 * rtl.c: Update comment describing rtx_format.
12884 * rtl.h (union rtunion): Separate definition and typedef.
12885 (struct rtx_def): Use gengtype to mark.
12886 * Makefile.in (gengtype.o): Also depend on rtl.def.
12887 * ggc.h (ggc_mark_rtx_children): Delete prototype.
12888 (ggc_mark_rtx): Change to alias of gengtype-generated routine.
12889 * ggc-common.c (ggc_mark_rtx_children): Delete.
12890 (ggc_mark_rtx_children_1): Delete.
12891 (gt_ggc_m_rtx_def): Delete.
12892 * gengtype.c (adjust_field_rtx_def): New.
12893 (adjust_field_type): Call adjust_field_rtx_def.
12894 (write_gc_structure_fields): Add 'default' case to switch if none
12895 is specified; remove unused code.
12896
12897 * tree.h (struct tree_exp): Update for change to meaning
12898 of special.
12899 * gengtype.c (adjust_field_tree_exp): New function.
12900 (adjust_field_type): Handle `tree_exp' special here.
12901 (write_gc_structure_fields): Don't handle `tree_exp' special here.
12902 Handle new `dot' option.
12903
12904 * gengtype.h: Make `info' a pointer-to-const.
12905 * gengtype-yacc.y (yacc_ids): Use xasprintf.
12906
12907 * gengtype.c (write_gc_structure_fields): Remove implementation
12908 of `always' option, add `default' option.
12909 * doc/gty.texi (GTY Options): Remove documentation of `always',
12910 add `default'.
12911
a7f6d760
HPN
129122002-09-16 Hans-Peter Nilsson <hp@bitrange.com>
12913
12914 * output.h: Remove #ifdef RTX_CODE and #ifdef TREE_CODE.
12915
245ff137
KG
129162002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12917
7c3414b6
KG
12918 * m68hc11.md (addhi_sp): Fix uninitialized variable bug.
12919
245ff137
KG
12920 * c4x-c.c, c4x.c, darwin.c, i370-c.c, m32r.c: Include tm_p.h
12921 instead of the *-protos.h file directly.
12922 * t-c4x, t-i370, t-v850: Depend on $(TM_P_H).
12923 * darwin.c (machopic_output_stub): Move prototype ...
12924 * darwin-protos.h (machopic_output_stub): ... here.
12925 * rs6000-protos.h (machopic_output_stub): Don't declare.
12926
ac520ec9
RH
129272002-09-16 Richard Henderson <rth@redhat.com>
12928
12929 * c-common.c (builtin_define_float_constants): Emit __FOO_DENORM_MIN__.
12930
efdc7e19
RH
129312002-09-16 Richard Henderson <rth@redhat.com>
12932
12933 * real.c, real.h: Rewrite from scratch.
12934
12935 * Makefile.in (simplify-rtx.o): Depend on TREE_H.
12936 (paranoia): New target.
12937 * builtins.c (fold_builtin_inf): Use new real.h interface.
12938 * c-common.c (builtin_define_with_hex_fp_value): Likewise.
12939 * c-lex.c (interpret_float): Likewise.
12940 * emit-rtl.c (gen_lowpart_common): Likewise.
12941 * optabs.c (expand_float): Use real_2expN.
12942 * config/ia64/ia64.md (divsi3, udivsi3): Likewise.
12943 * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): New.
12944 (FLOAT_WORDS_BIG_ENDIAN): New.
12945 * cse.c (find_comparison_args): Don't pass FLOAT_STORE_FLAG_VALUE
12946 directly to REAL_VALUE_NEGATIVE.
12947 * loop.c (canonicalize_condition): Likewise.
12948 * simplify-rtx.c: Include tree.h.
12949 (simplify_unary_operation): Don't handle FIX and UNSIGNED_FIX
12950 with floating-point result modes.
12951 * toplev.c (backend_init): Call init_real_once.
12952
12953 * fold-const.c (force_fit_type): Don't call CHECK_FLOAT_VALUE.
12954 * tree.c (build_real): Likewise.
12955 * config/alpha/alpha.c, config/vax/vax.c (float_strings,
12956 float_values, inited_float_values, check_float_value): Remove.
12957 * config/alpha/alpha.h, config/m68hc11/m68hc11.h,
12958 config/m88k/m88k.h, config/vax/vax.h (CHECK_FLOAT_VALUE): Remove.
12959 * doc/tm.texi (CHECK_FLOAT_VALUE): Remove.
12960 (VAX_HALFWORD_ORDER): Remove.
12961
a41c6c53
UW
129622002-09-16 Ulrich Weigand <uweigand@de.ibm.com>
12963
12964 * config/s390/s390.c: (legitimize_la_operand): Remove, replace by ...
12965 (s390_load_address): ... this new function.
12966 (s390_decompose_address): Allow the argument pointer and all
12967 virtual registers as 'pointer' registers.
12968 (s390_expand_plus_operand): Use s390_load_address.
12969 config/s390/s390.md (movti, movdi, movdf splitters): Likewise.
12970 ("force_la_31"): New insn pattern.
12971 config/s390/s390-protos.h (legitimize_la_operand): Remove.
12972 (s390_load_address): Add prototype.
12973
12974 * config/s390/s390.c: Include "optabs.h".
12975 (s390_expand_movstr, s390_expand_clrstr, s390_expand_cmpstr): New.
b4f94ac1 12976 config/s390/s390-protos.h (s390_expand_movstr, s390_expand_clrstr,
a41c6c53
UW
12977 s390_expand_cmpstr): Add prototypes.
12978 config/s390/s390.md ("movstrdi", "movstrsi"): Call s390_expand_movstr.
12979 ("movstrdi_short"): Rename to "movstr_short_64". Change predicates
12980 for operands 0 and 1 to "memory_operand". Add type attribute.
12981 ("movstrsi_short"): Rename to "movstr_short_31". Change predicates
12982 for operands 0 and 1 to "memory_operand". Add type attribute.
12983 ("movstrdi_long", "movstrsi_long"): Remove.
12984 ("movstrdi_64"): Rename to "movstr_long_64". Add type attribute.
12985 ("movstrsi_31"): Rename to "movstr_long_31". Add type attribute.
12986 ("clrstrdi", "clrstrsi"): Call s390_expand_clrstr.
12987 ("clrstrsico"): Remove, replace by ...
12988 ("clrstr_short_64", "clrstr_short_31"): ... these new patterns.
12989 ("clrstrsi_64"): Rename to "clrstr_long_64".
12990 ("clrstrsi_31"): Rename to "clrstr_long_31".
12991 ("cmpstrdi", "cmpstrsi"): Call s390_expand_cmpstr.
12992 ("cmpstr_const"): Remove, replace by ...
12993 ("cmpstr_short_64", "cmpstr_short_31"): ... these new patterns.
12994 ("cmpstr_64"): Rename to "cmpstr_long_64".
12995 ("cmpstr_31"): Rename to "cmpstr_long_31".
12996
8d9afc4e
KH
129972002-09-16 Kazu Hirata <kazu@cs.umass.edu>
12998
12999 * ABOUT-NLS: Follow spelling conventions.
13000 * ChangeLog: Likewise.
13001 * ChangeLog.1: Likewise.
13002 * ChangeLog.2: Likewise.
13003 * ChangeLog.3: Likewise.
13004 * ChangeLog.4: Likewise.
13005 * ChangeLog.5: Likewise.
13006 * ChangeLog.6: Likewise.
13007 * FSFChangeLog.10: Likewise.
13008 * FSFChangeLog.11: Likewise.
13009 * c-common.c: Likewise.
13010 * c-lex.c: Likewise.
13011 * c-objc-common.c: Likewise.
13012 * cppexp.c: Likewise.
13013 * cppinit.c: Likewise.
13014 * cpplex.c: Likewise.
13015 * doloop.c: Likewise.
13016 * flow.c: Likewise.
13017 * function.c: Likewise.
13018 * integrate.c: Likewise.
13019 * loop.c: Likewise.
13020 * reg-stack.c: Likewise.
13021 * reload.h: Likewise.
13022 * ssa.c: Likewise.
13023
4977bab6
ZW
130242002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13025
13026 * Makefile.in (vmsdbgout.o): Depend on $(TARGET_H)
13027 * vmsdbgout.c: Include "target.h".
13028
981f6289
KH
130292002-09-15 Kazu Hirata <kazu@cs.umass.edu>
13030
13031 * ChangeLog: Follow spelling conventions.
13032 * ChangeLog.0: Likewise.
13033 * ChangeLog.1: Likewise.
13034 * ChangeLog.2: Likewise.
13035 * ChangeLog.4: Likewise.
13036 * ChangeLog.6: Likewise.
13037 * config.gcc: Likewise.
13038 * dwarfout.c: Likewise.
13039 * reload1.c: Likewise.
13040 * simplify-rtx.c: Likewise.
13041 * unwind-sjlj.c: Likewise.
13042 * config/avr/avr.h: Likewise.
13043 * config/d30v/d30v.h: Likewise.
13044 * config/frv/frv.c: Likewise.
13045 * config/frv/frv.h: Likewise.
13046 * config/ip2k/ip2k.h: Likewise.
13047 * config/m88k/m88k-move.sh: Likewise.
13048 * config/stormy16/stormy16.c: Likewise.
13049 * config/stormy16/stormy16.h: Likewise.
13050 * doc/extend.texi: Likewise.
13051 * doc/interface.texi: Likewise.
13052 * doc/invoke.texi: Likewise.
13053 * doc/md.texi: Likewise.
13054 * doc/rtl.texi: Likewise.
13055 * doc/tm.texi: Likewise.
13056 * doc/trouble.texi: Likewise.
13057 * ginclude/float.h: Likewise.
13058 * treelang/treelang.texi: Likewise.
13059
8764eef7
KG
130602002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13061
bb6155b5
KG
13062 * i386-protos.h (i386_pe_dllexport_name_p,
13063 i386_pe_dllimport_name_p, i386_pe_unique_section,
13064 i386_pe_declare_function_type, i386_pe_record_external_function,
13065 i386_pe_record_exported_symbol, i386_pe_asm_file_end): Add
13066 prototype.
13067 * i386/t-cygwin (winnt.o): Depend on $(TM_P_H).
13068 * i386/t-interix (winnt.o): Likewise.
13069
8764eef7
KG
13070 * v850-protos.h (v850_output_addr_const_extra): Prototype.
13071
a24f7c1a
JT
130722002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
13073
13074 * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Add
13075 MIPS ABI CPP macros.
13076 (TARGET_CPU_CPP_BUILTINS): Redefine.
13077 (SUBTARGET_EXTRA_SPECS): Remove subtarget_endian_default.
13078 (SUBTARGET_ENDIAN_DEFAULT_SPEC): Remove.
13079
bd25febf
KG
130802002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13081
13082 * ia64/aix.h (TARGET_OS_CPP_BUILTINS): Fix typo.
13083
05713b80
KH
130842002-09-15 Kazu Hirata <kazu@cs.umass.edu>
13085
13086 * ChangeLog: Follow spelling conventions.
13087 * ChangeLog.0: Likewise.
13088 * ChangeLog.1: Likewise.
13089 * ChangeLog.2: Likewise.
13090 * ChangeLog.3: Likewise.
13091 * ChangeLog.4: Likewise.
13092 * ChangeLog.5: Likewise.
13093 * ChangeLog.6: Likewise.
13094 * FSFChangeLog.10: Likewise.
13095 * FSFChangeLog.11: Likewise.
13096 * c-common.c: Likewise.
13097 * c-common.h: Likewise.
13098 * c-format.c: Likewise.
13099 * c-opts.c: Likewise.
13100 * cpplib.c: Likewise.
13101 * langhooks.h: Likewise.
13102 * real.c: Likewise.
13103 * reg-stack.c: Likewise.
13104 * toplev.c: Likewise.
13105 * config/arm/arm.c: Likewise.
13106 * config/arm/arm.md: Likewise.
13107 * config/arm/linux-gas.h: Likewise.
13108 * config/arm/netbsd.h: Likewise.
13109 * config/c4x/c4x.c: Likewise.
13110 * config/c4x/c4x.h: Likewise.
13111 * config/c4x/c4x.md: Likewise.
13112 * config/c4x/libgcc.S: Likewise.
13113 * config/fr30/fr30.md: Likewise.
13114 * config/frv/frv.md: Likewise.
13115 * config/ia64/ia64.md: Likewise.
13116 * config/mips/mips.h: Likewise.
13117 * config/mn10300/mn10300.c: Likewise.
13118 * config/stormy16/stormy16.c: Likewise.
13119 * config/v850/v850.md: Likewise.
13120 * doc/extend.texi: Likewise.
13121 * doc/invoke.texi: Likewise.
13122 * doc/md.texi: Likewise.
13123
b0c2b2f9
JT
131242002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
13125
13126 * config/netbsd.h (LIB_SPEC): Include the appropriate pthread
13127 library if -pthread is specified.
13128
a0494c05
JT
131292002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
13130
13131 * config.gcc (*-*-netbsd*): Set thread_file to 'posix'
13132 for --enable-threads=yes and --enable-threads=posix.
13133
56149abc
KH
131342002-09-15 Kazu Hirata <kazu@cs.umass.edu>
13135
13136 * config/sparc/cypress.md: Replace Sparc with SPARC.
13137 * config/sparc/freebsd.h: Likewise.
13138 * config/sparc/gmon-sol2.c: Likewise.
13139 * config/sparc/hypersparc.md: Likewise.
13140 * config/sparc/lb1spc.asm: Likewise.
13141 * config/sparc/lb1spl.asm: Likewise.
13142 * config/sparc/linux.h: Likewise.
13143 * config/sparc/linux64.h: Likewise.
13144 * config/sparc/lynx.h: Likewise.
13145 * config/sparc/sol2.h: Likewise.
13146 * config/sparc/sparc-modes.def: Likewise.
13147 * config/sparc/sparc.c: Likewise.
13148 * config/sparc/sparc.h: Likewise.
13149 * config/sparc/sparc.md: Likewise.
13150 * config/sparc/sparclet.md: Likewise.
13151 * config/sparc/supersparc.md: Likewise.
13152 * config/sparc/sysv4.h: Likewise.
13153 * config/sparc/vxsim.h: Likewise.
13154 * config/sparc/vxsparc64.h: Likewise.
13155
4977bab6
ZW
131562002-09-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13157
13158 * c-lex.c (cb_ident): Mark variable with ATTRIBUTE_UNUSED.
13159 * collect2.c (ignore_library, aix_std_libs): Move into the context
13160 where it is used.
13161 * m68hc11.c (m68hc11_autoinc_compatible_p): Delete prototype.
13162 (autoinc_mode, m68hc11_make_autoinc_notes): Add prototypes.
13163 * m88k.c (output_call): Wrap variables with macro controlling use.
13164 * rs6000.md: Likewise. Const-ify variable.
13165 * sh.h (ASM_OUTPUT_LABELREF): Likewise.
13166 * final.c (only_leaf_regs_used): Likewise.
13167 * regrename.c (maybe_mode_change): Mark parameter with
13168 ATTRIBUTE_UNUSED.
13169 * reload.c (find_valid_class): Likewise. Likewise for variable.
13170 (find_reloads_address_1): Likewise.
13171 * varasm.c (weak_finish): Wrap variable with macro controlling use.
13172
3eaf7a3c
MM
131732002-09-14 Marek Michalkiewicz <marekm@amelek.gda.pl>
13174
13175 * config/avr/avr.c (output.h): Move after inclusion of tree.h.
13176
4912a07c
KH
131772002-09-14 Kazu Hirata <kazu@cs.umass.edu>
13178
13179 * ChangeLog: Follow spelling conventions.
13180 * ChangeLog.0: Likewise.
13181 * ChangeLog.2: Likewise.
13182 * ChangeLog.3: Likewise.
13183 * ChangeLog.4: Likewise.
13184 * ChangeLog.5: Likewise.
13185 * ChangeLog.6: Likewise.
13186 * cppfiles.c: Likewise.
13187 * cppinit.c: Likewise.
13188 * cpplib.h: Likewise.
13189 * cse.c: Likewise.
13190 * debug.h: Likewise.
13191 * df.c: Likewise.
13192 * dominance.c: Likewise.
13193 * hashtable.c: Likewise.
13194 * hashtable.h: Likewise.
13195 * loop.c: Likewise.
13196 * config/arm/README-interworking: Likewise.
13197 * config/arm/arm.c: Likewise.
13198 * config/arm/arm.h: Likewise.
13199 * config/arm/arm.md: Likewise.
13200 * config/dsp16xx/dsp16xx.h: Likewise.
13201 * config/frv/frv.c: Likewise.
13202 * config/frv/frv.h: Likewise.
13203 * config/ip2k/ip2k.h: Likewise.
13204 * config/rs6000/rs6000.c: Likewise.
13205 * config/stormy16/stormy-abi: Likewise.
13206 * config/stormy16/stormy16.h: Likewise.
13207 * config/v850/v850.c: Likewise.
13208
3dc60fc7
KH
132092002-09-14 Kazu Hirata <kazu@cs.umass.edu>
13210
13211 * loop.c: Fix a comment typo.
13212
a920aefe
KH
132132002-09-14 Kazu Hirata <kazu@cs.umass.edu>
13214
13215 * config/fr30/fr30.h: Fix comment typos.
13216 * config/frv/frv.c: Likewise.
13217 * config/i386/xmmintrin.h: Likewise.
13218 * config/mips/mips.c: Likewise.
13219 * config/sh/sh.c: Likewise.
13220
88cad84b
KH
132212002-09-14 Kazu Hirata <kazu@cs.umass.edu>
13222
13223 * haifa-sched.c: Follow spelling conventions.
13224 * regclass.c: Likewise.
13225 * regrename.c: Likewise.
13226 * config/fp-bit.c: Likewise.
13227 * config/frv/frv.h: Likewise.
13228 * config/m88k/m88k.c: Likewise.
13229 * config/mcore/mcore.c: Likewise.
13230 * config/rs6000/darwin.h: Likewise.
13231 * config/rs6000/gnu.h: Likewise.
13232 * config/rs6000/linux.h: Likewise.
13233 * config/rs6000/linux64.h: Likewise.
13234 * config/rs6000/rs6000.c: Likewise.
13235 * config/rs6000/rs6000.h: Likewise.
13236 * config/sh/sh.c: Likewise.
13237 * config/sparc/sparc.c: Likewise.
13238 * config/sparc/ultra1_2.md: Likewise.
13239
f197f1cf
SC
132402002-09-14 Stephane Carrez <stcarrez@nerim.fr>
13241
13242 * config/m68hc11/m68hc11.md ("movdi_internal"): Allow any offsetable
13243 memory operand when source is 0 (K constraint).
13244 ("movsi_internal"): Likewise.
13245 ("movdf_internal"): Likewise.
13246 ("movsf_internal"): Likewise.
13247
b629ba0c
AM
132482002-09-14 Alan Modra <amodra@bigpond.net.au>
13249
13250 * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Use
13251 targetm.binds_local_p to set SYMBOL_REF_FLAG.
13252 (rs6000_xcoff_encode_section_info): Likewise.
13253 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
13254
2e485129
TR
132552002-09-10 Theodore A. Roth <troth@verinet.com>
13256
13257 * gcc/config/avr/avr.h: Set default options for C++ for avr.
13258
4977bab6
ZW
132592002-09-13 Roger Sayle <roger@eyesopen.com>
13260
13261 * stmt.c (struct nexting): Remove unused alt_end_label field.
13262 (expand_start_loop): Delete initialization of alt_end_label.
13263 (expand_start_null_loop): Likewise.
13264 (expand_exit_loop_if_false): Delete updating of alt_end_label.
13265
907aee69
RH
132662002-09-13 Richard Henderson <rth@redhat.com>
13267
13268 * Makefile.in (toplev.o): Depend on real.h.
13269 (print-rtl.o, varasm.o, ifcvt.o): Likewise.
13270
374b0b7d
AM
132712002-09-14 Alan Modra <amodra@bigpond.net.au>
13272
13273 * doc/tm.texi (DBX_OUTPUT_NFUN): Describe.
13274 * dbxout.c (dbxout_function_end): Use DBX_OUTPUT_NFUN.
13275 * config/rs6000/linux64.h (DBX_OUTPUT_NFUN): Define.
13276
690eed2c
NS
132772002-09-13 Nathan Sidwell <nathan@codesourcery.com>
13278
13279 * ggc-common.c (ggc_mark_roots): Don't iterate NULL hash tables.
13280
32b4f6f4
SE
132812002-09-13 Steve Ellcey <sje@cup.hp.com>
13282
13283 * config.gcc (ia64*-*-aix*, ia64*-*-elf*, ia64*-*-freebsd*,
13284 ia64*-*-linux*): Set extra_parts.
13285 * config/ia64/t-aix (EXTRA_PARTS): Remove.
13286 * config/ia64/t-ia64 (EXTRA_PARTS): Remove.
13287
3db11b5c
KH
132882002-09-13 Kazu Hirata <kazu@cs.umass.edu>
13289
13290 * config/h8300/fixunssfsi.c: Replace H8/S with H8S.
13291 * config/h8300/h8300.c: Likewise.
13292 * config/h8300/h8300.h: Likewise.
13293 * config/h8300/h8300.md: Likewise.
13294 * doc/invoke.texi: Likewise.
13295
b6894857
KH
132962002-09-13 Kazu Hirata <kazu@cs.umass.edu>
13297
13298 * config/h8300/h8300.c (h8300_init_once): Fix formatting.
13299
d5909a79
RH
133002002-09-13 Richard Henderson <rth@redhat.com>
13301
13302 * config/alpha/alpha.md (attr type): Add callpal.
13303 (imb, trap, load_tp, set_tp): Use it.
13304 * config/alpha/ev4.md (ev4_callpal): New.
13305 * config/alpha/ev5.md (ev5_callpal): New.
13306 * config/alpha/ev6.md (ev6_ibr): Handle callpal.
13307 * config/alpha/alpha.c (alphaev4_insn_pipe): Handle TYPE_CALLPAL.
13308 (alphaev5_insn_pipe): Likewise.
13309
e0073fa8
AJ
133102002-09-13 Andreas Jaeger <aj@suse.de>
13311
13312 * Makefile.in (print-rtl.o): Depend on CONFIG_H.
13313
1f298625
SE
133142002-09-13 Steve Ellcey <sje@cup.hp.com>
13315
13316 * config/ia64/t-hpux (LIBGCC1_TEST, STMP_FIXPROTO,
13317 LIB2ADDEH): New, set to NULL.
13318 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP): New.
13319
1a7e1470
SE
133202002-09-13 Steve Ellcey <sje@cup.hp.com>
13321
13322 * config/ia64/quadlib.c (_U_Qfcmp): Make extern.
13323 (_U_Qfcnvfxt_quad_to_sgl): Remove declaration.
13324 (_U_Qfeq, _U_Qfne, _U_Qfgt, _U_Qfge, U_Qflt, U_Qfle, _U_Qfcomp):
13325 Add declarations.
13326 (_U_Qfneg): Remove.
13327
d56c04ce
DD
133282002-09-13 Dhananjay Deshpande <dhananjayd@kpit.com>
13329
13330 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Add support
8d9afc4e
KH
13331 for H8/300, H8S aa:8 mode.
13332 (TINY_CONSTANT_ADDRESS_P): Add support for H8S aa:16 mode.
d56c04ce
DD
13333 * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust length
13334 for H8/300 aa:8 mode.
13335
4456530d
HP
133362002-09-13 Hartmut Penner <hpenner@de.ibm.com>
13337
13338 * config/s390/s390.md ("trap", "conditional_trap", "*trap"): New
13339 insns.
13340
4d2d910c
RH
133412002-09-12 Richard Henderson <rth@redhat.com>
13342
13343 * Makefile.in (HOST_PRINT): Use print-rtl1.o
13344 (print-rtl.o): Don't define GENERATOR_FILE.
13345 (print-rtl1.o): Rename from $(BUILD_PREFIX_1)print-rtl.o.
13346 * print-rtl.c (print_rtx): Include CONST_DOUBLE fp decimal output
13347 unless GENERATOR_FILE.
13348
7606e68f
SS
133492002-09-12 Stan Shebs <shebs@apple.com>
13350
6ab9a3f4
SS
13351 * config/darwin.h (USER_LABEL_PREFIX): Define here...
13352 * config/i386/darwin.h: ... instead of here.
13353
7606e68f
SS
13354 * target.h (struct gcc_target): New field
13355 terminate_dw2_eh_frame_info.
13356 * target-def.h (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
13357 (TARGET_INITIALIZER): Add it.
13358 * dwarf2out.c (output_call_frame_info): Use target hook.
13359 * dwarf2asm.c (dw2_asm_output_delta): Use macro
13360 ASM_OUTPUT_DWARF_DELTA if defined.
13361 * doc/tm.texi (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Document.
13362 (ASM_OUTPUT_DWARF_DELTA): Ditto.
13363 (ASM_OUTPUT_DWARF_OFFSET): Ditto.
13364 (ASM_OUTPUT_DWARF_PCREL): Ditto.
13365 * config.gcc (i[34567]86-*-darwin*): Define extra_parts.
13366 (powerpc-*-darwin*): Ditto.
13367 * crtstuff.c [OBJECT_FORMAT_MACHO]: Update the Mach-O bits
13368 to work correctly for Darwin.
13369 * config/darwin.h (OBJECT_FORMAT_MACHO): Define.
13370 (STARTFILE_SPEC): Add crtbegin.o.
13371 (ENDFILE_SPEC): Define.
13372 (EXTRA_SECTION_FUNCTIONS): Put gcc_except_tab in data segment.
13373 (ASM_PREFERRED_EH_DATA_FORMAT): Handle more cases.
13374 (ASM_OUTPUT_DWARF_DELTA): Define.
13375 (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
13376 * config/darwin.c (darwin_asm_output_dwarf_delta): New function.
13377
20b71b17
AM
133782002-09-13 Alan Modra <amodra@bigpond.net.au>
13379
13380 * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Remove "if"
13381 nesting. Correct test for non-PowerPC64 ELF ABI_AIX.
13382 * config/rs6000/rs6000.md (load_toc_v4_PIC*): Disable when ABI_AIX.
13383
d48fd218
ZW
133842002-09-12 Zack Weinberg <zack@codesourcery.com>
13385
13386 * toplev.c: Move default definition of USER_LABEL_PREFIX...
13387 * defaults.h: ... here.
13388
92bc3c1a
RH
133892002-09-12 Richard Henderson <rth@redhat.com>
13390
13391 * vax.c: Include tree.h earlier.
13392
3f64e543
SS
133932002-09-12 Stan Shebs <shebs@apple.com>
13394
13395 * config/darwin.c (machopic_finish): Remove #if 0 chunks.
13396 (machopic_operand_p): Ditto.
13397
52bd31bb
KH
133982002-09-12 Kazu Hirata <kazu@cs.umass.edu>
13399
13400 * config/arm/arm.c (arm_compute_initial_elimination_offset):
13401 Fix a comment typo.
13402
387c9294
KH
134032002-09-12 Kazu Hirata <kazu@cs.umass.edu>
13404
13405 * toplev.c (do_abort): Fix a comment typo.
13406
e34bb004
KH
134072002-09-12 Kazu Hirata <kazu@cs.umass.edu>
13408
13409 * cselib.c: Fix comment formatting.
13410 * gengtype.c: Likewise.
13411
d0029ebd
KH
134122002-09-12 Kazu Hirata <kazu@cs.umass.edu>
13413
13414 * config/h8300/h8300.md (udivmodqi4): Do not use an expander.
13415 (udivmodhi4): Likewise.
13416
c3c637e3 134172002-09-12 Graham Stott <graham.stott@btinternet.com>
d48fd218 13418 Roger Sayle <roger@eyesopen.com>
c3c637e3
GS
13419
13420 * i386.c (any_fp_register_operand, fp_register_operand,
13421 register_and_not_any_fp_reg_operand, register_and_not_fp_reg_operand):
13422 New predicate functions.
13423 * i386-protos.h: Add their prototypes.
13424 * i386.h: Add them to PREDICATE_CODES.
13425 * i386.md ("*pushsf_rex64"+2, "*pushsf_rex64"+3, "*pushdf_integer"+1,
13426 "*pushdf_integer"+2, "*pushtf_integer"+1, "*pushtf_integer"+2,
13427 "*pushtf_integer"+3, "*pushtf_integer"+4, "*dummy_extendsfdf2"+1,
13428 "*dummy_extendsfdf2"+2, "*dummy_extendsfxf2"+1,
13429 "*dummy_extendsftf2"+1, "*dummy_extendsftf2"+2,
13430 "*dummy_extenddfxf2"+1, "*dummy_extenddftf2"+1,
13431 "*dummy_extenddftf2"+2, "*negsf2_if"+1, "*negsf2_if"+2,
13432 "*negdf2_if_rex64"+1, "*negdf2_if_rex64"+2, "*negxf2_if"+1,
13433 "*negxf2_if"+2, "*negtf2_if"+1, "*negtf2_if"+2, "*abssf2_if"+1,
13434 "*abssf2_if"+2, "*absdf2_if_rex64"+1, "*absdf2_if_rex64"+2,
13435 "*absxf2_if"+1, "*absxf2_if"+2, "*abstf2_if"+1, "*abstf2_if"+2):
13436 Use these new predicates to simplify and correct the use of
13437 FP_REG_P, ANY_FP_REG_P, FP_REGNO_P and any ANY_FP_REGNO_P.
13438
db4c55f6
JM
134392002-09-12 Jason Merrill <jason@redhat.com>
13440
236a2ac8
JM
13441 * diagnostic.c (output_add_identifier): New fn.
13442 * diagnostic.h: Declare it.
13443
db4c55f6
JM
13444 * calls.c (store_one_arg): Use size_in_bytes to determine the
13445 amount of space to push.
13446
13c0bc20
JJ
134472002-09-12 Jakub Jelinek <jakub@redhat.com>
13448
13449 * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo.
13450
0a3bdf9d
UW
134512002-09-12 Ulrich Weigand <uweigand@de.ibm.com>
13452
13453 * config/s390/s390-modes.def (CCAPmode, CCANmode): New CC modes.
13454 * config/s390/s390.c (s390_match_ccmode_set): Support new CC modes.
13455 (s390_select_ccmode): Likewise.
13456 (s390_branch_condition_mask): Likewise.
13457 (optimization_options): Do not set flag_branch_on_count.
13458 (s390_split_branches): Handle doloop branches.
13459 (s390_chunkify_pool): Likewise.
13460 * config/s390/s390.md ("*adddi3_imm_cc", "*addsi3_imm_cc"): New insns.
13461 ("doloop_end"): New expander.
13462 ("doolop_si", "*doloop_si_long", "doloop_di", "*doloop_di_long",
13463 associated splitters): New.
13464
4977bab6
ZW
134652002-09-11 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
13466
13467 * genattrtab.c (simplify_cond): Remove unused variable(s).
13468 * global.c (record_conflicts): Likewise.
13469 * jump.c (rebuild_jump_labels): Likewise.
13470 * loop.c (scan_loop, check_final_value): Likewise.
13471 * ra-colorize.c (colorize_one_web, assign_colors): Likewise.
13472 * reload1.c (eliminate_regs_in_insn, do_input_reload): Likewise.
13473 * rtlanal.c (reg_set_p): Likewise.
13474 * stmt.c (expand_asm_operands, expand_decl): Likewise.
13475 * genautomata.c (empty_reserv): Remove.
13476 * loop.c (max_luid): Likewise.
13477 * sched-rgn.c (bitlst_table_size): Likewise.
13478
134792002-09-11 Nathan Sidwell <nathan@codesourcery.com>
13480
13481 Reimplement gcov format.
13482 * gcov-io.h: Replace.
13483 * gcov.c: Reimplement.
13484 * gcov-iov.c: New file.
13485 * gcov-dump.c: New file.
13486 * libgcc2.c (L_bb): Replace with ...
13487 (L_gcov): ... this.
13488 (struct bb_function_info, struct bb): Remove.
13489 (inhibit_libc): Never inhibit.
13490 (gcov_list, gcov_crc): New static variables.
13491 (gcov_version_mismatch): New static function.
13492 (__bb_exit_func): Renamed to ...
13493 (__gcov_exit): ... here. Made static. Reimplement.
13494 (__gcov_init_func): Rename to ...
13495 (__gcov_init): ... here. Check version, update crc.
13496 (__bb_fork_func): Rename to ...
13497 (__gcov_flush): ... here.
13498 * libgcc2.h (struct bb, __bb_exit_func, __bb_init_func,
13499 __bb_fork_func, gcov_type, __bb_find_arc_counters): Remove.
13500 * calls.c (expand_call): Call __gcov_flush.
13501 * profile.c (bb_file, last_bb_file_name): Remove.
13502 (bbg_file_name): New global variable.
13503 (output_gcov_string): Remove.
13504 (get_exec_counts): Reimplement.
13505 (branch_prob): Reimplement gcov file writing.
13506 (init_branch_prob): Create bbg_file_name, don't create
13507 bb_file_name.
13508 (end_branch_prob): Adjust. Don't remove counter file when
13509 instrumenting ourselves.
13510 (create_profiler): Adjust.
13511 * doc/gcov.texi (Gcov Data Files): Remove detailed specification,
13512 point to gcov-io.h.
13513 * Makefile.in (LANGUAGES): Add gcov-dump.
13514 (coverageexts): Remove .bb.
13515 (STAGESTUFF): Add gcov-dump.
13516 (LIB2FUNCS_ST): Replace _bb with _gcov.
13517 (profile.o): Depend on gcov-iov.h.
13518 (final.o): Don't depend on profile.h, gcov.h.
13519 (gcov.o): Depend on gcov-iov.h.
13520 (gcov-iov.o): New target.
13521 (gcov-iov): New target.
13522 (gcov-iov.h): New target.
13523 (gcov-dump.o): New target.
13524 (GCOV_DUMP_OBJS): New variable.
13525 (gcov-dump): New target.
13526 (distclean): Remove coverageexts.
13527 (stage1): Remove coverageexts.
13528
4f968d93
HP
135292002-09-11 Hartmut Penner <hpenner@de.ibm.com>
13530
13531 * fold-const.c (make_range): Only narrow to signed range if
13532 the signed range is smaller than the unsigned range.
13533
35aff10b
AM
135342002-09-12 Alan Modra <amodra@bigpond.net.au>
13535
13536 * emit-rtl.c (set_mem_size): New function.
13537 * expr.h (set_mem_size): Declare.
13538 * config/rs6000/rs6000.c (expand_block_move_mem): Exterminate.
13539 (expand_block_move): Instead, use adjust_address and
13540 replace_equiv_address to generate proper aliasing info.
13541 Move common code out of conditionals. Localize vars.
13542
a9b6f1e7 135432002-09-11 Eric Botcazou <ebotcazou@libertysurf.fr>
d48fd218 13544
874f6a6d
EB
13545 * optabs.c (expand_binop): Minor cleanup.
13546 (expand_twoval_binop): Convert CONST_INTs like in expand_binop.
13547
d1df930b
DN
135482002-09-11 Dan Nicolaescu <dann@ics.uci.edu>
13549
13550 * print-tree.c (print_node): Print the restrict qualifier.
13551
9026a957
JJ
135522002-09-11 Janis Johnson <janis187@us.ibm.com>
13553
13554 * doc/install.texi: Fix typos.
13555
3fd9d606
ZW
135562002-09-11 Zack Weinberg <zack@codesourcery.com>
13557
13558 * Makefile.in: Remove all references to s-under and underscore.c.
13559 * collect2.c, tlink.c: Change all uses of prepends_underscore
13560 to look directly at USER_LABEL_PREFIX.
13561
5b5198f7
DE
135622002-09-11 David Edelsohn <edelsohn@gnu.org>
13563
13564 * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Append
13565 alignment to csect.
13566 (rs6000_xcoff_unique_section): Only set section name for public
13567 data.
13568 (rs6000_xcoff_section_type_flags): Store log2 alignment in flags.
13569 * config/rs6000/xcoff.h (TARGET_ASM_SELECT_SECTION): Remove
13570 duplicate definition.
13571
77de9af2
JDA
135722002-09-10 John David Anglin <dave@hiauly1.hia.nrc.ca>
13573
13574 * pa.md (extzv): Check predicates before emitting extzv_32.
13575 (insv): Likewise.
13576
33b679d1
UW
135772002-09-10 Ulrich Weigand <uweigand@de.ibm.com>
13578
13579 * config/s390/s390.h (MOVE_MAX): Define to correct value.
13580 (MAX_MOVE_MAX): Define.
13581 (MOVE_BY_PIECES_P): Define.
13582 (CLEAR_BY_PIECES_P): Define.
13583
bfae8040
DC
135842002-09-10 Denis Chertykov <denisc@overta.ru>
13585
13586 * config/avr/avr.md (movstrhi): Use right operands for conversion.
13587
7730c3ff
RE
135882002-09-10 Richard Earnshaw <rearnsha@arm.com>
13589
13590 PR c/7873
13591 * arm.md (insv): Use reg_or_int_operand for operand[3].
13592
5add3202
DE
135932002-09-10 David Edelsohn <edelsohn@gnu.org>
13594
13595 * rs6000.c (rs6000_assemble_visibility): Protect declaration
13596 inside macro. Correct function definition typo.
13597 (rs6000_xcoff_section_type_flags): New function.
13598 (TARGET_SECTION_TYPE_FLAGS): Remove definition.
13599 (rs6000_elf_section_type_flags): Call default_section_type_flags_1
13600 with appropriate PIC test.
13601 (rs6000_xcoff_select_section): Use decl_readonly_section_1 to
13602 determine readonly.
13603 (rs6000_binds_local_p): Combine PIC flags.
13604 * sysv4.h (TARGET_SECTION_TYPE_FLAGS): Define.
13605 * xcoff.h (TARGET_SECTION_TYPE_FLAGS): Define.
13606
4977bab6
ZW
136072002-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13608
13609 * h8300.md: Fix signed/unsigned warnings.
13610 * mcore.md: Likewise.
13611 * mn10300.c (mask_ok_for_mem_btst): Likewise.
13612
90389422
PB
136132002-09-09 Per Bothner <per@bothner.com>
13614
13615 * print-tree.c (print_node): In a STRING_CST, escape non-ascii
13616 characters, and only print TREE_STRING_LENGTH chars.
13617
686f3bf0
SE
136182002-09-09 Steve Ellcey <sje@cup.hp.com>
13619
13620 * config/ia64/hpux.h (TARGET_HPUX_LD): New, define true.
13621 (ASM_FILE_END) New.
13622 * config/ia64/ia64.h (TARGET_HPUX_LD): New, define false.
13623 * config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New.
13624 * config/ia64/ia64.c (ia64_asm_output_external): Create list
13625 of external functions if TARGET_HPUX_LD is true.
13626 (ia64_hpux_add_extern_decl): New, routine to put names on
13627 list of external functions.
13628 (ia64_hpux_asm_file_end): Put out declarations for external
13629 functions if and only if they are used.
13630
0c263f4e
JDA
136312002-09-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
13632
13633 * pa.md (exception_receiver, builtin_setjmp_receiver): Add blockage
13634 on TARGET_64BIT before pic register restore.
13635
e2a6476e
DE
136362002-09-09 David Edelsohn <edelsohn@gnu.org>
13637
13638 * doc/tm.texi (TARGET_HAVE_SRODATA_SECTION): New description.
13639 (TARGET_HAVE_TLS): New description.
13640
b73b1546
JJ
136412002-09-09 Janis Johnson <janis187@us.ibm.com>
13642
13643 * doc/extend.texi (Statement Exprs): Fix broken link.
13644
a9738643
DC
136452002-09-09 Denis Chertykov <denisc@overta.ru>
13646
13647 * config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
13648 right conversion of operands[1].
13649
05b9aaaa
UW
136502002-09-09 Ulrich Weigand <uweigand@de.ibm.com>
13651
13652 * config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as
13653 commutative. Use "nonimmediate_operand" instead of "register_operand"
13654 as predicate for operand 0. Move to after the "*tmXX_mem" insns.
13655
13656 ("*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem"): Do not mark
13657 as commutative.
13658
13659 ("*anddi3_ni", "*andsi3_ni", "*iordi3_ni", "*iorsi3_ni"): Do not
13660 mark as commutative. Use "nonimmediate_operand" instead of
13661 "register_operand" as predicate for operand 1.
13662
13663 ("movstrictsi"): Fix typo in insn name.
13664
7ec70495
JH
136652002-09-09 Jan Hubicka <jh@suse.cz>
13666
13667 * i386.c (index_register_operand): New.
13668 * i386.h (predicate_codes): Add new predicate.
8e746279 13669 * i386.md (lea_general_*): Use index_register_operand
7ec70495
JH
13670 (ashift to lea splitter): Do not produce invalid leas
13671 (ashift to mov+ashift split): New.
13672
b2fc915b
NC
136732002-09-09 Nick Clifton <nickc@redhat.com>
13674
13675 * config/fr30/fr30.c (output.h): Move after inclusion of tree.h.
13676 Fix folding marks.
13677
0b0ad147 136782002-09-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
d48fd218 13679 J"orn Rennecke <joern.rennecke@superh.com>
0b0ad147
TM
13680
13681 * sh/sh.h (OVERRIDE_OPTIONS): align_functions is in bytes, not bits.
13682
2bcc50d0
AM
136832002-09-09 Alan Modra <amodra@bigpond.net.au>
13684
13685 * config/rs6000/rs6000.c (rs6000_binds_local_p): Return bool.
13686 (function_ok_for_sibcall): Use binds_local_p. Respect longcall
13687 attributes.
13688
4977bab6
ZW
136892002-09-08 Nathan Sidwell <nathan@codesourcery.com>
13690
13691 * basic_block.h (gcov_type): Explain why it is signed.
13692 * final.c: Don't include profile.h.
13693 (struct function_list, functions_head, functions_tail,
13694 end_final): Moved to profile.c
13695 (final): Move arc chaining code to profile.c.
13696 * function.c (prepare_function_start): Remove duplicate line.
13697 * output.h (end_final): Remove prototype.
13698 * predict.c (estimate_loops_at_level): Use gcov_type.
13699 * profile.c (struct function_list, functions_head,
13700 functions_tail): Moved from final.c
13701 (need_func_profiler): Remove.
13702 (instrument_edges): Don't set need_func_profiler.
13703 (get_exec_counts): Avoid signed/unsigned warning.
13704 (compute_checksum): Use crc32.
13705 (branch_prob): Adjust. Chain onto functions_head.
13706 (init_branch_prob): Absorb init_edge_profiler.
13707 (init_edge_profiler): Remove.
13708 (create_profiler): Moved and renamed from final.c:end_final.
13709 Emit data and constructor.
13710 (output_func_start_profiler): Remove.
13711 * profile.h (struct profile_info): checksum is unsigned.
13712 * rtl.h (output_func_start_profiler): Remove prototype.
13713 (create_profiler): Declare.
13714 * toplev.c (compile_file): Call create_profiler, if instrumenting
13715 arcs. Don't call end_final.
13716
c1b4f089
KG
137172002-09-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13718
13719 * fr30.c (fr30_print_operand): Fix bug in output of CONST_DOUBLE.
13720
b9203463
RH
137212002-09-08 Richard Henderson <rth@redhat.com>
13722
13723 * dwarf2.h (DW_OP_call_ref): Rename from DW_OP_calli.
13724 (DW_OP_GNU_push_tls_address): New.
13725 (DW_OP_lo_user): Fix.
13726 * dwarf2out.c (INTERNAL_DW_OP_tls_addr): New.
13727 (dwarf_stack_op_name): Handle it, plus other dwarf3 opcodes.
13728 (size_of_loc_descr): Likewise.
13729 (output_loc_operands): Handle INTERNAL_DW_OP_tls_addr.
13730 (add_AT_location_description): Take a dw_loc_descr_ref not an rtx.
13731 (loc_descriptor_from_tree): Handle TLS variables.
13732 (rtl_for_decl_location): Do avoid_constant_pool_reference here ...
13733 (add_location_or_const_value_attribute): ... not here. Defer
13734 to loc_descriptor_from_tree for TLS variables.
13735
13736 * config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): New.
13737 * config/i386/i386.c (i386_output_dwarf_dtprel): New.
13738 * config/i386/i386-protos.h: Update.
13739
7df98878
RS
137402002-09-08 Roger Sayle <roger@eyesopen.com>
13741
13742 PR optimization/6405
13743 * unroll.c (loop_iterations): last_loop_insn should be the previous
13744 non-note instruction before loop->end.
13745 * loop.c (strength_reduce): The conditional jump is the last
13746 non-note instruction before loop->end (as above).
13747
f40f4c8e
RS
137482002-09-08 Roger Sayle <roger@eyesopen.com>
13749
13750 * combine.c (try_combine): Handle the case that undobuf.other_insn
13751 has been turned into a return or unconditional jump, by inserting
13752 a BARRIER if necessary.
13753 (simplify_set): Test if a condition code setter has a constant
13754 comparison at compile time, if so convert this insn to a no-op move
13755 and update/simplify the condition code user (undobuf.other_insn).
13756
e2f97e26
KW
137572002-09-08 Krister Walfridsson <cato@df.lth.se>
13758
13759 * config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Redefine.
13760 (CLEAR_INSN_CACHE): Define.
13761
4b7e68e7
KH
137622002-09-08 Kazu Hirata <kazu@cs.umass.edu>
13763
13764 * basic-block.h: Fix comment formatting.
13765 * c-common.c: Likewise.
13766 * c-common.h: Likewise.
13767 * c-lex.c: Likewise.
13768 * c-pretty-print.c: Likewise.
13769 * cfglayout.c: Likewise.
13770 * cfgloop.c: Likewise.
13771 * defaults.h: Likewise.
13772 * et-forest.c: Likewise.
13773 * explow.c: Likewise.
13774 * function.h: Likewise.
13775 * gcov.c: Likewise.
13776 * genattrtab.c: Likewise.
13777 * gengtype.c: Likewise.
13778 * ifcvt.c: Likewise.
13779 * libgcc2.c: Likewise.
13780 * loop.c: Likewise.
13781 * profile.c: Likewise.
13782 * ra-build.c: Likewise.
13783 * real.c: Likewise.
13784 * rtl.h: Likewise.
13785 * tracer.c: Likewise.
13786 * tree-inline.c: Likewise.
13787 * varasm.c: Likewise.
13788
2567406a
JH
137892002-09-08 Jan Hubicka <jh@suse.cz>
13790
13791 * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix array_ref
13792 handling.
13793
a36fc5f8 13794 * loop.c (loop_givs_reduce): Emit addition after.
2567406a 13795
bd79540a
AM
137962002-09-08 Alan Modra <amodra@bigpond.net.au>
13797
13798 * varasm.c (default_assemble_visibility): Rename from
13799 assemble_visibility.
13800 * output.h: Here too.
13801 * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): And here.
13802 * config/rs6000/rs6000.c (rs6000_assemble_visibility): And here.
13803
32ff9c74
AM
138042002-09-08 Alan Modra <amodra@bigpond.net.au>
13805
13806 * reload.c (find_reloads <p constraint>): Pass operand_mode to
13807 find_reloads_address.
13808
6588987e
KH
138092002-09-08 Kazu Hirata <kazu@cs.umass.edu>
13810
13811 * config/h8300/h8300.md (udivmodqi4): Enable on H8/300.
13812 (anonymous pattern): Likewise.
13813
4977bab6
ZW
138142002-09-07 Igor Shevlyakov <igor@microunity.com>
13815
13816 * machmode.def: Add modes for half-float vectors.
13817
0100732e
SS
138182002-09-07 Scott Snyder <snyder@fnal.gov>
13819
13820 PR target/7374
13821 * config/alpha/alpha.md (abstf2): Fix typo: 'neg' for 'abs'.
13822
77043c7c
RS
138232002-09-07 Roger Sayle <roger@eyesopen.com>
13824
13825 * basic-block.h (struct loop): Remove unused cont_dominator field.
13826
5dd78220
IS
138272002-09-07 Igor Shevlyakov <igor@microunity.com>
13828
d48fd218 13829 * varasm.c (decode_rtx_const): Don't check undefined field for
5dd78220
IS
13830 CONST_VECTOR.
13831
b96a3fa3
GN
138322002-09-07 Glen Nakamura <glen@imodulo.com>
13833
7fa86a10 13834 PR opt/7814
b96a3fa3
GN
13835 * sched-deps.c (sched_analyze_insn): Make sure to add insn
13836 to reg_last->sets after flushing the dependency lists to guarantee
13837 that subsequent clobbers will be dependent on it.
13838
ad9df12f 138392002-09-07 Igor Shevlyakov <igor@microunity.com>
2567406a 13840
ad9df12f
IS
13841 * combine.c (simplify_shift_const): Calculate rotate count
13842 correctly for vector operands.
13843
54c93c30
AE
138442002-09-07 Ansgar Esztermann <ansgar@thphy.uni-duesseldorf.de>
13845
13846 * c-typeck.c (c_tree_expr_nonnegative_p): New function.
13847 (build_binary_op): Call c_tree_expr_nonnegative_p rather than
2567406a 13848 tree_expr_nonnegative_p.
54c93c30
AE
13849 (build_conditional_expr): Likewise.
13850 * c-tree.h (c_tree_expr_nonnegative_p): Declare.
13851
36eea25f
RH
138522002-09-07 Richard Henderson <rth@redhat.com>
13853
3aa4cad7
RH
13854 * builtins.def (inf, inff, infl): Mark const.
13855 (huge_val, huge_valf, huge_vall): Likewise.
13856 (BUILT_IN_GETEXP, BUILT_IN_GETMAN): Remove.
13857
36eea25f
RH
13858 * real.c (ereal_inf): Clear E before use.
13859
5c102b48
KH
138602002-09-07 Kazu Hirata <kazu@cs.umass.edu>
13861
13862 * config/h8300/h8300.md (udivmodqi4): Split the pattern into
13863 an expander and an anonymous pattern. Zero out the upper half
13864 of the dividend in the expander.
13865 (udivmodqi4): Likewise.
13866
8bd06267
KH
138672002-09-07 Kazu Hirata <kazu@cs.umass.edu>
13868
13869 * config/h8300/h8300.c: Fix formatting.
13870 * config/h8300/h8300.h: Likewise.
13871 * config/h8300/h8300.md: Likewise.
13872
39587bb9
ZD
138732002-09-07 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
13874
13875 * cfgcleanup.c (try_crossjump_to_edge): Fix updating of liveness
13876 information.
13877
34146b94 138782002-09-07 Graham Stott <graham.stott@btinternet.com>
92d9256d
GS
13879
13880 * rtlanal.c (dead_or_set_regno_p): Fix typo.
13881
93638d7a
AM
138822002-09-07 Alan Modra <amodra@bigpond.net.au>
13883
fea76d82
AM
13884 * config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
13885
93638d7a
AM
13886 * doc/tm.texi (TARGET_ASM_ASSEMBLE_VISIBILITY): Describe.
13887 * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
13888 (TARGET_ASM_OUT): Add the above here.
13889 * target.h (struct gcc_target): Add "visibility" field.
13890 * varasm.c (maybe_assemble_visibility): Call targetm visibility func.
13891 * config/rs6000/rs6000.c (rs6000_assemble_visibility): New function.
13892 (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
13893 (rs6000_legitimize_reload_address, first_reg_to_save): Formatting.
13894
370ce32a
ZL
138952002-09-06 Ziemowit Laski <zlaski@apple.com>
13896
13897 * c-lang.c (objc_is_id): New stub.
13898 * c-tree.h (objc_is_id): New forward declaration.
13899 * c-typeck.c (build_c_cast): Do not strip protocol
13900 qualifiers from 'id' type.
13901 * objc/objc-act.c (objc_comptypes): Correct handling
13902 of protocol qualifiers.
13903 (objc_is_id): New.
13904
942579db
JL
13905Fri Sep 6 13:10:08 2002 Jeffrey A Law (law@redhat.com)
13906
54c93c30 13907 * pentium.md (pentium-firstvboth): Fix typo.
942579db 13908
c4dfc70c
DD
139092002-09-06 Dhananjay Deshpande <dhananjayd@kpit.com>
13910
13911 * h8300.c (enum shift_alg): Move to earlier in h8300.c.
13912 (enum shift_type, enum h8_cpu): Likewise.
13913 (INL, ROT, LOP, SPC macros): Likewise.
13914 (shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise. Lose
13915 const designator.
13916 (h8300_init_once): Update shift_alg_{qi,hi,si} to use more
13917 space efficient algorithms when optimize for codesize.
13918
5873a4c1
NP
13919Fri Sep 6 16:35:32 2002 Nicola Pero <n.pero@mi.flashnet.it>
13920
13921 Fix PR/1727 and long-standing failing testcase
13922 objc/formal-protocol-6.m.
13923 * objc-act.c (build_protocol_expr): If compiling for the GNU
13924 runtime, create a list of Protocol statically allocated instances
13925 if it doesn't exist, then add the Protocol object to this same
13926 list.
13927 (get_objc_string_decl): Fixed typo/bug - TREE_VALUE had been used
13928 instead of TREE_CHAIN.
13929
e30d4c82
NP
13930Fri Sep 6 16:17:33 2002 Nicola Pero <n.pero@mi.flashnet.it>
13931
13932 * objc/objc-act.c (dump_interface): Enlarged the char * buffer to
13933 10k. Fixed category dumping - print out category names with the
13934 proper syntax. Print '@end\n' and not '\n@end' at the end of the
13935 interface.
22d4398d 13936 (finish_objc): Fixed the -gen-decls option. It was printing out
e30d4c82
NP
13937 only the last class. Dump an interface declaration of all classes
13938 being compiled instead.
13939
fcd53748
JT
139402002-09-06 Jason Thorpe <thorpej@wasabisystems.com>
13941
2567406a
JH
13942 * config/arm/arm-protos.h (arm_gen_return_addr_mask): New
13943 prototype.
fcd53748
JT
13944 * config/arm/arm.c (arm_gen_return_addr_mask): New function.
13945 * config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
13946 if not APCS26 and not Thumb or ARMv4-or-higher. Use gen_int_mode
13947 rather than GEN_INT.
13948 * config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
13949 (return_addr_mask, *check_arch2): New.
13950
96fd3851
UW
139512002-09-06 Ulrich Weigand <uweigand@de.ibm.com>
13952
2567406a 13953 * config/s390/s390.md ("*adddi3_cc", "*adddi3_cconly",
96fd3851 13954 "*adddi3_cconly2", "*adddi3_64", "*adddi3_31", "adddi3",
2567406a 13955 "*addsi3_carry1_cc", "*addsi3_carry1_cconly",
96fd3851
UW
13956 "*addsi3_carry2_cc", "*addsi3_carry2_cconly",
13957 "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2", "addsi3",
2567406a 13958 "adddf3", "*adddf3", "*adddf3_ibm",
96fd3851
UW
13959 "addsf3", "*addsf3", "*addsf3_ibm",
13960 "muldi3", "mulsi3", "mulsidi3",
13961 "muldf3", "*muldf3", "*muldf3_ibm",
13962 "mulsf3", "*mulsf3", "*mulsf3_ibm",
13963 "*anddi3_cc", "*anddi3_cconly", "anddi3",
13964 "*andsi3_cc", "*andsi3_cconly", "andsi3",
13965 "*iordi3_cc", "*iordi3_cconly", "iordi3",
13966 "*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
13967 "*xordi3_cc", "*xordi3_cconly", "xordi3",
13968 "*xorsi3_cc", "*xorsi3_cconly", "xorsi3"): Use "nonimmediate_operand"
13969 instead of "register_operand" as predicate for "%0" operand.
13970
22252625
JJ
139712002-09-06 Jakub Jelinek <jakub@redhat.com>
13972
13973 * configure.in (HAVE_AS_OFFSETABLE_LO10): Use -xarch=v9
13974 unconditionally when gcc_cv_as_flags64 checks are gone.
13975 * configure: Rebuilt.
13976
bc401279
AM
139772002-09-06 Alan Modra <amodra@bigpond.net.au>
13978
13979 * config/rs6000/rs6000.md (extzvsi_internal2): Revert most of
13980 2002-07-26 change. Comment.
13981
b3fbfc07
KG
139822002-09-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13983
13984 * frv.c (frv_unique_section, frv_select_section,
13985 frv_select_rtx_section): Delete.
13986 (frv_in_small_data_p): New.
13987 (TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_SECTION,
13988 TARGET_ASM_SELECT_RTX_SECTION): Delete.
13989 (TARGET_IN_SMALL_DATA_P): Define.
13990
41e34bab
DJ
139912002-09-05 Dale Johannesen <dalej@apple.com>
13992
13993 * reload1.c (reload): Retain only those memory clobbers
13994 added for variable-array handling.
13995
dc0ba55a
JT
139962002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
13997
13998 * config/arm/arm.c (arm_return_in_memory): Implement ATPCS
2567406a 13999 return-in-memory rules.
dc0ba55a
JT
14000 * config/arm/arm.h (ARM_FLAG_ATPCS, TARGET_ATPCS): Define.
14001
dd19d142
DE
140022002-09-05 David Edelsohn <edelsohn@gnu.org>
14003
14004 * config/rs6000/xcoff.h (HOT_TEXT_SECTION_NAME): Delete.
14005 (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Delete.
14006
3717da94
JT
140072002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
14008
14009 * real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
14010 not a compile-time constant for the non-IBM case.
14011 * config/arm/arm-protos.h (arm_float_words_big_endian): New
2567406a 14012 prototype.
3717da94 14013 * config/arm/arm.c (arm_float_words_big_endian): New function.
b5b620a4 14014 * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__
2567406a
JH
14015 if TARGET_VFP and not TARGET_HARD_FLOAT.
14016 (ARM_FLAG_VFP, TARGET_VFP): Define.
3717da94
JT
14017 (FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
14018
225cee28
DE
140192002-09-05 David Edelsohn <edelsohn@gnu.org>
14020
14021 * doc/install.texi: Correct text of s390-*-linux* and s390x-*-linux*
14022 URLs. Fix AIX wording.
14023
c72bfda7
SS
140242002-09-05 Stan Shebs <shebs@apple.com>
14025
14026 * config/rs6000/rs6000.c (rs6000_override_options): Make -fpic and
14027 -fPIC equivalent on Darwin.
14028
3578cf63
R
14029Thu Sep 5 16:27:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
14030
14031 * sh.c (sh_expand_builtin): Return early if encountering an
14032 error_mark for a type.
14033
7974fe63
UW
140342002-09-05 Ulrich Weigand <uweigand@de.ibm.com>
14035
14036 * config/s390/s390.c (s390_expand_plus_operand): Do not require
14037 double-word scratch register.
14038 config/s390/s390.md ("reload_indi", "reload_insi"): Adapt.
14039
2567406a 14040 ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem",
7974fe63
UW
14041 "*cli"): Replace s_operand by memory_operand.
14042 ("cmpstrdi", "cmpstrsi"): Replace s_operand by general_operand.
14043
f8cb5851
KH
140442002-09-05 Kazu Hirata <kazu@cs.umass.edu>
14045
14046 * config/h8300/h8300.c (asm_file_start): Add a missing
14047 semicolon.
14048
4977bab6
ZW
140492002-09-04 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
14050
14051 * c-typeck.c (build_function_call): Remove unused variable(s).
14052 (build_c_cast): Likewise.
14053 * calls.c (rtx_for_function_call): Likewise.
14054 * cfglayout.c (duplicate_insn_chain): Likewise.
14055 * cfgloop.c (flow_loop_nodes_find): Likewise.
14056 * cfgrtl.c (split_edge): Likewise.
14057 * df.c (df_ref_create): Likewise.
14058 * except.c (expand_end_catch): Likewise.
14059 * expr.c (emit_push_insn, store_constructor, expand_expr): Likewise.
14060 * function.c (emit_return_into_block): Likewise.
14061 (reposition_prologue_and_epilogue_notes): Likewise.
14062 * gengtype.c (get_file_basename, write_gc_structure_fields): Likewise.
14063 * combine.c (subst_prev_insn, need_refresh): Remove.
14064 * dwarf2out.c (primary_filename): Remove.
14065 * final.c (new_block): Remove.
14066 * gcse.c (orig_bb_count): Remove.
14067
140682002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14069
14070 * dsp16xx-protos.h (dsp16xx_compare_gen): Change to bool.
14071 * dsp16xx.c (dsp16xx_compare_gen): Likewise.
14072 * dsp16xx.md: Treat dsp16xx_compare_gen as a bool. Call functions
14073 directly instead of using a function pointer.
14074
5fc0e5df
KW
140752002-09-04 Krister Walfridsson <cato@df.lth.se>
14076
14077 * config/i386/i386.h (GOT_SYMBOL_NAME): Define.
14078 * config/i386/i386.c (output_set_got): Use GOT_SYMBOL_NAME.
14079 (ix86_output_addr_diff_elt) Likewise.
14080 (x86_output_mi_thunk) Likewise.
14081 * config/i386/netbsd.h (GOT_SYMBOL_NAME): Redefine.
14082
f4b488fd
KG
140832002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14084
14085 * frv.c (frv_encode_section_info): Fix error in last change.
14086
0e5dbd9b
DE
140872002-09-04 David Edelsohn <edelsohn@gnu.org>
14088
14089 * config/rs6000/rs6000.c (rs6000_flag_pic): New variable.
14090 (rs6000_elf_encode_section_info): ATTRIBUTE_UNUSED.
14091 (TARGET_BINDS_LOCAL_P): Define.
14092 (rs6000_override_options): Save original flag_pic value.
14093 (rs6000_elf_select_section): Call default_elf_select_section_1.
14094 (rs6000_elf_unique_section): Call default_unique_section_1.
14095 (rs6000_elf_in_small_data_p): New function.
14096 (rs6000_xcoff_asm_named_section): Determine storage mapping class.
14097 (rs6000_xcoff_select_section): Update based on defaults.
14098 (rs6000_xcoff_unique_section): Set to basic name if not common.
14099 (rs6000_binds_local_p): New function.
14100 * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set
14101 targetm.have_srodata_section if SDATA_EABI.
14102 (TARGET_IN_SMALL_DATA_P): Define.
14103
f57f9cb8
DJ
141042002-09-04 Dale Johannesen <dalej@apple.com>
14105
14106 * varasm.c (struct rtx_const, decode_rtx_const):
14107 Make veclo and vechi fields not share storage.
14108
ed6cc1f5
R
14109Thu Sep 5 00:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
14110
14111 * loop.c (scan_loop): Don't mark separate insns out of a libcall
14112 for moving.
14113 (move_movables): Abort if we see the first insn of a libcall.
14114
ab5e2615
RH
141152002-09-04 Richard Henderson <rth@redhat.com>
14116
14117 * builtin-types.def (BT_FN_FLOAT): New.
14118 (BT_FN_DOUBLE, BT_FN_LONG_DOUBLE): New.
14119 * builtins.def (BUILT_IN_INF, BUILT_IN_INFF, BUILT_IN_INFL,
14120 BUILT_IN_HUGE_VAL, BUILT_IN_HUGE_VALF, BUILT_IN_HUGE_VALL): New.
14121 * builtins.c (fold_builtin_inf): New.
14122 (fold_builtin): Call it.
14123 * real.c (ereal_inf): New.
14124 * real.h: Declare it.
14125 * doc/extend.texi: Document new builtins.
14126
9beb7d20
RH
141272002-09-04 Richard Henderson <rth@redhat.com>
14128
14129 * cse.c (cse_insn): Avoid subreg games if the equivalence
14130 is already in the proper mode.
14131
29984e05
EB
141322002-09-04 Eric Botcazou <ebotcazou@multimania.com>
14133
14134 PR c/7102
14135 * optabs.c (expand_binop): Convert CONST_INTs in all cases.
14136
8d46398e
JDA
141372002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
14138
14139 * pa.md (setccfp0, setccfp1): New patterns.
14140
14966b94
KG
141412002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14142
14143 * frv-protos.h (frv_init_builtins, frv_expand_builtin,
14144 frv_select_section, frv_select_rtx_section,
14145 frv_encode_section_info, frv_unique_section): Delete.
14146 * frv.c: Update for target hooks.
14147 * frv.h (STRIP_NAME_ENCODING, SLOW_ZERO_EXTEND, SELECT_SECTION,
14148 SELECT_RTX_SECTION, ENCODE_SECTION_INFO, UNIQUE_SECTION,
14149 EASY_DIV_EXPR, MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Delete.
14150
c8bf1a1a
KG
141512002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14152
14153 * ip2k-protos.h (function_prologue, function_epilogue,
14154 encode_section_info): Update to match target hook specification.
14155 * ip2k.c: Wrap `MDR' code in IP2K_MD_REORG_PASS.
14156 (function_prologue, function_epilogue, encode_section_info):
14157 Update to match target hook specification.
14158 * ip2k.h (SELECT_SECTION, SELECT_RTX_SECTION, ASM_OPEN_PAREN,
14159 ASM_CLOSE_PAREN, EASY_DIV_EXPR): Delete.
14160 (NOTICE_UPDATE_CC): Cast to void.
14161 * ip2k.md: Add defaults in switch statements.
14162
0484cb35
JJ
141632002-09-04 Janis Johnson <janis187@us.ibm.com>
14164
14165 * doc/trouble.texi (Interoperation): Update information about C++ ABI
14166 issues.
14167
3e62bd08
JT
141682002-09-04 Jason Thorpe <thorpej@wasabisystems.com>
14169
14170 * config/sparc/t-netbsd64: Disable multilib for now.
14171
275b6d80
DE
141722002-09-04 David Edelsohn <edelsohn@gnu.org>
14173
14174 * target-def.h (TARGET_HAVE_SRODATA_SECTION): New macro.
14175 * target.h (gcc_target): Add have_srodata_section member.
14176 * varasm.c (section_category): Add SECCAT_SRODATA.
14177 (categorize_decl_for_section): Return SECCAT_SRODATA for sdata if
14178 READONLY_SDATA_SECTION defined.
14179 (decl_readonly_section_1): True for SECCAT_SRODATA also.
14180 (default_elf_select_section_1): Map SECCAT_SRODATA to .sdata2.
14181 (default_unique_section_1): Likewise.
14182
015b1ad1
JDA
141832002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
14184
14185 * expr.c (emit_group_load): Revise to allow splitting TCmode source
14186 into DImode pieces.
14187
14188 * pa-64.h (LONG_DOUBLE_TYPE_SIZE): Define to 128.
14189 * pa64-regs.h (CLASS_CANNOT_CHANGE_MODE_P): Inhibit changes from SImode
14190 for floating-point register class.
14191 * pa.c (function_arg): Fix handling of modes wider than one word for
14192 TARGET_64BIT.
14193
b10f2187
R
14194Wed Sep 4 18:48:10 2002 J"orn Rennecke <joern.rennecke@superh.com>
14195
14196 * combine.c (make_compound_operation): Don't generate zero / sign
14197 extensions in floating point modes.
14198
478c9e72
JJ
141992002-09-04 Janis Johnson <janis187@us.ibm.com>
14200
14201 * doc/c-tree.texi: Fix overfull hboxes.
14202 * doc/cppopts.texi: Ditto.
14203 * doc/extend.texi: Ditto.
14204 * doc/gty.texi: Ditto.
14205 * doc/invoke.texi: Ditto.
14206 * doc/makefile.texi: Ditto.
14207 * doc/rtl.texi: Ditto.
14208 * doc/standards.texi: Ditto.
14209 * doc/tm.texi: Ditto.
14210
77e8a0cc
RH
142112002-09-04 Richard Henderson <rth@redhat.com>
14212
14213 * c-common.c (builtin_define_with_hex_fp_value): New.
14214 (builtin_define_float_constants): Use it. Fix H_FLOAT mant_dig.
14215
a9c60612
JJ
142162002-09-04 Janis Johnson <janis187@us.ibm.com>
14217
14218 * doc/invoke.texi (-fshort-wchar): Move to Code Generation Options.
14219 (-fpcc-struct-return, -freg-struct-return, -fshort-enums,
14220 -fshort-double, -fshort-wchar, -fpack-struct, -fleading-underscore):
14221 Warn that these options can break ABI compatibility.
14222
4b67a274
RH
142232002-09-04 Richard Henderson <rth@redhat.com>
14224
14225 * real.c (ereal_to_decimal): Add digits parameter.
14226 * real.h (REAL_VALUE_TO_DECIMAL): Remove format; add digits parameter.
14227 * c-pretty-print.c (pp_c_real_literal): Update call.
14228 * print-rtl.c (print_rtx): Likewise.
14229 * print-tree.c (print_node_brief, print_node): Likewise.
14230 * sched-vis.c (print_value): Likewise.
14231 * config/arc/arc.c (arc_print_operand): Likewise.
14232 * config/c4x/c4x.c (c4x_print_operand): Likewise.
14233 * config/i370/i370.h (PRINT_OPERAND): Likewise.
14234 * config/i386/i386.c (print_operand): Likewise.
14235 * config/i960/i960.c (i960_print_operand): Likewise.
14236 * config/ip2k/ip2k.c (asm_output_float): Likewise.
14237 * config/m32r/m32r.c (m32r_print_operand): Likewise.
14238 * config/m68hc11/m68hc11.c (print_operand): Likewise.
14239 * config/m68k/hp320.h (PRINT_OPERAND, ASM_OUTPUT_FLOAT_OPERAND,
14240 ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
2567406a 14241 * config/m68k/m68k.h (ASM_OUTPUT_FLOAT_OPERAND,
4b67a274
RH
14242 ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
14243 * config/m68k/sun2o4.h (ASM_OUTPUT_FLOAT_OPERAND,
14244 ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
14245 * config/m68k/sun3.h (ASM_OUTPUT_FLOAT_OPERAND,
14246 ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
14247 * config/mips/mips.c (print_operand): Likewise.
14248 * config/ns32k/ns32k.c (print_operand): Likewise.
14249 * config/pdp11/pdp11.h (PRINT_OPERAND): Likewise.
14250 * config/vax/vax.h (PRINT_OPERAND): Likewise.
14251 * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Update docs.
14252
01abf342
BW
142532002-09-04 Bob Wilson <bob.wilson@acm.org>
14254
14255 * config/xtensa/elf.h (TARGET_SECTION_TYPE_FLAGS): Define to
14256 xtensa_multibss_section_type_flags.
14257 * config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Define.
14258
cd42d3df
RH
142592002-09-04 Richard Henderson <rth@redhat.com>
14260
14261 * doc/install-old.texi: Don't mention enquire.
14262 * doc/sourcebuild.texi: Update float.h description.
14263
502e6d5a
R
14264Wed Sep 4 11:22:14 2002 J"orn Rennecke <joern.rennecke@superh.com>
14265
14266 * sh.md (mperm_w_little, mperm_w_big): Supply mode for zero_extract.
14267
4977bab6
ZW
142682002-09-03 Roger Sayle <roger@eyesopen.com>
14269
14270 * builtins.c (build_function_call_expr): Remove prototype, export
14271 as non-static and add a comment above function definition.
14272 (builtin_mathfn_code): New function to check for math builtins.
14273 (fold_builtin): Optimize sqrt(0.0) as 0.0, sqrt(1.0) as 1.0,
14274 exp(0.0) as 1.0, and log(1.0) as 0.0. Optimize exp(log(x)) and
14275 log(exp(x)) as x. Optimize sqrt(exp(x)) as exp(x/2.0) and
14276 log(sqrt(x)) as log(x)/2.0.
14277
14278 * tree.h: Prototype build_function_call_expr and builtin_mathfn_code
14279 in new "builtins.c" section. Place the build_range_type prototype
14280 with the other prototypes from "tree.c".
14281
14282 * fold-const.c (fold) [ABS_EXPR]: Fold fabs(sqrt(x)) as sqrt(x)
14283 and fabs(exp(x)) as exp(x). [MULT_EXPR]: Fold sqrt(x)*sqrt(y)
14284 as sqrt(x*y) and exp(x)*exp(y) as exp(x+y). [RDIV_EXPR]: Fold
14285 x/exp(y) as x*exp(-y).
14286
2cc9fb4c
DE
142872002-09-03 David Edelsohn <edelsohn@gnu.org>
14288
14289 * varasm.c (default_section_type_flags): Append _1 to name with
14290 shlib parameter. Use original name to call new function with
14291 implicit flag_pic.
14292 (decl_readonly_section): Likewise.
14293 (default_elf_select_section): Likewise.
14294 (default_unique_section): Likewise.
14295 (default_bind_local_p): Likewise.
14296 (categorize_decl_for_section): Add shlib parameter to use in place
14297 of implicit flag_pic.
14298 * output.h: Declare new functions with _1 and shlib argument.
14299
7c19f816
JJ
143002002-09-03 Janis Johnson <janis187@us.ibm.com>
14301
8c085f6f
JJ
14302 * doc/install.texi: Fix typos, formatting problems, and obvious
14303 overfull/underfull boxes.
14304
7c19f816
JJ
14305 * Makefile.in (TEXI_GCC_FILES): Add compat.texi.
14306 * doc/gcc.texi (Top): Add new chapter, Binary Compatibility, and
14307 include its file, compat.texi.
14308 * doc/compat.texi: New file with new chapter, Binary Compatibility.
14309
79ba5e3b
NB
143102002-09-03 Neil Booth <neil@daikokuya.co.uk>
14311
14312 Debian BTS Bug #157416
14313 * cpphash.h (FIRST, LAST, CUR, RLIMIT): Fix definitions.
14314 * cpplib.c (destringize_and_run): Kludge around getting
14315 tokens from in-progress macros.
14316 (_cpp_do__Pragma): Simplify.
14317
57016b47
SE
143182002-09-03 Steve Ellcey <sje@cup.hp.com>
14319
14320 * config/ia64/ia64.h (EXTRA_SPECS): Remove cpp_cpu.
14321 (CPP_CPU_SPEC): Remove.
14322 (TARGET_CPU_CPP_BUILTINS): New.
14323 * config/ia64/hpux.h (CPP_PREDEFINES): Remove.
14324 (CPP_SPEC): Remove.
14325 (TARGET_OS_CPP_BUILTINS): New.
14326 * config/ia64/linux.h (CPP_PREDEFINES): Remove.
14327 (TARGET_OS_CPP_BUILTINS): New.
14328 * config/ia64/aix.h (CPP_SPEC): Move some stuff to
14329 TARGET_OS_CPP_BUILTINS.
14330 (CPP_PREDEFINES): Remove.
14331 (CPLUSPLUS_CPP_SPEC): Remove.
14332 (TARGET_OS_CPP_BUILTINS): New.
14333
d57a4b98
RH
143342002-09-03 Richard Henderson <rth@redhat.com>
14335
14336 * Makefile.in (USER_H): Add ginclude/float.h.
14337 (FLOAT_H): Remove.
14338 (stmp-int-hdrs, install-mkheaders): Don't handle FLOAT_H.
14339 (mostlyclean): Don't remove float.h intermediate files.
14340 (distclean): Don't remove float.h.
14341 * config.gcc: Remove all float_format references.
14342 * configure.in (float_format, float_h_file): Remove.
14343
14344 * c-common.c: Include tree-inline.h.
14345 (builtin_define_with_int_value): New.
14346 (builtin_define_type_precision): Use it.
14347 (builtin_define_float_constants): New.
14348 (cb_register_builtins): Use it. Define __FLT_RADIX__ and
14349 __FLT_EVAL_METHOD__.
14350 * defaults.h (TARGET_FLT_EVAL_METHOD): New.
14351 * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): New.
14352 * config/m68k/m68k.h (TARGET_FLT_EVAL_METHOD): New.
14353 * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Mention moto 96-bit format.
14354 (TARGET_FLT_EVAL_METHOD): New.
14355
14356 * config/float-c4x.h, config/float-i128.h, config/float-i32.h,
14357 config/float-i386.h, config/float-i64.h, config/float-m68k.h,
14358 config/float-sh.h, config/float-sparc.h, config/float-vax.h: Remove.
14359 * ginclude/float.h: New.
14360
527347f0
SS
143612002-09-03 Stan Shebs <shebs@apple.com>
14362
14363 * config/darwin.h (WARN_FOUR_CHAR_CONSTANTS): Remove, never used.
14364 (DWARF2_DEBUGGING_INFO): Remove until assembler accepts Dwarf-2.
14365 (PREFERRED_DEBUGGING_TYPE): Ditto.
14366 (ASM_OUTPUT_IDENT): Remove empty definition.
14367
34c1864f
SE
143682002-09-03 Steve Ellcey <sje@cup.hp.com>
14369
14370 * config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and
14371 cxx_target.
14372 * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Register pragma
14373 handling routine for builtin pragma.
14374 * config/ia64/ia64-protos.h (ia64_hpux_handle_builtin_pragma):
14375 Registered pragma handling routine.
14376 * ia64-c.c (ia64_hpux_handle_builtin_pragma): Ditto.
14377 (ia64_hpux_add_pragma_builtin) New subroutine used by above.
14378 If builtin pragma seen for math routine and C89 conformance is
14379 requested use different math function in order to set errno.
14380 * t-ia64 (ia64-c.o): Add new rule for new file.
14381
9b7c75b9
UW
143822002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
14383
14384 * config/s390/s390.md ("movti"): Add Q->Q alternative.
14385 ("*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64",
14386 "movqi", "*movdf_64", "*movdf_31", "*movsf"): Likewise.
2567406a
JH
14387
14388 ("*movti_ss", "*movdi_ss", "*movsi_ss", "*movdf_ss",
9b7c75b9
UW
14389 "*movsf_ss"): Remove.
14390
710ba35f
JDA
143912002-09-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
14392
14393 * pa32-regs.h (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P):
14394 Delete macros.
14395
ff970081
AD
143962002-09-03 Arati Dikey <aratid@kpit.com>
14397
14398 * h8300.c (asm_file_start): Corrected optimization comment.
14399
b50d021d
SS
144002002-09-03 Stan Shebs <shebs@apple.com>
14401
14402 * c-lang.c (recognize_objc_keyword): Remove, no longer used.
14403 * c-tree.h (recognize_objc_keyword): Remove decl.
14404 * c-typeck.c (comp_target_types): Update a comment.
14405
b808c04c
UW
144062002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
14407
14408 * config/s390/s390.c (s390_decompose_address): Remove STRICT parameter
14409 and register validity checks.
14410 (general_s_operand): Adapt to s390_decompose_address interface change.
14411 (q_constraint): Likewise.
14412 (s390_expand_plus_operand): Likewise.
14413 (legitimiate_address_p): Likewise.
14414 (legitimate_la_operand_p): Likewise.
14415 (legitimize_la_operand): Likewise.
14416 (print_operand_address): Likewise.
14417 (print_operand): Likewise.
14418
ee453219
NP
14419Tue Sep 3 11:32:14 2002 Nicola Pero <n.pero@mi.flashnet.it>
14420
14421 PR objc/5956:
14422 * objc/objc-act.c (build_typed_selector_reference): Fix typo which
2567406a
JH
14423 was causing the new selector never to match the existing ones
14424 (Patch by Alexander Malmberg <alexander@malmberg.org>).
ee453219 14425
d82283d5
GS
144262002-09-03 Graham Stott <graham.stott@btinternet.com>
14427
14428 * config/i386/i386.md ("femms"): Add "memory" attr "none".
14429
144302002-09-03 Graham Stott <graham.stott@btinternet.com>
c7a009a2
GS
14431
14432 * expr.c (expand_expr): Remove extraneous comment and code.
14433
4977bab6
ZW
144342002-09-02 Nathan Sidwell <nathan@codesourcery.com>
14435
14436 * stor-layout (finish_builtin_struct): Renamed and moved from c++
14437 frontend. Take chain of fields. Allow NULL alignment type.
14438 * tree.h (finish_builtin_struct): Declare.
14439
144402002-09-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14441
14442 * config/alpha/alpha.c config/alpha/alpha.h config/alpha/alpha.md
14443 config/alpha/elf.h config/alpha/unicosmk.h config/alpha/vms.h
14444 config/arc/arc.c config/arc/arc.h config/arm/aout.h
14445 config/arm/arm.c config/arm/arm.h config/arm/arm.md
14446 config/avr/avr.h config/d30v/d30v.h config/dbxcoff.h
14447 config/dbxelf.h config/elfos.h config/fr30/fr30.h config/frv/frv.h
14448 config/i386/i386.c config/i386/i386.md config/i386/sco5.h
14449 config/ia64/ia64.h config/ip2k/ip2k.h config/m68hc11/m68hc11.md
14450 config/m68k/hp320.h config/m68k/m68k.c config/m68k/m68k.md
14451 config/m68k/mot3300.h config/m68k/sgs.h config/m68k/tower-as.h
14452 config/m88k/m88k.c config/m88k/m88k.h config/mcore/mcore-pe.h
14453 config/mcore/mcore.c config/mips/mips.c config/mips/mips.h
14454 config/ns32k/ns32k.md config/pa/pa-linux.h config/pa/pa.c
14455 config/pa/pa.h config/pa/pa.md config/romp/romp.h
14456 config/rs6000/linux64.h config/rs6000/lynx.h
14457 config/rs6000/rs6000.c config/rs6000/sysv4.h config/rs6000/xcoff.h
14458 config/s390/s390.c config/s390/s390.md config/sh/sh.c
14459 config/sparc/sparc.c config/sparc/sysv4.h
14460 config/stormy16/stormy16.h dbxout.c defaults.h dwarf2out.c
14461 dwarfout.c except.c final.c varasm.c vmsdbgout.c: Replace
14462 ASM_OUTPUT_INTERNAL_LABEL macro with a call to the target hook.
14463
14464 * doc/tm.texi: Update docs.
14465 * default.h (ASM_OUTPUT_INTERNAL_LABEL): Don't define.
14466 * system.h (ASM_OUTPUT_INTERNAL_LABEL): Poison.
14467
144682002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14469
14470 * Makefile.in (sdbout.o, insn-output.o): Depend on $(TARGET_H).
14471 * arc.c (arc_internal_label): New function.
14472 (TARGET_ASM_INTERNAL_LABEL): Set.
14473 * arc.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
14474 * arm.c (arm_internal_label): New function.
14475 (TARGET_ASM_INTERNAL_LABEL): Set.
14476 * arm.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
14477 * arm/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
14478 * i370.c (i370_internal_label): New function.
14479 (TARGET_ASM_INTERNAL_LABEL): Set.
14480 * i370.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
14481 * m68k/hp320.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
14482 * m68k.c (m68k_hp320_internal_label): New function.
14483 (TARGET_ASM_INTERNAL_LABEL): Set.
14484 * m88k.c (m88k_internal_label): New function.
14485 (TARGET_ASM_INTERNAL_LABEL): Set.
14486 * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
14487 * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Set to target hook.
14488 * genoutput.c (output_prologue): Include target.h in output file.
14489 * output.h (default_internal_label): Declare.
14490 * sdbout.c: Include target.h.
14491 * target-def.h (TARGET_ASM_INTERNAL_LABEL): Set and add to
14492 TARGET_ASM_OUT.
14493 * target.h (internal_label): Add to struct gcc_target.
14494 * varasm.c (default_internal_label): New function.
14495
144962002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14497
14498 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
14499 * avr.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14500 * c4x.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14501 * cris.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14502 * d30v.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14503 * darwin.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14504 * dsp16xx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14505 * elfos.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14506 * h8300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14507 * i386/att.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14508 * i386/bsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14509 * i386/i386-coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14510 * i386/lynx-ng.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14511 * i386/lynx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14512 * i386/sco5.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14513 * i960/i960.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14514 * m68k/3b1.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14515 * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14516 * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14517 * m68k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14518 * m68k/mot3300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14519 * m68k/tower-as.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14520 * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14521 * mcore.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14522 * mips.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14523 * mmix-protos.h (mmix_asm_output_internal_label): Likewise.
14524 * mmix.c (mmix_asm_output_internal_label): Likewise.
14525 * mmix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14526 * ns32k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14527 * pa.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14528 * pdp11.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14529 * romp.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14530 * rs6000/xcoff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14531 * sh/coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14532 * sh/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14533 * sparc/freebsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14534 * sparc/linux.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14535 * sparc/linux64.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14536 * sparc/netbsd-elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14537 * sparc/pbd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14538 * sparc/sol2.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14539 * sparc.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14540 * sparc/vxsim.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14541 * stormy16.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14542 * svr3.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14543 * vax.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
14544
14545 * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Define.
14546
98c0d8d1
RH
145472002-08-31 Richard Henderson <rth@redhat.com>
14548
14549 * expr.c (block_move_libcall_safe_for_call_parm): Fix thinko.
14550
a5f3f0ab
JDA
145512002-08-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
14552
14553 * pa.c (pa_globalize_label): Add ATTRIBUTE_UNUSED to prototype.
14554
38ec83b1
RH
145552002-08-30 Richard Henderson <rth@redhat.com>
14556
c9989d09 14557 PR opt/7515
38ec83b1
RH
14558 * c-objc-common.c: Include target.h.
14559 (c_cannot_inline_tree_fn): Don't auto-inline functions that
14560 don't bind locally. Factor setting DECL_UNINLINABLE.
14561 * Makefile.in (c-objc-common.o): Update.
14562
4c64396e
JJ
145632002-08-30 Janis Johnson <janis187@us.ibm.com>
14564
14565 * doc/install.texi (Configuration, Building): Fix a typo and
14566 some formatting directives.
14567
4226378a
PK
145682002-08-30 Paul Koning <pkoning@equallogic.com>
14569
14570 * doc/c-tree.texi (RDIV_EXPR): Fix typo.
14571 * doc/rtl.texi (post_modify): Remove misplaced text, remove "not
14572 implemented" note.
14573 * doc/md.texi (IP2K): Move machine-specific constraints before MIPS
14574 for alphabetic order.
14575 * doc/tm.texi (TARGET_FLOAT_FORMAT): Update description for
14576 VAX_FLOAT_FORMAT. Remove reference to HOST_FLOAT_FORMAT.
14577 (VAX_HALFWORD_ORDER): Document.
14578 (LARGEST_EXPONENT_IS_NORMAL): Remove note about being only for
14579 IEEE float format.
14580 (TARGET_SCHED_ISSUE_RATE): Reword reference to MAX_DFA_ISSUE_RATE.
14581 (ASM_OUTPUT_LABEL_REF): Fix font.
14582 (CASE_VECTOR_SHORTEN_MODE): Ditto.
14583
b8074dbe
DC
145842002-08-30 Denis Chertykov <denisc@overta.ru>
14585
14586 * config/ip2k/ip2k.c (ip2k_set_compare): Remove all const_double
14587 stuff.
14588 (ip2k_gen_unsigned_comp_branch): Handle CONST_INT and
14589 CONST_DOUBLE constants.
2567406a 14590
55f49e3d
JT
145912002-08-30 Jason Thorpe <thorpej@wasabisystems.com>
14592
14593 * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Move language-
14594 related defines to...
14595 (SUBTARGET_LANGUAGE_CPP_BUILTINS): ...here.
14596 * config/alpha/netbsd.h (SUBTARGET_LANGUAGE_CPP_BUILTINS): Redefine
14597 as a no-op.
14598
e1944073
KW
145992002-08-30 Krister Walfridsson <cato@df.lth.se>
14600
14601 * config/arm/arm.c (arm_asm_output_labelref): New function.
14602 * config/arm/arm.h (ASM_OUTPUT_LABELREF): Call arm_asm_output_labelref.
14603 * config/arm/arm-protos.h: Add prototype for arm_asm_output_labelref.
14604
6e92b3a1
RB
146052002-08-29 Rodney Brown <rbrown64@csc.com.au>
14606
14607 * doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual
14608 memory exhausted" workarounds.
14609
9d533cb5
GDR
146102002-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
14611
14612 * diagnostic.c (fancy_abort): Don't repeat "internal error".
14613 * toplev.c (crash_signal): Likewise.
14614
1f676100
NP
14615Fri Aug 30 00:33:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
14616
14617 * doc/cpp.texi (__NEXT_RUNTIME__): Extended documentation.
14618 * doc/invoke.texi (-fnext-runtime, -Wno-protocol, -Wselector):
14619 Extended, updated documentation.
14620 (-Wundeclared-selector): Documented.
14621
23532de9
JT
146222002-08-29 Jason Thorpe <thorpej@wasabisystems.com>
14623
14624 * config/chorus.h: Consistently define *_DEBUGGING_INFO with
14625 the value 1. Do not undef before defining.
14626 * config/darwin.h: Likewise.
14627 * config/dbx.h: Likewise.
14628 * config/dbxcoff.h: Likewise.
14629 * config/dbxelf.h: Likewise.
14630 * config/elfos.h: Likewise.
14631 * config/interix.h: Likewise.
14632 * config/lynx-ng.h: Likewise.
14633 * config/lynx.h: Likewise.
14634 * config/netware.h: Likewise.
14635 * config/psos.h: Likewise.
14636 * config/svr3.h: Likewise.
14637 * config/alpha/alpha.h: Likewise.
14638 * config/alpha/elf.h: Likewise.
14639 * config/alpha/vms.h: Likewise.
14640 * config/arc/arc.h: Likewise.
14641 * config/arm/aout.h: Likewise.
14642 * config/arm/coff.h: Likewise.
14643 * config/c4x/c4x.h: Likewise.
14644 * config/h8300/h8300.h: Likewise.
14645 * config/i386/cygwin.h: Likewise.
14646 * config/i386/djgpp.h: Likewise.
14647 * config/i386/gas.h: Likewise.
14648 * config/i386/gstabs.h: Likewise.
14649 * config/i386/i386-coff.h: Likewise.
14650 * config/i386/i386-interix.h: Likewise.
14651 * config/i386/sco5.h: Likewise.
14652 * config/i386/svr3dbx.h: Likewise.
14653 * config/i386/sysv3.h: Likewise.
14654 * config/i386/win32.h: Likewise.
14655 * config/i386/x86-64.h: Likewise.
14656 * config/i960/i960.h: Likewise.
14657 * config/ia64/ia64.h: Likewise.
14658 * config/ip2k/ip2k.h: Likewise.
14659 * config/m32r/m32r.h: Likewise.
14660 * config/m68k/3b1.h: Likewise.
14661 * config/m68k/3b1g.h: Likewise.
14662 * config/m68k/ccur-GAS.h: Likewise.
14663 * config/m68k/coff.h: Likewise.
14664 * config/m68k/hp2bsd.h: Likewise.
14665 * config/m68k/hp310g.h: Likewise.
14666 * config/m68k/hp320g.h: Likewise.
14667 * config/m68k/hp3bsd.h: Likewise.
14668 * config/m68k/hp3bsd44.h: Likewise.
14669 * config/m68k/linux-aout.h: Likewise.
14670 * config/m68k/m68k-aout.h: Likewise.
14671 * config/m68k/mot3300.h: Likewise.
14672 * config/m68k/netbsd.h: Likewise.
14673 * config/m68k/openbsd.h: Likewise.
14674 * config/m68k/pbb.h: Likewise.
14675 * config/m68k/plexus.h: Likewise.
14676 * config/m68k/sun2.h: Likewise.
14677 * config/m68k/sun3.h: Likewise.
14678 * config/m68k/tower-as.h: Likewise.
14679 * config/m68k/vxm68k.h: Likewise.
14680 * config/m88k/aout-dbx.h: Likewise.
14681 * config/m88k/m88k-aout.h: Likewise.
14682 * config/mcore/mcore-elf.h: Likewise.
14683 * config/mcore/mcore-pe.h: Likewise.
14684 * config/mips/elf.h: Likewise.
14685 * config/mips/elf64.h: Likewise.
14686 * config/mips/iris5gas.h: Likewise.
14687 * config/mips/iris6.h: Likewise.
14688 * config/mips/mips.h: Likewise.
14689 * config/mips/sni-gas.h: Likewise.
14690 * config/mmix/mmix.h: Likewise.
14691 * config/ns32k/netbsd.h: Likewise.
14692 * config/pa/pa64-hpux.h: Likewise.
14693 * config/romp/romp.h: Likewise.
14694 * config/rs6000/sysv4.h: Likewise.
14695 * config/rs6000/xcoff.h: Likewise.
14696 * config/sh/coff.h: Likewise.
14697 * config/sh/elf.h: Likewise.
14698 * config/sparc/linux64.h: Likewise.
14699 * config/sparc/liteelf.h: Likewise.
14700 * config/sparc/netbsd.h: Likewise.
14701 * config/sparc/openbsd.h: Likewise.
14702 * config/sparc/pbd.h: Likewise.
14703 * config/sparc/sp64-elf.h: Likewise.
14704 * config/sparc/sp86x-elf.h: Likewise.
14705 * config/sparc/sparc.h: Likewise.
14706 * config/vax/vax.h: Likewise.
14707 * config/vax/vaxv.h: Likewise.
14708
5e98fba2
DD
147092002-08-29 "Dhananjay R. Deshpande" <dhananjayd@kpit.com>
14710
14711 * h8300.c (shift_alg_hi): Various tweaks to improve performance
14712 of HImode shifts.
14713 (get_shift_alg): Corresponding changes.
14714
43852342
JDA
147152002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
14716
14717 * som.h (ALWAYS_STRIP_DOTDOT): Define to 1.
14718
44bb111a
RH
147192002-08-29 Richard Henderson <rth@redhat.com>
14720
14721 * expr.h (enum block_op_methods): New.
14722 (emit_block_move): Update prototype.
14723 * expr.c (block_move_libcall_safe_for_call_parm): New.
14724 (emit_block_move_via_loop): New.
14725 (emit_block_move): Use them. New argument METHOD.
14726 (emit_push_insn): Always respect the given alignment.
14727 (expand_assignment): Update call to emit_block_move.
14728 (store_expr, store_field, expand_expr): Likewise.
14729 * builtins.c (expand_builtin_apply): Likewise.
14730 (expand_builtin_memcpy, expand_builtin_va_copy): Likewise.
14731 * function.c (expand_function_end): Likewise.
14732 * config/sh/sh.c (sh_initialize_trampoline): Likewise.
14733 * config/sparc/sparc.c (sparc_va_arg): Likewise.
14734 * calls.c (expand_call, emit_library_call_value_1): Likewise.
14735 (save_fixed_argument_area): Use emit_block_move with
14736 BLOCK_OP_CALL_PARM instead of move_by_pieces.
14737 (restore_fixed_argument_area): Likewise.
14738 (store_one_arg): Fix alignment parameter to emit_push_insn.
14739
08b3d104
JDA
147402002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
14741
14742 * install.texi (hppa64-hp-hpux11*): Document installation procedure.
14743
ce4e9970 147442002-08-29 Catherine Moore <clm@redhat.com>
8376061d
CM
14745
14746 * config/v850/v850.h (MULDI3_LIBCALL, UCMPDI2_LIBCALL, CMPDI2_LIBCALL,
14747 NEGDI2_LIBCALL, INIT_TARGET_OPTABS, MASK_STRICT_ALIGN): Define.
14748 (PREDICATE_CODES): Include new predicates.
14749 (RTX_COSTS): Handle UMOD and UDIV. Tune MULT for v850e.
14750 (TARGET_SWITCHES): Add strict-align.
14751 (TARGET_STRICT_ALIGN): New.
2567406a 14752 (MASK_DEFAULT, STRICT_ALIGNMENT): Redefine.
8376061d
CM
14753 * config/v850/t-v850 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
14754 Define.
14755 (LIB1ASMFUNCS): Add v850_negdi2, v850_cmpdi2, v850_ucmpdi2,
14756 v850_muldi3.
14757 * config/v850/lib1funcs.asm (L_callt_save_r2_r29, L_return_r2_r29,
14758 L_callt_save_r2_r31, L_return_r2_r31,
14759 L_save_all_interrupt): Change addi to add.
14760 (L_save_interrupt, L_return_interrupt): Rework.
14761 (__return_r31): Correct .size directive.
14762 (mulsi3, divsi3, udivsi3, umodsi3, modsi3): Tune for v850e.
14763 (v850_negdi2, v850_cmpdi2, v850_ucmpdi2, v850_muldi3):
14764 New routines.
14765 * config/v850/v850.c (expand_prologue): Call
14766 gen_callt_save_interrupt, gen_callt_restore_all_interrupt,
14767 gen_callt_return_interrupt and gen_callt_save_all_interrupt.
14768 (reg_or_int9_operand): New predicate.
14769 (reg_or_const_operand): New routine.
14770 * config/v850/v850.md (return_interrupt): Changed from
14771 restore_interrupt.
14772 (callt_save_all_interrupt): Changed from save_all_interrupt_v850e.
14773 (callt_save_interrupt): Change save sequence.
14774 (callt_return_interrupt): New.
14775 (save_interrupt): Don't use runtime function for LONG_CALLS
14776 and TARGET_PROLOG_FUNCTION.
14777 (save_all_interrupt): Likewise.
14778 (mulsi3): Use new predicate.
14779 (moviscc): Disallow some combination of constants.
14780 Fix define_split for sasf insns, so that it will not generate bad
14781 code if operand0 and operand5 are the same.
14782 * config/v850/v850-protos.h: Prototype new predicates.
14783
4977bab6
ZW
147842002-08-29 Zack Weinberg <zack@codesourcery.com>
14785
14786 * config/rs6000/rs6000.c (processor_target_table): Add 405f.
14787 * config/rs6000/rs6000.h (ASM_CPU_SPEC): Likewise.
14788
585e661a
GDR
147892002-08-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
14790
14791 * c-common.c (builtin_define_type_precision): New function.
14792 (cb_register_builtins): Use it. Define __WCHAR_UNSIGNED__ is
14793 wchar_t is unsigned in C++.
14794 * doc/cpp.texi (Common Predefined Macros): Document
14795 __WCHAR_UNSIGNED__, __CHAR_BIT__, __WCHAR_BIT__, __SHRT_BIT__,
14796 __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
14797 __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
14798
bd8f9aec
SP
147992002-08-28 Sylvain Pion <pion@cs.nyu.edu>
14800
14801 * doc/invoke.texi (-Wreorder): Remove remaining pieces from the generic
14802 section. Mention that it is enabled by -Wall.
14803 (-Wall): Mention that there can be language-specific warnings as well.
14804 (-Wctor-dtor-privacy): Mention that it is enabled by default.
14805 (-Wnon-virtual-dtor): Mention that it is enabled by -Wall.
14806
58ab7171
R
14807Wed Aug 28 15:35:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
14808
14809 * sh.c (calc_live_regs): Save FPSCR_REG in an interrupt handler
14810 if it is ever live.
14811
14812 * sh.c (sh_handle_interrupt_handler_attribute): Reject interrupt_handler
14813 attribute for SHCOMPACT.
14814
14815 * sh.h (OVERRIDE_OPTIONS): If align_function isn't set, set it
14816 appropriately.
14817 (FUNCTION_BOUNDARY): Specify only the minimum alignment required
14818 by the ABI.
14819
14820 * sh.h (SH5_WOULD_BE_PARTIAL_NREGS): Also handle TImode case.
14821
27f4b67e
JT
148222002-08-28 Jason Thorpe <thorpej@wasabisystems.com>
14823
14824 * config.gcc (mips*-*-netbsd*): Set target_cpu_default to
14825 "MASK_GAS|MASK_ABICALLS".
14826 * config/mips/netbsd.h (TARGET_ENDIAN_DEFAULT)
14827 (TARGET_DEFAULT): Remove.
14828 (MACHINE_TYPE): Undefine before defining.
14829 (DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Remove.
14830
eca7f13c
MM
148312002-08-27 Mark Mitchell <mark@codesourcery.com>
14832
14833 * c-common.c (warn_abi): New variable.
14834 * c-common.h (warn_abi): Likewise.
14835 * c-opts.c (COMMAND_LINE_OPTIONS): Add -Wabi.
14836 (c_common_decode_option): Handle it.
7ee425e4 14837 * doc/invoke.texi: Document -Wabi.
2567406a 14838
ece4ce85
NP
14839Tue Aug 27 23:03:52 2002 Nicola Pero <n.pero@mi.flashnet.it>
14840
14841 * c-common.c (warn_undeclared_selector): New variable.
14842 * c-common.h (warn_undeclared_selector): Idem.
14843 * c-opts.c (c_common_decode_option): Set warn_undeclared_selector
14844 to on when -Wundeclared-selector is found.
14845 (COMMAND_LINE_OPTIONS): Added -Wundeclared-selector.
14846 * objc/objc-act.c (build_selector_expr): If
14847 warn_undeclared_selector is set, check that the selector has
14848 already been defined, and emit a warning if not.
14849
b4378319 148502002-08-27 Nick Clifton <nickc@redhat.com>
54c93c30
AE
14851 Catherine Moore <clm@redhat.com>
14852 Jim Wilson <wilson@cygnus.com>
14853
14854 * config.gcc: Add v850e-*-* target.
14855 Add --with-cpu= support for v850.
14856 * config/v850/lib1funcs.asm: Add v850e callt functions.
14857 * config/v850/v850.h: Add support for v850e target.
14858 * config/v850/v850.c: Add functions to support v850e target.
14859 * config/v850/v850-protos.h: Add prototypes for new functions in v850.c.
14860 * config/v850/v850.md: Add patterns for v850e instructions.
14861 * doc/invoke.texi: Document new v850e command line switches.
b4378319 14862
ef261fee
R
14863Tue Aug 27 18:30:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
14864 Aldy Hernandez <aldyh at redhat dot com>
14865
14866 * doc/tm.texi: Applied numerous fixes to the automaton based
14867 scheduler descrition.
14868
c60ee6f5
JH
14869Tue Aug 27 19:51:05 CEST 2002 Jan Hubicka <jh@suse.cz>
14870
14871 * i386.c (classify_argument): Handle variable sized objects.
14872
1985ef90
JH
14873Tue Aug 27 19:18:16 CEST 2002 Jan Hubicka <jh@suse.cz>
14874
14875 * i386.c (ix86_expand_int_movcc): Fix RTL sharing problem
14876
7acc97e0
JH
14877Tue Aug 27 18:01:45 CEST 2002 Jan Hubicka <jh@suse.cz>
14878
14879 * libgcc2.c (__bb_exit_func): Properly write the summarized statistics.
14880
23327dae
JH
14881Tue Aug 27 18:00:11 CEST 2002 Jan Hubicka <jh@suse.cz>
14882
14883 * i386.c (classify_argument): Properly compute word size of the analyzed object.
14884
c49439f1
R
14885Tue Aug 27 14:39:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
14886
14887 * sh.md (attribute type): Add types mt_group, fload, pcfload, fpul_gp,
14888 mac_gp ftrc_s and cwb. Add / Adjust definitions in individual insn
14889 accordingly.
14890 (attribute insn_class): Provide default definitions based on type.
14891 Remove all insn-specific settings.
14892 (various function units): Remove old SH4 scheduling.
14893 (branch_zero, dfp_comp, late_fp_use, any_fp_comp, any_int_load):
14894 New attributes. Set them where appropriate.
14895 (cpu unit FS): Don't define / use.
14896 (F3, load_store): New cpu units.
14897 (F01): New reservation.
14898 (all insn_reservations): Make dependent on sh4 pipeline model.
14899 Fix latencies.
14900 (nil, reg_mov, freg_mov, sh4_fpul_gp, sh4_call): New insn_reservations.
14901 (sh4_mac_gp, fp_arith_ftrc, arith3, arith3b): Likewise.
14902 (mt insn_reservation): Use type mt_group.
14903 (insn_reservation load_store): Split into sh4_load, sh4_load_si,
14904 sh4_fload and sh4_store.
14905 (insn_reservation branch_zero and branch): Replace with sh4_branch.
14906 (insn_reservation branch_far): Replace with sh4_return.
14907 (insn_reservation return_from_exp): Rename to:
14908 (sh4_return_from_exp). Change to be just d_lock*5.
14909 (insn_reservation lds_to_pr): Rename to:
14910 (sh4_lds_to_pr). Change to be just d_lock*2.
14911 (insn_reservation ldsmem_to_pr, sts_from_pr): Change to be just
14912 d_lock*2.
14913 (insn_reservation prload_mem): Rename to:
14914 (sh4_prstore_mem). Change to d_lock*2,nothing,memory.
14915 (insn_reservation fpscr_store): Rename to:
14916 (fpscr_load). Change to d_lock,nothing,F1*3.
14917 (insn_reservation fpscr_store_mem): Rename to:
14918 (fpscr_load_mem). Change to d_lock,nothing,(F1+memory),F1*2.
14919 (insn_reservation multi): Change to
14920 d_lock,(d_lock+f1_1),(f1_1|f1_2)*3,F2.
14921 (insn_reservation fp_arith): Change to issue,F01,F2.
14922 (insn_reservation fp_div: Change to issue,F01+F3,F2+F3,F3*7,F1+F3,F2.
14923 (insn_reservation dp_float): Change to issue,F01,F1+F2,F2.
14924 (insn_reservation fp_double_arith): Change to issue,F01,F1+F2,fpu*4,F2.
14925 (insn_reservation fp_double_cmp): Change to
14926 d_lock,(d_lock+F01),F1+F2,F2.
14927 (insn_reservation dp_div): Change to
14928 issue,F01+F3,F1+F2+F3,F2+F3,F3*16,F1+F3,(fpu+F3)*2,F2.
14929 * sh.c (flow_dependent_p, flow_dependent_p_1): New functions.
14930 (sh_adjust_cost, SHcompact): Differentiate between different
14931 kinds of dependencies. Drop factor of ten for superscalar.
14932 Use new instruction types. Add new exception rules.
14933
14934 * sh.md (mulhisi3, umulhisi3: Add a REG_EQUAL note.
14935
14936 * sh.md (mperm_w): Add DONE.
14937
f34fc46e
DE
149382002-08-27 David Edelsohn <edelsohn@gnu.org>
14939
14940 * longlong.h: Import current PowerPC defintion from GMP-4.1.
14941
14942 * config/rs6000/rs6000.h (MIN_UNITS_PER_WORD): Add IN_LIBGCC2 case.
14943
14944 * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Undef before define.
14945
dcb44500
R
14946Tue Aug 27 13:53:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
14947
14948 * sh.h (MAX_FIXED_MODE_SIZE): Define.
14949
3ec07554
GDR
149502002-08-27 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net>
14951
14952 * doc/cpp.texi (Common Predefined Macros): Don't mess with table
2567406a 14953 delimiter.
3ec07554 14954
35885eab
GDR
149552002-08-27 Gabriel Dos Reis <gdr@integrable-solutions.net>
14956
14957 * c-common.c (cpp_define_data_format): New function.
14958 (cb_register_builtins): Call it.
14959
14960 * doc/cpp.texi (Common Predefined Macros): Document
14961 __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
14962 __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
14963 __TARGET_FLOAT_FORMAT__, __TARGET_USES_VAX_F_FLOAT__,
14964 __TARGET_USES_VAX_D_FLOAT__, __TARGET_USES_VAX_G_FLOAT__,
14965 __TARGET_USES_VAX_H_FLOAT__.
14966
d632dee9
ZL
149672002-08-26 Ziemowit Laski <zlaski@apple.com>
14968
14969 * objc/objc-act.c (get_super_receiver): If inside a class method
14970 of a category, cast the receiver to 'id' before accessing the 'isa'
14971 field so that <objc/objc-class.h> is not needed. For NeXT runtime.
14972
c3cc6b78
UW
149732002-08-26 Ulrich Weigand <uweigand@de.ibm.com>
14974
2567406a 14975 * config/s390/s390-protos.h (s390_function_prologue,
c3cc6b78
UW
14976 s390_function_epilogue): Remove.
14977 config/s390/s390.c (s390_function_prologue, s390_function_epilogue,
14978 TARGET_ASM_FUNCTION_PROLOGUE, TARGET_ASM_FUNCTION_EPILOGUE): Remove.
14979
14980 config/s390/s390.c (s390_machine_dependent_recorg): New function.
14981 config/s390/s390-protos.h (s390_machine_dependent_reorg): Declare it.
14982 config/s390/s390.h (MACHINE_DEPENDENT_REORG): Call it.
14983 config/s390/s390.c (s390_split_branches, s390_chunkify_pool): Adapt
14984 to being called from MACHINE_DEPENDENT_REORG. Update regs_ever_live.
14985
2567406a 14986 config/s390/s390.c (s390_frame_info): Inline save_fprs_p. Always
c3cc6b78
UW
14987 assume BASE_REGISTER and RETURN_REGNUM need to be saved.
14988 (s390_emit_prologue): Assume RETURN_REGNUM to be saved iff
14989 function is not a leaf function. Use save_gprs and restore_gprs.
14990 (s390_emit_epilogue): Likewise.
14991 (save_gprs, restore_gprs): New functions.
14992 (struct s390_frame): Remove return_reg_saved_p member.
14993 (save_fprs_p): Remove.
14994 (s390_optimize_prolog): New function.
14995 (s390_legitimate_reload_constant): Remove now unnecessary check.
14996
14997 (s390_function_count): Remove.
14998 (s390_output_symbolic_const): Replace s390_function_count by
14999 current_function_funcdef_no.
15000 (s390_output_constant_pool): Likewise.
15001
15002 (legitimize_pic_address): Use regs_ever_live to track PIC register
15003 instead of current_function_uses_pic_offset_table.
15004 (s390_emit_prologue): Likewise.
15005 config/s390/s390.md ("call", "call_value"): Likewise.
15006
3f662186
NB
150072002-08-26 Neil Booth <neil@daikokuya.co.uk>
15008
15009 * c-opts.c (find_opt): Don't complain about wrong languages
15010 here. Return exact matches even for wrong language.
15011 (c_common_decode_option): Complain about wrong languages
15012 here.
15013
b6128b8c
SH
150142002-08-24 Stuart Hastings <stuart@apple.com>
15015
15016 * function.h (struct function): Add flag
15017 all_throwers_are_sibcalls.
15018 * except.c (set_nothrow_function_flags): Replaces
15019 nothrow_function_p. Set new flag.
15020 * except.h (set_nothrow_function_flags): Replaces
15021 nothrow_function_p.
15022 * dwarf2out.c (struct dw_fde_struct): Add flag
15023 all_throwers_are_sibcalls.
15024 (output_call_frame_info): Test it.
15025 (dwarf2out_begin_prologue) Propagate it from cfun to
15026 dw_fde_struct.
15027 * toplev.c (rest_of_compilation): Update calls to
15028 nothrow_function_p.
15029
280cf02a
ZW
150302002-08-23 Zack Weinberg <zack@codesourcery.com>
15031
15032 * ggc-page.c (compute_inverse): Short circuit calculation for
15033 object sizes larger than half a page.
15034
c6664446
DE
150352002-08-23 David Edelsohn <edelsohn@gnu.org>
15036
15037 * config/rs6000/rs6000.c (rs6000_elf_select_section): Treat
15038 DEFAULT_ABI == ABI_AIX like PIC. Test PIC & reloc for readonly
15039 default.
15040 (rs6000_elf_unique_section): Likewise.
15041
da57d233
KG
150422002-08-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15043
15044 * ns32k.c (ns32k_globalize_label): Delete.
15045 * ns32k.h (ASM_OUTPUT_LABEL, TARGET_ASM_GLOBALIZE_LABEL): Delete.
15046
56a7189a
AM
150472002-08-23 Alan Modra <amodra@bigpond.net.au>
15048
15049 * config/rs6000/rs6000.c (output_mi_thunk): Don't determine insns
15050 for loading delta with num_insns_constant_wide. Calculate
15051 delta_low, delta_high without using a conditional.
15052
d65b1d77
JM
150532002-08-22 Jason Merrill <jason@redhat.com>
15054
15055 * c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR.
15056 * c-common.def: Adjust.
15057 * c-dump.c (c_dump_tree): Adjust.
15058 * c-semantics.c (genrtl_return_stmt): Adjust.
15059 * c-pretty-print.c (pp_c_statement): Adjust.
15060 * tree-inline.c (copy_body_r): Adjust.
15061
8537ed68
ZW
150622002-08-22 Zack Weinberg <zack@codesourcery.com>
15063
15064 * ggc-page.c: Avoid division in ggc_set_mark.
15065 (DIV_MULT, DIV_SHIFT, OFFSET_TO_BIT, inverse_table,
15066 compute_inverse): New.
15067 (ggc_set_mark, ggc_marked_p): Use OFFSET_TO_BIT.
15068 (init_ggc): Initialize inverse_table.
15069
8567c70f
TT
150702002-08-22 Tom Tromey <tromey@redhat.com>
15071
15072 * doc/install.texi (Configuration): Document --datadir.
15073
fde59d4b
AO
150742002-08-22 Alexandre Oliva <aoliva@redhat.com>
15075
15076 * Makefile.in ($(BUILD_PREFIX_1)varray.o): Depend on $(GGC_H).
15077
44ddc79a
HPN
150782002-08-22 Hans-Peter Nilsson <hp@bitrange.com>
15079
15080 * gengtype-lex.l (ID): Allow underscore as first character.
15081
b275d088
DE
150822002-08-21 David Edelsohn <edelsohn@gnu.org>
15083
15084 * config/rs6000/rs6000.c (rs6000_xcoff_asm_globalize_label): New
15085 function.
15086 (rs6000_xcoff_asm_named_section): Rename.
15087 * config/rs6000/xcoff.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
15088
57ce46bb
TT
150892002-08-21 Tom Tromey <tromey@redhat.com>
15090
15091 For PR java/6005 and PR java/7611:
15092 * fold-const.c (fold_truthop): Use can_use_bit_fields_p.
15093 (fold): Likewise.
15094 * langhooks.c (lhd_can_use_bit_fields_p): New function.
15095 * langhooks-def.h (lhd_can_use_bit_fields_p): Declare.
15096 (LANG_HOOKS_CAN_USE_BIT_FIELDS_P): New define.
15097 (LANG_HOOKS_INITIALIZER): Use it.
15098 * langhooks.h (struct lang_hooks) [can_use_bit_fields_p]: New
15099 field.
15100
27d30956
SS
151012002-08-21 Stan Shebs <shebs@apple.com>
15102
15103 * tree.c (finish_vector_type): Fix a typo in a comment.
15104 * Makefile.in: Fix "the the" stutters in comments.
15105 * genautomata.c: Ditto.
15106 * ifcvt.c: Ditto.
15107 * regrename.c: Ditto.
15108 * config/alpha/alpha.c: Ditto.
15109 * config/alpha/vms-crt0-64.c: Ditto.
15110 * config/alpha/vms-crt0.c: Ditto.
15111 * config/alpha/vms-psxcrt0-64.c: Ditto.
15112 * config/alpha/vms-psxcrt0.c: Ditto.
15113 * config/d30v/d30v.h: Ditto.
15114 * config/fr30/fr30.h: Ditto.
15115 * config/rs6000/rs6000.c: Ditto.
15116 * config/stormy16/stormy16.h: Ditto.
15117 * doc/md.texi: Ditto.
8537ed68 15118
d873d827
JDA
151192002-08-21 John David Anglin <dave@hiauly1.hia.nrc.ca>
15120
15121 * cppinit.c (remove_dup_nonsys_dirs): Fix warning and return value.
15122
b462d4ab
JM
151232002-08-21 Joseph S. Myers <jsm@polyomino.org.uk>
15124
15125 * c-decl.c (grokdeclarator): Make invalid combinations with long,
15126 short, signed or unsigned into hard errors. Fixes PR c/4319.
15127 Also make duplicate modifiers such as "short short" into hard
15128 errors.
15129
b65d23aa 151302002-08-21 Andrew Pinski <pinskia@physics.uc.edu>
8537ed68 15131 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b65d23aa
AP
15132
15133 * doc/tm.texi (TARGET_ASM_GLOBALIZE_LABEL): Move '@end deftypefn'
15134 to the actual end. Add '@end table' and '@table @code'.
8537ed68 15135
3823f0b2
GK
151362002-08-20 Geoffrey Keating <geoffk@redhat.com>
15137
8d25d915
GK
15138 * doc/tm.texi (Label Output): Add missing '@end deftypefn'.
15139
3823f0b2
GK
15140 * unroll.c (biv_total_increment): Don't try to compute the total
15141 increment for FP BIVs.
15142
5eb99654
KG
151432002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15144
15145 * alpha.c (TARGET_ASM_GLOBALIZE_LABEL): Define for unicosmk.
15146 * alpha/elf.h (ASM_OUTPUT_EXTERNAL_LIBCALL,
15147 ASM_OUTPUT_ALIGNED_BSS): Use target hook.
15148 * alpha/osf.h (ASM_OUTPUT_WEAK_ALIAS): Likewise.
15149 * alpha/unicosmk.h (ASM_GLOBALIZE_LABEL): Delete.
15150 * arm/aof.h (ASM_GLOBALIZE_LABEL): Likewise.
15151 (GLOBAL_ASM_OP): Define.
15152 * arm.c (aof_globalize_label): New function.
15153 (TARGET_ASM_GLOBALIZE_LABEL): Define for AOF.
15154 * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
15155 * c4x.c (c4x_globalize_label): New function.
15156 (TARGET_ASM_GLOBALIZE_LABEL): Define for c4x.
15157 * c4x.h (ASM_GLOBALIZE_LABEL): Delete.
15158 (GLOBAL_ASM_OP): Define.
15159 * cris/aout.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
15160 * darwin-protos.h (darwin_globalize_label): Declare.
15161 * darwin.c (darwin_globalize_label): New function.
15162 * darwin.h (ASM_DECLARE_CLASS_REFERENCE): Use target hook.
15163 (ASM_GLOBALIZE_LABEL): Delete.
15164 (GLOBAL_ASM_OP, TARGET_ASM_GLOBALIZE_LABEL): Define.
15165 * dsp16xx.c (asm_output_common): Use target hook.
15166 * elfos.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
15167 * frv.h (ASM_GLOBALIZE_LABEL): Delete.
15168 (GLOBAL_ASM_OP): Define.
15169 * i370.c (i370_globalize_label): New function.
15170 (TARGET_ASM_GLOBALIZE_LABEL): Define for i370.
15171 * i370.h (ASM_GLOBALIZE_LABEL): Delete.
15172 * i386.c (ix86_asm_file_end): Use target hook.
15173 * i386/sco5.h (ASM_GLOBALIZE_LABEL): Don't undef.
15174 (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
15175 * ia64.c (ia64_asm_output_external): Likewise.
15176 * ia64/sysv4.h: Update comment.
15177 * m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
15178 * mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
15179 * mips/iris5.h (ASM_OUTPUT_WEAK_ALIAS): Use target hook.
15180 * mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
15181 * mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use target hook.
15182 * mmix-protos.h (mmix_asm_globalize_label): Delete.
15183 * mmix.c (mmix_asm_globalize_label): Likewise.
15184 * mmix.h (ASM_GLOBALIZE_LABEL): Likewise.
15185 (GLOBAL_ASM_OP): Define.
15186 * ns32k.c (ns32k_globalize_label): New function.
15187 * ns32k.h (TARGET_ASM_GLOBALIZE_LABEL): Define for ns32k.
15188 (ASM_GLOBALIZE_LABEL): Delete.
15189 * pa/pa-linux.h (ASM_GLOBALIZE_LABEL): Don't undef.
15190 (TARGET_ASM_GLOBALIZE_LABEL): Undefine.
15191 * pa.c (pa_globalize_label): New function.
15192 * pa.h (ASM_GLOBALIZE_LABEL): Delete.
15193 (TARGET_ASM_GLOBALIZE_LABEL): Define for pa.
15194 * rs6000/darwin.h (ASM_GLOBALIZE_LABEL): Delete.
15195 (GLOBAL_ASM_OP): Define.
15196 (TARGET_ASM_GLOBALIZE_LABEL): Undef.
15197 * rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
15198 * rs6000/xcoff.h (ASM_GLOBALIZE_LABEL): Delete.
15199 (GLOBAL_ASM_OP): Define.
15200 * v850.c (v850_output_aligned_bss): Use target hook.
15201 * vax.c (vms_globalize_label): New function.
15202 (TARGET_ASM_GLOBALIZE_LABEL): Define for vms.
15203 * vax/vms.h (ASM_GLOBALIZE_LABEL): Delete.
15204 (GLOBAL_ASM_OP): Define.
15205 * defaults.h (ASM_GLOBALIZE_LABEL): Delete.
15206 * doc/tm.texi: Update docs.
15207 * dwarf2out.c (default_eh_frame_section, output_die_symbol): Use
15208 target hook.
15209 * final.c (output_alternate_entry_point): Likewise.
15210 * hooks.c (hook_FILEptr_constcharptr_void): New function.
15211 * hooks.h (hook_FILEptr_constcharptr_void): Declare.
15212 * output.h (assemble_global): Delete.
15213 (default_globalize_label): Declare.
15214 * system.h (ASM_GLOBALIZE_LABEL): Poison.
15215 * target-def.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
15216 (TARGET_ASM_OUT): Add TARGET_ASM_GLOBALIZE_LABEL.
15217 * target.h (gcc_target): Add globalize_label member.
15218 * varasm.c (asm_output_bss, asm_output_aligned_bss,
15219 globalize_decl): Use target hook.
15220 (assemble_global): Delete.
15221 (default_globalize_label): New function.
15222
f8f28a75
KG
152232002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15224
15225 * dsp16xx.h (dsp16xx_umulhi3_libcall): Delete.
15226
92b5aacd
DP
152272002-08-20 Devang Patel <dpatel@apple.com>
15228 * tree.c (get_qualified_type): Add TYPE_CONTEXT check.
8537ed68 15229
761c70aa
KG
152302002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15231
15232 * arc.c (output_shift): Use stdio instead of asm_fprintf.
15233 * arm.c (thumb_output_function_prologue): Likewise.
15234 * avr.c (print_operand): Likewise.
15235 * c4x.c (c4x_print_operand): Likewise.
15236 * c4x.h (ASM_OUTPUT_INTERNAL_LABEL, TRAMPOLINE_TEMPLATE,
15237 ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
15238 * cris.c (cris_target_asm_function_prologue,
15239 cris_asm_output_mi_thunk): Likewise.
15240 * h8300.c (print_operand): Likewise.
15241 * h8300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
15242 * ip2k.c (print_operand): Likewise. Fix format specifier.
15243 * m68hc11.c (asm_print_register, print_operand,
15244 print_operand_address): Use stdio instead of asm_fprintf.
15245 (print_operand_address): Fix format specifier.
15246 * m68hc11.h (FUNCTION_PROFILER, ASM_OUTPUT_ADDR_DIFF_ELT,
15247 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ALIGN): Use stdio instead of
15248 asm_fprintf.
15249 * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
15250 * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
15251 * m68k.c (m68k_output_function_prologue,
15252 m68k_output_function_epilogue, print_operand): Likewise.
15253 * mmix.c (mmix_asm_output_mi_thunk, mmix_asm_weaken_label):
15254 Likewise. Fix format specifier.
15255 * mn10200.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
15256 * mn10300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
15257 * v850.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
15258
5ce6f47b
EC
152592002-08-15 Eric Christopher <echristo@redhat.com>
15260 Jeff Knaggs <jknaggs@redhat.com>
15261
15262 * config.gcc (mipsisa64sr71k-elf): New target.
15263 * config/mips/sr71k.md: New file.
15264 * config/mips/mips.md: Use it.
15265 (rot*): Add sr71k specifics.
15266 * config/mips/t-sr71k: New file.
15267 * config/mips/mips.h (sr71k): New cpu.
15268 (TARGET_SR71K): Use it.
15269 (TUNE_SR71K): Ditto.
15270 (GENERATE_BRANCHLIKELY): Ditto.
15271 (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC,
15272 ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto.
15273 * config/mips/mips.c (sr71k): New cpu.
15274 (mips_use_dfa_pipeline_interface): Use.
15275
152762002-08-15 Eric Christopher <echristo@redhat.com>
8537ed68 15277 Richard Sandiford <rsandifo@redhat.com>
5ce6f47b
EC
15278 Aldy Hernandez <aldyh@redhat.com>
15279 Graham Stott <grahams@redhat.com>
15280 Michael Meissner <meissner@redhat.com>
15281 Gavin Romig-Koch <gavin@redhat.com>
15282 Ken Raeburn <raeburn@cygnus.com>
15283 Alexandre Oliva <aoliva@redhat.com>
15284
15285 * config.gcc (mips64vr-elf): New target.
15286 * config/mips/5400.md: New file.
15287 * config/mips/5500.md: Ditto.
15288 * config/mips/mips.md: Use them.
15289 (frsqrt): New.
15290 * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New
15291 cpus.
15292 (mips_issue_rate): Use them.
15293 (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500.
15294 (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above.
15295 * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New
15296 cpus.
15297 (TARGET_MIPSx): Use them.
15298 (TUNE_MIPSx): Ditto.
15299 (GETNATE_MULT3_SI): Ditto.
15300 (ISA_HAS_BRANCHLIKELY): Ditto.
15301 (ISA_HAS_CONDMOVE): Ditto.
15302 (ISA_HAS_NMADD_NMSUB): Ditto.
15303 (ISA_HAS_MULHI): New. Ditto.
15304 (ISA_HAS_MULS): Ditto.
15305 (ISA_HAS_MSAC): Ditto.
15306 (ISA_HAS_MACC): Ditto.
15307 (ISA_HAS_ROTR_SI): Ditto.
15308 (ISA_HAS_ROTR_DI): Ditto.
15309 (RTX_COSTS): Use.
15310
48209ce5
JDA
153112002-08-20 John David Anglin <dave@hiauly1.hia.nrc.ca>
15312
15313 * cppinit.c (remove_dup_dir): Add head_ptr argument to handle removal
15314 at head.
15315 (remove_dup_nonsys_dirs): New function.
15316 (remove_dup_dirs): Change argument head to head_ptr. Remove warnings.
15317 (merge_include_chains): Remove non-system include directories from
15318 quote and bracket include chains when they duplicate equivalent system
15319 directories.
15320 * doc/cpp.texi (-I): Update.
8537ed68
ZW
15321 * doc/cppopts.texi (-I): Update.
15322 * doc/install.texi (--with-local-prefix): Further document usage of
48209ce5
JDA
15323 this option.
15324 * doc/invoke.texi (-I): Update.
15325
4ca79136
RH
153262002-08-20 Richard Henderson <rth@redhat.com>
15327
15328 * expr.c (TARGET_MEM_FUNCTIONS): Transform to boolean.
15329 (emit_block_move): Split out subroutines.
15330 (emit_block_move_via_movstr): New.
15331 (emit_block_move_via_libcall): New. Emit bcopy via normal call also.
15332 (emit_block_move_libcall_fn): New. Construct function prototype for
15333 bcopy as well.
15334 (clear_storage): Split out subroutines.
15335 (clear_storage_via_clrstr): New.
15336 (clear_storage_via_libcall): New. Emit bzero as a normal call also.
15337 (clear_storage_libcall_fn): New. Construct function prototype for
15338 bzero as well.
15339 (emit_push_insn): Use emit_block_move.
15340 (expand_assignment): Booleanize TARGET_MEM_FUNCTIONS.
15341 (store_constructor): Likewise.
15342
9f05cef3
ZL
153432002-08-19 Ziemowit Laski <zlaski@apple.com>
15344
15345 * objc/objc-act.c (building_objc_message_expr): Rename to
15346 current_objc_message_selector.
15347
1bd5981b
ZL
153482002-08-19 Ziemowit Laski <zlaski@apple.com>
15349
15350 * objc/objc-act.c (build_ivar_chain): Remove.
15351 (objc_copy_list): Likewise.
15352 (get_class_ivars): Inline call to removed build_ivar_chain
15353 function. Save off a clean copy of ivars in the CLASS_OWN_IVARS
15354 slot; use that slot (rather than CLASS_IVARS) when accessing
15355 ivars for base classes. Call copy_list and chainon instead of
15356 objc_copy_list.
15357 (build_private_template): Call get_class_ivars instead of
15358 build_ivar_chain.
15359 (start_class): Allocate room for the CLASS_OWN_IVARS slot.
5ce6f47b 15360 (continue_class): Call get_class_ivars instead of
1bd5981b
ZL
15361 build_ivar_chain.
15362 (encode_field_decl): Check for DECL_BIT_FIELD_TYPE instead
15363 of DECL_BIT_FIELD (which may have been cleared).
15364 * objc/objc-act.h (CLASS_OWN_IVARS): New accessor macro.
15365
2bf087c0
KG
153662002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15367
15368 * genautomata.c (output_translate_vect, output_state_ainsn_table,
15369 output_min_issue_delay_table): Mark variable with ATTRIBUTE_UNUSED
15370 in output file.
15371 (output_internal_min_issue_delay_func): Initialize variable in
15372 output file.
15373
3fcd079e
AO
153742002-08-19 Alexandre Oliva <aoliva@redhat.com>
15375
15376 * Makefile.in (GCC_FOR_TARGET): Prepend STAGE_CC_WRAPPER.
15377 (stage2_build, stage3_build, stage4_build): Likewise, to CC.
15378
71012d97
GK
153792002-08-19 Geoffrey Keating <geoffk@redhat.com>
15380 Steve Ellcey <sje@cup.hp.com>
15381
15382 * machmode.h (SCALAR_INT_MODE_P): New macro to test for
15383 scaler integer mode (MODE_INT or MODE_PARTIAL_INT).
15384 * explow.c (trunc_int_for_mode): Abort when the mode is not
15385 a scaler integer mode.
15386 * combine.c (expand_compound_operation): Don't expand Vector
15387 or Complex modes into shifts.
15388 (expand_field_assignment): Don't do bitwise arithmatic and
15389 shifts on Vector or Complex modes.
15390 (simplify_comparison): Don't call trunc_int_for_mode
15391 for VOIDmode.
15392 * recog.c (general_operand): Likewise.
15393 (immediate_operand): Likewise.
15394 (nonmemory_operand): Likewise.
15395
af8cb5c5
DE
153962002-08-19 David Edelsohn <edelsohn@gnu.org>
15397
15398 * config/rs6000/rs6000.c (rs6000_emit_set_const): Inline
15399 multi-instruction SImode constant. Add REG_EQUAL note.
15400 * config/rs6000/rs6000.md (movsi splitter): Use
5ce6f47b 15401 rs6000_emit_set_const.
af8cb5c5 15402
9bc146b3
KG
154032002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15404
15405 * tree-inline.c (initialize_inlined_parameters): Wrap variable in
15406 the macro test controlling its use.
15407
66df2ac2
L
154082002-08-18 H.J. Lu (hjl@gnu.org)
15409
15410 * config.gcc (*-*-linux*): Set extra_parts="crtbegin.o
15411 crtbeginS.o crtbeginT.o crtend.o crtendS.o", gas=yes and
15412 gnu_ld=yes.
15413 (alpha*-*-linux*, cris-*-linux*, i370-*-linux*,
15414 i[34567]86-*-linux*, x86_64-*-linux*, mips*-*-linux*,
15415 s390-*-linux*, s390x-*-linux*, sparc-*-linux*, sparc64-*-linux*,
15416 xtensa-*-linux*): Remove setting extra_parts, gas, and gnu_ld
15417 here.
15418 (cris-*-linux*): Remove setting thread_file here.
15419
463f1b2b
NB
154202002-08-18 Neil Booth <neil@daikokuya.co.uk>
15421
15422 PR preprocessor/7602
15423 * cppinit.c (path_include): Treat the system environment
15424 variables as being cxx_aware.
15425
2984fe64
JM
154262002-08-17 Joseph S. Myers <jsm@polyomino.org.uk>
15427
15428 * c-decl.c (flexible_array_type_p): New function.
15429 (grokdeclarator, finish_struct): Use it.
15430 * doc/extend.texi: Document constraints on use of structures with
15431 flexible array members.
15432
fded6d78
RS
154332002-08-17 Richard Sandiford <rsandifo@redhat.com>
15434
15435 * config/mips/t-coff, config/mips/t-elf, config/mips/t-isa3264,
15436 config/mips/t-r3900 (MULTILIB_MATCHES): Define.
15437 * config/mips/mips.h (ASM_SPEC): Use %(endian_spec).
15438
8aa5074e
SS
154392002-08-16 Stan Shebs <shebs@apple.com>
15440
15441 * c-common.c (cb_register_builds): Define __NEXT_RUNTIME__
15442 for ObjC with -fnext-runtime.
15443 * doc/cpp.texi: Document it.
15444
f97a5bda
JJ
154452002-08-16 Janis Johnson <janis187@us.ibm.com>
15446
15447 * doc/install.texi (Final installation): Replace links to individual
15448 build status pages with a link to a common page that lists them all.
15449
d3075b6c
SP
154502002-08-16 Sylvain Pion <pion@cs.nyu.edu>
15451
15452 * doc/invoke.texi: Fix typo.
15453
fdf68669
DE
154542002-08-16 David Edelsohn <edelsohn@gnu.org>
15455
15456 * doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.
15457
154582002-08-16 Andrew Haley <aph@redhat.com>
d436bff8
AH
15459
15460 * tree-inline.c: Add includes for Java inliner.
15461 (remap_decl): Don't handle anonymous types for Java.
15462 (remap_block): Add handling for Java trees.
15463 (copy_scope_stmt): Conditionalize for non-Java use only.
15464 (copy_body_r): Handle Java trees. Add handling for
15465 LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, Java blocks.
15466 (initialize_inlined_parameters): Handle Java trees.
15467 (declare_return_variable): Likewise.
15468 (expand_call_inline): Handle Java trees.
15469 (walk_tree): Likewise.
15470 (copy_tree_r): Don't handle SCOPE_STMTs for Java.
15471 (add_stmt_to_compound): New function.
15472
204250d2
RH
154732002-08-15 Richard Henderson <rth@redhat.com>
15474
15475 * Makefile.in (LOOSE_WARN): Remove -fno-common.
15476 (NOCOMMON_FLAG): New substitution point.
15477 (GCC_WARN_CFLAGS): Include it.
15478 * configure.in (ac_checking): Set nocommon_flag.
15479 (nocommon_flag): New substitution point.
15480
25587e40
AO
154812002-08-15 Alexandre Oliva <aoliva@redhat.com>
15482
15483 * c-tree.h (skip_evaluation): Move declaration...
15484 * c-common.h: ... here.
15485 * c-typeck.c (build_external_ref): Don't assemble_external nor
15486 mark a tree as used if skip_evaluation is set.
15487 * c-parse.in (typeof): New non-terminal to set skip_evaluation
15488 around TYPEOF.
15489 (typespec_nonreserved_nonattr): Use it.
15490
702ada3d
DR
154912002-08-15 Douglas B Rupp <rupp@gnat.com>
15492
15493 * dbxout.c (dbx_debug_hooks): Update end_prologue, end_epilogue.
15494 (xcoff_debug_hooks): Update end_prologue.
15495 * debug.c (do_nothing_debug_hooks): Update end_prologue, end_epilogue.
15496 * debug.h (end_prologue): Add file arg.
15497 (end_epilogue): Add line and file args.
15498 (dwarf2out_end_epilogue): Add line and file args.
15499 (vmsdbgout_after_prologue): Remove.
15500 * dwarf2out.c (dwarf2out_end_epilogue): Add line and file args.
15501 (dwarf2_debug_hooks): Update end_prologue.
15502 * dwarfout.c (dwarfout_end_epilogue): Add line and file args.
15503 (dwarfout_end_prologue): Add file arg.
15504 * final.c (vmsdbgout_after_prologue): Remove
15505 (final_end_function): Update end_epilogue call.
15506 (final_scan_insn): Update end_prologue call.
15507 * sdbout.c (sdbout_end_epilogue): Add line and file args.
15508 (sdbout_end_prologue): Add file arg.
15509 (sdb_debug_hooks): Update end_prologue.
15510 (sdb_begin_prologue): Update sdbout_end_prologue call.
15511 * vmsdbgout.c (vmsdbg_debug_hooks): Add vmsdbgout_end_prologue,
15512 vmsdbgout_end_function.
15513 (vmsdbgout_end_prologue): New function renamed from
15514 vmsdbgout_after_prologue. Call vmsdbgout_source_line.
15515 (vmsdbgout_end_function): New function.
15516 (vmsdbgout_end_epilogue): Add line and file args. Call
15517 vmsdbgout_source_line.
15518 (write_pclines): Write only valid line numbers.
15519 (write_srccorr): Don't write source correlation records if 0 lines.
15520 * xcoffout.c (xcoffout_end_epilogue): Add line and file args.
15521
9ef30f83
SE
155222002-08-15 Steve Ellcey <sje@cup.hp.com>
15523
15524 * gcc/unwind.h (_Unwind_Ptr): Make 64 bits on IA64 HP-UX.
15525 (_Unwind_Internal_Ptr): 32 bit version for use in
15526 read_encoded_value_with_base.
15527 * gcc/unwind-pe.h (read_encoded_value_with_base): Use
15528 _Unwind_Internal_Ptr instead of _Unwind_Ptr in order to get the
15529 right size.
15530
f7043461
KG
155312002-08-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15532
15533 * loop.c (scan_loop, move_movables, count_one_set): Cast to avoid
15534 signed/unsigned warnings.
15535
15536 * regclass.c (init_reg_sets_1, choose_hard_reg_mode,
15537 record_reg_classes): Likewise.
15538
15539 * reload.c (reload_inner_reg_of_subreg, push_reload,
15540 find_reloads_address_1): Likewise.
15541
b4d330e1
DE
155422002-08-15 David Edelsohn <edelsohn@gnu.org>
15543
15544 * rs6000.c (output_mi_thunk): Return to function section on
15545 TARGET_ELF.
15546
15547 * rs6000-c.c (rs6000_cpu_cpp_builtins): Define __PPC405__ if PPC405.
15548
61f02ff5
UW
155492002-08-15 Ulrich Weigand <uweigand@de.ibm.com>
15550
15551 * config/s390/s390.c (legitimize_address): Optimize loading
15552 of large displacements.
15553
1330f7d5
DR
155542002-08-14 Douglas B Rupp <rupp@gnat.com>
15555
15556 * config/alpha/alpha-protos.h: Update.
15557
15558 * config/alpha/alpha.c: (LINKAGE_SYMBOL_REF_P): New macro.
15559 (alpha_legitimate_address_p): Test LINKAGE_SYMBOL_REF_P.
15560 (alpha_linkage_symbol_p): New static function.
15561 (print_operand_address): Print linkage operand.
15562
15563 (alpha_funcs_num, alpha_funcs_tree, alpha_links_tree): New static
15564 variables.
15565 (reloc_kind): New enum.
15566 (struct alpha_funcs): New struct.
15567 (struct alpha_links): Add reloc_kind field. Rename links_kind field.
15568
15569 (alpha_need_linkage): Rewrite.
15570 (alpha_use_linkage): New global function.
15571 (alpha_write_linkage): Rewrite and make static.
15572 (alpha_write_one_linkage): Rewrite
15573
15574 (alpha_start_function): Remove procedure descriptor output.
15575 (alpha_end_function): Write linkages at end of each function.
15576
15577 * config/alpha/alpha.md (call_vms, call_value_vms): Rewrite.
15578 (call_vms_1, call_value_vms_1): Rewrite.
15579
15580 * config/alpha/vms.h (ASM_FILE_END): Remove.
15581
d1f1cc6a
RH
155822002-08-14 Richard Henderson <rth@redhat.com>
15583
15584 * ggc-page.c (RTL_SIZE): New.
15585 (extra_order_size_table): Add specializations for 2 and 10 rtl slots.
15586 * rtl.def (BARRIER, NOTE): Pad to 9 slots.
15587
23626154
RH
155882002-08-14 Richard Henderson <rth@redhat.com>
15589
15590 * calls.c: Include target.h.
15591 * Makefile.in (calls.o): Update.
15592
15593 * config/alpha/alpha.c (alpha_end_function): Use targetm.binds_local_p.
15594 * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Likewise.
15595
fd350d24
RH
155962002-08-14 Richard Henderson <rth@redhat.com>
15597
15598 * Makefile.in (LOOSE_WARN): Add -fno-common.
15599 * c-common.h (constant_string_class_name): Add missing extern.
15600
182d89a3
NB
156012002-08-15 Neil Booth <neil@daikokuya.co.uk>
15602
15603 PR preprocessor/7358
15604 * c-opts.c (check_deps_environment_vars): Ignore main file
15605 for SUNPRO_DEPENDENCIES.
15606 * cppfiles.c (stack_include_file): Ignore main file if
15607 appropriate.
15608 * cpplib.h (struct cpp_options): New member in deps.
15609 * doc/cppenv.texi: Update.
15610
8bfb1467
NB
156112002-08-14 Neil Booth <neil@daikokuya.co.uk>
15612
15613 PR preprocessor/7526
15614 * cpplib.c (run_directive): Kludge so _Pragma dependency works.
15615
41685063
NS
156162002-08-14 Nathan Sidwell <nathan@codesourcery.com>
15617
15618 * doc/invoke.texi (-a): Remove documentation.
15619 (-fprofile-arcs): Remove reference to -a, -ax options.
15620 * doc/gcov.texi (Gcov Data Files): Data might be merged.
15621
77893a23
GDR
156222002-08-14 Gabriel Dos Reis <gdr@nerim.net>
15623
15624 Fix PR/7566
15625 * c-semantics.c (genrtl_case_label): Don't (mis)use
5ce6f47b 15626 warning_with_decl.
77893a23 15627
260f91c2
DJ
156282002-08-14 Dale Johannesen <dalej@apple.com>
15629
8537ed68 15630 * explow.c (emit_stack_restore): Emit memory clobbers
260f91c2
DJ
15631 preceding the stack pop, to prevent the scheduler from
15632 moving refs to variable arrays below this pop.
15633 * reload1.c (reload): Preserve these clobbers for sched2.
15634 * doc/rtl.texi: Document clobber (mem:BLK (scratch)).
15635
cd79e210
NB
156362002-08-14 Neil Booth <neil@daikokuya.co.uk>
15637
15638 * c-opts.c (c_common_post_options): Correct test.
15639
3eb75a73
KG
156402002-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15641
15642 * m88k.h (ASM_OUTPUT_SOURCE_FILENAME): Fix incorrect argument
15643 order in call to fprintf.
15644
be3a0ce2
RO
156452002-08-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
15646
15647 * config/sparc/sol2.h (SUBTARGET_EXTRA_SPECS): Define.
15648
ccfc6cc8
UW
156492002-08-14 Ulrich Weigand <uweigand@de.ibm.com>
15650
5ce6f47b 15651 * reload.c (find_reloads): Handle constraint letters marked by
ccfc6cc8
UW
15652 EXTRA_ADDRESS_CONSTRAINT and EXTRA_MEMORY_CONSTRAINT.
15653 (alternative_allows_memconst): Likewise.
15654 * reload1.c (maybe_fix_stack_asms): Likewise.
5ce6f47b 15655 * recog.c (asm_operand_ok, preprocess_constraints,
ccfc6cc8
UW
15656 constrain_operands): Likewise.
15657 * regclass.c (record_operand_costs, record_reg_classes): Likewise.
15658 * local-alloc.c (block_alloc, requires_inout): Likewise.
15659 * stmt.c (parse_output_constraint, parse_input_constraint): Likewise.
15660
15661 * defaults.h (EXTRA_MEMORY_CONSTRAINT): Provide a default.
15662 (EXTRA_ADDRESS_CONSTRAINT): Likewise.
15663 * doc/tm.texi: Document these two new target macros.
15664
15665 * config/s390/s390.c (s390_expand_plus_operand): Accept already
15666 valid operands.
15667 (q_constraint): New function.
15668 config/s390/s390-protos.h (q_constraint): Declare it.
15669 config/s390/s390.h (EXTRA_CONSTRAINT): Use it.
15670 (EXTRA_MEMORY_CONSTRAINT): New macro.
15671
15672 * config/s390/s390.md: Throughout the machine description,
15673 replace all instances of the constraint combinations 'Qo'
15674 or 'oQ' with simply 'Q'.
15675
d6ee9f6f
SC
156762002-08-14 Stephane Carrez <stcarrez@nerim.fr>
15677
15678 * config/m68hc11/m68hc11.h (LINK_SPEC): Support -mrelax.
15679 * config/m68hc11/t-m68hc11-gas (LIBGCC2_DEBUG_CFLAGS): Can use -g now.
15680 (LIBGCC2_CFLAGS): Compile with -mrelax.
15681
8a0b86f5
SC
156822002-08-14 Stephane Carrez <stcarrez@nerim.fr>
15683
15684 * doc/invoke.texi: Document -minmax for 68HC12.
15685
15686 * config/m68hc11/m68hc11.md ("umaxqi3"): Use TARGET_MIN_MAX.
15687 ("uminqi3"): Likewise.
15688 ("uminhi3", "umaxhi3"): Likewise.
15689
15690 * config/m68hc11/m68hc11.h (MASK_MIN_MAX): Define.
15691 (TARGET_MIN_MAX): Define.
15692 (TARGET_SWITCHES): New option -minmax/-mnominmax.
15693
d6381f4e
SC
156942002-08-14 Stephane Carrez <stcarrez@nerim.fr>
15695
15696 * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build __far_trampoline.
15697 (MULTILIB_OPTIONS): Must also generate for -mlong-calls.
15698
15699 * config/m68hc11/larith.asm: Put a mode for ELF ABI flags.
15700 (ret, declare, farsym): New gas macros.
15701 (__premain, exit, abort, _cleanup, memcpy, memset, ___adddi3,
15702 ___subdi3, ___notdi2, __mulhi32, __mulsi3): Use them to use 'rtc'
15703 and declare the symbol far when compiled with -mlong-calls.
5ce6f47b 15704 (__far_trampoline): New for 68HC12 trampoline code to invoke a
d6381f4e
SC
15705 far handler using jsr/bsr.
15706
15707 * config/m68hc11/m68hc11-crt0.S: Put a mode for ELF ABI flags.
15708 (jsr): New macro to transform a 'jsr' into a 'call'.
15709
058edcdb
SC
157102002-08-14 Stephane Carrez <stcarrez@nerim.fr>
15711
15712 * doc/invoke.texi: Document -mlong-calls for 68HC12.
15713
15714 * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__USE_RTC__ when
15715 -mlong-calls is specified.
5ce6f47b 15716 (ASM_DECLARE_FUNCTION_NAME): Define to generate .far and .interrupt
058edcdb
SC
15717 assembler directives.
15718 (TARGET_LONG_CALL, MASK_LONG_CALL): Declare.
15719 (TARGET_SWITCHES): Add -mlong-calls options.
15720 (current_function_far): Declare.
15721
15722 * config/m68hc11/m68hc11.c (m68hc11_initial_elimination_offset): Take
15723 into account the page register saved on the stack.
15724 (m68hc11_override_options): Take into account -mlong-calls option.
15725 (m68hc11_asm_file_start): Put a mode for the ELF flags ABI.
15726
15727 * config/m68hc11/m68hc11.md ("*return_32bit"): Return rtc
15728 if the function is going to be in 68HC12 banked memory (-mlong-calls).
15729 ("*return_16bit"): Likewise.
15730 ("*return_void"): Likewise.
15731 ("call", "call_value"): Use call for a far function call.
15732
c79043f3
NB
157332002-08-14 Neil Booth <neil@daikokuya.co.uk>
15734
15735 * toplev.c (parse_options_and_default_flags): Don't call
15736 post_options here.
15737 (general_init): Initialize GC, pools and tree hash here,
15738 instead of lang_independent_init.
15739 (lang_independent_init): Rename backend_init.
15740 (do_compile): Call post_options hook; exit early if there
15741 have been errors after switch processing.
15742 (toplev_main): Update.
15743
6bf346d4
GDR
157442002-08-14 Gabriel Dos Reis <gdr@nerim.net>
15745
15746 * c-pretty-print.h: Guard against multiple inclusion.
15747 Robustify macros.
15748 (pp_c_attributes): Declare.
15749 * c-pretty-print.c (pp_c_attributes): New function.
15750
cbf2f479
KG
157512002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15752
15753 * m68k.c (m68k_output_function_prologue,
15754 m68k_output_function_epilogue): Delete versions for DPX2/MOTOROLA
15755 and NEWS/MOTOROLA.
15756 * genattrtab.c: Remove dpx2 comment.
15757 * libgcc2.c (__enable_execute_stack): Delete versions for
15758 NeXT/__MACH__, __convex__, __sysV88__, __pyr__ and
15759 sony_news/SYSTYPE_BSD.
15760 * longlong.h: Delete code for __a29k__, _AM29K, __clipper__,
15761 __gmicro__, __i860__, __NeXT__ and __pyr__.
15762 * rtl.h: Remove convex comment.
15763 * varasm.c: Likewise.
15764
d3969c34
KG
157652002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15766
15767 * c-opts.c (lang_flags): Const-ify.
15768 * ra-build.c (undef_table): Likewise.
15769 * ra.c (eliminables): Likewise.
15770
df89f8e7
GDR
157712002-08-14 Gabriel Dos Reis <gdr@nerim.net>
15772
15773 * tree.h: Guard against multiple inclusion.
15774
cf87d551
HPN
157752002-08-14 Hans-Peter Nilsson <hp@bitrange.com>
15776
15777 * reload1.c (reload_cse_simplify): Before checking
15778 REG_FUNCTION_VALUE_P, check REG_P.
15779
a43c8986
GK
157802002-08-13 Geoffrey Keating <geoffk@redhat.com>
15781
15782 * Makefile.in (attribs.o): Remove $(OBSTACK_H) dependency.
15783
29337351
NB
157842002-08-13 Neil Booth <neil@daikokuya.co.uk>
15785
15786 * c-opts.c (c_common_init_options): Extra braces needed.
15787
8202c8c4
R
15788Tue Aug 13 17:40:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
15789
15790 * sh.c (sh_init_builtins): Add PARAMS to declaration.
15791 (sh_media_init_builtins, sh_expand_builtin): Likewise.
15792 (sh_expand_unop_v2sf): Use PARAMS for variable declaration.
15793 (sh_expand_binop_v2sf): Likewise.
15794 * sh-protos.h (sh_expand_unop_v2sf): Add PARAMS to declaration.
15795 (sh_expand_binop_v2sf, sh_cfun_interrupt_handler_p): Likewise.
15796 (sh_initialize_trampoline): Likewise.
15797
07893d4f
UW
157982002-08-13 Ulrich Weigand <uweigand@de.ibm.com>
15799
15800 * s390-modes.def [CCL1, CCL2, CCT1, CCT2, CCT3, CCUR, CCSR]: Declare
15801 new condition code modes.
15802 s390.c (s390_match_ccmode_set): Handle those new CC modes.
15803 (s390_select_ccmode): Likewise.
15804 (s390_branch_condition_mask): Likewise.
15805
15806 * s390-protos.h (s390_tm_ccmode): Declare.
15807 s390.c (s390_tm_ccmode): New function.
15808 (s390_match_ccmode): Allow VOIDmode as REQ_MODE.
15809
15810 * s390.md ("*cmpdi_tm2"): Rename to "*tmdi_ext".
15811 ("*cmpsi_tm2"): Rename to "*tmsi_ext".
15812 ("*cmpqi_tm2"): Rename to "*tmqi_ext".
15813
15814 ("*cmpdi_tm_reg", "*cmpdi_tm_mem", "*cmpsi_tm_reg", "*cmpsi_tm_mem",
15815 "*cmphi_tm_sub","*cmphi_cct_0", "*cmpqi_tm", "*cmpqi_tm_sub",
15816 "*cmpqi_cct_0", "*tm_0"): Remove, replace by ...
15817 ("*tmdi_reg", "*tmsi_reg", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem",
15818 "*tmqi_mem", "*tmhi_full", "*tmqi_full"): ... these new patterns.
15819
15820 ("*ltgr", "*cmpdi_ccs_0_64", "*cmpdi_ccs_0_31", "*ltr", "*icm15",
5ce6f47b 15821 "*icm15_cconly", "*cmpsi_ccs_0", "*icm3", "*cmphi_ccs_0", "*icm1",
07893d4f
UW
15822 "*cmpqi_ccs_0"): Remove, replace by ...
15823 ("*tstdi_sign", "*tstdi", "*tstdi_cconly", "*tstdi_cconly_31",
5ce6f47b 15824 "*tstsi", "*tstsi_cconly", "*tstsi_cconly2", "*tsthi", "*tsthi_cconly",
07893d4f
UW
15825 "*tstqi", "*tstqi_cconly"): ... these new patterns.
15826
15827 ("*cmpsidi_ccs"): Remove, replace by ...
15828 ("*cmpsi_ccs_sign"): ... this new pattern.
15829 ("*cmpdi_ccs_sign", "*cmpdi_ccu_zero"): New patterns.
15830
15831 ("*cmpqi_ccu_0", "*cmpqi_ccu_immed"): Remove, replace by ...
15832 ("*cli"): ... this new pattern.
15833
15834 ("*adddi3_sign", "*adddi3_zero_cc", "*adddi3_zero_cconly",
15835 "*adddi3_zero", "*adddi3_cc", "*adddi3_cconly", "*adddi3_cconly2"):
15836 New patterns.
15837 ("adddi3_64"): Rename to "*adddi3_64".
15838 ("adddi3_31"): Replace by insn and splitter "*adddi3_31".
15839 ("adddi3"): Adapt expander.
15840
15841 ("*addsi3_cc"): Allow "general_operand" for operand 2.
5ce6f47b 15842 ("*addsi3_carry1_cc", "*addsi3_carry1_cconly",
07893d4f
UW
15843 "*addsi3_carry2_cc", "*addsi3_carry2_cconly"): New patterns.
15844
15845 ("addhi3", "addqi3"): Remove, replace by ...
15846 ("*addsi3_sign", "*addsi3_sub"): ... these new patterns.
15847
15848 ("*subdi3_sign", "*subdi3_zero_cc", "*subdi3_zero_cconly",
15849 "*subdi3_zero", "*subdi3_cc", "*subdi3_cconly"): New patterns.
15850 ("subdi3"): Replace by insn and splitter "*subdi3_31".
15851 ("subdi3"): New expander.
15852
15853 ("*subsi3_borrow_cc", "*subsi3_borrow_cconly"): New patterns.
15854
15855 ("subhi3", "subqi3"): Remove, replace by ...
15856 ("*subsi3_sign", "*subsi3_sub"): ... these new patterns.
15857
15858 ("*muldi3_sign"): New pattern.
15859 ("muldi3"): Do not clobber CC.
15860 ("mulsi3"): Likewise.
15861 ("mulsi_6432"): Likewise.
15862
db62867b
DC
158632002-08-13 Denis Chertykov <denisc@overta.ru>
15864
15865 * config/avr/avr.md: Call CC_STATUS_INIT in all peepnoles
8537ed68 15866 which can change CC0.
db62867b 15867
8ba46434
R
15868Tue Aug 13 14:49:20 2002 J"orn Rennecke <joern.rennecke@superh.com>
15869
15870 * gcse.c (adjust_libcall_notes): New function.
15871 (do_local_cprop): Use it. Add fourth parameter. Changed caller.
15872
8733892f
NS
158732002-08-13 Nathan Sidwell <nathan@codesourcery.com>
15874
15875 * libgcc2.c (L_bb): Remove unneeded #includes.
15876 (__global_counters, __gthreads_active): Remove unused globals.
15877 (__bb_exit_func): Merge counts into files rather than appending.
15878 * Makefile.in (INTERNAL_CFLAGS): Move COVERAGE_FLAGS from here ...
15879 (ALL_CFLAGS): ... to here.
15880
f4769721
DC
158812002-08-13 Denis Chertykov <denisc@overta.ru>
15882
15883 * config/ip2k/ip2k.c (commands_in_file): Variable removed.
15884 (function_epilogue): Don't calculate function size.
15885 (ip2k_set_compare): Don't use lookup_const_double.
15886 (asm_file_start): Initialization of commands_in_file removed.
15887 (asm_file_end): Output of commands_in_file removed.
5ce6f47b 15888
f4769721
DC
15889 * config/ip2k/ip2k.c (CPP_PREDEFINES): Remove definition of
15890 __INT_MAX__.
15891
c31cddfd
NB
158922002-08-13 Neil Booth <neil@daikokuya.co.uk>
15893
15894 * c-opts.c (c_common_init_options): Check option array is
15895 sorted if checking enabled.
15896
f076f0ce
GDR
158972002-08-13 Gabriel Dos Reis <gdr@nerim.net>
15898
15899 * c-pretty-print.c: #include "c-tree.h".
15900 (pp_c_simple_type_specifier): Tweak.
15901 (pp_c_storage_class_specifier): New.
15902 (pp_c_function_specifier): Likewise.
15903 (pp_c_declaration_specifiers): Likewise.
15904 (pp_c_init_declarator): Likewise.
15905 (pp_c_declaration): Likewise.
15906 (pp_c_direct_declarator): Stub.
15907 (pp_c_declarator): Likewise.
15908 (pp_c_parameter_declaration): Likewise.
15909
f4ff5a69
NB
159102002-08-13 Neil Booth <neil@daikokuya.co.uk>
15911
15912 * c-opts.c (deps_seen, deps_file, deferred_count, deferred_size,
15913 handle_deferred_opts, sanitize_cpp_opts, defer_opt,
15914 struct deferred_opt): New.
15915 (COMMAND_LINE_OPTIONS): Add -M*.
15916 (missing_arg): Update.
15917 (c_common_decode_option): Handle -M*.
15918 (c_common_post_options): Handle -M*. Use sanitize_cpp_opts;
15919 don't call cpp_post_options.
15920 (c_common_finish, check_deps_environment_vars): Update.
15921 * cppfiles.c (stack_include_file, handle_missing_header): Update.
15922 * cpphash.h (CPP_PRINT_DEPS): Remove.
15923 * cppinit.c: Don't include version.h.
15924 (cpp_create_reader): Don't call deps_init. Initialize
15925 warn_long_long.
15926 (cpp_read_main_file): Init deps if necessary.
15927 (cpp_destroy): Conditionally free deps.
15928 (cpp_finish): Update.
15929 (no_tgt): Remove.
15930 (COMMAND_LINE_OPTIONS, cpp_handle_option): Remove -M*.
15931 (cpp_post_options): Rename post_options.
15932 * cpplib.h (struct cpp_options): Remove some dependency options;
15933 move others to a new structure.
15934 (cpp_post_options): Remove.
15935 (cpp_finish): Comment.
15936 * fix-header.c (read_scan_file): Don't call cpp_post_options.
15937
34116c2a
HPN
159382002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
15939
15940 * config/mmix/mmix.md (define_constants): Add MMIX_rR_REGNUM.
15941 ("divdi3", "*divdi3_nonknuth", "moddi3", "*moddi3_nonknuth"): Mark
15942 MMIX_rR_REGNUM as clobbered.
15943 * config/mmix/mmix.h (MMIX_REMAINDER_REGNUM): Use MMIX_rR_REGNUM.
15944
9b32718c
GDR
159452002-08-12 Gabriel Dos Reis <gdr@nerim.net>
15946
15947 * diagnostic.h (output_formatted_scalar): Rename from
5ce6f47b 15948 output_formatted_integer.
9b32718c
GDR
15949 * diagnostic.def: Add DK_DEBUG.
15950 * diagnostic.c (output_decimal): Adjust.
15951 (output_long_decimal): Likewise.
15952 (output_unsigned_decimal): Likewise.
15953 (output_octal): Likewise.
15954 (output_long_octal): Likewise.
15955 (output_hexadecimal): Likewise.
15956 (output_long_hexadecimal): Likewise.
15957 * c-pretty-print.c (pp_c_type_specifier): New function.
15958 (pp_c_specifier_qualifier_list): Likewise.
15959 (pp_c_abstract_declarator): Likewise.
15960 (pp_c_char): Replace pp_format_integer with pp_format_scalar.
15961
032613df
DE
159622002-08-12 David Edelsohn <edelsohn@gnu.org>
15963
15964 * doc/trouble.texi (Disappointments): Add static constructor and
15965 destructor dependency information for AIX.
15966
a3737481
NB
159672002-08-12 Neil Booth <neil@daikokuya.co.uk>
15968
15969 * cpphash.h (struct printer): New from cppmain.c.
15970 (cpp_reader): New member.
15971 * cppmain.c (struct printer): Move to cpphash.h.
15972 (options, print): Remove.
15973 (account_for_newlines, print_line, maybe_print_line,
15974 cpp_preprocess_file, setup_callbacks, scan_translation_unit,
15975 scan_translation_unit_trad, cb_line_change, cb_ident,
15976 cb_define, cb_undef, cb_include, cb_file_change, dump_macro,
15977 cb_def_pragma): Make reentrant.
15978
d71f7700
KG
159792002-08-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15980
15981 * real.c (ieee_64): Always define.
15982 (ieee_113): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
15983 (dec_h): Not used yet, hide it.
15984 (emdnorm): Mark parameter in ATTRIBUTE_UNUSED. Guard label with
15985 macro controlling use.
15986 (TFbignan, TFlittlenan): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
15987
c16576e6
JH
15988Mon Aug 12 12:48:20 CEST 2002 Jan Hubicka <jh@suse.cz>
15989
15990 * i386.md (tablejump): Sign extend the operand.
15991 * i386.c (classify_argument): Fix missed case from previous patch.
15992
460bd0e3
NB
159932002-08-12 Neil Booth <neil@daikokuya.co.uk>
15994
15995 * c-common.c (STDC_0_IN_SYSTEM_HEADERS, c_common_init): Move
15996 to c-copts.c.
15997 (warn_multichar): Die.
15998 (cb_register_builtins): Export.
15999 * c-common.h (warn_multichar, preprocess_file): Remove.
16000 (cb_register_builtins): New.
16001 * c-lang.c (c_init): Remove.
16002 (LANG_HOOKS_INIT): Use c_objc_common_init.
16003 * c-lex.c (init_c_lex): Don't canonicalize filename.
16004 * c-opts.c (in_fname, STDC_0_IN_SYSTEM_HEADERS): New.
16005 (preprocess_file): Make static. Update for cpplib.
16006 (c_common_decode_option): Remove warn_multichar. Use in_fname.
16007 (c_common_post_options): Set some cpp options here.
16008 (c_common_init): Move from c-common.c.
16009 * cppinit.c (cpp_post_options): Don't canonicalize in_fname.
16010 * cpplib.h (struct cpp_options): Remove in_fname.
16011 (cpp_preprocess_file): Update.
16012 * cppmain.c (cpp_preprocess_file): Update for new prototypes.
16013
f3f268dd
KG
160142002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16015
16016 * config.gcc (mips*-*-netbsd*): Include ${tm_file}.
16017
f0201fba
KG
160182002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16019
16020 * i370.h (TARGET_CPU_CPP_BUILTINS): Remove spurious trailing
16021 backslash in comment preceeding macro definition.
16022 * i370/linux.h (TARGET_OS_CPP_BUILTINS): Likewise.
16023 * i370/mvs.h (TARGET_OS_CPP_BUILTINS): Likewise.
16024 * i370/oe.h (TARGET_OS_CPP_BUILTINS): Likewise.
16025
e56fc090
HPN
160262002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
16027
16028 * expr.c (store_expr): In condition for checking if value is
16029 generated in TARGET, move call to expr_size last.
16030
76c3e73e
NB
160312002-08-11 Neil Booth <neil@daikokuya.co.uk>
16032
16033 * c-common.c (c_common_init): Call preprocess_file instead.
16034 (c_common_finish): Move to c-opts.c.
16035 * c-common.h (preprocess_file): new.
16036 * c-opts.c (out_fname, out_stream, deps_append, preprocess_file,
16037 check_deps_environment_vars, c_common_finish): New.
16038 (c_common_decode_option): Update for out_fname and dependencies.
16039 * cppinit.c (init_dependency_output, output_deps): Remove.
16040 (cpp_destroy): Update prototype.
16041 (cpp_add_dependency_target): New.
16042 (cpp_read_main_file): Don't overlay a buffer.
16043 (cpp_finish): Take a deps output stream and write deps to it.
16044 Return the error count.
16045 (cpp_post_options): Don't canonicalize out_fname, or do anything
16046 with dependencies.
16047 * cpplib.h (struct cpp_options): Remove out_fname and
16048 preprocess_only.
16049 (cpp_add_dependency_target): New.
16050 (cpp_destroy, cpp_finish, cpp_preprocess_file): Update.
16051 * cppmain.c (cpp_preprocess_file): Update prototype. Don't
16052 set preprocess_only. Don't handle the output stream directly.
16053
e0c32c62
KG
160542002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16055
16056 * dsp16xx.c (print_operand): Fix format specifier.
16057 * dsp16xx.md: Avoid automatic aggregate initialization.
16058 * frv.h (REG_CLASS_FROM_LETTER): Avoid char as array index.
16059 * h8300.c (emit_a_rotate, h8300_adjust_insn_length): Avoid U
16060 integer constant modifier.
16061 * ip2k.c (ip2k_set_compare): Avoid signed/unsigned warning.
16062 * mmix-protos.h (mmix_use_simple_return): Move outside TREE_CODE
16063 guards.
16064 * sh/netbsd-elf.h (FUNCTION_PROFILER): Fix format specifier.
16065 * v850.c (v850_select_section): Mark parameter with
16066 ATTRIBUTE_UNUSED.
16067 * global.c (global_alloc): Const-ify.
16068 * ra-colorize.c (hardregset_to_string): Fix format specifier.
16069
7ae8cf75
KG
160702002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16071
16072 * darwin-c.c (darwin_pragma_options): Const-ify.
16073 * darwin.c (machopic_non_lazy_ptr_name,
16074 machopic_validate_stub_or_non_lazy_ptr): Likewise.
16075 (machopic_indirect_data_reference): Wrap variables in macros
16076 controlling their use.
16077 (machopic_finish, update_non_lazy_ptrs, update_stubs): Const-ify.
16078 (machopic_select_section): Use parentheses around && within ||.
16079 * i386/darwin.h (ASM_OUTPUT_ALIGN): Avoid ambiguous-else.
16080
8819cab5
KG
160812002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16082
16083 * ip2k.c (mdr_resequence_xy_yx, mdr_propagate_reg_equivs,
16084 mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
16085 ip2k_adjust_stack_ref, mdr_try_move_pushes, mdr_try_propagate_clr,
16086 ip2k_xexp_not_uses_reg_for_mem, mdr_try_propagate_move,
16087 mdr_try_remove_redundant_insns, track_w_reload,
16088 mdr_try_wreg_elim): Make function static to match prototype.
16089 * mmix.c (mmix_target_asm_function_epilogue): Likewise. Mark
16090 parameter with ATTRIBUTE_UNUSED.
16091
ab2877a3
KG
160922002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16093
16094 * arc.c (arc_init): Don't use ISO C style function definitions.
16095 * arm.c (count_insns_for_constant, thumb_far_jump_used_p,
16096 arm_get_strip_length, arm_strip_name_encoding): Likewise.
16097 * avr.h (progmem_section): Likewise.
16098 * h8300.c h8300_asm_insn_count): Likewise.
16099 * m32r.c (init_idents): Likewise.
16100 * s390.c (s390_split_branches, s390_chunkify_pool): Likewise.
16101 * sh.c (sh_cfun_interrupt_handler_p): Likewise.
16102 * xtensa.c (xtensa_build_va_list): Likewise.
16103
08767a6f
NB
161042002-08-11 Neil Booth <neil@daikokuya.co.uk>
16105
16106 * c-common.h (enum c_language_kind): Emphasize that clk_c is 0.
16107 * c-opts.c (parse_option): Rename find_opt.
16108 (set_std_c99): New function.
16109 (COMMAND_LINE_OPTIONS): Handle -remap and -o. Remove OPT_std_bad.
16110 (missing_arg): Remove OPT_std_bad. Handle -o.
16111 (c_common_decode_option): Handle input and output file names,
16112 -o and -remap. Clean up -std= handling.
16113 * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_o and OPT_remap.
16114 (cpp_handle_option): Similarly. Don't handle filenames.
16115
db01f480
JH
16116Sun Aug 11 14:43:17 CEST 2002 Jan Hubicka <jh@suse.cz>
16117
16118 * i386.c (classify_argument): Fix computing of field's offsets.
16119
a7701995
AJ
161202002-08-11 Andreas Jaeger <aj@suse.de>
16121
16122 PR target/7531:
16123 * doc/invoke.texi (i386 and x86-64 Options): Document -mcmodel.
16124
2516f236
ZL
161252002-08-10 Ziemowit Laski <zlaski@apple.com>
16126
16127 * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Replace
16128 reference to clk_objective_c with flag_objc.
16129 * config/i386/i386-interix.h (TARGET_OS_CPP_BUILTINS):
16130 Likewise.
16131 * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Likewise.
16132
f749a36b
NB
161332002-08-10 Neil Booth <neil@daikokuya.co.uk>
16134
16135 * c-opts.c (set_std_cxx98, set_std_c89): New.
16136 (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
16137 (c_common_decode_option): Handle new switches from cppinit.c.
16138 Add -std=gnu++98.
16139 * cppinit.c (set_lang): Rename cpp_set_lang. Export.
16140 (no_arg, no_num): Remove.
16141 (COMMAND_LINE_OPTIONS): Move more to c-opts.c. Drop all lang-
16142 switches apart from -lang-objc and lang-asm.
16143 (cpp_handle_option): Similarly.
16144 * cpplib.h (cpp_set_lang): New.
16145 * doc/cppopts.texi, doc/invoke.texi: Document -std=c++98,
16146 -std=gnu++98.
16147 * objc/lang-specs.h: Remove -ansi.
16148
77abb5d8
JH
16149Sat Aug 10 19:59:43 CEST 2002 Jan Hubicka <jh@suse.cz>
16150 Graham Stott
16151
16152 * cfg.c (redirect_edge_succ_nodup): Avoid overflows due to roundoff
16153 errors.
16154
fac37dc4
KG
161552002-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16156
d950dee3
KG
16157 * emit-rtl.c (emit_jump_insn_before, emit_call_insn_before,
16158 emit_jump_insn): Fix uninitialized variable.
16159 * gcov.c (init_line_info): Likewise.
16160 * genautomata.c (transform_3): Add braces around ambiguous
16161 else.
16162 * ifcvt.c (cond_exec_process_insns): Mark parameter with
16163 ATTRIBUTE_UNUSED.
16164 * ra-build.c (parts_to_webs_1): Fix uninitialized variable.
16165 * regrename.c (copyprop_hardreg_forward): Fix uninitialized
16166 variable.
16167
fac37dc4
KG
16168 * gengtype.c (write_gc_structure_fields): Avoid signed/unsigned
16169 warnings in output files.
16170
0f7866e7
ZL
161712002-08-09 Ziemowit Laski <zlaski@apple.com>
16172
16173 * c-common.c (flag_objc): New.
16174 * c-common.h (c_language_kind): Get rid of clk_objective_c
16175 enum value.
16176 (flag_objc): New extern declaration.
16177 * c-decl.c (implicitly_declare): Call objc_check_decl
16178 instead of maybe_objc_check_decl.
16179 (finish_decl): Likewise.
16180 (grokfield): Likewise.
16181 (finish_struct): Likewise.
16182 * c-lang.c (maybe_objc_check_decl): Rename to objc_check_decl.
16183 (maybe_objc_comptypes): Rename to objc_comptypes.
a7701995 16184 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
16185 objc_message_selector.
16186 * c-lex.c (lex_charconst): Remove uses of clk_objective_c,
16187 replace with flag_objc as needed.
16188 * c-opts.c (c_common_init_options): Likewise.
16189 (c_common_decode_option): Likewise.
16190 * c-parse.in (init_reswords): Likewise.
16191 * c-tree.h (maybe_objc_check_decl): Rename to objc_check_decl.
16192 (maybe_objc_comptypes): Rename to objc_comptypes.
a7701995 16193 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
16194 objc_message_selector.
16195 * c-typeck.c (comptypes): Call objc_comptypes instead of
16196 maybe_objc_comptypes, and/or objc_message_selector instead of
16197 maybe_building_objc_message_expr.
16198 (comp_target_types): Likewise.
16199 (convert_for_assignment): Likewise.
16200 (warn_for_assignment): Likewise.
16201 * cppinit.c (init_builtins): Set __OBJC__ manifest constant
16202 independently of those for other languages.
16203 * objc/objc-act.c (maybe_objc_comptypes): Delete.
16204 (maybe_objc_check_decl): Delete.
a7701995 16205 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
16206 objc_message_selector.
16207 * objc/objc-lang.c (objc_init_options): Use clk_c instead of
16208 clk_objective_c; set flag_objc flag.
16209
c512fd7b
TM
162102002-08-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
16211
16212 * ifcvt.c (find_if_case_2): Test correct basic block for size.
16213
5e1bf043 162142002-08-09 Dale Johannesen <dalej@apple.com>
c512fd7b 16215
5e1bf043
DJ
16216 * config/rs6000/rs6000.md: Add sibcall patterns.
16217 * config/rs6000/rs6000.h (FUNCTION_OK_FOR_SIBCALL): Define.
16218 * config/rs6000/rs6000.c (rs6000_ra_ever_killed):
16219 Rewritten to handle sibcalls.
16220 * config/rs6000/rs6000.c (function_ok_for_sibcall): New.
16221 * config/rs6000/rs6000-protos.h (function_ok_for_sibcall): New.
16222
2043c38e
NS
162232002-08-08 Nathan Sidwell <nathan@codesourcery.com>
16224
16225 * profile.c (da_file_name): New static var.
16226 (init_branch_prob): Initialize it.
16227 (end_branch_prob): Remove da file.
16228
16229 * Makefile.in (stage1_build): Pass empty COVERAGE_FLAGS.
41685063 16230 * configure.in (coverage_flags): Default to nothing.
2043c38e
NS
16231 * configure: Rebuilt.
16232
4b7091eb
NB
162332002-08-09 Neil Booth <neil@daikokuya.co.uk>
16234
16235 * Makefile.in (c-opts.o): Update
16236 * c-opts.c: Include intl.h.
16237 (print_help): Move from cppinit.c. Remove unused options.
16238 (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
16239 (missing_arg): Complain for switches without an argument.
16240 (c_common_decode_option): Reject missing joined arguments.
16241 Handle new switches from cppinit.c.
16242 * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
16243 (cpp_handle_option): Similarly.
16244 (print_help): Moved to c-opts.c.
16245 * cpplib.h (struct cpp_options): Remove help_only.
16246 * gcc.c (cpp_unique_options): Remove -$.
16247 * doc/cppopts.texi: Undocument -h.
16248
9e20be0c
JJ
162492002-08-08 Jakub Jelinek <jakub@redhat.com>
16250
16251 * config/i386/i386.c (legitimate_constant_p): UNSPEC_TP is not
16252 legitimate constant.
16253 (legitimate_pic_operand_p): Neither pic operand.
16254 (legitimate_address_p): But legitimate address.
16255 (get_thread_pointer): Generate MEM/u instead of CONST around
16256 UNSPEC_TP.
16257 (print_operand): Remove printing of UNSPEC_TP.
16258 (print_operand_address): And print it here.
16259
7b9be5c7 162602002-08-08 Devang Patel <dpatel@apple.com>
9e20be0c 16261
a7701995
AJ
16262 * objc/objc-act.c (build_selector_translation_table): Issue warning,
16263 when -Wselector is used,if method for which selector is being
7b9be5c7 16264 created does not exist.
a7701995 16265
5615d8fd
SC
162662002-08-08 Stephen Clarke <stephen.clarke@superh.com>
16267
16268 * config/sh/sh.c (prepare_move_operands): Only call
16269 target_reg_operand if TARGET_SHMEDIA.
a7701995 16270
3b85fe5f
JJ
162712002-08-08 Jakub Jelinek <jakub@redhat.com>
16272
16273 * config/rs6000/rs6000.h, config/rs6000/aix.h,
16274 config/rs6000/darwin.h, config/rs6000/linux64.h: Revert last
16275 two patches.
16276 * config/rs6000/sysv4.h: Likewise, remove #undef ADJUST_FIELD_ALIGN.
16277
e10c79fe
LB
162782002-08-08 Lars Brinkhoff <lars@nocrew.org>
16279 Richard Henderson <rth@redhat.com>
16280
16281 * emit-rtl.c (gen_rtx_REG): After reload, only return
16282 frame_pointer_rtx or hard_frame_pointer_rtx if frame_pointer_needed.
16283
aa2a83dc
JJ
162842002-08-08 Jakub Jelinek <jakub@redhat.com>
16285
16286 * config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove.
16287 * config/rs6000/rs6000.c (rs6000_field_alignment): Move...
16288 * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the
16289 macro.
16290
aeaf4d25
AN
162912002-08-08 Adam Nemet <anemet@lnxw.com>
16292
16293 * config/arm/arm.c (thumb_unexpanded_epilogue): Stack the PIC
16294 register.
16295 (thumb_expand_prologue): Likewise.
16296 (thumb_output_function_prologue): Likewise.
16297 * config/arm/arm.h (THUMB_INITIAL_ELIMINATION_OFFSET): Account for
16298 the additional push of the PIC register.
16299
22aa533e
NS
163002002-08-08 Nathan Sidwell <nathan@codesourcery.com>
16301
16302 * configure.in (enable_coverage): New enable switch.
16303 * configure: Rebuilt.
16304 * Makefile.in (COVERAGE_FLAGS, coverageexts): New variables.
16305 (INTERNAL_CFLAGS): Append COVERAGE_FLAGS.
16306 (ALL_FLAGS): Reorder so INTERNAL_CFLAGS comes after CFLAGS.
16307 (mostlyclean): Remove coverage files.
16308 * doc/install.texi: Document enable_coverage.
16309
16310 * cp/Make-lang.in (c++.mostlyclean): Remove coverage files.
16311 * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
16312 * f/Make-lang.in (f.mostlyclean): Remove coverage files.
16313 * java/Make-lang.in (java.mostlyclean): Remove coverage files.
16314 * objc/Make-lang.in (objc.mostlyclean): Remove coverage files.
16315 * treelang/Make-lang.in (treelang.mostlyclean): Remove coverage
16316 files.
a7701995 16317
18bdccaa
NB
163182002-08-08 Neil Booth <neil@daikokuya.co.uk>
16319
16320 * c-opts.c (cpp_opts): New.
16321 (COMMAND_LINE_OPTIONS): Add switches from cppinit.c.
16322 (c_common_decode_options): Handle cpplib switches.
16323 (c_common_init_options): Set cpp_opts.
16324 * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
16325 (cpp_handle_option): Similarly.
16326
774b5662
DE
163272002-08-08 David Edelsohn <edelsohn@gnu.org>
16328
16329 * config/rs6000/aix.h (TARGET_ALTIVEC): Define to 0.
16330 (TARGET_ALTIVEC_ABI): Same.
16331 (TARGET_ALTIVEC_VRSAVE): Same.
16332
16333 * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Check
16334 icode not CODE_FOR_nothing. Change switch to if.
16335
957e9e48
AM
163362002-08-08 Alan Modra <amodra@bigpond.net.au>
16337
16338 * config/rs6000/rs6000.h (ASM_CPU_SPEC): Pass -mpower4 when cpu=power4.
16339
daf06049
JJ
163402002-08-08 Jakub Jelinek <jakub@redhat.com>
16341
16342 * stor-layout.c (place_union_field): For bitfields if
16343 PCC_BITFIELD_TYPE_MATTERS and TYPE_USER_ALIGN, set record's
16344 TYPE_USER_ALIGN.
16345
043d39a6
JDA
163462002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
16347
16348 * pa.c (struct deferred_plabel): Constify name field.
16349
34bb92e3
NB
163502002-08-07 Neil Booth <neil@daikokuya.co.uk>
16351
16352 * cppmacro.c (_cpp_builtin_macro_text): Remove unused variable.
16353
3ec5d64d
JDA
163542002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
16355
16356 * configure.in (PREFIX_INCLUDE_DIR): Don't define if prefix and
16357 local_prefix are the same.
16358 * configure: Rebuilt.
16359
ad9335eb
JJ
163602002-08-07 Jakub Jelinek <jakub@redhat.com>
16361 Richard Henderson <rth@redhat.com>
16362
16363 * stor-layout.c (place_union_field): Apply ADJUST_FIELD_ALIGN
16364 to type_align when PCC_BITFIELD_TYPE_MATTERS. Only apply
16365 ADJUST_FIELD_ALIGN if not DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
16366 (place_field): Likewise.
16367 * config/i386/i386.c (x86_field_alignment): Don't check
16368 DECL_USER_ALIGN here.
16369 * config/rs6000/rs6000.c (rs6000_field_alignment): New.
16370 * config/rs6000/rs6000-protos.h (rs6000_field_alignment): New
16371 prototype.
16372 * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): Define.
16373 * config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Remove.
16374 * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Remove.
16375 * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Remove.
16376 * config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Remove.
16377 * doc/tm.texi (ADJUST_FIELD_ALIGN): Update description.
16378
0b6f2917
NB
163792002-08-07 Neil Booth <neil@daikokuya.co.uk>
16380
16381 * Makefile.in (c-opts.o, c-common.o, C_AND_OBJC_OBJS): Update.
16382 * c-common.c: Don't include tree-inline.h.
16383 (c_common_init_options, c_common_post_options): Move to c-opts.c.
16384 * c-common.h (c_common_decode_option): New.
16385 * c-decl.c (c_decode_option): Remove.
16386 * c-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option.
16387 * c-opts.c: New file.
16388 * c-tree.h (c_decode_option): Remove.
16389 * doc/passes.texi: Update.
16390 * objc/objc-act.c (objc_decode_option): Remove.
16391 * objc/objc-act.h (objc_decode_option): Remove.
16392 * objc/ojbc-lang.c (LANG_HOOKS_DECODE_OPTION): Use
16393 c_common_decode_option.
16394
e49ec17d
CD
163952002-08-07 Chris Demetriou <cgd@broadcom.com>
16396
16397 * config/mips/mips.md (sunlt_sf, suneq_sf, sunle_sf): Remove
16398 dependency on TARGET_DOUBLE_FLOAT.
16399
ac1ca451
SC
164002002-08-07 Stephen Clarke <stephen.clarke@superh.com>
16401
16402 * config/sh/lib1funcs.asm (GCC_shcompact_incoming_args): Don't
16403 overwrite callee-save registers. Fix comment.
16404
af34e51e
CD
164052002-08-06 Chris Demetriou <cgd@broadcom.com>
16406
16407 * config/mips/mips.c (override_options): Set MASK_BRANCHLIKELY
16408 in target_flags based on ISA, if it was not set on the command
16409 line. Warn if MASK_BRANCHLIKLEY is set but the ISA does not
16410 support Branch Likely instructions.
16411 * config/mips/mips.h (MASK_BRANCHLIKLEY): New macro.
16412 (TARGET_BRANCHLIKELY): Likewise.
16413 (TARGET_SWITCHES): Add -mbranch-likely and -mno-branch-likely.
16414 (GENERATE_BRANCHLIKELY): Use TARGET_BRANCHLIKELY rather than
16415 ISA_HAS_BRANCHLIKELY.
16416 (ISA_HAS_BRANCHLIKELY): Do not include MIPS16 check.
16417 * doc/invoke.texi: Document new MIPS -mbranch-likely and
16418 -mno-branch-likely options.
16419
2631af95
KG
164202002-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16421
f538618e
KG
16422 * ip2k.c (ip2k_set_compare): Add missing iteration variable.
16423
2631af95
KG
16424 * Makefile.in (dummy-conditions.o): Depend on $(HCONFIG_H) not
16425 $(GCONFIG_H).
16426
1ae0ccb6
AH
164272002-08-06 Aldy Hernandez <aldyh@redhat.com>
16428
8537ed68
ZW
16429 * c-decl.c (duplicate_decls): Error out for incompatible TLS
16430 declarations.
1ae0ccb6 16431
8537ed68 16432 * testsuite/gcc.dg/tls/diag-3.c: New.
1ae0ccb6 16433
8d3e27d1 164342002-08-06 Dale Johannesen <dalej@apple.com>
db4c55f6 16435
8d3e27d1 16436 * c-common.c (fname_decl): Use line number 0 for
8537ed68 16437 __func__, to avoid confusing debuggers.
8d3e27d1 16438
8b219a76
NS
164392002-08-06 Nathan Sidwell <nathan@codesourcery.com>
16440
16441 * gcov.c: Tidy.
16442 (struct line_info, struct coverage): New structures.
16443 (gcov_file_name, gcov_file): Remove globals.
16444 (output_data): Take source file parameter. Fix memory leak. Break
16445 up into ...
16446 (init_line_info, output_line_info, make_gcov_file_name,
16447 accumulate_branch_counts): ... here.
16448 (calculate_branch_probs, function_summary): Adjust.
16449 (main): Adjust.
16450 (function_*): Remove global variables.
16451
317e98c0
NB
164522002-08-06 Neil Booth <neil@daikokuya.co.uk>
16453
16454 * dwarf2out.c: Remove unused macros.
16455
81d41e74
NB
164562002-08-06 Neil Booth <neil@daikokuya.co.uk>
16457
16458 * function.c (TRAMPOLINE_ALIGNMENT): Always defined.
16459
58551c23
NB
164602002-08-06 Neil Booth <neil@daikokuya.co.uk>
16461
16462 * cppinit.c (struct lang_flags): Rename trigraphs std.
16463 (set_lang): Update.
16464 * cpplib.h (struct cpp_options): New member std.
16465 * cppmacro.c (_cpp_builtin_macro_text): Use std.
16466 (collect_args): Flag whether to swallow a possible future
16467 comma pasted with varargs.
16468 (replace_args): Use this flag.
16469 * doc/cpp.texi: Update varargs extension documentation.
16470
daeabcd0
JJ
164712002-08-06 Jakub Jelinek <jakub@redhat.com>
16472
16473 * config/i386/mmintrin.h (__m64): Make the type 64-bit aligned.
16474
39e3a681
JJ
164752002-08-06 Jakub Jelinek <jakub@redhat.com>
16476
9812691e
JJ
16477 * config/i386/i386.c (x86_field_alignment): Apply min for all MODE_INT
16478 and MODE_CLASS_INT modes.
39e3a681 16479
609a87f3
JJ
164802002-08-06 Jakub Jelinek <jakub@redhat.com>
16481
16482 * config.gcc (*-*-linux*): Default to --enable-threads=posix if no
16483 --{enable,disable}-threads is given to configure.
16484 (alpha*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux*,
16485 x86_64-*-linux*, ia64*-*-linux*, m68k-*-linux*, mips*-*-linux*,
16486 powerpc-*-linux-gnualtivec*, powerpc-*-linux*, s390-*-linux*,
16487 s390x-*-linux*, sh-*-linux*, sparc-*-linux*, sparc64-*-linux*):
16488 Remove thread_file setting here.
16489
ff4c5e7b
DE
164902002-08-06 David Edelsohn <edelsohn@gnu.org>
16491
16492 * doc/install.texi (Binaries): Update Bull Freeware URL.
16493
54f3aa9e
GP
164942002-08-06 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
16495
16496 * doc/gcc.texi (Top): Rename Index to Keyword Index.
16497
d19202ba
NS
164982002-08-05 Nathan Sidwell <nathan@codesourcery.com>
16499
16500 * gcov.c (output_data): Round to % to nearest, tweak formatting.
16501
1bed5ee3
JJ
165022002-08-05 Jakub Jelinek <jakub@redhat.com>
16503
16504 * fold-const.c (associate_trees): Only optimize NEGATE_EXPR in one
16505 of the operands into MINUS_EXPR if code is PLUS_EXPR.
16506
84512347
DR
165072002-08-05 Douglas B Rupp <rupp@gnat.com>
16508
16509 * config.gcc (i[34567]86-*-interix*): Replace interix.o with winnt.o
16510 * config/i386/i386-interix.h (TARGET_NOP_FUN_DLLIMPORT,
16511 drectve_section): Define.
16512 * config/i386/t-interix: Replace interix.o rule with winnt.o.
16513 * config/i386/interix.c: Remove.
16514
b835f6f1
GK
165152002-08-05 Geoffrey Keating <geoffk@redhat.com>
16516
16517 * attribs.c: Don't include obstack.h.
16518 * builtins.c: Likewise.
16519 * cfganal.c: Likewise.
16520 * cfgbuild.c: Likewise.
16521 * cfgcleanup.c: Likewise.
16522 * emit-rtl.c: Likewise.
16523 * loop.c: Likewise.
16524 * stmt.c: Likewise.
16525
16526 * Makefile.in (s-gtype): Re-add dependency on $(GTFILES).
16527
fd291392
GDR
165282002-08-05 Gabriel Dos Reis <gdr@nerim.net>
16529
16530 * doc/c-tree.texi (Expression trees): Document VA_ARG_EXPR
16531
054b7507
CD
165322002-08-04 Chris Demetriou <cgd@broadcom.com>
16533
16534 * doc/invoke.texi: Remove duplicated paragraph describing
16535 TARGET_SWITCHES.
16536
6d9f628e
GK
165372002-08-04 Geoffrey Keating <geoffk@redhat.com>
16538
16539 * Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H).
16540 * collect2.h (permanent_obstack): Delete declaration.
16541 * collect2.c (permanent_obstack): Delete definition.
4912a07c 16542 (main): Don't initialize permanent_obstack. Use xstrdup instead.
6d9f628e
GK
16543 * expr.c: Don't include obstack.h.
16544 (permanent_obstack): Delete declaration.
16545 * function.c: Don't include obstack.h.
16546 (permanent_obstack): Delete declaration.
16547 * integrate.c: Don't include obstack.h.
16548 (function_maybepermanent_obstack): Delete declaration.
16549 * print-tree.c (debug_tree): Use x*alloc not permalloc.
16550 * sdbout.c (gen_fake_label): Use x*alloc not permalloc.
16551 * tlink.c (pfgets): Use xstrdup not permanent_obstack.
16552 * toplev.c (lang_independent_init): Rename init_obstacks to init_ttree.
16553 * tree.h: Rename init_obstacks to init_ttree. Remove declarations
16554 of permalloc, expralloc, perm_calloc.
16555 * tree.c (permanent_obstack): Delete definition.
16556 (init_ttree): Rename from init_obstacks.
16557 (permalloc): Delete.
16558 (perm_calloc): Delete.
16559 (dump_tree_statistics): Don't print information about
16560 permanent_obstack.
16561 * varasm.c (assemble_start_function): Use xstrdup instead of
16562 permalloc/strcpy.
16563 (assemble_variable): Likewise.
16564 * config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of
16565 permalloc.
16566 (unicosmk_add_extern): Likewise.
16567 * config/c4x/c4x.c (c4x_external_ref): Likewise.
16568 (c4x_global_label): Likewise.
16569 * config/frv/frv.c (frv_encode_section_info): Likewise.
16570 * config/i386/winnt.c (i386_pe_record_external_function): Likewise.
16571 (i386_pe_record_exported_symbol): Likewise.
16572 * config/mips/mips.c (mips_output_external): Likewise.
16573 (mips_output_external_libcall): Likewise.
16574 * config/pa/pa.c: (permanent_obstack): Delete declaration.
16575 (output_call): Use ggc_strdup instead of allocating on
16576 permanent_obstack.
16577 * config/romp/romp.c: Include ggc.h.
16578 (get_symref): Don't declare permanent_obstack, use ggc_strdup
16579 intead of permanent_obstack.
16580 * config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat
16581 instead of permalloc.
16582 * config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc
16583 instead of permalloc
16584 * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat
16585 instead of permalloc.
16586 * config/vax/vax.c (vms_check_external): Use xmalloc instead of
16587 permalloc.
16588
36a05131
BS
165892002-08-04 Bernd Schmidt <bernds@redhat.com>
16590
16591 Contribute a port developed primarily by Michael Meissner,
16592 Catherine Moore, and Richard Sandiford <rsandifo@redhat.com>.
16593 * config.gcc: Add frv-elf target.
16594 * config/frv/cmovd.c: New file.
16595 * config/frv/cmovh.c: New file.
16596 * config/frv/cmovw.c: New file.
16597 * config/frv/frv-abi.h: New file.
16598 * config/frv/frv-asm.h: New file.
16599 * config/frv/frv-modes.def: New file.
16600 * config/frv/frv-protos.h: New file.
16601 * config/frv/frv.c: New file.
16602 * config/frv/frv.h: New file.
16603 * config/frv/frv.md: New file.
16604 * config/frv/frvbegin.c: New file.
16605 * config/frv/frvend.c: New file.
16606 * config/frv/lib1funcs.asm: New file.
16607 * config/frv/media.h: New file.
16608 * config/frv/modi.c: New file.
16609 * config/frv/t-frv: New file.
16610 * config/frv/uitod.c: New file.
16611 * config/frv/uitof.c: New file.
16612 * config/frv/ulltod.c: New file.
16613 * config/frv/ulltof.c: New file.
16614 * config/frv/umodi.c: New file.
16615 * config/frv/xm-frv.h: New file.
86a0cbcb
BS
16616
16617 * config/frv/media.h: Removed again.
16618
37b8715b
NS
166192002-08-04 Nathan Sidwell <nathan@codesourcery.com>
16620
16621 * gcov.c (bb_file_time): New static variable.
16622 (object_directory): May also be object file.
16623 (preserve_paths): New static variable.
16624 (print_usage): Adjust.
16625 (options): Adjust.
16626 (process_args): Adjust.
16627 (open_files): Simplify. Cope when OBJECT_DIRECTORY is an object
16628 file. Find modification date on bb file.
16629 (read_profile): Don't rewind a NULL file.
16630 (format_hwint): New static function.
16631 (function_summary): Use format_hwint.
16632 (output_data): SOURCE_FILE_NAME is never relative to
16633 OBJECT_DIRECTORY. Use format_hwint. Adjust gcov file name
16634 mangling. Adjust output format to make it more machine readable.
16635 * doc/gcov.texi: Document & clarify semantics.
a7701995 16636
d500c5d7
JM
166372002-08-04 Joseph S. Myers <jsm@polyomino.org.uk>
16638
16639 * doc/include/gcc-common.texi (version-GCC): Increase to 3.3.
16640
ea67fe71
NS
166412002-08-04 Nathan Sidwell <nathan@codesourcery.com>
16642
16643 * gcc.c (cc1_options): Pass output file as auxbase when
16644 appropriate.
16645 * profile.c (init_branch_prob): FILENAME has already had ending
16646 stripped.
16647 * final.c (end_final): Likewise.
16648 * toplev.c (aux_base_name): New global.
16649 (compile_file): Pass aux_base_name to init init_branch_prob and
16650 end_final.
16651 (independent_decode_option, case 'a'): New auxinfo options.
16652 (case 'd'): Protect against mising basename.
16653 (do_compile): Initialize aux_base_name.
16654 * toplev.h (aux_base_name): New global.
16655 * doc/invoke.texi: Adjust documentation.
16656
b23c054d
NS
166572002-08-04 Nathan Sidwell <nathan@codesourcery.com>
16658
16659 * config/i386/i386.c (x86_field_alignment): Remove duplicate test
16660 of TARGET_ALIGN_DOUBLE.
16661
04c1334c 166622002-08-04 Gabriel Dos Reis <gdr@nerim.net>
a7701995 16663
04c1334c
GDR
16664 * diagnostic.c (inform): New function.
16665 * diagnostic.h (inform): Declare.
a7701995 16666
e34eaae5
DE
166672002-08-03 David Edelsohn <edelsohn@gnu.org>
16668
16669 * config/rs6000/rs6000.md (movsi_internal1): Add nop mnemonic.
16670 (movhi_internal): Same.
16671 (movqi_internal): Same.
16672 (movdi_internal64): Same.
16673
16674 * config/rs6000/t-ppccomm (MULTILIB_MATCHES_FLOAT): Add mcpu=405.
16675
16676 * config/rs6000/xcoff.h (SKIP_ASM_OP): Define.
16677 (ASM_OUTPUT_SKIP): Use it. SIZE unsigned.
16678 (COMMON_ASM_OP): Define.
16679 (ASM_OUTPUT_ALIGNED_COMMON): Use it. SIZE unsigned.
16680 Use ALIGN parameter.
16681 (LOCAL_COMMON_ASM_OP): Define.
16682 (ASM_OUTPUT_LOCAL): Use it. SIZE unsigned.
16683
e7b489c8
RS
166842002-08-03 Roger Sayle <roger@eyesopen.com>
16685
16686 * builtins.def: Define new builtin functions exp, expf, expl,
16687 log, logf and logl (and their __builtin_* variants).
16688 * optabs.h (enum optab_index): Add new OTI_exp and OTI_log.
16689 Define exp_optab and log_optab.
16690 * optabs.c (init_optans): Initialize exp_optab and log_optab.
16691 * genopinit.c (optabs): Implement exp_optab and log_optab
16692 using exp?f2 and log?f2 patterns.
16693 * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP*
16694 and BUILT_IN_LOG* using exp_optab and log_optab respectively.
16695 (expand_builtin): Ignore the new builtins (and all cos and
16696 sin variants) when not optimizing. Expand new builtins via
16697 expand_builtin_mathfn when flag_unsafe_math_optimizations.
16698
16699 * doc/extend.texi: Document new exp and log builtins.
16700 * doc/md.texi: Document new exp?f2 and log?f2 patterns
16701 (and previously undocumented cos?f2 and sin?f2 patterns).
16702
de8920be
JM
167032002-08-03 Jason Merrill <jason@redhat.com>
16704
16705 * explow.c (int_expr_size): New fn.
16706 * expr.c (expand_expr) [CONSTRUCTOR]: Use it.
16707 * expr.h: Declare it.
16708
ba462c8e
KW
167092002-08-02 Krister Walfridsson <cato@df.lth.se>
16710
16711 * Makefile.in (gengtype-lex.o, gengtype-yacc.o): Add path to
16712 gengtype-* dependencies.
16713
2017ed61
EC
167142002-08-02 Eric Christopher <echristo@redhat.com>
16715
16716 * config.gcc (mips*-*-linux*): Fix ordering of tm_file.
16717 * config/mips/mips.h (READONLY_DATA_SECTION_ASM_OP): Change
16718 #ifndef to #undef.
16719 (TARGET_MEM_FUNCTIONS): Define instead of define to 1.
16720
055dd007
DE
167212002-08-02 David Edelsohn <edelsohn@gnu.org>
16722
16723 PR optimize/7067
16724 * config/rs6000/rs6000.h (RTX_COSTS): Artificially make MULT
16725 small if optimizing for size.
16726
771a2a66
DJ
167272002-08-02 Daniel Jacobowitz <drow@mvista.com>
16728
16729 * configure.in (FORBUILD): Use $build_alias.
16730 * configure: Regenerated.
16731
ac8ab9fe
RS
167322002-08-02 Richard Sandiford <rsandifo@redhat.com>
16733
16734 * config.gcc: Don't include mips/abi64.h in $tm_file.
16735 * hard-reg-set.h (call_really_used_regs): Declare.
16736 * config/mips/abi64.h: Remove file.
16737 * config/mips/linux.h,
16738 * config/mips/iris6.h: Don't include it.
16739 * config/mips/mips-protos.h (mips_conditional_register_usage): Declare.
16740 * config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Use it.
16741 (REG_PARM_STACK_SPACE, STACK_BOUNDARY, STRICT_ARGUMENT_NAMING,
16742 FUNCTION_ARG_PASS_BY_REFERENCE, FUNCTION_ARG_PADDING,
16743 FUNCTION_ARG_CALLEE_COPIES, MUST_PASS_IN_STACK, MIPS_STACK_ALIGN):
16744 Bring across definitions from abi64.h.
16745 (GP_ARG_LAST, FP_ARG_LAST): Use MAX_ARGS_IN_REGISTERS.
16746 (BIGGEST_MAX_ARGS_IN_REGISTERS): New.
16747 (struct mips_args): Use it.
16748 * config/mips/mips.c (mips_conditional_register_usage): Define.
16749
a77a9a18
JM
167502002-08-02 Jason Merrill <jason@redhat.com>
16751
16752 * langhooks-def.h (LANG_HOOKS_EXPR_SIZE): New macro.
16753 * langhooks.c (lhd_expr_size): Define default.
16754 * langhooks.h (struct lang_hooks): Add expr_size.
16755 * explow.c (expr_size): Call it.
16756 * expr.c (store_expr): Don't copy an expression of size zero.
16757 (expand_expr) [CONSTRUCTOR]: Use expr_size to calculate how much
16758 to store.
16759 * Makefile.in (builtins.o): Depend on langhooks.h.
16760
a6be5aee
KG
167612002-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16762
16763 * Makefile.in (ra-debug.o): Depend on $(TM_P_H).
16764 * ra-debug.c: Include "tm_p.h".
16765 * ra-rewrite.c (is_partly_live_1): Change return type to bool.
16766
e3e16ee3
TM
167672002-08-02 Toon Moene <toon@moene.indiv.nluug.nl>
16768
16769 * simplify-rtx.c (simplify_binary_operation): x * 1 is allowed
16770 when not honoring signalling NaNs.
16771 (simplify_ternary_operation): a == b has a definite value
16772 when not honoring NaNs.
16773
b9d8832d
JM
167742002-08-02 Jason Merrill <jason@redhat.com>
16775
16776 * gdbinit.in (pct): New macro.
16777
825abef4
SS
167782002-08-01 Stan Shebs <shebs@apple.com>
16779 Andreas Tobler <toa@pop.agri.ch>
16780
16781 * ginclude/stddef.h (_BSD_SIZE_T_DEFINED_): Define if not defined,
16782 plays nice with Darwin headers.
bf2e488f 16783 (_BSD_RUNE_T_DEFINED_): Likewise.
825abef4 16784
56da7207
ZW
167852002-08-01 Zack Weinberg <zack@codesourcery.com>
16786
16787 * c-common.c (c_common_init): -Wtraditional also implies -Wlong-long.
16788 * cppinit.c (cpp_post_options): Likewise.
16789
16790 * cppexp.c (cpp_classify_number): Suppress -Wtraditional
16791 warning about 'LL' suffix (but not 'ULL' etc) when
16792 -Wno-long-long is in effect.
16793
16794 * cppmacro.c (_cpp_builtin_macro_text) [BT_TIME, BT_DATE]:
16795 Check for failing time()/localtime(), issue a warning, and
16796 make __TIME__ and __DATE__ expand to fallback strings.
16797
16798 * doc/cpp.texi, doc/extend.texi: Document behavior of __DATE__
16799 and __TIME__ when the date and time cannot be determined.
16800
f4857b9b
AM
168012002-08-02 Alan Modra <amodra@bigpond.net.au>
16802
16803 * config/rs6000/rs6000.c (output_cbranch): Hint differently for power4.
16804
77ca7b2e
DJ
168052002-08-01 Daniel Jacobowitz <drow@mvista.com>
16806
16807 * Makefile.in ($(BUILD_PREFIX_1)ggc-none.o): Use $(GGC_H).
16808
5b552f76
CD
168092002-08-01 Chris Demetriou <cgd@broadcom.com>
16810
16811 * config.gcc (mipsisa64sb1-*-elf*): New configuration.
16812 (mipsisa64sb1el-*-elf*): Likewise.
16813 * config/mips/mips.c (mips_cpu_info_table): Add sb1.
16814 * config/mips/mips.h (processor_type): Add PROCESSOR_SB1.
16815 (TARGET_SB1, TUNE_SB1): New macros.
16816 * doc/invoke.texi: Add sb1 to documentation for MIPS -march and
16817 -mtune flags.
16818
54fbf6a1
DE
168192002-08-01 David Edelsohn <edelsohn@gnu.org>
16820
16821 * varasm.c (asm_emit_uninitialized): Return false if global BSS
16822 and ASM_EMIT_BSS not supported by target.
16823 (assemble_variable): Do not duplicate uninitialized logic.
16824 Fall through if asm_emit_uninitialized failed.
16825
3d16b407
CD
168262002-08-01 Chris Demetriou <cgd@broadcom.com>
16827
16828 * config/mips/mips.h (BRANCH_LIKELY_P): Remove unused macro.
16829
fb52d8de
AM
168302002-08-02 Alan Modra <amodra@bigpond.net.au>
16831
80926cc1
AM
16832 * config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Define.
16833 (DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC): Define.
16834
fb52d8de
AM
16835 * config/rs6000/rs6000.c (output_toc): Don't use lshift_double when
16836 HOST_BITS_PER_WIDE_INT == 64.
16837
a4b5414c
KG
168382002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16839
16840 * df.c (df_insn_table_realloc): Change parameter to unsigned.
16841 * optabs.c (expand_binop): Make variable unsigned.
16842 * simplify-rtx.c (simplify_subreg): Likewise.
16843 * unroll.c (unroll_loop): Cast to avoid signed/unsigned warnings.
16844
a03e67c3
FS
168452002-08-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
16846
16847 * c-common.c (cb_register_builtins): Always define __GXX_ABI_VERSION.
16848
de273d3f
RH
168492002-08-01 Richard Henderson <rth@redhat.com>
16850
56da7207 16851 * toplev.c (parse_options_and_default_flags): Don't set
de273d3f
RH
16852 flag_reorder_blocks for -Os.
16853
16854 * config/avr/avr.c (avr_optimization_options): Remove.
16855 * config/avr/avr.h (OPTIMIZATION_OPTIONS): Remove.
16856 * config/m68hc11/m68hc11.c (m68hc11_optimization_options): Remove.
16857 * config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Remove.
16858
4e4d733e
L
168592002-08-01 H.J. Lu <hjl@gnu.org>
16860 Richard Henderson <rth@redhat.com>
16861
16862 * output.h (DECL_READONLY_SECTION): Remove.
16863 (decl_readonly_section): Declare.
16864 * varasm.c (decl_readonly_section): New.
16865 (default_section_type_flags, default_select_section): Use it.
16866 * config/arm/pe.c (arm_pe_unique_section): Likewise.
16867 * config/i386/interix.c (i386_pe_unique_section): Likewise.
16868 * config/i386/winnt.c (i386_pe_unique_section): Likewise.
16869 * config/mcore/mcore.c (mcore_unique_section): Likewise.
16870 * config/mips/mips.c (mips_unique_section): Likewise.
16871
32e9b960
RH
168722002-08-01 Richard Henderson <rth@redhat.com>
16873
16874 * integrate.c (copy_rtx_and_substitute): Squash MEM_EXPR when it
16875 refers to a subroutine parameter.
16876
81e602b5
JJ
168772002-08-01 Jakub Jelinek <jakub@redhat.com>
16878
16879 * varasm.c (assemble_visibility): Strip name encoding.
16880
ac14c725
ID
168812002-08-01 Ian Dall <ian@sibyl.beware.dropbear.id.au>
16882
16883 * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE): Correct earlier patch.
16884 (RETURN_ADDR_RTX): Cannot determine return address for FRAME > 0
16885 when there is no frame pointer.
16886 (INITIAL_FRAME_POINTER_OFFSET): Count stack space for saved fp
16887 registers properly.
16888 * config/ns32k/__unorddf2.c: New file.
16889 * config/ns32k/__unordsf2.c: New file.
16890 * config/ns32k/t-ns32k: New file.
16891 * config.gcc (ns32k-*-netbsd*): Use it.
16892
17072732
AH
168932002-08-01 Aldy Hernandez <aldyh@redhat.com>
16894
16895 * config/rs6000/rs6000.h (SPU_CONST_OFFSET_OK): Change to 0xff.
16896
c288218a
NB
168972002-08-01 Neil Booth <neil@daikokuya.co.uk>
16898
16899 * c-common.c (__GXX_ABI_VERSION): Correct spelling.
16900
43bfc248
BK
169012002-08-01 Benjamin Kosnik <bkoz@redhat.com>
16902
16903 * c-common.c (cb_register_builtins): Set __GXX_ABI_VERSION__ to 102.
16904
479f2cea
RS
169052002-08-01 Richard Sandiford <rsandifo@redhat.com>
16906
16907 * config/mips/mips.md: Add [!]TARGET_MIPS16 to sgtu conditions.
16908
02280659
ZD
169092002-08-01 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
16910
16911 * gcse.c (expr_hash_table_size, n_exprs, set_hash_table_size,
16912 n_sets): Removed.
16913 (expr_hash_table, set_hash_table): Type changed to ...
16914 (struct hash_table): New type.
16915 (hash_scan_insn, hash_scan_set, hash_scan_clobber, hash_scan_call,
16916 insert_expr_in_table, insert_set_in_table, compute_hash_table,
16917 dump_hash_table, lookup_expr, lookup_set, compute_local_properties,
16918 compute_ae_gen, compute_ae_kill): Modified to pass the table explicitly.
16919 (alloc_set_hash_table, alloc_expr_hash_table): Merged to ...
16920 (alloc_hash_table): New.
16921 (free_set_hash_table, free_expr_hash_table): Merged to ...
16922 (free_hash_table): New.
16923 (compute_set_hash_table, compute_expr_hash_table): Merged to ...
16924 (compute_hash_table_work): New.
16925 (classic_gcse, one_classic_gcse_pass, compute_cprop_data,
16926 find_avail_set, one_cprop_pass, find_bypass_set, compute_pre_data,
16927 pre_edge_insert, pre_insert_copies, pre_delete, pre_gcse,
16928 one_pre_gcse_pass, compute_transpout, compute_code_hoist_vbeinout,
16929 hoist_code, one_code_hoisting_pass,
16930 trim_ld_motion_mems): Altered due to changed type of hash tables.
16931
905173eb
ZW
169322002-08-01 Zack Weinberg <zack@codesourcery.com>
16933
16934 * final.c (output_alternate_entry_point):
16935 If ASM_OUTPUT_TYPE_DIRECTIVE is defined, use it.
16936
83321d36
KG
169372002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16938
ad0f1765
KG
16939 * objc/objc-act.c (encode_complete_bitfield): Add prototype and
16940 avoid ISO C style function definition.
16941
83321d36
KG
16942 * expr.c (expand_assignment): Delete unused variable.
16943
73e42cf3
TM
169442002-08-01 Toon Moene <toon@moene.indiv.nluug.nl>
16945
16946 * c-common.c (cb_register_builtins): Set
16947 __FINITE_MATH_ONLY__ to 1 if -ffinite-math-only
16948 is given, and to 0 otherwise.
16949 * combine.c (simplify_if_then_else): HONOR_NANS
16950 implies FLOAT_MODE_P.
16951
78df51fe
NB
169522002-08-01 Neil Booth <neil@daikokuya.co.uk>
16953
16954 * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_dollar.
16955 (cpp_handle_option): Don't handle it.
16956 (print_help): Update.
16957 * doc/cppopts.texi: Update.
16958
abecfc8f
NB
169592002-08-01 Neil Booth <neil@daikokuya.co.uk>
16960
16961 * c-common.c (cb_register_builtins): If C++, define
16962 __EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.
16963 * gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION.
16964cp:
16965 * lang-specs.h: Simplify in accordance with new code in
16966 c-common.c.
16967
4078b403
NB
169682002-08-01 Neil Booth <neil@daikokuya.co.uk>
16969
16970 * c-common.c: Define all C/ObjC/C++ warning and flag variables.
16971 * c-common.h: Declare all C/ObjC/C++ warning and flag variables.
16972 * c-decl.c: Move all warning and flag variables to c-common.c.
16973 * c-format.c: Move all warning variables to c-common.c.
16974 * c-tree.h: Move all warning and flag declarations to c-common.h.
16975 * objc/objc-act.c: Move all warning variables to c-common.c.
16976 (flag_warn_protocol): Rename warn_protocol.
16977
692f5611
JDA
169782002-07-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
16979
16980 * pa-linux.h (GLOBAL_ASM_OP): Fix typo.
16981
c7a009a2 169822002-07-31 Graham Stott <graham.stott@btinternet.com>
480e7ded 16983
905173eb 16984 * config/stormy16/stormy16.h (BSS_SECTION_ASM_OP): Add missing
480e7ded
GS
16985 .section prefix.
16986
b069de3b
SS
169872002-07-31 Stan Shebs <shebs@apple.com>
16988
16989 * config.gcc (i[34567]86-*-darwin*): New configuration.
16990 * config/darwin.h (TARGET_ENCODE_SECTION_INFO): Undefine before
16991 defining.
16992 (TARGET_ENCODE_SECTION_INFO): Ditto.
16993 (ASM_PREFERRED_EH_DATA_FORMAT): Ditto.
16994 * config/darwin.c (machopic_indirect_data_reference): Remove
16995 setting of RTX_UNCHANGING_P.
16996 (machopic_legitimize_pic_address): Move RTX_UNCHANGING_P up so as
16997 not to be applied to sums.
16998 * config/i386/t-darwin: New file.
16999 * config/i386/darwin.h: New file.
17000 * config/i386/i386.h (TARGET_MACHO): Add default definition.
17001 * config/i386/i386.md (tablejump): Add TARGET_MACHO case.
17002 * config/i386/i386.c (output_set_got): For Mach-O, output Mach-O
17003 label and not the GOT add.
17004 (constant_address_p): For Mach-O, seeing a CONST is enough.
17005 (legitimate_pic_address_disp_p): Add a Mach-O case.
17006 (legitimate_address_p): Also test machopic_operand_p if Mach-O.
17007 (legitimize_pic_address): Use generic Mach-O code to legitimize.
17008 (output_pic_addr_const): Suppress @PLT if Mach-O, and parens
17009 if outputting a difference.
17010 (ix86_output_addr_diff_elt): Add Mach-O case.
17011 (ix86_expand_move): Similarly.
17012 (ix86_expand_call): Similarly.
17013 (current_machopic_label_num): New global.
17014 (machopic_output_stub): New function.
17015 (ix86_value_regno): New function.
17016 (ix86_function_value): Use it instead of VALUE_REGNO.
17017 (ix86_libcall_value): Ditto.
17018 * config/i386/unix.h (VALUE_REGNO): Remove.
17019
1de4ecb6
GS
170202002-07-31 Graham Stott <grahas@btinternet.com>
17021
17022 * config/rs6000/rs6000.c(rs6000_hash_constant): Fix
905173eb 17023 hash for LABEL_REF's.
1de4ecb6 17024
23368455
GS
170252002-07-31 Graham Stott <grahams@btinternet.com>
17026
17027 * config/rs6000/rs6000.c (spe_init_builtins,
17028 altivec_init_builtins, rs6000_common_init_builtins):
905173eb 17029 Replace ANSI with K&R function def.
23368455 17030
ad72b533
DE
170312002-07-31 David Edelsohn <edelsohn@gnu.org>
17032
17033 * rs6000.c (validate_condition_mode): Test flag_finite_math_only
17034 for CCFPmode.
17035
302359da
RS
170362002-07-31 Richard Sandiford <rsandifo@redhat.com>
17037
17038 * config/mips/crtn.asm: Don't use __mips16 to determine the
17039 return-address offset. Define RA to a suitable temporary
17040 register for the return address.
17041
ead0c1d5
RS
170422002-07-31 Richard Sandiford <rsandifo@redhat.com>
17043
17044 * config/mips/mips.md (eh_set_lr_si, eh_set_lr_di): Change
17045 constraints to 'd'.
17046
3fb9d48a
CD
170472002-07-30 Chris Demetriou <cgd@broadcom.com>
17048
17049 * config/mips/elf.h (STARTFILE_SPEC): Define differently if
17050 default ABI is MEABI. (Undoes incorrect change in Eric Christopher's
17051 patch on 2002-07-29.)
17052 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
17053
072cdaed
KG
170542002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
17055
506a61b1
KG
17056 * alpha.h, arc.h, arm/aout.h, avr.h, cris.h, d30v.h, dsp16xx.h,
17057 fr30.h, h8300.h, i370.h, i386/sco5.h, i386/unix.h, i960.h, ia64.h,
17058 ip2k.h, m32r.h, mcore.h, mips.h, mn10200.h, mn10300.h, ns32k.h,
17059 openbsd.h, pa/pa-linux.h, pdp11.h, romp.h, rs6000/sysv4.h,
17060 s390/linux.h, sh.h, sparc.h, stormy16.h, v850.h, vax.h, xtensa.h:
17061 (ASM_GLOBALIZE_LABEL): Delete.
17062 (GLOBAL_ASM_OP): Define.
17063
072cdaed 17064 * m68hc11.h, m68k.h, m88k.h (ASM_GLOBALIZE_LABEL): Delete.
905173eb 17065
072cdaed
KG
17066 * defaults.h (ASM_GLOBALIZE_LABEL): Provide a default.
17067 * doc/tm.texi (ASM_GLOBALIZE_LABEL): Update docs.
17068
6fd14075
GK
170692002-07-30 Geoffrey Keating <geoffk@redhat.com>
17070
17071 * doc/extend.texi (Hints implementation): Document that GCC
17072 mostly ignores `register'.
17073
2e8f2e8f
TM
170742002-07-30 Toon Moene <toon@moene.indiv.nluug.nl>
17075
17076 * flags.h: Declare flag_finite_math_only.
17077 Use it in definition of HONOR_NANS and
17078 HONOR_INFINITIES.
17079 * c-common.c (cb_register_builtins): Emit
17080 __FINITE_MATH_ONLY__ when flag_finite_math_only
17081 is set.
17082 * combine.c (simplify_if_then_else): If
17083 flag_finite_math_only is set, a == b has a
17084 definite value.
17085 * toplev.c: Initialize flag_finite_math_only.
17086 (set_flags_fast_math): Set it on -ffast-math.
17087 (flag_fast_math_set_p): Test it.
17088 * doc/invoke.texi: Document -ffinite-math-only.
17089
a538e580
RH
170902002-07-30 Richard Henderson <rth@redhat.com>
17091
17092 * ifcvt.c (noce_get_alt_condition): Use reg_overlap_mentioned_p.
17093 (noce_process_if_block): Likewise.
17094
26e20555
BS
170952002-07-30 Bernd Schmidt <bernds@redhat.com>
17096
17097 * ifcvt.c (cond_exec_process_if_block): Fix a merging error.
17098 Bail out early if false_expr is NULL and we'd crash due to this.
79cbc1f7
BS
17099 * genemit.c (gen_expand): Recognize return insns even if the return
17100 appears in a parallel.
d8088c6f
BS
17101 * libgcc2.c: Expand macro DECLARE_LIBRARY_RENAMES if it is defined.
17102 * config/fp-bit.c: Likewise.
17103 * doc/tm.texi: Document it.
905173eb 17104
0559cc77
DE
171052002-07-30 David Edelsohn <edelsohn@gnu.org>
17106 Zack Weinberg <zack@codesourcery.com>
17107
17108 * rs6000.c (rs6000_expand_unop_builtin): Check icode not
17109 CODE_FOR_nothing. Change switch to if.
17110 (rs6000_expand_binop_builtin): Same.
17111 (rs6000_expand_builtin): Expand builtin if target support enabled.
17112 (rs6000_init_builtins): Init builtin if target support enabled.
17113 (rs6000_common_init_builtins): Check icode not CODE_FOR_nothing.
17114
60b8aa94
FS
171152002-07-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
17116
17117 * gcc.c (cpp_unique_options): Define __GXX_ABI_VERSION, bump it to 101.
17118
714fb710
RS
171192002-07-30 Richard Sandiford <rsandifo@redhat.com>
17120
17121 * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Fix typo.
17122
c608a684
R
17123Tue Jul 30 18:31:31 2002 J"orn Rennecke <joern.rennecke@superh.com>
17124
17125 * sh.md (cond_delay_slot): New attribute.
17126 (cbranch delay): Use it for anulled-true case.
17127 (stuff_delay_slot): New pattern.
17128 * sh.c (print_operand, case '.'): Don't print .s / /s fore zero-length
17129 delay slot insn.
17130 (gen_far_branch): Emit stuff_delay_slot pattern.
17131
0a756401
R
17132Tue Jul 30 11:21:44 2002 J"orn Rennecke <joern.rennecke@superh.com>
17133
17134 * unroll.c (copy_loop_body): Don't copy NOTE_INSN_LOOP_CONT.
17135
68e82b83
KH
171362002-07-30 Kazu Hirata <kazu@cs.umass.edu>
17137
17138 * fold-const.c: Fix comment typos.
17139 * gcse.c: Likewise.
17140 * reload1.c: Likewise.
17141
fe6b547a
AH
171422002-07-29 Aldy Hernandez <aldyh@redhat.com>
17143
17144 * config/rs6000/rs6000.md: Disallow CCEQ compare with crnor/crnot
17145 for TARGET_SPE.
17146
7ff4a7ef
GDR
171472002-07-30 Gabriel Dos Reis <gdr@nerim.net>
17148
17149 * c-pretty-print.h (pp_c_statement): Declare.
17150 * c-pretty-print.c (pp_c_postfix_expression): #if 0 support for SRCLOC.
17151 (pp_c_statement): Define.
17152
4ad5e05d
KG
171532002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
17154
17155 * alpha.h, arc.h, arm/aout.h, avr.h, c4x.h, cris.h, d30v.h,
17156 darwin.h, dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i960.h,
17157 ip2k.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mips.h,
17158 mn10200.h, mn10300.h, ns32k.h, pa/pa-linux.h, pdp11.h, romp.h,
17159 rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h,
17160 v850.h, vax.h, xtensa.h (ASM_OUTPUT_LABEL): Delete definition.
17161
17162 * defaults.h (ASM_OUTPUT_LABEL): Provide a default.
17163 * doc/tm.texi (ASM_OUTPUT_LABEL): Update docs.
17164
1e6a3e1e
GDR
171652002-07-30 Gabriel Dos Reis <gdr@nerim.net>
17166
17167 * c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR.
17168 (pp_c_postfix_expression): Handle ARROW_EXPR, FFS_EXPR,
17169 COMPOUND_LITERAL_EXPR, VA_ARG_EXPR.
17170 (pp_c_expression): Update.
17171
1dcd444b
KG
171722002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
17173
17174 * alpha/vms-cc.c (preprocess_args, main): Use xstrdup and/or
17175 concat in lieu of xmalloc/strcpy/memcpy/sprintf.
17176 * alpha/vms-ld.c (main): Likewise.
17177 * dsp16xx.c (double_reg_to_memory): Likewise.
17178 * mcore.c (mcore_expand_prolog): Likewise.
17179 * cppfiles.c (read_name_map): Likewise.
17180 * gensupport.c (process_rtx, identify_predicable_attribute,
17181 alter_test_for_insn): Likewise.
17182 * vmsdbgout.c (write_rtnbeg, vmsdbgout_init): Likewise.
17183
e62f4abc
RS
171842002-07-29 Roger Sayle <roger@eyesopen.com>
17185
17186 * builtins.c (expand_builtin): Change the default behavior to
905173eb 17187 only issue an error if the builtin function doesn't have a
e62f4abc
RS
17188 fallback library call. Remove several cases handled by the
17189 new default.
17190
0cd2fb44
JDA
171912002-07-29 John David Anglin <dave@hiauly1.hia.nrc>
17192
17193 * real.c (ieee_24, ieee_53, ieee_64, ieee_113): Define only if the
17194 floating point format of the target is IEEE.
17195 * (dec_f, dec_d, dec_g, dec_h): Define only if the floating point
17196 format of the target is DEC.
17197
b642261e
RH
171982002-07-29 Richard Henderson <rth@redhat.com>
17199
17200 * unroll.c (verify_addresses): Remove.
17201 (find_splittable_givs): Never split DEST_ADDR givs.
17202
cba57c9d
GK
172032002-07-29 Geoffrey Keating <geoffk@redhat.com>
17204
17205 * doc/gty.texi (GGC Roots): Clarify that the list of syntaxes
17206 is exhaustive.
17207 (Files): Improve documentation on generated source files.
17208
17209 * doc/extend.texi (Translation implementation): Document what
17210 diagnostics look like.
17211 (Identifiers implementation): Document that there's normally no
17212 limit on identifier names.
17213 (Integers implementation): Document two's complement.
8d9afc4e 17214 (Hints implementation): Document that GCC honors 'inline', mostly.
cba57c9d
GK
17215 (Preprocessing directives implementation): Document that GCC
17216 requires the current time.
17217
76a8ecba
GDR
172182002-07-30 Gabriel Dos Reis <gdr@nerim.net>
17219
17220 * c-pretty-print.h (struct c_pretty_print_info): Add new member.
17221 (pp_initializer): New macro.
17222 (pp_c_initializer): Declare.
17223 * c-pretty-print.c (pp_c_primary_expression): HAndle TARGET_EXPR.
17224 (pp_c_initializer): Define.
17225 (pp_c_initializer_list): New function.
17226 (pp_c_postfix_expression): Handle ABS_EXPR, COMPLEX_CST,
17227 VECTOR_CST, CONSTRUCTOR.
17228 (pp_c_unary_expression): Handle CONJ_EXPR, REALPART_EXPR,
905173eb 17229 IMAGPART_EXPR.
76a8ecba
GDR
17230 (pp_c_cast_expression): Handle FLOAT_EXPR.
17231 (pp_c_assignment_expression): Handle INIT_EXPR.
17232 (pp_c_expression): Update.
17233
4307be72
NB
172342002-07-30 Neil Booth <neil@daikokuya.co.uk>
17235
17236 * objc/objc-act.c (objc_init): Return immediately if filename
17237 is NULL.
17238
6d439235
EC
172392002-07-29 Eric Christopher <echristo@redhat.com>
17240
905173eb
ZW
17241 * config/mips/elf.h: Remove ecoff.h and gofast includes.
17242 (DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO): Define unconditionally.
17243 (SDB_DEBUGGING_INFO): Undefine.
17244 (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
6d439235
EC
17245 (PUT_SDB_SIZE): Remove.
17246 (SUBTARGET_ASM_DEBUGGING_SPEC): Redefine.
905173eb
ZW
17247 (STARTFILE_SPEC): Add isa3264 define.
17248 * config/mips/elf64.h: Ditto. Move TARGET_MEM_FUNCTIONS from here...
17249 * config/mips/ecoff.h: Remove. and here...
17250 * config/mips/iris3.h: and here...
17251 * config/mips/sni-svr4.h: and here...
17252 * config/mips/mips.h: To here. Remove OBJECT_FORMAT_ROSE ifdefs.
6d439235
EC
17253 Add assembler -mmdebug options for non-dwarf debugging.
17254 * config/mips/r3900.h: Remove debug info defines.
905173eb
ZW
17255 * config/mips/isa32-linux.h: Remove, move functionality to config.gcc.
17256 * config/mips/isa3264.h: Ditto.
17257 * config/mips/t-isa3264: Fix up for file removal and gofast configure
17258 change.
17259 * config/mips/t-elf: Ditto.
17260 * config/mips/t-ecoff: Ditto.
17261 * config/mips/t-r3900: Ditto.
17262 * config/mips/t-iris5-6: Ditto.
17263 * config/mips/t-isa3264: Ditto.
17264 * config/mips/t-linux: Remove.
17265 * config/mips/t-netbsd: Remove.
17266 * config/mips/t-mips: New file.
17267 * config/mips/t-gofast: Ditto.
17268 * config/mips/netbsd.h: Remove unnecessary undefines.
17269 * config/mips/linux.h: Remove #include of mips.h.
17270 * config.gcc: Add mips.h include for elf targets. Remove tm_file
17271 for ecoff. Add gofast configure option for mips.
6d439235 17272
4357a6c3
CD
172732002-07-29 Chris Demetriou <cgd@broadcom.com>
17274
17275 * configure.in (mips*-*-*): Add a test to see if MIPS libgloss
17276 linker scripts use STARTUP directives consistently.
17277 * configure: Regenerate.
17278 * config.in: Regenerate.
17279 * config/mips/elf.h (STARTFILE_SPEC): Define conditionally, based
17280 on whether HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is defined.
17281 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
17282 * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine if
17283 HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is set; the result
17284 will be the same.
17285
9a5cd606
AH
172862002-07-29 Aldy Hernandez <aldyh@redhat.com>
17287
17288 * config/rs6000/rs6000.md ("cpu"): Add ppc8540 to attribute.
17289
a23acaa6
AH
172902002-07-29 Aldy Hernandez <aldyh@redhat.com>
17291
17292 * config/rs6000/rs6000.h (RTX_COSTS): Add MULT case for 8540.
17293
10ed84db
AH
172942002-07-29 Aldy Hernandez <aldy@quesejoda.com>
17295
17296 * config/rs6000/rs6000.md: Move altivec patterns from here...
17297
17298 * config/rs6000/altivec.md: ...to here.
17299
c3021e5d
AH
173002002-07-29 Aldy Hernandez <aldyh@redhat.com>
17301
17302 * config/rs6000/spe.md ("spe_evmra"): Change to unspec.
17303
6f1087be
RH
173042002-07-29 Richard Henderson <rth@redhat.com>
17305
17306 * emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from
17307 set_mem_attributes and add BITPOS argument. Subtract it from
17308 OFFSET when same is adjusted.
17309 (set_mem_attributes): New wrapper function.
17310 * expr.c (expand_assignment): Use set_mem_attributes_minus_bitpos;
17311 remove offset adjustment hack.
17312 * expr.h (set_mem_attributes_minus_bitpos): Declare.
17313
61ccbcfd
GDR
173142002-07-29 Gabriel Dos Reis <gdr@nerim.net>
17315
17316 * Makefile.in (C_OBJS): Include c-pretty-print.o
17317 (c-pretty-print.o): Add depency rule.
17318 * pretty-print.h: Add more macros.
17319 * c-pretty-print.c: New file.
17320 * c-pretty-print.h: Likewise.
17321
09101f56
AH
173222002-07-29 Aldy Hernandez <aldyh@redhat.com>
17323
17324 * config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector
17325 constants to __ev64_s32__.
17326 (__internal_ev_mwhgsmian): Same.
17327 (__internal_ev_mwhgsmfan): Same.
17328 (__internal_ev_mwhgssfan): Same.
17329 (__internal_ev_mwhgumiaa): Same.
17330 (__internal_ev_mwhgsmiaa): Same.
17331 (__internal_ev_mwhgsmfaa): Same.
17332 (__internal_ev_mwhgssfaa): Same.
17333
af673a52
DE
173342002-07-29 David Edelsohn <edelsohn@gnu.org>
17335
17336 * varasm.c (assemble_variable): Narrow test for uninitialized
17337 without BSS target support.
17338
6c208acd
NS
173392002-07-29 Nathan Sidwell <nathan@codesourcery.com>
17340
17341 * profile.c: Add file comment describing the overall algorithm and
17342 structures.
17343 (struct edge_info): Add comments.
17344 (struct bb_info): Add comments.
17345 * basic-block.h (EDGE_*): Add comments.
17346 * doc/gcov.texi (Gcov Data Files): Document bit flags.
17347
624f0d60
BW
173482002-07-29 Bob Wilson <bob.wilson@acm.org>
17349
17350 * config/xtensa/elf.h, config/xtensa/linux.h
17351 (TARGET_OS_CPP_BUILTINS): Define.
17352 (CPP_PREDEFINES): Remove.
17353 * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define.
17354 (CPP_SPEC): Remove.
17355
2199e5fa
ZW
173562002-07-29 Zack Weinberg <zack@codesourcery.com>
17357
17358 * gensupport.c: Include hashtab.h.
17359 (insn_elision, condition_table, hash_c_test, cmp_c_test,
17360 maybe_eval_c_test): New routines and data structures to
17361 support insn elision.
17362 (init_md_reader): Read and initialize the condition_table.
17363 (read_md_rtx): Discard insn patterns whose C test is provably
17364 always false.
17365 * gensupport.h: Declare new functions and data structures.
17366
17367 * genconditions.c, dummy-conditions.c: New files.
17368 * Makefile.in: Build genconditions; run it to construct
17369 insn-conditions.c; build that and link it into most gen*
17370 programs.
17371 (HOST_SUPPORT, HOST_EARLY_SUPPORT): New variables.
17372 (GEN): Delete, unused.
17373 (STAGESTUFF): Update.
17374
17375 * gencodes.c: (gen_insn): #define CODE_FOR_xxx equal to
17376 CODE_FOR_nothing for all elided patterns.
17377 (main): Tweaked to support this.
17378 * genflags.c (gen_proto): Emit a static inline generator
17379 function here for all elided patterns, which simply returns
17380 NULL_RTX.
17381 (gen_insn): Do not define HAVE_xxx for elided patterns.
17382 (main): Tweaked to support this. No need to forward-declare
17383 struct rtx_def.
17384 * genrecog.c: Do not bother emitting the C test if it's known
17385 to be true at compile time.
17386
6ab185d6
MS
173872002-07-29 Mike Stump <mrs@apple.com>
17388
6d439235 17389 * config.gcc (target_gtfiles): Initialize, as otherwise cross
2199e5fa 17390 compilers hosted on powerpc-apple-darwin6.0 won't even build.
6ab185d6 17391
72b075d1
RE
173922002-07-29 Richard Earnshaw <rearnsha@arm.com>
17393
17394 * arm.md (sibcall, sibcall_value): Add RETURN as part of the pattern,
17395 remove clobber of LR.
17396 (sibcall_insn, sibcall_value_insn): Update accordingly.
17397 (sibcall_epilogue): Remove debugging comment from assembler stream.
17398
f63c45ec
GDR
173992002-07-29 Gabriel Dos Reis <gdr@nerim.net>
17400
17401 * pretty-print.h: Define more macros.
17402 * diagnostic.h (output_formatted_integer): Moved from...
17403 * diagnostic.c: ... here.
17404
c27c15db
KG
174052002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
17406
17407 * stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use ASM_OUTPUT_LABEL_REF.
17408
99086d59
ZW
174092002-07-28 Zack Weinberg <zack@codesourcery.com>
17410
17411 * defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two
17412 arguments. Always use ".-symbol" as expression argument.
17413 * doc/tm.texi: Update to match. Document requirement for
17414 ".size symbol, .-symbol" to be acceptable to assembler.
17415
17416 * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
17417 config/arm/elf.h, config/avr/avr.h, config/cris/aout.h,
17418 config/i386/freebsd-aout.h, config/i386/sco5.h,
17419 config/ip2k/ip2k.h, config/m88k/m88k.h, config/xtensa/elf.h,
17420 config/xtensa/linux.h: Update uses of ASM_OUTPUT_MEASURED_SIZE.
17421
dd86aabf
KG
174222002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
17423
6fd327e9
KG
17424 * Makefile.in (gengtype-lex.c): Fix error in last change.
17425
8155cedd
KG
17426 * alpha/freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing
17427 backslash.
17428
dd86aabf
KG
17429 * Makefile.in (vmsdbgout.o): Depend on function.h.
17430
17431 * vmsdbgout.c: Include function.h.
17432
d4348177
AM
174332002-07-28 Alan Modra <amodra@bigpond.net.au>
17434
17435 * prefix.c (update_path): Don't strip single `.' path components
17436 unless stripping a later `..' component. Exit loop as soon as
17437 a valid path is found.
17438
c2ef6d34
RS
174392002-07-27 Roger Sayle <roger@eyesopen.com>
17440
17441 * builtins.def [DEF_GCC_BUILTIN]: Require an explicit ATTRS
17442 argument. Mark BUILT_IN_RETURN, BUILT_IN_EH_RETURN,
17443 BUILT_IN_LONGJMP and BUILT_IN_TRAP as noreturn, the ISO C99
17444 floating point unordered comparisons (e.g. __builtin_isgreater)
17445 as const, and leave the remaining GCC_BUILTINs unchanged.
17446
17447 * c-decl.c (builtin_function): No need to explicitly mark
17448 BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn.
17449
52bfebf0
RS
174502002-07-27 Roger Sayle <roger@eyesopen.com>
17451
17452 * Makefile.in: rtlanal.o now depends upon real.h.
17453
17454 * flags.h [flag_signaling_nans]: New flag.
17455 [HONOR_SNANS]: New macro.
17456
17457 * toplev.c [flag_signaling_nans]: Initialize to false.
99086d59 17458 (f_options): Add processing for "-fsignaling-nans".
52bfebf0
RS
17459 (set_fast_math_flags): Clear flag_signaling_nans with -ffast-math.
17460 (process_options): flag_signaling_nans implies flag_trapping_math.
17461
17462 * c-common.c (cb_register_builtins): Define __SUPPORT_SNAN__
17463 when -fsignaling-nans. First step to implementing WG14's N965.
17464
17465 * fold-const.c (fold) [MULT_EXPR]: Conditionalize transforming
17466 1.0 * x into x, and -1.0 * x into -x on !HONOR_SNANS.
17467 [RDIV_EXPR]: Conditionalize x/1.0 into x on !HONOR_SNANS.
17468
17469 * simplify-rtx.c (simplify_relational_operation): Conditionalize
17470 transforming abs(x) < 0.0 into false on !HONOR_SNANS.
17471
17472 * rtlanal.c: #include real.c for TARGET_FLOAT_FORMAT definitions
17473 required by HONOR_SNANS. (may_trap_p): Floating point DIV, MOD,
99086d59
ZW
17474 UDIV, UMOD, GE, GT, LE, LT and COMPARE may always trap with
17475 -fsignaling_nans. EQ and NE only trap for flag_signaling_nans
52bfebf0
RS
17476 not flag_trapping_math (i.e. HONOR_SNANS but not HONOR_NANS).
17477
17478 * doc/invoke.texi: Document new -fsignaling-nans compiler option.
17479
e66f55b8
KG
174802002-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
17481
17482 * Makefile.in (gengtype-lex.c): Work around a bug in flex.
17483 * gengtype-lex.l (YY_USE_PROTOS): Undef.
17484 (YY_DECL): Define.
17485
a3926fe1
RS
174862002-07-27 Roger Sayle <roger@eyesopen.com>
17487
17488 * doc/invoke.texi: Document that both -fno-builtin-foo and
17489 -fno-builtin are supported by the g++ front-end.
17490
ef69da62
SS
174912002-07-27 Stan Shebs <shebs@apple.com>
17492
17493 * configure.in: Rename config_gtfiles to target_gtfiles.
17494 * configure: Regenerate.
17495 * doc/gty.texi: Update reference.
17496 * config.gcc (powerpc-*-darwin*): Set target_gtfiles
17497 instead of appending to it.
17498
a4b0320c
AH
174992002-07-25 Aldy Hernandez <aldyh@redhat.com>
17500
17501 * config/rs6000/rs6000.c (function_arg_advance): SPE vararg
17502 vectors are split into two registers.
17503 (function_arg): Same.
17504
c427db5d
R
17505Thu Jul 26 23:00:13 2002 J"orn Rennecke <joern.rennecke@superh.com>
17506
17507 * pa.md (extv): Check predicates before emitting extv_32.
17508
57ac7be9
AM
175092002-07-27 Alan Modra <amodra@bigpond.net.au>
17510
17511 * config/rs6000/rs6000.c (rs6000_traceback_name): New var.
17512 (rs6000_traceback): New var.
17513 (rs6000_override_options): Set rs6000_traceback.
17514 (rs6000_output_function_epilogue): Implement traceback options.
17515 * config/rs6000/rs6000.h (TARGET_OPTIONS): Add "traceback=".
17516 (rs6000_traceback_name): Declare.
17517
17518 * config/rs6000/rs6000.c (output_profile_hook): Don't generate profile
17519 label reference when NO_PROFILE_COUNTERS.
17520
8e51619a
JM
175212002-07-26 Jason Merrill <jason@redhat.com>
17522
17523 * function.c (assign_parms): Handle frontend-directed pass by
17524 invisible reference.
17525
b41f25cf
NB
175262002-07-26 Neil Booth <neil@daikokuya.co.uk>
17527
17528 * doc/cppopts.texi: Update.
17529
c2734e05
NB
175302002-07-26 Neil Booth <neil@daikokuya.co.uk>
17531
17532 * cppmacro.c (_cpp_create_definition): Don't attempt redefinition
17533 warnings on assertions.
17534
c372b0fa
NB
175352002-07-26 Neil Booth <neil@daikokuya.co.uk>
17536
17537 * c-common.h (RID_AND, RID_AND_EQ, RID_NOT, RID_NOT_EQ,
17538 RID_OR, RID_OR_EQ, RID_XOR, RID_XOR_EQ, RID_BITAND, RID_BITOR,
17539 RID_COMPL): Remove.
17540 * c-parse.in (rid_to_yy): Similarly.
17541
558ee214
JM
175422002-07-26 Jason Merrill <jason@redhat.com>
17543
17544 * c-dump.c: Resurrect.
17545 * tree-dump.c: Move C-specific stuff to c-dump.c.
17546 * c-common.h: Declare c_dump_tree.
17547 * c-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN): Define.
17548 * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
17549 (c-dump.o): New rule.
17550
ce71f754
AM
175512002-07-26 Alan Modra <amodra@bigpond.net.au>
17552
17553 * config/rs6000/rs6000.md: Enable patterns using rlwinm for
17554 PowerPC64. Replace "T" and "S" constraints with "n" when the
17555 predicate will do. Formatting fixes.
17556 (extzvsi_internal2): Use "andi.", "andis." and attr type of "compare"
17557 as for extzvsi_internal1.
17558
e179e7d7
NB
175592002-07-25 Neil Booth <neil@daikokuya.co.uk>
17560
17561 * dwarfout.c (VERSION_ASM_OP, DERIV_BEGIN_LABEL_FMT,
17562 DERIV_END_LABEL_FMT): Remove.
17563 (SL_BEGIN_LABEL_FMT, SL_END_LABEL_FMT): Move.
17564
a2056183
NB
175652002-07-25 Neil Booth <neil@daikokuya.co.uk>
17566
17567 * objc/objc-act.c (UTAG_STATICS, UTAG_PROTOCOL_LIST, USERTYPE):
17568 Remove.
17569
308c142a
SS
175702002-07-25 Stan Shebs <shebs@apple.com>
17571
17572 * config/rs6000/rs6000.c (rs6000_emit_prologue): Remove unused
17573 local var dwarfp.
17574 (output_compiler_stub): Remove unused locals.
17575 (output_call): Always initialize line number.
17576
59324685
R
17577Thu Jul 25 20:34:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
17578
17579 * sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia.
17580 * sh.md (truncdiqi2, movqi_media): Likewise.
17581
77bbd421
NB
175822002-07-25 Neil Booth <neil@daikokuya.co.uk>
17583
17584 * gcse.c (obstack_chunk_alloc): Remove.
17585 (gcse_alloc): Fix to count allocated bytes.
17586 * collect2.c (SYMBOL__MAIN): Remove.
17587
7bad45b0
NB
175882002-07-25 Neil Booth <neil@daikokuya.co.uk>
17589
17590 * gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if
17591 HAVE_TARGET_EXECUTABLE_SUFFIX.
17592
184166b5
R
17593Thu Jul 25 18:57:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
17594
17595 * rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN,
17596 SIZE, EXPR and OFFSET.
17597
40cb04f1
RH
175982002-07-25 Richard Henderson <rth@redhat.com>
17599
17600 * emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos
17601 in ARRAY_REF of DECL_P case.
17602
a27fb29b
RS
176032002-07-25 Richard Sandiford <rsandifo@redhat.com>
17604
17605 * doc/invoke.texi: Document -mabi=meabi, and expand on the EABI
17606 description. Document -mips32, -mips64, and the associated -march
17607 values. Describe the "mipsN" arguments to -march. Say that the
17608 -mipsN options are equivalent to -march. Reword the description
17609 of default type sizes.
17610 * toplev.h (target_flags_explicit): Declare.
17611 * toplev.c (target_flags_explicit): New var.
17612 (set_target_switch): Update target_flags_explicit.
17613 * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Undefine.
17614 * config/mips/elf64.h (MIPS_ISA_DEFAULT): Undefine.
17615 * config/mips/iris6.h (SUBTARGET_ASM_SPEC): -mabi=64 implies -mips3.
17616 * config/mips/isa3264.h (MIPS_ENABLE_EMBEDDED_O32): Undefine.
17617 * config/mips/mips.h (mips_cpu_info): New struct.
17618 (mips_cpu_string, mips_explicit_type_size_string): Remove.
17619 (mips_cpu_info_table, mips_arch_info, mips_tune_info): Declare.
17620 (MIPS_CPP_SET_PROCESSOR): New macro.
17621 (TARGET_CPP_BUILTINS): Declare a macro for each supported processor.
17622 Define _MIPS_ARCH and _MIPS_TUNE.
17623 (MIPS_ISA_DEFAULT): Don't provide a default value. Instead...
17624 (MIPS_CPU_STRING_DEFAULT): Set to "from-abi" if neither it nor
17625 MIPS_ISA_DEFAULT were already defined.
17626 (MULTILIB_DEFAULTS): Add MULTILIB_ABI_DEFAULT.
17627 (TARGET_OPTIONS): Remove -mcpu and -mexplicit-type-size.
17628 (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New.
17629 (GAS_ASM_SPEC): Remove -march, -mcpu, -mgp* and -mabi rules.
17630 (ABI_GAS_ASM_SPEC): Remove.
17631 (MULTILIB_ABI_DEFAULT, ASM_ABI_DEFAULT_SPEC): New macros.
17632 (ASM_SPEC): Add -mgp32, -mgp64, -march, -mabi=eabi and -mabi=o64.
17633 Invoke %(asm_abi_default_spec) if no ABI was specified.
17634 (CC1_SPEC): Remove ISA -> register-size rules.
17635 (EXTRA_SPECS): Remove abi_gas_asm_spec. Add asm_abi_default_spec.
17636 * config/mips/mips.c (mips_arch_info, mips_tune_info): New vars.
17637 (mips_cpu_string, mips_explicit_type_size_string): Remove.
17638 (mips_cpu_info_table): New array.
17639 (mips_set_architecture, mips_set_tune): New fns.
17640 (override_options): Rework to make -mipsN equivalent to -march.
17641 Detect more erroneous cases, including those removed from CC1_SPEC.
17642 Don't change the ABI based on architecture, or vice versa.
17643 Unify logic with GAS.
17644 (mips_asm_file_start): Get architecture name from mips_arch_info.
17645 (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
17646 (mips_parse_cpu): Take the name of the option as argument. Handle
17647 'from-abi'. Raise an error if the option is wrong.
17648 (mips_cpu_info_from_isa): New fn.
17649
6bbdc759
RS
176502002-07-25 Richard Sandiford <rsandifo@redhat.com>
17651
17652 * config/mips/mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF.
17653 (tablejump_mips162): Likewise.
17654
80a62484
R
17655Thu Jul 25 10:23:41 2002 J"orn Rennecke <joern.rennecke@superh.com>
17656
17657 * simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to
17658 int_mode_for_mode.
17659
ea793912
GDR
176602002-07-25 Gabriel Dos Reis <gdr@nerim.net>
17661
17662 * c-common.c (c_sizeof_or_alignof_type): Take a third argument for
99086d59 17663 complaining.
ea793912
GDR
17664 * c-common.h (c_sizeof): Adjust definition.
17665 (c_alignof): Likewise.
17666 * c-tree.h (c_sizeof_nowarn): Now macro.
17667 * c-typeck.c (c_sizeof_nowarn): Remove definition.
17668
2d615444
NB
176692002-07-25 Neil Booth <neil@daikokuya.co.uk>
17670
17671 * c-decl.c (c_decode_option): No need to handle switches
17672 cpplib handles.
17673
2be2ac70
ZW
176742002-07-24 Zack Weinberg <zack@codesourcery.com>
17675
17676 * defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, ASM_OUTPUT_SIZE_DIRECTIVE,
17677 ASM_OUTPUT_MEASURED_SIZE): New default definitions of new macros.
17678 * doc/tm.texi: Document them. Also document SIZE_ASM_OP,
17679 TYPE_ASM_OP, and TYPE_OPERAND_FMT.
17680
17681 * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
17682 config/alpha/elf.h, config/arm/elf.h, config/avr/avr.h,
17683 config/cris/aout.h, config/i386/freebsd-aout.h,
17684 config/i386/sco5.h, config/ia64/ia64.c, config/ip2k/ip2k.h,
17685 config/m68k/m68kelf.h, config/m68k/m68kv4.h, config/m88k/m88k.h,
17686 config/mcore/mcore-elf.h, config/mips/elf.h, config/mips/elf64.h,
17687 config/mips/iris6.h, config/mips/linux.h, config/pa/pa-linux.h,
17688 config/pa/pa64-hpux.h, config/rs6000/sysv4.h,
17689 config/xtensa/elf.h, config/xtensa/linux.h:
17690 Use the new macros.
17691 Where possible, remove redundant definitions of SIZE_ASM_OP,
17692 TYPE_ASM_OP, and TYPE_OPERAND_FMT.
17693
518878e1
AH
176942002-07-24 Aldy Hernandez <aldyh@redhat.com>
17695
17696 * config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
17697 TARGET_ISEL, and TARGET_FPRS.
99086d59 17698
518878e1
AH
17699 * doc/invoke.texi (RS/6000 and PowerPC Options): Document
17700 -mabi=spe, -mabi=no-spe, and -misel=.
17701
17702 * config/rs6000/rs6000-protos.h: Add output_isel.
17703 Move vrsave_operation prototype here.
17704
17705 * config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
17706 (smaxsi3): Same.
17707 (uminsi3): Same.
17708 (umaxsi3): Same.
17709 (abssi2_nopower): Disallow when TARGET_ISEL.
17710 (*ne0): Same.
17711 (negsf2): Change to expand and rename old pattern to *negsf2.
17712 (abssf2): Change to expand and rename old pattern to *abssf2.
99086d59 17713
518878e1
AH
17714 New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
17715 fixunssfsi2.
17716
17717 Change patterns that check for TARGET_HARD_FLOAT or
17718 TARGET_SOFT_FLOAT to also check TARGET_FPRS.
17719
17720 * config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
17721 rs6000_isel, rs6000_fprs, rs6000_isel_string.
17722 (rs6000_override_options): Add 8540 case to
17723 processor_target_table.
17724 Set rs6000_isel for the 8540.
17725 Call rs6000_parse_isel_option.
17726 (enable_mask_for_builtins): New.
17727 (rs6000_parse_isel_option): New.
17728 (rs6000_parse_abi_options): Add spe and no-spe.
17729 (easy_fp_constant): Treat !TARGET_FPRS as soft-float.
17730 (rs6000_legitimize_address): Check for TARGET_FPRS when checking
17731 for TARGET_HARD_FLOAT.
17732 Add case for SPE_VECTOR_MODE.
17733 (rs6000_legitimize_reload_address): Handle SPE vector modes.
17734 (rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
17735 vector modes.
17736 Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
17737 (rs6000_emit_move): Check for TARGET_FPRS.
17738 Add cases for SPE vector modes.
17739 (function_arg_boundary): Return 64 for SPE vector modes.
17740 (function_arg_advance): Check for TARGET_FPRS and
17741 Handle SPE vectors.
17742 (function_arg): Same.
17743 (setup_incoming_varargs): Check for TARGET_FPRS.
17744 (rs6000_va_arg): Same.
17745 (struct builtin_description): Un-constify mask field. Move up in
17746 file.
17747 (bdesc_2arg): Un-constify and add SPE builtins.
17748 (bdesc_1arg): Same.
17749 (bdesc_spe_predicates): New.
17750 (bdesc_spe_evsel): New.
17751 (rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
17752 (rs6000_expand_binop_builtin): Same.
17753 (bdesc_2arg_spe): New.
17754 (spe_expand_builtin): New.
17755 (spe_expand_predicate_builtin): New.
17756 (spe_expand_evsel_builtin): New.
17757 (rs6000_expand_builtin): Call spe_expand_builtin for SPE.
17758 (rs6000_init_builtins): Initialize SPE builtins. Call
17759 rs6000_common_init_builtins.
17760 (altivec_init_builtins): Move all non-altivec builtin code to...
17761 (rs6000_common_init_builtins): ...here. New function.
17762 (branch_positive_comparison_operator): Allow NE code for SPE.
17763 (ccr_bit): Return correct ccr bit for SPE fp.
17764 (print_operand): Emit crnor in 'D' case for SPE.
17765 New case 't'.
17766 Add SPE code for 'y' case.
17767 (rs6000_generate_compare): Generate rtl for SPE fp.
17768 (output_cbranch): Handle SPE hard floats.
17769 (rs6000_emit_cmove): Handle isel.
17770 (rs6000_emit_int_cmove): New.
17771 (output_isel): New.
17772 (rs6000_stack_info): Adjust stack frame so GPRs are saved in
17773 64-bits for SPE.
17774 (debug_stack_info): Add SPE info.
17775 (gen_frame_mem_offset): New.
17776 (rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
17777 Change mode of frame pointer, when saving it, to Pmode.
17778 (rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
17779 Misc cleanups and use gen_frame_mem_offset when appropriate.
17780
17781 * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
17782 (TARGET_SPE_ABI): New.
17783 (TARGET_SPE): New.
17784 (TARGET_ISEL): New.
17785 (TARGET_FPRS): New.
17786 (FIXED_SCRATCH): New.
17787 (RTX_COSTS): Add PROCESSOR_PPC8540.
17788 (ASM_CPU_SPEC): Add case for 8540.
17789 (TARGET_OPTIONS): Add isel= case.
17790 (rs6000_spe_abi): New.
17791 (rs6000_isel): New.
17792 (rs6000_fprs): New.
17793 (rs6000_isel_string): New.
17794 (UNITS_PER_SPE_WORD): New.
17795 (LOCAL_ALIGNMENT): Adjust for SPE.
17796 (HARD_REGNO_MODE_OK): Same.
17797 (DATA_ALIGNMENT): Same.
17798 (MEMBER_TYPE_FORCES_BLK): New.
17799 (FIRST_PSEUDO_REGISTER): Set to 113.
17800 (FIXED_REGISTERS): Add SPE registers.
17801 (reg_class): Same.
17802 (REG_CLASS_NAMES): Same.
17803 (REG_CLASS_CONTENTS): Same.
17804 (REGNO_REG_CLASS): Same.
17805 (REGISTER_NAMES): Same.
17806 (DEBUG_REGISTER_NAMES): Same.
17807 (ADDITIONAL_REGISTER_NAMES): Same.
17808 (CALL_USED_REGISTERS): Same.
17809 (CALL_REALLY_USED_REGISTERS): Same.
17810 (SPE_ACC_REGNO): New.
17811 (SPEFSCR_REGNO): New.
17812 (SPE_SIMD_REGNO_P): New.
17813 (HARD_REGNO_NREGS): Adjust for SPE.
17814 (VECTOR_MODE_SUPPORTED_P): Same.
17815 (REGNO_REG_CLASS): Same.
17816 (FUNCTION_VALUE): Same.
17817 (LIBCALL_VALUE): Same.
17818 (LEGITIMATE_OFFSET_ADDRESS_P): Same.
17819 (SPE_VECTOR_MODE): New.
17820 (CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
17821 the GPRs. Set FIXED_SCRATCH fixed in SPE case.
17822 (rs6000_stack): Add spe_gp_size, spe_padding_size,
17823 spe_gp_save_offset.
17824 (USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
17825 (LEGITIMATE_LO_SUM_ADDRESS_P): Same.
17826 (SPE_CONST_OFFSET_OK): New.
17827 (rs6000_builtins): Add SPE builtins.
17828
17829 * testsuite/gcc.dg/ppc-spe.c: New.
99086d59 17830
518878e1
AH
17831 * config/rs6000/eabispe.h: New.
17832
17833 * config/rs6000/spe.h: New.
17834
17835 * config/rs600/spe.md: New.
17836
17837 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
17838 __SIMD__ for TARGET_SPE.
17839
17840 * config.gcc: Add powerpc-*-eabispe* case.
17841 Add spe.h to user headers for powerpc.
17842
8d1b7ba1
CD
178432002-07-24 Chris Demetriou <cgd@broadcom.com>
17844
17845 * config/mips/elf.h (STARTFILE_SPEC): Undo previous change.
17846 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
17847 * config/mips/isa3264.h (STARTFILE_SPEC): Likewise.
17848
8ad8135a
RH
178492002-07-24 Richard Henderson <rth@redhat.com>
17850
17851 * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Use GOTO_SUBROUTINE_EXPR
17852 form when not optimizing.
17853
dc44a4d8
DM
178542002-07-24 David Mosberger <davidm@hpl.hp.com>
17855
17856 * config/ia64/ia64.c (gen_thread_pointer): Fix typo in marking
17857 thread_pointer_rtx as unchanging.
17858
c5605318
MM
178592002-07-24 Michael Matz <matz@suse.de>
17860
17861 * ra-colorize.c (INV_REG_ALLOC_ORDER): New macro.
17862 (free_reg): Use it.
17863
3ade30ea
RE
178642002-07-24 Richard Earnshaw <rearnsha@arm.com>
17865
17866 * arm.md (arm_buneq, arm_bltgt): put '\' before ';' in output
17867 pattern.
17868 (arm_buneq_reversed, arm_bltgt_reversed): Likewise.
17869 (movsicc, movsfcc, movdfcc): FAIL if UNEQ or LTGT.
17870
8a3ad737
CD
178712002-07-24 Chris Demetriou <cgd@broadcom.com>
17872
17873 * config/mips/elf.h (STARTFILE_SPEC): Never include crt0.o.
17874 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
17875 * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine.
17876
7e51e626
JH
17877Wed Jul 24 17:59:12 CEST 2002 Jan Hubicka <jh@suse.cz>
17878
17879 * toplev.c (rest_of_compilation): Dump loops before clobbering
17880 the structure.
17881
5df533b3
JH
17882Wed Jul 24 17:23:16 CEST 2002 Jan Hubicka <jh@suse.cz>
17883
17884 * rtlanal.c (keep_with_call_p): Avoid overflow in fixed_regs.
17885
79258dce
RS
178862002-07-24 Frank van der Linden <fvdl@wasabisystems.com>
17887
17888 PR optimization/7291
17889 * config/i386/i386.c (ix86_expand_clrstr): Fix bzero alignment
17890 problem on x86_64.
17891
26ff2117
GDR
178922002-07-24 Gabriel Dos Reis <gdr@nerim.net>
17893
17894 * pretty-print.h: Add macros from cp/error.c
17895
0ba1b2ff
AM
178962002-07-24 Alan Modra <amodra@bigpond.net.au>
17897
17898 * config/rs6000/rs6000-protos.h (mask_operand_wrap): Declare.
17899 (mask64_2_operand): Declare.
17900 (build_mask64_2_operands): Declare.
17901 (and64_2_operand): Declare.
17902 (extract_MB): Declare.
17903 (extract_ME): Declare.
17904 * config/rs6000/rs6000.c (mask64_operand): Allow all ones. Remove
17905 CONST_DOUBLE code.
17906 (mask_operand_wrap): New insn predicate.
17907 (mask64_2_operand): Likewise.
17908 (and64_2_operand): Likewise.
17909 (build_mask64_2_operands): New function.
17910 (extract_MB): New function.
17911 (extract_ME): New function.
17912 (print_operand <case m,M>): Use extract_MB and extract_ME.
17913 (print_operand <case S>): Allow all ones. Remove CONST_DOUBLE support.
17914 * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Add 't'.
17915 (PREDICATE_CODES): Add and64_2_operand, mask_operand_wrap and
17916 mask64_2_operand. Remove CONST_DOUBLE from mask64_operand.
17917 * config/rs6000/rs6000.md (andsi3_internal3): New
17918 (andsi3_internal3+1): Enable split for powerpc64.
17919 (andsi3_internal3+2): New split.
17920 (andsi3_internal4): Renamed old andsi3_internal3.
17921 (andsi3_internal5): New.
17922 (andsi3_internal5+1): Enable split for powerpc64.
17923 (andsi3_internal5+2): New split.
17924 (andsi3_internal6, andsi3_internal7, andsi3_internal8): New.
17925 (anddi3): Handle 't' constraint.
17926 (anddi3+1): New split.
17927 (anddi3_internal2): Handle 't' constraint.
17928 (anddi3_internal2+1): New split.
17929 (anddi3_internal3): Handle 't' constraint.
17930 (anddi3_internal3+1): New split.
17931
097657c3
AM
179322002-07-24 Alan Modra <amodra@bigpond.net.au>
17933
17934 * config/rs6000/rs6000.md: Remove scratch reg on insns using
17935 addze and similar (plus (comparison r1 r2) r3) insns. Add
17936 missing scratch reg in one case. Formatting fixes.
17937
a69cbaac
NB
179382002-07-24 Neil Booth <neil@daikokuya.co.uk>
17939
17940 * cppexp.c (parse_defined): Mark macro used.
17941 * cpphash.h (struct cpp_macro): New member "used".
17942 (_cpp_mark_macro_used, _cpp_warn_if_unused_macro): New.
17943 (struct cpp_reader): New member.
17944 * cppinit.c (cpp_finish_options): Set first_unused_line.
17945 (cpp_finish): Warn of unused macros if requested.
17946 (OPT_TABLE): New switches.
17947 (cpp_handle_option): Handle them.
17948 * cpplib.c (do_undef): Warn if macro unused.
17949 (do_ifdef, do_ifndef): Mark macro used.
17950 * cpplib.h (struct cpp_options): New member.
17951 * cppmacro.c (_cpp_warn_if_unused_macro): New.
17952 (enter_macro_context): Mark macro used.
17953 (_cpp_create_definition): Mark macro unused; warn if unused
17954 when redefined.
17955 * cpptrad.c (scan_out_logcial_line, push_replacement_text):
17956 Mark macros used.
17957 * doc/cppopts.texi: Update.
17958
c0667597
NB
179592002-07-23 Neil Booth <neil@daikokuya.co.uk>
17960
17961 * dwarf2out.c (SECTION_ASM_OP,
17962 ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
17963 * system.h (SECTION_ASM_OP): Poison.
17964 * tree.c (FILE_FUNCTION_PREFIX_LEN): Remove.
17965 * config/alpha/alpha-interix.h, config/mips/linux.h
17966 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
17967 * config/mmix/mmix-protos.h, config/mmix/mmix.c
17968 (mmix_asm_output_define_label_difference_symbol): Remove.
17969 * config/mmix/mmix.h
17970 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
b841421a 17971 * doc/tm.texi: Remove documentation.
c0667597 17972
bf7cd754
R
17973Tue Jul 23 21:49:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
17974
17975 * recog.c (asm_operand_ok): Allow float CONST_VECTORs for 'F'.
17976 (constrain_operands): Likewise.
17977 * regclass.c (record_reg_classes): Likewise.
17978 * reload.c (find_reloads): Likewise.
17979 * doc/md.texi: Likewise.
451f86fd
R
17980
17981 * reload.c (find_reloads_toplev): Use simplify_gen_subreg.
17982 * simplify-rtx.c (simplify_subreg): When converting to a non-int
17983 mode, try to convert to an integer mode of matching size first.
1d5fa6b4
R
17984
17985 * simplify-rtx.x (simplify_subreg): When constructing a CONST_VECTOR
17986 from individual subregs, check that each subreg has been generated
17987 sucessfully.
17988
10d6af32
NB
179892002-07-23 Neil Booth <neil@daikokuya.co.uk>
17990
17991 * genautomata.c (VLA_HWINT_SHORTEN, VLA_HWINT_LAST): Remove.
17992 * df.c (HANDLE_SUBREG, FOR_EACH_BB_IN_BITMAP_REV,
17993 FOR_EACH_BB_IN_SBITMAP): Remove.
17994 * gcse.c (NEVER_SET, FOLLOW_BACK_EDGES): Remove.
17995 * haifa-sched.c (DONE_PRIORITY, MAX_PRIORITY, TAIL_PRIORITY,
17996 LAUNCH_PRIORITY, DONE_PRIORITY_P, LOW_PRIORITY_P): Remove.
17997 * loop.c (PREFETCH_BLOACK_IN_LOOP_MIN,
17998 PREFETCH_LIMIT_TO_SIMULTANEOUS): Remove.
17999 * regrename.c (REGNO_MODE_OK_FOR_BASE_P): Remove.
18000
6aaae39a
GDR
180012002-07-23 Gabriel Dos Reis <gdr@nerim.net>
18002
18003 * pretty-print.h: New file.
18004
45e574d0
JDA
180052002-07-23 Paul Koning <pkoning@equallogic.com>
18006
18007 * real.c (REAL_WORDS_BIG_ENDIAN): Make 1 for DEC.
18008 (LARGEST_EXPONENT_IS_NORMAL): Ditto.
18009 (VAX_HALFWORD_ORDER): Define (1 for DEC VAX, 0 otherwise).
18010 (TARGET_G_FLOAT): Default to 0 if not defined.
99086d59 18011 (ieeetoe): New, common routine to convert target format floats
45e574d0
JDA
18012 to internal form.
18013 (e24toe, e53toe): Change to use ieeetoe, distinguish DEC
18014 vs. others.
18015 (e113toe): Change to use ieeetoe.
18016
180172002-07-23 Roman Lechtchinsky <rl@cs.tu-berlin.de>
18018
18019 * real.c (REAL_WORDS_BIG_ENDIAN): Make sure it is 0 for DEC and 1 for
18020 IBM.
18021 (e53toe): Assume IEEE if non of DEC, IBM and C4X is defined.
18022 (e64toe): Remove special cases for DEC and IBM. Remove support for
18023 ARM_EXTENDED_IEEE_FORMAT.
18024 (e24toe): Remove special cases for DEC.
18025 (significand_size): Simplify. Indent.
18026 (ieee_format, ieee_24, ieee_53, ieee_64, ieee_113): New.
18027 (etoieee, toieee): New.
18028 (etoe113, toe113, etoe64, toe64, etoe53, toe53, etoe24, toe24): Use
18029 etoieee and toieee for IEEE arithmetic.
18030
3764f879
GDR
180312002-07-23 Gabriel Dos Reis <gdr@nerim.net>
18032
18033 * doc/extend.texi: Say ISO C90, not ISO C89.
18034 * doc/invoke.texi: Likewise.
18035 * doc/standards.texi: Likewise.
18036
aa0f70e6
SE
180372002-07-23 Steve Ellcey <sje@cup.hp.com>
18038
18039 * gcc/explow.c (convert_memory_address): Fix conversion of CONSTs.
18040 Fix permutation of conversion and plus/mult.
18041 * gcc/builtins.c (expand_builtin_memcpy) Ensure return pointer is
18042 ptr_mode and not Pmode when POINTERS_EXTEND_UNSIGNED is defined.
18043 (expand_builtin_strncpy) Ditto.
18044 (expand_builtin_memset) Ditto.
18045
fa72b064
GDR
180462002-07-23 Gabriel Dos Reis <gdr@nerim.net>
18047
18048 Fix PR/7363:
18049 * c-common.c (c_sizeof_or_alignof_type): New function.
18050 (c_alignof): Remove definition.
18051 * c-common.h (c_sizeof, c_alignof): Define as macros.
18052 (c_sizeof_or_alignof_type): Declare.
18053 (my_friendly_assert): Moved from cp/cp-tree.h
18054 * c-typeck.c (c_sizeof): Remove definition.
18055
2b773ee2
JH
180562002-07-23 Jan Hubicka <jh@suse.cz>
18057
18058 * gcse.c (try_replace_reg): Use num_changes_pending.
18059 * recog.c (num_changes_pending): New function.
18060 (validate_replace_src): Use validate_repalce_src_group.
18061 (validate_replace_src_group): New.
18062 * recog.h (validate_repalce_src_group): New.
18063 (num_changes_pending): Likewise.
18064
a0dc500c
R
18065Tue Jul 23 12:16:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
18066
18067 * calls.c (emit_library_call_value_1): If
18068 FUNCTION_ARG_PASS_BY_REFERENCE is true, pretend this is neither
18069 libcall, const call nor pure call.
18070
d22eda7b
NB
180712002-07-23 Neil Booth <neil@daikokuya.co.uk>
18072
18073 * config/m88k/m88k.h (SECTION_ASM_OP): Remove.
18074
b5e66e65
NB
180752002-07-23 Neil Booth <neil@daikokuya.co.uk>
18076
18077 * vmsdbgout.c (SECTION_ASM_OP): Remove.
18078
c3a600c0
NB
180792002-07-23 Neil Booth <neil@daikokuya.co.uk>
18080
18081 * config/i386/i386.c (AT_BP): Remove.
18082
4fa31c2a
NB
180832002-07-23 Neil Booth <neil@daikokuya.co.uk>
18084
18085 * defaults.h (obstack_chunk_alloc, obstack_chunk_free):
18086 Default definition.
18087 * gcse.c: Don't define obstack_chunk_free.
18088 * collect2.c, conflict.c, df.c, diagnostic.c, fix-header.c,
18089 flow.c, gcc.c, genattrtab.c, genautomata.c, genflags.c, gensupport.c,
18090 integrate.c, loop.c, ra.c, read-rtl.c, regrename.c, reload1.c,
18091 reorg.c, tlink.c, tree.c, config/arm/arm.c, objc/objc-act.c:
18092 Don't define obstack macros.
18093
fd576c86
SC
180942002-07-22 Stephane Carrez <stcarrez@nerim.fr>
18095
18096 PR target/6744
18097 * config/m68hc11/m68hc11.c (m68hc11_z_replacement): Also replace
18098 ASM_OPERANDS instructions.
18099
b791ff31
SC
181002002-07-22 Stephane Carrez <stcarrez@nerim.fr>
18101
18102 PR target/7361
18103 * config/m68hc11/m68hc11.c (go_if_legitimate_address_internal): Accept
18104 constant addresses only on 68HC12.
18105
4a941115
NB
181062002-07-22 Neil Booth <neil@daikokuya.co.uk>
18107
18108 * cppfiles.c (stack_include_file): Correct test of whether
18109 a dependency should be output.
18110
7488cc6d
DE
181112002-07-22 David Edelsohn <edelsohn@gnu.org>
18112
18113 * collect2.c (is_ctor_dtor): Add other possible JOINER values.
18114
b41caf7c
RE
181152002-07-22 Richard Earnshaw <rearnsha@arm.com>
18116
18117 * arm.md (movqi): If optimizing and we can create pseudos, use
18118 a ZERO_EXTEND to load from memory, then copy the result into the
18119 target.
18120 (movhi): Likewise, but only for ARMv4.
18121
492e9934
NB
181222002-07-22 Neil Booth <neil@daikokuya.co.uk>
18123
18124 * ssa-ccp.c (PHI_PARMS): Remove.
18125
f01f01a6
RS
181262002-07-22 Richard Sandiford <rsandifo@redhat.com>
18127
18128 * config/mips/mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS
18129 on big-endian targets.
18130
c2ae8aef
KG
181312002-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
18132
18133 * hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE,
18134 HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
18135 HOST_WIDEST_INT_PRINT_DEC_SPACE, HOST_WIDEST_INT_PRINT_DEC_SPACE):
18136 New formatting macros.
18137
18138 * ra-debug.c (dump_static_insn_cost): Avoid string concatenation.
18139
eab2120d
R
18140Mon Jul 22 15:27:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
18141
18142 * rtlanal.c (subreg_regno_offset): Return correct offset for
18143 big endian paradoxical subregs.
0d541696
R
18144
18145 * optabs.c (expand_vector_unop): Don't expand using sub_optab
18146 if we got the wrong mode.
bb9b3805
R
18147
18148 * hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define.
18149 * genrecog.c (write_switch, write_cond): Use it.
18150 * genemit.c (gen_exp): Likewise.
18151
e96eb215
JJ
181522002-07-22 Jakub Jelinek <jakub@redhat.com>
18153
18154 * c-decl.c (build_compound_literal): Set decl TREE_READONLY from TYPE.
18155
cf3c4f56
JJ
181562002-07-22 Jakub Jelinek <jakub@redhat.com>
18157
18158 * c-decl.c (build_compound_literal): Defer compound literal decls
18159 until until file end to emit them only if they are actually used.
18160
533c4863
KG
181612002-07-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
18162
18163 * ra-build.c (check_conflict_numbers): Hide unused function.
18164 (livethrough_conflicts_bb): Avoid automatic aggregate
18165 initialization.
18166 (parts_to_webs_1): Avoid `U' integer constant modifier.
18167 (conflicts_between_webs): Wrap a variable in the macro controlling
18168 its usage.
18169 * ra-debug.c (ra_debug_msg): Use VA_OPEN/VA_CLOSE.
18170 (dump_igraph, dump_graph_cost): Avoid string concatenation
18171 (dump_static_insn_cost): Avoid automatic aggregate
18172 initialization.
18173 * ra-rewrite.c (insert_stores): Avoid automatic aggregate
18174 initialization.
18175 (dump_cost): Avoid string concatenation
18176
8943a0b4
RH
181772002-07-21 Richard Henderson <rth@redhat.com>
18178
18179 * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Don't use
18180 GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded.
18181
b1aef35b
RH
181822002-07-21 Richard Henderson <rth@redhat.com>
18183
18184 * unroll.c (find_splittable_givs): Do not split DEST_ADDR givs
18185 that are not unrolled completely.
18186
5e1afb11
RH
181872002-07-21 Richard Henderson <rth@redhat.com>
18188
18189 * loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS.
18190 * loop.c (strength_reduce): Update.
18191 * toplev.c (rest_of_compilation): Do unrolling in the first
18192 loop pass, not the second.
18193
c67a1cf6
RH
181942002-07-21 Richard Henderson <rth@redhat.com>
18195
18196 * emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL
18197 when flag_argument_noalias == 2.
18198 * alias.c (nonoverlapping_memrefs_p): Handle that.
18199 * print-rtl.c (print_mem_expr): Likewise.
18200
b68daef4
HS
182012002-07-21 Hartmut Schirmer <hartmut.schirmer@arcor.de>
18202
18203 * libgcc2.c (__divdi3, __moddi3): Use unary minus operator
18204 instead of __negdi2 directly.
18205
060a58c5
NB
182062002-07-21 Neil Booth <neil@daikokuya.co.uk>
18207
18208 * gengenrtl.c (gencode): Don't define obstack_alloc_rtx.
18209 * function.c (SYMBOL__MAIN): Remove definition.
18210 * global.c (SET_CONFLICT, REGBITP, ALLOCNO_LIVE_P): Remove.
99086d59 18211 * predict.c (PROB_NEVER, PROB_LIKELY, PROB_UNLIKELY): Remove.
060a58c5
NB
18212 * profile.c (GCOV_INDEX_TO_BB): Remove.
18213 * sched-rgn.c (ABS_VALUE, MIN_DIFF_PRIORITY, MIN_PROB_DIFF): Remove.
18214 * simplify-rtx.c (FIXED_BASE_PLUS_P): Remove.
18215
2f8dd115
NB
182162002-07-21 Neil Booth <neil@daikokuya.co.uk>
18217
18218 * c-lex.c (GET_ENVIRONMENT): Remove.
18219 * collect2.c (GET_ENV_PATH_LIST): Remove.
18220 (prefix_from_env): Use GET_ENVIRONMENT.
18221 * cppinit.c (GET_ENV_PATH_LIST): Remove.
18222 (init_standard_includes): Use GET_ENVIRONMENT.
18223 * defaults.h (GET_ENVIRONMENT): Define here if not already.
18224 * gcc.c (GET_ENV_PATH_LIST): Remove.
18225 (make_relative_prefix, process_command): Update.
18226 * protoize.c (GET_ENV_PATH_LIST): Remove.
18227 (do_processing): Update.
18228
56508306
GDR
182292002-07-21 Gabriel Dos Reis <gdr@nerim.net>
18230
18231 * c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'.
18232 (grokdeclarator): Likewise.
18233 * c-format.c (C_STD_NAME): Likewise.
18234 * c-lex.c (interpret_integer): Likewise.
18235 * c-typeck.c (build_array_ref): Likewise.
18236 * cpplex.c (_cpp_lex_direct): Likewise.
18237 * toplev.c (documented_lang_options): Likewise.
18238
e2f62855
NB
182392002-07-21 Neil Booth <neil@daikokuya.co.uk>
18240
18241 * c-format.c (T99_I, T99_UI): Remove.
18242
c89d1dfd
NB
182432002-07-21 Neil Booth <neil@daikokuya.co.uk>
18244
18245 * c-typeck.c (SAVE_SPELLING_DEPTH): Remove.
18246
46690369
JH
18247Sun Jul 21 21:36:41 CEST 2002 Jan Hubicka <jh@suse.cz>
18248
18249 * gcse.c (do_local_cprop): Do not extend lifetimes of registers set by
18250 do_local_cprop.
18251
60ffc1b8
AJ
182522002-07-21 Andreas Jaeger <aj@suse.de>
18253
99086d59 18254 * reload1.c (fixup_abnormal_edges): Remove unused variable.
60ffc1b8 18255
c05ffc49
BS
182562002-07-21 Bernd Schmidt <bernds@redhat.com>
18257
18258 Improvements for the ifcvt pass from Michael Meissner, with patches
18259 by Richard Sandiford <rsandifo@redhat.com>
18260 * basic-block.h (struct ce_if_block, ce_if_block_t): New types.
18261 * ifcvt.c (cond_exec_changed_p): New static variable.
18262 (last_active_insn): New function, renamed from last_active_insn_p
18263 and changed to return the last active insn in a basic block. All
18264 callers updated.
18265 (block_fallthru): New function.
18266 (cond_exec_process_insns): New argument CE_INFO. Pass it to
18267 IFCVT_MODIFY_INSN. All callers updated.
18268 Return false if START or END are NULL.
18269 Handle case where we're processing an insn that is already
18270 conditional.
18271
18272 (noce_process_if_block): CE_INFO argument rather than
18273 multiple args containing the involved basic blocks. All callers
18274 changed.
18275 (process_if_block, merge_if_block, find_if_block,
18276 cond_exec_process_if_block): Likewise.
18277
18278 (cond_exec_process_if_block): New arg DO_MULTIPLE_P. All callers
18279 changed.
18280 Use new function last_active_insn to simplify some code.
18281 New code to handle multiple tests.
18282 Call IFCVT_MODIFY_CANCEL in all failure cases, otherwise set
18283 cond_exec_changed_p to TRUE.
18284
18285 (process_if_block): New code to handle multiple tests.
18286 (merge_if_block): Likewise.
18287 (find_if_header): New arg PASS. Changed to return the currently
18288 processed basic block or NULL instead of true/false. All callers
18289 changed.
18290 Call IFCVT_INIT_EXTRA_FIELDS.
18291 (block_jumps_and_fallthru_p): New function.
18292 (find_if_block): Discover opportunities to convert multiple tests.
18293 Add additional debugging output.
18294 Update the ce_info structure before returning.
18295
18296 (if_convert): Run multiple passes of if-conversion.
18297 * doc/tm.texi (IFCVT_MODIFY_TESTS, IFCVT_MODIFY_INSN,
18298 IFCVT_MODIFY_FINAL, IFCVT_MODIFY_CANCEL, IFCVT_MODIFY_MULTIPLE_TESTS,
18299 IFCVT_INIT_EXTRA_FIELDS, IFCVT_EXTRA_FIELDS): Update documentation for
18300 these macros.
18301
ae860ff7
JH
18302Sun Jul 21 00:54:54 CEST 2002 Jan Hubicka <jh@suse.cz>
18303
18304 * gcse.c: Include cselib.h
18305 (constptop_register): Break out from ...
18306 (cprop_insn): ... here; kill basic_block argument.
18307 (do_local_cprop, local_cprop_pass): New functions.
18308 (one_cprop_pass): Call local_cprop_pass.
18309
0da65b89
RS
183102002-07-20 Roger Sayle <roger@eyesopen.com>
18311
18312 * simplify-rtx.c (simplify_relational_operation): Optimize
18313 abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).
18314
47cc673a
MM
183152002-07-20 Michae Matz <matz@suse.de>
18316
18317 * ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.
18318
68e65275
NB
183192002-07-20 Neil Booth <neil@daikokuya.co.uk>
18320
18321 * cppexp.c (struct op): Add token pointer.
18322 (check_promotion, CHECK_PROMOTION): New.
18323 (optab): Update.
18324 (_cpp_parse_expr): Update, use token pointer of struct op.
18325 (reduce): Warn about change of sign owing to promotion.
18326 * cppinit.c (cpp_handle_option): New warning if -Wall.
18327 * cpplib.h (struct cpp_options): New member.
18328
e3485bbc
DE
183292002-07-19 David Edelsohn <edelsohn@gnu.org>
18330
18331 * config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
18332 fpu list. Separate Power4 compare and delayed_compare. Correct
18333 Power4 fpcompare.
18334 (fix_truncdfsi2_internal): Restore FPR preference.
18335 * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
18336 mcpu?power4, mcpu?604e. Remove mpower, mpower2, mpowerpc.
18337
449655a6
MV
183382002-07-19 Momchil Velikov <velco@fadata.bg>
18339
18340 * reload1.c (reload_as_needed): Duplicate oldpat.
18341
8b583747
AM
183422002-07-20 Alan Modra <amodra@bigpond.net.au>
18343
18344 PR optimization/7130
18345 * loop.h (struct loop_info): Add "preconditioned".
18346 * unroll.c (unroll_loop): Set it.
18347 * doloop.c (doloop_modify_runtime): Correct count for unrolled loops.
18348
0dc36574
ZW
183492002-07-19 Zack Weinberg <zack@codesourcery.com>
18350
18351 * rtl.def (CODE_LABEL): Remove slot 8.
18352 * rtl.h (struct rtx_def): Document new uses of jump and call fields.
18353 (LABEL_ALTERNATE_NAME): Delete.
18354 (LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New.
18355 * defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME.
18356
18357 * final.c (output_alternate_entry_point): New.
18358 (final_scan_insn): Use it instead of
18359 ASM_OUTPUT_ALTERNATE_LABEL_NAME. Do not consider possibility
18360 of a case label being an alternate entry point.
18361
18362 * cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P.
18363 * emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL.
18364 Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME
18365 (field deleted).
18366 * print-rtl.c, ra-debug.c: Update code to output CODE_LABELs.
18367
18368 * doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and
18369 LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME.
18370 * doc/tm.texi: Delete documentation of
18371 ASM_OUTPUT_ALTERNATE_LABEL_NAME.
18372
59267987
RO
183732002-07-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
18374
18375 * config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
18376 (PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
18377 (LINK_SPEC): Define.
18378 (STARTFILE_SPEC): Define.
18379 (ENDFILE_SPEC): Define.
18380
18381 * config/mips/iris6-o32.h (LINK_SPEC): Move ...
18382 * config/mips/iris6-o32-as.h (LINK_SPEC): ... here.
18383
18384 * config/mips/iris6-o32-gas.h: New file.
18385 * config.gcc (mips-sgi-irix6*o32): Use it.
18386
18387 * config/mips/t-iris5-gas: New file.
18388 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
18389
75aef48a
NB
183902002-07-19 Neil Booth <neil@daikokuya.co.uk>
18391
18392 * cppexp.c (ALWAYS_EVAL): Remove.
18393 (optab, reduce): Always evaluate.
18394 (num_unary_op, num_binary_op, num_div_op): Issue diagnostics
18395 only if not skipping evaluation.
18396
72a5503d
MM
183972002-07-19 Marek Michalkiewicz <marekm@amelek.gda.pl>
18398
18399 * config/avr/avr.c (debug_hard_reg_set): Remove.
18400
059ba716
CD
184012002-07-19 Chris Demetriou <cgd@broadcom.com>
18402
18403 * gcc.c (cpp_options): Include "%1" (cc1_spec).
18404
544823b6
RH
184052002-07-19 Richard Henderson <rth@redhat.com>
18406
18407 * loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.
18408
c35383cb
AM
184092002-07-19 Alan Modra <amodra@bigpond.net.au>
18410
18411 * prefix.c (update_path): Don't zap single `.' path components
18412 unless followed by another `.' and fix typo last patch.
18413
ad28cff7
NB
184142002-07-18 Neil Booth <neil@daikokuya.co.uk>
18415
18416 * cppexp.c (cpp_num_mul): Remove unused parameter.
18417 (UNARY, BINARY, OTHER, binary_handler): Remove.
18418 (ALWAYS_EVAL): New.
18419 (optab): Update.
18420 (reduce): Refactor to a large switch, don't use a function
18421 pointer.
18422
139b7f86
BT
184232002-07-18 Bo Thorsen <bo@berlioz.suse.de>
18424
18425 * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Define this always.
18426
e69d1422
R
18427Thu Jul 18 19:39:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
18428
18429 * sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.
18430 (sh_expand_binop_v2sf): Likewise.
18431 * sh.c (machine_dependent_reorg): Add move for UNSPEC_MOVA.
18432 (int_gpr_dest, trunc_hi_operand): New functions.
18433 * sh.h (PREDICATE_CODES): Add any_register_operand, int_gpr_dest and
18434 trunc_hi_operand.
18435 (SPECIAL_MODE_PREDICATES, any_register_operand): Define.
18436 * sh.md (cmpeqdi_t+1): Remove comments that genrecog warns about.
18437 (adddi3_compact+1, subdi3_compact+1, ashlsi3_n+1, ashlhi3+1): Likewise.
18438 (ashrsi2_16+1, ashrsi2_31+1, lshrsi3_n+1, ashrdi3+[12]): Likewise.
18439 (and_shl_scratch+[12], zero_extendhidi2+1): Likewise.
18440 (zero_extendhisi2_media+1, extendhidi2+1, extendqidi2+1): Likewise.
18441 (extendhisi2_media+1, extendqisi2_media+1): Likewise.
18442 (movsi_media_nofpu+[12], movhi_media+1, movdi_media_nofpu+1): Likewise.
18443 (movdi_const_16bit+[12], movdf_i4+[123], reload_outdf+[2-5]): Likewise.
18444 (movsf_ie+1): Likewise.
18445 (loaddi_trunc): Use int_gpr_dest predicate.
18446 (use_sfunc_addr, indirect_jump_scratch, sibcall_compact): Add mode(s).
18447 (mova, mova_const, GOTaddr2picreg, ptrel, casesi_worker_0): Likewise.
18448 (casesi_worker_0+[12], casesi_worker): Likewise.
18449 (shcompact_preserve_incoming_args): Likewise.
18450 (mov_nop): Use any_register_operand predicate.
18451 (mperm_w0): Use trunc_hi_operand predicate.
18452
47a4976f
JDA
184532002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
18454
18455 * pa-linux.h (DWARF2_UNWIND_INFO): Delete define.
18456 * pa.h (EH_RETURN_DATA_REGNO): Revise TARGET_64BIT and correct
18457 numbering.
18458
f3a4e54e
JDA
184592002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
18460
18461 * pa.c (output_deferred_plabels): Remove unused millicode enum mulU.
18462
30484ccf
RH
184632002-07-18 Richard Henderson <rth@redhat.com>
18464
18465 PR optimization/7147
18466 * ifcvt.c (noce_get_condition): Make certain that the condition
18467 is valid at JUMP.
18468
d042370e
R
18469Thu Jul 18 13:44:51 2002 J"orn Rennecke <joern.rennecke@superh.com>
18470
18471 * sh.c (barrier_align, push): Shut up compiler warnings.
18472 (initial_elimination_offset,sh_media_init_builtins): Likewise.
18473 (reg_no_subreg_operand): Delete.
18474
61fee9b3
BT
184752002-07-17 Bo Thorsen <bo@suse.de>
18476
18477 * config/i386/linux64.h (LINK_SPEC): Remove bogus -Y option.
18478 (STARTFILE_PREFIX_SPEC): Define for NATIVE_CROSS compilations.
18479 (STARTFILE_SPEC): Remove hardcoded library paths.
18480 (ENDFILE_SPEC): Likewise.
18481
f305679f
JH
18482Thu Jul 18 09:38:59 CEST 2002 Jan Hubicka <jh@suse.cz>
18483
18484 * gcse.c (hoist_expr_reaches_here_p): Stop once expr_bb is reached.
18485
18486 * gcse.c (try_replace_reg): Do not return false positives.
18487
99bcb625
AM
184882002-07-18 Alan Modra <amodra@bigpond.net.au>
18489
f6f23ad2
AM
18490 * prefix.c: (update_path): Strip ".." components when prior dir
18491 doesn't exist. Pass correct var to UPDATE_PATH_HOST_CANONICALIZE.
18492
99bcb625
AM
18493 * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.
18494 (ASM_OUTPUT_REG_POP): Likewise.
18495
09eeeacb
AM
184962002-07-18 Alan Modra <amodra@bigpond.net.au>
18497
18498 * config/rs6000/rs6000.c (first_reg_to_save): Remove bogus
18499 adjustments to first_reg for profiling case.
18500 (output_function_profiler): Correct lr save slot for ABI_AIX_NODESC.
18501 Disable profiling for 64 bit code on both ABI_V4 and ABI_AIX_NODESC.
18502 Save static chain reg to sp + 12 on ABI_AIX_NODESC.
18503 * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Define.
18504 (ASM_OUTPUT_REG_POP): Define.
18505 * config/rs6000/linux64.h (ASM_OUTPUT_REG_PUSH): Undef.
18506 (ASM_OUTPUT_REG_POP): Undef.
18507
74d06cf2
NB
185082002-07-17 Neil Booth <neil@daikokuya.co.uk>
18509
18510 * cpplib.c (do_sccs): Handle #sccs on all systems.
18511 * system.h (SCCS_DIRECTIVE): Poison.
18512 * config/darwin.h, config/freebsd.h, config/netbsd.h,
18513 config/ptx4.h, config/svr3.h, config/svr4.h, config/alpha/elf.h,
18514 config/arm/linux-elf.h, config/c4x/c4x.h, config/d30v/d30v.h,
18515 config/i370/i370.h, config/i386/gas.h, config/i386/sco5.h,
18516 config/i960/i960.h, config/m68hc11/m68hc11.h, config/m68k/3b1.h,
18517 config/m68k/3b1g.h, config/m68k/crds.h, config/m68k/mot3300.h,
18518 config/m68k/pbb.h, config/m88k/m88k.h, config/mips/mips.h,
18519 config/sparc/pbd.h, config/stormy16/stormy16.h, config/vax/vaxv.h:
18520 Remove all references to SCCS_DIRECTIVE.
18521 * doc/cpp.texi, doc/tm.texi: Update.
18522
61dde664
R
18523Wed Jul 17 19:23:32 2002 J"orn Rennecke <joern.rennecke@superh.com>
18524
18525 * regrename.c (maybe_mode_change): New function.
18526 (find_oldest_value_reg, copyprop_hardreg_forward_1): Use it.
18527
97f51ac4
RB
185282002-07-17 Rodney Brown <rbrown64@csc.com.au>
18529
18530 * config/i386/i386.c (ix86_expand_int_movcc): In the general case
18531 suppress addition when either ct or cf are zero.
18532
a9b6f1e7 185332002-07-17 Eric Botcazou <ebotcazou@multimania.com>
30484ccf 18534 Glen Nakamura <glen@imodulo.com>
f1a73cfe
EB
18535
18536 PR optimization/6713
18537 * loop.c (loop_givs_rescan): Explicitly delete the insn that
18538 sets a non-replaceable giv after issuing the new one.
18539
23ff0223
NB
185402002-07-17 Neil Booth <neil@daikokuya.co.uk>
18541
18542 * cppexp.c (cpp_interpret_integer, append_digit, parse_defined,
18543 eval_token): Clarify and correct use of "bool" variables.
18544 * cpplib.h (struct cpp_options): Similarly.
18545 * cppmacro.c (parse_params, _cpp_save_parameter): Ditto.
18546 * cpptrad.c (recursive_macro): Similarly.
18547
ac09192a
R
18548Wed Jul 17 17:08:06 2002 J"orn Rennecke <joern.rennecke@superh.com>
18549
d28586ab 18550 * config/sh/lib1funcs.asm (udivsi3_i4): Implement SHcompact version in
ac09192a 18551 SHmedia code.
68cef009
R
18552
18553 * sh.md (cmpgtudi_media): Remove spurious @.
701e3726
R
18554
18555 * config/sh/lib1funcs.asm (FMOVD_WORKS): Don't define for little endian.
18556 * sh.h (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for little endian.
ca903bba
R
18557
18558 * config/sh/lib1funcs.asm (init_trampoline): New entry point.
18559 * sh-protos.h (sh_initialize_trampoline): Declare.
18560 * sh.c (sh_initialize_trampoline): New function.
18561 * sh.h (TRAMPOLINE_SIZE): Only 24 for TARGET_SHMEDIA32.
18562 (TRAMPOLINE_ALIGNMENT): Need cache-line alignment for TARGET_SHMEDIA.
18563 (INITIALIZE_TRAMPOLINE): Call sh_initialize_trampoline.
18564 (TRAMPOLINE_ADJUST_ADDRESS): Not needed for SHcompact.
18565 * sh.md (initialize_trampoline, double_shori): New patterns.
18566 (initialize_trampoline_compact): Likewise.
18567 (shmedia32_initialize_trampoline_big): Remove.
18568 (shmedia32_initialize_trampoline_little): Likewise.
0ac78517
R
18569
18570 * sh-protos.h (binary_float_operator): Remove declaration.
18571 (sh_expand_unop_v2sf, sh_expand_binop_v2sf): Declare.
18572 * sh.c (print_operand, case 'N'): Check against CONST0_RTX.
18573 (unary_float_operator, sh_expand_unop_v2sf): New functions.
18574 (sh_expand_binop_v2sf): Likewise.
18575 (zero_vec_operand): Delete.
18576 (SH_BLTIN_UDI): New builtin shared signature define. Renumbered
18577 all non-shared ones.
18578 (bdesc): Change all the mextr builtins to use SH_BLTIN_UDI.
18579 Enable nsb and byterev.
18580 * sh.h (CONDITIONAL_REGISTER_USAGE): Initialize DF_HI_REGS.
18581 (HARD_REGNO_MODE_OK): Allow TImode in fp regs. Allow V2SFmode
18582 in general regs.
18583 (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add DF_HI_REGS.
18584 (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. Remove clause for
18585 immediate operands.
18586 (SECONDARY_INPUT_RELOAD_CLASS): Add clause for immediate operands.
18587 Add DF_HI_REGS.
18588 (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Allow
18589 lowpart fp regs - only for big endian for now.
da7d8304 18590 (LEGITIMATE_CONSTANT_P): Don't allow nonzero float vectors
0ac78517
R
18591 when FPU is in use.
18592 (EXTRA_CONTRAINT_U): Check against CONST0_RTX.
18593 (LOAD_EXTEND_OP): NIL for SImode.
18594 (REGISTER_MOVE_COST): Add DF_HI_REGS. Const for moves between
18595 general and fp registers is 4.
18596 PREDICATE_CODES: Amend binary_float_operator entry.
18597 Remove zero_vec_operand. Add unary_float_operator.
18598 * sh.md (udivsi3_i4_media): Use truncate instead of paradoxical
18599 subreg SET_DEST.
18600 (truncdisi2, truncdihi2, movv2sf): Allow memory destinations.
18601 (truncdiqi2): Do sign extension.
18602 (movsi_media, movdi_media): Allow to use r63 to an fp register.
18603 (movdf_media, movsf_media): Likewise.
18604 (movv2sf_i, movv2sf_i+1): Don't use f{ld,st}.p or SUBREGS.
18605 Collapse to one define_insn_and_split. Allow immediate sources.
18606 (addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New patterns.
18607 (movv4sf_i): Allow immediate sources. Use simplify_gen_subreg.
18608 (movv4sf): Allow immediate sources.
18609 (movsf_media_nofpu+1): Don't split moves to FP registers.
18610 (unary_sf_op, binary_sf_op, mshflo_w_x, concat_v2sf): New patterns.
18611 (movv8qi_i+3): Check against CONST0_RTX.
18612 (mextr1, mextr2. mextr3. mextr4, mextr5, mextr6, mextr7): Use DImode
18613 for input and output operands. Fix argument 3 to gen_mextr_rl.
18614 (mmul23_wl, mmul01_wl, mmulsum_wq_i): s/const_vector/parallel/
18615 (msad_ubq_i, mshf4_b, mshf0_b, mshf4_l, mshf0_l, mshf4_w): Likewise.
18616 (mshf0_w, fipr, ftrv): Likewise.
18617 (mshfhi_l_di): Now insn_and_split. Can handle FP regs.
18618
e9d7b180
JD
186192002-07-17 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
18620
18621 * arm.h (ARM_NUM_INTS, ARM_NUM_REGS, ARM_NUM_REGS2): Renamed from
18622 NUM_INTS, NUM_REGS and ARM_NUM_REGS2 respectively. All uses changed.
18623 * arm.c: Similarly.
18624
8214bf98
RS
186252002-07-17 Richard Sandiford <rsandifo@redhat.com>
18626
18627 * config/mips/mips-protos.h (mips_sign_extend): Declare.
18628 * config/mips/mips.h (MASK_DEBUG_H, TARGET_DEBUG_H_MODE): Remove.
18629 (TARGET_SWITCHES): Remove debugh.
18630 (ISA_HAS_TRUNC_W): New macro.
18631 (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS if TARGET_FLOAT64.
18632 (PREDICATE_CODES): Remove se_nonimmediate_operand.
18633 * config/mips/mips.c (movdi_operand): Allow sign-extensions of
18634 any SImode move_operand.
18635 (se_nonimmediate_operand): Remove.
18636 (mips_sign_extend): New.
18637 (mips_move_2words): Use it for sign-extended source operands.
18638 (override_options): Allow integers to be put into single FPRs.
18639 (mips_secondary_reload_class): Handle integers in float registers.
18640 * config/mips/mips.md (extendsidi2): Turn into a define_expand.
18641 (fix_truncsfsi2, fix_truncdfsi2): Likewise.
18642 (fix_truncdfsi2_insn, fix_truncdfsi2_macro): New.
18643 (fix_truncsfsi2_insn, fix_truncsfsi2_macro): New.
18644 (fix_truncdfdi2): Provide only a single alternative, in which the
18645 integer is in a float register. Depend on TARGET_FLOAT64 rather
18646 than TARGET_64BIT.
18647 (fix_truncsfdi2, floatdidf2, floatdisf2): Likewise.
18648 (floatsidf2, floatsisf2): Likewise, but no TARGET_FLOAT64 dependency.
18649 (movdi_internal2): Don't allow the source operand to be sign-extended.
18650 Add alternatives for float registers.
18651 (*movdi_internal2_extend): New. Version of movdi_internal2 that
18652 allows sign-extension.
18653 (*movdi_internal2_mips16): Name the existing mips16 movdi pattern.
18654 (movsi_internal2): Rename to movsi_internal. Add alternatives for
18655 float registers. Remove TARGET_DEBUG_H_MODE test.
18656 (movhi_internal1): Rename to movhi_internal. Don't check
18657 TARGET_DEBUG_H_MODE. Fix transposed *d and *f source constraints.
18658 (movqi_internal1): Rename to movqi_internal and remove
18659 TARGET_DEBUG_H_MODE dependency.
18660 (movsi_internal1, movhi_internal2, movqi_internal2): Remove.
18661
7ab0121e
JW
186622002-07-16 Jim Wilson <wilson@redhat.com>
18663
18664 * toplev.c (lang_dependent_init): Create function context for
18665 init_expr_once.
18666
349ccf2e
HPN
186672002-07-16 Hans-Peter Nilsson <hp@axis.com>
18668
18669 * config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't
18670 --gc-sections if -r.
18671 * config/cris/cris.h: Ditto.
18672
06ec023f
RB
186732002-07-16 Rodney Brown <rbrown64@csc.com.au>
18674
18675 * config/i386/i386.c (ix86_expand_int_movcc): In the case where
18676 the comparison directly gives a mask suppress addition when cf is
18677 zero by complementing the mask.
18678
39cef914
NN
186792002-07-16 Nathanael Nerode <neroden@gcc.gnu.org>
18680
18681 * Makefile.in: Delete references to enquire.
18682 * enquire.c: Move to contrib.
18683
92c1a778
SS
186842002-07-16 Stan Shebs <shebs@apple.com>
18685
2aa9948d
SS
18686 * config/darwin.h (ASM_OUTPUT_LABEL): Move to here from
18687 config/rs6000/darwin.h.
18688 (ASM_OUTPUT_SKIP): Ditto.
18689 (TEXT_SECTION_ASM_OP): Ditto.
18690 (DATA_SECTION_ASM_OP): Ditto.
18691 (ASM_APP_ON): Define.
18692 (ASM_APP_OFF): Define.
18693 * config/rs6000/darwin.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_SKIP,
18694 TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Remove.
18695
18696 * config/darwin.c (func_name_maybe_scoped): Remove unused decl.
92c1a778
SS
18697 (machopic_function_base_name): Declare result to be const.
18698 (machopic_non_lazy_ptr_name): Ditto.
18699 (machopic_stub_name): Ditto.
2aa9948d 18700 * config/darwin-protos.h: Ditto for the prototypes.
92c1a778 18701
daaab00a
JH
18702Wed Jul 17 00:22:39 CEST 2002 Jan Hubicka <jh@suse.cz>
18703
18704 * m68hc11.c (m68hc11_reorg): Do not rebuild CFG.
18705
63c574cc
JH
18706Wed Jul 17 00:20:48 CEST 2002 Jan Hubicka <jh@suse.cz>
18707
18708 * i386.md (prefetch): Fix for 64bit mode.
18709 (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
18710
2a500b9e
JH
18711Wed Jul 17 00:19:20 CEST 2002 Jan Hubicka <jh@suse.cz>
18712
18713 * i386.h (MACHINE_DEPENDENT_REORG): New macro.
18714 * i386.c (x86_machine_dependent_reorg): New function.
18715 * i386-protos.h (x86_machine_dependent_reorg): Declare.
18716
e5faf155
ZW
187172002-07-16 Zack Weinberg <zack@codesourcery.com>
18718
18719 * builtins.c (std_expand_builtin_va_start): Remove unused
18720 first argument.
18721 (expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and
18722 std_expand_builtin_va_start with just two arguments.
18723 * expr.h: Update prototypes.
18724
18725 * alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h,
18726 arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h,
18727 i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h,
18728 m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h,
18729 mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c,
18730 rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h,
18731 s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h,
18732 sparc.c, stormy16-protos.h, stormy16.h, stormy16.c,
18733 xtensa-protos.h, xtensa.h, xtensa.c: Remove unused first
18734 argument from all implementations of EXPAND_BUILTIN_VA_START
18735 and all uses of std_expand_builtin_va_start.
18736
dbf65c2f
R
18737Tue Jul 16 19:32:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
18738
18739 * regrename.c (copy_value): Don't record high part copies.
18740
6acb6d3e 187412002-07-16 Steve Ellcey <sje@cup.hp.com>
99b823ca 18742
6acb6d3e
SE
18743 * gcc/config/pa/long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.
18744 (fixunstfdi_libfunc): Change to use FIXUNS_TRUNCTFDI2_LIBCALL.
18745 * gcc/config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_udbl): New function.
18746
5d7c2819
ID
187472002-07-16 Ian Dall <ian@sibyl.beware.dropbear.id.au>
18748
18749 * doc/invoke.texi (NS32K Options): Document -mieee-compare option
18750
18751 * config/ns32k/ns32k.md (addsi3, *frame_addr, *stack_addr): merge
18752 into addsi3 using register class "x" and "y".
18753
18754 * config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf):
18755 "earlyclobber" constraint modifier for some alternative.
e5faf155 18756
5d7c2819
ID
18757 * config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble)
18758 (*ble, *blt): Flag to indicate bCOND and sCOND should check for
18759 unordered.
18760 config/ns32k/ns32k.h (CC_UNORD): define corresponding mask.
18761
18762 * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE, MASK_IEEE_COMPARE)
18763 (TARGET_SWITCHES): Add -mieee-compare option.
18764 (OVERRIDE_OPTIONS): 32332 is a subset of
18765 32532. Don't use IEEE_COMPARE -funsafe-math-optimizations.
4977bab6 18766 (TARGET_SWITCHES): Fix description of bitfield option.
5d7c2819
ID
18767 * config/ns32k/netbsd.h (TARGET_DEFAULT): Add
18768 -mieee-compare option. Remove 32332 flag.
18769
5da4f548 187702002-07-16 Steve Ellcey <sje@cup.hp.com>
5d7c2819
ID
18771
18772 * explow.c (convert_memory_address): Remove special handling
5da4f548 18773 when POINTERS_EXTEND_UNSIGNED < 0.
5d7c2819 18774 * config/ia64.md (movsi_symbolic): New instruction for ILP32 mode.
5da4f548
SE
18775 (movedi_symbolic): Fix typo.
18776 (load_fptr): Remove mode restriction so it works for SI and DI.
18777 (load_fptr_internal1): Ditto.
18778 (load_gprel): Ditto.
18779 (load_symptr_internal1): Ditto.
18780 (call_pic): Ditto.
5d7c2819 18781 * config/ia64.c (call_operand): Modify mode check.
5da4f548
SE
18782 (ia64_expand_load_address): Handle DI and SI addresses and symbols.
18783 (ia64_expand_move): Ditto.
18784 (ia64_assemble_integer): Handle SImode function pointers.
18785 (ia64_expand_fetch_and_op): Handle SImode mem addresses.
18786 (ia64_expand_op_and_fetch): Ditto.
18787 (ia64_expand_compare_and_swap): Ditto.
18788 (ia64_expand_lock_test_and_set): Ditto.
18789 (ia64_expand_lock_release): Ditto.
18790
1575c31e
JD
187912002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
18792
18793 * arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.
18794
187952002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
18796 Richard Earnshaw <rearnsha@arm.com>
18797
e5faf155 18798 * arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
1575c31e
JD
18799 CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF. Simplify logic.
18800
3894f59e
RE
188012002-07-16 Richard Earnshaw <rearnsha@arm.com>
18802
18803 * arm.md (stack_tie): New insn. Use an idiom that the alias code
18804 understands to be a memory clobber.
18805 * arm.c (arm_expand_prologue): Use it.
18806
e0b89be2 188072002-07-16 Daniel Berlin <dberlin@dberlin.org>
54b2a7f8
DB
18808
18809 * ra-rewrite.c: #include reload.h, insn-config.h
18810 * ra-build.c: #include reload.h
18811 * Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to
e5faf155 18812 depend on reload.h, insn-config.h.
54b2a7f8 18813
cffa2189
R
18814Tue Jul 16 11:57:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
18815
18816 * expr.c (emit_move_insn_1): Handle arbitrary moves that are
18817 the same size as a word.
18818
18819 * regrename.c (find_oldest_value_reg): Take WORDS_BIG_ENDIAN /
18820 BYTES_BIG_ENDIAN into account.
18821
052c96b1
JH
18822Tue Jul 16 12:22:44 CEST 2002 Jan Hubicka <jh@suse.cz>
18823
18824 * i386.md (prefetch): Fix for 64bit mode.
18825 (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
18826
18827 * i386.md (movss, movsd): Use xorps/xorpd for Athlon.
18828
ae32926b
MM
188292002-07-16 Marek Michalkiewicz <marekm@amelek.gda.pl>
18830
18831 * hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set.
18832
6c535c69
ZW
188332002-07-15 Zack Weinberg <zack@codesourcery.com>
18834
18835 * ginclude/varargs.h: Replace with stub which issues #error.
18836 * ginclude/stdarg.h: __builtin_stdarg_start is renamed
18837 __builtin_va_start.
18838
18839 * builtins.def (BUILT_IN_VARARGS_START): Delete.
18840 (BUILT_IN_VA_START): New.
18841 * builtins.c (expand_builtin_va_start): Eliminate first
18842 argument and code to implement pre-ISO varargs.
18843 (std_expand_builtin_va_start): Ignore first argument; it is
18844 always 1.
18845 (expand_builtin): Handle BUILT_IN_VA_START and
18846 BUILT_IN_STDARG_START identically. Delete
18847 BUILT_IN_VARARGS_START case.
18848
18849 * function.c (assign_parms): Delete hide_last_arg and all
18850 its uses.
18851 (mark_varargs): Delete function.
18852 * function.h (struct function): Delete 'varargs' bit.
18853 (current_function_varargs): Delete macro.
18854 * tree.h: Don't declare mark_varargs.
18855
18856 * c-decl.c (c_function_varargs, c_mark_varargs): Delete.
18857 (c_expand_body): Don't call mark_varargs.
18858 * c-objc-common.c: Handle BUILT_IN_VA_START and
18859 BUILT_IN_STDARG_START identically. Delete
18860 BUILT_IN_VARARGS_START case.
18861 * c-tree.h: Don't declare c_mark_varargs.
18862 * c-parse.in: Remove grammar rules for '&...' (which has been
18863 commented out since before 2.7.2) and for '...' in K+R
18864 argument declarations.
18865
18866 * builtins.c, function.c, integrate.c, sibcall.c,
18867 config/alpha/unicosmk.h, config/arc/arc.c, config/arc/arc.h,
18868 config/avr/avr.c, config/cris/cris.c, config/fr30/fr30.c,
18869 config/i960/i960.c, config/i960/i960.md, config/m32r/m32r.c,
18870 config/m32r/m32r.h, config/m88k/m88k.c, config/m88k/m88k.h,
18871 config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
18872 config/mn10300/mn10300.c, config/pa/som.h, config/s390/s390.c,
18873 config/sh/sh.c, config/sh/sh.h, config/sparc/sparc.h,
18874 config/stormy16/stormy16.c: Delete all references to
18875 current_function_varargs, and code predicated on that flag.
18876
18877 * config/alpha/alpha.c (alpha_va_start),
18878 config/arc/arc.c (arc_va_start),
18879 config/i386/i386.c (ix86_va_start),
18880 config/mips/mips.c (mips_va_start),
18881 config/mn10300/mn10300.c (mn10300_va_start),
18882 config/rs6000/rs6000.c (rs6000_va_start),
18883 config/s390/s390.c (s390_va_start),
18884 config/sh/sh.c (sh_va_start),
18885 Ignore first argument; it is always 1.
18886
18887 * config/c4x/c4x-protos.h, config/c4x/c4x.c: Delete c4x_va_start.
18888 * config/ia64/ia64-protos.h, config/ia64/ia64.c: Delete ia64_va_start.
18889 * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
18890 Delete m68hc11_va_start.
18891 * config/c4x/c4x.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h:
18892 No need to define EXPAND_BUILTIN_VA_START.
18893
18894 * doc/invoke.texi, doc/sourcebuild.texi, doc/tm.texi,
18895 doc/trouble.texi: Remove references to GCC-provided <varargs.h>.
18896
6d80a854
EB
188972002-07-15 Eric Botcazou <ebotcazou@multimania.com>
18898
18899 PR optimization/7153
18900 * regmove.c (optimize_reg_copy_3): Don't optimize if the register
18901 dies in more than one insn.
18902
043cfcbe
JT
189032002-07-15 Jason Thorpe <thorpej@wasabisystems.com>
18904
18905 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Remove.
18906
ed8d2920 189072002-07-15 Michael Matz <matz@suse.de>,
6c535c69 18908 Daniel Berlin <dberlin@dberlin.org>,
ed8d2920
MM
18909 Denis Chertykov <denisc@overta.ru>
18910
18911 Add a new register allocator.
18912
18913 * ra.c: New file.
18914 * ra.h: New file.
18915 * ra-build.c: New file.
18916 * ra-colorize.c: New file.
18917 * ra-debug.c: New file.
18918 * ra-rewrite.c: New file.
18919
18920 * Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
18921 (ra-rewrite.o): New .o files for libbackend.a.
18922 (GTFILES): Add basic-block.h.
18923
18924 * toplev.c (flag_new_regalloc): New.
18925 (f_options): New option "new-ra".
18926 (rest_of_compilation): Call initialize_uninitialized_subregs()
18927 only for the old allocator. If flag_new_regalloc is set, call
18928 new allocator, instead of local_alloc(), global_alloc() and
18929 friends.
18930
18931 * doc/invoke.texi: Document -fnew-ra.
18932 * basic-block.h (FOR_ALL_BB): New.
18933 * config/rs6000/rs6000.c (print_operand): Write small constants
18934 as @l+80.
18935
18936 * df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg.
18937 (df_reg_table_realloc): Make size at least as large as max_reg_num().
18938 (df_insn_table_realloc): Size argument now is absolute, not relative.
18939 Changed all callers.
18940
18941 * gengtype.c (main): Add the pseudo-type "HARD_REG_SET".
18942 * regclass.c (reg_scan_mark_refs): Ignore NULL rtx's.
18943
18944 2002-06-20 Michael Matz <matz@suse.de>
18945
18946 * df.h (struct ref.id): Make unsigned.
18947 * df.c (df_bb_reg_def_chain_create): Remove unsigned cast.
18948
18949 2002-06-13 Michael Matz <matz@suse.de>
18950
18951 * df.h (DF_REF_MODE_CHANGE): New flag.
18952 * df.c (df_def_record_1, df_uses_record): Set this flag for refs
18953 involving subregs with invalid mode changes, when
18954 CLASS_CANNOT_CHANGE_MODE is defined.
18955
18956 2002-05-07 Michael Matz <matz@suse.de>
18957
18958 * reload1.c (fixup_abnormal_edges): Don't insert on NULL edge.
18959
18960 2002-05-03 Michael Matz <matz@suse.de>
18961
18962 * sbitmap.c (sbitmap_difference): Accept sbitmaps of different size.
18963
18964 Sat Feb 2 18:58:07 2002 Denis Chertykov <denisc@overta.ru>
18965
18966 * regclass.c (regclass): Work with all regs which have sets or
18967 refs.
18968 (reg_scan_mark_refs): Count regs inside (clobber ...).
18969
18970 2002-01-04 Michael Matz <matzmich@cs.tu-berlin.de>
18971
18972 * df.c (df_ref_record): Correctly calculate SUBREGs of hardregs.
18973 (df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only
18974 add new refs.
18975 (df_bb_refs_update): Don't clear insns_modified here, ...
18976 (df_analyse): ... but here.
18977
18978 * sbitmap.c (dump_sbitmap_file): New.
18979 (debug_sbitmap): Use it.
18980
18981 * sbitmap.h (dump_sbitmap_file): Add prototype.
18982
18983 2001-08-07 Daniel Berlin <dan@cgsoftware.com>
18984
18985 * df.c (df_insn_modify): Grow the UID table if necessary, rather
18986 than assume all emits go through df_insns_modify.
18987
18988 2001-07-26 Daniel Berlin <dan@cgsoftware.com>
18989
18990 * regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS,
18991 increase REG_N_REFS (like flow does), so that regclass doesn't
18992 think a reg is useless, and thus, not calculate a class, when it
18993 really should have.
18994
18995 2001-01-28 Daniel Berlin <dberlin@redhat.com>
18996
18997 * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for
18998 dataflow analysis.
18999
794a292d
JJ
190002002-07-15 Jakub Jelinek <jakub@redhat.com>
19001
19002 PR middle-end/7245
19003 * config/i386/i386.c (const_int_1_31_operand): New.
19004 * config/i386/i386.h (PREDICATE_CODES): Add it.
19005 * config/i386/i386.md (ashlsi3_cmp, ashlsi3_cmp_zext, ashlhi3_cmp,
19006 ashlqi3_cmp, ashrsi3_cmp, ashrsi3_cmp_zext, ashrhi3_cmp, ashrqi3_cmp,
19007 lshrsi3_cmp, lshrsi3_cmp_zext, lshrhi3_cmp, lshrqi3_cmp): Use it.
19008
05d49501
AM
190092002-07-14 Alan Modra <amodra@bigpond.net.au>
19010
19011 PR target/7282
19012 * config/rs6000/rs6000.md (floatsidf2): Enable for POWERPC64.
19013 (floatunssidf2): Likewise.
19014 (floatsidf_ppc64): New insn_and_split.
19015 (floatunssidf_ppc64): Likewise.
19016
e89617fe
AJ
190172002-07-14 Andreas Jaeger <aj@suse.de>
19018
19019 * config.gcc (sh64): Remove unused
19020 target_requires_64bit_host_wide_int.
19021
78762e3b
RS
190222002-07-12 Roger Sayle <roger@eyesopen.com>
19023
19024 * expr.c [CLEAR_RATIO]: New macro defining the maximum number
19025 of move instructions to use when clearing memory, c.f. MOVE_RATIO.
19026 [CLEAR_BY_PIECES]: New macro, using CLEAR_RATIO, to determine
19027 whether clear_by_pieces should be used to clear storage.
19028 (clear_storage): Use CLEAR_BY_PIECES instead of MOVE_BY_PIECES.
19029
19030 * doc/tm.texi: Document these two new target macros.
19031
f7a454e9
SC
190322002-07-12 Stephane Carrez <stcarrez@nerim.fr>
19033
19034 * config/m68hc11/m68hc11.md ("zero_extendsidi2"): Use D_REG only for
19035 the scratch register.
19036 ("*movhi2_push"): Accept Z_REG because a split pattern can make use
19037 of it, forbid reload to use it.
19038
26af4041
MM
190392002-07-12 Marek Michalkiewicz <marekm@amelek.gda.pl>
19040
19041 * config/avr/avr.c (test_hard_reg_class): Fix TEST_HARD_REG_BIT
19042 usage on 64-bit hosts, return value was truncated to 32 bits.
19043
226cfe61
R
19044Fri Jul 12 00:49:36 2002 J"orn Rennecke <joern.rennecke@superh.com>
19045
19046 * simplify-rtx.c (simplify_subreg): Handle floating point
19047 CONST_DOUBLEs. When an integer subreg of a smaller mode than
19048 the element mode is requested, compute a subreg with an
19049 integer mode of the same size as the element mode first.
19050
25c25947
R
19051Thu Jul 11 22:02:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
19052
19053 * combine.c (try_combine): When converting a paradoxical subreg
19054 to an extension, take LOAD_EXTEND_OP into account.
19055
789b7de5
RO
190562002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
19057
19058 * config.gcc (mips-sgi-irix6*o32): New configuration.
19059
19060 * configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32
19061 configurations.
19062 * configure: Regenerate.
19063
19064 * config/mips/iris6-o32-as.h: New file.
19065 * config/mips/iris6-o32.h: New file.
e89617fe 19066
789b7de5
RO
19067 * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define.
19068 (NM_FLAGS): Define.
19069 (HAVE_AS_SHF_MERGE): Undefine.
19070
19071 * config/mips/t-iris5-as: New file.
19072 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
19073
19074 * config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME,
19075 SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK,
19076 SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT,
19077 dp-bit.c, fp-bit.c): Move ...
19078 * config/mips/t-iris5-6: ... here.
19079 New file, shared by IRIX 5 and IRIX 6.
19080 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*,
19081 mips-sgi-irix5*): Use it.
19082
19083 * config/mips/iris6.h: Remove duplicate comment.
19084
19085 * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
19086 !TARGET_IRIX6]: Define.
19087 (mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6.
19088
19089 * config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment.
19090
a18c2c5f
JDA
190912002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
19092
19093 * pa.md (adddi3): Change predicate of operand 2 to adddi3_operand
19094 and delete code to force constant to register.
19095 * pa-protos.h (adddi3_operand): Add prototype.
19096 * pa.c (adddi3_operand): New function.
19097
e65a2d65
RS
190982002-07-11 Roger Sayle <roger@eyesopen.com>
19099
19100 * c-decl.c (duplicate_decls): Preserve the noreturn attribute on
19101 non-ANSI builtin functions.
19102
a06e3c40
R
19103Thu Jul 11 11:31:12 2002 J"orn Rennecke <joern.rennecke@superh.com>
19104
19105 * rtl.h (gen_rtx_CONST_VECTOR): Declare.
19106 * gengenrtl.c (special_rtx): Check for CONST_VECTOR.
19107 * emit-rtl.c (gen_rtx_CONST_VECTOR): New function.
19108 (gen_const_vector_0): Use it.
19109
47abc309
JDA
191102002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
19111
19112 * pa.md (adddi3): For 32-bit targets, force constants to a register
19113 if they don't fit in an 11-bit immediate. Change insn predicate to
19114 arith11_operand. Remove comment.
19115 * pa.c (cint_ok_for_move): Fix comment.
19116 (emit_move_sequence): Don't directly split DImode constants on 32-bit
19117 targets.
19118
8ac9d31f
TJ
191192002-07-11 Tim Josling <tej@melbpc.org.au>
19120
e89617fe 19121 Remove front end hard coding from gengtype.c.
8ac9d31f
TJ
19122
19123 * Makefile.in
19124 (STAGESTUFF): add gtyp-gen.h
19125 (GTFILES): Remove front end specific files.
19126 (GTFILES_FILES_LANGS): New, from configure..
19127 (GTFILES_FILES_FILES): Likewise.
19128 (GTFILES_LANG_DIR_NAMES): Likewise.
19129 (GTFILES_SRCDIR): Likewise.
19130 (gtyp-gen.h): Build from configure information.
19131 (s-gtype): Remove command line parameters from gengtype.
19132 (gengtype.o): Remove dependency on GTFILES. Depend on gtyp-gen.h.
19133 (mostlyclean): Delete files generated by and for gengtype.
19134
19135 * c-config-lang.in: New file.
19136
19137 * configure.in (all_gtfiles_files_langs): New. Accumulate files
19138 for each language.
19139 (all_gtfiles_files_files): New. Accumulate language for each file
19140 accumulated.
19141 (gtfiles): Pick up value for C.
19142 (srcdir): AC-SUBST this variable.
19143 (all_gtfiles_files_langs): AC-SUBST this variable.
19144 (all_gtfiles_files_files): AC-SUBST this variable.
e89617fe 19145
8ac9d31f 19146 * configure: Regenerate.
e89617fe 19147
8ac9d31f
TJ
19148 * gengtype-lex.l (parse_file): Make parameter const.
19149
19150 * gengtype.c (toplevel): include gtyp-gen.h.
19151 (BASE_FILE_<language> unnamed enum): Delete.
19152 (lang_names): Delete (replaced by gtyp-gen.h)
19153 (lang_dir_names): From gtyp-gen.h, replaces lang_names; changed
19154 all references.
19155 (NUM_GT_FILES): New.
19156 (NUM_LANG_FILES): New.
19157 (srcdir_len): New.
19158 (NUM_BASE_FILES): Change calculation.
19159 (open_base_files): Change prototype to avoid warning.
19160 (startswith): Delete.
19161 (get_file_basename): Iterate through generated language list not
19162 hard coded list.
19163 (get_base_file_bitmap): Use generated list of files and languages.
19164 (close_output_files): Add prototype to rmove warning.
19165 (main): Iterate through list of generated files from gtyp-gen.h
19166 rather than command line paramaters. Ignore duplicated file
e89617fe 19167 names.
8ac9d31f
TJ
19168
19169 * gengtype.h (parse_file): Amend prototype for const parameter.
e89617fe 19170
8ac9d31f
TJ
19171 * doc/sourcebuild.texi: Document gtfiles variable.
19172
19173 * doc/gty.texi: Document changes to gtfiles variable for front
19174 ends.
19175
19176 * objc/config-lang.in (gtfiles): Add files needed for objc front
19177 end.
19178
0e603223
RS
191792002-07-10 Roger Sayle <roger@eyesopen.com>
19180
19181 PR c/2454
19182 * combine.c (nonzero_bits): LOAD_EXTEND_OP should only apply
19183 to SUBREGs of MEMs. (num_sign_bit_copies): Likewise.
19184
c5358a5d
RS
191852002-07-10 Roger Sayle <roger@eyesopen.com>
19186 Zack Weinberg <zack@codesourcery.com>
19187
19188 * builtins.def: Make the argument types of abort and exit
19189 independent of the front-end.
19190
a35f8b74
AM
191912002-07-11 Alan Modra <amodra@bigpond.net.au>
19192
19193 * config/rs6000/linux64.h (ASM_SPEC): Define.
19194
89e7058f
AH
191952002-07-10 Aldy Hernandez <aldyh@redhat.com>
19196
6c535c69
ZW
19197 * config/rs6000/rs6000.c (emit_frame_save): New.
19198 (rs6000_frame_related): Replace reg2 before reg.
19199 (rs6000_emit_prologue): Use emit_frame_save for saving gprs, fprs,
19200 and eh_return registers.
89e7058f 19201
086bbd21
TM
192022002-07-10 Toon Moene <toon@moene.indiv.nluug.nl>
19203
19204 Revert all patches for optimization of Complex .op. Real.
19205 * complex_part_zero_p: Remove
19206 * expand_cmplxdiv_straight: Replace complex_part_zero_p(x)
19207 with x.
19208 * expand_cmplxdiv_wide: Ditto.
19209 * expand_binop: Ditto.
19210
126dbce0
MM
192112002-07-10 Marek Michalkiewicz <marekm@amelek.gda.pl>
19212
19213 * config/avr/avr.md: Fix two 0x80000000 constants to make them
19214 negative also on 64-bit hosts.
19215
19216 Default to -fno-reorder-blocks when optimizing for size.
19217 * config/avr/avr-protos.h (avr_optimization_options): Declare.
19218 * config/avr/avr.c (avr_optimization_options): New function.
19219 * config/avr/avr.h (OPTIMIZATION_OPTIONS): New.
19220
19221 Optimize returning from simple functions.
19222 * config/avr/avr-protos.h (avr_simple_epilogue): Declare.
19223 * config/avr/avr.c (avr_simple_epilogue): New function.
19224 * config/avr/avr.md (return): New insn.
19225
21c318ba
DR
192262002-07-10 Douglas B Rupp <rupp@gnat.com>
19227
19228 * config/i386/i386.c (ix86_svr3_asm_out_constructor): Add
19229 HAS_INIT_SECTION to protection.
19230
537834c8
MM
192312002-07-10 Mark Mitchell <mark@codesourcery.com>
19232
19233 * doc/invoke.texi (Debugging Options): Mention that -gdwarf is
19234 deprecated.
19235
80ba02b1
R
19236Wed Jul 10 19:50:03 2002 J"orn Rennecke <joern.rennecke@superh.com>
19237
19238 * combine.c (gen_lowpart_for_combine): Handle vector modes.
19239 Supply non-VOID mode to simplify_gen_subreg.
19240
ae3aa00d
JH
19241Wed Jul 10 18:48:55 CEST 2002 Jan Hubicka <jh@suse.cz>
19242
19243 * i386.c (ix86_init_mmx_sse_builtins): Fix thinko.
19244
029f3983
JL
192452002-07-10 Jeffrey A Law <law@redhat.com>
19246
7a464913
JL
19247 * mn10200.c (expand_prologue): Create REG_MAYBE_DEAD notes
19248 as appropriate.
19249
6c535c69
ZW
19250 * mn10200.c (expand_epilogue): Fix test to determine which scratch
19251 register to use.
029f3983 19252
ff27a429
R
19253Wed Jul 10 16:06:00 2002 J"orn Rennecke <joern.rennecke@superh.com>
19254
19255 * cse.c (cse_insn): Supply proper SUBREG_BYTE to simplify_gen_subreg.
19256 Get mode from dest.
19257 If simplify_gen_subreg fails, try next equivalent.
19258
e6986399
GDR
192592002-07-09 Gabriel Dos Reis <gdr@codesourcery.com>
19260
19261 * diagnostic.h: #include location.h
19262 (location_t): Move definition to..
19263 * location.h: ... here. New file.
19264 * tree.h: #include location.h
19265 (DECL_SOURCE_LOCATION): New macro.
19266 (DECL_SOURCE_FILE): Use.
19267 (DECL_SOURCE_LINE): Likewise.
19268 (struct tree_decl): REplace filename and linenum with locus.
19269 * Makefile.in (TREE_H): add location.h
19270 (diagnostic.o): Depends on gt-location.h
19271 (gt-location.h): Depends on s-gtype
19272
7990b46f
MK
192732002-07-09 Matt Kraai <kraai@alumni.cmu.edu>
19274
19275 * config/rs6000/aix.h: Convert CPP_PREDEFINES to
19276 TARGET_OS_CPP_BUILTINS.
19277 * config/rs6000/aix31.h: Likewise.
19278 * config/rs6000/aix41.h: Likewise.
19279 * config/rs6000/aix43.h: Likewise.
19280 * config/rs6000/aix51.h: Likewise.
19281 * config/rs6000/beos.h: Likewise.
19282 * config/rs6000/darwin.h: Likewise.
19283 * config/rs6000/eabi.h: Likewise.
19284 * config/rs6000/eabisim.h: Likewise.
19285 * config/rs6000/linux.h: Likewise.
19286 * config/rs6000/linux64.h: Likewise.
19287 * config/rs6000/lynx.h: Likewise.
19288 * config/rs6000/mach.h: Likewise.
19289 * config/rs6000/rtems.h: Likewise.
19290 * config/rs6000/sysv4.h: Likewise.
19291 * config/rs6000/vxppc.h: Likewise.
efa39e99
DP
19292
192932002-07-09 Devang Patel <dpatel@apple.com>
19294 * objc/objc-act.c (adjust_type_for_id_default): Fix my previous patch.
19295 Do not allow ObjC objects as a parameter type for Objective-C methods.
19296 My previous patch restricted 'struct' also.
e89617fe 19297
cd98faa1
NB
192982002-07-09 Neil Booth <neil@daikokuya.co.uk>
19299
19300 * cpperror.c (cpp_error): Default to directive_line within
19301 directives here.
19302 * cppexp.c (cpp_interpret_integer): Only use traditional
19303 number semantics in directives.
19304 * cpplib.c (prepare_directive_trad): Don't reset pfile->line.
19305 (do_include_common): Similarly.
19306 * cpptrad.c (scan_out_logical_line): Implement accurate
19307 quoting of <> in #include.
19308 * doc/cpp.texi: Update.
19309
2ad65b0e 19310Tue Jul 9 22:37:44 2002 Stephen Clarke <stephen.clarke@superh.com>
6c535c69 19311 J"orn Rennecke <joern.rennecke@superh.com>
2ad65b0e
SC
19312
19313 * sh.c (sh_adjust_cost): Special handling of SHMEDIA code.
19314 * sh.md (attribute issues): Replace with:
19315 (attribute pipe_model). All users changed.
19316 (attribute type): Change pt / ptabs to pt_media / ptabs_media.
19317 All users changed.
19318 (function units sh5issue, sh5fds): New.
19319 (attribute is_mac_media): New.
19320 (adddi3_media, subdi3_media, divsi3_i1_media, anddi3): Add type.
19321 (andcdi3, iordi3, xordi3, ashldi3_media, lshrdi3_media): Likewise.
19322 (ashrdi3_media, negdi_media, extendsidi2, movqi_media): Likewise.
19323 (movhi_media, shori_media, movv2sf_i, jump_media): Likewise.
19324 (call_media, call_value_media, sibcall_media): Likewise.
19325 (casesi_jump_media, casesi_shift_media, casesi_load_media): Likewise.
19326 (return_media_i, addsf3_media, subsf3_media, mulsf3_media): Likewise.
19327 (mac_media, divsf3_media, floatdisf2, floatsisf2_media): Likewise.
19328 (fix_truncsfdi2, fix_truncsfsi2_media, cmpeqsf_media): Likewise.
19329 (cmpgtsf_media, cmpgesf_media, cmpunsf_media, negsf2_media): Likewise.
19330 (sqrtsf2_media, abssf2_media, adddf3_media, subdf3_media): Likewise.
19331 (muldf3_media, divdf3_media, floatdidf2, floatsidf2_media): Likewise.
19332 (fix_truncdfdi2, fix_truncdfsi2_media, cmpeqdf_media): Likewise.
19333 (cmpgtdf_media, cmpgedf_media,cmpundf_media, negdf2_media): Likewise.
19334 (sqrtdf2_media, absdf2_media, extendsfdf2_media): Likewise.
19335 (truncdfsf2_media): Likewise.
19336 (movsi_media, movsi_media_nofpu, movdi_media): Use new types.
19337 (movdi_media_nofpui, movdf_media, movdf_media_nofpu): Likewise.
19338
b6d33983
R
19339Tue Jul 9 21:39:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
19340
19341 * sh.h (PREDICATE_CODES): Add general_extend_operand and inqhi_operand.
19342 * sh.c (general_extend_operand, inqhi_operand): New functions.
19343 * sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Collapse
19344 alternatives using 'N' modifier. Add type.
19345 (adddi3z_media): Likewise. Enable generator function generation.
19346 (movdicc_false, movdicc_true, addsi3_media, subsi3_media): Use more
19347 exact predicates / constraints. Add type.
19348 (subsi3): Allow 0 for SHMEDIA.
19349 (udivsi3_i4_media): Use match_operand for input values
19350 rather than hard registers.
19351 (udivsi3 - TARGET_SHMEDIA_FPU case): Don't ferry values
19352 unnecessarily through hard registers. Keep copies of pseudo
19353 registers outside of the libcall sequence.
19354 (mulsidi3_media, umulsidi3_media): Use more exact predicates. Add type.
19355 (ashlsi3_media, ashrsi3_media, lshrsi3_media): Likewise.
19356 (zero_extendsidi2, zero_extendhidi2, zero_extendqidi2): Likewise.
19357 (extendhidi2, extendqidi2): Likewise.
19358 (andsi3_compact): Name.
19359 (andcdi3): Enable generator function generation.
19360 (zero_extendhisi2, zero_extendqisi2): Rename to
19361 (zero_extendhisi2_compact, zero_extendqisi2_compact).
19362 (extendhisi2, extendqisi2): Rename to
19363 (extendhisi2_compact, extendqisi2_compact).
19364 (rotldi3, rotldi3_mextr, rotrdi3, rotrdi3_mextr): New patterns.
19365 (loaddi_trunc, zero_extendhisi2, zero_extendhisi2_media): Likewise.
19366 (zero_extendhisi2_media+1, zero_extendqisi2): Likewise.
19367 (zero_extendqisi2_media, extendhisi2, extendhisi2_media): Likewise.
19368 (extendhisi2_media, extendhisi2_media+1, extendqisi2): Likewise.
19369 (extendqisi2_media, extendqisi2_media+1, truncdisi2): Likewise.
19370 (truncdihi2, truncdiqi2, reload_inqi, reload_inhi): Likewise.
19371 (shmedia32_initialize_trampoline_big): Likewise.
19372 (shmedia32_initialize_trampoline_little): Likewise.
19373 (nsb, nsbsi, nsbdi, ffsdi2, ffssi2, byterev): Likewise.
19374 (negdi2): Remove spurious T clobber.
19375 (zero_extendhidi2+1, extendhidi2+1, extendqidi2+1): Handle TRUNCATE.
19376 (movsi_media, movsi_media_nofpu): Remove spurious *k after b.
19377 (movdi_media, movdi_media_nofpu, pt, ptb): Likewise.
19378 (movsi_media_nofpu+2, movhi_media+1): Only do split after reload.
19379 (ic_invalidate_line_media): Write back data cache before invalidating
19380 instruction cache. Add type.
19381 (movsf_media): Sign-extend when the destination is a general
19382 purpose register. Add type.
19383 (bgt_media, bge_media, bgtu_media, bgeu_media, blt_media_i): Allow 0.
19384 (casesi_worker_0+1): Only increment ref count for proper label.
19385 (casesi_worker_0+2): Likewise.
19386
7ca0873c
MM
193872002-07-09 Mark Mitchell <mark@codesourcery.com>
19388
19389 * dwarfout.c (dwarfout_init): Warn that DWARF1 is deprecated.
19390
26b10ae0 193912002-07-09 Steve Ellcey <sje@cup.hp.com>
7ca0873c 19392
26b10ae0
SE
19393 * gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer
19394 from Pmode to ptr_mode.
19395 (get_exception_pointer): Ditto.
19396 (connect_post_landing_pads): Ditto.
19397 (dw2_build_landing_pads): Ditto.
19398
0c3a2ea0
SE
193992002-07-08 Steve Ellcey <sje@cup.hp.com>
19400 * gcc/c-pragma.h (add_to_renaming_pragma_list): New function.
19401 * gcc/c-pragma.c (add_to_renaming_pragma_list): New function.
19402 (handle_pragma_redefine_extname): Change to use new function.
19403
26c34780
RS
194042002-07-08 Roger Sayle <roger@eyesopen.com>
19405
19406 * combine.c (combine_simplify_rtx): Add an explicit cast
19407 to avoid signed/unsigned comparison warning.
19408 (simplify_if_then_else): Likewise.
19409 (extended_count): Likewise.
19410 (simplify_shift_const): Likewise.
19411 (simplify_comparison): Likewise.
19412
1d4047e0
RS
194132002-07-08 Richard Sandiford <rsandifo@redhat.com>
19414
19415 * config/mips/mips.md: Add imadd type. Update scheduler description
19416 to use imadd as well as imul.
19417 (*mul_acc_si, *madsi): Change imul alternatives to imadd.
19418 (*mul_acc_di, *mul_acc_64bit_di): Likewise.
19419 (*mul_sub_si): Likewise for first alternative. Change second
19420 alternative from imul to multi.
19421
5351f1ca
NB
194222002-07-07 Neil Booth <neil@daikokuya.co.uk>
19423
19424 * c-common.c (c_common_post_options): Update prototype;
19425 don't init backends if preprocessing only.
19426 * langhooks-def.h (LANG_HOOKS_POST_OPTIONS): Update.
19427 * langhooks.h (struct lang_hooks): Update post_options to
19428 return a boolean.
19429 * toplev.c (parse_options_and_default_flags, do_compile,
19430 lang_independent_init): Update prototypes. Allow the
19431 front end to specify that there is no need to initialize
19432 the back end.
19433 (general_init): Move call to hex_init here...
19434 (toplev_main): ...from here. Pass flag for back end init
19435 suppression.
19436
c8cc4417
R
19437Sun Jul 7 20:38:38 2002 J"orn Rennecke <joern.rennecke@superh.com>
19438
19439 * sh.h (PRINT_OPERAND_PUNCT_VALID_P): Allow '\''.
19440 (PREDICATE_CODES): Add entries for equality_comparison_operator,
19441 greater_comparison_operator and less_comparison_operator.
19442 * sh.c (print_operand): Add '\'' code. Make 'o' handle
19443 more operators.
19444 (equality_comparison_operator): New function.
19445 (greater_comparison_operator, less_comparison_operator): Likewise.
19446 * sh.md (beq_media_i): Disable generator function generation.
19447 Use match_operator to handle a whole class of comparisons. Add
19448 modifier in output template to provide branch prediction. Add type.
19449 (bgt_media_i, ble_media_i): Likewise. Allow zero operands.
19450 (bne_media_i, bge_media_i, bgtu_media_i, bgeu_media_i): Delete.
19451 (blt_media_i, bleu_media_i, bltu_media_i): Likewise.
19452 (bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu): Allow zero operands.
19453
957ec0f9
HPN
194542002-07-07 Hans-Peter Nilsson <hp@bitrange.com>
19455
19456 Emit MMIX function prologue and epilogue as rtl.
19457 * config/mmix/mmix.md ("call"): Use mmix_get_hard_reg_initial_val,
19458 not unprototyped get_hard_reg_initial_val.
19459 ("call_value", "nonlocal_goto_receiver"): Ditto.
19460 ("return"): Make define_expand. Move real insn to...
19461 ("*expanded_return"): New pattern.
19462 ("prologue", "epilogue"): New define_expands.
19463 * config/mmix/mmix.h (MMIX_rO_REGNUM): New macro.
19464 (struct machine_function): New member in_prologue.
19465 (FIRST_PSEUDO_REGISTER): Adjust for including rO as register.
19466 (FIXED_REGISTERS, CALL_USED_REGISTERS): Ditto.
19467 (MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Ditto.
19468 (MMIX_GNU_ABI_REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Ditto.
19469 (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Ditto.
19470 (LOCAL_REGNO): Define. Adjust comment.
19471 * config/mmix/mmix.c (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS):
19472 Consider regs_ever_live[MMIX_rJ_REGNUM], not just
19473 leaf_function_p.
19474 (MMIX_OUTPUT_REGNO): Don't translate registers while outputting
19475 the prologue.
19476 (mmix_target_asm_function_prologue): Make static. Just mark that
19477 the prologue is being emitted. Move guts to...
19478 (mmix_expand_prologue): New function. Adjust for emitting
19479 prologue as rtl. For sizes, use HOST_WIDE_INT only.
19480 (mmix_target_asm_function_epilogue): Make static. Simply emit a
19481 \n. Move guts to...
19482 (mmix_expand_epilogue): New function. Adjust for emitting
19483 epilogue as rtl. For sizes, use HOST_WIDE_INT only.
19484 (mmix_target_asm_function_end_prologue): Mark that the prologue
19485 has ended.
19486 (TARGET_ASM_FUNCTION_END_PROLOGUE): Define.
19487 (mmix_conditional_register_usage): Improve comments.
19488 (mmix_local_regno): New function.
19489 (mmix_emit_sp_add, mmix_get_hard_reg_initial_val): Ditto.
19490 * config/mmix/mmix-protos.h (mmix_local_regno): Prototype.
19491 (mmix_expand_prologue, mmix_expand_epilogue): Ditto.
19492 (mmix_get_hard_reg_initial_val): Ditto.
19493
7ab5c789
AJ
194942002-07-06 Andreas Jaeger <aj@suse.de>
19495
19496 * toplev.c (set_fast_math_flags): Don't use ISO C style function
19497 definitions.
19498 * gengtype.c (open_base_files): Likewise.
19499 (close_output_files): Likewise.
19500 * tracer.c (find_best_predecessor): Likewise.
19501 (find_best_successor): Likewise.
19502 (ignore_bb_p): Likewise.
19503
df061a43
RS
195042002-07-05 Roger Sayle <roger@eyesopen.com>
19505
19506 PR c++/7099
19507 * builtin-attrs.def: Define new attribute lists for use in
19508 builtins.def.
19509 * builtins.def [DEF_BUILTIN]: Modify to take an additional
19510 ATTRS argument, an enumerated value defined in builtin-attrs.def
19511 that represents the attribute list for the builtins. Modify
19512 all builtin functions to pass an appropriate attribute list.
19513 Specify "abort", "exit", "_exit" and "_Exit" builtins here with
19514 their required noreturn attributes.
19515 * tree.h (enum_builtin_function): Ignore the additional parameter
19516 to DEF_BUILTIN.
19517 * builtins.c (built_in_names): Likewise.
19518 * c-common.c: (builtin_function_2): Replace the "int noreturn_p"
19519 argument with a tree representing the functions attribute list.
19520 Pass this "attrs" argument to builtin_function. No longer handle
19521 the noreturn_p processing manually.
19522 (built_in_attributes): Move the definitions from builtin-attrs.def
19523 before c_common_nodes_and_builtins.
19524 (c_common_nodes_and_builtins): Handle the new ATTRS parameter in
19525 DEF_BUILTIN, passing it to both builtin_function and the changed
19526 builtin_function_2.
19527
19528 * doc/extend.texi: Document __builtin_abort, __builtin_exit,
19529 __builtin__exit and __builtin__Exit.
19530
e5eb8de8
SC
195312002-07-05 Stephane Carrez <stcarrez@nerim.fr>
19532
19533 * config/m68hc11/m68hc11.md ("*movqi_68hc12"): Avoid allocating
19534 QI mode registers in soft registers.
7ab5c789 19535 ("zero_extendqihi2"): Do not take into account soft registers
e5eb8de8
SC
19536 for register allocation (use '*' constraint).
19537
4c8aed14
SC
195382002-07-05 Stephane Carrez <stcarrez@nerim.fr>
19539
19540 * config/m68hc11/m68hc11.md ("*ashlsi3"): Avoid saving y if we know
19541 it is dead.
19542 ("*ashrsi3"): Likewise.
19543 ("*lshrsi3"): Likewise.
19544
99ed68ea
VM
195452002-07-05 Vladimir Makarov <vmakarov@redhat.com>
19546
19547 * genautomata.c (output_max_insn_queue_index_def): Take latencies
19548 into account.
19549
4c8aed14 195502002-07-05 Stephane Carrez <stcarrez@nerim.fr>
581fd392
SC
19551
19552 * config/m68hc11/m68hc11.md (peephole2): New peephole2 to optimize
19553 address computation and memory moves.
19554
9833f679
MM
195552002-07-03 Mark Mitchell <mark@codesourcery.com>
19556
19557 PR c++/6706
19558 * dwarfout.c (output_reg_number): Fix warning message.
19559 (output_bound_representation): Check SAVE_EXPR_RTL is not NULL
19560 before using it.
7ab5c789 19561
81bca2f5
RO
195622002-07-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
19563
19564 * gcc/gcc.c (asm_debug): Move initialization ...
19565 (init_spec): ... here.
19566
17f44f02
NS
195672002-07-05 Nathan Sidwell <nathan@codesourcery.com>
19568
19569 * c-parse.in (extdef): Append ';'.
19570 (old_style_parm_decls): Append ';'.
19571
da77408f
DJ
195722002-07-04 Daniel Jacobowitz <drow@mvista.com>
19573
19574 * configure.in: Correct typos: gcc_cv_as_gdwarf2_debug_flag to
19575 gcc_cv_as_gdwarf2_flag and gcc_cv_as_gstabs_debug_flag
19576 to gcc_cv_as_gstabs_flag.
19577 * configure: Rebuilt.
19578
ec52b446
GK
195792002-07-04 Geoffrey Keating <geoffk@redhat.com>
19580
19581 * ggc.h (ggc_add_root): Document as obsolete.
19582
8721e3df
R
19583Thu Jul 4 07:58:01 2002 J"orn Rennecke <joern.rennecke@superh.com>
19584
19585 * sh.md (mshfhi_b, mshflo_b, mshfhi_l, mshflo_l, mshfhi_w): Add DONE.
19586 (mshflo_w): Likewise.
19587
3767c0fd
R
19588Thu Jul 4 07:36:29 2002 J"orn Rennecke <joern.rennecke@superh.com>
19589
19590 * simplify-rtx.c (simplify_subreg): Reduce problem of finding
19591 vector mode subregs of constants to finding integer mode
19592 subregs of constants.
19593 * cse.c (cse_insn): Use simplify_gen_subreg.
19594 * convert.c (convert_to_integer): Don't strip a NOP_EXPR
19595 From a vector mode expression of different size than the
19596 target mode.
19597
4e314d1f
EC
195982002-07-03 Eric Christopher <echristo@redhat.com>
19599
19600 * config/mips/linux.h: Add #undef for SUBTARGET_CPP_SPEC.
19601 * config/mips/mips.h: Remove deprecated -m<processor> options
19602 and cc1_cpu_spec associated.
19603 (CONSTANT_ADDRESS_P): Fix last patch.
19604 (ASM_DECLARE_FUNCTION_NAME): Declare. Fix comment.
19605 * config/mips/mips.md (bungt, bunge, sungt_df, sungt_sf, sunge_df,
19606 sunge_sf): Remove.
19607
6f0361e3
SS
196082002-07-03 Stan Shebs <shebs@apple.com>
19609
19610 * config/darwin.h (APPLE_CC): Remove, not meaningful in FSF GCC.
19611 (STRINGIFY_THIS, REALLY_STRINGIFY): Remove.
19612 (CPP_SPEC): Remove insertion of APPLE_CC definition.
19613
3129af4c
RS
196142002-07-03 Roger Sayle <roger@eyesopen.com>
19615
19616 * combine.c (struct_undo): Change types of recorded substitutions
19617 to be either "int" or "rtx", instead of "unsigned int" and "rtx".
19618 (do_SUBST_INT): Change types of the substitution from unsigned int
19619 to int, to avoid compilation warning from SUBST_INT's only caller.
19620
19621 (make_extraction): Add cast to avoid compilation warning.
19622 (force_to_mode): Remove cast to avoid compilation warning.
19623
c7375e61
EB
196242002-07-03 Eric Botcazou <ebotcazou@multimania.com>
19625 Jeff Law <law@redhat.com>
19626
19627 * i386.md (length_immediate attribute): Fix typo.
19628 (length_address attribute): Likewise.
19629 (modrm attribute): Set it to 0 for immediate call instructions.
19630 (jcc_1 pattern): Set modrm attribute to 0.
19631 (jcc_2 pattern ): Likewise.
19632 (jump pattern): Likewise.
19633 (doloop_end_internal pattern): Explicitly set length.
19634 (leave pattern): Fix typo.
19635 (leave_rex64 pattern): Likewise.
19636
61c07d3c
DE
196372002-07-03 David Edelsohn <edelsohn@gnu.org>
19638
19639 * config/rs6000/rs6000.md (fix_truncdfsi2_internal): Ignore DImode
19640 in FPR as preference.
19641 (fctiwz): Same.
19642 (floatdidf2, fix_truncdfdi2): Same.
19643 (floatdisf2, floatditf2, fix_trunctfdi2): Same.
19644 (floatditf2): Same.
19645 (floatsitf2, fix_trunctfsi2): SImode in GPR.
19646 (ctrdi): Remove FPR alternative and splitter.
19647
196482002-07-03 Will Cohen <wcohen@redhat.com>
77966be3
WC
19649
19650 * config/i386/i386.c (x86_integer_DFmode_moves): Disable for PPro.
19651
34a80643
R
19652Wed Jul 3 10:24:16 2002 J"orn Rennecke <joern.rennecke@superh.com>
19653
19654 * optabs.c (expand_vector_binop): Don't store using a SUBREG smaller
19655 than UNITS_PER_WORD, unless this is little endian and the first unit
19656 in this word. Let extract_bit_field decide how to load an element.
19657 Force arguments to matching mode.
19658 (expand_vector_unop): Likewise.
19659
19660 * simplify-rtx.c (simplify_subreg): Don't assume that all vectors
19661 consist of word_mode elements.
19662 * c-typeck.c (build_binary_op): Allow vector types for BIT_AND_EXPR,
19663 BIT_ANDTC_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR.
19664 (build_unary_op): Allow vector types for BIT_NOT_EPR.
19665 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg for
19666 CONST_VECTOR.
19667 * optabs.c (expand_vector_binop): Try to perform operation in
19668 smaller vector modes with same inner size. Add handling of AND, IOR
19669 and XOR. Reject expansion to inner-mode sized scalars when using
19670 OPTAB_DIRECT. Use simplify_gen_subreg on constants.
19671 (expand_vector_unop): Try to perform operation in smaller vector
19672 modes with same inner size. Add handling of one's complement.
19673 When there is no vector negate operation, try a vector subtract
19674 operation. Use simplify_gen_subreg on constants.
19675 * simplify-rtx.c (simplify_subreg): Add capability to convert vector
19676 constants into smaller vectors with same inner mode, and to
19677 integer CONST_DOUBLEs.
19678
622d3731
KG
196792002-07-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
19680
19681 * c-parse.in (parsing_iso_function_signature): New variable.
19682 (extdef_1): New, copied from...
19683 (extdef): ... here. Reset parsing_iso_function_signature.
19684 (old_style_parm_decls): Reset parsing_iso_function_signature.
19685 (old_style_parm_decls_1): New, copied from old_style_parm_decls.
19686 Warn about ISO C style function definitions.
19687 (nested_function, notype_nested_function): Reset
19688 parsing_iso_function_signature.
19689 (parmlist_2): Set parsing_iso_function_signature.
19690
19691 * doc/invoke.texi (-Wtraditional): Document new behavior.
19692
9bb46191
CD
196932002-07-02 Chris Demetriou <cgd@broadcom.com>
19694
19695 * config.gcc (mips*el-*-*): Use tm_defines to set
19696 TARGET_ENDIAN_DEFAULT, rather than including mips/little.h.
19697 * config/mips/little.h: Remove.
19698
e1c2dd26 196992002-07-02 Devang Patel <dpatel@apple.com>
c40da518 19700
c40da518 19701 * objc/objc-act.c (adjust_type_for_id_default): Do not allow an
31e25abd
CD
19702 object as parameter. Prevent something like 'NSObject' to be
19703 used as the type for a method argument.
c40da518 19704
0879540b
NB
197052002-07-03 Neil Booth <neil@daikokuya.co.uk>
19706
19707 * cpptrad.c: Update comment.
19708
b6fb43ab 197092002-07-02 Neil Booth <neil@daikokuya.co.uk>
4e314d1f 19710
b6fb43ab
NB
19711 * doc/cpp.texi: Update for traditional preprocessing changes.
19712 * goc/cppopts.texi: Similarly.
19713
c1c5187c
ZL
197142002-07-02 Ziemowit Laski <zlaski@apple.com>
19715
19716 * c-parse.in (designator): Enable designated initializers if ObjC.
19717 (objcmessageexpr): Remove references to objc_receiver_context.
19718 * objc/objc-act.h (objc_receiver_context): Remove decl.
19719 * objc/objc-act.c (objc_receiver_context): Remove.
19720 (lookup_objc_ivar): Test objc_method_context instead of
19721 objc_receiver_context.
19722
52702ae1
R
19723Tue Jul 2 18:45:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
19724
19725 * sh.c (print_operand, case 'N'): Allow zero vector.
19726 (arith_reg_or_0_operand): Likewise.
19727 (zero_vec_operand): Check for CONST_VECTOR, not PARALLEL.
4e314d1f 19728 * sh.h (CONST_COSTS): 0 has 0 cost. Check OUTER_CODE for
52702ae1
R
19729 IOR, XOR, PLUS and SET and take their respective constant
19730 ranges into account.
19731 (PREDICATE_CODES, arith_reg_or_0_operand): Can be CONST_VECTOR.
19732 * sh.md (subdi3, subdi3_media): Allow zero operand.
19733 (movv8qi_i+3): Only vector that is not split is the zero vector.
19734 Fix operand 3 to simplify_subreg.
19735 (movv2si_i): Split alternative 1.
19736 (mshfhi_l_di_rev+1): New splitter.
19737
49e7b251
NB
197382002-07-02 Neil Booth <neil@daikokuya.co.uk>
19739
ba57a9c0 19740 PR preprocessor/7029
49e7b251
NB
19741 * cppinit.c (cpp_handle_option): Suppress warnings with an
19742 implicit "-w" for "-M" and "-MM".
19743 * doc/cppopts.texi: Update.
19744
a3acdc0c
RS
197452002-07-01 Roger Sayle <roger@eyesopen.com>
19746
19747 * config/sh/sh.c (sh_media_init_builtins): Change use of poisoned
19748 identifier "bzero" to "memset". Pass extra NULL_TREE argument to
19749 builtin_function.
19750
0b558962
AM
197512002-07-02 Alan Modra <amodra@bigpond.net.au>
19752
19753 * README.Portability: Fix typos.
19754
9a81c5b7
HPN
197552002-07-01 Hans-Peter Nilsson <hp@axis.com>
19756
19757 PR target/7177
19758 * config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Correct number
19759 of indirections for register inside sign-extended mem part.
19760
6a2dd09a
RS
197612002-07-01 Roger Sayle <roger@eyesopen.com>
19762
19763 * tree.h: Modify builtin_function interface to take an extra
19764 argument ATTRS, which is a tree representing an attribute list.
19765
19766 * c-decl.c (builtin_function): Accept additional parameter.
19767 * objc/objc-act.c (builtin_function): Likewise.
19768 * f/com.c (builtin_function): Likewise.
19769 * java/decl.c (builtin_function): Likewise.
19770 * ada/utils.c (builtin_function): Likewise.
19771 * cp/decl.c (builtin_function): Likewise.
19772 (builtin_function_1): Likewise.
19773
19774 * c-common.c (c_common_nodes_and_builtins): Pass an additional
19775 NULL_TREE argument to builtin_function. (builtin_function_2):
19776 Likewise.
19777 * cp/call.c (build_java_interface_fn_ref): Likewise.
19778 * objc/objc-act.c (synth_module_prologue): Likewise.
19779 * java/decl.c (java_init_decl_processing): Likewise.
19780 * f/com.c (ffe_com_init_0): Likewise.
19781
19782 * config/alpha/alpha.c (alpha_init_builtins): Pass an additional
19783 NULL_TREE argument to builtin_function.
19784 * config/arm/arm.c (def_builtin): Likewise.
19785 * config/c4x/c4x.c (c4x_init_builtins): Likewise.
19786 * config/i386/i386.c (def_builtin): Likewise.
19787 * config/ia64/ia64.c (def_builtin): Likewise.
19788 * config/rs6000/rs6000.c (def_builtin): Likewise.
19789
e20569ae
ZW
197902002-07-01 Zack Weinberg <zack@codesourcery.com>
19791
19792 * config/ip2k/t-ip2k: Remove LIBGCC1, CROSS_LIBGCC1, and LIBGCC1_TEST.
19793 * config/mips/t-isa3264: Likewise.
19794 * config/mmix/t-mmix: Likewise.
19795
f1b690f1
JDA
197962002-07-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
19797
19798 * emit-rtl.c (init_emit_once): Add missing cast to HOST_WIDE_INT.
19799
6bfa5aac
RS
198002002-07-01 Roger Sayle <roger@eyesopen.com>
19801
19802 PR opt/4046
19803 * fold-const.c (fold) [COND_EXPR]: Simplify A ? 0 : 1 to !A,
19804 A ? B : 0 to A && B and A ? B : 1 into !A || B if both A and
19805 B are truth values.
19806
9a5c1b9d
NN
198072002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
19808
19809 * config/mmix/t-mmix: Eliminate last reference to LIBGCC1_TEST.
19810
d3fc4dbc
MK
198112002-07-01 Matt Kraai <kraai@alumni.cmu.edu>
19812
3b2124df
MK
19813 * README.Portability (Function prototypes): Give an example of
19814 declaring and defining a function with no arguments.
19815
d3fc4dbc
MK
19816 * README.Portability (Function prototypes): Document new
19817 variable-argument function macros.
19818
c1b92d09
R
19819Mon Jul 1 19:55:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
19820
19821 * sh.c (langhooks.h): Include.
19822 (sh_init_builtins, sh_media_init_builtins): New functions.
19823 (sh_expand_builtin, arith_reg_dest,and_operand): Likewise.
19824 (mextr_bit_offset, extend_reg_operand, zero_vec_operand): Likewise.
19825 (sh_rep_vec, sh_1el_vec, sh_const_vec): Likewise.
19826 (builtin_description): New struct tag.
19827 (signature_args, bdesc): New arrays.
19828 (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Undef / define.
19829 (print_operand): Add 'N' modifier.
19830 * sh.h (VECTOR_MODE_SUPPORTED_P): Add SHmedia vector modes.
19831 (EXTRA_CONSTRAINT_U, EXTRA_CONSTRAINT_W): New macros.
19832 (EXTRA_CONSTRAINT): Add 'U' and 'W' cases.
19833 (CONST_COSTS): Add special case for SHmedia AND.
19834 (PREDICATE_CODES): Add and_operand, arith_reg_dest,
19835 extend_reg_operand, extend_reg_or_0_operand, mextr_bit_offset,
19836 sh_const_vec, sh_1el_vec, sh_rep_vec, zero_vec_operand.
19837 target_operand can also be const or unspec.
19838 * sh.md (UNSPEC_INIT_TRAMP, UNSPEC_FCOSA UNSPEC_FSRRA): New constants.
19839 (UNSPEC_FSINA, UNSPEC_NSB, UNSPEC_ALLOCO): Likewise.
19840 (attribute type): Add new types.
19841 (anddi3): Add splitter.
19842 (movdi_const_16bit+1): Add code to handle vector constants and
19843 bitmasks efficiently.
19844 (shori_media): Have generator function made.
19845 (movv8qi, movv8qi_i, movv8qi_i+1, movv8qi_i+2): New patterns.
19846 (movv8qi_i+3, movv2hi, movv2hi_i, movv4hi, movv4hi_i): Likewise.
19847 (movv2si, movv2si_i, absv2si2, absv4hi2, addv2si3, addv4hi3): Likewise.
19848 (ssaddv2si3, usaddv8qi3, ssaddv4hi3, negcmpeqv8qi): Likewise.
19849 (negcmpeqv2si, negcmpeqv4hi, negcmpgtuv8qi, negcmpgtv2si): Likewise.
19850 (negcmpgtv4hi, mcmv, mcnvs_lw, mcnvs_wb, mcnvs_wub): Likewise.
19851 (mextr_rl, mextr_lr, mextr1, mextr2, mextr3, mextr4, mextr5): Likewise.
19852 (mextr6, mextr7, mmacfx_wl, mmacfx_wl_i, mmacnfx_wl): Likewise.
19853 (mmacnfx_wl_i, mulv2si3, mulv4hi3, mmulfx_l, mmulfx_w): Likewise.
19854 (mmulfxrp_w, mmulhi_wl, mmullo_wl, mmul23_wl, mmul01_wl): Likewise.
19855 (mmulsum_wq, mmulsum_wq_i, mperm_w, mperm_w_little): LIkewise.
19856 (mperm_w_big, mperm_w0, msad_ubq, msad_ubq_i, mshalds_l): Likewise.
19857 (mshalds_w, ashrv2si3, ashrv4hi3, mshards_q, mshfhi_b): Likewise.
19858 (mshflo_b, mshf4_b, mshf0_b, mshfhi_l, mshflo_l, mshf4_l): Likewsie.
19859 (mshf0_l, mshfhi_w, mshflo_w, mshf4_w, mshf0_w, mshfhi_l_di): Likewise.
19860 (mshfhi_l_di_rev, mshflo_l_di, mshflo_l_di_rev): Likewise.
19861 (mshflo_l_di_x, mshflo_l_di_x_rev, ashlv2si3, ashlv4hi3): Likewise.
19862 (lshrv2si3, lshrv4hi3, subv2si3, subv4hi3, sssubv2si3): Likewise.
19863 (ussubv8qi3, sssubv4hi3, fcosa_s, fsina_s, fipr, fsrra_s): Likewise.
19864 (ftrv): Likewise.
19865
19866 (fpu_switch+1, fpu_switch+2): Remove constraint.
19867
97ebc06f
AH
198682002-07-01 Aldy Hernandez <aldyh@redhat.com>
19869
6c535c69
ZW
19870 * tree.c (build_function_type_list): Update function comment.
19871 Rename first argument to return_type.
97ebc06f 19872
353a10d0
NB
198732002-07-01 Neil Booth <neil@daikokuya.co.uk>
19874
19875 * Makefile.in: Remove all trace of tradcpp.c, tradcpp.h,
19876 tradcif.y and related files.
19877
e34cabb3
NB
198782002-07-01 Neil Booth <neil@daikokuya.co.uk>
19879
19880 * cpptrad.c (skip_whitespace): Pass pointer to prior char.
19881
8bf3ccbb
KG
198822002-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
19883
19884 * mips.h (FUNCTION_ARG_REGNO_P): Fix parentheses.
19885
44eedb75 19886See ChangeLog.7 for earlier changes.
This page took 2.877104 seconds and 5 git commands to generate.