]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
h8300.h (CONSTANT_ADDRESS_P): Allow CONST and HIGH on all variants.
[gcc.git] / gcc / ChangeLog
CommitLineData
eb8a8ec4
KH
12003-01-08 Kazu Hirata <kazu@cs.umass.edu>
2
3 * config/h8300/h8300.h (CONSTANT_ADDRESS_P): Allow CONST and
4 HIGH on all variants.
5
56f15830
JZ
6Wed Jan 8 14:06:34 CET 2003 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz>
7
8 * Makefile.in (PARTITION_H): New.
9 (BASIC_BLOCK_H): Added hard-reg-set.h and $(PARTITION_H).
10 * basic-block.h: Include hard-reg-set.h.
11
ab57893b
RE
122003-01-08 Richard Earnshaw <rearnsha@arm.com>
13
14 * arm.h (ENABLE_XF_PATTERNS): Delete.
15 * arm.md (addxf3, subxf3, mulxf3, divxf3, modxf3, negxf2, absxf2)
16 (sqrtxf2, floatsixf2, fix_truncxfsi2, truncxfsf2, truncxfdf2)
17 (extendsfxf2, extenddfxf2, movxf, cmpxf, cmpxf_insn)
18 (cmpxf_trap): Delete.
19 (movxf_hard_insn): Remove test of ENABLE_XF_PATTERNS.
20
7b52eede
JH
21Wed Jan 8 12:10:57 CET 2003 Jan Hubicka <jh@suse.cz>
22
23 * i386.md (adddi3_carry_rex64, subdi3_carry_rex64): Name pattern.
24 (addhi3_carry, addqi3_carry, subhi3_carry, subqi3_carry): New patterns.
25 (add??cc): New expanders.
26 * i386.c (expand_int_addcc): New function.
27 * i386-protos.h (expand_int_addcc): Declare.
28
29 * alias.c (memory_modified_1): New static function.
30 (memory_modified): New static varaible.
31 (memory_modified_in_insn_p): New global function.
32 * rtl.h (memory_modified_in_insn_p): Declare.
33 * rtlanal.c (modified_between_p, modified_in_p): Be smart about memory
34 references.
35
36 * expr.h (emit_conditional_add): Declare.
37
74049755
JJ
382003-01-07 Janis Johnson <janis187@us.ibm.com>
39
40 PR other/8947
41 * doc/invoke.texi (-malign-double): Explain that the option breaks
42 binary compatibility.
43
e7edc5a0
AS
442003-01-08 Andreas Schwab <schwab@suse.de>
45
46 * config.gcc (m68k-*-linux*): Don't set extra_parts and gnu_ld,
47 should come from the generic *-*-linux* entry.
48
9635cfad
JH
49Tue Jan 7 22:29:56 CET 2003 Jan Hubicka <jh@suse.cz>
50
51 * cselib.c (cselib_current_insn_in_libcall): New static variable.
52 (new_elt_loc_list, cselib_process_insn, cselib_init): Keep track on whether
53 we are inside libcall.
54 * cselib.h (elt_loc_list): Add in_libcall.
55 * gcse.c (do_local_cprop): Do not copy propagate using insns
56 in libcalls.
57
3ee04299
DE
582003-01-07 David Edelsohn <edelsohn@gnu.org>
59
60 * doc/tm.texi (TARGET_SCHED_VARIABLE_ISSUE): CLOBBER and USE do
61 not normally affect to issue rate.
62
068f5dea
JH
63Tue Jan 7 21:46:57 CET 2003 Jan Hubicka <jh@suse.cz>
64
65 * genopinit.c (optabs): Add addc_optab.
66 * ifcvt.c (noce_try_store_flag): Rename to ...
67 (noce_try_addcc): ... this one; handle generic conditional increment.
68 (noce_process_if_block): Update noce_try_addcc call.
69 * optabs.c (emit_conditional_add): New.
70 (init_obtabs): Initialize addc_optab.
71 * optabs.h (optab_index): Add OTI_addcc.
72 (addcc_optab): New macro.
73 * md.texi: Document addMcc
74
75 PR target/8322
76 * i386.c (ix86_init_mmx_sse_builtins): Constify arguments of loads.
77 * xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts.
78 * xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts.
79
80 * reload1.c (delete_output_reload): Avoid repeated attempts
81 to delete insn.
82
eb70d86d
AS
832003-01-07 Andreas Schwab <schwab@suse.de>
84
e7edc5a0
AS
85 * configure.in: Restore CFLAGS before gcc_AC_INITFINI_ARRAY.
86 Move --enable-initfini-array check ...
87 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): ... here. Define
88 HAVE_INITFINI_ARRAY also when --enable-initfini-array is given.
89 Don't AC_SUBST gcc_cv_initfinit_array. Use AC_TRY_RUN.
90 * configure: Rebuild.
eb70d86d 91
1afdf91c
RH
922003-01-07 Richard Henderson <rth@redhat.com>
93
e7edc5a0
AS
94 * alias.c (find_base_value): Only use new_reg_base_value shortcut
95 if the register is set once.
1afdf91c 96
36210500
SP
972003-01-07 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
98
99 * config/i386/i386.c (ix86_init_mmx_sse_builtins):
100 __builtin_ia32_ldmxcsr and __builtin_ia32_stmxcsr are SSE, not MXX.
101 * config/i386/i386.md (ldmxcsr, stmxcsr): SSE, not MMX.
102
cb25b0ce
BK
1032003-01-07 Benjamin Kosnik <bkoz@redhat.com>
104 Sunil Davasam <sunil.k.davasam@intel.com>
105
106 PR libstdc++/9076
107 * unwind-dw2.c (execute_cfa_program): DW_CFA_undefined,
108 DW_CFA_same_value, read next and ignore.
109
94c040bd
RH
1102003-01-07 Richard Henderson <rth@redhat.com>
111
112 * cfganal.c (flow_call_edges_add): Don't crash on noreturn call.
113
f6cb56fa
DB
1142003-01-07 Daniel Berlin <dberlin@dberlin.org>
115
116 * cfg.c: Include alloc-pool.h
117 (edge_pool): New pool.
118 (bb_pool): New pool.
119 (first_deleted_edge): Remove.
120 (first_deleted_block): Remove.
121 (init_flow): Alloc/free the pools.
122 (free_edge): Use pools.
123 (alloc_block): Ditto.
124 (expunge_block): Ditto.
125 (cached_make_edge): Ditto.
126
127 * Makefile.in (cfg.o): Add alloc-pool.h dependency.
128
1292003-01-07 Daniel Berlin <dberlin@dberlin.org>
130
131 * et-forest.c: Include alloc-pool.h.
132 (struct et_forest): Add node_pool and occur_pool.
133 (et_forest_create): Create the new pools.
134 (et_forest_delete): Delete them.
135 (et_forest_add_node): Allocate and free using pools.
136 (et_forest_add_edge): Ditto.
137 (et_forest_remove_node): Ditto.
138 (et_forest_remove_edge): Ditto.
139
140 * Makefile.in (et-forest.o): Add alloc-pool.h dependency.
141
f9ac2f95
KH
1422003-01-07 Kazu Hirata <kazu@cs.umass.edu>
143
144 * config/h8300/h8300.c (output_logical_op): Simplify and
145 optimize the handling of SImode.
146 * config/h8300/h8300.c (compute_logical_op_length): Update
147 accordingly.
148 * config/h8300/h8300.c (compute_logical_op_cc): Likewise.
149
83282119
RS
1502003-01-07 Richard Sandiford <rsandifo@redhat.com>
151
152 * config/mips/mips.c (mips_va_arg): In the EABI code, apply the
153 big-endian correction to indirect arguments too.
154
59a4c851
AH
1552003-01-06 Aldy Hernandez <aldyh@redhat.com>
156
157 Segher Boessenkool <segher@koffie.nl>
158
36210500
SP
159 * config/rs6000/rs6000.c (rs6000_reg_names): Add missing registers.
160 (alt_reg_names): Ditto, fix formatting.
161 * config/rs6000/rs6000.h (DEBUG_REGISTER_NAMES): Fix formatting.
59a4c851 162
7798db98
KH
1632003-01-06 Kazu Hirata <kazu@cs.umass.edu>
164
165 * config/h8300/h8300.c (final_prescan_insn): Constify uid.
166 (output_logical_op): Constify intval and det.
167 (compute_logical_length): Likewise.
168 (compute_logical_cc): Likewise.
169 (output_a_shift): Constify mask.
170 (h8300_encode_label): Constify len.
171
4705d102
KH
1722003-01-06 Kazu Hirata <kazu@cs.umass.edu>
173
174 * config/h8300/h8300.c (h8300_expand_prologue): Remove fsize.
175 (h8300_expand_epilogue): Likewise.
176
98c9a8e8
AH
1772003-01-06 Aldy Hernandez <aldyh@redhat.com>
178
179 Segher Boessenkool <segher@koffie.nl>
180
36210500
SP
181 * config/rs6000/altivec.md: Remove spaces from assembler
182 instruction argument lists.
98c9a8e8 183
86143814
MH
1842003-01-07 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
185
186 * config/c4x/c4x.c (c4x_naked_function_p): Rename from
187 c4x_assembler_function_p.
188 (c4x_null_epilogue_p): Complement return value, all uses updated.
189 (c4x_insert_attributes): Add naked.
190 * config/c4x/c4x.md (c4x_null_epilogue_p): Changes uses.
191 * doc/extend.texi: Update C4x function attributes.
192
52fd80fb
RH
1932003-01-06 Richard Henderson <rth@redhat.com>
194
195 * config/alpha/alpha.c (alpha_encode_section_info): Adjust symbol_str
196 properly when changing "local-ness".
197 * config/alpha/alpha.md (movdi_er_high_g): Allow all symbols.
198
a16b43c5
DJ
1992003-01-06 Dale Johannesen <dalej@apple.com>
200
201 * config/darwin-protos.h: Add prototypes for new section functions.
202
ef8dfae6
CD
2032003-01-06 Chris Demetriou <cgd@broadcom.com>
204
205 * config.gcc (mipsisa32-*-elf*, mipsisa32el-*-elf*): Default ABI
206 to EABI.
207
44f9a8e4
ZW
2082003-01-06 Zack Weinberg <zack@codesourcery.com>
209
210 * hwint.h: If the current compiler has no 64-bit type at all,
211 make HOST_WIDEST_INT 32 bits.
212
2610198a
EC
2132003-01-06 Eric Christopher <echristo@redhat.com>
214
215 * config/mips/mips.md (movdf_internal2): Fix constraints.
216
efbd757f
KH
2172003-01-06 Kazu Hirata <kazu@cs.umass.edu>
218
219 * config/h8300/h8300.md (*twoshifts_l16_r1): New.
220
727b9b8c
RS
2212003-01-06 Richard Sandiford <rsandifo@redhat.com>
222
223 * config/mips/mips.md (leadi): Use dla rather than la.
224
4705d102 2252003-01-06 Svein E. Seldal <Svein.Seldal@solidas.com>
cebdac46
SS
226
227 * config/c4x/c4x.h: Updated specs for new gas format. Fixed bug
228 in C33_FLAG. Added proper C33 support in ASM_FILE_START macro.
229
4705d102 2302003-01-06 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
fe1e789f 231
44f9a8e4 232 * config/c4x/c4x.h: Remove hwint.h include and HOST_WIDE_INT_PRINT_HEX
fe1e789f
HB
233 redefinition.
234
dff0ea43
KH
2352003-01-05 Kazu Hirata <kazu@cs.umass.edu>
236
237 * config/h8300/h8300.md (*extzv_8_23): New.
238
94e6fd3e
JDA
2392003-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
240
241 * pa64-hpux.h (JCR_SECTION_NAME): Define.
242 (PA_INIT_FRAME_DUMMY_ASM_OP): Check EH_FRAME_SECTION_NAME instead of
243 USE_EH_FRAME_REGISTRY when defining.
244
cd9b5ca8
KH
2452003-01-05 Kazu Hirata <kazu@cs.umass.edu>
246
247 * config/h8300/h8300.c (output_a_shift): Do not output a
248 variable shift.
249 * config/h8300/h8300.md (two splitters): New.
250
1ba8a9c4
RS
2512003-01-05 Richard Sandiford <rsandifo@redhat.com>
252
253 * config/mips/mips.md: Disable the movstrsi define_split.
254
c7c50494
KG
2552003-01-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
256
257 * alloc-pool.c: Don't include "libiberty.h".
258 * config/sparc/gmon-sol2.c: Include <fcntl.h>.
259 * convert.c (convert_to_real): Hide unused variable.
260
83fa8d7a
KG
2612003-01-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
262
263 * Makefile.in (gtyp-gen.h): Const-ify.
264 * gcov-dump.c (tag_table): Likewise.
265
871dab3e
BK
2662003-01-04 Bruce Korb <bkorb@gnu.org>
267
268 * fixinc/fixfixes.c(wrap_fix): the wrapper guard must be a function
269 of *both* the file name and the fix name.
270
35d434ed
JDA
2712002-01-04 John David Anglin <dave.anglin@nrc.ca>
272
273 * config.gcc (hppa*64*-*-hpux11*): Define extra_parts. Don't use
274 collect2.
275 * pa-hpux11.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Undefine.
276 (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Define.
277 * pa64-hpux.h (HP_INIT_ARRAY_SECTION_ASM_OP,
278 GNU_INIT_ARRAY_SECTION_ASM_OP, HP_FINI_ARRAY_SECTION_ASM_OP,
279 GNU_FINI_ARRAY_SECTION_ASM_OP): Define.
280 (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Define when not using
281 elfos.h.
282 (EH_FRAME_IN_DATA_SECTION): Delete define.
283 (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Undefine.
284 (STARTFILE_SPEC): Use crtbegin.o.
285 (ENDFILE_SPEC): Use crtend.o.
286 (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION,
287 SUPPORTS_INIT_PRIORITY, PA_CXA_FINALIZE_STUB, PA_INIT_FINI_HACK,
288 PA_INIT_FRAME_DUMMY_ASM_OP, PA_JV_REGISTERCLASSES_STUB,
289 DTOR_LIST_BEGIN): Define.
290 * pa.c (TARGET_ASM_CONSTRUCTOR): Define.
291 (pa_asm_out_constructor, pa_asm_out_destructor): New functions.
292 * som.h (SUPPORTS_INIT_PRIORITY): Delete define.
293
b0588013
BK
2942002-12-31 Larin Hennessy <larin@science.oregonstate.edu>
295
296 * fixinc/fixinc.svr4: Remove references to i860, Sony NewsOS, and spur.
297 * fixinc/inclhack.def: Remove tests for Apple A/UX, ARM/RISCiX, DG/UX,
298 m88k-*-sysv3*, Sony NewsOS. Remove references to i860.
299 Cleanup handling of replacement text.
300 * fixinc/mkfixinc.sh: Remove reference to i?86-*-osf1*
301
3022003-01-04 Bruce Korb <bkorb@gnu.org>
303
304 * fixinc/tests/base/math.h: removed obsolete results
305 * fixinc/tests/base/stdlib.h: ditto
306 * fixinc/tests/base/sys/param.h: ditto
307 * fixinc/tests/base/sys/stat.h: ditto
308 * fixinc/tests/base/time.h: ditto
309 * fixinc/tests/base/X11/Intrinsic.h: removed obsolete file
310 * fixinc/tests/base/sys/byteorder.h: ditto
311 * fixinc/inclhack.def: Remove superfluous backslashes
312
68ee6df6
KH
3132003-01-04 Kazu Hirata <kazu@cs.umass.edu>
314
315 * config/h8300/h8300-protos.h: Add prototypes for
316 the new functions defined below.
317 * config/h8300/h8300.c (TARGET_ASM_FUNCTION_PROLOGUE): Do not
318 define.
319 (dosize): Emit RTL instead of assembly code.
320 (push): Likewise.
321 (pop): Likewise.
322 (h8300_output_function_prologue): Remove.
323 (h8300_expand_prologue): New.
324 (h8300_expand_epilogue): New.
325 (h8300_output_function_epilogue): Do only the reset of
326 pragma_saveall.
327 * config/h8300/h8300.md (push_h8300): New.
328 (push_h8300hs): Likewise.
329 (pop_h8300): Likewise.
330 (pop_h8300hs): Likewise.
331 (*stm_h8300s_2): Change the name to stm_h8300s_2.
332 (*stm_h8300s_3): Change the name to stm_h8300s_3.
333 (*stm_h8300s_4): Change the name to stm_h8300s_4.
334 (*ldm_h8300s_2): New.
335 (*ldm_h8300s_3): Likewise.
336 (*ldm_h8300s_4): Likewise.
337 (return): Likewise.
338 (*return_1): Likewise.
339 (prologue): Likewise.
340 (epilogue): Likewise.
341 (monitor_prologue): Likewise.
342
d3c300d2
DJ
3432003-01-03 Dale Johannesen <dalej@apple.com>
344
345 * config/darwin.h: (EXTRA_SECTIONS): Add machopic_symbol_stub1,
346 machopic_picsymbol_stub1.
347 (EXTRA_SECTION_FUNCTIONS): Ditto.
348 * rs6000/rs6000.c: Update copyright.
349 (machopic_output_stub): Use them. Remove an insn from stub code.
350
6cce57b0
JM
3512003-01-02 Jason Merrill <jason@redhat.com>
352
4e8dca1c
JM
353 * fold-const.c (fold) [COND_EXPR]: Avoid NOP_EXPRs better.
354
355 * integrate.c (copy_decl_for_inlining): Don't clear the rtl for
356 static/external decls.
2610198a 357
6cce57b0
JM
358 * c-common.c (finish_fname_decls): Put the DECL_STMTs inside the
359 outermost scope.
360 * c-decl.c (c_make_fname_decl): Push the decls there, too.
361
e392d367
KH
3622003-01-03 Kazu Hirata <kazu@cs.umass.edu>
363
364 * config/h8300/h8300-protos.h: Add a prototype for
365 h8300_current_function_interrupt_function_p.
366 * config/h8300/h8300.c (interrupt_handler): Remove.
367 (os_task): Likewise.
368 (monitor): Likewise.
369 (pragma_interrupt): New.
370 (WORD_REG_USED): Use
371 h8300_current_function_interrupt_function_p.
372 (dosize): Likewise.
373 (h8300_output_function_prologue): Likewise.
374 Do not set interrupt_handler, os_task, monitor.
375 (h8300_output_function_prologue): Use
376 h8300_current_function_interrupt_function_p.
377 Do not set interrupt_handler, os_task, monitor.
378 (h8300_current_function_interrupt_function_p): New.
379 (h8300_pr_interrupt): Set pragma_interrupt.
380 (h8300_insert_attributes): Reset pragma_interrupt.
381
b15da5b7
GP
3822003-01-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
383
384 * doc/install.texi (Configuration): Fix markup for reference to
385 gcc/config.gcc.
386
bf16e745
KH
3872003-01-02 Kazu Hirata <kazu@cs.umass.edu>
388
389 * config/h8300/h8300.md (*iorhi3_zext): Relax the condition.
390 (*iorhi3_two_qi): Likewise.
391 (*iorsi3_zexthi): Likewise.
392 (*xorhi3_zextqi): Likewise.
393 (*xorsi3_zexthi): Likewise.
394 (*xorsi3_zextqi): Likewise.
395
8ccf5d5f
KH
3962003-01-02 Kazu Hirata <kazu@cs.umass.edu>
397
398 * config/h8300/h8300.c (stack_pointer_operand): New.
399 (const_int_gt_2_operand): Likewise.
400 (const_int_ge_8_operand): Likewise.
401 * config/h8300/h8300.md (a splitter): Likewise.
402 (a peephole2): Likewise.
403 * config/h8300/h8300-protos.h: Add prototypes for the new
404 functions above.
405
43c6a96a
SB
4062003-01-02 Steven Bosscher <s.bosscher@student.tudelft.nl>
407
408 * objc/Make-lang.in, objc/config-lang.in, objc/lang-specs.h,
409 objc/objc-act.h: Fix copyright years.
410
96c4e780
SB
4112003-01-02 Steven Bosscher <s.bosscher@student.tudelft.nl>
412
413 * doc/passes.texi: Fix documentation for -fssa-ccp
414
8ed0a104
NB
4152003-01-02 Neil Booth <neil@daikokuya.co.uk>
416
417 * gccbug.in: Update for new categories.
418
1b9f0361
KH
4192003-01-01 Kazu Hirata <kazu@cs.umass.edu>
420
421 * config/h8300/h8300.md: Reorder some patterns.
422
dc5f17ec
KH
4232003-01-01 Kazu Hirata <kazu@cs.umass.edu>
424
425 * config/h8300/h8300.c (output_logical_op): Fix a warning.
426
cd2801fb
NB
4272003-01-01 Neil Booth <neil@daikokuya.co.uk>
428
429 * config/darwin-protos.h, config/c4x/c4x-protos.h,
430 config/cris/cris-protos.h, config/i370/i370-protos.h,
431 config/i960/i960-protos.h, config/ia64/ia64-protos.h,
432 config/v850/v850-protos.h: Use struct, and don't conditionally
433 compile on GCC_C_PRAGMA_H.
434
378b1b8e
KH
4352003-01-01 Kazu Hirata <kazu@cs.umass.edu>
436
437 * config/arm/arm-protos.h: Remove #ifdef GCC_C_PRAGMA_H.
438 * config/h8300/h8300-protos.h: Likewise.
439 * config/sh/sh-protos.h: Likewise.
440
7106a5bc
KH
4412003-01-01 Kazu Hirata <kazu@cs.umass.edu>
442
443 * config/arm/arm-protos.h: Use struct cpp_reader instead of
444 cpp_reader.
445 * config/h8300/h8300-protos.h: Likewise.
446 * config/sh/sh-protos.h: Likewise.
447
231b51a1
NB
4482003-01-01 Neil Booth <neil@daikokuya.co.uk>
449
450 * config/arm/arm.c (arm_pr_long_calls, arm_pr_no_long_calls,
451 arm_pr_long_calls_off): Use struct.
452 * config/h8300/h8300.c (h8300_pr-interrupt, h8300_pr_saveall)
453 : Similarly.
454 Don't include cpplib.h.
455 * config/sh/sh.c (sh_pr_interrupt, sh_pr_trapa,
456 sh_pr_nosave_low_regs): Similarly.
457
0f18b2b0
KH
4582003-01-01 Kazu Hirata <kazu@cs.umass.edu>
459
460 * config/h8300/h8300.c: Include cpplib.h.
461
b9593599
SB
4622003-01-01 Steven Bosscher <s.bosscher@student.tudelft.nl>
463
464 * objc/Make-lang.in, objc/config-lang.in, objc/lang-options.h,
465 objc/lang-specs.h, objc/objc-act.c, objc/objc-act.h,
466 objc/objc-lang.c, objc/objc-tree.def: Replace "GNU CC" with
467 "GCC" in the copyright header.
468
c58b209a
NB
4692003-01-01 Neil Booth <neil@daikokuya.co.uk>
470
471 * c-pragma.c (c_register_pragma): New.
472 (init_pragma): Use it.
473 * c-pragma.h (cpp_register_pragma): Don't declare.
474 (c_register_pragma): New.
475 * cpplib.h: Remove #ifdef GCC_C_PRAGMA_H.
476 * config/darwin.h (REGISTER_TARGET_PRAGMAS): Update.
477 * config/arm/arm.h (REGISTER_TARGET_PRAGMAS): Update.
478 * config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Update.
479 * config/h8300/h8300.h (REGISTER_TARGET_PRAGMAS): Update.
480 * config/i370/i370.h (REGISTER_TARGET_PRAGMAS): Update.
481 * config/i960/i960.h (REGISTER_TARGET_PRAGMAS): Update.
482 * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Update.
483 * config/rs6000/rs6000.h (REGISTER_TARGET_PRAGMAS): Update.
484 * config/sh/sh.h (REGISTER_TARGET_PRAGMAS): Update.
485 * config/v850/v850.h (REGISTER_TARGET_PRAGMAS): Update.
486 * doc/tm.texi (REGISTER_TARGET_PRAGMAS): Update
487
bc455f9c
KH
4882002-12-31 Kazu Hirata <kazu@cs.umass.edu>
489
490 * config/h8300/h8300-protos.h: Update the prototypes.
491 * config/h8300/h8300.c (const_le_2_operand): Change to
492 const_int_le_2_operand.
493 (const_int_le_6_operand): Change to const_int_le_6_operand.
494 * config/h8300/h8300.md (two peepholes): Update the function
495 names.
496
3b41afd9
TT
4972002-12-31 Tom Tromey <tromey@redhat.com>
498
499 * doc/install.texi (Testing): Fixed typo.
500
9e56a932
KH
5012002-12-31 Kazu Hirata <kazu@cs.umass.edu>
502
503 * config/h8300/h8300.h (TRAMPOLINE_TEMPLATE): Remove.
504 (TRAMPOLINE_SIZE): Support the normal mode.
505 (INITIALIZE_TRAMPOLINE): Emit the entire trampoline.
506
731e8b38
MM
5072002-12-31 Mark Mitchell <mark@codesourcery.com>
508
509 * c-common.h (pending_lang_change): Declare.
510
147d1cd3
JQ
5112002-12-31 Jerry Quinn <jlquinn@optonline.net>
512
513 * gcc/doc/invoke.texi (Optimization Options): Clean up -O flag
514 descriptions.
515
fad893da
JQ
5162002-12-31 Jerry Quinn <jlquinn@optonline.net>
517
518 * gcc/doc/invoke.texi (Optimization Options): List the options
519 enabled by each -O flag.
520
ec5b5ef1
GP
5212002-12-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
522
523 * doc/install.texi (Configuration): Explicitly refer
524 gcc/config.gcc for a list of cpu models.
525
59d7c857
KH
5262002-12-31 Kazu Hirata <kazu@cs.umass.edu>
527
528 * config/h8300/h8300.h: Fix comment typos.
529
5b8f5865
DE
5302002-12-30 David Edelsohn <edelsohn@gnu.org>
531
532 * config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define.
533
582f6e6d
TT
5342002-12-30 Tom Tromey <tromey@redhat.com>
535
536 * doc/install.texi (Testing): Mention Jacks.
537
f75db6bc
JM
5382002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
539
540 * doc/gcc.texi, doc/gccint.texi: Update last modification dates.
541
2d75548f
KH
5422002-12-30 Kazu Hirata <kazu@cs.umass.edu>
543
544 * config/h8300/h8300.c (output_logical_op): Use extu.w in more
545 cases.
546 (compute_logical_op_length): Update to reflect the change in
547 output_logical_op.
548 (compute_logical_op_cc): Likewise.
549
b351c1d9
JM
5502002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
551
552 * doc/service.texi: Uncomment and update FAQ link.
553
47ab0cbb
AJ
5542002-12-30 Andreas Jaeger <aj@suse.de>
555
556 * unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
557
3cc3e1cd
KH
5582002-12-30 Kazu Hirata <kazu@cs.umass.edu>
559
560 * config/h8300/h8300.md (*addsi3_lshiftrt_16_zexthi): New.
561
a6e8d113
KH
5622002-12-30 Kazu Hirata <kazu@cs.umass.edu>
563
564 * config/h8300/h8300.c (output_logical_op): Use extu.w if we
565 are clearing the most significant byte.
566 (compute_logical_op_length): Update to reflect the change in
567 output_logical_op.
568 (compute_logical_op_cc): Likewise.
569
c85263d2
KH
5702002-12-29 Kazu Hirata <kazu@cs.umass.edu>
571
572 * config/h8300/h8300.md: Give internal names to anonymous
573 insns.
574
fbcb02cd
KH
5752002-12-29 Kazu Hirata <kazu@cs.umass.edu>
576
577 * config/h8300/h8300.md: Reorder some insns.
578
2873836b
KH
5792002-12-29 Kazu Hirata <kazu@cs.umass.edu>
580
581 * config/h8300/h8300-protos.h: Add prototypes for
582 const_int_qi_operand and const_int_hi_operand.
583 * config/h8300/h8300.c (const_int_qi_operand): New.
584 (const_int_hi_operand): Likewise.
585 * config/h8300/h8300.md (three peepholes): New.
586
bdefb2ab
JM
5872002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
588
589 * doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
590 Use @copying.
591
a38f87a9
JM
5922002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
593
594 * configure.in: Increase makeinfo version requirement to 4.[2-9].
595 * configure: Regenerate.
596 * doc/install.texi: Update Texinfo version requirement.
597
c14bc6db
AJ
5982002-12-28 Andreas Jaeger <aj@suse.de>
599
b9b21a05
AJ
600 * config/i386/i386.c (x86_function_profiler): Mark labelno as
601 possibly unused.
602
c14bc6db
AJ
603 * c-parse.in (yyprint): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX for
604 correct format.
605
62fbd434
KH
6062002-12-27 Kazu Hirata <kazu@cs.umass.edu>
607
608 * config/h8300/h8300.md (*iorhi_shift_8): Change the name to
609 *iorhi_ashift_8.
610 (*iorhi_lshiftrt_8): New.
611
27e3f16d
JM
6122002-12-27 Joseph S. Myers <jsm@polyomino.org.uk>
613
614 * doc/include/texinfo.tex: Update to version 2002-12-26.16.
615
b09975de
GP
6162002-12-27 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
617
618 * doc/contrib.texi (Contributors): Add Abramo and Roberto Bagnara.
619
f411c849
KH
6202002-12-26 Kazu Hirata <kazu@cs.umass.edu>
621
622 * config/h8300/h8300-protos.h: Fix comment typos.
623 Update copyright.
624 * config/h8300/h8300.c: Fix comment typos.
625
b976d7a0
KH
6262002-12-26 Kazu Hirata <kazu@cs.umass.edu>
627
628 * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
629
d1f87653
KH
6302002-12-26 Kazu Hirata <kazu@cs.umass.edu>
631
632 * config/i386/athlon.md: Fix comment typos.
633 * config/i386/crtdll.h: Likewise.
634 * config/i386/djgpp.h: Likewise.
635 * config/i386/i386-interix.h: Likewise.
636 * config/i386/i386.c: Likewise.
637 * config/i386/i386.h: Likewise.
638 * config/i386/i386.md: Likewise.
639 * config/i386/k6.md: Likewise.
640 * config/i386/mingw32.h: Likewise.
641 * config/i386/pentium.md: Likewise.
642 * config/i386/sco5.h: Likewise.
643 * config/i386/winnt.c: Likewise.
644 * config/i386/xmmintrin.h: Likewise.
645
ecd4a73b
JR
6462002-12-26 Jose Renau <renau@cs.uiuc.edu>
647
648 * ssa-dce.c (EXECUTE_IF_UNNECESSARY): Verify INSN is an
649 INSN_P before checking to see if it is dead.
650 (mark_all_insn_unnecessary): Similarly.
651 (ssa_eliminate_dead_code): Similarly.
652 * rtl.h (struct rtx_def): Update comments for in_struct usage
653 in dead code elimination pass.
654 (INSN_DEAD_CODE_P): Allow JUMP_INSN and CALL_INSN as well.
655
b17bb466
AS
6562002-12-26 Andreas Schwab <schwab@suse.de>
657
c14bc6db 658 * config.gcc (powerpc*-*-*, rs6000-*-*): Fix assignment syntax.
b17bb466 659
b21fb038
DE
6602002-12-25 David Edelsohn <edelsohn@gnu.org>
661
662 * config/rs6000/rs6000.c (rs6000_override_options): Convert to
663 tartet_flags_explicit.
664 * config/rs6000/rs6000.h (MASK_MULTIPLE_SET, MASK_STRING_SET): Delete.
665 Compact target_flags bits.
666 (TARGET_MULTIPLE_SET, TARGET_STRING_SET): Delete.
667 (TARGET_SWITCHES): Delete references to *_SET flags.
668
abd2dd6d
JH
669Wed Dec 25 20:30:53 CET 2002 Jan Hubicka <jh@suse.cz>
670
671 * i386.md (memory attribute): Fix setcc attribute.
672
d55d8fc7
KH
6732002-12-25 Kazu Hirata <kazu@cs.umass.edu>
674
675 * output.h: Fix comment typos.
676 * predict.c: Likewise.
677 * print-tree.c: Likewise.
678 * profile.c: Likewise.
679 * ra-build.c: Likewise.
680 * ra-colorize.c: Likewise.
681 * ra-debug.c: Likewise.
682 * ra-rewrite.c: Likewise.
683 * ra.c: Likewise.
684 * ra.h: Likewise.
685 * real.c: Likewise.
686 * recog.c: Likewise.
687 * reg-stack.c: Likewise.
688 * regclass.c: Likewise.
689
7a770d8b
KH
6902002-12-25 Kazu Hirata <kazu@cs.umass.edu>
691
692 * config/h8300/h8300.c (print_operand_address): Do not negate
693 a negative number when printing one.
694
7d6ac401
KH
6952002-12-25 Kazu Hirata <kazu@cs.umass.edu>
696
697 * config/h8300/h8300-protos.h: Add prototypes for
698 output_plussi, compute_plussi_length, and compute_plussi_cc.
699 * config/h8300/h8300.c (output_plussi): New.
700 (compute_plussi_length): Likewise.
701 (compute_plussi_cc): Likewise.
702 * config/h8300/h8300.md (addsi_h8300h): Call
703 output_plussi, compute_plussi_length, and compute_plussi_cc.
704
871d6a01
KH
7052002-12-24 Kazu Hirata <kazu@cs.umass.edu>
706
707 * config/h8300/h8300.md (two peepholes): Use match_dup instead
708 of match_operand in the new patterns.
709
4fbf9d4a
JM
7102002-12-24 Joseph S. Myers <jsm@polyomino.org.uk>
711
712 * doc/include/texinfo.tex: Update to version 2002-11-25.11.
713
8601608f
NS
7142002-12-24 Nathan Sidwell <nathan@codesourcery.com>
715
716 * configure.in (enable-coverage): Add SELF_COVERAGE.
717 * profile.c (end_branch_prob): Use SELF_COVERAGE.
718
c28b4e40
JW
7192002-12-24 Jim Wilson <wilson@redhat.com>
720
721 * alias.c (record_set): Handle multi-reg hard registers.
722
14b493d6
KH
7232002-12-24 Kazu Hirata <kazu@cs.umass.edu>
724
725 * regmove.c: Fix comment typos.
726 * reload.c: Likewise.
727 * reload1.c: Likewise.
728 * resource.c: Likewise.
729 * rtl.def: Likewise.
730 * rtl.h: Likewise.
731 * rtlanal.c: Likewise.
732 * sched-deps.c: Likewise.
733 * sched-rgn.c: Likewise.
734 * sibcall.c: Likewise.
735 * simplify-rtx.c: Likewise.
736 * ssa-ccp.c: Likewise.
737 * ssa.c: Likewise.
738 * stmt.c: Likewise.
739 * stor-layout.c: Likewise.
740 * system.h: Likewise.
741 * tlink.c: Likewise.
742 * toplev.c: Likewise.
743 * tracer.c: Likewise.
744 * tree-inline.c: Likewise.
745 * tree.c: Likewise.
746 * tree.h: Likewise.
747 * unroll.c: Likewise.
748 * varasm.c: Likewise.
749
c9693e96
LH
7502002-12-23 Larin Hennessy <larin@science.oregonstate.edu>
751
752 * doc/install.texi: Remove i386-*-isc, i860-*-bsd,
753 m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries.
754 * doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex,
755 DG/UX entries.
756 * doc/md.texi: Remove AMD 29K entries.
757 * doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS
758 1.38.1, NewsOS, RT PC, WE32K entries.
759
a67ed43f
AH
7602002-12-23 Aldy Hernandez <aldyh@redhat.com>
761
44f9a8e4
ZW
762 PR/8763
763 * config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector.
764 (altivec_vspltisw_v4sf): Name pattern.
765 (altivec_vslw_v4sf): New pattern.
a67ed43f 766
46d40353
JM
7672002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
768
769 * doc/include/gcc-common.texi: Define DEVELOPMENT.
770
8dc65b6e
MM
7712002-12-23 Mark Mitchell <mark@codesourcery.com>
772
773 * stor-layout.c (update_alignment_for_field): Correct handling of
774 unnamed bitfields on PCC_BITFIELD_TYPE_MATTERS machines.
775 * doc/tm.texi (PCC_BITFIELD_TYPE_MATTERS): Note that an unnamed
776 bitfield does not affect alignment.
777
7c02ae17
DE
7782002-12-23 David Edelsohn <edelsohn@gnu.org>
779
780 * expr.c (expand_assignment): Apply special treatment to
781 ARRAY_TYPE.
782
317d21e9
KH
7832002-12-23 Kazu Hirata <kazu@cs.umass.edu>
784
785 * config/h8300/h8300-protos.h: Update the prototype of
786 expand_a_shift.
787 * config/h8300/h8300.c (expand_a_shift): Change the return
788 type to void.
789 * config/h8300/h8300.md: Update all the uses of
790 expand_a_shift.
791
0c685f12
NS
7922002-12-22 Nathan Sidwell <nathan@codesourcery.com>
793
794 * tree.c (save_expr): Allow either side of a dyadic operand to be
795 constant.
796
797 * doc/portability.texi (portability): Update portability goals.
798
ade53a50
KH
7992002-12-23 Kazu Hirata <kazu@cs.umass.edu>
800
801 * config/h8300/h8300.c (output_a_shift): Remove unused code.
802
d0ff2db5
MM
8032002-12-22 Mark Mitchell <mark@codesourcery.com>
804
d317855e
MM
805 * stor-layout.c (update_alignment_for_field): Guard use of
806 ADJUST_FIELD_ALIGN with #ifdef.
807
d0ff2db5
MM
808 * stor-layout.c (update_alignment_for_field): Use
809 ADJUST_FIELD_ALIGN when computing the alignment for a zero-width
810 bitfield when PCC_BITFIELD_TYPE_MATTERS.
811
96e13905
KH
8122002-12-22 Kazu Hirata <kazu@cs.umass.edu>
813
814 * genautomata.c: Fix comment typos.
815
66b4e478
JH
816Sun Dec 22 18:23:44 CET 2002 Jan Hubicka <jh@suse.cz>
817
818 * params.def (tracer-min-branch-probability-feedback): Fix default.
819 * final.c (compute_alignments): Use profile to avoid code bloat.
820
a7612343
KH
8212002-12-22 Kazu Hirata <kazu@cs.umass.edu>
822
823 * config/h8300/h8300.c (get_shift_alg): Make shift insn
824 sequences end with a valid cc0 whenever possible.
825
8fb52ad1
KH
8262002-12-22 Kazu Hirata <kazu@cs.umass.edu>
827
828 * config/h8300/h8300.md (negsf2): New.
829 (*negsf2_h8300): Likewise.
830 (*negsf2_h8300hs): Likewise.
831
2a77af27
GK
8322002-12-21 Geoffrey Keating <geoffk@apple.com>
833
834 * integrate.c (output_inline_function): Don't hold private
835 pointers to 'struct function' over GC calls.
836
5040eb00
KK
8372002-12-21 Kaz kojima <kkojima@gcc.gnu.org>
838
839 * config/sh/lib1funcs.asm (__fpscr_values): Conditionalize with
840 NO_FPSCR_VALUES.
841 * config/sh/t-linux (TARGET_LIBGCC2_CFLAGS): Add -DNO_FPSCR_VALUES.
842
5d750136
KH
8432002-12-21 Kazu Hirata <kazu@cs.umass.edu>
844
845 * config/h8300/h8300.md (zero_extendqisi2): Correct the
846 length.
847
f7e42925
KH
8482002-12-21 Kazu Hirata <kazu@cs.umass.edu>
849
850 * config/h8300/h8300.md (*zero_extendqihi2_h8300): Make the
851 second alternative "#".
852 (*zero_extendqihi2_h8300hs): Likewise.
853 (a define_split): New.
854
3cee1a78
KH
8552002-12-21 Kazu Hirata <kazu@cs.umass.edu>
856
857 * config/h8300/h8300-protos.h: Update the prototype for
858 split_adds_subs.
859 Add prototypes for const_le_2_operand and const_le_6_operand.
860 * config/h8300/h8300.c (split_adds_subs): Add an argument to
861 specify whether inc/dec should be used when possible.
862 (const_le_2_operand): New.
863 (const_le_6_operand): Likewise.
864 * config/h8300/h8300.md (two peepholes): New.
865
40b982a9
KH
8662002-12-21 Kazu Hirata <kazu@cs.umass.edu>
867
868 * config/fr30/fr30.md: Fix a comment typo.
869 * config/i386/i386.c: Likewise.
870 * config/ip2k/ip2k.h: Likewise.
871
60954572
JW
8722002-12-20 Jim Wilson <wilson@redhat.com>
873
874 * config/rs6000/spe.h (__ev_subifw): Reverse arguments.
875 (__ev_subw, __ev_subiw): New.
876 (ev_mwlssf, ev_mwlsmf, ev_mwlssfa, ev_mwlsmfa, ev_mwlssfaaw,
877 ev_mwlsmfaaw, ev_mwlssfanw, ev_mwlsmfanw): Delete.
878
11f43127
JDA
8792002-12-20 John David Anglin <dave.anglin@nrc.gc.ca>
880
881 * pa-linux.h (TARGET_HAS_STUBS_AND_ELF_SECTIONS): Delete define.
882 * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete define.
883 * pa.c (pa_function_ok_for_sibcall): Allow non indirect sibcalls on
884 TARGET_ELF32. Add comment on sibcall issues for TARGET_64BIT.
885
f9d2de4d
KH
8862002-12-20 Kazu Hirata <kazu@cs.umass.edu>
887
888 * config/h8300/h8300-protos.h: Add prototypes for
889 incdec_operand and eqne_operator.
890 * config/h8300/h8300.c (incdec_operand): New.
891 (eqne_operator): Likewise.
892 * config/h8300/h8300.h (CONST_OK_FOR_M): Likewise.
893 (CONST_OK_FOR_O): Likewise.
894 (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_M and
895 CONST_OK_FOR_O.
896 * config/h8300/h8300.md (UNSPEC_INCDEC): New.
897 (addhi3_incdec): New.
898 (addsi3_incdec): Likewise.
899 (two peepholes): Likewise.
900
b47900aa
KH
9012002-12-20 Kazu Hirata <kazu@cs.umass.edu>
902
903 * config/h8300/h8300.c (dosize): Remove warnings.
904 (print_operand): Likewise.
905
3094247f
RH
9062002-12-20 Richard Henderson <rth@redhat.com>
907
908 * config/alpha/alpha.c (decl_has_samegp): New.
909 (samegp_function_operand): Use it. Rename from
910 current_file_function_operand.
911 (direct_call_operand): Handle -msmall-text via symbol->jump.
912 (tls_symbolic_operand_1): Use T for tprel64, t for smaller tprel.
913 (tls_symbolic_operand_type): Likewise.
914 (alpha_encode_section_info): Likewise. Handle -msmall-text.
915 (alpha_function_ok_for_sibcall): Use decl_has_samegp.
916 (alpha_end_function): Set symbol->jump for functions defined in
917 the text section.
918 * config/alpha/alpha-protos.h: Update.
919 * config/alpha/alpha.h (MASK_SMALL_TEXT, TARGET_SMALL_TEXT): New.
920 (TARGET_SWITCHES): Add -msmall-text and -mlarge-text.
921 (PREDICATE_CODES): Update.
c14bc6db 922 * config/alpha/alpha.md (call patterns): Update for
3094247f
RH
923 samegp_function_operand rename; use !samegp reloc if
924 TARGET_EXPLICIT_RELOCS.
925 * doc/invoke.text: Document -msmall-text and -mlarge-text.
926
8056c5f2
ID
9272002-12-20 Ian Dall <ian@sibyl.beware.dropbear.id.au>
928
44f9a8e4
ZW
929 * config/ns32k/ns32k.md (movdi): Use "l" instead of "f" to match
930 all registers capable of holding a double float.
931 (*rcond): change name of "reverse branch" insns to
932 something more meaningful.
933 (*rbgt, *rblt, *rbge, *rble): Reverse branches to handle IEEE
934 comparisons properly.
935 (*ffs): Change operand 0 from write to read-modify-write.
936 (*ffsssi2): Drop constraints from define_expand.
8056c5f2 937
44f9a8e4
ZW
938 * config/ns32k/ns32k.h (STORE_RATIO, STORE_BY_PIECES): Avoid using
939 MOVE_RATIO as default for store operations.
8056c5f2 940
44f9a8e4
ZW
941 * config/ns32k/ns32k.h (enum reg_class, REG_CLASS_NAMES): Add
942 LONG_REGS class.
943 (CANNOT_CHANGE_MODE_CLASS): Can't subreg LONG_REGS.
944 (GO_IF_LEGITIMATE_ADDRESS): Remove spurious abort().
945 * config/ns32k/ns32k.c (regclass_map): Add LONG_REGS class.
8056c5f2 946
44f9a8e4
ZW
947 * config/ns32k/STATUS: New File
948 * config/ns32k/NOTES: New file.
8056c5f2 949
1fec52be 9502002-12-20 Hartmut Penner <hpenner@de.ibm.com>
c14bc6db 951
2610198a 952 * doc/invoke.texi: Document -mzarch, -mesa, -mcpu= and -march=
1fec52be 953 option for S/390 and zSeries.
44f9a8e4
ZW
954 * config/s390/s390.c (s390_cpu, s390_cpu_string, s390_arch,
955 s390_arch_string): New variables.
956 (override_options): Checking for options and setting of
1fec52be 957 appropriate target_flags, cpu and arch flags.
44f9a8e4
ZW
958 * config/s390/s390.h: (processor_type): New enum.
959 (TARGET_SWITCHES): New switches -mesa/zarch.
960 * config/s390/s390.md: New attribute 'cpu'.
1fec52be 961
5bdc5878
KH
9622002-12-19 Kazu Hirata <kazu@cs.umass.edu>
963
964 * c-pretty-print.h: Fix comment typos.
965 * integrate.c: Likewise.
966 * varasm.c: Likewise.
967 * config/c4x/c4x.h: Likewise.
968 * config/c4x/c4x.md: Likewise.
969 * config/fr30/fr30.md: Likewise.
970 * config/frv/frv.c: Likewise.
971 * config/h8300/h8300.c: Likewise.
972 * config/i386/i386.c: Likewise.
973 * config/i386/i386.h: Likewise.
974 * config/ia64/ia64.c: Likewise.
975 * config/ia64/ia64.h: Likewise.
976 * config/ip2k/ip2k.md: Likewise.
977 * config/m68hc11/m68hc11-crt0.S: Likewise.
978 * config/m68hc11/m68hc11.h: Likewise.
979 * config/m68hc11/m68hc11.md: Likewise.
980 * config/m68hc11/m68hc12.h: Likewise.
981 * config/mcore/mcore.md: Likewise.
982 * config/mips/mips.c: Likewise.
983 * config/mips/mips.md: Likewise.
984 * config/mmix/mmix-modes.def: Likewise.
985 * config/pa/pa.c: Likewise.
986 * config/rs6000/rs6000.c: Likewise.
987 * config/rs6000/rs6000.h: Likewise.
988 * config/rs6000/rs6000.md: Likewise.
989
539dbd15
KH
9902002-12-19 Kazu Hirata <kazu@cs.umass.edu>
991
992 * config/h8300/h8300.md (output_a_shift): Clean up the code to
993 output shifts using rotation.
994
e505be85
ZD
9952002-12-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
996
997 * flow.c (allocate_reg_life_data): Reset REG_FREQ.
998
191ff852
KH
9992002-12-19 Kazu Hirata <kazu@cs.umass.edu>
1000
1001 * config/h8300/h8300.md (pushqi_h8300): Don't push the stack
1002 pointer.
1003 (pushqi_h8300hs): Likewise.
1004 (pushhi_h8300): Likewise.
1005 (pushhi_h8300hs): Likewise.
1006
b2dfd40f
R
1007Thu Dec 19 23:44:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
1008
1009 * sched-rgn.c (init_regions): Update comment.
1010
310b9b1d
DE
10112002-12-19 David Edelsohn <edelsohn@gnu.org>
1012
1013 * config/rs6000/rs6000.md (define_attr type): Remove altivec.
1014 * config/rs6000/altivec.md (movv4si_internal): Set correct instruction
1015 attributes.
1016 (movv8hi_internal,movv16qi_internal,movv4sf_internal): Same.
1017 (get_vrsave_internal,set_vrsave_internal): Same.
1018 (altivec_vspltisb,altivec_vspltish,altivec_vspltisw): Same.
1019 (absv16qi2,absv8hi2,absv4si2,absv4sf2): Same
1020 (altivec_abss_v16qi,altivec_abss_v8hi,altivec_abss_v4si): Same.
1021
e91f04de
CH
10222002-12-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
1023 Danny Smith <dannysmith@users.sourceforge.net>
1024 Eric Kohl <ekohl@rz-online.de>
1025
1026 * config/i386/i386.c (ix86_handle_cdecl_attribute): Check for
1027 attributes incompatible with fastcall attribute.
1028 (ix86_handle_regparm_attribute): Likewise.
1029
1030 * config/i386/i386.c (ix86_comp_type_attributes): Check for mismatched
1031 fastcall types.
1032
1033 * config/i386/cygwin.h (TARGET_OS_CPP_BUILTINS): Add fastcall
1034 attributes.
1035 (ASM_OUTPUT_LABELREF): Define as i386_pe_output_labelref.
1036 * config/i386/i386-protos.h (i386_pe_output_labelref): Declare.
1037 * config/i386/winnt.c (i386_pe_mark_dllimport). Add __imp_ prefix in
1038 i386_pe_output_labelref rather than here.
1039 (gen_fastcall_suffix): New function. Decorates a label name with the
1040 fastcall prefix (@) and the stdcall suffix.
1041 (i386_pe_encode_section_info): Call gen_fastcall_suffix() if a symbol
1042 has a fastcall attribute.
1043 (i386_pe_output_labelref): New function. Outputs a label reference.
1044 * config/i386/i386.c (ix86_attribute_table): Accept 'fastcall' as a
1045 valid attribute.
1046 (ix86_return_pops_args): Fastcall functions pop the stack.
1047 (init_cumulative_args): Reserve registers ECX and EDX if function has
1048 fastcall attribute.
1049 (function_arg): Use registers ECX and EDX if function has fastcall
1050 attribute.
1051 * config/i386/i386.h (CUMULATIVE_ARGS): Add fastcall attribute flag.
1052 (DLL_IMPORT_EXPORT_PREFIX): Redefine as '#'.
1053 (FASTCALL_PREFIX): Define as '@'.
1054 * config/i386/mingw32.h (TARGET_OS_CPP_BUILTINS): Add fastcall
1055 attributes.
1056 * doc/extend.texi: Add documentation of fastcall attribute.
1057
61138bb6
NN
10582002-12-19 Nathanael Nerode <neroden@gcc.gnu.org>
1059
c14bc6db 1060 * configure.in: FORBUILD when build!=host changed from
61138bb6
NN
1061 ../$build-alias to ../build-$build_alias to match change made
1062 in top directory.
1063 * configure: Regenerated.
1064
039baf9e
EB
10652002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
1066
1067 PR optimization/8988
1068 * loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning
1069 the biv when eliminating.
1070
ee8acf89
DP
10712002-12-19 Devang Patel <dpatel@apple.com>
1072 * gcc.c (struct default_compiler): Recognizes input file name with
1073 .CPP extension as C++ source files
1074 * cp/lang-spec.h: Same
1075 * doc/invoke.texi: Add documentation for .CPP support.
c14bc6db 1076
598119bb
AH
10772002-12-19 Aldy Hernandez <aldyh@redhat.com>
1078
1079 PR 8553
1080 * config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered
1081 registers.
1082 ("absv16qi2"): Same.
1083 ("absv4si2"): Same.
1084 ("absv4sf2"): Same.
1085 ("altivec_abss_v16qi"): Same.
1086 ("altivec_abss_v8hi"): Same.
1087 ("altivec_abss_v4si"): Same.
1088
3af97654
UW
10892002-12-19 Ulrich Weigand <uweigand@de.ibm.com>
1090
1091 * config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly",
1092 "*tstqiCCT", "*tstqiCCT_cconly"): New insns.
1093
e54b4cae
EB
10942002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
1095
1096 PR target/8340
1097 * stmt.c (expand_asm_operands): Produce an error when
1098 the PIC register is clobbered.
1099
7f22efe1
DB
11002002-12-18 Daniel Berlin <dberlin@dberlin.org>
1101
1102 * Makefile.in (OBJS): Add alloc-pool.o
1103 (alloc-pool.o): New object.
1104
1105 * alloc-pool.c: New file.
1106 * alloc-pool.h: New file.
1107
5a0ba8c9
LJR
11082002-12-18 Loren James Rittle <rittle@labs.mot.com>
1109
1110 * gcc.c (validate_switches): Robustify against skipping past '\0'.
1111
064b6c70
GK
11122002-12-18 Geoffrey Keating <geoffk@apple.com>
1113
1114 * config.gcc: Set extra_objs in the generic Darwin rule,
1115 not in the machine-specific rules.
1116
272d0bee
KH
11172002-12-19 Kazu Hirata <kazu@cs.umass.edu>
1118
1119 * ChangeLog: Follow spelling conventions.
1120 * ChangeLog.2: Likewise.
1121 * ChangeLog.4: Likewise.
1122 * ChangeLog.5: Likewise.
1123 * cppexp.c: Likewise.
1124 * df.c: Likewise.
1125 * gcov.c: Likewise.
1126 * gengtype.c: Likewise.
1127 * reload1.c: Likewise.
1128 * sched-rgn.c: Likewise.
1129 * stmt.c: Likewise.
1130 * stor-layout.c: Likewise.
1131 * timevar.c: Likewise.
1132 * toplev.c: Likewise.
1133 * tree.h: Likewise.
1134 * varasm.c: Likewise.
1135 * config/fr30/fr30.md: Likewise.
1136 * config/i386/i386.c: Likewise.
1137 * config/ia64/ia64.c: Likewise.
1138 * config/pa/pa.c: Likewise.
1139
358ecb10
RS
11402002-12-18 Roger Sayle <roger@eyesopen.com>
1141
1142 * basic-block.h (flow_bb_inside_loop_p): Correct prototype.
1143
d486dec6
AH
11442002-12-18 Aldy Hernandez <aldyh@redhat.com>
1145
7f04df0d 1146 PR 8551
d486dec6
AH
1147 * config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in
1148 macro.
1149 (vec_cmplt C++ functions): Reverse arguments.
1150
358ecb10 11512002-12-18 Geoffrey Keating <geoffk@apple.com>
892aebc9 1152
40b4cdbf
GK
1153 * config/rs6000/t-rs6000: Move contents to t-fprules,
1154 add rules for dependencies of rs6000.o and to build rs6000-c.o
1155 * config/rs6000/t-fprules: New file from t-rs6000.
1156 * config/rs6000/t-beos: Remove soft-fp rules.
1157 * config/rs6000/t-ppccomm: Likewise.
1158 * config/rs6000/t-newas: Likewise.
1159 * config/rs6000/t-rs6000-c-rule: Delete.
1160 * config.gcc: Use t-fprules for rs6000/ ports when appropriate.
1161 Use t-rs6000 for all rs6000/ ports instead of t-rs6000-c-rule.
1162 Create generic Darwin rules.
1163
892aebc9
GK
1164 * gengenrtl.c (gencode): Delete unnecessary rtl_obstack declaration.
1165
9d303046
DE
11662002-12-18 Doug Evans <dje@sebabeach.org>
1167
1168 * m32r/m32r.c (addr24_operand): Fix arg to CONSTANT_POOL_ADDRESS_P
1169 and LIT_NAME_P.
1170 (move_src_operand): Remove compile-time warning.
1171 * m32r/m32r.h (ROUND_ADVANCE_ARG): Ditto.
1172
80d83b16
JM
11732002-12-18 Jason Merrill <jason@redhat.com>
1174
1175 * unwind-dw2-fde.c (frame_downheap): Split out from...
1176 (frame_heapsort): Here.
1177
f32ac70d
JM
11782002-12-17 Jason Merrill <jason@redhat.com>
1179
9ec22713
JM
1180 * tree.c (make_node): Don't set TREE_TYPE on 's' class nodes.
1181 (build1): Always set TREE_SIDE_EFFECTS on 's' class nodes.
1182
38540594 1183 * gcc.c (do_spec_1) ['W']: End any pending argument from the braces.
a3a0177e 1184
f32ac70d
JM
1185 * calls.c (expand_call): Don't try to be clever about expanding
1186 the return slot address.
1187
d5db5b97
KK
11882002-12-18 Kaz kojima <kkojima@gcc.gnu.org>
1189
1190 * config/sh/linux.h (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC):
1191 Define.
1192
e489a31f
JM
11932002-12-17 Jason Merrill <jason@redhat.com>
1194
1195 * genmultilib: Use 'cd ./foo'.
1196
5b8f02c6
KH
11972002-12-17 Kazu Hirata <kazu@cs.umass.edu>
1198
1199 * doc/c-tree.texi: Restore deliberate spelling mistakes.
1200
c0478a66
KH
12012002-12-17 Kazu Hirata <kazu@cs.umass.edu>
1202
1203 * doc/c-tree.texi: Fix typos and follow spelling conventions.
1204 * doc/cpp.texi: Likewise.
1205 * doc/extend.texi: Likewise.
1206 * doc/gty.texi: Likewise.
1207 * doc/install.texi: Likewise.
1208 * doc/invoke.texi: Likewise.
1209 * doc/md.texi: Likewise.
1210 * doc/passes.texi: Likewise.
1211 * doc/rtl.texi: Likewise.
1212 * doc/sourcebuild.texi: Likewise.
1213 * doc/tm.texi: Likewise.
1214
3364c33b
JQ
12152002-12-17 Jerry Quinn <jlquinn@optonline.net>
1216
1217 * doc/invoke.texi: Minor spelling and grammar fixes.
1218
d65f135a
UW
12192002-12-17 Ulrich Weigand <uweigand@de.ibm.com>
1220
1221 * config/s390/s390.c (s390_output_constant_pool): Replace
1222 ASM_OUTPUT_INTERNAL_LABEL by (*targetm.asm_out.internal_label).
1223
4b207444
JH
1224Tue Dec 17 09:47:57 CET 2002 Jan Hubicka <jh@suse.cz>
1225
1226 * convert.c (convert_to_real): Disable function transformation for
1227 now.
1228
cde26509
GK
12292002-12-16 Geoffrey Keating <geoffk@apple.com>
1230
1231 * gcc.c (handle_braces): Allow '@' as a switch name.
1232
9f175208
JM
12332002-12-16 Jason Merrill <jason@redhat.com>
1234
e489a31f
JM
1235 * calls.c (expand_call): Handle CALL_EXPR_HAS_RETURN_SLOT_ADDR
1236 with special struct-return ABIs.
1237
9f175208
JM
1238 * c-semantics.c (add_scope_stmt): Abort if the end SCOPE_STMT
1239 doesn't match the begin SCOPE_STMT in partialness.
1240
7a975113
GK
12412002-12-16 Geoffrey Keating <geoffk@apple.com>
1242
c79d892f
GK
1243 * genmultilib: Create temporary files in unique subdirectory.
1244
7a975113
GK
1245 * gcc.c (validate_switches): Allow '@' as a switch name.
1246
8483c7e0
LR
12472002-12-16 Loren J. Rittle <ljrittle@acm.org>
1248
1249 * Makefile.in (gcov-iov.h): Improve portability.
1250
9ee7999f
JH
1251Mon Dec 16 23:39:19 CET 2002 Jan Hubicka <jh@suse.cz>
1252
1253 * mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Do not use qpword on API_N32/not
1254 gas
1255 * mips.md (tablejump insn): Likewise.
1256
7a04c51b
MM
12572002-12-16 Mark Mitchell <mark@codesourcery.com>
1258
1259 * doc/include/gcc-common.texi: Change version number to 3.4.
1260
27eaa708
BK
12612002-12-16 Bruce Korb <bkorb@gnu.org>
1262
1263 * fixinc/fixlib.h: add: #include <signal.h>
1264 * fixinc/fixincl.c: remove: #include <signal.h>
1265
b51dc045
R
1266Mon Dec 16 17:20:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
1267
1268 * sh.h (EXTRA_CONSTRAINT_Z): New macro.
1269 (EXTRA_CONSTRAINT): Use it.
1270 * sh.md (anddi3): Use 'Z' constraint for alternative 2.
1271
4977bab6
ZW
12722002-12-15 Zack Weinberg <zack@codesourcery.com>
1273
1274 * config.gcc (need_64bit_hwint): New variable.
1275 (alpha*-*-*, x86_64-*-*, ia64-*-*, mips*-*-*, powerpc*-*-*,
1276 mmix-knuth-mmixware, rs6000*-*-*, sparc64*-*-*, s390*-*-*,
1277 sh*-*-*, hppa*64*-*-linux, parisc*64*-*-linux, hppa*64*-*-hpux11*,
1278 sparcv9-*-solaris2*, sparc*-*-solaris2.[789], ultrasparc-*-freebsd*):
1279 Set it.
1280 (powerpc*-*-darwin*): Unset it.
1281 (alpha-*-interix, alpha64-dec-*vms*, i?86-*-interix3*,
1282 i?86-*-interix*, sparc64-*-openbsd*): Remove references to
1283 deleted/nonexistent xm-*.h headers.
1284 * configure.in: AC_DEFINE NEED_64BIT_HOST_WIDE_INT if the
1285 target set need_64bit_hwint in config.gcc.
1286 * configure, config.in: Regenerate.
1287
1288 * hwint.h: Overhaul. Don't bother trying int for
1289 HOST_WIDE_INT. Do try __int64 if long is not enough. Base
1290 decision to force 64-bit HOST_WIDE_INT on
1291 NEED_64BIT_HOST_WIDE_INT, not (MAX_)LONG_TYPE_SIZE which is
1292 not visible at this point. Don't allow prior definition of
1293 any macro defined by this file.
1294
1295 * config/alpha/xm-vms.h: Don't define HOST_WIDE_INT or
1296 HOST_BITS_PER_WIDE_INT.
1297 * config/c4x/c4x.h: Adjust redefinition of
1298 HOST_WIDE_INT_PRINT_HEX to match changes to hwint.h.
1299 * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms64.h,
1300 config/i386/xm-i386-interix.h: Delete file.
1301
13022002-12-14 Rodney Brown <rbrown64@csc.com.au>
1303 John David Anglin <dave@hiauly1.hia.nrc.ca>
1304
1305 * pa.c (output_millicode_call): Convert ASM_OUTPUT_INTERNAL_LABEL.
1306 * pa64-hpux.h (ASM_OUTPUT_INTERNAL_LABEL): Delete define.
1307
13082002-12-14 Zack Weinberg <zack@codesourcery.com>
1309
1310 * mkconfig.sh: Correct comment. Add copyright boilerplate.
1311
13122002-12-14 Zack Weinberg <zack@codesourcery.com>
1313
1314 * config/t-darwin, config/arm/t-pe, config/arm/t-strongarm-pe,
1315 config/c4x/t-c4x, config/i370/t-i370, config/i386/t-cygwin,
1316 config/i386/t-interix, config/i960/t-960bare, config/ia64/t-ia64,
1317 config/rs6000/t-rs6000-c-rule, config/sparc/t-sol2,
1318 config/v850/t-v850: Correct dependencies and normalize
1319 compilation commands for files that include coretypes.h and tm.h.
1320
1321 * config/sparc/gmon-sol2.c: Include tconfig.h and tsystem.h,
1322 not config.h and system.h.
1323
1324Sat Dec 14 20:43:41 CET 2002 Jan Hubicka <jh@suse.cz>
1325
1326 * i386.c (flags_reg_operand): New function.
1327 * i386.h (PREDICATE_CODES): Add flags_reg_operand.
1328 * i386.md (cmov splitter, movqicc): Use new predicate.
1329
1330Sat Dec 14 17:03:17 CET 2002 Jan Hubicka <jh@suse.cz>
1331
1332 * i386.md (movqicc splitter): Fix template.
1333
13342002-12-13 Jason Merrill <jason@redhat.com>
1335
1336 * tree.h (CALL_EXPR_HAS_RETURN_SLOT_ADDR): New macro.
1337 * calls.c (expand_call): Handle it.
1338 * tree-inline.c (struct inline_data): Remove target_exprs field.
1339 (optimize_inline_calls): Don't initialize it.
1340 (expand_call_inline): Don't modify it. Handle
1341 CALL_EXPR_HAS_RETURN_SLOT_ADDR.
1342 (declare_return_variable): Take return slot addr.
1343 * langhooks.h (copy_res_decl_for_inlining): Change target_exprs parm
1344 to return_slot_addr.
1345 * langhooks-def.h, langhooks.c: Adjust.
1346 * explow.c (maybe_set_unchanging): Don't set RTX_UNCHANGING_P for
1347 a decl with no DECL_INITIAL.
1348
1349 * expr.c (expand_expr): Don't discard the target of a call which
1350 returns in memory.
1351
13522002-12-13 Neil Booth <neil@daikokuya.co.uk>
1353
1354 * cppinit.c (path_include): Take an environment variable name.
1355 Tidy up.
1356 (init_standard_includes): Simplify environment handling, and
1357 move to ...
1358 (cpp_read_main_file): ...here as -nostdinc should not affect
1359 environment variable paths.
1360
f5f9008b
JDA
13612002-12-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
1362
1363 * pa.c (output_millicode_call): Correct typo.
1364 (output_call): Likewise.
1365
a58be199
AO
1366Fri Dec 13 21:07:18 2002 Alexandre Oliva <aoliva@redhat.com>
1367
1368 * config/mn10300/mn10300.c (print_operand) <case N>: Check
1369 operand's range. Print value directly, without aid from
1370 output_address.
1371 <case U>: New.
1372 <case S>: Make sure argument to fprintf has the right type.
1373 * config/mn10300/mn10300.h (OK_FOR_T): New macro.
1374 (EXTRA_CONSTRAINT): Adjust.
1375 * config/mn10300/mn10300.md: Add new all-QImode pattern for
1376 bclr. Use %U for immediate operands of bset and bclr.
1377 (iorqi3): New expand, with insns for AM33 and mn10300.
1378
d9da94a1
R
1379Fri Dec 13 16:02:27 2002 J"orn Rennecke <joern.rennecke@superh.com>
1380
1381 * sh.c (sh_register_operand): New function.
1382 (prepare_move_operands): Use it.
1383 * sh.h (PREDICATE_CODES): Add entry for sh_register_operand.
1384 * sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0.
1385 (movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise.
1386 (movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise.
1387 (movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise.
1388 (movv2si_i): Likewise.
1389
580fb356
JW
13902002-12-13 Jim Wilson <wilson@redhat.com>
1391
1392 * doc/extend.texi (Complex Numbers): Update info on debug info.
1393
697d8028
KH
13942002-12-13 Kazu Hirata <kazu@cs.umass.edu>
1395
1396 * config/h8300/h8300.md (addhi3_h8300): Remove the last
1397 alternative.
1398
4977bab6
ZW
13992002-12-12 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1400
1401 * hooks.h (hook_tree_tree_bool_false): Declare
1402 hook_bool_tree_tree_false instead.
1403
dd05b1b4 14042002-12-12 Devang Patel <dpatel@apple.com>
697d8028 1405
dd05b1b4
DP
1406 * doc/invoke.texi: Document Darwin linker options, -bundle
1407 -bind_at_load, -all_load and -arch_errors_fatal
1408
24aacafb
JW
14092002-12-12 Jim Wilson <wilson@redhat.com>
1410
1411 * dbxout.c (dbxout_fptype_value): New.
1412 (dbxout_type, case COMPLEX_TYPE): Call it. Use 'R' instead of 'r'.
1413
09da1532
KH
14142002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1415
1416 * c-decl.c: Fix a comment typo.
1417 * cfg.c: Likewise.
1418 * cfgcleanup.c: Likewise.
1419 * cfglayout.c: Likewise.
1420 * cfgrtl.c: Likewise.
1421 * c-typeck.c: Likewise.
1422 * dominance.c: Likewise.
1423 * dwarf2asm.c: Likewise.
1424 * dwarfout.c: Likewise.
1425 * expmed.c: Likewise.
1426 * expr.c: Likewise.
1427 * final.c: Likewise.
1428 * flow.c: Likewise.
1429 * function.c: Likewise.
1430 * gcc.c: Likewise.
1431 * genautomata.c: Likewise.
1432 * integrate.c: Likewise.
1433 * loop.c: Likewise.
1434 * loop.h: Likewise.
1435 * output.h: Likewise.
1436 * profile.c: Likewise.
1437 * ra.h: Likewise.
1438 * reload1.c: Likewise.
1439 * reload.c: Likewise.
1440 * sched-rgn.c: Likewise.
1441 * stmt.c: Likewise.
1442 * tree.h: Likewise.
1443 * vmsdbgout.c: Likewise.
1444
7930523d
KH
14452002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1446
1447 * config/h8300/h8300.md: Add a new peephole2.
1448
59578c84
KH
14492002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1450
1451 * config/h8300/h8300.md (a peephole2): Accept a constant
1452 that's accepted by CONST_OK_FOR_J.
1453
8cc5359b
KH
14542002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1455
1456 * config/h8300/h8300.h (CONST_OK_FOR_J): New.
1457 (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J.
1458 * config/h8300/h8300.md (*addhi_h8300): Add a new alternative.
1459 (*addhi_h8300hs): Likewise.
1460
ec555f32
R
1461Thu Dec 12 16:24:59 2002 J"orn Rennecke <joern.rennecke@superh.com>
1462
1463 * sh.c (reg_class_from_letter): No longer const. Add 'e' entry.
1464 (sh_register_move_cost): Add clause for SImode fp-fp moves.
1465 Increase cost for moves involving multiple general purpose registers.
1466 * sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to
1467 TARGET_FMOVD.
1468 (HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose
1469 registers, and SImode in fp registers, for ! TARGET_SHMEDIA.
1470 (enum reg_class reg_class_from_letter): No longer const.
1471 (SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG /
1472 REGCLASS_HAS_GENERAL_REG.
1473 Handle SImode moves from/to fp registers.
1474 ! TARGET_SHMEDIA && TARGET_FMOVD.
1475 (SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG.
1476 * sh.md (movsi_ie): Add alternatives to move from / to fp regisyters.
1477
83ebfdc0
AS
14782002-12-12 Andreas Schwab <schwab@suse.de>
1479
1480 * config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last
1481 change and some warnings.
1482
299c5111
KH
14832002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1484
1485 * doc/md.texi (pushm): Fix a typo.
1486
852dff61
AO
14872002-12-12 Alexandre Oliva <aoliva@redhat.com>
1488
1489 * config/mips/mips.c (mips_output_conditional_branch): Support
1490 PIC-safe out-of-range branch and branch-likely.
1491 * config/mips/mips.md (attr length): PIC-safe out-of-range
1492 branches are longer.
1493 ("jump"): Support PIC-safe out-of-range-for-branch jumps. Remove
1494 unused code to support indirect jumps.
1495
4977bab6
ZW
14962002-12-11 Zack Weinberg <zack@codesourcery.com>
1497
1498 * Makefile.in (GTFILES): Add $(host_xm_file_list) and
1499 $(tm_file_list).
1500
15012002-12-11 David Edelsohn <edelsohn@gnu.org>
1502
1503 * config/rs6000/t-rs6000-c-rule: Add coretypes.h $(TM_H) dependencies.
1504
1505Wed Dec 11 15:20:45 CET 2002 Jan Hubicka <jh@suse.cz>
1506
1507 * i386.md (cmove splitters): Avoid creation of unnecesary subregs.
1508
d6567b3a
JDA
15092002-12-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
1510
1511 * pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
1512 (MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
1513 BIGGEST_ALIGNMENT.
1514 (PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
1515 (FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
1516
355bd14f
KH
15172002-12-11 Kazu Hirata <kazu@cs.umass.edu>
1518
1519 * doc/invoke.texi: Correct dump file names.
1520
9a3873b4
SE
15212002-12-09 Steve Ellcey <sje@cup.hp.com>
1522
1523 * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
1524 name to globalize_label or assemble_name.
1525
9a4816af
R
1526Wed Dec 11 20:15:19 2002 J"orn Rennecke <joern.rennecke@superh.com>
1527
1528 * sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
1529 if not TARGET_SHMEDIA.
1530
1531Wed Dec 11 19:05:05 2002 J"orn Rennecke <joern.rennecke@superh.com>
1532
1533 * sh.h (REG_CLASS_HAS_FP_REG): New.
1534 (REGISTER_MOVE_COST) Use it. Put body into a function and
1535 move it into:
1536 * sh.c (sh_register_move_cost).
1537 * sh-protos.h (sh_register_move_cost): Declare.
1538
1539 * sh.c (sh_expand_builtin): Abort for unexpected nop values.
1540 (sh_adjust_cost): Always return a value.
1541
70a72ca4
R
1542Wed Dec 11 18:39:52 2002 J"orn Rennecke <joern.rennecke@superh.com>
1543
1544 * sh.h (REG_CLASS_HAS_GENERAL_REG): New.
1545 (REGISTER_MOVE_COST): Use it.
1546
5d5cd66f
RH
15472002-12-11 Richard Henderson <rth@redhat.com>
1548
1549 * tree.h (MODULE_LOCAL_P): Kill.
1550 * varasm.c (default_binds_local_p_1): Use decl_visibility instead.
1551
68d0a3d2
KH
15522002-12-11 Kazu Hirata <kazu@cs.umass.edu>
1553
1554 * config/h8300/h8300.md (two define_peephole2): New.
1555
722d59a3
KH
15562002-12-11 Kazu Hirata <kazu@cs.umass.edu>
1557
1558 * config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
1559 (CONST_OK_FOR_K): Likewise.
1560 (CONST_OK_FOR_M): Likewise.
1561 (CONST_OK_FOR_LETTER_P): Do not use the above macros.
1562
b3a5a50c
NB
15632002-12-11 Neil Booth <neil@daikokuya.co.uk>
1564
1565 * c-common.c (builtin_define_type_max): Handle unsigned
1566 types too.
1567
4977bab6
ZW
15682002-12-10 David Edelsohn <edelsohn@gnu.org>
1569
1570 * haifa-sched.c (rank_for_schedule): Correct style.
1571
15722002-12-10 Per Bothner <pbothner@apple.com>
1573
1574 * cpplib.h (struct cpp_hashnode): Split a non-portably-signed field
1575 directive_index into an unsigned field and a new is_directive field.
1576 * cppinit.c (mark_named_operators): Update to set new fields.
1577 * cpplex.c (_cpp_lex_direct): Now directive_field is unsigned.
1578 * cpplib.c [_cpp_handle_directive]: Test is_directive field.
1579 No longer need to subtract 1 from directive_index.
1580 (_cpp_init_directives): No longer need to add 1 to directive_index.
1581 * cpptrad.c (scan_out_logical_line): Use is_directive field.
1582
15832002-12-10 Roger Sayle <roger@eyesopen.com>
1584
1585 * builtins.c (fold_builtin): Remove -funsafe-math-optimizations
1586 check for evaluating sqrt of a constant at compile time.
1587 * simplify-rtx.c (simplify_unary_operation): Likewise.
1588
40d81ee4
JJ
15892002-12-10 Janis Johnson <janis187@us.ibm.com>
1590
1591 PR other/8882
1592 * doc/tm.texi (PUSH_ARGS): Remove misplaced line.
1593
48aec0bc 15942002-12-10 Devang Patel <dpatel@appple.com>
40d81ee4 1595
48aec0bc
DP
1596 * config/darwin.h(LINK_SPEC): Add darwin specific linker options.
1597 * doc/invoke.texi: Add new "Darwin Options" section.
4977bab6 1598
0e9f8e82
JW
15992002-12-10 Jim Wilson <wilson@redhat.com>
1600
1601 * rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in
1602 memory.
1603
3e25353e
AH
16042002-12-10 Andrew Haley <aph@redhat.com>
1605
1606 * cse.c (cse_insn): Don't cse past a basic block boundary.
1607
17772b2a
JJ
16082002-12-10 Jakub Jelinek <jakub@redhat.com>
1609
1610 * config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
1611 -shared.
1612 * config/alpha/linux-elf.h (LIB_SPEC): Likewise.
1613 * config/alpha/linux.h (LIB_SPEC): Likewise.
1614 * config/arm/linux-elf.h (LIB_SPEC): Likewise.
1615 * config/pa/pa-linux.h (LIB_SPEC): Likewise.
1616 * config/sparc/linux.h (LIB_SPEC): Likewise.
1617 * config/sparc/linux64.h (LIB_SPEC): Likewise.
1618
63358530
LH
16192002-12-09 Larin Hennessy <larin@science.oregonstate.edu>
1620
1621 * doc/invoke.texi: Document UltraSparc III option.
1622
2e37b0ce
RH
16232002-12-09 Richard Henderson <rth@redhat.com>
1624
1625 * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
1626 __tune_pentium2__ and __tune_pentium3__ as necessary.
1627
3a04ff64
RH
16282002-12-09 Richard Henderson <rth@redhat.com>
1629
1630 * target.h (gcc_target): Add cannot_force_const_mem.
1631 * target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New.
1632 (TARGET_INITIALIZER): Add it.
1633 * varasm.c (force_const_mem): Fail if cannot_force_const_mem.
1634 * expr.c (emit_move_insn): Be prepared for force_const_mem to fail.
1635 * reload1.c (reload): Likewise.
1636 * hooks.c (hook_bool_rtx_false): New.
1637 * hooks.h: Declare it.
1638
1639 * config/i386/i386.c (ix86_cannot_force_const_mem): New.
1640 (TARGET_CANNOT_FORCE_CONST_MEM): New.
1641 (ix86_expand_move): Remove de-const-pooling hack.
1642
a9a4005f
JH
1643Mon Dec 9 21:33:38 CET 2002 Jan Hubicka <jh@suse.cz>
1644
1645 * toplev.c (dump_file): Fix order to match reality.
1646
7ef788f0
GK
16472002-12-08 Geoffrey Keating <geoffk@apple.com>
1648
1649 * config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv.
1650 (store_multiple): Likewise.
1651
3f320b7e
JDA
16522002-12-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
1653
1654 * pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize
1655 function pointers in page 0.
1656
3870df96
SE
16572002-12-09 Steve Ellcey <sje@cup.hp.com>
1658
1659 * config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove
1660 definition
1661 (MEMBER_TYPE_FORCES_BLK): Move.
1662 * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass
1663 aggregate arguments.
1664 (ia64_function_value): Use PARALLEL to return aggregate values.
1665
9ac3e73b
SE
16662002-12-09 Steve Ellcey <sje@cup.hp.com>
1667
1668 * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
1669 * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
1670 * calls.c (store_unaligned_arguments_into_pseudos) Remove
1671 FUNCTION_ARG_REG_LITTLE_ENDIAN.
1672 * stmt.c (expand_return): Ditto.
1673 * expr.c (move_block_from_reg): Ditto.
1674 (copy_blkmode_from_reg): Ditto.
4977bab6 1675 * expmed.c (store_bit_field): Ditto.
9ac3e73b 1676
7f0db92a
SS
16772002-12-09 Svein E. Seldal <Svein.Seldal@solidas.com>
1678
1679 * config.gcc: Added tic4x-* target as an alias to c4x-*
1680
37c66aa6
JH
1681Sun Dec 8 14:57:39 CET 2002 Jan Hubicka <jh@suse.cz>
1682
7ef788f0
GK
1683 * i386.c (ix86_expand_int_movcc): Use force_operand instead of
1684 constructing insn directly.
37c66aa6 1685
4977bab6
ZW
16862002-12-06 Per Bothner <pbothner@apple.com>
1687
1688 * cpplib.h (struct cpp_hashnode): Change field directive_index from
1689 char to an int bit-field, for hosts where char is unsigned.
1690
16912002-12-07 Roger Sayle <roger@eyesopen.com>
1692 Richard Henderson <rth@redhat.com>
1693
1694 * real.c (ieee_extended_motorola_format,
1695 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
1696 ieee_quad_format, vax_d_format, vax_g_format, i370_double_format):
1697 Provide appropriate values for new signbit field.
1698
16992002-12-07 Roger Sayle <roger@eyesopen.com>
1700
1701 * real.h (real_format): Add signbit field.
1702 * real.c (ieee_single_format, ieee_double_format,
1703 ieee_extended_motorola_format, ieee_extended_intel_96_format,
1704 ieee_extended_intel_128_format, ibm_extended_format,
1705 ieee_quad_format, vax_f_format, vax_d_format,
1706 vax_g_format, i370_single_format, i370_double_format,
1707 c4x_single_format, c4x_extended_format, real_internal_format):
1708 Provide suitable signbit value, or -1 to avoid bit twiddling.
1709
1710 * optabs.c (expand_unop): Try implementing negation of
1711 floating point modes by flipping the sign bit.
1712 (expand_abs): Try implementing abs of floating point modes
1713 by clearing the sign bit.
1714
1715Sat Dec 7 22:29:47 CET 2002 Jan Hubicka <jh@suse.cz>
1716
1717 * i386.c (ix86_expand_int_movcc): Use force_operand instead
1718 of constructing insn directly.
1719
2a598b3a
KH
17202002-12-07 Kazu Hirata <kazu@cs.umass.edu>
1721
1722 * config/h8300/h8300.md (*iorhi_shift_8): New.
1723
70899148
BS
17242002-12-06 Bernd Schmidt <bernds@redhat.com>
1725
1726 * doc/invoke.texi: Document FRV port options.
1727 * doc/md.texi: Document FRV register classes.
1728
377dfc82
GP
17292002-12-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1730
1731 * doc/install.texi (Configuration): Improve description of cases
1732 where `make distclean` may fail; clarify --with-gnu-as; fix grammar.
1733
4977bab6
ZW
17342002-12-06 Per Bothner <pbothner@apple.com>
1735
1736 * cpplib.h (NODE_MACRO_ARG): New flag.
1737 (struct cpp_hashnode): Give _cpp_hashnode_value tag to value union.
1738 Remove value.operator field. Move arg_index field to value union.
1739 (directive_index): Make signed, since also used for C++ operators.
1740 * cppmacro.c (_cpp_save_parameter): Use NODE_MACRO_ARG flag to
1741 check for duplicate parameter. Set NODE_MACRO_ARG flag.
1742 Save node->value, and set node->value.arg_index.
1743 (_cpp_create_definition): For each paramater, restore node->value.
1744 (lex_expansion_token): Use NODE_MACRO_ARG flag, and moved arg_index.
1745 * cpptrad.c (scan_out_logical_line): Likewise.
1746 (scan_out_logical_line): Check for directive > 0.
1747 * cpplib.c (cpp_handle_directive): Likewise.
1748 * cpplex.c (_cpp_lex_direct): Update as value.operator is replaced
1749 by negative of directive_index.
1750 * cppinit.c (mark_named_operators): Likewise.
1751
1752 * hashtable.h (struct ht_identifier): Swap fields, for better packing.
1753
7144b2d8
DD
17542002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com>
1755
1756 * gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has
1757 FPU.
1758 (push): Generate push_fpscr.
1759 (pop): Generate pop_fpscr.
1760 * gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr".
1761 (fpu_switch): Add alternative to push fpscr. Enable for TARGET_SH3E.
1762
aa06e8f5
R
1763Fri Dec 6 19:36:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
1764
1765 * sh.c (dump_table): DImode pool constants need only 32 bit alignment.
1766 DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
1767
0113c3c0
R
1768Fri Dec 6 19:17:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
1769
1770 * sh.md (movdi_i): Name. Remove inappropriate comment.
1771
8d6b008d
R
1772Fri Dec 6 15:44:46 2002 J"orn Rennecke <joern.rennecke@superh.com>
1773 Merged from basic improvements branch (excerpt):
1774
1775 2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
1776 * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
1777
61f6c84f
JJ
17782002-12-06 Jakub Jelinek <jakub@redhat.com>
1779
1780 * expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place.
1781
4977bab6
ZW
1782Thu Dec 5 16:58:25 CET 2002 Jan Hubicka <jh@suse.cz>
1783
1784 * i386.md (dimode peep2s): Re-add "&& 1".
1785
1786Thu Dec 5 14:10:15 CET 2002 Jan Hubicka <jh@suse.cz>
1787
1788 * i386.c (ix86_expand_prologue): Add comment, do not use
1789 fast prologues for cold and normal functions.
1790
1791Thu Dec 5 00:52:37 CET 2002 Jan Hubicka <jh@suse.cz>
1792
1793 * i386.c (x86_rep_movl_optimal): New variable.
1794 (ix86_expand_movstr, ix86_expand_clrstr): Use TARGET_REP_MOVL_OPTIMAL
1795 * i386.h (TARGET_REP_MOVL_OPTIMAL): New macro.
1796
1797 * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
1798 absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
1799 neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
1800 generate unnecesary subregs.
1801
bf97847b
JDA
18022002-12-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
1803
1804 * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define.
1805 * pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here.
1806
1fcfaf37
DJ
18072002-12-05 Dale Johannesen <dalej@apple.com>
1808
1809 * tree.c (unsafe_for_reeval): Consider callee child of CALL_EXPR.
1810
1a823ac1
DS
18112002-12-05 Danny Smith <dannysmith@users.sourceforge.net>
1812
1813 * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with
1814 PROFILE_HOOK.
1815 * config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef.
1816
747db477
AH
18172002-12-05 Aldy Hernandez <aldyh@redhat.com>
1818
1819 * config/rs6000/spe.h (__ev_mwlufi): Remove.
1820 (__ev_mwlufia): Remove.
1821 (__ev_mwlumfaaw): Remove.
1822 (__ev_mwlusfaaw): Remove.
1823 (__ev_mwlumfanw): Remove.
1824 (__ev_mwlusfanw): Remove.
1825
94f09825
KH
18262002-12-05 Kazu Hirata <kazu@cs.umass.edu>
1827
1828 * config/h8300/h8300.md (*andorsi3_shift_8): New.
1829
1e5bdc40
KH
18302002-12-05 Kazu Hirata <kazu@cs.umass.edu>
1831
1832 * config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
1833 lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
1834 (get_shift_alg): Return optimal assembly instructions for the
1835 shifts mentioned above.
1836
4977bab6
ZW
1837Wed Dec 4 11:53:07 CET 2002 Jan Hubicka <jh@suse.cz>
1838
1839 * i386.c (ix86_expand_int_movcc): Force operand into register for QImode
1840 condtiional moves.
1841
b6fd51f6
KH
18422002-12-04 Kazu Hirata <kazu@cs.umass.edu>
1843
1844 * config/h8300/h8300.c (h8300_init_once): Do not use loop to
1845 implement ashiftrt:HI by 13 bits on H8S.
1846
9e1ab8c1
JDA
18472002-12-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
1848
1849 * pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
1850 * pa.md (canonicalize_funcptr_for_compare): Output library call to
1851 canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
1852 * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
1853 CTOR_LIST_BEGIN): New defines.
1854 * pa/t-linux (LIB2FUNCS_EXTRA): New define.
1855 (fptr.c): Add make rules.
1856
16823694
GK
18572002-12-04 Geoffrey Keating <geoffk@apple.com>
1858
1859 * combine.c (combine_simplify_rtx): Add new canonicalizations.
1860 * doc/md.texi (Insn Canonicalizations): Document new
1861 canonicalizations for multiply/add combinations.
1862 * config/rs6000/rs6000.md: Add and modify floating add/multiply
1863 patterns to ensure they're used whenever they can be.
1864
5ec0b66e
KH
18652002-12-04 Kazu Hirata <kazu@cs.umass.edu>
1866
1867 * config/h8300/h8300.c: Update the comments related to shifts.
1868
7fa9ed65
CD
18692002-12-04 Chris Demetriou <cgd@broadcom.com>
1870
1871 * config/mips/mips.md (get_fnaddr): Correct length attribute.
1872
6bd6fd35
KH
18732002-12-04 Kazu Hirata <kazu@cs.umass.edu>
1874
1875 * config/h8300/h8300.md (*extzv_8_8): New.
1876 (*extzv_8_16): Likewise.
1877
c246c65d
JM
18782002-12-04 Jason Merrill <jason@redhat.com>
1879
1880 PR c++/8461, c++/8625
1881 * integrate.c (copy_decl_for_inlining): Handle explicit invisible
1882 references.
1883 * tree-inline.c (initialize_inlined_parameters): Likewise.
1884
1885 * tree.c (variably_modified_type_p): Just return an error_mark_node.
1886
ae598ab9
CD
18872002-12-04 Chris Demetriou <cgd@broadcom.com>
1888
1889 * config/mips/mips.md (get_fnaddr): Avoid placing an "la"
1890 macro instruction in a branch delay slot, to avoid assembler
1891 warnings.
1892
a9b6f1e7
EB
18932002-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
1894
1895 PR c/7622
1896 * c-semantics (genrtl_scope_stmt): Do not output inlined
1897 nested functions that contain no code.
1898
a3716585
JH
1899Wed Dec 4 15:20:54 CET 2002 Jan Hubicka <jh@suse.cz>
1900
1901 * cfgrtl.c (force_nonfallthru_and_redirect): Allow abnormal edge
1902 to be forced into nonfallthru.
1903
44924a36
JT
19042002-12-03 Jason Thorpe <thorpej@wasabisystems.com>
1905
1906 * config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS).
1907
3678a93e
AH
19082002-12-03 Aldy Hernandez <aldyh@redhat.com>
1909
4977bab6 1910 * config/rs6000/spe.md (*movv1di_const0): New pattern.
3678a93e 1911
6e1be6b1
RH
19122002-12-03 Richard Henderson <rth@redhat.com>
1913
1914 * libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0.
1915
c47eb51b
HPN
19162002-12-03 Hans-Peter Nilsson <hp@bitrange.com>
1917
1918 * bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff):
1919 Initialize tmp.using_obstack to 0.
1920
2cff4a6e
AS
19212002-12-03 Andreas Schwab <schwab@suse.de>
1922
1923 * config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define.
1924 (EH_RETURN_STACKADJ_RTX): Define.
1925 (EH_RETURN_HANDLER_RTX): Define.
1926 (ASM_PREFERRED_EH_DATA_FORMAT): Define.
1927 * config/m68k/m68k.c (m68k_save_reg): New function. Handle eh
1928 registers and don't save fixed registers.
1929 (m68k_output_function_prologue): Use it.
1930 (use_return_insn): Likewise.
1931 (m68k_output_function_epilogue): Likewise.
1932
491a9777
KH
19332002-12-03 Kazu Hirata <kazu@cs.umass.edu>
1934
1935 * config/h8300/h8300.c (single_one_operand): Fix a warning.
1936 (single_zero_operand): Likewise.
1937
4977bab6
ZW
19382002-12-02 Nathanael Nerode <neroden@gcc.gnu.org>
1939
1940 * Makefile.in configure configure.in dummy-conditions.c fix-header.c
1941 gcov-iov.c gen-protos.c genattr.c genattrtab.c genautomata.c
1942 gencheck.c gencodes.c genconditions.c genconfig.c genconstants.c
1943 genemit.c genextract.c genflags.c gengenrtl.c gengtype-lex.l
1944 gengtype-yacc.y gengtype.c genopinit.c genoutput.c genpeep.c
1945 genpreds.c genrecog.c gensupport.c mkconfig.sh read-rtl.c
1946 scan-decls.c scan.c config/sh/sh.h doc/configfiles.texi
1947 doc/install-old.texi: Replace hconfig.h with bconfig.h.
1948 * Makefile.in: Replace HCONFIG_H with BCONFIG_H.
1949
19502002-12-02 Andrew Pinski <pinskia@physics.uc.edu>
1951
1952 * config/rs6000/rs6000.md (ffssi): Convert to expander.
1953 (ffsdi): Likewise.
1954 (cntlzw2, cntlzd2): New patterns.
1955
19562002-12-02 H.J. Lu <hjl@gnu.org>
1957
1958 * config.gcc (mips*-*-netbsd*): Remove mips/t-netbsd.
1959 (mips*-*-linux*): Remove mips/t-linux.
1960
1961Mon Dec 2 19:26:30 CET 2002 Jan Hubicka <jh@suse.cz>
1962
1963 * i386.c (ix86_expand_int_movcc): Avoid overflow.
1964
e8a68017
KH
19652002-12-02 Kazu Hirata <kazu@cs.umass.edu>
1966
1967 * config/h8300/h8300.c (dosize): Replace argument op with
1968 sign.
1969 (h8300_output_function_prologue): Update the call to dosize.
1970 (h8300_output_function_epilogue): Likewise.
1971
834572b8
BW
19722002-12-02 Bob Wilson <bob.wilson@acm.org>
1973
1974 * config/xtensa/xtensa.h: Delete ifndefs with nothing inside them.
1975
19762002-12-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
9118405f
CR
1977
1978 * configure.in: Use "missing" script to generate warning if
1979 flex or bison programs not found, instead of invoking "false".
1980 * configure: Rebuilt.
1981
4ff38cd5
JH
1982Mon Dec 2 20:28:48 CET 2002 Jan Hubicka <jh@suse.cz>
1983
1984 * unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P.
1985
adc72fa6
JH
1986Mon Dec 2 19:42:52 CET 2002 Jan Hubicka <jh@suse.cz>
1987
1988 * i386.c (ix86_expand_int_movcc): Avoid overflow.
1989
513f31eb
KH
19902002-12-02 Kazu Hirata <kazu@cs.umass.edu>
1991
1992 * config/h8300/h8300.c (dosize): Output r7/er7 instead of sp.
1993 (push): Likewise.
1994 (pop): Likewise.
1995 (h8300_output_function_prologue): Likewise.
1996 (h8300_output_function_epilogue): Likewise.
1997
7ffc9761
R
1998Mon Dec 2 14:43:22 2002 J"orn Rennecke <joern.rennecke@superh.com>
1999
2000 * expmed.c (store_bit_field): Use int_mode_for_mode to find
2001 corresponding mode of non-integer mode, unless it is VOIDmode.
2002
0a2a0a58
KH
20032002-12-02 Kazu Hirata <kazu@cs.umass.edu>
2004
2005 * config/h8300/h8300.md (stm_h8300s_2): New.
2006 (stm_h8300s_3): Likewise.
2007 (stm_h8300s_4): Likewise.
2008 (five define_peephole2): Likewise.
2009
28432d9f
KH
20102002-12-02 Kazu Hirata <kazu@cs.umass.edu>
2011
2012 * ra-build.c: Fix a comment typo.
2013
4977bab6
ZW
2014Sun Dec 1 16:50:47 CET 2002 Jan Hubicka <jh@suse.cz>
2015
2016 * i386.c (ix86_expand_int_movcc): fix
2017 reversed BRANCH_COST test; be curefull about infinite recursion.
2018
e651d484
KH
20192002-12-01 Kazu Hirata <kazu@cs.umass.edu>
2020
2021 * config/h8300/h8300.c (h8300_output_function_prologue):
2022 Remove variable idx.
2023 (h8300_output_function_epilogue): Likewise.
2024
558bb2c4
ZW
20252002-12-01 Zack Weinberg <zack@codesourcery.com>
2026
2027 * config/frv/xm-frv.h: Delete, unnecessary.
2028
96cc06af
KH
20292002-12-01 Kazu Hirata <kazu@cs.umass.edu>
2030
2031 * config/h8300/h8300.md: Add comments for define_peephole2.
2032
c9f8536c
MM
20332002-12-01 Mark Mitchell <mark@codesourcery.com>
2034
2035 * builtin-types.def (BT_SIZE): Use size_type_node.
2036 * builtins.c (fold_builtin): Make the builtin strlen returns a
2037 size_t, not a sizetype.
2038 * c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
2039 c_size_type_node.
2040 (c_alignof_expr): Likewise.
2041 (c_common_nodes_and_builtins): Likewise.
2042 * c-common.h (CTI_C_SIZE_TYPE): Remove.
2043 (c_size_type_node): Likewise.
2044 * c-format.c (T_ST): Use size_type_node, not c_size_type_node.
2045 * tree.h (TI_SIZE_TYPE): New enumeral.
2046 (size_type_node): Likewise.
4977bab6
ZW
2047
20482002-11-30 Zack Weinberg <zack@codesourcery.com>
2049
2050 * configure.in: Don't put ${tm_file} into host_xm_file,
2051 build_xm_file, or xm_file. Do put tm-preds.h into tm_p_file.
2052 Take location of tm-preds.h into account when calculating
2053 tm_p_file_list.
2054 * configure: Regenerate.
2055 * mkconfig.sh: No need for separate TM_DEFINES and XM_DEFINES
2056 arguments. Do not provide rtx, rtvec, tree, or GTY here.
2057 Remove special case code for tm_p.h and *config.h; add new
2058 special case code for tm.h and tconfig.h. Clean up a bit.
2059
2060 * Makefile.in (tm_file, tm_file_list): New variables set from
2061 @-substitutions.
2062 (GCONFIG_H): Deleted.
2063 (GTM_H, TM_H): New.
2064 (CONFIG_H): Is now just config.h $(host_xm_file_list).
2065 (TM_P_H): Move up with the other mkconfig.sh-generated
2066 headers; don't mention tm-preds.h explicitly.
2067 (tm.h, cs-tm.h): New rule.
2068 (cs-config.h, cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): Adjust
2069 invocations of mkconfig.sh for changes to that program.
2070 (mostlyclean): Delete print-rtl1.c.
2071 (clean): Delete tm.h.
2072 Update dependencies for the files listed below.
2073
2074 * mklibgcc.in: Add 'coretypes.h $(TM_H)' to libgcc2_c_dep.
2075
2076 * coretypes.h: New file.
2077 * system.h: #define malloc to xmalloc and realloc to xrealloc
2078 when FLEX_SCANNER or YYBISON is defined, independent of the
2079 value of GCC_VERSION.
2080 * alias.c, attribs.c, bb-reorder.c, bitmap.c, builtins.c,
2081 c-aux-info.c, c-common.c, c-convert.c, c-decl.c, c-dump.c,
2082 c-errors.c, c-format.c, c-lang.c, c-lex.c, c-objc-common.c,
2083 c-opts.c, c-parse.in, c-pragma.c, c-pretty-print.c,
2084 c-semantics.c, c-typeck.c, caller-save.c, calls.c, cfg.c,
2085 cfganal.c, cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c,
2086 cfgrtl.c, collect2.c, combine.c, conflict.c, convert.c,
2087 cppdefault.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
2088 cppinit.c, cpplex.c, cpplib.c, cppmacro.c, cppmain.c,
2089 cppspec.c, cpptrad.c, crtstuff.c, cse.c, cselib.c, dbxout.c,
2090 debug.c, df.c, diagnostic.c, doloop.c, dominance.c,
2091 dummy-conditions.c, dwarf2asm.c, dwarf2out.c, dwarfout.c,
2092 emit-rtl.c, errors.c, et-forest.c, except.c, explow.c,
2093 expmed.c, expr.c, final.c, fix-header.c, flow.c, fold-const.c,
2094 function.c, gcc.c, gccspec.c, gcov-dump.c, gcov-iov.c, gcov.c,
2095 gcse.c, gen-protos.c, genattr.c, genattrtab.c, genautomata.c,
2096 gencheck.c, gencodes.c, genconditions.c, genconfig.c,
2097 genconstants.c, genemit.c, genextract.c, genflags.c,
2098 gengenrtl.c, gengtype-lex.l, gengtype-yacc.y, gengtype.c,
2099 genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
2100 gensupport.c, ggc-common.c, ggc-none.c, ggc-page.c,
2101 ggc-simple.c, global.c, graph.c, haifa-sched.c, hashtable.c,
2102 hooks.c, ifcvt.c, integrate.c, intl.c, jump.c, langhooks.c,
2103 lcm.c, libgcc2.c, line-map.c, lists.c, local-alloc.c, loop.c,
2104 main.c, mbchar.c, mips-tdump.c, mips-tfile.c, mkdeps.c,
2105 optabs.c, params.c, predict.c, prefix.c, print-rtl.c,
2106 print-tree.c, profile.c, protoize.c, ra-build.c,
2107 ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, read-rtl.c,
2108 real.c, recog.c, reg-stack.c, regclass.c, regmove.c,
2109 regrename.c, reload.c, reload1.c, reorg.c, resource.c,
2110 rtl-error.c, rtl.c, rtlanal.c, sbitmap.c, scan-decls.c,
2111 scan.c, sched-deps.c, sched-ebb.c, sched-rgn.c, sched-vis.c,
2112 sdbout.c, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c,
2113 ssa.c, stmt.c, stor-layout.c, stringpool.c, timevar.c,
2114 tlink.c, toplev.c, tracer.c, tree-dump.c, tree-inline.c,
2115 tree.c, unroll.c, varasm.c, varray.c, varray.h, vmsdbgout.c,
2116 xcoffout.c, config/darwin-c.c, config/darwin.c,
2117 config/fp-bit.c, config/alpha/alpha.c, config/alpha/vms-cc.c,
2118 config/alpha/vms-ld.c, config/arc/arc.c, config/arm/arm.c,
2119 config/arm/pe.c, config/avr/avr.c, config/c4x/c4x-c.c,
2120 config/c4x/c4x.c, config/cris/cris.c, config/d30v/d30v.c,
2121 config/dsp16xx/dsp16xx.c, config/fr30/fr30.c,
2122 config/frv/frv.c, config/h8300/h8300.c, config/i370/i370-c.c,
2123 config/i370/i370.c, config/i386/i386.c, config/i386/winnt.c,
2124 config/i960/i960-c.c, config/i960/i960.c,
2125 config/ia64/ia64-c.c, config/ia64/ia64.c, config/ip2k/ip2k.c,
2126 config/m32r/m32r.c, config/m68hc11/m68hc11.c,
2127 config/m68k/m68k.c, config/m88k/m88k.c, config/mcore/mcore.c,
2128 config/mips/irix6-libc-compat.c, config/mips/mips.c,
2129 config/mmix/mmix.c, config/mn10200/mn10200.c,
2130 config/mn10300/mn10300.c, config/ns32k/ns32k.c,
2131 config/pa/pa.c, config/pdp11/pdp11.c, config/romp/romp.c,
2132 config/rs6000/rs6000-c.c, config/rs6000/rs6000.c,
2133 config/s390/s390.c, config/sh/sh.c, config/sparc/gmon-sol2.c,
2134 config/sparc/sparc.c, config/stormy16/stormy16.c,
2135 config/v850/v850-c.c, config/v850/v850.c, config/vax/vax.c,
2136 config/xtensa/xtensa.c, objc/objc-act.c, objc/objc-lang.c:
2137 Include coretypes.h and tm.h.
2138
2139 * genattrtab.c, genconditions.c, genemit.c, genextract.c,
2140 gengenrtl.c, gengtype.c, genopinit.c, genoutput.c, genpeep.c,
2141 genrecog.c: Include coretypes.h and tm.h from the file
2142 generated by this program.
2143
2144 * unwind-dw2-fde-darwin.c, unwind-dw2-fde-glibc.c,
2145 unwind-dw2-fde.c, unwind-dw2.c, unwind-sjlj.c: Include
2146 coretypes.h and tm.h, and tsystem.h when not already included.
2147 No need to include stddef.h nor stdlib.h.
2148
2149 * fixinc/fixlib.h: Include coretypes.h and tm.h. Do not
2150 include auto-host.h or ansidecl.h/
2151 * fixinc/server.h: Do not include stdio.h, unistd.h, or fixlib.h.
2152 * fixinc/procopen.c: Include server.h after fixlib.h. Do not
2153 include auto-host.h, ansidecl.h, or system.h.
2154 * fixinc/server.c: Likewise. Also, do not include signal.h,
2155 and do not redefine volatile.
2156
2157Sat Nov 30 17:16:46 CET 2002 Jan Hubicka <jh@suse.cz>
2158
2159 * i386.md (movdf_integer): Always enable in 64bit.
2160 (movdf_nointeger): Always disable in 64bit.
2161
f6318a2b
JDA
21622002-11-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
2163
2164 * cfg.c (dump_flow_info): Use max_reg_num () to determine the largest
2165 pseudo register number plus 1.
2166
4977bab6
ZW
2167Fri Nov 29 20:10:56 2002 J"orn Rennecke <joern.rennecke@superh.com>
2168
2169 * expmed.c (store_bit_field): Use int_mode_for_mode to find
2170 corresponding mode of non-integer mode, unless it is VOIDmode.
2171
2402645b
HPN
21722002-11-29 Hans-Peter Nilsson <hp@bitrange.com>
2173
2174 * cpplib.c (_cpp_test_assertion): Default *value to 0.
2175
2176 * cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
2177
8ef34c0d
UW
21782002-11-29 Ulrich Weigand <uweigand@de.ibm.com>
2179
2180 * config/s390/t-crtstuff: New target makefile fragment.
2181 * config.gcc [s390-*-linux, s390x-*-linux]: Use it.
2182
b8bbda91
KH
21832002-11-29 Kazu Hirata <kazu@cs.umass.edu>
2184
2185 * config/h8300/h8300.md (movsi_h8300hs): Change the order of
2186 alternatives to correct the length when the memory operand is
2187 either pre_dec or post_inc.
2188
d23dff51
KH
21892002-11-29 Kazu Hirata <kazu@cs.umass.edu>
2190
2191 * config/h8300/h8300.md (an anonymous pattern): Give an
2192 internal name *tst_extzv_bitqi_1_n.
2193 Accept bit_operand instead of bit_memory_operand.
2194 Do not accept bit tests with the MSB.
2195 (*tst_extzv_memqi_1_n): New.
2196
4977bab6
ZW
2197Thu Nov 28 23:56:24 CET 2002 Jan Hubicka <jh@suse.cz>
2198
2199 * i386.c (ix86_expand_int_movcc): Add copy_rtx to avoid invalid RTX
2200 sharing when operand is SUBREG.
2201
2202Thu Nov 28 08:57:26 CET 2002 Jan Hubicka <jh@suse.cz>
2203
2204 * athlon.md (athlon-decodev): New reservation unit.
2205 (athlon-direct0): New reservation.
2206 (athlon-vector): New use athlon-decodev.
2207 (athlon-double, athlon-direct): Better model.
2208 (athlon_imul_k8): Use athlon-direct0.
2209 (athlon_movlpd_load): New insn reservation.
2210
3f7211f1
KH
22112002-11-28 Kazu Hirata <kazu@cs.umass.edu>
2212
2213 * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
2214 Fix a comment typo.
2215 (h8300_tiny_constant_address_p): Likewise.
2216
fcb204ce
MM
22172002-11-28 Michael Matz <matz@suse.de>
2218
2219 * doc/passes.texi: Mention the other register allocator.
2220
7957fde4
KH
22212002-11-28 Kazu Hirata <kazu@cs.umass.edu>
2222
2223 * config/h8300/h8300.md (6 new peephole2 patterns): New.
2224
17c04c5e
JJ
22252002-11-28 Jakub Jelinek <jakub@redhat.com>
2226
2227 * config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff.
2228 * config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
2229 * config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define.
2230
73cc75e9
KH
22312002-11-28 Kazu Hirata <kazu@cs.umass.edu>
2232
2233 * config/h8300/h8300.c (h8300_and_costs): New.
2234 * config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs.
2235 * config/h8300/h8300-protos.h: Add a prototype for
2236 h8300_and_costs.
2237
4977bab6
ZW
2238Wed Nov 27 20:34:13 CET 2002 Jan Hubicka <jh@suse.cz>
2239
2240 * i386.c (x86_sse_partial_regs_for_cvtsd2ss): New.
2241 * i386.h (x86_sse_partial_regs_for_cvtsd2ss): Declare.
2242 (TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS): New macro.
2243 * i386.md (truncdfsf patterns and splitters): Use
2244 TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS
2245
0dbc3651
ZW
22462002-11-27 Zack Weinberg <zack@codesourcery.com>
2247
2248 * config/rs6000/rs6000.c (altivec_init_builtins): Make the
2249 pointer argument in the prototypes of the following builtins
2250 be (const TYPE *) rather than (TYPE *):
2251 + __builtin_altivec_ld_internal_4sf
2252 + __builtin_altivec_ld_internal_4si
2253 + __builtin_altivec_ld_internal_8hi
2254 + __builtin_altivec_ld_internal_16qi
2255 + __builtin_altivec_lvsl
2256 + __builtin_altivec_lvsr
2257 + __builtin_altivec_lvebx
2258 + __builtin_altivec_lvehx
2259 + __builtin_altivec_lvewx
2260 + __builtin_altivec_lvxl
2261 + __builtin_altivec_lvx
2262 + __builtin_altivec_dst
2263 + __builtin_altivec_dstt
2264 + __builtin_altivec_dstst
2265 + __builtin_altivec_dststt
2266
fe3f9515
KG
22672002-11-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2268
2269 * except.c (default_exception_section): Move variable into the
2270 scope where it is used.
2271
4e85eada
KW
22722002-11-27 Krister Walfridsson <cato@df.lth.se>
2273
2274 * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for
2275 correct version.
2276
f248423a
KH
22772002-11-27 Kazu Hirata <kazu@cs.umass.edu>
2278
2279 * config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses.
2280
ae557002
KH
22812002-11-27 Kazu Hirata <kazu@cs.umass.edu>
2282
2283 * config/h8300/h8300.c (h8300_shift_costs): New.
2284 * config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs.
2285 * config/h8300/h8300-protos.h: Add a prototype for
2286 h8300_shift_costs.
2287
c9b93e1a
JW
22882002-11-27 Jim Wilson <wilson@redhat.com>
2289
0dbc3651
ZW
2290 * config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands
2291 in output template.
c9b93e1a 2292
249e6b63
CH
22932002-11-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
2294
2295 * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define.
2296 * config/i386/winnt.c (i386_pe_dllexport_name_p): Use
2297 DLL_IMPORT_EXPORT_PREFIX, not '@'.
2298 (i386_pe_dllimport_name_p): Likewise.
2299 (i386_pe_mark_dllexport): Likewise.
2300 (i386_pe_mark_dllimport): Likewise.
2301 (i386_pe_encode_section_info): Likewise.
2302 (i386_pe_strip_name_encoding): Likewise.
2303
5a5c00af
RH
23042002-11-27 Richard Henderson <rth@redhat.com>
2305
2306 * mkmap-symver.awk (BEGIN): Set sawsymbol false.
2307 (nm && NF == 3): Set sawsymbol true.
2308 (END): Exit if no symbols seen.
2309 (output): Fix map syntax error if no globals for the version.
2310
1dc46545
JH
2311Wed Nov 27 14:45:46 CET 2002 Jan Hubicka <jh@suse.cz>
2312
2313 * builtins.def (DEF_C99_BUILTIN): Fix.
2314
4977bab6
ZW
23152002-11-26 Kaz Kojima <kkojima@gcc.gnu.org>
2316
2317 * config/sh/lib1funcs.asm (FUNC, ENDFUNC0, ENDFUNC): New macros.
2318 (all): Add .size and .type information.
2319
2320Tue Nov 26 22:43:50 CET 2002 Jan Hubicka <jh@suse.cz>
2321
2322 * i386.c (ix86_expand_int_movcc): Do not emit lea for short mode on
2323 partial_reg_stall target.
2324
2325Tue Nov 26 22:27:47 CET 2002 Jan Hubicka <jh@suse.cz>
2326
2327 * i386.md (movhicc): Allow general operand.
2328 (movqicc): New expander.
2329 (movqicc_noc): New pattern.
2330 * i386.c (ix86_expand_carry_flag_compare): New function.
2331 (ix86_expand_int_movcc): Optimize harder using sbb; support more
2332 HImode conversion; support QImode conditional moves
2333
2334Tue Nov 26 16:30:59 CET 2002 Jan Hubicka <jh@suse.cz>
2335
2336 * i386.c (FAST_PROLOGUE_INSN_COUNT): Set to 20.
2337 (ix86_expand_prologue): Multiply the count by amount of registers to be
2338 pushed.
2339
2340Tue Nov 26 15:55:27 CET 2002 Jan Hubicka <jh@suse.cz>
2341
2342 * i386.c (override_options): Error about wrong -mcpu on x86-64
2343 compilation.
2344
23452002-11-26 NIIBE Yutaka <gniibe@m17n.org>
2346
2347 * config/sh/linux.h (FUNCTION_PROFILER): Implemented.
2348
2349Tue Nov 26 00:14:20 CET 2002 Jan Hubicka <jh@suse.cz>
2350
2351 * i386-protos.h (x86_extended_QIreg_mentioned_p,
2352 x86_extended_reg_mentioned_p): Declare.
2353 * i386.c (extended_reg_mentioned_1): New static function.
2354 (x86_extended_QIreg_mentioned_p,
2355 x86_extended_reg_mentioned_p): New global functions.
2356 * i386.h (REX_SSE_REGNO_P): New macro.
2357 * i386.md (prefix_rex): New attribute.
2358 (length attribute): Add rex.
2359
5154b05d
AH
23602002-11-26 Andrew Haley <aph@redhat.com>
2361
2362 * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename
2363 from_Unwind_Find_Enclosing_Function.
2364 * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise.
2365 * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise.
2366 * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from
2367 _Unwind_Find_Enclosing_Function, export @@GCC_3.3.
2368 * unwind.h (_Unwind_FindEnclosingFunction): Add.
0dbc3651 2369
0f942cae
HP
23702002-11-26 Hartmut Penner <hpenner@de.ibm.com>
2371
0dbc3651
ZW
2372 * config/s390/s390.c (390_output_constant_pool): Set alignment
2373 before label in 64 bit mode, behind otherwise.
0f942cae 2374
25fdb4dc
RH
23752002-11-26 Richard Henderson <rth@redhat.com>
2376
2377 * c-common.c (handle_visibility_attribute): Accept "default".
2378 * tree.h (enum symbol_visibility): New.
2379 (decl_visibility): Declare.
2380 * target.h (gcc_target.visibility): Take visibility arg as integer.
2381 * varasm.c (default_assemble_visibility): Likewise.
2382 (decl_visibility): New.
2383 (maybe_assemble_visibility): Use it.
2384 * output.h (default_assemble_visibility): Update prototype.
2385 * config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
2386 visibility arg as integer.
d5c4db17 2387 * doc/extend.texi: Document default visibility.
25fdb4dc 2388
920e86b8
KH
23892002-11-26 Kazu Hirata <kazu@cs.umass.edu>
2390
2391 * config/h8300/h8300.c: Adjust spacing.
2392 * config/h8300/h8300.h: Likewise.
2393
7b1bd3c5
RH
23942002-11-26 Richard Henderson <rth@redhat.com>
2395
2396 * hooks.c (hook_bool_void_false, hook_void_tree_int,
2397 hook_void_FILEptr_constcharptr): Rename so that the return
2398 type is first.
2399 (hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr,
2400 hook_bool_tree_false): New.
2401 * hooks.h: Update.
2402 * langhooks-def.h: Update for renames.
2403 * target-def.h: Likewise.
2404 * tree.c (default_comp_type_attributes,
0dbc3651 2405 default_set_default_type_attributes, default_insert_attributes,
7b1bd3c5
RH
2406 default_function_attribute_inlinable_p,
2407 default_ms_bitfield_layout_p): Remove.
2408 * tree.h: Update.
2409
44571d6e
JDA
24102002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
2411
2412 * pa-protos.h (function_value): New prototype.
2413 * pa.c (function_value): Use a PARALLEL to return small aggregates on
2414 TARGET_64BIT.
2415 * pa.h (FUNCTION_VALUE): Use function_value.
2416 * pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
2417 call_value_internal_reg, sibcall_value_internal_symref,
2418 sibcall_value_internal_symref_64bit): Remove =rf constraint on return
2419 value.
2420
084a1106
JDA
24212002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
2422
2423 * expr.c (gen_group_rtx, emit_group_move): New functions.
2424 * expr.h (gen_group_rtx, emit_group_move): Prototype.
2425 * function.c (expand_function_start): Use gen_group_rtx to create a
2426 PARALLEL rtx to hold the return value when the real return rtx is a
2427 PARALLEL.
2428 (expand_function_end): Use emit_group_move to move the return value
2429 from a PARALLEL to the real return registers.
2430 * rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
2431 in PARALLELs.
2432
5d2fe493
JT
24332002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
2434
2435 * config/t-libc-ok: Fix typo.
2436
13c22933
JJ
24372002-11-26 Jakub Jelinek <jakub@redhat.com>
2438
2439 * configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back
2440 before AC_PROG_CC.
2441 * configure: Rebuilt.
2442
5326cd3d
NS
24432002-11-26 Nathan Sidwell <nathan@codesourcery.com>
2444
2445 * c-decl.c: (start_struct): Commonize flag setting.
2446
647d340d
JT
24472002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
2448
2449 * config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New.
2450 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use
0dbc3651 2451 RS6000_CPU_CPP_ENDIAN_BUILTINS.
647d340d
JT
2452 * config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine.
2453
29742ba4
HP
24542002-11-26 Hartmut Penner <hpenner@de.ibm.com>
2455
2456 * config/s390/s390.md (literal_pool_64, literal_pool_31 ): New
2457 insns.
2458 * config/s390/s390.c (struct machine_function): Introduction of
2459 struct machine_function.
0412a4d4
HP
2460 (s390_output_symbolic_const): Use of cfun.
2461 (s390_optimize_prolog): Likewise.
2462 (s390_fixup_clobbered_return_reg): Likewise.
2463 (s390_frame_info): Likewise.
2464 (s390_emit_prologue, s390_emit_epilogue): Likewise.
2465 (s390_init_machine_status): New function.
2466 (override_options): call s390_init_machine_status.
0dbc3651 2467 * config/s390/s390-protos.h (s390_output_constant_pool): Changed
29742ba4 2468 prototype.
0dbc3651 2469
f4111593
JJ
24702002-11-26 Jakub Jelinek <jakub@redhat.com>
2471
2472 * varasm.c (output_constant_pool): For pool constants in mergeable
2473 section ensure each constant is padded to multiple of entity size.
2474
96d0f4dc
JJ
24752002-11-26 Jakub Jelinek <jakub@redhat.com>
2476
2477 * varasm.c (default_exception_section): Move to...
2478 * except.c (default_exception_section): ... here. Make
2479 .gcc_except_table read-only if it is not expected to have any
2480 dynamic relocations and linker handles it.
2481 * dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
2482 if it is not expected to have any dynamic relocations and linker
2483 handles it.
2484 * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
2485 when linking read-only and read-write sections together.
2486 * configure, config.in: Rebuilt.
2487 * crtstuff.c (EH_FRAME_SECTION_CONST): Define.
2488 (__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
2489
4977bab6
ZW
2490Mon Nov 25 18:32:37 CET 2002 Jan Hubicka <jh@suse.cz>
2491
2492 * i386.md (pushsf_rex64): Fix typo.
2493
020a7b12
AH
24942002-11-25 Aldy Hernandez <aldyh@redhat.com>
2495
249e6b63
CH
2496 * config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into
2497 new function.
2498 (__ev_create_ufix32_fs): Same.
2499 (__ev_get_sfix32_fs_internal): New.
2500 (__ev_get_sfix32_fs): Define to use function.
2501 (__ev_get_ufix32_fs_internal): New.
2502 (__ev_get_ufix32_fs): Define to use function.
2503 (__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs.
2504 (__ev_get_lower_ufix32_fs): Same.
2505 (__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs.
2506 (__ev_get_lower_sfix32_fs): Same.
2507 (__ev_set_sfix32_fs_internal): New.
2508 (__ev_set_ufix32_fs_internal): New.
2509 (__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal.
2510 (__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal.
2511 (__ev_set_upper_sfix32_fs): Call function.
2512 (__ev_set_lower_sfix32_fs): Same.
2513 (__ev_set_upper_ufix32_fs): Same.
2514 (__ev_set_lower_ufix32_fs): Same.
020a7b12 2515
d2dff06b
DR
25162002-11-25 Douglas B Rupp <rupp@gnat.com>
2517
2518 * gcc.c (do_spec_1): Reset delete_this_arg to zero.
2519
32f0ffb3
JT
25202002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
2521
2522 * config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1.
2523 * config/interix.h (HANDLE_SYSV_PRAGMA): Likewise.
2524 * config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2525 * config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise.
2526 * config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise.
2527 * config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
2528 * config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise.
2529 * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise.
2530 * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
2531 * config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2532 * config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise.
2533 * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise.
2534 * config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise.
2535 * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise.
2536 * config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise.
2537 * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise.
2538 * config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise.
2539 * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise.
2540 * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise.
2541 * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise.
2542 * config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2543 * config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise.
2544 * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise.
2545 * config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before
2546 defining.
2547 * config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise.
2548 * config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise.
2549
160f9a4c
DP
25502002-11-25 Dave Pitts <dpitts@cozx.com>
2551
2552 * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
2553
3c0f5389
KH
25542002-11-25 Kazu Hirata <kazu@cs.umass.edu>
2555
2556 * config/h8300/h8300.md (an anonymous pattern): New.
2557
83bbd9b6
RH
25582002-11-25 Richard Henderson <rth@redhat.com>
2559
2560 * alias.c (find_base_value): Use new_reg_base_value if it's live.
2561 (copying_arguments): Make boolean.
2562
7c64a860
JT
25632002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
2564
2565 * gcc.c (static_spec_functions): Add if-exists-else spec
2566 function.
2567 (if_exists_else_spec_function): New function.
2568 * doc/invoke.texi: Document the if-exists-else spec function.
2569
2570 * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
2571 "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
2572
a4967b8d
JT
25732002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
2574
2575 * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
2576 "netbsd.h netbsd-elf.h" in tm_file. Set tmake_file to
2577 "${tmake_file} rs6000/t-netbsd".
2578 * config/rs6000/netbsd.h: Rewrite.
2579 * config/rs6000/t-netbsd: New file.
2580
a91dce31
KH
25812002-11-25 Kazu Hirata <kazu@cs.umass.edu>
2582
2583 * config/h8300/h8300.md (an anonymous pattern): Relax the
2584 condition for the pattern.
2585
fe29a4ea
AH
25862002-11-25 Aldy Hernandez <aldyh@redhat.com>
2587
2588 * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
2589 evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
2590 evmwlssfanw, evmwlsmfanw.
2591
2592 * config/rs6000/rs6000.c (bdesc_2arg): Same.
2593
2594 * config/rs6000/spe.md: Same for patterns.
2595
b77f3744
CE
25962002-11-25 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
2597
2598 PR c/8639
2599 * fold-const.c (extract_muldiv): Don't propagate division unless
2600 both arguments are multiples of C.
2601
5dafd282
AH
26022002-11-25 Andrew Haley <aph@redhat.com>
2603
249e6b63
CH
2604 * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
2605 * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
2606 * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
2607 * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
5dafd282 2608
4977bab6
ZW
2609Sun Nov 24 10:38:04 CET 2002 Jan Hubicka <jh@suse.cz>
2610
2611 * i386.c (x86_use_ffreep): New global variable.
2612 * i386.h (x86_use_frfeep): Declare
2613 (TARGET_USE_FFREEP): New macro
2614 * i386.md (movs?f*): Use freep when asked for.
2615 (push?f): Remove dead code.
2616
92d4b8a0
KH
26172002-11-24 Kazu Hirata <kazu@cs.umass.edu>
2618
2619 * config/h8300/h8300.c (h8300_init_once): Fix a typo in the
2620 target help message.
2621
1169f9e0
JT
26222002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
2623
2624 * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
2625 extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
2626 crtbeginT.o".
2627 (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
2628 (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
2629 to "" for a.out configurations.
2630 * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
2631
adde288a
JT
26322002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
2633
2634 * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
0dbc3651 2635 NETBSD_CPP_SPEC directly.
adde288a
JT
2636 (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec. Add
2637 netbsd_endfile_spec.
2638 (ENDFILE_SPEC): Use %(netbsd_endfile_spec).
2639
1ebe8c03
JT
26402002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
2641
2642 * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
2643 NETBSD_STARTFILE_SPEC.
2644 (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
2645 (ENDFILE_SPEC): Likewise.
2646 * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
2647
bdabc150
AS
26482002-11-24 Andreas Schwab <schwab@suse.de>
2649
523cb499
AS
2650 * Makefile.in (install-driver): Remove versioned link before
2651 trying to create it.
2652
bdabc150
AS
2653 * config/m68k/m68k.c: Fix typo in last change defining
2654 TARGET_ASM_CAN_OUTPUT_MI_THUNK.
2655
4977bab6
ZW
26562002-11-23 H.J. Lu <hjl@gnu.org>
2657
2658 * aclocal.m4: Include ../config/accross.m4.
2659 (gcc_AC_COMPILE_CHECK_SIZEOF): Removed.
2660 (gcc_AC_C_COMPILE_ENDIAN): Removed.
2661 (gcc_AC_C_FLOAT_FORMAT): Check $ac_cv_c_bigendian
2662 instead of $ac_cv_c_compile_endian.
2663
2664 * configure.in: Replace gcc_AC_COMPILE_CHECK_SIZEOF with
2665 AC_COMPILE_CHECK_SIZEOF.
2666 Replace gcc_AC_C_COMPILE_ENDIAN with AC_C_BIGENDIAN_CROSS.
2667 * configure: Rebuild.
2668
56b8e164
KH
26692002-11-23 Kazu Hirata <kazu@cs.umass.edu>
2670
2671 * config/h8300/h8300.c (print_operand): Update the use of
2672 h8300_tiny_constant_address_p.
2673 (h8300_adjust_insn_length): Likewise.
2674 (h8300_tiny_constant_address_p): Check if the given rtx is a
2675 variable declared with __attribute__ ((tiny_data)).
2676
2bb74773
DJ
26772002-11-22 Dale Johannesen <dalej@apple.com>
2678
249e6b63 2679 * toplev.c (rest_of_compilation): Fix comments.
2bb74773 2680
199cbacc
GK
26812002-11-22 Geoffrey Keating <geoffk@apple.com>
2682
2683 * aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
2684 allow mmap from /dev/zero. Don't make decisions for the host
2685 based on presence or absence of /dev/zero on the build machine.
2686 (ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
2687 (AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
2688 * configure: Regenerate.
2689
42766f8d
DJ
26902002-11-22 Daniel Jacobowitz <drow@mvista.com>
2691
2692 * gcc.c (make_relative_prefix, split_directories)
2693 (free_split_directories): Removed.
2694
80486e06
DJ
26952002-11-22 Daniel Jacobowitz <drow@mvista.com>
2696
2697 * configure.in: Set insn=nop for DWARF-2 tests on ARM.
2698 * configure: Regenerated.
2699
41c3eb5d
KH
27002002-11-22 Kazu Hirata <kazu@cs.umass.edu>
2701
2702 * config/h8300/h8300.c (compute_a_shift_length): Fix the insn
2703 length computation when xor.l is output.
2704
4977bab6
ZW
27052002-11-21 Douglas B Rupp <rupp@gnat.com>
2706
2707 * alpha.md (movstrdi, clrstrdi): New VMS patterns.
2708 (call_vms_1, call_value_vms_1): Cleanup syntax.
2709
2710Thu Nov 21 19:20:27 CET 2002 Jan Hubicka <jh@suse.cz>
2711
2712 * athlon.md (define_atuomaton): Add athlon_load.
2713 (athlon-double): New reservation.
2714 (athlon-ieu0): New CPU unit.
2715 (athlon-load?): Use athlon_load automaton.
2716 (*_k8 reservations): New.
2717 (other insn revervations): Activate for K8.
2718
2719Thu Nov 21 15:07:42 CET 2002 Jan Hubicka <jh@suse.cz>
2720
2721 * cfgrtl.c (verify_flow_info): Accept EDGE_CAN_FALLTHRU flag.
2722
57de2c8f
JW
27232002-11-21 Jim Wilson <wilson@redhat.com>
2724
2725 * config/rs6000/rs6000.c (function_arg): Set inner mode of SPE
2726 vectors to SI.
2727
58db834b
BW
27282002-11-21 Bob Wilson <bob.wilson@acm.org>
2729
2730 * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare.
2731 * config/xtensa/xtensa.c (struct machine_function): Add
2732 incoming_a7_copied flag.
2733 (xtensa_copy_incoming_a7): Define.
2734 (xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7.
2735 * config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto.
2736
c05dbe81
JH
2737Thu Nov 21 23:52:04 CET 2002 Jan Hubicka <jH@suse.cz>
2738
2739 * i386-protos.h (x86_64_sign_extended_value): Fix prototype.
2740 * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
0dbc3651 2741 x86_64_nonmemory_operand, x86_64_movabs_operand,
c05dbe81
JH
2742 x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
2743 ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
2744 (local_symbolic_operand): Do not care the 64bit limits.
2745 (x86_64_sign_extended_value): Remove allow_rip support.
2746 (legitimate_pic_address_disp_p): Handle all cases allowed
2747 with RIP addressing.
2748 (legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
2749 (legitimize_pic_address): Reorganize.
2750 * i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
2751
ff3afb56
JT
27522002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
2753
2754 * config.gcc (arm*-*-netbsdelf*): Enable configuration.
2755 * config/arm/netbsd-elf.h: New file.
2756
57c21a42
JT
27572002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
2758
2759 * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
2760 subtarget_asm_float_spec.
2761 (SUBTARGET_ASM_FLOAT_SPEC): Define, moving the
2762 defaults from...
2763 (ASM_SPEC): ...here. Use subtarget_asm_float_spec.
2764
3d5ee65b
NC
27652002-11-21 Nick Clifton <nickc@redhat.com>
2766
2767 * config/fr30/fr30.md (movsf_constant_store): Move code to
2768 detect 0.0 into fr30.c.
2769 * config/fr30/fr30-protos.h (fr30_const_double_is_zero):
2770 Prototype.
2771 * config/fr30/fr30.c (fr30_const_double_is_zero): New
2772 function. Return true if the rtx is 0.0.
2773
4d938a09
JT
27742002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
2775
2776 * config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL
2777 if -mlittle-endian is specified.
2778
1dda7ee4
RE
27792002-11-21 Richard Earnshaw <rearnsha@arm.com>
2780
2781 PR optimization/2903
2782 * arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1.
2783 (anddi_notsesidi_di): Likewise.
2784
7c143ed2
KH
27852002-11-21 Kazu Hirata <kazu@cs.umass.edu>
2786
2787 * config/h8300/h8300.c (print_operand): Use
2788 h8300_eightbit_constant_address_p and
2789 h8300_tiny_constant_address_p.
2790 (h8300_adjust_insn_length): Likewise.
2791 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove.
2792 (TINY_CONSTANT_ADDRESS_P): Likewise.
2793 (OK_FOR_U): Use eightbit_constant_address_p.
2794
b5798b2a
UW
27952002-11-21 Ulrich Weigand <uweigand@de.ibm.com>
2796
2797 * config/s390/libgcc-libc.ver: Add multilib support.
2798 * config/s390/linux.h (MULTILIB_DEFAULT): Define.
0dbc3651
ZW
2799 * config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
2800 MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC,
b5798b2a
UW
2801 EXTRA_MULTILIB_PARTS): Define.
2802
c231c91e
RE
28032002-11-21 Richard Earnshaw <rearnsha@arm.com>
2804
2805 * arm.c (arm_get_frame_size): A leaf function does not need its
2806 stack padding to an aligned boundary if it has no frame.
2807 (thumb_get_frame_size): Likewise.
2808
4977bab6
ZW
2809Wed Nov 20 22:25:53 CET 2002 Jan Hubicka <jh@suse.cz>
2810
2811 * x86-64.h (MCOUNT_NAME): Fix typo in my previous patch.
2812 (override_options): Likewise.
2813
2814Wed Nov 20 19:07:17 CET 2002 Jan Hubicka <jh@suse.cz>
2815
2816 * config.gcc: Add k8 target alias support
2817 * i386.c (_cost): Declare costs for various variants of divides and
2818 multiplies.
2819 (k8_cost): New.
2820 (m_K8, m_ATHLON_K8): New macros.
2821 (x86_use_leave, x86_push_memory, x86_movx, x86_unroll_strlen,
2822 x86_cmove, x86_3dnow_a, x86_deep_branch, x86_use_fiop,
2823 x86_promote_QImode, x86_sub_esp_?, x86_add_esp_?,
2824 x86_integer_DFmode_moves, x86_partial_reg_dependency,
2825 x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
2826 x86_prologue_using_move, x86_epilogue_using_move,
2827 x86_arch_always_fancy_math_387, x86_sse_partial_regs,
2828 x86_sse_typeless_stores): Set for K8
2829 (override_options): Add k8 support; fix athlon alignment;
2830 complain about non-x86-64 capable CPU being used in x86-64 compilation.
2831 (ix86_issue_rate): Set for K8.
2832 (ix86_adjust_cost, ia32_use_dfa_pipeline_interface,
2833 x86_machine_dependent_reorg): Handle K8 like
2834 * i386.h
2835 (x86_costs): Change mult_init and divide into array.
2836 (TARGET_K8, TARGET_ATHLON): New macros.
2837 (MODE_INDEX): New macro.
2838 (RTX_COST): Use new costs.
2839 (TARGET_CPU_CPP_BUILTINS): Define __k8__ and __tune_k8__.
2840 (TARGET_CPU_DEFAULT_NAMES): Add k8
2841 (TARGET_CPU_DEFAULT_k8): New constant
2842 (enum processor_type): Add PROCESSOR_K8.
2843 * i386.md (cpu attribute): Add k8.
2844
2845 * invoke.texi: Document -march=k8.
2846
2847 * i386.md (type attribute): Add leave
2848 (mode attribute): Remove unknownfp.
2849 (length_immediate, modrm, memory attributes): Handle leave correctly.
2850 (fp comparison patterns): Determine FP mode.
2851 (leave, leave_rex64): Remove special cases.
2852 * ppro.md (ppro_uops, ppro_p2): Add leave
2853 * pentiun.md (pent_pop): Handle leave too.
2854 * k6.md (k6_load): Handle leave.
2855 * athlon.md (athlon_leave, athlon_pop): Fix.
2856 (athlon_decode): Handle leave.
2857
27e58a70
SE
28582002-11-20 Steve Ellcey <sje@cup.hp.com>
2859
2860 * emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type
2861 to component type using GET_MODE_INNER.
2862 * expr.c (emit_move_insn_1): Ditto.
2863 * optabs.c (expand_binop): Ditto.
2864 (expand_unop): Ditto.
2865 (expand_complex_abs): Ditto.
2866
964b104a
DR
28672002-11-20 Douglas B Rupp <rupp@gnat.com>
2868
2869 * hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64).
2870
3d4b192a
DD
28712002-11-20 DJ Delorie <dj@redhat.com>
2872
2873 * config/stormy16/stormy16.c (s16builtins,
2874 xstormy16_init_builtins, xstormy16_expand_builtin): New.
2875 * config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New.
2876
414d23ae
HPN
28772002-11-20 Hans-Peter Nilsson <hp@bitrange.com>
2878
2879 * Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables.
2880 (DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES).
2881 (executing gencheck, genconfigs, genconditions, genflags,
2882 gencodes, genconstants, genemit, genrecog, genopinit, genextract,
2883 genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds,
2884 gengtype, genprotos): Prepend $(RUN_GEN).
2885 * configure.in: Move host compiler tests before --enable-checking
2886 tests.
2887 (--enable-checking=valgrind): New.
2888 * config.in, configure: Regenerate.
2889 * cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2890 Define as empty.
2891 (read_include_file): When doing the mmap+1 trick,
2892 valgrind-annotate the byte after the mmap:ed area as readable.
2893 (purge_cache): Remove above annotation.
2894 * gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend
2895 VALGRIND_PATH -q to each command.
2896
9a0a7d5d
HPN
2897 * ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2898 Define as empty.
2899 (ggc_realloc): Update valgrind annotations.
2900 * ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2901 Define as empty.
c14bc6db 2902 (alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to
9a0a7d5d
HPN
2903 valgrind-annotate memory.
2904
3ba2436a
UW
29052002-11-20 Ulrich Weigand <uweigand@de.ibm.com>
2906
2907 * recog.c (constrain_operands): Prefer exact match over reloadable
2908 EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT.
2909
2910 * reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT
2911 operands in Pmode.
2912
a9b6f1e7 29132002-11-20 Eric Botcazou <ebotcazou@libertysurf.fr>
02a362d9
EB
2914
2915 PR c/8518
2916 * c-decl.c (duplicate_decls): Outline the second definition
2917 of an extern inline function in all cases.
2918
5354730b
RS
29192002-11-20 Richard Sandiford <rsandifo@redhat.com>
2920
2921 * stor-layout.c (place_field): Update rli->offset as well as
2922 rli->bitpos.
2923
5720520f
RS
29242002-11-20 Richard Sandiford <rsandifo@redhat.com>
2925
2926 * sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED.
2927
4392ebd3
RS
29282002-11-20 Richard Sandiford <rsandifo@redhat.com>
2929
2930 * config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions
2931 into a libcall block.
2932 (divsi3): Likewise divsi3_i4_media.
2933
3748bd9e
RS
29342002-11-20 Richard Sandiford <rsandifo@redhat.com>
2935
2936 * global.c (find_reg): Check HARD_REGNO_NREGS before kicking
2937 out another register.
2938
bc02f8d3
JJ
29392002-11-20 Jakub Jelinek <jakub@redhat.com>
2940
2941 * combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
2942 (not just mask) are set in C.
2943
4977bab6
ZW
29442002-11-19 Steven Bosscher <steven.bosscher@usafa.af.mil>
2945
2946 * config/mips/vr.h (DRIVER_SELF_SPECS): Change %{<mgp32} to %<mgp32.
2947
29482002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2949
2950 * profile.c (index_counts_file): Fix obvious mistake.
2951
29522002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2953
2954 * Makefile.in (profile.o): Add hashtab.h dependency.
2955 * gcov-io.h (GCOV_SUMMARY_LENGTH): New.
2956 * profile.c: Include hashtab.h.
2957 (htab_counts_index_hash, htab_counts_index_eq, htab_counts_index_del,
2958 cleanup_counts_index, index_counts_file, struct section_reference,
2959 struct da_index_entry, counts_file_name, counts_file_index): New.
2960 (get_exec_counts, init_branch_prob): Modified.
2961
29622002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
2963
2964 * config.gcc (sh*-*-linux*): Add t-slibgcc-elf-ver and t-linux
2965 to tmake_file. Remove setting gas and gnu_ld here.
2966 * config/sh/libgcc-glibc.ver: New file.
2967 * config/sh/t-linux (EXTRA_MULTILIB_PARTS): Add crtbeginT.o.
2968 (SHLIB_MAPFILES): New.
2969 * config/sh/linux.h (MD_EXEC_PREFIX): Undefine.
2970 (MD_STARTFILE_PREFIX): Likewise.
2971 (HANDLE_PRAGMA_PACK_PACK_PUSH_POP): Define.
2972 (DWARF2_UNWIND_INFO): Redefine.
2973 (ASM_PREFERRED_EH_DATA_FORMAT): Define.
2974 (LINK_EH_SPEC): Redefine.
2975 (MD_FALLBACK_FRAME_STATE_FOR): Define except for SH-media.
2976 (SH_FALLBACK_FRAME_FLOAT_STATE): Define.
2977 (SH_DWARF_FRAME_GP0, SH_DWARF_FRAME_FP0, SH_DWARF_FRAME_XD0,
2978 SH_DWARF_FRAME_BT0, SH_DWARF_FRAME_PR, SH_DWARF_FRAME_PR_MEDIA,
2979 SH_DWARF_FRAME_GBR, SH_DWARF_FRAME_MACH, SH_DWARF_FRAME_MACL,
2980 SH_DWARF_FRAME_PC, SH_DWARF_FRAME_SR, SH_DWARF_FRAME_FPUL,
2981 SH_DWARF_FRAME_FPSCR): Likewise.
2982 * config/sh/sh-protos.h (sh_set_return_address): Declare.
2983 * config/sh/sh.c (calc_live_regs): Count EH_RETURN_DATA_REGNO
2984 registers if the current function calls EH return.
2985 (sh_expand_epilogue): Handle EH stack adjustments.
2986 (sh_set_return_address): New function.
2987 * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
2988 Don't abort even if the number is mapped to -1.
2989 (EH_RETURN_DATA_REGNO): Define.
2990 (EH_RETURN_STACKADJ_RTX): Define.
2991 * config/sh/sh.md (UNSPEC_EH_RETURN): New.
2992 (eh_return): New pattern.
2993 (eh_set_ra_di, eh_set_ra_si): Likewise.
2994 Add splitter to perform EH return after reload.
2995
2996Tue Nov 19 12:52:07 2002 J"orn Rennecke <joern.rennecke@superh.com>
2997
2998 * stor-layout.c (excess_unit_span): New function.
2999 (place_field): Use it.
3000
30012002-11-19 Andreas Schwab <schwab@suse.de>
3002
3003 * unwind.h (_Unwind_GetTextRelBase): Revert last change, this is
3004 not valid in C++.
3005
30062002-11-19 Nathanael Nerode <neroden@gcc.gnu.org>
3007
3008 * configure.in, Makefile.in: Correct BUILD/HOST confusion.
3009 * configure: Regenerate.
3010
3011Tue Nov 19 00:11:44 CET 2002 Jan Hubicka <jh@suse.cz>
3012
3013 * convert.c (strip_float_extensions): New function.
3014 (convert_to_real): Optimize some cases.
3015
3bdcef4d
AJ
30162002-11-19 Andreas Jaeger <aj@suse.de>
3017
3018 * loop.c (record_giv): Initialize not_replaceable.
3019 (check_final_value): Likewise.
3020
ec5b0c68
KH
30212002-11-19 Kazu Hirata <kazu@cs.umass.edu>
3022
3023 * config/h8300/h8300.c (h8300_init_once): Replace 1 with
3024 MASK_H8300S.
3025
30262002-11-19 Vijay L. Khuspe <vijayk1@kpit.com>
39ba95b5
VK
3027
3028 * config/h8300/h8300.c (h8300_init_once): Allow -mn switch
3029 only if -mh or -ms present.
3030 (h8300_eightbit_constant_address_p): Support the normal mode.
3031 (h8300_tiny_constant_address_p): Likewise.
3032 * config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
3033 (POINTER_SIZE): Add 16 bit pointer for the normal mode.
3034 (Pmode): Evaluate to HImode for the normal mode.
3035 (SIZE_TYPE): Evaluate to unsigned int for normal mode.
3036 (PTRDIFF_TYPE): Evaluate to int for the normal mode.
3037 (ASM_WORD_OP): Evaluate to word for the normal mode.
3038 * config/h8300/h8300.md (tablejump_normal_mode): New.
3039 (indirect_jump_normal_mode): New.
3040 * config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
3041 directory.
3042 (MULTILIB_DIRNAMES): Create target dependent directory
3043 'normal'.
249e6b63 3044 (MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
39ba95b5
VK
3045 * doc/invoke.texi (gccoptlist): Describe the new switch -mn.
3046
efcc7037
JH
3047Tue Nov 19 23:50:56 CET 2002 Jan Hubicka <jh@suse.cz>
3048
3049 * i386.md (length_immediate): Do not refer to insn address.
3050 (jcc*, jmp patterns): Compute length explicitly.
3051
30522002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr>
35f1c975
EB
3053
3054 PR c/8588
3055 * optabs.c (expand_binop): Convert CONST_INTs in shift
3056 operations too.
3057
a500466b
RS
30582002-11-19 Roger Sayle <roger@eyesopen.com>
3059
3060 * gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note.
3061
3b161153
KH
30622002-11-19 Kazu Hirata <kazu@cs.umass.edu>
3063
3064 * config/h8300/h8300.md (an anonymous pattern): Relax the
3065 condition to accept the same operands and/or subregs.
3066
85af47b9
DJ
30672002-11-19 Daniel Jacobowitz <drow@mvista.com>
3068
3069 * config/sh/sh.c (gen_shl_and): Revert previous patch.
3070 * config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on
3071 reload_completed.
3072
9675a91e
KH
30732002-11-19 Kazu Hirata <kazu@cs.umass.edu>
3074
3075 * config/h8300/h8300.c (print_operand): Update the use of
3076 EIGHTBIT_CONSTANT_ADDRESS_P.
3077 (h8300_adjust_insn_length): Likewise.
3078 (h8300_eightbit_constant_address_p): Check if the given rtx is
3079 a variable with __attribute__((eightbit_data)).
3080 * config/h8300/h8300.h (OK_FOR_U): Update the use of
3081 EIGHTBIT_CONSTANT_ADDRESS_P.
3082
7b61fa4d
GP
30832002-11-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3084
3085 * doc/contrib.texi (Contributors): Add self as second contact in
3086 addition to Jeff Law.
3087
50aadcbc
AJ
30882002-11-19 Andreas Jaeger <aj@suse.de>
3089
3090 * tree-inline.c: Move prototpyes of find_alloca_call_1 and
3091 find_alloca_call to right place.
3092
dc65cd60
KH
30932002-11-19 Kazu Hirata <kazu@cs.umass.edu>
3094
3095 * cppfiles.c: Fix formatting.
3096
f3226a90
JT
30972002-11-19 Jason Thorpe <thorpej@wasabisystems.com>
3098
3099 * gcc.c (The Specs Language): Document spec functions.
3100 (static_spec_functions, lookup_spec_function)
3101 (eval_spec_function, handle_spec_function)
3102 (if_exists_spec_function, alloc_args): New.
3103 (execute): Abort if processing_spec_function is true.
3104 (do_spec_1): Hand off spec to handle_spec_function if %:
3105 is encountered. If processing_spec_function is true,
3106 end any pending argument when the end of the string is reached.
3107 (main): Use alloc_args to allocate the initial argument vector.
3108 * gcc.h (struct spec_function): New.
3109 (lang_specific_spec_functions): New extern.
3110
3111 * config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
3112 (ENDFILE_SPEC): Add if-exists(crtn%O%s).
3113 * config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
3bdcef4d 3114
f3226a90
JT
3115 * doc/invoke.texi: Document spec functions.
3116
3117 * cppspec.c (lang_specific_spec_functions): New.
3118 * gccspec.c: Likewise.
3119
08c42743
SE
31202002-11-18 Steve Ellcey <sje@cup.hp.com>
3121
3122 * config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
3123 (FIXUNS_TRUNCTFDI2_LIBCALL): New.
3124 (fixunstfsi_libfunc): Change.
3125 (fixunstfdi_libfunc): Change.
3126 (sdiv_optab): Don't zero out SImode handler.
3127 (udiv_optab): Don't zero out SImode handler.
3128 (smod_optab): Don't zero out SImode handler.
3129 (umod_optab): Don't zero out SImode handler.
3130
8128cccf
NB
31312002-11-18 Neil Booth <neil@daikokuya.co.uk>
3132
3133 PR preprocessor/8524
3134 * cpplib.c (run_directive): Remove previous kludge to _Pragma.
3135 Add a new one in its place, which hopefully works.
3136 (skip_rest_of_line): Change test for bottom-of-context-stack.
3137
95199202
JH
3138Mon Nov 18 21:29:03 CET 2002 Jan Hubicka <jh@suse.cz>
3139
3140 * i386.md (addqi_1_slp): Fix output template.
3141 (subqi_1_slp): Fix type.
3142
c986baf6
JH
3143Sun Nov 17 00:01:28 CET 2002 Jan Hubicka <jh@suse.cz>
3144
3145 * calls.c (alloca_call_p): New global function.
3146 * tree.h (alloca_call_p): New.
3147 * tree-inline.c (inlinable_function_p): Do not inline when
3148 function calls alloca.
3149 (find_alloca_call, find_alloca_call_1): New functions.
3150
ac655495
KH
31512002-11-18 Kazu Hirata <kazu@cs.umass.edu>
3152
3153 * config/h8300/h8300.md (*andorqi3): Use bor between bld and
3154 bst. Update the insn length.
3155 (*andorhi3): Likewise.
3156 (*andorsi3): Likewise.
3157
ea4210ef
RS
31582002-11-18 Richard Sandiford <rsandifo@redhat.com>
3159
3160 * config/sh/sh-protos.h (sh_mark_label): Declare.
3161 * config/sh/sh.c (sh_mark_label): New function, taken from
3162 movdi_const, but fixing the case when the address has an addend.
3163 * config/sh/sh.md (movdi_const, movdi_const_32bit): Use it.
3164
3503150c
RS
31652002-11-18 Richard Sandiford <rsandifo@redhat.com>
3166
3167 * config/sh/sh.c (pool_node): New field: part_of_sequence_p.
3168 (add_constant): Set it.
3169 (dump_table): Don't reorder a constant if part_of_sequence_p.
3170 (machine_dependent_reorg): Assume that float constants will
3171 stay in their original order if used as a sequence.
3172
180bde4f
RS
31732002-11-18 Richard Sandiford <rsandifo@redhat.com>
3174
3175 * config/sh/sh.c (calc_live_regs): Update check for PIC liveness
3176 in compact code.
3177
e300c78c
RS
31782002-11-18 Richard Sandiford <rsandifo@redhat.com>
3179
3180 * config/sh/sh.md (initialize_trampoline): Do not force the
3181 trampoline address into R0_REGS here.
3182
4977bab6
ZW
3183Sun Nov 17 14:01:09 CET 2002 Jan Hubicka <jh@suse.cz>
3184
3185 * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
3186 absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
3187 (neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
3188 generate unnecesary subregs.
3189
ec748ec8
KH
31902002-11-17 Kazu Hirata <kazu@cs.umass.edu>
3191
3192 * df.c: Fix formatting.
3193
cf0cec73
KH
31942002-11-17 Kazu Hirata <kazu@cs.umass.edu>
3195
3196 * config/h8300/h8300.md (two anonymous patterns): Fix insn
3197 lengths.
3198
d2b2c7cd
DJ
31992002-11-17 Daniel Jacobowitz <drow@mvista.com>
3200
3201 * sh.c (gen_shl_and): Don't create a zero_extend if the operand
3202 is not an arith_reg_operand.
3203
6ddb1bc1
GS
32042002-11-17 Graham Stott <graham.stott@btinternet.com>
3205
3206 * real.c (real_to_decimal): Fix buffer overrun when buffer size
3207 is smaller than representation.
3208
5ab2f7b7
KH
32092002-11-17 Kazu Hirata <kazu@cs.umass.edu>
3210
3211 * builtins.c: Fix formatting.
3212
4977bab6
ZW
3213Sat Nov 16 16:49:58 CET 2002 Jan Hubicka <jh@suse.cz>
3214
3215 * i386.md (truncdfsf2_1_sse, truncdfsf2_1_sse_nooverlap, truncdfsf2_2,
3216 floats?dff2_i387):
3217 Work around regclass stupidity.
3218 (truncdfsf_2_1_sse splitter): Accept !TARGET_PARTIAL_SSE_REGS
3219
3220Sat Nov 16 02:17:48 CET 2002 Jan Hubicka <jh@suse.cz>
3221
3222 * i386.md (fop_df_6): New pattern.
3223 (fop_xf_4, fop_xf_5): Handle both SF and DFmode extensions.
3224 (fop_xf_6): Rewrite
3225 (fop_xf_7): Delete.
3226 (fop_tf_4, fop_tf_5): Handle both SF and DFmode extensions.
3227 (fop_tf_6): Rewrite
3228 (fop_tf_7): Delete.
3229
0d964e40
KH
32302002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3231
3232 * config/h8300/h8300.md (two anonymous patterns): Fix typos.
3233
6d55e887
KH
32342002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3235
3236 * config/h8300/h8300.md: Fix formatting.
3237
4d5ad877
KH
32382002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3239
3240 * config/h8300/h8300.md: Replace spaces with tabs.
3241 * config/h8300/t-h8300: Remove a trailing empty line.
3242
17fa74a2
KH
32432002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3244
3245 * tlink.c: Fix formatting.
3246
9caa3eb2
DE
32472002-11-16 David Edelsohn <edelsohn@gnu.org>
3248
68a7da97 3249 PR 8362
9caa3eb2
DE
3250 * config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function.
3251 * config/rs6000/rs6000.md (movti_string): Remove output modifier
3252 when scratch register never needed.
3253 (ldmsi[3-8]): New patterns.
3254
476c5eb6
KH
32552002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3256
3257 * hard-reg-set.h: Follow spelling conventions.
3258 * real.c: Likewise.
3259 * target.h: Likewise.
3260
5dab517f
JJ
32612002-11-16 Jakub Jelinek <jakub@redhat.com>
3262
3263 * config/i386/x86-64.h (MCOUNT_NAME): Change into string literal.
3264
7e1a450d
KH
32652002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3266
3267 * optabs.c: Fix formatting.
3268
1b245ade
JH
3269Sat Nov 16 02:06:02 CET 2002 Jan Hubicka <jh@suse.cz>
3270
3271 * athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1
3272 * i386.md (attribute type): Add type shift1 and rotate1.
3273 (*_slp): Rewrite to have just two operands to avoid reload problems.
3274
6368a493
KH
32752002-11-15 Kazu Hirata <kazu@cs.umass.edu>
3276
3277 * config/h8300/h8300.md (4 anonymous patterns): New.
3278
737c38d1
GK
32792002-11-15 Geoffrey Keating <geoffk@apple.com>
3280
3281 * params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem.
3282 * doc/invoke.texi: Correct description of what needs to be done to
3283 force collection at every ggc_collect call.
3284
2120e3cd
UW
32852002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
3286
3bdcef4d 3287 * config/s390/s390.c (optimization_options): Set
2120e3cd
UW
3288 flag_asynchronous_unwind_tables to 1 by default.
3289
18789f4e
UW
32902002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
3291
3292 * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
3293
a5fa1ecd
JH
3294Fri Nov 15 14:54:19 CET 2002 Jan Hubicka <jh@suse.cz>
3295
3296 * i386-protos.h (x86_function_profiler): New function
3297 * i386.h (MCOUNT_NAME): New.
3298 (PROFILE_COUNT_REGISTER): New.
a36fc5f8 3299 (FUNCTION_PROFILER): Move offline to ...
a5fa1ecd
JH
3300 * i386.c (x86_function_profiler) ... here; fix 64bit support
3301 * beos-elf.h (FUNCTION_PROFILER): Kill.
3302 (MCOUNT_NAME): New.
3303 * freebsd-aout.h (FUNCTION_PROFILER): Kill.
3304 (MCOUNT_NAME): New.
3305 (PROFILE_COUNT_REGISTER): New.
3306 * linux.h (FUNCTION_PROFILER): Kill.
3307 (MCOUNT_NAME): New.
3308 * x86-64.h (FUNCTION_PROFILER): Kill.
3309 (MCOUNT_NAME): New.
3310 * freebsd.h (FUNCTION_PROFILER): Kill.
3311 (MCOUNT_NAME): New.
3312
1741620c
JD
33132002-11-14 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
3314
3315 * config/arm/arm.h (EXPAND_BUILTIN_VA_ARG,
3316 FUNCTION_ARG_PASS_BY_REFERENCE): Define.
3317 * config/arm/arm.c (arm_va_arg,
3318 arm_function_arg_pass_by_reference): New.
3319 * config/arm/arm-protos.h: Add prototypes.
3320
24985beb
KH
33212002-11-14 Kazu Hirata <kazu@cs.umass.edu>
3322
3323 * gthr-single.h: Fix formatting.
3324
fa7b533b
ZW
33252002-11-14 Zack Weinberg <zack@codesourcery.com>
3326
3327 * tree.c (tree_vec_elt_check_failed): New function.
3328 * tree.h (TREE_VEC_ELT_CHECK): New checking macro.
3329 (TREE_VEC_ELT): Use it.
3330
3331 * tree-inline.c (optimize_inline_calls): Don't copy a
3332 zero-length vector.
3333
9fc910d1
GDR
33342002-11-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
3335
3336 * diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text.
3337
7eca317a
JJ
33382002-11-14 Jakub Jelinek <jakub@redhat.com>
3339
3340 * varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if
3341 both operands contain local relocations.
3342 (categorize_decl_for_section): Don't use mergeable sections if
3343 initializer has any relocations.
3344
57751dd6
KH
33452002-11-14 Kazu Hirata <kazu@cs.umass.edu>
3346
3347 * gthr-vxworks.h: Fix formatting.
3348
f702e700
JJ
33492002-11-13 Janis Johnson <janis187@us.ibm.com>
3350
3351 * doc/install.texi (Testing): Document extra Java testing.
3352 * doc/sourcebuild.texi (Test Suites): Document libgcj testing.
3353
08ec53e7
JDA
33542002-11-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
3355
3356 * pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the
3357 beginning of the spec.
3358 (LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete.
3359 (LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable. Add comment
3360 regarding problems with global constructors when using GNU ld.
3361
e6179f45
KH
33622002-11-13 Kazu Hirata <kazu@cs.umass.edu>
3363
3364 * gthr-solaris.h: Fix formatting.
3365
fe83a9ce
KH
33662002-11-13 Kazu Hirata <kazu@cs.umass.edu>
3367
3368 * gthr-posix.h: Fix formatting.
3369
4977bab6 33702002-11-12 Devang Patel <dpatel@apple.com>
4977bab6
ZW
3371 * gcc.c (display_help): Two new options -Xpreprocessor and -Xassembler.
3372 (process_command): Same.
3373 * doc/invoke.texi: Info about these two new options.
3374
eed13f9b
KH
33752002-11-12 Kazu Hirata <kazu@cs.umass.edu>
3376
3377 * config/h8300/h8300.md (*andorsi3): New.
3378
e8a7b0c2
FS
33792002-11-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3380
3381 * doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement.
3382
94aec8dd
KH
33832002-11-12 Kazu Hirata <kazu@cs.umass.edu>
3384
3385 * config/h8300/h8300.c (tiny_constant_address_p): Parenthesize
3386 expressions appropriately.
3387
fc98f5cb
KH
33882002-11-12 Kazu Hirata <kazu@cs.umass.edu>
3389
3390 * gthr-win32.h: Fix formatting.
3391
e27051f7
KH
33922002-11-12 Kazu Hirata <kazu@cs.umass.edu>
3393
3394 * config/h8300/h8300.c (single_one_operand): Correctly compute
3395 mask when mode is SImode.
3396 (single_zero_operand): Likewise.
3397 * config/h8300/h8300.md (two new anonymous insns): New.
3398
10bb8214
GP
33992002-11-12 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3400
3401 * doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer
3402 to that entire project.
3403
ffe11c6b
RO
34042002-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3405
3406 * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old
3407 directories.
3408
3788cc17
ZW
34092002-11-11 Zack Weinberg <zack@codesourcery.com>
3410
3411 * params.def (ggc-min-expand, ggc-min-heapsize): New parameters.
3412 * doc/invoke.texi: Document them.
3413
3414 * ggc-page.c: Include params.h. Remove definitions of
3415 GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED. Replace
3416 GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define.
3417 (init_gcc): Don't set G.allocated_last_gc here.
3418 (ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and
3419 PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to
3420 perform collection.
3421 * ggc-simple.c: Similarly.
3422 * Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to
3423 dependencies.
3424
dd697f8c
KH
34252002-11-11 Kazu Hirata <kazu@cs.umass.edu>
3426
3427 * gthr-dce.h: Fix formatting.
3428
303b90b0
FS
34292002-11-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3430
3431 PR c/8467
3432 * stmt.c (tail_recursion_args): Handle DECL_MODE differing from the
3433 mode of DECL_RTL case.
3434
e8437165
JJ
34352002-11-11 Janis Johnson <janis187@us.ibm.com>
3436
3437 * doc/contrib.texi: Merge in the list from the libstdc++ web pages.
3438
12f5c45e
JH
3439Mon Nov 11 12:06:08 CET 2002 Jan Hubicka <jh@suse.cz>
3440
3441 * i386.c (construct_container): Fix handling of SSE_CLASS.
3442
f981a754
JS
34432002-11-10 Joel Sherrill <joel@gcc.gnu.org>
3444
3445 * config/m68k/t-crtstuff (crti.o): Use this...
3446 ($(T)crti.o): ... instead.
3447 (crtn.o): Use this...
3448 ($(T)crtn.o): ... instead.
3449
a9b6f1e7 34502002-11-10 Eric Botcazou <ebotcazou@libertysurf.fr>
45ed7228
EB
3451
3452 PR c/8439
3453 * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
3454 if there is something new to be simplified.
3455
2da4124d
L
34562002-11-10 H.J. Lu <hjl@gnu.org>
3457
3458 * calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
3459 * expr.c (PUSH_ARGS_REVERSED): Likewise.
3460
3461 * config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1.
3462
7bb9f927
ZW
34632002-11-10 Zack Weinberg <zack@codesourcery.com>
3464
3465 * config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here...
3466 * config/rs6000/linux.h, config/rs6000/linux64.h,
3467 config/rs6000/windiss.h: ... not here.
3468
d8986082
JT
34692002-11-10 Jason Thorpe <thorpej@wasabisystems.com>
3470
3471 * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define
3472 __ABICALLS__ if TARGET_ABICALLS.
3473
2e64c636
JH
3474Sun Nov 10 18:49:21 CET 2002 Jan Hubicka <jh@suse.cz>
3475
3476 * i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc.
3477
04e6db94
JM
34782002-11-10 Joseph S. Myers <jsm@polyomino.org.uk>
3479
3480 * c-decl.c (grokdeclarator): Make error for duplicate type
3481 qualifiers into a pedwarn, disabled for C99.
3482
e9986d3a
HPN
34832002-11-10 Hans-Peter Nilsson <hp@bitrange.com>
3484
3485 * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
3486 as FUNCTION_ARG_PASS_BY_REFERENCE.
3487
4977bab6
ZW
34882002-11-09 Zack Weinberg <zack@codesourcery.com>
3489
3490 * doc/install.texi: Add *-*-vxworks* specific installation
3491 instructions.
3492
3493 * config/vxlib.c: Rewrite using generation numbers to identify
3494 valid TSD keys.
3495
3496Sat Nov 9 00:10:54 CET 2002 Jan Hubicka <jh@suse.cz>
3497
3498 * i386.c (x86_machine_dependent_reorg): Fix even more side cases.
3499
581d9404
JDA
35002002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
3501
3502 * pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
3503
3504 * config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define.
3505 (hppa*64*-*-hpux11*): Likewise. Use elfos.h with gas.
3506 * pa.c (output_millicode_call): Use symbol difference rather than
3507 $PIC_pcrel$0 when using HP assembler.
3508 * pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or
3509 not elfos.h (i.e., gas) is being used.
3510 (ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
3511 DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON,
3512 ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME,
3513 ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL,
3514 ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when
3515 using elfos.h.
3516 (TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h.
3517 (DWARF2_ASM_LINE_DEBUG_INFO): Delete.
3518 (ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not
3519 using elfos.h.
3520 (TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
3521 BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h.
3522 (TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL):
3523 Don't define when not using elfos.h.
3524 (ASM_DECLARE_RESULT): Don't define.
3525 * doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler
3526 doesn't work on hppa64-hp-hpux11.
3527 (hppa*-hp-hpux11): Update.
3528
9f689d92
JT
35292002-11-09 Jason Thorpe <thorpej@wasabisystems.com>
3530
3531 * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC
3532 to the assembler if -mno-abicalls was specified.
3533
1c03af86
JDA
35342002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
3535
3536 * pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
3537 ASM_OUTPUT_DEF): Delete.
3538
57800e9e
NB
35392002-11-09 Neil Booth <neil@daikokuya.co.uk>
3540
3541 * c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit.
3542
4977bab6
ZW
35432002-11-08 Roger Sayle <roger@eyesopen.com>
3544
3545 * real.c (real_sqrt): Update comment with bibliographic reference.
3546
3547Fri Nov 8 13:33:58 CET 2002 Jan Hubicka <jh@suse.cz>
3548
3549 * i386.md (sse_loadss, sse2_loadsd): Fix expander.
3550
3551Fri Nov 8 13:25:41 CET 2002 Jan Hubicka <jh@suse.cz>
3552
3553 * i386.c (x86_machine_dependent_reorg): Fix handling of empty functions.
3554
3555Fri Nov 8 13:01:42 CET 2002 Jan Hubicka <jh@suse.cz>
3556
3557 * builtins.c (expand_builtin_mathfn): Handle floor/ceil/trunc/round/nearbyint
3558 (expand_builtin): Likewise.
3559 * builtins.def: Add
3560 __builtin_floor, __builtin_floorf, __builtin_floorl
3561 __builtin_ceil, __builtin_ceilf, __builtin_ceill
3562 __builtin_round, __builtin_roundf, __builtin_roundl
3563 __builtin_trunc, __builtin_truncf, __builtin_truncl
3564 __builtin_nearbyint, __builtin_nearbyintf, __builtin_nearbyintl.
3565 * genopinit.c (optabs): Initialize the new optabs.
3566 * optab.c (init_optabs): Likewise.
3567 * optabs.h (optab_index): Add OTI_floor, OTI_ceil, OTI_trunc,
3568 OTI_round, OTI_nearbyint.
3569 (floor_optab, ceil_optab, trunc_optab, round_optab, nearbyint_optab): New.
3570 * doc/md.texi: Document new named patterns.
3571 * doc/extend.texi (builtin functions) Document
3572 floor, floorf, floorl, ceil, ceilf,
3573 ceill, round, roundf, roundl, trunc,
3574 truncf, truncl, nearbyint, nearbyintf, nearbyintl.
3575
3576Fri Nov 8 11:36:11 CET 2002 Jan Hubicka <jh@suse.cz>
3577
3578 * i386.md (sse_movdfcc, sse_movsfcc): Fix typo in previous patch.
3579
489d6e8e
DJ
35802002-11-08 Dale Johannesen <dalej@apple.com>
3581
7bb9f927 3582 * dbxout.c (dbxout_type): Fix stabs info for vector types.
489d6e8e 3583
a4b1e653
NB
35842002-11-08 Neil Booth <neil@daikokuya.co.uk>
3585
3586 PR preprocessor/8497
3587 PR preprocessor/8501
3588 * cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't
3589 start a directive. In assembler, #NUM is not a line directive.
3590
e6e8c772
NB
35912002-11-08 Neil Booth <neil@daikokuya.co.uk>
3592
3593 * cppmain.c (cpp_preprocess_file): Loop to pop any -included
3594 buffers.
3595
ffdf5eae
KH
35962002-11-08 Kazu Hirata <kazu@cs.umass.edu>
3597
3598 * config/h8300/h8300.md (two anonymous test insns): New.
3599
8dd3ca88
JH
3600Fri Nov 8 11:20:19 CET 2002 Jan Hubicka <jh@suse.cz>
3601
3602 * jump.c (mark_jump_label): Handle subregs of label_refs.
3603
4977bab6
ZW
3604Thu Nov 7 21:54:22 CET 2002 Jan Hubicka <jh@suse.cz>
3605
3606 * i386.md (sse_movdfcc, sse_movsfcc): Avoid overactive matching.
3607 * i386.c (ix86_expand_fp_movcc): Match the reversed cases.
3608
07cf4226
DM
36092002-11-07 David Mosberger <davidm@hpl.hp.com>
3610
7bb9f927
ZW
3611 * config/ia64/crtend.asm: Include "auto-host.h".
3612 [HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array.
3613 * config/ia64/crtbegin.asm: Similarly.
3614 * config/ia64/t-ia64 (crtbegin.o): Include from current directory.
3615 (crtend.o, crtbeginS.o, crtendS.o): Likewise.
07cf4226 3616
7bb9f927
ZW
3617 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): New.
3618 * configure.in: Use it if --enable-initfini-array not specified.
3619 * doc/install.texi (Configuration): Document --enable-initfini-array.
07cf4226
DM
3620 * configure, config.in: Rebuild.
3621
0977774b 36222002-11-07 Jason Thorpe <thorpej@wasabisystems.com>
7bb9f927 3623
0977774b 3624 * config/arm/arm-protos.h (arm_get_frame_size)
7bb9f927 3625 (thumb_get_frame_size): New prototypes.
0977774b 3626 * config/arm/arm.c (arm_get_frame_size)
7bb9f927
ZW
3627 (thumb_get_frame_size): New functions.
3628 (use_return_insn, arm_output_epilogue, arm_output_function_epilogue)
3629 (arm_compute_initial_elimination_offset, arm_expand_prologue): Use
0977774b
JT
3630 arm_get_frame_size.
3631 (thumb_expand_prologue, thumb_expand_epilogue): Use
3632 thumb_get_frame_size.
3633 * config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define.
3634 (machine_function): Add frame_size member.
3635 (THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size.
3636
36372002-11-07 Richard Earnshaw <rearnsha@arm.com>
3638
3639 * arm.c (bit_count): Make argument unsigned long. Return unsigned.
3640 Adjust code to use portable unsigned bit manipulation.
3641 (insn_flags, tune_flags): Change type to unsigned.
3642 (struct processors): Make flags unsigned long.
3643 (arm_override_options): Change type of count and current_bit_count
3644 to unsigned.
3645
74c13308
RE
36462002-11-07 Richard Earnshaw <rearnsha@arm.com>
3647
3648 * arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %.
3649
e284643a
R
3650Thu Nov 7 15:50:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
3651
3652 * sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM.
3653
c2905f7b
JH
3654Thu Nov 7 11:18:01 CET 2002 Jan Hubicka <jh@suse.cz>
3655
3656 * reg-stack.c (compensate_edge): Fix sanity check.
3657
3cfe49da
GK
36582002-11-05 Geoffrey Keating <geoffk@apple.com>
3659
3660 * config.gcc: Don't create crtbegin, crtend on Darwin; do create
3661 crt2.o. Rearrange t-darwin makefiles.
3662 * crtstuff.c [OBJECT_FORMAT_MACHO]: Delete.
3663 * unwind-dw2-fde-darwin.c: New.
3664 * unwind-dw2-fde-glibc.c: Correct comment.
3665 * unwind-dw2-fde.c (__register_frame_info_bases)
3666 [DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end.
3667 (classify_object_over_fdes): Use last_fde.
3668 (add_fdes): Likewise.
3669 (linear_search_fdes): Likewise.
3670 * unwind-dw2-fde.h (struct object)
3671 [DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field.
3672 (last_fde): New.
3673 * config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o.
3674 (ENDFILE_SPEC): No crtend.o.
3675 * config/t-darwin: New.
3676 * config/i386/t-darwin: Delete.
3677 * config/darwin-crt2.c: New.
3678 * config/rs6000/t-darwin: Delete contents duplicated in t-rs6000
3679 or config/t-darwin.
3680
4977bab6
ZW
36812002-11-06 Douglas B Rupp <rupp@gnat.com>
3682
3683 * config/i386/i386-interix.h (TARGET_SUBTARGET_DEFAULT): Or
3684 MASK_MS_BITFIELD_LAYOUT
3685 (SUBTARGET_OVERRIDE_OPTIONS): Warn about and turn off
3686 MS bitfields for Objective-C.
3687 (PCC_BIT_FIELD_TYPE_TEST, GROUP_BITFIELDS_BY_ALIGN): Remove
3688 defines.
3689
3690 * config/i386/i386.c (ix86_ms_bitfield_layout): New function.
3691 (TARGET_MS_BITFIELD_LAYOUT_P): Define to above function.
3692 (TARGET_USE_MS_BITFIELD_LAYOUT): Define.
3693
3694 * config/i386/i386.h (MASK_MS_BITFIELD_LAYOUT: New mask.
3695 TARGET_USE_MS_BITFIELD_LAYOUT): New macro.
3696 (TARGET_SWITCHES): Add above mask.
3697
3698 * testsuite/gcc.dg/bf-ms-layout.c: New test case.
3699 * testsuite/gcc.dg/bf-no-ms-layout.c: New test case.
3700 * testsuite/gcc.dg/i386-bitfield1.c (dg-options): Add appropriate
3701 flags for interix.
3702
3703Wed Nov 6 18:54:47 2002 Alexandre Oliva <aoliva@redhat.com>
3704
3705 * config/mips/mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output
3706 .gpword/.gpdword for ABI_N32 and ABI_64 too, if using the GNU
3707 assembler.
3708 * config/mips/mips.md (tablejump_internal3): Output .cpadd
3709 before jump on ABI_N32 too.
3710 (tablejump_internal4): Ditto on ABI_64. Increase maximum
3711 length to match.
3712
3713Wed Nov 6 17:16:48 CET 2002 Jan Hubicka <jh@.suse.cz>
3714
3715 * i386.md (negsf splitter): Accept memory operand in second register.
3716 (abssf/absdf splitters): Simplify
3717 (sse_loadss, sse_loadsd): Turn into expander.
3718
5d7e6254
DE
37192002-11-06 David Edelsohn <edelsohn@gnu.org>
3720
3721 PR target/8480
3722 * config/rs6000/rs6000.md (movdi_internal64): Discourage
3723 FPR to FPR moves.
3724
4fc6ad08
JJ
37252002-11-06 Janis Johnson <janis187@us.ibm.com>
3726
3727 * doc/contrib.texi: Merge in the list from the Java web pages.
3728
fa123c53
DB
37292002-11-06 David O'Brien <obrien@FreeBSD.org>
3730
3731 * config/sparc/freebsd: Fix typo.
3732
81e5bc3d
JDA
37332002-11-06 John David Anglin <dave@hiauly1.hia.nrc.ca>
3734
3735 * pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define.
3736
021fa809
AO
37372002-11-06 Alexandre Oliva <aoliva@redhat.com>
3738
3739 * config/mips/mips.md (call_value_multiple_internal2): Use dla for
3740 non-SImode addresses.
3741
4977bab6
ZW
3742Tue Nov 5 14:34:36 CET 2002 Jan Hubicka <jh@suse.cz>
3743
3744 * i386.md (float_truncate SSE splitter): Ensure that operand is not
3745 stack register.
3746 (float SSE splitters): Reorder conditional.
3747
e9577224
BW
37482002-11-05 Bob Wilson <bob.wilson@acm.org>
3749
3750 * config/xtensa/elf.h (LIB_SPEC): Add "-lhal".
3751
a9b11d44
JDA
37522002-11-05 John David Anglin <dave2hiauly1.hia.nrc.ca>
3753
3754 * pa64-hpux.h (LIB_SPEC): Fix p and pg options.
3755 (STARTFILE_SPEC): Remove p and pg options.
3756
5c7cd663
AH
37572002-11-05 Andrew Haley <aph@redhat.com>
3758
3759 * fold-const.c (fold): Don't transform (a0 op compound(a1,a2))
3760 to (compound(a1,a0 op a2)) if a0 or a1 have side effects.
3761
97ab1175
RS
37622002-11-05 Richard Sandiford <rsandifo@redhat.com>
3763
3764 * config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to...
3765 * config/mips/mips.c (mips_cannot_change_mode_class): ...here.
3766
4977bab6
ZW
37672002-11-04 Zack Weinberg <zack@codesourcery.com>
3768
3769 * gthr-vxworks.h: Rewritten from scratch.
3770 * config/vxlib.c: New file.
3771 * config/t-vxworks: Add config/vxlib.c to LIB2FUNCS_EXTRA.
3772 * config/rs6000/t-vxworks: Add config/vxlib.c to
3773 LIB2FUNCS_EXTRA here too, because of clash with
3774 config/rs6000/t-ppccomm.
3775
2aff9508
DJ
37762002-11-04 Dale Johannesen <dalej@apple.com>
3777
7bb9f927
ZW
3778 * doloop.c (doloop_modify_runtime): Fix loop count computation
3779 for unrolled loops.
2aff9508
DJ
3780 * loop.c (loop_invariant_p): Support calling from unroller.
3781
e86e721f
UW
37822002-11-04 Ulrich Weigand <uweigand@de.ibm.com>
3783
3784 * config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx
3785 for comparison.
3786
cff9f8d5
AH
37872002-11-04 Aldy Hernandez <aldyh@redhat.com>
3788
3789 * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New.
3790
3791 * config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove.
3792 (CLASS_CANNOT_CHANGE_MODE): Remove.
3793 (CANNOT_CHANGE_MODE_CLASS): New.
3794
3795 * config/alpha/alpha.h: Same.
3796
3797 * config/ia64/ia64.h: Same.
3798
3799 * config/mips/mips.h: Same.
3800
3801 * config/s390/s390.h: Same.
3802
3803 * config/sh/sh.h: Same.
3804
3805 * config/pa/pa64-regs.h: Same.
3806
3807 * config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype.
7bb9f927 3808
cff9f8d5
AH
3809 * config/sh/sh.c (sh_cannot_change_mode_class): New.
3810
3811 * config/mips/mips-protos.h (mips_cannot_change_mode_class): Add
3812 prototype.
3813
3814 * config/mips/mips.c (mips_cannot_change_mode_class): New.
3815
3816 * doc/tm.texi (Register Classes): Remove
3817 CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P.
3818 Document CANNOT_CHANGE_MODE_CLASS.
3819
3820 * reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS.
3821 (push_reload): Same.
3822
3823 * simplify-rtx.c (simplify_subreg): Same.
3824
3825 * reload1.c (choose_reload_regs): Same.
3826
3827 * recog.c (register_operand): Same.
3828
3829 * regrename.c (mode_change_ok): Change to use new
3830 CANNOT_CHANGE_MODE_CLASS infrastructure.
3831
3832 * regclass.c (cannot_change_mode_set_regs): New.
3833 Declare subregs_of_mode.
3834 (regclass): Use subregs_of_mode.
3835 Remove references to reg_changes_mode.
3836 (init_reg_sets_1): Remove class_can_change_mode and
3837 reg_changes_mode code.
3838 (invalid_mode_change_p): New.
3839 (dump_regclass): Use invalid_mode_change_p instead of
3840 class_can_change_mode.
3841 (regclass): Same.
3842 (record_operand_costs): Do not set reg_changes_mode.
3843
3844 * local-alloc.c (struct qty): Remove changes_mode field.
3845 (alloc_qty): Remove changes_mode initialization.
3846 (update_qty_class): Remove set of changes_mode.
3847 (find_free_reg): Use subregs_of_mode.
3848
3849 * global.c (find_reg): Use subregs_of_mode info.
3850
3851 * rtl.h (cannot_change_mode_set_regs): New prototype.
3852 (invalid_mode_change_p): Same.
3853 (REG_CANNOT_CHANGE_MODE_P): New macro.
3854
3855 * flow.c (mark_used_regs): Calculate subregs_of_mode. Remove
3856 REG_CHANGES_MODE.
3857 (life_analysis): Clear subregs_of_mode.
3858
3859 * combine.c (subst): Pass class to CLASS_CANNOT_CHANGE_MODE_P.
3860 Remove use of CLASS_CANNOT_CHANGE_MODE.
3861 (simplify_set): Same.
3862 (gen_lowpart_for_combine): Calculate subregs_of_mode. Remove
3863 REG_CHANGES_MODE.
7bb9f927 3864
cff9f8d5
AH
3865 * regs.h: Add extern for subregs_of_mode;
3866 Include hard-reg-set and basic-block.
3867 (REG_CHANGES_MODE): Delete.
3868
4977bab6
ZW
38692002-11-03 Roger Sayle <roger@eyesopen.com>
3870
3871 * real.c (real_sqrt): New function to calculate square roots.
3872 * real.h (real_sqrt): Add function prototype.
3873 * builtins.c (fold_builtin): Fold sqrt of constant argument.
3874 * simplify-rtx.c (simplify_unary_operation): Simplify sqrt
3875 of constant argument.
3876
2ff363e0
JDA
38772002-11-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
3878
3879 * jump.c (never_reached_warning): Don't set contains_insn until the
3880 first line note is seen.
3881
cd1d3445
DE
38822002-11-03 David Edelsohn <edelsohn@gnu.org>
3883
3884 * config/rs6000/rs6000.md (movti_string): Use string instructions.
3885
c9fe6f9f
RS
38862002-11-03 Roger Sayle <roger@eyesopen.com>
3887
3888 PR c/7128
3889 * c-typeck.c (c_expand_asm_operands): Defend against
3890 error_mark_nodes in the output argument to avoid ICE.
3891
0b40e88e
EB
38922002-11-03 Eric Botcazou <ebotcazou@libertysurf.fr>
3893
3894 PR middle-end/8408
3895 * genrecog.c (preds): Handle ADDRESSOF.
3896 (validate_pattern): Mark it as an lvalue.
3897
dff9f1b6
DE
38982002-11-02 David Edelsohn <edelsohn@gnu.org>
3899
3900 * config/rs6000/rs6000.c (rs6000_override_options): Use string
3901 instructions when optimizing for size.
3902
46eefac4
KH
39032002-11-02 Kazu Hirata <kazu@cs.umass.edu>
3904
3905 * config/h8300/h8300.h: Fix comment typos.
3906 * config/h8300/h8300.md: Likewise.
3907 * config/h8300/lib1funcs.asm: Likewise.
3908
102b60d1
GP
39092002-11-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3910
3911 Revert this change:
3912
3913 *doc/install.texi (Installing GCC: Configuration): Clarify
3914 the only supported ways to configure gcc.
3915
46be79e7
KH
39162002-11-01 Kazu Hirata <kazu@cs.umass.edu>
3917
3918 * config/h8300/h8300.md (anonymous and:QI pattern): Use 'n'
3919 instead of 'O' for the constraint for the second operand.
3920
bec80a45
MM
39212002-11-01 Mark Mitchell <mark@codesourcery.com>
3922
3923 PR c++/8391
3924 * toplev.c (rest_of_compilation): Do not refuse to output code for
3925 an inline function in a local class.
3926
8df91177
DB
39272002-11-01 David O'Brien <obrien@FreeBSD.org>
3928
3929 * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
3930 (TRANSFER_FROM_TRAMPOLINE): Reformat.
3931 Add comment.
3932
616dc555
KH
39332002-11-01 Kazu Hirata <kazu@cs.umass.edu>
3934
3935 * config/h8300/h8300.h (CAN_ELIMINATE): Simplify.
3936
25a533a0
TM
39372002-11-01 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
3938
3939 * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New.
3940
dcffbade
SE
39412002-11-01 Steve Ellcey <sje@cup.hp.com>
3942
3943 * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove.
3944 (MASK_INLINE_DIV_THR): Remove.
3945 (TARGET_INLINE_DIV_LAT): Remove.
3946 (TARGET_INLINE_DIV_THR): Remove.
3947 (TARGET_INLINE_DIV): Remove.
3948 (MASK_INLINE_FLOAT_DIV_LAT): New macro.
3949 (MASK_INLINE_FLOAT_DIV_THR): New macro.
3950 (MASK_INLINE_INT_DIV_LAT): New macro.
3951 (MASK_INLINE_INT_DIV_THR): New macro.
3952 (TARGET_INLINE_FLOAT_DIV_LAT): New macro.
3953 (TARGET_INLINE_FLOAT_DIV_THR): New macro.
3954 (TARGET_INLINE_INT_DIV_LAT): New macro.
3955 (TARGET_INLINE_INT_DIV_THR): New macro.
3956 (TARGET_INLINE_FLOAT_DIV): New macro.
3957 (TARGET_INLINE_INT_DIV): New macro.
3958 * config/ia64/ia64.md (divsi3): Change to use new macros.
3959 (modsi3): Ditto.
3960 (udivsi3): Ditto.
3961 (umodsi3): Ditto.
3962 (divsi3_internal): Ditto.
3963 (divdi3): Ditto.
3964 (moddi3): Ditto.
3965 (udivdi3): Ditto.
3966 (umoddi3): Ditto.
3967 (divdi3_internal_lat): Ditto.
3968 (divdi3_internal_thr): Ditto.
3969 (divsf3): Ditto.
3970 (divsf3_internal_lat): Ditto.
3971 (divsf3_internal_thr): Ditto.
3972 (divdf3): Ditto.
3973 (divdf3_internal_lat): Ditto.
3974 (divdf3_internal_thr): Ditto.
3975 (divtf3): Ditto.
3976 (divtf3_internal_lat): Ditto.
3977 (divtf3_internal_thr): Ditto.
3978 * config/ia64/ia64.c (ia64_override_options): Change
3979 to check new macros for conflicts in settings.
3980 * doc/invoke.texi (-minline-divide-min-latency): Remove.
3981 (-minline-divide-max-throughput): Remove.
3982 (-minline-float-divide-min-latency): New.
3983 (-minline-float-divide-max-throughput): New.
3984 (-minline-int-divide-min-latency): New.
3985 (-minline-int-divide-max-throughput): New.
7bb9f927 3986
d5db54a1
RE
39872002-11-01 Richard Earnshaw (rearnsha@arm.com)
3988
3989 PR target/7856
3990 * arm.c (use_return_insn): Don't use a return insn if there are
3991 saved integer regs, but LR is not one of them.
3992
075fc17a
JH
3993Fri Nov 1 10:33:15 CET 2002 Jan Hubicka <jh@suse.cz>
3994
3995 * expr.c (emit_move_insn): Use SCALAR_FLOAT_MODE_P
3996 * machmode.h (SCALAR_FLOAT_MODE_P): New macro.
3997
4977bab6
ZW
3998Thu Oct 31 18:20:50 CET 2002 Jan Hubicka <jh@suse.cz>
3999
4000 * i386.md (sse_loadss, sse_loadsd): Canonicalize; add expander
4001 (movps, movpd splitters): Use canonical form.
4002 (movv2di): Fix merge problem.
4003
4004Thu Oct 31 16:22:31 CET 2002 Jan Hubicka <jh@suse.cz>
4005
4006 * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
4007
9efb4cb6
NN
40082002-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
4009
4010 PR optimization/6162
4011 * doc/md.texi: Document restriction on commutative operand
4012 specification.
4013
ce02ba25
EC
40142002-10-31 Eric Christopher <echristo@redhat.com>
4015
7bb9f927 4016 * explow.c (convert_memory_address): Use shallow_copy_rtx.
ce02ba25 4017
8efb33ec
SE
40182002-10-31 Steve Ellcey <sje@cup.hp.com>
4019
4020 * expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN.
4021
a543c709
SE
40222002-10-31 Steve Ellcey <sje@cup.hp.com>
4023
4024 * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats.
4025
cdc58a82
DJ
4026Thu Oct 31 Dale Johannesen <dalej@apple.com>
4027
4028 * config/rs6000/darwin.h: Correct formatting in previous.
4029
e381c27a
DJ
4030Thu Oct 31 Dale Johannesen <dalej@apple.com>
4031
4032 * config/rs6000/darwin.h: Enable -falign-xxx options.
4033
55ba61f3
JH
4034Thu Oct 31 18:08:00 CET 2002 Jan Hubicka <jh@suse.cz>
4035
4036 * i386.c (override_options): Set defaults for flag_omit_frame_pointer,
4037 flag_asynchronous_unwind_tables, flag_pcc_struct_return.
4038 * i386.c (optimization_options): Set flag_omit_frame_pointer,
4039 flag_asynchronous_unwind_tables, flag_pcc_struct_return to 2.
4040 Do not clear -momit-leaf-frame-pointer when profiling.
8e746279 4041 (ix86_frame_pointer_required): Frame pointer is always required when
55ba61f3
JH
4042 profiling.
4043
f7e5dfbd
JH
4044Thu Oct 31 16:09:44 CET 2002 Jan Hubicka <jh@suse.cz>
4045
4046 * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
4047
ff881d52
R
4048Thu Oct 31 12:45:55 2002 J"orn Rennecke <joern.rennecke@superh.com>
4049
4050 * sh.h (binary_logical_operator): Declare.
4051 * sh.c (binary_logical_operator): New function.
4052 * sh.md (xordi3+1): New combiner splitter pattern.
4053
e8e4c876
DB
40542002-10-31 David O'Brien <obrien@FreeBSD.org>
4055
4056 * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Define
4057 __enable_execute_stack function.
4058
4977bab6
ZW
40592002-10-30 Zack Weinberg <zack@codesourcery.com>
4060
4061 * gthr.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h,
4062 gthr-solaris.h, gthr-win32.h: Remove __gthread_key_dtor.
4063 * unwind-sjlj.c (fc_key_dtor): Delete.
4064 (fc_key_init): Adjust __gthread_key_create call to match.
4065
27bd7792
AH
40662002-10-30 Aldy Hernandez <aldyh@redhat.com>
4067
7bb9f927 4068 * c-common.c: Add GTY to vector_type_node_list.
27bd7792 4069
a02aa5b0
JDA
40702002-10-30 John David Anglin <dave@hiauly.hia.nrc.ca>
4071
4072 * pa-linux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
4073 * pa-protos.h (attr_length_millicode_call, attr_length_call,
4074 pa_init_machine_status): Declare new global functions.
4075 * pa.c (void copy_fp_args, length_fp_args, get_plabel): Declare and
4076 implement new functions.
4077 (attr_length_millicode_call, attr_length_call): Implement.
4078 (total_code_bytes): Change type to long.
4079 (pa_output_function_prologue): Compute total_code_bytes on TARGET_64BIT.
4080 Reset counter if flag_function_sections.
4081 (output_deferred_plabels): Set output alignment to 3 for TARGET_64BIT.
4082 (output_cbranch): Move call to gen_label_rtx.
4083 (output_millicode_call): Rewrite adding long TARGET_64BIT call, expose
4084 delay slot in all variants, shorten pc-relative calls.
4085 (output_call): Rewrite adding long TARGET_64BIT call, improved delay
4086 slot usage and exposure, various new call variants, and shortened
4087 sequences for some variants on TARGET_PA_20.
4088 Miscellaneous format changes.
4089 * pa.h (total_code_bytes): Change type to long.
4090 (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_LONG_ABS_CALL,
4091 TARGET_LONG_PIC_SDIFF_CALL, TARGET_LONG_PIC_PCREL_CALL): Define.
4092 (TARGET_SWITCHES): Add "-mlong-calls" and "-mno-long-calls" options.
4093 (EXTRA_CONSTRAINT, GO_IF_LEGITIMATE_ADDRESS,
4094 LEGITIMIZE_RELOAD_ADDRESS): Don't use long floating point loads and
4095 stores on TARGET_ELF32.
4096 *pa.md (define_delay): Allow insns in delay on TARGET_PORTABLE_RUNTIME.
4097 (unnamed patterns for mulsi3, divsi3, udivsi3, modsi3, umodsi3 and
4098 canonicalize_funcptr_for_compare expanders): Calculate attribute length
4099 attr_length_millicode_call().
4100 (call_internal_symref, call_value_internal_symref): Clobber register 1.
4101 Calculate attribute length using attr_length_call().
4102 (call_internal_reg_64bit, call_value_internal_reg_64bit): Move gp load
4103 to delay slot.
4104 (sibcall, sibcall_value): Rewrite.
4105 (sibcall_internal_symref, sibcall_value_internal_symref): Clobber
4106 register 1. Use attr_length_call().
4107 (sibcall_internal_symref_64bit, sibcall_value_internal_symref_64bit):
4108 New patterns.
4109 (unamed pattern for canonicalize_funcptr_for_compare): Rewrite.
4110 * som.h (MEMBER_TYPE_FORCES_BLK): Define.
4111 * t-pa64 (TARGET_LIBGCC2_CFLAGS): Add "-mlong-calls".
4112 * doc/invoke.texi (mlong-calls): Document.
4113
9402f6fb
RS
41142002-10-30 Roger Sayle <roger@eyesopen.com>
4115
4116 * fold-const.c (fold_binary_op_with_conditional_arg): Improve
4117 handling of cases where one or both branches of the conditional
4118 have void type, i.e. throw an exception or don't return.
4119 (fold): Only apply (and undo) type conversion to the non-void
4120 branches of a COND_EXPR.
4121
9b5b7e3a
MM
41222002-10-30 Mark Mitchell <mark@codesourcery.com>
4123
4124 PR c++/8333
4125 * varasm.c (asm_output_aligned_bss): Do not call
4126 ASM_GLOBALIZE_LABEL.
4127
df7a8989
DE
41282002-10-30 David Edelsohn <edelsohn@gnu.org>
4129 Torbjorn Granlund <tege@swox.com>
4130
4131 * config/rs6000/rs6000.md (load_toc_v4_PIC_1): Use preferred form
4132 for addressibility.
4133 (load_toc_v4_PIC_1b): Same.
4134
d2d199a3
KH
41352002-10-30 Kazu Hirata <kazu@cs.umass.edu>
4136
4137 * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
4138 Truncate the addresses for H8/300 using HImode.
4139
4977bab6
ZW
4140Tue Oct 29 23:28:10 CET 2002 Jan Hubicka <jh@suse.cz>
4141
4142 * i386.md (negdf splitter): Fix construction of the constant.
4143
4144Tue Oct 29 20:47:06 CET 2002 Jan Hubicka <jh@suse.cz>
4145
4146 * i386.md (negsf, negdf): Reorganize to use vector modes
4147 for SSE variants.
4148 (abssf, absdf): Use force_reg.
4149 (movv4sf, movv2df): New splitters.
4150 * i386.h (PREDICATE_CODES): add zero_extended_scalar_load_operand
4151 * i386.c (zero_extended_scalar_load_operand
4152
4153 * i386-protos.h (ix86_expand_call): Update prototype.
4154 * i386.c (ix86_function_ok_for_sibcall): Handle 64bit
4155 (ix86_expand_call): Use r11 for indirect sibcalls.
4156 * i386.md (call, call_value, untyped_call, call_value_pop):
4157 update x86_expand_call call.
4158 (sibcall, sibcall_value): new patterns
4159 (call_rex64, call_value_rex64): Do not accept sibcalls.
4160 (sibcall_rex64, sibcall_value_rex64,
4161 sibcall_rex64_v, sibcall_value_rex64_v): New.
4162
4163Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
4164
4165 * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
4166 before final pass.
4167
33c21f5c
HPN
41682002-10-29 Hans-Peter Nilsson <hp@bitrange.com>
4169
4170 * toplev.c (rest_of_type_compilation): Return early in case of
4171 errors.
4172 (check_global_declarations): Don't call debug_hooks->global_decl
4173 in case of errors.
4174
d1445f8d
AB
41752002-10-28 Andreas Bauer <baueran@in.tum.de>
4176
4177 * doc/c-tree.texi (Tree overview): Fix typos.
4178
fc556cb9
PE
41792002-10-29 Phil Edwards <pme@gcc.gnu.org>
4180
4181 * Makefile.in (gnucompare*): Only record bad comparisons
4182 if there really was a bad comparison.
4183
f8ca7923
JH
4184Tue Oct 29 19:32:16 CET 2002 Jan Hubicka <jh@suse.cz>
4185
4186 * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H'
4187 * i386.md (movsf*, movdf*): Use 'C' instead of 'H'
4188 * md.texi (machine dependent constraints): Document 'C'
4189
4190 * simplify-rtx.c (simplify_subreg): Fix const_int->vector subregging.
4191
4192 * i386.c (ix86_expand_vector_move): Fix.
4193
4194 * i386.c (ix86_expand_builtin): Use sse2_maskmovdqu_rex64.
4195 * i386.md (sse2_maskmovdqu_rex64): New pattern
4196
4197 PR target/8322
4198 * xmmintrin.h (_mm_stream_pi, _mm_stream_pd): Fix cast.
4199 (ix86_init_mmx_sse_builtins): Fix type.
4200
c95d07f8
JT
42012002-10-29 Jason Thorpe <thorpej@wasabisystems.com>
4202
4203 * gthr-posix.h: Include <unistd.h> for feature tests.
4204 (sched_get_priority_max, sched_get_priority_min)
4205 (pthread_getschedparam, pthread_setschedparam): Only use
4206 if _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
272d0bee 4207 (__gthread_objc_thread_set_priority): Don't treat all nonzero
c95d07f8
JT
4208 returns from sched_get_priority_max and sched_get_priority_min
4209 as an error.
4210
3950794d
KH
42112002-10-29 Kazu Hirata <kazu@cs.umass.edu>
4212
4213 * config/h8300/h8300.h (TARGET_DEFAULT): Make it
4214 MASK_QUICKCALL.
4215
803d56f5
KH
42162002-10-29 Kazu Hirata <kazu@cs.umass.edu>
4217
4218 * config/h8300/h8300.c (h8300_eightbit_constant_address_p): New.
4219 (h8300_tiny_constant_address_p): Likewise.
4220 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Use
4221 h8300_eightbit_constant_address_p.
4222 (TINY_CONSTANT_ADDRESS_P): Use h8300_tiny_constant_address_p.
4223 * config/h8300/h8300-protos.h: Add the prototypes for the two
4224 new functions.
4225
6bb8a3f7
KH
42262002-10-29 Kazu Hirata <kazu@cs.umass.edu>
4227
4228 * reload1.c (update_eliminables): Unconditionally check if
4229 frame_pointer_needed has changed.
4230
fc8dfa20
JH
4231Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
4232
4233 * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
4234 before final pass.
4235
6e7727eb
EB
42362002-10-29 Eric Botcazou <ebotcazou@libertysurf.fr>
4237
a5163dcd 4238 PR optimization/8334
7bb9f927
ZW
4239 * expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation;
4240 check for zero operands explicitly.
6e7727eb 4241
02c6a17a
RS
42422002-10-29 Richard Sandiford <rsandifo@redhat.com>
4243
4244 * config/mips/mips.md (extv, extzv, insv): Set size of referenced
4245 memory after adjusting to BLKmode.
4246
1862869d
KH
42472002-10-29 Kazu Hirata <kazu@cs.umass.edu>
4248
4249 * config/h8300/h8300.h (MASK_*): New.
4250 (TARGET_*): Use MASK_*.
4251
4977bab6
ZW
42522002-10-28 Zack Weinberg <zack@codesourcery.com>
4253
4254 * config.gcc (*-*-vxworks, powerpc-wrs-vxworks*): New stanzas.
4255 * config/t-vxworks, config/vxworks.h, config/rs6000/t-vxworks,
4256 config/rs6000/vxworks.h: New files.
4257 * config/rs6000/sysv4.h: Rip out -mvxworks and all related code.
4258
4259 * config.gcc (alpha*-*-vxworks*, arm-*-vxworks*,
4260 i?86-wrs-vxworks*, i960-wrs-vxworks* [all],
4261 m68k-wrs-vxworks*, mips-wrs-vxworks, powerpc-wrs-vxworks*,
4262 powerpcle-wrs-vxworks*, sparc*-wrs-vxworks* [all],
4263 sparc-*-vxsim*): Delete stanzas.
4264 * gthr-vxworks.h: Rip out all substantive code and just
4265 include gthr-single.h.
4266
4267 * config/alpha/vxworks.h, config/arm/vxarm.h,
4268 config/i386/vxi386.h, config/i960/t-vxworks960,
4269 config/i960/vx960-coff.h, config/i960/vx960.h,
4270 config/m68k/t-vxworks68, config/m68k/vxm68k.h,
4271 config/mips/vxworks.h, config/rs6000/vxppc.h,
4272 config/sparc/t-vxsparc, config/sparc/t-vxsparc64,
4273 config/sparc/vxsim.h, config/sparc/vxsparc.h,
4274 config/sparc/vxsparc64.h: Delete files.
4275
ee3c755a
JT
42762002-10-28 Jason Thorpe <thorpej@wasabisystems.com>
4277
4278 * config.gcc (*-*-netbsd*): Add NETBSD_ENABLE_PTHREADS to
4279 tm_defines if pthreads are enabled.
4280 * config/netbsd.h (LIB_SPEC): Only support the -pthread option
4281 if NETBSD_ENABLE_PTHREADS is defined.
4282
423adbb9
KH
42832002-10-28 Kazu Hirata <kazu@cs.umass.edu>
4284
4285 * ChangeLog.1: Fix typos.
4286 * cse.c: Fix a comment typo.
4287 * reload1.c: Likewise.
4288
d7521977
HPN
42892002-10-27 Hans-Peter Nilsson <hp@bitrange.com>
4290
4291 * fixinc/inclhack.def (libc1_G_va_list): Correct test_text.
4292 * fixinc/tests/base/_G_config.h: New file.
4293
3eae4643
KH
42942002-10-27 Kazu Hirata <kazu@cs.umass.edu>
4295
4296 * combine.c: Fix comment formatting.
4297 * loop.c: Likewise.
4298 * real.c: Likewise.
4299 * regclass.c: Likewise.
4300 * regmove.c: Likewise.
4301 * regrename.c: Likewise.
4302 * reg-stack.c: Likewise.
4303 * reload1.c: Likewise.
4304 * reload.c: Likewise.
4305 * reload.h: Likewise.
4306 * unroll.c: Likewise.
4307
e591c83d
KH
43082002-10-27 Kazu Hirata <kazu@cs.umass.edu>
4309
4310 * reload1.c (reload): Fix a comment typo.
4311
a0ba837e
JH
4312Sun Oct 27 10:15:24 CET 2002 Jan Hubicka <jh@suse.cz>
4313
4314 * linux64.h (DEFAULT_PCC_STRUCT_RETURN): Define.
4315
cc0017a9
ZD
43162002-10-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
4317
4318 * Makefile.in (dwarf2out.o): Add dependendcy on hashtab.h.
4319 * dwarf2out.c: Include hashtab.h.
4320 (is_main_source): New static variable.
4321 (attr_checksum, die_checksum): Modified to handle die references.
4322 (same_loc_p, same_dw_val_p, same_attr_p, same_die_p, same_die_p_wrap,
4323 unmark_all_dies, htab_cu_hash, htab_cu_eq, htab_cu_del, check_duplicate_cu,
4324 record_comdat_symbol_number): New static functions.
4325 (output_comp_unit, compute_section_prefix, is_type_die, break_out_includes,
4326 mark_dies, unmark_dies, dwarf2out_start_source_file): Modified.
4327 * toplev.c (rest_of_decl_compilation): Call of dwarf2out_decl for type
4328 declarations added.
4329
d7af42bc
KH
43302002-10-26 Kazu Hirata <kazu@cs.umass.edu>
4331
4332 * config/h8300/h8300.c (initial_offset): Change to
4333 h8300_initial_elimination_offset.
4334 * config/h8300/h8300.h (INITIAL_ELIMINATION_OFFSET): Use
4335 h8300_initial_elimination_offset.
4336 * config/h8300/h8300-protos.h: Update the prototype.
4337
7e5037dc
HPN
43382002-10-26 Hans-Peter Nilsson <hp@bitrange.com>
4339
4b32269b
HPN
4340 * config/mmix/mmix.h (LIBCALL_VALUE): Use
4341 MMIX_RETURN_VALUE_REGNUM, not MMIX_OUTGOING_RETURN_VALUE_REGNUM.
4342 (FUNCTION_VALUE_REGNO_P): Similar, but move code to...
4343 * config/mmix/mmix.c (mmix_function_value_regno_p): New.
4344 * config/mmix/mmix-protos.h: Remove needless ifdefs on TREE_CODE
4345 and RTX_CODE.
4346 (mmix_function_value_regno_p): Declare.
4347
7e5037dc
HPN
4348 * config/mmix/mmix.md ("fixuns_truncdfdi2"): Replace unsigned_fix,
4349 invalid for floating point mode result, with fix.
4350
4977bab6
ZW
4351Fri Oct 25 00:04:21 2002 Alexandre Oliva <aoliva@redhat.com>
4352
4353 * Makefile.in (GCC_FOR_TARGET): Add -L$(objdir)/../ld.
4354 (STAGE2_FLAGS_TO_PASS): Pass GCC_FOR_TARGET.
4355 (stage1_build): Likewise.
4356
94c1e0e8
MS
43572002-10-25 Mike Stump <mrs@apple.com>
4358
da89b956 4359 Fixes gcc.dg/warn-1.c.
4977bab6
ZW
4360 * c-typeck.c (warn_for_assignment): Don't print argument number,
4361 if zero.
94c1e0e8 4362
0fb53e68
JH
4363Sat Oct 26 01:44:46 CEST 2002 Jan Hubicka <jh@suse.cz>
4364
4365 * toplev.c (dump_file_index): Add DFI_ce3.
4366 (dump_file_info): Likewise.
4367 (rest_of_compilation): Run first ifcvt pass before tracer.
4368
794186ca
SE
43692002-10-25 Steve Ellcey <sje@cup.hp.com>
4370
4371 * config/ia64/hpux.h (BITS_BIG_ENDIAN): Remove.
4372
cd60b4b8
RH
43732002-10-25 Richard Henderson <rth@redhat.com>
4374
4375 * real.c (real_to_decimal): If the >1 tens reduction loop results
4376 in a negative exponent, fall into the <1 pten computation.
4377
f3763a44
ZW
43782002-10-25 Zack Weinberg <zack@codesourcery.com>
4379
4380 PR middle-end/6994
4381 * c-objc-common.c (inline_forbidden_p): Can not inline
4382 functions containing structures or unions containing VLAs.
4383 * tree-inline.c (walk_tree): For all class 't' nodes, walk
4384 TYPE_SIZE and TYPE_SIZE_UNIT.
4385 (copy_tree_r): Copy types if they are variably modified.
4386
8c40b097
UW
43872002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
4388
4389 * config/s390/s390.md: Remove old-style peepholes.
4390
522ec94e
UW
43912002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
4392
4393 * config/s390/s390.c (s390_decompose_address): Do not range check the
4394 displacement if base or index is the argument pointer register.
4395
a7475ab1
HPN
43962002-10-24 Hans-Peter Nilsson <hp@bitrange.com>
4397
85c87994
HPN
4398 PR other/3337
4399 PR bootstrap/6763
4400 PR bootstrap/8122
a7475ab1
HPN
4401 * fixinc/inclhack.def (libc1_G_va_list): New fix.
4402 * fixinc/fixincl.x: Regenerate.
4403 * config/i386/linux.h: Move MD_FALLBACK_FRAME_STATE_FOR inside
4404 ifndef IN_LIBGCC2. Wrap it together with signal.h and
4405 sys/ucontext.h inclusion in ifndef USE_GNULIBC_1.
4406 * configure.in (gcc_AC_CHECK_DECLS): Check vasprintf too.
4407 * config.in, configure: Regenerate.
4408
7a360cce
IS
44092002-10-24 Igor Shevlyakov <igor@microunity.com>
4410
7bb9f927 4411 * varasm.c (struct rtx_const): Array size 16 for V16QImode.
7a360cce 4412
fcbe3b89
RH
44132002-10-24 Richard Henderson <rth@redhat.com>
4414
4415 * config/i386/i386.c (x86_output_mi_thunk): Fix x86_64 pic jump.
4416
1a86c850
KH
44172002-10-24 Kazu Hirata <kazu@cs.umass.edu>
4418
4419 * config/h8300/h8300.c (initial_offset): Simplify by using
4420 round_frame_size.
4421
de7999ba
MM
44222002-10-24 Marek Michalkiewicz <marekm@amelek.gda.pl>
4423
4424 * doc/install.texi (avr): Update required binutils version.
4425
44262002-10-24 Theodore A. Roth <troth@openavr.org>
4427
4428 * doc/install.texi: Point avr users at more up-to-date information.
4429
84817c5d
UW
44302002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
4431
4432 * config/s390/s390.md (movdi, movsi, movhi, movqi): Add peepholes2
4433 to pull operands out of the literal pool where possible.
4434
d0749053
DC
44352002-10-24 Denis Chertykov <denisc@overta.ru>
4436
4437 * config/avr/avr.c (init_cumulative_args): Test fntype for zero.
4438
37d0b254
SE
44392002-10-24 Steve Ellcey <sje@cup.hp.com>
4440
4441 * expr.c (convert_move): If unsignedp is less then zero there
4442 is no equivalent code.
4443
7af907e9
ZW
44442002-10-24 Zack Weinberg <zack@codesourcery.com>
4445
4446 * tree.def: Delete mention of nonexistent ARRAY_TYPE fields.
4447
862a2d83
UW
44482002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
4449
7af907e9 4450 * config/s390/s390.h: Rework comments; re-sort target macro definitions
862a2d83
UW
4451 according to the sequence they are defined in the manual.
4452 (POINTER_BOUNDARY): Remove.
4453
489eda65
KH
44542002-10-24 Kazu Hirata <kazu@cs.umass.edu>
4455
4456 * config/h8300/h8300.c (round_frame_size): Replace 8 with
4457 BITS_PER_UNIT.
4458
2ba08201
KH
44592002-10-24 Kazu Hirata <kazu@cs.umass.edu>
4460
4461 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Make it
4462 64-bit safe.
4463 (TINY_CONSTANT_ADDRESS_P): Likewise.
4464
5f13cfc6
RH
44652002-10-24 Richard Henderson <rth@redhat.com>
4466
4467 * config/ia64/ia64.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
4468 (ia64_output_mi_thunk): Rewrite to use rtl, and to handle the
4469 vcall offset.
4470
3bd216f2
RH
44712002-10-24 Richard Henderson <rth@redhat.com>
4472
7af907e9
ZW
4473 PR opt/7944
4474 * reload.c (find_reloads_toplev): Mode of X is not important
3bd216f2
RH
4475 when simplifying subregs of constants.
4476
60bc2b4b
RS
44772002-10-24 Richard Sandiford <rsandifo@redhat.com>
4478
4479 * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Add
4480 MIPS_MARCH_CONTROLS_SOFT_FLOAT=1 to $tm_defines.
4481 * config/mips/mips.c (MIPS_MARCH_CONTROLS_SOFT_FLOAT): Default to 0.
4482 (override_options): Base default setting of MASK_SOFT_FLOAT on -march
4483 if MIPS_MARCH_CONTROLS_SOFT_FLOAT.
4484
5be5c8d4
RS
44852002-10-24 Richard Sandiford <rsandifo@redhat.com>
4486
4487 * optabs.c (expand_binop): Don't reuse the shift target in the
4488 middle of shift sequences.
4489
4977bab6
ZW
4490Wed Oct 23 22:48:44 CEST 2002 Jan Hubicka <jh@suse.cz>
4491
4492 * i386.md (abs splitters): Do not produce nested subregs.
4493
4494Wed Oct 23 12:42:32 CEST 2002 Jan Hubicka <jh@suse.cz>
4495
4496 * i386.md (movti_rex64): Fix constraints.
4497
4498Wed Oct 23 12:01:21 CEST 2002 Jan Hubicka <jh@suse.cz>
4499
4500 * i386.md (abssf,absdf): Use vector operands for SSE
4501 (abssf2_ifs, absdf2_ifs, absdf2_ifs_rex64 and splitters): Update for
4502 vector operand.
4503
196e1ae3
ZL
45042002-10-23 Ziemowit Laski <zlaski@apple.com>
4505
4506 * objc/objc-act.c (get_static_reference): Remove unneeded
4507 TYPE_BINFO initialization.
4508 (get_object-reference): Likewise.
4509 (build_constructor): Tighten precondition check.
4510 (finish_message_expr): Likewise.
4511
8bfb45f8
JJ
45122002-10-23 Jakub Jelinek <jakub@redhat.com>
4513
4514 * config/i386/i386.c (local_symbolic_operand): Move LABEL_REF test
4515 after CONST test.
4516
16448fd4
SE
45172002-10-23 Steve Ellcey <sje@cup.hp.com>
4518
4519 * config/ia64/ia64.c (hfa_element_mode): Don't allow 128 bit floats
4520 in HFAs.
4521
e2358068
RH
45222002-10-23 Richard Henderson <rth@redhat.com>
4523
4524 * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
4525 (alpha_output_mi_thunk_osf): Handle vcall_offset.
4526
8bcefb43
ZW
45272002-10-23 Zack Weinberg <zack@codesourcery.com>
4528
4529 * langhooks.h (struct lang_hooks_for_tree_inlining): Add
4530 var_mod_type_p.
4531 * langhooks-def.h: Default for tree_inlining.var_mod_type_p is
4532 hook_tree_bool_false.
4533
4534 * tree.c (variably_modified_type_p): Moved here from
4535 cp/tree.c. Use lang_hooks.tree_inlining.var_mod_type_p for
4536 language-specific cases. Due to this, must weaken some 'if
4537 and only if' checks to merely 'if'.
4538 * tree.h: Prototype variably_modified_type_p.
4539
4540 * tree-inline.c (walk_tree): #undef WALK_SUBTREE_TAIL at end.
4541
8e509cf9
UW
45422002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
4543
4544 * config/s390/linux.h (CC1_SPEC, CC1PLUS_SPEC): Remove.
4545 * config/s390/s390.c (optimization_options): Disable -fcaller-saves.
4546
4547 * config/s390/s390-protos.h (fp_operand): Remove.
4548 * config/s390/s390.c (fp_operand): Remove.
4549 * config/s390/s390.md ("movdi"): Replace fp_operand by FP_REG_P.
4550 ("*movdi_lhi", "*movdi_lli", "*movdi_larl"): Likewise.
4551 ("movsi", "*movsi_lhi", "*movsi_lli"): Likewise.
4552 (movdi_31, movdf_31 splitters): Likewise.
8bcefb43 4553
8e509cf9
UW
4554 * config/s390/s390.h (IEEE_FLOAT): Remove.
4555 (TARGET_FLOAT_FORMAT): Define in terms of TARGET_IEEE_FLOAT.
4556 (INT_REGNO_P): Rename to ...
4557 (GENERAL_REGNO_P): ... this.
4558 (FLOAT_REGNO_P): Rename to ...
4559 (FP_REGNO_P): ... this.
4560 (ADDR_REGNO_P): New macro.
4561 (GENERAL_REG_P, ADDR_REG_P, FP_REG_P, CC_REG_P): New macros.
4562 (REGNO_OK_FOR_DATA_P, REGNO_OK_FOR_FP_P): Remove.
4563 (DATA_REG_P, FP_REG_P, ADDRESS_REG_P): Likewise.
4564 (HARD_REGNO_NREGS): Adapt to macro renaming.
4565 (HARD_REGNO_MODE_OK): Likewise.
4566
34bb030a
DE
45672002-10-23 David Edelsohn <edelsohn@gnu.org>
4568 Geoff Keating <geoffk@apple.com>
4569
4570 * config/rs6000/rs6000.c (rs6000_register_move_cost): New function.
4571 (rs6000_memory_move_cost): New function.
4572 * config/rs6000/rs6000-protos.h: Declare them.
4573 * config/rs6000/rs6000.h: Use them.
4574
1ab9ba62
UW
45752002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
4576
8bcefb43 4577 * libgcc2.c (__udiv_w_sdiv): Use attribute ((always_inline)) when
1ab9ba62
UW
4578 inlining it into other libgcc2 routines.
4579 (__udivmoddi4): Likewise.
4580
4b2ece8f
NN
45812002-10-22 Nathanael Nerode <neroden@gcc.gnu.org>
4582
4583 * doc/sourcebuild.texi (Test Suites): Improve.
4584
2d173d20
SS
45852002-10-22 Stan Shebs <shebs@apple.com>
4586
4587 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Add missing
4588 case for Darwin.
4589
43146684
JW
45902002-10-22 Jim Wilson <wilson@redhat.com>
4591
4592 * config/i386/i386.md (subdi3_1): Add call to ix86_binary_operator_ok.
4593
a00782ed
JH
4594Wed Oct 23 01:52:36 CEST 2002 Jan Hubicka <jh@suse.cz>
4595
4596 PR other/8289
4597 * xmmintrin.h: Add const to the argument of loads.
4598
4599 * i386.md (pushv2di): New pattern.
4600 PR target/6890
4601 * xmmintrin.h (_MM_TRANSPOSE4_PS): New.
4602
3961e8fe
RH
46032002-10-22 Richard Henderson <rth@redhat.com>
4604
4605 * target.h (gcc_target.asm_out): Merge output_mi_thunk and
4606 output_mi_vcall_thunk into a single hook. Add can_output_mi_thunk.
4607 * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Don't conditionalize.
4608 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
4609 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4610 (TARGET_ASM_OUT): Update.
4611 * hooks.c (hook_bool_tree_hwi_hwi_tree_false): New.
4612 (hook_bool_tree_hwi_hwi_tree_true): New.
4613 (default_can_output_mi_thunk_no_vcall): New.
4614 * hooks.h: Declare them.
4615 * system.h (ASM_OUTPUT_MI_THUNK): Poison.
4616
4617 * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4618 (alpha_output_mi_thunk_osf): Add VCALL_OFFSET parameter.
4619 * config/arm/arm.c, config/cris/cris.c, config/frv/frv.c,
4620 config/i960/i960.c, config/ia64/ia64.c, config/m68k/m68k.c,
4621 config/mmix/mmix.c, config/pa/pa.c, config/sparc/sparc.c,
4622 config/stormy16/stormy16.c: Similarly.
4623
4624 * config/i386/i386.c (x86_output_mi_thunk): Merge vcall_offset code.
4625 Handle 64-bit properly. Streamline.
4626 (x86_output_mi_vcall_thunk): Remove.
4627 (x86_this_parameter): Rename from ia32_this_parameter; handle 64-bit.
4628 (x86_can_output_mi_thunk): New.
4629 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
4630 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4631 (override_options): Don't zap targetm.asm_out.output_mi_vcall_thunk.
4632
4633 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Rename from
4634 output_mi_thunk; make static; always use function_section.
4635 (TARGET_ASM_OUTPUT_MI_THUNK): New.
4636 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4637 (rs6000_ra_ever_killed): Test no_new_pseudos not
4638 targetm.asm_out.output_mi_thunk in conjunction with thunks.
4639 * config/rs6000/rs6000-protos.h: Update.
4640 * config/rs6000/sysv4.h (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
4641 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't call
4642 xcoffout_declare_function when using rs6000_output_mi_thunk.
4643
8bcefb43 4644 * config/s390/s390.c (s390_output_mi_thunk): Rename from
3961e8fe
RH
4645 s390_output_mi_vcall_thunk.
4646 (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
4647 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4648
4649 * config/vax/vax.c (vax_output_mi_thunk): Static; add vcall_offset.
4650 (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4651 * config/vax/vax-protos.h: Update.
4652 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove.
4653
0e67d460
JH
4654Wed Oct 23 00:33:11 CEST 2002 Jan Hubicka <jh@suse,cz>
4655
4656 * i386.c (standard_sse_constant_p): Accept vector and integer zeros too.
4657 * i386.h (EXTRA_CONSTRAINT): Recognize 'C'
4658 * i386.md (movti_internal): Use 'C'
4659
4660 * xmmintrin.h (_mm_cmplt_epi*): New.
4661
d5869ca0
UW
46622002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
4663
4664 * config/s390/s390.md ("*movdi_64"): Fix op_type attribute.
4665 ("*movdf_64"): Likewise.
4666 ("*lshrdi3_64"): Likewise.
4667 ("blockage"): Add length attribute.
4668 ("lit"): Likewise.
4669
680dd104
JH
4670Tue Oct 22 23:51:34 CEST 2002 Jan Hubicka <jh@suse.cz>
4671
4672 * i386.md: FIx typo.
4673 (sse2_cvtsi2sd, sse2_pslrdq): Fix template.
4674 (sse2_umulv2siv2di3): Fix predicate.
4675 (sse2_psadbw, ashrv8hi3, ashrv4si3, lshrv8hi3 lshrv4si3,
4676 lshrv2di3, ashlv8hi3, ashlv4si3, ashlv2di3): Likewise.
4677 * xmmintrin.h (_mm_mul_epu16): Rename to...
4678 (_mm_mul_epu32): This one.
4679 (_mm_cvtsi32_si128, _mm_cvtsi128_si32): New.
4680
4681 (contains_128bit_aligned_vector_p): Undo accidental checkin.
4682
3aabf9a5
EC
46832002-10-22 Eric Christopher <echristo@redhat.com>
4684
4685 * config/sparc/sparc.h: Add #error.
4686
42c78618
UW
46872002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
4688
4689 * config.gcc [s390-*-linux]: Remove s390/t-linux from tmake_file.
4690 [s390x-*-linux*]: Likewise.
4691 * config/s390/t-linux: Remove.
4692 * config/s390/s390.h: Include fixdfdi.h when building libgcc2.
4693
077084dd
JH
4694Tue Oct 22 19:07:03 CEST 2002 Jan Hubicka <jh@suse.cz>
4695
4696 * i386.c (builtin_description): Add IX86_BUILTIN_PUNPCKHQDQ128.
4697 (ix86_expand_builtin): Fix MASKMOVDQU expasion.
4698 * i386.h (ix86_builtins): Add IX86_BUILTIN_PUNPCKHQDQ128.
4699 * i386.md (mmx_punpck?dq): Simplify.
4700 (sse2_pubpcklqdq): Fix.
4701 (sse2_pubpckhqdq): New.
4702 * xmmintrin.h (_mm_unpackhi_epi32): New.
4703
4704 * xmmintrin.h (_mm_cvt*, _mm_stream_pd): Fix prototypes.
4705 (_mm_shufflehi_epi16, _mm_shufflelo_epi16): Fix typo.
4706
8fe734a3
NS
47072002-10-22 Nathan Sidwell <nathan@codesourcery.com>
4708
4709 PR c++/7209
4710 * fold_const.c (fold_binary_op_with_conditional_arg): Always
4711 build compound_expr if we used save_expr.
4712
6a0a6ac4
AM
47132002-10-22 Alan Modra <amodra@bigpond.net.au>
4714
4715 * output.h (SECTION_NOTYPE): Define.
4716 * varasm.c (default_section_type_flags_1): Set SECTION_NOTYPE for
4717 init array sections.
4718 (default_elf_asm_named_section): Mind SECTION_NOTYPE.
4719 * config/arm/arm.c (arm_elf_asm_named_section): Likewise. Also
4720 merge TLS support.
4721
4977bab6
ZW
47222002-10-21 Richard Henderson <rth@redhat.com>
4723
4724 * config/i386/i386.c (ix86_function_ok_for_sibcall): Look at
4725 the function type, not the return type.
4726
5e26e5a2
RH
47272002-10-21 Richard Henderson <rth@redhat.com>
4728
4729 * real.c (sticky_rshift_significand): Return inexact, don't
4730 or it in immediately.
4731 (sub_significands): Accept incomming carry.
4732 (div_significands, rtd_divmod): Update for sub_significands change.
4733 (round_for_format): Update for sticky_rshift_significand change.
4734 (do_add): Don't involve the inexact bit in addition, do give the
4735 inexact bit as the subtraction carry-in.
4736 (encode_internal, decode_internal, real_internal_format): New.
4737 * real.h (real_internal_format): Declare.
4738
f8eef883
UW
47392002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4740
4741 * libgcc2.c: Fix __udiv_w_sdiv breakage on platforms that
4742 don't define sdiv_qrnnd.
4743
89e56fe5
KH
47442002-10-21 Kazu Hirata <kazu@cs.umass.edu>
4745
4746 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Simplify
4747 using IN_RANGE.
4748 (TINY_CONSTANT_ADDRESS_P): Likewise.
4749
f02e1358
JH
4750Tue Oct 22 00:04:20 CEST 2002 Jan Hubicka <jh@suse.cz>
4751
4752 * i386.c (builtin_description): Add punpcklqdq and movdq2q
4753 (ix86_init_mmx_sse_builtins): Add v2di_ftype_void, di_ftype_v2di,
4754 v16qi_ftype_pchar, void_ftype_pchar_v16qi, v4si_ftype_pchar,
4755 void_ftype_pchar_v4si; Initialize __builtin_ia32_movdq2q,
4756 __builtin_ia32_loaddqa, __builtin_ia32_loaddqu, __builtin_ia32_loadd
4757 __builtin_ia32_storedqa, __builtin_ia32_storedqu, __builtin_ia32_stored
4758 __builtin_ia32_setzero128.
4759 (ix86_expand_builtin): Handle IX86_BUILTIN_CLRTI, IX86_BUILTIN_LOADDQA,
4760 IX86_BUILTIN_LOADDQU, IX86_BUILTIN_LOADD, IX86_BUILTIN_STOREDQA,
4761 IX86_BUILTIN_STOREDQU, IX86_BUILTIN_STORED, Ix86_BUILTIN_MOVQ.
4762 * i386.h (ix86_builtins): Add IX86_BUILTIN_LOADDQA, IX86_BUILTIN_LOADDQU,
4763 IX86_BUILTIN_STOREDQA, IX86_BUILTIN_STOREDQU, IX86_BUILTIN_LOADD,
4764 IX86_BUILTIN_STORED, IX86_BUILTIN_CLRTI, IX86_BUILTIN_MOVDQ2Q,
4765 IX86_BUILTIN_PUNPCKLQDQ128, Ix86_BUILTIN_MOVQ.
4766 * i386.md (sse2_punpcklqdq, sse2_movqsse2_loadd, sse2_stored,
4767 sse2_movq): New patterns.
4768 (sse2_movdqa, sse2_movdqu, sse2_movdq2q): Fix.
4769 * xmmintrin.h (_mm_load_si128, _mm_loadu_si128, _mm_loadl_epi64,
4770 _mm_store_si128, _mm_storeu_si128, _mm_storel_epi64,
4771 _mm_setzero_si128, _mm_set_epi64, _mm_set_epi32, _mm_set_epi16,
4772 _mm_set_epi8, _mm_set1_epi64, _mm_set1_epi32, _mm_set1_epi16,
4773 _mm_set1_epi8, _mm_setr_epi64, _mm_setr_epi32, _mm_setr_epi16,
4774 _mm_setr_epi8, _mm_unpacklo_epi64,_mm_set_moveq): New functions.
4775 (_mm_insert_epi16): Fix.
4776
de40e1df
DJ
47772002-10-21 Dale Johannesen <dalej@apple.com>
4778
8bcefb43 4779 * config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
de40e1df
DJ
4780 unsafe math reversals correctly for RTL generation.
4781 (output_cbranch): Replace rs6000_reverse_condition call
4782 by its former definition.
4783
75d38379
JJ
47842002-10-21 Jakub Jelinek <jakub@redhat.com>
4785
4786 * config/i386/i386.c (x86_64_sign_extended_value): Add allow_rip
4787 argument. In CM_SMALL_PIC model consider SYMBOL_REFs binding locally or
4788 from constant pool or LABEL_REFs as sign extended if allow_rip.
4789 Change all +-1GB limits to +-16MB.
4790 (x86_64_general_operand, x86_64_szext_general_operand,
4791 x86_64_nonmemory_operand, x86_64_movabs_operand,
4792 x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
4793 legitimate_address_p, ix86_expand_int_movcc): Update callers.
4794 (local_symbolic_operand): Don't allow offsets bigger than +-16MB
4795 in CM_SMALL_PIC model.
4796 (legitimate_pic_address_disp_p): Don't check offsets before
4797 calling local_symbolic_operand.
4798 (legitimize_pic_address): Force offsets bigger than +-16MB into
4799 register.
4800 * config/i386/i386.h (EXTRA_CONSTRAINT, CONST_COSTS): Likewise.
4801 * config/i386/i386-protos.h (x86_64_sign_extended_value): Update
4802 prototype.
4803
4804 * configure.in: Test for @GOTNTPOFF and @INDNTPOFF on IA-32 too.
4805 Add x86-64 test. Set tls_first_minor to 14 on IA-32 and x86-64.
4806 * configure: Rebuilt.
4807 * config/i386/i386.c (x86_64_sign_extended_value): Don't allow TLS
4808 SYMBOL_REFs unless enclosed in UNSPEC. Handle UNSPEC_DTPOFF,
4809 UNSPEC_GOTNTPOFF and UNSPEC_NTPOFF.
4810 (legitimate_address_p): Allow foo@dtpoff(base) even on TARGET_64BIT
4811 -fpic.
4812 (ix86_encode_section_info): Don't ever generate TLSGD or TLSLD for
4813 non-pic code if TARGET_64BIT.
4814 (legitimize_address): Generate 64-bit TLS sequences.
4815 (output_pic_addr_const): Support x86-64 TLS operators.
4816 (i386_output_dwarf_dtprel): Output 64-bit DTPOFF as .long f@DTPOFF, 0.
4817 (print_operand_address): Use %fs instead of %gs on TARGET_64BIT.
4818 Don't append (%rip) in 64-bit TLSGD and TLSLD sequences.
4819 (output_addr_const_extra): Support x86-64 TLS operators.
4820 (maybe_get_pool_constant): Handle TARGET_64BIT -fpic.
4821 (ix86_tls_get_addr): Use __tls_get_addr on TARGET_64BIT
4822 unconditionally.
4823 * config/i386/i386.md (*tls_global_dynamic_gnu): Renamed to...
4824 (*tls_global_dynamic_32_gnu): ..., add !TARGET_64BIT.
4825 (*tls_global_dynamic_sun): Renamed to...
4826 (*tls_global_dynamic_32_sun): ..., add !TARGET_64BIT.
4827 (tls_global_dynamic): Renamed to...
4828 (tls_global_dynamic_32): ... this.
4829 (tls_global_dynamic_64, *tls_global_dynamic_64): New.
4830 (*tls_local_dynamic_base_dynamic_gnu): Renamed to...
4831 (*tls_local_dynamic_base_dynamic_32_gnu): ..., add !TARGET_64BIT.
4832 (*tls_local_dynamic_base_dynamic_sun): Renamed to...
4833 (*tls_local_dynamic_base_dynamic_32_sun): ..., add !TARGET_64BIT.
4834 (tls_local_dynamic_base_dynamic): Renamed to...
4835 (tls_local_dynamic_base_dynamic_32): ... this.
4836 (tls_local_dynamic_base_dynamic_64,
4837 *tls_local_dynamic_base_dynamic_64): New.
4838 (*tls_local_dynamic_once): Renamed to...
4839 (*tls_local_dynamic_32_once): ... this.
4840
59798a0c
UW
48412002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4842
4843 * libgcc2.c: Inline __udiv_w_sdiv when compiling __udivdi3,
4844 __divdi3, __umoddi3, or __moddi3.
4845
97d05bfd
UW
48462002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4847
4848 * c-opts.c (missing_arg): Use cl_options[opt_index].opt_code
4849 instead of just opt_index as switch expression.
4850
4851 * calls.c (store_one_arg): Change type of 'excess_align'
4852 to unsigned int.
4853
4854 * profile.c (output_gcov_string): Change type of 'temp'
4855 to size_t.
4856
5d4d885c
UW
48572002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4858
4859 * config/s390/fixdfdi.h (__fixunsdfdi, __fixdfdi): Add prototypes.
4860 (__fixunssfdi, __fixsfdi): Likewise.
4861 * config/s390/s390.c (s390_single_hi): Initialize 'value'.
4862 (s390_single_qi): Likewise.
4863 (s390_emit_epilogue): Initialize 'offset'. Remove signed vs.
4864 unsigned comparison warning.
4865 (s390_return_addr_rtx): New function.
4866 * config/s390/s390-protos.h (s390_return_addr_rtx): Declare it.
4867 * config/s390/s390.h (RETURN_ADDR_RTX): Use it.
4868 (HARD_REGNO_MODE_OK): Rewrite condition to silence warnings.
4869
3062825f
UW
48702002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4871
4872 * config/s390/s390.c (s390_output_mi_vcall_thunk): New function.
4873 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define target hook.
4874 (s390_output_mi_thunk): Remove.
4875 (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
4876
2918c993
KH
48772002-10-21 Kazu Hirata <kazu@cs.umass.edu>
4878
4879 * config/h8300/h8300.h (N_REG_CLASSES): Parenthesize.
4880
4977bab6
ZW
48812002-10-20 Zack Weinberg <zack@codesourcery.com>
4882
4883 * config/i386/i386.c (ix86_function_ok_for_sibcall): Fix an
4884 inverted test in the conditional determining the possibility
4885 of sibcalls in PIC mode.
4886
c590b625
RH
48872002-10-20 Richard Henderson <rth@redhat.com>
4888
4889 * target.h (struct gcc_target): Line wrap.
4890
4891 * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Static.
4892 (TARGET_ASM_OUTPUT_MI_THUNK): Define here...
4893 * config/alpha/alpha.h: ... not here.
4894 * config/alpha/alpha-protos.h: Update.
4895
4896 * config/arm/arm.c, config/arm/arm.h, config/arm/arm-protos.h
4897 config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
4898 config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
4899 config/i386/i386-protos.h, config/i386/i386.c, config/i386/openbsd.h,
4900 config/i386/unix.h, config/i960/i960-protos.h, config/i960/i960.c,
4901 config/i960/i960.h, config/ia64/ia64-protos.h, config/ia64/ia64.c,
4902 config/ia64/ia64.h, config/m68k/linux.h, config/m68k/m68k-protos.h,
4903 config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
4904 config/mmix/mmix-protos.h, config/mmix/mmix.c, config/mmix/mmix.h,
3aabf9a5 4905 config/pa/pa-protos.h, config/pa/pa.c, config/pa/pa.h,
c590b625
RH
4906 config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
4907 config/sparc/openbsd.h, config/sparc/sparc-protos.h,
4908 config/sparc/sparc.c, config/sparc/sparc.h,
4909 config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
4910 config/stormy16/stormy16.h: Similarly.
4911
4912 * config/m68k/m68k.c (m68k_output_mi_thunk): Replicate mnemonic
4913 selection logic from call patterns.
4914
16f7d029
MM
49152002-10-20 Mark Mitchell <mark@codesourcery.com>
4916
4917 * config/m68k/m68k.c (m68k_output_mi_thunk): Fix typo.
4918
ab3146fd
ZD
49192002-10-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
4920
4921 PR other/8202
4922 * i386.c (ix86_init_mmx_sse_builtins, ix86_expand_builtin): Define and
4923 expand __builtin_ia32_pslldqi128 and __builtin_ia32_psrldqi128.
4924 * i386.h (IX86_BUILTIN_PSLLDQI128, IX86_BUILTIN_PSRLDQI128): New.
4925 * xmmintrin.h (_mm_srli_si128, _mm_slli_si128): New.
4926
e03b7153
RS
49272002-10-20 Roger Sayle <roger@eyesopen.com>
4928
4929 PR c/761
4930 * toplev.c (flag_unsafe_profile_arcs): Remove.
4931 (flag_bounded_pointers): Remove.
4932 (flag_bounds_check): Correct comments.
4933 (lang_independent_options): Remove -funsafe-profile-arcs and
4934 -fbounded-pointers. Correct -fbounds-check comments.
4935
4936 * flags.h: Correct flag_schedule_interblock comments.
4937 (flag_bounded_pointers): Remove prototype.
4938 (flag_bounds_check): Correct comments.
4939
4940 * c-opts.c (c_common_init_options): No need to mark
4941 flag_bounds_check as unspecified.
4942 (c_common_post_options): And no need to set it from
4943 flag_bounded_pointers if its still unspecified.
4944
4945 * doc/invoke.texi: Fix some overfull hboxes in "make dvi".
4946 Document --version, -feliminate-dwarf-2-dups, -fno-sched-interblock,
4947 -fno-sched-spec, -fsched-spec-load, -fsched-spec-load-dangerous,
4948 -fsched-verbose=n, -fno-branch-count-reg and -fbounds-check.
4949
4977bab6
ZW
4950Sat Oct 19 22:02:28 2002 Alexandre Oliva <aoliva@redhat.com>
4951 Angela Marie Thomas <angela@releasedominatrix.com>
4952 Brendan Kehoe <brendan@zen.org>
4953 Nick Clifton <nickc@redhat.com>
4954 Andrew Haley <aph@redhat.com>
4955
4956 * configure.in (--with-sysroot): New. Don't inhibit libc if
4957 given. AC_SUBST TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE
4958 and CROSS_SYSTEM_HEADER_DIR.
4959 * configure: Rebuilt.
4960 * Makefile.in (CROSS_SYSTEM_HEADER_DIR): Set in configure.
4961 (TARGET_SYSTEM_ROOT): New.
4962 (DRIVER_DEFINES): Define CROSS_INCLUDE_DIR from
4963 CROSS_SYSTEM_HEADER_DIR.
4964 (install-gcc-tooldir): New target.
4965 (stmp-fixinc): Do not create $(libsubdir), but rather bail out
4966 if SYSTEM_HEADER_DIR does not exist and it's not the default
4967 sys-include directory.
4968 (deduced.h, stmp-fixproto): Quote SYSTEM_HEADER_DIR properly.
4969 (install-mkheaders): Likewise.
4970 * gcc.c (target_system_root): New variable.
4971 (add_sysrooted_prefix): New function.
4972 (process_command): Recompute run-time target_system_root from
4973 gcc_exec_prefix, keeping it unchanged if the relocated sysroot
4974 does not exist.
4975 (do_spec_1): Process 'R' spec.
4976 (main): Add md_exec_prefix to exec_prefixes regardless of
4977 startfile_prefix_spec. Use add_sysrooted_prefix for
4978 startfile_prefixes, and don't skip the default ones when cross
4979 compiling with sysroot enabled. Removed unused case of
4980 non-absolute standard_startfile_prefix.
4981 * config/interix.h: Remove the only potential, yet disabled,
4982 occurrence of non-absolute (empty) standard_startfile_prefix.
4983 * config/sh/linux.h (LIB_SPEC): Add -rpath-link in non-static
4984 linking.
4985 * config/mips/linux.h (LIB_SPEC): Define as in sh/linux.h.
4986 * doc/install.texi (--with-sysroot): Document.
4987 (--with-headers, --with-libs): Deprecate.
4988
eb0424da 49892002-10-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8bcefb43 4990 Mark Mitchell <mark@codesourcery.com>
eb0424da
MM
4991
4992 * alpha-protos.h (alpha_output_mi_thunk_osf): Update signature to
4993 match target.h.
4994 * arm-protos.h, arm.c (arm_output_mi_thunk): Likewise.
4995 * cris-protos.h, cris.c (cris_asm_output_mi_thunk): Likewise.
4996 * frv-protos.h, frv.c (frv_asm_output_mi_thunk): Likewise.
4997 * i386-protos.h, i386.c (x86_output_mi_vcall_thunk,
4998 x86_output_mi_thunk): Likewise.
4999 * i960-protos.h, i960.c (i960_output_mi_thunk): Likewise.
5000 * ia64-protos.h, ia64.c (ia64_output_mi_thunk): Likewise.
5001 * m68k-protos.h, m68k.c (m68k_output_mi_thunk): Likewise.
5002 * mmix-protos.h, mmix.c (mmix_asm_output_mi_thunk): Likewise.
5003 * rs6000-protos.h, rs6000.c (output_mi_thunk): Likewise.
5004 * s390-protos.h, s390.c (s390_output_mi_thunk): Likewise.
5005 * stormy16-protos.h, stormy16.c (xstormy16_asm_output_mi_thunk):
5006 Likewise.
5007 * vax-protos.h, vax.c (vax_output_mi_thunk): Likewise.
3aabf9a5 5008
eb0424da
MM
5009 * target.h (gcc_target): Update output_mi_thunk and
5010 output_mi_vcall_thunk to take a HOST_WIDE_INT delta and
5011 vcall_index.
5012
5013 * config/alpha/alpha.c: Replace ASM_OUTPUT_MI_THUNK with
5014 TARGET_ASM_OUTPUT_MI_THUNK in comments.
5015 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): Don't #undef it.
5016 (TARGET_ASM_OUTPUT_MI_THUNK): #undef it.
5017 * config/frv/frv.h (DEFAULT_VTABLE_THUNKS): Remove definition.
5018 * config/i386/i386-protos.h (x86_output_mi_vcall_thunk): Update
5019 signature.
5020 * config/i386/i386.c (x86_output_mi_vcall_thunk): Likewise.
5021 * config/i386/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
5022 TARGET_ASM_OUTPUT_MI_THUNK in comments.
5023 * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Don't define.
5024 (TARGET_ASM_OUTPUT_MI_THUNK): Do define.
5025 * config/m68k/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
5026 TARGET_ASM_OUTPUT_MI_THUNK in comments.
5027 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Remove #ifdef
5028 ASM_OUTPUT_MI_THUNK and replace with check of targetm.
5029
5030 * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Update signature.
5031 (TARGET_ASM_OUTPU_MI_VCALL_THUNK): Likewise.
3aabf9a5 5032
433d5d04
BL
50332002-10-19 Brad Lucier <lucier@math.purdue.edu>
5034
5035 * real.c (do_add): Fix 0+0 sign corner case.
5036 (do_divide): Fix Inf/0 corner case.
5037
1194ca05
JH
5038Sun Oct 20 00:31:31 CEST 2002 Jan Hubicka <jh@suse.cz>
5039
5040 * i386.c (classify_argument): Pass MMX arguments in memory
5041 (ix86_expand_builtin): Expand proper address mode for cflush.
5042 * i386.md (movdqa): Fix typo.
5043 (sse2_cflush): Accept DImode addresses.
5044
5045 * xmmintrin.h (_mm_sqrt_sd): Accept two arguments.
5046 (_mm_max_sd): Fix pasto.
5047 (_mm_storeh_pd, _mm_storel_pd): Fix.
5048
5049 * i386.c (bdesc_comi): Fix to match specification.
5050 (ix86_expand_sse_comi): Emit the comparison properly.
5051 * i386.md (sse_comi, sse2_comi, sse_ucomi, sse2_ucomi):
5052 Do not use comparison operator.
5053 (vnmaskcmp): Fix template.
5054
5055 * xmmintrin.h (_mm_cvtps_pi16): Fix.
5056
3df5d99e
SP
50572002-10-19 Sebastian Pop <s.pop@laposte.net>
5058
5059 * dependence.c : Removed.
8bcefb43 5060 * Makefile.in : Remove dependence.o.
3df5d99e 5061
822eda12
JH
5062Sat Oct 19 10:46:52 CEST 2002 Jan Hubicka <jh@suse.cz>
5063
5064 * mmintrin.h (__m64): typedef it to v2si.
5065 (_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16,
5066 _mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16,
5067 _mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64,
5068 _mm_srli_pi64, _mm_and_si64, _mm_andnot_si64,
5069 _mm_or_si64, _mm_xor_si64): Add neccesary casts.
5070 * xmmintrin.h (_mm_setzero_si64): Likewise.
5071
5072 * i386.h (ALIGN_MODE_128): Update comment; add missing modes
5073 (SSE_REG_MODE_P, MMX_REG_MODE_P): New macros.
5074
5075 PR target/7693
5076 Patch by Shawn Wagner
5077 * mmintrin.h: Replace pi64 by si64.
5078
914a7297
DE
50792002-10-18 David Edelsohn <edelsohn@gnu.org>
5080
5081 * rs6000.md (movdf_hardfloat32): Order alternatives consistently.
5082 Use length of 4 not *.
5083 (movdf_hardfloat64): Same. Support DFmode moves to/from CTR/LR.
5084 (movdf_softfloat64): Likewise.
5085 (movdi_internal32): Use length of 4 not *.
5086 (movti_power): Same.
5087 (ctrsi, ctrdi): Same.
5088
4a7510cb
ZW
50892002-10-18 Zack Weinberg <zack@codesourcery.com>
5090
5091 * c-decl.c (start_decl): Point users of the old initialized-
5092 typedef extension at __typeof__.
5093
99c57613
RH
50942002-10-18 Richard Henderson <rth@redhat.com>
5095
5096 * real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New.
5097 (real_to_decimal): Re-implement using the logic from the
5098 gcc 3.2 etoasc. Comment heavily.
5099 (div_significands): Simplify loop startup and comparison logic.
5100
483ab821
MM
51012002-10-18 Mark Mitchell <mark@codesourcery.com>
5102
5103 * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL.
5104 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise.
5105 (TARGET_ASM_OUT): Add them.
5106 * target.h (asm_out): Add output_mi_thunk and
5107 output_mi_vcall_thunk.
5108 * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5109 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5110 * config/arm/arm-protos.h (arm_output_mi_thunk): Declare.
5111 * config/arm/arm.c (arm_output_mi_thunk): Define.
5112 * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5113 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5114 * config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5115 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5116 * config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5117 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5118 * config/i386/i386-protos.h (x86_output_mi_thunk): Adjust
5119 prototype.
5120 (x86_output_mi_vcall_thunk): Declare.
5121 * config/i386/i386.c (override_options): Clear
5122 output_mi_vcall_thunk in 64-bit mode.
5123 (ix86_fntype_regparm): New function.
5124 (ix86_return_pops_args): Use it.
5125 (ia32_this_parameter): New function.
5126 (x86_output_mi_vcall_thunk): New function.
5127 (x86_output_mi_thunk): Use it
5128 * config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust.
5129 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define.
5130 * config/i960/i960-protos.h (i960_output_mi_thunk): Declare.
5131 * config/i960/i960.c (i960_output_mi_thunk): New function.
5132 * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust.
5133 * config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare.
5134 * config/ia64/ia64.c (ia64_output_mi_thunk): Define.
5135 * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5136 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5137 * config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function.
5138 * config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5139 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5140 * config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5141 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5142 * config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5143 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5144 * config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5145 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5146 * config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5147 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5148 * config/s390/s390-protos.h (s390_output_mi_thunk): Declare.
5149 * config/s390/s390.c (s390_output_mi_thunk): Define.
5150 * config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5151 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5152 * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5153 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5154 * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5155 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5156 * config/vax/vax-protos.h (vax_output_mi_thunk): Declare.
5157 * config/vax/vax.c (vax_output_mi_thunk): Define.
5158 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5159 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5160 * doc/tm.texi: Adjust documentation.
4a7510cb 5161
90e021a0
JT
51622002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
5163
4a7510cb
ZW
5164 * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define
5165 __enable_execute_stack function.
90e021a0
JT
5166 * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define
5167 as NETBSD_ENABLE_EXECUTE_STACK.
5168 * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5169 * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5170 * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5171 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5172 * config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5173
5791cc29
JT
51742002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
5175
5176 * config/i386/i386.c (x86_initialize_trampoline): Emit a call
5177 to __enable_execute_stack with the address of the trampoline
5178 if TRANSFER_FROM_TRAMPOLINE is defined.
5179 * config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
5180 constant if building libgcc2.
5181
4977bab6
ZW
5182Thu Oct 17 17:40:05 CEST 2002 Jan Hubicka <jh@suse.cz>
5183
5184 * i386.c (pentium4_cost): Fix according to Intel recommendations.
5185 (ix86_memory_move_cost): Fix for 64bit compilation.
5186
7b35bba3
RS
51872002-10-17 Roger Sayle <roger@eyesopen.com>
5188
5189 * doc/c-tree.texi: Update description of COND_EXPR tree nodes.
5190
b991a865
GK
51912002-10-17 Geoffrey Keating <geoffk@apple.com>
5192
5193 * config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes
5194 in CTR/LR/MQ.
5195 * config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves
5196 to/from CTR/LR/MQ.
5197 (movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ.
5198 (movsf_softfloat): Likewise.
5199
fa870451
JJ
52002002-10-17 Janis Johnson <janis187@us.ibm.com>
5201
5202 * Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS.
5203
e31c2957
JT
52042002-10-17 Jason Thorpe <thorpej@wasabisystems.com>
5205
5206 * config/alpha/alpha.c (alpha_initialize_trampoline): Use
5207 tramp, not addr, to pass the trampoline address to
5208 __enable_execute_stack.
5209
48126a97
JH
5210Thu Oct 17 18:40:47 CEST 2002 Jan Hubicka <jh@suse.cz>
5211
5212 * mmintrin.h: Guard by __MMX__
5213 * xmmintrin.h: Guard by __SSE__
5214
5215 PR other/8062
5216 * xmmintrin.h (_MM_SHUFFLE2): New macro.
5217 (_mm_load*_?d): New functions.
5218 (_mm_set*_?d): New functions.
5219 (_mm_store*_?d): New functions.
5220
2ffa9932
JH
5221Wed Oct 16 15:01:29 CEST 2002 Jan Hubicka <jh@suse.cz>
5222
5223 Really commit patch announced at Oct 14
5224 PR c/7344
5225 * predict.c (can_predict_insn_p): New function.
5226 (estimate_probability): Avoid unnecesary work.
5227 (process_note_prediction): Likewise.
5228 * toplev.c (rest_of_compilation): Account early branch prediction pass
5229 as TV_BRANCH_PROB.
5230
ccc4bdea
JH
5231 PR other/8048
5232 Found by Ian Ollmann
5233 * xmmintrin.h (_mm_shuffle_pd): Fix typo.
5234 (_mm_load?_pd): Likewise.
5235 (_mm_store?_pd): Likewise.
5236
5237 PR target/7386
5238 * i386.c (builtin_description):Drop cmpg[te]s[sd].
5239 * xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using
5240 swapped alternative.
5241
5242 PR opt/7630
5243 * reload1.c (reload_inner_reg_of_subreg): New argument output;
5244 (push_reload): Update call.
5245
4db83639
RS
52462002-10-17 Richard Sandiford <rsandifo@redhat.com>
5247
5248 * config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines
5249 if using mips/elf.h or mips/elf64.h.
5250 * config/mips/elf.h (OBJECT_FORMAT_ELF): Remove.
5251 * config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove.
5252
f9dd72da
AH
52532002-10-16 Aldy Hernandez <aldyh@redhat.com>
5254
5255 * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
5256 SI.
5257
63a1ff86
UW
52582002-10-16 Ulrich Weigand <uweigand@de.ibm.com>
5259
5260 * config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
5261 (LPREFIX): Likewise.
5262 (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME,
5263 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
5264 ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS,
5265 TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
5266 GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h.
5267
4a7510cb
ZW
5268 * config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX,
5269 ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP,
5270 ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
63a1ff86
UW
5271 BSS_SECTION_ASM_OP): Move from linux.h.
5272 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
5273 Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
5274
4a7510cb 5275 * config/s390/s390.c (s390_function_profiler): Use
63a1ff86
UW
5276 ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
5277
4977bab6
ZW
52782002-10-15 Eric Christopher <echristo@redhat.com>
5279
5280 * stor-layout.c (layout_type): Call GET_MODE_BITSIZE once.
5281 * java/parse.y (obtain_incomplete_type): Make pointer
5282 ptr_mode.
5283
da6eec72
RH
52842002-10-15 Richard Henderson <rth@redhat.com>
5285
5286 * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
5287 as arguments. Bound DIGITS by the available buffer size.
5288 (real_to_hexadecimal): Likewise.
5289 * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
5290 (REAL_VALUE_TO_DECIMAL): Remove.
5291 * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
5292 sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
4a7510cb 5293 config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
da6eec72
RH
5294 config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
5295 config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
4a7510cb 5296 config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
da6eec72
RH
5297 config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
5298 use real_to_decimal directly, and with the proper arguments.
5299 * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
5300
c15c18c5
JW
53012002-10-15 Jim Wilson <wilson@redhat.com>
5302
5303 * reload1.c (merge_assigned_reloads): After converting overlapping
5304 reloads to RELOAD_OTHER, abort if there are now conflicting reloads.
5305
5306 * config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok.
5307
74f6d071
JH
5308Tue Oct 15 22:08:35 CEST 2002 Jan Hubicka <jh@suse.cz>
5309
5310 * expr.c (do_tablejump): Fix typo in my previous commit.
5311
a2ee89d8
RS
53122002-10-15 Richard Sandiford <rsandifo@redhat.com>
5313
5314 * config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}.
5315
aee4e0db
UW
53162002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
5317
5318 * config/s390/s390.c (s390_split_branches): Add return
5319 value. Add parameters TEMP_REG and TEMP_USED. Use unspec 104.
5320
5321 (find_base_register_in_addr): New function.
5322 (find_base_register_ref): New function.
5323 (replace_base_register_ref): New function.
5324
5325 (struct constant_pool): Add members pool_insn, insns, and anchor.
5326 Remove member last_insn.
5327 (s390_start_pool): Initialize them.
4a7510cb 5328 (s390_end_pool): Emit pool placeholder insn.
aee4e0db
UW
5329 (s390_add_pool_insn): New function.
5330 (s390_find_pool): Use insns bitmap instead of addresses.
5331 (s390_dump_pool): Replace placeholder insn. Emit anchor.
5332 Replace unspec 104 by local-pool-relative references.
5333 (s390_output_constant_pool): Output anchor label if required.
5334 (s390_output_symbolic_const): Handle unspec 104 and 105.
5335 (s390_add_pool): Remove, replace by ...
5336 (s390_add_constant, s390_find_constant): ... these new functions.
5337 (s390_add_anchor): New function.
5338
5339 (s390_chunkify_pool): Delete, replace by ...
4a7510cb 5340 (s390_chunkify_start, s390_chunkify_finish,
aee4e0db
UW
5341 s390_chunkify_cancel): ... these new functions.
5342 (s390_optimize_prolog): Add parameter TEMP_REGNO.
5343 Recompute register live data for special registers.
5344 (s390_fixup_clobbered_return_reg): New function.
5345 (s390_machine_dependent_reorg): Rewrite to use new
5346 s390_chunkify_... routines.
5347
5348 config/s390/s390.md ("reload_base"): Rename to ...
5349 ("reload_base_31"): ... this.
5350 ("reload_base_64"): New insn.
5351 ("reload_base2"): Remove.
5352 ("reload_anchor"): New insn.
5353 ("pool"): New insn.
5354
5355 s390.c (s390_pool_overflow): Remove.
5356 s390.h (s390_pool_overflow): Likewise.
5357 s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow.
5358
c034672a
R
5359Tue Oct 15 16:51:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
5360
5361 * sh.md (movv8qi_i+2): Don't split if source is -1.
5362
b8db17af
JJ
53632002-10-15 Janis Johnson <janis187@us.ibm.com>
5364
5365 * doc/install.texi: Formatting changes for conformance to HTML 4.01.
5366
2d34c587
UW
53672002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
5368
5369 PR opt/7409
5370 * loop.c (loop_regs_scan): Mark registers used for function
5371 argument passing as MAY_NOT_OPTIMIZE.
5372
4977bab6
ZW
5373Mon Oct 14 19:22:19 CEST 2002 Jan Hubicka <jh@suse.cz>
5374
5375 * gcov-io.h (gcov_info): Fix type.
5376 * profile.c (create_profiler): Fix type mismatch.
5377
1877be45
JH
5378Mon Oct 14 20:33:12 CEST 2002 Jan Hubicka <jh@suse.cz>
5379
5380 * i386.md (movv2di_internal): New pattern.
5381 (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate.
5382 (movv2di): New expander.
5383 * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands.
5384
5385 * i386.c (ix86_expand_timode_binop_builtin): Delete.
5386 (builtin_description): Add SSE1 logicals; rename SSE2 logicals.
5387 (ix86_init_mmx_sse_builtins): Kill SSE1 logicals.
5388 (ix86_expand_builtin): Likewise.
5389 * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
4a7510cb 5390 sse_andti3,
1877be45 5391 sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
4a7510cb 5392 sse_andnti3,
1877be45 5393 sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2,
4a7510cb 5394 sse_orti3,
1877be45 5395 sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2,
4a7510cb 5396 sse_xorti3): Kill.
1877be45
JH
5397 (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3,
5398 sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders.
5399 (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3,
5400 *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns.
5401 (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3,
5402 *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns.
5403
5404 * xmmintrin.h (__m128i): Define as __v2di.
5405
1877be45
JH
5406 PR c++/6419
5407 (expand_expr): Use DECL_RTL_SET_P.
5408
dbf4f1a2
RS
54092002-10-14 Roger Sayle <roger@eyesopen.com>
5410
5411 * combine.c (simplify_set): Treat MODE_CC registers like cc0.
5412
4f770e7b
RS
54132002-10-14 Roger Sayle <roger@eyesopen.com>
5414 Zack Weinberg <zack@codesourcery.com>
5415
5416 * config/i386/i386.c (k6_cost): Correct typo.
5417
a3b88570
MM
54182002-10-14 Mark Mitchell <mark@codesourcery.com>
5419
5420 PR optimization/6631
5421 * alias.c (objects_must_conflict_p): Check honor_readonly when
5422 examining TYPE_READONLY.
5423 * function.c (assign_stack_temp_for_type): Likewise.
5424
f5204e6c
FH
54252002-10-14 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
5426
5427 * config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix):
5428 Swap zero extension arguments.
5429 (umaxhi3): Fix instruction class.
5430 PR target/7211
5431 (prefetch): Fix prefetch instructions.
5432 PR target/7238
5433 (pkwb): Fix output constraint.
5434
40e6bc7e
AO
54352002-10-14 Alexandre Oliva <aoliva@redhat.com>
5436
5437 * config/mips/mips.c (print_operand): Increase buffer size for
5438 real numbers.
5439
f4e3e618
RH
54402002-10-14 Richard Henderson <rth@redhat.com>
5441
5442 PR opt/8165
5443 * gcse.c (adjust_libcall_notes): Revert last change.
5444 * simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM.
5445
3eb429b2
AH
54462002-10-14 Andrew Haley <aph@redhat.com>
5447
5448 * tree-inline.c (remap_block): All local class initialization
5449 flags go in the outermost scope.
5450 (expand_call_inline): Call java_inlining_map_static_initializers.
5451 (expand_call_inline): Call java_inlining_merge_static_initializers.
5452 * java/lang.c (merge_init_test_initialization): New.
5453 (java_inlining_merge_static_initializers): New.
5454 (inline_init_test_initialization): New.
5455 (java_inlining_map_static_initializers): New.
5456
5457 * tree-inline.c (expand_call_inline): Convert retvar to expected
5458 type.
5459
34146b94
GS
54602002-10-14 Graham Stott <graham.stott@btinternet.com>
5461
5462 * stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check.
5463
3a840c93
AH
54642002-10-14 Aldy Hernandez <aldyh@redhat.com>
5465
5466 * stmt.c: Fix typo in comment.
5467
7457a126
R
5468Mon Oct 14 11:35:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
5469
5470 * c-common.c (c_common_type_for_mode): Add V2HImode case.
5471 * tree.c (build_common_tree_nodes_2): Initialize
5472 unsigned_V2HI_type_node and V2HI_type_node.
5473 * tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE.
5474 (unsigned_V2HI_type_node, V2HI_type_node): Define.
5475
0d1c5774
JJ
54762002-10-14 Jakub Jelinek <jakub@redhat.com>
5477
5478 * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
5479 Handle TARGET_64BIT.
5480
adadd183
RS
54812002-10-14 Richard Sandiford <rsandifo@redhat.com>
5482
5483 * config/mips/vr.h (DRIVER_SELF_SPECS): Define.
5484 * config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32.
5485 (MULTILIB_DIRNAMES): Remove long32.
5486 (MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs.
5487 (MULTILIB_REDUNDANT_DIRS): Remove.
5488
db36994b
RS
54892002-10-14 Richard Sandiford <rsandifo@redhat.com>
5490
5491 * doc/tm.texi (DRIVER_SELF_SPECS): Document.
5492 * gcc.c (driver_self_specs): New variable.
5493 (do_self_spec): New function.
5494 (main): Use it to process driver_self_specs.
5495
11e5489b
RH
54962002-10-13 Richard Henderson <rth@redhat.com>
5497
4977bab6
ZW
5498 * config/i386/i386.c (ix86_function_ok_for_sibcall): Reject
5499 indirect sibcalls when regparm >= 3.
5500
5501 * config/i386/i386.c (sibcall_insn_operand): New.
5502 * config/i386/i386.h (PREDICATE_CODES): Update.
5503 * config/i386/i386-protos.h: Update.
5504 * config/i386/i386.md (sibcall_1, sibcall_value_1): Use it.
5505
11e5489b
RH
5506 * rtl.c (shallow_copy_rtx): Use memcpy for the entire node.
5507
4977bab6
ZW
55082002-10-12 Roger Sayle <roger@eyesopen.com>
5509
5510 * simplify-rtx.c (simplify_binary_operation) [ASHIFTRT]: Optimize
5511 arithmetic right shifts of ~0 during RTL simplifications.
5512
4ca1256f
NB
55132002-10-12 Neil Booth <neil@daikokuya.co.uk>
5514
5515 PR preprocessor/7862
5516 PR preprocessor/8190
5517 * gcc.c (cpp_unique_options): Don't delete .d files.
5518 Remove stray whitespace.
5519
cf860dc2
NS
55202002-10-12 Naohiko Shimizu <pshimizu@fa2.so-net.ne.jp>
5521
5522 * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant.
5523 (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
5524 * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o.
5525 (pdp11_output_function_epilogue, output_ascii): Likewise.
5526 (output_addr_const_pdp11): Likewise.
5527 * pdp11.md (movdi): Use offsetable memory for floating store.
5528 (lshrsi3, negsi2): Delete irrelevant comment.
5529
4977bab6
ZW
55302002-10-11 Andreas Bauer <baueran@in.tum.de>
5531
5532 * config/i386/i386.c (ix86_function_ok_for_sibcall): Allow
5533 indirect calls to be sibcall optimized.
5534 * config/i386/i386.md (sibcall_1): New.
5535 (call_1): Add no-sibcalls condition.
5536 (sibcall_value_1): New.
5537 (call_value_1): Add no-sibcalls condition.
5538
55392002-10-11 Eric Christopher <echristo@redhat.com>
5540
5541 * output.h (default_valid_pointer_mode): Declare.
5542 * varasm.c (default_valid_pointer_mode): Define.
5543 * target-def.h (TARGET_VALID_POINTER_MODE): Use.
5544 * target.h: Ditto.
5545 * tree.c (build_pointer_type_for_mode): New function.
5546 (build_pointer_type): Use.
5547 (build_reference_type_for_mode): New function.
5548 (build_reference_type): Use.
5549 * tree.h: Declare new functions.
5550 * c-common.c (handle_mode_attribute): Use new functions, check
5551 for type.
5552 * stor-layout.c (layout_type): Depend on machine mode for
5553 REFERENCE_TYPE and POINTER_TYPE.
5554 * dwarf2out.c (simple_type_size_in_bits): Move upward in file.
5555 (modified_type_die): Use instead of PTR_SIZE for POINTER_TYPE
5556 and REFERENCE_TYPE.
5557 * config/mips/mips.c (mips_valid_pointer_mode): New function.
5558 (TARGET_VALID_POINTER_MODE): Use and define.
5559 * config/mips/mips-protos.h (mips_valid_pointer_mode): Declare.
5560
5dd78e9a
GK
55612002-10-11 Geoffrey Keating <geoffk@apple.com>
5562
5563 * cse.c (mention_regs): Set SUBREG_TICKED to the register number,
5564 not the address of the REG.
5565 (struct cse_reg_info): Make subreg_ticked unsigned.
5566
8eb32f94
JJ
55672002-10-11 Janis Johnson <janis187@us.ibm.com>
5568
5569 * doc/compat.texi: Add info about C++ libraries.
5570
e197b6fc
RH
55712002-10-11 Richard Henderson <rth@redhat.com>
5572
5573 PR opt/8165
5574 * gcse.c (adjust_libcall_notes): Also adjust notes for INSN.
5575
a0bed689
JDA
55762002-10-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
5577
5578 * cfganal.c (dfs_enumerate_from): Use PARAMS.
5579 * genautomata.c (output_insn_code_cases): Likewise.
5580 * real.c (real_format): Likewise.
5581 * tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to
5582 ensure value is promoted before doing subtraction.
5583
db655634
JH
5584Fri Oct 11 22:22:38 CEST 2002 Jan Hubicka <jh@suse.cz>
5585
5586 * calls.c (expand_call): Simplify noreturn call.
5587
5588 PR c/7344
5589 * cfgbuild.c (make_edges): Create edge cache when we do have
5590 large jumptable.
1877be45 5591 * expr.c (do_tablejump): Note size of maximal jumptable.
db655634
JH
5592 * function.c (prepare_function_start): Zero out size.
5593 * function.h (function): Add max_jumptable_ents.
5594
5595 * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
5596
750afc12
R
5597Fri Oct 11 12:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
5598
5599 * sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI
5600 register for mperm_w operation.
5601
0488fa7c
JR
5602Fri Oct 11 10:56:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
5603
5604 * emit-rtl.c (gen_lowpart_common): When asked to make a vector from
5605 an integer, use simplify_gen_subreg.
5606
4977bab6
ZW
56072002-10-10 Diego Novillo <dnovillo@redhat.com>
5608
5609 * calls.c (flags_from_decl_or_type): Make extern.
5610 (ECF_*): Move ...
5611 * rtl.h (ECF_*): ... here.
5612 (flags_from_decl_or_type): Declare.
5613
56142002-10-10 Roger Sayle <roger@eyesopen.com>
5615 Nathan Sidwell <nathan@codesourcery.com>
5616
5617 * fold-const.c (fold) [RSHIFT_EXPR]: Optimize arithmetic right
5618 shifts of the form -1 >> x.
5619
5620Thu Oct 10 16:52:55 CEST 2002 Jan Hubicka <jh@suse.cz>
5621
5622 * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
5623
349e9f4b
AH
56242002-10-10 Aldy Hernandez <aldyh@redhat.com>
5625
5626 * extend.texi (Vector Extensions): Remove comment about single
5627 element vectors.
5628
7bdfd72e
KG
56292002-10-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5630
5631 * fold-const.c (size_htab_hash): Use htab_hash_pointer.
5632 * function.c (insns_for_mem_hash): Likewise.
5633 * varasm.c (STRHASH): Likewise.
5634
46081bb3
SH
56352002-10-10 Stuart Hastings <stuart@apple.com>
5636
5637 * cse.c (struct cse_reg_info): Add subreg_ticked.
5638 (SUBREG_TICKED): New.
5639 (get_cse_reg_info): Initialize SUBREG_TICKED.
5640 (mention_regs): Use it.
5641 (invalidate): Set SUBREG_TICKED.
5642 (invalidate_for_call): Likewise.
5643 (addr_affects_sp_p): Likewise.
5644
9785f1d9
JJ
56452002-10-10 Jakub Jelinek <jakub@redhat.com>
5646
5647 * config/i386/i386.md (tls_local_dynamic_base): Put pic reg
5648 into proper operand.
5649
b6878188
DC
56502002-10-10 Denis Chertykov <denisc@overta.ru>
5651
5652 * config/ip2k/ip2k.c (function_epilogue): Optimize stack
5653 deallocation.
5654 * config/ip2k/libgcc.S: Combine routines used by function
5655 epilogue.
5656
f930bfd0
JW
56572002-10-10 Jim Wilson <wilson@redhat.com>
5658
5659 * cse.c (fold_rtx): Don't perform associative optimization for DIV and
5660 UDIV.
5661
5f5d5417
DE
56622002-10-10 David Edelsohn <edelsohn@gnu.org>
5663
5664 * config/rs6000/aix52.h: New file.
5665 * config/rs6000/t-aix52: New File.
5666 * config.gcc (rs6000-ibm-aix5.1.*): New entry.
5667 (rs6000-ibm-aix[56789].*): Default to AIX 5.2.
5668
7eafc329
JH
5669Thu Oct 10 19:37:54 CEST 2002 Jan Hubicka <jh@suse.cz>
5670
5671 PR target/5610
5672 * invoke.texi (-msse-math): Kill
5673 (-msse): Add note to mfpmath=sse.
5674
b105d6da
JH
5675Thu Oct 10 17:08:30 CEST 2002 Jan Hubicka <jh@suse.cz>
5676
5677 PR target/7723
5678 * i386.c (ix86_expand_vector_move): Do not generate const0->mem moves.
5679
5febdf0d
NB
56802002-10-10 Neil Booth <neil@daikokuya.co.uk>
5681
5682 PR preprocessor/8179
5683 * gcc.c (cpp_options): Add {ansi}, move %{m*} to same location
5684 as cc1_options.
5685 (default_compilers): Pass debug options when preprocessing
5686 stdin.
5687
7db40b5f
RH
56882002-10-06 Richard Henderson <rth@redhat.com>
5689
5690 * toplev.c (rest_of_compilation): Revert opt/2960 change.
5691
4977bab6
ZW
5692Wed Oct 9 21:18:43 CEST 2002 Jan Hubicka <jh@suse.cz>
5693
5694 * i386.c (*_cost): Add branch costs.
5695 (override_options): set ix86_branch_cost.
5696 (ix86_expand_int_movcc): Use BRANCH_COST.
5697 * i386.h (costs): Add branch_cost.
5698
95f79357
ZW
56992002-10-09 Zack Weinberg <zack@codesourcery.com>
5700
5701 PR c/7353
5702 * c-decl.c (start_decl): Unconditionally issue error for
5703 'typedef foo = bar'.
5704 (finish_decl): Remove special case for TYPE_DECL with initializer.
5705
5706 * doc/extend.texi: Delete "Naming Types" section. Change all
5707 cross-references to that section to refer to "Typeof" instead.
5708 Add the useful safe-max()-macro example from "Naming Types" to
5709 "Typeof", rewritten using that extension. Add some compatibility
5710 notes to "Typeof."
5711
44a5565d
KG
57122002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5713
5714 * loop.c: Revert 2002-08-15 change.
5715 (LOOP_REGNO_NREGS): Ensure type is int.
5716
a2419b96
DE
57172002-10-09 David Edelsohn <edelsohn@gnu.org>
5718
5719 * config/rs6000/rs6000.md (extenddftf2): Change to define_insn
5720 which copies first FPR and clears second.
5721 (extendsftf2): Same.
5722 (floatditf2): Fix typo.
5723 (floatsitf2): Same.
5724 (fix_trunctfdi2): Same.
5725 (fix_trunctfsi2): Same.
5726
fb7e6024
KG
57272002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5728
5729 * conflict.c (arc_hash): Change return type to hashval_t.
5730 * cselib.c (get_value_hash): Likewise.
5731 * genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash,
5732 state_hash, automata_list_hash): Likewise.
5733 * read-rtl.c (def_hash): Likewise.
5734 * tree.c (type_hash_hash): Likewise.
5735
36f7e964
AH
57362002-10-08 Aldy Hernandez <aldyh@redhat.com>
5737
5738 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call
5739 prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes.
5740
e3c62520
R
5741Wed Oct 9 15:54:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
5742
5743 * sh.md (ffssi2): Fix emitted code.
5744
a3745024
UW
57452002-10-09 Ulrich Weigand <uweigand@de.ibm.com>
5746
5747 * cse.c (insn_live_p): Pass insn pattern, not full insn
5748 to may_trap_p.
5749
5cc67323
NB
57502002-10-09 Neil Booth <neil@daikokuya.co.uk>
5751
5752 * cppmacro.c (paste_tokens): Only allow / to paste with =.
5753
f5264b52
DE
57542002-10-09 David Edelsohn <edelsohn@gnu.org>
5755
5756 * config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on
5757 64-bit hosts.
5758 (movtf_internal): Reference correct displacement for second value
5759 in memory.
5760 (movtf splitter): Correct generation of constants in 64-bit mode.
5761
cef1c1ba
AM
57622002-10-09 Alan Modra <amodra@bigpond.net.au>
5763
5764 * libgcc2.c (__floatdisf): Properly cure double rounding.
5765
8d15eebc
GDR
57662002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
5767
5768 * c-common.c (cb_register_builtins): Define __WCHAR_MAX__.
5769 * doc/cpp.texi (Common Predefined Macros): Document.
5770
87ec8de9
GDR
57712002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
5772
5773 PR doc/7484
5774 * doc/invoke.texi (Option Summary): List
5775 -Wmissing-declarations as a C only option.
5776
4977bab6
ZW
57772002-10-08 Roger Sayle <roger@eyesopen.com>
5778
5779 * fold-const.c (fold) [LROTATE_EXPR, RROTATE_EXPR]: Optimize
5780 left and right rotates of ~0, i.e. integer_all_onesp (arg0).
5781 [LSHIFT_EXPR, RSHIFT_EXPR]: Optimize shifts and rotates of zero.
5782
5783Tue Oct 8 01:24:19 CEST 2002 Jan Hubicka <jh@suse.cz>
5784
5785 * i386.c (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
5786 x86_sse_typeless_stores, x86_sse_load0_by_pxor): New global
5787 variables.
5788 (safe_vector_operand): Update sse_clrv4sf call.
5789 (ix86_expand_buildin): Likewise
5790 * i386.h (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
5791 x86_sse_typeless_stores, x86_sse_load0_by_pxor): Declare.
5792 (TARGET_SSE_PARTIAL_REG_DEPENDENCY, TARGET_SSE_PARTIAL_REGS,
5793 TARGET_SSE_TYPELESS_STORES, TARGET_SSE_TYPELESS_LOAD0): New
5794 macros.
5795 * i386.md (movsf*, movdf*, movti, movv4sf, movv2df, movv16qi, movv8hi,
5796 movv4si): Obey the new flags.
5797 (floatsi2sf, floatdi2sf, truncatedf2sf): Emit extra load of 0 to avoid
5798 reformating penalty.
5799 (anddf, cmov patterns): Avoid reformating by first converting.
5800 (sse_cvtsd2ss): Fix predicate.
5801 (sse2_clrti): Fix mode,
5802 (sse_clrv4sf): Avoid unspec.
5803
fb7d9c35
JJ
58042002-10-08 Jakub Jelinek <jakub@redhat.com>
5805
5806 * config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove
5807 mno-app-regs|mcmodel=medany.
5808 (MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt.
5809 (MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove.
5810 (CRTSTUFF_T_CFLAGS): Define.
5811
11f3e4c7
RS
58122002-10-08 Roger Sayle <roger@eyesopen.com>
5813
5814 PR target/8087
5815 * simplify-rtx.c (avoid_constant_pool_reference): Allow constant
5816 pool references that are constructed using LO_SUM.
5817
bf52f899
NS
58182002-10-08 Nathan Sidwell <nathan@codesourcery.com>
5819
5820 * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to
5821 -Wall.
5822 * c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak
5823 message.
5824 * flags.h (warn_strict_aliasing): Declare.
5825 * toplev.c (warn_strict_aliasing): Define.
5826 (lang_independent_options): Add it.
5827 * doc/invoke.texi (-Wstrict-aliasing): Document it.
5828
36624850
ZW
58292002-10-08 Zack Weinberg <zack@codesourcery.com>
5830
5831 * system.h (GCCBUGURL): Delete.
5832 * version.c (bug_report_url): New. Add commentary about
5833 modifying both these strings in modified distributions.
5834 * version.h: Declare bug_report_url.
5835
5836 * diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with
5837 bug_report_url.
5838
218145d6
NC
58392002-10-08 Nick Clifton <nickc@redhat.com>
5840
5841 * config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to
5842 convert uint64_t into __ev64_opaque__.
5843 (__ev_set_acc_s64): Likewise, but using signed types.
5844
bb02f6ed
UW
58452002-10-08 Ulrich Weigand <uweigand@de.ibm.com>
5846
5847 * config/s390/s390.md ("*doloop_si_long"): Add missing operand.
5848 ("*doloop_di_long"): Likewise.
5849
4fdbcfb2
JH
5850Tue Oct 8 16:50:10 CEST 2002 Jan Hubicka <jh@suse.cz>
5851
5852 * print-rtl.c (print_rtx): Increase buffer size for real numbers.
5853
e80f2609
RS
58542002-10-08 Richard Sandiford <rsandifo@redhat.com>
5855
5856 * config/mips/mips.md (define_attr cpu): Add r4111.
5857
36624850 58582002-10-08 Anthony Green <green@redhat.com>
4213a3b6 5859
36624850 5860 * bitmap.c (bitmap_equal_p): Clear all bitmap_head fields.
4213a3b6 5861
25009e02
MH
58622002-10-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
5863
5864 * config/c4x/c4x.c (c4x_print_operand): Enlarge buffer
5865 for REAL_VALUE_TO_DECIMAL output.
5866
4977bab6
ZW
58672002-10-07 Richard Henderson <rth@redhat.com>
5868
5869 * cse.c (fixed_base_plus_p): Turn FIXED_BASE_PLUS_P into a
5870 function; cleanup PLUS case by using recursion. Update all users.
5871 (NONZERO_BASE_PLUS_P): Remove.
5872 (find_comparison_args): Use rtx_addr_can_trap_p instead.
5873 (fold_rtx): Use nonzero_address_p.
5874 * rtl.h (nonzero_address_p): Declare.
5875 * rtlanal.c (rtx_varies_p): Handle ADDRESSOF.
5876 (rtx_addr_can_trap_p): Likewise.
5877 (nonzero_address_p): New.
5878 * simplify-rtx.c (NONZERO_BASE_PLUS_P): Remove.
5879 (simplify_relational_operation): Use nonzero_address_p.
5880
fcce224d
DE
58812002-10-07 David Edelsohn <edelsohn@gnu.org>
5882
5883 * config/rs6000/rs6000.c (rs6000_override_options): Set
5884 real_format_for_mode for IBM extended format, if enabled.
5885 (easy_fp_constant): Add TFmode.
5886 (rs6000_legitimize_address): Add TFmode.
5887 (rs6000_legitimate_address): Same.
5888 (function_arg_advance): TFmode uses two FPRs.
5889 (rs6000_emit_prologue): Fix warning.
5890 (rs6000_output_function_epilogue): Add TFmode.
5891 (output_toc): Add TFmode.
5892 * rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode.
5893 (LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode.
5894 * rs6000.md (movtf splitter): Load TFmode constant.
5895
dad482e6 58962002-10-07 Dale Johannesen <dalej@apple.com>
fcce224d 5897
dad482e6
DJ
5898 * rtl.h: Add NOTE_PRECONDITIONED.
5899 * unroll.c: Set it.
5900 * loop.c: Set loop_info->preconditioned from it.
5901 * doloop.c: Permit doloop treatment when loop_info->preconditoned.
5902
de3beb7c
RH
59032002-10-07 Richard Henderson <rth@redhat.com>
5904
5905 * config/i960/i960.c (i960_setup_incoming_varargs): Create a
5906 new rtx for comparing the argument pointer against zero.
5907 (i960_va_start): Similarly.
5908
87cb2a87
RH
59092002-10-07 Richard Henderson <rth@redhat.com>
5910
5911 * config/i960/i960.md (*): Use TFmode, not XFmode.
5912 * config/i960/i960.c (*): Likewise.
5913 (i960_arg_size_and_align): Remove XFmode alignment hack.
5914 (i960_round_align): Merge code from ROUND_TYPE_ALIGN.
5915 * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96.
5916 (MAX_LONG_DOUBLE_TYPE_SIZE): Likewise.
5917 (DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove.
5918
5ef38d2a
RH
59192002-10-07 Richard Henderson <rth@redhat.com>
5920
5921 * config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode
5922 entry points; use void return value and argument list.
5923
4977bab6
ZW
59242002-10-06 Andreas Bauer <baueran@in.tum.de>
5925
5926 * calls.c (expand_call): Fix function-is-volatile check.
5927
e7f9979a
NS
59282002-10-05 Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp>
5929
5930 * t-pdp11: Add MULTILIB support for msoft-float.
5931 * pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case.
5932
5933 * t-pdp11: Add LIB2FUNCS_EXTRA.
36624850 5934 * pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit,
e7f9979a
NS
5935 add preceding 0 to the octal constant, rename 'fp' to 'r5', rename
5936 'fldd' to 'ldd', rename 'fstd' to 'std'.
5937 (pdp11_output_function_epilogue): Likewise.
5938 (output_move_quad): Make the comment gas compatible.
5939 (output_ascii): Add preceding 0 to the octal constant.
5940 (print_operand_address): Add pre_modify, post_modify.
5941 (output_addr_const_pdp11): Add preceding 0 to the octal constant.
5942 * pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case
36624850 5943 with the indication of Paul Koning.
e7f9979a
NS
5944 (PRINT_OPERAND): Fix floating constant.
5945 * pdp11.md (movdi): Restrict matching pattern.
5946 (movqi): Generalize the matching pattern.
5947 (movdf): Restrict matching pattern.
5948 (zero_extendqihi2): Change constant representation.
5949 (floatsidf2): Fix wrong operands.
5950 (addqi3): Fix wrong instruction name.
5951 (subqi3): Fix wrong instruction name.
5952 (andsi3, andhi3, andqi3): Simplify and fix to use 'bic'.
5953 (xorsi3): Fix wrong insn.
5954 (one_cmplqi2): Add two operand pattern.
5955 (lsrsi3): New.
5956 (negsi2): New.
5957 (call): Add register indirect case.
5958 (mod): Fix wrong subreg.
5959
a9b6f1e7 59602002-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
36624850 5961 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
4ef7870a
EB
5962
5963 PR c/7411
5964 * expr.c (expand_expr) [PLUS]: Simplify after the operands
5965 have been expanded in EXPAND_NORMAL mode.
5966
a2900460
RH
59672002-10-06 Richard Henderson <rth@redhat.com>
5968
5969 * config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint.
5970
ff025ab9
RH
59712002-10-06 Richard Henderson <rth@redhat.com>
5972
5973 PR optimization/2960
5974 * toplev.c (rest_of_compilation): Don't copy_loop_headers if
5975 optimize_size.
5976
48b80d93
AO
59772002-10-06 Alexandre Oliva <aoliva@redhat.com>
5978
5979 * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override
5980 previously definitions.
5981
7c7c549e
FCE
59822002-10-06 Frank Ch. Eigler <fche@redhat.com>
5983
5984 * cppinit.c (init_standard_includes, parse_option): Use strncmp.
5985 * c-opts.c (find_opt): Similarly.
5986
4977bab6
ZW
5987Sat Oct 5 22:48:06 CEST 2002 Jan Hubicka <jh@suse.cz>
5988
5989 * athlon.md: rewrite to DFA.
5990 * i386 (ix86_adjust_cost): Drop memory latency code.
5991 (ia32_use_dfa_pipeline_interface): Return true for Athlon.
5992
c49d2df6
JJ
59932002-10-05 Jakub Jelinek <jakub@redhat.com>
5994
5995 * gcc.c (set_multilib_dir): Don't access *end.
5996 Use memcpy instead of strncpy. Don't write beyond malloced buffer.
5997 (print_multilib_info): Don't show paths starting with ".:".
5998 * genmultilib: Add new option, "yes" if multilibs are enabled.
5999 Update comments. If multilibs not enabled, print .:${osdirout}
6000 for each directory. If multilibs are enabled, always print
6001 ${dirout}:${osdirout}, even if the two are the same.
6002 * Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib.
6003 Pass all MULTILIB_* variables to genmultilib even if
6004 --disable-multilib but MULTILIB_OSDIRNAMES is not empty.
6005
4977bab6
ZW
60062002-10-04 Zack Weinberg <zack@codesourcery.com>
6007
6008 * gcc.c (process_command): Set .validated for -pipe. Correct
6009 grammar in comment.
6010
d758c1db
BK
60112002-10-04 Bruce Korb <bkorb@gnu.org>
6012
6013 * fixinc/inclhack.def(hpux11_abs): use format fix
6014 * fixinc/fixincl.x: regenerate
6015 * fixinc/tests/base/stdlib.h: accommodate new fix test
6016
b3dc87c5
JH
6017Sat Oct 5 19:42:45 CEST 2002 Jan Hubicka <jh@suse.cz>
6018
6019 * c-common.c (cb_register_builtins): Use really_no_inline.
6020
f7a21c70
DE
60212002-10-04 David Edelsohn <edelsohn@gnu.org>
6022
6023 * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
6024 copied instruction if the note is not loop invariant.
6025
081d6fb9
LR
60262002-10-04 Loren J. Rittle <ljrittle@acm.org>
6027
6028 * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
6029
c5d3d49b
SE
60302002-10-04 Steve Ellcey <sje@cup.hp.com>
6031
6032 * doc/invoke.texi (HPPA): Add -mlinker-opt, -mgnu-ld,
6033 and -mhp-ld options to list of options. Add -mgnu-ld
6034 and -mhp-ld option descriptions.
6035
0fca111b
SE
60362002-10-04 Steve Ellcey <sje@cup.hp.com>
6037
6038 * fixinc/inclhack.def (hpux11_abs): New.
6039 (stdio_va_list): change __va_list__ to __gnuc_va_list.
6040 * fixinc/fixincl.x: Rebuild.
6041
229b303a
RS
60422002-10-04 Roger Sayle <roger@eyesopen.com>
6043
6044 * config/i386/i386.h (processor_costs): Add new fields fadd,
6045 fmul, fdiv, fabs, fchs and fsqrt to costs structure.
6046 (RTX_COSTS): Use these fields to determine the RTX costs
6047 of floating point addition/subtraction, multiplication,
6048 division, fabs, negation and square root respectively.
6049 * config/i386/i386.c (size_cost): Provide instruction sizes
6050 for these new fields.
6051 (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
6052 k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
6053 counts for these new fields for all x86 processor variants.
6054
481ed21a
KG
60552002-10-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6056
6017ba03
KG
6057 * mips.c (mips_const_double_ok): Delete unused variable.
6058
481ed21a
KG
6059 * gengtype.c (rtx_next): Change type to int.
6060
635f4680
AJ
60612002-10-04 Andreas Jaeger <aj@suse.de>
6062
6063 * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
6064
ee6ff319
RH
60652002-10-04 Richard Henderson <rth@redhat.com>
6066
6067 * real.h (SIGNIFICAND_BITS): Add one more word.
6068 (CONST_DOUBLE_FORMAT): Accomodate 6 words.
6069 * real.c (times_pten): New.
6070 (real_to_decimal, real_from_string): Use it.
6071 (sticky_rshift_significand): Use & to find modulus.
6072 (rshift_significand, lshift_significand): Likewise.
6073 (do_divide): Apply sticky bit after normalization.
6074 (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
6075
4977bab6
ZW
60762002-10-03 Andreas Bauer <baueran@in.tum.de>
6077
6078 * doc/tm.texi (FUNCTION_OK_FOR_SIBCALL): Remove.
6079 (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
6080
6d8dd940
AJ
60812002-10-03 Andreas Jaeger <aj@suse.de>
6082
6083 * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
6084 to unsigned long, adjust printf format string.
6085 (output_mangled_typename): Likewise.
6086
191fe2bb
JT
60872002-10-03 Jason Thorpe <thorpej@wasabisystems.com>
6088
6089 * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
6090 * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
6091 (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
6092 assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
6093 (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
6094 (PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
6095 * config/vax/elf.h (FUNCTION_PROFILER): Remove.
6096 (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
6097
6397d80b
MM
60982002-10-03 Mark Mitchell <mark@codesourcery.com>
6099
6100 * doc/invoke.texi (-Wabi): Document mangling bug.
6101
69c75916
AM
61022002-10-04 Alan Modra <amodra@bigpond.net.au>
6103
6104 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
6105 name for the tbtab label that depends on the function asm name.
6106 Don't output tbtab label unless optional_tbtab.
6107 (output_mi_thunk): Formatting.
6108
adf2ac37
RH
61092002-10-03 Richard Henderson <rth@redhat.com>
6110
6111 * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
6112 * config/m68k/m68k.c (override_options): ... here.
6113 * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
6114 * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
6115 * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
6116 * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
6117
a7519393
RH
61182002-10-03 Richard Henderson <rth@redhat.com>
6119
6120 * real.h (struct real_value): Use ENUM_BITFIELD.
6121
41552736
RH
61222002-10-03 Richard Henderson <rth@redhat.com>
6123
6124 * config/i960/i960.md (call, call_value): Use emit_call_insn.
6125
882affa8
SE
61262002-10-03 Steve Ellcey <sje@cup.hp.com>
6127
6128 * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
6129
83eb95f9
SE
61302002-10-03 Steve Ellcey <sje@cup.hp.com>
6131
6132 * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
6133 * config/pa/pa.h (MASK_GNU_LD): New.
6134 (TARGET_GNU_LD): New.
6d8dd940 6135 * config/pa/pa64-hpux.h (LINK_SPEC): Set based
83eb95f9
SE
6136 on gnu-ld and MASK_GNU_LD.
6137 (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
6138
b72b1c29
JH
6139Thu Oct 3 23:35:51 CEST 2002 Jan Hubicka <jh@suse.cz>
6140
6141 * i386.c (athlon_cost): Fix the move costs.
6142
92b7a2a5
JH
6143Thu Oct 3 23:20:58 CEST 2002 Jan Hubicka <jh@suse.cz>
6144
6145 * final.c (final): Use symbol name as function name for profiling.
6146 * profile.c (get_exec_counts): Likewise.
6147 (branch_prob): Likewise.
6148
429489e5
JJ
61492002-10-03 Jakub Jelinek <jakub@redhat.com>
6150
6151 * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
6152
5bbcd587
JJ
61532002-10-03 Jakub Jelinek <jakub@redhat.com>
6154
6155 * gcc.c (print_multi_os_directory): New variable.
6156 (option_map): Support --print-multi-os-directory.
6157 (struct prefix_list): Add os_multilib field.
6158 (multilib_os_dir): New variable.
6159 (static_specs): Add multilib_options.
6160 (find_a_file): Add multilib argument. Search in GCC or OS multilib
272d0bee 6161 subdirs if nonzero.
5bbcd587
JJ
6162 (read_specs, execute): Update callers.
6163 (find_file): Likewise. Don't prefix name with multilib_dir, instead
6164 pass 1 as multilib option.
6165 (display_help): Include --print-multi-os-directory.
6166 (add_prefix): Add os_multilib argument. Initialize pl->os_multilib.
6167 (process_command): Update callers. Handle --print-multi-os-directory.
6168 (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
6169 set.
6170 (main): Update find_a_file and add_prefix callers.
6171 Handle print_multi_os_directory.
6172 (struct mdswitchstr): New.
6173 (mdswitches, n_mdswitches): New variables.
6174 (used_arg): Add MULTILIB_DEFAULT switches too if they are not
6175 present on the command line nor their mutually incompatible
6176 switches.
6177 (default_arg): Optimize.
6178 (set_multilib_dir): Compute multilib_os_dir. Initialize mdswitches
6179 array.
6180 (print_multilib_info): Only print GCC multilib dir name, not OS
6181 multilib dirname.
6182 * genmultilib: Add osdirnames parameter. Output multilib_options
6183 variable. If osdirnames is specified, output dirnames as
6184 dirname:osdirname.
6185 * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
6186 and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
6187 to compute libgcc_s soname and install path.
6188 * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
6189 SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
6190 (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
6191 argument.
6192
6193 * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
6194 (SHLIB_SLIBDIR_SUFFIXES): Remove.
6195 * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
6196 ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
6197 (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
6198 and -m64.
6199 * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
6200 (SHLIB_SLIBDIR_SUFFIXES): Remove.
6201 * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
6202 (STARTFILE_ARCH_SPEC): Remove.
6203 * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
6204 (SHLIB_SLIBDIR_SUFFIXES): Remove.
6205 * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
6206 * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
6207 (SHLIB_SLIBDIR_SUFFIXES): Remove.
6208
c07f146f
JH
6209Thu Oct 3 21:42:20 CEST 2002 Jan Hubicka <jh@suse.cz>
6210
6211 * predict.c (choose_function_section): Avoid choice for linkonce functions.
6212
4c9c9a3d
JH
6213Thu Oct 3 15:15:00 CEST 2002 Jan Hubicka <jh@suse.cz>
6214
6215 * i386.md (lea to mul peep2): Fix condition.
6d8dd940 6216
f50df1d5
JDA
62172002-10-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
6218
6219 * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
6220 * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
6221
4977bab6
ZW
62222002-10-02 David Mosberger-Tang <David.Mosberger@acm.org>
6223
6224 * unwind.h (_Unwind_GetTextRelBase): Mark _C argument with
6225 attribute "unused".
6226
6227 * config/t-libunwind: Mention unwind-sjlj.c.
6228 * unwind-libunwind.c: Change #ifdef __USING_LIBUNWIND_EXCEPTIONS__
6229 to #ifndef __USING_SJLJ_EXCEPTIONS__.
6230
6231 * configure.in: Move sjlj-exceptions and --enable-libunwind-exceptions
6232 before inclusion of config.gcc, but after configuring the compiler etc.
6233 Determine default value for --enable-libunwind-exceptions based on
6234 whether the host has a libunwind library (not guaranteed to be correct,
6235 but it's a reasonable first guess and can always be overridden with an
6236 explicit --enable/disable-libunwind-exceptions.
6237 * config.gcc: For target ia64*-*-linux*, mention t-libunwind as a
6238 tmake_file when $use_libunwind_exceptions is enabled.
6239 * Makefile.in: Update comment: LIB2ADDEH is updated not just by
6240 ia64 (e.g., config/t-linux also updates it).
6241 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS]: Mention -lunwind
6242 along with the shared version of libgcc since the latter requires
6243 the former.
6244 * unwind-libunwind.c: New file.
6245 * config/t-libunwind: Ditto.
6246
62472002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
6248
6249 * config.gcc: Remove support for vax-*-vms*.
6250 * config/vax/vms.h: Remove.
6251 * config/vax/xm-vms.h: Remove.
6252 * config/vax/vax-protos.h: Remove VMS-specific code.
6253 * config/vax/vax.c: Remove VMS-specific code.
6254
d631b80a
RH
62552002-10-02 Richard Henderson <rth@redhat.com>
6256
6257 PR opt/7124
6258 * config/i386/i386.c (ix86_register_move_cost): Increase cost
6259 for secondary_memory_needed pairs.
6260
854ef390
NN
62612002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
6262
6263 * doc/vms.texi: Blow away false include file section.
6264
f963b5d9
RS
62652002-10-02 Roger Sayle <roger@eyesopen.com>
6266
6267 PR optimization/6627
6268 * toplev.c (force_align_functions_log): New global variable.
6269 * flags.h (force_align_functions_log): Add extern prototype.
6270 * varasm.c (assemble_start_function): Use it to force minimum
6271 function alignment.
6272 * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
6273 minimum function alignment to one byte.
6274 (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
6275 the least significant bit of vtable member function pointers.
6276 * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
6277 here from cp/cp-tree.h.
6278
200bcf7e
JH
6279Wed Oct 2 17:01:36 CEST 2002 Jan Hubicka <jh@suse.cz>
6280
6281 * i386.c (print_operand_address): Use RIP addressing for offsetted
6282 label refs too.
6283
88d0be17
DM
62842002-09-30 David S. Miller <davem@redhat.com>
6285
6286 PR middle-end/7151
6287 * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
6288 (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
6289
4977bab6
ZW
62902002-10-01 Andreas Bauer <baueran@in.tum.de>
6291
6292 * calls.c (expand_call): Remove the `no indirect check'
6293 for sibcall optimization; use function_ok_for_sibcall
6294 target hook; refine check for `function is volatile'.
6295 (FUNCTION_OK_FOR_SIBCALL): Remove the redefinition.
6296 * hooks.c (hook_tree_tree_bool_false): New.
6297 * hooks.h (hook_tree_tree_bool_false): Declare.
6298 * target-def.h (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
6299 (TARGET_INITIALIZER): Add it.
6300 * target.h (struct gcc_target): Add function_ok_for_sibcall.
6301 * config/alpha/alpha.c: (alpha_function_ok_for_sibcall): New.
6302 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6303 * config/alpha/alpha.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6304 * config/arm/arm-protos.h: (arm_function_ok_for_sibcall):
6305 Remove function declaration.
6306 * config/arm/arm.c: (arm_function_ok_for_sibcall): Make
6307 function static and accept another argument of type `tree'.
6308 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6309 * config/arm/arm.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6310 * config/frv/frv.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6311 * config/i386/i386.c: (ix86_function_ok_for_sibcall): New.
6312 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6313 * config/i386/i386.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6314 * config/pa/pa-linux.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6315 (TARGET_HAS_STUBS_AND_ELF_SECTIONS): New definition.
6316 * config/pa/pa.c: (pa_function_ok_for_sibcall): New.
6317 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6318 * config/pa/pa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6319 * config/rs6000/rs6000-protos.h: (function_ok_for_sibcall):
6320 Remove function declaration.
6321 * config/rs6000/rs6000.c: (rs6000_function_ok_for_sibcall):
6322 Rename function_ok_for_sibcall to rs6000_function_ok_for_sibcall;
6323 rename first argument to `decl'; accept another argument
6324 of type `tree'; make static.
6325 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6326 * config/rs6000/rs6000.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6327 * config/sh/sh.c: (sh_function_ok_for_sibcall): New.
6328 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6329 * config/sh/sh.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6330 * config/sparc/sparc.c: (sparc_function_ok_for_sibcall): New.
6331 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6332 * config/sparc/sparc.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6333 * config/xtensa/xtensa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6334
f10aac29
RS
63352002-10-01 Roger Sayle <roger@eyesopen.com>
6336
6337 * unroll.c (loop_iterations): Revert 2002-09-08 change.
6338
69bd00e6
RH
63392002-10-01 Richard Henderson <rth@redhat.com>
6340
6341 * real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0.
6342 (real_to_hexadecimal): Likewise.
6343 * print-rtl.c (print_rtx): If we are linked with real.c, don't
6344 dump the XWINT fields of a floating point CONST_DOUBLE.
6345
3b5742ab
JT
63462002-10-01 Jason Thorpe <thorpej@wasabisystems.com>
6347
6348 * config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call.
6349
fd1e5d25
RH
63502002-10-01 Richard Henderson <rth@redhat.com>
6351
6352 * calls.c (precompute_register_parameters): Force non-legitimate
6353 constants into pseudos.
6354
78872ad9
NC
63552002-10-01 Nick Clifton <nickc@redhat.com>
6356
6357 * config/rs6000/spe.md (spe_evrlwi): Add missing third operand
6358 to assembler template.
6359
3c655f42
RH
63602002-10-01 Richard Henderson <rth@redhat.com>
6361
6362 * dwarf2out.c (loc_descriptor_from_tree): Relax requirement
6363 for TLS debug info to !DECL_EXTERNAL.
6364
ec20cffb 63652002-10-01 Matt Thomas <matt@3am-software.com>
ee6ff319 6366 Jason Thorpe <thorpej@wasabisystems.com>
ec20cffb
JT
6367
6368 * config.gcc (vax-*-netbsdelf*): Enable configuration.
6d8dd940 6369 * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
ec20cffb
JT
6370 if not already defined.
6371 * config/vax/elf.h: New file.
6372 * config/vax/netbsd-elf.h: New file.
6373 * config/vax/vax.c: Include "debug.h".
6374 (vax_output_function_prologue): Add dwarf2 support. Use
6375 MAIN_NAME_P when checking for VMS_TARGET stack adjust.
6376 * config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
6377 'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
6378 'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
6379 (VAX_ISTREAM_SYNC): Remove.
6380 (INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
6381 (JUMP_TABLES_IN_TEXT_SECTION): Define.
6382 (ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
6383 (ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
6384 and assemble_name.
6385 (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
6386 (PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
6387 (PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
6388 (INCOMING_RETURN_ADDR_RTX): Define.
6389 * config/vax/vax.md (VUNSPEC_BLOCKAGE)
6390 (VUNSPEC_SYNC_ISTREAM): Define.
6391 (blockage): Use VUNSPEC_BLOCKAGE.
6392 (sync_istream): New insn.
6393
63942002-10-01 Richard Henderson <rth@redhat.com>
6395
6396 * config/vax/vax.md (call_pop, *call_pop, call_value_pop)
6397 (*call_value_pop, call, call_value): Add dwarf2 EH support.
6398 (*call): New insn.
6399
73a73768
NS
64002002-10-01 Nathan Sidwell <nathan@codesourcery.com>
6401
6402 PR c/8083
6403 * c-typeck.c (build_c_cast): Warn about type punning which breaks
6404 type based aliasing.
6405
0645ba8f
MM
64062002-10-01 Mark Mitchell <mark@codesourcery.com>
6407
6408 * stor-layout.c (update_alignment_for_field): New function.
6409 (place_union_field): Use it.
6410 (place_field): Likewise.
6d8dd940 6411
f7e466a3
NS
64122002-10-01 Nathan Sidwell <nathan@codesourcery.com>
6413
73a73768 6414 PR other/8077
f7e466a3
NS
6415 * gcc.c (cc1_options): Add space on -auxbase-strip.
6416
bc9ec51b
JW
64172002-10-01 Jim Wilson <wilson@redhat.com>
6418
6419 * config/v850/v850.h (EPILOGUE_USES): Define.
6420
a646f6cc
AH
64212002-09-30 Andrew Haley <aph@redhat.com>
6422
6d8dd940 6423 * flow.c (insn_dead_p): When using non-call-exceptions, don't
a646f6cc
AH
6424 eliminate insns that may trap.
6425 * cse.c (insn_live_p): Likewise.
6426
3f7967e3
RS
64272002-10-01 Richard Sandiford <rsandifo@redhat.com>
6428
6429 * config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
6430 (TARGET_MIPS4121): Rename to TARGET_MIPS4120.
6431 * config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
6432 * config/mips/mips.md: Apply same renaming here.
6433
41f9efba
RS
64342002-10-01 Richard Sandiford <rsandifo@redhat.com>
6435
6436 * config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
6437 (GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
6438 * config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
6439 * config/mips/mips.md (define_attr cpu): Remove r4320.
6440 Remove vr4320 scheduler and uses of TARGET_MIPS4320.
6441
366356d3
RS
64422002-10-01 Richard Sandiford <rsandifo@redhat.com>
6443
6444 * config/mips/mips.c (mips16_strings): New variable.
6445 (mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
6446 symbol in mips16_strings. Free the list.
6447 (mips_encode_section_info): Keep track of local strings.
6448
8ab907e8
RS
64492002-10-01 Richard Sandiford <rsandifo@redhat.com>
6450
6451 * config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
6452 (sordered_df, sordered_sf): Remove.
6453 * config/mips/mips.c (get_float_compare_codes): New fn.
6454 (gen_int_relational, gen_conditional_move): Use it.
6455
d12b8c85
RS
64562002-10-01 Richard Sandiford <rsandifo@redhat.com>
6457
6458 * config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
6459 * config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
6460 * config/mips/mips.c (fcc_register_operand): New function.
6461 (mips_emit_fcc_reload): New function, extracted from reload_incc.
6462 (override_options): Allow TFmode values in float registers
6463 if ISA_HAS_8CC.
6464 * cnfig/mips/mips.md (reload_incc): Change destination prediate
6465 to fcc_register_operand. Remove misleading source constraint.
6466 Use mips_emit_fcc_reload.
6467 (reload_outcc): Duplicate reload_incc.
6468
4977bab6
ZW
64692002-09-30 Zack Weinberg <zack@codesourcery.com>
6470
6471 * gcc.c (validate_switches): Handle all new forms of spec
6472 syntax introduced recently. Now returns a char *.
6473 (validate_all_switches): Repetitive logic broken out to...
6474 (validate_switches_from_spec): ...here.
6475 * mklibgcc.in: Don't @-flag commands to generate .oS files.
6476
7e765675
UW
64772002-09-30 Ulrich Weigand <uweigand@de.ibm.com>
6478
6479 * longlong.h: Partially synchronize with GMP-4.1 version:
6480 Use i370 definitions also for s390.
6481 Add generic definition of umul_ppmm in terms of smul_ppmm.
6482 [s390] (umul_ppmm): Remove.
6483 [s390] (smul_ppmm): Fix incorrect assembler constraints.
6484 [s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.
6485
89f6025d
BW
64862002-09-30 Bob Wilson <bob.wilson@acm.org>
6487
6488 * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
6489 Add new RL_REGS register class.
6490 (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
ee6ff319 6491 Call xtensa_preferred_reload_class for both input and output reloads.
89f6025d
BW
6492 * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
6493 (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
6494 instead of either AR_REGS or GR_REGS classes.
6495 (xtensa_secondary_reload_class): Use new RL_REGS class.
6496 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.
6497
7830ba7b
JDA
64982002-09-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
6499
6500 * pa.c (hppa_encode_label): Don't drop '*' from function labels.
6501 (pa_strip_name_encoding): Strip '@' and '*', in that order.
6502 * pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
6503 there is a '*' prefix in NAME.
6504
344b78b8
JH
6505Mon Sep 30 21:33:23 CEST 2002 Jan Hubicka <jh@suse.cz>
6506
6507 * reload.c (push_reload): Handle subregs and secondary memory.
6508 * reload1.c (gen_reload): Likewise.
6509
6510 * jump.c (reg_or_subregno): New function.
6511 * rtl.h (reg_or_subregno): Declare
6512 * unroll.c (find_splittable_givs): Handle subregs.
6513
17bbb839
MM
65142002-09-30 Mark Mitchell <mark@codesourcery.com>
6515
6516 * store-layout.c (finish_record_layout): Add free_p parameter.
6517 (layout_type): Pass it.
6518 * tree.h (finish_record_layout): Update prototype.
92e89ef0 6519
48ddd46c
JH
6520Mon Sep 30 14:57:18 CEST 2002 Jan Hubicka <jh@suse.cz>
6521
6522 * i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
6523
6524 * gcse.c (cprop_jump): Check that the register has not
6525 been modified
6526 (cprop_jump): Likewise.
6527
b93a0fe6
RE
65282002-09-30 Richard Earnshaw <rearnsha@arm.com>
6529
6530 * arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
6531 (MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
6532 that we have a SImode access, and only then if reload hasn't completed;
6533 for all other cases, use LO_REGS.
6534
4977bab6
ZW
65352002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6536
6537 * openbsd.h: Fix typo in last change.
6538
98ee7e6c
RH
65392002-09-29 Richard Henderson <rth@redhat.com>
6540
6541 * real.c (real_from_string): Apply sign last. Tidy exponent handling.
6542
ccf7aef4
RH
65432002-09-29 Richard Henderson <rth@redhat.com>
6544
b5371c18 6545 PR c/8002
ccf7aef4
RH
6546 * combine.c (force_to_mode): Handle FLOAT_MODE destinations
6547 for CONST_INT.
6548
d454e75a
DE
65492002-09-29 David Edelsohn <edelsohn@gnu.org>
6550
6551 * real.h (ibm_extended_format): Declare.
6552 * real.c (encode_ibm_extended, decode_ibm_extended): New
6553 functions.
6554
89b06540
KG
65552002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6556
6557 * darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
6558
6559 * ia64.c (ia64_hpux_asm_file_end): Const-ify.
6560
6ca6193b
JDA
65612002-09-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
6562
6563 * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
6564
991b6592
KH
65652002-09-29 Kazu Hirata <kazu@cs.umass.edu>
6566
6567 * builtins.def: Fix comment formatting.
6568 * c-common.def: Likewise.
6569 * cfgcleanup.c: Likewise.
6570 * combine.c: Likewise.
6571 * gengtype.c: Likewise.
6572 * params.def: Likewise.
6573 * predict.def: Likewise.
6574 * rtl.def: Likewise.
6575 * stab.def: Likewise.
6576 * stor-layout.c: Likewise.
6577 * tree.def: Likewise.
6578 * config/darwin.c: Likewise.
6579 * config/darwin.h: Likewise.
6580 * config/dbxcoff.h: Likewise.
6581 * config/elfos.h: Likewise.
6582 * config/fp-bit.c: Likewise.
6583 * config/freebsd-spec.h: Likewise.
6584 * config/interix.h: Likewise.
6585 * config/libgloss.h: Likewise.
6586 * config/linux-aout.h: Likewise.
6587 * config/linux.h: Likewise.
6588 * config/lynx-ng.h: Likewise.
6589 * config/lynx.h: Likewise.
6590 * config/netbsd-aout.h: Likewise.
6591 * config/netbsd.h: Likewise.
6592 * config/netware.h: Likewise.
6593 * config/psos.h: Likewise.
6594 * config/ptx4.h: Likewise.
6595
43aa4e05
KH
65962002-09-28 Kazu Hirata <kazu@cs.umass.edu>
6597
6598 * ChangeLog.4: Fix typos.
6599 * ChangeLog.6: Likewise.
6600 * FSFChangeLog.10: Likewise.
6601 * genattrtab.c: Fix comment typos.
6602 * haifa-sched.c: Likewise.
6603 * real.c: Likewise.
6604 * tree.h: Likewise.
6605 * config/arm/arm.c: Likewise.
6606 * config/arm/crti.asm: Likewise.
6607 * config/arm/crtn.asm: Likewise.
6608 * config/frv/frv.c: Likewise.
6609 * config/frv/frv.md: Likewise.
6610 * config/h8300/h8300.md: Likewise.
6611 * config/i386/rtemself.h: Likewise.
6612 * config/ia64/unwind-ia64.c: Likewise.
6613 * config/ip2k/ip2k.h: Likewise.
6614 * config/m88k/m88k.c: Likewise.
6615 * config/m88k/m88k.md: Likewise.
6616 * config/mips/sr71k.md: Likewise.
6617 * config/mmix/mmix.c: Likewise.
6618 * config/rs6000/rs6000.c: Likewise.
6619 * config/sh/sh.md: Likewise.
6620
13e8651c
TR
66212002-09-26 Theodore A. Roth <troth@verinet.com>
6622
92e89ef0
ZW
6623 * config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
6624 * config/avr/avr.md: Ditto.
13e8651c 6625
57147be1
ZW
66262002-09-27 Alexander N. Kabaev <ak03@gte.com>
6627
6628 PR preprocessor/8055
6629 * cppmacro.c (stringify_arg): Do not overflow the buffer
6630 with the terminating NUL when the argument to be stringified
6631 has no tokens.
6632
5d0f3df7
RH
66332002-09-27 Richard Henderson <rth@redhat.com>
6634
6635 * unroll.c (simplify_cmp_and_jump_insns): New.
6636 (unroll_loop): Use it. Use simplify_gen_foo+force_operand
6637 instead of expand_simple_foo.
6638
3dfda826
RH
66392002-09-27 Richard Henderson <rth@redhat.com>
6640
6641 PR optimization/7520
6642 * cfganal.c (flow_active_insn_p): New.
6643 (forwarder_block_p): Use it.
6644
23b8ba81
RH
66452002-09-27 Richard Henderson <rth@redhat.com>
6646
6647 * emit-rtl.c (active_insn_p): Revert last change.
6648
dce81a1a
JJ
66492002-09-27 Jakub Jelinek <jakub@redhat.com>
6650
6651 * doc/extend.texi (tls_model): Document.
6652 * varasm.c (decl_tls_model): New.
6653 * c-common.c (handle_tls_model_attribute): New.
6654 (c_common_attribute_table): Add tls_model.
6655 * config/alpha/alpha.c (alpha_encode_section_info): Use
6656 decl_tls_model.
6657 * flags.h (enum tls_model, flag_tls_default): Move...
6658 * tree.h (enum tls_model, flag_tls_default): ...here.
6659 (decl_tls_model): New prototype.
6660 * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
6661 * config/i386/i386.c (ix86_encode_section_info): Likewise.
6662 * config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
6663 Allow !flag_pic.
6664
0e9e1e0a
KH
66652002-09-27 Kazu Hirata <kazu@cs.umass.edu>
6666
6667 * LANGUAGES: Follow spelling conventions.
6668 * rtl.def: Likewise.
6669 * sbitmap.c: Likewise.
6670 * sched-int.h: Likewise.
6671 * sched-rgn.c: Likewise.
6672 * sibcall.c: Likewise.
6673 * simplify-rtx.c: Likewise.
6674 * ssa.c: Likewise.
6675 * stab.def: Likewise.
6676 * stmt.c: Likewise.
6677 * stor-layout.c: Likewise.
6678 * target.h: Likewise.
6679 * timevar.c: Likewise.
6680 * toplev.c: Likewise.
6681 * tree-dump.c: Likewise.
6682 * tree-inline.c: Likewise.
6683 * tree.c: Likewise.
6684 * tree.def: Likewise.
6685 * tree.h: Likewise.
6686 * unroll.c: Likewise.
6687 * varasm.c: Likewise.
6688 * vmsdbgout.c: Likewise.
6689 * treelang/treelang.texi: Likewise.
6690 * treelang/treetree.c: Likewise.
6691
b9b575e6
KH
66922002-09-27 Kazu Hirata <kazu@cs.umass.edu>
6693
6694 * config/h8300/h8300.c (compute_saved_regs): Use a macro
6695 instead of a hard register number.
6696 (get_shift_alg): Use an enumerated type instead of numbers.
6697 (h8300_shift_needs_scratch_p): Likewise.
6698
4977bab6
ZW
66992002-09-26 Kazu Hirata <kazu@cs.umass.edu>
6700
6701 * varasm.c (force_data_section): Remove.
6702 (assemble_constant_align): Likewise.
6703 * output.h: Remove corresponding prototypes.
6704
67052002-09-26 Roger Sayle <roger@eyesopen.com>
6706
6707 * stmt.c (expand_exit_loop_if_false): Expand a simple conditional
6708 jump, if the loop to exit is the top of the current nesting stack.
6709
67102002-09-26 Torbjorn Granlund <tege@swox.com>
6711
6712 * libgcc2.c (fixunsdfdi, fixunssfdi): Rewrite, avoiding `long long'
6713 arithmetic.
6714
99a32567
DM
67152002-09-26 David S. Miller <davem@redhat.com>
6716
6717 PR optimization/7335
6718 * calls.c (emit_library_call_value_1): Passing args by reference
6719 converts a CONST function into a PURE one.
6720
67cef334
DE
67212002-09-26 David Edelsohn <edelsohn@gnu.org>
6722
6723 * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
6724 text_section.
57147be1 6725 * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
67cef334
DE
6726 text section.
6727 * config/rs6000/rs6000.c (rs6000_override_options): Allow
6728 function-sections and data-sections functionality on AIX.
6729
67302002-09-26 David Edelsohn <edelsohn@gnu.org>
6731 Dale Johannesen <dalej@apple.com>
6732
6733 * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
6734 in RTL for sub-word loads from memory.
6735
c2310f51
RH
67362002-09-26 Richard Henderson <rth@redhat.com>
6737
6738 PR c/7160
6739 * sched-deps.c (sched_analyze_insn): Make clobber insns depend
6740 on call insns.
6741
7847d627
RH
67422002-09-26 Richard Henderson <rth@redhat.com>
6743
6744 * emit-rtl.c (const_double_htab_eq): Remove unused variable.
6745
cde0ce6e
CL
67462002-09-26 Chris Lattner <sabre@nondot.org>
6747
6748 * ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when
6749 handling undefined values.
6750
03a62672
RH
67512002-09-26 Richard Henderson <rth@redhat.com>
6752
5fd452e8 6753 PR opt/7520
03a62672
RH
6754 * emit-rtl.c (active_insn_p): Consider a clobber of the
6755 function return value to be active even after reload.
6756
b5a77fef
AM
67572002-09-27 Alan Modra <amodra@bigpond.net.au>
6758
6759 * doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust
6760 by absolute loop increment, not loop increment.
6761
40f03658
KH
67622002-09-26 Kazu Hirata <kazu@cs.umass.edu>
6763
6764 * c-common.h: Follow spelling conventions.
6765 * cpplex.c: Likewise.
6766 * cpplib.h: Likewise.
6767 * gthr-dce.h: Likewise.
6768 * gthr-posix.h: Likewise.
6769 * optabs.c: Likewise.
6770 * output.h: Likewise.
6771 * profile.c: Likewise.
6772 * protoize.c: Likewise.
6773 * ra-rewrite.c: Likewise.
6774 * real.c: Likewise.
6775 * recog.c: Likewise.
6776 * reg-stack.c: Likewise.
6777 * regclass.c: Likewise.
6778 * regmove.c: Likewise.
6779 * reload.c: Likewise.
6780 * reload.h: Likewise.
6781 * reload1.c: Likewise.
6782 * reorg.c: Likewise.
6783 * resource.c: Likewise.
6784 * rtl.h: Likewise.
6785 * rtlanal.c: Likewise.
6786
ee8a73d6
SE
67872002-09-26 Steve Ellcey <sje@cup.hp.com>
6788
6789 * config/ia64/ia64.c (ia64_expand_load_address): Ensure correct mode
6790 for symbol address.
6791
2eb2bbdc
EC
67922002-09-24 Eric Christopher <echristo@redhat.com>
6793
57147be1
ZW
6794 * config/mips/elf.h: Add HANDLE_SYSV_PRAGMA.
6795 * config/mips/elf64.h: Ditto.
2eb2bbdc 6796
0ab38418
EC
67972002-09-24 Eric Christopher <echristo@redhat.com>
6798
57147be1 6799 * except.c (expand_builtin_extract_return_address): Handle case
0ab38418
EC
6800 where Pmode != ptr_mode.
6801
68bb91b1
SE
68022002-09-26 Steve Ellcey <sje@cup.hp.com>
6803
6804 * config/ia64/hpux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): New
6805
5429802d
SE
68062002-09-26 Steve Ellcey <sje@cup.hp.com>
6807
6808 * config/ia64/hpux.h (TARGET_DEFAULT): Include TARGET_ILP32.
6809
855c3a2e
IS
68102002-09-26 Igor Shevlyakov <igor@microunity.com>
6811
6812 * combine.c (simplify_set): Don't call to force_to_mode if size
6813 of integer type is larger than HOST_BITS_PER_WIDE_INT.
6814
2d556baf
JJ
68152002-09-26 Janis Johnson <janis187@us.ibm.com>
6816
6817 * Makefile.in (qmtest-g++): Fix file path.
6818
1717e19e
UW
68192002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
6820
0ab38418 6821 * expr.c (expand_expr) [MINUS_EXPR]: Convert A - const to
1717e19e
UW
6822 A + (-const) on RTX level, even for unsigned types.
6823
6cabe79e
UW
68242002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
6825
6826 * reload.c (dup_replacements): New function.
6827 (find_reloads): Use it to duplicate replacements at the top level
6828 of match_dup operands.
6829
0855247a
MB
68302002-09-26 Miles Bader <miles@gnu.org>
6831
6832 * v850.md ("length"): Change default value to 4.
6833
6335b0aa
KH
68342002-09-26 Kazu Hirata <kazu@cs.umass.edu>
6835
6836 * ChangeLog.1: Follow spelling conventions.
6837 * ChangeLog.4: Likewise.
6838 * ChangeLog.6: Likewise.
6839 * FSFChangeLog.11: Likewise.
6840 * doc/cpp.texi: Likewise.
6841 * doc/invoke.texi: Likewise.
6842 * doc/tm.texi: Likewise.
6843
09818236
NC
68442002-09-26 Nick Clifton <nickc@redhat.com>
6845
6846 * config.gcc: Add x prefix to v850e case for handling
6847 --with-cpu=v850e.
6848
4977bab6
ZW
68492002-09-25 Zack Weinberg <zack@codesourcery.com>
6850
6851 * gcc.c (input_suffix_matches, switch_matches,
6852 mark_matching_switches, process_marked_switches,
6853 process_brace_body): New functions - split from handle_braces.
6854 (handle_braces): Rewrite; handle %{S:X;T:Y;:D} syntax; accept
6855 and ignore whitespace in more places.
6856 (specs documentation comment): Document %{S:X;T:Y;:D}.
6857 Clarify other %{...} docs.
6858 * doc/invoke.texi: Document %{S:X;T:Y;:D}. Clarify other
6859 %{...} docs.
6860
6861 * config/arm/aof.h (LINK_SPEC): Change %{ov*,*} to %{ov*}.
6862 * config/rs6000/sysv4.h: Use N-way choice spec syntax.
6863
8a3996fd
DM
68642002-09-25 David S. Miller <davem@redhat.com>
6865
6866 PR target/7842
6867 * config/sparc/sparc.c (set_extends): SImode ASHIFT does not
6868 extend.
6869
8580f7a0
RH
68702002-09-25 Richard Henderson <rth@redhat.com>
6871
6872 * emit-rtl.c (const_double_htab_eq): Distinguish integer and
6873 fp CONST_DOUBLE; use real_identical.
6874
956d9305
MM
68752002-09-25 Mark Mitchell <mark@codesourcery.com>
6876
6877 * doc/invoke.texi: Add more -Wabi examples.
6878
3ccbe819
RS
68792002-09-25 Richard Sandiford <rsandifo@redhat.com>
6880
6881 * config/mips/mips.h (TARGET_MIPS4100): Add missing bracket.
6882
4977bab6
ZW
68832002-09-24 Nathan Sidwell <nathan@codesourcery.com>
6884
6885 * profile.c (end_branch_prob): Only look for __gcov_init on
6886 weak-enabled native compilers.
6887
2106e42a
DC
68882002-09-24 Denis Chertykov <denisc@overta.ru>
6889
6890 * config/ip2k/ip2k.c (function_epilogue): Fix wrong numbers in
6891 cases of optimizing "add sp,w" to "inc sp".
6892
58e60158
AN
68932002-09-24 Adam Nemet <anemet@lnxw.com>
6894
57147be1
ZW
6895 * config/arm/arm.c (thumb_unexpanded_epilogue): Don't generate
6896 epilogue for naked functions.
58e60158 6897
59be6073 68982002-09-24 Adam Nemet <anemet@lnxw.com>
57147be1 6899 Nick Clifton <nickc@redhat.com>
59be6073
AN
6900
6901 * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Remove.
6902 (FUNCTION_PROFILER): Only invoke THUMB_FUNCTION_PROFILER if it
6903 is defined.
6904
100c7420
UW
69052002-09-24 Ulrich Weigand <uweigand@de.ibm.com>
6906
6907 * config/s390/s390.c (preferred_la_operand_p): New function.
6908 * config/s390/s390-protos.h (preferred_la_operand_p): Declare it.
6909 * config/s390/s390.md ("addaddr_esame", "*la_ccclobber"): Replace by ...
6910 ("*la_64_cc", "*la_31_cc", splitters): ... these.
6911 ("*la_31"): Deactivate for TARGET_64BIT.
6912 ("*la_31_and", "*la_31_and_cc"): New.
6913
9fc63af5
KG
69142002-09-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6915
6916 * real.h (real_value): Make `exp' explicitly signed.
6917
43a88a8c
KH
69182002-09-24 Kazu Hirata <kazu@cs.umass.edu>
6919
6920 * config/elfos.h: Follow spelling conventions.
6921 * config/alpha/alpha.h: Likewise.
6922 * config/arc/arc.h: Likewise.
6923 * config/arm/arm.md: Likewise.
6924 * config/avr/avr.h: Likewise.
6925 * config/cris/cris.md: Likewise.
6926 * config/d30v/d30v.h: Likewise.
6927 * config/frv/frv.c: Likewise.
6928 * config/frv/frv.h: Likewise.
6929 * config/h8300/h8300.c: Likewise.
6930 * config/h8300/h8300.h: Likewise.
6931 * config/h8300/h8300.md: Likewise.
6932 * config/i386/cygwin.h: Likewise.
6933 * config/i386/i386.h: Likewise.
6934 * config/i386/sysv3.h: Likewise.
6935 * config/i960/i960.h: Likewise.
6936 * config/ia64/ia64.h: Likewise.
6937 * config/ia64/ia64.md: Likewise.
6938 * config/ip2k/ip2k.h: Likewise.
6939 * config/m32r/m32r.h: Likewise.
6940 * config/m68k/m68k.h: Likewise.
6941 * config/m88k/m88k.h: Likewise.
6942 * config/mcore/mcore.c: Likewise.
6943 * config/mcore/mcore.h: Likewise.
6944 * config/mcore/mcore.md: Likewise.
6945 * config/mips/mips.h: Likewise.
6946 * config/mmix/mmix.h: Likewise.
6947 * config/mmix/mmix.md: Likewise.
6948 * config/ns32k/netbsd.h: Likewise.
6949 * config/ns32k/ns32k.h: Likewise.
6950 * config/ns32k/ns32k.md: Likewise.
6951 * config/pa/pa.h: Likewise.
6952 * config/romp/romp.h: Likewise.
6953 * config/rs6000/rs6000.h: Likewise.
6954 * config/rs6000/rs6000.md: Likewise.
6955 * config/sparc/sparc.h: Likewise.
6956 * config/stormy16/stormy-abi: Likewise.
6957 * config/stormy16/stormy16.h: Likewise.
6958 * config/vax/vax.h: Likewise.
6959
4977bab6
ZW
69602002-09-23 Kazu Hirata <kazu@cs.umass.edu>
6961
6962 * config/alpha/alpha.h: Remove commented-out macro
6963 definitions of HAVE_{POST|PRE}_{INC|DEC}REMENT.
6964 * config/avr/avr.h: Likewise.
6965 * config/d30v/d30v.h: Likewise.
6966 * config/dsp16xx/dsp16xx.h: Likewise.
6967 * config/i370/i370.h: Likewise.
6968 * config/i386/i386.h: Likewise.
6969 * config/i960/i960.h: Likewise.
6970 * config/m68k/m68k.h: Likewise.
6971 * config/m88k/m88k.h: Likewise.
6972 * config/mips/mips.h: Likewise.
6973 * config/ns32k/ns32k.h: Likewise.
6974 * config/pdp11/pdp11.h: Likewise.
6975 * config/romp/romp.h: Likewise.
6976 * config/rs6000/rs6000.h: Likewise.
6977 * config/s390/s390.h: Likewise.
6978 * config/sh/sh.h: Likewise.
6979 * config/sparc/sparc.h: Likewise.
6980 * config/stormy16/stormy16.h: Likewise.
6981 * config/vax/vax.h: Likewise.
6982
69832002-09-23 Kazu Hirata <kazu@cs.umass.edu>
6984
6985 * function.c (push_temp_slots_for_block): Remove.
6986 (push_temp_slots_for_target): Likewise.
6987 (get_target_temp_slot_level): Likewise.
6988 (set_target_temp_slot_level): Likewise.
6989 (get_first_block_beg): Likewise.
6990 * function.h: Remove corresponding prototypes.
6991
b4f94ac1
ZW
69922002-09-23 Zack Weinberg <zack@codesourcery.com>
6993
6994 * version.c (version_string): Now const char[].
6995 * version.h: Update to match.
6996
9ef1b13a
RH
69972002-09-23 Richard Henderson <rth@redhat.com>
6998
6999 * config/i386/i386.h (MASK_ACCUMULATE_OUTGOING_ARGS_SET, MASK_MMX_SET,
7000 MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET, MASK_3DNOW_A_SET): Kill.
7001 (TARGET_SWITCHES): Don't reference them.
7002 * config/i386/i386.c (override_options): Use target_flags_explicit
7003 to examine bits set by the user.
7004
ca9d6748 70052002-09-23 Dale Johannesen <dalej@apple.com>
9ef1b13a 7006
ca9d6748
DJ
7007 * dbxout.c (dbxout_parms): Set current_sym_code for params
7008 passed on stack by invisible reference.
7009
97d48e5a
RE
70102002-09-23 Richard Earnshaw <rearnsha@arm.com>
7011
7012 * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Always allocate
7013 at least one byte of space.
7014
46c83bce
MM
70152002-09-23 Mark Mitchell <mark@codesourcery.com>
7016
7017 * c-common.h (flag_abi_version): Fix typo in comment.
7018 * doc/invoke.texi (flag_abi_version): Document default value.
7019
acb5d088
HPN
70202002-09-23 Hans-Peter Nilsson <hp@axis.com>
7021
7022 * doc/extend.texi (Extended Asm): Clarify that overlap between
7023 asm-declared register variables used in an asm and the asm clobber
7024 list is not allowed.
7025 * stmt.c (decl_conflicts_with_clobbers_p): New function.
7026 (expand_asm_operands): Keep track of clobbered registers. Call
7027 decl_conflicts_with_clobbers_p for each input and output operand.
7028 If no conflicts found before, also do conflict sanity check when
7029 emitting clobbers.
7030
ddf0fc72
RH
70312002-09-23 Richard Henderson <rth@redhat.com>
7032
7033 * c-common.c (cpp_define_data_format): Remove.
7034 (cb_register_builtins): Don't define __WCHAR_BIT__, __SHRT_BIT__,
7035 __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
7036 __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
7037 * doc/cpp.texi: Don't document them either.
7038 (__SCHAR_MAX__, __SHRT_MAX__, __INT_MAX__, __LONG_MAX__,
7039 __LONG_LONG_MAX__): Document.
7040 (__TARGET_FLOAT_FORMAT__): Remove.
7041
a520ff95
RH
70422002-09-23 Richard Henderson <rth@redhat.com>
7043
7044 * real.c (do_multiply): Normalize U before addition.
7045
2d3e278d
MM
70462002-09-23 Mark Mitchell <mark@codesourcery.com>
7047
7048 * c-common.c (flag_abi_version): New variable.
7049 * c-common.h (flag_abi_version): Declare it.
7050 * c-opts.c (missing_arg): Add -fabi-version.
7051 (c_common_decode_option): Process -fabi-version.
7052 * doc/invoke.texi (-fabi-version): Document it.
7053 (-Wabi): Add information about bit-fields in unions.
b4f94ac1 7054
4977bab6
ZW
70552002-09-22 Roger Sayle <roger@eyesopen.com>
7056
7057 * expr.c (STORE_BY_PIECES_P): New target macro.
7058 (can_store_by_pieces, store_by_pieces): Use STORE_BY_PIECES_P
7059 instead of MOVE_BY_PIECES_P.
7060 * doc/tm.texi: Document this new macro.
7061
173b51b5
JT
70622002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
7063
7064 * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Always pass -KPIC
7065 unless -fno-pic or -fno-PIC is specified.
7066
c219e1da
JDA
70672002-09-22 John David Anglin <dave@hiauly1.hia.nrc.ca>
7068
7069 * c-common.c (preprocessing_trad_p): Define.
7070 * pa-hiux.h, pa-hpux.h, pa-hpux7.h (CPP_PREDEFINES): Delete.
7071 (TARGET_OS_CPP_BUILTINS, SUBTARGET_SWITCHES): Define.
7072 * pa-hpux10.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
7073 * pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define.
7074 * pa-linux.h (CPP_PREDEFINES): Delete.
7075 (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
7076 * pa32-linux.h, pa64-linux.h (CPP_SPEC): Delete.
7077 * pa-osf.h, pa-pro-end.h, rtems.h (CPP_PREDEFINES): Delete.
7078 (TARGET_OS_CPP_BUILTINS): Define.
7079 * pa.h (MASK_SIO, TARGET_SIO, TARGET_PA_10): Define.
7080 (TARGET_SWITCHES): Reformat. Use N_() macro. Add SUBTARGET_SWITCHES.
7081 (SUBTARGET_SWITCHES): Provide default definition.
7082 (TARGET_OPTIONS): Reformat. Use N_() macro.
7083 (CPP_PA10_SPEC, CPP_PA11_SPEC, CPP_PA20_SPEC, CPP_64BIT_SPEC,
7084 CPP_CPU_DEFAULT_SPEC, CPP_64BIT_DEFAULT_SPEC, SUBTARGET_EXTRA_SPECS,
7085 EXTRA_SPECS, CPP_SPEC, CPLUSPLUS_CPP_SPEC, CPP_PREDEFINES): Delete.
7086 (TARGET_CPU_CPP_BUILTINS): Define.
7087 (TARGET_OS_CPP_BUILTINS): Define for BSD-like systems.
7088 * doc/invoke.texi (msio, mwsio): Document new hppa options.
7089 * doc/tm.texi (TARGET_CPU_CPP_BUILTINS): Document macro
7090 preprocessing_trad_p().
7091
65a824f6
JT
70922002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
7093
7094 * doc/install.texi: Document behavior of --with-headers and
7095 --with-libs when arguments are omitted.
7096
cc2902df
KH
70972002-09-22 Kazu Hirata <kazu@cs.umass.edu>
7098
7099 * dbxout.c: Follow spelling conventions.
7100 * defaults.h: Likewise.
7101 * df.c: Likewise.
7102 * diagnostic.h: Likewise.
7103 * doloop.c: Likewise.
7104 * dwarf2out.c: Likewise.
7105 * dwarfout.c: Likewise.
7106 * emit-rtl.c: Likewise.
7107 * except.c: Likewise.
7108 * explow.c: Likewise.
7109 * expmed.c: Likewise.
7110 * expr.c: Likewise.
7111 * expr.h: Likewise.
7112 * flags.h: Likewise.
7113 * flow.c: Likewise.
7114 * fold-const.c: Likewise.
7115 * function.c: Likewise.
7116 * function.h: Likewise.
7117 * gcc.c: Likewise.
7118 * gcov-io.h: Likewise.
7119 * gcov.c: Likewise.
7120 * gcse.c: Likewise.
7121 * genattrtab.c: Likewise.
7122 * genconfig.c: Likewise.
7123 * genrecog.c: Likewise.
7124 * ggc-page.c: Likewise.
7125 * ggc.h: Likewise.
7126 * global.c: Likewise.
7127 * gthr-win32.h: Likewise.
7128 * integrate.c: Likewise.
7129 * jump.c: Likewise.
7130 * langhooks.c: Likewise.
7131 * langhooks.h: Likewise.
7132 * line-map.h: Likewise.
7133 * local-alloc.c: Likewise.
7134 * longlong.h: Likewise.
7135 * loop.c: Likewise.
7136 * loop.h: Likewise.
7137
ef49d42e
JH
7138Tue Aug 27 22:26:35 CEST 2002 Jan Hubicka <jh@suse.cz>
7139
7140 * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
7141
7142Tue Aug 27 20:07:01 CEST 2002 Jan Hubicka <jh@suse.cz>
7143
7144 * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128
7145 for -Os/TARGET_64BIT too.
7146
da7d8304
KH
71472002-09-21 Kazu Hirata <kazu@cs.umass.edu>
7148
7149 * ChangeLog: Follow spelling conventions.
7150 * ChangeLog.0: Likewise.
7151 * ChangeLog.1: Likewise.
7152 * ChangeLog.2: Likewise.
7153 * ChangeLog.3: Likewise.
7154 * ChangeLog.4: Likewise.
7155 * ChangeLog.5: Likewise.
7156 * ChangeLog.6: Likewise.
7157 * FSFChangeLog.10: Likewise.
7158 * FSFChangeLog.11: Likewise.
7159 * alias.c: Likewise.
7160 * basic-block.h: Likewise.
7161 * c-aux-info.c: Likewise.
7162 * c-common.c: Likewise.
7163 * c-common.h: Likewise.
7164 * c-decl.c: Likewise.
7165 * c-format.c: Likewise.
7166 * c-semantics.c: Likewise.
7167 * c-typeck.c: Likewise.
7168 * calls.c: Likewise.
7169 * cfganal.c: Likewise.
7170 * cfgloop.c: Likewise.
7171 * collect2.c: Likewise.
7172 * combine.c: Likewise.
7173 * conflict.c: Likewise.
7174 * cppexp.c: Likewise.
7175 * cppfiles.c: Likewise.
7176 * cpphash.h: Likewise.
7177 * cppinit.c: Likewise.
7178 * cpplex.c: Likewise.
7179 * cpplib.c: Likewise.
7180 * cpplib.h: Likewise.
7181 * cppmacro.c: Likewise.
7182 * cse.c: Likewise.
7183
330cc6c7
RE
71842002-09-21 Richard Earnshaw <rearnsha@arm.com>
7185
7186 * netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): New, takes old definition of
7187 LINK_SPEC.
7188 (LINK_SPEC): Define to NETBSD_LINK_SPEC_AOUT.
7189 * arm/netbsd.h (SUBTARGET_EXTRA_SEPCS): Add NETBSD_LINK_SPEC_AOUT.
7190 (LINK_SPEC): Rework to use NETBSD_LINK_SPEC_AOUT).
7191
5b437e0f
RE
71922002-09-21 Richard Earnshaw <rearnsha@arm.com>
7193
9ee4fa29
RE
7194 PR opt/7930
7195 * cse.c (fold_rtx): Calculate old_cost before we fold each
5b437e0f
RE
7196 operand.
7197
2a15d344
RH
71982002-09-21 Richard Henderson <rth@redhat.com>
7199
7200 * c-common.c (cpp_define_data_format): Remove __GCC_LITTLE_ENDIAN__,
7201 __GCC_BIG_ENDIAN__, __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
7202 __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
7203 __TARGET_USES_VAX_F_FLOAT__, __TARGET_USES_VAX_D_FLOAT__,
7204 __TARGET_USES_VAX_G_FLOAT__, __TARGET_USES_VAX_H_FLOAT__.
7205 * doc/cpp.texi: Don't document them.
7206
3fdacdf9
RH
72072002-09-21 Richard Henderson <rth@redhat.com>
7208
7209 * c-common.c (builtin_define_float_constants): Use real_format
7210 to get the floating-point parameters.
7211
3dc85dfb
RH
72122002-09-21 Richard Henderson <rth@redhat.com>
7213
7214 * real.c (struct real_format): Move to real.h.
7215 (real_format_for_mode): Rename from fmt_for_mode; update all users;
7216 initialize with ieee defaults.
7217 (real_to_target_fmt, real_from_target_fmt): New.
7218 (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
7219 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
b4f94ac1 7220 ieee_quad_format, i370_single_format, i370_double_format,
3dc85dfb
RH
7221 c4x_single_format, c4x_extended_format): Rename from s/_format//.
7222 (ieee_quad_format): Fix emin.
7223 (format_for_size, init_real_once): Remove.
7224 * real.h (struct real_format): Move from real.c.
7225 (real_format_for_mode): Declare.
7226 (real_to_target_fmt, real_from_target_fmt): Declare.
7227 (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
7228 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
7229 ieee_quad_format, vax_f_format, vax_d_format, vax_g_format,
7230 i370_single_format, i370_double_format, c4x_single_format,
7231 c4x_extended_format): Declare.
7232 * toplev.c (do_compile): Don't call init_real_once.
7233
7234 * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
7235 * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Remove.
7236
7237 * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Define.
7238 * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): 64, if vax mode.
7239 * config/alpha/alpha.c (override_options): Set real_format_for_mode
7240 for VAX, if enabled.
7241
7242 * config/c4x/c4x.c (c4x_override_options): Set real_format_for_mode
7243 for C4X.
7244
7245 * config/i370/i370.h (OVERRIDE_OPTIONS): New.
7246 * config/i370/i370.c (override_options): New.
7247 * config/i370/i370-protos.h: Update.
7248
7249 * config/i386/i386.c (override_options): Set real_format_for_mode
7250 for Intel 80-bit extended.
7251 * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
7252
7253 * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Mind -mlong-double-64.
7254 (OVERRIDE_OPTIONS): Move code...
7255 * config/i960/i960.c (i960_initialize): ... here. Set
7256 real_format_for_mode for Intel 80-bit extended.
7257
7258 * config/ia64/ia64.c (ia64_override_options): Set real_format_for_mode
7259 for Intel 80-bit extended, if enabled.
7260
7261 * config/m68k/m68k.c (override_options): Set real_format_for_mode
b4f94ac1 7262 for Motorola 96-bit extended.
3dc85dfb
RH
7263
7264 * config/vax/vax.h (OVERRIDE_OPTIONS): New.
7265 * config/vax/vax.c (override_options): New.
7266 * config/vax/vax-protos.h: Update.
7267
42a6388c
AM
72682002-09-21 Alan Modra <amodra@bigpond.net.au>
7269
84d7dd4a
AM
7270 * config/rs6000/rs6000.md (builtin_setjmp_receiver): Add
7271 #if TARGET_MACHO.
7272
42a6388c
AM
7273 * config/rs6000/rs6000.md (floatdisf2_internal2): Combine
7274 insns. Supply missing clobber of scratch reg.
7275
a0ab749a
KH
72762002-09-20 Kazu Hirata <kazu@cs.umass.edu>
7277
7278 * config/m32r/m32r.c: Follow spelling conventions.
7279 * config/m32r/m32r.h: Likewise.
7280 * config/m32r/m32r.md: Likewise.
7281 * config/m68k/m68k.c: Likewise.
7282 * config/m88k/m88k.c: Likewise.
7283 * config/mcore/mcore.c: Likewise.
7284 * config/mips/mips.c: Likewise.
7285 * config/mips/mips.h: Likewise.
7286 * config/mmix/mmix.c: Likewise.
7287 * config/mn10200/mn10200.c: Likewise.
7288 * config/ns32k/ns32k.h: Likewise.
7289 * config/pa/pa.c: Likewise.
7290 * config/pa/pa64-linux.h: Likewise.
7291 * config/pdp11/pdp11.h: Likewise.
7292 * config/romp/romp.c: Likewise.
7293 * config/romp/romp.h: Likewise.
7294 * config/rs6000/eabi.asm: Likewise.
7295 * config/rs6000/linux64.h: Likewise.
7296 * config/rs6000/rs6000.c: Likewise.
7297 * config/rs6000/rs6000.h: Likewise.
7298 * config/rs6000/rs6000.md: Likewise.
7299 * config/rs6000/sysv4.h: Likewise.
7300 * config/rs6000/xcoff.h: Likewise.
7301
2f0da74c
JW
73022002-09-20 Jim Wilson <wilson@redhat.com>
7303
7304 * config/v850/v850/lib1funcs.asm (__muldi3): Change r5 to r28.
7305
dea73790
JJ
73062002-09-20 Jakub Jelinek <jakub@redhat.com>
7307
7308 * config/i386/i386.md (UNSPEC_GOTNTPOFF, UNSPEC_INDNTPOFF): New.
7309 * config/i386/i386.c (legitimate_pic_address_disp_p): Handle
7310 UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF like UNSPEC_GOTTPOFF.
7311 (legitimate_address_p): Likewise.
7312 (legitimize_address): Use @gotntpoff and @indntpoff.
7313 (output_pic_addr_const): Handle UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF.
7314 (output_addr_const_extra): Likewise.
7315
a9b2f059
JW
73162002-09-20 Jim Wilson <wilson@redhat.com>
7317
7318 * combine.c (try_combine): When split an instruction pair, where the
7319 first has a sign_extend src, verify that the src and dest modes match.
7320
1f7422bd
RH
73212002-09-20 Richard Henderson <rth@redhat.com>
7322
7323 * config/mips/mips.c (dfhigh, dflow, sfhigh, sflow): Remove.
7324 (override_options): Do not initialize them.
7325 (mips_const_double_ok): Allow no fp constants except zero,
7326 and not even that for mips16.
7327 (const_float_1_operand): Use dconst1.
7328 * config/mips/mips.md (movsf, movsf_internal1, movsf_internal2,
7329 movdf, movdf_internal1, movdf_internal1a, movdf_internal2):
6d8dd940 7330 Don't allow arbitrary constants; fix predicates and C constraint.
1f7422bd 7331
56941bf2
NB
73322002-09-20 Neil Booth <neil@daikokuya.co.uk>
7333
7334 * cppmacro.c: Don't warn about function-like macros without
27eba309 7335 '(' during pre-expansion.
56941bf2 7336
66a0dfeb
JW
73372002-09-20 Jim Wilson <wilson@redhat.com>
7338
7339 * config/v850/v850.c (current_function_anonymous_args): Delete.
7340 (expand_prologue): Use current_function_args_info.anonymous_args.
7341 (expand_epilogue): Delete use of current_function_anonymous_args.
7342 * config/v850/v850.h (struct cum_arg): Add anonymous_args field.
7343 (INIT_CUMULATIVE_ARGS): Clear anonymous_args field.
7344 (current_function_anonymous_args): Delete extern declaration.
7345 (SETUP_INCOMING_VARARGS): Set anonymous_args field.
7346
97b23853
GK
73472002-09-20 Geoffrey Keating <geoffk@apple.com>
7348
f51eee6a
GK
7349 * config/rs6000/rs6000.c (rs6000_emit_prologue): Update for change
7350 to load_macho_picbase.
7351 * config/rs6000/rs6000.md: Document Darwin-specific unspec IDs.
7352 (load_macho_picbase): Take the symbol to use as a parameter.
7353 (macho_correct_pic): New insn.
7354 (builtin_setjmp_reciever): On Darwin, restore the PIC register.
7355
97b23853
GK
7356 * config/rs6000/rs6000.h (ELIMINABLE_REGS): Use
7357 RS6000_PIC_OFFSET_TABLE_REGNUM rather than hardcoding 30.
7358 (CAN_ELIMINATE): Likewise.
7359 (INITIAL_ELIMINATION_OFFSET): Likewise.
7360 (TOC_REGISTER): Likewise.
7361
46b33600
RH
73622002-09-20 Richard Henderson <rth@redhat.com>
7363
7364 * real.c (real_hash): New.
7365 * real.h: Declare it.
7366 * cse.c (canon_hash): Use it.
7367 * cselib.c (hash_rtx): Likewise.
7368 * emit-rtl.c (const_double_htab_hash): Likewise.
7369 * rtl.h (CONST_DOUBLE_REAL_VALUE): New.
7370 * varasm.c (struct rtx_const): Reduce vector size; separate
7371 integer and fp vectors.
7372 (HASHBITS): Remove.
7373 (const_hash_1): Rename from const_hash. Use real_hash. Do not
7374 take modulus MAX_HASH_TABLE.
7375 (const_hash): New. Do take modulus MAX_HASH_TABLE.
7376 (output_constant_def): Do not take modulus MAX_HASH_TABLE.
7377 (SYMHASH): Don't use HASHBITS.
7378 (decode_rtx_const): Copy only active bits from REAL_VALUE_TYPE.
7379 Fix CONST_VECTOR thinko wrt fp vectors. Fix kind comparison.
7380 (simplify_subtraction): Fix kind comparison.
7381 (const_hash_rtx): Return unsigned int. Don't use HASHBITS.
7382 Use a union to pun integer array.
7383 * config/rs6000/rs6000.c (rs6000_hash_constant): Use real_hash;
7384 only hash two words of integral CONST_DOUBLE.
7385
40ad65d0
SE
73862002-09-20 Steve Ellcey <sje@cup.hp.com>
7387
7388 * config/ia64/hpux.h (STARTFILE_SPEC): Modify.
7389 (STARTFILE_PREFIX_SPEC): New.
7390 (LINK_SPEC): Modify.
7391 (LIB_SPEC): Modify.
7392 (LIBGCC_SPEC): New.
7393
600f3392
JJ
73942002-09-20 Jakub Jelinek <jakub@redhat.com>
7395
7396 * config/i386/i386.c (legitimate_pic_address_disp_p): Allow
7397 UNSPEC_NTPOFF and UNSPEC_DTPOFF to be offsetted by constant.
7398
c1ff6200
JD
73992002-09-20 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
7400
7401 * config/arm/arm.md (sign_extract_onebit, not_signextract_onebit):
7402 Add clobber of the condition code register.
7403
60b78700
RH
74042002-09-20 Richard Henderson <rth@redhat.com>
7405
7406 * real.c (do_fix_trunc): Static.
7407 (encode_ieee_single, encode_ieee_double, encode_ieee_extended,
7408 encode_ieee_quad, encode_vax_f, encode_vax_d, encode_vax_g,
7409 encode_i370_single, encode_i370_double, encode_c4x_single,
7410 encode_c4x_extended): Add default abort case.
7411
0ee6fdb5
RH
74122002-09-20 Richard Henderson <rth@redhat.com>
7413
7414 * real.h (enum real_value_class, SIGNIFICAND_BITS, EXP_BITS,
7415 MAX_EXP, SIGSZ, SIG_MSB, struct real_value): Move from real.c.
7416 (struct realvaluetype): Remove.
7417 (REAL_VALUE_TYPE): Use struct real_value.
7418 (REAL_VALUE_TYPE_SIZE): Use SIGNIFICAND_BITS.
7419 (test_real_width): New.
7420 * real.c: Global replace struct real_value with REAL_VALUE_TYPE.
7421 (real_arithmetic): Avoid hoops for REAL_VALUE_TYPE parameters.
7422 (real_compare, real_exponent, real_ldexp, real_isinf, real_isnan,
7423 real_isneg, real_isnegzero, real_identical, exact_real_inverse,
7424 real_to_integer, real_to_integer2, real_to_decimal,
7425 real_to_hexadecimal, real_from_string, real_from_integer,
7426 real_inf, real_nan, real_2expN, real_convert, real_to_target,
7427 real_from_target): Likewise.
7428 * tree.h (struct tree_real_cst): Use real_value not realvaluetype.
7429 * gengtype-yacc.y (bitfieldopt): Accept an ID as well.
7430
66d93b5a
RH
74312002-09-20 Richard Henderson <rth@redhat.com>
7432
7433 * real.h (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT,
7434 IBM_FLOAT_FORMAT, C4X_FLOAT_FORMAT, TARGET_FLOAT_FORMAT): Move ...
7435 * defaults.h: ... here.
7436 * config/arm/arm.h, config/avr/avr.h, config/d30v/d30v.h,
7437 config/fr30/fr30.h, config/frv/frv.h, config/ia64/ia64.h,
7438 config/ip2k/ip2k.h, config/mips/mips.h, config/stormy16/stormy16.h,
7439 config/xtensa/xtensa.h (TARGET_FLOAT_FORMAT): Remove.
7440
6ee3db61
HPN
74412002-09-20 Hans-Peter Nilsson <hp@bitrange.com>
7442
7443 * config/mmix/mmix.md ("negdf2"): Rewrite.
7444 ("*expanded_negdf2"): New.
7445
ff076520
JW
74462002-09-19 Jim Wilson <wilson@redhat.com>
7447
7448 * combine.c (simplify_set): When optimizing a subreg src with a
7449 cc0 dest, use GET_MODE (src) for mask instead of inner_mode.
7450
307f767b
DJ
74512002-09-19 Dale Johannesen <dalej@apple.com>
7452 * combine.c (make_extraction): Don't create
7453 invalid subreg.
7454
4977bab6
ZW
74552002-09-19 Roger Sayle <roger@eyesopen.com>
7456
7457 * tree.c (integer_nonzerop): New predicate for nonzero integers.
7458 * tree.h (integer_nonzerop): Add function prototype.
7459 * stmt.c (expand_end_loop): Don't rotate the loop when there
7460 are no instructions in the test, i.e. the loop is unconditional.
7461 (expand_exit_loop_if_false): Optimize RTL generation of loop
7462 tests when the condition is always true or always false.
7463 * c-semantics.c (genrtl_do_stmt): Optimize RTL generation of
7464 do-loops when the condition is always true.
7465 (genrtl_for_stmt): Optimize RTL generation of for-loops when
7466 the for-expression is empty.
7467
74682002-09-19 Zack Weinberg <zack@codesourcery.com>
7469
7470 * gcc.c (use_pipes): New flag.
7471 (process_command): Set it. Adjust check for -pipe conflicting
7472 with -time or -save-temps.
7473 (do_spec_1): Use it. Handle %|SUFFIX, %mSUFFIX, and
7474 %<SWITCH. Drop %| (without a SUFFIX).
7475 (handle_braces): Drop %{<SWITCH}, %{^SWITCH}, %{|...}.
7476 (give_switch): Third argument eliminated.
7477 (invoke_as, @assembler_with_cpp spec): Use %|.s or %m.s
7478 depending on AS_NEEDS_DASH_FOR_PIPED_INPUT.
7479 (specs documentation comment): Update.
7480
7481 * config/netbsd-aout.h, config/openbsd.h, config/ptx4.h,
7482 config/svr4.h, config/i386/freebsd-aout.h,
7483 config/m68k/netbsd-elf.h, config/m68k/netbsd.h,
7484 config/m68k/openbsd.h, config/mips/openbsd.h,
7485 config/sparc/sparc.h: Define AS_NEEDS_DASH_FOR_PIPED_INPUT
7486 instead of putting %| into ASM_SPEC and/or ASM_FINAL_SPEC.
7487 * config/avr/avr.h: Delete do-nothing ASM_FINAL_SPEC.
7488 * config/cris/cris.h: Update comment.
7489
7490 * ada/lang-specs.h: Use %(invoke_as). Straighten out
7491 error messages. Don't use %{^SWITCH}.
7492 * ada/misc.c (gnat_decode_option): Handle -I with a
7493 separate argument.
7494
7495 * f/lang-specs.h: Use %| and %m.
7496 * java/jvspec.c: Use %m and %(invoke_as). Change all
7497 uses of %{<SWITCH} to %<SWITCH.
7498
7499 * doc/invoke.texi: Update documentation of specs.
7500 * doc/tm.texi: Document AS_NEEDS_DASH_FOR_PIPED_INPUT.
7501
cc7ab9b7
UW
75022002-09-19 Ulrich Weigand <uweigand@de.ibm.com>
7503
b4f94ac1 7504 * config/s390/s390.c (addr_generation_dependency_p): Handle SUBREG
cc7ab9b7
UW
7505 and STRICT_LOW_PART within SET_DEST.
7506 * config/s390/s390.md ("*extractqi", "*extracthi"): New insns with
7507 splitters, replacing pre-reload splitters.
b4f94ac1 7508 ("*zero_extendhisi2_31", "*zero_extendqisi2_31",
cc7ab9b7
UW
7509 "*zero_extendqihi2_31"): New insns.
7510 ("*zero_extendqihi2_64"): Do not clobber CC.
7511
4977bab6
ZW
75122002-09-18 Devang Patel <dpatel@apple.com>
7513
7514 * cp/cp-tree.h: New prototype for walk_vtables().
7515 * cp/decl.c (walk_vtables_r): New function.
7516 (struct cp_binding_level): Add new members, namespaces,
7517 names_size and vtables.
7518 (add_decl_to_level): Add decl in namespaces or vtables
7519 chain, if conditions match.
7520 (walk_vtables): New function.
7521 (walk_namespaces_r): Travers separate namespace chain
7522 for namespace decls.
7523 (wrapup_globals_for_namespace): Use names_size instead
7524 of list_length().
7525 * cp/decl2.c (finish_file): Use walk_vtables() instead of
7526 walk_globals() to walk vtable decls.
7527
b64ddb88
SE
75282002-09-19 Steve Ellcey <sje@cup.hp.com>
7529
7530 * config/ia64/hpux.h (CTORS_SECTION_ASM_OP): New.
7531 (DTORS_SECTION_ASM_OP): Ditto.
7532 (READONLY_DATA_SECTION_ASM_OP): Moved.
7533 (DATA_SECTION_ASM_OP): New.
7534 (SDATA_SECTION_ASM_OP): New.
7535 (BSS_SECTION_ASM_OP): New.
7536 (SBSS_SECTION_ASM_OP): New.
7537 (TEXT_SECTION_ASM_OP): New.
7538
9cd10576
KH
75392002-09-19 Kazu Hirata <kazu@cs.umass.edu>
7540
7541 * config/fp-bit.c: Follow spelling conventions.
7542 * config/d30v/d30v.c: Likewise.
7543 * config/d30v/d30v.h: Likewise.
7544 * config/fr30/fr30.c: Likewise.
7545 * config/fr30/fr30.h: Likewise.
7546 * config/fr30/fr30.md: Likewise.
7547 * config/frv/frv.c: Likewise.
7548 * config/frv/frv.h: Likewise.
7549 * config/h8300/h8300.c: Likewise.
7550 * config/h8300/lib1funcs.asm: Likewise.
7551 * config/i370/i370.c: Likewise.
7552 * config/i386/i386.h: Likewise.
7553 * config/i386/i386.md: Likewise.
7554 * config/i386/pentium.md: Likewise.
7555 * config/i386/winnt.c: Likewise.
7556 * config/i960/i960.c: Likewise.
7557 * config/ia64/ia64.h: Likewise.
7558 * config/ip2k/ip2k.c: Likewise.
7559 * config/ip2k/ip2k.h: Likewise.
7560 * config/ip2k/ip2k.md: Likewise.
7561 * config/ip2k/libgcc.S: Likewise.
7562
fff08fd8
SC
75632002-09-19 Stephen Clarke <stephen.clarke@superh.com>
7564
7565 * config/sh/sh.h (UNSPEC_GOTOFF_P): Define.
7566 (GOTOFF_P): Extend to allow gotoff plus constant.
7567
bf3d27e6
RH
75682002-09-18 Richard Henderson <rth@redhat.com>
7569
7570 * ifcvt.c (noce_process_if_block): Correctly detect X modified
b4f94ac1 7571 with INSN_B before COND_EARLIEST. Don't check A and B for
bf3d27e6
RH
7572 modification in condition range. Reorder INSN_B for A==B properly.
7573 (if_convert): Iterate until no matches for a block.
7574
1b1f20ca
RH
75752002-09-18 Richard Henderson <rth@redhat.com>
7576
7577 * calls.c (store_one_arg): Rename default_align to parm_align;
7578 always adjust parm_align for downward padding.
7579
724838b9
RH
75802002-09-18 Richard Henderson <rth@redhat.com>
7581
7582 * toplev.c (backend_init): Move init_real_once invocation ...
7583 (do_compile): ... here.
7584
2c67b7c6
RH
75852002-09-18 Richard Henderson <rth@redhat.com>
7586
7587 * sibcall.c (optimize_sibling_and_tail_recursive_call): Also remove
7588 RTX_UNCHANGING_P markers for successful tail-recursive replacement.
7589
15769ca3
RH
75902002-09-18 Richard Henderson <rth@redhat.com>
7591
7592 * real.c (round_for_format): Collect sticky as unsigned long, not bool.
7593
678b7733
AM
75942002-09-19 Alan Modra <amodra@bigpond.net.au>
7595
7596 * config/rs6000/rs6000.md: (floatdisf2): Rename to
7597 floatdisf2_internal1.
7598 (floatdisf2): New define_expand.
7599 (floatdisf2_internal2): Likewise.
7600
c402b6bf
RH
76012002-09-18 Richard Henderson <rth@redhat.com>
7602
b4f94ac1 7603 * real.c (sticky_rshift_significand): Collect sticky as
c402b6bf
RH
7604 unsigned long, not bool.
7605
dea09b1b
UW
76062002-09-18 Ulrich Weigand <uweigand@de.ibm.com>
7607
7608 * config/s390/s390.c (s390_address_cost): New function.
7609 config/s390/s390-protos.h (s390_address_cost): Add prototype.
7610 config/s390/s390.h (ADDRESS_COST): Call s390_address_cost.
7611 (RTX_COST): Use COSTS_N_INSNS.
7612
e4850f36
DR
76132002-09-18 Douglas Rupp <rupp@gnat.com>
7614 Donn Terry <donnte@microsoft.com>
7615
7616 * stor-layout.c (place_field): Handle alignment of whole
7617 structures when MSVC compatible bitfields are involved.
7618 Change method of computing location of MS bitfields to
7619 be compatible with #pragma pack(n).
7620
7621 * tree.h (record_layout_info): Add new field
7622 remaining_in_alignment.
7623
7624 * doc/tm.texi: (TARGET_MS_BITFIELD_LAYOUT_P): Update.
4977bab6 7625 (pragma pack): Add paragraph on MSVC bitfield packing.
e4850f36 7626
872e50d3
RE
76272002-09-18 Richard Earnshaw (reanrsha@arm.com)
7628
7629 PR optimization/7967
7630 * arm.md (ne_zeroextractsi): Add clobber of the condition code
7631 register.
7632
5e7a8ee0
KH
76332002-09-18 Kazu Hirata <kazu@cs.umass.edu>
7634
9cd10576 7635 * config/s390/s390.c: Follow spelling conventions.
5e7a8ee0
KH
7636 * config/sh/lib1funcs.asm: Likewise.
7637 * config/sh/sh.c: Likewise.
7638 * config/sh/sh.h: Likewise.
7639 * config/sparc/sparc.c: Likewise.
7640 * config/sparc/sparc.h: Likewise.
7641 * config/sparc/sparc.md: Likewise.
7642 * config/stormy16/stormy16.c: Likewise.
7643 * config/stormy16/stormy16.h: Likewise.
7644 * config/v850/v850.c: Likewise.
7645 * config/v850/v850.h: Likewise.
7646 * config/vax/vax.c: Likewise.
7647 * config/vax/vax.h: Likewise.
7648
00a892b8
NC
76492002-09-18 Nick Clifton <nickc@redhat.com>
7650
7651 * config/rs60000/rs6000.c (rs6000_emit_move): Handle V1DImode moves.
7652 * config/rs60000/rs6000.c (SPE_VECTOR_MODE): Include V1DImode.
7653 * config/rs6000/spe.md (movv1di, movv1di_internal): New patterns.
7654
4977bab6
ZW
76552002-09-17 Kazu Hirata <kazu@cs.umass.edu>
7656
7657 * function.c (max_parm_reg_num): Remove.
7658 * stmt.c (in_control_zone_p, stmt_loop_nest_empty,
7659 drop_through_at_end_p, move_cleanups_up,
7660 expand_end_case_dummy, case_index_expr_type): Likewise.
7661 * stor-layout.c (pos_from_byte): Likewise.
7662 * tree.c (chain_member_value, chain_member_purpose, listify,
7663 tree_int_cst_msb, index_type_equal): Likewise.
7664 * tree.h: Remove prototypes for unused functions.
7665
bfb53001
ZW
76662002-09-17 Zack Weinberg <zack@codesourcery.com>
7667
7668 * ABOUT-GCC-NLS: Remove reference to enquire, and out-of-date
7669 statement that the only translation is to en_UK.
7670
825dda42
KH
76712002-09-17 Kazu Hirata <kazu@cs.umass.edu>
7672
7673 * config/alpha/alpha.c: Follow spelling conventions.
7674 * config/alpha/alpha.h: Likewise.
7675 * config/alpha/alpha.md: Likewise.
7676 * config/arc/arc.h: Likewise.
7677 * config/arm/arm.c: Likewise.
7678 * config/arm/arm.h: Likewise.
7679 * config/arm/arm.md: Likewise.
7680 * config/arm/pe.c: Likewise.
7681 * config/arm/unknown-elf.h: Likewise.
7682 * config/avr/avr.c: Likewise.
7683 * config/avr/avr.h: Likewise.
7684 * config/c4x/c4x.c: Likewise.
7685 * config/cris/cris.c: Likewise.
7686 * config/cris/cris.h: Likewise.
7687
8e16ab99 76882002-09-17 Samuel Figueroa <figueroa@apple.com>
825dda42 7689
8e16ab99
SF
7690 * final.c (final_scan_insn): Use new macro ASM_OUTPUT_ALIGN_WITH_NOP.
7691 * config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP) New macro.
7692 * doc/tm.texi (ASM_OUTPUT_ALIGN_WITH_NOP) New description.
7693
ac19be7e 76942002-09-17 Dale Johannesen <dalej@apple.com>
825dda42 7695
ac19be7e
DJ
7696 * cfgcleanup.c (try_forward_edges): Do not forward a
7697 branch to just after a loop exit before loop optimization;
7698 this interfered with doloop detection.
7699
f1acdf8b
NC
77002002-09-17 Nick Clifton <nickc@redhat.com>
7701
7702 * config/arm/arm.c (output_return_instruction): Do not
7703 writeback the stack pointer when it is being loaded.
7704 (arm_output_epilogue): Likewise.
7705
24491a09
KH
77062002-09-17 Kazu Hirata <kazu@cs.umass.edu>
7707
7708 * optabs.c (prepare_cmp_insn): Let emit_library_call_value
7709 generate a pseudo reg that receives the result of a libcall.
7710 (prepare_float_lib_cmp): Likewise.
7711
e6c247e0
SE
77122002-09-17 Steve Ellcey <sje@cup.hp.com>
7713
b4f94ac1 7714 * config/ia64/elf.h: Remove CPP_PREDEFINES.
e6c247e0 7715
1074d9d4
NP
7716Tue Sep 17 13:58:04 2002 Nicola Pero <n.pero@mi.flashnet.it>
7717
7718 Fix PR/7014 and related objc bugs:
7719 * c-typeck.c (comp_target_types): Added a reflexive argument.
7720 Pass it to ObjC when/if calling objc_comptypes(). Updated all
7721 callers to provide the appropriate reflexive argument.
7722 * objc/objc-act.c (objc_comptypes): Carefully checked and fixed
7723 typechecking for all cases of comparisons and assignments,
7724 particularly the obscure and less common ones involving protocols.
7725
256e9fd2
NC
77262002-09-17 Nick Clifton <nickc@redhat.com>
7727
7728 * machmode.def (V1DImode): New mode. A single element vector.
7729 * tree.h (TI_UV1DI_TYPE, TI_V1DI_TYPE): New tree_index enums.
7730 (unsigned_V1DI_type_node, V1D1_type_node): New type nodes.
7731 * tree.c (build_common_tree_nodes_2): Build
7732 unsigned_V1DI_type_node and V1D1_type_node.
7733 * c-common.c (c_common_type_for_mode): Return
7734 unsigned_V1DI_type_node or V1D1_type_node for V1DImode.
7735 * rtl.c (class_narrowest_): Start integer vector nodes with V1DImode.
7736
838c4534
NP
7737Tue Sep 17 13:40:13 2002 Nicola Pero <n.pero@mi.flashnet.it>
7738
7739 * doc/objc.texi (Constant string objects): Extended documentation
7740 to make clear that the constant string class ivar layout is
7741 completely fixed.
b4f94ac1 7742
07532fad
RS
77432002-09-17 Roger Sayle <roger@eyesopen.com>
7744
7745 * cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned
7746 NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
7747
4977bab6
ZW
77482002-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
7749
7750 * config/mips/mips.c (save_restore_insns): Remove unused variable.
7751 * gcc.c (make_relative_prefix): Likewise.
7752 * loop.c (check_final_value): Likewise.
7753 * jump.c (init_label_info): Remove return value.
7754 * cse.c (prev_insn): Move variable between #ifdef HAVE_cc0 ... #endif.
7755
77562002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7757
7758 * dsp16xx.h (ASM_FORMAT_PRIVATE_NAME): Delete.
7759 (ASM_PN_FORMAT): Define.
7760
77612002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7762
7763 * alpha.h, alpha/vms.h, arc.h, arm/aof.h, arm/aout.h, avr.h,
7764 c4x.h, cris.h, d30v.h, fr30.h, frv.h, h8300.h, i370.h, i386.h,
7765 i960.h, ia64.h, ip2k.h, m32r.h, m68hc11.h, m68k/3b1.h,
7766 m68k/hp320.h, m68k.h, m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h,
7767 m88k.h, mcore.h, mips.h, mmix.h, mn10200.h, mn10300.h, ns32k.h,
7768 pa.h, pdp11.h, romp.h, rs6000.h, s390/linux.h, sh.h, sparc.h,
7769 stormy16.h, v850.h, vax.h, xtensa.h (ASM_FORMAT_PRIVATE_NAME):
7770 Delete.
7771 * alpha/vms.h, h8300.h, i370.h, ia64.h, m68k/3b1.h, m68k/hp320.h,
7772 m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h, mmix.h, mn10200.h,
7773 mn10300.h, pa.h, v850.h (ASM_PN_FORMAT): Define.
7774
7775 * defaults.h (ASM_PN_FORMAT, ASM_FORMAT_PRIVATE_NAME): Define.
7776 * doc/tm.texi (ASM_FORMAT_PRIVATE_NAME): Update documentation.
7777
cb38fd88
RH
77782002-09-16 Richard Henderson <rth@redhat.com>
7779
7780 * expr.c (emit_block_move): Set memory block size as appropriate
7781 for the copy.
7782
bd055118
RH
77832002-09-16 Richard Henderson <rth@redhat.com>
7784
7785 PR fortran/3924
b4f94ac1 7786 * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol.
bd055118 7787
8c317c5f
RH
77882002-09-16 Richard Henderson <rth@redhat.com>
7789
7790 * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE
7791 as well as OFFSET for BITPOS.
7792
3780101d
JG
77932002-09-16 Jeff Garzik <jgarzik@mandrakesoft.com>
7794
b4f94ac1
ZW
7795 * config.gcc: Treat winchip_c6-*|winchip2-*|c3-* as pentium-mmx.
7796 * config/i386/i386.c (processor_alias_table): Add winchip-c6,
3780101d 7797 winchip2 and c3.
b4f94ac1 7798 * doc/invoke.texi: Mention new aliases.
3780101d 7799
9dff28ab
JDA
78002002-09-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
7801
7802 * calls.c (store_one_arg): Set default alignment for BLKmode arguments
7803 to BITS_PER_UNIT when ARGS_GROW_DOWNWARD and the padding direction is
7804 downward.
7805 * function.c (pad_below): Always compile.
7806 (locate_and_pad_parm): If defined ARGS_GROW_DOWNWARD, pad argument to
7807 alignment when it is not in a register or REG_PARM_STACK_SPACE is true.
7808 Pad below when the argument is not in a register and the padding
7809 direction is downward.
7810
7811 * pa-64.h (MUST_PASS_IN_STACK): Move define to pa.h.
7812 (PAD_VARARGS_DOWN): Define.
7813 * pa.c (function_arg_padding): Revise padding directions to make them
7814 compatible with the 32 and 64-bit runtime architecture documentation.
7815 (hppa_va_arg): Add code to handle variable and size zero arguments
7816 passed by reference on TARGET_64BIT. Reformat.
7817 (function_arg): Use a PARALLEL for BLKmode and aggregates args on
7818 TARGET_64BIT. Use a DImode PARALLEL for BLKmode args 5 to 8 bytes
7819 wide when !TARGET_64BIT. Move forward check for mode==VOIDmode.
7820 Add comments.
7821 * pa.h (MAX_PARM_BOUNDARY): Correct define for TARGET_64BIT.
7822 (RETURN_IN_MEMORY): Return size zero types in memory.
7823 (FUNCTION_VALUE): Return TFmode in general registers.
7824 (MUST_PASS_IN_STACK): Define.
7825 (FUNCTION_ARG_BOUNDARY): Simplify.
7826 (FUNCTION_ARG_PASS_BY_REFERENCE): Pass variable and zero sized types
7827 by reference.
7828 (FUNCTION_ARG_CALLEE_COPIES): Define to FUNCTION_ARG_PASS_BY_REFERENCE.
7829
94313f35
RH
78302002-09-16 Richard Henderson <rth@redhat.com>
7831
7832 * real.c (do_fix_trunc): New.
7833 (real_arithmetic): Call it.
7834 * simplify-rtx.c (simplify_unary_operation): Handle FIX
7835 with a floating-point result mode.
7836
1472e41c
RH
78372002-09-16 Richard Henderson <rth@redhat.com>
7838
7839 * builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
7840 (BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New.
7841 * builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New.
7842 (__builtin_nans, __builtin_nansf, __builtin_nansl): New.
7843 * builtins.c (fold_builtin_nan): New.
7844 (fold_builtin): Call it.
7845 * real.c (real_nan): Parse a non-empty string.
7846 (round_for_format): Fix NaN significand truncation.
7847 * real.h (real_nan): Return bool.
7848 * doc/extend.texi: Document new builtins.
7849
f354b828
JM
78502002-09-16 Jason Merrill <jason@redhat.com>
7851 Danny Smith <dannysmith@users.sourceforge.net>
7852
7853 * config/i386/winnt.c (ix86_handle_dll_attribute): Set
7854 DECL_EXTERN and TREE_PUBLIC for dllimported variables here...
7855 (i386_pe_mark_dllimport): Not here.
7856
85341ddd
NS
78572002-09-16 Nathan Sidwell <nathan@codesourcery.com>
7858
7859 * c-semantics.c (genrtl_do_stmt): Cope with NULL cond.
7860
045572c7
GK
78612002-09-16 Geoffrey Keating <geoffk@redhat.com>
7862
7863 * config/rs6000/rs6000.c (build_mask64_2_operands): Suppress
7864 warnings about unused operands when HOST_BITS_PER_WIDE_INT is
7865 < 64.
7866 (rs6000_emit_cmove): Use real_isinf not target_isinf.
7867
d57551c7
KH
78682002-09-16 Kazu Hirata <kazu@cs.umass.edu>
7869
7870 * calls.c (emit_library_call_value_1): Don't refer to
7871 hard_libcall_value.
7872 * optabs.c (prepare_float_lib_cmp): Likewise.
7873
36a5eadd
GK
78742002-09-16 Geoffrey Keating <geoffk@apple.com>
7875
7876 * ggc-common.c (ggc_mark_rtx_children_1): Update for changed name
7877 mangling.
7878
7879 The following changes are merged from pch-branch:
7880
7881 * doc/gty.texi (GTY Options): Document %a.
7882 * gengtype.c (do_scalar_typedef): New function.
7883 (process_gc_options): Handle `length' option.
7884 (set_gc_used_type): A pointer to an array of structures doesn't
7885 qualify as a pointer to a structure.
7886 (output_escaped_param): Add `%a' escape.
7887 (write_gc_structure_fields): Allow 'desc' on array of unions.
7888 (main): Define `uint8', `jword' and `JCF_u2' as scalars; use
7889 do_scalar_typedef.
7890
7891 * gengtype.c (enum rtx_code): Make global.
7892 (rtx_format): Make global.
7893 (rtx_next): New.
7894 (gen_rtx_next): New.
7895 (write_rtx_next): New.
7896 (adjust_field_rtx_def): Skip fields marked by chain_next.
7897 (open_base_files): Delete redundant prototype.
7898 (write_enum_defn): New.
7899 (output_mangled_typename): Correct abort call.
7900 (write_gc_marker_routine_for_structure): Handle chain_next and
7901 chain_prev options.
7902 (finish_root_table): Don't output redundant \n.
7903 (main): Call gen_rtx_next, write_rtx_next, write_enum_defn.
7904 * c-tree.h (union lang_tree_node): Add chain_next option.
7905
7906 * gengtype.h (NUM_PARAM): New definition.
7907 (struct type): For TYPE_PARAM_STRUCT, allow multiple parameters.
7908 * gengtype.c (find_param_structure): New.
7909 (adjust_field_type): Handle param<n>_is option.
7910 (process_gc_options): Detect use_params option. Update callers.
7911 (set_gc_used_type): Add 'param' parameter, update callers. Handle
7912 'use_params' option.
7913 (open_base_files): Add splay-tree.h to list of files included.
7914 (output_mangled_typename): New.
7915 (write_gc_structure_fields): Update 'param' parameter to support
7916 multiple parameters. Change name mangling. Allow parameterized
7917 fields to have an apparent scalar type. Handle param<n>_is options,
7918 use_param option.
7919 (write_gc_marker_routine_for_structure): Update for change to name
7920 mangling. Better guess the output file for parameterized types.
7921 (write_gc_types): Update for change to name mangling.
7922 (write_gc_root): Update for change to name mangling. Handle (ignore)
7923 param<n>_is options.
7924 * doc/gty.texi (GTY Options): Add description of param<n>_is
7925 options, use_params option.
7926 * ggc.h (ggc_mark_rtx): Update for changed name mangling.
7927 * gengtype-lex.l: Produce token for param<n>_is.
7928 * gengtype-yacc.y: Parse param<n>_is.
7929
7930 * gengtype.c (adjust_field_tree_exp): Don't name a variable 'rindex'.
7931
7932 * rtl.c: Update comment describing rtx_format.
7933 * rtl.h (union rtunion): Separate definition and typedef.
7934 (struct rtx_def): Use gengtype to mark.
7935 * Makefile.in (gengtype.o): Also depend on rtl.def.
7936 * ggc.h (ggc_mark_rtx_children): Delete prototype.
7937 (ggc_mark_rtx): Change to alias of gengtype-generated routine.
7938 * ggc-common.c (ggc_mark_rtx_children): Delete.
7939 (ggc_mark_rtx_children_1): Delete.
7940 (gt_ggc_m_rtx_def): Delete.
7941 * gengtype.c (adjust_field_rtx_def): New.
7942 (adjust_field_type): Call adjust_field_rtx_def.
7943 (write_gc_structure_fields): Add 'default' case to switch if none
7944 is specified; remove unused code.
7945
7946 * tree.h (struct tree_exp): Update for change to meaning
7947 of special.
7948 * gengtype.c (adjust_field_tree_exp): New function.
7949 (adjust_field_type): Handle `tree_exp' special here.
7950 (write_gc_structure_fields): Don't handle `tree_exp' special here.
7951 Handle new `dot' option.
7952
7953 * gengtype.h: Make `info' a pointer-to-const.
7954 * gengtype-yacc.y (yacc_ids): Use xasprintf.
7955
7956 * gengtype.c (write_gc_structure_fields): Remove implementation
7957 of `always' option, add `default' option.
7958 * doc/gty.texi (GTY Options): Remove documentation of `always',
7959 add `default'.
7960
a7f6d760
HPN
79612002-09-16 Hans-Peter Nilsson <hp@bitrange.com>
7962
7963 * output.h: Remove #ifdef RTX_CODE and #ifdef TREE_CODE.
7964
245ff137
KG
79652002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7966
7c3414b6
KG
7967 * m68hc11.md (addhi_sp): Fix uninitialized variable bug.
7968
245ff137
KG
7969 * c4x-c.c, c4x.c, darwin.c, i370-c.c, m32r.c: Include tm_p.h
7970 instead of the *-protos.h file directly.
7971 * t-c4x, t-i370, t-v850: Depend on $(TM_P_H).
7972 * darwin.c (machopic_output_stub): Move prototype ...
7973 * darwin-protos.h (machopic_output_stub): ... here.
7974 * rs6000-protos.h (machopic_output_stub): Don't declare.
7975
ac520ec9
RH
79762002-09-16 Richard Henderson <rth@redhat.com>
7977
7978 * c-common.c (builtin_define_float_constants): Emit __FOO_DENORM_MIN__.
7979
efdc7e19
RH
79802002-09-16 Richard Henderson <rth@redhat.com>
7981
7982 * real.c, real.h: Rewrite from scratch.
7983
7984 * Makefile.in (simplify-rtx.o): Depend on TREE_H.
7985 (paranoia): New target.
7986 * builtins.c (fold_builtin_inf): Use new real.h interface.
7987 * c-common.c (builtin_define_with_hex_fp_value): Likewise.
7988 * c-lex.c (interpret_float): Likewise.
7989 * emit-rtl.c (gen_lowpart_common): Likewise.
7990 * optabs.c (expand_float): Use real_2expN.
7991 * config/ia64/ia64.md (divsi3, udivsi3): Likewise.
7992 * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): New.
7993 (FLOAT_WORDS_BIG_ENDIAN): New.
7994 * cse.c (find_comparison_args): Don't pass FLOAT_STORE_FLAG_VALUE
7995 directly to REAL_VALUE_NEGATIVE.
7996 * loop.c (canonicalize_condition): Likewise.
7997 * simplify-rtx.c: Include tree.h.
7998 (simplify_unary_operation): Don't handle FIX and UNSIGNED_FIX
7999 with floating-point result modes.
8000 * toplev.c (backend_init): Call init_real_once.
8001
8002 * fold-const.c (force_fit_type): Don't call CHECK_FLOAT_VALUE.
8003 * tree.c (build_real): Likewise.
8004 * config/alpha/alpha.c, config/vax/vax.c (float_strings,
8005 float_values, inited_float_values, check_float_value): Remove.
8006 * config/alpha/alpha.h, config/m68hc11/m68hc11.h,
8007 config/m88k/m88k.h, config/vax/vax.h (CHECK_FLOAT_VALUE): Remove.
8008 * doc/tm.texi (CHECK_FLOAT_VALUE): Remove.
8009 (VAX_HALFWORD_ORDER): Remove.
8010
a41c6c53
UW
80112002-09-16 Ulrich Weigand <uweigand@de.ibm.com>
8012
8013 * config/s390/s390.c: (legitimize_la_operand): Remove, replace by ...
8014 (s390_load_address): ... this new function.
8015 (s390_decompose_address): Allow the argument pointer and all
8016 virtual registers as 'pointer' registers.
8017 (s390_expand_plus_operand): Use s390_load_address.
8018 config/s390/s390.md (movti, movdi, movdf splitters): Likewise.
8019 ("force_la_31"): New insn pattern.
8020 config/s390/s390-protos.h (legitimize_la_operand): Remove.
8021 (s390_load_address): Add prototype.
8022
8023 * config/s390/s390.c: Include "optabs.h".
8024 (s390_expand_movstr, s390_expand_clrstr, s390_expand_cmpstr): New.
b4f94ac1 8025 config/s390/s390-protos.h (s390_expand_movstr, s390_expand_clrstr,
a41c6c53
UW
8026 s390_expand_cmpstr): Add prototypes.
8027 config/s390/s390.md ("movstrdi", "movstrsi"): Call s390_expand_movstr.
8028 ("movstrdi_short"): Rename to "movstr_short_64". Change predicates
8029 for operands 0 and 1 to "memory_operand". Add type attribute.
8030 ("movstrsi_short"): Rename to "movstr_short_31". Change predicates
8031 for operands 0 and 1 to "memory_operand". Add type attribute.
8032 ("movstrdi_long", "movstrsi_long"): Remove.
8033 ("movstrdi_64"): Rename to "movstr_long_64". Add type attribute.
8034 ("movstrsi_31"): Rename to "movstr_long_31". Add type attribute.
8035 ("clrstrdi", "clrstrsi"): Call s390_expand_clrstr.
8036 ("clrstrsico"): Remove, replace by ...
8037 ("clrstr_short_64", "clrstr_short_31"): ... these new patterns.
8038 ("clrstrsi_64"): Rename to "clrstr_long_64".
8039 ("clrstrsi_31"): Rename to "clrstr_long_31".
8040 ("cmpstrdi", "cmpstrsi"): Call s390_expand_cmpstr.
8041 ("cmpstr_const"): Remove, replace by ...
8042 ("cmpstr_short_64", "cmpstr_short_31"): ... these new patterns.
8043 ("cmpstr_64"): Rename to "cmpstr_long_64".
8044 ("cmpstr_31"): Rename to "cmpstr_long_31".
8045
8d9afc4e
KH
80462002-09-16 Kazu Hirata <kazu@cs.umass.edu>
8047
8048 * ABOUT-NLS: Follow spelling conventions.
8049 * ChangeLog: Likewise.
8050 * ChangeLog.1: Likewise.
8051 * ChangeLog.2: Likewise.
8052 * ChangeLog.3: Likewise.
8053 * ChangeLog.4: Likewise.
8054 * ChangeLog.5: Likewise.
8055 * ChangeLog.6: Likewise.
8056 * FSFChangeLog.10: Likewise.
8057 * FSFChangeLog.11: Likewise.
8058 * c-common.c: Likewise.
8059 * c-lex.c: Likewise.
8060 * c-objc-common.c: Likewise.
8061 * cppexp.c: Likewise.
8062 * cppinit.c: Likewise.
8063 * cpplex.c: Likewise.
8064 * doloop.c: Likewise.
8065 * flow.c: Likewise.
8066 * function.c: Likewise.
8067 * integrate.c: Likewise.
8068 * loop.c: Likewise.
8069 * reg-stack.c: Likewise.
8070 * reload.h: Likewise.
8071 * ssa.c: Likewise.
8072
4977bab6
ZW
80732002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8074
8075 * Makefile.in (vmsdbgout.o): Depend on $(TARGET_H)
8076 * vmsdbgout.c: Include "target.h".
8077
981f6289
KH
80782002-09-15 Kazu Hirata <kazu@cs.umass.edu>
8079
8080 * ChangeLog: Follow spelling conventions.
8081 * ChangeLog.0: Likewise.
8082 * ChangeLog.1: Likewise.
8083 * ChangeLog.2: Likewise.
8084 * ChangeLog.4: Likewise.
8085 * ChangeLog.6: Likewise.
8086 * config.gcc: Likewise.
8087 * dwarfout.c: Likewise.
8088 * reload1.c: Likewise.
8089 * simplify-rtx.c: Likewise.
8090 * unwind-sjlj.c: Likewise.
8091 * config/avr/avr.h: Likewise.
8092 * config/d30v/d30v.h: Likewise.
8093 * config/frv/frv.c: Likewise.
8094 * config/frv/frv.h: Likewise.
8095 * config/ip2k/ip2k.h: Likewise.
8096 * config/m88k/m88k-move.sh: Likewise.
8097 * config/stormy16/stormy16.c: Likewise.
8098 * config/stormy16/stormy16.h: Likewise.
8099 * doc/extend.texi: Likewise.
8100 * doc/interface.texi: Likewise.
8101 * doc/invoke.texi: Likewise.
8102 * doc/md.texi: Likewise.
8103 * doc/rtl.texi: Likewise.
8104 * doc/tm.texi: Likewise.
8105 * doc/trouble.texi: Likewise.
8106 * ginclude/float.h: Likewise.
8107 * treelang/treelang.texi: Likewise.
8108
8764eef7
KG
81092002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8110
bb6155b5
KG
8111 * i386-protos.h (i386_pe_dllexport_name_p,
8112 i386_pe_dllimport_name_p, i386_pe_unique_section,
8113 i386_pe_declare_function_type, i386_pe_record_external_function,
8114 i386_pe_record_exported_symbol, i386_pe_asm_file_end): Add
8115 prototype.
8116 * i386/t-cygwin (winnt.o): Depend on $(TM_P_H).
8117 * i386/t-interix (winnt.o): Likewise.
8118
8764eef7
KG
8119 * v850-protos.h (v850_output_addr_const_extra): Prototype.
8120
a24f7c1a
JT
81212002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
8122
8123 * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Add
8124 MIPS ABI CPP macros.
8125 (TARGET_CPU_CPP_BUILTINS): Redefine.
8126 (SUBTARGET_EXTRA_SPECS): Remove subtarget_endian_default.
8127 (SUBTARGET_ENDIAN_DEFAULT_SPEC): Remove.
8128
bd25febf
KG
81292002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8130
8131 * ia64/aix.h (TARGET_OS_CPP_BUILTINS): Fix typo.
8132
05713b80
KH
81332002-09-15 Kazu Hirata <kazu@cs.umass.edu>
8134
8135 * ChangeLog: Follow spelling conventions.
8136 * ChangeLog.0: Likewise.
8137 * ChangeLog.1: Likewise.
8138 * ChangeLog.2: Likewise.
8139 * ChangeLog.3: Likewise.
8140 * ChangeLog.4: Likewise.
8141 * ChangeLog.5: Likewise.
8142 * ChangeLog.6: Likewise.
8143 * FSFChangeLog.10: Likewise.
8144 * FSFChangeLog.11: Likewise.
8145 * c-common.c: Likewise.
8146 * c-common.h: Likewise.
8147 * c-format.c: Likewise.
8148 * c-opts.c: Likewise.
8149 * cpplib.c: Likewise.
8150 * langhooks.h: Likewise.
8151 * real.c: Likewise.
8152 * reg-stack.c: Likewise.
8153 * toplev.c: Likewise.
8154 * config/arm/arm.c: Likewise.
8155 * config/arm/arm.md: Likewise.
8156 * config/arm/linux-gas.h: Likewise.
8157 * config/arm/netbsd.h: Likewise.
8158 * config/c4x/c4x.c: Likewise.
8159 * config/c4x/c4x.h: Likewise.
8160 * config/c4x/c4x.md: Likewise.
8161 * config/c4x/libgcc.S: Likewise.
8162 * config/fr30/fr30.md: Likewise.
8163 * config/frv/frv.md: Likewise.
8164 * config/ia64/ia64.md: Likewise.
8165 * config/mips/mips.h: Likewise.
8166 * config/mn10300/mn10300.c: Likewise.
8167 * config/stormy16/stormy16.c: Likewise.
8168 * config/v850/v850.md: Likewise.
8169 * doc/extend.texi: Likewise.
8170 * doc/invoke.texi: Likewise.
8171 * doc/md.texi: Likewise.
8172
b0c2b2f9
JT
81732002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
8174
8175 * config/netbsd.h (LIB_SPEC): Include the appropriate pthread
8176 library if -pthread is specified.
8177
a0494c05
JT
81782002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
8179
8180 * config.gcc (*-*-netbsd*): Set thread_file to 'posix'
8181 for --enable-threads=yes and --enable-threads=posix.
8182
56149abc
KH
81832002-09-15 Kazu Hirata <kazu@cs.umass.edu>
8184
8185 * config/sparc/cypress.md: Replace Sparc with SPARC.
8186 * config/sparc/freebsd.h: Likewise.
8187 * config/sparc/gmon-sol2.c: Likewise.
8188 * config/sparc/hypersparc.md: Likewise.
8189 * config/sparc/lb1spc.asm: Likewise.
8190 * config/sparc/lb1spl.asm: Likewise.
8191 * config/sparc/linux.h: Likewise.
8192 * config/sparc/linux64.h: Likewise.
8193 * config/sparc/lynx.h: Likewise.
8194 * config/sparc/sol2.h: Likewise.
8195 * config/sparc/sparc-modes.def: Likewise.
8196 * config/sparc/sparc.c: Likewise.
8197 * config/sparc/sparc.h: Likewise.
8198 * config/sparc/sparc.md: Likewise.
8199 * config/sparc/sparclet.md: Likewise.
8200 * config/sparc/supersparc.md: Likewise.
8201 * config/sparc/sysv4.h: Likewise.
8202 * config/sparc/vxsim.h: Likewise.
8203 * config/sparc/vxsparc64.h: Likewise.
8204
4977bab6
ZW
82052002-09-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8206
8207 * c-lex.c (cb_ident): Mark variable with ATTRIBUTE_UNUSED.
8208 * collect2.c (ignore_library, aix_std_libs): Move into the context
8209 where it is used.
8210 * m68hc11.c (m68hc11_autoinc_compatible_p): Delete prototype.
8211 (autoinc_mode, m68hc11_make_autoinc_notes): Add prototypes.
8212 * m88k.c (output_call): Wrap variables with macro controlling use.
8213 * rs6000.md: Likewise. Const-ify variable.
8214 * sh.h (ASM_OUTPUT_LABELREF): Likewise.
8215 * final.c (only_leaf_regs_used): Likewise.
8216 * regrename.c (maybe_mode_change): Mark parameter with
8217 ATTRIBUTE_UNUSED.
8218 * reload.c (find_valid_class): Likewise. Likewise for variable.
8219 (find_reloads_address_1): Likewise.
8220 * varasm.c (weak_finish): Wrap variable with macro controlling use.
8221
3eaf7a3c
MM
82222002-09-14 Marek Michalkiewicz <marekm@amelek.gda.pl>
8223
8224 * config/avr/avr.c (output.h): Move after inclusion of tree.h.
8225
4912a07c
KH
82262002-09-14 Kazu Hirata <kazu@cs.umass.edu>
8227
8228 * ChangeLog: Follow spelling conventions.
8229 * ChangeLog.0: Likewise.
8230 * ChangeLog.2: Likewise.
8231 * ChangeLog.3: Likewise.
8232 * ChangeLog.4: Likewise.
8233 * ChangeLog.5: Likewise.
8234 * ChangeLog.6: Likewise.
8235 * cppfiles.c: Likewise.
8236 * cppinit.c: Likewise.
8237 * cpplib.h: Likewise.
8238 * cse.c: Likewise.
8239 * debug.h: Likewise.
8240 * df.c: Likewise.
8241 * dominance.c: Likewise.
8242 * hashtable.c: Likewise.
8243 * hashtable.h: Likewise.
8244 * loop.c: Likewise.
8245 * config/arm/README-interworking: Likewise.
8246 * config/arm/arm.c: Likewise.
8247 * config/arm/arm.h: Likewise.
8248 * config/arm/arm.md: Likewise.
8249 * config/dsp16xx/dsp16xx.h: Likewise.
8250 * config/frv/frv.c: Likewise.
8251 * config/frv/frv.h: Likewise.
8252 * config/ip2k/ip2k.h: Likewise.
8253 * config/rs6000/rs6000.c: Likewise.
8254 * config/stormy16/stormy-abi: Likewise.
8255 * config/stormy16/stormy16.h: Likewise.
8256 * config/v850/v850.c: Likewise.
8257
3dc60fc7
KH
82582002-09-14 Kazu Hirata <kazu@cs.umass.edu>
8259
8260 * loop.c: Fix a comment typo.
8261
a920aefe
KH
82622002-09-14 Kazu Hirata <kazu@cs.umass.edu>
8263
8264 * config/fr30/fr30.h: Fix comment typos.
8265 * config/frv/frv.c: Likewise.
8266 * config/i386/xmmintrin.h: Likewise.
8267 * config/mips/mips.c: Likewise.
8268 * config/sh/sh.c: Likewise.
8269
88cad84b
KH
82702002-09-14 Kazu Hirata <kazu@cs.umass.edu>
8271
8272 * haifa-sched.c: Follow spelling conventions.
8273 * regclass.c: Likewise.
8274 * regrename.c: Likewise.
8275 * config/fp-bit.c: Likewise.
8276 * config/frv/frv.h: Likewise.
8277 * config/m88k/m88k.c: Likewise.
8278 * config/mcore/mcore.c: Likewise.
8279 * config/rs6000/darwin.h: Likewise.
8280 * config/rs6000/gnu.h: Likewise.
8281 * config/rs6000/linux.h: Likewise.
8282 * config/rs6000/linux64.h: Likewise.
8283 * config/rs6000/rs6000.c: Likewise.
8284 * config/rs6000/rs6000.h: Likewise.
8285 * config/sh/sh.c: Likewise.
8286 * config/sparc/sparc.c: Likewise.
8287 * config/sparc/ultra1_2.md: Likewise.
8288
f197f1cf
SC
82892002-09-14 Stephane Carrez <stcarrez@nerim.fr>
8290
8291 * config/m68hc11/m68hc11.md ("movdi_internal"): Allow any offsetable
8292 memory operand when source is 0 (K constraint).
8293 ("movsi_internal"): Likewise.
8294 ("movdf_internal"): Likewise.
8295 ("movsf_internal"): Likewise.
8296
b629ba0c
AM
82972002-09-14 Alan Modra <amodra@bigpond.net.au>
8298
8299 * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Use
8300 targetm.binds_local_p to set SYMBOL_REF_FLAG.
8301 (rs6000_xcoff_encode_section_info): Likewise.
8302 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
8303
2e485129
TR
83042002-09-10 Theodore A. Roth <troth@verinet.com>
8305
8306 * gcc/config/avr/avr.h: Set default options for C++ for avr.
8307
4977bab6
ZW
83082002-09-13 Roger Sayle <roger@eyesopen.com>
8309
8310 * stmt.c (struct nexting): Remove unused alt_end_label field.
8311 (expand_start_loop): Delete initialization of alt_end_label.
8312 (expand_start_null_loop): Likewise.
8313 (expand_exit_loop_if_false): Delete updating of alt_end_label.
8314
907aee69
RH
83152002-09-13 Richard Henderson <rth@redhat.com>
8316
8317 * Makefile.in (toplev.o): Depend on real.h.
8318 (print-rtl.o, varasm.o, ifcvt.o): Likewise.
8319
374b0b7d
AM
83202002-09-14 Alan Modra <amodra@bigpond.net.au>
8321
8322 * doc/tm.texi (DBX_OUTPUT_NFUN): Describe.
8323 * dbxout.c (dbxout_function_end): Use DBX_OUTPUT_NFUN.
8324 * config/rs6000/linux64.h (DBX_OUTPUT_NFUN): Define.
8325
690eed2c
NS
83262002-09-13 Nathan Sidwell <nathan@codesourcery.com>
8327
8328 * ggc-common.c (ggc_mark_roots): Don't iterate NULL hash tables.
8329
32b4f6f4
SE
83302002-09-13 Steve Ellcey <sje@cup.hp.com>
8331
8332 * config.gcc (ia64*-*-aix*, ia64*-*-elf*, ia64*-*-freebsd*,
8333 ia64*-*-linux*): Set extra_parts.
8334 * config/ia64/t-aix (EXTRA_PARTS): Remove.
8335 * config/ia64/t-ia64 (EXTRA_PARTS): Remove.
8336
3db11b5c
KH
83372002-09-13 Kazu Hirata <kazu@cs.umass.edu>
8338
8339 * config/h8300/fixunssfsi.c: Replace H8/S with H8S.
8340 * config/h8300/h8300.c: Likewise.
8341 * config/h8300/h8300.h: Likewise.
8342 * config/h8300/h8300.md: Likewise.
8343 * doc/invoke.texi: Likewise.
8344
b6894857
KH
83452002-09-13 Kazu Hirata <kazu@cs.umass.edu>
8346
8347 * config/h8300/h8300.c (h8300_init_once): Fix formatting.
8348
d5909a79
RH
83492002-09-13 Richard Henderson <rth@redhat.com>
8350
8351 * config/alpha/alpha.md (attr type): Add callpal.
8352 (imb, trap, load_tp, set_tp): Use it.
8353 * config/alpha/ev4.md (ev4_callpal): New.
8354 * config/alpha/ev5.md (ev5_callpal): New.
8355 * config/alpha/ev6.md (ev6_ibr): Handle callpal.
8356 * config/alpha/alpha.c (alphaev4_insn_pipe): Handle TYPE_CALLPAL.
8357 (alphaev5_insn_pipe): Likewise.
8358
e0073fa8
AJ
83592002-09-13 Andreas Jaeger <aj@suse.de>
8360
8361 * Makefile.in (print-rtl.o): Depend on CONFIG_H.
8362
1f298625
SE
83632002-09-13 Steve Ellcey <sje@cup.hp.com>
8364
8365 * config/ia64/t-hpux (LIBGCC1_TEST, STMP_FIXPROTO,
8366 LIB2ADDEH): New, set to NULL.
8367 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP): New.
8368
1a7e1470
SE
83692002-09-13 Steve Ellcey <sje@cup.hp.com>
8370
8371 * config/ia64/quadlib.c (_U_Qfcmp): Make extern.
8372 (_U_Qfcnvfxt_quad_to_sgl): Remove declaration.
8373 (_U_Qfeq, _U_Qfne, _U_Qfgt, _U_Qfge, U_Qflt, U_Qfle, _U_Qfcomp):
8374 Add declarations.
8375 (_U_Qfneg): Remove.
8376
d56c04ce
DD
83772002-09-13 Dhananjay Deshpande <dhananjayd@kpit.com>
8378
8379 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Add support
8d9afc4e
KH
8380 for H8/300, H8S aa:8 mode.
8381 (TINY_CONSTANT_ADDRESS_P): Add support for H8S aa:16 mode.
d56c04ce
DD
8382 * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust length
8383 for H8/300 aa:8 mode.
8384
4456530d
HP
83852002-09-13 Hartmut Penner <hpenner@de.ibm.com>
8386
8387 * config/s390/s390.md ("trap", "conditional_trap", "*trap"): New
8388 insns.
8389
4d2d910c
RH
83902002-09-12 Richard Henderson <rth@redhat.com>
8391
8392 * Makefile.in (HOST_PRINT): Use print-rtl1.o
8393 (print-rtl.o): Don't define GENERATOR_FILE.
8394 (print-rtl1.o): Rename from $(BUILD_PREFIX_1)print-rtl.o.
8395 * print-rtl.c (print_rtx): Include CONST_DOUBLE fp decimal output
8396 unless GENERATOR_FILE.
8397
7606e68f
SS
83982002-09-12 Stan Shebs <shebs@apple.com>
8399
6ab9a3f4
SS
8400 * config/darwin.h (USER_LABEL_PREFIX): Define here...
8401 * config/i386/darwin.h: ... instead of here.
8402
7606e68f
SS
8403 * target.h (struct gcc_target): New field
8404 terminate_dw2_eh_frame_info.
8405 * target-def.h (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
8406 (TARGET_INITIALIZER): Add it.
8407 * dwarf2out.c (output_call_frame_info): Use target hook.
8408 * dwarf2asm.c (dw2_asm_output_delta): Use macro
8409 ASM_OUTPUT_DWARF_DELTA if defined.
8410 * doc/tm.texi (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Document.
8411 (ASM_OUTPUT_DWARF_DELTA): Ditto.
8412 (ASM_OUTPUT_DWARF_OFFSET): Ditto.
8413 (ASM_OUTPUT_DWARF_PCREL): Ditto.
8414 * config.gcc (i[34567]86-*-darwin*): Define extra_parts.
8415 (powerpc-*-darwin*): Ditto.
8416 * crtstuff.c [OBJECT_FORMAT_MACHO]: Update the Mach-O bits
8417 to work correctly for Darwin.
8418 * config/darwin.h (OBJECT_FORMAT_MACHO): Define.
8419 (STARTFILE_SPEC): Add crtbegin.o.
8420 (ENDFILE_SPEC): Define.
8421 (EXTRA_SECTION_FUNCTIONS): Put gcc_except_tab in data segment.
8422 (ASM_PREFERRED_EH_DATA_FORMAT): Handle more cases.
8423 (ASM_OUTPUT_DWARF_DELTA): Define.
8424 (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
8425 * config/darwin.c (darwin_asm_output_dwarf_delta): New function.
8426
20b71b17
AM
84272002-09-13 Alan Modra <amodra@bigpond.net.au>
8428
8429 * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Remove "if"
8430 nesting. Correct test for non-PowerPC64 ELF ABI_AIX.
8431 * config/rs6000/rs6000.md (load_toc_v4_PIC*): Disable when ABI_AIX.
8432
d48fd218
ZW
84332002-09-12 Zack Weinberg <zack@codesourcery.com>
8434
8435 * toplev.c: Move default definition of USER_LABEL_PREFIX...
8436 * defaults.h: ... here.
8437
92bc3c1a
RH
84382002-09-12 Richard Henderson <rth@redhat.com>
8439
8440 * vax.c: Include tree.h earlier.
8441
3f64e543
SS
84422002-09-12 Stan Shebs <shebs@apple.com>
8443
8444 * config/darwin.c (machopic_finish): Remove #if 0 chunks.
8445 (machopic_operand_p): Ditto.
8446
52bd31bb
KH
84472002-09-12 Kazu Hirata <kazu@cs.umass.edu>
8448
8449 * config/arm/arm.c (arm_compute_initial_elimination_offset):
8450 Fix a comment typo.
8451
387c9294
KH
84522002-09-12 Kazu Hirata <kazu@cs.umass.edu>
8453
8454 * toplev.c (do_abort): Fix a comment typo.
8455
e34bb004
KH
84562002-09-12 Kazu Hirata <kazu@cs.umass.edu>
8457
8458 * cselib.c: Fix comment formatting.
8459 * gengtype.c: Likewise.
8460
d0029ebd
KH
84612002-09-12 Kazu Hirata <kazu@cs.umass.edu>
8462
8463 * config/h8300/h8300.md (udivmodqi4): Do not use an expander.
8464 (udivmodhi4): Likewise.
8465
c3c637e3 84662002-09-12 Graham Stott <graham.stott@btinternet.com>
d48fd218 8467 Roger Sayle <roger@eyesopen.com>
c3c637e3
GS
8468
8469 * i386.c (any_fp_register_operand, fp_register_operand,
8470 register_and_not_any_fp_reg_operand, register_and_not_fp_reg_operand):
8471 New predicate functions.
8472 * i386-protos.h: Add their prototypes.
8473 * i386.h: Add them to PREDICATE_CODES.
8474 * i386.md ("*pushsf_rex64"+2, "*pushsf_rex64"+3, "*pushdf_integer"+1,
8475 "*pushdf_integer"+2, "*pushtf_integer"+1, "*pushtf_integer"+2,
8476 "*pushtf_integer"+3, "*pushtf_integer"+4, "*dummy_extendsfdf2"+1,
8477 "*dummy_extendsfdf2"+2, "*dummy_extendsfxf2"+1,
8478 "*dummy_extendsftf2"+1, "*dummy_extendsftf2"+2,
8479 "*dummy_extenddfxf2"+1, "*dummy_extenddftf2"+1,
8480 "*dummy_extenddftf2"+2, "*negsf2_if"+1, "*negsf2_if"+2,
8481 "*negdf2_if_rex64"+1, "*negdf2_if_rex64"+2, "*negxf2_if"+1,
8482 "*negxf2_if"+2, "*negtf2_if"+1, "*negtf2_if"+2, "*abssf2_if"+1,
8483 "*abssf2_if"+2, "*absdf2_if_rex64"+1, "*absdf2_if_rex64"+2,
8484 "*absxf2_if"+1, "*absxf2_if"+2, "*abstf2_if"+1, "*abstf2_if"+2):
8485 Use these new predicates to simplify and correct the use of
8486 FP_REG_P, ANY_FP_REG_P, FP_REGNO_P and any ANY_FP_REGNO_P.
8487
db4c55f6
JM
84882002-09-12 Jason Merrill <jason@redhat.com>
8489
236a2ac8
JM
8490 * diagnostic.c (output_add_identifier): New fn.
8491 * diagnostic.h: Declare it.
8492
db4c55f6
JM
8493 * calls.c (store_one_arg): Use size_in_bytes to determine the
8494 amount of space to push.
8495
13c0bc20
JJ
84962002-09-12 Jakub Jelinek <jakub@redhat.com>
8497
8498 * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo.
8499
0a3bdf9d
UW
85002002-09-12 Ulrich Weigand <uweigand@de.ibm.com>
8501
8502 * config/s390/s390-modes.def (CCAPmode, CCANmode): New CC modes.
8503 * config/s390/s390.c (s390_match_ccmode_set): Support new CC modes.
8504 (s390_select_ccmode): Likewise.
8505 (s390_branch_condition_mask): Likewise.
8506 (optimization_options): Do not set flag_branch_on_count.
8507 (s390_split_branches): Handle doloop branches.
8508 (s390_chunkify_pool): Likewise.
8509 * config/s390/s390.md ("*adddi3_imm_cc", "*addsi3_imm_cc"): New insns.
8510 ("doloop_end"): New expander.
8511 ("doolop_si", "*doloop_si_long", "doloop_di", "*doloop_di_long",
8512 associated splitters): New.
8513
4977bab6
ZW
85142002-09-11 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
8515
8516 * genattrtab.c (simplify_cond): Remove unused variable(s).
8517 * global.c (record_conflicts): Likewise.
8518 * jump.c (rebuild_jump_labels): Likewise.
8519 * loop.c (scan_loop, check_final_value): Likewise.
8520 * ra-colorize.c (colorize_one_web, assign_colors): Likewise.
8521 * reload1.c (eliminate_regs_in_insn, do_input_reload): Likewise.
8522 * rtlanal.c (reg_set_p): Likewise.
8523 * stmt.c (expand_asm_operands, expand_decl): Likewise.
8524 * genautomata.c (empty_reserv): Remove.
8525 * loop.c (max_luid): Likewise.
8526 * sched-rgn.c (bitlst_table_size): Likewise.
8527
85282002-09-11 Nathan Sidwell <nathan@codesourcery.com>
8529
8530 Reimplement gcov format.
8531 * gcov-io.h: Replace.
8532 * gcov.c: Reimplement.
8533 * gcov-iov.c: New file.
8534 * gcov-dump.c: New file.
8535 * libgcc2.c (L_bb): Replace with ...
8536 (L_gcov): ... this.
8537 (struct bb_function_info, struct bb): Remove.
8538 (inhibit_libc): Never inhibit.
8539 (gcov_list, gcov_crc): New static variables.
8540 (gcov_version_mismatch): New static function.
8541 (__bb_exit_func): Renamed to ...
8542 (__gcov_exit): ... here. Made static. Reimplement.
8543 (__gcov_init_func): Rename to ...
8544 (__gcov_init): ... here. Check version, update crc.
8545 (__bb_fork_func): Rename to ...
8546 (__gcov_flush): ... here.
8547 * libgcc2.h (struct bb, __bb_exit_func, __bb_init_func,
8548 __bb_fork_func, gcov_type, __bb_find_arc_counters): Remove.
8549 * calls.c (expand_call): Call __gcov_flush.
8550 * profile.c (bb_file, last_bb_file_name): Remove.
8551 (bbg_file_name): New global variable.
8552 (output_gcov_string): Remove.
8553 (get_exec_counts): Reimplement.
8554 (branch_prob): Reimplement gcov file writing.
8555 (init_branch_prob): Create bbg_file_name, don't create
8556 bb_file_name.
8557 (end_branch_prob): Adjust. Don't remove counter file when
8558 instrumenting ourselves.
8559 (create_profiler): Adjust.
8560 * doc/gcov.texi (Gcov Data Files): Remove detailed specification,
8561 point to gcov-io.h.
8562 * Makefile.in (LANGUAGES): Add gcov-dump.
8563 (coverageexts): Remove .bb.
8564 (STAGESTUFF): Add gcov-dump.
8565 (LIB2FUNCS_ST): Replace _bb with _gcov.
8566 (profile.o): Depend on gcov-iov.h.
8567 (final.o): Don't depend on profile.h, gcov.h.
8568 (gcov.o): Depend on gcov-iov.h.
8569 (gcov-iov.o): New target.
8570 (gcov-iov): New target.
8571 (gcov-iov.h): New target.
8572 (gcov-dump.o): New target.
8573 (GCOV_DUMP_OBJS): New variable.
8574 (gcov-dump): New target.
8575 (distclean): Remove coverageexts.
8576 (stage1): Remove coverageexts.
8577
4f968d93
HP
85782002-09-11 Hartmut Penner <hpenner@de.ibm.com>
8579
8580 * fold-const.c (make_range): Only narrow to signed range if
8581 the signed range is smaller than the unsigned range.
8582
35aff10b
AM
85832002-09-12 Alan Modra <amodra@bigpond.net.au>
8584
8585 * emit-rtl.c (set_mem_size): New function.
8586 * expr.h (set_mem_size): Declare.
8587 * config/rs6000/rs6000.c (expand_block_move_mem): Exterminate.
8588 (expand_block_move): Instead, use adjust_address and
8589 replace_equiv_address to generate proper aliasing info.
8590 Move common code out of conditionals. Localize vars.
8591
a9b6f1e7 85922002-09-11 Eric Botcazou <ebotcazou@libertysurf.fr>
d48fd218 8593
874f6a6d
EB
8594 * optabs.c (expand_binop): Minor cleanup.
8595 (expand_twoval_binop): Convert CONST_INTs like in expand_binop.
8596
d1df930b
DN
85972002-09-11 Dan Nicolaescu <dann@ics.uci.edu>
8598
8599 * print-tree.c (print_node): Print the restrict qualifier.
8600
9026a957
JJ
86012002-09-11 Janis Johnson <janis187@us.ibm.com>
8602
8603 * doc/install.texi: Fix typos.
8604
3fd9d606
ZW
86052002-09-11 Zack Weinberg <zack@codesourcery.com>
8606
8607 * Makefile.in: Remove all references to s-under and underscore.c.
8608 * collect2.c, tlink.c: Change all uses of prepends_underscore
8609 to look directly at USER_LABEL_PREFIX.
8610
5b5198f7
DE
86112002-09-11 David Edelsohn <edelsohn@gnu.org>
8612
8613 * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Append
8614 alignment to csect.
8615 (rs6000_xcoff_unique_section): Only set section name for public
8616 data.
8617 (rs6000_xcoff_section_type_flags): Store log2 alignment in flags.
8618 * config/rs6000/xcoff.h (TARGET_ASM_SELECT_SECTION): Remove
8619 duplicate definition.
8620
77de9af2
JDA
86212002-09-10 John David Anglin <dave@hiauly1.hia.nrc.ca>
8622
8623 * pa.md (extzv): Check predicates before emitting extzv_32.
8624 (insv): Likewise.
8625
33b679d1
UW
86262002-09-10 Ulrich Weigand <uweigand@de.ibm.com>
8627
8628 * config/s390/s390.h (MOVE_MAX): Define to correct value.
8629 (MAX_MOVE_MAX): Define.
8630 (MOVE_BY_PIECES_P): Define.
8631 (CLEAR_BY_PIECES_P): Define.
8632
bfae8040
DC
86332002-09-10 Denis Chertykov <denisc@overta.ru>
8634
8635 * config/avr/avr.md (movstrhi): Use right operands for conversion.
8636
7730c3ff
RE
86372002-09-10 Richard Earnshaw <rearnsha@arm.com>
8638
8639 PR c/7873
8640 * arm.md (insv): Use reg_or_int_operand for operand[3].
8641
5add3202
DE
86422002-09-10 David Edelsohn <edelsohn@gnu.org>
8643
8644 * rs6000.c (rs6000_assemble_visibility): Protect declaration
8645 inside macro. Correct function definition typo.
8646 (rs6000_xcoff_section_type_flags): New function.
8647 (TARGET_SECTION_TYPE_FLAGS): Remove definition.
8648 (rs6000_elf_section_type_flags): Call default_section_type_flags_1
8649 with appropriate PIC test.
8650 (rs6000_xcoff_select_section): Use decl_readonly_section_1 to
8651 determine readonly.
8652 (rs6000_binds_local_p): Combine PIC flags.
8653 * sysv4.h (TARGET_SECTION_TYPE_FLAGS): Define.
8654 * xcoff.h (TARGET_SECTION_TYPE_FLAGS): Define.
8655
4977bab6
ZW
86562002-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8657
8658 * h8300.md: Fix signed/unsigned warnings.
8659 * mcore.md: Likewise.
8660 * mn10300.c (mask_ok_for_mem_btst): Likewise.
8661
90389422
PB
86622002-09-09 Per Bothner <per@bothner.com>
8663
8664 * print-tree.c (print_node): In a STRING_CST, escape non-ascii
8665 characters, and only print TREE_STRING_LENGTH chars.
8666
686f3bf0
SE
86672002-09-09 Steve Ellcey <sje@cup.hp.com>
8668
8669 * config/ia64/hpux.h (TARGET_HPUX_LD): New, define true.
8670 (ASM_FILE_END) New.
8671 * config/ia64/ia64.h (TARGET_HPUX_LD): New, define false.
8672 * config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New.
8673 * config/ia64/ia64.c (ia64_asm_output_external): Create list
8674 of external functions if TARGET_HPUX_LD is true.
8675 (ia64_hpux_add_extern_decl): New, routine to put names on
8676 list of external functions.
8677 (ia64_hpux_asm_file_end): Put out declarations for external
8678 functions if and only if they are used.
8679
0c263f4e
JDA
86802002-09-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
8681
8682 * pa.md (exception_receiver, builtin_setjmp_receiver): Add blockage
8683 on TARGET_64BIT before pic register restore.
8684
e2a6476e
DE
86852002-09-09 David Edelsohn <edelsohn@gnu.org>
8686
8687 * doc/tm.texi (TARGET_HAVE_SRODATA_SECTION): New description.
8688 (TARGET_HAVE_TLS): New description.
8689
b73b1546
JJ
86902002-09-09 Janis Johnson <janis187@us.ibm.com>
8691
8692 * doc/extend.texi (Statement Exprs): Fix broken link.
8693
a9738643
DC
86942002-09-09 Denis Chertykov <denisc@overta.ru>
8695
8696 * config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
8697 right conversion of operands[1].
8698
05b9aaaa
UW
86992002-09-09 Ulrich Weigand <uweigand@de.ibm.com>
8700
8701 * config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as
8702 commutative. Use "nonimmediate_operand" instead of "register_operand"
8703 as predicate for operand 0. Move to after the "*tmXX_mem" insns.
8704
8705 ("*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem"): Do not mark
8706 as commutative.
8707
8708 ("*anddi3_ni", "*andsi3_ni", "*iordi3_ni", "*iorsi3_ni"): Do not
8709 mark as commutative. Use "nonimmediate_operand" instead of
8710 "register_operand" as predicate for operand 1.
8711
8712 ("movstrictsi"): Fix typo in insn name.
8713
7ec70495
JH
87142002-09-09 Jan Hubicka <jh@suse.cz>
8715
8716 * i386.c (index_register_operand): New.
8717 * i386.h (predicate_codes): Add new predicate.
8e746279 8718 * i386.md (lea_general_*): Use index_register_operand
7ec70495
JH
8719 (ashift to lea splitter): Do not produce invalid leas
8720 (ashift to mov+ashift split): New.
8721
b2fc915b
NC
87222002-09-09 Nick Clifton <nickc@redhat.com>
8723
8724 * config/fr30/fr30.c (output.h): Move after inclusion of tree.h.
8725 Fix folding marks.
8726
0b0ad147 87272002-09-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
d48fd218 8728 J"orn Rennecke <joern.rennecke@superh.com>
0b0ad147
TM
8729
8730 * sh/sh.h (OVERRIDE_OPTIONS): align_functions is in bytes, not bits.
8731
2bcc50d0
AM
87322002-09-09 Alan Modra <amodra@bigpond.net.au>
8733
8734 * config/rs6000/rs6000.c (rs6000_binds_local_p): Return bool.
8735 (function_ok_for_sibcall): Use binds_local_p. Respect longcall
8736 attributes.
8737
4977bab6
ZW
87382002-09-08 Nathan Sidwell <nathan@codesourcery.com>
8739
8740 * basic_block.h (gcov_type): Explain why it is signed.
8741 * final.c: Don't include profile.h.
8742 (struct function_list, functions_head, functions_tail,
8743 end_final): Moved to profile.c
8744 (final): Move arc chaining code to profile.c.
8745 * function.c (prepare_function_start): Remove duplicate line.
8746 * output.h (end_final): Remove prototype.
8747 * predict.c (estimate_loops_at_level): Use gcov_type.
8748 * profile.c (struct function_list, functions_head,
8749 functions_tail): Moved from final.c
8750 (need_func_profiler): Remove.
8751 (instrument_edges): Don't set need_func_profiler.
8752 (get_exec_counts): Avoid signed/unsigned warning.
8753 (compute_checksum): Use crc32.
8754 (branch_prob): Adjust. Chain onto functions_head.
8755 (init_branch_prob): Absorb init_edge_profiler.
8756 (init_edge_profiler): Remove.
8757 (create_profiler): Moved and renamed from final.c:end_final.
8758 Emit data and constructor.
8759 (output_func_start_profiler): Remove.
8760 * profile.h (struct profile_info): checksum is unsigned.
8761 * rtl.h (output_func_start_profiler): Remove prototype.
8762 (create_profiler): Declare.
8763 * toplev.c (compile_file): Call create_profiler, if instrumenting
8764 arcs. Don't call end_final.
8765
c1b4f089
KG
87662002-09-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8767
8768 * fr30.c (fr30_print_operand): Fix bug in output of CONST_DOUBLE.
8769
b9203463
RH
87702002-09-08 Richard Henderson <rth@redhat.com>
8771
8772 * dwarf2.h (DW_OP_call_ref): Rename from DW_OP_calli.
8773 (DW_OP_GNU_push_tls_address): New.
8774 (DW_OP_lo_user): Fix.
8775 * dwarf2out.c (INTERNAL_DW_OP_tls_addr): New.
8776 (dwarf_stack_op_name): Handle it, plus other dwarf3 opcodes.
8777 (size_of_loc_descr): Likewise.
8778 (output_loc_operands): Handle INTERNAL_DW_OP_tls_addr.
8779 (add_AT_location_description): Take a dw_loc_descr_ref not an rtx.
8780 (loc_descriptor_from_tree): Handle TLS variables.
8781 (rtl_for_decl_location): Do avoid_constant_pool_reference here ...
8782 (add_location_or_const_value_attribute): ... not here. Defer
8783 to loc_descriptor_from_tree for TLS variables.
8784
8785 * config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): New.
8786 * config/i386/i386.c (i386_output_dwarf_dtprel): New.
8787 * config/i386/i386-protos.h: Update.
8788
7df98878
RS
87892002-09-08 Roger Sayle <roger@eyesopen.com>
8790
8791 PR optimization/6405
8792 * unroll.c (loop_iterations): last_loop_insn should be the previous
8793 non-note instruction before loop->end.
8794 * loop.c (strength_reduce): The conditional jump is the last
8795 non-note instruction before loop->end (as above).
8796
f40f4c8e
RS
87972002-09-08 Roger Sayle <roger@eyesopen.com>
8798
8799 * combine.c (try_combine): Handle the case that undobuf.other_insn
8800 has been turned into a return or unconditional jump, by inserting
8801 a BARRIER if necessary.
8802 (simplify_set): Test if a condition code setter has a constant
8803 comparison at compile time, if so convert this insn to a no-op move
8804 and update/simplify the condition code user (undobuf.other_insn).
8805
e2f97e26
KW
88062002-09-08 Krister Walfridsson <cato@df.lth.se>
8807
8808 * config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Redefine.
8809 (CLEAR_INSN_CACHE): Define.
8810
4b7e68e7
KH
88112002-09-08 Kazu Hirata <kazu@cs.umass.edu>
8812
8813 * basic-block.h: Fix comment formatting.
8814 * c-common.c: Likewise.
8815 * c-common.h: Likewise.
8816 * c-lex.c: Likewise.
8817 * c-pretty-print.c: Likewise.
8818 * cfglayout.c: Likewise.
8819 * cfgloop.c: Likewise.
8820 * defaults.h: Likewise.
8821 * et-forest.c: Likewise.
8822 * explow.c: Likewise.
8823 * function.h: Likewise.
8824 * gcov.c: Likewise.
8825 * genattrtab.c: Likewise.
8826 * gengtype.c: Likewise.
8827 * ifcvt.c: Likewise.
8828 * libgcc2.c: Likewise.
8829 * loop.c: Likewise.
8830 * profile.c: Likewise.
8831 * ra-build.c: Likewise.
8832 * real.c: Likewise.
8833 * rtl.h: Likewise.
8834 * tracer.c: Likewise.
8835 * tree-inline.c: Likewise.
8836 * varasm.c: Likewise.
8837
2567406a
JH
88382002-09-08 Jan Hubicka <jh@suse.cz>
8839
8840 * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix array_ref
8841 handling.
8842
a36fc5f8 8843 * loop.c (loop_givs_reduce): Emit addition after.
2567406a 8844
bd79540a
AM
88452002-09-08 Alan Modra <amodra@bigpond.net.au>
8846
8847 * varasm.c (default_assemble_visibility): Rename from
8848 assemble_visibility.
8849 * output.h: Here too.
8850 * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): And here.
8851 * config/rs6000/rs6000.c (rs6000_assemble_visibility): And here.
8852
32ff9c74
AM
88532002-09-08 Alan Modra <amodra@bigpond.net.au>
8854
8855 * reload.c (find_reloads <p constraint>): Pass operand_mode to
8856 find_reloads_address.
8857
6588987e
KH
88582002-09-08 Kazu Hirata <kazu@cs.umass.edu>
8859
8860 * config/h8300/h8300.md (udivmodqi4): Enable on H8/300.
8861 (anonymous pattern): Likewise.
8862
4977bab6
ZW
88632002-09-07 Igor Shevlyakov <igor@microunity.com>
8864
8865 * machmode.def: Add modes for half-float vectors.
8866
0100732e
SS
88672002-09-07 Scott Snyder <snyder@fnal.gov>
8868
8869 PR target/7374
8870 * config/alpha/alpha.md (abstf2): Fix typo: 'neg' for 'abs'.
8871
77043c7c
RS
88722002-09-07 Roger Sayle <roger@eyesopen.com>
8873
8874 * basic-block.h (struct loop): Remove unused cont_dominator field.
8875
5dd78220
IS
88762002-09-07 Igor Shevlyakov <igor@microunity.com>
8877
d48fd218 8878 * varasm.c (decode_rtx_const): Don't check undefined field for
5dd78220
IS
8879 CONST_VECTOR.
8880
b96a3fa3
GN
88812002-09-07 Glen Nakamura <glen@imodulo.com>
8882
7fa86a10 8883 PR opt/7814
b96a3fa3
GN
8884 * sched-deps.c (sched_analyze_insn): Make sure to add insn
8885 to reg_last->sets after flushing the dependency lists to guarantee
8886 that subsequent clobbers will be dependent on it.
8887
ad9df12f 88882002-09-07 Igor Shevlyakov <igor@microunity.com>
2567406a 8889
ad9df12f
IS
8890 * combine.c (simplify_shift_const): Calculate rotate count
8891 correctly for vector operands.
8892
54c93c30
AE
88932002-09-07 Ansgar Esztermann <ansgar@thphy.uni-duesseldorf.de>
8894
8895 * c-typeck.c (c_tree_expr_nonnegative_p): New function.
8896 (build_binary_op): Call c_tree_expr_nonnegative_p rather than
2567406a 8897 tree_expr_nonnegative_p.
54c93c30
AE
8898 (build_conditional_expr): Likewise.
8899 * c-tree.h (c_tree_expr_nonnegative_p): Declare.
8900
36eea25f
RH
89012002-09-07 Richard Henderson <rth@redhat.com>
8902
3aa4cad7
RH
8903 * builtins.def (inf, inff, infl): Mark const.
8904 (huge_val, huge_valf, huge_vall): Likewise.
8905 (BUILT_IN_GETEXP, BUILT_IN_GETMAN): Remove.
8906
36eea25f
RH
8907 * real.c (ereal_inf): Clear E before use.
8908
5c102b48
KH
89092002-09-07 Kazu Hirata <kazu@cs.umass.edu>
8910
8911 * config/h8300/h8300.md (udivmodqi4): Split the pattern into
8912 an expander and an anonymous pattern. Zero out the upper half
8913 of the dividend in the expander.
8914 (udivmodqi4): Likewise.
8915
8bd06267
KH
89162002-09-07 Kazu Hirata <kazu@cs.umass.edu>
8917
8918 * config/h8300/h8300.c: Fix formatting.
8919 * config/h8300/h8300.h: Likewise.
8920 * config/h8300/h8300.md: Likewise.
8921
39587bb9
ZD
89222002-09-07 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
8923
8924 * cfgcleanup.c (try_crossjump_to_edge): Fix updating of liveness
8925 information.
8926
34146b94 89272002-09-07 Graham Stott <graham.stott@btinternet.com>
92d9256d
GS
8928
8929 * rtlanal.c (dead_or_set_regno_p): Fix typo.
8930
93638d7a
AM
89312002-09-07 Alan Modra <amodra@bigpond.net.au>
8932
fea76d82
AM
8933 * config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
8934
93638d7a
AM
8935 * doc/tm.texi (TARGET_ASM_ASSEMBLE_VISIBILITY): Describe.
8936 * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
8937 (TARGET_ASM_OUT): Add the above here.
8938 * target.h (struct gcc_target): Add "visibility" field.
8939 * varasm.c (maybe_assemble_visibility): Call targetm visibility func.
8940 * config/rs6000/rs6000.c (rs6000_assemble_visibility): New function.
8941 (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
8942 (rs6000_legitimize_reload_address, first_reg_to_save): Formatting.
8943
370ce32a
ZL
89442002-09-06 Ziemowit Laski <zlaski@apple.com>
8945
8946 * c-lang.c (objc_is_id): New stub.
8947 * c-tree.h (objc_is_id): New forward declaration.
8948 * c-typeck.c (build_c_cast): Do not strip protocol
8949 qualifiers from 'id' type.
8950 * objc/objc-act.c (objc_comptypes): Correct handling
8951 of protocol qualifiers.
8952 (objc_is_id): New.
8953
942579db
JL
8954Fri Sep 6 13:10:08 2002 Jeffrey A Law (law@redhat.com)
8955
54c93c30 8956 * pentium.md (pentium-firstvboth): Fix typo.
942579db 8957
c4dfc70c
DD
89582002-09-06 Dhananjay Deshpande <dhananjayd@kpit.com>
8959
8960 * h8300.c (enum shift_alg): Move to earlier in h8300.c.
8961 (enum shift_type, enum h8_cpu): Likewise.
8962 (INL, ROT, LOP, SPC macros): Likewise.
8963 (shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise. Lose
8964 const designator.
8965 (h8300_init_once): Update shift_alg_{qi,hi,si} to use more
8966 space efficient algorithms when optimize for codesize.
8967
5873a4c1
NP
8968Fri Sep 6 16:35:32 2002 Nicola Pero <n.pero@mi.flashnet.it>
8969
8970 Fix PR/1727 and long-standing failing testcase
8971 objc/formal-protocol-6.m.
8972 * objc-act.c (build_protocol_expr): If compiling for the GNU
8973 runtime, create a list of Protocol statically allocated instances
8974 if it doesn't exist, then add the Protocol object to this same
8975 list.
8976 (get_objc_string_decl): Fixed typo/bug - TREE_VALUE had been used
8977 instead of TREE_CHAIN.
8978
e30d4c82
NP
8979Fri Sep 6 16:17:33 2002 Nicola Pero <n.pero@mi.flashnet.it>
8980
8981 * objc/objc-act.c (dump_interface): Enlarged the char * buffer to
8982 10k. Fixed category dumping - print out category names with the
8983 proper syntax. Print '@end\n' and not '\n@end' at the end of the
8984 interface.
22d4398d 8985 (finish_objc): Fixed the -gen-decls option. It was printing out
e30d4c82
NP
8986 only the last class. Dump an interface declaration of all classes
8987 being compiled instead.
8988
fcd53748
JT
89892002-09-06 Jason Thorpe <thorpej@wasabisystems.com>
8990
2567406a
JH
8991 * config/arm/arm-protos.h (arm_gen_return_addr_mask): New
8992 prototype.
fcd53748
JT
8993 * config/arm/arm.c (arm_gen_return_addr_mask): New function.
8994 * config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
8995 if not APCS26 and not Thumb or ARMv4-or-higher. Use gen_int_mode
8996 rather than GEN_INT.
8997 * config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
8998 (return_addr_mask, *check_arch2): New.
8999
96fd3851
UW
90002002-09-06 Ulrich Weigand <uweigand@de.ibm.com>
9001
2567406a 9002 * config/s390/s390.md ("*adddi3_cc", "*adddi3_cconly",
96fd3851 9003 "*adddi3_cconly2", "*adddi3_64", "*adddi3_31", "adddi3",
2567406a 9004 "*addsi3_carry1_cc", "*addsi3_carry1_cconly",
96fd3851
UW
9005 "*addsi3_carry2_cc", "*addsi3_carry2_cconly",
9006 "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2", "addsi3",
2567406a 9007 "adddf3", "*adddf3", "*adddf3_ibm",
96fd3851
UW
9008 "addsf3", "*addsf3", "*addsf3_ibm",
9009 "muldi3", "mulsi3", "mulsidi3",
9010 "muldf3", "*muldf3", "*muldf3_ibm",
9011 "mulsf3", "*mulsf3", "*mulsf3_ibm",
9012 "*anddi3_cc", "*anddi3_cconly", "anddi3",
9013 "*andsi3_cc", "*andsi3_cconly", "andsi3",
9014 "*iordi3_cc", "*iordi3_cconly", "iordi3",
9015 "*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
9016 "*xordi3_cc", "*xordi3_cconly", "xordi3",
9017 "*xorsi3_cc", "*xorsi3_cconly", "xorsi3"): Use "nonimmediate_operand"
9018 instead of "register_operand" as predicate for "%0" operand.
9019
22252625
JJ
90202002-09-06 Jakub Jelinek <jakub@redhat.com>
9021
9022 * configure.in (HAVE_AS_OFFSETABLE_LO10): Use -xarch=v9
9023 unconditionally when gcc_cv_as_flags64 checks are gone.
9024 * configure: Rebuilt.
9025
bc401279
AM
90262002-09-06 Alan Modra <amodra@bigpond.net.au>
9027
9028 * config/rs6000/rs6000.md (extzvsi_internal2): Revert most of
9029 2002-07-26 change. Comment.
9030
b3fbfc07
KG
90312002-09-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9032
9033 * frv.c (frv_unique_section, frv_select_section,
9034 frv_select_rtx_section): Delete.
9035 (frv_in_small_data_p): New.
9036 (TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_SECTION,
9037 TARGET_ASM_SELECT_RTX_SECTION): Delete.
9038 (TARGET_IN_SMALL_DATA_P): Define.
9039
41e34bab
DJ
90402002-09-05 Dale Johannesen <dalej@apple.com>
9041
9042 * reload1.c (reload): Retain only those memory clobbers
9043 added for variable-array handling.
9044
dc0ba55a
JT
90452002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
9046
9047 * config/arm/arm.c (arm_return_in_memory): Implement ATPCS
2567406a 9048 return-in-memory rules.
dc0ba55a
JT
9049 * config/arm/arm.h (ARM_FLAG_ATPCS, TARGET_ATPCS): Define.
9050
dd19d142
DE
90512002-09-05 David Edelsohn <edelsohn@gnu.org>
9052
9053 * config/rs6000/xcoff.h (HOT_TEXT_SECTION_NAME): Delete.
9054 (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Delete.
9055
3717da94
JT
90562002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
9057
9058 * real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
9059 not a compile-time constant for the non-IBM case.
9060 * config/arm/arm-protos.h (arm_float_words_big_endian): New
2567406a 9061 prototype.
3717da94 9062 * config/arm/arm.c (arm_float_words_big_endian): New function.
b5b620a4 9063 * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__
2567406a
JH
9064 if TARGET_VFP and not TARGET_HARD_FLOAT.
9065 (ARM_FLAG_VFP, TARGET_VFP): Define.
3717da94
JT
9066 (FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
9067
225cee28
DE
90682002-09-05 David Edelsohn <edelsohn@gnu.org>
9069
9070 * doc/install.texi: Correct text of s390-*-linux* and s390x-*-linux*
9071 URLs. Fix AIX wording.
9072
c72bfda7
SS
90732002-09-05 Stan Shebs <shebs@apple.com>
9074
9075 * config/rs6000/rs6000.c (rs6000_override_options): Make -fpic and
9076 -fPIC equivalent on Darwin.
9077
3578cf63
R
9078Thu Sep 5 16:27:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
9079
9080 * sh.c (sh_expand_builtin): Return early if encountering an
9081 error_mark for a type.
9082
7974fe63
UW
90832002-09-05 Ulrich Weigand <uweigand@de.ibm.com>
9084
9085 * config/s390/s390.c (s390_expand_plus_operand): Do not require
9086 double-word scratch register.
9087 config/s390/s390.md ("reload_indi", "reload_insi"): Adapt.
9088
2567406a 9089 ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem",
7974fe63
UW
9090 "*cli"): Replace s_operand by memory_operand.
9091 ("cmpstrdi", "cmpstrsi"): Replace s_operand by general_operand.
9092
f8cb5851
KH
90932002-09-05 Kazu Hirata <kazu@cs.umass.edu>
9094
9095 * config/h8300/h8300.c (asm_file_start): Add a missing
9096 semicolon.
9097
4977bab6
ZW
90982002-09-04 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
9099
9100 * c-typeck.c (build_function_call): Remove unused variable(s).
9101 (build_c_cast): Likewise.
9102 * calls.c (rtx_for_function_call): Likewise.
9103 * cfglayout.c (duplicate_insn_chain): Likewise.
9104 * cfgloop.c (flow_loop_nodes_find): Likewise.
9105 * cfgrtl.c (split_edge): Likewise.
9106 * df.c (df_ref_create): Likewise.
9107 * except.c (expand_end_catch): Likewise.
9108 * expr.c (emit_push_insn, store_constructor, expand_expr): Likewise.
9109 * function.c (emit_return_into_block): Likewise.
9110 (reposition_prologue_and_epilogue_notes): Likewise.
9111 * gengtype.c (get_file_basename, write_gc_structure_fields): Likewise.
9112 * combine.c (subst_prev_insn, need_refresh): Remove.
9113 * dwarf2out.c (primary_filename): Remove.
9114 * final.c (new_block): Remove.
9115 * gcse.c (orig_bb_count): Remove.
9116
91172002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9118
9119 * dsp16xx-protos.h (dsp16xx_compare_gen): Change to bool.
9120 * dsp16xx.c (dsp16xx_compare_gen): Likewise.
9121 * dsp16xx.md: Treat dsp16xx_compare_gen as a bool. Call functions
9122 directly instead of using a function pointer.
9123
5fc0e5df
KW
91242002-09-04 Krister Walfridsson <cato@df.lth.se>
9125
9126 * config/i386/i386.h (GOT_SYMBOL_NAME): Define.
9127 * config/i386/i386.c (output_set_got): Use GOT_SYMBOL_NAME.
9128 (ix86_output_addr_diff_elt) Likewise.
9129 (x86_output_mi_thunk) Likewise.
9130 * config/i386/netbsd.h (GOT_SYMBOL_NAME): Redefine.
9131
f4b488fd
KG
91322002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9133
9134 * frv.c (frv_encode_section_info): Fix error in last change.
9135
0e5dbd9b
DE
91362002-09-04 David Edelsohn <edelsohn@gnu.org>
9137
9138 * config/rs6000/rs6000.c (rs6000_flag_pic): New variable.
9139 (rs6000_elf_encode_section_info): ATTRIBUTE_UNUSED.
9140 (TARGET_BINDS_LOCAL_P): Define.
9141 (rs6000_override_options): Save original flag_pic value.
9142 (rs6000_elf_select_section): Call default_elf_select_section_1.
9143 (rs6000_elf_unique_section): Call default_unique_section_1.
9144 (rs6000_elf_in_small_data_p): New function.
9145 (rs6000_xcoff_asm_named_section): Determine storage mapping class.
9146 (rs6000_xcoff_select_section): Update based on defaults.
9147 (rs6000_xcoff_unique_section): Set to basic name if not common.
9148 (rs6000_binds_local_p): New function.
9149 * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set
9150 targetm.have_srodata_section if SDATA_EABI.
9151 (TARGET_IN_SMALL_DATA_P): Define.
9152
f57f9cb8
DJ
91532002-09-04 Dale Johannesen <dalej@apple.com>
9154
9155 * varasm.c (struct rtx_const, decode_rtx_const):
9156 Make veclo and vechi fields not share storage.
9157
ed6cc1f5
R
9158Thu Sep 5 00:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
9159
9160 * loop.c (scan_loop): Don't mark separate insns out of a libcall
9161 for moving.
9162 (move_movables): Abort if we see the first insn of a libcall.
9163
ab5e2615
RH
91642002-09-04 Richard Henderson <rth@redhat.com>
9165
9166 * builtin-types.def (BT_FN_FLOAT): New.
9167 (BT_FN_DOUBLE, BT_FN_LONG_DOUBLE): New.
9168 * builtins.def (BUILT_IN_INF, BUILT_IN_INFF, BUILT_IN_INFL,
9169 BUILT_IN_HUGE_VAL, BUILT_IN_HUGE_VALF, BUILT_IN_HUGE_VALL): New.
9170 * builtins.c (fold_builtin_inf): New.
9171 (fold_builtin): Call it.
9172 * real.c (ereal_inf): New.
9173 * real.h: Declare it.
9174 * doc/extend.texi: Document new builtins.
9175
9beb7d20
RH
91762002-09-04 Richard Henderson <rth@redhat.com>
9177
9178 * cse.c (cse_insn): Avoid subreg games if the equivalence
9179 is already in the proper mode.
9180
29984e05
EB
91812002-09-04 Eric Botcazou <ebotcazou@multimania.com>
9182
9183 PR c/7102
9184 * optabs.c (expand_binop): Convert CONST_INTs in all cases.
9185
8d46398e
JDA
91862002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
9187
9188 * pa.md (setccfp0, setccfp1): New patterns.
9189
14966b94
KG
91902002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9191
9192 * frv-protos.h (frv_init_builtins, frv_expand_builtin,
9193 frv_select_section, frv_select_rtx_section,
9194 frv_encode_section_info, frv_unique_section): Delete.
9195 * frv.c: Update for target hooks.
9196 * frv.h (STRIP_NAME_ENCODING, SLOW_ZERO_EXTEND, SELECT_SECTION,
9197 SELECT_RTX_SECTION, ENCODE_SECTION_INFO, UNIQUE_SECTION,
9198 EASY_DIV_EXPR, MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Delete.
9199
c8bf1a1a
KG
92002002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9201
9202 * ip2k-protos.h (function_prologue, function_epilogue,
9203 encode_section_info): Update to match target hook specification.
9204 * ip2k.c: Wrap `MDR' code in IP2K_MD_REORG_PASS.
9205 (function_prologue, function_epilogue, encode_section_info):
9206 Update to match target hook specification.
9207 * ip2k.h (SELECT_SECTION, SELECT_RTX_SECTION, ASM_OPEN_PAREN,
9208 ASM_CLOSE_PAREN, EASY_DIV_EXPR): Delete.
9209 (NOTICE_UPDATE_CC): Cast to void.
9210 * ip2k.md: Add defaults in switch statements.
9211
0484cb35
JJ
92122002-09-04 Janis Johnson <janis187@us.ibm.com>
9213
9214 * doc/trouble.texi (Interoperation): Update information about C++ ABI
9215 issues.
9216
3e62bd08
JT
92172002-09-04 Jason Thorpe <thorpej@wasabisystems.com>
9218
9219 * config/sparc/t-netbsd64: Disable multilib for now.
9220
275b6d80
DE
92212002-09-04 David Edelsohn <edelsohn@gnu.org>
9222
9223 * target-def.h (TARGET_HAVE_SRODATA_SECTION): New macro.
9224 * target.h (gcc_target): Add have_srodata_section member.
9225 * varasm.c (section_category): Add SECCAT_SRODATA.
9226 (categorize_decl_for_section): Return SECCAT_SRODATA for sdata if
9227 READONLY_SDATA_SECTION defined.
9228 (decl_readonly_section_1): True for SECCAT_SRODATA also.
9229 (default_elf_select_section_1): Map SECCAT_SRODATA to .sdata2.
9230 (default_unique_section_1): Likewise.
9231
015b1ad1
JDA
92322002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
9233
9234 * expr.c (emit_group_load): Revise to allow splitting TCmode source
9235 into DImode pieces.
9236
9237 * pa-64.h (LONG_DOUBLE_TYPE_SIZE): Define to 128.
9238 * pa64-regs.h (CLASS_CANNOT_CHANGE_MODE_P): Inhibit changes from SImode
9239 for floating-point register class.
9240 * pa.c (function_arg): Fix handling of modes wider than one word for
9241 TARGET_64BIT.
9242
b10f2187
R
9243Wed Sep 4 18:48:10 2002 J"orn Rennecke <joern.rennecke@superh.com>
9244
9245 * combine.c (make_compound_operation): Don't generate zero / sign
9246 extensions in floating point modes.
9247
478c9e72
JJ
92482002-09-04 Janis Johnson <janis187@us.ibm.com>
9249
9250 * doc/c-tree.texi: Fix overfull hboxes.
9251 * doc/cppopts.texi: Ditto.
9252 * doc/extend.texi: Ditto.
9253 * doc/gty.texi: Ditto.
9254 * doc/invoke.texi: Ditto.
9255 * doc/makefile.texi: Ditto.
9256 * doc/rtl.texi: Ditto.
9257 * doc/standards.texi: Ditto.
9258 * doc/tm.texi: Ditto.
9259
77e8a0cc
RH
92602002-09-04 Richard Henderson <rth@redhat.com>
9261
9262 * c-common.c (builtin_define_with_hex_fp_value): New.
9263 (builtin_define_float_constants): Use it. Fix H_FLOAT mant_dig.
9264
a9c60612
JJ
92652002-09-04 Janis Johnson <janis187@us.ibm.com>
9266
9267 * doc/invoke.texi (-fshort-wchar): Move to Code Generation Options.
9268 (-fpcc-struct-return, -freg-struct-return, -fshort-enums,
9269 -fshort-double, -fshort-wchar, -fpack-struct, -fleading-underscore):
9270 Warn that these options can break ABI compatibility.
9271
4b67a274
RH
92722002-09-04 Richard Henderson <rth@redhat.com>
9273
9274 * real.c (ereal_to_decimal): Add digits parameter.
9275 * real.h (REAL_VALUE_TO_DECIMAL): Remove format; add digits parameter.
9276 * c-pretty-print.c (pp_c_real_literal): Update call.
9277 * print-rtl.c (print_rtx): Likewise.
9278 * print-tree.c (print_node_brief, print_node): Likewise.
9279 * sched-vis.c (print_value): Likewise.
9280 * config/arc/arc.c (arc_print_operand): Likewise.
9281 * config/c4x/c4x.c (c4x_print_operand): Likewise.
9282 * config/i370/i370.h (PRINT_OPERAND): Likewise.
9283 * config/i386/i386.c (print_operand): Likewise.
9284 * config/i960/i960.c (i960_print_operand): Likewise.
9285 * config/ip2k/ip2k.c (asm_output_float): Likewise.
9286 * config/m32r/m32r.c (m32r_print_operand): Likewise.
9287 * config/m68hc11/m68hc11.c (print_operand): Likewise.
9288 * config/m68k/hp320.h (PRINT_OPERAND, ASM_OUTPUT_FLOAT_OPERAND,
9289 ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
2567406a 9290 * config/m68k/m68k.h (ASM_OUTPUT_FLOAT_OPERAND,
4b67a274
RH
9291 ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
9292 * config/m68k/sun2o4.h (ASM_OUTPUT_FLOAT_OPERAND,
9293 ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
9294 * config/m68k/sun3.h (ASM_OUTPUT_FLOAT_OPERAND,
9295 ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
9296 * config/mips/mips.c (print_operand): Likewise.
9297 * config/ns32k/ns32k.c (print_operand): Likewise.
9298 * config/pdp11/pdp11.h (PRINT_OPERAND): Likewise.
9299 * config/vax/vax.h (PRINT_OPERAND): Likewise.
9300 * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Update docs.
9301
01abf342
BW
93022002-09-04 Bob Wilson <bob.wilson@acm.org>
9303
9304 * config/xtensa/elf.h (TARGET_SECTION_TYPE_FLAGS): Define to
9305 xtensa_multibss_section_type_flags.
9306 * config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Define.
9307
cd42d3df
RH
93082002-09-04 Richard Henderson <rth@redhat.com>
9309
9310 * doc/install-old.texi: Don't mention enquire.
9311 * doc/sourcebuild.texi: Update float.h description.
9312
502e6d5a
R
9313Wed Sep 4 11:22:14 2002 J"orn Rennecke <joern.rennecke@superh.com>
9314
9315 * sh.md (mperm_w_little, mperm_w_big): Supply mode for zero_extract.
9316
4977bab6
ZW
93172002-09-03 Roger Sayle <roger@eyesopen.com>
9318
9319 * builtins.c (build_function_call_expr): Remove prototype, export
9320 as non-static and add a comment above function definition.
9321 (builtin_mathfn_code): New function to check for math builtins.
9322 (fold_builtin): Optimize sqrt(0.0) as 0.0, sqrt(1.0) as 1.0,
9323 exp(0.0) as 1.0, and log(1.0) as 0.0. Optimize exp(log(x)) and
9324 log(exp(x)) as x. Optimize sqrt(exp(x)) as exp(x/2.0) and
9325 log(sqrt(x)) as log(x)/2.0.
9326
9327 * tree.h: Prototype build_function_call_expr and builtin_mathfn_code
9328 in new "builtins.c" section. Place the build_range_type prototype
9329 with the other prototypes from "tree.c".
9330
9331 * fold-const.c (fold) [ABS_EXPR]: Fold fabs(sqrt(x)) as sqrt(x)
9332 and fabs(exp(x)) as exp(x). [MULT_EXPR]: Fold sqrt(x)*sqrt(y)
9333 as sqrt(x*y) and exp(x)*exp(y) as exp(x+y). [RDIV_EXPR]: Fold
9334 x/exp(y) as x*exp(-y).
9335
2cc9fb4c
DE
93362002-09-03 David Edelsohn <edelsohn@gnu.org>
9337
9338 * varasm.c (default_section_type_flags): Append _1 to name with
9339 shlib parameter. Use original name to call new function with
9340 implicit flag_pic.
9341 (decl_readonly_section): Likewise.
9342 (default_elf_select_section): Likewise.
9343 (default_unique_section): Likewise.
9344 (default_bind_local_p): Likewise.
9345 (categorize_decl_for_section): Add shlib parameter to use in place
9346 of implicit flag_pic.
9347 * output.h: Declare new functions with _1 and shlib argument.
9348
7c19f816
JJ
93492002-09-03 Janis Johnson <janis187@us.ibm.com>
9350
8c085f6f
JJ
9351 * doc/install.texi: Fix typos, formatting problems, and obvious
9352 overfull/underfull boxes.
9353
7c19f816
JJ
9354 * Makefile.in (TEXI_GCC_FILES): Add compat.texi.
9355 * doc/gcc.texi (Top): Add new chapter, Binary Compatibility, and
9356 include its file, compat.texi.
9357 * doc/compat.texi: New file with new chapter, Binary Compatibility.
9358
79ba5e3b
NB
93592002-09-03 Neil Booth <neil@daikokuya.co.uk>
9360
9361 Debian BTS Bug #157416
9362 * cpphash.h (FIRST, LAST, CUR, RLIMIT): Fix definitions.
9363 * cpplib.c (destringize_and_run): Kludge around getting
9364 tokens from in-progress macros.
9365 (_cpp_do__Pragma): Simplify.
9366
57016b47
SE
93672002-09-03 Steve Ellcey <sje@cup.hp.com>
9368
9369 * config/ia64/ia64.h (EXTRA_SPECS): Remove cpp_cpu.
9370 (CPP_CPU_SPEC): Remove.
9371 (TARGET_CPU_CPP_BUILTINS): New.
9372 * config/ia64/hpux.h (CPP_PREDEFINES): Remove.
9373 (CPP_SPEC): Remove.
9374 (TARGET_OS_CPP_BUILTINS): New.
9375 * config/ia64/linux.h (CPP_PREDEFINES): Remove.
9376 (TARGET_OS_CPP_BUILTINS): New.
9377 * config/ia64/aix.h (CPP_SPEC): Move some stuff to
9378 TARGET_OS_CPP_BUILTINS.
9379 (CPP_PREDEFINES): Remove.
9380 (CPLUSPLUS_CPP_SPEC): Remove.
9381 (TARGET_OS_CPP_BUILTINS): New.
9382
d57a4b98
RH
93832002-09-03 Richard Henderson <rth@redhat.com>
9384
9385 * Makefile.in (USER_H): Add ginclude/float.h.
9386 (FLOAT_H): Remove.
9387 (stmp-int-hdrs, install-mkheaders): Don't handle FLOAT_H.
9388 (mostlyclean): Don't remove float.h intermediate files.
9389 (distclean): Don't remove float.h.
9390 * config.gcc: Remove all float_format references.
9391 * configure.in (float_format, float_h_file): Remove.
9392
9393 * c-common.c: Include tree-inline.h.
9394 (builtin_define_with_int_value): New.
9395 (builtin_define_type_precision): Use it.
9396 (builtin_define_float_constants): New.
9397 (cb_register_builtins): Use it. Define __FLT_RADIX__ and
9398 __FLT_EVAL_METHOD__.
9399 * defaults.h (TARGET_FLT_EVAL_METHOD): New.
9400 * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): New.
9401 * config/m68k/m68k.h (TARGET_FLT_EVAL_METHOD): New.
9402 * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Mention moto 96-bit format.
9403 (TARGET_FLT_EVAL_METHOD): New.
9404
9405 * config/float-c4x.h, config/float-i128.h, config/float-i32.h,
9406 config/float-i386.h, config/float-i64.h, config/float-m68k.h,
9407 config/float-sh.h, config/float-sparc.h, config/float-vax.h: Remove.
9408 * ginclude/float.h: New.
9409
527347f0
SS
94102002-09-03 Stan Shebs <shebs@apple.com>
9411
9412 * config/darwin.h (WARN_FOUR_CHAR_CONSTANTS): Remove, never used.
9413 (DWARF2_DEBUGGING_INFO): Remove until assembler accepts Dwarf-2.
9414 (PREFERRED_DEBUGGING_TYPE): Ditto.
9415 (ASM_OUTPUT_IDENT): Remove empty definition.
9416
34c1864f
SE
94172002-09-03 Steve Ellcey <sje@cup.hp.com>
9418
9419 * config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and
9420 cxx_target.
9421 * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Register pragma
9422 handling routine for builtin pragma.
9423 * config/ia64/ia64-protos.h (ia64_hpux_handle_builtin_pragma):
9424 Registered pragma handling routine.
9425 * ia64-c.c (ia64_hpux_handle_builtin_pragma): Ditto.
9426 (ia64_hpux_add_pragma_builtin) New subroutine used by above.
9427 If builtin pragma seen for math routine and C89 conformance is
9428 requested use different math function in order to set errno.
9429 * t-ia64 (ia64-c.o): Add new rule for new file.
9430
9b7c75b9
UW
94312002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
9432
9433 * config/s390/s390.md ("movti"): Add Q->Q alternative.
9434 ("*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64",
9435 "movqi", "*movdf_64", "*movdf_31", "*movsf"): Likewise.
2567406a
JH
9436
9437 ("*movti_ss", "*movdi_ss", "*movsi_ss", "*movdf_ss",
9b7c75b9
UW
9438 "*movsf_ss"): Remove.
9439
710ba35f
JDA
94402002-09-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
9441
9442 * pa32-regs.h (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P):
9443 Delete macros.
9444
ff970081
AD
94452002-09-03 Arati Dikey <aratid@kpit.com>
9446
9447 * h8300.c (asm_file_start): Corrected optimization comment.
9448
b50d021d
SS
94492002-09-03 Stan Shebs <shebs@apple.com>
9450
9451 * c-lang.c (recognize_objc_keyword): Remove, no longer used.
9452 * c-tree.h (recognize_objc_keyword): Remove decl.
9453 * c-typeck.c (comp_target_types): Update a comment.
9454
b808c04c
UW
94552002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
9456
9457 * config/s390/s390.c (s390_decompose_address): Remove STRICT parameter
9458 and register validity checks.
9459 (general_s_operand): Adapt to s390_decompose_address interface change.
9460 (q_constraint): Likewise.
9461 (s390_expand_plus_operand): Likewise.
9462 (legitimiate_address_p): Likewise.
9463 (legitimate_la_operand_p): Likewise.
9464 (legitimize_la_operand): Likewise.
9465 (print_operand_address): Likewise.
9466 (print_operand): Likewise.
9467
ee453219
NP
9468Tue Sep 3 11:32:14 2002 Nicola Pero <n.pero@mi.flashnet.it>
9469
9470 PR objc/5956:
9471 * objc/objc-act.c (build_typed_selector_reference): Fix typo which
2567406a
JH
9472 was causing the new selector never to match the existing ones
9473 (Patch by Alexander Malmberg <alexander@malmberg.org>).
ee453219 9474
d82283d5
GS
94752002-09-03 Graham Stott <graham.stott@btinternet.com>
9476
9477 * config/i386/i386.md ("femms"): Add "memory" attr "none".
9478
94792002-09-03 Graham Stott <graham.stott@btinternet.com>
c7a009a2
GS
9480
9481 * expr.c (expand_expr): Remove extraneous comment and code.
9482
4977bab6
ZW
94832002-09-02 Nathan Sidwell <nathan@codesourcery.com>
9484
9485 * stor-layout (finish_builtin_struct): Renamed and moved from c++
9486 frontend. Take chain of fields. Allow NULL alignment type.
9487 * tree.h (finish_builtin_struct): Declare.
9488
94892002-09-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9490
9491 * config/alpha/alpha.c config/alpha/alpha.h config/alpha/alpha.md
9492 config/alpha/elf.h config/alpha/unicosmk.h config/alpha/vms.h
9493 config/arc/arc.c config/arc/arc.h config/arm/aout.h
9494 config/arm/arm.c config/arm/arm.h config/arm/arm.md
9495 config/avr/avr.h config/d30v/d30v.h config/dbxcoff.h
9496 config/dbxelf.h config/elfos.h config/fr30/fr30.h config/frv/frv.h
9497 config/i386/i386.c config/i386/i386.md config/i386/sco5.h
9498 config/ia64/ia64.h config/ip2k/ip2k.h config/m68hc11/m68hc11.md
9499 config/m68k/hp320.h config/m68k/m68k.c config/m68k/m68k.md
9500 config/m68k/mot3300.h config/m68k/sgs.h config/m68k/tower-as.h
9501 config/m88k/m88k.c config/m88k/m88k.h config/mcore/mcore-pe.h
9502 config/mcore/mcore.c config/mips/mips.c config/mips/mips.h
9503 config/ns32k/ns32k.md config/pa/pa-linux.h config/pa/pa.c
9504 config/pa/pa.h config/pa/pa.md config/romp/romp.h
9505 config/rs6000/linux64.h config/rs6000/lynx.h
9506 config/rs6000/rs6000.c config/rs6000/sysv4.h config/rs6000/xcoff.h
9507 config/s390/s390.c config/s390/s390.md config/sh/sh.c
9508 config/sparc/sparc.c config/sparc/sysv4.h
9509 config/stormy16/stormy16.h dbxout.c defaults.h dwarf2out.c
9510 dwarfout.c except.c final.c varasm.c vmsdbgout.c: Replace
9511 ASM_OUTPUT_INTERNAL_LABEL macro with a call to the target hook.
9512
9513 * doc/tm.texi: Update docs.
9514 * default.h (ASM_OUTPUT_INTERNAL_LABEL): Don't define.
9515 * system.h (ASM_OUTPUT_INTERNAL_LABEL): Poison.
9516
95172002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9518
9519 * Makefile.in (sdbout.o, insn-output.o): Depend on $(TARGET_H).
9520 * arc.c (arc_internal_label): New function.
9521 (TARGET_ASM_INTERNAL_LABEL): Set.
9522 * arc.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9523 * arm.c (arm_internal_label): New function.
9524 (TARGET_ASM_INTERNAL_LABEL): Set.
9525 * arm.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9526 * arm/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9527 * i370.c (i370_internal_label): New function.
9528 (TARGET_ASM_INTERNAL_LABEL): Set.
9529 * i370.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9530 * m68k/hp320.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9531 * m68k.c (m68k_hp320_internal_label): New function.
9532 (TARGET_ASM_INTERNAL_LABEL): Set.
9533 * m88k.c (m88k_internal_label): New function.
9534 (TARGET_ASM_INTERNAL_LABEL): Set.
9535 * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9536 * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Set to target hook.
9537 * genoutput.c (output_prologue): Include target.h in output file.
9538 * output.h (default_internal_label): Declare.
9539 * sdbout.c: Include target.h.
9540 * target-def.h (TARGET_ASM_INTERNAL_LABEL): Set and add to
9541 TARGET_ASM_OUT.
9542 * target.h (internal_label): Add to struct gcc_target.
9543 * varasm.c (default_internal_label): New function.
9544
95452002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9546
9547 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9548 * avr.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9549 * c4x.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9550 * cris.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9551 * d30v.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9552 * darwin.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9553 * dsp16xx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9554 * elfos.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9555 * h8300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9556 * i386/att.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9557 * i386/bsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9558 * i386/i386-coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9559 * i386/lynx-ng.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9560 * i386/lynx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9561 * i386/sco5.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9562 * i960/i960.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9563 * m68k/3b1.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9564 * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9565 * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9566 * m68k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9567 * m68k/mot3300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9568 * m68k/tower-as.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9569 * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9570 * mcore.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9571 * mips.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9572 * mmix-protos.h (mmix_asm_output_internal_label): Likewise.
9573 * mmix.c (mmix_asm_output_internal_label): Likewise.
9574 * mmix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9575 * ns32k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9576 * pa.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9577 * pdp11.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9578 * romp.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9579 * rs6000/xcoff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9580 * sh/coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9581 * sh/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9582 * sparc/freebsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9583 * sparc/linux.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9584 * sparc/linux64.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9585 * sparc/netbsd-elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9586 * sparc/pbd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9587 * sparc/sol2.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9588 * sparc.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9589 * sparc/vxsim.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9590 * stormy16.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9591 * svr3.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9592 * vax.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9593
9594 * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Define.
9595
98c0d8d1
RH
95962002-08-31 Richard Henderson <rth@redhat.com>
9597
9598 * expr.c (block_move_libcall_safe_for_call_parm): Fix thinko.
9599
a5f3f0ab
JDA
96002002-08-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
9601
9602 * pa.c (pa_globalize_label): Add ATTRIBUTE_UNUSED to prototype.
9603
38ec83b1
RH
96042002-08-30 Richard Henderson <rth@redhat.com>
9605
c9989d09 9606 PR opt/7515
38ec83b1
RH
9607 * c-objc-common.c: Include target.h.
9608 (c_cannot_inline_tree_fn): Don't auto-inline functions that
9609 don't bind locally. Factor setting DECL_UNINLINABLE.
9610 * Makefile.in (c-objc-common.o): Update.
9611
4c64396e
JJ
96122002-08-30 Janis Johnson <janis187@us.ibm.com>
9613
9614 * doc/install.texi (Configuration, Building): Fix a typo and
9615 some formatting directives.
9616
4226378a
PK
96172002-08-30 Paul Koning <pkoning@equallogic.com>
9618
9619 * doc/c-tree.texi (RDIV_EXPR): Fix typo.
9620 * doc/rtl.texi (post_modify): Remove misplaced text, remove "not
9621 implemented" note.
9622 * doc/md.texi (IP2K): Move machine-specific constraints before MIPS
9623 for alphabetic order.
9624 * doc/tm.texi (TARGET_FLOAT_FORMAT): Update description for
9625 VAX_FLOAT_FORMAT. Remove reference to HOST_FLOAT_FORMAT.
9626 (VAX_HALFWORD_ORDER): Document.
9627 (LARGEST_EXPONENT_IS_NORMAL): Remove note about being only for
9628 IEEE float format.
9629 (TARGET_SCHED_ISSUE_RATE): Reword reference to MAX_DFA_ISSUE_RATE.
9630 (ASM_OUTPUT_LABEL_REF): Fix font.
9631 (CASE_VECTOR_SHORTEN_MODE): Ditto.
9632
b8074dbe
DC
96332002-08-30 Denis Chertykov <denisc@overta.ru>
9634
9635 * config/ip2k/ip2k.c (ip2k_set_compare): Remove all const_double
9636 stuff.
9637 (ip2k_gen_unsigned_comp_branch): Handle CONST_INT and
9638 CONST_DOUBLE constants.
2567406a 9639
55f49e3d
JT
96402002-08-30 Jason Thorpe <thorpej@wasabisystems.com>
9641
9642 * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Move language-
9643 related defines to...
9644 (SUBTARGET_LANGUAGE_CPP_BUILTINS): ...here.
9645 * config/alpha/netbsd.h (SUBTARGET_LANGUAGE_CPP_BUILTINS): Redefine
9646 as a no-op.
9647
e1944073
KW
96482002-08-30 Krister Walfridsson <cato@df.lth.se>
9649
9650 * config/arm/arm.c (arm_asm_output_labelref): New function.
9651 * config/arm/arm.h (ASM_OUTPUT_LABELREF): Call arm_asm_output_labelref.
9652 * config/arm/arm-protos.h: Add prototype for arm_asm_output_labelref.
9653
6e92b3a1
RB
96542002-08-29 Rodney Brown <rbrown64@csc.com.au>
9655
9656 * doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual
9657 memory exhausted" workarounds.
9658
9d533cb5
GDR
96592002-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
9660
9661 * diagnostic.c (fancy_abort): Don't repeat "internal error".
9662 * toplev.c (crash_signal): Likewise.
9663
1f676100
NP
9664Fri Aug 30 00:33:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
9665
9666 * doc/cpp.texi (__NEXT_RUNTIME__): Extended documentation.
9667 * doc/invoke.texi (-fnext-runtime, -Wno-protocol, -Wselector):
9668 Extended, updated documentation.
9669 (-Wundeclared-selector): Documented.
9670
23532de9
JT
96712002-08-29 Jason Thorpe <thorpej@wasabisystems.com>
9672
9673 * config/chorus.h: Consistently define *_DEBUGGING_INFO with
9674 the value 1. Do not undef before defining.
9675 * config/darwin.h: Likewise.
9676 * config/dbx.h: Likewise.
9677 * config/dbxcoff.h: Likewise.
9678 * config/dbxelf.h: Likewise.
9679 * config/elfos.h: Likewise.
9680 * config/interix.h: Likewise.
9681 * config/lynx-ng.h: Likewise.
9682 * config/lynx.h: Likewise.
9683 * config/netware.h: Likewise.
9684 * config/psos.h: Likewise.
9685 * config/svr3.h: Likewise.
9686 * config/alpha/alpha.h: Likewise.
9687 * config/alpha/elf.h: Likewise.
9688 * config/alpha/vms.h: Likewise.
9689 * config/arc/arc.h: Likewise.
9690 * config/arm/aout.h: Likewise.
9691 * config/arm/coff.h: Likewise.
9692 * config/c4x/c4x.h: Likewise.
9693 * config/h8300/h8300.h: Likewise.
9694 * config/i386/cygwin.h: Likewise.
9695 * config/i386/djgpp.h: Likewise.
9696 * config/i386/gas.h: Likewise.
9697 * config/i386/gstabs.h: Likewise.
9698 * config/i386/i386-coff.h: Likewise.
9699 * config/i386/i386-interix.h: Likewise.
9700 * config/i386/sco5.h: Likewise.
9701 * config/i386/svr3dbx.h: Likewise.
9702 * config/i386/sysv3.h: Likewise.
9703 * config/i386/win32.h: Likewise.
9704 * config/i386/x86-64.h: Likewise.
9705 * config/i960/i960.h: Likewise.
9706 * config/ia64/ia64.h: Likewise.
9707 * config/ip2k/ip2k.h: Likewise.
9708 * config/m32r/m32r.h: Likewise.
9709 * config/m68k/3b1.h: Likewise.
9710 * config/m68k/3b1g.h: Likewise.
9711 * config/m68k/ccur-GAS.h: Likewise.
9712 * config/m68k/coff.h: Likewise.
9713 * config/m68k/hp2bsd.h: Likewise.
9714 * config/m68k/hp310g.h: Likewise.
9715 * config/m68k/hp320g.h: Likewise.
9716 * config/m68k/hp3bsd.h: Likewise.
9717 * config/m68k/hp3bsd44.h: Likewise.
9718 * config/m68k/linux-aout.h: Likewise.
9719 * config/m68k/m68k-aout.h: Likewise.
9720 * config/m68k/mot3300.h: Likewise.
9721 * config/m68k/netbsd.h: Likewise.
9722 * config/m68k/openbsd.h: Likewise.
9723 * config/m68k/pbb.h: Likewise.
9724 * config/m68k/plexus.h: Likewise.
9725 * config/m68k/sun2.h: Likewise.
9726 * config/m68k/sun3.h: Likewise.
9727 * config/m68k/tower-as.h: Likewise.
9728 * config/m68k/vxm68k.h: Likewise.
9729 * config/m88k/aout-dbx.h: Likewise.
9730 * config/m88k/m88k-aout.h: Likewise.
9731 * config/mcore/mcore-elf.h: Likewise.
9732 * config/mcore/mcore-pe.h: Likewise.
9733 * config/mips/elf.h: Likewise.
9734 * config/mips/elf64.h: Likewise.
9735 * config/mips/iris5gas.h: Likewise.
9736 * config/mips/iris6.h: Likewise.
9737 * config/mips/mips.h: Likewise.
9738 * config/mips/sni-gas.h: Likewise.
9739 * config/mmix/mmix.h: Likewise.
9740 * config/ns32k/netbsd.h: Likewise.
9741 * config/pa/pa64-hpux.h: Likewise.
9742 * config/romp/romp.h: Likewise.
9743 * config/rs6000/sysv4.h: Likewise.
9744 * config/rs6000/xcoff.h: Likewise.
9745 * config/sh/coff.h: Likewise.
9746 * config/sh/elf.h: Likewise.
9747 * config/sparc/linux64.h: Likewise.
9748 * config/sparc/liteelf.h: Likewise.
9749 * config/sparc/netbsd.h: Likewise.
9750 * config/sparc/openbsd.h: Likewise.
9751 * config/sparc/pbd.h: Likewise.
9752 * config/sparc/sp64-elf.h: Likewise.
9753 * config/sparc/sp86x-elf.h: Likewise.
9754 * config/sparc/sparc.h: Likewise.
9755 * config/vax/vax.h: Likewise.
9756 * config/vax/vaxv.h: Likewise.
9757
5e98fba2
DD
97582002-08-29 "Dhananjay R. Deshpande" <dhananjayd@kpit.com>
9759
9760 * h8300.c (shift_alg_hi): Various tweaks to improve performance
9761 of HImode shifts.
9762 (get_shift_alg): Corresponding changes.
9763
43852342
JDA
97642002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
9765
9766 * som.h (ALWAYS_STRIP_DOTDOT): Define to 1.
9767
44bb111a
RH
97682002-08-29 Richard Henderson <rth@redhat.com>
9769
9770 * expr.h (enum block_op_methods): New.
9771 (emit_block_move): Update prototype.
9772 * expr.c (block_move_libcall_safe_for_call_parm): New.
9773 (emit_block_move_via_loop): New.
9774 (emit_block_move): Use them. New argument METHOD.
9775 (emit_push_insn): Always respect the given alignment.
9776 (expand_assignment): Update call to emit_block_move.
9777 (store_expr, store_field, expand_expr): Likewise.
9778 * builtins.c (expand_builtin_apply): Likewise.
9779 (expand_builtin_memcpy, expand_builtin_va_copy): Likewise.
9780 * function.c (expand_function_end): Likewise.
9781 * config/sh/sh.c (sh_initialize_trampoline): Likewise.
9782 * config/sparc/sparc.c (sparc_va_arg): Likewise.
9783 * calls.c (expand_call, emit_library_call_value_1): Likewise.
9784 (save_fixed_argument_area): Use emit_block_move with
9785 BLOCK_OP_CALL_PARM instead of move_by_pieces.
9786 (restore_fixed_argument_area): Likewise.
9787 (store_one_arg): Fix alignment parameter to emit_push_insn.
9788
08b3d104
JDA
97892002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
9790
9791 * install.texi (hppa64-hp-hpux11*): Document installation procedure.
9792
ce4e9970 97932002-08-29 Catherine Moore <clm@redhat.com>
8376061d
CM
9794
9795 * config/v850/v850.h (MULDI3_LIBCALL, UCMPDI2_LIBCALL, CMPDI2_LIBCALL,
9796 NEGDI2_LIBCALL, INIT_TARGET_OPTABS, MASK_STRICT_ALIGN): Define.
9797 (PREDICATE_CODES): Include new predicates.
9798 (RTX_COSTS): Handle UMOD and UDIV. Tune MULT for v850e.
9799 (TARGET_SWITCHES): Add strict-align.
9800 (TARGET_STRICT_ALIGN): New.
2567406a 9801 (MASK_DEFAULT, STRICT_ALIGNMENT): Redefine.
8376061d
CM
9802 * config/v850/t-v850 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
9803 Define.
9804 (LIB1ASMFUNCS): Add v850_negdi2, v850_cmpdi2, v850_ucmpdi2,
9805 v850_muldi3.
9806 * config/v850/lib1funcs.asm (L_callt_save_r2_r29, L_return_r2_r29,
9807 L_callt_save_r2_r31, L_return_r2_r31,
9808 L_save_all_interrupt): Change addi to add.
9809 (L_save_interrupt, L_return_interrupt): Rework.
9810 (__return_r31): Correct .size directive.
9811 (mulsi3, divsi3, udivsi3, umodsi3, modsi3): Tune for v850e.
9812 (v850_negdi2, v850_cmpdi2, v850_ucmpdi2, v850_muldi3):
9813 New routines.
9814 * config/v850/v850.c (expand_prologue): Call
9815 gen_callt_save_interrupt, gen_callt_restore_all_interrupt,
9816 gen_callt_return_interrupt and gen_callt_save_all_interrupt.
9817 (reg_or_int9_operand): New predicate.
9818 (reg_or_const_operand): New routine.
9819 * config/v850/v850.md (return_interrupt): Changed from
9820 restore_interrupt.
9821 (callt_save_all_interrupt): Changed from save_all_interrupt_v850e.
9822 (callt_save_interrupt): Change save sequence.
9823 (callt_return_interrupt): New.
9824 (save_interrupt): Don't use runtime function for LONG_CALLS
9825 and TARGET_PROLOG_FUNCTION.
9826 (save_all_interrupt): Likewise.
9827 (mulsi3): Use new predicate.
9828 (moviscc): Disallow some combination of constants.
9829 Fix define_split for sasf insns, so that it will not generate bad
9830 code if operand0 and operand5 are the same.
9831 * config/v850/v850-protos.h: Prototype new predicates.
9832
4977bab6
ZW
98332002-08-29 Zack Weinberg <zack@codesourcery.com>
9834
9835 * config/rs6000/rs6000.c (processor_target_table): Add 405f.
9836 * config/rs6000/rs6000.h (ASM_CPU_SPEC): Likewise.
9837
585e661a
GDR
98382002-08-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
9839
9840 * c-common.c (builtin_define_type_precision): New function.
9841 (cb_register_builtins): Use it. Define __WCHAR_UNSIGNED__ is
9842 wchar_t is unsigned in C++.
9843 * doc/cpp.texi (Common Predefined Macros): Document
9844 __WCHAR_UNSIGNED__, __CHAR_BIT__, __WCHAR_BIT__, __SHRT_BIT__,
9845 __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
9846 __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
9847
bd8f9aec
SP
98482002-08-28 Sylvain Pion <pion@cs.nyu.edu>
9849
9850 * doc/invoke.texi (-Wreorder): Remove remaining pieces from the generic
9851 section. Mention that it is enabled by -Wall.
9852 (-Wall): Mention that there can be language-specific warnings as well.
9853 (-Wctor-dtor-privacy): Mention that it is enabled by default.
9854 (-Wnon-virtual-dtor): Mention that it is enabled by -Wall.
9855
58ab7171
R
9856Wed Aug 28 15:35:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
9857
9858 * sh.c (calc_live_regs): Save FPSCR_REG in an interrupt handler
9859 if it is ever live.
9860
9861 * sh.c (sh_handle_interrupt_handler_attribute): Reject interrupt_handler
9862 attribute for SHCOMPACT.
9863
9864 * sh.h (OVERRIDE_OPTIONS): If align_function isn't set, set it
9865 appropriately.
9866 (FUNCTION_BOUNDARY): Specify only the minimum alignment required
9867 by the ABI.
9868
9869 * sh.h (SH5_WOULD_BE_PARTIAL_NREGS): Also handle TImode case.
9870
27f4b67e
JT
98712002-08-28 Jason Thorpe <thorpej@wasabisystems.com>
9872
9873 * config.gcc (mips*-*-netbsd*): Set target_cpu_default to
9874 "MASK_GAS|MASK_ABICALLS".
9875 * config/mips/netbsd.h (TARGET_ENDIAN_DEFAULT)
9876 (TARGET_DEFAULT): Remove.
9877 (MACHINE_TYPE): Undefine before defining.
9878 (DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Remove.
9879
eca7f13c
MM
98802002-08-27 Mark Mitchell <mark@codesourcery.com>
9881
9882 * c-common.c (warn_abi): New variable.
9883 * c-common.h (warn_abi): Likewise.
9884 * c-opts.c (COMMAND_LINE_OPTIONS): Add -Wabi.
9885 (c_common_decode_option): Handle it.
7ee425e4 9886 * doc/invoke.texi: Document -Wabi.
2567406a 9887
ece4ce85
NP
9888Tue Aug 27 23:03:52 2002 Nicola Pero <n.pero@mi.flashnet.it>
9889
9890 * c-common.c (warn_undeclared_selector): New variable.
9891 * c-common.h (warn_undeclared_selector): Idem.
9892 * c-opts.c (c_common_decode_option): Set warn_undeclared_selector
9893 to on when -Wundeclared-selector is found.
9894 (COMMAND_LINE_OPTIONS): Added -Wundeclared-selector.
9895 * objc/objc-act.c (build_selector_expr): If
9896 warn_undeclared_selector is set, check that the selector has
9897 already been defined, and emit a warning if not.
9898
b4378319 98992002-08-27 Nick Clifton <nickc@redhat.com>
54c93c30
AE
9900 Catherine Moore <clm@redhat.com>
9901 Jim Wilson <wilson@cygnus.com>
9902
9903 * config.gcc: Add v850e-*-* target.
9904 Add --with-cpu= support for v850.
9905 * config/v850/lib1funcs.asm: Add v850e callt functions.
9906 * config/v850/v850.h: Add support for v850e target.
9907 * config/v850/v850.c: Add functions to support v850e target.
9908 * config/v850/v850-protos.h: Add prototypes for new functions in v850.c.
9909 * config/v850/v850.md: Add patterns for v850e instructions.
9910 * doc/invoke.texi: Document new v850e command line switches.
b4378319 9911
ef261fee
R
9912Tue Aug 27 18:30:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
9913 Aldy Hernandez <aldyh at redhat dot com>
9914
9915 * doc/tm.texi: Applied numerous fixes to the automaton based
9916 scheduler descrition.
9917
c60ee6f5
JH
9918Tue Aug 27 19:51:05 CEST 2002 Jan Hubicka <jh@suse.cz>
9919
9920 * i386.c (classify_argument): Handle variable sized objects.
9921
1985ef90
JH
9922Tue Aug 27 19:18:16 CEST 2002 Jan Hubicka <jh@suse.cz>
9923
9924 * i386.c (ix86_expand_int_movcc): Fix RTL sharing problem
9925
7acc97e0
JH
9926Tue Aug 27 18:01:45 CEST 2002 Jan Hubicka <jh@suse.cz>
9927
9928 * libgcc2.c (__bb_exit_func): Properly write the summarized statistics.
9929
23327dae
JH
9930Tue Aug 27 18:00:11 CEST 2002 Jan Hubicka <jh@suse.cz>
9931
9932 * i386.c (classify_argument): Properly compute word size of the analyzed object.
9933
c49439f1
R
9934Tue Aug 27 14:39:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
9935
9936 * sh.md (attribute type): Add types mt_group, fload, pcfload, fpul_gp,
9937 mac_gp ftrc_s and cwb. Add / Adjust definitions in individual insn
9938 accordingly.
9939 (attribute insn_class): Provide default definitions based on type.
9940 Remove all insn-specific settings.
9941 (various function units): Remove old SH4 scheduling.
9942 (branch_zero, dfp_comp, late_fp_use, any_fp_comp, any_int_load):
9943 New attributes. Set them where appropriate.
9944 (cpu unit FS): Don't define / use.
9945 (F3, load_store): New cpu units.
9946 (F01): New reservation.
9947 (all insn_reservations): Make dependent on sh4 pipeline model.
9948 Fix latencies.
9949 (nil, reg_mov, freg_mov, sh4_fpul_gp, sh4_call): New insn_reservations.
9950 (sh4_mac_gp, fp_arith_ftrc, arith3, arith3b): Likewise.
9951 (mt insn_reservation): Use type mt_group.
9952 (insn_reservation load_store): Split into sh4_load, sh4_load_si,
9953 sh4_fload and sh4_store.
9954 (insn_reservation branch_zero and branch): Replace with sh4_branch.
9955 (insn_reservation branch_far): Replace with sh4_return.
9956 (insn_reservation return_from_exp): Rename to:
9957 (sh4_return_from_exp). Change to be just d_lock*5.
9958 (insn_reservation lds_to_pr): Rename to:
9959 (sh4_lds_to_pr). Change to be just d_lock*2.
9960 (insn_reservation ldsmem_to_pr, sts_from_pr): Change to be just
9961 d_lock*2.
9962 (insn_reservation prload_mem): Rename to:
9963 (sh4_prstore_mem). Change to d_lock*2,nothing,memory.
9964 (insn_reservation fpscr_store): Rename to:
9965 (fpscr_load). Change to d_lock,nothing,F1*3.
9966 (insn_reservation fpscr_store_mem): Rename to:
9967 (fpscr_load_mem). Change to d_lock,nothing,(F1+memory),F1*2.
9968 (insn_reservation multi): Change to
9969 d_lock,(d_lock+f1_1),(f1_1|f1_2)*3,F2.
9970 (insn_reservation fp_arith): Change to issue,F01,F2.
9971 (insn_reservation fp_div: Change to issue,F01+F3,F2+F3,F3*7,F1+F3,F2.
9972 (insn_reservation dp_float): Change to issue,F01,F1+F2,F2.
9973 (insn_reservation fp_double_arith): Change to issue,F01,F1+F2,fpu*4,F2.
9974 (insn_reservation fp_double_cmp): Change to
9975 d_lock,(d_lock+F01),F1+F2,F2.
9976 (insn_reservation dp_div): Change to
9977 issue,F01+F3,F1+F2+F3,F2+F3,F3*16,F1+F3,(fpu+F3)*2,F2.
9978 * sh.c (flow_dependent_p, flow_dependent_p_1): New functions.
9979 (sh_adjust_cost, SHcompact): Differentiate between different
9980 kinds of dependencies. Drop factor of ten for superscalar.
9981 Use new instruction types. Add new exception rules.
9982
9983 * sh.md (mulhisi3, umulhisi3: Add a REG_EQUAL note.
9984
9985 * sh.md (mperm_w): Add DONE.
9986
f34fc46e
DE
99872002-08-27 David Edelsohn <edelsohn@gnu.org>
9988
9989 * longlong.h: Import current PowerPC defintion from GMP-4.1.
9990
9991 * config/rs6000/rs6000.h (MIN_UNITS_PER_WORD): Add IN_LIBGCC2 case.
9992
9993 * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Undef before define.
9994
dcb44500
R
9995Tue Aug 27 13:53:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
9996
9997 * sh.h (MAX_FIXED_MODE_SIZE): Define.
9998
3ec07554
GDR
99992002-08-27 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net>
10000
10001 * doc/cpp.texi (Common Predefined Macros): Don't mess with table
2567406a 10002 delimiter.
3ec07554 10003
35885eab
GDR
100042002-08-27 Gabriel Dos Reis <gdr@integrable-solutions.net>
10005
10006 * c-common.c (cpp_define_data_format): New function.
10007 (cb_register_builtins): Call it.
10008
10009 * doc/cpp.texi (Common Predefined Macros): Document
10010 __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
10011 __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
10012 __TARGET_FLOAT_FORMAT__, __TARGET_USES_VAX_F_FLOAT__,
10013 __TARGET_USES_VAX_D_FLOAT__, __TARGET_USES_VAX_G_FLOAT__,
10014 __TARGET_USES_VAX_H_FLOAT__.
10015
d632dee9
ZL
100162002-08-26 Ziemowit Laski <zlaski@apple.com>
10017
10018 * objc/objc-act.c (get_super_receiver): If inside a class method
10019 of a category, cast the receiver to 'id' before accessing the 'isa'
10020 field so that <objc/objc-class.h> is not needed. For NeXT runtime.
10021
c3cc6b78
UW
100222002-08-26 Ulrich Weigand <uweigand@de.ibm.com>
10023
2567406a 10024 * config/s390/s390-protos.h (s390_function_prologue,
c3cc6b78
UW
10025 s390_function_epilogue): Remove.
10026 config/s390/s390.c (s390_function_prologue, s390_function_epilogue,
10027 TARGET_ASM_FUNCTION_PROLOGUE, TARGET_ASM_FUNCTION_EPILOGUE): Remove.
10028
10029 config/s390/s390.c (s390_machine_dependent_recorg): New function.
10030 config/s390/s390-protos.h (s390_machine_dependent_reorg): Declare it.
10031 config/s390/s390.h (MACHINE_DEPENDENT_REORG): Call it.
10032 config/s390/s390.c (s390_split_branches, s390_chunkify_pool): Adapt
10033 to being called from MACHINE_DEPENDENT_REORG. Update regs_ever_live.
10034
2567406a 10035 config/s390/s390.c (s390_frame_info): Inline save_fprs_p. Always
c3cc6b78
UW
10036 assume BASE_REGISTER and RETURN_REGNUM need to be saved.
10037 (s390_emit_prologue): Assume RETURN_REGNUM to be saved iff
10038 function is not a leaf function. Use save_gprs and restore_gprs.
10039 (s390_emit_epilogue): Likewise.
10040 (save_gprs, restore_gprs): New functions.
10041 (struct s390_frame): Remove return_reg_saved_p member.
10042 (save_fprs_p): Remove.
10043 (s390_optimize_prolog): New function.
10044 (s390_legitimate_reload_constant): Remove now unnecessary check.
10045
10046 (s390_function_count): Remove.
10047 (s390_output_symbolic_const): Replace s390_function_count by
10048 current_function_funcdef_no.
10049 (s390_output_constant_pool): Likewise.
10050
10051 (legitimize_pic_address): Use regs_ever_live to track PIC register
10052 instead of current_function_uses_pic_offset_table.
10053 (s390_emit_prologue): Likewise.
10054 config/s390/s390.md ("call", "call_value"): Likewise.
10055
3f662186
NB
100562002-08-26 Neil Booth <neil@daikokuya.co.uk>
10057
10058 * c-opts.c (find_opt): Don't complain about wrong languages
10059 here. Return exact matches even for wrong language.
10060 (c_common_decode_option): Complain about wrong languages
10061 here.
10062
b6128b8c
SH
100632002-08-24 Stuart Hastings <stuart@apple.com>
10064
10065 * function.h (struct function): Add flag
10066 all_throwers_are_sibcalls.
10067 * except.c (set_nothrow_function_flags): Replaces
10068 nothrow_function_p. Set new flag.
10069 * except.h (set_nothrow_function_flags): Replaces
10070 nothrow_function_p.
10071 * dwarf2out.c (struct dw_fde_struct): Add flag
10072 all_throwers_are_sibcalls.
10073 (output_call_frame_info): Test it.
10074 (dwarf2out_begin_prologue) Propagate it from cfun to
10075 dw_fde_struct.
10076 * toplev.c (rest_of_compilation): Update calls to
10077 nothrow_function_p.
10078
280cf02a
ZW
100792002-08-23 Zack Weinberg <zack@codesourcery.com>
10080
10081 * ggc-page.c (compute_inverse): Short circuit calculation for
10082 object sizes larger than half a page.
10083
c6664446
DE
100842002-08-23 David Edelsohn <edelsohn@gnu.org>
10085
10086 * config/rs6000/rs6000.c (rs6000_elf_select_section): Treat
10087 DEFAULT_ABI == ABI_AIX like PIC. Test PIC & reloc for readonly
10088 default.
10089 (rs6000_elf_unique_section): Likewise.
10090
da57d233
KG
100912002-08-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10092
10093 * ns32k.c (ns32k_globalize_label): Delete.
10094 * ns32k.h (ASM_OUTPUT_LABEL, TARGET_ASM_GLOBALIZE_LABEL): Delete.
10095
56a7189a
AM
100962002-08-23 Alan Modra <amodra@bigpond.net.au>
10097
10098 * config/rs6000/rs6000.c (output_mi_thunk): Don't determine insns
10099 for loading delta with num_insns_constant_wide. Calculate
10100 delta_low, delta_high without using a conditional.
10101
d65b1d77
JM
101022002-08-22 Jason Merrill <jason@redhat.com>
10103
10104 * c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR.
10105 * c-common.def: Adjust.
10106 * c-dump.c (c_dump_tree): Adjust.
10107 * c-semantics.c (genrtl_return_stmt): Adjust.
10108 * c-pretty-print.c (pp_c_statement): Adjust.
10109 * tree-inline.c (copy_body_r): Adjust.
10110
8537ed68
ZW
101112002-08-22 Zack Weinberg <zack@codesourcery.com>
10112
10113 * ggc-page.c: Avoid division in ggc_set_mark.
10114 (DIV_MULT, DIV_SHIFT, OFFSET_TO_BIT, inverse_table,
10115 compute_inverse): New.
10116 (ggc_set_mark, ggc_marked_p): Use OFFSET_TO_BIT.
10117 (init_ggc): Initialize inverse_table.
10118
8567c70f
TT
101192002-08-22 Tom Tromey <tromey@redhat.com>
10120
10121 * doc/install.texi (Configuration): Document --datadir.
10122
fde59d4b
AO
101232002-08-22 Alexandre Oliva <aoliva@redhat.com>
10124
10125 * Makefile.in ($(BUILD_PREFIX_1)varray.o): Depend on $(GGC_H).
10126
44ddc79a
HPN
101272002-08-22 Hans-Peter Nilsson <hp@bitrange.com>
10128
10129 * gengtype-lex.l (ID): Allow underscore as first character.
10130
b275d088
DE
101312002-08-21 David Edelsohn <edelsohn@gnu.org>
10132
10133 * config/rs6000/rs6000.c (rs6000_xcoff_asm_globalize_label): New
10134 function.
10135 (rs6000_xcoff_asm_named_section): Rename.
10136 * config/rs6000/xcoff.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
10137
57ce46bb
TT
101382002-08-21 Tom Tromey <tromey@redhat.com>
10139
10140 For PR java/6005 and PR java/7611:
10141 * fold-const.c (fold_truthop): Use can_use_bit_fields_p.
10142 (fold): Likewise.
10143 * langhooks.c (lhd_can_use_bit_fields_p): New function.
10144 * langhooks-def.h (lhd_can_use_bit_fields_p): Declare.
10145 (LANG_HOOKS_CAN_USE_BIT_FIELDS_P): New define.
10146 (LANG_HOOKS_INITIALIZER): Use it.
10147 * langhooks.h (struct lang_hooks) [can_use_bit_fields_p]: New
10148 field.
10149
27d30956
SS
101502002-08-21 Stan Shebs <shebs@apple.com>
10151
10152 * tree.c (finish_vector_type): Fix a typo in a comment.
10153 * Makefile.in: Fix "the the" stutters in comments.
10154 * genautomata.c: Ditto.
10155 * ifcvt.c: Ditto.
10156 * regrename.c: Ditto.
10157 * config/alpha/alpha.c: Ditto.
10158 * config/alpha/vms-crt0-64.c: Ditto.
10159 * config/alpha/vms-crt0.c: Ditto.
10160 * config/alpha/vms-psxcrt0-64.c: Ditto.
10161 * config/alpha/vms-psxcrt0.c: Ditto.
10162 * config/d30v/d30v.h: Ditto.
10163 * config/fr30/fr30.h: Ditto.
10164 * config/rs6000/rs6000.c: Ditto.
10165 * config/stormy16/stormy16.h: Ditto.
10166 * doc/md.texi: Ditto.
8537ed68 10167
d873d827
JDA
101682002-08-21 John David Anglin <dave@hiauly1.hia.nrc.ca>
10169
10170 * cppinit.c (remove_dup_nonsys_dirs): Fix warning and return value.
10171
b462d4ab
JM
101722002-08-21 Joseph S. Myers <jsm@polyomino.org.uk>
10173
10174 * c-decl.c (grokdeclarator): Make invalid combinations with long,
10175 short, signed or unsigned into hard errors. Fixes PR c/4319.
10176 Also make duplicate modifiers such as "short short" into hard
10177 errors.
10178
b65d23aa 101792002-08-21 Andrew Pinski <pinskia@physics.uc.edu>
8537ed68 10180 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b65d23aa
AP
10181
10182 * doc/tm.texi (TARGET_ASM_GLOBALIZE_LABEL): Move '@end deftypefn'
10183 to the actual end. Add '@end table' and '@table @code'.
8537ed68 10184
3823f0b2
GK
101852002-08-20 Geoffrey Keating <geoffk@redhat.com>
10186
8d25d915
GK
10187 * doc/tm.texi (Label Output): Add missing '@end deftypefn'.
10188
3823f0b2
GK
10189 * unroll.c (biv_total_increment): Don't try to compute the total
10190 increment for FP BIVs.
10191
5eb99654
KG
101922002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10193
10194 * alpha.c (TARGET_ASM_GLOBALIZE_LABEL): Define for unicosmk.
10195 * alpha/elf.h (ASM_OUTPUT_EXTERNAL_LIBCALL,
10196 ASM_OUTPUT_ALIGNED_BSS): Use target hook.
10197 * alpha/osf.h (ASM_OUTPUT_WEAK_ALIAS): Likewise.
10198 * alpha/unicosmk.h (ASM_GLOBALIZE_LABEL): Delete.
10199 * arm/aof.h (ASM_GLOBALIZE_LABEL): Likewise.
10200 (GLOBAL_ASM_OP): Define.
10201 * arm.c (aof_globalize_label): New function.
10202 (TARGET_ASM_GLOBALIZE_LABEL): Define for AOF.
10203 * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
10204 * c4x.c (c4x_globalize_label): New function.
10205 (TARGET_ASM_GLOBALIZE_LABEL): Define for c4x.
10206 * c4x.h (ASM_GLOBALIZE_LABEL): Delete.
10207 (GLOBAL_ASM_OP): Define.
10208 * cris/aout.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
10209 * darwin-protos.h (darwin_globalize_label): Declare.
10210 * darwin.c (darwin_globalize_label): New function.
10211 * darwin.h (ASM_DECLARE_CLASS_REFERENCE): Use target hook.
10212 (ASM_GLOBALIZE_LABEL): Delete.
10213 (GLOBAL_ASM_OP, TARGET_ASM_GLOBALIZE_LABEL): Define.
10214 * dsp16xx.c (asm_output_common): Use target hook.
10215 * elfos.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
10216 * frv.h (ASM_GLOBALIZE_LABEL): Delete.
10217 (GLOBAL_ASM_OP): Define.
10218 * i370.c (i370_globalize_label): New function.
10219 (TARGET_ASM_GLOBALIZE_LABEL): Define for i370.
10220 * i370.h (ASM_GLOBALIZE_LABEL): Delete.
10221 * i386.c (ix86_asm_file_end): Use target hook.
10222 * i386/sco5.h (ASM_GLOBALIZE_LABEL): Don't undef.
10223 (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
10224 * ia64.c (ia64_asm_output_external): Likewise.
10225 * ia64/sysv4.h: Update comment.
10226 * m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
10227 * mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
10228 * mips/iris5.h (ASM_OUTPUT_WEAK_ALIAS): Use target hook.
10229 * mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
10230 * mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use target hook.
10231 * mmix-protos.h (mmix_asm_globalize_label): Delete.
10232 * mmix.c (mmix_asm_globalize_label): Likewise.
10233 * mmix.h (ASM_GLOBALIZE_LABEL): Likewise.
10234 (GLOBAL_ASM_OP): Define.
10235 * ns32k.c (ns32k_globalize_label): New function.
10236 * ns32k.h (TARGET_ASM_GLOBALIZE_LABEL): Define for ns32k.
10237 (ASM_GLOBALIZE_LABEL): Delete.
10238 * pa/pa-linux.h (ASM_GLOBALIZE_LABEL): Don't undef.
10239 (TARGET_ASM_GLOBALIZE_LABEL): Undefine.
10240 * pa.c (pa_globalize_label): New function.
10241 * pa.h (ASM_GLOBALIZE_LABEL): Delete.
10242 (TARGET_ASM_GLOBALIZE_LABEL): Define for pa.
10243 * rs6000/darwin.h (ASM_GLOBALIZE_LABEL): Delete.
10244 (GLOBAL_ASM_OP): Define.
10245 (TARGET_ASM_GLOBALIZE_LABEL): Undef.
10246 * rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
10247 * rs6000/xcoff.h (ASM_GLOBALIZE_LABEL): Delete.
10248 (GLOBAL_ASM_OP): Define.
10249 * v850.c (v850_output_aligned_bss): Use target hook.
10250 * vax.c (vms_globalize_label): New function.
10251 (TARGET_ASM_GLOBALIZE_LABEL): Define for vms.
10252 * vax/vms.h (ASM_GLOBALIZE_LABEL): Delete.
10253 (GLOBAL_ASM_OP): Define.
10254 * defaults.h (ASM_GLOBALIZE_LABEL): Delete.
10255 * doc/tm.texi: Update docs.
10256 * dwarf2out.c (default_eh_frame_section, output_die_symbol): Use
10257 target hook.
10258 * final.c (output_alternate_entry_point): Likewise.
10259 * hooks.c (hook_FILEptr_constcharptr_void): New function.
10260 * hooks.h (hook_FILEptr_constcharptr_void): Declare.
10261 * output.h (assemble_global): Delete.
10262 (default_globalize_label): Declare.
10263 * system.h (ASM_GLOBALIZE_LABEL): Poison.
10264 * target-def.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
10265 (TARGET_ASM_OUT): Add TARGET_ASM_GLOBALIZE_LABEL.
10266 * target.h (gcc_target): Add globalize_label member.
10267 * varasm.c (asm_output_bss, asm_output_aligned_bss,
10268 globalize_decl): Use target hook.
10269 (assemble_global): Delete.
10270 (default_globalize_label): New function.
10271
f8f28a75
KG
102722002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10273
10274 * dsp16xx.h (dsp16xx_umulhi3_libcall): Delete.
10275
92b5aacd
DP
102762002-08-20 Devang Patel <dpatel@apple.com>
10277 * tree.c (get_qualified_type): Add TYPE_CONTEXT check.
8537ed68 10278
761c70aa
KG
102792002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10280
10281 * arc.c (output_shift): Use stdio instead of asm_fprintf.
10282 * arm.c (thumb_output_function_prologue): Likewise.
10283 * avr.c (print_operand): Likewise.
10284 * c4x.c (c4x_print_operand): Likewise.
10285 * c4x.h (ASM_OUTPUT_INTERNAL_LABEL, TRAMPOLINE_TEMPLATE,
10286 ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
10287 * cris.c (cris_target_asm_function_prologue,
10288 cris_asm_output_mi_thunk): Likewise.
10289 * h8300.c (print_operand): Likewise.
10290 * h8300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
10291 * ip2k.c (print_operand): Likewise. Fix format specifier.
10292 * m68hc11.c (asm_print_register, print_operand,
10293 print_operand_address): Use stdio instead of asm_fprintf.
10294 (print_operand_address): Fix format specifier.
10295 * m68hc11.h (FUNCTION_PROFILER, ASM_OUTPUT_ADDR_DIFF_ELT,
10296 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ALIGN): Use stdio instead of
10297 asm_fprintf.
10298 * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
10299 * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
10300 * m68k.c (m68k_output_function_prologue,
10301 m68k_output_function_epilogue, print_operand): Likewise.
10302 * mmix.c (mmix_asm_output_mi_thunk, mmix_asm_weaken_label):
10303 Likewise. Fix format specifier.
10304 * mn10200.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
10305 * mn10300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
10306 * v850.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
10307
5ce6f47b
EC
103082002-08-15 Eric Christopher <echristo@redhat.com>
10309 Jeff Knaggs <jknaggs@redhat.com>
10310
10311 * config.gcc (mipsisa64sr71k-elf): New target.
10312 * config/mips/sr71k.md: New file.
10313 * config/mips/mips.md: Use it.
10314 (rot*): Add sr71k specifics.
10315 * config/mips/t-sr71k: New file.
10316 * config/mips/mips.h (sr71k): New cpu.
10317 (TARGET_SR71K): Use it.
10318 (TUNE_SR71K): Ditto.
10319 (GENERATE_BRANCHLIKELY): Ditto.
10320 (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC,
10321 ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto.
10322 * config/mips/mips.c (sr71k): New cpu.
10323 (mips_use_dfa_pipeline_interface): Use.
10324
103252002-08-15 Eric Christopher <echristo@redhat.com>
8537ed68 10326 Richard Sandiford <rsandifo@redhat.com>
5ce6f47b
EC
10327 Aldy Hernandez <aldyh@redhat.com>
10328 Graham Stott <grahams@redhat.com>
10329 Michael Meissner <meissner@redhat.com>
10330 Gavin Romig-Koch <gavin@redhat.com>
10331 Ken Raeburn <raeburn@cygnus.com>
10332 Alexandre Oliva <aoliva@redhat.com>
10333
10334 * config.gcc (mips64vr-elf): New target.
10335 * config/mips/5400.md: New file.
10336 * config/mips/5500.md: Ditto.
10337 * config/mips/mips.md: Use them.
10338 (frsqrt): New.
10339 * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New
10340 cpus.
10341 (mips_issue_rate): Use them.
10342 (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500.
10343 (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above.
10344 * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New
10345 cpus.
10346 (TARGET_MIPSx): Use them.
10347 (TUNE_MIPSx): Ditto.
10348 (GETNATE_MULT3_SI): Ditto.
10349 (ISA_HAS_BRANCHLIKELY): Ditto.
10350 (ISA_HAS_CONDMOVE): Ditto.
10351 (ISA_HAS_NMADD_NMSUB): Ditto.
10352 (ISA_HAS_MULHI): New. Ditto.
10353 (ISA_HAS_MULS): Ditto.
10354 (ISA_HAS_MSAC): Ditto.
10355 (ISA_HAS_MACC): Ditto.
10356 (ISA_HAS_ROTR_SI): Ditto.
10357 (ISA_HAS_ROTR_DI): Ditto.
10358 (RTX_COSTS): Use.
10359
48209ce5
JDA
103602002-08-20 John David Anglin <dave@hiauly1.hia.nrc.ca>
10361
10362 * cppinit.c (remove_dup_dir): Add head_ptr argument to handle removal
10363 at head.
10364 (remove_dup_nonsys_dirs): New function.
10365 (remove_dup_dirs): Change argument head to head_ptr. Remove warnings.
10366 (merge_include_chains): Remove non-system include directories from
10367 quote and bracket include chains when they duplicate equivalent system
10368 directories.
10369 * doc/cpp.texi (-I): Update.
8537ed68
ZW
10370 * doc/cppopts.texi (-I): Update.
10371 * doc/install.texi (--with-local-prefix): Further document usage of
48209ce5
JDA
10372 this option.
10373 * doc/invoke.texi (-I): Update.
10374
4ca79136
RH
103752002-08-20 Richard Henderson <rth@redhat.com>
10376
10377 * expr.c (TARGET_MEM_FUNCTIONS): Transform to boolean.
10378 (emit_block_move): Split out subroutines.
10379 (emit_block_move_via_movstr): New.
10380 (emit_block_move_via_libcall): New. Emit bcopy via normal call also.
10381 (emit_block_move_libcall_fn): New. Construct function prototype for
10382 bcopy as well.
10383 (clear_storage): Split out subroutines.
10384 (clear_storage_via_clrstr): New.
10385 (clear_storage_via_libcall): New. Emit bzero as a normal call also.
10386 (clear_storage_libcall_fn): New. Construct function prototype for
10387 bzero as well.
10388 (emit_push_insn): Use emit_block_move.
10389 (expand_assignment): Booleanize TARGET_MEM_FUNCTIONS.
10390 (store_constructor): Likewise.
10391
9f05cef3
ZL
103922002-08-19 Ziemowit Laski <zlaski@apple.com>
10393
10394 * objc/objc-act.c (building_objc_message_expr): Rename to
10395 current_objc_message_selector.
10396
1bd5981b
ZL
103972002-08-19 Ziemowit Laski <zlaski@apple.com>
10398
10399 * objc/objc-act.c (build_ivar_chain): Remove.
10400 (objc_copy_list): Likewise.
10401 (get_class_ivars): Inline call to removed build_ivar_chain
10402 function. Save off a clean copy of ivars in the CLASS_OWN_IVARS
10403 slot; use that slot (rather than CLASS_IVARS) when accessing
10404 ivars for base classes. Call copy_list and chainon instead of
10405 objc_copy_list.
10406 (build_private_template): Call get_class_ivars instead of
10407 build_ivar_chain.
10408 (start_class): Allocate room for the CLASS_OWN_IVARS slot.
5ce6f47b 10409 (continue_class): Call get_class_ivars instead of
1bd5981b
ZL
10410 build_ivar_chain.
10411 (encode_field_decl): Check for DECL_BIT_FIELD_TYPE instead
10412 of DECL_BIT_FIELD (which may have been cleared).
10413 * objc/objc-act.h (CLASS_OWN_IVARS): New accessor macro.
10414
2bf087c0
KG
104152002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10416
10417 * genautomata.c (output_translate_vect, output_state_ainsn_table,
10418 output_min_issue_delay_table): Mark variable with ATTRIBUTE_UNUSED
10419 in output file.
10420 (output_internal_min_issue_delay_func): Initialize variable in
10421 output file.
10422
3fcd079e
AO
104232002-08-19 Alexandre Oliva <aoliva@redhat.com>
10424
10425 * Makefile.in (GCC_FOR_TARGET): Prepend STAGE_CC_WRAPPER.
10426 (stage2_build, stage3_build, stage4_build): Likewise, to CC.
10427
71012d97
GK
104282002-08-19 Geoffrey Keating <geoffk@redhat.com>
10429 Steve Ellcey <sje@cup.hp.com>
10430
10431 * machmode.h (SCALAR_INT_MODE_P): New macro to test for
10432 scaler integer mode (MODE_INT or MODE_PARTIAL_INT).
10433 * explow.c (trunc_int_for_mode): Abort when the mode is not
10434 a scaler integer mode.
10435 * combine.c (expand_compound_operation): Don't expand Vector
10436 or Complex modes into shifts.
10437 (expand_field_assignment): Don't do bitwise arithmatic and
10438 shifts on Vector or Complex modes.
10439 (simplify_comparison): Don't call trunc_int_for_mode
10440 for VOIDmode.
10441 * recog.c (general_operand): Likewise.
10442 (immediate_operand): Likewise.
10443 (nonmemory_operand): Likewise.
10444
af8cb5c5
DE
104452002-08-19 David Edelsohn <edelsohn@gnu.org>
10446
10447 * config/rs6000/rs6000.c (rs6000_emit_set_const): Inline
10448 multi-instruction SImode constant. Add REG_EQUAL note.
10449 * config/rs6000/rs6000.md (movsi splitter): Use
5ce6f47b 10450 rs6000_emit_set_const.
af8cb5c5 10451
9bc146b3
KG
104522002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10453
10454 * tree-inline.c (initialize_inlined_parameters): Wrap variable in
10455 the macro test controlling its use.
10456
66df2ac2
L
104572002-08-18 H.J. Lu (hjl@gnu.org)
10458
10459 * config.gcc (*-*-linux*): Set extra_parts="crtbegin.o
10460 crtbeginS.o crtbeginT.o crtend.o crtendS.o", gas=yes and
10461 gnu_ld=yes.
10462 (alpha*-*-linux*, cris-*-linux*, i370-*-linux*,
10463 i[34567]86-*-linux*, x86_64-*-linux*, mips*-*-linux*,
10464 s390-*-linux*, s390x-*-linux*, sparc-*-linux*, sparc64-*-linux*,
10465 xtensa-*-linux*): Remove setting extra_parts, gas, and gnu_ld
10466 here.
10467 (cris-*-linux*): Remove setting thread_file here.
10468
463f1b2b
NB
104692002-08-18 Neil Booth <neil@daikokuya.co.uk>
10470
10471 PR preprocessor/7602
10472 * cppinit.c (path_include): Treat the system environment
10473 variables as being cxx_aware.
10474
2984fe64
JM
104752002-08-17 Joseph S. Myers <jsm@polyomino.org.uk>
10476
10477 * c-decl.c (flexible_array_type_p): New function.
10478 (grokdeclarator, finish_struct): Use it.
10479 * doc/extend.texi: Document constraints on use of structures with
10480 flexible array members.
10481
fded6d78
RS
104822002-08-17 Richard Sandiford <rsandifo@redhat.com>
10483
10484 * config/mips/t-coff, config/mips/t-elf, config/mips/t-isa3264,
10485 config/mips/t-r3900 (MULTILIB_MATCHES): Define.
10486 * config/mips/mips.h (ASM_SPEC): Use %(endian_spec).
10487
8aa5074e
SS
104882002-08-16 Stan Shebs <shebs@apple.com>
10489
10490 * c-common.c (cb_register_builds): Define __NEXT_RUNTIME__
10491 for ObjC with -fnext-runtime.
10492 * doc/cpp.texi: Document it.
10493
f97a5bda
JJ
104942002-08-16 Janis Johnson <janis187@us.ibm.com>
10495
10496 * doc/install.texi (Final installation): Replace links to individual
10497 build status pages with a link to a common page that lists them all.
10498
d3075b6c
SP
104992002-08-16 Sylvain Pion <pion@cs.nyu.edu>
10500
10501 * doc/invoke.texi: Fix typo.
10502
fdf68669
DE
105032002-08-16 David Edelsohn <edelsohn@gnu.org>
10504
10505 * doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.
10506
105072002-08-16 Andrew Haley <aph@redhat.com>
d436bff8
AH
10508
10509 * tree-inline.c: Add includes for Java inliner.
10510 (remap_decl): Don't handle anonymous types for Java.
10511 (remap_block): Add handling for Java trees.
10512 (copy_scope_stmt): Conditionalize for non-Java use only.
10513 (copy_body_r): Handle Java trees. Add handling for
10514 LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, Java blocks.
10515 (initialize_inlined_parameters): Handle Java trees.
10516 (declare_return_variable): Likewise.
10517 (expand_call_inline): Handle Java trees.
10518 (walk_tree): Likewise.
10519 (copy_tree_r): Don't handle SCOPE_STMTs for Java.
10520 (add_stmt_to_compound): New function.
10521
204250d2
RH
105222002-08-15 Richard Henderson <rth@redhat.com>
10523
10524 * Makefile.in (LOOSE_WARN): Remove -fno-common.
10525 (NOCOMMON_FLAG): New substitution point.
10526 (GCC_WARN_CFLAGS): Include it.
10527 * configure.in (ac_checking): Set nocommon_flag.
10528 (nocommon_flag): New substitution point.
10529
25587e40
AO
105302002-08-15 Alexandre Oliva <aoliva@redhat.com>
10531
10532 * c-tree.h (skip_evaluation): Move declaration...
10533 * c-common.h: ... here.
10534 * c-typeck.c (build_external_ref): Don't assemble_external nor
10535 mark a tree as used if skip_evaluation is set.
10536 * c-parse.in (typeof): New non-terminal to set skip_evaluation
10537 around TYPEOF.
10538 (typespec_nonreserved_nonattr): Use it.
10539
702ada3d
DR
105402002-08-15 Douglas B Rupp <rupp@gnat.com>
10541
10542 * dbxout.c (dbx_debug_hooks): Update end_prologue, end_epilogue.
10543 (xcoff_debug_hooks): Update end_prologue.
10544 * debug.c (do_nothing_debug_hooks): Update end_prologue, end_epilogue.
10545 * debug.h (end_prologue): Add file arg.
10546 (end_epilogue): Add line and file args.
10547 (dwarf2out_end_epilogue): Add line and file args.
10548 (vmsdbgout_after_prologue): Remove.
10549 * dwarf2out.c (dwarf2out_end_epilogue): Add line and file args.
10550 (dwarf2_debug_hooks): Update end_prologue.
10551 * dwarfout.c (dwarfout_end_epilogue): Add line and file args.
10552 (dwarfout_end_prologue): Add file arg.
10553 * final.c (vmsdbgout_after_prologue): Remove
10554 (final_end_function): Update end_epilogue call.
10555 (final_scan_insn): Update end_prologue call.
10556 * sdbout.c (sdbout_end_epilogue): Add line and file args.
10557 (sdbout_end_prologue): Add file arg.
10558 (sdb_debug_hooks): Update end_prologue.
10559 (sdb_begin_prologue): Update sdbout_end_prologue call.
10560 * vmsdbgout.c (vmsdbg_debug_hooks): Add vmsdbgout_end_prologue,
10561 vmsdbgout_end_function.
10562 (vmsdbgout_end_prologue): New function renamed from
10563 vmsdbgout_after_prologue. Call vmsdbgout_source_line.
10564 (vmsdbgout_end_function): New function.
10565 (vmsdbgout_end_epilogue): Add line and file args. Call
10566 vmsdbgout_source_line.
10567 (write_pclines): Write only valid line numbers.
10568 (write_srccorr): Don't write source correlation records if 0 lines.
10569 * xcoffout.c (xcoffout_end_epilogue): Add line and file args.
10570
9ef30f83
SE
105712002-08-15 Steve Ellcey <sje@cup.hp.com>
10572
10573 * gcc/unwind.h (_Unwind_Ptr): Make 64 bits on IA64 HP-UX.
10574 (_Unwind_Internal_Ptr): 32 bit version for use in
10575 read_encoded_value_with_base.
10576 * gcc/unwind-pe.h (read_encoded_value_with_base): Use
10577 _Unwind_Internal_Ptr instead of _Unwind_Ptr in order to get the
10578 right size.
10579
f7043461
KG
105802002-08-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10581
10582 * loop.c (scan_loop, move_movables, count_one_set): Cast to avoid
10583 signed/unsigned warnings.
10584
10585 * regclass.c (init_reg_sets_1, choose_hard_reg_mode,
10586 record_reg_classes): Likewise.
10587
10588 * reload.c (reload_inner_reg_of_subreg, push_reload,
10589 find_reloads_address_1): Likewise.
10590
b4d330e1
DE
105912002-08-15 David Edelsohn <edelsohn@gnu.org>
10592
10593 * rs6000.c (output_mi_thunk): Return to function section on
10594 TARGET_ELF.
10595
10596 * rs6000-c.c (rs6000_cpu_cpp_builtins): Define __PPC405__ if PPC405.
10597
61f02ff5
UW
105982002-08-15 Ulrich Weigand <uweigand@de.ibm.com>
10599
10600 * config/s390/s390.c (legitimize_address): Optimize loading
10601 of large displacements.
10602
1330f7d5
DR
106032002-08-14 Douglas B Rupp <rupp@gnat.com>
10604
10605 * config/alpha/alpha-protos.h: Update.
10606
10607 * config/alpha/alpha.c: (LINKAGE_SYMBOL_REF_P): New macro.
10608 (alpha_legitimate_address_p): Test LINKAGE_SYMBOL_REF_P.
10609 (alpha_linkage_symbol_p): New static function.
10610 (print_operand_address): Print linkage operand.
10611
10612 (alpha_funcs_num, alpha_funcs_tree, alpha_links_tree): New static
10613 variables.
10614 (reloc_kind): New enum.
10615 (struct alpha_funcs): New struct.
10616 (struct alpha_links): Add reloc_kind field. Rename links_kind field.
10617
10618 (alpha_need_linkage): Rewrite.
10619 (alpha_use_linkage): New global function.
10620 (alpha_write_linkage): Rewrite and make static.
10621 (alpha_write_one_linkage): Rewrite
10622
10623 (alpha_start_function): Remove procedure descriptor output.
10624 (alpha_end_function): Write linkages at end of each function.
10625
10626 * config/alpha/alpha.md (call_vms, call_value_vms): Rewrite.
10627 (call_vms_1, call_value_vms_1): Rewrite.
10628
10629 * config/alpha/vms.h (ASM_FILE_END): Remove.
10630
d1f1cc6a
RH
106312002-08-14 Richard Henderson <rth@redhat.com>
10632
10633 * ggc-page.c (RTL_SIZE): New.
10634 (extra_order_size_table): Add specializations for 2 and 10 rtl slots.
10635 * rtl.def (BARRIER, NOTE): Pad to 9 slots.
10636
23626154
RH
106372002-08-14 Richard Henderson <rth@redhat.com>
10638
10639 * calls.c: Include target.h.
10640 * Makefile.in (calls.o): Update.
10641
10642 * config/alpha/alpha.c (alpha_end_function): Use targetm.binds_local_p.
10643 * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Likewise.
10644
fd350d24
RH
106452002-08-14 Richard Henderson <rth@redhat.com>
10646
10647 * Makefile.in (LOOSE_WARN): Add -fno-common.
10648 * c-common.h (constant_string_class_name): Add missing extern.
10649
182d89a3
NB
106502002-08-15 Neil Booth <neil@daikokuya.co.uk>
10651
10652 PR preprocessor/7358
10653 * c-opts.c (check_deps_environment_vars): Ignore main file
10654 for SUNPRO_DEPENDENCIES.
10655 * cppfiles.c (stack_include_file): Ignore main file if
10656 appropriate.
10657 * cpplib.h (struct cpp_options): New member in deps.
10658 * doc/cppenv.texi: Update.
10659
8bfb1467
NB
106602002-08-14 Neil Booth <neil@daikokuya.co.uk>
10661
10662 PR preprocessor/7526
10663 * cpplib.c (run_directive): Kludge so _Pragma dependency works.
10664
41685063
NS
106652002-08-14 Nathan Sidwell <nathan@codesourcery.com>
10666
10667 * doc/invoke.texi (-a): Remove documentation.
10668 (-fprofile-arcs): Remove reference to -a, -ax options.
10669 * doc/gcov.texi (Gcov Data Files): Data might be merged.
10670
77893a23
GDR
106712002-08-14 Gabriel Dos Reis <gdr@nerim.net>
10672
10673 Fix PR/7566
10674 * c-semantics.c (genrtl_case_label): Don't (mis)use
5ce6f47b 10675 warning_with_decl.
77893a23 10676
260f91c2
DJ
106772002-08-14 Dale Johannesen <dalej@apple.com>
10678
8537ed68 10679 * explow.c (emit_stack_restore): Emit memory clobbers
260f91c2
DJ
10680 preceding the stack pop, to prevent the scheduler from
10681 moving refs to variable arrays below this pop.
10682 * reload1.c (reload): Preserve these clobbers for sched2.
10683 * doc/rtl.texi: Document clobber (mem:BLK (scratch)).
10684
cd79e210
NB
106852002-08-14 Neil Booth <neil@daikokuya.co.uk>
10686
10687 * c-opts.c (c_common_post_options): Correct test.
10688
3eb75a73
KG
106892002-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10690
10691 * m88k.h (ASM_OUTPUT_SOURCE_FILENAME): Fix incorrect argument
10692 order in call to fprintf.
10693
be3a0ce2
RO
106942002-08-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
10695
10696 * config/sparc/sol2.h (SUBTARGET_EXTRA_SPECS): Define.
10697
ccfc6cc8
UW
106982002-08-14 Ulrich Weigand <uweigand@de.ibm.com>
10699
5ce6f47b 10700 * reload.c (find_reloads): Handle constraint letters marked by
ccfc6cc8
UW
10701 EXTRA_ADDRESS_CONSTRAINT and EXTRA_MEMORY_CONSTRAINT.
10702 (alternative_allows_memconst): Likewise.
10703 * reload1.c (maybe_fix_stack_asms): Likewise.
5ce6f47b 10704 * recog.c (asm_operand_ok, preprocess_constraints,
ccfc6cc8
UW
10705 constrain_operands): Likewise.
10706 * regclass.c (record_operand_costs, record_reg_classes): Likewise.
10707 * local-alloc.c (block_alloc, requires_inout): Likewise.
10708 * stmt.c (parse_output_constraint, parse_input_constraint): Likewise.
10709
10710 * defaults.h (EXTRA_MEMORY_CONSTRAINT): Provide a default.
10711 (EXTRA_ADDRESS_CONSTRAINT): Likewise.
10712 * doc/tm.texi: Document these two new target macros.
10713
10714 * config/s390/s390.c (s390_expand_plus_operand): Accept already
10715 valid operands.
10716 (q_constraint): New function.
10717 config/s390/s390-protos.h (q_constraint): Declare it.
10718 config/s390/s390.h (EXTRA_CONSTRAINT): Use it.
10719 (EXTRA_MEMORY_CONSTRAINT): New macro.
10720
10721 * config/s390/s390.md: Throughout the machine description,
10722 replace all instances of the constraint combinations 'Qo'
10723 or 'oQ' with simply 'Q'.
10724
d6ee9f6f
SC
107252002-08-14 Stephane Carrez <stcarrez@nerim.fr>
10726
10727 * config/m68hc11/m68hc11.h (LINK_SPEC): Support -mrelax.
10728 * config/m68hc11/t-m68hc11-gas (LIBGCC2_DEBUG_CFLAGS): Can use -g now.
10729 (LIBGCC2_CFLAGS): Compile with -mrelax.
10730
8a0b86f5
SC
107312002-08-14 Stephane Carrez <stcarrez@nerim.fr>
10732
10733 * doc/invoke.texi: Document -minmax for 68HC12.
10734
10735 * config/m68hc11/m68hc11.md ("umaxqi3"): Use TARGET_MIN_MAX.
10736 ("uminqi3"): Likewise.
10737 ("uminhi3", "umaxhi3"): Likewise.
10738
10739 * config/m68hc11/m68hc11.h (MASK_MIN_MAX): Define.
10740 (TARGET_MIN_MAX): Define.
10741 (TARGET_SWITCHES): New option -minmax/-mnominmax.
10742
d6381f4e
SC
107432002-08-14 Stephane Carrez <stcarrez@nerim.fr>
10744
10745 * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build __far_trampoline.
10746 (MULTILIB_OPTIONS): Must also generate for -mlong-calls.
10747
10748 * config/m68hc11/larith.asm: Put a mode for ELF ABI flags.
10749 (ret, declare, farsym): New gas macros.
10750 (__premain, exit, abort, _cleanup, memcpy, memset, ___adddi3,
10751 ___subdi3, ___notdi2, __mulhi32, __mulsi3): Use them to use 'rtc'
10752 and declare the symbol far when compiled with -mlong-calls.
5ce6f47b 10753 (__far_trampoline): New for 68HC12 trampoline code to invoke a
d6381f4e
SC
10754 far handler using jsr/bsr.
10755
10756 * config/m68hc11/m68hc11-crt0.S: Put a mode for ELF ABI flags.
10757 (jsr): New macro to transform a 'jsr' into a 'call'.
10758
058edcdb
SC
107592002-08-14 Stephane Carrez <stcarrez@nerim.fr>
10760
10761 * doc/invoke.texi: Document -mlong-calls for 68HC12.
10762
10763 * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__USE_RTC__ when
10764 -mlong-calls is specified.
5ce6f47b 10765 (ASM_DECLARE_FUNCTION_NAME): Define to generate .far and .interrupt
058edcdb
SC
10766 assembler directives.
10767 (TARGET_LONG_CALL, MASK_LONG_CALL): Declare.
10768 (TARGET_SWITCHES): Add -mlong-calls options.
10769 (current_function_far): Declare.
10770
10771 * config/m68hc11/m68hc11.c (m68hc11_initial_elimination_offset): Take
10772 into account the page register saved on the stack.
10773 (m68hc11_override_options): Take into account -mlong-calls option.
10774 (m68hc11_asm_file_start): Put a mode for the ELF flags ABI.
10775
10776 * config/m68hc11/m68hc11.md ("*return_32bit"): Return rtc
10777 if the function is going to be in 68HC12 banked memory (-mlong-calls).
10778 ("*return_16bit"): Likewise.
10779 ("*return_void"): Likewise.
10780 ("call", "call_value"): Use call for a far function call.
10781
c79043f3
NB
107822002-08-14 Neil Booth <neil@daikokuya.co.uk>
10783
10784 * toplev.c (parse_options_and_default_flags): Don't call
10785 post_options here.
10786 (general_init): Initialize GC, pools and tree hash here,
10787 instead of lang_independent_init.
10788 (lang_independent_init): Rename backend_init.
10789 (do_compile): Call post_options hook; exit early if there
10790 have been errors after switch processing.
10791 (toplev_main): Update.
10792
6bf346d4
GDR
107932002-08-14 Gabriel Dos Reis <gdr@nerim.net>
10794
10795 * c-pretty-print.h: Guard against multiple inclusion.
10796 Robustify macros.
10797 (pp_c_attributes): Declare.
10798 * c-pretty-print.c (pp_c_attributes): New function.
10799
cbf2f479
KG
108002002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10801
10802 * m68k.c (m68k_output_function_prologue,
10803 m68k_output_function_epilogue): Delete versions for DPX2/MOTOROLA
10804 and NEWS/MOTOROLA.
10805 * genattrtab.c: Remove dpx2 comment.
10806 * libgcc2.c (__enable_execute_stack): Delete versions for
10807 NeXT/__MACH__, __convex__, __sysV88__, __pyr__ and
10808 sony_news/SYSTYPE_BSD.
10809 * longlong.h: Delete code for __a29k__, _AM29K, __clipper__,
10810 __gmicro__, __i860__, __NeXT__ and __pyr__.
10811 * rtl.h: Remove convex comment.
10812 * varasm.c: Likewise.
10813
d3969c34
KG
108142002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10815
10816 * c-opts.c (lang_flags): Const-ify.
10817 * ra-build.c (undef_table): Likewise.
10818 * ra.c (eliminables): Likewise.
10819
df89f8e7
GDR
108202002-08-14 Gabriel Dos Reis <gdr@nerim.net>
10821
10822 * tree.h: Guard against multiple inclusion.
10823
cf87d551
HPN
108242002-08-14 Hans-Peter Nilsson <hp@bitrange.com>
10825
10826 * reload1.c (reload_cse_simplify): Before checking
10827 REG_FUNCTION_VALUE_P, check REG_P.
10828
a43c8986
GK
108292002-08-13 Geoffrey Keating <geoffk@redhat.com>
10830
10831 * Makefile.in (attribs.o): Remove $(OBSTACK_H) dependency.
10832
29337351
NB
108332002-08-13 Neil Booth <neil@daikokuya.co.uk>
10834
10835 * c-opts.c (c_common_init_options): Extra braces needed.
10836
8202c8c4
R
10837Tue Aug 13 17:40:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
10838
10839 * sh.c (sh_init_builtins): Add PARAMS to declaration.
10840 (sh_media_init_builtins, sh_expand_builtin): Likewise.
10841 (sh_expand_unop_v2sf): Use PARAMS for variable declaration.
10842 (sh_expand_binop_v2sf): Likewise.
10843 * sh-protos.h (sh_expand_unop_v2sf): Add PARAMS to declaration.
10844 (sh_expand_binop_v2sf, sh_cfun_interrupt_handler_p): Likewise.
10845 (sh_initialize_trampoline): Likewise.
10846
07893d4f
UW
108472002-08-13 Ulrich Weigand <uweigand@de.ibm.com>
10848
10849 * s390-modes.def [CCL1, CCL2, CCT1, CCT2, CCT3, CCUR, CCSR]: Declare
10850 new condition code modes.
10851 s390.c (s390_match_ccmode_set): Handle those new CC modes.
10852 (s390_select_ccmode): Likewise.
10853 (s390_branch_condition_mask): Likewise.
10854
10855 * s390-protos.h (s390_tm_ccmode): Declare.
10856 s390.c (s390_tm_ccmode): New function.
10857 (s390_match_ccmode): Allow VOIDmode as REQ_MODE.
10858
10859 * s390.md ("*cmpdi_tm2"): Rename to "*tmdi_ext".
10860 ("*cmpsi_tm2"): Rename to "*tmsi_ext".
10861 ("*cmpqi_tm2"): Rename to "*tmqi_ext".
10862
10863 ("*cmpdi_tm_reg", "*cmpdi_tm_mem", "*cmpsi_tm_reg", "*cmpsi_tm_mem",
10864 "*cmphi_tm_sub","*cmphi_cct_0", "*cmpqi_tm", "*cmpqi_tm_sub",
10865 "*cmpqi_cct_0", "*tm_0"): Remove, replace by ...
10866 ("*tmdi_reg", "*tmsi_reg", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem",
10867 "*tmqi_mem", "*tmhi_full", "*tmqi_full"): ... these new patterns.
10868
10869 ("*ltgr", "*cmpdi_ccs_0_64", "*cmpdi_ccs_0_31", "*ltr", "*icm15",
5ce6f47b 10870 "*icm15_cconly", "*cmpsi_ccs_0", "*icm3", "*cmphi_ccs_0", "*icm1",
07893d4f
UW
10871 "*cmpqi_ccs_0"): Remove, replace by ...
10872 ("*tstdi_sign", "*tstdi", "*tstdi_cconly", "*tstdi_cconly_31",
5ce6f47b 10873 "*tstsi", "*tstsi_cconly", "*tstsi_cconly2", "*tsthi", "*tsthi_cconly",
07893d4f
UW
10874 "*tstqi", "*tstqi_cconly"): ... these new patterns.
10875
10876 ("*cmpsidi_ccs"): Remove, replace by ...
10877 ("*cmpsi_ccs_sign"): ... this new pattern.
10878 ("*cmpdi_ccs_sign", "*cmpdi_ccu_zero"): New patterns.
10879
10880 ("*cmpqi_ccu_0", "*cmpqi_ccu_immed"): Remove, replace by ...
10881 ("*cli"): ... this new pattern.
10882
10883 ("*adddi3_sign", "*adddi3_zero_cc", "*adddi3_zero_cconly",
10884 "*adddi3_zero", "*adddi3_cc", "*adddi3_cconly", "*adddi3_cconly2"):
10885 New patterns.
10886 ("adddi3_64"): Rename to "*adddi3_64".
10887 ("adddi3_31"): Replace by insn and splitter "*adddi3_31".
10888 ("adddi3"): Adapt expander.
10889
10890 ("*addsi3_cc"): Allow "general_operand" for operand 2.
5ce6f47b 10891 ("*addsi3_carry1_cc", "*addsi3_carry1_cconly",
07893d4f
UW
10892 "*addsi3_carry2_cc", "*addsi3_carry2_cconly"): New patterns.
10893
10894 ("addhi3", "addqi3"): Remove, replace by ...
10895 ("*addsi3_sign", "*addsi3_sub"): ... these new patterns.
10896
10897 ("*subdi3_sign", "*subdi3_zero_cc", "*subdi3_zero_cconly",
10898 "*subdi3_zero", "*subdi3_cc", "*subdi3_cconly"): New patterns.
10899 ("subdi3"): Replace by insn and splitter "*subdi3_31".
10900 ("subdi3"): New expander.
10901
10902 ("*subsi3_borrow_cc", "*subsi3_borrow_cconly"): New patterns.
10903
10904 ("subhi3", "subqi3"): Remove, replace by ...
10905 ("*subsi3_sign", "*subsi3_sub"): ... these new patterns.
10906
10907 ("*muldi3_sign"): New pattern.
10908 ("muldi3"): Do not clobber CC.
10909 ("mulsi3"): Likewise.
10910 ("mulsi_6432"): Likewise.
10911
db62867b
DC
109122002-08-13 Denis Chertykov <denisc@overta.ru>
10913
10914 * config/avr/avr.md: Call CC_STATUS_INIT in all peepnoles
8537ed68 10915 which can change CC0.
db62867b 10916
8ba46434
R
10917Tue Aug 13 14:49:20 2002 J"orn Rennecke <joern.rennecke@superh.com>
10918
10919 * gcse.c (adjust_libcall_notes): New function.
10920 (do_local_cprop): Use it. Add fourth parameter. Changed caller.
10921
8733892f
NS
109222002-08-13 Nathan Sidwell <nathan@codesourcery.com>
10923
10924 * libgcc2.c (L_bb): Remove unneeded #includes.
10925 (__global_counters, __gthreads_active): Remove unused globals.
10926 (__bb_exit_func): Merge counts into files rather than appending.
10927 * Makefile.in (INTERNAL_CFLAGS): Move COVERAGE_FLAGS from here ...
10928 (ALL_CFLAGS): ... to here.
10929
f4769721
DC
109302002-08-13 Denis Chertykov <denisc@overta.ru>
10931
10932 * config/ip2k/ip2k.c (commands_in_file): Variable removed.
10933 (function_epilogue): Don't calculate function size.
10934 (ip2k_set_compare): Don't use lookup_const_double.
10935 (asm_file_start): Initialization of commands_in_file removed.
10936 (asm_file_end): Output of commands_in_file removed.
5ce6f47b 10937
f4769721
DC
10938 * config/ip2k/ip2k.c (CPP_PREDEFINES): Remove definition of
10939 __INT_MAX__.
10940
c31cddfd
NB
109412002-08-13 Neil Booth <neil@daikokuya.co.uk>
10942
10943 * c-opts.c (c_common_init_options): Check option array is
10944 sorted if checking enabled.
10945
f076f0ce
GDR
109462002-08-13 Gabriel Dos Reis <gdr@nerim.net>
10947
10948 * c-pretty-print.c: #include "c-tree.h".
10949 (pp_c_simple_type_specifier): Tweak.
10950 (pp_c_storage_class_specifier): New.
10951 (pp_c_function_specifier): Likewise.
10952 (pp_c_declaration_specifiers): Likewise.
10953 (pp_c_init_declarator): Likewise.
10954 (pp_c_declaration): Likewise.
10955 (pp_c_direct_declarator): Stub.
10956 (pp_c_declarator): Likewise.
10957 (pp_c_parameter_declaration): Likewise.
10958
f4ff5a69
NB
109592002-08-13 Neil Booth <neil@daikokuya.co.uk>
10960
10961 * c-opts.c (deps_seen, deps_file, deferred_count, deferred_size,
10962 handle_deferred_opts, sanitize_cpp_opts, defer_opt,
10963 struct deferred_opt): New.
10964 (COMMAND_LINE_OPTIONS): Add -M*.
10965 (missing_arg): Update.
10966 (c_common_decode_option): Handle -M*.
10967 (c_common_post_options): Handle -M*. Use sanitize_cpp_opts;
10968 don't call cpp_post_options.
10969 (c_common_finish, check_deps_environment_vars): Update.
10970 * cppfiles.c (stack_include_file, handle_missing_header): Update.
10971 * cpphash.h (CPP_PRINT_DEPS): Remove.
10972 * cppinit.c: Don't include version.h.
10973 (cpp_create_reader): Don't call deps_init. Initialize
10974 warn_long_long.
10975 (cpp_read_main_file): Init deps if necessary.
10976 (cpp_destroy): Conditionally free deps.
10977 (cpp_finish): Update.
10978 (no_tgt): Remove.
10979 (COMMAND_LINE_OPTIONS, cpp_handle_option): Remove -M*.
10980 (cpp_post_options): Rename post_options.
10981 * cpplib.h (struct cpp_options): Remove some dependency options;
10982 move others to a new structure.
10983 (cpp_post_options): Remove.
10984 (cpp_finish): Comment.
10985 * fix-header.c (read_scan_file): Don't call cpp_post_options.
10986
34116c2a
HPN
109872002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
10988
10989 * config/mmix/mmix.md (define_constants): Add MMIX_rR_REGNUM.
10990 ("divdi3", "*divdi3_nonknuth", "moddi3", "*moddi3_nonknuth"): Mark
10991 MMIX_rR_REGNUM as clobbered.
10992 * config/mmix/mmix.h (MMIX_REMAINDER_REGNUM): Use MMIX_rR_REGNUM.
10993
9b32718c
GDR
109942002-08-12 Gabriel Dos Reis <gdr@nerim.net>
10995
10996 * diagnostic.h (output_formatted_scalar): Rename from
5ce6f47b 10997 output_formatted_integer.
9b32718c
GDR
10998 * diagnostic.def: Add DK_DEBUG.
10999 * diagnostic.c (output_decimal): Adjust.
11000 (output_long_decimal): Likewise.
11001 (output_unsigned_decimal): Likewise.
11002 (output_octal): Likewise.
11003 (output_long_octal): Likewise.
11004 (output_hexadecimal): Likewise.
11005 (output_long_hexadecimal): Likewise.
11006 * c-pretty-print.c (pp_c_type_specifier): New function.
11007 (pp_c_specifier_qualifier_list): Likewise.
11008 (pp_c_abstract_declarator): Likewise.
11009 (pp_c_char): Replace pp_format_integer with pp_format_scalar.
11010
032613df
DE
110112002-08-12 David Edelsohn <edelsohn@gnu.org>
11012
11013 * doc/trouble.texi (Disappointments): Add static constructor and
11014 destructor dependency information for AIX.
11015
a3737481
NB
110162002-08-12 Neil Booth <neil@daikokuya.co.uk>
11017
11018 * cpphash.h (struct printer): New from cppmain.c.
11019 (cpp_reader): New member.
11020 * cppmain.c (struct printer): Move to cpphash.h.
11021 (options, print): Remove.
11022 (account_for_newlines, print_line, maybe_print_line,
11023 cpp_preprocess_file, setup_callbacks, scan_translation_unit,
11024 scan_translation_unit_trad, cb_line_change, cb_ident,
11025 cb_define, cb_undef, cb_include, cb_file_change, dump_macro,
11026 cb_def_pragma): Make reentrant.
11027
d71f7700
KG
110282002-08-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11029
11030 * real.c (ieee_64): Always define.
11031 (ieee_113): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
11032 (dec_h): Not used yet, hide it.
11033 (emdnorm): Mark parameter in ATTRIBUTE_UNUSED. Guard label with
11034 macro controlling use.
11035 (TFbignan, TFlittlenan): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
11036
c16576e6
JH
11037Mon Aug 12 12:48:20 CEST 2002 Jan Hubicka <jh@suse.cz>
11038
11039 * i386.md (tablejump): Sign extend the operand.
11040 * i386.c (classify_argument): Fix missed case from previous patch.
11041
460bd0e3
NB
110422002-08-12 Neil Booth <neil@daikokuya.co.uk>
11043
11044 * c-common.c (STDC_0_IN_SYSTEM_HEADERS, c_common_init): Move
11045 to c-copts.c.
11046 (warn_multichar): Die.
11047 (cb_register_builtins): Export.
11048 * c-common.h (warn_multichar, preprocess_file): Remove.
11049 (cb_register_builtins): New.
11050 * c-lang.c (c_init): Remove.
11051 (LANG_HOOKS_INIT): Use c_objc_common_init.
11052 * c-lex.c (init_c_lex): Don't canonicalize filename.
11053 * c-opts.c (in_fname, STDC_0_IN_SYSTEM_HEADERS): New.
11054 (preprocess_file): Make static. Update for cpplib.
11055 (c_common_decode_option): Remove warn_multichar. Use in_fname.
11056 (c_common_post_options): Set some cpp options here.
11057 (c_common_init): Move from c-common.c.
11058 * cppinit.c (cpp_post_options): Don't canonicalize in_fname.
11059 * cpplib.h (struct cpp_options): Remove in_fname.
11060 (cpp_preprocess_file): Update.
11061 * cppmain.c (cpp_preprocess_file): Update for new prototypes.
11062
f3f268dd
KG
110632002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11064
11065 * config.gcc (mips*-*-netbsd*): Include ${tm_file}.
11066
f0201fba
KG
110672002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11068
11069 * i370.h (TARGET_CPU_CPP_BUILTINS): Remove spurious trailing
11070 backslash in comment preceeding macro definition.
11071 * i370/linux.h (TARGET_OS_CPP_BUILTINS): Likewise.
11072 * i370/mvs.h (TARGET_OS_CPP_BUILTINS): Likewise.
11073 * i370/oe.h (TARGET_OS_CPP_BUILTINS): Likewise.
11074
e56fc090
HPN
110752002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
11076
11077 * expr.c (store_expr): In condition for checking if value is
11078 generated in TARGET, move call to expr_size last.
11079
76c3e73e
NB
110802002-08-11 Neil Booth <neil@daikokuya.co.uk>
11081
11082 * c-common.c (c_common_init): Call preprocess_file instead.
11083 (c_common_finish): Move to c-opts.c.
11084 * c-common.h (preprocess_file): new.
11085 * c-opts.c (out_fname, out_stream, deps_append, preprocess_file,
11086 check_deps_environment_vars, c_common_finish): New.
11087 (c_common_decode_option): Update for out_fname and dependencies.
11088 * cppinit.c (init_dependency_output, output_deps): Remove.
11089 (cpp_destroy): Update prototype.
11090 (cpp_add_dependency_target): New.
11091 (cpp_read_main_file): Don't overlay a buffer.
11092 (cpp_finish): Take a deps output stream and write deps to it.
11093 Return the error count.
11094 (cpp_post_options): Don't canonicalize out_fname, or do anything
11095 with dependencies.
11096 * cpplib.h (struct cpp_options): Remove out_fname and
11097 preprocess_only.
11098 (cpp_add_dependency_target): New.
11099 (cpp_destroy, cpp_finish, cpp_preprocess_file): Update.
11100 * cppmain.c (cpp_preprocess_file): Update prototype. Don't
11101 set preprocess_only. Don't handle the output stream directly.
11102
e0c32c62
KG
111032002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11104
11105 * dsp16xx.c (print_operand): Fix format specifier.
11106 * dsp16xx.md: Avoid automatic aggregate initialization.
11107 * frv.h (REG_CLASS_FROM_LETTER): Avoid char as array index.
11108 * h8300.c (emit_a_rotate, h8300_adjust_insn_length): Avoid U
11109 integer constant modifier.
11110 * ip2k.c (ip2k_set_compare): Avoid signed/unsigned warning.
11111 * mmix-protos.h (mmix_use_simple_return): Move outside TREE_CODE
11112 guards.
11113 * sh/netbsd-elf.h (FUNCTION_PROFILER): Fix format specifier.
11114 * v850.c (v850_select_section): Mark parameter with
11115 ATTRIBUTE_UNUSED.
11116 * global.c (global_alloc): Const-ify.
11117 * ra-colorize.c (hardregset_to_string): Fix format specifier.
11118
7ae8cf75
KG
111192002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11120
11121 * darwin-c.c (darwin_pragma_options): Const-ify.
11122 * darwin.c (machopic_non_lazy_ptr_name,
11123 machopic_validate_stub_or_non_lazy_ptr): Likewise.
11124 (machopic_indirect_data_reference): Wrap variables in macros
11125 controlling their use.
11126 (machopic_finish, update_non_lazy_ptrs, update_stubs): Const-ify.
11127 (machopic_select_section): Use parentheses around && within ||.
11128 * i386/darwin.h (ASM_OUTPUT_ALIGN): Avoid ambiguous-else.
11129
8819cab5
KG
111302002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11131
11132 * ip2k.c (mdr_resequence_xy_yx, mdr_propagate_reg_equivs,
11133 mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
11134 ip2k_adjust_stack_ref, mdr_try_move_pushes, mdr_try_propagate_clr,
11135 ip2k_xexp_not_uses_reg_for_mem, mdr_try_propagate_move,
11136 mdr_try_remove_redundant_insns, track_w_reload,
11137 mdr_try_wreg_elim): Make function static to match prototype.
11138 * mmix.c (mmix_target_asm_function_epilogue): Likewise. Mark
11139 parameter with ATTRIBUTE_UNUSED.
11140
ab2877a3
KG
111412002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11142
11143 * arc.c (arc_init): Don't use ISO C style function definitions.
11144 * arm.c (count_insns_for_constant, thumb_far_jump_used_p,
11145 arm_get_strip_length, arm_strip_name_encoding): Likewise.
11146 * avr.h (progmem_section): Likewise.
11147 * h8300.c h8300_asm_insn_count): Likewise.
11148 * m32r.c (init_idents): Likewise.
11149 * s390.c (s390_split_branches, s390_chunkify_pool): Likewise.
11150 * sh.c (sh_cfun_interrupt_handler_p): Likewise.
11151 * xtensa.c (xtensa_build_va_list): Likewise.
11152
08767a6f
NB
111532002-08-11 Neil Booth <neil@daikokuya.co.uk>
11154
11155 * c-common.h (enum c_language_kind): Emphasize that clk_c is 0.
11156 * c-opts.c (parse_option): Rename find_opt.
11157 (set_std_c99): New function.
11158 (COMMAND_LINE_OPTIONS): Handle -remap and -o. Remove OPT_std_bad.
11159 (missing_arg): Remove OPT_std_bad. Handle -o.
11160 (c_common_decode_option): Handle input and output file names,
11161 -o and -remap. Clean up -std= handling.
11162 * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_o and OPT_remap.
11163 (cpp_handle_option): Similarly. Don't handle filenames.
11164
db01f480
JH
11165Sun Aug 11 14:43:17 CEST 2002 Jan Hubicka <jh@suse.cz>
11166
11167 * i386.c (classify_argument): Fix computing of field's offsets.
11168
a7701995
AJ
111692002-08-11 Andreas Jaeger <aj@suse.de>
11170
11171 PR target/7531:
11172 * doc/invoke.texi (i386 and x86-64 Options): Document -mcmodel.
11173
2516f236
ZL
111742002-08-10 Ziemowit Laski <zlaski@apple.com>
11175
11176 * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Replace
11177 reference to clk_objective_c with flag_objc.
11178 * config/i386/i386-interix.h (TARGET_OS_CPP_BUILTINS):
11179 Likewise.
11180 * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Likewise.
11181
f749a36b
NB
111822002-08-10 Neil Booth <neil@daikokuya.co.uk>
11183
11184 * c-opts.c (set_std_cxx98, set_std_c89): New.
11185 (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
11186 (c_common_decode_option): Handle new switches from cppinit.c.
11187 Add -std=gnu++98.
11188 * cppinit.c (set_lang): Rename cpp_set_lang. Export.
11189 (no_arg, no_num): Remove.
11190 (COMMAND_LINE_OPTIONS): Move more to c-opts.c. Drop all lang-
11191 switches apart from -lang-objc and lang-asm.
11192 (cpp_handle_option): Similarly.
11193 * cpplib.h (cpp_set_lang): New.
11194 * doc/cppopts.texi, doc/invoke.texi: Document -std=c++98,
11195 -std=gnu++98.
11196 * objc/lang-specs.h: Remove -ansi.
11197
77abb5d8
JH
11198Sat Aug 10 19:59:43 CEST 2002 Jan Hubicka <jh@suse.cz>
11199 Graham Stott
11200
11201 * cfg.c (redirect_edge_succ_nodup): Avoid overflows due to roundoff
11202 errors.
11203
fac37dc4
KG
112042002-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11205
d950dee3
KG
11206 * emit-rtl.c (emit_jump_insn_before, emit_call_insn_before,
11207 emit_jump_insn): Fix uninitialized variable.
11208 * gcov.c (init_line_info): Likewise.
11209 * genautomata.c (transform_3): Add braces around ambiguous
11210 else.
11211 * ifcvt.c (cond_exec_process_insns): Mark parameter with
11212 ATTRIBUTE_UNUSED.
11213 * ra-build.c (parts_to_webs_1): Fix uninitialized variable.
11214 * regrename.c (copyprop_hardreg_forward): Fix uninitialized
11215 variable.
11216
fac37dc4
KG
11217 * gengtype.c (write_gc_structure_fields): Avoid signed/unsigned
11218 warnings in output files.
11219
0f7866e7
ZL
112202002-08-09 Ziemowit Laski <zlaski@apple.com>
11221
11222 * c-common.c (flag_objc): New.
11223 * c-common.h (c_language_kind): Get rid of clk_objective_c
11224 enum value.
11225 (flag_objc): New extern declaration.
11226 * c-decl.c (implicitly_declare): Call objc_check_decl
11227 instead of maybe_objc_check_decl.
11228 (finish_decl): Likewise.
11229 (grokfield): Likewise.
11230 (finish_struct): Likewise.
11231 * c-lang.c (maybe_objc_check_decl): Rename to objc_check_decl.
11232 (maybe_objc_comptypes): Rename to objc_comptypes.
a7701995 11233 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
11234 objc_message_selector.
11235 * c-lex.c (lex_charconst): Remove uses of clk_objective_c,
11236 replace with flag_objc as needed.
11237 * c-opts.c (c_common_init_options): Likewise.
11238 (c_common_decode_option): Likewise.
11239 * c-parse.in (init_reswords): Likewise.
11240 * c-tree.h (maybe_objc_check_decl): Rename to objc_check_decl.
11241 (maybe_objc_comptypes): Rename to objc_comptypes.
a7701995 11242 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
11243 objc_message_selector.
11244 * c-typeck.c (comptypes): Call objc_comptypes instead of
11245 maybe_objc_comptypes, and/or objc_message_selector instead of
11246 maybe_building_objc_message_expr.
11247 (comp_target_types): Likewise.
11248 (convert_for_assignment): Likewise.
11249 (warn_for_assignment): Likewise.
11250 * cppinit.c (init_builtins): Set __OBJC__ manifest constant
11251 independently of those for other languages.
11252 * objc/objc-act.c (maybe_objc_comptypes): Delete.
11253 (maybe_objc_check_decl): Delete.
a7701995 11254 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
11255 objc_message_selector.
11256 * objc/objc-lang.c (objc_init_options): Use clk_c instead of
11257 clk_objective_c; set flag_objc flag.
11258
c512fd7b
TM
112592002-08-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
11260
11261 * ifcvt.c (find_if_case_2): Test correct basic block for size.
11262
5e1bf043 112632002-08-09 Dale Johannesen <dalej@apple.com>
c512fd7b 11264
5e1bf043
DJ
11265 * config/rs6000/rs6000.md: Add sibcall patterns.
11266 * config/rs6000/rs6000.h (FUNCTION_OK_FOR_SIBCALL): Define.
11267 * config/rs6000/rs6000.c (rs6000_ra_ever_killed):
11268 Rewritten to handle sibcalls.
11269 * config/rs6000/rs6000.c (function_ok_for_sibcall): New.
11270 * config/rs6000/rs6000-protos.h (function_ok_for_sibcall): New.
11271
2043c38e
NS
112722002-08-08 Nathan Sidwell <nathan@codesourcery.com>
11273
11274 * profile.c (da_file_name): New static var.
11275 (init_branch_prob): Initialize it.
11276 (end_branch_prob): Remove da file.
11277
11278 * Makefile.in (stage1_build): Pass empty COVERAGE_FLAGS.
41685063 11279 * configure.in (coverage_flags): Default to nothing.
2043c38e
NS
11280 * configure: Rebuilt.
11281
4b7091eb
NB
112822002-08-09 Neil Booth <neil@daikokuya.co.uk>
11283
11284 * Makefile.in (c-opts.o): Update
11285 * c-opts.c: Include intl.h.
11286 (print_help): Move from cppinit.c. Remove unused options.
11287 (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
11288 (missing_arg): Complain for switches without an argument.
11289 (c_common_decode_option): Reject missing joined arguments.
11290 Handle new switches from cppinit.c.
11291 * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
11292 (cpp_handle_option): Similarly.
11293 (print_help): Moved to c-opts.c.
11294 * cpplib.h (struct cpp_options): Remove help_only.
11295 * gcc.c (cpp_unique_options): Remove -$.
11296 * doc/cppopts.texi: Undocument -h.
11297
9e20be0c
JJ
112982002-08-08 Jakub Jelinek <jakub@redhat.com>
11299
11300 * config/i386/i386.c (legitimate_constant_p): UNSPEC_TP is not
11301 legitimate constant.
11302 (legitimate_pic_operand_p): Neither pic operand.
11303 (legitimate_address_p): But legitimate address.
11304 (get_thread_pointer): Generate MEM/u instead of CONST around
11305 UNSPEC_TP.
11306 (print_operand): Remove printing of UNSPEC_TP.
11307 (print_operand_address): And print it here.
11308
7b9be5c7 113092002-08-08 Devang Patel <dpatel@apple.com>
9e20be0c 11310
a7701995
AJ
11311 * objc/objc-act.c (build_selector_translation_table): Issue warning,
11312 when -Wselector is used,if method for which selector is being
7b9be5c7 11313 created does not exist.
a7701995 11314
5615d8fd
SC
113152002-08-08 Stephen Clarke <stephen.clarke@superh.com>
11316
11317 * config/sh/sh.c (prepare_move_operands): Only call
11318 target_reg_operand if TARGET_SHMEDIA.
a7701995 11319
3b85fe5f
JJ
113202002-08-08 Jakub Jelinek <jakub@redhat.com>
11321
11322 * config/rs6000/rs6000.h, config/rs6000/aix.h,
11323 config/rs6000/darwin.h, config/rs6000/linux64.h: Revert last
11324 two patches.
11325 * config/rs6000/sysv4.h: Likewise, remove #undef ADJUST_FIELD_ALIGN.
11326
e10c79fe
LB
113272002-08-08 Lars Brinkhoff <lars@nocrew.org>
11328 Richard Henderson <rth@redhat.com>
11329
11330 * emit-rtl.c (gen_rtx_REG): After reload, only return
11331 frame_pointer_rtx or hard_frame_pointer_rtx if frame_pointer_needed.
11332
aa2a83dc
JJ
113332002-08-08 Jakub Jelinek <jakub@redhat.com>
11334
11335 * config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove.
11336 * config/rs6000/rs6000.c (rs6000_field_alignment): Move...
11337 * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the
11338 macro.
11339
aeaf4d25
AN
113402002-08-08 Adam Nemet <anemet@lnxw.com>
11341
11342 * config/arm/arm.c (thumb_unexpanded_epilogue): Stack the PIC
11343 register.
11344 (thumb_expand_prologue): Likewise.
11345 (thumb_output_function_prologue): Likewise.
11346 * config/arm/arm.h (THUMB_INITIAL_ELIMINATION_OFFSET): Account for
11347 the additional push of the PIC register.
11348
22aa533e
NS
113492002-08-08 Nathan Sidwell <nathan@codesourcery.com>
11350
11351 * configure.in (enable_coverage): New enable switch.
11352 * configure: Rebuilt.
11353 * Makefile.in (COVERAGE_FLAGS, coverageexts): New variables.
11354 (INTERNAL_CFLAGS): Append COVERAGE_FLAGS.
11355 (ALL_FLAGS): Reorder so INTERNAL_CFLAGS comes after CFLAGS.
11356 (mostlyclean): Remove coverage files.
11357 * doc/install.texi: Document enable_coverage.
11358
11359 * cp/Make-lang.in (c++.mostlyclean): Remove coverage files.
11360 * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
11361 * f/Make-lang.in (f.mostlyclean): Remove coverage files.
11362 * java/Make-lang.in (java.mostlyclean): Remove coverage files.
11363 * objc/Make-lang.in (objc.mostlyclean): Remove coverage files.
11364 * treelang/Make-lang.in (treelang.mostlyclean): Remove coverage
11365 files.
a7701995 11366
18bdccaa
NB
113672002-08-08 Neil Booth <neil@daikokuya.co.uk>
11368
11369 * c-opts.c (cpp_opts): New.
11370 (COMMAND_LINE_OPTIONS): Add switches from cppinit.c.
11371 (c_common_decode_options): Handle cpplib switches.
11372 (c_common_init_options): Set cpp_opts.
11373 * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
11374 (cpp_handle_option): Similarly.
11375
774b5662
DE
113762002-08-08 David Edelsohn <edelsohn@gnu.org>
11377
11378 * config/rs6000/aix.h (TARGET_ALTIVEC): Define to 0.
11379 (TARGET_ALTIVEC_ABI): Same.
11380 (TARGET_ALTIVEC_VRSAVE): Same.
11381
11382 * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Check
11383 icode not CODE_FOR_nothing. Change switch to if.
11384
957e9e48
AM
113852002-08-08 Alan Modra <amodra@bigpond.net.au>
11386
11387 * config/rs6000/rs6000.h (ASM_CPU_SPEC): Pass -mpower4 when cpu=power4.
11388
daf06049
JJ
113892002-08-08 Jakub Jelinek <jakub@redhat.com>
11390
11391 * stor-layout.c (place_union_field): For bitfields if
11392 PCC_BITFIELD_TYPE_MATTERS and TYPE_USER_ALIGN, set record's
11393 TYPE_USER_ALIGN.
11394
043d39a6
JDA
113952002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
11396
11397 * pa.c (struct deferred_plabel): Constify name field.
11398
34bb92e3
NB
113992002-08-07 Neil Booth <neil@daikokuya.co.uk>
11400
11401 * cppmacro.c (_cpp_builtin_macro_text): Remove unused variable.
11402
3ec5d64d
JDA
114032002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
11404
11405 * configure.in (PREFIX_INCLUDE_DIR): Don't define if prefix and
11406 local_prefix are the same.
11407 * configure: Rebuilt.
11408
ad9335eb
JJ
114092002-08-07 Jakub Jelinek <jakub@redhat.com>
11410 Richard Henderson <rth@redhat.com>
11411
11412 * stor-layout.c (place_union_field): Apply ADJUST_FIELD_ALIGN
11413 to type_align when PCC_BITFIELD_TYPE_MATTERS. Only apply
11414 ADJUST_FIELD_ALIGN if not DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
11415 (place_field): Likewise.
11416 * config/i386/i386.c (x86_field_alignment): Don't check
11417 DECL_USER_ALIGN here.
11418 * config/rs6000/rs6000.c (rs6000_field_alignment): New.
11419 * config/rs6000/rs6000-protos.h (rs6000_field_alignment): New
11420 prototype.
11421 * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): Define.
11422 * config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Remove.
11423 * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Remove.
11424 * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Remove.
11425 * config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Remove.
11426 * doc/tm.texi (ADJUST_FIELD_ALIGN): Update description.
11427
0b6f2917
NB
114282002-08-07 Neil Booth <neil@daikokuya.co.uk>
11429
11430 * Makefile.in (c-opts.o, c-common.o, C_AND_OBJC_OBJS): Update.
11431 * c-common.c: Don't include tree-inline.h.
11432 (c_common_init_options, c_common_post_options): Move to c-opts.c.
11433 * c-common.h (c_common_decode_option): New.
11434 * c-decl.c (c_decode_option): Remove.
11435 * c-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option.
11436 * c-opts.c: New file.
11437 * c-tree.h (c_decode_option): Remove.
11438 * doc/passes.texi: Update.
11439 * objc/objc-act.c (objc_decode_option): Remove.
11440 * objc/objc-act.h (objc_decode_option): Remove.
11441 * objc/ojbc-lang.c (LANG_HOOKS_DECODE_OPTION): Use
11442 c_common_decode_option.
11443
e49ec17d
CD
114442002-08-07 Chris Demetriou <cgd@broadcom.com>
11445
11446 * config/mips/mips.md (sunlt_sf, suneq_sf, sunle_sf): Remove
11447 dependency on TARGET_DOUBLE_FLOAT.
11448
ac1ca451
SC
114492002-08-07 Stephen Clarke <stephen.clarke@superh.com>
11450
11451 * config/sh/lib1funcs.asm (GCC_shcompact_incoming_args): Don't
11452 overwrite callee-save registers. Fix comment.
11453
af34e51e
CD
114542002-08-06 Chris Demetriou <cgd@broadcom.com>
11455
11456 * config/mips/mips.c (override_options): Set MASK_BRANCHLIKELY
11457 in target_flags based on ISA, if it was not set on the command
11458 line. Warn if MASK_BRANCHLIKLEY is set but the ISA does not
11459 support Branch Likely instructions.
11460 * config/mips/mips.h (MASK_BRANCHLIKLEY): New macro.
11461 (TARGET_BRANCHLIKELY): Likewise.
11462 (TARGET_SWITCHES): Add -mbranch-likely and -mno-branch-likely.
11463 (GENERATE_BRANCHLIKELY): Use TARGET_BRANCHLIKELY rather than
11464 ISA_HAS_BRANCHLIKELY.
11465 (ISA_HAS_BRANCHLIKELY): Do not include MIPS16 check.
11466 * doc/invoke.texi: Document new MIPS -mbranch-likely and
11467 -mno-branch-likely options.
11468
2631af95
KG
114692002-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11470
f538618e
KG
11471 * ip2k.c (ip2k_set_compare): Add missing iteration variable.
11472
2631af95
KG
11473 * Makefile.in (dummy-conditions.o): Depend on $(HCONFIG_H) not
11474 $(GCONFIG_H).
11475
1ae0ccb6
AH
114762002-08-06 Aldy Hernandez <aldyh@redhat.com>
11477
8537ed68
ZW
11478 * c-decl.c (duplicate_decls): Error out for incompatible TLS
11479 declarations.
1ae0ccb6 11480
8537ed68 11481 * testsuite/gcc.dg/tls/diag-3.c: New.
1ae0ccb6 11482
8d3e27d1 114832002-08-06 Dale Johannesen <dalej@apple.com>
db4c55f6 11484
8d3e27d1 11485 * c-common.c (fname_decl): Use line number 0 for
8537ed68 11486 __func__, to avoid confusing debuggers.
8d3e27d1 11487
8b219a76
NS
114882002-08-06 Nathan Sidwell <nathan@codesourcery.com>
11489
11490 * gcov.c: Tidy.
11491 (struct line_info, struct coverage): New structures.
11492 (gcov_file_name, gcov_file): Remove globals.
11493 (output_data): Take source file parameter. Fix memory leak. Break
11494 up into ...
11495 (init_line_info, output_line_info, make_gcov_file_name,
11496 accumulate_branch_counts): ... here.
11497 (calculate_branch_probs, function_summary): Adjust.
11498 (main): Adjust.
11499 (function_*): Remove global variables.
11500
317e98c0
NB
115012002-08-06 Neil Booth <neil@daikokuya.co.uk>
11502
11503 * dwarf2out.c: Remove unused macros.
11504
81d41e74
NB
115052002-08-06 Neil Booth <neil@daikokuya.co.uk>
11506
11507 * function.c (TRAMPOLINE_ALIGNMENT): Always defined.
11508
58551c23
NB
115092002-08-06 Neil Booth <neil@daikokuya.co.uk>
11510
11511 * cppinit.c (struct lang_flags): Rename trigraphs std.
11512 (set_lang): Update.
11513 * cpplib.h (struct cpp_options): New member std.
11514 * cppmacro.c (_cpp_builtin_macro_text): Use std.
11515 (collect_args): Flag whether to swallow a possible future
11516 comma pasted with varargs.
11517 (replace_args): Use this flag.
11518 * doc/cpp.texi: Update varargs extension documentation.
11519
daeabcd0
JJ
115202002-08-06 Jakub Jelinek <jakub@redhat.com>
11521
11522 * config/i386/mmintrin.h (__m64): Make the type 64-bit aligned.
11523
39e3a681
JJ
115242002-08-06 Jakub Jelinek <jakub@redhat.com>
11525
9812691e
JJ
11526 * config/i386/i386.c (x86_field_alignment): Apply min for all MODE_INT
11527 and MODE_CLASS_INT modes.
39e3a681 11528
609a87f3
JJ
115292002-08-06 Jakub Jelinek <jakub@redhat.com>
11530
11531 * config.gcc (*-*-linux*): Default to --enable-threads=posix if no
11532 --{enable,disable}-threads is given to configure.
11533 (alpha*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux*,
11534 x86_64-*-linux*, ia64*-*-linux*, m68k-*-linux*, mips*-*-linux*,
11535 powerpc-*-linux-gnualtivec*, powerpc-*-linux*, s390-*-linux*,
11536 s390x-*-linux*, sh-*-linux*, sparc-*-linux*, sparc64-*-linux*):
11537 Remove thread_file setting here.
11538
ff4c5e7b
DE
115392002-08-06 David Edelsohn <edelsohn@gnu.org>
11540
11541 * doc/install.texi (Binaries): Update Bull Freeware URL.
11542
54f3aa9e
GP
115432002-08-06 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
11544
11545 * doc/gcc.texi (Top): Rename Index to Keyword Index.
11546
d19202ba
NS
115472002-08-05 Nathan Sidwell <nathan@codesourcery.com>
11548
11549 * gcov.c (output_data): Round to % to nearest, tweak formatting.
11550
1bed5ee3
JJ
115512002-08-05 Jakub Jelinek <jakub@redhat.com>
11552
11553 * fold-const.c (associate_trees): Only optimize NEGATE_EXPR in one
11554 of the operands into MINUS_EXPR if code is PLUS_EXPR.
11555
84512347
DR
115562002-08-05 Douglas B Rupp <rupp@gnat.com>
11557
11558 * config.gcc (i[34567]86-*-interix*): Replace interix.o with winnt.o
11559 * config/i386/i386-interix.h (TARGET_NOP_FUN_DLLIMPORT,
11560 drectve_section): Define.
11561 * config/i386/t-interix: Replace interix.o rule with winnt.o.
11562 * config/i386/interix.c: Remove.
11563
b835f6f1
GK
115642002-08-05 Geoffrey Keating <geoffk@redhat.com>
11565
11566 * attribs.c: Don't include obstack.h.
11567 * builtins.c: Likewise.
11568 * cfganal.c: Likewise.
11569 * cfgbuild.c: Likewise.
11570 * cfgcleanup.c: Likewise.
11571 * emit-rtl.c: Likewise.
11572 * loop.c: Likewise.
11573 * stmt.c: Likewise.
11574
11575 * Makefile.in (s-gtype): Re-add dependency on $(GTFILES).
11576
fd291392
GDR
115772002-08-05 Gabriel Dos Reis <gdr@nerim.net>
11578
11579 * doc/c-tree.texi (Expression trees): Document VA_ARG_EXPR
11580
054b7507
CD
115812002-08-04 Chris Demetriou <cgd@broadcom.com>
11582
11583 * doc/invoke.texi: Remove duplicated paragraph describing
11584 TARGET_SWITCHES.
11585
6d9f628e
GK
115862002-08-04 Geoffrey Keating <geoffk@redhat.com>
11587
11588 * Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H).
11589 * collect2.h (permanent_obstack): Delete declaration.
11590 * collect2.c (permanent_obstack): Delete definition.
4912a07c 11591 (main): Don't initialize permanent_obstack. Use xstrdup instead.
6d9f628e
GK
11592 * expr.c: Don't include obstack.h.
11593 (permanent_obstack): Delete declaration.
11594 * function.c: Don't include obstack.h.
11595 (permanent_obstack): Delete declaration.
11596 * integrate.c: Don't include obstack.h.
11597 (function_maybepermanent_obstack): Delete declaration.
11598 * print-tree.c (debug_tree): Use x*alloc not permalloc.
11599 * sdbout.c (gen_fake_label): Use x*alloc not permalloc.
11600 * tlink.c (pfgets): Use xstrdup not permanent_obstack.
11601 * toplev.c (lang_independent_init): Rename init_obstacks to init_ttree.
11602 * tree.h: Rename init_obstacks to init_ttree. Remove declarations
11603 of permalloc, expralloc, perm_calloc.
11604 * tree.c (permanent_obstack): Delete definition.
11605 (init_ttree): Rename from init_obstacks.
11606 (permalloc): Delete.
11607 (perm_calloc): Delete.
11608 (dump_tree_statistics): Don't print information about
11609 permanent_obstack.
11610 * varasm.c (assemble_start_function): Use xstrdup instead of
11611 permalloc/strcpy.
11612 (assemble_variable): Likewise.
11613 * config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of
11614 permalloc.
11615 (unicosmk_add_extern): Likewise.
11616 * config/c4x/c4x.c (c4x_external_ref): Likewise.
11617 (c4x_global_label): Likewise.
11618 * config/frv/frv.c (frv_encode_section_info): Likewise.
11619 * config/i386/winnt.c (i386_pe_record_external_function): Likewise.
11620 (i386_pe_record_exported_symbol): Likewise.
11621 * config/mips/mips.c (mips_output_external): Likewise.
11622 (mips_output_external_libcall): Likewise.
11623 * config/pa/pa.c: (permanent_obstack): Delete declaration.
11624 (output_call): Use ggc_strdup instead of allocating on
11625 permanent_obstack.
11626 * config/romp/romp.c: Include ggc.h.
11627 (get_symref): Don't declare permanent_obstack, use ggc_strdup
11628 intead of permanent_obstack.
11629 * config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat
11630 instead of permalloc.
11631 * config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc
11632 instead of permalloc
11633 * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat
11634 instead of permalloc.
11635 * config/vax/vax.c (vms_check_external): Use xmalloc instead of
11636 permalloc.
11637
36a05131
BS
116382002-08-04 Bernd Schmidt <bernds@redhat.com>
11639
11640 Contribute a port developed primarily by Michael Meissner,
11641 Catherine Moore, and Richard Sandiford <rsandifo@redhat.com>.
11642 * config.gcc: Add frv-elf target.
11643 * config/frv/cmovd.c: New file.
11644 * config/frv/cmovh.c: New file.
11645 * config/frv/cmovw.c: New file.
11646 * config/frv/frv-abi.h: New file.
11647 * config/frv/frv-asm.h: New file.
11648 * config/frv/frv-modes.def: New file.
11649 * config/frv/frv-protos.h: New file.
11650 * config/frv/frv.c: New file.
11651 * config/frv/frv.h: New file.
11652 * config/frv/frv.md: New file.
11653 * config/frv/frvbegin.c: New file.
11654 * config/frv/frvend.c: New file.
11655 * config/frv/lib1funcs.asm: New file.
11656 * config/frv/media.h: New file.
11657 * config/frv/modi.c: New file.
11658 * config/frv/t-frv: New file.
11659 * config/frv/uitod.c: New file.
11660 * config/frv/uitof.c: New file.
11661 * config/frv/ulltod.c: New file.
11662 * config/frv/ulltof.c: New file.
11663 * config/frv/umodi.c: New file.
11664 * config/frv/xm-frv.h: New file.
86a0cbcb
BS
11665
11666 * config/frv/media.h: Removed again.
11667
37b8715b
NS
116682002-08-04 Nathan Sidwell <nathan@codesourcery.com>
11669
11670 * gcov.c (bb_file_time): New static variable.
11671 (object_directory): May also be object file.
11672 (preserve_paths): New static variable.
11673 (print_usage): Adjust.
11674 (options): Adjust.
11675 (process_args): Adjust.
11676 (open_files): Simplify. Cope when OBJECT_DIRECTORY is an object
11677 file. Find modification date on bb file.
11678 (read_profile): Don't rewind a NULL file.
11679 (format_hwint): New static function.
11680 (function_summary): Use format_hwint.
11681 (output_data): SOURCE_FILE_NAME is never relative to
11682 OBJECT_DIRECTORY. Use format_hwint. Adjust gcov file name
11683 mangling. Adjust output format to make it more machine readable.
11684 * doc/gcov.texi: Document & clarify semantics.
a7701995 11685
d500c5d7
JM
116862002-08-04 Joseph S. Myers <jsm@polyomino.org.uk>
11687
11688 * doc/include/gcc-common.texi (version-GCC): Increase to 3.3.
11689
ea67fe71
NS
116902002-08-04 Nathan Sidwell <nathan@codesourcery.com>
11691
11692 * gcc.c (cc1_options): Pass output file as auxbase when
11693 appropriate.
11694 * profile.c (init_branch_prob): FILENAME has already had ending
11695 stripped.
11696 * final.c (end_final): Likewise.
11697 * toplev.c (aux_base_name): New global.
11698 (compile_file): Pass aux_base_name to init init_branch_prob and
11699 end_final.
11700 (independent_decode_option, case 'a'): New auxinfo options.
11701 (case 'd'): Protect against mising basename.
11702 (do_compile): Initialize aux_base_name.
11703 * toplev.h (aux_base_name): New global.
11704 * doc/invoke.texi: Adjust documentation.
11705
b23c054d
NS
117062002-08-04 Nathan Sidwell <nathan@codesourcery.com>
11707
11708 * config/i386/i386.c (x86_field_alignment): Remove duplicate test
11709 of TARGET_ALIGN_DOUBLE.
11710
04c1334c 117112002-08-04 Gabriel Dos Reis <gdr@nerim.net>
a7701995 11712
04c1334c
GDR
11713 * diagnostic.c (inform): New function.
11714 * diagnostic.h (inform): Declare.
a7701995 11715
e34eaae5
DE
117162002-08-03 David Edelsohn <edelsohn@gnu.org>
11717
11718 * config/rs6000/rs6000.md (movsi_internal1): Add nop mnemonic.
11719 (movhi_internal): Same.
11720 (movqi_internal): Same.
11721 (movdi_internal64): Same.
11722
11723 * config/rs6000/t-ppccomm (MULTILIB_MATCHES_FLOAT): Add mcpu=405.
11724
11725 * config/rs6000/xcoff.h (SKIP_ASM_OP): Define.
11726 (ASM_OUTPUT_SKIP): Use it. SIZE unsigned.
11727 (COMMON_ASM_OP): Define.
11728 (ASM_OUTPUT_ALIGNED_COMMON): Use it. SIZE unsigned.
11729 Use ALIGN parameter.
11730 (LOCAL_COMMON_ASM_OP): Define.
11731 (ASM_OUTPUT_LOCAL): Use it. SIZE unsigned.
11732
e7b489c8
RS
117332002-08-03 Roger Sayle <roger@eyesopen.com>
11734
11735 * builtins.def: Define new builtin functions exp, expf, expl,
11736 log, logf and logl (and their __builtin_* variants).
11737 * optabs.h (enum optab_index): Add new OTI_exp and OTI_log.
11738 Define exp_optab and log_optab.
11739 * optabs.c (init_optans): Initialize exp_optab and log_optab.
11740 * genopinit.c (optabs): Implement exp_optab and log_optab
11741 using exp?f2 and log?f2 patterns.
11742 * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP*
11743 and BUILT_IN_LOG* using exp_optab and log_optab respectively.
11744 (expand_builtin): Ignore the new builtins (and all cos and
11745 sin variants) when not optimizing. Expand new builtins via
11746 expand_builtin_mathfn when flag_unsafe_math_optimizations.
11747
11748 * doc/extend.texi: Document new exp and log builtins.
11749 * doc/md.texi: Document new exp?f2 and log?f2 patterns
11750 (and previously undocumented cos?f2 and sin?f2 patterns).
11751
de8920be
JM
117522002-08-03 Jason Merrill <jason@redhat.com>
11753
11754 * explow.c (int_expr_size): New fn.
11755 * expr.c (expand_expr) [CONSTRUCTOR]: Use it.
11756 * expr.h: Declare it.
11757
ba462c8e
KW
117582002-08-02 Krister Walfridsson <cato@df.lth.se>
11759
11760 * Makefile.in (gengtype-lex.o, gengtype-yacc.o): Add path to
11761 gengtype-* dependencies.
11762
2017ed61
EC
117632002-08-02 Eric Christopher <echristo@redhat.com>
11764
11765 * config.gcc (mips*-*-linux*): Fix ordering of tm_file.
11766 * config/mips/mips.h (READONLY_DATA_SECTION_ASM_OP): Change
11767 #ifndef to #undef.
11768 (TARGET_MEM_FUNCTIONS): Define instead of define to 1.
11769
055dd007
DE
117702002-08-02 David Edelsohn <edelsohn@gnu.org>
11771
11772 PR optimize/7067
11773 * config/rs6000/rs6000.h (RTX_COSTS): Artificially make MULT
11774 small if optimizing for size.
11775
771a2a66
DJ
117762002-08-02 Daniel Jacobowitz <drow@mvista.com>
11777
11778 * configure.in (FORBUILD): Use $build_alias.
11779 * configure: Regenerated.
11780
ac8ab9fe
RS
117812002-08-02 Richard Sandiford <rsandifo@redhat.com>
11782
11783 * config.gcc: Don't include mips/abi64.h in $tm_file.
11784 * hard-reg-set.h (call_really_used_regs): Declare.
11785 * config/mips/abi64.h: Remove file.
11786 * config/mips/linux.h,
11787 * config/mips/iris6.h: Don't include it.
11788 * config/mips/mips-protos.h (mips_conditional_register_usage): Declare.
11789 * config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Use it.
11790 (REG_PARM_STACK_SPACE, STACK_BOUNDARY, STRICT_ARGUMENT_NAMING,
11791 FUNCTION_ARG_PASS_BY_REFERENCE, FUNCTION_ARG_PADDING,
11792 FUNCTION_ARG_CALLEE_COPIES, MUST_PASS_IN_STACK, MIPS_STACK_ALIGN):
11793 Bring across definitions from abi64.h.
11794 (GP_ARG_LAST, FP_ARG_LAST): Use MAX_ARGS_IN_REGISTERS.
11795 (BIGGEST_MAX_ARGS_IN_REGISTERS): New.
11796 (struct mips_args): Use it.
11797 * config/mips/mips.c (mips_conditional_register_usage): Define.
11798
a77a9a18
JM
117992002-08-02 Jason Merrill <jason@redhat.com>
11800
11801 * langhooks-def.h (LANG_HOOKS_EXPR_SIZE): New macro.
11802 * langhooks.c (lhd_expr_size): Define default.
11803 * langhooks.h (struct lang_hooks): Add expr_size.
11804 * explow.c (expr_size): Call it.
11805 * expr.c (store_expr): Don't copy an expression of size zero.
11806 (expand_expr) [CONSTRUCTOR]: Use expr_size to calculate how much
11807 to store.
11808 * Makefile.in (builtins.o): Depend on langhooks.h.
11809
a6be5aee
KG
118102002-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11811
11812 * Makefile.in (ra-debug.o): Depend on $(TM_P_H).
11813 * ra-debug.c: Include "tm_p.h".
11814 * ra-rewrite.c (is_partly_live_1): Change return type to bool.
11815
e3e16ee3
TM
118162002-08-02 Toon Moene <toon@moene.indiv.nluug.nl>
11817
11818 * simplify-rtx.c (simplify_binary_operation): x * 1 is allowed
11819 when not honoring signalling NaNs.
11820 (simplify_ternary_operation): a == b has a definite value
11821 when not honoring NaNs.
11822
b9d8832d
JM
118232002-08-02 Jason Merrill <jason@redhat.com>
11824
11825 * gdbinit.in (pct): New macro.
11826
825abef4
SS
118272002-08-01 Stan Shebs <shebs@apple.com>
11828 Andreas Tobler <toa@pop.agri.ch>
11829
11830 * ginclude/stddef.h (_BSD_SIZE_T_DEFINED_): Define if not defined,
11831 plays nice with Darwin headers.
bf2e488f 11832 (_BSD_RUNE_T_DEFINED_): Likewise.
825abef4 11833
56da7207
ZW
118342002-08-01 Zack Weinberg <zack@codesourcery.com>
11835
11836 * c-common.c (c_common_init): -Wtraditional also implies -Wlong-long.
11837 * cppinit.c (cpp_post_options): Likewise.
11838
11839 * cppexp.c (cpp_classify_number): Suppress -Wtraditional
11840 warning about 'LL' suffix (but not 'ULL' etc) when
11841 -Wno-long-long is in effect.
11842
11843 * cppmacro.c (_cpp_builtin_macro_text) [BT_TIME, BT_DATE]:
11844 Check for failing time()/localtime(), issue a warning, and
11845 make __TIME__ and __DATE__ expand to fallback strings.
11846
11847 * doc/cpp.texi, doc/extend.texi: Document behavior of __DATE__
11848 and __TIME__ when the date and time cannot be determined.
11849
f4857b9b
AM
118502002-08-02 Alan Modra <amodra@bigpond.net.au>
11851
11852 * config/rs6000/rs6000.c (output_cbranch): Hint differently for power4.
11853
77ca7b2e
DJ
118542002-08-01 Daniel Jacobowitz <drow@mvista.com>
11855
11856 * Makefile.in ($(BUILD_PREFIX_1)ggc-none.o): Use $(GGC_H).
11857
5b552f76
CD
118582002-08-01 Chris Demetriou <cgd@broadcom.com>
11859
11860 * config.gcc (mipsisa64sb1-*-elf*): New configuration.
11861 (mipsisa64sb1el-*-elf*): Likewise.
11862 * config/mips/mips.c (mips_cpu_info_table): Add sb1.
11863 * config/mips/mips.h (processor_type): Add PROCESSOR_SB1.
11864 (TARGET_SB1, TUNE_SB1): New macros.
11865 * doc/invoke.texi: Add sb1 to documentation for MIPS -march and
11866 -mtune flags.
11867
54fbf6a1
DE
118682002-08-01 David Edelsohn <edelsohn@gnu.org>
11869
11870 * varasm.c (asm_emit_uninitialized): Return false if global BSS
11871 and ASM_EMIT_BSS not supported by target.
11872 (assemble_variable): Do not duplicate uninitialized logic.
11873 Fall through if asm_emit_uninitialized failed.
11874
3d16b407
CD
118752002-08-01 Chris Demetriou <cgd@broadcom.com>
11876
11877 * config/mips/mips.h (BRANCH_LIKELY_P): Remove unused macro.
11878
fb52d8de
AM
118792002-08-02 Alan Modra <amodra@bigpond.net.au>
11880
80926cc1
AM
11881 * config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Define.
11882 (DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC): Define.
11883
fb52d8de
AM
11884 * config/rs6000/rs6000.c (output_toc): Don't use lshift_double when
11885 HOST_BITS_PER_WIDE_INT == 64.
11886
a4b5414c
KG
118872002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11888
11889 * df.c (df_insn_table_realloc): Change parameter to unsigned.
11890 * optabs.c (expand_binop): Make variable unsigned.
11891 * simplify-rtx.c (simplify_subreg): Likewise.
11892 * unroll.c (unroll_loop): Cast to avoid signed/unsigned warnings.
11893
a03e67c3
FS
118942002-08-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
11895
11896 * c-common.c (cb_register_builtins): Always define __GXX_ABI_VERSION.
11897
de273d3f
RH
118982002-08-01 Richard Henderson <rth@redhat.com>
11899
56da7207 11900 * toplev.c (parse_options_and_default_flags): Don't set
de273d3f
RH
11901 flag_reorder_blocks for -Os.
11902
11903 * config/avr/avr.c (avr_optimization_options): Remove.
11904 * config/avr/avr.h (OPTIMIZATION_OPTIONS): Remove.
11905 * config/m68hc11/m68hc11.c (m68hc11_optimization_options): Remove.
11906 * config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Remove.
11907
4e4d733e
L
119082002-08-01 H.J. Lu <hjl@gnu.org>
11909 Richard Henderson <rth@redhat.com>
11910
11911 * output.h (DECL_READONLY_SECTION): Remove.
11912 (decl_readonly_section): Declare.
11913 * varasm.c (decl_readonly_section): New.
11914 (default_section_type_flags, default_select_section): Use it.
11915 * config/arm/pe.c (arm_pe_unique_section): Likewise.
11916 * config/i386/interix.c (i386_pe_unique_section): Likewise.
11917 * config/i386/winnt.c (i386_pe_unique_section): Likewise.
11918 * config/mcore/mcore.c (mcore_unique_section): Likewise.
11919 * config/mips/mips.c (mips_unique_section): Likewise.
11920
32e9b960
RH
119212002-08-01 Richard Henderson <rth@redhat.com>
11922
11923 * integrate.c (copy_rtx_and_substitute): Squash MEM_EXPR when it
11924 refers to a subroutine parameter.
11925
81e602b5
JJ
119262002-08-01 Jakub Jelinek <jakub@redhat.com>
11927
11928 * varasm.c (assemble_visibility): Strip name encoding.
11929
ac14c725
ID
119302002-08-01 Ian Dall <ian@sibyl.beware.dropbear.id.au>
11931
11932 * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE): Correct earlier patch.
11933 (RETURN_ADDR_RTX): Cannot determine return address for FRAME > 0
11934 when there is no frame pointer.
11935 (INITIAL_FRAME_POINTER_OFFSET): Count stack space for saved fp
11936 registers properly.
11937 * config/ns32k/__unorddf2.c: New file.
11938 * config/ns32k/__unordsf2.c: New file.
11939 * config/ns32k/t-ns32k: New file.
11940 * config.gcc (ns32k-*-netbsd*): Use it.
11941
17072732
AH
119422002-08-01 Aldy Hernandez <aldyh@redhat.com>
11943
11944 * config/rs6000/rs6000.h (SPU_CONST_OFFSET_OK): Change to 0xff.
11945
c288218a
NB
119462002-08-01 Neil Booth <neil@daikokuya.co.uk>
11947
11948 * c-common.c (__GXX_ABI_VERSION): Correct spelling.
11949
43bfc248
BK
119502002-08-01 Benjamin Kosnik <bkoz@redhat.com>
11951
11952 * c-common.c (cb_register_builtins): Set __GXX_ABI_VERSION__ to 102.
11953
479f2cea
RS
119542002-08-01 Richard Sandiford <rsandifo@redhat.com>
11955
11956 * config/mips/mips.md: Add [!]TARGET_MIPS16 to sgtu conditions.
11957
02280659
ZD
119582002-08-01 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
11959
11960 * gcse.c (expr_hash_table_size, n_exprs, set_hash_table_size,
11961 n_sets): Removed.
11962 (expr_hash_table, set_hash_table): Type changed to ...
11963 (struct hash_table): New type.
11964 (hash_scan_insn, hash_scan_set, hash_scan_clobber, hash_scan_call,
11965 insert_expr_in_table, insert_set_in_table, compute_hash_table,
11966 dump_hash_table, lookup_expr, lookup_set, compute_local_properties,
11967 compute_ae_gen, compute_ae_kill): Modified to pass the table explicitly.
11968 (alloc_set_hash_table, alloc_expr_hash_table): Merged to ...
11969 (alloc_hash_table): New.
11970 (free_set_hash_table, free_expr_hash_table): Merged to ...
11971 (free_hash_table): New.
11972 (compute_set_hash_table, compute_expr_hash_table): Merged to ...
11973 (compute_hash_table_work): New.
11974 (classic_gcse, one_classic_gcse_pass, compute_cprop_data,
11975 find_avail_set, one_cprop_pass, find_bypass_set, compute_pre_data,
11976 pre_edge_insert, pre_insert_copies, pre_delete, pre_gcse,
11977 one_pre_gcse_pass, compute_transpout, compute_code_hoist_vbeinout,
11978 hoist_code, one_code_hoisting_pass,
11979 trim_ld_motion_mems): Altered due to changed type of hash tables.
11980
905173eb
ZW
119812002-08-01 Zack Weinberg <zack@codesourcery.com>
11982
11983 * final.c (output_alternate_entry_point):
11984 If ASM_OUTPUT_TYPE_DIRECTIVE is defined, use it.
11985
83321d36
KG
119862002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11987
ad0f1765
KG
11988 * objc/objc-act.c (encode_complete_bitfield): Add prototype and
11989 avoid ISO C style function definition.
11990
83321d36
KG
11991 * expr.c (expand_assignment): Delete unused variable.
11992
73e42cf3
TM
119932002-08-01 Toon Moene <toon@moene.indiv.nluug.nl>
11994
11995 * c-common.c (cb_register_builtins): Set
11996 __FINITE_MATH_ONLY__ to 1 if -ffinite-math-only
11997 is given, and to 0 otherwise.
11998 * combine.c (simplify_if_then_else): HONOR_NANS
11999 implies FLOAT_MODE_P.
12000
78df51fe
NB
120012002-08-01 Neil Booth <neil@daikokuya.co.uk>
12002
12003 * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_dollar.
12004 (cpp_handle_option): Don't handle it.
12005 (print_help): Update.
12006 * doc/cppopts.texi: Update.
12007
abecfc8f
NB
120082002-08-01 Neil Booth <neil@daikokuya.co.uk>
12009
12010 * c-common.c (cb_register_builtins): If C++, define
12011 __EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.
12012 * gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION.
12013cp:
12014 * lang-specs.h: Simplify in accordance with new code in
12015 c-common.c.
12016
4078b403
NB
120172002-08-01 Neil Booth <neil@daikokuya.co.uk>
12018
12019 * c-common.c: Define all C/ObjC/C++ warning and flag variables.
12020 * c-common.h: Declare all C/ObjC/C++ warning and flag variables.
12021 * c-decl.c: Move all warning and flag variables to c-common.c.
12022 * c-format.c: Move all warning variables to c-common.c.
12023 * c-tree.h: Move all warning and flag declarations to c-common.h.
12024 * objc/objc-act.c: Move all warning variables to c-common.c.
12025 (flag_warn_protocol): Rename warn_protocol.
12026
692f5611
JDA
120272002-07-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
12028
12029 * pa-linux.h (GLOBAL_ASM_OP): Fix typo.
12030
c7a009a2 120312002-07-31 Graham Stott <graham.stott@btinternet.com>
480e7ded 12032
905173eb 12033 * config/stormy16/stormy16.h (BSS_SECTION_ASM_OP): Add missing
480e7ded
GS
12034 .section prefix.
12035
b069de3b
SS
120362002-07-31 Stan Shebs <shebs@apple.com>
12037
12038 * config.gcc (i[34567]86-*-darwin*): New configuration.
12039 * config/darwin.h (TARGET_ENCODE_SECTION_INFO): Undefine before
12040 defining.
12041 (TARGET_ENCODE_SECTION_INFO): Ditto.
12042 (ASM_PREFERRED_EH_DATA_FORMAT): Ditto.
12043 * config/darwin.c (machopic_indirect_data_reference): Remove
12044 setting of RTX_UNCHANGING_P.
12045 (machopic_legitimize_pic_address): Move RTX_UNCHANGING_P up so as
12046 not to be applied to sums.
12047 * config/i386/t-darwin: New file.
12048 * config/i386/darwin.h: New file.
12049 * config/i386/i386.h (TARGET_MACHO): Add default definition.
12050 * config/i386/i386.md (tablejump): Add TARGET_MACHO case.
12051 * config/i386/i386.c (output_set_got): For Mach-O, output Mach-O
12052 label and not the GOT add.
12053 (constant_address_p): For Mach-O, seeing a CONST is enough.
12054 (legitimate_pic_address_disp_p): Add a Mach-O case.
12055 (legitimate_address_p): Also test machopic_operand_p if Mach-O.
12056 (legitimize_pic_address): Use generic Mach-O code to legitimize.
12057 (output_pic_addr_const): Suppress @PLT if Mach-O, and parens
12058 if outputting a difference.
12059 (ix86_output_addr_diff_elt): Add Mach-O case.
12060 (ix86_expand_move): Similarly.
12061 (ix86_expand_call): Similarly.
12062 (current_machopic_label_num): New global.
12063 (machopic_output_stub): New function.
12064 (ix86_value_regno): New function.
12065 (ix86_function_value): Use it instead of VALUE_REGNO.
12066 (ix86_libcall_value): Ditto.
12067 * config/i386/unix.h (VALUE_REGNO): Remove.
12068
1de4ecb6
GS
120692002-07-31 Graham Stott <grahas@btinternet.com>
12070
12071 * config/rs6000/rs6000.c(rs6000_hash_constant): Fix
905173eb 12072 hash for LABEL_REF's.
1de4ecb6 12073
23368455
GS
120742002-07-31 Graham Stott <grahams@btinternet.com>
12075
12076 * config/rs6000/rs6000.c (spe_init_builtins,
12077 altivec_init_builtins, rs6000_common_init_builtins):
905173eb 12078 Replace ANSI with K&R function def.
23368455 12079
ad72b533
DE
120802002-07-31 David Edelsohn <edelsohn@gnu.org>
12081
12082 * rs6000.c (validate_condition_mode): Test flag_finite_math_only
12083 for CCFPmode.
12084
302359da
RS
120852002-07-31 Richard Sandiford <rsandifo@redhat.com>
12086
12087 * config/mips/crtn.asm: Don't use __mips16 to determine the
12088 return-address offset. Define RA to a suitable temporary
12089 register for the return address.
12090
ead0c1d5
RS
120912002-07-31 Richard Sandiford <rsandifo@redhat.com>
12092
12093 * config/mips/mips.md (eh_set_lr_si, eh_set_lr_di): Change
12094 constraints to 'd'.
12095
3fb9d48a
CD
120962002-07-30 Chris Demetriou <cgd@broadcom.com>
12097
12098 * config/mips/elf.h (STARTFILE_SPEC): Define differently if
12099 default ABI is MEABI. (Undoes incorrect change in Eric Christopher's
12100 patch on 2002-07-29.)
12101 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
12102
072cdaed
KG
121032002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12104
506a61b1
KG
12105 * alpha.h, arc.h, arm/aout.h, avr.h, cris.h, d30v.h, dsp16xx.h,
12106 fr30.h, h8300.h, i370.h, i386/sco5.h, i386/unix.h, i960.h, ia64.h,
12107 ip2k.h, m32r.h, mcore.h, mips.h, mn10200.h, mn10300.h, ns32k.h,
12108 openbsd.h, pa/pa-linux.h, pdp11.h, romp.h, rs6000/sysv4.h,
12109 s390/linux.h, sh.h, sparc.h, stormy16.h, v850.h, vax.h, xtensa.h:
12110 (ASM_GLOBALIZE_LABEL): Delete.
12111 (GLOBAL_ASM_OP): Define.
12112
072cdaed 12113 * m68hc11.h, m68k.h, m88k.h (ASM_GLOBALIZE_LABEL): Delete.
905173eb 12114
072cdaed
KG
12115 * defaults.h (ASM_GLOBALIZE_LABEL): Provide a default.
12116 * doc/tm.texi (ASM_GLOBALIZE_LABEL): Update docs.
12117
6fd14075
GK
121182002-07-30 Geoffrey Keating <geoffk@redhat.com>
12119
12120 * doc/extend.texi (Hints implementation): Document that GCC
12121 mostly ignores `register'.
12122
2e8f2e8f
TM
121232002-07-30 Toon Moene <toon@moene.indiv.nluug.nl>
12124
12125 * flags.h: Declare flag_finite_math_only.
12126 Use it in definition of HONOR_NANS and
12127 HONOR_INFINITIES.
12128 * c-common.c (cb_register_builtins): Emit
12129 __FINITE_MATH_ONLY__ when flag_finite_math_only
12130 is set.
12131 * combine.c (simplify_if_then_else): If
12132 flag_finite_math_only is set, a == b has a
12133 definite value.
12134 * toplev.c: Initialize flag_finite_math_only.
12135 (set_flags_fast_math): Set it on -ffast-math.
12136 (flag_fast_math_set_p): Test it.
12137 * doc/invoke.texi: Document -ffinite-math-only.
12138
a538e580
RH
121392002-07-30 Richard Henderson <rth@redhat.com>
12140
12141 * ifcvt.c (noce_get_alt_condition): Use reg_overlap_mentioned_p.
12142 (noce_process_if_block): Likewise.
12143
26e20555
BS
121442002-07-30 Bernd Schmidt <bernds@redhat.com>
12145
12146 * ifcvt.c (cond_exec_process_if_block): Fix a merging error.
12147 Bail out early if false_expr is NULL and we'd crash due to this.
79cbc1f7
BS
12148 * genemit.c (gen_expand): Recognize return insns even if the return
12149 appears in a parallel.
d8088c6f
BS
12150 * libgcc2.c: Expand macro DECLARE_LIBRARY_RENAMES if it is defined.
12151 * config/fp-bit.c: Likewise.
12152 * doc/tm.texi: Document it.
905173eb 12153
0559cc77
DE
121542002-07-30 David Edelsohn <edelsohn@gnu.org>
12155 Zack Weinberg <zack@codesourcery.com>
12156
12157 * rs6000.c (rs6000_expand_unop_builtin): Check icode not
12158 CODE_FOR_nothing. Change switch to if.
12159 (rs6000_expand_binop_builtin): Same.
12160 (rs6000_expand_builtin): Expand builtin if target support enabled.
12161 (rs6000_init_builtins): Init builtin if target support enabled.
12162 (rs6000_common_init_builtins): Check icode not CODE_FOR_nothing.
12163
60b8aa94
FS
121642002-07-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
12165
12166 * gcc.c (cpp_unique_options): Define __GXX_ABI_VERSION, bump it to 101.
12167
714fb710
RS
121682002-07-30 Richard Sandiford <rsandifo@redhat.com>
12169
12170 * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Fix typo.
12171
c608a684
R
12172Tue Jul 30 18:31:31 2002 J"orn Rennecke <joern.rennecke@superh.com>
12173
12174 * sh.md (cond_delay_slot): New attribute.
12175 (cbranch delay): Use it for anulled-true case.
12176 (stuff_delay_slot): New pattern.
12177 * sh.c (print_operand, case '.'): Don't print .s / /s fore zero-length
12178 delay slot insn.
12179 (gen_far_branch): Emit stuff_delay_slot pattern.
12180
0a756401
R
12181Tue Jul 30 11:21:44 2002 J"orn Rennecke <joern.rennecke@superh.com>
12182
12183 * unroll.c (copy_loop_body): Don't copy NOTE_INSN_LOOP_CONT.
12184
68e82b83
KH
121852002-07-30 Kazu Hirata <kazu@cs.umass.edu>
12186
12187 * fold-const.c: Fix comment typos.
12188 * gcse.c: Likewise.
12189 * reload1.c: Likewise.
12190
fe6b547a
AH
121912002-07-29 Aldy Hernandez <aldyh@redhat.com>
12192
12193 * config/rs6000/rs6000.md: Disallow CCEQ compare with crnor/crnot
12194 for TARGET_SPE.
12195
7ff4a7ef
GDR
121962002-07-30 Gabriel Dos Reis <gdr@nerim.net>
12197
12198 * c-pretty-print.h (pp_c_statement): Declare.
12199 * c-pretty-print.c (pp_c_postfix_expression): #if 0 support for SRCLOC.
12200 (pp_c_statement): Define.
12201
4ad5e05d
KG
122022002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12203
12204 * alpha.h, arc.h, arm/aout.h, avr.h, c4x.h, cris.h, d30v.h,
12205 darwin.h, dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i960.h,
12206 ip2k.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mips.h,
12207 mn10200.h, mn10300.h, ns32k.h, pa/pa-linux.h, pdp11.h, romp.h,
12208 rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h,
12209 v850.h, vax.h, xtensa.h (ASM_OUTPUT_LABEL): Delete definition.
12210
12211 * defaults.h (ASM_OUTPUT_LABEL): Provide a default.
12212 * doc/tm.texi (ASM_OUTPUT_LABEL): Update docs.
12213
1e6a3e1e
GDR
122142002-07-30 Gabriel Dos Reis <gdr@nerim.net>
12215
12216 * c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR.
12217 (pp_c_postfix_expression): Handle ARROW_EXPR, FFS_EXPR,
12218 COMPOUND_LITERAL_EXPR, VA_ARG_EXPR.
12219 (pp_c_expression): Update.
12220
1dcd444b
KG
122212002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12222
12223 * alpha/vms-cc.c (preprocess_args, main): Use xstrdup and/or
12224 concat in lieu of xmalloc/strcpy/memcpy/sprintf.
12225 * alpha/vms-ld.c (main): Likewise.
12226 * dsp16xx.c (double_reg_to_memory): Likewise.
12227 * mcore.c (mcore_expand_prolog): Likewise.
12228 * cppfiles.c (read_name_map): Likewise.
12229 * gensupport.c (process_rtx, identify_predicable_attribute,
12230 alter_test_for_insn): Likewise.
12231 * vmsdbgout.c (write_rtnbeg, vmsdbgout_init): Likewise.
12232
e62f4abc
RS
122332002-07-29 Roger Sayle <roger@eyesopen.com>
12234
12235 * builtins.c (expand_builtin): Change the default behavior to
905173eb 12236 only issue an error if the builtin function doesn't have a
e62f4abc
RS
12237 fallback library call. Remove several cases handled by the
12238 new default.
12239
0cd2fb44
JDA
122402002-07-29 John David Anglin <dave@hiauly1.hia.nrc>
12241
12242 * real.c (ieee_24, ieee_53, ieee_64, ieee_113): Define only if the
12243 floating point format of the target is IEEE.
12244 * (dec_f, dec_d, dec_g, dec_h): Define only if the floating point
12245 format of the target is DEC.
12246
b642261e
RH
122472002-07-29 Richard Henderson <rth@redhat.com>
12248
12249 * unroll.c (verify_addresses): Remove.
12250 (find_splittable_givs): Never split DEST_ADDR givs.
12251
cba57c9d
GK
122522002-07-29 Geoffrey Keating <geoffk@redhat.com>
12253
12254 * doc/gty.texi (GGC Roots): Clarify that the list of syntaxes
12255 is exhaustive.
12256 (Files): Improve documentation on generated source files.
12257
12258 * doc/extend.texi (Translation implementation): Document what
12259 diagnostics look like.
12260 (Identifiers implementation): Document that there's normally no
12261 limit on identifier names.
12262 (Integers implementation): Document two's complement.
8d9afc4e 12263 (Hints implementation): Document that GCC honors 'inline', mostly.
cba57c9d
GK
12264 (Preprocessing directives implementation): Document that GCC
12265 requires the current time.
12266
76a8ecba
GDR
122672002-07-30 Gabriel Dos Reis <gdr@nerim.net>
12268
12269 * c-pretty-print.h (struct c_pretty_print_info): Add new member.
12270 (pp_initializer): New macro.
12271 (pp_c_initializer): Declare.
12272 * c-pretty-print.c (pp_c_primary_expression): HAndle TARGET_EXPR.
12273 (pp_c_initializer): Define.
12274 (pp_c_initializer_list): New function.
12275 (pp_c_postfix_expression): Handle ABS_EXPR, COMPLEX_CST,
12276 VECTOR_CST, CONSTRUCTOR.
12277 (pp_c_unary_expression): Handle CONJ_EXPR, REALPART_EXPR,
905173eb 12278 IMAGPART_EXPR.
76a8ecba
GDR
12279 (pp_c_cast_expression): Handle FLOAT_EXPR.
12280 (pp_c_assignment_expression): Handle INIT_EXPR.
12281 (pp_c_expression): Update.
12282
4307be72
NB
122832002-07-30 Neil Booth <neil@daikokuya.co.uk>
12284
12285 * objc/objc-act.c (objc_init): Return immediately if filename
12286 is NULL.
12287
6d439235
EC
122882002-07-29 Eric Christopher <echristo@redhat.com>
12289
905173eb
ZW
12290 * config/mips/elf.h: Remove ecoff.h and gofast includes.
12291 (DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO): Define unconditionally.
12292 (SDB_DEBUGGING_INFO): Undefine.
12293 (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
6d439235
EC
12294 (PUT_SDB_SIZE): Remove.
12295 (SUBTARGET_ASM_DEBUGGING_SPEC): Redefine.
905173eb
ZW
12296 (STARTFILE_SPEC): Add isa3264 define.
12297 * config/mips/elf64.h: Ditto. Move TARGET_MEM_FUNCTIONS from here...
12298 * config/mips/ecoff.h: Remove. and here...
12299 * config/mips/iris3.h: and here...
12300 * config/mips/sni-svr4.h: and here...
12301 * config/mips/mips.h: To here. Remove OBJECT_FORMAT_ROSE ifdefs.
6d439235
EC
12302 Add assembler -mmdebug options for non-dwarf debugging.
12303 * config/mips/r3900.h: Remove debug info defines.
905173eb
ZW
12304 * config/mips/isa32-linux.h: Remove, move functionality to config.gcc.
12305 * config/mips/isa3264.h: Ditto.
12306 * config/mips/t-isa3264: Fix up for file removal and gofast configure
12307 change.
12308 * config/mips/t-elf: Ditto.
12309 * config/mips/t-ecoff: Ditto.
12310 * config/mips/t-r3900: Ditto.
12311 * config/mips/t-iris5-6: Ditto.
12312 * config/mips/t-isa3264: Ditto.
12313 * config/mips/t-linux: Remove.
12314 * config/mips/t-netbsd: Remove.
12315 * config/mips/t-mips: New file.
12316 * config/mips/t-gofast: Ditto.
12317 * config/mips/netbsd.h: Remove unnecessary undefines.
12318 * config/mips/linux.h: Remove #include of mips.h.
12319 * config.gcc: Add mips.h include for elf targets. Remove tm_file
12320 for ecoff. Add gofast configure option for mips.
6d439235 12321
4357a6c3
CD
123222002-07-29 Chris Demetriou <cgd@broadcom.com>
12323
12324 * configure.in (mips*-*-*): Add a test to see if MIPS libgloss
12325 linker scripts use STARTUP directives consistently.
12326 * configure: Regenerate.
12327 * config.in: Regenerate.
12328 * config/mips/elf.h (STARTFILE_SPEC): Define conditionally, based
12329 on whether HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is defined.
12330 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
12331 * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine if
12332 HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is set; the result
12333 will be the same.
12334
9a5cd606
AH
123352002-07-29 Aldy Hernandez <aldyh@redhat.com>
12336
12337 * config/rs6000/rs6000.md ("cpu"): Add ppc8540 to attribute.
12338
a23acaa6
AH
123392002-07-29 Aldy Hernandez <aldyh@redhat.com>
12340
12341 * config/rs6000/rs6000.h (RTX_COSTS): Add MULT case for 8540.
12342
10ed84db
AH
123432002-07-29 Aldy Hernandez <aldy@quesejoda.com>
12344
12345 * config/rs6000/rs6000.md: Move altivec patterns from here...
12346
12347 * config/rs6000/altivec.md: ...to here.
12348
c3021e5d
AH
123492002-07-29 Aldy Hernandez <aldyh@redhat.com>
12350
12351 * config/rs6000/spe.md ("spe_evmra"): Change to unspec.
12352
6f1087be
RH
123532002-07-29 Richard Henderson <rth@redhat.com>
12354
12355 * emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from
12356 set_mem_attributes and add BITPOS argument. Subtract it from
12357 OFFSET when same is adjusted.
12358 (set_mem_attributes): New wrapper function.
12359 * expr.c (expand_assignment): Use set_mem_attributes_minus_bitpos;
12360 remove offset adjustment hack.
12361 * expr.h (set_mem_attributes_minus_bitpos): Declare.
12362
61ccbcfd
GDR
123632002-07-29 Gabriel Dos Reis <gdr@nerim.net>
12364
12365 * Makefile.in (C_OBJS): Include c-pretty-print.o
12366 (c-pretty-print.o): Add depency rule.
12367 * pretty-print.h: Add more macros.
12368 * c-pretty-print.c: New file.
12369 * c-pretty-print.h: Likewise.
12370
09101f56
AH
123712002-07-29 Aldy Hernandez <aldyh@redhat.com>
12372
12373 * config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector
12374 constants to __ev64_s32__.
12375 (__internal_ev_mwhgsmian): Same.
12376 (__internal_ev_mwhgsmfan): Same.
12377 (__internal_ev_mwhgssfan): Same.
12378 (__internal_ev_mwhgumiaa): Same.
12379 (__internal_ev_mwhgsmiaa): Same.
12380 (__internal_ev_mwhgsmfaa): Same.
12381 (__internal_ev_mwhgssfaa): Same.
12382
af673a52
DE
123832002-07-29 David Edelsohn <edelsohn@gnu.org>
12384
12385 * varasm.c (assemble_variable): Narrow test for uninitialized
12386 without BSS target support.
12387
6c208acd
NS
123882002-07-29 Nathan Sidwell <nathan@codesourcery.com>
12389
12390 * profile.c: Add file comment describing the overall algorithm and
12391 structures.
12392 (struct edge_info): Add comments.
12393 (struct bb_info): Add comments.
12394 * basic-block.h (EDGE_*): Add comments.
12395 * doc/gcov.texi (Gcov Data Files): Document bit flags.
12396
624f0d60
BW
123972002-07-29 Bob Wilson <bob.wilson@acm.org>
12398
12399 * config/xtensa/elf.h, config/xtensa/linux.h
12400 (TARGET_OS_CPP_BUILTINS): Define.
12401 (CPP_PREDEFINES): Remove.
12402 * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define.
12403 (CPP_SPEC): Remove.
12404
2199e5fa
ZW
124052002-07-29 Zack Weinberg <zack@codesourcery.com>
12406
12407 * gensupport.c: Include hashtab.h.
12408 (insn_elision, condition_table, hash_c_test, cmp_c_test,
12409 maybe_eval_c_test): New routines and data structures to
12410 support insn elision.
12411 (init_md_reader): Read and initialize the condition_table.
12412 (read_md_rtx): Discard insn patterns whose C test is provably
12413 always false.
12414 * gensupport.h: Declare new functions and data structures.
12415
12416 * genconditions.c, dummy-conditions.c: New files.
12417 * Makefile.in: Build genconditions; run it to construct
12418 insn-conditions.c; build that and link it into most gen*
12419 programs.
12420 (HOST_SUPPORT, HOST_EARLY_SUPPORT): New variables.
12421 (GEN): Delete, unused.
12422 (STAGESTUFF): Update.
12423
12424 * gencodes.c: (gen_insn): #define CODE_FOR_xxx equal to
12425 CODE_FOR_nothing for all elided patterns.
12426 (main): Tweaked to support this.
12427 * genflags.c (gen_proto): Emit a static inline generator
12428 function here for all elided patterns, which simply returns
12429 NULL_RTX.
12430 (gen_insn): Do not define HAVE_xxx for elided patterns.
12431 (main): Tweaked to support this. No need to forward-declare
12432 struct rtx_def.
12433 * genrecog.c: Do not bother emitting the C test if it's known
12434 to be true at compile time.
12435
6ab185d6
MS
124362002-07-29 Mike Stump <mrs@apple.com>
12437
6d439235 12438 * config.gcc (target_gtfiles): Initialize, as otherwise cross
2199e5fa 12439 compilers hosted on powerpc-apple-darwin6.0 won't even build.
6ab185d6 12440
72b075d1
RE
124412002-07-29 Richard Earnshaw <rearnsha@arm.com>
12442
12443 * arm.md (sibcall, sibcall_value): Add RETURN as part of the pattern,
12444 remove clobber of LR.
12445 (sibcall_insn, sibcall_value_insn): Update accordingly.
12446 (sibcall_epilogue): Remove debugging comment from assembler stream.
12447
f63c45ec
GDR
124482002-07-29 Gabriel Dos Reis <gdr@nerim.net>
12449
12450 * pretty-print.h: Define more macros.
12451 * diagnostic.h (output_formatted_integer): Moved from...
12452 * diagnostic.c: ... here.
12453
c27c15db
KG
124542002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12455
12456 * stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use ASM_OUTPUT_LABEL_REF.
12457
99086d59
ZW
124582002-07-28 Zack Weinberg <zack@codesourcery.com>
12459
12460 * defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two
12461 arguments. Always use ".-symbol" as expression argument.
12462 * doc/tm.texi: Update to match. Document requirement for
12463 ".size symbol, .-symbol" to be acceptable to assembler.
12464
12465 * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
12466 config/arm/elf.h, config/avr/avr.h, config/cris/aout.h,
12467 config/i386/freebsd-aout.h, config/i386/sco5.h,
12468 config/ip2k/ip2k.h, config/m88k/m88k.h, config/xtensa/elf.h,
12469 config/xtensa/linux.h: Update uses of ASM_OUTPUT_MEASURED_SIZE.
12470
dd86aabf
KG
124712002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12472
6fd327e9
KG
12473 * Makefile.in (gengtype-lex.c): Fix error in last change.
12474
8155cedd
KG
12475 * alpha/freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing
12476 backslash.
12477
dd86aabf
KG
12478 * Makefile.in (vmsdbgout.o): Depend on function.h.
12479
12480 * vmsdbgout.c: Include function.h.
12481
d4348177
AM
124822002-07-28 Alan Modra <amodra@bigpond.net.au>
12483
12484 * prefix.c (update_path): Don't strip single `.' path components
12485 unless stripping a later `..' component. Exit loop as soon as
12486 a valid path is found.
12487
c2ef6d34
RS
124882002-07-27 Roger Sayle <roger@eyesopen.com>
12489
12490 * builtins.def [DEF_GCC_BUILTIN]: Require an explicit ATTRS
12491 argument. Mark BUILT_IN_RETURN, BUILT_IN_EH_RETURN,
12492 BUILT_IN_LONGJMP and BUILT_IN_TRAP as noreturn, the ISO C99
12493 floating point unordered comparisons (e.g. __builtin_isgreater)
12494 as const, and leave the remaining GCC_BUILTINs unchanged.
12495
12496 * c-decl.c (builtin_function): No need to explicitly mark
12497 BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn.
12498
52bfebf0
RS
124992002-07-27 Roger Sayle <roger@eyesopen.com>
12500
12501 * Makefile.in: rtlanal.o now depends upon real.h.
12502
12503 * flags.h [flag_signaling_nans]: New flag.
12504 [HONOR_SNANS]: New macro.
12505
12506 * toplev.c [flag_signaling_nans]: Initialize to false.
99086d59 12507 (f_options): Add processing for "-fsignaling-nans".
52bfebf0
RS
12508 (set_fast_math_flags): Clear flag_signaling_nans with -ffast-math.
12509 (process_options): flag_signaling_nans implies flag_trapping_math.
12510
12511 * c-common.c (cb_register_builtins): Define __SUPPORT_SNAN__
12512 when -fsignaling-nans. First step to implementing WG14's N965.
12513
12514 * fold-const.c (fold) [MULT_EXPR]: Conditionalize transforming
12515 1.0 * x into x, and -1.0 * x into -x on !HONOR_SNANS.
12516 [RDIV_EXPR]: Conditionalize x/1.0 into x on !HONOR_SNANS.
12517
12518 * simplify-rtx.c (simplify_relational_operation): Conditionalize
12519 transforming abs(x) < 0.0 into false on !HONOR_SNANS.
12520
12521 * rtlanal.c: #include real.c for TARGET_FLOAT_FORMAT definitions
12522 required by HONOR_SNANS. (may_trap_p): Floating point DIV, MOD,
99086d59
ZW
12523 UDIV, UMOD, GE, GT, LE, LT and COMPARE may always trap with
12524 -fsignaling_nans. EQ and NE only trap for flag_signaling_nans
52bfebf0
RS
12525 not flag_trapping_math (i.e. HONOR_SNANS but not HONOR_NANS).
12526
12527 * doc/invoke.texi: Document new -fsignaling-nans compiler option.
12528
e66f55b8
KG
125292002-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12530
12531 * Makefile.in (gengtype-lex.c): Work around a bug in flex.
12532 * gengtype-lex.l (YY_USE_PROTOS): Undef.
12533 (YY_DECL): Define.
12534
a3926fe1
RS
125352002-07-27 Roger Sayle <roger@eyesopen.com>
12536
12537 * doc/invoke.texi: Document that both -fno-builtin-foo and
12538 -fno-builtin are supported by the g++ front-end.
12539
ef69da62
SS
125402002-07-27 Stan Shebs <shebs@apple.com>
12541
12542 * configure.in: Rename config_gtfiles to target_gtfiles.
12543 * configure: Regenerate.
12544 * doc/gty.texi: Update reference.
12545 * config.gcc (powerpc-*-darwin*): Set target_gtfiles
12546 instead of appending to it.
12547
a4b0320c
AH
125482002-07-25 Aldy Hernandez <aldyh@redhat.com>
12549
12550 * config/rs6000/rs6000.c (function_arg_advance): SPE vararg
12551 vectors are split into two registers.
12552 (function_arg): Same.
12553
c427db5d
R
12554Thu Jul 26 23:00:13 2002 J"orn Rennecke <joern.rennecke@superh.com>
12555
12556 * pa.md (extv): Check predicates before emitting extv_32.
12557
57ac7be9
AM
125582002-07-27 Alan Modra <amodra@bigpond.net.au>
12559
12560 * config/rs6000/rs6000.c (rs6000_traceback_name): New var.
12561 (rs6000_traceback): New var.
12562 (rs6000_override_options): Set rs6000_traceback.
12563 (rs6000_output_function_epilogue): Implement traceback options.
12564 * config/rs6000/rs6000.h (TARGET_OPTIONS): Add "traceback=".
12565 (rs6000_traceback_name): Declare.
12566
12567 * config/rs6000/rs6000.c (output_profile_hook): Don't generate profile
12568 label reference when NO_PROFILE_COUNTERS.
12569
8e51619a
JM
125702002-07-26 Jason Merrill <jason@redhat.com>
12571
12572 * function.c (assign_parms): Handle frontend-directed pass by
12573 invisible reference.
12574
b41f25cf
NB
125752002-07-26 Neil Booth <neil@daikokuya.co.uk>
12576
12577 * doc/cppopts.texi: Update.
12578
c2734e05
NB
125792002-07-26 Neil Booth <neil@daikokuya.co.uk>
12580
12581 * cppmacro.c (_cpp_create_definition): Don't attempt redefinition
12582 warnings on assertions.
12583
c372b0fa
NB
125842002-07-26 Neil Booth <neil@daikokuya.co.uk>
12585
12586 * c-common.h (RID_AND, RID_AND_EQ, RID_NOT, RID_NOT_EQ,
12587 RID_OR, RID_OR_EQ, RID_XOR, RID_XOR_EQ, RID_BITAND, RID_BITOR,
12588 RID_COMPL): Remove.
12589 * c-parse.in (rid_to_yy): Similarly.
12590
558ee214
JM
125912002-07-26 Jason Merrill <jason@redhat.com>
12592
12593 * c-dump.c: Resurrect.
12594 * tree-dump.c: Move C-specific stuff to c-dump.c.
12595 * c-common.h: Declare c_dump_tree.
12596 * c-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN): Define.
12597 * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
12598 (c-dump.o): New rule.
12599
ce71f754
AM
126002002-07-26 Alan Modra <amodra@bigpond.net.au>
12601
12602 * config/rs6000/rs6000.md: Enable patterns using rlwinm for
12603 PowerPC64. Replace "T" and "S" constraints with "n" when the
12604 predicate will do. Formatting fixes.
12605 (extzvsi_internal2): Use "andi.", "andis." and attr type of "compare"
12606 as for extzvsi_internal1.
12607
e179e7d7
NB
126082002-07-25 Neil Booth <neil@daikokuya.co.uk>
12609
12610 * dwarfout.c (VERSION_ASM_OP, DERIV_BEGIN_LABEL_FMT,
12611 DERIV_END_LABEL_FMT): Remove.
12612 (SL_BEGIN_LABEL_FMT, SL_END_LABEL_FMT): Move.
12613
a2056183
NB
126142002-07-25 Neil Booth <neil@daikokuya.co.uk>
12615
12616 * objc/objc-act.c (UTAG_STATICS, UTAG_PROTOCOL_LIST, USERTYPE):
12617 Remove.
12618
308c142a
SS
126192002-07-25 Stan Shebs <shebs@apple.com>
12620
12621 * config/rs6000/rs6000.c (rs6000_emit_prologue): Remove unused
12622 local var dwarfp.
12623 (output_compiler_stub): Remove unused locals.
12624 (output_call): Always initialize line number.
12625
59324685
R
12626Thu Jul 25 20:34:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
12627
12628 * sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia.
12629 * sh.md (truncdiqi2, movqi_media): Likewise.
12630
77bbd421
NB
126312002-07-25 Neil Booth <neil@daikokuya.co.uk>
12632
12633 * gcse.c (obstack_chunk_alloc): Remove.
12634 (gcse_alloc): Fix to count allocated bytes.
12635 * collect2.c (SYMBOL__MAIN): Remove.
12636
7bad45b0
NB
126372002-07-25 Neil Booth <neil@daikokuya.co.uk>
12638
12639 * gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if
12640 HAVE_TARGET_EXECUTABLE_SUFFIX.
12641
184166b5
R
12642Thu Jul 25 18:57:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
12643
12644 * rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN,
12645 SIZE, EXPR and OFFSET.
12646
40cb04f1
RH
126472002-07-25 Richard Henderson <rth@redhat.com>
12648
12649 * emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos
12650 in ARRAY_REF of DECL_P case.
12651
a27fb29b
RS
126522002-07-25 Richard Sandiford <rsandifo@redhat.com>
12653
12654 * doc/invoke.texi: Document -mabi=meabi, and expand on the EABI
12655 description. Document -mips32, -mips64, and the associated -march
12656 values. Describe the "mipsN" arguments to -march. Say that the
12657 -mipsN options are equivalent to -march. Reword the description
12658 of default type sizes.
12659 * toplev.h (target_flags_explicit): Declare.
12660 * toplev.c (target_flags_explicit): New var.
12661 (set_target_switch): Update target_flags_explicit.
12662 * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Undefine.
12663 * config/mips/elf64.h (MIPS_ISA_DEFAULT): Undefine.
12664 * config/mips/iris6.h (SUBTARGET_ASM_SPEC): -mabi=64 implies -mips3.
12665 * config/mips/isa3264.h (MIPS_ENABLE_EMBEDDED_O32): Undefine.
12666 * config/mips/mips.h (mips_cpu_info): New struct.
12667 (mips_cpu_string, mips_explicit_type_size_string): Remove.
12668 (mips_cpu_info_table, mips_arch_info, mips_tune_info): Declare.
12669 (MIPS_CPP_SET_PROCESSOR): New macro.
12670 (TARGET_CPP_BUILTINS): Declare a macro for each supported processor.
12671 Define _MIPS_ARCH and _MIPS_TUNE.
12672 (MIPS_ISA_DEFAULT): Don't provide a default value. Instead...
12673 (MIPS_CPU_STRING_DEFAULT): Set to "from-abi" if neither it nor
12674 MIPS_ISA_DEFAULT were already defined.
12675 (MULTILIB_DEFAULTS): Add MULTILIB_ABI_DEFAULT.
12676 (TARGET_OPTIONS): Remove -mcpu and -mexplicit-type-size.
12677 (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New.
12678 (GAS_ASM_SPEC): Remove -march, -mcpu, -mgp* and -mabi rules.
12679 (ABI_GAS_ASM_SPEC): Remove.
12680 (MULTILIB_ABI_DEFAULT, ASM_ABI_DEFAULT_SPEC): New macros.
12681 (ASM_SPEC): Add -mgp32, -mgp64, -march, -mabi=eabi and -mabi=o64.
12682 Invoke %(asm_abi_default_spec) if no ABI was specified.
12683 (CC1_SPEC): Remove ISA -> register-size rules.
12684 (EXTRA_SPECS): Remove abi_gas_asm_spec. Add asm_abi_default_spec.
12685 * config/mips/mips.c (mips_arch_info, mips_tune_info): New vars.
12686 (mips_cpu_string, mips_explicit_type_size_string): Remove.
12687 (mips_cpu_info_table): New array.
12688 (mips_set_architecture, mips_set_tune): New fns.
12689 (override_options): Rework to make -mipsN equivalent to -march.
12690 Detect more erroneous cases, including those removed from CC1_SPEC.
12691 Don't change the ABI based on architecture, or vice versa.
12692 Unify logic with GAS.
12693 (mips_asm_file_start): Get architecture name from mips_arch_info.
12694 (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
12695 (mips_parse_cpu): Take the name of the option as argument. Handle
12696 'from-abi'. Raise an error if the option is wrong.
12697 (mips_cpu_info_from_isa): New fn.
12698
6bbdc759
RS
126992002-07-25 Richard Sandiford <rsandifo@redhat.com>
12700
12701 * config/mips/mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF.
12702 (tablejump_mips162): Likewise.
12703
80a62484
R
12704Thu Jul 25 10:23:41 2002 J"orn Rennecke <joern.rennecke@superh.com>
12705
12706 * simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to
12707 int_mode_for_mode.
12708
ea793912
GDR
127092002-07-25 Gabriel Dos Reis <gdr@nerim.net>
12710
12711 * c-common.c (c_sizeof_or_alignof_type): Take a third argument for
99086d59 12712 complaining.
ea793912
GDR
12713 * c-common.h (c_sizeof): Adjust definition.
12714 (c_alignof): Likewise.
12715 * c-tree.h (c_sizeof_nowarn): Now macro.
12716 * c-typeck.c (c_sizeof_nowarn): Remove definition.
12717
2d615444
NB
127182002-07-25 Neil Booth <neil@daikokuya.co.uk>
12719
12720 * c-decl.c (c_decode_option): No need to handle switches
12721 cpplib handles.
12722
2be2ac70
ZW
127232002-07-24 Zack Weinberg <zack@codesourcery.com>
12724
12725 * defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, ASM_OUTPUT_SIZE_DIRECTIVE,
12726 ASM_OUTPUT_MEASURED_SIZE): New default definitions of new macros.
12727 * doc/tm.texi: Document them. Also document SIZE_ASM_OP,
12728 TYPE_ASM_OP, and TYPE_OPERAND_FMT.
12729
12730 * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
12731 config/alpha/elf.h, config/arm/elf.h, config/avr/avr.h,
12732 config/cris/aout.h, config/i386/freebsd-aout.h,
12733 config/i386/sco5.h, config/ia64/ia64.c, config/ip2k/ip2k.h,
12734 config/m68k/m68kelf.h, config/m68k/m68kv4.h, config/m88k/m88k.h,
12735 config/mcore/mcore-elf.h, config/mips/elf.h, config/mips/elf64.h,
12736 config/mips/iris6.h, config/mips/linux.h, config/pa/pa-linux.h,
12737 config/pa/pa64-hpux.h, config/rs6000/sysv4.h,
12738 config/xtensa/elf.h, config/xtensa/linux.h:
12739 Use the new macros.
12740 Where possible, remove redundant definitions of SIZE_ASM_OP,
12741 TYPE_ASM_OP, and TYPE_OPERAND_FMT.
12742
518878e1
AH
127432002-07-24 Aldy Hernandez <aldyh@redhat.com>
12744
12745 * config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
12746 TARGET_ISEL, and TARGET_FPRS.
99086d59 12747
518878e1
AH
12748 * doc/invoke.texi (RS/6000 and PowerPC Options): Document
12749 -mabi=spe, -mabi=no-spe, and -misel=.
12750
12751 * config/rs6000/rs6000-protos.h: Add output_isel.
12752 Move vrsave_operation prototype here.
12753
12754 * config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
12755 (smaxsi3): Same.
12756 (uminsi3): Same.
12757 (umaxsi3): Same.
12758 (abssi2_nopower): Disallow when TARGET_ISEL.
12759 (*ne0): Same.
12760 (negsf2): Change to expand and rename old pattern to *negsf2.
12761 (abssf2): Change to expand and rename old pattern to *abssf2.
99086d59 12762
518878e1
AH
12763 New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
12764 fixunssfsi2.
12765
12766 Change patterns that check for TARGET_HARD_FLOAT or
12767 TARGET_SOFT_FLOAT to also check TARGET_FPRS.
12768
12769 * config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
12770 rs6000_isel, rs6000_fprs, rs6000_isel_string.
12771 (rs6000_override_options): Add 8540 case to
12772 processor_target_table.
12773 Set rs6000_isel for the 8540.
12774 Call rs6000_parse_isel_option.
12775 (enable_mask_for_builtins): New.
12776 (rs6000_parse_isel_option): New.
12777 (rs6000_parse_abi_options): Add spe and no-spe.
12778 (easy_fp_constant): Treat !TARGET_FPRS as soft-float.
12779 (rs6000_legitimize_address): Check for TARGET_FPRS when checking
12780 for TARGET_HARD_FLOAT.
12781 Add case for SPE_VECTOR_MODE.
12782 (rs6000_legitimize_reload_address): Handle SPE vector modes.
12783 (rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
12784 vector modes.
12785 Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
12786 (rs6000_emit_move): Check for TARGET_FPRS.
12787 Add cases for SPE vector modes.
12788 (function_arg_boundary): Return 64 for SPE vector modes.
12789 (function_arg_advance): Check for TARGET_FPRS and
12790 Handle SPE vectors.
12791 (function_arg): Same.
12792 (setup_incoming_varargs): Check for TARGET_FPRS.
12793 (rs6000_va_arg): Same.
12794 (struct builtin_description): Un-constify mask field. Move up in
12795 file.
12796 (bdesc_2arg): Un-constify and add SPE builtins.
12797 (bdesc_1arg): Same.
12798 (bdesc_spe_predicates): New.
12799 (bdesc_spe_evsel): New.
12800 (rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
12801 (rs6000_expand_binop_builtin): Same.
12802 (bdesc_2arg_spe): New.
12803 (spe_expand_builtin): New.
12804 (spe_expand_predicate_builtin): New.
12805 (spe_expand_evsel_builtin): New.
12806 (rs6000_expand_builtin): Call spe_expand_builtin for SPE.
12807 (rs6000_init_builtins): Initialize SPE builtins. Call
12808 rs6000_common_init_builtins.
12809 (altivec_init_builtins): Move all non-altivec builtin code to...
12810 (rs6000_common_init_builtins): ...here. New function.
12811 (branch_positive_comparison_operator): Allow NE code for SPE.
12812 (ccr_bit): Return correct ccr bit for SPE fp.
12813 (print_operand): Emit crnor in 'D' case for SPE.
12814 New case 't'.
12815 Add SPE code for 'y' case.
12816 (rs6000_generate_compare): Generate rtl for SPE fp.
12817 (output_cbranch): Handle SPE hard floats.
12818 (rs6000_emit_cmove): Handle isel.
12819 (rs6000_emit_int_cmove): New.
12820 (output_isel): New.
12821 (rs6000_stack_info): Adjust stack frame so GPRs are saved in
12822 64-bits for SPE.
12823 (debug_stack_info): Add SPE info.
12824 (gen_frame_mem_offset): New.
12825 (rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
12826 Change mode of frame pointer, when saving it, to Pmode.
12827 (rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
12828 Misc cleanups and use gen_frame_mem_offset when appropriate.
12829
12830 * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
12831 (TARGET_SPE_ABI): New.
12832 (TARGET_SPE): New.
12833 (TARGET_ISEL): New.
12834 (TARGET_FPRS): New.
12835 (FIXED_SCRATCH): New.
12836 (RTX_COSTS): Add PROCESSOR_PPC8540.
12837 (ASM_CPU_SPEC): Add case for 8540.
12838 (TARGET_OPTIONS): Add isel= case.
12839 (rs6000_spe_abi): New.
12840 (rs6000_isel): New.
12841 (rs6000_fprs): New.
12842 (rs6000_isel_string): New.
12843 (UNITS_PER_SPE_WORD): New.
12844 (LOCAL_ALIGNMENT): Adjust for SPE.
12845 (HARD_REGNO_MODE_OK): Same.
12846 (DATA_ALIGNMENT): Same.
12847 (MEMBER_TYPE_FORCES_BLK): New.
12848 (FIRST_PSEUDO_REGISTER): Set to 113.
12849 (FIXED_REGISTERS): Add SPE registers.
12850 (reg_class): Same.
12851 (REG_CLASS_NAMES): Same.
12852 (REG_CLASS_CONTENTS): Same.
12853 (REGNO_REG_CLASS): Same.
12854 (REGISTER_NAMES): Same.
12855 (DEBUG_REGISTER_NAMES): Same.
12856 (ADDITIONAL_REGISTER_NAMES): Same.
12857 (CALL_USED_REGISTERS): Same.
12858 (CALL_REALLY_USED_REGISTERS): Same.
12859 (SPE_ACC_REGNO): New.
12860 (SPEFSCR_REGNO): New.
12861 (SPE_SIMD_REGNO_P): New.
12862 (HARD_REGNO_NREGS): Adjust for SPE.
12863 (VECTOR_MODE_SUPPORTED_P): Same.
12864 (REGNO_REG_CLASS): Same.
12865 (FUNCTION_VALUE): Same.
12866 (LIBCALL_VALUE): Same.
12867 (LEGITIMATE_OFFSET_ADDRESS_P): Same.
12868 (SPE_VECTOR_MODE): New.
12869 (CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
12870 the GPRs. Set FIXED_SCRATCH fixed in SPE case.
12871 (rs6000_stack): Add spe_gp_size, spe_padding_size,
12872 spe_gp_save_offset.
12873 (USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
12874 (LEGITIMATE_LO_SUM_ADDRESS_P): Same.
12875 (SPE_CONST_OFFSET_OK): New.
12876 (rs6000_builtins): Add SPE builtins.
12877
12878 * testsuite/gcc.dg/ppc-spe.c: New.
99086d59 12879
518878e1
AH
12880 * config/rs6000/eabispe.h: New.
12881
12882 * config/rs6000/spe.h: New.
12883
12884 * config/rs600/spe.md: New.
12885
12886 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
12887 __SIMD__ for TARGET_SPE.
12888
12889 * config.gcc: Add powerpc-*-eabispe* case.
12890 Add spe.h to user headers for powerpc.
12891
8d1b7ba1
CD
128922002-07-24 Chris Demetriou <cgd@broadcom.com>
12893
12894 * config/mips/elf.h (STARTFILE_SPEC): Undo previous change.
12895 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
12896 * config/mips/isa3264.h (STARTFILE_SPEC): Likewise.
12897
8ad8135a
RH
128982002-07-24 Richard Henderson <rth@redhat.com>
12899
12900 * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Use GOTO_SUBROUTINE_EXPR
12901 form when not optimizing.
12902
dc44a4d8
DM
129032002-07-24 David Mosberger <davidm@hpl.hp.com>
12904
12905 * config/ia64/ia64.c (gen_thread_pointer): Fix typo in marking
12906 thread_pointer_rtx as unchanging.
12907
c5605318
MM
129082002-07-24 Michael Matz <matz@suse.de>
12909
12910 * ra-colorize.c (INV_REG_ALLOC_ORDER): New macro.
12911 (free_reg): Use it.
12912
3ade30ea
RE
129132002-07-24 Richard Earnshaw <rearnsha@arm.com>
12914
12915 * arm.md (arm_buneq, arm_bltgt): put '\' before ';' in output
12916 pattern.
12917 (arm_buneq_reversed, arm_bltgt_reversed): Likewise.
12918 (movsicc, movsfcc, movdfcc): FAIL if UNEQ or LTGT.
12919
8a3ad737
CD
129202002-07-24 Chris Demetriou <cgd@broadcom.com>
12921
12922 * config/mips/elf.h (STARTFILE_SPEC): Never include crt0.o.
12923 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
12924 * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine.
12925
7e51e626
JH
12926Wed Jul 24 17:59:12 CEST 2002 Jan Hubicka <jh@suse.cz>
12927
12928 * toplev.c (rest_of_compilation): Dump loops before clobbering
12929 the structure.
12930
5df533b3
JH
12931Wed Jul 24 17:23:16 CEST 2002 Jan Hubicka <jh@suse.cz>
12932
12933 * rtlanal.c (keep_with_call_p): Avoid overflow in fixed_regs.
12934
79258dce
RS
129352002-07-24 Frank van der Linden <fvdl@wasabisystems.com>
12936
12937 PR optimization/7291
12938 * config/i386/i386.c (ix86_expand_clrstr): Fix bzero alignment
12939 problem on x86_64.
12940
26ff2117
GDR
129412002-07-24 Gabriel Dos Reis <gdr@nerim.net>
12942
12943 * pretty-print.h: Add macros from cp/error.c
12944
0ba1b2ff
AM
129452002-07-24 Alan Modra <amodra@bigpond.net.au>
12946
12947 * config/rs6000/rs6000-protos.h (mask_operand_wrap): Declare.
12948 (mask64_2_operand): Declare.
12949 (build_mask64_2_operands): Declare.
12950 (and64_2_operand): Declare.
12951 (extract_MB): Declare.
12952 (extract_ME): Declare.
12953 * config/rs6000/rs6000.c (mask64_operand): Allow all ones. Remove
12954 CONST_DOUBLE code.
12955 (mask_operand_wrap): New insn predicate.
12956 (mask64_2_operand): Likewise.
12957 (and64_2_operand): Likewise.
12958 (build_mask64_2_operands): New function.
12959 (extract_MB): New function.
12960 (extract_ME): New function.
12961 (print_operand <case m,M>): Use extract_MB and extract_ME.
12962 (print_operand <case S>): Allow all ones. Remove CONST_DOUBLE support.
12963 * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Add 't'.
12964 (PREDICATE_CODES): Add and64_2_operand, mask_operand_wrap and
12965 mask64_2_operand. Remove CONST_DOUBLE from mask64_operand.
12966 * config/rs6000/rs6000.md (andsi3_internal3): New
12967 (andsi3_internal3+1): Enable split for powerpc64.
12968 (andsi3_internal3+2): New split.
12969 (andsi3_internal4): Renamed old andsi3_internal3.
12970 (andsi3_internal5): New.
12971 (andsi3_internal5+1): Enable split for powerpc64.
12972 (andsi3_internal5+2): New split.
12973 (andsi3_internal6, andsi3_internal7, andsi3_internal8): New.
12974 (anddi3): Handle 't' constraint.
12975 (anddi3+1): New split.
12976 (anddi3_internal2): Handle 't' constraint.
12977 (anddi3_internal2+1): New split.
12978 (anddi3_internal3): Handle 't' constraint.
12979 (anddi3_internal3+1): New split.
12980
097657c3
AM
129812002-07-24 Alan Modra <amodra@bigpond.net.au>
12982
12983 * config/rs6000/rs6000.md: Remove scratch reg on insns using
12984 addze and similar (plus (comparison r1 r2) r3) insns. Add
12985 missing scratch reg in one case. Formatting fixes.
12986
a69cbaac
NB
129872002-07-24 Neil Booth <neil@daikokuya.co.uk>
12988
12989 * cppexp.c (parse_defined): Mark macro used.
12990 * cpphash.h (struct cpp_macro): New member "used".
12991 (_cpp_mark_macro_used, _cpp_warn_if_unused_macro): New.
12992 (struct cpp_reader): New member.
12993 * cppinit.c (cpp_finish_options): Set first_unused_line.
12994 (cpp_finish): Warn of unused macros if requested.
12995 (OPT_TABLE): New switches.
12996 (cpp_handle_option): Handle them.
12997 * cpplib.c (do_undef): Warn if macro unused.
12998 (do_ifdef, do_ifndef): Mark macro used.
12999 * cpplib.h (struct cpp_options): New member.
13000 * cppmacro.c (_cpp_warn_if_unused_macro): New.
13001 (enter_macro_context): Mark macro used.
13002 (_cpp_create_definition): Mark macro unused; warn if unused
13003 when redefined.
13004 * cpptrad.c (scan_out_logcial_line, push_replacement_text):
13005 Mark macros used.
13006 * doc/cppopts.texi: Update.
13007
c0667597
NB
130082002-07-23 Neil Booth <neil@daikokuya.co.uk>
13009
13010 * dwarf2out.c (SECTION_ASM_OP,
13011 ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
13012 * system.h (SECTION_ASM_OP): Poison.
13013 * tree.c (FILE_FUNCTION_PREFIX_LEN): Remove.
13014 * config/alpha/alpha-interix.h, config/mips/linux.h
13015 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
13016 * config/mmix/mmix-protos.h, config/mmix/mmix.c
13017 (mmix_asm_output_define_label_difference_symbol): Remove.
13018 * config/mmix/mmix.h
13019 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
b841421a 13020 * doc/tm.texi: Remove documentation.
c0667597 13021
bf7cd754
R
13022Tue Jul 23 21:49:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
13023
13024 * recog.c (asm_operand_ok): Allow float CONST_VECTORs for 'F'.
13025 (constrain_operands): Likewise.
13026 * regclass.c (record_reg_classes): Likewise.
13027 * reload.c (find_reloads): Likewise.
13028 * doc/md.texi: Likewise.
451f86fd
R
13029
13030 * reload.c (find_reloads_toplev): Use simplify_gen_subreg.
13031 * simplify-rtx.c (simplify_subreg): When converting to a non-int
13032 mode, try to convert to an integer mode of matching size first.
1d5fa6b4
R
13033
13034 * simplify-rtx.x (simplify_subreg): When constructing a CONST_VECTOR
13035 from individual subregs, check that each subreg has been generated
13036 sucessfully.
13037
10d6af32
NB
130382002-07-23 Neil Booth <neil@daikokuya.co.uk>
13039
13040 * genautomata.c (VLA_HWINT_SHORTEN, VLA_HWINT_LAST): Remove.
13041 * df.c (HANDLE_SUBREG, FOR_EACH_BB_IN_BITMAP_REV,
13042 FOR_EACH_BB_IN_SBITMAP): Remove.
13043 * gcse.c (NEVER_SET, FOLLOW_BACK_EDGES): Remove.
13044 * haifa-sched.c (DONE_PRIORITY, MAX_PRIORITY, TAIL_PRIORITY,
13045 LAUNCH_PRIORITY, DONE_PRIORITY_P, LOW_PRIORITY_P): Remove.
13046 * loop.c (PREFETCH_BLOACK_IN_LOOP_MIN,
13047 PREFETCH_LIMIT_TO_SIMULTANEOUS): Remove.
13048 * regrename.c (REGNO_MODE_OK_FOR_BASE_P): Remove.
13049
6aaae39a
GDR
130502002-07-23 Gabriel Dos Reis <gdr@nerim.net>
13051
13052 * pretty-print.h: New file.
13053
45e574d0
JDA
130542002-07-23 Paul Koning <pkoning@equallogic.com>
13055
13056 * real.c (REAL_WORDS_BIG_ENDIAN): Make 1 for DEC.
13057 (LARGEST_EXPONENT_IS_NORMAL): Ditto.
13058 (VAX_HALFWORD_ORDER): Define (1 for DEC VAX, 0 otherwise).
13059 (TARGET_G_FLOAT): Default to 0 if not defined.
99086d59 13060 (ieeetoe): New, common routine to convert target format floats
45e574d0
JDA
13061 to internal form.
13062 (e24toe, e53toe): Change to use ieeetoe, distinguish DEC
13063 vs. others.
13064 (e113toe): Change to use ieeetoe.
13065
130662002-07-23 Roman Lechtchinsky <rl@cs.tu-berlin.de>
13067
13068 * real.c (REAL_WORDS_BIG_ENDIAN): Make sure it is 0 for DEC and 1 for
13069 IBM.
13070 (e53toe): Assume IEEE if non of DEC, IBM and C4X is defined.
13071 (e64toe): Remove special cases for DEC and IBM. Remove support for
13072 ARM_EXTENDED_IEEE_FORMAT.
13073 (e24toe): Remove special cases for DEC.
13074 (significand_size): Simplify. Indent.
13075 (ieee_format, ieee_24, ieee_53, ieee_64, ieee_113): New.
13076 (etoieee, toieee): New.
13077 (etoe113, toe113, etoe64, toe64, etoe53, toe53, etoe24, toe24): Use
13078 etoieee and toieee for IEEE arithmetic.
13079
3764f879
GDR
130802002-07-23 Gabriel Dos Reis <gdr@nerim.net>
13081
13082 * doc/extend.texi: Say ISO C90, not ISO C89.
13083 * doc/invoke.texi: Likewise.
13084 * doc/standards.texi: Likewise.
13085
aa0f70e6
SE
130862002-07-23 Steve Ellcey <sje@cup.hp.com>
13087
13088 * gcc/explow.c (convert_memory_address): Fix conversion of CONSTs.
13089 Fix permutation of conversion and plus/mult.
13090 * gcc/builtins.c (expand_builtin_memcpy) Ensure return pointer is
13091 ptr_mode and not Pmode when POINTERS_EXTEND_UNSIGNED is defined.
13092 (expand_builtin_strncpy) Ditto.
13093 (expand_builtin_memset) Ditto.
13094
fa72b064
GDR
130952002-07-23 Gabriel Dos Reis <gdr@nerim.net>
13096
13097 Fix PR/7363:
13098 * c-common.c (c_sizeof_or_alignof_type): New function.
13099 (c_alignof): Remove definition.
13100 * c-common.h (c_sizeof, c_alignof): Define as macros.
13101 (c_sizeof_or_alignof_type): Declare.
13102 (my_friendly_assert): Moved from cp/cp-tree.h
13103 * c-typeck.c (c_sizeof): Remove definition.
13104
2b773ee2
JH
131052002-07-23 Jan Hubicka <jh@suse.cz>
13106
13107 * gcse.c (try_replace_reg): Use num_changes_pending.
13108 * recog.c (num_changes_pending): New function.
13109 (validate_replace_src): Use validate_repalce_src_group.
13110 (validate_replace_src_group): New.
13111 * recog.h (validate_repalce_src_group): New.
13112 (num_changes_pending): Likewise.
13113
a0dc500c
R
13114Tue Jul 23 12:16:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
13115
13116 * calls.c (emit_library_call_value_1): If
13117 FUNCTION_ARG_PASS_BY_REFERENCE is true, pretend this is neither
13118 libcall, const call nor pure call.
13119
d22eda7b
NB
131202002-07-23 Neil Booth <neil@daikokuya.co.uk>
13121
13122 * config/m88k/m88k.h (SECTION_ASM_OP): Remove.
13123
b5e66e65
NB
131242002-07-23 Neil Booth <neil@daikokuya.co.uk>
13125
13126 * vmsdbgout.c (SECTION_ASM_OP): Remove.
13127
c3a600c0
NB
131282002-07-23 Neil Booth <neil@daikokuya.co.uk>
13129
13130 * config/i386/i386.c (AT_BP): Remove.
13131
4fa31c2a
NB
131322002-07-23 Neil Booth <neil@daikokuya.co.uk>
13133
13134 * defaults.h (obstack_chunk_alloc, obstack_chunk_free):
13135 Default definition.
13136 * gcse.c: Don't define obstack_chunk_free.
13137 * collect2.c, conflict.c, df.c, diagnostic.c, fix-header.c,
13138 flow.c, gcc.c, genattrtab.c, genautomata.c, genflags.c, gensupport.c,
13139 integrate.c, loop.c, ra.c, read-rtl.c, regrename.c, reload1.c,
13140 reorg.c, tlink.c, tree.c, config/arm/arm.c, objc/objc-act.c:
13141 Don't define obstack macros.
13142
fd576c86
SC
131432002-07-22 Stephane Carrez <stcarrez@nerim.fr>
13144
13145 PR target/6744
13146 * config/m68hc11/m68hc11.c (m68hc11_z_replacement): Also replace
13147 ASM_OPERANDS instructions.
13148
b791ff31
SC
131492002-07-22 Stephane Carrez <stcarrez@nerim.fr>
13150
13151 PR target/7361
13152 * config/m68hc11/m68hc11.c (go_if_legitimate_address_internal): Accept
13153 constant addresses only on 68HC12.
13154
4a941115
NB
131552002-07-22 Neil Booth <neil@daikokuya.co.uk>
13156
13157 * cppfiles.c (stack_include_file): Correct test of whether
13158 a dependency should be output.
13159
7488cc6d
DE
131602002-07-22 David Edelsohn <edelsohn@gnu.org>
13161
13162 * collect2.c (is_ctor_dtor): Add other possible JOINER values.
13163
b41caf7c
RE
131642002-07-22 Richard Earnshaw <rearnsha@arm.com>
13165
13166 * arm.md (movqi): If optimizing and we can create pseudos, use
13167 a ZERO_EXTEND to load from memory, then copy the result into the
13168 target.
13169 (movhi): Likewise, but only for ARMv4.
13170
492e9934
NB
131712002-07-22 Neil Booth <neil@daikokuya.co.uk>
13172
13173 * ssa-ccp.c (PHI_PARMS): Remove.
13174
f01f01a6
RS
131752002-07-22 Richard Sandiford <rsandifo@redhat.com>
13176
13177 * config/mips/mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS
13178 on big-endian targets.
13179
c2ae8aef
KG
131802002-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13181
13182 * hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE,
13183 HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
13184 HOST_WIDEST_INT_PRINT_DEC_SPACE, HOST_WIDEST_INT_PRINT_DEC_SPACE):
13185 New formatting macros.
13186
13187 * ra-debug.c (dump_static_insn_cost): Avoid string concatenation.
13188
eab2120d
R
13189Mon Jul 22 15:27:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
13190
13191 * rtlanal.c (subreg_regno_offset): Return correct offset for
13192 big endian paradoxical subregs.
0d541696
R
13193
13194 * optabs.c (expand_vector_unop): Don't expand using sub_optab
13195 if we got the wrong mode.
bb9b3805
R
13196
13197 * hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define.
13198 * genrecog.c (write_switch, write_cond): Use it.
13199 * genemit.c (gen_exp): Likewise.
13200
e96eb215
JJ
132012002-07-22 Jakub Jelinek <jakub@redhat.com>
13202
13203 * c-decl.c (build_compound_literal): Set decl TREE_READONLY from TYPE.
13204
cf3c4f56
JJ
132052002-07-22 Jakub Jelinek <jakub@redhat.com>
13206
13207 * c-decl.c (build_compound_literal): Defer compound literal decls
13208 until until file end to emit them only if they are actually used.
13209
533c4863
KG
132102002-07-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13211
13212 * ra-build.c (check_conflict_numbers): Hide unused function.
13213 (livethrough_conflicts_bb): Avoid automatic aggregate
13214 initialization.
13215 (parts_to_webs_1): Avoid `U' integer constant modifier.
13216 (conflicts_between_webs): Wrap a variable in the macro controlling
13217 its usage.
13218 * ra-debug.c (ra_debug_msg): Use VA_OPEN/VA_CLOSE.
13219 (dump_igraph, dump_graph_cost): Avoid string concatenation
13220 (dump_static_insn_cost): Avoid automatic aggregate
13221 initialization.
13222 * ra-rewrite.c (insert_stores): Avoid automatic aggregate
13223 initialization.
13224 (dump_cost): Avoid string concatenation
13225
8943a0b4
RH
132262002-07-21 Richard Henderson <rth@redhat.com>
13227
13228 * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Don't use
13229 GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded.
13230
b1aef35b
RH
132312002-07-21 Richard Henderson <rth@redhat.com>
13232
13233 * unroll.c (find_splittable_givs): Do not split DEST_ADDR givs
13234 that are not unrolled completely.
13235
5e1afb11
RH
132362002-07-21 Richard Henderson <rth@redhat.com>
13237
13238 * loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS.
13239 * loop.c (strength_reduce): Update.
13240 * toplev.c (rest_of_compilation): Do unrolling in the first
13241 loop pass, not the second.
13242
c67a1cf6
RH
132432002-07-21 Richard Henderson <rth@redhat.com>
13244
13245 * emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL
13246 when flag_argument_noalias == 2.
13247 * alias.c (nonoverlapping_memrefs_p): Handle that.
13248 * print-rtl.c (print_mem_expr): Likewise.
13249
b68daef4
HS
132502002-07-21 Hartmut Schirmer <hartmut.schirmer@arcor.de>
13251
13252 * libgcc2.c (__divdi3, __moddi3): Use unary minus operator
13253 instead of __negdi2 directly.
13254
060a58c5
NB
132552002-07-21 Neil Booth <neil@daikokuya.co.uk>
13256
13257 * gengenrtl.c (gencode): Don't define obstack_alloc_rtx.
13258 * function.c (SYMBOL__MAIN): Remove definition.
13259 * global.c (SET_CONFLICT, REGBITP, ALLOCNO_LIVE_P): Remove.
99086d59 13260 * predict.c (PROB_NEVER, PROB_LIKELY, PROB_UNLIKELY): Remove.
060a58c5
NB
13261 * profile.c (GCOV_INDEX_TO_BB): Remove.
13262 * sched-rgn.c (ABS_VALUE, MIN_DIFF_PRIORITY, MIN_PROB_DIFF): Remove.
13263 * simplify-rtx.c (FIXED_BASE_PLUS_P): Remove.
13264
2f8dd115
NB
132652002-07-21 Neil Booth <neil@daikokuya.co.uk>
13266
13267 * c-lex.c (GET_ENVIRONMENT): Remove.
13268 * collect2.c (GET_ENV_PATH_LIST): Remove.
13269 (prefix_from_env): Use GET_ENVIRONMENT.
13270 * cppinit.c (GET_ENV_PATH_LIST): Remove.
13271 (init_standard_includes): Use GET_ENVIRONMENT.
13272 * defaults.h (GET_ENVIRONMENT): Define here if not already.
13273 * gcc.c (GET_ENV_PATH_LIST): Remove.
13274 (make_relative_prefix, process_command): Update.
13275 * protoize.c (GET_ENV_PATH_LIST): Remove.
13276 (do_processing): Update.
13277
56508306
GDR
132782002-07-21 Gabriel Dos Reis <gdr@nerim.net>
13279
13280 * c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'.
13281 (grokdeclarator): Likewise.
13282 * c-format.c (C_STD_NAME): Likewise.
13283 * c-lex.c (interpret_integer): Likewise.
13284 * c-typeck.c (build_array_ref): Likewise.
13285 * cpplex.c (_cpp_lex_direct): Likewise.
13286 * toplev.c (documented_lang_options): Likewise.
13287
e2f62855
NB
132882002-07-21 Neil Booth <neil@daikokuya.co.uk>
13289
13290 * c-format.c (T99_I, T99_UI): Remove.
13291
c89d1dfd
NB
132922002-07-21 Neil Booth <neil@daikokuya.co.uk>
13293
13294 * c-typeck.c (SAVE_SPELLING_DEPTH): Remove.
13295
46690369
JH
13296Sun Jul 21 21:36:41 CEST 2002 Jan Hubicka <jh@suse.cz>
13297
13298 * gcse.c (do_local_cprop): Do not extend lifetimes of registers set by
13299 do_local_cprop.
13300
60ffc1b8
AJ
133012002-07-21 Andreas Jaeger <aj@suse.de>
13302
99086d59 13303 * reload1.c (fixup_abnormal_edges): Remove unused variable.
60ffc1b8 13304
c05ffc49
BS
133052002-07-21 Bernd Schmidt <bernds@redhat.com>
13306
13307 Improvements for the ifcvt pass from Michael Meissner, with patches
13308 by Richard Sandiford <rsandifo@redhat.com>
13309 * basic-block.h (struct ce_if_block, ce_if_block_t): New types.
13310 * ifcvt.c (cond_exec_changed_p): New static variable.
13311 (last_active_insn): New function, renamed from last_active_insn_p
13312 and changed to return the last active insn in a basic block. All
13313 callers updated.
13314 (block_fallthru): New function.
13315 (cond_exec_process_insns): New argument CE_INFO. Pass it to
13316 IFCVT_MODIFY_INSN. All callers updated.
13317 Return false if START or END are NULL.
13318 Handle case where we're processing an insn that is already
13319 conditional.
13320
13321 (noce_process_if_block): CE_INFO argument rather than
13322 multiple args containing the involved basic blocks. All callers
13323 changed.
13324 (process_if_block, merge_if_block, find_if_block,
13325 cond_exec_process_if_block): Likewise.
13326
13327 (cond_exec_process_if_block): New arg DO_MULTIPLE_P. All callers
13328 changed.
13329 Use new function last_active_insn to simplify some code.
13330 New code to handle multiple tests.
13331 Call IFCVT_MODIFY_CANCEL in all failure cases, otherwise set
13332 cond_exec_changed_p to TRUE.
13333
13334 (process_if_block): New code to handle multiple tests.
13335 (merge_if_block): Likewise.
13336 (find_if_header): New arg PASS. Changed to return the currently
13337 processed basic block or NULL instead of true/false. All callers
13338 changed.
13339 Call IFCVT_INIT_EXTRA_FIELDS.
13340 (block_jumps_and_fallthru_p): New function.
13341 (find_if_block): Discover opportunities to convert multiple tests.
13342 Add additional debugging output.
13343 Update the ce_info structure before returning.
13344
13345 (if_convert): Run multiple passes of if-conversion.
13346 * doc/tm.texi (IFCVT_MODIFY_TESTS, IFCVT_MODIFY_INSN,
13347 IFCVT_MODIFY_FINAL, IFCVT_MODIFY_CANCEL, IFCVT_MODIFY_MULTIPLE_TESTS,
13348 IFCVT_INIT_EXTRA_FIELDS, IFCVT_EXTRA_FIELDS): Update documentation for
13349 these macros.
13350
ae860ff7
JH
13351Sun Jul 21 00:54:54 CEST 2002 Jan Hubicka <jh@suse.cz>
13352
13353 * gcse.c: Include cselib.h
13354 (constptop_register): Break out from ...
13355 (cprop_insn): ... here; kill basic_block argument.
13356 (do_local_cprop, local_cprop_pass): New functions.
13357 (one_cprop_pass): Call local_cprop_pass.
13358
0da65b89
RS
133592002-07-20 Roger Sayle <roger@eyesopen.com>
13360
13361 * simplify-rtx.c (simplify_relational_operation): Optimize
13362 abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).
13363
47cc673a
MM
133642002-07-20 Michae Matz <matz@suse.de>
13365
13366 * ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.
13367
68e65275
NB
133682002-07-20 Neil Booth <neil@daikokuya.co.uk>
13369
13370 * cppexp.c (struct op): Add token pointer.
13371 (check_promotion, CHECK_PROMOTION): New.
13372 (optab): Update.
13373 (_cpp_parse_expr): Update, use token pointer of struct op.
13374 (reduce): Warn about change of sign owing to promotion.
13375 * cppinit.c (cpp_handle_option): New warning if -Wall.
13376 * cpplib.h (struct cpp_options): New member.
13377
e3485bbc
DE
133782002-07-19 David Edelsohn <edelsohn@gnu.org>
13379
13380 * config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
13381 fpu list. Separate Power4 compare and delayed_compare. Correct
13382 Power4 fpcompare.
13383 (fix_truncdfsi2_internal): Restore FPR preference.
13384 * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
13385 mcpu?power4, mcpu?604e. Remove mpower, mpower2, mpowerpc.
13386
449655a6
MV
133872002-07-19 Momchil Velikov <velco@fadata.bg>
13388
13389 * reload1.c (reload_as_needed): Duplicate oldpat.
13390
8b583747
AM
133912002-07-20 Alan Modra <amodra@bigpond.net.au>
13392
13393 PR optimization/7130
13394 * loop.h (struct loop_info): Add "preconditioned".
13395 * unroll.c (unroll_loop): Set it.
13396 * doloop.c (doloop_modify_runtime): Correct count for unrolled loops.
13397
0dc36574
ZW
133982002-07-19 Zack Weinberg <zack@codesourcery.com>
13399
13400 * rtl.def (CODE_LABEL): Remove slot 8.
13401 * rtl.h (struct rtx_def): Document new uses of jump and call fields.
13402 (LABEL_ALTERNATE_NAME): Delete.
13403 (LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New.
13404 * defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME.
13405
13406 * final.c (output_alternate_entry_point): New.
13407 (final_scan_insn): Use it instead of
13408 ASM_OUTPUT_ALTERNATE_LABEL_NAME. Do not consider possibility
13409 of a case label being an alternate entry point.
13410
13411 * cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P.
13412 * emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL.
13413 Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME
13414 (field deleted).
13415 * print-rtl.c, ra-debug.c: Update code to output CODE_LABELs.
13416
13417 * doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and
13418 LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME.
13419 * doc/tm.texi: Delete documentation of
13420 ASM_OUTPUT_ALTERNATE_LABEL_NAME.
13421
59267987
RO
134222002-07-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
13423
13424 * config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
13425 (PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
13426 (LINK_SPEC): Define.
13427 (STARTFILE_SPEC): Define.
13428 (ENDFILE_SPEC): Define.
13429
13430 * config/mips/iris6-o32.h (LINK_SPEC): Move ...
13431 * config/mips/iris6-o32-as.h (LINK_SPEC): ... here.
13432
13433 * config/mips/iris6-o32-gas.h: New file.
13434 * config.gcc (mips-sgi-irix6*o32): Use it.
13435
13436 * config/mips/t-iris5-gas: New file.
13437 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
13438
75aef48a
NB
134392002-07-19 Neil Booth <neil@daikokuya.co.uk>
13440
13441 * cppexp.c (ALWAYS_EVAL): Remove.
13442 (optab, reduce): Always evaluate.
13443 (num_unary_op, num_binary_op, num_div_op): Issue diagnostics
13444 only if not skipping evaluation.
13445
72a5503d
MM
134462002-07-19 Marek Michalkiewicz <marekm@amelek.gda.pl>
13447
13448 * config/avr/avr.c (debug_hard_reg_set): Remove.
13449
059ba716
CD
134502002-07-19 Chris Demetriou <cgd@broadcom.com>
13451
13452 * gcc.c (cpp_options): Include "%1" (cc1_spec).
13453
544823b6
RH
134542002-07-19 Richard Henderson <rth@redhat.com>
13455
13456 * loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.
13457
c35383cb
AM
134582002-07-19 Alan Modra <amodra@bigpond.net.au>
13459
13460 * prefix.c (update_path): Don't zap single `.' path components
13461 unless followed by another `.' and fix typo last patch.
13462
ad28cff7
NB
134632002-07-18 Neil Booth <neil@daikokuya.co.uk>
13464
13465 * cppexp.c (cpp_num_mul): Remove unused parameter.
13466 (UNARY, BINARY, OTHER, binary_handler): Remove.
13467 (ALWAYS_EVAL): New.
13468 (optab): Update.
13469 (reduce): Refactor to a large switch, don't use a function
13470 pointer.
13471
139b7f86
BT
134722002-07-18 Bo Thorsen <bo@berlioz.suse.de>
13473
13474 * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Define this always.
13475
e69d1422
R
13476Thu Jul 18 19:39:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
13477
13478 * sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.
13479 (sh_expand_binop_v2sf): Likewise.
13480 * sh.c (machine_dependent_reorg): Add move for UNSPEC_MOVA.
13481 (int_gpr_dest, trunc_hi_operand): New functions.
13482 * sh.h (PREDICATE_CODES): Add any_register_operand, int_gpr_dest and
13483 trunc_hi_operand.
13484 (SPECIAL_MODE_PREDICATES, any_register_operand): Define.
13485 * sh.md (cmpeqdi_t+1): Remove comments that genrecog warns about.
13486 (adddi3_compact+1, subdi3_compact+1, ashlsi3_n+1, ashlhi3+1): Likewise.
13487 (ashrsi2_16+1, ashrsi2_31+1, lshrsi3_n+1, ashrdi3+[12]): Likewise.
13488 (and_shl_scratch+[12], zero_extendhidi2+1): Likewise.
13489 (zero_extendhisi2_media+1, extendhidi2+1, extendqidi2+1): Likewise.
13490 (extendhisi2_media+1, extendqisi2_media+1): Likewise.
13491 (movsi_media_nofpu+[12], movhi_media+1, movdi_media_nofpu+1): Likewise.
13492 (movdi_const_16bit+[12], movdf_i4+[123], reload_outdf+[2-5]): Likewise.
13493 (movsf_ie+1): Likewise.
13494 (loaddi_trunc): Use int_gpr_dest predicate.
13495 (use_sfunc_addr, indirect_jump_scratch, sibcall_compact): Add mode(s).
13496 (mova, mova_const, GOTaddr2picreg, ptrel, casesi_worker_0): Likewise.
13497 (casesi_worker_0+[12], casesi_worker): Likewise.
13498 (shcompact_preserve_incoming_args): Likewise.
13499 (mov_nop): Use any_register_operand predicate.
13500 (mperm_w0): Use trunc_hi_operand predicate.
13501
47a4976f
JDA
135022002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
13503
13504 * pa-linux.h (DWARF2_UNWIND_INFO): Delete define.
13505 * pa.h (EH_RETURN_DATA_REGNO): Revise TARGET_64BIT and correct
13506 numbering.
13507
f3a4e54e
JDA
135082002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
13509
13510 * pa.c (output_deferred_plabels): Remove unused millicode enum mulU.
13511
30484ccf
RH
135122002-07-18 Richard Henderson <rth@redhat.com>
13513
13514 PR optimization/7147
13515 * ifcvt.c (noce_get_condition): Make certain that the condition
13516 is valid at JUMP.
13517
d042370e
R
13518Thu Jul 18 13:44:51 2002 J"orn Rennecke <joern.rennecke@superh.com>
13519
13520 * sh.c (barrier_align, push): Shut up compiler warnings.
13521 (initial_elimination_offset,sh_media_init_builtins): Likewise.
13522 (reg_no_subreg_operand): Delete.
13523
61fee9b3
BT
135242002-07-17 Bo Thorsen <bo@suse.de>
13525
13526 * config/i386/linux64.h (LINK_SPEC): Remove bogus -Y option.
13527 (STARTFILE_PREFIX_SPEC): Define for NATIVE_CROSS compilations.
13528 (STARTFILE_SPEC): Remove hardcoded library paths.
13529 (ENDFILE_SPEC): Likewise.
13530
f305679f
JH
13531Thu Jul 18 09:38:59 CEST 2002 Jan Hubicka <jh@suse.cz>
13532
13533 * gcse.c (hoist_expr_reaches_here_p): Stop once expr_bb is reached.
13534
13535 * gcse.c (try_replace_reg): Do not return false positives.
13536
99bcb625
AM
135372002-07-18 Alan Modra <amodra@bigpond.net.au>
13538
f6f23ad2
AM
13539 * prefix.c: (update_path): Strip ".." components when prior dir
13540 doesn't exist. Pass correct var to UPDATE_PATH_HOST_CANONICALIZE.
13541
99bcb625
AM
13542 * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.
13543 (ASM_OUTPUT_REG_POP): Likewise.
13544
09eeeacb
AM
135452002-07-18 Alan Modra <amodra@bigpond.net.au>
13546
13547 * config/rs6000/rs6000.c (first_reg_to_save): Remove bogus
13548 adjustments to first_reg for profiling case.
13549 (output_function_profiler): Correct lr save slot for ABI_AIX_NODESC.
13550 Disable profiling for 64 bit code on both ABI_V4 and ABI_AIX_NODESC.
13551 Save static chain reg to sp + 12 on ABI_AIX_NODESC.
13552 * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Define.
13553 (ASM_OUTPUT_REG_POP): Define.
13554 * config/rs6000/linux64.h (ASM_OUTPUT_REG_PUSH): Undef.
13555 (ASM_OUTPUT_REG_POP): Undef.
13556
74d06cf2
NB
135572002-07-17 Neil Booth <neil@daikokuya.co.uk>
13558
13559 * cpplib.c (do_sccs): Handle #sccs on all systems.
13560 * system.h (SCCS_DIRECTIVE): Poison.
13561 * config/darwin.h, config/freebsd.h, config/netbsd.h,
13562 config/ptx4.h, config/svr3.h, config/svr4.h, config/alpha/elf.h,
13563 config/arm/linux-elf.h, config/c4x/c4x.h, config/d30v/d30v.h,
13564 config/i370/i370.h, config/i386/gas.h, config/i386/sco5.h,
13565 config/i960/i960.h, config/m68hc11/m68hc11.h, config/m68k/3b1.h,
13566 config/m68k/3b1g.h, config/m68k/crds.h, config/m68k/mot3300.h,
13567 config/m68k/pbb.h, config/m88k/m88k.h, config/mips/mips.h,
13568 config/sparc/pbd.h, config/stormy16/stormy16.h, config/vax/vaxv.h:
13569 Remove all references to SCCS_DIRECTIVE.
13570 * doc/cpp.texi, doc/tm.texi: Update.
13571
61dde664
R
13572Wed Jul 17 19:23:32 2002 J"orn Rennecke <joern.rennecke@superh.com>
13573
13574 * regrename.c (maybe_mode_change): New function.
13575 (find_oldest_value_reg, copyprop_hardreg_forward_1): Use it.
13576
97f51ac4
RB
135772002-07-17 Rodney Brown <rbrown64@csc.com.au>
13578
13579 * config/i386/i386.c (ix86_expand_int_movcc): In the general case
13580 suppress addition when either ct or cf are zero.
13581
a9b6f1e7 135822002-07-17 Eric Botcazou <ebotcazou@multimania.com>
30484ccf 13583 Glen Nakamura <glen@imodulo.com>
f1a73cfe
EB
13584
13585 PR optimization/6713
13586 * loop.c (loop_givs_rescan): Explicitly delete the insn that
13587 sets a non-replaceable giv after issuing the new one.
13588
23ff0223
NB
135892002-07-17 Neil Booth <neil@daikokuya.co.uk>
13590
13591 * cppexp.c (cpp_interpret_integer, append_digit, parse_defined,
13592 eval_token): Clarify and correct use of "bool" variables.
13593 * cpplib.h (struct cpp_options): Similarly.
13594 * cppmacro.c (parse_params, _cpp_save_parameter): Ditto.
13595 * cpptrad.c (recursive_macro): Similarly.
13596
ac09192a
R
13597Wed Jul 17 17:08:06 2002 J"orn Rennecke <joern.rennecke@superh.com>
13598
d28586ab 13599 * config/sh/lib1funcs.asm (udivsi3_i4): Implement SHcompact version in
ac09192a 13600 SHmedia code.
68cef009
R
13601
13602 * sh.md (cmpgtudi_media): Remove spurious @.
701e3726
R
13603
13604 * config/sh/lib1funcs.asm (FMOVD_WORKS): Don't define for little endian.
13605 * sh.h (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for little endian.
ca903bba
R
13606
13607 * config/sh/lib1funcs.asm (init_trampoline): New entry point.
13608 * sh-protos.h (sh_initialize_trampoline): Declare.
13609 * sh.c (sh_initialize_trampoline): New function.
13610 * sh.h (TRAMPOLINE_SIZE): Only 24 for TARGET_SHMEDIA32.
13611 (TRAMPOLINE_ALIGNMENT): Need cache-line alignment for TARGET_SHMEDIA.
13612 (INITIALIZE_TRAMPOLINE): Call sh_initialize_trampoline.
13613 (TRAMPOLINE_ADJUST_ADDRESS): Not needed for SHcompact.
13614 * sh.md (initialize_trampoline, double_shori): New patterns.
13615 (initialize_trampoline_compact): Likewise.
13616 (shmedia32_initialize_trampoline_big): Remove.
13617 (shmedia32_initialize_trampoline_little): Likewise.
0ac78517
R
13618
13619 * sh-protos.h (binary_float_operator): Remove declaration.
13620 (sh_expand_unop_v2sf, sh_expand_binop_v2sf): Declare.
13621 * sh.c (print_operand, case 'N'): Check against CONST0_RTX.
13622 (unary_float_operator, sh_expand_unop_v2sf): New functions.
13623 (sh_expand_binop_v2sf): Likewise.
13624 (zero_vec_operand): Delete.
13625 (SH_BLTIN_UDI): New builtin shared signature define. Renumbered
13626 all non-shared ones.
13627 (bdesc): Change all the mextr builtins to use SH_BLTIN_UDI.
13628 Enable nsb and byterev.
13629 * sh.h (CONDITIONAL_REGISTER_USAGE): Initialize DF_HI_REGS.
13630 (HARD_REGNO_MODE_OK): Allow TImode in fp regs. Allow V2SFmode
13631 in general regs.
13632 (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add DF_HI_REGS.
13633 (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. Remove clause for
13634 immediate operands.
13635 (SECONDARY_INPUT_RELOAD_CLASS): Add clause for immediate operands.
13636 Add DF_HI_REGS.
13637 (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Allow
13638 lowpart fp regs - only for big endian for now.
da7d8304 13639 (LEGITIMATE_CONSTANT_P): Don't allow nonzero float vectors
0ac78517
R
13640 when FPU is in use.
13641 (EXTRA_CONTRAINT_U): Check against CONST0_RTX.
13642 (LOAD_EXTEND_OP): NIL for SImode.
13643 (REGISTER_MOVE_COST): Add DF_HI_REGS. Const for moves between
13644 general and fp registers is 4.
13645 PREDICATE_CODES: Amend binary_float_operator entry.
13646 Remove zero_vec_operand. Add unary_float_operator.
13647 * sh.md (udivsi3_i4_media): Use truncate instead of paradoxical
13648 subreg SET_DEST.
13649 (truncdisi2, truncdihi2, movv2sf): Allow memory destinations.
13650 (truncdiqi2): Do sign extension.
13651 (movsi_media, movdi_media): Allow to use r63 to an fp register.
13652 (movdf_media, movsf_media): Likewise.
13653 (movv2sf_i, movv2sf_i+1): Don't use f{ld,st}.p or SUBREGS.
13654 Collapse to one define_insn_and_split. Allow immediate sources.
13655 (addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New patterns.
13656 (movv4sf_i): Allow immediate sources. Use simplify_gen_subreg.
13657 (movv4sf): Allow immediate sources.
13658 (movsf_media_nofpu+1): Don't split moves to FP registers.
13659 (unary_sf_op, binary_sf_op, mshflo_w_x, concat_v2sf): New patterns.
13660 (movv8qi_i+3): Check against CONST0_RTX.
13661 (mextr1, mextr2. mextr3. mextr4, mextr5, mextr6, mextr7): Use DImode
13662 for input and output operands. Fix argument 3 to gen_mextr_rl.
13663 (mmul23_wl, mmul01_wl, mmulsum_wq_i): s/const_vector/parallel/
13664 (msad_ubq_i, mshf4_b, mshf0_b, mshf4_l, mshf0_l, mshf4_w): Likewise.
13665 (mshf0_w, fipr, ftrv): Likewise.
13666 (mshfhi_l_di): Now insn_and_split. Can handle FP regs.
13667
e9d7b180
JD
136682002-07-17 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
13669
13670 * arm.h (ARM_NUM_INTS, ARM_NUM_REGS, ARM_NUM_REGS2): Renamed from
13671 NUM_INTS, NUM_REGS and ARM_NUM_REGS2 respectively. All uses changed.
13672 * arm.c: Similarly.
13673
8214bf98
RS
136742002-07-17 Richard Sandiford <rsandifo@redhat.com>
13675
13676 * config/mips/mips-protos.h (mips_sign_extend): Declare.
13677 * config/mips/mips.h (MASK_DEBUG_H, TARGET_DEBUG_H_MODE): Remove.
13678 (TARGET_SWITCHES): Remove debugh.
13679 (ISA_HAS_TRUNC_W): New macro.
13680 (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS if TARGET_FLOAT64.
13681 (PREDICATE_CODES): Remove se_nonimmediate_operand.
13682 * config/mips/mips.c (movdi_operand): Allow sign-extensions of
13683 any SImode move_operand.
13684 (se_nonimmediate_operand): Remove.
13685 (mips_sign_extend): New.
13686 (mips_move_2words): Use it for sign-extended source operands.
13687 (override_options): Allow integers to be put into single FPRs.
13688 (mips_secondary_reload_class): Handle integers in float registers.
13689 * config/mips/mips.md (extendsidi2): Turn into a define_expand.
13690 (fix_truncsfsi2, fix_truncdfsi2): Likewise.
13691 (fix_truncdfsi2_insn, fix_truncdfsi2_macro): New.
13692 (fix_truncsfsi2_insn, fix_truncsfsi2_macro): New.
13693 (fix_truncdfdi2): Provide only a single alternative, in which the
13694 integer is in a float register. Depend on TARGET_FLOAT64 rather
13695 than TARGET_64BIT.
13696 (fix_truncsfdi2, floatdidf2, floatdisf2): Likewise.
13697 (floatsidf2, floatsisf2): Likewise, but no TARGET_FLOAT64 dependency.
13698 (movdi_internal2): Don't allow the source operand to be sign-extended.
13699 Add alternatives for float registers.
13700 (*movdi_internal2_extend): New. Version of movdi_internal2 that
13701 allows sign-extension.
13702 (*movdi_internal2_mips16): Name the existing mips16 movdi pattern.
13703 (movsi_internal2): Rename to movsi_internal. Add alternatives for
13704 float registers. Remove TARGET_DEBUG_H_MODE test.
13705 (movhi_internal1): Rename to movhi_internal. Don't check
13706 TARGET_DEBUG_H_MODE. Fix transposed *d and *f source constraints.
13707 (movqi_internal1): Rename to movqi_internal and remove
13708 TARGET_DEBUG_H_MODE dependency.
13709 (movsi_internal1, movhi_internal2, movqi_internal2): Remove.
13710
7ab0121e
JW
137112002-07-16 Jim Wilson <wilson@redhat.com>
13712
13713 * toplev.c (lang_dependent_init): Create function context for
13714 init_expr_once.
13715
349ccf2e
HPN
137162002-07-16 Hans-Peter Nilsson <hp@axis.com>
13717
13718 * config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't
13719 --gc-sections if -r.
13720 * config/cris/cris.h: Ditto.
13721
06ec023f
RB
137222002-07-16 Rodney Brown <rbrown64@csc.com.au>
13723
13724 * config/i386/i386.c (ix86_expand_int_movcc): In the case where
13725 the comparison directly gives a mask suppress addition when cf is
13726 zero by complementing the mask.
13727
39cef914
NN
137282002-07-16 Nathanael Nerode <neroden@gcc.gnu.org>
13729
13730 * Makefile.in: Delete references to enquire.
13731 * enquire.c: Move to contrib.
13732
92c1a778
SS
137332002-07-16 Stan Shebs <shebs@apple.com>
13734
2aa9948d
SS
13735 * config/darwin.h (ASM_OUTPUT_LABEL): Move to here from
13736 config/rs6000/darwin.h.
13737 (ASM_OUTPUT_SKIP): Ditto.
13738 (TEXT_SECTION_ASM_OP): Ditto.
13739 (DATA_SECTION_ASM_OP): Ditto.
13740 (ASM_APP_ON): Define.
13741 (ASM_APP_OFF): Define.
13742 * config/rs6000/darwin.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_SKIP,
13743 TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Remove.
13744
13745 * config/darwin.c (func_name_maybe_scoped): Remove unused decl.
92c1a778
SS
13746 (machopic_function_base_name): Declare result to be const.
13747 (machopic_non_lazy_ptr_name): Ditto.
13748 (machopic_stub_name): Ditto.
2aa9948d 13749 * config/darwin-protos.h: Ditto for the prototypes.
92c1a778 13750
daaab00a
JH
13751Wed Jul 17 00:22:39 CEST 2002 Jan Hubicka <jh@suse.cz>
13752
13753 * m68hc11.c (m68hc11_reorg): Do not rebuild CFG.
13754
63c574cc
JH
13755Wed Jul 17 00:20:48 CEST 2002 Jan Hubicka <jh@suse.cz>
13756
13757 * i386.md (prefetch): Fix for 64bit mode.
13758 (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
13759
2a500b9e
JH
13760Wed Jul 17 00:19:20 CEST 2002 Jan Hubicka <jh@suse.cz>
13761
13762 * i386.h (MACHINE_DEPENDENT_REORG): New macro.
13763 * i386.c (x86_machine_dependent_reorg): New function.
13764 * i386-protos.h (x86_machine_dependent_reorg): Declare.
13765
e5faf155
ZW
137662002-07-16 Zack Weinberg <zack@codesourcery.com>
13767
13768 * builtins.c (std_expand_builtin_va_start): Remove unused
13769 first argument.
13770 (expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and
13771 std_expand_builtin_va_start with just two arguments.
13772 * expr.h: Update prototypes.
13773
13774 * alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h,
13775 arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h,
13776 i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h,
13777 m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h,
13778 mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c,
13779 rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h,
13780 s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h,
13781 sparc.c, stormy16-protos.h, stormy16.h, stormy16.c,
13782 xtensa-protos.h, xtensa.h, xtensa.c: Remove unused first
13783 argument from all implementations of EXPAND_BUILTIN_VA_START
13784 and all uses of std_expand_builtin_va_start.
13785
dbf65c2f
R
13786Tue Jul 16 19:32:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
13787
13788 * regrename.c (copy_value): Don't record high part copies.
13789
6acb6d3e 137902002-07-16 Steve Ellcey <sje@cup.hp.com>
99b823ca 13791
6acb6d3e
SE
13792 * gcc/config/pa/long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.
13793 (fixunstfdi_libfunc): Change to use FIXUNS_TRUNCTFDI2_LIBCALL.
13794 * gcc/config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_udbl): New function.
13795
5d7c2819
ID
137962002-07-16 Ian Dall <ian@sibyl.beware.dropbear.id.au>
13797
13798 * doc/invoke.texi (NS32K Options): Document -mieee-compare option
13799
13800 * config/ns32k/ns32k.md (addsi3, *frame_addr, *stack_addr): merge
13801 into addsi3 using register class "x" and "y".
13802
13803 * config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf):
13804 "earlyclobber" constraint modifier for some alternative.
e5faf155 13805
5d7c2819
ID
13806 * config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble)
13807 (*ble, *blt): Flag to indicate bCOND and sCOND should check for
13808 unordered.
13809 config/ns32k/ns32k.h (CC_UNORD): define corresponding mask.
13810
13811 * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE, MASK_IEEE_COMPARE)
13812 (TARGET_SWITCHES): Add -mieee-compare option.
13813 (OVERRIDE_OPTIONS): 32332 is a subset of
13814 32532. Don't use IEEE_COMPARE -funsafe-math-optimizations.
4977bab6 13815 (TARGET_SWITCHES): Fix description of bitfield option.
5d7c2819
ID
13816 * config/ns32k/netbsd.h (TARGET_DEFAULT): Add
13817 -mieee-compare option. Remove 32332 flag.
13818
5da4f548 138192002-07-16 Steve Ellcey <sje@cup.hp.com>
5d7c2819
ID
13820
13821 * explow.c (convert_memory_address): Remove special handling
5da4f548 13822 when POINTERS_EXTEND_UNSIGNED < 0.
5d7c2819 13823 * config/ia64.md (movsi_symbolic): New instruction for ILP32 mode.
5da4f548
SE
13824 (movedi_symbolic): Fix typo.
13825 (load_fptr): Remove mode restriction so it works for SI and DI.
13826 (load_fptr_internal1): Ditto.
13827 (load_gprel): Ditto.
13828 (load_symptr_internal1): Ditto.
13829 (call_pic): Ditto.
5d7c2819 13830 * config/ia64.c (call_operand): Modify mode check.
5da4f548
SE
13831 (ia64_expand_load_address): Handle DI and SI addresses and symbols.
13832 (ia64_expand_move): Ditto.
13833 (ia64_assemble_integer): Handle SImode function pointers.
13834 (ia64_expand_fetch_and_op): Handle SImode mem addresses.
13835 (ia64_expand_op_and_fetch): Ditto.
13836 (ia64_expand_compare_and_swap): Ditto.
13837 (ia64_expand_lock_test_and_set): Ditto.
13838 (ia64_expand_lock_release): Ditto.
13839
1575c31e
JD
138402002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
13841
13842 * arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.
13843
138442002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
13845 Richard Earnshaw <rearnsha@arm.com>
13846
e5faf155 13847 * arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
1575c31e
JD
13848 CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF. Simplify logic.
13849
3894f59e
RE
138502002-07-16 Richard Earnshaw <rearnsha@arm.com>
13851
13852 * arm.md (stack_tie): New insn. Use an idiom that the alias code
13853 understands to be a memory clobber.
13854 * arm.c (arm_expand_prologue): Use it.
13855
e0b89be2 138562002-07-16 Daniel Berlin <dberlin@dberlin.org>
54b2a7f8
DB
13857
13858 * ra-rewrite.c: #include reload.h, insn-config.h
13859 * ra-build.c: #include reload.h
13860 * Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to
e5faf155 13861 depend on reload.h, insn-config.h.
54b2a7f8 13862
cffa2189
R
13863Tue Jul 16 11:57:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
13864
13865 * expr.c (emit_move_insn_1): Handle arbitrary moves that are
13866 the same size as a word.
13867
13868 * regrename.c (find_oldest_value_reg): Take WORDS_BIG_ENDIAN /
13869 BYTES_BIG_ENDIAN into account.
13870
052c96b1
JH
13871Tue Jul 16 12:22:44 CEST 2002 Jan Hubicka <jh@suse.cz>
13872
13873 * i386.md (prefetch): Fix for 64bit mode.
13874 (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
13875
13876 * i386.md (movss, movsd): Use xorps/xorpd for Athlon.
13877
ae32926b
MM
138782002-07-16 Marek Michalkiewicz <marekm@amelek.gda.pl>
13879
13880 * hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set.
13881
6c535c69
ZW
138822002-07-15 Zack Weinberg <zack@codesourcery.com>
13883
13884 * ginclude/varargs.h: Replace with stub which issues #error.
13885 * ginclude/stdarg.h: __builtin_stdarg_start is renamed
13886 __builtin_va_start.
13887
13888 * builtins.def (BUILT_IN_VARARGS_START): Delete.
13889 (BUILT_IN_VA_START): New.
13890 * builtins.c (expand_builtin_va_start): Eliminate first
13891 argument and code to implement pre-ISO varargs.
13892 (std_expand_builtin_va_start): Ignore first argument; it is
13893 always 1.
13894 (expand_builtin): Handle BUILT_IN_VA_START and
13895 BUILT_IN_STDARG_START identically. Delete
13896 BUILT_IN_VARARGS_START case.
13897
13898 * function.c (assign_parms): Delete hide_last_arg and all
13899 its uses.
13900 (mark_varargs): Delete function.
13901 * function.h (struct function): Delete 'varargs' bit.
13902 (current_function_varargs): Delete macro.
13903 * tree.h: Don't declare mark_varargs.
13904
13905 * c-decl.c (c_function_varargs, c_mark_varargs): Delete.
13906 (c_expand_body): Don't call mark_varargs.
13907 * c-objc-common.c: Handle BUILT_IN_VA_START and
13908 BUILT_IN_STDARG_START identically. Delete
13909 BUILT_IN_VARARGS_START case.
13910 * c-tree.h: Don't declare c_mark_varargs.
13911 * c-parse.in: Remove grammar rules for '&...' (which has been
13912 commented out since before 2.7.2) and for '...' in K+R
13913 argument declarations.
13914
13915 * builtins.c, function.c, integrate.c, sibcall.c,
13916 config/alpha/unicosmk.h, config/arc/arc.c, config/arc/arc.h,
13917 config/avr/avr.c, config/cris/cris.c, config/fr30/fr30.c,
13918 config/i960/i960.c, config/i960/i960.md, config/m32r/m32r.c,
13919 config/m32r/m32r.h, config/m88k/m88k.c, config/m88k/m88k.h,
13920 config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
13921 config/mn10300/mn10300.c, config/pa/som.h, config/s390/s390.c,
13922 config/sh/sh.c, config/sh/sh.h, config/sparc/sparc.h,
13923 config/stormy16/stormy16.c: Delete all references to
13924 current_function_varargs, and code predicated on that flag.
13925
13926 * config/alpha/alpha.c (alpha_va_start),
13927 config/arc/arc.c (arc_va_start),
13928 config/i386/i386.c (ix86_va_start),
13929 config/mips/mips.c (mips_va_start),
13930 config/mn10300/mn10300.c (mn10300_va_start),
13931 config/rs6000/rs6000.c (rs6000_va_start),
13932 config/s390/s390.c (s390_va_start),
13933 config/sh/sh.c (sh_va_start),
13934 Ignore first argument; it is always 1.
13935
13936 * config/c4x/c4x-protos.h, config/c4x/c4x.c: Delete c4x_va_start.
13937 * config/ia64/ia64-protos.h, config/ia64/ia64.c: Delete ia64_va_start.
13938 * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
13939 Delete m68hc11_va_start.
13940 * config/c4x/c4x.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h:
13941 No need to define EXPAND_BUILTIN_VA_START.
13942
13943 * doc/invoke.texi, doc/sourcebuild.texi, doc/tm.texi,
13944 doc/trouble.texi: Remove references to GCC-provided <varargs.h>.
13945
6d80a854
EB
139462002-07-15 Eric Botcazou <ebotcazou@multimania.com>
13947
13948 PR optimization/7153
13949 * regmove.c (optimize_reg_copy_3): Don't optimize if the register
13950 dies in more than one insn.
13951
043cfcbe
JT
139522002-07-15 Jason Thorpe <thorpej@wasabisystems.com>
13953
13954 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Remove.
13955
ed8d2920 139562002-07-15 Michael Matz <matz@suse.de>,
6c535c69 13957 Daniel Berlin <dberlin@dberlin.org>,
ed8d2920
MM
13958 Denis Chertykov <denisc@overta.ru>
13959
13960 Add a new register allocator.
13961
13962 * ra.c: New file.
13963 * ra.h: New file.
13964 * ra-build.c: New file.
13965 * ra-colorize.c: New file.
13966 * ra-debug.c: New file.
13967 * ra-rewrite.c: New file.
13968
13969 * Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
13970 (ra-rewrite.o): New .o files for libbackend.a.
13971 (GTFILES): Add basic-block.h.
13972
13973 * toplev.c (flag_new_regalloc): New.
13974 (f_options): New option "new-ra".
13975 (rest_of_compilation): Call initialize_uninitialized_subregs()
13976 only for the old allocator. If flag_new_regalloc is set, call
13977 new allocator, instead of local_alloc(), global_alloc() and
13978 friends.
13979
13980 * doc/invoke.texi: Document -fnew-ra.
13981 * basic-block.h (FOR_ALL_BB): New.
13982 * config/rs6000/rs6000.c (print_operand): Write small constants
13983 as @l+80.
13984
13985 * df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg.
13986 (df_reg_table_realloc): Make size at least as large as max_reg_num().
13987 (df_insn_table_realloc): Size argument now is absolute, not relative.
13988 Changed all callers.
13989
13990 * gengtype.c (main): Add the pseudo-type "HARD_REG_SET".
13991 * regclass.c (reg_scan_mark_refs): Ignore NULL rtx's.
13992
13993 2002-06-20 Michael Matz <matz@suse.de>
13994
13995 * df.h (struct ref.id): Make unsigned.
13996 * df.c (df_bb_reg_def_chain_create): Remove unsigned cast.
13997
13998 2002-06-13 Michael Matz <matz@suse.de>
13999
14000 * df.h (DF_REF_MODE_CHANGE): New flag.
14001 * df.c (df_def_record_1, df_uses_record): Set this flag for refs
14002 involving subregs with invalid mode changes, when
14003 CLASS_CANNOT_CHANGE_MODE is defined.
14004
14005 2002-05-07 Michael Matz <matz@suse.de>
14006
14007 * reload1.c (fixup_abnormal_edges): Don't insert on NULL edge.
14008
14009 2002-05-03 Michael Matz <matz@suse.de>
14010
14011 * sbitmap.c (sbitmap_difference): Accept sbitmaps of different size.
14012
14013 Sat Feb 2 18:58:07 2002 Denis Chertykov <denisc@overta.ru>
14014
14015 * regclass.c (regclass): Work with all regs which have sets or
14016 refs.
14017 (reg_scan_mark_refs): Count regs inside (clobber ...).
14018
14019 2002-01-04 Michael Matz <matzmich@cs.tu-berlin.de>
14020
14021 * df.c (df_ref_record): Correctly calculate SUBREGs of hardregs.
14022 (df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only
14023 add new refs.
14024 (df_bb_refs_update): Don't clear insns_modified here, ...
14025 (df_analyse): ... but here.
14026
14027 * sbitmap.c (dump_sbitmap_file): New.
14028 (debug_sbitmap): Use it.
14029
14030 * sbitmap.h (dump_sbitmap_file): Add prototype.
14031
14032 2001-08-07 Daniel Berlin <dan@cgsoftware.com>
14033
14034 * df.c (df_insn_modify): Grow the UID table if necessary, rather
14035 than assume all emits go through df_insns_modify.
14036
14037 2001-07-26 Daniel Berlin <dan@cgsoftware.com>
14038
14039 * regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS,
14040 increase REG_N_REFS (like flow does), so that regclass doesn't
14041 think a reg is useless, and thus, not calculate a class, when it
14042 really should have.
14043
14044 2001-01-28 Daniel Berlin <dberlin@redhat.com>
14045
14046 * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for
14047 dataflow analysis.
14048
794a292d
JJ
140492002-07-15 Jakub Jelinek <jakub@redhat.com>
14050
14051 PR middle-end/7245
14052 * config/i386/i386.c (const_int_1_31_operand): New.
14053 * config/i386/i386.h (PREDICATE_CODES): Add it.
14054 * config/i386/i386.md (ashlsi3_cmp, ashlsi3_cmp_zext, ashlhi3_cmp,
14055 ashlqi3_cmp, ashrsi3_cmp, ashrsi3_cmp_zext, ashrhi3_cmp, ashrqi3_cmp,
14056 lshrsi3_cmp, lshrsi3_cmp_zext, lshrhi3_cmp, lshrqi3_cmp): Use it.
14057
05d49501
AM
140582002-07-14 Alan Modra <amodra@bigpond.net.au>
14059
14060 PR target/7282
14061 * config/rs6000/rs6000.md (floatsidf2): Enable for POWERPC64.
14062 (floatunssidf2): Likewise.
14063 (floatsidf_ppc64): New insn_and_split.
14064 (floatunssidf_ppc64): Likewise.
14065
e89617fe
AJ
140662002-07-14 Andreas Jaeger <aj@suse.de>
14067
14068 * config.gcc (sh64): Remove unused
14069 target_requires_64bit_host_wide_int.
14070
78762e3b
RS
140712002-07-12 Roger Sayle <roger@eyesopen.com>
14072
14073 * expr.c [CLEAR_RATIO]: New macro defining the maximum number
14074 of move instructions to use when clearing memory, c.f. MOVE_RATIO.
14075 [CLEAR_BY_PIECES]: New macro, using CLEAR_RATIO, to determine
14076 whether clear_by_pieces should be used to clear storage.
14077 (clear_storage): Use CLEAR_BY_PIECES instead of MOVE_BY_PIECES.
14078
14079 * doc/tm.texi: Document these two new target macros.
14080
f7a454e9
SC
140812002-07-12 Stephane Carrez <stcarrez@nerim.fr>
14082
14083 * config/m68hc11/m68hc11.md ("zero_extendsidi2"): Use D_REG only for
14084 the scratch register.
14085 ("*movhi2_push"): Accept Z_REG because a split pattern can make use
14086 of it, forbid reload to use it.
14087
26af4041
MM
140882002-07-12 Marek Michalkiewicz <marekm@amelek.gda.pl>
14089
14090 * config/avr/avr.c (test_hard_reg_class): Fix TEST_HARD_REG_BIT
14091 usage on 64-bit hosts, return value was truncated to 32 bits.
14092
226cfe61
R
14093Fri Jul 12 00:49:36 2002 J"orn Rennecke <joern.rennecke@superh.com>
14094
14095 * simplify-rtx.c (simplify_subreg): Handle floating point
14096 CONST_DOUBLEs. When an integer subreg of a smaller mode than
14097 the element mode is requested, compute a subreg with an
14098 integer mode of the same size as the element mode first.
14099
25c25947
R
14100Thu Jul 11 22:02:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
14101
14102 * combine.c (try_combine): When converting a paradoxical subreg
14103 to an extension, take LOAD_EXTEND_OP into account.
14104
789b7de5
RO
141052002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
14106
14107 * config.gcc (mips-sgi-irix6*o32): New configuration.
14108
14109 * configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32
14110 configurations.
14111 * configure: Regenerate.
14112
14113 * config/mips/iris6-o32-as.h: New file.
14114 * config/mips/iris6-o32.h: New file.
e89617fe 14115
789b7de5
RO
14116 * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define.
14117 (NM_FLAGS): Define.
14118 (HAVE_AS_SHF_MERGE): Undefine.
14119
14120 * config/mips/t-iris5-as: New file.
14121 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
14122
14123 * config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME,
14124 SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK,
14125 SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT,
14126 dp-bit.c, fp-bit.c): Move ...
14127 * config/mips/t-iris5-6: ... here.
14128 New file, shared by IRIX 5 and IRIX 6.
14129 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*,
14130 mips-sgi-irix5*): Use it.
14131
14132 * config/mips/iris6.h: Remove duplicate comment.
14133
14134 * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
14135 !TARGET_IRIX6]: Define.
14136 (mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6.
14137
14138 * config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment.
14139
a18c2c5f
JDA
141402002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
14141
14142 * pa.md (adddi3): Change predicate of operand 2 to adddi3_operand
14143 and delete code to force constant to register.
14144 * pa-protos.h (adddi3_operand): Add prototype.
14145 * pa.c (adddi3_operand): New function.
14146
e65a2d65
RS
141472002-07-11 Roger Sayle <roger@eyesopen.com>
14148
14149 * c-decl.c (duplicate_decls): Preserve the noreturn attribute on
14150 non-ANSI builtin functions.
14151
a06e3c40
R
14152Thu Jul 11 11:31:12 2002 J"orn Rennecke <joern.rennecke@superh.com>
14153
14154 * rtl.h (gen_rtx_CONST_VECTOR): Declare.
14155 * gengenrtl.c (special_rtx): Check for CONST_VECTOR.
14156 * emit-rtl.c (gen_rtx_CONST_VECTOR): New function.
14157 (gen_const_vector_0): Use it.
14158
47abc309
JDA
141592002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
14160
14161 * pa.md (adddi3): For 32-bit targets, force constants to a register
14162 if they don't fit in an 11-bit immediate. Change insn predicate to
14163 arith11_operand. Remove comment.
14164 * pa.c (cint_ok_for_move): Fix comment.
14165 (emit_move_sequence): Don't directly split DImode constants on 32-bit
14166 targets.
14167
8ac9d31f
TJ
141682002-07-11 Tim Josling <tej@melbpc.org.au>
14169
e89617fe 14170 Remove front end hard coding from gengtype.c.
8ac9d31f
TJ
14171
14172 * Makefile.in
14173 (STAGESTUFF): add gtyp-gen.h
14174 (GTFILES): Remove front end specific files.
14175 (GTFILES_FILES_LANGS): New, from configure..
14176 (GTFILES_FILES_FILES): Likewise.
14177 (GTFILES_LANG_DIR_NAMES): Likewise.
14178 (GTFILES_SRCDIR): Likewise.
14179 (gtyp-gen.h): Build from configure information.
14180 (s-gtype): Remove command line parameters from gengtype.
14181 (gengtype.o): Remove dependency on GTFILES. Depend on gtyp-gen.h.
14182 (mostlyclean): Delete files generated by and for gengtype.
14183
14184 * c-config-lang.in: New file.
14185
14186 * configure.in (all_gtfiles_files_langs): New. Accumulate files
14187 for each language.
14188 (all_gtfiles_files_files): New. Accumulate language for each file
14189 accumulated.
14190 (gtfiles): Pick up value for C.
14191 (srcdir): AC-SUBST this variable.
14192 (all_gtfiles_files_langs): AC-SUBST this variable.
14193 (all_gtfiles_files_files): AC-SUBST this variable.
e89617fe 14194
8ac9d31f 14195 * configure: Regenerate.
e89617fe 14196
8ac9d31f
TJ
14197 * gengtype-lex.l (parse_file): Make parameter const.
14198
14199 * gengtype.c (toplevel): include gtyp-gen.h.
14200 (BASE_FILE_<language> unnamed enum): Delete.
14201 (lang_names): Delete (replaced by gtyp-gen.h)
14202 (lang_dir_names): From gtyp-gen.h, replaces lang_names; changed
14203 all references.
14204 (NUM_GT_FILES): New.
14205 (NUM_LANG_FILES): New.
14206 (srcdir_len): New.
14207 (NUM_BASE_FILES): Change calculation.
14208 (open_base_files): Change prototype to avoid warning.
14209 (startswith): Delete.
14210 (get_file_basename): Iterate through generated language list not
14211 hard coded list.
14212 (get_base_file_bitmap): Use generated list of files and languages.
14213 (close_output_files): Add prototype to rmove warning.
14214 (main): Iterate through list of generated files from gtyp-gen.h
14215 rather than command line paramaters. Ignore duplicated file
e89617fe 14216 names.
8ac9d31f
TJ
14217
14218 * gengtype.h (parse_file): Amend prototype for const parameter.
e89617fe 14219
8ac9d31f
TJ
14220 * doc/sourcebuild.texi: Document gtfiles variable.
14221
14222 * doc/gty.texi: Document changes to gtfiles variable for front
14223 ends.
14224
14225 * objc/config-lang.in (gtfiles): Add files needed for objc front
14226 end.
14227
0e603223
RS
142282002-07-10 Roger Sayle <roger@eyesopen.com>
14229
14230 PR c/2454
14231 * combine.c (nonzero_bits): LOAD_EXTEND_OP should only apply
14232 to SUBREGs of MEMs. (num_sign_bit_copies): Likewise.
14233
c5358a5d
RS
142342002-07-10 Roger Sayle <roger@eyesopen.com>
14235 Zack Weinberg <zack@codesourcery.com>
14236
14237 * builtins.def: Make the argument types of abort and exit
14238 independent of the front-end.
14239
a35f8b74
AM
142402002-07-11 Alan Modra <amodra@bigpond.net.au>
14241
14242 * config/rs6000/linux64.h (ASM_SPEC): Define.
14243
89e7058f
AH
142442002-07-10 Aldy Hernandez <aldyh@redhat.com>
14245
6c535c69
ZW
14246 * config/rs6000/rs6000.c (emit_frame_save): New.
14247 (rs6000_frame_related): Replace reg2 before reg.
14248 (rs6000_emit_prologue): Use emit_frame_save for saving gprs, fprs,
14249 and eh_return registers.
89e7058f 14250
086bbd21
TM
142512002-07-10 Toon Moene <toon@moene.indiv.nluug.nl>
14252
14253 Revert all patches for optimization of Complex .op. Real.
14254 * complex_part_zero_p: Remove
14255 * expand_cmplxdiv_straight: Replace complex_part_zero_p(x)
14256 with x.
14257 * expand_cmplxdiv_wide: Ditto.
14258 * expand_binop: Ditto.
14259
126dbce0
MM
142602002-07-10 Marek Michalkiewicz <marekm@amelek.gda.pl>
14261
14262 * config/avr/avr.md: Fix two 0x80000000 constants to make them
14263 negative also on 64-bit hosts.
14264
14265 Default to -fno-reorder-blocks when optimizing for size.
14266 * config/avr/avr-protos.h (avr_optimization_options): Declare.
14267 * config/avr/avr.c (avr_optimization_options): New function.
14268 * config/avr/avr.h (OPTIMIZATION_OPTIONS): New.
14269
14270 Optimize returning from simple functions.
14271 * config/avr/avr-protos.h (avr_simple_epilogue): Declare.
14272 * config/avr/avr.c (avr_simple_epilogue): New function.
14273 * config/avr/avr.md (return): New insn.
14274
21c318ba
DR
142752002-07-10 Douglas B Rupp <rupp@gnat.com>
14276
14277 * config/i386/i386.c (ix86_svr3_asm_out_constructor): Add
14278 HAS_INIT_SECTION to protection.
14279
537834c8
MM
142802002-07-10 Mark Mitchell <mark@codesourcery.com>
14281
14282 * doc/invoke.texi (Debugging Options): Mention that -gdwarf is
14283 deprecated.
14284
80ba02b1
R
14285Wed Jul 10 19:50:03 2002 J"orn Rennecke <joern.rennecke@superh.com>
14286
14287 * combine.c (gen_lowpart_for_combine): Handle vector modes.
14288 Supply non-VOID mode to simplify_gen_subreg.
14289
ae3aa00d
JH
14290Wed Jul 10 18:48:55 CEST 2002 Jan Hubicka <jh@suse.cz>
14291
14292 * i386.c (ix86_init_mmx_sse_builtins): Fix thinko.
14293
029f3983
JL
142942002-07-10 Jeffrey A Law <law@redhat.com>
14295
7a464913
JL
14296 * mn10200.c (expand_prologue): Create REG_MAYBE_DEAD notes
14297 as appropriate.
14298
6c535c69
ZW
14299 * mn10200.c (expand_epilogue): Fix test to determine which scratch
14300 register to use.
029f3983 14301
ff27a429
R
14302Wed Jul 10 16:06:00 2002 J"orn Rennecke <joern.rennecke@superh.com>
14303
14304 * cse.c (cse_insn): Supply proper SUBREG_BYTE to simplify_gen_subreg.
14305 Get mode from dest.
14306 If simplify_gen_subreg fails, try next equivalent.
14307
e6986399
GDR
143082002-07-09 Gabriel Dos Reis <gdr@codesourcery.com>
14309
14310 * diagnostic.h: #include location.h
14311 (location_t): Move definition to..
14312 * location.h: ... here. New file.
14313 * tree.h: #include location.h
14314 (DECL_SOURCE_LOCATION): New macro.
14315 (DECL_SOURCE_FILE): Use.
14316 (DECL_SOURCE_LINE): Likewise.
14317 (struct tree_decl): REplace filename and linenum with locus.
14318 * Makefile.in (TREE_H): add location.h
14319 (diagnostic.o): Depends on gt-location.h
14320 (gt-location.h): Depends on s-gtype
14321
7990b46f
MK
143222002-07-09 Matt Kraai <kraai@alumni.cmu.edu>
14323
14324 * config/rs6000/aix.h: Convert CPP_PREDEFINES to
14325 TARGET_OS_CPP_BUILTINS.
14326 * config/rs6000/aix31.h: Likewise.
14327 * config/rs6000/aix41.h: Likewise.
14328 * config/rs6000/aix43.h: Likewise.
14329 * config/rs6000/aix51.h: Likewise.
14330 * config/rs6000/beos.h: Likewise.
14331 * config/rs6000/darwin.h: Likewise.
14332 * config/rs6000/eabi.h: Likewise.
14333 * config/rs6000/eabisim.h: Likewise.
14334 * config/rs6000/linux.h: Likewise.
14335 * config/rs6000/linux64.h: Likewise.
14336 * config/rs6000/lynx.h: Likewise.
14337 * config/rs6000/mach.h: Likewise.
14338 * config/rs6000/rtems.h: Likewise.
14339 * config/rs6000/sysv4.h: Likewise.
14340 * config/rs6000/vxppc.h: Likewise.
efa39e99
DP
14341
143422002-07-09 Devang Patel <dpatel@apple.com>
14343 * objc/objc-act.c (adjust_type_for_id_default): Fix my previous patch.
14344 Do not allow ObjC objects as a parameter type for Objective-C methods.
14345 My previous patch restricted 'struct' also.
e89617fe 14346
cd98faa1
NB
143472002-07-09 Neil Booth <neil@daikokuya.co.uk>
14348
14349 * cpperror.c (cpp_error): Default to directive_line within
14350 directives here.
14351 * cppexp.c (cpp_interpret_integer): Only use traditional
14352 number semantics in directives.
14353 * cpplib.c (prepare_directive_trad): Don't reset pfile->line.
14354 (do_include_common): Similarly.
14355 * cpptrad.c (scan_out_logical_line): Implement accurate
14356 quoting of <> in #include.
14357 * doc/cpp.texi: Update.
14358
2ad65b0e 14359Tue Jul 9 22:37:44 2002 Stephen Clarke <stephen.clarke@superh.com>
6c535c69 14360 J"orn Rennecke <joern.rennecke@superh.com>
2ad65b0e
SC
14361
14362 * sh.c (sh_adjust_cost): Special handling of SHMEDIA code.
14363 * sh.md (attribute issues): Replace with:
14364 (attribute pipe_model). All users changed.
14365 (attribute type): Change pt / ptabs to pt_media / ptabs_media.
14366 All users changed.
14367 (function units sh5issue, sh5fds): New.
14368 (attribute is_mac_media): New.
14369 (adddi3_media, subdi3_media, divsi3_i1_media, anddi3): Add type.
14370 (andcdi3, iordi3, xordi3, ashldi3_media, lshrdi3_media): Likewise.
14371 (ashrdi3_media, negdi_media, extendsidi2, movqi_media): Likewise.
14372 (movhi_media, shori_media, movv2sf_i, jump_media): Likewise.
14373 (call_media, call_value_media, sibcall_media): Likewise.
14374 (casesi_jump_media, casesi_shift_media, casesi_load_media): Likewise.
14375 (return_media_i, addsf3_media, subsf3_media, mulsf3_media): Likewise.
14376 (mac_media, divsf3_media, floatdisf2, floatsisf2_media): Likewise.
14377 (fix_truncsfdi2, fix_truncsfsi2_media, cmpeqsf_media): Likewise.
14378 (cmpgtsf_media, cmpgesf_media, cmpunsf_media, negsf2_media): Likewise.
14379 (sqrtsf2_media, abssf2_media, adddf3_media, subdf3_media): Likewise.
14380 (muldf3_media, divdf3_media, floatdidf2, floatsidf2_media): Likewise.
14381 (fix_truncdfdi2, fix_truncdfsi2_media, cmpeqdf_media): Likewise.
14382 (cmpgtdf_media, cmpgedf_media,cmpundf_media, negdf2_media): Likewise.
14383 (sqrtdf2_media, absdf2_media, extendsfdf2_media): Likewise.
14384 (truncdfsf2_media): Likewise.
14385 (movsi_media, movsi_media_nofpu, movdi_media): Use new types.
14386 (movdi_media_nofpui, movdf_media, movdf_media_nofpu): Likewise.
14387
b6d33983
R
14388Tue Jul 9 21:39:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
14389
14390 * sh.h (PREDICATE_CODES): Add general_extend_operand and inqhi_operand.
14391 * sh.c (general_extend_operand, inqhi_operand): New functions.
14392 * sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Collapse
14393 alternatives using 'N' modifier. Add type.
14394 (adddi3z_media): Likewise. Enable generator function generation.
14395 (movdicc_false, movdicc_true, addsi3_media, subsi3_media): Use more
14396 exact predicates / constraints. Add type.
14397 (subsi3): Allow 0 for SHMEDIA.
14398 (udivsi3_i4_media): Use match_operand for input values
14399 rather than hard registers.
14400 (udivsi3 - TARGET_SHMEDIA_FPU case): Don't ferry values
14401 unnecessarily through hard registers. Keep copies of pseudo
14402 registers outside of the libcall sequence.
14403 (mulsidi3_media, umulsidi3_media): Use more exact predicates. Add type.
14404 (ashlsi3_media, ashrsi3_media, lshrsi3_media): Likewise.
14405 (zero_extendsidi2, zero_extendhidi2, zero_extendqidi2): Likewise.
14406 (extendhidi2, extendqidi2): Likewise.
14407 (andsi3_compact): Name.
14408 (andcdi3): Enable generator function generation.
14409 (zero_extendhisi2, zero_extendqisi2): Rename to
14410 (zero_extendhisi2_compact, zero_extendqisi2_compact).
14411 (extendhisi2, extendqisi2): Rename to
14412 (extendhisi2_compact, extendqisi2_compact).
14413 (rotldi3, rotldi3_mextr, rotrdi3, rotrdi3_mextr): New patterns.
14414 (loaddi_trunc, zero_extendhisi2, zero_extendhisi2_media): Likewise.
14415 (zero_extendhisi2_media+1, zero_extendqisi2): Likewise.
14416 (zero_extendqisi2_media, extendhisi2, extendhisi2_media): Likewise.
14417 (extendhisi2_media, extendhisi2_media+1, extendqisi2): Likewise.
14418 (extendqisi2_media, extendqisi2_media+1, truncdisi2): Likewise.
14419 (truncdihi2, truncdiqi2, reload_inqi, reload_inhi): Likewise.
14420 (shmedia32_initialize_trampoline_big): Likewise.
14421 (shmedia32_initialize_trampoline_little): Likewise.
14422 (nsb, nsbsi, nsbdi, ffsdi2, ffssi2, byterev): Likewise.
14423 (negdi2): Remove spurious T clobber.
14424 (zero_extendhidi2+1, extendhidi2+1, extendqidi2+1): Handle TRUNCATE.
14425 (movsi_media, movsi_media_nofpu): Remove spurious *k after b.
14426 (movdi_media, movdi_media_nofpu, pt, ptb): Likewise.
14427 (movsi_media_nofpu+2, movhi_media+1): Only do split after reload.
14428 (ic_invalidate_line_media): Write back data cache before invalidating
14429 instruction cache. Add type.
14430 (movsf_media): Sign-extend when the destination is a general
14431 purpose register. Add type.
14432 (bgt_media, bge_media, bgtu_media, bgeu_media, blt_media_i): Allow 0.
14433 (casesi_worker_0+1): Only increment ref count for proper label.
14434 (casesi_worker_0+2): Likewise.
14435
7ca0873c
MM
144362002-07-09 Mark Mitchell <mark@codesourcery.com>
14437
14438 * dwarfout.c (dwarfout_init): Warn that DWARF1 is deprecated.
14439
26b10ae0 144402002-07-09 Steve Ellcey <sje@cup.hp.com>
7ca0873c 14441
26b10ae0
SE
14442 * gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer
14443 from Pmode to ptr_mode.
14444 (get_exception_pointer): Ditto.
14445 (connect_post_landing_pads): Ditto.
14446 (dw2_build_landing_pads): Ditto.
14447
0c3a2ea0
SE
144482002-07-08 Steve Ellcey <sje@cup.hp.com>
14449 * gcc/c-pragma.h (add_to_renaming_pragma_list): New function.
14450 * gcc/c-pragma.c (add_to_renaming_pragma_list): New function.
14451 (handle_pragma_redefine_extname): Change to use new function.
14452
26c34780
RS
144532002-07-08 Roger Sayle <roger@eyesopen.com>
14454
14455 * combine.c (combine_simplify_rtx): Add an explicit cast
14456 to avoid signed/unsigned comparison warning.
14457 (simplify_if_then_else): Likewise.
14458 (extended_count): Likewise.
14459 (simplify_shift_const): Likewise.
14460 (simplify_comparison): Likewise.
14461
1d4047e0
RS
144622002-07-08 Richard Sandiford <rsandifo@redhat.com>
14463
14464 * config/mips/mips.md: Add imadd type. Update scheduler description
14465 to use imadd as well as imul.
14466 (*mul_acc_si, *madsi): Change imul alternatives to imadd.
14467 (*mul_acc_di, *mul_acc_64bit_di): Likewise.
14468 (*mul_sub_si): Likewise for first alternative. Change second
14469 alternative from imul to multi.
14470
5351f1ca
NB
144712002-07-07 Neil Booth <neil@daikokuya.co.uk>
14472
14473 * c-common.c (c_common_post_options): Update prototype;
14474 don't init backends if preprocessing only.
14475 * langhooks-def.h (LANG_HOOKS_POST_OPTIONS): Update.
14476 * langhooks.h (struct lang_hooks): Update post_options to
14477 return a boolean.
14478 * toplev.c (parse_options_and_default_flags, do_compile,
14479 lang_independent_init): Update prototypes. Allow the
14480 front end to specify that there is no need to initialize
14481 the back end.
14482 (general_init): Move call to hex_init here...
14483 (toplev_main): ...from here. Pass flag for back end init
14484 suppression.
14485
c8cc4417
R
14486Sun Jul 7 20:38:38 2002 J"orn Rennecke <joern.rennecke@superh.com>
14487
14488 * sh.h (PRINT_OPERAND_PUNCT_VALID_P): Allow '\''.
14489 (PREDICATE_CODES): Add entries for equality_comparison_operator,
14490 greater_comparison_operator and less_comparison_operator.
14491 * sh.c (print_operand): Add '\'' code. Make 'o' handle
14492 more operators.
14493 (equality_comparison_operator): New function.
14494 (greater_comparison_operator, less_comparison_operator): Likewise.
14495 * sh.md (beq_media_i): Disable generator function generation.
14496 Use match_operator to handle a whole class of comparisons. Add
14497 modifier in output template to provide branch prediction. Add type.
14498 (bgt_media_i, ble_media_i): Likewise. Allow zero operands.
14499 (bne_media_i, bge_media_i, bgtu_media_i, bgeu_media_i): Delete.
14500 (blt_media_i, bleu_media_i, bltu_media_i): Likewise.
14501 (bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu): Allow zero operands.
14502
957ec0f9
HPN
145032002-07-07 Hans-Peter Nilsson <hp@bitrange.com>
14504
14505 Emit MMIX function prologue and epilogue as rtl.
14506 * config/mmix/mmix.md ("call"): Use mmix_get_hard_reg_initial_val,
14507 not unprototyped get_hard_reg_initial_val.
14508 ("call_value", "nonlocal_goto_receiver"): Ditto.
14509 ("return"): Make define_expand. Move real insn to...
14510 ("*expanded_return"): New pattern.
14511 ("prologue", "epilogue"): New define_expands.
14512 * config/mmix/mmix.h (MMIX_rO_REGNUM): New macro.
14513 (struct machine_function): New member in_prologue.
14514 (FIRST_PSEUDO_REGISTER): Adjust for including rO as register.
14515 (FIXED_REGISTERS, CALL_USED_REGISTERS): Ditto.
14516 (MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Ditto.
14517 (MMIX_GNU_ABI_REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Ditto.
14518 (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Ditto.
14519 (LOCAL_REGNO): Define. Adjust comment.
14520 * config/mmix/mmix.c (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS):
14521 Consider regs_ever_live[MMIX_rJ_REGNUM], not just
14522 leaf_function_p.
14523 (MMIX_OUTPUT_REGNO): Don't translate registers while outputting
14524 the prologue.
14525 (mmix_target_asm_function_prologue): Make static. Just mark that
14526 the prologue is being emitted. Move guts to...
14527 (mmix_expand_prologue): New function. Adjust for emitting
14528 prologue as rtl. For sizes, use HOST_WIDE_INT only.
14529 (mmix_target_asm_function_epilogue): Make static. Simply emit a
14530 \n. Move guts to...
14531 (mmix_expand_epilogue): New function. Adjust for emitting
14532 epilogue as rtl. For sizes, use HOST_WIDE_INT only.
14533 (mmix_target_asm_function_end_prologue): Mark that the prologue
14534 has ended.
14535 (TARGET_ASM_FUNCTION_END_PROLOGUE): Define.
14536 (mmix_conditional_register_usage): Improve comments.
14537 (mmix_local_regno): New function.
14538 (mmix_emit_sp_add, mmix_get_hard_reg_initial_val): Ditto.
14539 * config/mmix/mmix-protos.h (mmix_local_regno): Prototype.
14540 (mmix_expand_prologue, mmix_expand_epilogue): Ditto.
14541 (mmix_get_hard_reg_initial_val): Ditto.
14542
7ab5c789
AJ
145432002-07-06 Andreas Jaeger <aj@suse.de>
14544
14545 * toplev.c (set_fast_math_flags): Don't use ISO C style function
14546 definitions.
14547 * gengtype.c (open_base_files): Likewise.
14548 (close_output_files): Likewise.
14549 * tracer.c (find_best_predecessor): Likewise.
14550 (find_best_successor): Likewise.
14551 (ignore_bb_p): Likewise.
14552
df061a43
RS
145532002-07-05 Roger Sayle <roger@eyesopen.com>
14554
14555 PR c++/7099
14556 * builtin-attrs.def: Define new attribute lists for use in
14557 builtins.def.
14558 * builtins.def [DEF_BUILTIN]: Modify to take an additional
14559 ATTRS argument, an enumerated value defined in builtin-attrs.def
14560 that represents the attribute list for the builtins. Modify
14561 all builtin functions to pass an appropriate attribute list.
14562 Specify "abort", "exit", "_exit" and "_Exit" builtins here with
14563 their required noreturn attributes.
14564 * tree.h (enum_builtin_function): Ignore the additional parameter
14565 to DEF_BUILTIN.
14566 * builtins.c (built_in_names): Likewise.
14567 * c-common.c: (builtin_function_2): Replace the "int noreturn_p"
14568 argument with a tree representing the functions attribute list.
14569 Pass this "attrs" argument to builtin_function. No longer handle
14570 the noreturn_p processing manually.
14571 (built_in_attributes): Move the definitions from builtin-attrs.def
14572 before c_common_nodes_and_builtins.
14573 (c_common_nodes_and_builtins): Handle the new ATTRS parameter in
14574 DEF_BUILTIN, passing it to both builtin_function and the changed
14575 builtin_function_2.
14576
14577 * doc/extend.texi: Document __builtin_abort, __builtin_exit,
14578 __builtin__exit and __builtin__Exit.
14579
e5eb8de8
SC
145802002-07-05 Stephane Carrez <stcarrez@nerim.fr>
14581
14582 * config/m68hc11/m68hc11.md ("*movqi_68hc12"): Avoid allocating
14583 QI mode registers in soft registers.
7ab5c789 14584 ("zero_extendqihi2"): Do not take into account soft registers
e5eb8de8
SC
14585 for register allocation (use '*' constraint).
14586
4c8aed14
SC
145872002-07-05 Stephane Carrez <stcarrez@nerim.fr>
14588
14589 * config/m68hc11/m68hc11.md ("*ashlsi3"): Avoid saving y if we know
14590 it is dead.
14591 ("*ashrsi3"): Likewise.
14592 ("*lshrsi3"): Likewise.
14593
99ed68ea
VM
145942002-07-05 Vladimir Makarov <vmakarov@redhat.com>
14595
14596 * genautomata.c (output_max_insn_queue_index_def): Take latencies
14597 into account.
14598
4c8aed14 145992002-07-05 Stephane Carrez <stcarrez@nerim.fr>
581fd392
SC
14600
14601 * config/m68hc11/m68hc11.md (peephole2): New peephole2 to optimize
14602 address computation and memory moves.
14603
9833f679
MM
146042002-07-03 Mark Mitchell <mark@codesourcery.com>
14605
14606 PR c++/6706
14607 * dwarfout.c (output_reg_number): Fix warning message.
14608 (output_bound_representation): Check SAVE_EXPR_RTL is not NULL
14609 before using it.
7ab5c789 14610
81bca2f5
RO
146112002-07-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
14612
14613 * gcc/gcc.c (asm_debug): Move initialization ...
14614 (init_spec): ... here.
14615
17f44f02
NS
146162002-07-05 Nathan Sidwell <nathan@codesourcery.com>
14617
14618 * c-parse.in (extdef): Append ';'.
14619 (old_style_parm_decls): Append ';'.
14620
da77408f
DJ
146212002-07-04 Daniel Jacobowitz <drow@mvista.com>
14622
14623 * configure.in: Correct typos: gcc_cv_as_gdwarf2_debug_flag to
14624 gcc_cv_as_gdwarf2_flag and gcc_cv_as_gstabs_debug_flag
14625 to gcc_cv_as_gstabs_flag.
14626 * configure: Rebuilt.
14627
ec52b446
GK
146282002-07-04 Geoffrey Keating <geoffk@redhat.com>
14629
14630 * ggc.h (ggc_add_root): Document as obsolete.
14631
8721e3df
R
14632Thu Jul 4 07:58:01 2002 J"orn Rennecke <joern.rennecke@superh.com>
14633
14634 * sh.md (mshfhi_b, mshflo_b, mshfhi_l, mshflo_l, mshfhi_w): Add DONE.
14635 (mshflo_w): Likewise.
14636
3767c0fd
R
14637Thu Jul 4 07:36:29 2002 J"orn Rennecke <joern.rennecke@superh.com>
14638
14639 * simplify-rtx.c (simplify_subreg): Reduce problem of finding
14640 vector mode subregs of constants to finding integer mode
14641 subregs of constants.
14642 * cse.c (cse_insn): Use simplify_gen_subreg.
14643 * convert.c (convert_to_integer): Don't strip a NOP_EXPR
14644 From a vector mode expression of different size than the
14645 target mode.
14646
4e314d1f
EC
146472002-07-03 Eric Christopher <echristo@redhat.com>
14648
14649 * config/mips/linux.h: Add #undef for SUBTARGET_CPP_SPEC.
14650 * config/mips/mips.h: Remove deprecated -m<processor> options
14651 and cc1_cpu_spec associated.
14652 (CONSTANT_ADDRESS_P): Fix last patch.
14653 (ASM_DECLARE_FUNCTION_NAME): Declare. Fix comment.
14654 * config/mips/mips.md (bungt, bunge, sungt_df, sungt_sf, sunge_df,
14655 sunge_sf): Remove.
14656
6f0361e3
SS
146572002-07-03 Stan Shebs <shebs@apple.com>
14658
14659 * config/darwin.h (APPLE_CC): Remove, not meaningful in FSF GCC.
14660 (STRINGIFY_THIS, REALLY_STRINGIFY): Remove.
14661 (CPP_SPEC): Remove insertion of APPLE_CC definition.
14662
3129af4c
RS
146632002-07-03 Roger Sayle <roger@eyesopen.com>
14664
14665 * combine.c (struct_undo): Change types of recorded substitutions
14666 to be either "int" or "rtx", instead of "unsigned int" and "rtx".
14667 (do_SUBST_INT): Change types of the substitution from unsigned int
14668 to int, to avoid compilation warning from SUBST_INT's only caller.
14669
14670 (make_extraction): Add cast to avoid compilation warning.
14671 (force_to_mode): Remove cast to avoid compilation warning.
14672
c7375e61
EB
146732002-07-03 Eric Botcazou <ebotcazou@multimania.com>
14674 Jeff Law <law@redhat.com>
14675
14676 * i386.md (length_immediate attribute): Fix typo.
14677 (length_address attribute): Likewise.
14678 (modrm attribute): Set it to 0 for immediate call instructions.
14679 (jcc_1 pattern): Set modrm attribute to 0.
14680 (jcc_2 pattern ): Likewise.
14681 (jump pattern): Likewise.
14682 (doloop_end_internal pattern): Explicitly set length.
14683 (leave pattern): Fix typo.
14684 (leave_rex64 pattern): Likewise.
14685
61c07d3c
DE
146862002-07-03 David Edelsohn <edelsohn@gnu.org>
14687
14688 * config/rs6000/rs6000.md (fix_truncdfsi2_internal): Ignore DImode
14689 in FPR as preference.
14690 (fctiwz): Same.
14691 (floatdidf2, fix_truncdfdi2): Same.
14692 (floatdisf2, floatditf2, fix_trunctfdi2): Same.
14693 (floatditf2): Same.
14694 (floatsitf2, fix_trunctfsi2): SImode in GPR.
14695 (ctrdi): Remove FPR alternative and splitter.
14696
146972002-07-03 Will Cohen <wcohen@redhat.com>
77966be3
WC
14698
14699 * config/i386/i386.c (x86_integer_DFmode_moves): Disable for PPro.
14700
34a80643
R
14701Wed Jul 3 10:24:16 2002 J"orn Rennecke <joern.rennecke@superh.com>
14702
14703 * optabs.c (expand_vector_binop): Don't store using a SUBREG smaller
14704 than UNITS_PER_WORD, unless this is little endian and the first unit
14705 in this word. Let extract_bit_field decide how to load an element.
14706 Force arguments to matching mode.
14707 (expand_vector_unop): Likewise.
14708
14709 * simplify-rtx.c (simplify_subreg): Don't assume that all vectors
14710 consist of word_mode elements.
14711 * c-typeck.c (build_binary_op): Allow vector types for BIT_AND_EXPR,
14712 BIT_ANDTC_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR.
14713 (build_unary_op): Allow vector types for BIT_NOT_EPR.
14714 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg for
14715 CONST_VECTOR.
14716 * optabs.c (expand_vector_binop): Try to perform operation in
14717 smaller vector modes with same inner size. Add handling of AND, IOR
14718 and XOR. Reject expansion to inner-mode sized scalars when using
14719 OPTAB_DIRECT. Use simplify_gen_subreg on constants.
14720 (expand_vector_unop): Try to perform operation in smaller vector
14721 modes with same inner size. Add handling of one's complement.
14722 When there is no vector negate operation, try a vector subtract
14723 operation. Use simplify_gen_subreg on constants.
14724 * simplify-rtx.c (simplify_subreg): Add capability to convert vector
14725 constants into smaller vectors with same inner mode, and to
14726 integer CONST_DOUBLEs.
14727
622d3731
KG
147282002-07-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14729
14730 * c-parse.in (parsing_iso_function_signature): New variable.
14731 (extdef_1): New, copied from...
14732 (extdef): ... here. Reset parsing_iso_function_signature.
14733 (old_style_parm_decls): Reset parsing_iso_function_signature.
14734 (old_style_parm_decls_1): New, copied from old_style_parm_decls.
14735 Warn about ISO C style function definitions.
14736 (nested_function, notype_nested_function): Reset
14737 parsing_iso_function_signature.
14738 (parmlist_2): Set parsing_iso_function_signature.
14739
14740 * doc/invoke.texi (-Wtraditional): Document new behavior.
14741
9bb46191
CD
147422002-07-02 Chris Demetriou <cgd@broadcom.com>
14743
14744 * config.gcc (mips*el-*-*): Use tm_defines to set
14745 TARGET_ENDIAN_DEFAULT, rather than including mips/little.h.
14746 * config/mips/little.h: Remove.
14747
e1c2dd26 147482002-07-02 Devang Patel <dpatel@apple.com>
c40da518 14749
c40da518 14750 * objc/objc-act.c (adjust_type_for_id_default): Do not allow an
31e25abd
CD
14751 object as parameter. Prevent something like 'NSObject' to be
14752 used as the type for a method argument.
c40da518 14753
0879540b
NB
147542002-07-03 Neil Booth <neil@daikokuya.co.uk>
14755
14756 * cpptrad.c: Update comment.
14757
b6fb43ab 147582002-07-02 Neil Booth <neil@daikokuya.co.uk>
4e314d1f 14759
b6fb43ab
NB
14760 * doc/cpp.texi: Update for traditional preprocessing changes.
14761 * goc/cppopts.texi: Similarly.
14762
c1c5187c
ZL
147632002-07-02 Ziemowit Laski <zlaski@apple.com>
14764
14765 * c-parse.in (designator): Enable designated initializers if ObjC.
14766 (objcmessageexpr): Remove references to objc_receiver_context.
14767 * objc/objc-act.h (objc_receiver_context): Remove decl.
14768 * objc/objc-act.c (objc_receiver_context): Remove.
14769 (lookup_objc_ivar): Test objc_method_context instead of
14770 objc_receiver_context.
14771
52702ae1
R
14772Tue Jul 2 18:45:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
14773
14774 * sh.c (print_operand, case 'N'): Allow zero vector.
14775 (arith_reg_or_0_operand): Likewise.
14776 (zero_vec_operand): Check for CONST_VECTOR, not PARALLEL.
4e314d1f 14777 * sh.h (CONST_COSTS): 0 has 0 cost. Check OUTER_CODE for
52702ae1
R
14778 IOR, XOR, PLUS and SET and take their respective constant
14779 ranges into account.
14780 (PREDICATE_CODES, arith_reg_or_0_operand): Can be CONST_VECTOR.
14781 * sh.md (subdi3, subdi3_media): Allow zero operand.
14782 (movv8qi_i+3): Only vector that is not split is the zero vector.
14783 Fix operand 3 to simplify_subreg.
14784 (movv2si_i): Split alternative 1.
14785 (mshfhi_l_di_rev+1): New splitter.
14786
49e7b251
NB
147872002-07-02 Neil Booth <neil@daikokuya.co.uk>
14788
ba57a9c0 14789 PR preprocessor/7029
49e7b251
NB
14790 * cppinit.c (cpp_handle_option): Suppress warnings with an
14791 implicit "-w" for "-M" and "-MM".
14792 * doc/cppopts.texi: Update.
14793
a3acdc0c
RS
147942002-07-01 Roger Sayle <roger@eyesopen.com>
14795
14796 * config/sh/sh.c (sh_media_init_builtins): Change use of poisoned
14797 identifier "bzero" to "memset". Pass extra NULL_TREE argument to
14798 builtin_function.
14799
0b558962
AM
148002002-07-02 Alan Modra <amodra@bigpond.net.au>
14801
14802 * README.Portability: Fix typos.
14803
9a81c5b7
HPN
148042002-07-01 Hans-Peter Nilsson <hp@axis.com>
14805
14806 PR target/7177
14807 * config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Correct number
14808 of indirections for register inside sign-extended mem part.
14809
6a2dd09a
RS
148102002-07-01 Roger Sayle <roger@eyesopen.com>
14811
14812 * tree.h: Modify builtin_function interface to take an extra
14813 argument ATTRS, which is a tree representing an attribute list.
14814
14815 * c-decl.c (builtin_function): Accept additional parameter.
14816 * objc/objc-act.c (builtin_function): Likewise.
14817 * f/com.c (builtin_function): Likewise.
14818 * java/decl.c (builtin_function): Likewise.
14819 * ada/utils.c (builtin_function): Likewise.
14820 * cp/decl.c (builtin_function): Likewise.
14821 (builtin_function_1): Likewise.
14822
14823 * c-common.c (c_common_nodes_and_builtins): Pass an additional
14824 NULL_TREE argument to builtin_function. (builtin_function_2):
14825 Likewise.
14826 * cp/call.c (build_java_interface_fn_ref): Likewise.
14827 * objc/objc-act.c (synth_module_prologue): Likewise.
14828 * java/decl.c (java_init_decl_processing): Likewise.
14829 * f/com.c (ffe_com_init_0): Likewise.
14830
14831 * config/alpha/alpha.c (alpha_init_builtins): Pass an additional
14832 NULL_TREE argument to builtin_function.
14833 * config/arm/arm.c (def_builtin): Likewise.
14834 * config/c4x/c4x.c (c4x_init_builtins): Likewise.
14835 * config/i386/i386.c (def_builtin): Likewise.
14836 * config/ia64/ia64.c (def_builtin): Likewise.
14837 * config/rs6000/rs6000.c (def_builtin): Likewise.
14838
e20569ae
ZW
148392002-07-01 Zack Weinberg <zack@codesourcery.com>
14840
14841 * config/ip2k/t-ip2k: Remove LIBGCC1, CROSS_LIBGCC1, and LIBGCC1_TEST.
14842 * config/mips/t-isa3264: Likewise.
14843 * config/mmix/t-mmix: Likewise.
14844
f1b690f1
JDA
148452002-07-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
14846
14847 * emit-rtl.c (init_emit_once): Add missing cast to HOST_WIDE_INT.
14848
6bfa5aac
RS
148492002-07-01 Roger Sayle <roger@eyesopen.com>
14850
14851 PR opt/4046
14852 * fold-const.c (fold) [COND_EXPR]: Simplify A ? 0 : 1 to !A,
14853 A ? B : 0 to A && B and A ? B : 1 into !A || B if both A and
14854 B are truth values.
14855
9a5c1b9d
NN
148562002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
14857
14858 * config/mmix/t-mmix: Eliminate last reference to LIBGCC1_TEST.
14859
d3fc4dbc
MK
148602002-07-01 Matt Kraai <kraai@alumni.cmu.edu>
14861
3b2124df
MK
14862 * README.Portability (Function prototypes): Give an example of
14863 declaring and defining a function with no arguments.
14864
d3fc4dbc
MK
14865 * README.Portability (Function prototypes): Document new
14866 variable-argument function macros.
14867
c1b92d09
R
14868Mon Jul 1 19:55:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
14869
14870 * sh.c (langhooks.h): Include.
14871 (sh_init_builtins, sh_media_init_builtins): New functions.
14872 (sh_expand_builtin, arith_reg_dest,and_operand): Likewise.
14873 (mextr_bit_offset, extend_reg_operand, zero_vec_operand): Likewise.
14874 (sh_rep_vec, sh_1el_vec, sh_const_vec): Likewise.
14875 (builtin_description): New struct tag.
14876 (signature_args, bdesc): New arrays.
14877 (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Undef / define.
14878 (print_operand): Add 'N' modifier.
14879 * sh.h (VECTOR_MODE_SUPPORTED_P): Add SHmedia vector modes.
14880 (EXTRA_CONSTRAINT_U, EXTRA_CONSTRAINT_W): New macros.
14881 (EXTRA_CONSTRAINT): Add 'U' and 'W' cases.
14882 (CONST_COSTS): Add special case for SHmedia AND.
14883 (PREDICATE_CODES): Add and_operand, arith_reg_dest,
14884 extend_reg_operand, extend_reg_or_0_operand, mextr_bit_offset,
14885 sh_const_vec, sh_1el_vec, sh_rep_vec, zero_vec_operand.
14886 target_operand can also be const or unspec.
14887 * sh.md (UNSPEC_INIT_TRAMP, UNSPEC_FCOSA UNSPEC_FSRRA): New constants.
14888 (UNSPEC_FSINA, UNSPEC_NSB, UNSPEC_ALLOCO): Likewise.
14889 (attribute type): Add new types.
14890 (anddi3): Add splitter.
14891 (movdi_const_16bit+1): Add code to handle vector constants and
14892 bitmasks efficiently.
14893 (shori_media): Have generator function made.
14894 (movv8qi, movv8qi_i, movv8qi_i+1, movv8qi_i+2): New patterns.
14895 (movv8qi_i+3, movv2hi, movv2hi_i, movv4hi, movv4hi_i): Likewise.
14896 (movv2si, movv2si_i, absv2si2, absv4hi2, addv2si3, addv4hi3): Likewise.
14897 (ssaddv2si3, usaddv8qi3, ssaddv4hi3, negcmpeqv8qi): Likewise.
14898 (negcmpeqv2si, negcmpeqv4hi, negcmpgtuv8qi, negcmpgtv2si): Likewise.
14899 (negcmpgtv4hi, mcmv, mcnvs_lw, mcnvs_wb, mcnvs_wub): Likewise.
14900 (mextr_rl, mextr_lr, mextr1, mextr2, mextr3, mextr4, mextr5): Likewise.
14901 (mextr6, mextr7, mmacfx_wl, mmacfx_wl_i, mmacnfx_wl): Likewise.
14902 (mmacnfx_wl_i, mulv2si3, mulv4hi3, mmulfx_l, mmulfx_w): Likewise.
14903 (mmulfxrp_w, mmulhi_wl, mmullo_wl, mmul23_wl, mmul01_wl): Likewise.
14904 (mmulsum_wq, mmulsum_wq_i, mperm_w, mperm_w_little): LIkewise.
14905 (mperm_w_big, mperm_w0, msad_ubq, msad_ubq_i, mshalds_l): Likewise.
14906 (mshalds_w, ashrv2si3, ashrv4hi3, mshards_q, mshfhi_b): Likewise.
14907 (mshflo_b, mshf4_b, mshf0_b, mshfhi_l, mshflo_l, mshf4_l): Likewsie.
14908 (mshf0_l, mshfhi_w, mshflo_w, mshf4_w, mshf0_w, mshfhi_l_di): Likewise.
14909 (mshfhi_l_di_rev, mshflo_l_di, mshflo_l_di_rev): Likewise.
14910 (mshflo_l_di_x, mshflo_l_di_x_rev, ashlv2si3, ashlv4hi3): Likewise.
14911 (lshrv2si3, lshrv4hi3, subv2si3, subv4hi3, sssubv2si3): Likewise.
14912 (ussubv8qi3, sssubv4hi3, fcosa_s, fsina_s, fipr, fsrra_s): Likewise.
14913 (ftrv): Likewise.
14914
14915 (fpu_switch+1, fpu_switch+2): Remove constraint.
14916
97ebc06f
AH
149172002-07-01 Aldy Hernandez <aldyh@redhat.com>
14918
6c535c69
ZW
14919 * tree.c (build_function_type_list): Update function comment.
14920 Rename first argument to return_type.
97ebc06f 14921
353a10d0
NB
149222002-07-01 Neil Booth <neil@daikokuya.co.uk>
14923
14924 * Makefile.in: Remove all trace of tradcpp.c, tradcpp.h,
14925 tradcif.y and related files.
14926
e34cabb3
NB
149272002-07-01 Neil Booth <neil@daikokuya.co.uk>
14928
14929 * cpptrad.c (skip_whitespace): Pass pointer to prior char.
14930
8bf3ccbb
KG
149312002-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14932
14933 * mips.h (FUNCTION_ARG_REGNO_P): Fix parentheses.
14934
44eedb75 14935See ChangeLog.7 for earlier changes.
This page took 2.503184 seconds and 5 git commands to generate.