]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
aclocal.m4 (gcc_AC_INITFINI_ARRAY): Fix spelling of cache variable.
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
918c4fe4
AS
12003-01-08 Andreas Schwab <schwab@suse.de>
2
3 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): Fix spelling of cache
4 variable.
5 * configure: Regenerated.
6
c5e7ce43
KH
72003-01-08 Kazu Hirata <kazu@cs.umass.edu>
8
9 * config/h8300/h8300.c (output_logical_op): Replace byte/word
10 extraction of det with b0, b1, w0, w2, etc.
11 (compute_logical_op_length): Likewise.
12 (compute_logical_op_cc): Likewise.
13
eb8a8ec4
KH
142003-01-08 Kazu Hirata <kazu@cs.umass.edu>
15
16 * config/h8300/h8300.h (CONSTANT_ADDRESS_P): Allow CONST and
17 HIGH on all variants.
18
56f15830
JZ
19Wed Jan 8 14:06:34 CET 2003 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz>
20
21 * Makefile.in (PARTITION_H): New.
22 (BASIC_BLOCK_H): Added hard-reg-set.h and $(PARTITION_H).
23 * basic-block.h: Include hard-reg-set.h.
24
ab57893b
RE
252003-01-08 Richard Earnshaw <rearnsha@arm.com>
26
27 * arm.h (ENABLE_XF_PATTERNS): Delete.
28 * arm.md (addxf3, subxf3, mulxf3, divxf3, modxf3, negxf2, absxf2)
29 (sqrtxf2, floatsixf2, fix_truncxfsi2, truncxfsf2, truncxfdf2)
30 (extendsfxf2, extenddfxf2, movxf, cmpxf, cmpxf_insn)
31 (cmpxf_trap): Delete.
32 (movxf_hard_insn): Remove test of ENABLE_XF_PATTERNS.
33
7b52eede
JH
34Wed Jan 8 12:10:57 CET 2003 Jan Hubicka <jh@suse.cz>
35
36 * i386.md (adddi3_carry_rex64, subdi3_carry_rex64): Name pattern.
37 (addhi3_carry, addqi3_carry, subhi3_carry, subqi3_carry): New patterns.
38 (add??cc): New expanders.
39 * i386.c (expand_int_addcc): New function.
40 * i386-protos.h (expand_int_addcc): Declare.
41
42 * alias.c (memory_modified_1): New static function.
43 (memory_modified): New static varaible.
44 (memory_modified_in_insn_p): New global function.
45 * rtl.h (memory_modified_in_insn_p): Declare.
46 * rtlanal.c (modified_between_p, modified_in_p): Be smart about memory
47 references.
48
49 * expr.h (emit_conditional_add): Declare.
50
74049755
JJ
512003-01-07 Janis Johnson <janis187@us.ibm.com>
52
53 PR other/8947
54 * doc/invoke.texi (-malign-double): Explain that the option breaks
55 binary compatibility.
56
e7edc5a0
AS
572003-01-08 Andreas Schwab <schwab@suse.de>
58
59 * config.gcc (m68k-*-linux*): Don't set extra_parts and gnu_ld,
60 should come from the generic *-*-linux* entry.
61
9635cfad
JH
62Tue Jan 7 22:29:56 CET 2003 Jan Hubicka <jh@suse.cz>
63
64 * cselib.c (cselib_current_insn_in_libcall): New static variable.
65 (new_elt_loc_list, cselib_process_insn, cselib_init): Keep track on whether
66 we are inside libcall.
67 * cselib.h (elt_loc_list): Add in_libcall.
68 * gcse.c (do_local_cprop): Do not copy propagate using insns
69 in libcalls.
70
3ee04299
DE
712003-01-07 David Edelsohn <edelsohn@gnu.org>
72
73 * doc/tm.texi (TARGET_SCHED_VARIABLE_ISSUE): CLOBBER and USE do
74 not normally affect to issue rate.
75
068f5dea
JH
76Tue Jan 7 21:46:57 CET 2003 Jan Hubicka <jh@suse.cz>
77
78 * genopinit.c (optabs): Add addc_optab.
79 * ifcvt.c (noce_try_store_flag): Rename to ...
80 (noce_try_addcc): ... this one; handle generic conditional increment.
81 (noce_process_if_block): Update noce_try_addcc call.
82 * optabs.c (emit_conditional_add): New.
83 (init_obtabs): Initialize addc_optab.
84 * optabs.h (optab_index): Add OTI_addcc.
85 (addcc_optab): New macro.
86 * md.texi: Document addMcc
87
88 PR target/8322
89 * i386.c (ix86_init_mmx_sse_builtins): Constify arguments of loads.
90 * xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts.
91 * xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts.
92
93 * reload1.c (delete_output_reload): Avoid repeated attempts
94 to delete insn.
95
eb70d86d
AS
962003-01-07 Andreas Schwab <schwab@suse.de>
97
e7edc5a0
AS
98 * configure.in: Restore CFLAGS before gcc_AC_INITFINI_ARRAY.
99 Move --enable-initfini-array check ...
100 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): ... here. Define
101 HAVE_INITFINI_ARRAY also when --enable-initfini-array is given.
102 Don't AC_SUBST gcc_cv_initfinit_array. Use AC_TRY_RUN.
103 * configure: Rebuild.
eb70d86d 104
1afdf91c
RH
1052003-01-07 Richard Henderson <rth@redhat.com>
106
e7edc5a0
AS
107 * alias.c (find_base_value): Only use new_reg_base_value shortcut
108 if the register is set once.
1afdf91c 109
36210500
SP
1102003-01-07 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
111
112 * config/i386/i386.c (ix86_init_mmx_sse_builtins):
113 __builtin_ia32_ldmxcsr and __builtin_ia32_stmxcsr are SSE, not MXX.
114 * config/i386/i386.md (ldmxcsr, stmxcsr): SSE, not MMX.
115
cb25b0ce
BK
1162003-01-07 Benjamin Kosnik <bkoz@redhat.com>
117 Sunil Davasam <sunil.k.davasam@intel.com>
118
119 PR libstdc++/9076
120 * unwind-dw2.c (execute_cfa_program): DW_CFA_undefined,
121 DW_CFA_same_value, read next and ignore.
122
94c040bd
RH
1232003-01-07 Richard Henderson <rth@redhat.com>
124
125 * cfganal.c (flow_call_edges_add): Don't crash on noreturn call.
126
f6cb56fa
DB
1272003-01-07 Daniel Berlin <dberlin@dberlin.org>
128
129 * cfg.c: Include alloc-pool.h
130 (edge_pool): New pool.
131 (bb_pool): New pool.
132 (first_deleted_edge): Remove.
133 (first_deleted_block): Remove.
134 (init_flow): Alloc/free the pools.
135 (free_edge): Use pools.
136 (alloc_block): Ditto.
137 (expunge_block): Ditto.
138 (cached_make_edge): Ditto.
139
140 * Makefile.in (cfg.o): Add alloc-pool.h dependency.
141
1422003-01-07 Daniel Berlin <dberlin@dberlin.org>
143
144 * et-forest.c: Include alloc-pool.h.
145 (struct et_forest): Add node_pool and occur_pool.
146 (et_forest_create): Create the new pools.
147 (et_forest_delete): Delete them.
148 (et_forest_add_node): Allocate and free using pools.
149 (et_forest_add_edge): Ditto.
150 (et_forest_remove_node): Ditto.
151 (et_forest_remove_edge): Ditto.
152
153 * Makefile.in (et-forest.o): Add alloc-pool.h dependency.
154
f9ac2f95
KH
1552003-01-07 Kazu Hirata <kazu@cs.umass.edu>
156
157 * config/h8300/h8300.c (output_logical_op): Simplify and
158 optimize the handling of SImode.
159 * config/h8300/h8300.c (compute_logical_op_length): Update
160 accordingly.
161 * config/h8300/h8300.c (compute_logical_op_cc): Likewise.
162
83282119
RS
1632003-01-07 Richard Sandiford <rsandifo@redhat.com>
164
165 * config/mips/mips.c (mips_va_arg): In the EABI code, apply the
166 big-endian correction to indirect arguments too.
167
59a4c851
AH
1682003-01-06 Aldy Hernandez <aldyh@redhat.com>
169
170 Segher Boessenkool <segher@koffie.nl>
171
36210500
SP
172 * config/rs6000/rs6000.c (rs6000_reg_names): Add missing registers.
173 (alt_reg_names): Ditto, fix formatting.
174 * config/rs6000/rs6000.h (DEBUG_REGISTER_NAMES): Fix formatting.
59a4c851 175
7798db98
KH
1762003-01-06 Kazu Hirata <kazu@cs.umass.edu>
177
178 * config/h8300/h8300.c (final_prescan_insn): Constify uid.
179 (output_logical_op): Constify intval and det.
180 (compute_logical_length): Likewise.
181 (compute_logical_cc): Likewise.
182 (output_a_shift): Constify mask.
183 (h8300_encode_label): Constify len.
184
4705d102
KH
1852003-01-06 Kazu Hirata <kazu@cs.umass.edu>
186
187 * config/h8300/h8300.c (h8300_expand_prologue): Remove fsize.
188 (h8300_expand_epilogue): Likewise.
189
98c9a8e8
AH
1902003-01-06 Aldy Hernandez <aldyh@redhat.com>
191
192 Segher Boessenkool <segher@koffie.nl>
193
36210500
SP
194 * config/rs6000/altivec.md: Remove spaces from assembler
195 instruction argument lists.
98c9a8e8 196
86143814
MH
1972003-01-07 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
198
199 * config/c4x/c4x.c (c4x_naked_function_p): Rename from
200 c4x_assembler_function_p.
201 (c4x_null_epilogue_p): Complement return value, all uses updated.
202 (c4x_insert_attributes): Add naked.
203 * config/c4x/c4x.md (c4x_null_epilogue_p): Changes uses.
204 * doc/extend.texi: Update C4x function attributes.
205
52fd80fb
RH
2062003-01-06 Richard Henderson <rth@redhat.com>
207
208 * config/alpha/alpha.c (alpha_encode_section_info): Adjust symbol_str
209 properly when changing "local-ness".
210 * config/alpha/alpha.md (movdi_er_high_g): Allow all symbols.
211
a16b43c5
DJ
2122003-01-06 Dale Johannesen <dalej@apple.com>
213
214 * config/darwin-protos.h: Add prototypes for new section functions.
215
ef8dfae6
CD
2162003-01-06 Chris Demetriou <cgd@broadcom.com>
217
218 * config.gcc (mipsisa32-*-elf*, mipsisa32el-*-elf*): Default ABI
219 to EABI.
220
44f9a8e4
ZW
2212003-01-06 Zack Weinberg <zack@codesourcery.com>
222
223 * hwint.h: If the current compiler has no 64-bit type at all,
224 make HOST_WIDEST_INT 32 bits.
225
2610198a
EC
2262003-01-06 Eric Christopher <echristo@redhat.com>
227
228 * config/mips/mips.md (movdf_internal2): Fix constraints.
229
efbd757f
KH
2302003-01-06 Kazu Hirata <kazu@cs.umass.edu>
231
232 * config/h8300/h8300.md (*twoshifts_l16_r1): New.
233
727b9b8c
RS
2342003-01-06 Richard Sandiford <rsandifo@redhat.com>
235
236 * config/mips/mips.md (leadi): Use dla rather than la.
237
4705d102 2382003-01-06 Svein E. Seldal <Svein.Seldal@solidas.com>
cebdac46
SS
239
240 * config/c4x/c4x.h: Updated specs for new gas format. Fixed bug
241 in C33_FLAG. Added proper C33 support in ASM_FILE_START macro.
242
4705d102 2432003-01-06 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
fe1e789f 244
44f9a8e4 245 * config/c4x/c4x.h: Remove hwint.h include and HOST_WIDE_INT_PRINT_HEX
fe1e789f
HB
246 redefinition.
247
dff0ea43
KH
2482003-01-05 Kazu Hirata <kazu@cs.umass.edu>
249
250 * config/h8300/h8300.md (*extzv_8_23): New.
251
94e6fd3e
JDA
2522003-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
253
254 * pa64-hpux.h (JCR_SECTION_NAME): Define.
255 (PA_INIT_FRAME_DUMMY_ASM_OP): Check EH_FRAME_SECTION_NAME instead of
256 USE_EH_FRAME_REGISTRY when defining.
257
cd9b5ca8
KH
2582003-01-05 Kazu Hirata <kazu@cs.umass.edu>
259
260 * config/h8300/h8300.c (output_a_shift): Do not output a
261 variable shift.
262 * config/h8300/h8300.md (two splitters): New.
263
1ba8a9c4
RS
2642003-01-05 Richard Sandiford <rsandifo@redhat.com>
265
266 * config/mips/mips.md: Disable the movstrsi define_split.
267
c7c50494
KG
2682003-01-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
269
270 * alloc-pool.c: Don't include "libiberty.h".
271 * config/sparc/gmon-sol2.c: Include <fcntl.h>.
272 * convert.c (convert_to_real): Hide unused variable.
273
83fa8d7a
KG
2742003-01-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
275
276 * Makefile.in (gtyp-gen.h): Const-ify.
277 * gcov-dump.c (tag_table): Likewise.
278
871dab3e
BK
2792003-01-04 Bruce Korb <bkorb@gnu.org>
280
281 * fixinc/fixfixes.c(wrap_fix): the wrapper guard must be a function
282 of *both* the file name and the fix name.
283
35d434ed
JDA
2842002-01-04 John David Anglin <dave.anglin@nrc.ca>
285
286 * config.gcc (hppa*64*-*-hpux11*): Define extra_parts. Don't use
287 collect2.
288 * pa-hpux11.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Undefine.
289 (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Define.
290 * pa64-hpux.h (HP_INIT_ARRAY_SECTION_ASM_OP,
291 GNU_INIT_ARRAY_SECTION_ASM_OP, HP_FINI_ARRAY_SECTION_ASM_OP,
292 GNU_FINI_ARRAY_SECTION_ASM_OP): Define.
293 (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Define when not using
294 elfos.h.
295 (EH_FRAME_IN_DATA_SECTION): Delete define.
296 (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Undefine.
297 (STARTFILE_SPEC): Use crtbegin.o.
298 (ENDFILE_SPEC): Use crtend.o.
299 (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION,
300 SUPPORTS_INIT_PRIORITY, PA_CXA_FINALIZE_STUB, PA_INIT_FINI_HACK,
301 PA_INIT_FRAME_DUMMY_ASM_OP, PA_JV_REGISTERCLASSES_STUB,
302 DTOR_LIST_BEGIN): Define.
303 * pa.c (TARGET_ASM_CONSTRUCTOR): Define.
304 (pa_asm_out_constructor, pa_asm_out_destructor): New functions.
305 * som.h (SUPPORTS_INIT_PRIORITY): Delete define.
306
b0588013
BK
3072002-12-31 Larin Hennessy <larin@science.oregonstate.edu>
308
309 * fixinc/fixinc.svr4: Remove references to i860, Sony NewsOS, and spur.
310 * fixinc/inclhack.def: Remove tests for Apple A/UX, ARM/RISCiX, DG/UX,
311 m88k-*-sysv3*, Sony NewsOS. Remove references to i860.
312 Cleanup handling of replacement text.
313 * fixinc/mkfixinc.sh: Remove reference to i?86-*-osf1*
314
3152003-01-04 Bruce Korb <bkorb@gnu.org>
316
317 * fixinc/tests/base/math.h: removed obsolete results
318 * fixinc/tests/base/stdlib.h: ditto
319 * fixinc/tests/base/sys/param.h: ditto
320 * fixinc/tests/base/sys/stat.h: ditto
321 * fixinc/tests/base/time.h: ditto
322 * fixinc/tests/base/X11/Intrinsic.h: removed obsolete file
323 * fixinc/tests/base/sys/byteorder.h: ditto
324 * fixinc/inclhack.def: Remove superfluous backslashes
325
68ee6df6
KH
3262003-01-04 Kazu Hirata <kazu@cs.umass.edu>
327
328 * config/h8300/h8300-protos.h: Add prototypes for
329 the new functions defined below.
330 * config/h8300/h8300.c (TARGET_ASM_FUNCTION_PROLOGUE): Do not
331 define.
332 (dosize): Emit RTL instead of assembly code.
333 (push): Likewise.
334 (pop): Likewise.
335 (h8300_output_function_prologue): Remove.
336 (h8300_expand_prologue): New.
337 (h8300_expand_epilogue): New.
338 (h8300_output_function_epilogue): Do only the reset of
339 pragma_saveall.
340 * config/h8300/h8300.md (push_h8300): New.
341 (push_h8300hs): Likewise.
342 (pop_h8300): Likewise.
343 (pop_h8300hs): Likewise.
344 (*stm_h8300s_2): Change the name to stm_h8300s_2.
345 (*stm_h8300s_3): Change the name to stm_h8300s_3.
346 (*stm_h8300s_4): Change the name to stm_h8300s_4.
347 (*ldm_h8300s_2): New.
348 (*ldm_h8300s_3): Likewise.
349 (*ldm_h8300s_4): Likewise.
350 (return): Likewise.
351 (*return_1): Likewise.
352 (prologue): Likewise.
353 (epilogue): Likewise.
354 (monitor_prologue): Likewise.
355
d3c300d2
DJ
3562003-01-03 Dale Johannesen <dalej@apple.com>
357
358 * config/darwin.h: (EXTRA_SECTIONS): Add machopic_symbol_stub1,
359 machopic_picsymbol_stub1.
360 (EXTRA_SECTION_FUNCTIONS): Ditto.
361 * rs6000/rs6000.c: Update copyright.
362 (machopic_output_stub): Use them. Remove an insn from stub code.
363
6cce57b0
JM
3642003-01-02 Jason Merrill <jason@redhat.com>
365
4e8dca1c
JM
366 * fold-const.c (fold) [COND_EXPR]: Avoid NOP_EXPRs better.
367
368 * integrate.c (copy_decl_for_inlining): Don't clear the rtl for
369 static/external decls.
2610198a 370
6cce57b0
JM
371 * c-common.c (finish_fname_decls): Put the DECL_STMTs inside the
372 outermost scope.
373 * c-decl.c (c_make_fname_decl): Push the decls there, too.
374
e392d367
KH
3752003-01-03 Kazu Hirata <kazu@cs.umass.edu>
376
377 * config/h8300/h8300-protos.h: Add a prototype for
378 h8300_current_function_interrupt_function_p.
379 * config/h8300/h8300.c (interrupt_handler): Remove.
380 (os_task): Likewise.
381 (monitor): Likewise.
382 (pragma_interrupt): New.
383 (WORD_REG_USED): Use
384 h8300_current_function_interrupt_function_p.
385 (dosize): Likewise.
386 (h8300_output_function_prologue): Likewise.
387 Do not set interrupt_handler, os_task, monitor.
388 (h8300_output_function_prologue): Use
389 h8300_current_function_interrupt_function_p.
390 Do not set interrupt_handler, os_task, monitor.
391 (h8300_current_function_interrupt_function_p): New.
392 (h8300_pr_interrupt): Set pragma_interrupt.
393 (h8300_insert_attributes): Reset pragma_interrupt.
394
b15da5b7
GP
3952003-01-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
396
397 * doc/install.texi (Configuration): Fix markup for reference to
398 gcc/config.gcc.
399
bf16e745
KH
4002003-01-02 Kazu Hirata <kazu@cs.umass.edu>
401
402 * config/h8300/h8300.md (*iorhi3_zext): Relax the condition.
403 (*iorhi3_two_qi): Likewise.
404 (*iorsi3_zexthi): Likewise.
405 (*xorhi3_zextqi): Likewise.
406 (*xorsi3_zexthi): Likewise.
407 (*xorsi3_zextqi): Likewise.
408
8ccf5d5f
KH
4092003-01-02 Kazu Hirata <kazu@cs.umass.edu>
410
411 * config/h8300/h8300.c (stack_pointer_operand): New.
412 (const_int_gt_2_operand): Likewise.
413 (const_int_ge_8_operand): Likewise.
414 * config/h8300/h8300.md (a splitter): Likewise.
415 (a peephole2): Likewise.
416 * config/h8300/h8300-protos.h: Add prototypes for the new
417 functions above.
418
43c6a96a
SB
4192003-01-02 Steven Bosscher <s.bosscher@student.tudelft.nl>
420
421 * objc/Make-lang.in, objc/config-lang.in, objc/lang-specs.h,
422 objc/objc-act.h: Fix copyright years.
423
96c4e780
SB
4242003-01-02 Steven Bosscher <s.bosscher@student.tudelft.nl>
425
426 * doc/passes.texi: Fix documentation for -fssa-ccp
427
8ed0a104
NB
4282003-01-02 Neil Booth <neil@daikokuya.co.uk>
429
430 * gccbug.in: Update for new categories.
431
1b9f0361
KH
4322003-01-01 Kazu Hirata <kazu@cs.umass.edu>
433
434 * config/h8300/h8300.md: Reorder some patterns.
435
dc5f17ec
KH
4362003-01-01 Kazu Hirata <kazu@cs.umass.edu>
437
438 * config/h8300/h8300.c (output_logical_op): Fix a warning.
439
cd2801fb
NB
4402003-01-01 Neil Booth <neil@daikokuya.co.uk>
441
442 * config/darwin-protos.h, config/c4x/c4x-protos.h,
443 config/cris/cris-protos.h, config/i370/i370-protos.h,
444 config/i960/i960-protos.h, config/ia64/ia64-protos.h,
445 config/v850/v850-protos.h: Use struct, and don't conditionally
446 compile on GCC_C_PRAGMA_H.
447
378b1b8e
KH
4482003-01-01 Kazu Hirata <kazu@cs.umass.edu>
449
450 * config/arm/arm-protos.h: Remove #ifdef GCC_C_PRAGMA_H.
451 * config/h8300/h8300-protos.h: Likewise.
452 * config/sh/sh-protos.h: Likewise.
453
7106a5bc
KH
4542003-01-01 Kazu Hirata <kazu@cs.umass.edu>
455
456 * config/arm/arm-protos.h: Use struct cpp_reader instead of
457 cpp_reader.
458 * config/h8300/h8300-protos.h: Likewise.
459 * config/sh/sh-protos.h: Likewise.
460
231b51a1
NB
4612003-01-01 Neil Booth <neil@daikokuya.co.uk>
462
463 * config/arm/arm.c (arm_pr_long_calls, arm_pr_no_long_calls,
464 arm_pr_long_calls_off): Use struct.
465 * config/h8300/h8300.c (h8300_pr-interrupt, h8300_pr_saveall)
466 : Similarly.
467 Don't include cpplib.h.
468 * config/sh/sh.c (sh_pr_interrupt, sh_pr_trapa,
469 sh_pr_nosave_low_regs): Similarly.
470
0f18b2b0
KH
4712003-01-01 Kazu Hirata <kazu@cs.umass.edu>
472
473 * config/h8300/h8300.c: Include cpplib.h.
474
b9593599
SB
4752003-01-01 Steven Bosscher <s.bosscher@student.tudelft.nl>
476
477 * objc/Make-lang.in, objc/config-lang.in, objc/lang-options.h,
478 objc/lang-specs.h, objc/objc-act.c, objc/objc-act.h,
479 objc/objc-lang.c, objc/objc-tree.def: Replace "GNU CC" with
480 "GCC" in the copyright header.
481
c58b209a
NB
4822003-01-01 Neil Booth <neil@daikokuya.co.uk>
483
484 * c-pragma.c (c_register_pragma): New.
485 (init_pragma): Use it.
486 * c-pragma.h (cpp_register_pragma): Don't declare.
487 (c_register_pragma): New.
488 * cpplib.h: Remove #ifdef GCC_C_PRAGMA_H.
489 * config/darwin.h (REGISTER_TARGET_PRAGMAS): Update.
490 * config/arm/arm.h (REGISTER_TARGET_PRAGMAS): Update.
491 * config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Update.
492 * config/h8300/h8300.h (REGISTER_TARGET_PRAGMAS): Update.
493 * config/i370/i370.h (REGISTER_TARGET_PRAGMAS): Update.
494 * config/i960/i960.h (REGISTER_TARGET_PRAGMAS): Update.
495 * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Update.
496 * config/rs6000/rs6000.h (REGISTER_TARGET_PRAGMAS): Update.
497 * config/sh/sh.h (REGISTER_TARGET_PRAGMAS): Update.
498 * config/v850/v850.h (REGISTER_TARGET_PRAGMAS): Update.
499 * doc/tm.texi (REGISTER_TARGET_PRAGMAS): Update
500
bc455f9c
KH
5012002-12-31 Kazu Hirata <kazu@cs.umass.edu>
502
503 * config/h8300/h8300-protos.h: Update the prototypes.
504 * config/h8300/h8300.c (const_le_2_operand): Change to
505 const_int_le_2_operand.
506 (const_int_le_6_operand): Change to const_int_le_6_operand.
507 * config/h8300/h8300.md (two peepholes): Update the function
508 names.
509
3b41afd9
TT
5102002-12-31 Tom Tromey <tromey@redhat.com>
511
512 * doc/install.texi (Testing): Fixed typo.
513
9e56a932
KH
5142002-12-31 Kazu Hirata <kazu@cs.umass.edu>
515
516 * config/h8300/h8300.h (TRAMPOLINE_TEMPLATE): Remove.
517 (TRAMPOLINE_SIZE): Support the normal mode.
518 (INITIALIZE_TRAMPOLINE): Emit the entire trampoline.
519
731e8b38
MM
5202002-12-31 Mark Mitchell <mark@codesourcery.com>
521
522 * c-common.h (pending_lang_change): Declare.
523
147d1cd3
JQ
5242002-12-31 Jerry Quinn <jlquinn@optonline.net>
525
526 * gcc/doc/invoke.texi (Optimization Options): Clean up -O flag
527 descriptions.
528
fad893da
JQ
5292002-12-31 Jerry Quinn <jlquinn@optonline.net>
530
531 * gcc/doc/invoke.texi (Optimization Options): List the options
532 enabled by each -O flag.
533
ec5b5ef1
GP
5342002-12-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
535
536 * doc/install.texi (Configuration): Explicitly refer
537 gcc/config.gcc for a list of cpu models.
538
59d7c857
KH
5392002-12-31 Kazu Hirata <kazu@cs.umass.edu>
540
541 * config/h8300/h8300.h: Fix comment typos.
542
5b8f5865
DE
5432002-12-30 David Edelsohn <edelsohn@gnu.org>
544
545 * config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define.
546
582f6e6d
TT
5472002-12-30 Tom Tromey <tromey@redhat.com>
548
549 * doc/install.texi (Testing): Mention Jacks.
550
f75db6bc
JM
5512002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
552
553 * doc/gcc.texi, doc/gccint.texi: Update last modification dates.
554
2d75548f
KH
5552002-12-30 Kazu Hirata <kazu@cs.umass.edu>
556
557 * config/h8300/h8300.c (output_logical_op): Use extu.w in more
558 cases.
559 (compute_logical_op_length): Update to reflect the change in
560 output_logical_op.
561 (compute_logical_op_cc): Likewise.
562
b351c1d9
JM
5632002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
564
565 * doc/service.texi: Uncomment and update FAQ link.
566
47ab0cbb
AJ
5672002-12-30 Andreas Jaeger <aj@suse.de>
568
569 * unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
570
3cc3e1cd
KH
5712002-12-30 Kazu Hirata <kazu@cs.umass.edu>
572
573 * config/h8300/h8300.md (*addsi3_lshiftrt_16_zexthi): New.
574
a6e8d113
KH
5752002-12-30 Kazu Hirata <kazu@cs.umass.edu>
576
577 * config/h8300/h8300.c (output_logical_op): Use extu.w if we
578 are clearing the most significant byte.
579 (compute_logical_op_length): Update to reflect the change in
580 output_logical_op.
581 (compute_logical_op_cc): Likewise.
582
c85263d2
KH
5832002-12-29 Kazu Hirata <kazu@cs.umass.edu>
584
585 * config/h8300/h8300.md: Give internal names to anonymous
586 insns.
587
fbcb02cd
KH
5882002-12-29 Kazu Hirata <kazu@cs.umass.edu>
589
590 * config/h8300/h8300.md: Reorder some insns.
591
2873836b
KH
5922002-12-29 Kazu Hirata <kazu@cs.umass.edu>
593
594 * config/h8300/h8300-protos.h: Add prototypes for
595 const_int_qi_operand and const_int_hi_operand.
596 * config/h8300/h8300.c (const_int_qi_operand): New.
597 (const_int_hi_operand): Likewise.
598 * config/h8300/h8300.md (three peepholes): New.
599
bdefb2ab
JM
6002002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
601
602 * doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
603 Use @copying.
604
a38f87a9
JM
6052002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
606
607 * configure.in: Increase makeinfo version requirement to 4.[2-9].
608 * configure: Regenerate.
609 * doc/install.texi: Update Texinfo version requirement.
610
c14bc6db
AJ
6112002-12-28 Andreas Jaeger <aj@suse.de>
612
b9b21a05
AJ
613 * config/i386/i386.c (x86_function_profiler): Mark labelno as
614 possibly unused.
615
c14bc6db
AJ
616 * c-parse.in (yyprint): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX for
617 correct format.
618
62fbd434
KH
6192002-12-27 Kazu Hirata <kazu@cs.umass.edu>
620
621 * config/h8300/h8300.md (*iorhi_shift_8): Change the name to
622 *iorhi_ashift_8.
623 (*iorhi_lshiftrt_8): New.
624
27e3f16d
JM
6252002-12-27 Joseph S. Myers <jsm@polyomino.org.uk>
626
627 * doc/include/texinfo.tex: Update to version 2002-12-26.16.
628
b09975de
GP
6292002-12-27 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
630
631 * doc/contrib.texi (Contributors): Add Abramo and Roberto Bagnara.
632
f411c849
KH
6332002-12-26 Kazu Hirata <kazu@cs.umass.edu>
634
635 * config/h8300/h8300-protos.h: Fix comment typos.
636 Update copyright.
637 * config/h8300/h8300.c: Fix comment typos.
638
b976d7a0
KH
6392002-12-26 Kazu Hirata <kazu@cs.umass.edu>
640
641 * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
642
d1f87653
KH
6432002-12-26 Kazu Hirata <kazu@cs.umass.edu>
644
645 * config/i386/athlon.md: Fix comment typos.
646 * config/i386/crtdll.h: Likewise.
647 * config/i386/djgpp.h: Likewise.
648 * config/i386/i386-interix.h: Likewise.
649 * config/i386/i386.c: Likewise.
650 * config/i386/i386.h: Likewise.
651 * config/i386/i386.md: Likewise.
652 * config/i386/k6.md: Likewise.
653 * config/i386/mingw32.h: Likewise.
654 * config/i386/pentium.md: Likewise.
655 * config/i386/sco5.h: Likewise.
656 * config/i386/winnt.c: Likewise.
657 * config/i386/xmmintrin.h: Likewise.
658
ecd4a73b
JR
6592002-12-26 Jose Renau <renau@cs.uiuc.edu>
660
661 * ssa-dce.c (EXECUTE_IF_UNNECESSARY): Verify INSN is an
662 INSN_P before checking to see if it is dead.
663 (mark_all_insn_unnecessary): Similarly.
664 (ssa_eliminate_dead_code): Similarly.
665 * rtl.h (struct rtx_def): Update comments for in_struct usage
666 in dead code elimination pass.
667 (INSN_DEAD_CODE_P): Allow JUMP_INSN and CALL_INSN as well.
668
b17bb466
AS
6692002-12-26 Andreas Schwab <schwab@suse.de>
670
c14bc6db 671 * config.gcc (powerpc*-*-*, rs6000-*-*): Fix assignment syntax.
b17bb466 672
b21fb038
DE
6732002-12-25 David Edelsohn <edelsohn@gnu.org>
674
675 * config/rs6000/rs6000.c (rs6000_override_options): Convert to
676 tartet_flags_explicit.
677 * config/rs6000/rs6000.h (MASK_MULTIPLE_SET, MASK_STRING_SET): Delete.
678 Compact target_flags bits.
679 (TARGET_MULTIPLE_SET, TARGET_STRING_SET): Delete.
680 (TARGET_SWITCHES): Delete references to *_SET flags.
681
abd2dd6d
JH
682Wed Dec 25 20:30:53 CET 2002 Jan Hubicka <jh@suse.cz>
683
684 * i386.md (memory attribute): Fix setcc attribute.
685
d55d8fc7
KH
6862002-12-25 Kazu Hirata <kazu@cs.umass.edu>
687
688 * output.h: Fix comment typos.
689 * predict.c: Likewise.
690 * print-tree.c: Likewise.
691 * profile.c: Likewise.
692 * ra-build.c: Likewise.
693 * ra-colorize.c: Likewise.
694 * ra-debug.c: Likewise.
695 * ra-rewrite.c: Likewise.
696 * ra.c: Likewise.
697 * ra.h: Likewise.
698 * real.c: Likewise.
699 * recog.c: Likewise.
700 * reg-stack.c: Likewise.
701 * regclass.c: Likewise.
702
7a770d8b
KH
7032002-12-25 Kazu Hirata <kazu@cs.umass.edu>
704
705 * config/h8300/h8300.c (print_operand_address): Do not negate
706 a negative number when printing one.
707
7d6ac401
KH
7082002-12-25 Kazu Hirata <kazu@cs.umass.edu>
709
710 * config/h8300/h8300-protos.h: Add prototypes for
711 output_plussi, compute_plussi_length, and compute_plussi_cc.
712 * config/h8300/h8300.c (output_plussi): New.
713 (compute_plussi_length): Likewise.
714 (compute_plussi_cc): Likewise.
715 * config/h8300/h8300.md (addsi_h8300h): Call
716 output_plussi, compute_plussi_length, and compute_plussi_cc.
717
871d6a01
KH
7182002-12-24 Kazu Hirata <kazu@cs.umass.edu>
719
720 * config/h8300/h8300.md (two peepholes): Use match_dup instead
721 of match_operand in the new patterns.
722
4fbf9d4a
JM
7232002-12-24 Joseph S. Myers <jsm@polyomino.org.uk>
724
725 * doc/include/texinfo.tex: Update to version 2002-11-25.11.
726
8601608f
NS
7272002-12-24 Nathan Sidwell <nathan@codesourcery.com>
728
729 * configure.in (enable-coverage): Add SELF_COVERAGE.
730 * profile.c (end_branch_prob): Use SELF_COVERAGE.
731
c28b4e40
JW
7322002-12-24 Jim Wilson <wilson@redhat.com>
733
734 * alias.c (record_set): Handle multi-reg hard registers.
735
14b493d6
KH
7362002-12-24 Kazu Hirata <kazu@cs.umass.edu>
737
738 * regmove.c: Fix comment typos.
739 * reload.c: Likewise.
740 * reload1.c: Likewise.
741 * resource.c: Likewise.
742 * rtl.def: Likewise.
743 * rtl.h: Likewise.
744 * rtlanal.c: Likewise.
745 * sched-deps.c: Likewise.
746 * sched-rgn.c: Likewise.
747 * sibcall.c: Likewise.
748 * simplify-rtx.c: Likewise.
749 * ssa-ccp.c: Likewise.
750 * ssa.c: Likewise.
751 * stmt.c: Likewise.
752 * stor-layout.c: Likewise.
753 * system.h: Likewise.
754 * tlink.c: Likewise.
755 * toplev.c: Likewise.
756 * tracer.c: Likewise.
757 * tree-inline.c: Likewise.
758 * tree.c: Likewise.
759 * tree.h: Likewise.
760 * unroll.c: Likewise.
761 * varasm.c: Likewise.
762
c9693e96
LH
7632002-12-23 Larin Hennessy <larin@science.oregonstate.edu>
764
765 * doc/install.texi: Remove i386-*-isc, i860-*-bsd,
766 m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries.
767 * doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex,
768 DG/UX entries.
769 * doc/md.texi: Remove AMD 29K entries.
770 * doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS
771 1.38.1, NewsOS, RT PC, WE32K entries.
772
a67ed43f
AH
7732002-12-23 Aldy Hernandez <aldyh@redhat.com>
774
44f9a8e4
ZW
775 PR/8763
776 * config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector.
777 (altivec_vspltisw_v4sf): Name pattern.
778 (altivec_vslw_v4sf): New pattern.
a67ed43f 779
46d40353
JM
7802002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
781
782 * doc/include/gcc-common.texi: Define DEVELOPMENT.
783
8dc65b6e
MM
7842002-12-23 Mark Mitchell <mark@codesourcery.com>
785
786 * stor-layout.c (update_alignment_for_field): Correct handling of
787 unnamed bitfields on PCC_BITFIELD_TYPE_MATTERS machines.
788 * doc/tm.texi (PCC_BITFIELD_TYPE_MATTERS): Note that an unnamed
789 bitfield does not affect alignment.
790
7c02ae17
DE
7912002-12-23 David Edelsohn <edelsohn@gnu.org>
792
793 * expr.c (expand_assignment): Apply special treatment to
794 ARRAY_TYPE.
795
317d21e9
KH
7962002-12-23 Kazu Hirata <kazu@cs.umass.edu>
797
798 * config/h8300/h8300-protos.h: Update the prototype of
799 expand_a_shift.
800 * config/h8300/h8300.c (expand_a_shift): Change the return
801 type to void.
802 * config/h8300/h8300.md: Update all the uses of
803 expand_a_shift.
804
0c685f12
NS
8052002-12-22 Nathan Sidwell <nathan@codesourcery.com>
806
807 * tree.c (save_expr): Allow either side of a dyadic operand to be
808 constant.
809
810 * doc/portability.texi (portability): Update portability goals.
811
ade53a50
KH
8122002-12-23 Kazu Hirata <kazu@cs.umass.edu>
813
814 * config/h8300/h8300.c (output_a_shift): Remove unused code.
815
d0ff2db5
MM
8162002-12-22 Mark Mitchell <mark@codesourcery.com>
817
d317855e
MM
818 * stor-layout.c (update_alignment_for_field): Guard use of
819 ADJUST_FIELD_ALIGN with #ifdef.
820
d0ff2db5
MM
821 * stor-layout.c (update_alignment_for_field): Use
822 ADJUST_FIELD_ALIGN when computing the alignment for a zero-width
823 bitfield when PCC_BITFIELD_TYPE_MATTERS.
824
96e13905
KH
8252002-12-22 Kazu Hirata <kazu@cs.umass.edu>
826
827 * genautomata.c: Fix comment typos.
828
66b4e478
JH
829Sun Dec 22 18:23:44 CET 2002 Jan Hubicka <jh@suse.cz>
830
831 * params.def (tracer-min-branch-probability-feedback): Fix default.
832 * final.c (compute_alignments): Use profile to avoid code bloat.
833
a7612343
KH
8342002-12-22 Kazu Hirata <kazu@cs.umass.edu>
835
836 * config/h8300/h8300.c (get_shift_alg): Make shift insn
837 sequences end with a valid cc0 whenever possible.
838
8fb52ad1
KH
8392002-12-22 Kazu Hirata <kazu@cs.umass.edu>
840
841 * config/h8300/h8300.md (negsf2): New.
842 (*negsf2_h8300): Likewise.
843 (*negsf2_h8300hs): Likewise.
844
2a77af27
GK
8452002-12-21 Geoffrey Keating <geoffk@apple.com>
846
847 * integrate.c (output_inline_function): Don't hold private
848 pointers to 'struct function' over GC calls.
849
5040eb00
KK
8502002-12-21 Kaz kojima <kkojima@gcc.gnu.org>
851
852 * config/sh/lib1funcs.asm (__fpscr_values): Conditionalize with
853 NO_FPSCR_VALUES.
854 * config/sh/t-linux (TARGET_LIBGCC2_CFLAGS): Add -DNO_FPSCR_VALUES.
855
5d750136
KH
8562002-12-21 Kazu Hirata <kazu@cs.umass.edu>
857
858 * config/h8300/h8300.md (zero_extendqisi2): Correct the
859 length.
860
f7e42925
KH
8612002-12-21 Kazu Hirata <kazu@cs.umass.edu>
862
863 * config/h8300/h8300.md (*zero_extendqihi2_h8300): Make the
864 second alternative "#".
865 (*zero_extendqihi2_h8300hs): Likewise.
866 (a define_split): New.
867
3cee1a78
KH
8682002-12-21 Kazu Hirata <kazu@cs.umass.edu>
869
870 * config/h8300/h8300-protos.h: Update the prototype for
871 split_adds_subs.
872 Add prototypes for const_le_2_operand and const_le_6_operand.
873 * config/h8300/h8300.c (split_adds_subs): Add an argument to
874 specify whether inc/dec should be used when possible.
875 (const_le_2_operand): New.
876 (const_le_6_operand): Likewise.
877 * config/h8300/h8300.md (two peepholes): New.
878
40b982a9
KH
8792002-12-21 Kazu Hirata <kazu@cs.umass.edu>
880
881 * config/fr30/fr30.md: Fix a comment typo.
882 * config/i386/i386.c: Likewise.
883 * config/ip2k/ip2k.h: Likewise.
884
60954572
JW
8852002-12-20 Jim Wilson <wilson@redhat.com>
886
887 * config/rs6000/spe.h (__ev_subifw): Reverse arguments.
888 (__ev_subw, __ev_subiw): New.
889 (ev_mwlssf, ev_mwlsmf, ev_mwlssfa, ev_mwlsmfa, ev_mwlssfaaw,
890 ev_mwlsmfaaw, ev_mwlssfanw, ev_mwlsmfanw): Delete.
891
11f43127
JDA
8922002-12-20 John David Anglin <dave.anglin@nrc.gc.ca>
893
894 * pa-linux.h (TARGET_HAS_STUBS_AND_ELF_SECTIONS): Delete define.
895 * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete define.
896 * pa.c (pa_function_ok_for_sibcall): Allow non indirect sibcalls on
897 TARGET_ELF32. Add comment on sibcall issues for TARGET_64BIT.
898
f9d2de4d
KH
8992002-12-20 Kazu Hirata <kazu@cs.umass.edu>
900
901 * config/h8300/h8300-protos.h: Add prototypes for
902 incdec_operand and eqne_operator.
903 * config/h8300/h8300.c (incdec_operand): New.
904 (eqne_operator): Likewise.
905 * config/h8300/h8300.h (CONST_OK_FOR_M): Likewise.
906 (CONST_OK_FOR_O): Likewise.
907 (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_M and
908 CONST_OK_FOR_O.
909 * config/h8300/h8300.md (UNSPEC_INCDEC): New.
910 (addhi3_incdec): New.
911 (addsi3_incdec): Likewise.
912 (two peepholes): Likewise.
913
b47900aa
KH
9142002-12-20 Kazu Hirata <kazu@cs.umass.edu>
915
916 * config/h8300/h8300.c (dosize): Remove warnings.
917 (print_operand): Likewise.
918
3094247f
RH
9192002-12-20 Richard Henderson <rth@redhat.com>
920
921 * config/alpha/alpha.c (decl_has_samegp): New.
922 (samegp_function_operand): Use it. Rename from
923 current_file_function_operand.
924 (direct_call_operand): Handle -msmall-text via symbol->jump.
925 (tls_symbolic_operand_1): Use T for tprel64, t for smaller tprel.
926 (tls_symbolic_operand_type): Likewise.
927 (alpha_encode_section_info): Likewise. Handle -msmall-text.
928 (alpha_function_ok_for_sibcall): Use decl_has_samegp.
929 (alpha_end_function): Set symbol->jump for functions defined in
930 the text section.
931 * config/alpha/alpha-protos.h: Update.
932 * config/alpha/alpha.h (MASK_SMALL_TEXT, TARGET_SMALL_TEXT): New.
933 (TARGET_SWITCHES): Add -msmall-text and -mlarge-text.
934 (PREDICATE_CODES): Update.
c14bc6db 935 * config/alpha/alpha.md (call patterns): Update for
3094247f
RH
936 samegp_function_operand rename; use !samegp reloc if
937 TARGET_EXPLICIT_RELOCS.
938 * doc/invoke.text: Document -msmall-text and -mlarge-text.
939
8056c5f2
ID
9402002-12-20 Ian Dall <ian@sibyl.beware.dropbear.id.au>
941
44f9a8e4
ZW
942 * config/ns32k/ns32k.md (movdi): Use "l" instead of "f" to match
943 all registers capable of holding a double float.
944 (*rcond): change name of "reverse branch" insns to
945 something more meaningful.
946 (*rbgt, *rblt, *rbge, *rble): Reverse branches to handle IEEE
947 comparisons properly.
948 (*ffs): Change operand 0 from write to read-modify-write.
949 (*ffsssi2): Drop constraints from define_expand.
8056c5f2 950
44f9a8e4
ZW
951 * config/ns32k/ns32k.h (STORE_RATIO, STORE_BY_PIECES): Avoid using
952 MOVE_RATIO as default for store operations.
8056c5f2 953
44f9a8e4
ZW
954 * config/ns32k/ns32k.h (enum reg_class, REG_CLASS_NAMES): Add
955 LONG_REGS class.
956 (CANNOT_CHANGE_MODE_CLASS): Can't subreg LONG_REGS.
957 (GO_IF_LEGITIMATE_ADDRESS): Remove spurious abort().
958 * config/ns32k/ns32k.c (regclass_map): Add LONG_REGS class.
8056c5f2 959
44f9a8e4
ZW
960 * config/ns32k/STATUS: New File
961 * config/ns32k/NOTES: New file.
8056c5f2 962
1fec52be 9632002-12-20 Hartmut Penner <hpenner@de.ibm.com>
c14bc6db 964
2610198a 965 * doc/invoke.texi: Document -mzarch, -mesa, -mcpu= and -march=
1fec52be 966 option for S/390 and zSeries.
44f9a8e4
ZW
967 * config/s390/s390.c (s390_cpu, s390_cpu_string, s390_arch,
968 s390_arch_string): New variables.
969 (override_options): Checking for options and setting of
1fec52be 970 appropriate target_flags, cpu and arch flags.
44f9a8e4
ZW
971 * config/s390/s390.h: (processor_type): New enum.
972 (TARGET_SWITCHES): New switches -mesa/zarch.
973 * config/s390/s390.md: New attribute 'cpu'.
1fec52be 974
5bdc5878
KH
9752002-12-19 Kazu Hirata <kazu@cs.umass.edu>
976
977 * c-pretty-print.h: Fix comment typos.
978 * integrate.c: Likewise.
979 * varasm.c: Likewise.
980 * config/c4x/c4x.h: Likewise.
981 * config/c4x/c4x.md: Likewise.
982 * config/fr30/fr30.md: Likewise.
983 * config/frv/frv.c: Likewise.
984 * config/h8300/h8300.c: Likewise.
985 * config/i386/i386.c: Likewise.
986 * config/i386/i386.h: Likewise.
987 * config/ia64/ia64.c: Likewise.
988 * config/ia64/ia64.h: Likewise.
989 * config/ip2k/ip2k.md: Likewise.
990 * config/m68hc11/m68hc11-crt0.S: Likewise.
991 * config/m68hc11/m68hc11.h: Likewise.
992 * config/m68hc11/m68hc11.md: Likewise.
993 * config/m68hc11/m68hc12.h: Likewise.
994 * config/mcore/mcore.md: Likewise.
995 * config/mips/mips.c: Likewise.
996 * config/mips/mips.md: Likewise.
997 * config/mmix/mmix-modes.def: Likewise.
998 * config/pa/pa.c: Likewise.
999 * config/rs6000/rs6000.c: Likewise.
1000 * config/rs6000/rs6000.h: Likewise.
1001 * config/rs6000/rs6000.md: Likewise.
1002
539dbd15
KH
10032002-12-19 Kazu Hirata <kazu@cs.umass.edu>
1004
1005 * config/h8300/h8300.md (output_a_shift): Clean up the code to
1006 output shifts using rotation.
1007
e505be85
ZD
10082002-12-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1009
1010 * flow.c (allocate_reg_life_data): Reset REG_FREQ.
1011
191ff852
KH
10122002-12-19 Kazu Hirata <kazu@cs.umass.edu>
1013
1014 * config/h8300/h8300.md (pushqi_h8300): Don't push the stack
1015 pointer.
1016 (pushqi_h8300hs): Likewise.
1017 (pushhi_h8300): Likewise.
1018 (pushhi_h8300hs): Likewise.
1019
b2dfd40f
R
1020Thu Dec 19 23:44:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
1021
1022 * sched-rgn.c (init_regions): Update comment.
1023
310b9b1d
DE
10242002-12-19 David Edelsohn <edelsohn@gnu.org>
1025
1026 * config/rs6000/rs6000.md (define_attr type): Remove altivec.
1027 * config/rs6000/altivec.md (movv4si_internal): Set correct instruction
1028 attributes.
1029 (movv8hi_internal,movv16qi_internal,movv4sf_internal): Same.
1030 (get_vrsave_internal,set_vrsave_internal): Same.
1031 (altivec_vspltisb,altivec_vspltish,altivec_vspltisw): Same.
1032 (absv16qi2,absv8hi2,absv4si2,absv4sf2): Same
1033 (altivec_abss_v16qi,altivec_abss_v8hi,altivec_abss_v4si): Same.
1034
e91f04de
CH
10352002-12-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
1036 Danny Smith <dannysmith@users.sourceforge.net>
1037 Eric Kohl <ekohl@rz-online.de>
1038
1039 * config/i386/i386.c (ix86_handle_cdecl_attribute): Check for
1040 attributes incompatible with fastcall attribute.
1041 (ix86_handle_regparm_attribute): Likewise.
1042
1043 * config/i386/i386.c (ix86_comp_type_attributes): Check for mismatched
1044 fastcall types.
1045
1046 * config/i386/cygwin.h (TARGET_OS_CPP_BUILTINS): Add fastcall
1047 attributes.
1048 (ASM_OUTPUT_LABELREF): Define as i386_pe_output_labelref.
1049 * config/i386/i386-protos.h (i386_pe_output_labelref): Declare.
1050 * config/i386/winnt.c (i386_pe_mark_dllimport). Add __imp_ prefix in
1051 i386_pe_output_labelref rather than here.
1052 (gen_fastcall_suffix): New function. Decorates a label name with the
1053 fastcall prefix (@) and the stdcall suffix.
1054 (i386_pe_encode_section_info): Call gen_fastcall_suffix() if a symbol
1055 has a fastcall attribute.
1056 (i386_pe_output_labelref): New function. Outputs a label reference.
1057 * config/i386/i386.c (ix86_attribute_table): Accept 'fastcall' as a
1058 valid attribute.
1059 (ix86_return_pops_args): Fastcall functions pop the stack.
1060 (init_cumulative_args): Reserve registers ECX and EDX if function has
1061 fastcall attribute.
1062 (function_arg): Use registers ECX and EDX if function has fastcall
1063 attribute.
1064 * config/i386/i386.h (CUMULATIVE_ARGS): Add fastcall attribute flag.
1065 (DLL_IMPORT_EXPORT_PREFIX): Redefine as '#'.
1066 (FASTCALL_PREFIX): Define as '@'.
1067 * config/i386/mingw32.h (TARGET_OS_CPP_BUILTINS): Add fastcall
1068 attributes.
1069 * doc/extend.texi: Add documentation of fastcall attribute.
1070
61138bb6
NN
10712002-12-19 Nathanael Nerode <neroden@gcc.gnu.org>
1072
c14bc6db 1073 * configure.in: FORBUILD when build!=host changed from
61138bb6
NN
1074 ../$build-alias to ../build-$build_alias to match change made
1075 in top directory.
1076 * configure: Regenerated.
1077
039baf9e
EB
10782002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
1079
1080 PR optimization/8988
1081 * loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning
1082 the biv when eliminating.
1083
ee8acf89
DP
10842002-12-19 Devang Patel <dpatel@apple.com>
1085 * gcc.c (struct default_compiler): Recognizes input file name with
1086 .CPP extension as C++ source files
1087 * cp/lang-spec.h: Same
1088 * doc/invoke.texi: Add documentation for .CPP support.
c14bc6db 1089
598119bb
AH
10902002-12-19 Aldy Hernandez <aldyh@redhat.com>
1091
1092 PR 8553
1093 * config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered
1094 registers.
1095 ("absv16qi2"): Same.
1096 ("absv4si2"): Same.
1097 ("absv4sf2"): Same.
1098 ("altivec_abss_v16qi"): Same.
1099 ("altivec_abss_v8hi"): Same.
1100 ("altivec_abss_v4si"): Same.
1101
3af97654
UW
11022002-12-19 Ulrich Weigand <uweigand@de.ibm.com>
1103
1104 * config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly",
1105 "*tstqiCCT", "*tstqiCCT_cconly"): New insns.
1106
e54b4cae
EB
11072002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
1108
1109 PR target/8340
1110 * stmt.c (expand_asm_operands): Produce an error when
1111 the PIC register is clobbered.
1112
7f22efe1
DB
11132002-12-18 Daniel Berlin <dberlin@dberlin.org>
1114
1115 * Makefile.in (OBJS): Add alloc-pool.o
1116 (alloc-pool.o): New object.
1117
1118 * alloc-pool.c: New file.
1119 * alloc-pool.h: New file.
1120
5a0ba8c9
LJR
11212002-12-18 Loren James Rittle <rittle@labs.mot.com>
1122
1123 * gcc.c (validate_switches): Robustify against skipping past '\0'.
1124
064b6c70
GK
11252002-12-18 Geoffrey Keating <geoffk@apple.com>
1126
1127 * config.gcc: Set extra_objs in the generic Darwin rule,
1128 not in the machine-specific rules.
1129
272d0bee
KH
11302002-12-19 Kazu Hirata <kazu@cs.umass.edu>
1131
1132 * ChangeLog: Follow spelling conventions.
1133 * ChangeLog.2: Likewise.
1134 * ChangeLog.4: Likewise.
1135 * ChangeLog.5: Likewise.
1136 * cppexp.c: Likewise.
1137 * df.c: Likewise.
1138 * gcov.c: Likewise.
1139 * gengtype.c: Likewise.
1140 * reload1.c: Likewise.
1141 * sched-rgn.c: Likewise.
1142 * stmt.c: Likewise.
1143 * stor-layout.c: Likewise.
1144 * timevar.c: Likewise.
1145 * toplev.c: Likewise.
1146 * tree.h: Likewise.
1147 * varasm.c: Likewise.
1148 * config/fr30/fr30.md: Likewise.
1149 * config/i386/i386.c: Likewise.
1150 * config/ia64/ia64.c: Likewise.
1151 * config/pa/pa.c: Likewise.
1152
358ecb10
RS
11532002-12-18 Roger Sayle <roger@eyesopen.com>
1154
1155 * basic-block.h (flow_bb_inside_loop_p): Correct prototype.
1156
d486dec6
AH
11572002-12-18 Aldy Hernandez <aldyh@redhat.com>
1158
7f04df0d 1159 PR 8551
d486dec6
AH
1160 * config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in
1161 macro.
1162 (vec_cmplt C++ functions): Reverse arguments.
1163
358ecb10 11642002-12-18 Geoffrey Keating <geoffk@apple.com>
892aebc9 1165
40b4cdbf
GK
1166 * config/rs6000/t-rs6000: Move contents to t-fprules,
1167 add rules for dependencies of rs6000.o and to build rs6000-c.o
1168 * config/rs6000/t-fprules: New file from t-rs6000.
1169 * config/rs6000/t-beos: Remove soft-fp rules.
1170 * config/rs6000/t-ppccomm: Likewise.
1171 * config/rs6000/t-newas: Likewise.
1172 * config/rs6000/t-rs6000-c-rule: Delete.
1173 * config.gcc: Use t-fprules for rs6000/ ports when appropriate.
1174 Use t-rs6000 for all rs6000/ ports instead of t-rs6000-c-rule.
1175 Create generic Darwin rules.
1176
892aebc9
GK
1177 * gengenrtl.c (gencode): Delete unnecessary rtl_obstack declaration.
1178
9d303046
DE
11792002-12-18 Doug Evans <dje@sebabeach.org>
1180
1181 * m32r/m32r.c (addr24_operand): Fix arg to CONSTANT_POOL_ADDRESS_P
1182 and LIT_NAME_P.
1183 (move_src_operand): Remove compile-time warning.
1184 * m32r/m32r.h (ROUND_ADVANCE_ARG): Ditto.
1185
80d83b16
JM
11862002-12-18 Jason Merrill <jason@redhat.com>
1187
1188 * unwind-dw2-fde.c (frame_downheap): Split out from...
1189 (frame_heapsort): Here.
1190
f32ac70d
JM
11912002-12-17 Jason Merrill <jason@redhat.com>
1192
9ec22713
JM
1193 * tree.c (make_node): Don't set TREE_TYPE on 's' class nodes.
1194 (build1): Always set TREE_SIDE_EFFECTS on 's' class nodes.
1195
38540594 1196 * gcc.c (do_spec_1) ['W']: End any pending argument from the braces.
a3a0177e 1197
f32ac70d
JM
1198 * calls.c (expand_call): Don't try to be clever about expanding
1199 the return slot address.
1200
d5db5b97
KK
12012002-12-18 Kaz kojima <kkojima@gcc.gnu.org>
1202
1203 * config/sh/linux.h (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC):
1204 Define.
1205
e489a31f
JM
12062002-12-17 Jason Merrill <jason@redhat.com>
1207
1208 * genmultilib: Use 'cd ./foo'.
1209
5b8f02c6
KH
12102002-12-17 Kazu Hirata <kazu@cs.umass.edu>
1211
1212 * doc/c-tree.texi: Restore deliberate spelling mistakes.
1213
c0478a66
KH
12142002-12-17 Kazu Hirata <kazu@cs.umass.edu>
1215
1216 * doc/c-tree.texi: Fix typos and follow spelling conventions.
1217 * doc/cpp.texi: Likewise.
1218 * doc/extend.texi: Likewise.
1219 * doc/gty.texi: Likewise.
1220 * doc/install.texi: Likewise.
1221 * doc/invoke.texi: Likewise.
1222 * doc/md.texi: Likewise.
1223 * doc/passes.texi: Likewise.
1224 * doc/rtl.texi: Likewise.
1225 * doc/sourcebuild.texi: Likewise.
1226 * doc/tm.texi: Likewise.
1227
3364c33b
JQ
12282002-12-17 Jerry Quinn <jlquinn@optonline.net>
1229
1230 * doc/invoke.texi: Minor spelling and grammar fixes.
1231
d65f135a
UW
12322002-12-17 Ulrich Weigand <uweigand@de.ibm.com>
1233
1234 * config/s390/s390.c (s390_output_constant_pool): Replace
1235 ASM_OUTPUT_INTERNAL_LABEL by (*targetm.asm_out.internal_label).
1236
4b207444
JH
1237Tue Dec 17 09:47:57 CET 2002 Jan Hubicka <jh@suse.cz>
1238
1239 * convert.c (convert_to_real): Disable function transformation for
1240 now.
1241
cde26509
GK
12422002-12-16 Geoffrey Keating <geoffk@apple.com>
1243
1244 * gcc.c (handle_braces): Allow '@' as a switch name.
1245
9f175208
JM
12462002-12-16 Jason Merrill <jason@redhat.com>
1247
e489a31f
JM
1248 * calls.c (expand_call): Handle CALL_EXPR_HAS_RETURN_SLOT_ADDR
1249 with special struct-return ABIs.
1250
9f175208
JM
1251 * c-semantics.c (add_scope_stmt): Abort if the end SCOPE_STMT
1252 doesn't match the begin SCOPE_STMT in partialness.
1253
7a975113
GK
12542002-12-16 Geoffrey Keating <geoffk@apple.com>
1255
c79d892f
GK
1256 * genmultilib: Create temporary files in unique subdirectory.
1257
7a975113
GK
1258 * gcc.c (validate_switches): Allow '@' as a switch name.
1259
8483c7e0
LR
12602002-12-16 Loren J. Rittle <ljrittle@acm.org>
1261
1262 * Makefile.in (gcov-iov.h): Improve portability.
1263
9ee7999f
JH
1264Mon Dec 16 23:39:19 CET 2002 Jan Hubicka <jh@suse.cz>
1265
1266 * mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Do not use qpword on API_N32/not
1267 gas
1268 * mips.md (tablejump insn): Likewise.
1269
7a04c51b
MM
12702002-12-16 Mark Mitchell <mark@codesourcery.com>
1271
1272 * doc/include/gcc-common.texi: Change version number to 3.4.
1273
27eaa708
BK
12742002-12-16 Bruce Korb <bkorb@gnu.org>
1275
1276 * fixinc/fixlib.h: add: #include <signal.h>
1277 * fixinc/fixincl.c: remove: #include <signal.h>
1278
b51dc045
R
1279Mon Dec 16 17:20:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
1280
1281 * sh.h (EXTRA_CONSTRAINT_Z): New macro.
1282 (EXTRA_CONSTRAINT): Use it.
1283 * sh.md (anddi3): Use 'Z' constraint for alternative 2.
1284
4977bab6
ZW
12852002-12-15 Zack Weinberg <zack@codesourcery.com>
1286
1287 * config.gcc (need_64bit_hwint): New variable.
1288 (alpha*-*-*, x86_64-*-*, ia64-*-*, mips*-*-*, powerpc*-*-*,
1289 mmix-knuth-mmixware, rs6000*-*-*, sparc64*-*-*, s390*-*-*,
1290 sh*-*-*, hppa*64*-*-linux, parisc*64*-*-linux, hppa*64*-*-hpux11*,
1291 sparcv9-*-solaris2*, sparc*-*-solaris2.[789], ultrasparc-*-freebsd*):
1292 Set it.
1293 (powerpc*-*-darwin*): Unset it.
1294 (alpha-*-interix, alpha64-dec-*vms*, i?86-*-interix3*,
1295 i?86-*-interix*, sparc64-*-openbsd*): Remove references to
1296 deleted/nonexistent xm-*.h headers.
1297 * configure.in: AC_DEFINE NEED_64BIT_HOST_WIDE_INT if the
1298 target set need_64bit_hwint in config.gcc.
1299 * configure, config.in: Regenerate.
1300
1301 * hwint.h: Overhaul. Don't bother trying int for
1302 HOST_WIDE_INT. Do try __int64 if long is not enough. Base
1303 decision to force 64-bit HOST_WIDE_INT on
1304 NEED_64BIT_HOST_WIDE_INT, not (MAX_)LONG_TYPE_SIZE which is
1305 not visible at this point. Don't allow prior definition of
1306 any macro defined by this file.
1307
1308 * config/alpha/xm-vms.h: Don't define HOST_WIDE_INT or
1309 HOST_BITS_PER_WIDE_INT.
1310 * config/c4x/c4x.h: Adjust redefinition of
1311 HOST_WIDE_INT_PRINT_HEX to match changes to hwint.h.
1312 * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms64.h,
1313 config/i386/xm-i386-interix.h: Delete file.
1314
13152002-12-14 Rodney Brown <rbrown64@csc.com.au>
1316 John David Anglin <dave@hiauly1.hia.nrc.ca>
1317
1318 * pa.c (output_millicode_call): Convert ASM_OUTPUT_INTERNAL_LABEL.
1319 * pa64-hpux.h (ASM_OUTPUT_INTERNAL_LABEL): Delete define.
1320
13212002-12-14 Zack Weinberg <zack@codesourcery.com>
1322
1323 * mkconfig.sh: Correct comment. Add copyright boilerplate.
1324
13252002-12-14 Zack Weinberg <zack@codesourcery.com>
1326
1327 * config/t-darwin, config/arm/t-pe, config/arm/t-strongarm-pe,
1328 config/c4x/t-c4x, config/i370/t-i370, config/i386/t-cygwin,
1329 config/i386/t-interix, config/i960/t-960bare, config/ia64/t-ia64,
1330 config/rs6000/t-rs6000-c-rule, config/sparc/t-sol2,
1331 config/v850/t-v850: Correct dependencies and normalize
1332 compilation commands for files that include coretypes.h and tm.h.
1333
1334 * config/sparc/gmon-sol2.c: Include tconfig.h and tsystem.h,
1335 not config.h and system.h.
1336
1337Sat Dec 14 20:43:41 CET 2002 Jan Hubicka <jh@suse.cz>
1338
1339 * i386.c (flags_reg_operand): New function.
1340 * i386.h (PREDICATE_CODES): Add flags_reg_operand.
1341 * i386.md (cmov splitter, movqicc): Use new predicate.
1342
1343Sat Dec 14 17:03:17 CET 2002 Jan Hubicka <jh@suse.cz>
1344
1345 * i386.md (movqicc splitter): Fix template.
1346
13472002-12-13 Jason Merrill <jason@redhat.com>
1348
1349 * tree.h (CALL_EXPR_HAS_RETURN_SLOT_ADDR): New macro.
1350 * calls.c (expand_call): Handle it.
1351 * tree-inline.c (struct inline_data): Remove target_exprs field.
1352 (optimize_inline_calls): Don't initialize it.
1353 (expand_call_inline): Don't modify it. Handle
1354 CALL_EXPR_HAS_RETURN_SLOT_ADDR.
1355 (declare_return_variable): Take return slot addr.
1356 * langhooks.h (copy_res_decl_for_inlining): Change target_exprs parm
1357 to return_slot_addr.
1358 * langhooks-def.h, langhooks.c: Adjust.
1359 * explow.c (maybe_set_unchanging): Don't set RTX_UNCHANGING_P for
1360 a decl with no DECL_INITIAL.
1361
1362 * expr.c (expand_expr): Don't discard the target of a call which
1363 returns in memory.
1364
13652002-12-13 Neil Booth <neil@daikokuya.co.uk>
1366
1367 * cppinit.c (path_include): Take an environment variable name.
1368 Tidy up.
1369 (init_standard_includes): Simplify environment handling, and
1370 move to ...
1371 (cpp_read_main_file): ...here as -nostdinc should not affect
1372 environment variable paths.
1373
f5f9008b
JDA
13742002-12-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
1375
1376 * pa.c (output_millicode_call): Correct typo.
1377 (output_call): Likewise.
1378
a58be199
AO
1379Fri Dec 13 21:07:18 2002 Alexandre Oliva <aoliva@redhat.com>
1380
1381 * config/mn10300/mn10300.c (print_operand) <case N>: Check
1382 operand's range. Print value directly, without aid from
1383 output_address.
1384 <case U>: New.
1385 <case S>: Make sure argument to fprintf has the right type.
1386 * config/mn10300/mn10300.h (OK_FOR_T): New macro.
1387 (EXTRA_CONSTRAINT): Adjust.
1388 * config/mn10300/mn10300.md: Add new all-QImode pattern for
1389 bclr. Use %U for immediate operands of bset and bclr.
1390 (iorqi3): New expand, with insns for AM33 and mn10300.
1391
d9da94a1
R
1392Fri Dec 13 16:02:27 2002 J"orn Rennecke <joern.rennecke@superh.com>
1393
1394 * sh.c (sh_register_operand): New function.
1395 (prepare_move_operands): Use it.
1396 * sh.h (PREDICATE_CODES): Add entry for sh_register_operand.
1397 * sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0.
1398 (movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise.
1399 (movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise.
1400 (movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise.
1401 (movv2si_i): Likewise.
1402
580fb356
JW
14032002-12-13 Jim Wilson <wilson@redhat.com>
1404
1405 * doc/extend.texi (Complex Numbers): Update info on debug info.
1406
697d8028
KH
14072002-12-13 Kazu Hirata <kazu@cs.umass.edu>
1408
1409 * config/h8300/h8300.md (addhi3_h8300): Remove the last
1410 alternative.
1411
4977bab6
ZW
14122002-12-12 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1413
1414 * hooks.h (hook_tree_tree_bool_false): Declare
1415 hook_bool_tree_tree_false instead.
1416
dd05b1b4 14172002-12-12 Devang Patel <dpatel@apple.com>
697d8028 1418
dd05b1b4
DP
1419 * doc/invoke.texi: Document Darwin linker options, -bundle
1420 -bind_at_load, -all_load and -arch_errors_fatal
1421
24aacafb
JW
14222002-12-12 Jim Wilson <wilson@redhat.com>
1423
1424 * dbxout.c (dbxout_fptype_value): New.
1425 (dbxout_type, case COMPLEX_TYPE): Call it. Use 'R' instead of 'r'.
1426
09da1532
KH
14272002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1428
1429 * c-decl.c: Fix a comment typo.
1430 * cfg.c: Likewise.
1431 * cfgcleanup.c: Likewise.
1432 * cfglayout.c: Likewise.
1433 * cfgrtl.c: Likewise.
1434 * c-typeck.c: Likewise.
1435 * dominance.c: Likewise.
1436 * dwarf2asm.c: Likewise.
1437 * dwarfout.c: Likewise.
1438 * expmed.c: Likewise.
1439 * expr.c: Likewise.
1440 * final.c: Likewise.
1441 * flow.c: Likewise.
1442 * function.c: Likewise.
1443 * gcc.c: Likewise.
1444 * genautomata.c: Likewise.
1445 * integrate.c: Likewise.
1446 * loop.c: Likewise.
1447 * loop.h: Likewise.
1448 * output.h: Likewise.
1449 * profile.c: Likewise.
1450 * ra.h: Likewise.
1451 * reload1.c: Likewise.
1452 * reload.c: Likewise.
1453 * sched-rgn.c: Likewise.
1454 * stmt.c: Likewise.
1455 * tree.h: Likewise.
1456 * vmsdbgout.c: Likewise.
1457
7930523d
KH
14582002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1459
1460 * config/h8300/h8300.md: Add a new peephole2.
1461
59578c84
KH
14622002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1463
1464 * config/h8300/h8300.md (a peephole2): Accept a constant
1465 that's accepted by CONST_OK_FOR_J.
1466
8cc5359b
KH
14672002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1468
1469 * config/h8300/h8300.h (CONST_OK_FOR_J): New.
1470 (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J.
1471 * config/h8300/h8300.md (*addhi_h8300): Add a new alternative.
1472 (*addhi_h8300hs): Likewise.
1473
ec555f32
R
1474Thu Dec 12 16:24:59 2002 J"orn Rennecke <joern.rennecke@superh.com>
1475
1476 * sh.c (reg_class_from_letter): No longer const. Add 'e' entry.
1477 (sh_register_move_cost): Add clause for SImode fp-fp moves.
1478 Increase cost for moves involving multiple general purpose registers.
1479 * sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to
1480 TARGET_FMOVD.
1481 (HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose
1482 registers, and SImode in fp registers, for ! TARGET_SHMEDIA.
1483 (enum reg_class reg_class_from_letter): No longer const.
1484 (SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG /
1485 REGCLASS_HAS_GENERAL_REG.
1486 Handle SImode moves from/to fp registers.
1487 ! TARGET_SHMEDIA && TARGET_FMOVD.
1488 (SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG.
1489 * sh.md (movsi_ie): Add alternatives to move from / to fp regisyters.
1490
83ebfdc0
AS
14912002-12-12 Andreas Schwab <schwab@suse.de>
1492
1493 * config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last
1494 change and some warnings.
1495
299c5111
KH
14962002-12-12 Kazu Hirata <kazu@cs.umass.edu>
1497
1498 * doc/md.texi (pushm): Fix a typo.
1499
852dff61
AO
15002002-12-12 Alexandre Oliva <aoliva@redhat.com>
1501
1502 * config/mips/mips.c (mips_output_conditional_branch): Support
1503 PIC-safe out-of-range branch and branch-likely.
1504 * config/mips/mips.md (attr length): PIC-safe out-of-range
1505 branches are longer.
1506 ("jump"): Support PIC-safe out-of-range-for-branch jumps. Remove
1507 unused code to support indirect jumps.
1508
4977bab6
ZW
15092002-12-11 Zack Weinberg <zack@codesourcery.com>
1510
1511 * Makefile.in (GTFILES): Add $(host_xm_file_list) and
1512 $(tm_file_list).
1513
15142002-12-11 David Edelsohn <edelsohn@gnu.org>
1515
1516 * config/rs6000/t-rs6000-c-rule: Add coretypes.h $(TM_H) dependencies.
1517
1518Wed Dec 11 15:20:45 CET 2002 Jan Hubicka <jh@suse.cz>
1519
1520 * i386.md (cmove splitters): Avoid creation of unnecesary subregs.
1521
d6567b3a
JDA
15222002-12-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
1523
1524 * pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
1525 (MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
1526 BIGGEST_ALIGNMENT.
1527 (PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
1528 (FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
1529
355bd14f
KH
15302002-12-11 Kazu Hirata <kazu@cs.umass.edu>
1531
1532 * doc/invoke.texi: Correct dump file names.
1533
9a3873b4
SE
15342002-12-09 Steve Ellcey <sje@cup.hp.com>
1535
1536 * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
1537 name to globalize_label or assemble_name.
1538
9a4816af
R
1539Wed Dec 11 20:15:19 2002 J"orn Rennecke <joern.rennecke@superh.com>
1540
1541 * sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
1542 if not TARGET_SHMEDIA.
1543
1544Wed Dec 11 19:05:05 2002 J"orn Rennecke <joern.rennecke@superh.com>
1545
1546 * sh.h (REG_CLASS_HAS_FP_REG): New.
1547 (REGISTER_MOVE_COST) Use it. Put body into a function and
1548 move it into:
1549 * sh.c (sh_register_move_cost).
1550 * sh-protos.h (sh_register_move_cost): Declare.
1551
1552 * sh.c (sh_expand_builtin): Abort for unexpected nop values.
1553 (sh_adjust_cost): Always return a value.
1554
70a72ca4
R
1555Wed Dec 11 18:39:52 2002 J"orn Rennecke <joern.rennecke@superh.com>
1556
1557 * sh.h (REG_CLASS_HAS_GENERAL_REG): New.
1558 (REGISTER_MOVE_COST): Use it.
1559
5d5cd66f
RH
15602002-12-11 Richard Henderson <rth@redhat.com>
1561
1562 * tree.h (MODULE_LOCAL_P): Kill.
1563 * varasm.c (default_binds_local_p_1): Use decl_visibility instead.
1564
68d0a3d2
KH
15652002-12-11 Kazu Hirata <kazu@cs.umass.edu>
1566
1567 * config/h8300/h8300.md (two define_peephole2): New.
1568
722d59a3
KH
15692002-12-11 Kazu Hirata <kazu@cs.umass.edu>
1570
1571 * config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
1572 (CONST_OK_FOR_K): Likewise.
1573 (CONST_OK_FOR_M): Likewise.
1574 (CONST_OK_FOR_LETTER_P): Do not use the above macros.
1575
b3a5a50c
NB
15762002-12-11 Neil Booth <neil@daikokuya.co.uk>
1577
1578 * c-common.c (builtin_define_type_max): Handle unsigned
1579 types too.
1580
4977bab6
ZW
15812002-12-10 David Edelsohn <edelsohn@gnu.org>
1582
1583 * haifa-sched.c (rank_for_schedule): Correct style.
1584
15852002-12-10 Per Bothner <pbothner@apple.com>
1586
1587 * cpplib.h (struct cpp_hashnode): Split a non-portably-signed field
1588 directive_index into an unsigned field and a new is_directive field.
1589 * cppinit.c (mark_named_operators): Update to set new fields.
1590 * cpplex.c (_cpp_lex_direct): Now directive_field is unsigned.
1591 * cpplib.c [_cpp_handle_directive]: Test is_directive field.
1592 No longer need to subtract 1 from directive_index.
1593 (_cpp_init_directives): No longer need to add 1 to directive_index.
1594 * cpptrad.c (scan_out_logical_line): Use is_directive field.
1595
15962002-12-10 Roger Sayle <roger@eyesopen.com>
1597
1598 * builtins.c (fold_builtin): Remove -funsafe-math-optimizations
1599 check for evaluating sqrt of a constant at compile time.
1600 * simplify-rtx.c (simplify_unary_operation): Likewise.
1601
40d81ee4
JJ
16022002-12-10 Janis Johnson <janis187@us.ibm.com>
1603
1604 PR other/8882
1605 * doc/tm.texi (PUSH_ARGS): Remove misplaced line.
1606
48aec0bc 16072002-12-10 Devang Patel <dpatel@appple.com>
40d81ee4 1608
48aec0bc
DP
1609 * config/darwin.h(LINK_SPEC): Add darwin specific linker options.
1610 * doc/invoke.texi: Add new "Darwin Options" section.
4977bab6 1611
0e9f8e82
JW
16122002-12-10 Jim Wilson <wilson@redhat.com>
1613
1614 * rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in
1615 memory.
1616
3e25353e
AH
16172002-12-10 Andrew Haley <aph@redhat.com>
1618
1619 * cse.c (cse_insn): Don't cse past a basic block boundary.
1620
17772b2a
JJ
16212002-12-10 Jakub Jelinek <jakub@redhat.com>
1622
1623 * config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
1624 -shared.
1625 * config/alpha/linux-elf.h (LIB_SPEC): Likewise.
1626 * config/alpha/linux.h (LIB_SPEC): Likewise.
1627 * config/arm/linux-elf.h (LIB_SPEC): Likewise.
1628 * config/pa/pa-linux.h (LIB_SPEC): Likewise.
1629 * config/sparc/linux.h (LIB_SPEC): Likewise.
1630 * config/sparc/linux64.h (LIB_SPEC): Likewise.
1631
63358530
LH
16322002-12-09 Larin Hennessy <larin@science.oregonstate.edu>
1633
1634 * doc/invoke.texi: Document UltraSparc III option.
1635
2e37b0ce
RH
16362002-12-09 Richard Henderson <rth@redhat.com>
1637
1638 * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
1639 __tune_pentium2__ and __tune_pentium3__ as necessary.
1640
3a04ff64
RH
16412002-12-09 Richard Henderson <rth@redhat.com>
1642
1643 * target.h (gcc_target): Add cannot_force_const_mem.
1644 * target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New.
1645 (TARGET_INITIALIZER): Add it.
1646 * varasm.c (force_const_mem): Fail if cannot_force_const_mem.
1647 * expr.c (emit_move_insn): Be prepared for force_const_mem to fail.
1648 * reload1.c (reload): Likewise.
1649 * hooks.c (hook_bool_rtx_false): New.
1650 * hooks.h: Declare it.
1651
1652 * config/i386/i386.c (ix86_cannot_force_const_mem): New.
1653 (TARGET_CANNOT_FORCE_CONST_MEM): New.
1654 (ix86_expand_move): Remove de-const-pooling hack.
1655
a9a4005f
JH
1656Mon Dec 9 21:33:38 CET 2002 Jan Hubicka <jh@suse.cz>
1657
1658 * toplev.c (dump_file): Fix order to match reality.
1659
7ef788f0
GK
16602002-12-08 Geoffrey Keating <geoffk@apple.com>
1661
1662 * config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv.
1663 (store_multiple): Likewise.
1664
3f320b7e
JDA
16652002-12-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
1666
1667 * pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize
1668 function pointers in page 0.
1669
3870df96
SE
16702002-12-09 Steve Ellcey <sje@cup.hp.com>
1671
1672 * config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove
1673 definition
1674 (MEMBER_TYPE_FORCES_BLK): Move.
1675 * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass
1676 aggregate arguments.
1677 (ia64_function_value): Use PARALLEL to return aggregate values.
1678
9ac3e73b
SE
16792002-12-09 Steve Ellcey <sje@cup.hp.com>
1680
1681 * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
1682 * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
1683 * calls.c (store_unaligned_arguments_into_pseudos) Remove
1684 FUNCTION_ARG_REG_LITTLE_ENDIAN.
1685 * stmt.c (expand_return): Ditto.
1686 * expr.c (move_block_from_reg): Ditto.
1687 (copy_blkmode_from_reg): Ditto.
4977bab6 1688 * expmed.c (store_bit_field): Ditto.
9ac3e73b 1689
7f0db92a
SS
16902002-12-09 Svein E. Seldal <Svein.Seldal@solidas.com>
1691
1692 * config.gcc: Added tic4x-* target as an alias to c4x-*
1693
37c66aa6
JH
1694Sun Dec 8 14:57:39 CET 2002 Jan Hubicka <jh@suse.cz>
1695
7ef788f0
GK
1696 * i386.c (ix86_expand_int_movcc): Use force_operand instead of
1697 constructing insn directly.
37c66aa6 1698
4977bab6
ZW
16992002-12-06 Per Bothner <pbothner@apple.com>
1700
1701 * cpplib.h (struct cpp_hashnode): Change field directive_index from
1702 char to an int bit-field, for hosts where char is unsigned.
1703
17042002-12-07 Roger Sayle <roger@eyesopen.com>
1705 Richard Henderson <rth@redhat.com>
1706
1707 * real.c (ieee_extended_motorola_format,
1708 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
1709 ieee_quad_format, vax_d_format, vax_g_format, i370_double_format):
1710 Provide appropriate values for new signbit field.
1711
17122002-12-07 Roger Sayle <roger@eyesopen.com>
1713
1714 * real.h (real_format): Add signbit field.
1715 * real.c (ieee_single_format, ieee_double_format,
1716 ieee_extended_motorola_format, ieee_extended_intel_96_format,
1717 ieee_extended_intel_128_format, ibm_extended_format,
1718 ieee_quad_format, vax_f_format, vax_d_format,
1719 vax_g_format, i370_single_format, i370_double_format,
1720 c4x_single_format, c4x_extended_format, real_internal_format):
1721 Provide suitable signbit value, or -1 to avoid bit twiddling.
1722
1723 * optabs.c (expand_unop): Try implementing negation of
1724 floating point modes by flipping the sign bit.
1725 (expand_abs): Try implementing abs of floating point modes
1726 by clearing the sign bit.
1727
1728Sat Dec 7 22:29:47 CET 2002 Jan Hubicka <jh@suse.cz>
1729
1730 * i386.c (ix86_expand_int_movcc): Use force_operand instead
1731 of constructing insn directly.
1732
2a598b3a
KH
17332002-12-07 Kazu Hirata <kazu@cs.umass.edu>
1734
1735 * config/h8300/h8300.md (*iorhi_shift_8): New.
1736
70899148
BS
17372002-12-06 Bernd Schmidt <bernds@redhat.com>
1738
1739 * doc/invoke.texi: Document FRV port options.
1740 * doc/md.texi: Document FRV register classes.
1741
377dfc82
GP
17422002-12-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1743
1744 * doc/install.texi (Configuration): Improve description of cases
1745 where `make distclean` may fail; clarify --with-gnu-as; fix grammar.
1746
4977bab6
ZW
17472002-12-06 Per Bothner <pbothner@apple.com>
1748
1749 * cpplib.h (NODE_MACRO_ARG): New flag.
1750 (struct cpp_hashnode): Give _cpp_hashnode_value tag to value union.
1751 Remove value.operator field. Move arg_index field to value union.
1752 (directive_index): Make signed, since also used for C++ operators.
1753 * cppmacro.c (_cpp_save_parameter): Use NODE_MACRO_ARG flag to
1754 check for duplicate parameter. Set NODE_MACRO_ARG flag.
1755 Save node->value, and set node->value.arg_index.
1756 (_cpp_create_definition): For each paramater, restore node->value.
1757 (lex_expansion_token): Use NODE_MACRO_ARG flag, and moved arg_index.
1758 * cpptrad.c (scan_out_logical_line): Likewise.
1759 (scan_out_logical_line): Check for directive > 0.
1760 * cpplib.c (cpp_handle_directive): Likewise.
1761 * cpplex.c (_cpp_lex_direct): Update as value.operator is replaced
1762 by negative of directive_index.
1763 * cppinit.c (mark_named_operators): Likewise.
1764
1765 * hashtable.h (struct ht_identifier): Swap fields, for better packing.
1766
7144b2d8
DD
17672002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com>
1768
1769 * gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has
1770 FPU.
1771 (push): Generate push_fpscr.
1772 (pop): Generate pop_fpscr.
1773 * gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr".
1774 (fpu_switch): Add alternative to push fpscr. Enable for TARGET_SH3E.
1775
aa06e8f5
R
1776Fri Dec 6 19:36:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
1777
1778 * sh.c (dump_table): DImode pool constants need only 32 bit alignment.
1779 DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
1780
0113c3c0
R
1781Fri Dec 6 19:17:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
1782
1783 * sh.md (movdi_i): Name. Remove inappropriate comment.
1784
8d6b008d
R
1785Fri Dec 6 15:44:46 2002 J"orn Rennecke <joern.rennecke@superh.com>
1786 Merged from basic improvements branch (excerpt):
1787
1788 2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
1789 * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
1790
61f6c84f
JJ
17912002-12-06 Jakub Jelinek <jakub@redhat.com>
1792
1793 * expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place.
1794
4977bab6
ZW
1795Thu Dec 5 16:58:25 CET 2002 Jan Hubicka <jh@suse.cz>
1796
1797 * i386.md (dimode peep2s): Re-add "&& 1".
1798
1799Thu Dec 5 14:10:15 CET 2002 Jan Hubicka <jh@suse.cz>
1800
1801 * i386.c (ix86_expand_prologue): Add comment, do not use
1802 fast prologues for cold and normal functions.
1803
1804Thu Dec 5 00:52:37 CET 2002 Jan Hubicka <jh@suse.cz>
1805
1806 * i386.c (x86_rep_movl_optimal): New variable.
1807 (ix86_expand_movstr, ix86_expand_clrstr): Use TARGET_REP_MOVL_OPTIMAL
1808 * i386.h (TARGET_REP_MOVL_OPTIMAL): New macro.
1809
1810 * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
1811 absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
1812 neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
1813 generate unnecesary subregs.
1814
bf97847b
JDA
18152002-12-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
1816
1817 * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define.
1818 * pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here.
1819
1fcfaf37
DJ
18202002-12-05 Dale Johannesen <dalej@apple.com>
1821
1822 * tree.c (unsafe_for_reeval): Consider callee child of CALL_EXPR.
1823
1a823ac1
DS
18242002-12-05 Danny Smith <dannysmith@users.sourceforge.net>
1825
1826 * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with
1827 PROFILE_HOOK.
1828 * config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef.
1829
747db477
AH
18302002-12-05 Aldy Hernandez <aldyh@redhat.com>
1831
1832 * config/rs6000/spe.h (__ev_mwlufi): Remove.
1833 (__ev_mwlufia): Remove.
1834 (__ev_mwlumfaaw): Remove.
1835 (__ev_mwlusfaaw): Remove.
1836 (__ev_mwlumfanw): Remove.
1837 (__ev_mwlusfanw): Remove.
1838
94f09825
KH
18392002-12-05 Kazu Hirata <kazu@cs.umass.edu>
1840
1841 * config/h8300/h8300.md (*andorsi3_shift_8): New.
1842
1e5bdc40
KH
18432002-12-05 Kazu Hirata <kazu@cs.umass.edu>
1844
1845 * config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
1846 lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
1847 (get_shift_alg): Return optimal assembly instructions for the
1848 shifts mentioned above.
1849
4977bab6
ZW
1850Wed Dec 4 11:53:07 CET 2002 Jan Hubicka <jh@suse.cz>
1851
1852 * i386.c (ix86_expand_int_movcc): Force operand into register for QImode
1853 condtiional moves.
1854
b6fd51f6
KH
18552002-12-04 Kazu Hirata <kazu@cs.umass.edu>
1856
1857 * config/h8300/h8300.c (h8300_init_once): Do not use loop to
1858 implement ashiftrt:HI by 13 bits on H8S.
1859
9e1ab8c1
JDA
18602002-12-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
1861
1862 * pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
1863 * pa.md (canonicalize_funcptr_for_compare): Output library call to
1864 canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
1865 * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
1866 CTOR_LIST_BEGIN): New defines.
1867 * pa/t-linux (LIB2FUNCS_EXTRA): New define.
1868 (fptr.c): Add make rules.
1869
16823694
GK
18702002-12-04 Geoffrey Keating <geoffk@apple.com>
1871
1872 * combine.c (combine_simplify_rtx): Add new canonicalizations.
1873 * doc/md.texi (Insn Canonicalizations): Document new
1874 canonicalizations for multiply/add combinations.
1875 * config/rs6000/rs6000.md: Add and modify floating add/multiply
1876 patterns to ensure they're used whenever they can be.
1877
5ec0b66e
KH
18782002-12-04 Kazu Hirata <kazu@cs.umass.edu>
1879
1880 * config/h8300/h8300.c: Update the comments related to shifts.
1881
7fa9ed65
CD
18822002-12-04 Chris Demetriou <cgd@broadcom.com>
1883
1884 * config/mips/mips.md (get_fnaddr): Correct length attribute.
1885
6bd6fd35
KH
18862002-12-04 Kazu Hirata <kazu@cs.umass.edu>
1887
1888 * config/h8300/h8300.md (*extzv_8_8): New.
1889 (*extzv_8_16): Likewise.
1890
c246c65d
JM
18912002-12-04 Jason Merrill <jason@redhat.com>
1892
1893 PR c++/8461, c++/8625
1894 * integrate.c (copy_decl_for_inlining): Handle explicit invisible
1895 references.
1896 * tree-inline.c (initialize_inlined_parameters): Likewise.
1897
1898 * tree.c (variably_modified_type_p): Just return an error_mark_node.
1899
ae598ab9
CD
19002002-12-04 Chris Demetriou <cgd@broadcom.com>
1901
1902 * config/mips/mips.md (get_fnaddr): Avoid placing an "la"
1903 macro instruction in a branch delay slot, to avoid assembler
1904 warnings.
1905
a9b6f1e7
EB
19062002-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
1907
1908 PR c/7622
1909 * c-semantics (genrtl_scope_stmt): Do not output inlined
1910 nested functions that contain no code.
1911
a3716585
JH
1912Wed Dec 4 15:20:54 CET 2002 Jan Hubicka <jh@suse.cz>
1913
1914 * cfgrtl.c (force_nonfallthru_and_redirect): Allow abnormal edge
1915 to be forced into nonfallthru.
1916
44924a36
JT
19172002-12-03 Jason Thorpe <thorpej@wasabisystems.com>
1918
1919 * config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS).
1920
3678a93e
AH
19212002-12-03 Aldy Hernandez <aldyh@redhat.com>
1922
4977bab6 1923 * config/rs6000/spe.md (*movv1di_const0): New pattern.
3678a93e 1924
6e1be6b1
RH
19252002-12-03 Richard Henderson <rth@redhat.com>
1926
1927 * libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0.
1928
c47eb51b
HPN
19292002-12-03 Hans-Peter Nilsson <hp@bitrange.com>
1930
1931 * bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff):
1932 Initialize tmp.using_obstack to 0.
1933
2cff4a6e
AS
19342002-12-03 Andreas Schwab <schwab@suse.de>
1935
1936 * config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define.
1937 (EH_RETURN_STACKADJ_RTX): Define.
1938 (EH_RETURN_HANDLER_RTX): Define.
1939 (ASM_PREFERRED_EH_DATA_FORMAT): Define.
1940 * config/m68k/m68k.c (m68k_save_reg): New function. Handle eh
1941 registers and don't save fixed registers.
1942 (m68k_output_function_prologue): Use it.
1943 (use_return_insn): Likewise.
1944 (m68k_output_function_epilogue): Likewise.
1945
491a9777
KH
19462002-12-03 Kazu Hirata <kazu@cs.umass.edu>
1947
1948 * config/h8300/h8300.c (single_one_operand): Fix a warning.
1949 (single_zero_operand): Likewise.
1950
4977bab6
ZW
19512002-12-02 Nathanael Nerode <neroden@gcc.gnu.org>
1952
1953 * Makefile.in configure configure.in dummy-conditions.c fix-header.c
1954 gcov-iov.c gen-protos.c genattr.c genattrtab.c genautomata.c
1955 gencheck.c gencodes.c genconditions.c genconfig.c genconstants.c
1956 genemit.c genextract.c genflags.c gengenrtl.c gengtype-lex.l
1957 gengtype-yacc.y gengtype.c genopinit.c genoutput.c genpeep.c
1958 genpreds.c genrecog.c gensupport.c mkconfig.sh read-rtl.c
1959 scan-decls.c scan.c config/sh/sh.h doc/configfiles.texi
1960 doc/install-old.texi: Replace hconfig.h with bconfig.h.
1961 * Makefile.in: Replace HCONFIG_H with BCONFIG_H.
1962
19632002-12-02 Andrew Pinski <pinskia@physics.uc.edu>
1964
1965 * config/rs6000/rs6000.md (ffssi): Convert to expander.
1966 (ffsdi): Likewise.
1967 (cntlzw2, cntlzd2): New patterns.
1968
19692002-12-02 H.J. Lu <hjl@gnu.org>
1970
1971 * config.gcc (mips*-*-netbsd*): Remove mips/t-netbsd.
1972 (mips*-*-linux*): Remove mips/t-linux.
1973
1974Mon Dec 2 19:26:30 CET 2002 Jan Hubicka <jh@suse.cz>
1975
1976 * i386.c (ix86_expand_int_movcc): Avoid overflow.
1977
e8a68017
KH
19782002-12-02 Kazu Hirata <kazu@cs.umass.edu>
1979
1980 * config/h8300/h8300.c (dosize): Replace argument op with
1981 sign.
1982 (h8300_output_function_prologue): Update the call to dosize.
1983 (h8300_output_function_epilogue): Likewise.
1984
834572b8
BW
19852002-12-02 Bob Wilson <bob.wilson@acm.org>
1986
1987 * config/xtensa/xtensa.h: Delete ifndefs with nothing inside them.
1988
19892002-12-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
9118405f
CR
1990
1991 * configure.in: Use "missing" script to generate warning if
1992 flex or bison programs not found, instead of invoking "false".
1993 * configure: Rebuilt.
1994
4ff38cd5
JH
1995Mon Dec 2 20:28:48 CET 2002 Jan Hubicka <jh@suse.cz>
1996
1997 * unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P.
1998
adc72fa6
JH
1999Mon Dec 2 19:42:52 CET 2002 Jan Hubicka <jh@suse.cz>
2000
2001 * i386.c (ix86_expand_int_movcc): Avoid overflow.
2002
513f31eb
KH
20032002-12-02 Kazu Hirata <kazu@cs.umass.edu>
2004
2005 * config/h8300/h8300.c (dosize): Output r7/er7 instead of sp.
2006 (push): Likewise.
2007 (pop): Likewise.
2008 (h8300_output_function_prologue): Likewise.
2009 (h8300_output_function_epilogue): Likewise.
2010
7ffc9761
R
2011Mon Dec 2 14:43:22 2002 J"orn Rennecke <joern.rennecke@superh.com>
2012
2013 * expmed.c (store_bit_field): Use int_mode_for_mode to find
2014 corresponding mode of non-integer mode, unless it is VOIDmode.
2015
0a2a0a58
KH
20162002-12-02 Kazu Hirata <kazu@cs.umass.edu>
2017
2018 * config/h8300/h8300.md (stm_h8300s_2): New.
2019 (stm_h8300s_3): Likewise.
2020 (stm_h8300s_4): Likewise.
2021 (five define_peephole2): Likewise.
2022
28432d9f
KH
20232002-12-02 Kazu Hirata <kazu@cs.umass.edu>
2024
2025 * ra-build.c: Fix a comment typo.
2026
4977bab6
ZW
2027Sun Dec 1 16:50:47 CET 2002 Jan Hubicka <jh@suse.cz>
2028
2029 * i386.c (ix86_expand_int_movcc): fix
2030 reversed BRANCH_COST test; be curefull about infinite recursion.
2031
e651d484
KH
20322002-12-01 Kazu Hirata <kazu@cs.umass.edu>
2033
2034 * config/h8300/h8300.c (h8300_output_function_prologue):
2035 Remove variable idx.
2036 (h8300_output_function_epilogue): Likewise.
2037
558bb2c4
ZW
20382002-12-01 Zack Weinberg <zack@codesourcery.com>
2039
2040 * config/frv/xm-frv.h: Delete, unnecessary.
2041
96cc06af
KH
20422002-12-01 Kazu Hirata <kazu@cs.umass.edu>
2043
2044 * config/h8300/h8300.md: Add comments for define_peephole2.
2045
c9f8536c
MM
20462002-12-01 Mark Mitchell <mark@codesourcery.com>
2047
2048 * builtin-types.def (BT_SIZE): Use size_type_node.
2049 * builtins.c (fold_builtin): Make the builtin strlen returns a
2050 size_t, not a sizetype.
2051 * c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
2052 c_size_type_node.
2053 (c_alignof_expr): Likewise.
2054 (c_common_nodes_and_builtins): Likewise.
2055 * c-common.h (CTI_C_SIZE_TYPE): Remove.
2056 (c_size_type_node): Likewise.
2057 * c-format.c (T_ST): Use size_type_node, not c_size_type_node.
2058 * tree.h (TI_SIZE_TYPE): New enumeral.
2059 (size_type_node): Likewise.
4977bab6
ZW
2060
20612002-11-30 Zack Weinberg <zack@codesourcery.com>
2062
2063 * configure.in: Don't put ${tm_file} into host_xm_file,
2064 build_xm_file, or xm_file. Do put tm-preds.h into tm_p_file.
2065 Take location of tm-preds.h into account when calculating
2066 tm_p_file_list.
2067 * configure: Regenerate.
2068 * mkconfig.sh: No need for separate TM_DEFINES and XM_DEFINES
2069 arguments. Do not provide rtx, rtvec, tree, or GTY here.
2070 Remove special case code for tm_p.h and *config.h; add new
2071 special case code for tm.h and tconfig.h. Clean up a bit.
2072
2073 * Makefile.in (tm_file, tm_file_list): New variables set from
2074 @-substitutions.
2075 (GCONFIG_H): Deleted.
2076 (GTM_H, TM_H): New.
2077 (CONFIG_H): Is now just config.h $(host_xm_file_list).
2078 (TM_P_H): Move up with the other mkconfig.sh-generated
2079 headers; don't mention tm-preds.h explicitly.
2080 (tm.h, cs-tm.h): New rule.
2081 (cs-config.h, cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): Adjust
2082 invocations of mkconfig.sh for changes to that program.
2083 (mostlyclean): Delete print-rtl1.c.
2084 (clean): Delete tm.h.
2085 Update dependencies for the files listed below.
2086
2087 * mklibgcc.in: Add 'coretypes.h $(TM_H)' to libgcc2_c_dep.
2088
2089 * coretypes.h: New file.
2090 * system.h: #define malloc to xmalloc and realloc to xrealloc
2091 when FLEX_SCANNER or YYBISON is defined, independent of the
2092 value of GCC_VERSION.
2093 * alias.c, attribs.c, bb-reorder.c, bitmap.c, builtins.c,
2094 c-aux-info.c, c-common.c, c-convert.c, c-decl.c, c-dump.c,
2095 c-errors.c, c-format.c, c-lang.c, c-lex.c, c-objc-common.c,
2096 c-opts.c, c-parse.in, c-pragma.c, c-pretty-print.c,
2097 c-semantics.c, c-typeck.c, caller-save.c, calls.c, cfg.c,
2098 cfganal.c, cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c,
2099 cfgrtl.c, collect2.c, combine.c, conflict.c, convert.c,
2100 cppdefault.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
2101 cppinit.c, cpplex.c, cpplib.c, cppmacro.c, cppmain.c,
2102 cppspec.c, cpptrad.c, crtstuff.c, cse.c, cselib.c, dbxout.c,
2103 debug.c, df.c, diagnostic.c, doloop.c, dominance.c,
2104 dummy-conditions.c, dwarf2asm.c, dwarf2out.c, dwarfout.c,
2105 emit-rtl.c, errors.c, et-forest.c, except.c, explow.c,
2106 expmed.c, expr.c, final.c, fix-header.c, flow.c, fold-const.c,
2107 function.c, gcc.c, gccspec.c, gcov-dump.c, gcov-iov.c, gcov.c,
2108 gcse.c, gen-protos.c, genattr.c, genattrtab.c, genautomata.c,
2109 gencheck.c, gencodes.c, genconditions.c, genconfig.c,
2110 genconstants.c, genemit.c, genextract.c, genflags.c,
2111 gengenrtl.c, gengtype-lex.l, gengtype-yacc.y, gengtype.c,
2112 genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
2113 gensupport.c, ggc-common.c, ggc-none.c, ggc-page.c,
2114 ggc-simple.c, global.c, graph.c, haifa-sched.c, hashtable.c,
2115 hooks.c, ifcvt.c, integrate.c, intl.c, jump.c, langhooks.c,
2116 lcm.c, libgcc2.c, line-map.c, lists.c, local-alloc.c, loop.c,
2117 main.c, mbchar.c, mips-tdump.c, mips-tfile.c, mkdeps.c,
2118 optabs.c, params.c, predict.c, prefix.c, print-rtl.c,
2119 print-tree.c, profile.c, protoize.c, ra-build.c,
2120 ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, read-rtl.c,
2121 real.c, recog.c, reg-stack.c, regclass.c, regmove.c,
2122 regrename.c, reload.c, reload1.c, reorg.c, resource.c,
2123 rtl-error.c, rtl.c, rtlanal.c, sbitmap.c, scan-decls.c,
2124 scan.c, sched-deps.c, sched-ebb.c, sched-rgn.c, sched-vis.c,
2125 sdbout.c, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c,
2126 ssa.c, stmt.c, stor-layout.c, stringpool.c, timevar.c,
2127 tlink.c, toplev.c, tracer.c, tree-dump.c, tree-inline.c,
2128 tree.c, unroll.c, varasm.c, varray.c, varray.h, vmsdbgout.c,
2129 xcoffout.c, config/darwin-c.c, config/darwin.c,
2130 config/fp-bit.c, config/alpha/alpha.c, config/alpha/vms-cc.c,
2131 config/alpha/vms-ld.c, config/arc/arc.c, config/arm/arm.c,
2132 config/arm/pe.c, config/avr/avr.c, config/c4x/c4x-c.c,
2133 config/c4x/c4x.c, config/cris/cris.c, config/d30v/d30v.c,
2134 config/dsp16xx/dsp16xx.c, config/fr30/fr30.c,
2135 config/frv/frv.c, config/h8300/h8300.c, config/i370/i370-c.c,
2136 config/i370/i370.c, config/i386/i386.c, config/i386/winnt.c,
2137 config/i960/i960-c.c, config/i960/i960.c,
2138 config/ia64/ia64-c.c, config/ia64/ia64.c, config/ip2k/ip2k.c,
2139 config/m32r/m32r.c, config/m68hc11/m68hc11.c,
2140 config/m68k/m68k.c, config/m88k/m88k.c, config/mcore/mcore.c,
2141 config/mips/irix6-libc-compat.c, config/mips/mips.c,
2142 config/mmix/mmix.c, config/mn10200/mn10200.c,
2143 config/mn10300/mn10300.c, config/ns32k/ns32k.c,
2144 config/pa/pa.c, config/pdp11/pdp11.c, config/romp/romp.c,
2145 config/rs6000/rs6000-c.c, config/rs6000/rs6000.c,
2146 config/s390/s390.c, config/sh/sh.c, config/sparc/gmon-sol2.c,
2147 config/sparc/sparc.c, config/stormy16/stormy16.c,
2148 config/v850/v850-c.c, config/v850/v850.c, config/vax/vax.c,
2149 config/xtensa/xtensa.c, objc/objc-act.c, objc/objc-lang.c:
2150 Include coretypes.h and tm.h.
2151
2152 * genattrtab.c, genconditions.c, genemit.c, genextract.c,
2153 gengenrtl.c, gengtype.c, genopinit.c, genoutput.c, genpeep.c,
2154 genrecog.c: Include coretypes.h and tm.h from the file
2155 generated by this program.
2156
2157 * unwind-dw2-fde-darwin.c, unwind-dw2-fde-glibc.c,
2158 unwind-dw2-fde.c, unwind-dw2.c, unwind-sjlj.c: Include
2159 coretypes.h and tm.h, and tsystem.h when not already included.
2160 No need to include stddef.h nor stdlib.h.
2161
2162 * fixinc/fixlib.h: Include coretypes.h and tm.h. Do not
2163 include auto-host.h or ansidecl.h/
2164 * fixinc/server.h: Do not include stdio.h, unistd.h, or fixlib.h.
2165 * fixinc/procopen.c: Include server.h after fixlib.h. Do not
2166 include auto-host.h, ansidecl.h, or system.h.
2167 * fixinc/server.c: Likewise. Also, do not include signal.h,
2168 and do not redefine volatile.
2169
2170Sat Nov 30 17:16:46 CET 2002 Jan Hubicka <jh@suse.cz>
2171
2172 * i386.md (movdf_integer): Always enable in 64bit.
2173 (movdf_nointeger): Always disable in 64bit.
2174
f6318a2b
JDA
21752002-11-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
2176
2177 * cfg.c (dump_flow_info): Use max_reg_num () to determine the largest
2178 pseudo register number plus 1.
2179
4977bab6
ZW
2180Fri Nov 29 20:10:56 2002 J"orn Rennecke <joern.rennecke@superh.com>
2181
2182 * expmed.c (store_bit_field): Use int_mode_for_mode to find
2183 corresponding mode of non-integer mode, unless it is VOIDmode.
2184
2402645b
HPN
21852002-11-29 Hans-Peter Nilsson <hp@bitrange.com>
2186
2187 * cpplib.c (_cpp_test_assertion): Default *value to 0.
2188
2189 * cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
2190
8ef34c0d
UW
21912002-11-29 Ulrich Weigand <uweigand@de.ibm.com>
2192
2193 * config/s390/t-crtstuff: New target makefile fragment.
2194 * config.gcc [s390-*-linux, s390x-*-linux]: Use it.
2195
b8bbda91
KH
21962002-11-29 Kazu Hirata <kazu@cs.umass.edu>
2197
2198 * config/h8300/h8300.md (movsi_h8300hs): Change the order of
2199 alternatives to correct the length when the memory operand is
2200 either pre_dec or post_inc.
2201
d23dff51
KH
22022002-11-29 Kazu Hirata <kazu@cs.umass.edu>
2203
2204 * config/h8300/h8300.md (an anonymous pattern): Give an
2205 internal name *tst_extzv_bitqi_1_n.
2206 Accept bit_operand instead of bit_memory_operand.
2207 Do not accept bit tests with the MSB.
2208 (*tst_extzv_memqi_1_n): New.
2209
4977bab6
ZW
2210Thu Nov 28 23:56:24 CET 2002 Jan Hubicka <jh@suse.cz>
2211
2212 * i386.c (ix86_expand_int_movcc): Add copy_rtx to avoid invalid RTX
2213 sharing when operand is SUBREG.
2214
2215Thu Nov 28 08:57:26 CET 2002 Jan Hubicka <jh@suse.cz>
2216
2217 * athlon.md (athlon-decodev): New reservation unit.
2218 (athlon-direct0): New reservation.
2219 (athlon-vector): New use athlon-decodev.
2220 (athlon-double, athlon-direct): Better model.
2221 (athlon_imul_k8): Use athlon-direct0.
2222 (athlon_movlpd_load): New insn reservation.
2223
3f7211f1
KH
22242002-11-28 Kazu Hirata <kazu@cs.umass.edu>
2225
2226 * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
2227 Fix a comment typo.
2228 (h8300_tiny_constant_address_p): Likewise.
2229
fcb204ce
MM
22302002-11-28 Michael Matz <matz@suse.de>
2231
2232 * doc/passes.texi: Mention the other register allocator.
2233
7957fde4
KH
22342002-11-28 Kazu Hirata <kazu@cs.umass.edu>
2235
2236 * config/h8300/h8300.md (6 new peephole2 patterns): New.
2237
17c04c5e
JJ
22382002-11-28 Jakub Jelinek <jakub@redhat.com>
2239
2240 * config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff.
2241 * config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
2242 * config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define.
2243
73cc75e9
KH
22442002-11-28 Kazu Hirata <kazu@cs.umass.edu>
2245
2246 * config/h8300/h8300.c (h8300_and_costs): New.
2247 * config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs.
2248 * config/h8300/h8300-protos.h: Add a prototype for
2249 h8300_and_costs.
2250
4977bab6
ZW
2251Wed Nov 27 20:34:13 CET 2002 Jan Hubicka <jh@suse.cz>
2252
2253 * i386.c (x86_sse_partial_regs_for_cvtsd2ss): New.
2254 * i386.h (x86_sse_partial_regs_for_cvtsd2ss): Declare.
2255 (TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS): New macro.
2256 * i386.md (truncdfsf patterns and splitters): Use
2257 TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS
2258
0dbc3651
ZW
22592002-11-27 Zack Weinberg <zack@codesourcery.com>
2260
2261 * config/rs6000/rs6000.c (altivec_init_builtins): Make the
2262 pointer argument in the prototypes of the following builtins
2263 be (const TYPE *) rather than (TYPE *):
2264 + __builtin_altivec_ld_internal_4sf
2265 + __builtin_altivec_ld_internal_4si
2266 + __builtin_altivec_ld_internal_8hi
2267 + __builtin_altivec_ld_internal_16qi
2268 + __builtin_altivec_lvsl
2269 + __builtin_altivec_lvsr
2270 + __builtin_altivec_lvebx
2271 + __builtin_altivec_lvehx
2272 + __builtin_altivec_lvewx
2273 + __builtin_altivec_lvxl
2274 + __builtin_altivec_lvx
2275 + __builtin_altivec_dst
2276 + __builtin_altivec_dstt
2277 + __builtin_altivec_dstst
2278 + __builtin_altivec_dststt
2279
fe3f9515
KG
22802002-11-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2281
2282 * except.c (default_exception_section): Move variable into the
2283 scope where it is used.
2284
4e85eada
KW
22852002-11-27 Krister Walfridsson <cato@df.lth.se>
2286
2287 * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for
2288 correct version.
2289
f248423a
KH
22902002-11-27 Kazu Hirata <kazu@cs.umass.edu>
2291
2292 * config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses.
2293
ae557002
KH
22942002-11-27 Kazu Hirata <kazu@cs.umass.edu>
2295
2296 * config/h8300/h8300.c (h8300_shift_costs): New.
2297 * config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs.
2298 * config/h8300/h8300-protos.h: Add a prototype for
2299 h8300_shift_costs.
2300
c9b93e1a
JW
23012002-11-27 Jim Wilson <wilson@redhat.com>
2302
0dbc3651
ZW
2303 * config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands
2304 in output template.
c9b93e1a 2305
249e6b63
CH
23062002-11-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
2307
2308 * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define.
2309 * config/i386/winnt.c (i386_pe_dllexport_name_p): Use
2310 DLL_IMPORT_EXPORT_PREFIX, not '@'.
2311 (i386_pe_dllimport_name_p): Likewise.
2312 (i386_pe_mark_dllexport): Likewise.
2313 (i386_pe_mark_dllimport): Likewise.
2314 (i386_pe_encode_section_info): Likewise.
2315 (i386_pe_strip_name_encoding): Likewise.
2316
5a5c00af
RH
23172002-11-27 Richard Henderson <rth@redhat.com>
2318
2319 * mkmap-symver.awk (BEGIN): Set sawsymbol false.
2320 (nm && NF == 3): Set sawsymbol true.
2321 (END): Exit if no symbols seen.
2322 (output): Fix map syntax error if no globals for the version.
2323
1dc46545
JH
2324Wed Nov 27 14:45:46 CET 2002 Jan Hubicka <jh@suse.cz>
2325
2326 * builtins.def (DEF_C99_BUILTIN): Fix.
2327
4977bab6
ZW
23282002-11-26 Kaz Kojima <kkojima@gcc.gnu.org>
2329
2330 * config/sh/lib1funcs.asm (FUNC, ENDFUNC0, ENDFUNC): New macros.
2331 (all): Add .size and .type information.
2332
2333Tue Nov 26 22:43:50 CET 2002 Jan Hubicka <jh@suse.cz>
2334
2335 * i386.c (ix86_expand_int_movcc): Do not emit lea for short mode on
2336 partial_reg_stall target.
2337
2338Tue Nov 26 22:27:47 CET 2002 Jan Hubicka <jh@suse.cz>
2339
2340 * i386.md (movhicc): Allow general operand.
2341 (movqicc): New expander.
2342 (movqicc_noc): New pattern.
2343 * i386.c (ix86_expand_carry_flag_compare): New function.
2344 (ix86_expand_int_movcc): Optimize harder using sbb; support more
2345 HImode conversion; support QImode conditional moves
2346
2347Tue Nov 26 16:30:59 CET 2002 Jan Hubicka <jh@suse.cz>
2348
2349 * i386.c (FAST_PROLOGUE_INSN_COUNT): Set to 20.
2350 (ix86_expand_prologue): Multiply the count by amount of registers to be
2351 pushed.
2352
2353Tue Nov 26 15:55:27 CET 2002 Jan Hubicka <jh@suse.cz>
2354
2355 * i386.c (override_options): Error about wrong -mcpu on x86-64
2356 compilation.
2357
23582002-11-26 NIIBE Yutaka <gniibe@m17n.org>
2359
2360 * config/sh/linux.h (FUNCTION_PROFILER): Implemented.
2361
2362Tue Nov 26 00:14:20 CET 2002 Jan Hubicka <jh@suse.cz>
2363
2364 * i386-protos.h (x86_extended_QIreg_mentioned_p,
2365 x86_extended_reg_mentioned_p): Declare.
2366 * i386.c (extended_reg_mentioned_1): New static function.
2367 (x86_extended_QIreg_mentioned_p,
2368 x86_extended_reg_mentioned_p): New global functions.
2369 * i386.h (REX_SSE_REGNO_P): New macro.
2370 * i386.md (prefix_rex): New attribute.
2371 (length attribute): Add rex.
2372
5154b05d
AH
23732002-11-26 Andrew Haley <aph@redhat.com>
2374
2375 * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename
2376 from_Unwind_Find_Enclosing_Function.
2377 * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise.
2378 * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise.
2379 * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from
2380 _Unwind_Find_Enclosing_Function, export @@GCC_3.3.
2381 * unwind.h (_Unwind_FindEnclosingFunction): Add.
0dbc3651 2382
0f942cae
HP
23832002-11-26 Hartmut Penner <hpenner@de.ibm.com>
2384
0dbc3651
ZW
2385 * config/s390/s390.c (390_output_constant_pool): Set alignment
2386 before label in 64 bit mode, behind otherwise.
0f942cae 2387
25fdb4dc
RH
23882002-11-26 Richard Henderson <rth@redhat.com>
2389
2390 * c-common.c (handle_visibility_attribute): Accept "default".
2391 * tree.h (enum symbol_visibility): New.
2392 (decl_visibility): Declare.
2393 * target.h (gcc_target.visibility): Take visibility arg as integer.
2394 * varasm.c (default_assemble_visibility): Likewise.
2395 (decl_visibility): New.
2396 (maybe_assemble_visibility): Use it.
2397 * output.h (default_assemble_visibility): Update prototype.
2398 * config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
2399 visibility arg as integer.
d5c4db17 2400 * doc/extend.texi: Document default visibility.
25fdb4dc 2401
920e86b8
KH
24022002-11-26 Kazu Hirata <kazu@cs.umass.edu>
2403
2404 * config/h8300/h8300.c: Adjust spacing.
2405 * config/h8300/h8300.h: Likewise.
2406
7b1bd3c5
RH
24072002-11-26 Richard Henderson <rth@redhat.com>
2408
2409 * hooks.c (hook_bool_void_false, hook_void_tree_int,
2410 hook_void_FILEptr_constcharptr): Rename so that the return
2411 type is first.
2412 (hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr,
2413 hook_bool_tree_false): New.
2414 * hooks.h: Update.
2415 * langhooks-def.h: Update for renames.
2416 * target-def.h: Likewise.
2417 * tree.c (default_comp_type_attributes,
0dbc3651 2418 default_set_default_type_attributes, default_insert_attributes,
7b1bd3c5
RH
2419 default_function_attribute_inlinable_p,
2420 default_ms_bitfield_layout_p): Remove.
2421 * tree.h: Update.
2422
44571d6e
JDA
24232002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
2424
2425 * pa-protos.h (function_value): New prototype.
2426 * pa.c (function_value): Use a PARALLEL to return small aggregates on
2427 TARGET_64BIT.
2428 * pa.h (FUNCTION_VALUE): Use function_value.
2429 * pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
2430 call_value_internal_reg, sibcall_value_internal_symref,
2431 sibcall_value_internal_symref_64bit): Remove =rf constraint on return
2432 value.
2433
084a1106
JDA
24342002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
2435
2436 * expr.c (gen_group_rtx, emit_group_move): New functions.
2437 * expr.h (gen_group_rtx, emit_group_move): Prototype.
2438 * function.c (expand_function_start): Use gen_group_rtx to create a
2439 PARALLEL rtx to hold the return value when the real return rtx is a
2440 PARALLEL.
2441 (expand_function_end): Use emit_group_move to move the return value
2442 from a PARALLEL to the real return registers.
2443 * rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
2444 in PARALLELs.
2445
5d2fe493
JT
24462002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
2447
2448 * config/t-libc-ok: Fix typo.
2449
13c22933
JJ
24502002-11-26 Jakub Jelinek <jakub@redhat.com>
2451
2452 * configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back
2453 before AC_PROG_CC.
2454 * configure: Rebuilt.
2455
5326cd3d
NS
24562002-11-26 Nathan Sidwell <nathan@codesourcery.com>
2457
2458 * c-decl.c: (start_struct): Commonize flag setting.
2459
647d340d
JT
24602002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
2461
2462 * config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New.
2463 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use
0dbc3651 2464 RS6000_CPU_CPP_ENDIAN_BUILTINS.
647d340d
JT
2465 * config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine.
2466
29742ba4
HP
24672002-11-26 Hartmut Penner <hpenner@de.ibm.com>
2468
2469 * config/s390/s390.md (literal_pool_64, literal_pool_31 ): New
2470 insns.
2471 * config/s390/s390.c (struct machine_function): Introduction of
2472 struct machine_function.
0412a4d4
HP
2473 (s390_output_symbolic_const): Use of cfun.
2474 (s390_optimize_prolog): Likewise.
2475 (s390_fixup_clobbered_return_reg): Likewise.
2476 (s390_frame_info): Likewise.
2477 (s390_emit_prologue, s390_emit_epilogue): Likewise.
2478 (s390_init_machine_status): New function.
2479 (override_options): call s390_init_machine_status.
0dbc3651 2480 * config/s390/s390-protos.h (s390_output_constant_pool): Changed
29742ba4 2481 prototype.
0dbc3651 2482
f4111593
JJ
24832002-11-26 Jakub Jelinek <jakub@redhat.com>
2484
2485 * varasm.c (output_constant_pool): For pool constants in mergeable
2486 section ensure each constant is padded to multiple of entity size.
2487
96d0f4dc
JJ
24882002-11-26 Jakub Jelinek <jakub@redhat.com>
2489
2490 * varasm.c (default_exception_section): Move to...
2491 * except.c (default_exception_section): ... here. Make
2492 .gcc_except_table read-only if it is not expected to have any
2493 dynamic relocations and linker handles it.
2494 * dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
2495 if it is not expected to have any dynamic relocations and linker
2496 handles it.
2497 * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
2498 when linking read-only and read-write sections together.
2499 * configure, config.in: Rebuilt.
2500 * crtstuff.c (EH_FRAME_SECTION_CONST): Define.
2501 (__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
2502
4977bab6
ZW
2503Mon Nov 25 18:32:37 CET 2002 Jan Hubicka <jh@suse.cz>
2504
2505 * i386.md (pushsf_rex64): Fix typo.
2506
020a7b12
AH
25072002-11-25 Aldy Hernandez <aldyh@redhat.com>
2508
249e6b63
CH
2509 * config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into
2510 new function.
2511 (__ev_create_ufix32_fs): Same.
2512 (__ev_get_sfix32_fs_internal): New.
2513 (__ev_get_sfix32_fs): Define to use function.
2514 (__ev_get_ufix32_fs_internal): New.
2515 (__ev_get_ufix32_fs): Define to use function.
2516 (__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs.
2517 (__ev_get_lower_ufix32_fs): Same.
2518 (__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs.
2519 (__ev_get_lower_sfix32_fs): Same.
2520 (__ev_set_sfix32_fs_internal): New.
2521 (__ev_set_ufix32_fs_internal): New.
2522 (__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal.
2523 (__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal.
2524 (__ev_set_upper_sfix32_fs): Call function.
2525 (__ev_set_lower_sfix32_fs): Same.
2526 (__ev_set_upper_ufix32_fs): Same.
2527 (__ev_set_lower_ufix32_fs): Same.
020a7b12 2528
d2dff06b
DR
25292002-11-25 Douglas B Rupp <rupp@gnat.com>
2530
2531 * gcc.c (do_spec_1): Reset delete_this_arg to zero.
2532
32f0ffb3
JT
25332002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
2534
2535 * config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1.
2536 * config/interix.h (HANDLE_SYSV_PRAGMA): Likewise.
2537 * config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2538 * config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise.
2539 * config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise.
2540 * config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
2541 * config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise.
2542 * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise.
2543 * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
2544 * config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2545 * config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise.
2546 * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise.
2547 * config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise.
2548 * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise.
2549 * config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise.
2550 * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise.
2551 * config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise.
2552 * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise.
2553 * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise.
2554 * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise.
2555 * config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2556 * config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise.
2557 * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise.
2558 * config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before
2559 defining.
2560 * config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise.
2561 * config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise.
2562
160f9a4c
DP
25632002-11-25 Dave Pitts <dpitts@cozx.com>
2564
2565 * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
2566
3c0f5389
KH
25672002-11-25 Kazu Hirata <kazu@cs.umass.edu>
2568
2569 * config/h8300/h8300.md (an anonymous pattern): New.
2570
83bbd9b6
RH
25712002-11-25 Richard Henderson <rth@redhat.com>
2572
2573 * alias.c (find_base_value): Use new_reg_base_value if it's live.
2574 (copying_arguments): Make boolean.
2575
7c64a860
JT
25762002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
2577
2578 * gcc.c (static_spec_functions): Add if-exists-else spec
2579 function.
2580 (if_exists_else_spec_function): New function.
2581 * doc/invoke.texi: Document the if-exists-else spec function.
2582
2583 * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
2584 "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
2585
a4967b8d
JT
25862002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
2587
2588 * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
2589 "netbsd.h netbsd-elf.h" in tm_file. Set tmake_file to
2590 "${tmake_file} rs6000/t-netbsd".
2591 * config/rs6000/netbsd.h: Rewrite.
2592 * config/rs6000/t-netbsd: New file.
2593
a91dce31
KH
25942002-11-25 Kazu Hirata <kazu@cs.umass.edu>
2595
2596 * config/h8300/h8300.md (an anonymous pattern): Relax the
2597 condition for the pattern.
2598
fe29a4ea
AH
25992002-11-25 Aldy Hernandez <aldyh@redhat.com>
2600
2601 * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
2602 evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
2603 evmwlssfanw, evmwlsmfanw.
2604
2605 * config/rs6000/rs6000.c (bdesc_2arg): Same.
2606
2607 * config/rs6000/spe.md: Same for patterns.
2608
b77f3744
CE
26092002-11-25 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
2610
2611 PR c/8639
2612 * fold-const.c (extract_muldiv): Don't propagate division unless
2613 both arguments are multiples of C.
2614
5dafd282
AH
26152002-11-25 Andrew Haley <aph@redhat.com>
2616
249e6b63
CH
2617 * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
2618 * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
2619 * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
2620 * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
5dafd282 2621
4977bab6
ZW
2622Sun Nov 24 10:38:04 CET 2002 Jan Hubicka <jh@suse.cz>
2623
2624 * i386.c (x86_use_ffreep): New global variable.
2625 * i386.h (x86_use_frfeep): Declare
2626 (TARGET_USE_FFREEP): New macro
2627 * i386.md (movs?f*): Use freep when asked for.
2628 (push?f): Remove dead code.
2629
92d4b8a0
KH
26302002-11-24 Kazu Hirata <kazu@cs.umass.edu>
2631
2632 * config/h8300/h8300.c (h8300_init_once): Fix a typo in the
2633 target help message.
2634
1169f9e0
JT
26352002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
2636
2637 * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
2638 extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
2639 crtbeginT.o".
2640 (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
2641 (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
2642 to "" for a.out configurations.
2643 * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
2644
adde288a
JT
26452002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
2646
2647 * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
0dbc3651 2648 NETBSD_CPP_SPEC directly.
adde288a
JT
2649 (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec. Add
2650 netbsd_endfile_spec.
2651 (ENDFILE_SPEC): Use %(netbsd_endfile_spec).
2652
1ebe8c03
JT
26532002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
2654
2655 * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
2656 NETBSD_STARTFILE_SPEC.
2657 (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
2658 (ENDFILE_SPEC): Likewise.
2659 * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
2660
bdabc150
AS
26612002-11-24 Andreas Schwab <schwab@suse.de>
2662
523cb499
AS
2663 * Makefile.in (install-driver): Remove versioned link before
2664 trying to create it.
2665
bdabc150
AS
2666 * config/m68k/m68k.c: Fix typo in last change defining
2667 TARGET_ASM_CAN_OUTPUT_MI_THUNK.
2668
4977bab6
ZW
26692002-11-23 H.J. Lu <hjl@gnu.org>
2670
2671 * aclocal.m4: Include ../config/accross.m4.
2672 (gcc_AC_COMPILE_CHECK_SIZEOF): Removed.
2673 (gcc_AC_C_COMPILE_ENDIAN): Removed.
2674 (gcc_AC_C_FLOAT_FORMAT): Check $ac_cv_c_bigendian
2675 instead of $ac_cv_c_compile_endian.
2676
2677 * configure.in: Replace gcc_AC_COMPILE_CHECK_SIZEOF with
2678 AC_COMPILE_CHECK_SIZEOF.
2679 Replace gcc_AC_C_COMPILE_ENDIAN with AC_C_BIGENDIAN_CROSS.
2680 * configure: Rebuild.
2681
56b8e164
KH
26822002-11-23 Kazu Hirata <kazu@cs.umass.edu>
2683
2684 * config/h8300/h8300.c (print_operand): Update the use of
2685 h8300_tiny_constant_address_p.
2686 (h8300_adjust_insn_length): Likewise.
2687 (h8300_tiny_constant_address_p): Check if the given rtx is a
2688 variable declared with __attribute__ ((tiny_data)).
2689
2bb74773
DJ
26902002-11-22 Dale Johannesen <dalej@apple.com>
2691
249e6b63 2692 * toplev.c (rest_of_compilation): Fix comments.
2bb74773 2693
199cbacc
GK
26942002-11-22 Geoffrey Keating <geoffk@apple.com>
2695
2696 * aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
2697 allow mmap from /dev/zero. Don't make decisions for the host
2698 based on presence or absence of /dev/zero on the build machine.
2699 (ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
2700 (AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
2701 * configure: Regenerate.
2702
42766f8d
DJ
27032002-11-22 Daniel Jacobowitz <drow@mvista.com>
2704
2705 * gcc.c (make_relative_prefix, split_directories)
2706 (free_split_directories): Removed.
2707
80486e06
DJ
27082002-11-22 Daniel Jacobowitz <drow@mvista.com>
2709
2710 * configure.in: Set insn=nop for DWARF-2 tests on ARM.
2711 * configure: Regenerated.
2712
41c3eb5d
KH
27132002-11-22 Kazu Hirata <kazu@cs.umass.edu>
2714
2715 * config/h8300/h8300.c (compute_a_shift_length): Fix the insn
2716 length computation when xor.l is output.
2717
4977bab6
ZW
27182002-11-21 Douglas B Rupp <rupp@gnat.com>
2719
2720 * alpha.md (movstrdi, clrstrdi): New VMS patterns.
2721 (call_vms_1, call_value_vms_1): Cleanup syntax.
2722
2723Thu Nov 21 19:20:27 CET 2002 Jan Hubicka <jh@suse.cz>
2724
2725 * athlon.md (define_atuomaton): Add athlon_load.
2726 (athlon-double): New reservation.
2727 (athlon-ieu0): New CPU unit.
2728 (athlon-load?): Use athlon_load automaton.
2729 (*_k8 reservations): New.
2730 (other insn revervations): Activate for K8.
2731
2732Thu Nov 21 15:07:42 CET 2002 Jan Hubicka <jh@suse.cz>
2733
2734 * cfgrtl.c (verify_flow_info): Accept EDGE_CAN_FALLTHRU flag.
2735
57de2c8f
JW
27362002-11-21 Jim Wilson <wilson@redhat.com>
2737
2738 * config/rs6000/rs6000.c (function_arg): Set inner mode of SPE
2739 vectors to SI.
2740
58db834b
BW
27412002-11-21 Bob Wilson <bob.wilson@acm.org>
2742
2743 * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare.
2744 * config/xtensa/xtensa.c (struct machine_function): Add
2745 incoming_a7_copied flag.
2746 (xtensa_copy_incoming_a7): Define.
2747 (xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7.
2748 * config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto.
2749
c05dbe81
JH
2750Thu Nov 21 23:52:04 CET 2002 Jan Hubicka <jH@suse.cz>
2751
2752 * i386-protos.h (x86_64_sign_extended_value): Fix prototype.
2753 * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
0dbc3651 2754 x86_64_nonmemory_operand, x86_64_movabs_operand,
c05dbe81
JH
2755 x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
2756 ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
2757 (local_symbolic_operand): Do not care the 64bit limits.
2758 (x86_64_sign_extended_value): Remove allow_rip support.
2759 (legitimate_pic_address_disp_p): Handle all cases allowed
2760 with RIP addressing.
2761 (legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
2762 (legitimize_pic_address): Reorganize.
2763 * i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
2764
ff3afb56
JT
27652002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
2766
2767 * config.gcc (arm*-*-netbsdelf*): Enable configuration.
2768 * config/arm/netbsd-elf.h: New file.
2769
57c21a42
JT
27702002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
2771
2772 * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
2773 subtarget_asm_float_spec.
2774 (SUBTARGET_ASM_FLOAT_SPEC): Define, moving the
2775 defaults from...
2776 (ASM_SPEC): ...here. Use subtarget_asm_float_spec.
2777
3d5ee65b
NC
27782002-11-21 Nick Clifton <nickc@redhat.com>
2779
2780 * config/fr30/fr30.md (movsf_constant_store): Move code to
2781 detect 0.0 into fr30.c.
2782 * config/fr30/fr30-protos.h (fr30_const_double_is_zero):
2783 Prototype.
2784 * config/fr30/fr30.c (fr30_const_double_is_zero): New
2785 function. Return true if the rtx is 0.0.
2786
4d938a09
JT
27872002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
2788
2789 * config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL
2790 if -mlittle-endian is specified.
2791
1dda7ee4
RE
27922002-11-21 Richard Earnshaw <rearnsha@arm.com>
2793
2794 PR optimization/2903
2795 * arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1.
2796 (anddi_notsesidi_di): Likewise.
2797
7c143ed2
KH
27982002-11-21 Kazu Hirata <kazu@cs.umass.edu>
2799
2800 * config/h8300/h8300.c (print_operand): Use
2801 h8300_eightbit_constant_address_p and
2802 h8300_tiny_constant_address_p.
2803 (h8300_adjust_insn_length): Likewise.
2804 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove.
2805 (TINY_CONSTANT_ADDRESS_P): Likewise.
2806 (OK_FOR_U): Use eightbit_constant_address_p.
2807
b5798b2a
UW
28082002-11-21 Ulrich Weigand <uweigand@de.ibm.com>
2809
2810 * config/s390/libgcc-libc.ver: Add multilib support.
2811 * config/s390/linux.h (MULTILIB_DEFAULT): Define.
0dbc3651
ZW
2812 * config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
2813 MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC,
b5798b2a
UW
2814 EXTRA_MULTILIB_PARTS): Define.
2815
c231c91e
RE
28162002-11-21 Richard Earnshaw <rearnsha@arm.com>
2817
2818 * arm.c (arm_get_frame_size): A leaf function does not need its
2819 stack padding to an aligned boundary if it has no frame.
2820 (thumb_get_frame_size): Likewise.
2821
4977bab6
ZW
2822Wed Nov 20 22:25:53 CET 2002 Jan Hubicka <jh@suse.cz>
2823
2824 * x86-64.h (MCOUNT_NAME): Fix typo in my previous patch.
2825 (override_options): Likewise.
2826
2827Wed Nov 20 19:07:17 CET 2002 Jan Hubicka <jh@suse.cz>
2828
2829 * config.gcc: Add k8 target alias support
2830 * i386.c (_cost): Declare costs for various variants of divides and
2831 multiplies.
2832 (k8_cost): New.
2833 (m_K8, m_ATHLON_K8): New macros.
2834 (x86_use_leave, x86_push_memory, x86_movx, x86_unroll_strlen,
2835 x86_cmove, x86_3dnow_a, x86_deep_branch, x86_use_fiop,
2836 x86_promote_QImode, x86_sub_esp_?, x86_add_esp_?,
2837 x86_integer_DFmode_moves, x86_partial_reg_dependency,
2838 x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
2839 x86_prologue_using_move, x86_epilogue_using_move,
2840 x86_arch_always_fancy_math_387, x86_sse_partial_regs,
2841 x86_sse_typeless_stores): Set for K8
2842 (override_options): Add k8 support; fix athlon alignment;
2843 complain about non-x86-64 capable CPU being used in x86-64 compilation.
2844 (ix86_issue_rate): Set for K8.
2845 (ix86_adjust_cost, ia32_use_dfa_pipeline_interface,
2846 x86_machine_dependent_reorg): Handle K8 like
2847 * i386.h
2848 (x86_costs): Change mult_init and divide into array.
2849 (TARGET_K8, TARGET_ATHLON): New macros.
2850 (MODE_INDEX): New macro.
2851 (RTX_COST): Use new costs.
2852 (TARGET_CPU_CPP_BUILTINS): Define __k8__ and __tune_k8__.
2853 (TARGET_CPU_DEFAULT_NAMES): Add k8
2854 (TARGET_CPU_DEFAULT_k8): New constant
2855 (enum processor_type): Add PROCESSOR_K8.
2856 * i386.md (cpu attribute): Add k8.
2857
2858 * invoke.texi: Document -march=k8.
2859
2860 * i386.md (type attribute): Add leave
2861 (mode attribute): Remove unknownfp.
2862 (length_immediate, modrm, memory attributes): Handle leave correctly.
2863 (fp comparison patterns): Determine FP mode.
2864 (leave, leave_rex64): Remove special cases.
2865 * ppro.md (ppro_uops, ppro_p2): Add leave
2866 * pentiun.md (pent_pop): Handle leave too.
2867 * k6.md (k6_load): Handle leave.
2868 * athlon.md (athlon_leave, athlon_pop): Fix.
2869 (athlon_decode): Handle leave.
2870
27e58a70
SE
28712002-11-20 Steve Ellcey <sje@cup.hp.com>
2872
2873 * emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type
2874 to component type using GET_MODE_INNER.
2875 * expr.c (emit_move_insn_1): Ditto.
2876 * optabs.c (expand_binop): Ditto.
2877 (expand_unop): Ditto.
2878 (expand_complex_abs): Ditto.
2879
964b104a
DR
28802002-11-20 Douglas B Rupp <rupp@gnat.com>
2881
2882 * hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64).
2883
3d4b192a
DD
28842002-11-20 DJ Delorie <dj@redhat.com>
2885
2886 * config/stormy16/stormy16.c (s16builtins,
2887 xstormy16_init_builtins, xstormy16_expand_builtin): New.
2888 * config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New.
2889
414d23ae
HPN
28902002-11-20 Hans-Peter Nilsson <hp@bitrange.com>
2891
2892 * Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables.
2893 (DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES).
2894 (executing gencheck, genconfigs, genconditions, genflags,
2895 gencodes, genconstants, genemit, genrecog, genopinit, genextract,
2896 genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds,
2897 gengtype, genprotos): Prepend $(RUN_GEN).
2898 * configure.in: Move host compiler tests before --enable-checking
2899 tests.
2900 (--enable-checking=valgrind): New.
2901 * config.in, configure: Regenerate.
2902 * cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2903 Define as empty.
2904 (read_include_file): When doing the mmap+1 trick,
2905 valgrind-annotate the byte after the mmap:ed area as readable.
2906 (purge_cache): Remove above annotation.
2907 * gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend
2908 VALGRIND_PATH -q to each command.
2909
9a0a7d5d
HPN
2910 * ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2911 Define as empty.
2912 (ggc_realloc): Update valgrind annotations.
2913 * ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2914 Define as empty.
c14bc6db 2915 (alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to
9a0a7d5d
HPN
2916 valgrind-annotate memory.
2917
3ba2436a
UW
29182002-11-20 Ulrich Weigand <uweigand@de.ibm.com>
2919
2920 * recog.c (constrain_operands): Prefer exact match over reloadable
2921 EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT.
2922
2923 * reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT
2924 operands in Pmode.
2925
a9b6f1e7 29262002-11-20 Eric Botcazou <ebotcazou@libertysurf.fr>
02a362d9
EB
2927
2928 PR c/8518
2929 * c-decl.c (duplicate_decls): Outline the second definition
2930 of an extern inline function in all cases.
2931
5354730b
RS
29322002-11-20 Richard Sandiford <rsandifo@redhat.com>
2933
2934 * stor-layout.c (place_field): Update rli->offset as well as
2935 rli->bitpos.
2936
5720520f
RS
29372002-11-20 Richard Sandiford <rsandifo@redhat.com>
2938
2939 * sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED.
2940
4392ebd3
RS
29412002-11-20 Richard Sandiford <rsandifo@redhat.com>
2942
2943 * config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions
2944 into a libcall block.
2945 (divsi3): Likewise divsi3_i4_media.
2946
3748bd9e
RS
29472002-11-20 Richard Sandiford <rsandifo@redhat.com>
2948
2949 * global.c (find_reg): Check HARD_REGNO_NREGS before kicking
2950 out another register.
2951
bc02f8d3
JJ
29522002-11-20 Jakub Jelinek <jakub@redhat.com>
2953
2954 * combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
2955 (not just mask) are set in C.
2956
4977bab6
ZW
29572002-11-19 Steven Bosscher <steven.bosscher@usafa.af.mil>
2958
2959 * config/mips/vr.h (DRIVER_SELF_SPECS): Change %{<mgp32} to %<mgp32.
2960
29612002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2962
2963 * profile.c (index_counts_file): Fix obvious mistake.
2964
29652002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2966
2967 * Makefile.in (profile.o): Add hashtab.h dependency.
2968 * gcov-io.h (GCOV_SUMMARY_LENGTH): New.
2969 * profile.c: Include hashtab.h.
2970 (htab_counts_index_hash, htab_counts_index_eq, htab_counts_index_del,
2971 cleanup_counts_index, index_counts_file, struct section_reference,
2972 struct da_index_entry, counts_file_name, counts_file_index): New.
2973 (get_exec_counts, init_branch_prob): Modified.
2974
29752002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
2976
2977 * config.gcc (sh*-*-linux*): Add t-slibgcc-elf-ver and t-linux
2978 to tmake_file. Remove setting gas and gnu_ld here.
2979 * config/sh/libgcc-glibc.ver: New file.
2980 * config/sh/t-linux (EXTRA_MULTILIB_PARTS): Add crtbeginT.o.
2981 (SHLIB_MAPFILES): New.
2982 * config/sh/linux.h (MD_EXEC_PREFIX): Undefine.
2983 (MD_STARTFILE_PREFIX): Likewise.
2984 (HANDLE_PRAGMA_PACK_PACK_PUSH_POP): Define.
2985 (DWARF2_UNWIND_INFO): Redefine.
2986 (ASM_PREFERRED_EH_DATA_FORMAT): Define.
2987 (LINK_EH_SPEC): Redefine.
2988 (MD_FALLBACK_FRAME_STATE_FOR): Define except for SH-media.
2989 (SH_FALLBACK_FRAME_FLOAT_STATE): Define.
2990 (SH_DWARF_FRAME_GP0, SH_DWARF_FRAME_FP0, SH_DWARF_FRAME_XD0,
2991 SH_DWARF_FRAME_BT0, SH_DWARF_FRAME_PR, SH_DWARF_FRAME_PR_MEDIA,
2992 SH_DWARF_FRAME_GBR, SH_DWARF_FRAME_MACH, SH_DWARF_FRAME_MACL,
2993 SH_DWARF_FRAME_PC, SH_DWARF_FRAME_SR, SH_DWARF_FRAME_FPUL,
2994 SH_DWARF_FRAME_FPSCR): Likewise.
2995 * config/sh/sh-protos.h (sh_set_return_address): Declare.
2996 * config/sh/sh.c (calc_live_regs): Count EH_RETURN_DATA_REGNO
2997 registers if the current function calls EH return.
2998 (sh_expand_epilogue): Handle EH stack adjustments.
2999 (sh_set_return_address): New function.
3000 * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
3001 Don't abort even if the number is mapped to -1.
3002 (EH_RETURN_DATA_REGNO): Define.
3003 (EH_RETURN_STACKADJ_RTX): Define.
3004 * config/sh/sh.md (UNSPEC_EH_RETURN): New.
3005 (eh_return): New pattern.
3006 (eh_set_ra_di, eh_set_ra_si): Likewise.
3007 Add splitter to perform EH return after reload.
3008
3009Tue Nov 19 12:52:07 2002 J"orn Rennecke <joern.rennecke@superh.com>
3010
3011 * stor-layout.c (excess_unit_span): New function.
3012 (place_field): Use it.
3013
30142002-11-19 Andreas Schwab <schwab@suse.de>
3015
3016 * unwind.h (_Unwind_GetTextRelBase): Revert last change, this is
3017 not valid in C++.
3018
30192002-11-19 Nathanael Nerode <neroden@gcc.gnu.org>
3020
3021 * configure.in, Makefile.in: Correct BUILD/HOST confusion.
3022 * configure: Regenerate.
3023
3024Tue Nov 19 00:11:44 CET 2002 Jan Hubicka <jh@suse.cz>
3025
3026 * convert.c (strip_float_extensions): New function.
3027 (convert_to_real): Optimize some cases.
3028
3bdcef4d
AJ
30292002-11-19 Andreas Jaeger <aj@suse.de>
3030
3031 * loop.c (record_giv): Initialize not_replaceable.
3032 (check_final_value): Likewise.
3033
ec5b0c68
KH
30342002-11-19 Kazu Hirata <kazu@cs.umass.edu>
3035
3036 * config/h8300/h8300.c (h8300_init_once): Replace 1 with
3037 MASK_H8300S.
3038
30392002-11-19 Vijay L. Khuspe <vijayk1@kpit.com>
39ba95b5
VK
3040
3041 * config/h8300/h8300.c (h8300_init_once): Allow -mn switch
3042 only if -mh or -ms present.
3043 (h8300_eightbit_constant_address_p): Support the normal mode.
3044 (h8300_tiny_constant_address_p): Likewise.
3045 * config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
3046 (POINTER_SIZE): Add 16 bit pointer for the normal mode.
3047 (Pmode): Evaluate to HImode for the normal mode.
3048 (SIZE_TYPE): Evaluate to unsigned int for normal mode.
3049 (PTRDIFF_TYPE): Evaluate to int for the normal mode.
3050 (ASM_WORD_OP): Evaluate to word for the normal mode.
3051 * config/h8300/h8300.md (tablejump_normal_mode): New.
3052 (indirect_jump_normal_mode): New.
3053 * config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
3054 directory.
3055 (MULTILIB_DIRNAMES): Create target dependent directory
3056 'normal'.
249e6b63 3057 (MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
39ba95b5
VK
3058 * doc/invoke.texi (gccoptlist): Describe the new switch -mn.
3059
efcc7037
JH
3060Tue Nov 19 23:50:56 CET 2002 Jan Hubicka <jh@suse.cz>
3061
3062 * i386.md (length_immediate): Do not refer to insn address.
3063 (jcc*, jmp patterns): Compute length explicitly.
3064
30652002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr>
35f1c975
EB
3066
3067 PR c/8588
3068 * optabs.c (expand_binop): Convert CONST_INTs in shift
3069 operations too.
3070
a500466b
RS
30712002-11-19 Roger Sayle <roger@eyesopen.com>
3072
3073 * gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note.
3074
3b161153
KH
30752002-11-19 Kazu Hirata <kazu@cs.umass.edu>
3076
3077 * config/h8300/h8300.md (an anonymous pattern): Relax the
3078 condition to accept the same operands and/or subregs.
3079
85af47b9
DJ
30802002-11-19 Daniel Jacobowitz <drow@mvista.com>
3081
3082 * config/sh/sh.c (gen_shl_and): Revert previous patch.
3083 * config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on
3084 reload_completed.
3085
9675a91e
KH
30862002-11-19 Kazu Hirata <kazu@cs.umass.edu>
3087
3088 * config/h8300/h8300.c (print_operand): Update the use of
3089 EIGHTBIT_CONSTANT_ADDRESS_P.
3090 (h8300_adjust_insn_length): Likewise.
3091 (h8300_eightbit_constant_address_p): Check if the given rtx is
3092 a variable with __attribute__((eightbit_data)).
3093 * config/h8300/h8300.h (OK_FOR_U): Update the use of
3094 EIGHTBIT_CONSTANT_ADDRESS_P.
3095
7b61fa4d
GP
30962002-11-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3097
3098 * doc/contrib.texi (Contributors): Add self as second contact in
3099 addition to Jeff Law.
3100
50aadcbc
AJ
31012002-11-19 Andreas Jaeger <aj@suse.de>
3102
3103 * tree-inline.c: Move prototpyes of find_alloca_call_1 and
3104 find_alloca_call to right place.
3105
dc65cd60
KH
31062002-11-19 Kazu Hirata <kazu@cs.umass.edu>
3107
3108 * cppfiles.c: Fix formatting.
3109
f3226a90
JT
31102002-11-19 Jason Thorpe <thorpej@wasabisystems.com>
3111
3112 * gcc.c (The Specs Language): Document spec functions.
3113 (static_spec_functions, lookup_spec_function)
3114 (eval_spec_function, handle_spec_function)
3115 (if_exists_spec_function, alloc_args): New.
3116 (execute): Abort if processing_spec_function is true.
3117 (do_spec_1): Hand off spec to handle_spec_function if %:
3118 is encountered. If processing_spec_function is true,
3119 end any pending argument when the end of the string is reached.
3120 (main): Use alloc_args to allocate the initial argument vector.
3121 * gcc.h (struct spec_function): New.
3122 (lang_specific_spec_functions): New extern.
3123
3124 * config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
3125 (ENDFILE_SPEC): Add if-exists(crtn%O%s).
3126 * config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
3bdcef4d 3127
f3226a90
JT
3128 * doc/invoke.texi: Document spec functions.
3129
3130 * cppspec.c (lang_specific_spec_functions): New.
3131 * gccspec.c: Likewise.
3132
08c42743
SE
31332002-11-18 Steve Ellcey <sje@cup.hp.com>
3134
3135 * config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
3136 (FIXUNS_TRUNCTFDI2_LIBCALL): New.
3137 (fixunstfsi_libfunc): Change.
3138 (fixunstfdi_libfunc): Change.
3139 (sdiv_optab): Don't zero out SImode handler.
3140 (udiv_optab): Don't zero out SImode handler.
3141 (smod_optab): Don't zero out SImode handler.
3142 (umod_optab): Don't zero out SImode handler.
3143
8128cccf
NB
31442002-11-18 Neil Booth <neil@daikokuya.co.uk>
3145
3146 PR preprocessor/8524
3147 * cpplib.c (run_directive): Remove previous kludge to _Pragma.
3148 Add a new one in its place, which hopefully works.
3149 (skip_rest_of_line): Change test for bottom-of-context-stack.
3150
95199202
JH
3151Mon Nov 18 21:29:03 CET 2002 Jan Hubicka <jh@suse.cz>
3152
3153 * i386.md (addqi_1_slp): Fix output template.
3154 (subqi_1_slp): Fix type.
3155
c986baf6
JH
3156Sun Nov 17 00:01:28 CET 2002 Jan Hubicka <jh@suse.cz>
3157
3158 * calls.c (alloca_call_p): New global function.
3159 * tree.h (alloca_call_p): New.
3160 * tree-inline.c (inlinable_function_p): Do not inline when
3161 function calls alloca.
3162 (find_alloca_call, find_alloca_call_1): New functions.
3163
ac655495
KH
31642002-11-18 Kazu Hirata <kazu@cs.umass.edu>
3165
3166 * config/h8300/h8300.md (*andorqi3): Use bor between bld and
3167 bst. Update the insn length.
3168 (*andorhi3): Likewise.
3169 (*andorsi3): Likewise.
3170
ea4210ef
RS
31712002-11-18 Richard Sandiford <rsandifo@redhat.com>
3172
3173 * config/sh/sh-protos.h (sh_mark_label): Declare.
3174 * config/sh/sh.c (sh_mark_label): New function, taken from
3175 movdi_const, but fixing the case when the address has an addend.
3176 * config/sh/sh.md (movdi_const, movdi_const_32bit): Use it.
3177
3503150c
RS
31782002-11-18 Richard Sandiford <rsandifo@redhat.com>
3179
3180 * config/sh/sh.c (pool_node): New field: part_of_sequence_p.
3181 (add_constant): Set it.
3182 (dump_table): Don't reorder a constant if part_of_sequence_p.
3183 (machine_dependent_reorg): Assume that float constants will
3184 stay in their original order if used as a sequence.
3185
180bde4f
RS
31862002-11-18 Richard Sandiford <rsandifo@redhat.com>
3187
3188 * config/sh/sh.c (calc_live_regs): Update check for PIC liveness
3189 in compact code.
3190
e300c78c
RS
31912002-11-18 Richard Sandiford <rsandifo@redhat.com>
3192
3193 * config/sh/sh.md (initialize_trampoline): Do not force the
3194 trampoline address into R0_REGS here.
3195
4977bab6
ZW
3196Sun Nov 17 14:01:09 CET 2002 Jan Hubicka <jh@suse.cz>
3197
3198 * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
3199 absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
3200 (neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
3201 generate unnecesary subregs.
3202
ec748ec8
KH
32032002-11-17 Kazu Hirata <kazu@cs.umass.edu>
3204
3205 * df.c: Fix formatting.
3206
cf0cec73
KH
32072002-11-17 Kazu Hirata <kazu@cs.umass.edu>
3208
3209 * config/h8300/h8300.md (two anonymous patterns): Fix insn
3210 lengths.
3211
d2b2c7cd
DJ
32122002-11-17 Daniel Jacobowitz <drow@mvista.com>
3213
3214 * sh.c (gen_shl_and): Don't create a zero_extend if the operand
3215 is not an arith_reg_operand.
3216
6ddb1bc1
GS
32172002-11-17 Graham Stott <graham.stott@btinternet.com>
3218
3219 * real.c (real_to_decimal): Fix buffer overrun when buffer size
3220 is smaller than representation.
3221
5ab2f7b7
KH
32222002-11-17 Kazu Hirata <kazu@cs.umass.edu>
3223
3224 * builtins.c: Fix formatting.
3225
4977bab6
ZW
3226Sat Nov 16 16:49:58 CET 2002 Jan Hubicka <jh@suse.cz>
3227
3228 * i386.md (truncdfsf2_1_sse, truncdfsf2_1_sse_nooverlap, truncdfsf2_2,
3229 floats?dff2_i387):
3230 Work around regclass stupidity.
3231 (truncdfsf_2_1_sse splitter): Accept !TARGET_PARTIAL_SSE_REGS
3232
3233Sat Nov 16 02:17:48 CET 2002 Jan Hubicka <jh@suse.cz>
3234
3235 * i386.md (fop_df_6): New pattern.
3236 (fop_xf_4, fop_xf_5): Handle both SF and DFmode extensions.
3237 (fop_xf_6): Rewrite
3238 (fop_xf_7): Delete.
3239 (fop_tf_4, fop_tf_5): Handle both SF and DFmode extensions.
3240 (fop_tf_6): Rewrite
3241 (fop_tf_7): Delete.
3242
0d964e40
KH
32432002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3244
3245 * config/h8300/h8300.md (two anonymous patterns): Fix typos.
3246
6d55e887
KH
32472002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3248
3249 * config/h8300/h8300.md: Fix formatting.
3250
4d5ad877
KH
32512002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3252
3253 * config/h8300/h8300.md: Replace spaces with tabs.
3254 * config/h8300/t-h8300: Remove a trailing empty line.
3255
17fa74a2
KH
32562002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3257
3258 * tlink.c: Fix formatting.
3259
9caa3eb2
DE
32602002-11-16 David Edelsohn <edelsohn@gnu.org>
3261
68a7da97 3262 PR 8362
9caa3eb2
DE
3263 * config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function.
3264 * config/rs6000/rs6000.md (movti_string): Remove output modifier
3265 when scratch register never needed.
3266 (ldmsi[3-8]): New patterns.
3267
476c5eb6
KH
32682002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3269
3270 * hard-reg-set.h: Follow spelling conventions.
3271 * real.c: Likewise.
3272 * target.h: Likewise.
3273
5dab517f
JJ
32742002-11-16 Jakub Jelinek <jakub@redhat.com>
3275
3276 * config/i386/x86-64.h (MCOUNT_NAME): Change into string literal.
3277
7e1a450d
KH
32782002-11-16 Kazu Hirata <kazu@cs.umass.edu>
3279
3280 * optabs.c: Fix formatting.
3281
1b245ade
JH
3282Sat Nov 16 02:06:02 CET 2002 Jan Hubicka <jh@suse.cz>
3283
3284 * athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1
3285 * i386.md (attribute type): Add type shift1 and rotate1.
3286 (*_slp): Rewrite to have just two operands to avoid reload problems.
3287
6368a493
KH
32882002-11-15 Kazu Hirata <kazu@cs.umass.edu>
3289
3290 * config/h8300/h8300.md (4 anonymous patterns): New.
3291
737c38d1
GK
32922002-11-15 Geoffrey Keating <geoffk@apple.com>
3293
3294 * params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem.
3295 * doc/invoke.texi: Correct description of what needs to be done to
3296 force collection at every ggc_collect call.
3297
2120e3cd
UW
32982002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
3299
3bdcef4d 3300 * config/s390/s390.c (optimization_options): Set
2120e3cd
UW
3301 flag_asynchronous_unwind_tables to 1 by default.
3302
18789f4e
UW
33032002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
3304
3305 * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
3306
a5fa1ecd
JH
3307Fri Nov 15 14:54:19 CET 2002 Jan Hubicka <jh@suse.cz>
3308
3309 * i386-protos.h (x86_function_profiler): New function
3310 * i386.h (MCOUNT_NAME): New.
3311 (PROFILE_COUNT_REGISTER): New.
a36fc5f8 3312 (FUNCTION_PROFILER): Move offline to ...
a5fa1ecd
JH
3313 * i386.c (x86_function_profiler) ... here; fix 64bit support
3314 * beos-elf.h (FUNCTION_PROFILER): Kill.
3315 (MCOUNT_NAME): New.
3316 * freebsd-aout.h (FUNCTION_PROFILER): Kill.
3317 (MCOUNT_NAME): New.
3318 (PROFILE_COUNT_REGISTER): New.
3319 * linux.h (FUNCTION_PROFILER): Kill.
3320 (MCOUNT_NAME): New.
3321 * x86-64.h (FUNCTION_PROFILER): Kill.
3322 (MCOUNT_NAME): New.
3323 * freebsd.h (FUNCTION_PROFILER): Kill.
3324 (MCOUNT_NAME): New.
3325
1741620c
JD
33262002-11-14 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
3327
3328 * config/arm/arm.h (EXPAND_BUILTIN_VA_ARG,
3329 FUNCTION_ARG_PASS_BY_REFERENCE): Define.
3330 * config/arm/arm.c (arm_va_arg,
3331 arm_function_arg_pass_by_reference): New.
3332 * config/arm/arm-protos.h: Add prototypes.
3333
24985beb
KH
33342002-11-14 Kazu Hirata <kazu@cs.umass.edu>
3335
3336 * gthr-single.h: Fix formatting.
3337
fa7b533b
ZW
33382002-11-14 Zack Weinberg <zack@codesourcery.com>
3339
3340 * tree.c (tree_vec_elt_check_failed): New function.
3341 * tree.h (TREE_VEC_ELT_CHECK): New checking macro.
3342 (TREE_VEC_ELT): Use it.
3343
3344 * tree-inline.c (optimize_inline_calls): Don't copy a
3345 zero-length vector.
3346
9fc910d1
GDR
33472002-11-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
3348
3349 * diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text.
3350
7eca317a
JJ
33512002-11-14 Jakub Jelinek <jakub@redhat.com>
3352
3353 * varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if
3354 both operands contain local relocations.
3355 (categorize_decl_for_section): Don't use mergeable sections if
3356 initializer has any relocations.
3357
57751dd6
KH
33582002-11-14 Kazu Hirata <kazu@cs.umass.edu>
3359
3360 * gthr-vxworks.h: Fix formatting.
3361
f702e700
JJ
33622002-11-13 Janis Johnson <janis187@us.ibm.com>
3363
3364 * doc/install.texi (Testing): Document extra Java testing.
3365 * doc/sourcebuild.texi (Test Suites): Document libgcj testing.
3366
08ec53e7
JDA
33672002-11-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
3368
3369 * pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the
3370 beginning of the spec.
3371 (LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete.
3372 (LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable. Add comment
3373 regarding problems with global constructors when using GNU ld.
3374
e6179f45
KH
33752002-11-13 Kazu Hirata <kazu@cs.umass.edu>
3376
3377 * gthr-solaris.h: Fix formatting.
3378
fe83a9ce
KH
33792002-11-13 Kazu Hirata <kazu@cs.umass.edu>
3380
3381 * gthr-posix.h: Fix formatting.
3382
4977bab6 33832002-11-12 Devang Patel <dpatel@apple.com>
4977bab6
ZW
3384 * gcc.c (display_help): Two new options -Xpreprocessor and -Xassembler.
3385 (process_command): Same.
3386 * doc/invoke.texi: Info about these two new options.
3387
eed13f9b
KH
33882002-11-12 Kazu Hirata <kazu@cs.umass.edu>
3389
3390 * config/h8300/h8300.md (*andorsi3): New.
3391
e8a7b0c2
FS
33922002-11-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3393
3394 * doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement.
3395
94aec8dd
KH
33962002-11-12 Kazu Hirata <kazu@cs.umass.edu>
3397
3398 * config/h8300/h8300.c (tiny_constant_address_p): Parenthesize
3399 expressions appropriately.
3400
fc98f5cb
KH
34012002-11-12 Kazu Hirata <kazu@cs.umass.edu>
3402
3403 * gthr-win32.h: Fix formatting.
3404
e27051f7
KH
34052002-11-12 Kazu Hirata <kazu@cs.umass.edu>
3406
3407 * config/h8300/h8300.c (single_one_operand): Correctly compute
3408 mask when mode is SImode.
3409 (single_zero_operand): Likewise.
3410 * config/h8300/h8300.md (two new anonymous insns): New.
3411
10bb8214
GP
34122002-11-12 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3413
3414 * doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer
3415 to that entire project.
3416
ffe11c6b
RO
34172002-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3418
3419 * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old
3420 directories.
3421
3788cc17
ZW
34222002-11-11 Zack Weinberg <zack@codesourcery.com>
3423
3424 * params.def (ggc-min-expand, ggc-min-heapsize): New parameters.
3425 * doc/invoke.texi: Document them.
3426
3427 * ggc-page.c: Include params.h. Remove definitions of
3428 GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED. Replace
3429 GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define.
3430 (init_gcc): Don't set G.allocated_last_gc here.
3431 (ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and
3432 PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to
3433 perform collection.
3434 * ggc-simple.c: Similarly.
3435 * Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to
3436 dependencies.
3437
dd697f8c
KH
34382002-11-11 Kazu Hirata <kazu@cs.umass.edu>
3439
3440 * gthr-dce.h: Fix formatting.
3441
303b90b0
FS
34422002-11-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3443
3444 PR c/8467
3445 * stmt.c (tail_recursion_args): Handle DECL_MODE differing from the
3446 mode of DECL_RTL case.
3447
e8437165
JJ
34482002-11-11 Janis Johnson <janis187@us.ibm.com>
3449
3450 * doc/contrib.texi: Merge in the list from the libstdc++ web pages.
3451
12f5c45e
JH
3452Mon Nov 11 12:06:08 CET 2002 Jan Hubicka <jh@suse.cz>
3453
3454 * i386.c (construct_container): Fix handling of SSE_CLASS.
3455
f981a754
JS
34562002-11-10 Joel Sherrill <joel@gcc.gnu.org>
3457
3458 * config/m68k/t-crtstuff (crti.o): Use this...
3459 ($(T)crti.o): ... instead.
3460 (crtn.o): Use this...
3461 ($(T)crtn.o): ... instead.
3462
a9b6f1e7 34632002-11-10 Eric Botcazou <ebotcazou@libertysurf.fr>
45ed7228
EB
3464
3465 PR c/8439
3466 * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
3467 if there is something new to be simplified.
3468
2da4124d
L
34692002-11-10 H.J. Lu <hjl@gnu.org>
3470
3471 * calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
3472 * expr.c (PUSH_ARGS_REVERSED): Likewise.
3473
3474 * config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1.
3475
7bb9f927
ZW
34762002-11-10 Zack Weinberg <zack@codesourcery.com>
3477
3478 * config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here...
3479 * config/rs6000/linux.h, config/rs6000/linux64.h,
3480 config/rs6000/windiss.h: ... not here.
3481
d8986082
JT
34822002-11-10 Jason Thorpe <thorpej@wasabisystems.com>
3483
3484 * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define
3485 __ABICALLS__ if TARGET_ABICALLS.
3486
2e64c636
JH
3487Sun Nov 10 18:49:21 CET 2002 Jan Hubicka <jh@suse.cz>
3488
3489 * i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc.
3490
04e6db94
JM
34912002-11-10 Joseph S. Myers <jsm@polyomino.org.uk>
3492
3493 * c-decl.c (grokdeclarator): Make error for duplicate type
3494 qualifiers into a pedwarn, disabled for C99.
3495
e9986d3a
HPN
34962002-11-10 Hans-Peter Nilsson <hp@bitrange.com>
3497
3498 * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
3499 as FUNCTION_ARG_PASS_BY_REFERENCE.
3500
4977bab6
ZW
35012002-11-09 Zack Weinberg <zack@codesourcery.com>
3502
3503 * doc/install.texi: Add *-*-vxworks* specific installation
3504 instructions.
3505
3506 * config/vxlib.c: Rewrite using generation numbers to identify
3507 valid TSD keys.
3508
3509Sat Nov 9 00:10:54 CET 2002 Jan Hubicka <jh@suse.cz>
3510
3511 * i386.c (x86_machine_dependent_reorg): Fix even more side cases.
3512
581d9404
JDA
35132002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
3514
3515 * pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
3516
3517 * config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define.
3518 (hppa*64*-*-hpux11*): Likewise. Use elfos.h with gas.
3519 * pa.c (output_millicode_call): Use symbol difference rather than
3520 $PIC_pcrel$0 when using HP assembler.
3521 * pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or
3522 not elfos.h (i.e., gas) is being used.
3523 (ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
3524 DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON,
3525 ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME,
3526 ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL,
3527 ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when
3528 using elfos.h.
3529 (TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h.
3530 (DWARF2_ASM_LINE_DEBUG_INFO): Delete.
3531 (ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not
3532 using elfos.h.
3533 (TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
3534 BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h.
3535 (TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL):
3536 Don't define when not using elfos.h.
3537 (ASM_DECLARE_RESULT): Don't define.
3538 * doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler
3539 doesn't work on hppa64-hp-hpux11.
3540 (hppa*-hp-hpux11): Update.
3541
9f689d92
JT
35422002-11-09 Jason Thorpe <thorpej@wasabisystems.com>
3543
3544 * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC
3545 to the assembler if -mno-abicalls was specified.
3546
1c03af86
JDA
35472002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
3548
3549 * pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
3550 ASM_OUTPUT_DEF): Delete.
3551
57800e9e
NB
35522002-11-09 Neil Booth <neil@daikokuya.co.uk>
3553
3554 * c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit.
3555
4977bab6
ZW
35562002-11-08 Roger Sayle <roger@eyesopen.com>
3557
3558 * real.c (real_sqrt): Update comment with bibliographic reference.
3559
3560Fri Nov 8 13:33:58 CET 2002 Jan Hubicka <jh@suse.cz>
3561
3562 * i386.md (sse_loadss, sse2_loadsd): Fix expander.
3563
3564Fri Nov 8 13:25:41 CET 2002 Jan Hubicka <jh@suse.cz>
3565
3566 * i386.c (x86_machine_dependent_reorg): Fix handling of empty functions.
3567
3568Fri Nov 8 13:01:42 CET 2002 Jan Hubicka <jh@suse.cz>
3569
3570 * builtins.c (expand_builtin_mathfn): Handle floor/ceil/trunc/round/nearbyint
3571 (expand_builtin): Likewise.
3572 * builtins.def: Add
3573 __builtin_floor, __builtin_floorf, __builtin_floorl
3574 __builtin_ceil, __builtin_ceilf, __builtin_ceill
3575 __builtin_round, __builtin_roundf, __builtin_roundl
3576 __builtin_trunc, __builtin_truncf, __builtin_truncl
3577 __builtin_nearbyint, __builtin_nearbyintf, __builtin_nearbyintl.
3578 * genopinit.c (optabs): Initialize the new optabs.
3579 * optab.c (init_optabs): Likewise.
3580 * optabs.h (optab_index): Add OTI_floor, OTI_ceil, OTI_trunc,
3581 OTI_round, OTI_nearbyint.
3582 (floor_optab, ceil_optab, trunc_optab, round_optab, nearbyint_optab): New.
3583 * doc/md.texi: Document new named patterns.
3584 * doc/extend.texi (builtin functions) Document
3585 floor, floorf, floorl, ceil, ceilf,
3586 ceill, round, roundf, roundl, trunc,
3587 truncf, truncl, nearbyint, nearbyintf, nearbyintl.
3588
3589Fri Nov 8 11:36:11 CET 2002 Jan Hubicka <jh@suse.cz>
3590
3591 * i386.md (sse_movdfcc, sse_movsfcc): Fix typo in previous patch.
3592
489d6e8e
DJ
35932002-11-08 Dale Johannesen <dalej@apple.com>
3594
7bb9f927 3595 * dbxout.c (dbxout_type): Fix stabs info for vector types.
489d6e8e 3596
a4b1e653
NB
35972002-11-08 Neil Booth <neil@daikokuya.co.uk>
3598
3599 PR preprocessor/8497
3600 PR preprocessor/8501
3601 * cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't
3602 start a directive. In assembler, #NUM is not a line directive.
3603
e6e8c772
NB
36042002-11-08 Neil Booth <neil@daikokuya.co.uk>
3605
3606 * cppmain.c (cpp_preprocess_file): Loop to pop any -included
3607 buffers.
3608
ffdf5eae
KH
36092002-11-08 Kazu Hirata <kazu@cs.umass.edu>
3610
3611 * config/h8300/h8300.md (two anonymous test insns): New.
3612
8dd3ca88
JH
3613Fri Nov 8 11:20:19 CET 2002 Jan Hubicka <jh@suse.cz>
3614
3615 * jump.c (mark_jump_label): Handle subregs of label_refs.
3616
4977bab6
ZW
3617Thu Nov 7 21:54:22 CET 2002 Jan Hubicka <jh@suse.cz>
3618
3619 * i386.md (sse_movdfcc, sse_movsfcc): Avoid overactive matching.
3620 * i386.c (ix86_expand_fp_movcc): Match the reversed cases.
3621
07cf4226
DM
36222002-11-07 David Mosberger <davidm@hpl.hp.com>
3623
7bb9f927
ZW
3624 * config/ia64/crtend.asm: Include "auto-host.h".
3625 [HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array.
3626 * config/ia64/crtbegin.asm: Similarly.
3627 * config/ia64/t-ia64 (crtbegin.o): Include from current directory.
3628 (crtend.o, crtbeginS.o, crtendS.o): Likewise.
07cf4226 3629
7bb9f927
ZW
3630 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): New.
3631 * configure.in: Use it if --enable-initfini-array not specified.
3632 * doc/install.texi (Configuration): Document --enable-initfini-array.
07cf4226
DM
3633 * configure, config.in: Rebuild.
3634
0977774b 36352002-11-07 Jason Thorpe <thorpej@wasabisystems.com>
7bb9f927 3636
0977774b 3637 * config/arm/arm-protos.h (arm_get_frame_size)
7bb9f927 3638 (thumb_get_frame_size): New prototypes.
0977774b 3639 * config/arm/arm.c (arm_get_frame_size)
7bb9f927
ZW
3640 (thumb_get_frame_size): New functions.
3641 (use_return_insn, arm_output_epilogue, arm_output_function_epilogue)
3642 (arm_compute_initial_elimination_offset, arm_expand_prologue): Use
0977774b
JT
3643 arm_get_frame_size.
3644 (thumb_expand_prologue, thumb_expand_epilogue): Use
3645 thumb_get_frame_size.
3646 * config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define.
3647 (machine_function): Add frame_size member.
3648 (THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size.
3649
36502002-11-07 Richard Earnshaw <rearnsha@arm.com>
3651
3652 * arm.c (bit_count): Make argument unsigned long. Return unsigned.
3653 Adjust code to use portable unsigned bit manipulation.
3654 (insn_flags, tune_flags): Change type to unsigned.
3655 (struct processors): Make flags unsigned long.
3656 (arm_override_options): Change type of count and current_bit_count
3657 to unsigned.
3658
74c13308
RE
36592002-11-07 Richard Earnshaw <rearnsha@arm.com>
3660
3661 * arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %.
3662
e284643a
R
3663Thu Nov 7 15:50:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
3664
3665 * sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM.
3666
c2905f7b
JH
3667Thu Nov 7 11:18:01 CET 2002 Jan Hubicka <jh@suse.cz>
3668
3669 * reg-stack.c (compensate_edge): Fix sanity check.
3670
3cfe49da
GK
36712002-11-05 Geoffrey Keating <geoffk@apple.com>
3672
3673 * config.gcc: Don't create crtbegin, crtend on Darwin; do create
3674 crt2.o. Rearrange t-darwin makefiles.
3675 * crtstuff.c [OBJECT_FORMAT_MACHO]: Delete.
3676 * unwind-dw2-fde-darwin.c: New.
3677 * unwind-dw2-fde-glibc.c: Correct comment.
3678 * unwind-dw2-fde.c (__register_frame_info_bases)
3679 [DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end.
3680 (classify_object_over_fdes): Use last_fde.
3681 (add_fdes): Likewise.
3682 (linear_search_fdes): Likewise.
3683 * unwind-dw2-fde.h (struct object)
3684 [DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field.
3685 (last_fde): New.
3686 * config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o.
3687 (ENDFILE_SPEC): No crtend.o.
3688 * config/t-darwin: New.
3689 * config/i386/t-darwin: Delete.
3690 * config/darwin-crt2.c: New.
3691 * config/rs6000/t-darwin: Delete contents duplicated in t-rs6000
3692 or config/t-darwin.
3693
4977bab6
ZW
36942002-11-06 Douglas B Rupp <rupp@gnat.com>
3695
3696 * config/i386/i386-interix.h (TARGET_SUBTARGET_DEFAULT): Or
3697 MASK_MS_BITFIELD_LAYOUT
3698 (SUBTARGET_OVERRIDE_OPTIONS): Warn about and turn off
3699 MS bitfields for Objective-C.
3700 (PCC_BIT_FIELD_TYPE_TEST, GROUP_BITFIELDS_BY_ALIGN): Remove
3701 defines.
3702
3703 * config/i386/i386.c (ix86_ms_bitfield_layout): New function.
3704 (TARGET_MS_BITFIELD_LAYOUT_P): Define to above function.
3705 (TARGET_USE_MS_BITFIELD_LAYOUT): Define.
3706
3707 * config/i386/i386.h (MASK_MS_BITFIELD_LAYOUT: New mask.
3708 TARGET_USE_MS_BITFIELD_LAYOUT): New macro.
3709 (TARGET_SWITCHES): Add above mask.
3710
3711 * testsuite/gcc.dg/bf-ms-layout.c: New test case.
3712 * testsuite/gcc.dg/bf-no-ms-layout.c: New test case.
3713 * testsuite/gcc.dg/i386-bitfield1.c (dg-options): Add appropriate
3714 flags for interix.
3715
3716Wed Nov 6 18:54:47 2002 Alexandre Oliva <aoliva@redhat.com>
3717
3718 * config/mips/mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output
3719 .gpword/.gpdword for ABI_N32 and ABI_64 too, if using the GNU
3720 assembler.
3721 * config/mips/mips.md (tablejump_internal3): Output .cpadd
3722 before jump on ABI_N32 too.
3723 (tablejump_internal4): Ditto on ABI_64. Increase maximum
3724 length to match.
3725
3726Wed Nov 6 17:16:48 CET 2002 Jan Hubicka <jh@.suse.cz>
3727
3728 * i386.md (negsf splitter): Accept memory operand in second register.
3729 (abssf/absdf splitters): Simplify
3730 (sse_loadss, sse_loadsd): Turn into expander.
3731
5d7e6254
DE
37322002-11-06 David Edelsohn <edelsohn@gnu.org>
3733
3734 PR target/8480
3735 * config/rs6000/rs6000.md (movdi_internal64): Discourage
3736 FPR to FPR moves.
3737
4fc6ad08
JJ
37382002-11-06 Janis Johnson <janis187@us.ibm.com>
3739
3740 * doc/contrib.texi: Merge in the list from the Java web pages.
3741
fa123c53
DB
37422002-11-06 David O'Brien <obrien@FreeBSD.org>
3743
3744 * config/sparc/freebsd: Fix typo.
3745
81e5bc3d
JDA
37462002-11-06 John David Anglin <dave@hiauly1.hia.nrc.ca>
3747
3748 * pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define.
3749
021fa809
AO
37502002-11-06 Alexandre Oliva <aoliva@redhat.com>
3751
3752 * config/mips/mips.md (call_value_multiple_internal2): Use dla for
3753 non-SImode addresses.
3754
4977bab6
ZW
3755Tue Nov 5 14:34:36 CET 2002 Jan Hubicka <jh@suse.cz>
3756
3757 * i386.md (float_truncate SSE splitter): Ensure that operand is not
3758 stack register.
3759 (float SSE splitters): Reorder conditional.
3760
e9577224
BW
37612002-11-05 Bob Wilson <bob.wilson@acm.org>
3762
3763 * config/xtensa/elf.h (LIB_SPEC): Add "-lhal".
3764
a9b11d44
JDA
37652002-11-05 John David Anglin <dave2hiauly1.hia.nrc.ca>
3766
3767 * pa64-hpux.h (LIB_SPEC): Fix p and pg options.
3768 (STARTFILE_SPEC): Remove p and pg options.
3769
5c7cd663
AH
37702002-11-05 Andrew Haley <aph@redhat.com>
3771
3772 * fold-const.c (fold): Don't transform (a0 op compound(a1,a2))
3773 to (compound(a1,a0 op a2)) if a0 or a1 have side effects.
3774
97ab1175
RS
37752002-11-05 Richard Sandiford <rsandifo@redhat.com>
3776
3777 * config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to...
3778 * config/mips/mips.c (mips_cannot_change_mode_class): ...here.
3779
4977bab6
ZW
37802002-11-04 Zack Weinberg <zack@codesourcery.com>
3781
3782 * gthr-vxworks.h: Rewritten from scratch.
3783 * config/vxlib.c: New file.
3784 * config/t-vxworks: Add config/vxlib.c to LIB2FUNCS_EXTRA.
3785 * config/rs6000/t-vxworks: Add config/vxlib.c to
3786 LIB2FUNCS_EXTRA here too, because of clash with
3787 config/rs6000/t-ppccomm.
3788
2aff9508
DJ
37892002-11-04 Dale Johannesen <dalej@apple.com>
3790
7bb9f927
ZW
3791 * doloop.c (doloop_modify_runtime): Fix loop count computation
3792 for unrolled loops.
2aff9508
DJ
3793 * loop.c (loop_invariant_p): Support calling from unroller.
3794
e86e721f
UW
37952002-11-04 Ulrich Weigand <uweigand@de.ibm.com>
3796
3797 * config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx
3798 for comparison.
3799
cff9f8d5
AH
38002002-11-04 Aldy Hernandez <aldyh@redhat.com>
3801
3802 * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New.
3803
3804 * config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove.
3805 (CLASS_CANNOT_CHANGE_MODE): Remove.
3806 (CANNOT_CHANGE_MODE_CLASS): New.
3807
3808 * config/alpha/alpha.h: Same.
3809
3810 * config/ia64/ia64.h: Same.
3811
3812 * config/mips/mips.h: Same.
3813
3814 * config/s390/s390.h: Same.
3815
3816 * config/sh/sh.h: Same.
3817
3818 * config/pa/pa64-regs.h: Same.
3819
3820 * config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype.
7bb9f927 3821
cff9f8d5
AH
3822 * config/sh/sh.c (sh_cannot_change_mode_class): New.
3823
3824 * config/mips/mips-protos.h (mips_cannot_change_mode_class): Add
3825 prototype.
3826
3827 * config/mips/mips.c (mips_cannot_change_mode_class): New.
3828
3829 * doc/tm.texi (Register Classes): Remove
3830 CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P.
3831 Document CANNOT_CHANGE_MODE_CLASS.
3832
3833 * reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS.
3834 (push_reload): Same.
3835
3836 * simplify-rtx.c (simplify_subreg): Same.
3837
3838 * reload1.c (choose_reload_regs): Same.
3839
3840 * recog.c (register_operand): Same.
3841
3842 * regrename.c (mode_change_ok): Change to use new
3843 CANNOT_CHANGE_MODE_CLASS infrastructure.
3844
3845 * regclass.c (cannot_change_mode_set_regs): New.
3846 Declare subregs_of_mode.
3847 (regclass): Use subregs_of_mode.
3848 Remove references to reg_changes_mode.
3849 (init_reg_sets_1): Remove class_can_change_mode and
3850 reg_changes_mode code.
3851 (invalid_mode_change_p): New.
3852 (dump_regclass): Use invalid_mode_change_p instead of
3853 class_can_change_mode.
3854 (regclass): Same.
3855 (record_operand_costs): Do not set reg_changes_mode.
3856
3857 * local-alloc.c (struct qty): Remove changes_mode field.
3858 (alloc_qty): Remove changes_mode initialization.
3859 (update_qty_class): Remove set of changes_mode.
3860 (find_free_reg): Use subregs_of_mode.
3861
3862 * global.c (find_reg): Use subregs_of_mode info.
3863
3864 * rtl.h (cannot_change_mode_set_regs): New prototype.
3865 (invalid_mode_change_p): Same.
3866 (REG_CANNOT_CHANGE_MODE_P): New macro.
3867
3868 * flow.c (mark_used_regs): Calculate subregs_of_mode. Remove
3869 REG_CHANGES_MODE.
3870 (life_analysis): Clear subregs_of_mode.
3871
3872 * combine.c (subst): Pass class to CLASS_CANNOT_CHANGE_MODE_P.
3873 Remove use of CLASS_CANNOT_CHANGE_MODE.
3874 (simplify_set): Same.
3875 (gen_lowpart_for_combine): Calculate subregs_of_mode. Remove
3876 REG_CHANGES_MODE.
7bb9f927 3877
cff9f8d5
AH
3878 * regs.h: Add extern for subregs_of_mode;
3879 Include hard-reg-set and basic-block.
3880 (REG_CHANGES_MODE): Delete.
3881
4977bab6
ZW
38822002-11-03 Roger Sayle <roger@eyesopen.com>
3883
3884 * real.c (real_sqrt): New function to calculate square roots.
3885 * real.h (real_sqrt): Add function prototype.
3886 * builtins.c (fold_builtin): Fold sqrt of constant argument.
3887 * simplify-rtx.c (simplify_unary_operation): Simplify sqrt
3888 of constant argument.
3889
2ff363e0
JDA
38902002-11-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
3891
3892 * jump.c (never_reached_warning): Don't set contains_insn until the
3893 first line note is seen.
3894
cd1d3445
DE
38952002-11-03 David Edelsohn <edelsohn@gnu.org>
3896
3897 * config/rs6000/rs6000.md (movti_string): Use string instructions.
3898
c9fe6f9f
RS
38992002-11-03 Roger Sayle <roger@eyesopen.com>
3900
3901 PR c/7128
3902 * c-typeck.c (c_expand_asm_operands): Defend against
3903 error_mark_nodes in the output argument to avoid ICE.
3904
0b40e88e
EB
39052002-11-03 Eric Botcazou <ebotcazou@libertysurf.fr>
3906
3907 PR middle-end/8408
3908 * genrecog.c (preds): Handle ADDRESSOF.
3909 (validate_pattern): Mark it as an lvalue.
3910
dff9f1b6
DE
39112002-11-02 David Edelsohn <edelsohn@gnu.org>
3912
3913 * config/rs6000/rs6000.c (rs6000_override_options): Use string
3914 instructions when optimizing for size.
3915
46eefac4
KH
39162002-11-02 Kazu Hirata <kazu@cs.umass.edu>
3917
3918 * config/h8300/h8300.h: Fix comment typos.
3919 * config/h8300/h8300.md: Likewise.
3920 * config/h8300/lib1funcs.asm: Likewise.
3921
102b60d1
GP
39222002-11-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3923
3924 Revert this change:
3925
3926 *doc/install.texi (Installing GCC: Configuration): Clarify
3927 the only supported ways to configure gcc.
3928
46be79e7
KH
39292002-11-01 Kazu Hirata <kazu@cs.umass.edu>
3930
3931 * config/h8300/h8300.md (anonymous and:QI pattern): Use 'n'
3932 instead of 'O' for the constraint for the second operand.
3933
bec80a45
MM
39342002-11-01 Mark Mitchell <mark@codesourcery.com>
3935
3936 PR c++/8391
3937 * toplev.c (rest_of_compilation): Do not refuse to output code for
3938 an inline function in a local class.
3939
8df91177
DB
39402002-11-01 David O'Brien <obrien@FreeBSD.org>
3941
3942 * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
3943 (TRANSFER_FROM_TRAMPOLINE): Reformat.
3944 Add comment.
3945
616dc555
KH
39462002-11-01 Kazu Hirata <kazu@cs.umass.edu>
3947
3948 * config/h8300/h8300.h (CAN_ELIMINATE): Simplify.
3949
25a533a0
TM
39502002-11-01 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
3951
3952 * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New.
3953
dcffbade
SE
39542002-11-01 Steve Ellcey <sje@cup.hp.com>
3955
3956 * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove.
3957 (MASK_INLINE_DIV_THR): Remove.
3958 (TARGET_INLINE_DIV_LAT): Remove.
3959 (TARGET_INLINE_DIV_THR): Remove.
3960 (TARGET_INLINE_DIV): Remove.
3961 (MASK_INLINE_FLOAT_DIV_LAT): New macro.
3962 (MASK_INLINE_FLOAT_DIV_THR): New macro.
3963 (MASK_INLINE_INT_DIV_LAT): New macro.
3964 (MASK_INLINE_INT_DIV_THR): New macro.
3965 (TARGET_INLINE_FLOAT_DIV_LAT): New macro.
3966 (TARGET_INLINE_FLOAT_DIV_THR): New macro.
3967 (TARGET_INLINE_INT_DIV_LAT): New macro.
3968 (TARGET_INLINE_INT_DIV_THR): New macro.
3969 (TARGET_INLINE_FLOAT_DIV): New macro.
3970 (TARGET_INLINE_INT_DIV): New macro.
3971 * config/ia64/ia64.md (divsi3): Change to use new macros.
3972 (modsi3): Ditto.
3973 (udivsi3): Ditto.
3974 (umodsi3): Ditto.
3975 (divsi3_internal): Ditto.
3976 (divdi3): Ditto.
3977 (moddi3): Ditto.
3978 (udivdi3): Ditto.
3979 (umoddi3): Ditto.
3980 (divdi3_internal_lat): Ditto.
3981 (divdi3_internal_thr): Ditto.
3982 (divsf3): Ditto.
3983 (divsf3_internal_lat): Ditto.
3984 (divsf3_internal_thr): Ditto.
3985 (divdf3): Ditto.
3986 (divdf3_internal_lat): Ditto.
3987 (divdf3_internal_thr): Ditto.
3988 (divtf3): Ditto.
3989 (divtf3_internal_lat): Ditto.
3990 (divtf3_internal_thr): Ditto.
3991 * config/ia64/ia64.c (ia64_override_options): Change
3992 to check new macros for conflicts in settings.
3993 * doc/invoke.texi (-minline-divide-min-latency): Remove.
3994 (-minline-divide-max-throughput): Remove.
3995 (-minline-float-divide-min-latency): New.
3996 (-minline-float-divide-max-throughput): New.
3997 (-minline-int-divide-min-latency): New.
3998 (-minline-int-divide-max-throughput): New.
7bb9f927 3999
d5db54a1
RE
40002002-11-01 Richard Earnshaw (rearnsha@arm.com)
4001
4002 PR target/7856
4003 * arm.c (use_return_insn): Don't use a return insn if there are
4004 saved integer regs, but LR is not one of them.
4005
075fc17a
JH
4006Fri Nov 1 10:33:15 CET 2002 Jan Hubicka <jh@suse.cz>
4007
4008 * expr.c (emit_move_insn): Use SCALAR_FLOAT_MODE_P
4009 * machmode.h (SCALAR_FLOAT_MODE_P): New macro.
4010
4977bab6
ZW
4011Thu Oct 31 18:20:50 CET 2002 Jan Hubicka <jh@suse.cz>
4012
4013 * i386.md (sse_loadss, sse_loadsd): Canonicalize; add expander
4014 (movps, movpd splitters): Use canonical form.
4015 (movv2di): Fix merge problem.
4016
4017Thu Oct 31 16:22:31 CET 2002 Jan Hubicka <jh@suse.cz>
4018
4019 * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
4020
9efb4cb6
NN
40212002-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
4022
4023 PR optimization/6162
4024 * doc/md.texi: Document restriction on commutative operand
4025 specification.
4026
ce02ba25
EC
40272002-10-31 Eric Christopher <echristo@redhat.com>
4028
7bb9f927 4029 * explow.c (convert_memory_address): Use shallow_copy_rtx.
ce02ba25 4030
8efb33ec
SE
40312002-10-31 Steve Ellcey <sje@cup.hp.com>
4032
4033 * expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN.
4034
a543c709
SE
40352002-10-31 Steve Ellcey <sje@cup.hp.com>
4036
4037 * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats.
4038
cdc58a82
DJ
4039Thu Oct 31 Dale Johannesen <dalej@apple.com>
4040
4041 * config/rs6000/darwin.h: Correct formatting in previous.
4042
e381c27a
DJ
4043Thu Oct 31 Dale Johannesen <dalej@apple.com>
4044
4045 * config/rs6000/darwin.h: Enable -falign-xxx options.
4046
55ba61f3
JH
4047Thu Oct 31 18:08:00 CET 2002 Jan Hubicka <jh@suse.cz>
4048
4049 * i386.c (override_options): Set defaults for flag_omit_frame_pointer,
4050 flag_asynchronous_unwind_tables, flag_pcc_struct_return.
4051 * i386.c (optimization_options): Set flag_omit_frame_pointer,
4052 flag_asynchronous_unwind_tables, flag_pcc_struct_return to 2.
4053 Do not clear -momit-leaf-frame-pointer when profiling.
8e746279 4054 (ix86_frame_pointer_required): Frame pointer is always required when
55ba61f3
JH
4055 profiling.
4056
f7e5dfbd
JH
4057Thu Oct 31 16:09:44 CET 2002 Jan Hubicka <jh@suse.cz>
4058
4059 * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
4060
ff881d52
R
4061Thu Oct 31 12:45:55 2002 J"orn Rennecke <joern.rennecke@superh.com>
4062
4063 * sh.h (binary_logical_operator): Declare.
4064 * sh.c (binary_logical_operator): New function.
4065 * sh.md (xordi3+1): New combiner splitter pattern.
4066
e8e4c876
DB
40672002-10-31 David O'Brien <obrien@FreeBSD.org>
4068
4069 * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Define
4070 __enable_execute_stack function.
4071
4977bab6
ZW
40722002-10-30 Zack Weinberg <zack@codesourcery.com>
4073
4074 * gthr.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h,
4075 gthr-solaris.h, gthr-win32.h: Remove __gthread_key_dtor.
4076 * unwind-sjlj.c (fc_key_dtor): Delete.
4077 (fc_key_init): Adjust __gthread_key_create call to match.
4078
27bd7792
AH
40792002-10-30 Aldy Hernandez <aldyh@redhat.com>
4080
7bb9f927 4081 * c-common.c: Add GTY to vector_type_node_list.
27bd7792 4082
a02aa5b0
JDA
40832002-10-30 John David Anglin <dave@hiauly.hia.nrc.ca>
4084
4085 * pa-linux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
4086 * pa-protos.h (attr_length_millicode_call, attr_length_call,
4087 pa_init_machine_status): Declare new global functions.
4088 * pa.c (void copy_fp_args, length_fp_args, get_plabel): Declare and
4089 implement new functions.
4090 (attr_length_millicode_call, attr_length_call): Implement.
4091 (total_code_bytes): Change type to long.
4092 (pa_output_function_prologue): Compute total_code_bytes on TARGET_64BIT.
4093 Reset counter if flag_function_sections.
4094 (output_deferred_plabels): Set output alignment to 3 for TARGET_64BIT.
4095 (output_cbranch): Move call to gen_label_rtx.
4096 (output_millicode_call): Rewrite adding long TARGET_64BIT call, expose
4097 delay slot in all variants, shorten pc-relative calls.
4098 (output_call): Rewrite adding long TARGET_64BIT call, improved delay
4099 slot usage and exposure, various new call variants, and shortened
4100 sequences for some variants on TARGET_PA_20.
4101 Miscellaneous format changes.
4102 * pa.h (total_code_bytes): Change type to long.
4103 (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_LONG_ABS_CALL,
4104 TARGET_LONG_PIC_SDIFF_CALL, TARGET_LONG_PIC_PCREL_CALL): Define.
4105 (TARGET_SWITCHES): Add "-mlong-calls" and "-mno-long-calls" options.
4106 (EXTRA_CONSTRAINT, GO_IF_LEGITIMATE_ADDRESS,
4107 LEGITIMIZE_RELOAD_ADDRESS): Don't use long floating point loads and
4108 stores on TARGET_ELF32.
4109 *pa.md (define_delay): Allow insns in delay on TARGET_PORTABLE_RUNTIME.
4110 (unnamed patterns for mulsi3, divsi3, udivsi3, modsi3, umodsi3 and
4111 canonicalize_funcptr_for_compare expanders): Calculate attribute length
4112 attr_length_millicode_call().
4113 (call_internal_symref, call_value_internal_symref): Clobber register 1.
4114 Calculate attribute length using attr_length_call().
4115 (call_internal_reg_64bit, call_value_internal_reg_64bit): Move gp load
4116 to delay slot.
4117 (sibcall, sibcall_value): Rewrite.
4118 (sibcall_internal_symref, sibcall_value_internal_symref): Clobber
4119 register 1. Use attr_length_call().
4120 (sibcall_internal_symref_64bit, sibcall_value_internal_symref_64bit):
4121 New patterns.
4122 (unamed pattern for canonicalize_funcptr_for_compare): Rewrite.
4123 * som.h (MEMBER_TYPE_FORCES_BLK): Define.
4124 * t-pa64 (TARGET_LIBGCC2_CFLAGS): Add "-mlong-calls".
4125 * doc/invoke.texi (mlong-calls): Document.
4126
9402f6fb
RS
41272002-10-30 Roger Sayle <roger@eyesopen.com>
4128
4129 * fold-const.c (fold_binary_op_with_conditional_arg): Improve
4130 handling of cases where one or both branches of the conditional
4131 have void type, i.e. throw an exception or don't return.
4132 (fold): Only apply (and undo) type conversion to the non-void
4133 branches of a COND_EXPR.
4134
9b5b7e3a
MM
41352002-10-30 Mark Mitchell <mark@codesourcery.com>
4136
4137 PR c++/8333
4138 * varasm.c (asm_output_aligned_bss): Do not call
4139 ASM_GLOBALIZE_LABEL.
4140
df7a8989
DE
41412002-10-30 David Edelsohn <edelsohn@gnu.org>
4142 Torbjorn Granlund <tege@swox.com>
4143
4144 * config/rs6000/rs6000.md (load_toc_v4_PIC_1): Use preferred form
4145 for addressibility.
4146 (load_toc_v4_PIC_1b): Same.
4147
d2d199a3
KH
41482002-10-30 Kazu Hirata <kazu@cs.umass.edu>
4149
4150 * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
4151 Truncate the addresses for H8/300 using HImode.
4152
4977bab6
ZW
4153Tue Oct 29 23:28:10 CET 2002 Jan Hubicka <jh@suse.cz>
4154
4155 * i386.md (negdf splitter): Fix construction of the constant.
4156
4157Tue Oct 29 20:47:06 CET 2002 Jan Hubicka <jh@suse.cz>
4158
4159 * i386.md (negsf, negdf): Reorganize to use vector modes
4160 for SSE variants.
4161 (abssf, absdf): Use force_reg.
4162 (movv4sf, movv2df): New splitters.
4163 * i386.h (PREDICATE_CODES): add zero_extended_scalar_load_operand
4164 * i386.c (zero_extended_scalar_load_operand
4165
4166 * i386-protos.h (ix86_expand_call): Update prototype.
4167 * i386.c (ix86_function_ok_for_sibcall): Handle 64bit
4168 (ix86_expand_call): Use r11 for indirect sibcalls.
4169 * i386.md (call, call_value, untyped_call, call_value_pop):
4170 update x86_expand_call call.
4171 (sibcall, sibcall_value): new patterns
4172 (call_rex64, call_value_rex64): Do not accept sibcalls.
4173 (sibcall_rex64, sibcall_value_rex64,
4174 sibcall_rex64_v, sibcall_value_rex64_v): New.
4175
4176Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
4177
4178 * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
4179 before final pass.
4180
33c21f5c
HPN
41812002-10-29 Hans-Peter Nilsson <hp@bitrange.com>
4182
4183 * toplev.c (rest_of_type_compilation): Return early in case of
4184 errors.
4185 (check_global_declarations): Don't call debug_hooks->global_decl
4186 in case of errors.
4187
d1445f8d
AB
41882002-10-28 Andreas Bauer <baueran@in.tum.de>
4189
4190 * doc/c-tree.texi (Tree overview): Fix typos.
4191
fc556cb9
PE
41922002-10-29 Phil Edwards <pme@gcc.gnu.org>
4193
4194 * Makefile.in (gnucompare*): Only record bad comparisons
4195 if there really was a bad comparison.
4196
f8ca7923
JH
4197Tue Oct 29 19:32:16 CET 2002 Jan Hubicka <jh@suse.cz>
4198
4199 * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H'
4200 * i386.md (movsf*, movdf*): Use 'C' instead of 'H'
4201 * md.texi (machine dependent constraints): Document 'C'
4202
4203 * simplify-rtx.c (simplify_subreg): Fix const_int->vector subregging.
4204
4205 * i386.c (ix86_expand_vector_move): Fix.
4206
4207 * i386.c (ix86_expand_builtin): Use sse2_maskmovdqu_rex64.
4208 * i386.md (sse2_maskmovdqu_rex64): New pattern
4209
4210 PR target/8322
4211 * xmmintrin.h (_mm_stream_pi, _mm_stream_pd): Fix cast.
4212 (ix86_init_mmx_sse_builtins): Fix type.
4213
c95d07f8
JT
42142002-10-29 Jason Thorpe <thorpej@wasabisystems.com>
4215
4216 * gthr-posix.h: Include <unistd.h> for feature tests.
4217 (sched_get_priority_max, sched_get_priority_min)
4218 (pthread_getschedparam, pthread_setschedparam): Only use
4219 if _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
272d0bee 4220 (__gthread_objc_thread_set_priority): Don't treat all nonzero
c95d07f8
JT
4221 returns from sched_get_priority_max and sched_get_priority_min
4222 as an error.
4223
3950794d
KH
42242002-10-29 Kazu Hirata <kazu@cs.umass.edu>
4225
4226 * config/h8300/h8300.h (TARGET_DEFAULT): Make it
4227 MASK_QUICKCALL.
4228
803d56f5
KH
42292002-10-29 Kazu Hirata <kazu@cs.umass.edu>
4230
4231 * config/h8300/h8300.c (h8300_eightbit_constant_address_p): New.
4232 (h8300_tiny_constant_address_p): Likewise.
4233 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Use
4234 h8300_eightbit_constant_address_p.
4235 (TINY_CONSTANT_ADDRESS_P): Use h8300_tiny_constant_address_p.
4236 * config/h8300/h8300-protos.h: Add the prototypes for the two
4237 new functions.
4238
6bb8a3f7
KH
42392002-10-29 Kazu Hirata <kazu@cs.umass.edu>
4240
4241 * reload1.c (update_eliminables): Unconditionally check if
4242 frame_pointer_needed has changed.
4243
fc8dfa20
JH
4244Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
4245
4246 * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
4247 before final pass.
4248
6e7727eb
EB
42492002-10-29 Eric Botcazou <ebotcazou@libertysurf.fr>
4250
a5163dcd 4251 PR optimization/8334
7bb9f927
ZW
4252 * expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation;
4253 check for zero operands explicitly.
6e7727eb 4254
02c6a17a
RS
42552002-10-29 Richard Sandiford <rsandifo@redhat.com>
4256
4257 * config/mips/mips.md (extv, extzv, insv): Set size of referenced
4258 memory after adjusting to BLKmode.
4259
1862869d
KH
42602002-10-29 Kazu Hirata <kazu@cs.umass.edu>
4261
4262 * config/h8300/h8300.h (MASK_*): New.
4263 (TARGET_*): Use MASK_*.
4264
4977bab6
ZW
42652002-10-28 Zack Weinberg <zack@codesourcery.com>
4266
4267 * config.gcc (*-*-vxworks, powerpc-wrs-vxworks*): New stanzas.
4268 * config/t-vxworks, config/vxworks.h, config/rs6000/t-vxworks,
4269 config/rs6000/vxworks.h: New files.
4270 * config/rs6000/sysv4.h: Rip out -mvxworks and all related code.
4271
4272 * config.gcc (alpha*-*-vxworks*, arm-*-vxworks*,
4273 i?86-wrs-vxworks*, i960-wrs-vxworks* [all],
4274 m68k-wrs-vxworks*, mips-wrs-vxworks, powerpc-wrs-vxworks*,
4275 powerpcle-wrs-vxworks*, sparc*-wrs-vxworks* [all],
4276 sparc-*-vxsim*): Delete stanzas.
4277 * gthr-vxworks.h: Rip out all substantive code and just
4278 include gthr-single.h.
4279
4280 * config/alpha/vxworks.h, config/arm/vxarm.h,
4281 config/i386/vxi386.h, config/i960/t-vxworks960,
4282 config/i960/vx960-coff.h, config/i960/vx960.h,
4283 config/m68k/t-vxworks68, config/m68k/vxm68k.h,
4284 config/mips/vxworks.h, config/rs6000/vxppc.h,
4285 config/sparc/t-vxsparc, config/sparc/t-vxsparc64,
4286 config/sparc/vxsim.h, config/sparc/vxsparc.h,
4287 config/sparc/vxsparc64.h: Delete files.
4288
ee3c755a
JT
42892002-10-28 Jason Thorpe <thorpej@wasabisystems.com>
4290
4291 * config.gcc (*-*-netbsd*): Add NETBSD_ENABLE_PTHREADS to
4292 tm_defines if pthreads are enabled.
4293 * config/netbsd.h (LIB_SPEC): Only support the -pthread option
4294 if NETBSD_ENABLE_PTHREADS is defined.
4295
423adbb9
KH
42962002-10-28 Kazu Hirata <kazu@cs.umass.edu>
4297
4298 * ChangeLog.1: Fix typos.
4299 * cse.c: Fix a comment typo.
4300 * reload1.c: Likewise.
4301
d7521977
HPN
43022002-10-27 Hans-Peter Nilsson <hp@bitrange.com>
4303
4304 * fixinc/inclhack.def (libc1_G_va_list): Correct test_text.
4305 * fixinc/tests/base/_G_config.h: New file.
4306
3eae4643
KH
43072002-10-27 Kazu Hirata <kazu@cs.umass.edu>
4308
4309 * combine.c: Fix comment formatting.
4310 * loop.c: Likewise.
4311 * real.c: Likewise.
4312 * regclass.c: Likewise.
4313 * regmove.c: Likewise.
4314 * regrename.c: Likewise.
4315 * reg-stack.c: Likewise.
4316 * reload1.c: Likewise.
4317 * reload.c: Likewise.
4318 * reload.h: Likewise.
4319 * unroll.c: Likewise.
4320
e591c83d
KH
43212002-10-27 Kazu Hirata <kazu@cs.umass.edu>
4322
4323 * reload1.c (reload): Fix a comment typo.
4324
a0ba837e
JH
4325Sun Oct 27 10:15:24 CET 2002 Jan Hubicka <jh@suse.cz>
4326
4327 * linux64.h (DEFAULT_PCC_STRUCT_RETURN): Define.
4328
cc0017a9
ZD
43292002-10-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
4330
4331 * Makefile.in (dwarf2out.o): Add dependendcy on hashtab.h.
4332 * dwarf2out.c: Include hashtab.h.
4333 (is_main_source): New static variable.
4334 (attr_checksum, die_checksum): Modified to handle die references.
4335 (same_loc_p, same_dw_val_p, same_attr_p, same_die_p, same_die_p_wrap,
4336 unmark_all_dies, htab_cu_hash, htab_cu_eq, htab_cu_del, check_duplicate_cu,
4337 record_comdat_symbol_number): New static functions.
4338 (output_comp_unit, compute_section_prefix, is_type_die, break_out_includes,
4339 mark_dies, unmark_dies, dwarf2out_start_source_file): Modified.
4340 * toplev.c (rest_of_decl_compilation): Call of dwarf2out_decl for type
4341 declarations added.
4342
d7af42bc
KH
43432002-10-26 Kazu Hirata <kazu@cs.umass.edu>
4344
4345 * config/h8300/h8300.c (initial_offset): Change to
4346 h8300_initial_elimination_offset.
4347 * config/h8300/h8300.h (INITIAL_ELIMINATION_OFFSET): Use
4348 h8300_initial_elimination_offset.
4349 * config/h8300/h8300-protos.h: Update the prototype.
4350
7e5037dc
HPN
43512002-10-26 Hans-Peter Nilsson <hp@bitrange.com>
4352
4b32269b
HPN
4353 * config/mmix/mmix.h (LIBCALL_VALUE): Use
4354 MMIX_RETURN_VALUE_REGNUM, not MMIX_OUTGOING_RETURN_VALUE_REGNUM.
4355 (FUNCTION_VALUE_REGNO_P): Similar, but move code to...
4356 * config/mmix/mmix.c (mmix_function_value_regno_p): New.
4357 * config/mmix/mmix-protos.h: Remove needless ifdefs on TREE_CODE
4358 and RTX_CODE.
4359 (mmix_function_value_regno_p): Declare.
4360
7e5037dc
HPN
4361 * config/mmix/mmix.md ("fixuns_truncdfdi2"): Replace unsigned_fix,
4362 invalid for floating point mode result, with fix.
4363
4977bab6
ZW
4364Fri Oct 25 00:04:21 2002 Alexandre Oliva <aoliva@redhat.com>
4365
4366 * Makefile.in (GCC_FOR_TARGET): Add -L$(objdir)/../ld.
4367 (STAGE2_FLAGS_TO_PASS): Pass GCC_FOR_TARGET.
4368 (stage1_build): Likewise.
4369
94c1e0e8
MS
43702002-10-25 Mike Stump <mrs@apple.com>
4371
da89b956 4372 Fixes gcc.dg/warn-1.c.
4977bab6
ZW
4373 * c-typeck.c (warn_for_assignment): Don't print argument number,
4374 if zero.
94c1e0e8 4375
0fb53e68
JH
4376Sat Oct 26 01:44:46 CEST 2002 Jan Hubicka <jh@suse.cz>
4377
4378 * toplev.c (dump_file_index): Add DFI_ce3.
4379 (dump_file_info): Likewise.
4380 (rest_of_compilation): Run first ifcvt pass before tracer.
4381
794186ca
SE
43822002-10-25 Steve Ellcey <sje@cup.hp.com>
4383
4384 * config/ia64/hpux.h (BITS_BIG_ENDIAN): Remove.
4385
cd60b4b8
RH
43862002-10-25 Richard Henderson <rth@redhat.com>
4387
4388 * real.c (real_to_decimal): If the >1 tens reduction loop results
4389 in a negative exponent, fall into the <1 pten computation.
4390
f3763a44
ZW
43912002-10-25 Zack Weinberg <zack@codesourcery.com>
4392
4393 PR middle-end/6994
4394 * c-objc-common.c (inline_forbidden_p): Can not inline
4395 functions containing structures or unions containing VLAs.
4396 * tree-inline.c (walk_tree): For all class 't' nodes, walk
4397 TYPE_SIZE and TYPE_SIZE_UNIT.
4398 (copy_tree_r): Copy types if they are variably modified.
4399
8c40b097
UW
44002002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
4401
4402 * config/s390/s390.md: Remove old-style peepholes.
4403
522ec94e
UW
44042002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
4405
4406 * config/s390/s390.c (s390_decompose_address): Do not range check the
4407 displacement if base or index is the argument pointer register.
4408
a7475ab1
HPN
44092002-10-24 Hans-Peter Nilsson <hp@bitrange.com>
4410
85c87994
HPN
4411 PR other/3337
4412 PR bootstrap/6763
4413 PR bootstrap/8122
a7475ab1
HPN
4414 * fixinc/inclhack.def (libc1_G_va_list): New fix.
4415 * fixinc/fixincl.x: Regenerate.
4416 * config/i386/linux.h: Move MD_FALLBACK_FRAME_STATE_FOR inside
4417 ifndef IN_LIBGCC2. Wrap it together with signal.h and
4418 sys/ucontext.h inclusion in ifndef USE_GNULIBC_1.
4419 * configure.in (gcc_AC_CHECK_DECLS): Check vasprintf too.
4420 * config.in, configure: Regenerate.
4421
7a360cce
IS
44222002-10-24 Igor Shevlyakov <igor@microunity.com>
4423
7bb9f927 4424 * varasm.c (struct rtx_const): Array size 16 for V16QImode.
7a360cce 4425
fcbe3b89
RH
44262002-10-24 Richard Henderson <rth@redhat.com>
4427
4428 * config/i386/i386.c (x86_output_mi_thunk): Fix x86_64 pic jump.
4429
1a86c850
KH
44302002-10-24 Kazu Hirata <kazu@cs.umass.edu>
4431
4432 * config/h8300/h8300.c (initial_offset): Simplify by using
4433 round_frame_size.
4434
de7999ba
MM
44352002-10-24 Marek Michalkiewicz <marekm@amelek.gda.pl>
4436
4437 * doc/install.texi (avr): Update required binutils version.
4438
44392002-10-24 Theodore A. Roth <troth@openavr.org>
4440
4441 * doc/install.texi: Point avr users at more up-to-date information.
4442
84817c5d
UW
44432002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
4444
4445 * config/s390/s390.md (movdi, movsi, movhi, movqi): Add peepholes2
4446 to pull operands out of the literal pool where possible.
4447
d0749053
DC
44482002-10-24 Denis Chertykov <denisc@overta.ru>
4449
4450 * config/avr/avr.c (init_cumulative_args): Test fntype for zero.
4451
37d0b254
SE
44522002-10-24 Steve Ellcey <sje@cup.hp.com>
4453
4454 * expr.c (convert_move): If unsignedp is less then zero there
4455 is no equivalent code.
4456
7af907e9
ZW
44572002-10-24 Zack Weinberg <zack@codesourcery.com>
4458
4459 * tree.def: Delete mention of nonexistent ARRAY_TYPE fields.
4460
862a2d83
UW
44612002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
4462
7af907e9 4463 * config/s390/s390.h: Rework comments; re-sort target macro definitions
862a2d83
UW
4464 according to the sequence they are defined in the manual.
4465 (POINTER_BOUNDARY): Remove.
4466
489eda65
KH
44672002-10-24 Kazu Hirata <kazu@cs.umass.edu>
4468
4469 * config/h8300/h8300.c (round_frame_size): Replace 8 with
4470 BITS_PER_UNIT.
4471
2ba08201
KH
44722002-10-24 Kazu Hirata <kazu@cs.umass.edu>
4473
4474 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Make it
4475 64-bit safe.
4476 (TINY_CONSTANT_ADDRESS_P): Likewise.
4477
5f13cfc6
RH
44782002-10-24 Richard Henderson <rth@redhat.com>
4479
4480 * config/ia64/ia64.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
4481 (ia64_output_mi_thunk): Rewrite to use rtl, and to handle the
4482 vcall offset.
4483
3bd216f2
RH
44842002-10-24 Richard Henderson <rth@redhat.com>
4485
7af907e9
ZW
4486 PR opt/7944
4487 * reload.c (find_reloads_toplev): Mode of X is not important
3bd216f2
RH
4488 when simplifying subregs of constants.
4489
60bc2b4b
RS
44902002-10-24 Richard Sandiford <rsandifo@redhat.com>
4491
4492 * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Add
4493 MIPS_MARCH_CONTROLS_SOFT_FLOAT=1 to $tm_defines.
4494 * config/mips/mips.c (MIPS_MARCH_CONTROLS_SOFT_FLOAT): Default to 0.
4495 (override_options): Base default setting of MASK_SOFT_FLOAT on -march
4496 if MIPS_MARCH_CONTROLS_SOFT_FLOAT.
4497
5be5c8d4
RS
44982002-10-24 Richard Sandiford <rsandifo@redhat.com>
4499
4500 * optabs.c (expand_binop): Don't reuse the shift target in the
4501 middle of shift sequences.
4502
4977bab6
ZW
4503Wed Oct 23 22:48:44 CEST 2002 Jan Hubicka <jh@suse.cz>
4504
4505 * i386.md (abs splitters): Do not produce nested subregs.
4506
4507Wed Oct 23 12:42:32 CEST 2002 Jan Hubicka <jh@suse.cz>
4508
4509 * i386.md (movti_rex64): Fix constraints.
4510
4511Wed Oct 23 12:01:21 CEST 2002 Jan Hubicka <jh@suse.cz>
4512
4513 * i386.md (abssf,absdf): Use vector operands for SSE
4514 (abssf2_ifs, absdf2_ifs, absdf2_ifs_rex64 and splitters): Update for
4515 vector operand.
4516
196e1ae3
ZL
45172002-10-23 Ziemowit Laski <zlaski@apple.com>
4518
4519 * objc/objc-act.c (get_static_reference): Remove unneeded
4520 TYPE_BINFO initialization.
4521 (get_object-reference): Likewise.
4522 (build_constructor): Tighten precondition check.
4523 (finish_message_expr): Likewise.
4524
8bfb45f8
JJ
45252002-10-23 Jakub Jelinek <jakub@redhat.com>
4526
4527 * config/i386/i386.c (local_symbolic_operand): Move LABEL_REF test
4528 after CONST test.
4529
16448fd4
SE
45302002-10-23 Steve Ellcey <sje@cup.hp.com>
4531
4532 * config/ia64/ia64.c (hfa_element_mode): Don't allow 128 bit floats
4533 in HFAs.
4534
e2358068
RH
45352002-10-23 Richard Henderson <rth@redhat.com>
4536
4537 * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
4538 (alpha_output_mi_thunk_osf): Handle vcall_offset.
4539
8bcefb43
ZW
45402002-10-23 Zack Weinberg <zack@codesourcery.com>
4541
4542 * langhooks.h (struct lang_hooks_for_tree_inlining): Add
4543 var_mod_type_p.
4544 * langhooks-def.h: Default for tree_inlining.var_mod_type_p is
4545 hook_tree_bool_false.
4546
4547 * tree.c (variably_modified_type_p): Moved here from
4548 cp/tree.c. Use lang_hooks.tree_inlining.var_mod_type_p for
4549 language-specific cases. Due to this, must weaken some 'if
4550 and only if' checks to merely 'if'.
4551 * tree.h: Prototype variably_modified_type_p.
4552
4553 * tree-inline.c (walk_tree): #undef WALK_SUBTREE_TAIL at end.
4554
8e509cf9
UW
45552002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
4556
4557 * config/s390/linux.h (CC1_SPEC, CC1PLUS_SPEC): Remove.
4558 * config/s390/s390.c (optimization_options): Disable -fcaller-saves.
4559
4560 * config/s390/s390-protos.h (fp_operand): Remove.
4561 * config/s390/s390.c (fp_operand): Remove.
4562 * config/s390/s390.md ("movdi"): Replace fp_operand by FP_REG_P.
4563 ("*movdi_lhi", "*movdi_lli", "*movdi_larl"): Likewise.
4564 ("movsi", "*movsi_lhi", "*movsi_lli"): Likewise.
4565 (movdi_31, movdf_31 splitters): Likewise.
8bcefb43 4566
8e509cf9
UW
4567 * config/s390/s390.h (IEEE_FLOAT): Remove.
4568 (TARGET_FLOAT_FORMAT): Define in terms of TARGET_IEEE_FLOAT.
4569 (INT_REGNO_P): Rename to ...
4570 (GENERAL_REGNO_P): ... this.
4571 (FLOAT_REGNO_P): Rename to ...
4572 (FP_REGNO_P): ... this.
4573 (ADDR_REGNO_P): New macro.
4574 (GENERAL_REG_P, ADDR_REG_P, FP_REG_P, CC_REG_P): New macros.
4575 (REGNO_OK_FOR_DATA_P, REGNO_OK_FOR_FP_P): Remove.
4576 (DATA_REG_P, FP_REG_P, ADDRESS_REG_P): Likewise.
4577 (HARD_REGNO_NREGS): Adapt to macro renaming.
4578 (HARD_REGNO_MODE_OK): Likewise.
4579
34bb030a
DE
45802002-10-23 David Edelsohn <edelsohn@gnu.org>
4581 Geoff Keating <geoffk@apple.com>
4582
4583 * config/rs6000/rs6000.c (rs6000_register_move_cost): New function.
4584 (rs6000_memory_move_cost): New function.
4585 * config/rs6000/rs6000-protos.h: Declare them.
4586 * config/rs6000/rs6000.h: Use them.
4587
1ab9ba62
UW
45882002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
4589
8bcefb43 4590 * libgcc2.c (__udiv_w_sdiv): Use attribute ((always_inline)) when
1ab9ba62
UW
4591 inlining it into other libgcc2 routines.
4592 (__udivmoddi4): Likewise.
4593
4b2ece8f
NN
45942002-10-22 Nathanael Nerode <neroden@gcc.gnu.org>
4595
4596 * doc/sourcebuild.texi (Test Suites): Improve.
4597
2d173d20
SS
45982002-10-22 Stan Shebs <shebs@apple.com>
4599
4600 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Add missing
4601 case for Darwin.
4602
43146684
JW
46032002-10-22 Jim Wilson <wilson@redhat.com>
4604
4605 * config/i386/i386.md (subdi3_1): Add call to ix86_binary_operator_ok.
4606
a00782ed
JH
4607Wed Oct 23 01:52:36 CEST 2002 Jan Hubicka <jh@suse.cz>
4608
4609 PR other/8289
4610 * xmmintrin.h: Add const to the argument of loads.
4611
4612 * i386.md (pushv2di): New pattern.
4613 PR target/6890
4614 * xmmintrin.h (_MM_TRANSPOSE4_PS): New.
4615
3961e8fe
RH
46162002-10-22 Richard Henderson <rth@redhat.com>
4617
4618 * target.h (gcc_target.asm_out): Merge output_mi_thunk and
4619 output_mi_vcall_thunk into a single hook. Add can_output_mi_thunk.
4620 * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Don't conditionalize.
4621 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
4622 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4623 (TARGET_ASM_OUT): Update.
4624 * hooks.c (hook_bool_tree_hwi_hwi_tree_false): New.
4625 (hook_bool_tree_hwi_hwi_tree_true): New.
4626 (default_can_output_mi_thunk_no_vcall): New.
4627 * hooks.h: Declare them.
4628 * system.h (ASM_OUTPUT_MI_THUNK): Poison.
4629
4630 * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4631 (alpha_output_mi_thunk_osf): Add VCALL_OFFSET parameter.
4632 * config/arm/arm.c, config/cris/cris.c, config/frv/frv.c,
4633 config/i960/i960.c, config/ia64/ia64.c, config/m68k/m68k.c,
4634 config/mmix/mmix.c, config/pa/pa.c, config/sparc/sparc.c,
4635 config/stormy16/stormy16.c: Similarly.
4636
4637 * config/i386/i386.c (x86_output_mi_thunk): Merge vcall_offset code.
4638 Handle 64-bit properly. Streamline.
4639 (x86_output_mi_vcall_thunk): Remove.
4640 (x86_this_parameter): Rename from ia32_this_parameter; handle 64-bit.
4641 (x86_can_output_mi_thunk): New.
4642 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
4643 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4644 (override_options): Don't zap targetm.asm_out.output_mi_vcall_thunk.
4645
4646 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Rename from
4647 output_mi_thunk; make static; always use function_section.
4648 (TARGET_ASM_OUTPUT_MI_THUNK): New.
4649 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4650 (rs6000_ra_ever_killed): Test no_new_pseudos not
4651 targetm.asm_out.output_mi_thunk in conjunction with thunks.
4652 * config/rs6000/rs6000-protos.h: Update.
4653 * config/rs6000/sysv4.h (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
4654 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't call
4655 xcoffout_declare_function when using rs6000_output_mi_thunk.
4656
8bcefb43 4657 * config/s390/s390.c (s390_output_mi_thunk): Rename from
3961e8fe
RH
4658 s390_output_mi_vcall_thunk.
4659 (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
4660 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4661
4662 * config/vax/vax.c (vax_output_mi_thunk): Static; add vcall_offset.
4663 (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
4664 * config/vax/vax-protos.h: Update.
4665 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove.
4666
0e67d460
JH
4667Wed Oct 23 00:33:11 CEST 2002 Jan Hubicka <jh@suse,cz>
4668
4669 * i386.c (standard_sse_constant_p): Accept vector and integer zeros too.
4670 * i386.h (EXTRA_CONSTRAINT): Recognize 'C'
4671 * i386.md (movti_internal): Use 'C'
4672
4673 * xmmintrin.h (_mm_cmplt_epi*): New.
4674
d5869ca0
UW
46752002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
4676
4677 * config/s390/s390.md ("*movdi_64"): Fix op_type attribute.
4678 ("*movdf_64"): Likewise.
4679 ("*lshrdi3_64"): Likewise.
4680 ("blockage"): Add length attribute.
4681 ("lit"): Likewise.
4682
680dd104
JH
4683Tue Oct 22 23:51:34 CEST 2002 Jan Hubicka <jh@suse.cz>
4684
4685 * i386.md: FIx typo.
4686 (sse2_cvtsi2sd, sse2_pslrdq): Fix template.
4687 (sse2_umulv2siv2di3): Fix predicate.
4688 (sse2_psadbw, ashrv8hi3, ashrv4si3, lshrv8hi3 lshrv4si3,
4689 lshrv2di3, ashlv8hi3, ashlv4si3, ashlv2di3): Likewise.
4690 * xmmintrin.h (_mm_mul_epu16): Rename to...
4691 (_mm_mul_epu32): This one.
4692 (_mm_cvtsi32_si128, _mm_cvtsi128_si32): New.
4693
4694 (contains_128bit_aligned_vector_p): Undo accidental checkin.
4695
3aabf9a5
EC
46962002-10-22 Eric Christopher <echristo@redhat.com>
4697
4698 * config/sparc/sparc.h: Add #error.
4699
42c78618
UW
47002002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
4701
4702 * config.gcc [s390-*-linux]: Remove s390/t-linux from tmake_file.
4703 [s390x-*-linux*]: Likewise.
4704 * config/s390/t-linux: Remove.
4705 * config/s390/s390.h: Include fixdfdi.h when building libgcc2.
4706
077084dd
JH
4707Tue Oct 22 19:07:03 CEST 2002 Jan Hubicka <jh@suse.cz>
4708
4709 * i386.c (builtin_description): Add IX86_BUILTIN_PUNPCKHQDQ128.
4710 (ix86_expand_builtin): Fix MASKMOVDQU expasion.
4711 * i386.h (ix86_builtins): Add IX86_BUILTIN_PUNPCKHQDQ128.
4712 * i386.md (mmx_punpck?dq): Simplify.
4713 (sse2_pubpcklqdq): Fix.
4714 (sse2_pubpckhqdq): New.
4715 * xmmintrin.h (_mm_unpackhi_epi32): New.
4716
4717 * xmmintrin.h (_mm_cvt*, _mm_stream_pd): Fix prototypes.
4718 (_mm_shufflehi_epi16, _mm_shufflelo_epi16): Fix typo.
4719
8fe734a3
NS
47202002-10-22 Nathan Sidwell <nathan@codesourcery.com>
4721
4722 PR c++/7209
4723 * fold_const.c (fold_binary_op_with_conditional_arg): Always
4724 build compound_expr if we used save_expr.
4725
6a0a6ac4
AM
47262002-10-22 Alan Modra <amodra@bigpond.net.au>
4727
4728 * output.h (SECTION_NOTYPE): Define.
4729 * varasm.c (default_section_type_flags_1): Set SECTION_NOTYPE for
4730 init array sections.
4731 (default_elf_asm_named_section): Mind SECTION_NOTYPE.
4732 * config/arm/arm.c (arm_elf_asm_named_section): Likewise. Also
4733 merge TLS support.
4734
4977bab6
ZW
47352002-10-21 Richard Henderson <rth@redhat.com>
4736
4737 * config/i386/i386.c (ix86_function_ok_for_sibcall): Look at
4738 the function type, not the return type.
4739
5e26e5a2
RH
47402002-10-21 Richard Henderson <rth@redhat.com>
4741
4742 * real.c (sticky_rshift_significand): Return inexact, don't
4743 or it in immediately.
4744 (sub_significands): Accept incomming carry.
4745 (div_significands, rtd_divmod): Update for sub_significands change.
4746 (round_for_format): Update for sticky_rshift_significand change.
4747 (do_add): Don't involve the inexact bit in addition, do give the
4748 inexact bit as the subtraction carry-in.
4749 (encode_internal, decode_internal, real_internal_format): New.
4750 * real.h (real_internal_format): Declare.
4751
f8eef883
UW
47522002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4753
4754 * libgcc2.c: Fix __udiv_w_sdiv breakage on platforms that
4755 don't define sdiv_qrnnd.
4756
89e56fe5
KH
47572002-10-21 Kazu Hirata <kazu@cs.umass.edu>
4758
4759 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Simplify
4760 using IN_RANGE.
4761 (TINY_CONSTANT_ADDRESS_P): Likewise.
4762
f02e1358
JH
4763Tue Oct 22 00:04:20 CEST 2002 Jan Hubicka <jh@suse.cz>
4764
4765 * i386.c (builtin_description): Add punpcklqdq and movdq2q
4766 (ix86_init_mmx_sse_builtins): Add v2di_ftype_void, di_ftype_v2di,
4767 v16qi_ftype_pchar, void_ftype_pchar_v16qi, v4si_ftype_pchar,
4768 void_ftype_pchar_v4si; Initialize __builtin_ia32_movdq2q,
4769 __builtin_ia32_loaddqa, __builtin_ia32_loaddqu, __builtin_ia32_loadd
4770 __builtin_ia32_storedqa, __builtin_ia32_storedqu, __builtin_ia32_stored
4771 __builtin_ia32_setzero128.
4772 (ix86_expand_builtin): Handle IX86_BUILTIN_CLRTI, IX86_BUILTIN_LOADDQA,
4773 IX86_BUILTIN_LOADDQU, IX86_BUILTIN_LOADD, IX86_BUILTIN_STOREDQA,
4774 IX86_BUILTIN_STOREDQU, IX86_BUILTIN_STORED, Ix86_BUILTIN_MOVQ.
4775 * i386.h (ix86_builtins): Add IX86_BUILTIN_LOADDQA, IX86_BUILTIN_LOADDQU,
4776 IX86_BUILTIN_STOREDQA, IX86_BUILTIN_STOREDQU, IX86_BUILTIN_LOADD,
4777 IX86_BUILTIN_STORED, IX86_BUILTIN_CLRTI, IX86_BUILTIN_MOVDQ2Q,
4778 IX86_BUILTIN_PUNPCKLQDQ128, Ix86_BUILTIN_MOVQ.
4779 * i386.md (sse2_punpcklqdq, sse2_movqsse2_loadd, sse2_stored,
4780 sse2_movq): New patterns.
4781 (sse2_movdqa, sse2_movdqu, sse2_movdq2q): Fix.
4782 * xmmintrin.h (_mm_load_si128, _mm_loadu_si128, _mm_loadl_epi64,
4783 _mm_store_si128, _mm_storeu_si128, _mm_storel_epi64,
4784 _mm_setzero_si128, _mm_set_epi64, _mm_set_epi32, _mm_set_epi16,
4785 _mm_set_epi8, _mm_set1_epi64, _mm_set1_epi32, _mm_set1_epi16,
4786 _mm_set1_epi8, _mm_setr_epi64, _mm_setr_epi32, _mm_setr_epi16,
4787 _mm_setr_epi8, _mm_unpacklo_epi64,_mm_set_moveq): New functions.
4788 (_mm_insert_epi16): Fix.
4789
de40e1df
DJ
47902002-10-21 Dale Johannesen <dalej@apple.com>
4791
8bcefb43 4792 * config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
de40e1df
DJ
4793 unsafe math reversals correctly for RTL generation.
4794 (output_cbranch): Replace rs6000_reverse_condition call
4795 by its former definition.
4796
75d38379
JJ
47972002-10-21 Jakub Jelinek <jakub@redhat.com>
4798
4799 * config/i386/i386.c (x86_64_sign_extended_value): Add allow_rip
4800 argument. In CM_SMALL_PIC model consider SYMBOL_REFs binding locally or
4801 from constant pool or LABEL_REFs as sign extended if allow_rip.
4802 Change all +-1GB limits to +-16MB.
4803 (x86_64_general_operand, x86_64_szext_general_operand,
4804 x86_64_nonmemory_operand, x86_64_movabs_operand,
4805 x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
4806 legitimate_address_p, ix86_expand_int_movcc): Update callers.
4807 (local_symbolic_operand): Don't allow offsets bigger than +-16MB
4808 in CM_SMALL_PIC model.
4809 (legitimate_pic_address_disp_p): Don't check offsets before
4810 calling local_symbolic_operand.
4811 (legitimize_pic_address): Force offsets bigger than +-16MB into
4812 register.
4813 * config/i386/i386.h (EXTRA_CONSTRAINT, CONST_COSTS): Likewise.
4814 * config/i386/i386-protos.h (x86_64_sign_extended_value): Update
4815 prototype.
4816
4817 * configure.in: Test for @GOTNTPOFF and @INDNTPOFF on IA-32 too.
4818 Add x86-64 test. Set tls_first_minor to 14 on IA-32 and x86-64.
4819 * configure: Rebuilt.
4820 * config/i386/i386.c (x86_64_sign_extended_value): Don't allow TLS
4821 SYMBOL_REFs unless enclosed in UNSPEC. Handle UNSPEC_DTPOFF,
4822 UNSPEC_GOTNTPOFF and UNSPEC_NTPOFF.
4823 (legitimate_address_p): Allow foo@dtpoff(base) even on TARGET_64BIT
4824 -fpic.
4825 (ix86_encode_section_info): Don't ever generate TLSGD or TLSLD for
4826 non-pic code if TARGET_64BIT.
4827 (legitimize_address): Generate 64-bit TLS sequences.
4828 (output_pic_addr_const): Support x86-64 TLS operators.
4829 (i386_output_dwarf_dtprel): Output 64-bit DTPOFF as .long f@DTPOFF, 0.
4830 (print_operand_address): Use %fs instead of %gs on TARGET_64BIT.
4831 Don't append (%rip) in 64-bit TLSGD and TLSLD sequences.
4832 (output_addr_const_extra): Support x86-64 TLS operators.
4833 (maybe_get_pool_constant): Handle TARGET_64BIT -fpic.
4834 (ix86_tls_get_addr): Use __tls_get_addr on TARGET_64BIT
4835 unconditionally.
4836 * config/i386/i386.md (*tls_global_dynamic_gnu): Renamed to...
4837 (*tls_global_dynamic_32_gnu): ..., add !TARGET_64BIT.
4838 (*tls_global_dynamic_sun): Renamed to...
4839 (*tls_global_dynamic_32_sun): ..., add !TARGET_64BIT.
4840 (tls_global_dynamic): Renamed to...
4841 (tls_global_dynamic_32): ... this.
4842 (tls_global_dynamic_64, *tls_global_dynamic_64): New.
4843 (*tls_local_dynamic_base_dynamic_gnu): Renamed to...
4844 (*tls_local_dynamic_base_dynamic_32_gnu): ..., add !TARGET_64BIT.
4845 (*tls_local_dynamic_base_dynamic_sun): Renamed to...
4846 (*tls_local_dynamic_base_dynamic_32_sun): ..., add !TARGET_64BIT.
4847 (tls_local_dynamic_base_dynamic): Renamed to...
4848 (tls_local_dynamic_base_dynamic_32): ... this.
4849 (tls_local_dynamic_base_dynamic_64,
4850 *tls_local_dynamic_base_dynamic_64): New.
4851 (*tls_local_dynamic_once): Renamed to...
4852 (*tls_local_dynamic_32_once): ... this.
4853
59798a0c
UW
48542002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4855
4856 * libgcc2.c: Inline __udiv_w_sdiv when compiling __udivdi3,
4857 __divdi3, __umoddi3, or __moddi3.
4858
97d05bfd
UW
48592002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4860
4861 * c-opts.c (missing_arg): Use cl_options[opt_index].opt_code
4862 instead of just opt_index as switch expression.
4863
4864 * calls.c (store_one_arg): Change type of 'excess_align'
4865 to unsigned int.
4866
4867 * profile.c (output_gcov_string): Change type of 'temp'
4868 to size_t.
4869
5d4d885c
UW
48702002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4871
4872 * config/s390/fixdfdi.h (__fixunsdfdi, __fixdfdi): Add prototypes.
4873 (__fixunssfdi, __fixsfdi): Likewise.
4874 * config/s390/s390.c (s390_single_hi): Initialize 'value'.
4875 (s390_single_qi): Likewise.
4876 (s390_emit_epilogue): Initialize 'offset'. Remove signed vs.
4877 unsigned comparison warning.
4878 (s390_return_addr_rtx): New function.
4879 * config/s390/s390-protos.h (s390_return_addr_rtx): Declare it.
4880 * config/s390/s390.h (RETURN_ADDR_RTX): Use it.
4881 (HARD_REGNO_MODE_OK): Rewrite condition to silence warnings.
4882
3062825f
UW
48832002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
4884
4885 * config/s390/s390.c (s390_output_mi_vcall_thunk): New function.
4886 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define target hook.
4887 (s390_output_mi_thunk): Remove.
4888 (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
4889
2918c993
KH
48902002-10-21 Kazu Hirata <kazu@cs.umass.edu>
4891
4892 * config/h8300/h8300.h (N_REG_CLASSES): Parenthesize.
4893
4977bab6
ZW
48942002-10-20 Zack Weinberg <zack@codesourcery.com>
4895
4896 * config/i386/i386.c (ix86_function_ok_for_sibcall): Fix an
4897 inverted test in the conditional determining the possibility
4898 of sibcalls in PIC mode.
4899
c590b625
RH
49002002-10-20 Richard Henderson <rth@redhat.com>
4901
4902 * target.h (struct gcc_target): Line wrap.
4903
4904 * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Static.
4905 (TARGET_ASM_OUTPUT_MI_THUNK): Define here...
4906 * config/alpha/alpha.h: ... not here.
4907 * config/alpha/alpha-protos.h: Update.
4908
4909 * config/arm/arm.c, config/arm/arm.h, config/arm/arm-protos.h
4910 config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
4911 config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
4912 config/i386/i386-protos.h, config/i386/i386.c, config/i386/openbsd.h,
4913 config/i386/unix.h, config/i960/i960-protos.h, config/i960/i960.c,
4914 config/i960/i960.h, config/ia64/ia64-protos.h, config/ia64/ia64.c,
4915 config/ia64/ia64.h, config/m68k/linux.h, config/m68k/m68k-protos.h,
4916 config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
4917 config/mmix/mmix-protos.h, config/mmix/mmix.c, config/mmix/mmix.h,
3aabf9a5 4918 config/pa/pa-protos.h, config/pa/pa.c, config/pa/pa.h,
c590b625
RH
4919 config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
4920 config/sparc/openbsd.h, config/sparc/sparc-protos.h,
4921 config/sparc/sparc.c, config/sparc/sparc.h,
4922 config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
4923 config/stormy16/stormy16.h: Similarly.
4924
4925 * config/m68k/m68k.c (m68k_output_mi_thunk): Replicate mnemonic
4926 selection logic from call patterns.
4927
16f7d029
MM
49282002-10-20 Mark Mitchell <mark@codesourcery.com>
4929
4930 * config/m68k/m68k.c (m68k_output_mi_thunk): Fix typo.
4931
ab3146fd
ZD
49322002-10-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
4933
4934 PR other/8202
4935 * i386.c (ix86_init_mmx_sse_builtins, ix86_expand_builtin): Define and
4936 expand __builtin_ia32_pslldqi128 and __builtin_ia32_psrldqi128.
4937 * i386.h (IX86_BUILTIN_PSLLDQI128, IX86_BUILTIN_PSRLDQI128): New.
4938 * xmmintrin.h (_mm_srli_si128, _mm_slli_si128): New.
4939
e03b7153
RS
49402002-10-20 Roger Sayle <roger@eyesopen.com>
4941
4942 PR c/761
4943 * toplev.c (flag_unsafe_profile_arcs): Remove.
4944 (flag_bounded_pointers): Remove.
4945 (flag_bounds_check): Correct comments.
4946 (lang_independent_options): Remove -funsafe-profile-arcs and
4947 -fbounded-pointers. Correct -fbounds-check comments.
4948
4949 * flags.h: Correct flag_schedule_interblock comments.
4950 (flag_bounded_pointers): Remove prototype.
4951 (flag_bounds_check): Correct comments.
4952
4953 * c-opts.c (c_common_init_options): No need to mark
4954 flag_bounds_check as unspecified.
4955 (c_common_post_options): And no need to set it from
4956 flag_bounded_pointers if its still unspecified.
4957
4958 * doc/invoke.texi: Fix some overfull hboxes in "make dvi".
4959 Document --version, -feliminate-dwarf-2-dups, -fno-sched-interblock,
4960 -fno-sched-spec, -fsched-spec-load, -fsched-spec-load-dangerous,
4961 -fsched-verbose=n, -fno-branch-count-reg and -fbounds-check.
4962
4977bab6
ZW
4963Sat Oct 19 22:02:28 2002 Alexandre Oliva <aoliva@redhat.com>
4964 Angela Marie Thomas <angela@releasedominatrix.com>
4965 Brendan Kehoe <brendan@zen.org>
4966 Nick Clifton <nickc@redhat.com>
4967 Andrew Haley <aph@redhat.com>
4968
4969 * configure.in (--with-sysroot): New. Don't inhibit libc if
4970 given. AC_SUBST TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE
4971 and CROSS_SYSTEM_HEADER_DIR.
4972 * configure: Rebuilt.
4973 * Makefile.in (CROSS_SYSTEM_HEADER_DIR): Set in configure.
4974 (TARGET_SYSTEM_ROOT): New.
4975 (DRIVER_DEFINES): Define CROSS_INCLUDE_DIR from
4976 CROSS_SYSTEM_HEADER_DIR.
4977 (install-gcc-tooldir): New target.
4978 (stmp-fixinc): Do not create $(libsubdir), but rather bail out
4979 if SYSTEM_HEADER_DIR does not exist and it's not the default
4980 sys-include directory.
4981 (deduced.h, stmp-fixproto): Quote SYSTEM_HEADER_DIR properly.
4982 (install-mkheaders): Likewise.
4983 * gcc.c (target_system_root): New variable.
4984 (add_sysrooted_prefix): New function.
4985 (process_command): Recompute run-time target_system_root from
4986 gcc_exec_prefix, keeping it unchanged if the relocated sysroot
4987 does not exist.
4988 (do_spec_1): Process 'R' spec.
4989 (main): Add md_exec_prefix to exec_prefixes regardless of
4990 startfile_prefix_spec. Use add_sysrooted_prefix for
4991 startfile_prefixes, and don't skip the default ones when cross
4992 compiling with sysroot enabled. Removed unused case of
4993 non-absolute standard_startfile_prefix.
4994 * config/interix.h: Remove the only potential, yet disabled,
4995 occurrence of non-absolute (empty) standard_startfile_prefix.
4996 * config/sh/linux.h (LIB_SPEC): Add -rpath-link in non-static
4997 linking.
4998 * config/mips/linux.h (LIB_SPEC): Define as in sh/linux.h.
4999 * doc/install.texi (--with-sysroot): Document.
5000 (--with-headers, --with-libs): Deprecate.
5001
eb0424da 50022002-10-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8bcefb43 5003 Mark Mitchell <mark@codesourcery.com>
eb0424da
MM
5004
5005 * alpha-protos.h (alpha_output_mi_thunk_osf): Update signature to
5006 match target.h.
5007 * arm-protos.h, arm.c (arm_output_mi_thunk): Likewise.
5008 * cris-protos.h, cris.c (cris_asm_output_mi_thunk): Likewise.
5009 * frv-protos.h, frv.c (frv_asm_output_mi_thunk): Likewise.
5010 * i386-protos.h, i386.c (x86_output_mi_vcall_thunk,
5011 x86_output_mi_thunk): Likewise.
5012 * i960-protos.h, i960.c (i960_output_mi_thunk): Likewise.
5013 * ia64-protos.h, ia64.c (ia64_output_mi_thunk): Likewise.
5014 * m68k-protos.h, m68k.c (m68k_output_mi_thunk): Likewise.
5015 * mmix-protos.h, mmix.c (mmix_asm_output_mi_thunk): Likewise.
5016 * rs6000-protos.h, rs6000.c (output_mi_thunk): Likewise.
5017 * s390-protos.h, s390.c (s390_output_mi_thunk): Likewise.
5018 * stormy16-protos.h, stormy16.c (xstormy16_asm_output_mi_thunk):
5019 Likewise.
5020 * vax-protos.h, vax.c (vax_output_mi_thunk): Likewise.
3aabf9a5 5021
eb0424da
MM
5022 * target.h (gcc_target): Update output_mi_thunk and
5023 output_mi_vcall_thunk to take a HOST_WIDE_INT delta and
5024 vcall_index.
5025
5026 * config/alpha/alpha.c: Replace ASM_OUTPUT_MI_THUNK with
5027 TARGET_ASM_OUTPUT_MI_THUNK in comments.
5028 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): Don't #undef it.
5029 (TARGET_ASM_OUTPUT_MI_THUNK): #undef it.
5030 * config/frv/frv.h (DEFAULT_VTABLE_THUNKS): Remove definition.
5031 * config/i386/i386-protos.h (x86_output_mi_vcall_thunk): Update
5032 signature.
5033 * config/i386/i386.c (x86_output_mi_vcall_thunk): Likewise.
5034 * config/i386/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
5035 TARGET_ASM_OUTPUT_MI_THUNK in comments.
5036 * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Don't define.
5037 (TARGET_ASM_OUTPUT_MI_THUNK): Do define.
5038 * config/m68k/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
5039 TARGET_ASM_OUTPUT_MI_THUNK in comments.
5040 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Remove #ifdef
5041 ASM_OUTPUT_MI_THUNK and replace with check of targetm.
5042
5043 * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Update signature.
5044 (TARGET_ASM_OUTPU_MI_VCALL_THUNK): Likewise.
3aabf9a5 5045
433d5d04
BL
50462002-10-19 Brad Lucier <lucier@math.purdue.edu>
5047
5048 * real.c (do_add): Fix 0+0 sign corner case.
5049 (do_divide): Fix Inf/0 corner case.
5050
1194ca05
JH
5051Sun Oct 20 00:31:31 CEST 2002 Jan Hubicka <jh@suse.cz>
5052
5053 * i386.c (classify_argument): Pass MMX arguments in memory
5054 (ix86_expand_builtin): Expand proper address mode for cflush.
5055 * i386.md (movdqa): Fix typo.
5056 (sse2_cflush): Accept DImode addresses.
5057
5058 * xmmintrin.h (_mm_sqrt_sd): Accept two arguments.
5059 (_mm_max_sd): Fix pasto.
5060 (_mm_storeh_pd, _mm_storel_pd): Fix.
5061
5062 * i386.c (bdesc_comi): Fix to match specification.
5063 (ix86_expand_sse_comi): Emit the comparison properly.
5064 * i386.md (sse_comi, sse2_comi, sse_ucomi, sse2_ucomi):
5065 Do not use comparison operator.
5066 (vnmaskcmp): Fix template.
5067
5068 * xmmintrin.h (_mm_cvtps_pi16): Fix.
5069
3df5d99e
SP
50702002-10-19 Sebastian Pop <s.pop@laposte.net>
5071
5072 * dependence.c : Removed.
8bcefb43 5073 * Makefile.in : Remove dependence.o.
3df5d99e 5074
822eda12
JH
5075Sat Oct 19 10:46:52 CEST 2002 Jan Hubicka <jh@suse.cz>
5076
5077 * mmintrin.h (__m64): typedef it to v2si.
5078 (_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16,
5079 _mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16,
5080 _mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64,
5081 _mm_srli_pi64, _mm_and_si64, _mm_andnot_si64,
5082 _mm_or_si64, _mm_xor_si64): Add neccesary casts.
5083 * xmmintrin.h (_mm_setzero_si64): Likewise.
5084
5085 * i386.h (ALIGN_MODE_128): Update comment; add missing modes
5086 (SSE_REG_MODE_P, MMX_REG_MODE_P): New macros.
5087
5088 PR target/7693
5089 Patch by Shawn Wagner
5090 * mmintrin.h: Replace pi64 by si64.
5091
914a7297
DE
50922002-10-18 David Edelsohn <edelsohn@gnu.org>
5093
5094 * rs6000.md (movdf_hardfloat32): Order alternatives consistently.
5095 Use length of 4 not *.
5096 (movdf_hardfloat64): Same. Support DFmode moves to/from CTR/LR.
5097 (movdf_softfloat64): Likewise.
5098 (movdi_internal32): Use length of 4 not *.
5099 (movti_power): Same.
5100 (ctrsi, ctrdi): Same.
5101
4a7510cb
ZW
51022002-10-18 Zack Weinberg <zack@codesourcery.com>
5103
5104 * c-decl.c (start_decl): Point users of the old initialized-
5105 typedef extension at __typeof__.
5106
99c57613
RH
51072002-10-18 Richard Henderson <rth@redhat.com>
5108
5109 * real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New.
5110 (real_to_decimal): Re-implement using the logic from the
5111 gcc 3.2 etoasc. Comment heavily.
5112 (div_significands): Simplify loop startup and comparison logic.
5113
483ab821
MM
51142002-10-18 Mark Mitchell <mark@codesourcery.com>
5115
5116 * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL.
5117 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise.
5118 (TARGET_ASM_OUT): Add them.
5119 * target.h (asm_out): Add output_mi_thunk and
5120 output_mi_vcall_thunk.
5121 * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5122 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5123 * config/arm/arm-protos.h (arm_output_mi_thunk): Declare.
5124 * config/arm/arm.c (arm_output_mi_thunk): Define.
5125 * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5126 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5127 * config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5128 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5129 * config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5130 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5131 * config/i386/i386-protos.h (x86_output_mi_thunk): Adjust
5132 prototype.
5133 (x86_output_mi_vcall_thunk): Declare.
5134 * config/i386/i386.c (override_options): Clear
5135 output_mi_vcall_thunk in 64-bit mode.
5136 (ix86_fntype_regparm): New function.
5137 (ix86_return_pops_args): Use it.
5138 (ia32_this_parameter): New function.
5139 (x86_output_mi_vcall_thunk): New function.
5140 (x86_output_mi_thunk): Use it
5141 * config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust.
5142 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define.
5143 * config/i960/i960-protos.h (i960_output_mi_thunk): Declare.
5144 * config/i960/i960.c (i960_output_mi_thunk): New function.
5145 * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust.
5146 * config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare.
5147 * config/ia64/ia64.c (ia64_output_mi_thunk): Define.
5148 * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5149 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5150 * config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function.
5151 * config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5152 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5153 * config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5154 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5155 * config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5156 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5157 * config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5158 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5159 * config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5160 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5161 * config/s390/s390-protos.h (s390_output_mi_thunk): Declare.
5162 * config/s390/s390.c (s390_output_mi_thunk): Define.
5163 * config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5164 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5165 * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5166 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5167 * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5168 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5169 * config/vax/vax-protos.h (vax_output_mi_thunk): Declare.
5170 * config/vax/vax.c (vax_output_mi_thunk): Define.
5171 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ...
5172 (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
5173 * doc/tm.texi: Adjust documentation.
4a7510cb 5174
90e021a0
JT
51752002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
5176
4a7510cb
ZW
5177 * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define
5178 __enable_execute_stack function.
90e021a0
JT
5179 * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define
5180 as NETBSD_ENABLE_EXECUTE_STACK.
5181 * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5182 * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5183 * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5184 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5185 * config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
5186
5791cc29
JT
51872002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
5188
5189 * config/i386/i386.c (x86_initialize_trampoline): Emit a call
5190 to __enable_execute_stack with the address of the trampoline
5191 if TRANSFER_FROM_TRAMPOLINE is defined.
5192 * config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
5193 constant if building libgcc2.
5194
4977bab6
ZW
5195Thu Oct 17 17:40:05 CEST 2002 Jan Hubicka <jh@suse.cz>
5196
5197 * i386.c (pentium4_cost): Fix according to Intel recommendations.
5198 (ix86_memory_move_cost): Fix for 64bit compilation.
5199
7b35bba3
RS
52002002-10-17 Roger Sayle <roger@eyesopen.com>
5201
5202 * doc/c-tree.texi: Update description of COND_EXPR tree nodes.
5203
b991a865
GK
52042002-10-17 Geoffrey Keating <geoffk@apple.com>
5205
5206 * config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes
5207 in CTR/LR/MQ.
5208 * config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves
5209 to/from CTR/LR/MQ.
5210 (movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ.
5211 (movsf_softfloat): Likewise.
5212
fa870451
JJ
52132002-10-17 Janis Johnson <janis187@us.ibm.com>
5214
5215 * Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS.
5216
e31c2957
JT
52172002-10-17 Jason Thorpe <thorpej@wasabisystems.com>
5218
5219 * config/alpha/alpha.c (alpha_initialize_trampoline): Use
5220 tramp, not addr, to pass the trampoline address to
5221 __enable_execute_stack.
5222
48126a97
JH
5223Thu Oct 17 18:40:47 CEST 2002 Jan Hubicka <jh@suse.cz>
5224
5225 * mmintrin.h: Guard by __MMX__
5226 * xmmintrin.h: Guard by __SSE__
5227
5228 PR other/8062
5229 * xmmintrin.h (_MM_SHUFFLE2): New macro.
5230 (_mm_load*_?d): New functions.
5231 (_mm_set*_?d): New functions.
5232 (_mm_store*_?d): New functions.
5233
2ffa9932
JH
5234Wed Oct 16 15:01:29 CEST 2002 Jan Hubicka <jh@suse.cz>
5235
5236 Really commit patch announced at Oct 14
5237 PR c/7344
5238 * predict.c (can_predict_insn_p): New function.
5239 (estimate_probability): Avoid unnecesary work.
5240 (process_note_prediction): Likewise.
5241 * toplev.c (rest_of_compilation): Account early branch prediction pass
5242 as TV_BRANCH_PROB.
5243
ccc4bdea
JH
5244 PR other/8048
5245 Found by Ian Ollmann
5246 * xmmintrin.h (_mm_shuffle_pd): Fix typo.
5247 (_mm_load?_pd): Likewise.
5248 (_mm_store?_pd): Likewise.
5249
5250 PR target/7386
5251 * i386.c (builtin_description):Drop cmpg[te]s[sd].
5252 * xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using
5253 swapped alternative.
5254
5255 PR opt/7630
5256 * reload1.c (reload_inner_reg_of_subreg): New argument output;
5257 (push_reload): Update call.
5258
4db83639
RS
52592002-10-17 Richard Sandiford <rsandifo@redhat.com>
5260
5261 * config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines
5262 if using mips/elf.h or mips/elf64.h.
5263 * config/mips/elf.h (OBJECT_FORMAT_ELF): Remove.
5264 * config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove.
5265
f9dd72da
AH
52662002-10-16 Aldy Hernandez <aldyh@redhat.com>
5267
5268 * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
5269 SI.
5270
63a1ff86
UW
52712002-10-16 Ulrich Weigand <uweigand@de.ibm.com>
5272
5273 * config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
5274 (LPREFIX): Likewise.
5275 (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME,
5276 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
5277 ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS,
5278 TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
5279 GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h.
5280
4a7510cb
ZW
5281 * config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX,
5282 ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP,
5283 ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
63a1ff86
UW
5284 BSS_SECTION_ASM_OP): Move from linux.h.
5285 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
5286 Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
5287
4a7510cb 5288 * config/s390/s390.c (s390_function_profiler): Use
63a1ff86
UW
5289 ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
5290
4977bab6
ZW
52912002-10-15 Eric Christopher <echristo@redhat.com>
5292
5293 * stor-layout.c (layout_type): Call GET_MODE_BITSIZE once.
5294 * java/parse.y (obtain_incomplete_type): Make pointer
5295 ptr_mode.
5296
da6eec72
RH
52972002-10-15 Richard Henderson <rth@redhat.com>
5298
5299 * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
5300 as arguments. Bound DIGITS by the available buffer size.
5301 (real_to_hexadecimal): Likewise.
5302 * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
5303 (REAL_VALUE_TO_DECIMAL): Remove.
5304 * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
5305 sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
4a7510cb 5306 config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
da6eec72
RH
5307 config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
5308 config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
4a7510cb 5309 config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
da6eec72
RH
5310 config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
5311 use real_to_decimal directly, and with the proper arguments.
5312 * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
5313
c15c18c5
JW
53142002-10-15 Jim Wilson <wilson@redhat.com>
5315
5316 * reload1.c (merge_assigned_reloads): After converting overlapping
5317 reloads to RELOAD_OTHER, abort if there are now conflicting reloads.
5318
5319 * config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok.
5320
74f6d071
JH
5321Tue Oct 15 22:08:35 CEST 2002 Jan Hubicka <jh@suse.cz>
5322
5323 * expr.c (do_tablejump): Fix typo in my previous commit.
5324
a2ee89d8
RS
53252002-10-15 Richard Sandiford <rsandifo@redhat.com>
5326
5327 * config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}.
5328
aee4e0db
UW
53292002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
5330
5331 * config/s390/s390.c (s390_split_branches): Add return
5332 value. Add parameters TEMP_REG and TEMP_USED. Use unspec 104.
5333
5334 (find_base_register_in_addr): New function.
5335 (find_base_register_ref): New function.
5336 (replace_base_register_ref): New function.
5337
5338 (struct constant_pool): Add members pool_insn, insns, and anchor.
5339 Remove member last_insn.
5340 (s390_start_pool): Initialize them.
4a7510cb 5341 (s390_end_pool): Emit pool placeholder insn.
aee4e0db
UW
5342 (s390_add_pool_insn): New function.
5343 (s390_find_pool): Use insns bitmap instead of addresses.
5344 (s390_dump_pool): Replace placeholder insn. Emit anchor.
5345 Replace unspec 104 by local-pool-relative references.
5346 (s390_output_constant_pool): Output anchor label if required.
5347 (s390_output_symbolic_const): Handle unspec 104 and 105.
5348 (s390_add_pool): Remove, replace by ...
5349 (s390_add_constant, s390_find_constant): ... these new functions.
5350 (s390_add_anchor): New function.
5351
5352 (s390_chunkify_pool): Delete, replace by ...
4a7510cb 5353 (s390_chunkify_start, s390_chunkify_finish,
aee4e0db
UW
5354 s390_chunkify_cancel): ... these new functions.
5355 (s390_optimize_prolog): Add parameter TEMP_REGNO.
5356 Recompute register live data for special registers.
5357 (s390_fixup_clobbered_return_reg): New function.
5358 (s390_machine_dependent_reorg): Rewrite to use new
5359 s390_chunkify_... routines.
5360
5361 config/s390/s390.md ("reload_base"): Rename to ...
5362 ("reload_base_31"): ... this.
5363 ("reload_base_64"): New insn.
5364 ("reload_base2"): Remove.
5365 ("reload_anchor"): New insn.
5366 ("pool"): New insn.
5367
5368 s390.c (s390_pool_overflow): Remove.
5369 s390.h (s390_pool_overflow): Likewise.
5370 s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow.
5371
c034672a
R
5372Tue Oct 15 16:51:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
5373
5374 * sh.md (movv8qi_i+2): Don't split if source is -1.
5375
b8db17af
JJ
53762002-10-15 Janis Johnson <janis187@us.ibm.com>
5377
5378 * doc/install.texi: Formatting changes for conformance to HTML 4.01.
5379
2d34c587
UW
53802002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
5381
5382 PR opt/7409
5383 * loop.c (loop_regs_scan): Mark registers used for function
5384 argument passing as MAY_NOT_OPTIMIZE.
5385
4977bab6
ZW
5386Mon Oct 14 19:22:19 CEST 2002 Jan Hubicka <jh@suse.cz>
5387
5388 * gcov-io.h (gcov_info): Fix type.
5389 * profile.c (create_profiler): Fix type mismatch.
5390
1877be45
JH
5391Mon Oct 14 20:33:12 CEST 2002 Jan Hubicka <jh@suse.cz>
5392
5393 * i386.md (movv2di_internal): New pattern.
5394 (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate.
5395 (movv2di): New expander.
5396 * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands.
5397
5398 * i386.c (ix86_expand_timode_binop_builtin): Delete.
5399 (builtin_description): Add SSE1 logicals; rename SSE2 logicals.
5400 (ix86_init_mmx_sse_builtins): Kill SSE1 logicals.
5401 (ix86_expand_builtin): Likewise.
5402 * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
4a7510cb 5403 sse_andti3,
1877be45 5404 sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
4a7510cb 5405 sse_andnti3,
1877be45 5406 sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2,
4a7510cb 5407 sse_orti3,
1877be45 5408 sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2,
4a7510cb 5409 sse_xorti3): Kill.
1877be45
JH
5410 (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3,
5411 sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders.
5412 (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3,
5413 *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns.
5414 (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3,
5415 *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns.
5416
5417 * xmmintrin.h (__m128i): Define as __v2di.
5418
1877be45
JH
5419 PR c++/6419
5420 (expand_expr): Use DECL_RTL_SET_P.
5421
dbf4f1a2
RS
54222002-10-14 Roger Sayle <roger@eyesopen.com>
5423
5424 * combine.c (simplify_set): Treat MODE_CC registers like cc0.
5425
4f770e7b
RS
54262002-10-14 Roger Sayle <roger@eyesopen.com>
5427 Zack Weinberg <zack@codesourcery.com>
5428
5429 * config/i386/i386.c (k6_cost): Correct typo.
5430
a3b88570
MM
54312002-10-14 Mark Mitchell <mark@codesourcery.com>
5432
5433 PR optimization/6631
5434 * alias.c (objects_must_conflict_p): Check honor_readonly when
5435 examining TYPE_READONLY.
5436 * function.c (assign_stack_temp_for_type): Likewise.
5437
f5204e6c
FH
54382002-10-14 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
5439
5440 * config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix):
5441 Swap zero extension arguments.
5442 (umaxhi3): Fix instruction class.
5443 PR target/7211
5444 (prefetch): Fix prefetch instructions.
5445 PR target/7238
5446 (pkwb): Fix output constraint.
5447
40e6bc7e
AO
54482002-10-14 Alexandre Oliva <aoliva@redhat.com>
5449
5450 * config/mips/mips.c (print_operand): Increase buffer size for
5451 real numbers.
5452
f4e3e618
RH
54532002-10-14 Richard Henderson <rth@redhat.com>
5454
5455 PR opt/8165
5456 * gcse.c (adjust_libcall_notes): Revert last change.
5457 * simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM.
5458
3eb429b2
AH
54592002-10-14 Andrew Haley <aph@redhat.com>
5460
5461 * tree-inline.c (remap_block): All local class initialization
5462 flags go in the outermost scope.
5463 (expand_call_inline): Call java_inlining_map_static_initializers.
5464 (expand_call_inline): Call java_inlining_merge_static_initializers.
5465 * java/lang.c (merge_init_test_initialization): New.
5466 (java_inlining_merge_static_initializers): New.
5467 (inline_init_test_initialization): New.
5468 (java_inlining_map_static_initializers): New.
5469
5470 * tree-inline.c (expand_call_inline): Convert retvar to expected
5471 type.
5472
34146b94
GS
54732002-10-14 Graham Stott <graham.stott@btinternet.com>
5474
5475 * stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check.
5476
3a840c93
AH
54772002-10-14 Aldy Hernandez <aldyh@redhat.com>
5478
5479 * stmt.c: Fix typo in comment.
5480
7457a126
R
5481Mon Oct 14 11:35:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
5482
5483 * c-common.c (c_common_type_for_mode): Add V2HImode case.
5484 * tree.c (build_common_tree_nodes_2): Initialize
5485 unsigned_V2HI_type_node and V2HI_type_node.
5486 * tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE.
5487 (unsigned_V2HI_type_node, V2HI_type_node): Define.
5488
0d1c5774
JJ
54892002-10-14 Jakub Jelinek <jakub@redhat.com>
5490
5491 * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
5492 Handle TARGET_64BIT.
5493
adadd183
RS
54942002-10-14 Richard Sandiford <rsandifo@redhat.com>
5495
5496 * config/mips/vr.h (DRIVER_SELF_SPECS): Define.
5497 * config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32.
5498 (MULTILIB_DIRNAMES): Remove long32.
5499 (MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs.
5500 (MULTILIB_REDUNDANT_DIRS): Remove.
5501
db36994b
RS
55022002-10-14 Richard Sandiford <rsandifo@redhat.com>
5503
5504 * doc/tm.texi (DRIVER_SELF_SPECS): Document.
5505 * gcc.c (driver_self_specs): New variable.
5506 (do_self_spec): New function.
5507 (main): Use it to process driver_self_specs.
5508
11e5489b
RH
55092002-10-13 Richard Henderson <rth@redhat.com>
5510
4977bab6
ZW
5511 * config/i386/i386.c (ix86_function_ok_for_sibcall): Reject
5512 indirect sibcalls when regparm >= 3.
5513
5514 * config/i386/i386.c (sibcall_insn_operand): New.
5515 * config/i386/i386.h (PREDICATE_CODES): Update.
5516 * config/i386/i386-protos.h: Update.
5517 * config/i386/i386.md (sibcall_1, sibcall_value_1): Use it.
5518
11e5489b
RH
5519 * rtl.c (shallow_copy_rtx): Use memcpy for the entire node.
5520
4977bab6
ZW
55212002-10-12 Roger Sayle <roger@eyesopen.com>
5522
5523 * simplify-rtx.c (simplify_binary_operation) [ASHIFTRT]: Optimize
5524 arithmetic right shifts of ~0 during RTL simplifications.
5525
4ca1256f
NB
55262002-10-12 Neil Booth <neil@daikokuya.co.uk>
5527
5528 PR preprocessor/7862
5529 PR preprocessor/8190
5530 * gcc.c (cpp_unique_options): Don't delete .d files.
5531 Remove stray whitespace.
5532
cf860dc2
NS
55332002-10-12 Naohiko Shimizu <pshimizu@fa2.so-net.ne.jp>
5534
5535 * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant.
5536 (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
5537 * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o.
5538 (pdp11_output_function_epilogue, output_ascii): Likewise.
5539 (output_addr_const_pdp11): Likewise.
5540 * pdp11.md (movdi): Use offsetable memory for floating store.
5541 (lshrsi3, negsi2): Delete irrelevant comment.
5542
4977bab6
ZW
55432002-10-11 Andreas Bauer <baueran@in.tum.de>
5544
5545 * config/i386/i386.c (ix86_function_ok_for_sibcall): Allow
5546 indirect calls to be sibcall optimized.
5547 * config/i386/i386.md (sibcall_1): New.
5548 (call_1): Add no-sibcalls condition.
5549 (sibcall_value_1): New.
5550 (call_value_1): Add no-sibcalls condition.
5551
55522002-10-11 Eric Christopher <echristo@redhat.com>
5553
5554 * output.h (default_valid_pointer_mode): Declare.
5555 * varasm.c (default_valid_pointer_mode): Define.
5556 * target-def.h (TARGET_VALID_POINTER_MODE): Use.
5557 * target.h: Ditto.
5558 * tree.c (build_pointer_type_for_mode): New function.
5559 (build_pointer_type): Use.
5560 (build_reference_type_for_mode): New function.
5561 (build_reference_type): Use.
5562 * tree.h: Declare new functions.
5563 * c-common.c (handle_mode_attribute): Use new functions, check
5564 for type.
5565 * stor-layout.c (layout_type): Depend on machine mode for
5566 REFERENCE_TYPE and POINTER_TYPE.
5567 * dwarf2out.c (simple_type_size_in_bits): Move upward in file.
5568 (modified_type_die): Use instead of PTR_SIZE for POINTER_TYPE
5569 and REFERENCE_TYPE.
5570 * config/mips/mips.c (mips_valid_pointer_mode): New function.
5571 (TARGET_VALID_POINTER_MODE): Use and define.
5572 * config/mips/mips-protos.h (mips_valid_pointer_mode): Declare.
5573
5dd78e9a
GK
55742002-10-11 Geoffrey Keating <geoffk@apple.com>
5575
5576 * cse.c (mention_regs): Set SUBREG_TICKED to the register number,
5577 not the address of the REG.
5578 (struct cse_reg_info): Make subreg_ticked unsigned.
5579
8eb32f94
JJ
55802002-10-11 Janis Johnson <janis187@us.ibm.com>
5581
5582 * doc/compat.texi: Add info about C++ libraries.
5583
e197b6fc
RH
55842002-10-11 Richard Henderson <rth@redhat.com>
5585
5586 PR opt/8165
5587 * gcse.c (adjust_libcall_notes): Also adjust notes for INSN.
5588
a0bed689
JDA
55892002-10-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
5590
5591 * cfganal.c (dfs_enumerate_from): Use PARAMS.
5592 * genautomata.c (output_insn_code_cases): Likewise.
5593 * real.c (real_format): Likewise.
5594 * tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to
5595 ensure value is promoted before doing subtraction.
5596
db655634
JH
5597Fri Oct 11 22:22:38 CEST 2002 Jan Hubicka <jh@suse.cz>
5598
5599 * calls.c (expand_call): Simplify noreturn call.
5600
5601 PR c/7344
5602 * cfgbuild.c (make_edges): Create edge cache when we do have
5603 large jumptable.
1877be45 5604 * expr.c (do_tablejump): Note size of maximal jumptable.
db655634
JH
5605 * function.c (prepare_function_start): Zero out size.
5606 * function.h (function): Add max_jumptable_ents.
5607
5608 * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
5609
750afc12
R
5610Fri Oct 11 12:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
5611
5612 * sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI
5613 register for mperm_w operation.
5614
0488fa7c
JR
5615Fri Oct 11 10:56:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
5616
5617 * emit-rtl.c (gen_lowpart_common): When asked to make a vector from
5618 an integer, use simplify_gen_subreg.
5619
4977bab6
ZW
56202002-10-10 Diego Novillo <dnovillo@redhat.com>
5621
5622 * calls.c (flags_from_decl_or_type): Make extern.
5623 (ECF_*): Move ...
5624 * rtl.h (ECF_*): ... here.
5625 (flags_from_decl_or_type): Declare.
5626
56272002-10-10 Roger Sayle <roger@eyesopen.com>
5628 Nathan Sidwell <nathan@codesourcery.com>
5629
5630 * fold-const.c (fold) [RSHIFT_EXPR]: Optimize arithmetic right
5631 shifts of the form -1 >> x.
5632
5633Thu Oct 10 16:52:55 CEST 2002 Jan Hubicka <jh@suse.cz>
5634
5635 * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
5636
349e9f4b
AH
56372002-10-10 Aldy Hernandez <aldyh@redhat.com>
5638
5639 * extend.texi (Vector Extensions): Remove comment about single
5640 element vectors.
5641
7bdfd72e
KG
56422002-10-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5643
5644 * fold-const.c (size_htab_hash): Use htab_hash_pointer.
5645 * function.c (insns_for_mem_hash): Likewise.
5646 * varasm.c (STRHASH): Likewise.
5647
46081bb3
SH
56482002-10-10 Stuart Hastings <stuart@apple.com>
5649
5650 * cse.c (struct cse_reg_info): Add subreg_ticked.
5651 (SUBREG_TICKED): New.
5652 (get_cse_reg_info): Initialize SUBREG_TICKED.
5653 (mention_regs): Use it.
5654 (invalidate): Set SUBREG_TICKED.
5655 (invalidate_for_call): Likewise.
5656 (addr_affects_sp_p): Likewise.
5657
9785f1d9
JJ
56582002-10-10 Jakub Jelinek <jakub@redhat.com>
5659
5660 * config/i386/i386.md (tls_local_dynamic_base): Put pic reg
5661 into proper operand.
5662
b6878188
DC
56632002-10-10 Denis Chertykov <denisc@overta.ru>
5664
5665 * config/ip2k/ip2k.c (function_epilogue): Optimize stack
5666 deallocation.
5667 * config/ip2k/libgcc.S: Combine routines used by function
5668 epilogue.
5669
f930bfd0
JW
56702002-10-10 Jim Wilson <wilson@redhat.com>
5671
5672 * cse.c (fold_rtx): Don't perform associative optimization for DIV and
5673 UDIV.
5674
5f5d5417
DE
56752002-10-10 David Edelsohn <edelsohn@gnu.org>
5676
5677 * config/rs6000/aix52.h: New file.
5678 * config/rs6000/t-aix52: New File.
5679 * config.gcc (rs6000-ibm-aix5.1.*): New entry.
5680 (rs6000-ibm-aix[56789].*): Default to AIX 5.2.
5681
7eafc329
JH
5682Thu Oct 10 19:37:54 CEST 2002 Jan Hubicka <jh@suse.cz>
5683
5684 PR target/5610
5685 * invoke.texi (-msse-math): Kill
5686 (-msse): Add note to mfpmath=sse.
5687
b105d6da
JH
5688Thu Oct 10 17:08:30 CEST 2002 Jan Hubicka <jh@suse.cz>
5689
5690 PR target/7723
5691 * i386.c (ix86_expand_vector_move): Do not generate const0->mem moves.
5692
5febdf0d
NB
56932002-10-10 Neil Booth <neil@daikokuya.co.uk>
5694
5695 PR preprocessor/8179
5696 * gcc.c (cpp_options): Add {ansi}, move %{m*} to same location
5697 as cc1_options.
5698 (default_compilers): Pass debug options when preprocessing
5699 stdin.
5700
7db40b5f
RH
57012002-10-06 Richard Henderson <rth@redhat.com>
5702
5703 * toplev.c (rest_of_compilation): Revert opt/2960 change.
5704
4977bab6
ZW
5705Wed Oct 9 21:18:43 CEST 2002 Jan Hubicka <jh@suse.cz>
5706
5707 * i386.c (*_cost): Add branch costs.
5708 (override_options): set ix86_branch_cost.
5709 (ix86_expand_int_movcc): Use BRANCH_COST.
5710 * i386.h (costs): Add branch_cost.
5711
95f79357
ZW
57122002-10-09 Zack Weinberg <zack@codesourcery.com>
5713
5714 PR c/7353
5715 * c-decl.c (start_decl): Unconditionally issue error for
5716 'typedef foo = bar'.
5717 (finish_decl): Remove special case for TYPE_DECL with initializer.
5718
5719 * doc/extend.texi: Delete "Naming Types" section. Change all
5720 cross-references to that section to refer to "Typeof" instead.
5721 Add the useful safe-max()-macro example from "Naming Types" to
5722 "Typeof", rewritten using that extension. Add some compatibility
5723 notes to "Typeof."
5724
44a5565d
KG
57252002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5726
5727 * loop.c: Revert 2002-08-15 change.
5728 (LOOP_REGNO_NREGS): Ensure type is int.
5729
a2419b96
DE
57302002-10-09 David Edelsohn <edelsohn@gnu.org>
5731
5732 * config/rs6000/rs6000.md (extenddftf2): Change to define_insn
5733 which copies first FPR and clears second.
5734 (extendsftf2): Same.
5735 (floatditf2): Fix typo.
5736 (floatsitf2): Same.
5737 (fix_trunctfdi2): Same.
5738 (fix_trunctfsi2): Same.
5739
fb7e6024
KG
57402002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5741
5742 * conflict.c (arc_hash): Change return type to hashval_t.
5743 * cselib.c (get_value_hash): Likewise.
5744 * genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash,
5745 state_hash, automata_list_hash): Likewise.
5746 * read-rtl.c (def_hash): Likewise.
5747 * tree.c (type_hash_hash): Likewise.
5748
36f7e964
AH
57492002-10-08 Aldy Hernandez <aldyh@redhat.com>
5750
5751 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call
5752 prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes.
5753
e3c62520
R
5754Wed Oct 9 15:54:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
5755
5756 * sh.md (ffssi2): Fix emitted code.
5757
a3745024
UW
57582002-10-09 Ulrich Weigand <uweigand@de.ibm.com>
5759
5760 * cse.c (insn_live_p): Pass insn pattern, not full insn
5761 to may_trap_p.
5762
5cc67323
NB
57632002-10-09 Neil Booth <neil@daikokuya.co.uk>
5764
5765 * cppmacro.c (paste_tokens): Only allow / to paste with =.
5766
f5264b52
DE
57672002-10-09 David Edelsohn <edelsohn@gnu.org>
5768
5769 * config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on
5770 64-bit hosts.
5771 (movtf_internal): Reference correct displacement for second value
5772 in memory.
5773 (movtf splitter): Correct generation of constants in 64-bit mode.
5774
cef1c1ba
AM
57752002-10-09 Alan Modra <amodra@bigpond.net.au>
5776
5777 * libgcc2.c (__floatdisf): Properly cure double rounding.
5778
8d15eebc
GDR
57792002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
5780
5781 * c-common.c (cb_register_builtins): Define __WCHAR_MAX__.
5782 * doc/cpp.texi (Common Predefined Macros): Document.
5783
87ec8de9
GDR
57842002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
5785
5786 PR doc/7484
5787 * doc/invoke.texi (Option Summary): List
5788 -Wmissing-declarations as a C only option.
5789
4977bab6
ZW
57902002-10-08 Roger Sayle <roger@eyesopen.com>
5791
5792 * fold-const.c (fold) [LROTATE_EXPR, RROTATE_EXPR]: Optimize
5793 left and right rotates of ~0, i.e. integer_all_onesp (arg0).
5794 [LSHIFT_EXPR, RSHIFT_EXPR]: Optimize shifts and rotates of zero.
5795
5796Tue Oct 8 01:24:19 CEST 2002 Jan Hubicka <jh@suse.cz>
5797
5798 * i386.c (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
5799 x86_sse_typeless_stores, x86_sse_load0_by_pxor): New global
5800 variables.
5801 (safe_vector_operand): Update sse_clrv4sf call.
5802 (ix86_expand_buildin): Likewise
5803 * i386.h (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
5804 x86_sse_typeless_stores, x86_sse_load0_by_pxor): Declare.
5805 (TARGET_SSE_PARTIAL_REG_DEPENDENCY, TARGET_SSE_PARTIAL_REGS,
5806 TARGET_SSE_TYPELESS_STORES, TARGET_SSE_TYPELESS_LOAD0): New
5807 macros.
5808 * i386.md (movsf*, movdf*, movti, movv4sf, movv2df, movv16qi, movv8hi,
5809 movv4si): Obey the new flags.
5810 (floatsi2sf, floatdi2sf, truncatedf2sf): Emit extra load of 0 to avoid
5811 reformating penalty.
5812 (anddf, cmov patterns): Avoid reformating by first converting.
5813 (sse_cvtsd2ss): Fix predicate.
5814 (sse2_clrti): Fix mode,
5815 (sse_clrv4sf): Avoid unspec.
5816
fb7d9c35
JJ
58172002-10-08 Jakub Jelinek <jakub@redhat.com>
5818
5819 * config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove
5820 mno-app-regs|mcmodel=medany.
5821 (MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt.
5822 (MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove.
5823 (CRTSTUFF_T_CFLAGS): Define.
5824
11f3e4c7
RS
58252002-10-08 Roger Sayle <roger@eyesopen.com>
5826
5827 PR target/8087
5828 * simplify-rtx.c (avoid_constant_pool_reference): Allow constant
5829 pool references that are constructed using LO_SUM.
5830
bf52f899
NS
58312002-10-08 Nathan Sidwell <nathan@codesourcery.com>
5832
5833 * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to
5834 -Wall.
5835 * c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak
5836 message.
5837 * flags.h (warn_strict_aliasing): Declare.
5838 * toplev.c (warn_strict_aliasing): Define.
5839 (lang_independent_options): Add it.
5840 * doc/invoke.texi (-Wstrict-aliasing): Document it.
5841
36624850
ZW
58422002-10-08 Zack Weinberg <zack@codesourcery.com>
5843
5844 * system.h (GCCBUGURL): Delete.
5845 * version.c (bug_report_url): New. Add commentary about
5846 modifying both these strings in modified distributions.
5847 * version.h: Declare bug_report_url.
5848
5849 * diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with
5850 bug_report_url.
5851
218145d6
NC
58522002-10-08 Nick Clifton <nickc@redhat.com>
5853
5854 * config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to
5855 convert uint64_t into __ev64_opaque__.
5856 (__ev_set_acc_s64): Likewise, but using signed types.
5857
bb02f6ed
UW
58582002-10-08 Ulrich Weigand <uweigand@de.ibm.com>
5859
5860 * config/s390/s390.md ("*doloop_si_long"): Add missing operand.
5861 ("*doloop_di_long"): Likewise.
5862
4fdbcfb2
JH
5863Tue Oct 8 16:50:10 CEST 2002 Jan Hubicka <jh@suse.cz>
5864
5865 * print-rtl.c (print_rtx): Increase buffer size for real numbers.
5866
e80f2609
RS
58672002-10-08 Richard Sandiford <rsandifo@redhat.com>
5868
5869 * config/mips/mips.md (define_attr cpu): Add r4111.
5870
36624850 58712002-10-08 Anthony Green <green@redhat.com>
4213a3b6 5872
36624850 5873 * bitmap.c (bitmap_equal_p): Clear all bitmap_head fields.
4213a3b6 5874
25009e02
MH
58752002-10-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
5876
5877 * config/c4x/c4x.c (c4x_print_operand): Enlarge buffer
5878 for REAL_VALUE_TO_DECIMAL output.
5879
4977bab6
ZW
58802002-10-07 Richard Henderson <rth@redhat.com>
5881
5882 * cse.c (fixed_base_plus_p): Turn FIXED_BASE_PLUS_P into a
5883 function; cleanup PLUS case by using recursion. Update all users.
5884 (NONZERO_BASE_PLUS_P): Remove.
5885 (find_comparison_args): Use rtx_addr_can_trap_p instead.
5886 (fold_rtx): Use nonzero_address_p.
5887 * rtl.h (nonzero_address_p): Declare.
5888 * rtlanal.c (rtx_varies_p): Handle ADDRESSOF.
5889 (rtx_addr_can_trap_p): Likewise.
5890 (nonzero_address_p): New.
5891 * simplify-rtx.c (NONZERO_BASE_PLUS_P): Remove.
5892 (simplify_relational_operation): Use nonzero_address_p.
5893
fcce224d
DE
58942002-10-07 David Edelsohn <edelsohn@gnu.org>
5895
5896 * config/rs6000/rs6000.c (rs6000_override_options): Set
5897 real_format_for_mode for IBM extended format, if enabled.
5898 (easy_fp_constant): Add TFmode.
5899 (rs6000_legitimize_address): Add TFmode.
5900 (rs6000_legitimate_address): Same.
5901 (function_arg_advance): TFmode uses two FPRs.
5902 (rs6000_emit_prologue): Fix warning.
5903 (rs6000_output_function_epilogue): Add TFmode.
5904 (output_toc): Add TFmode.
5905 * rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode.
5906 (LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode.
5907 * rs6000.md (movtf splitter): Load TFmode constant.
5908
dad482e6 59092002-10-07 Dale Johannesen <dalej@apple.com>
fcce224d 5910
dad482e6
DJ
5911 * rtl.h: Add NOTE_PRECONDITIONED.
5912 * unroll.c: Set it.
5913 * loop.c: Set loop_info->preconditioned from it.
5914 * doloop.c: Permit doloop treatment when loop_info->preconditoned.
5915
de3beb7c
RH
59162002-10-07 Richard Henderson <rth@redhat.com>
5917
5918 * config/i960/i960.c (i960_setup_incoming_varargs): Create a
5919 new rtx for comparing the argument pointer against zero.
5920 (i960_va_start): Similarly.
5921
87cb2a87
RH
59222002-10-07 Richard Henderson <rth@redhat.com>
5923
5924 * config/i960/i960.md (*): Use TFmode, not XFmode.
5925 * config/i960/i960.c (*): Likewise.
5926 (i960_arg_size_and_align): Remove XFmode alignment hack.
5927 (i960_round_align): Merge code from ROUND_TYPE_ALIGN.
5928 * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96.
5929 (MAX_LONG_DOUBLE_TYPE_SIZE): Likewise.
5930 (DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove.
5931
5ef38d2a
RH
59322002-10-07 Richard Henderson <rth@redhat.com>
5933
5934 * config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode
5935 entry points; use void return value and argument list.
5936
4977bab6
ZW
59372002-10-06 Andreas Bauer <baueran@in.tum.de>
5938
5939 * calls.c (expand_call): Fix function-is-volatile check.
5940
e7f9979a
NS
59412002-10-05 Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp>
5942
5943 * t-pdp11: Add MULTILIB support for msoft-float.
5944 * pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case.
5945
5946 * t-pdp11: Add LIB2FUNCS_EXTRA.
36624850 5947 * pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit,
e7f9979a
NS
5948 add preceding 0 to the octal constant, rename 'fp' to 'r5', rename
5949 'fldd' to 'ldd', rename 'fstd' to 'std'.
5950 (pdp11_output_function_epilogue): Likewise.
5951 (output_move_quad): Make the comment gas compatible.
5952 (output_ascii): Add preceding 0 to the octal constant.
5953 (print_operand_address): Add pre_modify, post_modify.
5954 (output_addr_const_pdp11): Add preceding 0 to the octal constant.
5955 * pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case
36624850 5956 with the indication of Paul Koning.
e7f9979a
NS
5957 (PRINT_OPERAND): Fix floating constant.
5958 * pdp11.md (movdi): Restrict matching pattern.
5959 (movqi): Generalize the matching pattern.
5960 (movdf): Restrict matching pattern.
5961 (zero_extendqihi2): Change constant representation.
5962 (floatsidf2): Fix wrong operands.
5963 (addqi3): Fix wrong instruction name.
5964 (subqi3): Fix wrong instruction name.
5965 (andsi3, andhi3, andqi3): Simplify and fix to use 'bic'.
5966 (xorsi3): Fix wrong insn.
5967 (one_cmplqi2): Add two operand pattern.
5968 (lsrsi3): New.
5969 (negsi2): New.
5970 (call): Add register indirect case.
5971 (mod): Fix wrong subreg.
5972
a9b6f1e7 59732002-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
36624850 5974 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
4ef7870a
EB
5975
5976 PR c/7411
5977 * expr.c (expand_expr) [PLUS]: Simplify after the operands
5978 have been expanded in EXPAND_NORMAL mode.
5979
a2900460
RH
59802002-10-06 Richard Henderson <rth@redhat.com>
5981
5982 * config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint.
5983
ff025ab9
RH
59842002-10-06 Richard Henderson <rth@redhat.com>
5985
5986 PR optimization/2960
5987 * toplev.c (rest_of_compilation): Don't copy_loop_headers if
5988 optimize_size.
5989
48b80d93
AO
59902002-10-06 Alexandre Oliva <aoliva@redhat.com>
5991
5992 * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override
5993 previously definitions.
5994
7c7c549e
FCE
59952002-10-06 Frank Ch. Eigler <fche@redhat.com>
5996
5997 * cppinit.c (init_standard_includes, parse_option): Use strncmp.
5998 * c-opts.c (find_opt): Similarly.
5999
4977bab6
ZW
6000Sat Oct 5 22:48:06 CEST 2002 Jan Hubicka <jh@suse.cz>
6001
6002 * athlon.md: rewrite to DFA.
6003 * i386 (ix86_adjust_cost): Drop memory latency code.
6004 (ia32_use_dfa_pipeline_interface): Return true for Athlon.
6005
c49d2df6
JJ
60062002-10-05 Jakub Jelinek <jakub@redhat.com>
6007
6008 * gcc.c (set_multilib_dir): Don't access *end.
6009 Use memcpy instead of strncpy. Don't write beyond malloced buffer.
6010 (print_multilib_info): Don't show paths starting with ".:".
6011 * genmultilib: Add new option, "yes" if multilibs are enabled.
6012 Update comments. If multilibs not enabled, print .:${osdirout}
6013 for each directory. If multilibs are enabled, always print
6014 ${dirout}:${osdirout}, even if the two are the same.
6015 * Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib.
6016 Pass all MULTILIB_* variables to genmultilib even if
6017 --disable-multilib but MULTILIB_OSDIRNAMES is not empty.
6018
4977bab6
ZW
60192002-10-04 Zack Weinberg <zack@codesourcery.com>
6020
6021 * gcc.c (process_command): Set .validated for -pipe. Correct
6022 grammar in comment.
6023
d758c1db
BK
60242002-10-04 Bruce Korb <bkorb@gnu.org>
6025
6026 * fixinc/inclhack.def(hpux11_abs): use format fix
6027 * fixinc/fixincl.x: regenerate
6028 * fixinc/tests/base/stdlib.h: accommodate new fix test
6029
b3dc87c5
JH
6030Sat Oct 5 19:42:45 CEST 2002 Jan Hubicka <jh@suse.cz>
6031
6032 * c-common.c (cb_register_builtins): Use really_no_inline.
6033
f7a21c70
DE
60342002-10-04 David Edelsohn <edelsohn@gnu.org>
6035
6036 * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
6037 copied instruction if the note is not loop invariant.
6038
081d6fb9
LR
60392002-10-04 Loren J. Rittle <ljrittle@acm.org>
6040
6041 * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
6042
c5d3d49b
SE
60432002-10-04 Steve Ellcey <sje@cup.hp.com>
6044
6045 * doc/invoke.texi (HPPA): Add -mlinker-opt, -mgnu-ld,
6046 and -mhp-ld options to list of options. Add -mgnu-ld
6047 and -mhp-ld option descriptions.
6048
0fca111b
SE
60492002-10-04 Steve Ellcey <sje@cup.hp.com>
6050
6051 * fixinc/inclhack.def (hpux11_abs): New.
6052 (stdio_va_list): change __va_list__ to __gnuc_va_list.
6053 * fixinc/fixincl.x: Rebuild.
6054
229b303a
RS
60552002-10-04 Roger Sayle <roger@eyesopen.com>
6056
6057 * config/i386/i386.h (processor_costs): Add new fields fadd,
6058 fmul, fdiv, fabs, fchs and fsqrt to costs structure.
6059 (RTX_COSTS): Use these fields to determine the RTX costs
6060 of floating point addition/subtraction, multiplication,
6061 division, fabs, negation and square root respectively.
6062 * config/i386/i386.c (size_cost): Provide instruction sizes
6063 for these new fields.
6064 (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
6065 k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
6066 counts for these new fields for all x86 processor variants.
6067
481ed21a
KG
60682002-10-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6069
6017ba03
KG
6070 * mips.c (mips_const_double_ok): Delete unused variable.
6071
481ed21a
KG
6072 * gengtype.c (rtx_next): Change type to int.
6073
635f4680
AJ
60742002-10-04 Andreas Jaeger <aj@suse.de>
6075
6076 * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
6077
ee6ff319
RH
60782002-10-04 Richard Henderson <rth@redhat.com>
6079
6080 * real.h (SIGNIFICAND_BITS): Add one more word.
6081 (CONST_DOUBLE_FORMAT): Accomodate 6 words.
6082 * real.c (times_pten): New.
6083 (real_to_decimal, real_from_string): Use it.
6084 (sticky_rshift_significand): Use & to find modulus.
6085 (rshift_significand, lshift_significand): Likewise.
6086 (do_divide): Apply sticky bit after normalization.
6087 (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
6088
4977bab6
ZW
60892002-10-03 Andreas Bauer <baueran@in.tum.de>
6090
6091 * doc/tm.texi (FUNCTION_OK_FOR_SIBCALL): Remove.
6092 (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
6093
6d8dd940
AJ
60942002-10-03 Andreas Jaeger <aj@suse.de>
6095
6096 * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
6097 to unsigned long, adjust printf format string.
6098 (output_mangled_typename): Likewise.
6099
191fe2bb
JT
61002002-10-03 Jason Thorpe <thorpej@wasabisystems.com>
6101
6102 * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
6103 * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
6104 (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
6105 assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
6106 (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
6107 (PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
6108 * config/vax/elf.h (FUNCTION_PROFILER): Remove.
6109 (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
6110
6397d80b
MM
61112002-10-03 Mark Mitchell <mark@codesourcery.com>
6112
6113 * doc/invoke.texi (-Wabi): Document mangling bug.
6114
69c75916
AM
61152002-10-04 Alan Modra <amodra@bigpond.net.au>
6116
6117 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
6118 name for the tbtab label that depends on the function asm name.
6119 Don't output tbtab label unless optional_tbtab.
6120 (output_mi_thunk): Formatting.
6121
adf2ac37
RH
61222002-10-03 Richard Henderson <rth@redhat.com>
6123
6124 * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
6125 * config/m68k/m68k.c (override_options): ... here.
6126 * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
6127 * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
6128 * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
6129 * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
6130
a7519393
RH
61312002-10-03 Richard Henderson <rth@redhat.com>
6132
6133 * real.h (struct real_value): Use ENUM_BITFIELD.
6134
41552736
RH
61352002-10-03 Richard Henderson <rth@redhat.com>
6136
6137 * config/i960/i960.md (call, call_value): Use emit_call_insn.
6138
882affa8
SE
61392002-10-03 Steve Ellcey <sje@cup.hp.com>
6140
6141 * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
6142
83eb95f9
SE
61432002-10-03 Steve Ellcey <sje@cup.hp.com>
6144
6145 * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
6146 * config/pa/pa.h (MASK_GNU_LD): New.
6147 (TARGET_GNU_LD): New.
6d8dd940 6148 * config/pa/pa64-hpux.h (LINK_SPEC): Set based
83eb95f9
SE
6149 on gnu-ld and MASK_GNU_LD.
6150 (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
6151
b72b1c29
JH
6152Thu Oct 3 23:35:51 CEST 2002 Jan Hubicka <jh@suse.cz>
6153
6154 * i386.c (athlon_cost): Fix the move costs.
6155
92b7a2a5
JH
6156Thu Oct 3 23:20:58 CEST 2002 Jan Hubicka <jh@suse.cz>
6157
6158 * final.c (final): Use symbol name as function name for profiling.
6159 * profile.c (get_exec_counts): Likewise.
6160 (branch_prob): Likewise.
6161
429489e5
JJ
61622002-10-03 Jakub Jelinek <jakub@redhat.com>
6163
6164 * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
6165
5bbcd587
JJ
61662002-10-03 Jakub Jelinek <jakub@redhat.com>
6167
6168 * gcc.c (print_multi_os_directory): New variable.
6169 (option_map): Support --print-multi-os-directory.
6170 (struct prefix_list): Add os_multilib field.
6171 (multilib_os_dir): New variable.
6172 (static_specs): Add multilib_options.
6173 (find_a_file): Add multilib argument. Search in GCC or OS multilib
272d0bee 6174 subdirs if nonzero.
5bbcd587
JJ
6175 (read_specs, execute): Update callers.
6176 (find_file): Likewise. Don't prefix name with multilib_dir, instead
6177 pass 1 as multilib option.
6178 (display_help): Include --print-multi-os-directory.
6179 (add_prefix): Add os_multilib argument. Initialize pl->os_multilib.
6180 (process_command): Update callers. Handle --print-multi-os-directory.
6181 (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
6182 set.
6183 (main): Update find_a_file and add_prefix callers.
6184 Handle print_multi_os_directory.
6185 (struct mdswitchstr): New.
6186 (mdswitches, n_mdswitches): New variables.
6187 (used_arg): Add MULTILIB_DEFAULT switches too if they are not
6188 present on the command line nor their mutually incompatible
6189 switches.
6190 (default_arg): Optimize.
6191 (set_multilib_dir): Compute multilib_os_dir. Initialize mdswitches
6192 array.
6193 (print_multilib_info): Only print GCC multilib dir name, not OS
6194 multilib dirname.
6195 * genmultilib: Add osdirnames parameter. Output multilib_options
6196 variable. If osdirnames is specified, output dirnames as
6197 dirname:osdirname.
6198 * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
6199 and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
6200 to compute libgcc_s soname and install path.
6201 * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
6202 SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
6203 (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
6204 argument.
6205
6206 * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
6207 (SHLIB_SLIBDIR_SUFFIXES): Remove.
6208 * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
6209 ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
6210 (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
6211 and -m64.
6212 * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
6213 (SHLIB_SLIBDIR_SUFFIXES): Remove.
6214 * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
6215 (STARTFILE_ARCH_SPEC): Remove.
6216 * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
6217 (SHLIB_SLIBDIR_SUFFIXES): Remove.
6218 * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
6219 * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
6220 (SHLIB_SLIBDIR_SUFFIXES): Remove.
6221
c07f146f
JH
6222Thu Oct 3 21:42:20 CEST 2002 Jan Hubicka <jh@suse.cz>
6223
6224 * predict.c (choose_function_section): Avoid choice for linkonce functions.
6225
4c9c9a3d
JH
6226Thu Oct 3 15:15:00 CEST 2002 Jan Hubicka <jh@suse.cz>
6227
6228 * i386.md (lea to mul peep2): Fix condition.
6d8dd940 6229
f50df1d5
JDA
62302002-10-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
6231
6232 * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
6233 * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
6234
4977bab6
ZW
62352002-10-02 David Mosberger-Tang <David.Mosberger@acm.org>
6236
6237 * unwind.h (_Unwind_GetTextRelBase): Mark _C argument with
6238 attribute "unused".
6239
6240 * config/t-libunwind: Mention unwind-sjlj.c.
6241 * unwind-libunwind.c: Change #ifdef __USING_LIBUNWIND_EXCEPTIONS__
6242 to #ifndef __USING_SJLJ_EXCEPTIONS__.
6243
6244 * configure.in: Move sjlj-exceptions and --enable-libunwind-exceptions
6245 before inclusion of config.gcc, but after configuring the compiler etc.
6246 Determine default value for --enable-libunwind-exceptions based on
6247 whether the host has a libunwind library (not guaranteed to be correct,
6248 but it's a reasonable first guess and can always be overridden with an
6249 explicit --enable/disable-libunwind-exceptions.
6250 * config.gcc: For target ia64*-*-linux*, mention t-libunwind as a
6251 tmake_file when $use_libunwind_exceptions is enabled.
6252 * Makefile.in: Update comment: LIB2ADDEH is updated not just by
6253 ia64 (e.g., config/t-linux also updates it).
6254 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS]: Mention -lunwind
6255 along with the shared version of libgcc since the latter requires
6256 the former.
6257 * unwind-libunwind.c: New file.
6258 * config/t-libunwind: Ditto.
6259
62602002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
6261
6262 * config.gcc: Remove support for vax-*-vms*.
6263 * config/vax/vms.h: Remove.
6264 * config/vax/xm-vms.h: Remove.
6265 * config/vax/vax-protos.h: Remove VMS-specific code.
6266 * config/vax/vax.c: Remove VMS-specific code.
6267
d631b80a
RH
62682002-10-02 Richard Henderson <rth@redhat.com>
6269
6270 PR opt/7124
6271 * config/i386/i386.c (ix86_register_move_cost): Increase cost
6272 for secondary_memory_needed pairs.
6273
854ef390
NN
62742002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
6275
6276 * doc/vms.texi: Blow away false include file section.
6277
f963b5d9
RS
62782002-10-02 Roger Sayle <roger@eyesopen.com>
6279
6280 PR optimization/6627
6281 * toplev.c (force_align_functions_log): New global variable.
6282 * flags.h (force_align_functions_log): Add extern prototype.
6283 * varasm.c (assemble_start_function): Use it to force minimum
6284 function alignment.
6285 * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
6286 minimum function alignment to one byte.
6287 (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
6288 the least significant bit of vtable member function pointers.
6289 * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
6290 here from cp/cp-tree.h.
6291
200bcf7e
JH
6292Wed Oct 2 17:01:36 CEST 2002 Jan Hubicka <jh@suse.cz>
6293
6294 * i386.c (print_operand_address): Use RIP addressing for offsetted
6295 label refs too.
6296
88d0be17
DM
62972002-09-30 David S. Miller <davem@redhat.com>
6298
6299 PR middle-end/7151
6300 * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
6301 (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
6302
4977bab6
ZW
63032002-10-01 Andreas Bauer <baueran@in.tum.de>
6304
6305 * calls.c (expand_call): Remove the `no indirect check'
6306 for sibcall optimization; use function_ok_for_sibcall
6307 target hook; refine check for `function is volatile'.
6308 (FUNCTION_OK_FOR_SIBCALL): Remove the redefinition.
6309 * hooks.c (hook_tree_tree_bool_false): New.
6310 * hooks.h (hook_tree_tree_bool_false): Declare.
6311 * target-def.h (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
6312 (TARGET_INITIALIZER): Add it.
6313 * target.h (struct gcc_target): Add function_ok_for_sibcall.
6314 * config/alpha/alpha.c: (alpha_function_ok_for_sibcall): New.
6315 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6316 * config/alpha/alpha.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6317 * config/arm/arm-protos.h: (arm_function_ok_for_sibcall):
6318 Remove function declaration.
6319 * config/arm/arm.c: (arm_function_ok_for_sibcall): Make
6320 function static and accept another argument of type `tree'.
6321 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6322 * config/arm/arm.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6323 * config/frv/frv.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6324 * config/i386/i386.c: (ix86_function_ok_for_sibcall): New.
6325 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6326 * config/i386/i386.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6327 * config/pa/pa-linux.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6328 (TARGET_HAS_STUBS_AND_ELF_SECTIONS): New definition.
6329 * config/pa/pa.c: (pa_function_ok_for_sibcall): New.
6330 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6331 * config/pa/pa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6332 * config/rs6000/rs6000-protos.h: (function_ok_for_sibcall):
6333 Remove function declaration.
6334 * config/rs6000/rs6000.c: (rs6000_function_ok_for_sibcall):
6335 Rename function_ok_for_sibcall to rs6000_function_ok_for_sibcall;
6336 rename first argument to `decl'; accept another argument
6337 of type `tree'; make static.
6338 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6339 * config/rs6000/rs6000.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6340 * config/sh/sh.c: (sh_function_ok_for_sibcall): New.
6341 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6342 * config/sh/sh.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6343 * config/sparc/sparc.c: (sparc_function_ok_for_sibcall): New.
6344 (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
6345 * config/sparc/sparc.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6346 * config/xtensa/xtensa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
6347
f10aac29
RS
63482002-10-01 Roger Sayle <roger@eyesopen.com>
6349
6350 * unroll.c (loop_iterations): Revert 2002-09-08 change.
6351
69bd00e6
RH
63522002-10-01 Richard Henderson <rth@redhat.com>
6353
6354 * real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0.
6355 (real_to_hexadecimal): Likewise.
6356 * print-rtl.c (print_rtx): If we are linked with real.c, don't
6357 dump the XWINT fields of a floating point CONST_DOUBLE.
6358
3b5742ab
JT
63592002-10-01 Jason Thorpe <thorpej@wasabisystems.com>
6360
6361 * config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call.
6362
fd1e5d25
RH
63632002-10-01 Richard Henderson <rth@redhat.com>
6364
6365 * calls.c (precompute_register_parameters): Force non-legitimate
6366 constants into pseudos.
6367
78872ad9
NC
63682002-10-01 Nick Clifton <nickc@redhat.com>
6369
6370 * config/rs6000/spe.md (spe_evrlwi): Add missing third operand
6371 to assembler template.
6372
3c655f42
RH
63732002-10-01 Richard Henderson <rth@redhat.com>
6374
6375 * dwarf2out.c (loc_descriptor_from_tree): Relax requirement
6376 for TLS debug info to !DECL_EXTERNAL.
6377
ec20cffb 63782002-10-01 Matt Thomas <matt@3am-software.com>
ee6ff319 6379 Jason Thorpe <thorpej@wasabisystems.com>
ec20cffb
JT
6380
6381 * config.gcc (vax-*-netbsdelf*): Enable configuration.
6d8dd940 6382 * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
ec20cffb
JT
6383 if not already defined.
6384 * config/vax/elf.h: New file.
6385 * config/vax/netbsd-elf.h: New file.
6386 * config/vax/vax.c: Include "debug.h".
6387 (vax_output_function_prologue): Add dwarf2 support. Use
6388 MAIN_NAME_P when checking for VMS_TARGET stack adjust.
6389 * config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
6390 'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
6391 'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
6392 (VAX_ISTREAM_SYNC): Remove.
6393 (INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
6394 (JUMP_TABLES_IN_TEXT_SECTION): Define.
6395 (ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
6396 (ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
6397 and assemble_name.
6398 (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
6399 (PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
6400 (PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
6401 (INCOMING_RETURN_ADDR_RTX): Define.
6402 * config/vax/vax.md (VUNSPEC_BLOCKAGE)
6403 (VUNSPEC_SYNC_ISTREAM): Define.
6404 (blockage): Use VUNSPEC_BLOCKAGE.
6405 (sync_istream): New insn.
6406
64072002-10-01 Richard Henderson <rth@redhat.com>
6408
6409 * config/vax/vax.md (call_pop, *call_pop, call_value_pop)
6410 (*call_value_pop, call, call_value): Add dwarf2 EH support.
6411 (*call): New insn.
6412
73a73768
NS
64132002-10-01 Nathan Sidwell <nathan@codesourcery.com>
6414
6415 PR c/8083
6416 * c-typeck.c (build_c_cast): Warn about type punning which breaks
6417 type based aliasing.
6418
0645ba8f
MM
64192002-10-01 Mark Mitchell <mark@codesourcery.com>
6420
6421 * stor-layout.c (update_alignment_for_field): New function.
6422 (place_union_field): Use it.
6423 (place_field): Likewise.
6d8dd940 6424
f7e466a3
NS
64252002-10-01 Nathan Sidwell <nathan@codesourcery.com>
6426
73a73768 6427 PR other/8077
f7e466a3
NS
6428 * gcc.c (cc1_options): Add space on -auxbase-strip.
6429
bc9ec51b
JW
64302002-10-01 Jim Wilson <wilson@redhat.com>
6431
6432 * config/v850/v850.h (EPILOGUE_USES): Define.
6433
a646f6cc
AH
64342002-09-30 Andrew Haley <aph@redhat.com>
6435
6d8dd940 6436 * flow.c (insn_dead_p): When using non-call-exceptions, don't
a646f6cc
AH
6437 eliminate insns that may trap.
6438 * cse.c (insn_live_p): Likewise.
6439
3f7967e3
RS
64402002-10-01 Richard Sandiford <rsandifo@redhat.com>
6441
6442 * config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
6443 (TARGET_MIPS4121): Rename to TARGET_MIPS4120.
6444 * config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
6445 * config/mips/mips.md: Apply same renaming here.
6446
41f9efba
RS
64472002-10-01 Richard Sandiford <rsandifo@redhat.com>
6448
6449 * config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
6450 (GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
6451 * config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
6452 * config/mips/mips.md (define_attr cpu): Remove r4320.
6453 Remove vr4320 scheduler and uses of TARGET_MIPS4320.
6454
366356d3
RS
64552002-10-01 Richard Sandiford <rsandifo@redhat.com>
6456
6457 * config/mips/mips.c (mips16_strings): New variable.
6458 (mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
6459 symbol in mips16_strings. Free the list.
6460 (mips_encode_section_info): Keep track of local strings.
6461
8ab907e8
RS
64622002-10-01 Richard Sandiford <rsandifo@redhat.com>
6463
6464 * config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
6465 (sordered_df, sordered_sf): Remove.
6466 * config/mips/mips.c (get_float_compare_codes): New fn.
6467 (gen_int_relational, gen_conditional_move): Use it.
6468
d12b8c85
RS
64692002-10-01 Richard Sandiford <rsandifo@redhat.com>
6470
6471 * config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
6472 * config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
6473 * config/mips/mips.c (fcc_register_operand): New function.
6474 (mips_emit_fcc_reload): New function, extracted from reload_incc.
6475 (override_options): Allow TFmode values in float registers
6476 if ISA_HAS_8CC.
6477 * cnfig/mips/mips.md (reload_incc): Change destination prediate
6478 to fcc_register_operand. Remove misleading source constraint.
6479 Use mips_emit_fcc_reload.
6480 (reload_outcc): Duplicate reload_incc.
6481
4977bab6
ZW
64822002-09-30 Zack Weinberg <zack@codesourcery.com>
6483
6484 * gcc.c (validate_switches): Handle all new forms of spec
6485 syntax introduced recently. Now returns a char *.
6486 (validate_all_switches): Repetitive logic broken out to...
6487 (validate_switches_from_spec): ...here.
6488 * mklibgcc.in: Don't @-flag commands to generate .oS files.
6489
7e765675
UW
64902002-09-30 Ulrich Weigand <uweigand@de.ibm.com>
6491
6492 * longlong.h: Partially synchronize with GMP-4.1 version:
6493 Use i370 definitions also for s390.
6494 Add generic definition of umul_ppmm in terms of smul_ppmm.
6495 [s390] (umul_ppmm): Remove.
6496 [s390] (smul_ppmm): Fix incorrect assembler constraints.
6497 [s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.
6498
89f6025d
BW
64992002-09-30 Bob Wilson <bob.wilson@acm.org>
6500
6501 * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
6502 Add new RL_REGS register class.
6503 (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
ee6ff319 6504 Call xtensa_preferred_reload_class for both input and output reloads.
89f6025d
BW
6505 * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
6506 (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
6507 instead of either AR_REGS or GR_REGS classes.
6508 (xtensa_secondary_reload_class): Use new RL_REGS class.
6509 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.
6510
7830ba7b
JDA
65112002-09-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
6512
6513 * pa.c (hppa_encode_label): Don't drop '*' from function labels.
6514 (pa_strip_name_encoding): Strip '@' and '*', in that order.
6515 * pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
6516 there is a '*' prefix in NAME.
6517
344b78b8
JH
6518Mon Sep 30 21:33:23 CEST 2002 Jan Hubicka <jh@suse.cz>
6519
6520 * reload.c (push_reload): Handle subregs and secondary memory.
6521 * reload1.c (gen_reload): Likewise.
6522
6523 * jump.c (reg_or_subregno): New function.
6524 * rtl.h (reg_or_subregno): Declare
6525 * unroll.c (find_splittable_givs): Handle subregs.
6526
17bbb839
MM
65272002-09-30 Mark Mitchell <mark@codesourcery.com>
6528
6529 * store-layout.c (finish_record_layout): Add free_p parameter.
6530 (layout_type): Pass it.
6531 * tree.h (finish_record_layout): Update prototype.
92e89ef0 6532
48ddd46c
JH
6533Mon Sep 30 14:57:18 CEST 2002 Jan Hubicka <jh@suse.cz>
6534
6535 * i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
6536
6537 * gcse.c (cprop_jump): Check that the register has not
6538 been modified
6539 (cprop_jump): Likewise.
6540
b93a0fe6
RE
65412002-09-30 Richard Earnshaw <rearnsha@arm.com>
6542
6543 * arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
6544 (MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
6545 that we have a SImode access, and only then if reload hasn't completed;
6546 for all other cases, use LO_REGS.
6547
4977bab6
ZW
65482002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6549
6550 * openbsd.h: Fix typo in last change.
6551
98ee7e6c
RH
65522002-09-29 Richard Henderson <rth@redhat.com>
6553
6554 * real.c (real_from_string): Apply sign last. Tidy exponent handling.
6555
ccf7aef4
RH
65562002-09-29 Richard Henderson <rth@redhat.com>
6557
b5371c18 6558 PR c/8002
ccf7aef4
RH
6559 * combine.c (force_to_mode): Handle FLOAT_MODE destinations
6560 for CONST_INT.
6561
d454e75a
DE
65622002-09-29 David Edelsohn <edelsohn@gnu.org>
6563
6564 * real.h (ibm_extended_format): Declare.
6565 * real.c (encode_ibm_extended, decode_ibm_extended): New
6566 functions.
6567
89b06540
KG
65682002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6569
6570 * darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
6571
6572 * ia64.c (ia64_hpux_asm_file_end): Const-ify.
6573
6ca6193b
JDA
65742002-09-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
6575
6576 * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
6577
991b6592
KH
65782002-09-29 Kazu Hirata <kazu@cs.umass.edu>
6579
6580 * builtins.def: Fix comment formatting.
6581 * c-common.def: Likewise.
6582 * cfgcleanup.c: Likewise.
6583 * combine.c: Likewise.
6584 * gengtype.c: Likewise.
6585 * params.def: Likewise.
6586 * predict.def: Likewise.
6587 * rtl.def: Likewise.
6588 * stab.def: Likewise.
6589 * stor-layout.c: Likewise.
6590 * tree.def: Likewise.
6591 * config/darwin.c: Likewise.
6592 * config/darwin.h: Likewise.
6593 * config/dbxcoff.h: Likewise.
6594 * config/elfos.h: Likewise.
6595 * config/fp-bit.c: Likewise.
6596 * config/freebsd-spec.h: Likewise.
6597 * config/interix.h: Likewise.
6598 * config/libgloss.h: Likewise.
6599 * config/linux-aout.h: Likewise.
6600 * config/linux.h: Likewise.
6601 * config/lynx-ng.h: Likewise.
6602 * config/lynx.h: Likewise.
6603 * config/netbsd-aout.h: Likewise.
6604 * config/netbsd.h: Likewise.
6605 * config/netware.h: Likewise.
6606 * config/psos.h: Likewise.
6607 * config/ptx4.h: Likewise.
6608
43aa4e05
KH
66092002-09-28 Kazu Hirata <kazu@cs.umass.edu>
6610
6611 * ChangeLog.4: Fix typos.
6612 * ChangeLog.6: Likewise.
6613 * FSFChangeLog.10: Likewise.
6614 * genattrtab.c: Fix comment typos.
6615 * haifa-sched.c: Likewise.
6616 * real.c: Likewise.
6617 * tree.h: Likewise.
6618 * config/arm/arm.c: Likewise.
6619 * config/arm/crti.asm: Likewise.
6620 * config/arm/crtn.asm: Likewise.
6621 * config/frv/frv.c: Likewise.
6622 * config/frv/frv.md: Likewise.
6623 * config/h8300/h8300.md: Likewise.
6624 * config/i386/rtemself.h: Likewise.
6625 * config/ia64/unwind-ia64.c: Likewise.
6626 * config/ip2k/ip2k.h: Likewise.
6627 * config/m88k/m88k.c: Likewise.
6628 * config/m88k/m88k.md: Likewise.
6629 * config/mips/sr71k.md: Likewise.
6630 * config/mmix/mmix.c: Likewise.
6631 * config/rs6000/rs6000.c: Likewise.
6632 * config/sh/sh.md: Likewise.
6633
13e8651c
TR
66342002-09-26 Theodore A. Roth <troth@verinet.com>
6635
92e89ef0
ZW
6636 * config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
6637 * config/avr/avr.md: Ditto.
13e8651c 6638
57147be1
ZW
66392002-09-27 Alexander N. Kabaev <ak03@gte.com>
6640
6641 PR preprocessor/8055
6642 * cppmacro.c (stringify_arg): Do not overflow the buffer
6643 with the terminating NUL when the argument to be stringified
6644 has no tokens.
6645
5d0f3df7
RH
66462002-09-27 Richard Henderson <rth@redhat.com>
6647
6648 * unroll.c (simplify_cmp_and_jump_insns): New.
6649 (unroll_loop): Use it. Use simplify_gen_foo+force_operand
6650 instead of expand_simple_foo.
6651
3dfda826
RH
66522002-09-27 Richard Henderson <rth@redhat.com>
6653
6654 PR optimization/7520
6655 * cfganal.c (flow_active_insn_p): New.
6656 (forwarder_block_p): Use it.
6657
23b8ba81
RH
66582002-09-27 Richard Henderson <rth@redhat.com>
6659
6660 * emit-rtl.c (active_insn_p): Revert last change.
6661
dce81a1a
JJ
66622002-09-27 Jakub Jelinek <jakub@redhat.com>
6663
6664 * doc/extend.texi (tls_model): Document.
6665 * varasm.c (decl_tls_model): New.
6666 * c-common.c (handle_tls_model_attribute): New.
6667 (c_common_attribute_table): Add tls_model.
6668 * config/alpha/alpha.c (alpha_encode_section_info): Use
6669 decl_tls_model.
6670 * flags.h (enum tls_model, flag_tls_default): Move...
6671 * tree.h (enum tls_model, flag_tls_default): ...here.
6672 (decl_tls_model): New prototype.
6673 * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
6674 * config/i386/i386.c (ix86_encode_section_info): Likewise.
6675 * config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
6676 Allow !flag_pic.
6677
0e9e1e0a
KH
66782002-09-27 Kazu Hirata <kazu@cs.umass.edu>
6679
6680 * LANGUAGES: Follow spelling conventions.
6681 * rtl.def: Likewise.
6682 * sbitmap.c: Likewise.
6683 * sched-int.h: Likewise.
6684 * sched-rgn.c: Likewise.
6685 * sibcall.c: Likewise.
6686 * simplify-rtx.c: Likewise.
6687 * ssa.c: Likewise.
6688 * stab.def: Likewise.
6689 * stmt.c: Likewise.
6690 * stor-layout.c: Likewise.
6691 * target.h: Likewise.
6692 * timevar.c: Likewise.
6693 * toplev.c: Likewise.
6694 * tree-dump.c: Likewise.
6695 * tree-inline.c: Likewise.
6696 * tree.c: Likewise.
6697 * tree.def: Likewise.
6698 * tree.h: Likewise.
6699 * unroll.c: Likewise.
6700 * varasm.c: Likewise.
6701 * vmsdbgout.c: Likewise.
6702 * treelang/treelang.texi: Likewise.
6703 * treelang/treetree.c: Likewise.
6704
b9b575e6
KH
67052002-09-27 Kazu Hirata <kazu@cs.umass.edu>
6706
6707 * config/h8300/h8300.c (compute_saved_regs): Use a macro
6708 instead of a hard register number.
6709 (get_shift_alg): Use an enumerated type instead of numbers.
6710 (h8300_shift_needs_scratch_p): Likewise.
6711
4977bab6
ZW
67122002-09-26 Kazu Hirata <kazu@cs.umass.edu>
6713
6714 * varasm.c (force_data_section): Remove.
6715 (assemble_constant_align): Likewise.
6716 * output.h: Remove corresponding prototypes.
6717
67182002-09-26 Roger Sayle <roger@eyesopen.com>
6719
6720 * stmt.c (expand_exit_loop_if_false): Expand a simple conditional
6721 jump, if the loop to exit is the top of the current nesting stack.
6722
67232002-09-26 Torbjorn Granlund <tege@swox.com>
6724
6725 * libgcc2.c (fixunsdfdi, fixunssfdi): Rewrite, avoiding `long long'
6726 arithmetic.
6727
99a32567
DM
67282002-09-26 David S. Miller <davem@redhat.com>
6729
6730 PR optimization/7335
6731 * calls.c (emit_library_call_value_1): Passing args by reference
6732 converts a CONST function into a PURE one.
6733
67cef334
DE
67342002-09-26 David Edelsohn <edelsohn@gnu.org>
6735
6736 * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
6737 text_section.
57147be1 6738 * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
67cef334
DE
6739 text section.
6740 * config/rs6000/rs6000.c (rs6000_override_options): Allow
6741 function-sections and data-sections functionality on AIX.
6742
67432002-09-26 David Edelsohn <edelsohn@gnu.org>
6744 Dale Johannesen <dalej@apple.com>
6745
6746 * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
6747 in RTL for sub-word loads from memory.
6748
c2310f51
RH
67492002-09-26 Richard Henderson <rth@redhat.com>
6750
6751 PR c/7160
6752 * sched-deps.c (sched_analyze_insn): Make clobber insns depend
6753 on call insns.
6754
7847d627
RH
67552002-09-26 Richard Henderson <rth@redhat.com>
6756
6757 * emit-rtl.c (const_double_htab_eq): Remove unused variable.
6758
cde0ce6e
CL
67592002-09-26 Chris Lattner <sabre@nondot.org>
6760
6761 * ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when
6762 handling undefined values.
6763
03a62672
RH
67642002-09-26 Richard Henderson <rth@redhat.com>
6765
5fd452e8 6766 PR opt/7520
03a62672
RH
6767 * emit-rtl.c (active_insn_p): Consider a clobber of the
6768 function return value to be active even after reload.
6769
b5a77fef
AM
67702002-09-27 Alan Modra <amodra@bigpond.net.au>
6771
6772 * doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust
6773 by absolute loop increment, not loop increment.
6774
40f03658
KH
67752002-09-26 Kazu Hirata <kazu@cs.umass.edu>
6776
6777 * c-common.h: Follow spelling conventions.
6778 * cpplex.c: Likewise.
6779 * cpplib.h: Likewise.
6780 * gthr-dce.h: Likewise.
6781 * gthr-posix.h: Likewise.
6782 * optabs.c: Likewise.
6783 * output.h: Likewise.
6784 * profile.c: Likewise.
6785 * protoize.c: Likewise.
6786 * ra-rewrite.c: Likewise.
6787 * real.c: Likewise.
6788 * recog.c: Likewise.
6789 * reg-stack.c: Likewise.
6790 * regclass.c: Likewise.
6791 * regmove.c: Likewise.
6792 * reload.c: Likewise.
6793 * reload.h: Likewise.
6794 * reload1.c: Likewise.
6795 * reorg.c: Likewise.
6796 * resource.c: Likewise.
6797 * rtl.h: Likewise.
6798 * rtlanal.c: Likewise.
6799
ee8a73d6
SE
68002002-09-26 Steve Ellcey <sje@cup.hp.com>
6801
6802 * config/ia64/ia64.c (ia64_expand_load_address): Ensure correct mode
6803 for symbol address.
6804
2eb2bbdc
EC
68052002-09-24 Eric Christopher <echristo@redhat.com>
6806
57147be1
ZW
6807 * config/mips/elf.h: Add HANDLE_SYSV_PRAGMA.
6808 * config/mips/elf64.h: Ditto.
2eb2bbdc 6809
0ab38418
EC
68102002-09-24 Eric Christopher <echristo@redhat.com>
6811
57147be1 6812 * except.c (expand_builtin_extract_return_address): Handle case
0ab38418
EC
6813 where Pmode != ptr_mode.
6814
68bb91b1
SE
68152002-09-26 Steve Ellcey <sje@cup.hp.com>
6816
6817 * config/ia64/hpux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): New
6818
5429802d
SE
68192002-09-26 Steve Ellcey <sje@cup.hp.com>
6820
6821 * config/ia64/hpux.h (TARGET_DEFAULT): Include TARGET_ILP32.
6822
855c3a2e
IS
68232002-09-26 Igor Shevlyakov <igor@microunity.com>
6824
6825 * combine.c (simplify_set): Don't call to force_to_mode if size
6826 of integer type is larger than HOST_BITS_PER_WIDE_INT.
6827
2d556baf
JJ
68282002-09-26 Janis Johnson <janis187@us.ibm.com>
6829
6830 * Makefile.in (qmtest-g++): Fix file path.
6831
1717e19e
UW
68322002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
6833
0ab38418 6834 * expr.c (expand_expr) [MINUS_EXPR]: Convert A - const to
1717e19e
UW
6835 A + (-const) on RTX level, even for unsigned types.
6836
6cabe79e
UW
68372002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
6838
6839 * reload.c (dup_replacements): New function.
6840 (find_reloads): Use it to duplicate replacements at the top level
6841 of match_dup operands.
6842
0855247a
MB
68432002-09-26 Miles Bader <miles@gnu.org>
6844
6845 * v850.md ("length"): Change default value to 4.
6846
6335b0aa
KH
68472002-09-26 Kazu Hirata <kazu@cs.umass.edu>
6848
6849 * ChangeLog.1: Follow spelling conventions.
6850 * ChangeLog.4: Likewise.
6851 * ChangeLog.6: Likewise.
6852 * FSFChangeLog.11: Likewise.
6853 * doc/cpp.texi: Likewise.
6854 * doc/invoke.texi: Likewise.
6855 * doc/tm.texi: Likewise.
6856
09818236
NC
68572002-09-26 Nick Clifton <nickc@redhat.com>
6858
6859 * config.gcc: Add x prefix to v850e case for handling
6860 --with-cpu=v850e.
6861
4977bab6
ZW
68622002-09-25 Zack Weinberg <zack@codesourcery.com>
6863
6864 * gcc.c (input_suffix_matches, switch_matches,
6865 mark_matching_switches, process_marked_switches,
6866 process_brace_body): New functions - split from handle_braces.
6867 (handle_braces): Rewrite; handle %{S:X;T:Y;:D} syntax; accept
6868 and ignore whitespace in more places.
6869 (specs documentation comment): Document %{S:X;T:Y;:D}.
6870 Clarify other %{...} docs.
6871 * doc/invoke.texi: Document %{S:X;T:Y;:D}. Clarify other
6872 %{...} docs.
6873
6874 * config/arm/aof.h (LINK_SPEC): Change %{ov*,*} to %{ov*}.
6875 * config/rs6000/sysv4.h: Use N-way choice spec syntax.
6876
8a3996fd
DM
68772002-09-25 David S. Miller <davem@redhat.com>
6878
6879 PR target/7842
6880 * config/sparc/sparc.c (set_extends): SImode ASHIFT does not
6881 extend.
6882
8580f7a0
RH
68832002-09-25 Richard Henderson <rth@redhat.com>
6884
6885 * emit-rtl.c (const_double_htab_eq): Distinguish integer and
6886 fp CONST_DOUBLE; use real_identical.
6887
956d9305
MM
68882002-09-25 Mark Mitchell <mark@codesourcery.com>
6889
6890 * doc/invoke.texi: Add more -Wabi examples.
6891
3ccbe819
RS
68922002-09-25 Richard Sandiford <rsandifo@redhat.com>
6893
6894 * config/mips/mips.h (TARGET_MIPS4100): Add missing bracket.
6895
4977bab6
ZW
68962002-09-24 Nathan Sidwell <nathan@codesourcery.com>
6897
6898 * profile.c (end_branch_prob): Only look for __gcov_init on
6899 weak-enabled native compilers.
6900
2106e42a
DC
69012002-09-24 Denis Chertykov <denisc@overta.ru>
6902
6903 * config/ip2k/ip2k.c (function_epilogue): Fix wrong numbers in
6904 cases of optimizing "add sp,w" to "inc sp".
6905
58e60158
AN
69062002-09-24 Adam Nemet <anemet@lnxw.com>
6907
57147be1
ZW
6908 * config/arm/arm.c (thumb_unexpanded_epilogue): Don't generate
6909 epilogue for naked functions.
58e60158 6910
59be6073 69112002-09-24 Adam Nemet <anemet@lnxw.com>
57147be1 6912 Nick Clifton <nickc@redhat.com>
59be6073
AN
6913
6914 * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Remove.
6915 (FUNCTION_PROFILER): Only invoke THUMB_FUNCTION_PROFILER if it
6916 is defined.
6917
100c7420
UW
69182002-09-24 Ulrich Weigand <uweigand@de.ibm.com>
6919
6920 * config/s390/s390.c (preferred_la_operand_p): New function.
6921 * config/s390/s390-protos.h (preferred_la_operand_p): Declare it.
6922 * config/s390/s390.md ("addaddr_esame", "*la_ccclobber"): Replace by ...
6923 ("*la_64_cc", "*la_31_cc", splitters): ... these.
6924 ("*la_31"): Deactivate for TARGET_64BIT.
6925 ("*la_31_and", "*la_31_and_cc"): New.
6926
9fc63af5
KG
69272002-09-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6928
6929 * real.h (real_value): Make `exp' explicitly signed.
6930
43a88a8c
KH
69312002-09-24 Kazu Hirata <kazu@cs.umass.edu>
6932
6933 * config/elfos.h: Follow spelling conventions.
6934 * config/alpha/alpha.h: Likewise.
6935 * config/arc/arc.h: Likewise.
6936 * config/arm/arm.md: Likewise.
6937 * config/avr/avr.h: Likewise.
6938 * config/cris/cris.md: Likewise.
6939 * config/d30v/d30v.h: Likewise.
6940 * config/frv/frv.c: Likewise.
6941 * config/frv/frv.h: Likewise.
6942 * config/h8300/h8300.c: Likewise.
6943 * config/h8300/h8300.h: Likewise.
6944 * config/h8300/h8300.md: Likewise.
6945 * config/i386/cygwin.h: Likewise.
6946 * config/i386/i386.h: Likewise.
6947 * config/i386/sysv3.h: Likewise.
6948 * config/i960/i960.h: Likewise.
6949 * config/ia64/ia64.h: Likewise.
6950 * config/ia64/ia64.md: Likewise.
6951 * config/ip2k/ip2k.h: Likewise.
6952 * config/m32r/m32r.h: Likewise.
6953 * config/m68k/m68k.h: Likewise.
6954 * config/m88k/m88k.h: Likewise.
6955 * config/mcore/mcore.c: Likewise.
6956 * config/mcore/mcore.h: Likewise.
6957 * config/mcore/mcore.md: Likewise.
6958 * config/mips/mips.h: Likewise.
6959 * config/mmix/mmix.h: Likewise.
6960 * config/mmix/mmix.md: Likewise.
6961 * config/ns32k/netbsd.h: Likewise.
6962 * config/ns32k/ns32k.h: Likewise.
6963 * config/ns32k/ns32k.md: Likewise.
6964 * config/pa/pa.h: Likewise.
6965 * config/romp/romp.h: Likewise.
6966 * config/rs6000/rs6000.h: Likewise.
6967 * config/rs6000/rs6000.md: Likewise.
6968 * config/sparc/sparc.h: Likewise.
6969 * config/stormy16/stormy-abi: Likewise.
6970 * config/stormy16/stormy16.h: Likewise.
6971 * config/vax/vax.h: Likewise.
6972
4977bab6
ZW
69732002-09-23 Kazu Hirata <kazu@cs.umass.edu>
6974
6975 * config/alpha/alpha.h: Remove commented-out macro
6976 definitions of HAVE_{POST|PRE}_{INC|DEC}REMENT.
6977 * config/avr/avr.h: Likewise.
6978 * config/d30v/d30v.h: Likewise.
6979 * config/dsp16xx/dsp16xx.h: Likewise.
6980 * config/i370/i370.h: Likewise.
6981 * config/i386/i386.h: Likewise.
6982 * config/i960/i960.h: Likewise.
6983 * config/m68k/m68k.h: Likewise.
6984 * config/m88k/m88k.h: Likewise.
6985 * config/mips/mips.h: Likewise.
6986 * config/ns32k/ns32k.h: Likewise.
6987 * config/pdp11/pdp11.h: Likewise.
6988 * config/romp/romp.h: Likewise.
6989 * config/rs6000/rs6000.h: Likewise.
6990 * config/s390/s390.h: Likewise.
6991 * config/sh/sh.h: Likewise.
6992 * config/sparc/sparc.h: Likewise.
6993 * config/stormy16/stormy16.h: Likewise.
6994 * config/vax/vax.h: Likewise.
6995
69962002-09-23 Kazu Hirata <kazu@cs.umass.edu>
6997
6998 * function.c (push_temp_slots_for_block): Remove.
6999 (push_temp_slots_for_target): Likewise.
7000 (get_target_temp_slot_level): Likewise.
7001 (set_target_temp_slot_level): Likewise.
7002 (get_first_block_beg): Likewise.
7003 * function.h: Remove corresponding prototypes.
7004
b4f94ac1
ZW
70052002-09-23 Zack Weinberg <zack@codesourcery.com>
7006
7007 * version.c (version_string): Now const char[].
7008 * version.h: Update to match.
7009
9ef1b13a
RH
70102002-09-23 Richard Henderson <rth@redhat.com>
7011
7012 * config/i386/i386.h (MASK_ACCUMULATE_OUTGOING_ARGS_SET, MASK_MMX_SET,
7013 MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET, MASK_3DNOW_A_SET): Kill.
7014 (TARGET_SWITCHES): Don't reference them.
7015 * config/i386/i386.c (override_options): Use target_flags_explicit
7016 to examine bits set by the user.
7017
ca9d6748 70182002-09-23 Dale Johannesen <dalej@apple.com>
9ef1b13a 7019
ca9d6748
DJ
7020 * dbxout.c (dbxout_parms): Set current_sym_code for params
7021 passed on stack by invisible reference.
7022
97d48e5a
RE
70232002-09-23 Richard Earnshaw <rearnsha@arm.com>
7024
7025 * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Always allocate
7026 at least one byte of space.
7027
46c83bce
MM
70282002-09-23 Mark Mitchell <mark@codesourcery.com>
7029
7030 * c-common.h (flag_abi_version): Fix typo in comment.
7031 * doc/invoke.texi (flag_abi_version): Document default value.
7032
acb5d088
HPN
70332002-09-23 Hans-Peter Nilsson <hp@axis.com>
7034
7035 * doc/extend.texi (Extended Asm): Clarify that overlap between
7036 asm-declared register variables used in an asm and the asm clobber
7037 list is not allowed.
7038 * stmt.c (decl_conflicts_with_clobbers_p): New function.
7039 (expand_asm_operands): Keep track of clobbered registers. Call
7040 decl_conflicts_with_clobbers_p for each input and output operand.
7041 If no conflicts found before, also do conflict sanity check when
7042 emitting clobbers.
7043
ddf0fc72
RH
70442002-09-23 Richard Henderson <rth@redhat.com>
7045
7046 * c-common.c (cpp_define_data_format): Remove.
7047 (cb_register_builtins): Don't define __WCHAR_BIT__, __SHRT_BIT__,
7048 __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
7049 __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
7050 * doc/cpp.texi: Don't document them either.
7051 (__SCHAR_MAX__, __SHRT_MAX__, __INT_MAX__, __LONG_MAX__,
7052 __LONG_LONG_MAX__): Document.
7053 (__TARGET_FLOAT_FORMAT__): Remove.
7054
a520ff95
RH
70552002-09-23 Richard Henderson <rth@redhat.com>
7056
7057 * real.c (do_multiply): Normalize U before addition.
7058
2d3e278d
MM
70592002-09-23 Mark Mitchell <mark@codesourcery.com>
7060
7061 * c-common.c (flag_abi_version): New variable.
7062 * c-common.h (flag_abi_version): Declare it.
7063 * c-opts.c (missing_arg): Add -fabi-version.
7064 (c_common_decode_option): Process -fabi-version.
7065 * doc/invoke.texi (-fabi-version): Document it.
7066 (-Wabi): Add information about bit-fields in unions.
b4f94ac1 7067
4977bab6
ZW
70682002-09-22 Roger Sayle <roger@eyesopen.com>
7069
7070 * expr.c (STORE_BY_PIECES_P): New target macro.
7071 (can_store_by_pieces, store_by_pieces): Use STORE_BY_PIECES_P
7072 instead of MOVE_BY_PIECES_P.
7073 * doc/tm.texi: Document this new macro.
7074
173b51b5
JT
70752002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
7076
7077 * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Always pass -KPIC
7078 unless -fno-pic or -fno-PIC is specified.
7079
c219e1da
JDA
70802002-09-22 John David Anglin <dave@hiauly1.hia.nrc.ca>
7081
7082 * c-common.c (preprocessing_trad_p): Define.
7083 * pa-hiux.h, pa-hpux.h, pa-hpux7.h (CPP_PREDEFINES): Delete.
7084 (TARGET_OS_CPP_BUILTINS, SUBTARGET_SWITCHES): Define.
7085 * pa-hpux10.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
7086 * pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define.
7087 * pa-linux.h (CPP_PREDEFINES): Delete.
7088 (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
7089 * pa32-linux.h, pa64-linux.h (CPP_SPEC): Delete.
7090 * pa-osf.h, pa-pro-end.h, rtems.h (CPP_PREDEFINES): Delete.
7091 (TARGET_OS_CPP_BUILTINS): Define.
7092 * pa.h (MASK_SIO, TARGET_SIO, TARGET_PA_10): Define.
7093 (TARGET_SWITCHES): Reformat. Use N_() macro. Add SUBTARGET_SWITCHES.
7094 (SUBTARGET_SWITCHES): Provide default definition.
7095 (TARGET_OPTIONS): Reformat. Use N_() macro.
7096 (CPP_PA10_SPEC, CPP_PA11_SPEC, CPP_PA20_SPEC, CPP_64BIT_SPEC,
7097 CPP_CPU_DEFAULT_SPEC, CPP_64BIT_DEFAULT_SPEC, SUBTARGET_EXTRA_SPECS,
7098 EXTRA_SPECS, CPP_SPEC, CPLUSPLUS_CPP_SPEC, CPP_PREDEFINES): Delete.
7099 (TARGET_CPU_CPP_BUILTINS): Define.
7100 (TARGET_OS_CPP_BUILTINS): Define for BSD-like systems.
7101 * doc/invoke.texi (msio, mwsio): Document new hppa options.
7102 * doc/tm.texi (TARGET_CPU_CPP_BUILTINS): Document macro
7103 preprocessing_trad_p().
7104
65a824f6
JT
71052002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
7106
7107 * doc/install.texi: Document behavior of --with-headers and
7108 --with-libs when arguments are omitted.
7109
cc2902df
KH
71102002-09-22 Kazu Hirata <kazu@cs.umass.edu>
7111
7112 * dbxout.c: Follow spelling conventions.
7113 * defaults.h: Likewise.
7114 * df.c: Likewise.
7115 * diagnostic.h: Likewise.
7116 * doloop.c: Likewise.
7117 * dwarf2out.c: Likewise.
7118 * dwarfout.c: Likewise.
7119 * emit-rtl.c: Likewise.
7120 * except.c: Likewise.
7121 * explow.c: Likewise.
7122 * expmed.c: Likewise.
7123 * expr.c: Likewise.
7124 * expr.h: Likewise.
7125 * flags.h: Likewise.
7126 * flow.c: Likewise.
7127 * fold-const.c: Likewise.
7128 * function.c: Likewise.
7129 * function.h: Likewise.
7130 * gcc.c: Likewise.
7131 * gcov-io.h: Likewise.
7132 * gcov.c: Likewise.
7133 * gcse.c: Likewise.
7134 * genattrtab.c: Likewise.
7135 * genconfig.c: Likewise.
7136 * genrecog.c: Likewise.
7137 * ggc-page.c: Likewise.
7138 * ggc.h: Likewise.
7139 * global.c: Likewise.
7140 * gthr-win32.h: Likewise.
7141 * integrate.c: Likewise.
7142 * jump.c: Likewise.
7143 * langhooks.c: Likewise.
7144 * langhooks.h: Likewise.
7145 * line-map.h: Likewise.
7146 * local-alloc.c: Likewise.
7147 * longlong.h: Likewise.
7148 * loop.c: Likewise.
7149 * loop.h: Likewise.
7150
ef49d42e
JH
7151Tue Aug 27 22:26:35 CEST 2002 Jan Hubicka <jh@suse.cz>
7152
7153 * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
7154
7155Tue Aug 27 20:07:01 CEST 2002 Jan Hubicka <jh@suse.cz>
7156
7157 * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128
7158 for -Os/TARGET_64BIT too.
7159
da7d8304
KH
71602002-09-21 Kazu Hirata <kazu@cs.umass.edu>
7161
7162 * ChangeLog: Follow spelling conventions.
7163 * ChangeLog.0: Likewise.
7164 * ChangeLog.1: Likewise.
7165 * ChangeLog.2: Likewise.
7166 * ChangeLog.3: Likewise.
7167 * ChangeLog.4: Likewise.
7168 * ChangeLog.5: Likewise.
7169 * ChangeLog.6: Likewise.
7170 * FSFChangeLog.10: Likewise.
7171 * FSFChangeLog.11: Likewise.
7172 * alias.c: Likewise.
7173 * basic-block.h: Likewise.
7174 * c-aux-info.c: Likewise.
7175 * c-common.c: Likewise.
7176 * c-common.h: Likewise.
7177 * c-decl.c: Likewise.
7178 * c-format.c: Likewise.
7179 * c-semantics.c: Likewise.
7180 * c-typeck.c: Likewise.
7181 * calls.c: Likewise.
7182 * cfganal.c: Likewise.
7183 * cfgloop.c: Likewise.
7184 * collect2.c: Likewise.
7185 * combine.c: Likewise.
7186 * conflict.c: Likewise.
7187 * cppexp.c: Likewise.
7188 * cppfiles.c: Likewise.
7189 * cpphash.h: Likewise.
7190 * cppinit.c: Likewise.
7191 * cpplex.c: Likewise.
7192 * cpplib.c: Likewise.
7193 * cpplib.h: Likewise.
7194 * cppmacro.c: Likewise.
7195 * cse.c: Likewise.
7196
330cc6c7
RE
71972002-09-21 Richard Earnshaw <rearnsha@arm.com>
7198
7199 * netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): New, takes old definition of
7200 LINK_SPEC.
7201 (LINK_SPEC): Define to NETBSD_LINK_SPEC_AOUT.
7202 * arm/netbsd.h (SUBTARGET_EXTRA_SEPCS): Add NETBSD_LINK_SPEC_AOUT.
7203 (LINK_SPEC): Rework to use NETBSD_LINK_SPEC_AOUT).
7204
5b437e0f
RE
72052002-09-21 Richard Earnshaw <rearnsha@arm.com>
7206
9ee4fa29
RE
7207 PR opt/7930
7208 * cse.c (fold_rtx): Calculate old_cost before we fold each
5b437e0f
RE
7209 operand.
7210
2a15d344
RH
72112002-09-21 Richard Henderson <rth@redhat.com>
7212
7213 * c-common.c (cpp_define_data_format): Remove __GCC_LITTLE_ENDIAN__,
7214 __GCC_BIG_ENDIAN__, __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
7215 __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
7216 __TARGET_USES_VAX_F_FLOAT__, __TARGET_USES_VAX_D_FLOAT__,
7217 __TARGET_USES_VAX_G_FLOAT__, __TARGET_USES_VAX_H_FLOAT__.
7218 * doc/cpp.texi: Don't document them.
7219
3fdacdf9
RH
72202002-09-21 Richard Henderson <rth@redhat.com>
7221
7222 * c-common.c (builtin_define_float_constants): Use real_format
7223 to get the floating-point parameters.
7224
3dc85dfb
RH
72252002-09-21 Richard Henderson <rth@redhat.com>
7226
7227 * real.c (struct real_format): Move to real.h.
7228 (real_format_for_mode): Rename from fmt_for_mode; update all users;
7229 initialize with ieee defaults.
7230 (real_to_target_fmt, real_from_target_fmt): New.
7231 (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
7232 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
b4f94ac1 7233 ieee_quad_format, i370_single_format, i370_double_format,
3dc85dfb
RH
7234 c4x_single_format, c4x_extended_format): Rename from s/_format//.
7235 (ieee_quad_format): Fix emin.
7236 (format_for_size, init_real_once): Remove.
7237 * real.h (struct real_format): Move from real.c.
7238 (real_format_for_mode): Declare.
7239 (real_to_target_fmt, real_from_target_fmt): Declare.
7240 (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
7241 ieee_extended_intel_96_format, ieee_extended_intel_128_format,
7242 ieee_quad_format, vax_f_format, vax_d_format, vax_g_format,
7243 i370_single_format, i370_double_format, c4x_single_format,
7244 c4x_extended_format): Declare.
7245 * toplev.c (do_compile): Don't call init_real_once.
7246
7247 * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
7248 * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Remove.
7249
7250 * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Define.
7251 * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): 64, if vax mode.
7252 * config/alpha/alpha.c (override_options): Set real_format_for_mode
7253 for VAX, if enabled.
7254
7255 * config/c4x/c4x.c (c4x_override_options): Set real_format_for_mode
7256 for C4X.
7257
7258 * config/i370/i370.h (OVERRIDE_OPTIONS): New.
7259 * config/i370/i370.c (override_options): New.
7260 * config/i370/i370-protos.h: Update.
7261
7262 * config/i386/i386.c (override_options): Set real_format_for_mode
7263 for Intel 80-bit extended.
7264 * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
7265
7266 * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Mind -mlong-double-64.
7267 (OVERRIDE_OPTIONS): Move code...
7268 * config/i960/i960.c (i960_initialize): ... here. Set
7269 real_format_for_mode for Intel 80-bit extended.
7270
7271 * config/ia64/ia64.c (ia64_override_options): Set real_format_for_mode
7272 for Intel 80-bit extended, if enabled.
7273
7274 * config/m68k/m68k.c (override_options): Set real_format_for_mode
b4f94ac1 7275 for Motorola 96-bit extended.
3dc85dfb
RH
7276
7277 * config/vax/vax.h (OVERRIDE_OPTIONS): New.
7278 * config/vax/vax.c (override_options): New.
7279 * config/vax/vax-protos.h: Update.
7280
42a6388c
AM
72812002-09-21 Alan Modra <amodra@bigpond.net.au>
7282
84d7dd4a
AM
7283 * config/rs6000/rs6000.md (builtin_setjmp_receiver): Add
7284 #if TARGET_MACHO.
7285
42a6388c
AM
7286 * config/rs6000/rs6000.md (floatdisf2_internal2): Combine
7287 insns. Supply missing clobber of scratch reg.
7288
a0ab749a
KH
72892002-09-20 Kazu Hirata <kazu@cs.umass.edu>
7290
7291 * config/m32r/m32r.c: Follow spelling conventions.
7292 * config/m32r/m32r.h: Likewise.
7293 * config/m32r/m32r.md: Likewise.
7294 * config/m68k/m68k.c: Likewise.
7295 * config/m88k/m88k.c: Likewise.
7296 * config/mcore/mcore.c: Likewise.
7297 * config/mips/mips.c: Likewise.
7298 * config/mips/mips.h: Likewise.
7299 * config/mmix/mmix.c: Likewise.
7300 * config/mn10200/mn10200.c: Likewise.
7301 * config/ns32k/ns32k.h: Likewise.
7302 * config/pa/pa.c: Likewise.
7303 * config/pa/pa64-linux.h: Likewise.
7304 * config/pdp11/pdp11.h: Likewise.
7305 * config/romp/romp.c: Likewise.
7306 * config/romp/romp.h: Likewise.
7307 * config/rs6000/eabi.asm: Likewise.
7308 * config/rs6000/linux64.h: Likewise.
7309 * config/rs6000/rs6000.c: Likewise.
7310 * config/rs6000/rs6000.h: Likewise.
7311 * config/rs6000/rs6000.md: Likewise.
7312 * config/rs6000/sysv4.h: Likewise.
7313 * config/rs6000/xcoff.h: Likewise.
7314
2f0da74c
JW
73152002-09-20 Jim Wilson <wilson@redhat.com>
7316
7317 * config/v850/v850/lib1funcs.asm (__muldi3): Change r5 to r28.
7318
dea73790
JJ
73192002-09-20 Jakub Jelinek <jakub@redhat.com>
7320
7321 * config/i386/i386.md (UNSPEC_GOTNTPOFF, UNSPEC_INDNTPOFF): New.
7322 * config/i386/i386.c (legitimate_pic_address_disp_p): Handle
7323 UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF like UNSPEC_GOTTPOFF.
7324 (legitimate_address_p): Likewise.
7325 (legitimize_address): Use @gotntpoff and @indntpoff.
7326 (output_pic_addr_const): Handle UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF.
7327 (output_addr_const_extra): Likewise.
7328
a9b2f059
JW
73292002-09-20 Jim Wilson <wilson@redhat.com>
7330
7331 * combine.c (try_combine): When split an instruction pair, where the
7332 first has a sign_extend src, verify that the src and dest modes match.
7333
1f7422bd
RH
73342002-09-20 Richard Henderson <rth@redhat.com>
7335
7336 * config/mips/mips.c (dfhigh, dflow, sfhigh, sflow): Remove.
7337 (override_options): Do not initialize them.
7338 (mips_const_double_ok): Allow no fp constants except zero,
7339 and not even that for mips16.
7340 (const_float_1_operand): Use dconst1.
7341 * config/mips/mips.md (movsf, movsf_internal1, movsf_internal2,
7342 movdf, movdf_internal1, movdf_internal1a, movdf_internal2):
6d8dd940 7343 Don't allow arbitrary constants; fix predicates and C constraint.
1f7422bd 7344
56941bf2
NB
73452002-09-20 Neil Booth <neil@daikokuya.co.uk>
7346
7347 * cppmacro.c: Don't warn about function-like macros without
27eba309 7348 '(' during pre-expansion.
56941bf2 7349
66a0dfeb
JW
73502002-09-20 Jim Wilson <wilson@redhat.com>
7351
7352 * config/v850/v850.c (current_function_anonymous_args): Delete.
7353 (expand_prologue): Use current_function_args_info.anonymous_args.
7354 (expand_epilogue): Delete use of current_function_anonymous_args.
7355 * config/v850/v850.h (struct cum_arg): Add anonymous_args field.
7356 (INIT_CUMULATIVE_ARGS): Clear anonymous_args field.
7357 (current_function_anonymous_args): Delete extern declaration.
7358 (SETUP_INCOMING_VARARGS): Set anonymous_args field.
7359
97b23853
GK
73602002-09-20 Geoffrey Keating <geoffk@apple.com>
7361
f51eee6a
GK
7362 * config/rs6000/rs6000.c (rs6000_emit_prologue): Update for change
7363 to load_macho_picbase.
7364 * config/rs6000/rs6000.md: Document Darwin-specific unspec IDs.
7365 (load_macho_picbase): Take the symbol to use as a parameter.
7366 (macho_correct_pic): New insn.
7367 (builtin_setjmp_reciever): On Darwin, restore the PIC register.
7368
97b23853
GK
7369 * config/rs6000/rs6000.h (ELIMINABLE_REGS): Use
7370 RS6000_PIC_OFFSET_TABLE_REGNUM rather than hardcoding 30.
7371 (CAN_ELIMINATE): Likewise.
7372 (INITIAL_ELIMINATION_OFFSET): Likewise.
7373 (TOC_REGISTER): Likewise.
7374
46b33600
RH
73752002-09-20 Richard Henderson <rth@redhat.com>
7376
7377 * real.c (real_hash): New.
7378 * real.h: Declare it.
7379 * cse.c (canon_hash): Use it.
7380 * cselib.c (hash_rtx): Likewise.
7381 * emit-rtl.c (const_double_htab_hash): Likewise.
7382 * rtl.h (CONST_DOUBLE_REAL_VALUE): New.
7383 * varasm.c (struct rtx_const): Reduce vector size; separate
7384 integer and fp vectors.
7385 (HASHBITS): Remove.
7386 (const_hash_1): Rename from const_hash. Use real_hash. Do not
7387 take modulus MAX_HASH_TABLE.
7388 (const_hash): New. Do take modulus MAX_HASH_TABLE.
7389 (output_constant_def): Do not take modulus MAX_HASH_TABLE.
7390 (SYMHASH): Don't use HASHBITS.
7391 (decode_rtx_const): Copy only active bits from REAL_VALUE_TYPE.
7392 Fix CONST_VECTOR thinko wrt fp vectors. Fix kind comparison.
7393 (simplify_subtraction): Fix kind comparison.
7394 (const_hash_rtx): Return unsigned int. Don't use HASHBITS.
7395 Use a union to pun integer array.
7396 * config/rs6000/rs6000.c (rs6000_hash_constant): Use real_hash;
7397 only hash two words of integral CONST_DOUBLE.
7398
40ad65d0
SE
73992002-09-20 Steve Ellcey <sje@cup.hp.com>
7400
7401 * config/ia64/hpux.h (STARTFILE_SPEC): Modify.
7402 (STARTFILE_PREFIX_SPEC): New.
7403 (LINK_SPEC): Modify.
7404 (LIB_SPEC): Modify.
7405 (LIBGCC_SPEC): New.
7406
600f3392
JJ
74072002-09-20 Jakub Jelinek <jakub@redhat.com>
7408
7409 * config/i386/i386.c (legitimate_pic_address_disp_p): Allow
7410 UNSPEC_NTPOFF and UNSPEC_DTPOFF to be offsetted by constant.
7411
c1ff6200
JD
74122002-09-20 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
7413
7414 * config/arm/arm.md (sign_extract_onebit, not_signextract_onebit):
7415 Add clobber of the condition code register.
7416
60b78700
RH
74172002-09-20 Richard Henderson <rth@redhat.com>
7418
7419 * real.c (do_fix_trunc): Static.
7420 (encode_ieee_single, encode_ieee_double, encode_ieee_extended,
7421 encode_ieee_quad, encode_vax_f, encode_vax_d, encode_vax_g,
7422 encode_i370_single, encode_i370_double, encode_c4x_single,
7423 encode_c4x_extended): Add default abort case.
7424
0ee6fdb5
RH
74252002-09-20 Richard Henderson <rth@redhat.com>
7426
7427 * real.h (enum real_value_class, SIGNIFICAND_BITS, EXP_BITS,
7428 MAX_EXP, SIGSZ, SIG_MSB, struct real_value): Move from real.c.
7429 (struct realvaluetype): Remove.
7430 (REAL_VALUE_TYPE): Use struct real_value.
7431 (REAL_VALUE_TYPE_SIZE): Use SIGNIFICAND_BITS.
7432 (test_real_width): New.
7433 * real.c: Global replace struct real_value with REAL_VALUE_TYPE.
7434 (real_arithmetic): Avoid hoops for REAL_VALUE_TYPE parameters.
7435 (real_compare, real_exponent, real_ldexp, real_isinf, real_isnan,
7436 real_isneg, real_isnegzero, real_identical, exact_real_inverse,
7437 real_to_integer, real_to_integer2, real_to_decimal,
7438 real_to_hexadecimal, real_from_string, real_from_integer,
7439 real_inf, real_nan, real_2expN, real_convert, real_to_target,
7440 real_from_target): Likewise.
7441 * tree.h (struct tree_real_cst): Use real_value not realvaluetype.
7442 * gengtype-yacc.y (bitfieldopt): Accept an ID as well.
7443
66d93b5a
RH
74442002-09-20 Richard Henderson <rth@redhat.com>
7445
7446 * real.h (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT,
7447 IBM_FLOAT_FORMAT, C4X_FLOAT_FORMAT, TARGET_FLOAT_FORMAT): Move ...
7448 * defaults.h: ... here.
7449 * config/arm/arm.h, config/avr/avr.h, config/d30v/d30v.h,
7450 config/fr30/fr30.h, config/frv/frv.h, config/ia64/ia64.h,
7451 config/ip2k/ip2k.h, config/mips/mips.h, config/stormy16/stormy16.h,
7452 config/xtensa/xtensa.h (TARGET_FLOAT_FORMAT): Remove.
7453
6ee3db61
HPN
74542002-09-20 Hans-Peter Nilsson <hp@bitrange.com>
7455
7456 * config/mmix/mmix.md ("negdf2"): Rewrite.
7457 ("*expanded_negdf2"): New.
7458
ff076520
JW
74592002-09-19 Jim Wilson <wilson@redhat.com>
7460
7461 * combine.c (simplify_set): When optimizing a subreg src with a
7462 cc0 dest, use GET_MODE (src) for mask instead of inner_mode.
7463
307f767b
DJ
74642002-09-19 Dale Johannesen <dalej@apple.com>
7465 * combine.c (make_extraction): Don't create
7466 invalid subreg.
7467
4977bab6
ZW
74682002-09-19 Roger Sayle <roger@eyesopen.com>
7469
7470 * tree.c (integer_nonzerop): New predicate for nonzero integers.
7471 * tree.h (integer_nonzerop): Add function prototype.
7472 * stmt.c (expand_end_loop): Don't rotate the loop when there
7473 are no instructions in the test, i.e. the loop is unconditional.
7474 (expand_exit_loop_if_false): Optimize RTL generation of loop
7475 tests when the condition is always true or always false.
7476 * c-semantics.c (genrtl_do_stmt): Optimize RTL generation of
7477 do-loops when the condition is always true.
7478 (genrtl_for_stmt): Optimize RTL generation of for-loops when
7479 the for-expression is empty.
7480
74812002-09-19 Zack Weinberg <zack@codesourcery.com>
7482
7483 * gcc.c (use_pipes): New flag.
7484 (process_command): Set it. Adjust check for -pipe conflicting
7485 with -time or -save-temps.
7486 (do_spec_1): Use it. Handle %|SUFFIX, %mSUFFIX, and
7487 %<SWITCH. Drop %| (without a SUFFIX).
7488 (handle_braces): Drop %{<SWITCH}, %{^SWITCH}, %{|...}.
7489 (give_switch): Third argument eliminated.
7490 (invoke_as, @assembler_with_cpp spec): Use %|.s or %m.s
7491 depending on AS_NEEDS_DASH_FOR_PIPED_INPUT.
7492 (specs documentation comment): Update.
7493
7494 * config/netbsd-aout.h, config/openbsd.h, config/ptx4.h,
7495 config/svr4.h, config/i386/freebsd-aout.h,
7496 config/m68k/netbsd-elf.h, config/m68k/netbsd.h,
7497 config/m68k/openbsd.h, config/mips/openbsd.h,
7498 config/sparc/sparc.h: Define AS_NEEDS_DASH_FOR_PIPED_INPUT
7499 instead of putting %| into ASM_SPEC and/or ASM_FINAL_SPEC.
7500 * config/avr/avr.h: Delete do-nothing ASM_FINAL_SPEC.
7501 * config/cris/cris.h: Update comment.
7502
7503 * ada/lang-specs.h: Use %(invoke_as). Straighten out
7504 error messages. Don't use %{^SWITCH}.
7505 * ada/misc.c (gnat_decode_option): Handle -I with a
7506 separate argument.
7507
7508 * f/lang-specs.h: Use %| and %m.
7509 * java/jvspec.c: Use %m and %(invoke_as). Change all
7510 uses of %{<SWITCH} to %<SWITCH.
7511
7512 * doc/invoke.texi: Update documentation of specs.
7513 * doc/tm.texi: Document AS_NEEDS_DASH_FOR_PIPED_INPUT.
7514
cc7ab9b7
UW
75152002-09-19 Ulrich Weigand <uweigand@de.ibm.com>
7516
b4f94ac1 7517 * config/s390/s390.c (addr_generation_dependency_p): Handle SUBREG
cc7ab9b7
UW
7518 and STRICT_LOW_PART within SET_DEST.
7519 * config/s390/s390.md ("*extractqi", "*extracthi"): New insns with
7520 splitters, replacing pre-reload splitters.
b4f94ac1 7521 ("*zero_extendhisi2_31", "*zero_extendqisi2_31",
cc7ab9b7
UW
7522 "*zero_extendqihi2_31"): New insns.
7523 ("*zero_extendqihi2_64"): Do not clobber CC.
7524
4977bab6
ZW
75252002-09-18 Devang Patel <dpatel@apple.com>
7526
7527 * cp/cp-tree.h: New prototype for walk_vtables().
7528 * cp/decl.c (walk_vtables_r): New function.
7529 (struct cp_binding_level): Add new members, namespaces,
7530 names_size and vtables.
7531 (add_decl_to_level): Add decl in namespaces or vtables
7532 chain, if conditions match.
7533 (walk_vtables): New function.
7534 (walk_namespaces_r): Travers separate namespace chain
7535 for namespace decls.
7536 (wrapup_globals_for_namespace): Use names_size instead
7537 of list_length().
7538 * cp/decl2.c (finish_file): Use walk_vtables() instead of
7539 walk_globals() to walk vtable decls.
7540
b64ddb88
SE
75412002-09-19 Steve Ellcey <sje@cup.hp.com>
7542
7543 * config/ia64/hpux.h (CTORS_SECTION_ASM_OP): New.
7544 (DTORS_SECTION_ASM_OP): Ditto.
7545 (READONLY_DATA_SECTION_ASM_OP): Moved.
7546 (DATA_SECTION_ASM_OP): New.
7547 (SDATA_SECTION_ASM_OP): New.
7548 (BSS_SECTION_ASM_OP): New.
7549 (SBSS_SECTION_ASM_OP): New.
7550 (TEXT_SECTION_ASM_OP): New.
7551
9cd10576
KH
75522002-09-19 Kazu Hirata <kazu@cs.umass.edu>
7553
7554 * config/fp-bit.c: Follow spelling conventions.
7555 * config/d30v/d30v.c: Likewise.
7556 * config/d30v/d30v.h: Likewise.
7557 * config/fr30/fr30.c: Likewise.
7558 * config/fr30/fr30.h: Likewise.
7559 * config/fr30/fr30.md: Likewise.
7560 * config/frv/frv.c: Likewise.
7561 * config/frv/frv.h: Likewise.
7562 * config/h8300/h8300.c: Likewise.
7563 * config/h8300/lib1funcs.asm: Likewise.
7564 * config/i370/i370.c: Likewise.
7565 * config/i386/i386.h: Likewise.
7566 * config/i386/i386.md: Likewise.
7567 * config/i386/pentium.md: Likewise.
7568 * config/i386/winnt.c: Likewise.
7569 * config/i960/i960.c: Likewise.
7570 * config/ia64/ia64.h: Likewise.
7571 * config/ip2k/ip2k.c: Likewise.
7572 * config/ip2k/ip2k.h: Likewise.
7573 * config/ip2k/ip2k.md: Likewise.
7574 * config/ip2k/libgcc.S: Likewise.
7575
fff08fd8
SC
75762002-09-19 Stephen Clarke <stephen.clarke@superh.com>
7577
7578 * config/sh/sh.h (UNSPEC_GOTOFF_P): Define.
7579 (GOTOFF_P): Extend to allow gotoff plus constant.
7580
bf3d27e6
RH
75812002-09-18 Richard Henderson <rth@redhat.com>
7582
7583 * ifcvt.c (noce_process_if_block): Correctly detect X modified
b4f94ac1 7584 with INSN_B before COND_EARLIEST. Don't check A and B for
bf3d27e6
RH
7585 modification in condition range. Reorder INSN_B for A==B properly.
7586 (if_convert): Iterate until no matches for a block.
7587
1b1f20ca
RH
75882002-09-18 Richard Henderson <rth@redhat.com>
7589
7590 * calls.c (store_one_arg): Rename default_align to parm_align;
7591 always adjust parm_align for downward padding.
7592
724838b9
RH
75932002-09-18 Richard Henderson <rth@redhat.com>
7594
7595 * toplev.c (backend_init): Move init_real_once invocation ...
7596 (do_compile): ... here.
7597
2c67b7c6
RH
75982002-09-18 Richard Henderson <rth@redhat.com>
7599
7600 * sibcall.c (optimize_sibling_and_tail_recursive_call): Also remove
7601 RTX_UNCHANGING_P markers for successful tail-recursive replacement.
7602
15769ca3
RH
76032002-09-18 Richard Henderson <rth@redhat.com>
7604
7605 * real.c (round_for_format): Collect sticky as unsigned long, not bool.
7606
678b7733
AM
76072002-09-19 Alan Modra <amodra@bigpond.net.au>
7608
7609 * config/rs6000/rs6000.md: (floatdisf2): Rename to
7610 floatdisf2_internal1.
7611 (floatdisf2): New define_expand.
7612 (floatdisf2_internal2): Likewise.
7613
c402b6bf
RH
76142002-09-18 Richard Henderson <rth@redhat.com>
7615
b4f94ac1 7616 * real.c (sticky_rshift_significand): Collect sticky as
c402b6bf
RH
7617 unsigned long, not bool.
7618
dea09b1b
UW
76192002-09-18 Ulrich Weigand <uweigand@de.ibm.com>
7620
7621 * config/s390/s390.c (s390_address_cost): New function.
7622 config/s390/s390-protos.h (s390_address_cost): Add prototype.
7623 config/s390/s390.h (ADDRESS_COST): Call s390_address_cost.
7624 (RTX_COST): Use COSTS_N_INSNS.
7625
e4850f36
DR
76262002-09-18 Douglas Rupp <rupp@gnat.com>
7627 Donn Terry <donnte@microsoft.com>
7628
7629 * stor-layout.c (place_field): Handle alignment of whole
7630 structures when MSVC compatible bitfields are involved.
7631 Change method of computing location of MS bitfields to
7632 be compatible with #pragma pack(n).
7633
7634 * tree.h (record_layout_info): Add new field
7635 remaining_in_alignment.
7636
7637 * doc/tm.texi: (TARGET_MS_BITFIELD_LAYOUT_P): Update.
4977bab6 7638 (pragma pack): Add paragraph on MSVC bitfield packing.
e4850f36 7639
872e50d3
RE
76402002-09-18 Richard Earnshaw (reanrsha@arm.com)
7641
7642 PR optimization/7967
7643 * arm.md (ne_zeroextractsi): Add clobber of the condition code
7644 register.
7645
5e7a8ee0
KH
76462002-09-18 Kazu Hirata <kazu@cs.umass.edu>
7647
9cd10576 7648 * config/s390/s390.c: Follow spelling conventions.
5e7a8ee0
KH
7649 * config/sh/lib1funcs.asm: Likewise.
7650 * config/sh/sh.c: Likewise.
7651 * config/sh/sh.h: Likewise.
7652 * config/sparc/sparc.c: Likewise.
7653 * config/sparc/sparc.h: Likewise.
7654 * config/sparc/sparc.md: Likewise.
7655 * config/stormy16/stormy16.c: Likewise.
7656 * config/stormy16/stormy16.h: Likewise.
7657 * config/v850/v850.c: Likewise.
7658 * config/v850/v850.h: Likewise.
7659 * config/vax/vax.c: Likewise.
7660 * config/vax/vax.h: Likewise.
7661
00a892b8
NC
76622002-09-18 Nick Clifton <nickc@redhat.com>
7663
7664 * config/rs60000/rs6000.c (rs6000_emit_move): Handle V1DImode moves.
7665 * config/rs60000/rs6000.c (SPE_VECTOR_MODE): Include V1DImode.
7666 * config/rs6000/spe.md (movv1di, movv1di_internal): New patterns.
7667
4977bab6
ZW
76682002-09-17 Kazu Hirata <kazu@cs.umass.edu>
7669
7670 * function.c (max_parm_reg_num): Remove.
7671 * stmt.c (in_control_zone_p, stmt_loop_nest_empty,
7672 drop_through_at_end_p, move_cleanups_up,
7673 expand_end_case_dummy, case_index_expr_type): Likewise.
7674 * stor-layout.c (pos_from_byte): Likewise.
7675 * tree.c (chain_member_value, chain_member_purpose, listify,
7676 tree_int_cst_msb, index_type_equal): Likewise.
7677 * tree.h: Remove prototypes for unused functions.
7678
bfb53001
ZW
76792002-09-17 Zack Weinberg <zack@codesourcery.com>
7680
7681 * ABOUT-GCC-NLS: Remove reference to enquire, and out-of-date
7682 statement that the only translation is to en_UK.
7683
825dda42
KH
76842002-09-17 Kazu Hirata <kazu@cs.umass.edu>
7685
7686 * config/alpha/alpha.c: Follow spelling conventions.
7687 * config/alpha/alpha.h: Likewise.
7688 * config/alpha/alpha.md: Likewise.
7689 * config/arc/arc.h: Likewise.
7690 * config/arm/arm.c: Likewise.
7691 * config/arm/arm.h: Likewise.
7692 * config/arm/arm.md: Likewise.
7693 * config/arm/pe.c: Likewise.
7694 * config/arm/unknown-elf.h: Likewise.
7695 * config/avr/avr.c: Likewise.
7696 * config/avr/avr.h: Likewise.
7697 * config/c4x/c4x.c: Likewise.
7698 * config/cris/cris.c: Likewise.
7699 * config/cris/cris.h: Likewise.
7700
8e16ab99 77012002-09-17 Samuel Figueroa <figueroa@apple.com>
825dda42 7702
8e16ab99
SF
7703 * final.c (final_scan_insn): Use new macro ASM_OUTPUT_ALIGN_WITH_NOP.
7704 * config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP) New macro.
7705 * doc/tm.texi (ASM_OUTPUT_ALIGN_WITH_NOP) New description.
7706
ac19be7e 77072002-09-17 Dale Johannesen <dalej@apple.com>
825dda42 7708
ac19be7e
DJ
7709 * cfgcleanup.c (try_forward_edges): Do not forward a
7710 branch to just after a loop exit before loop optimization;
7711 this interfered with doloop detection.
7712
f1acdf8b
NC
77132002-09-17 Nick Clifton <nickc@redhat.com>
7714
7715 * config/arm/arm.c (output_return_instruction): Do not
7716 writeback the stack pointer when it is being loaded.
7717 (arm_output_epilogue): Likewise.
7718
24491a09
KH
77192002-09-17 Kazu Hirata <kazu@cs.umass.edu>
7720
7721 * optabs.c (prepare_cmp_insn): Let emit_library_call_value
7722 generate a pseudo reg that receives the result of a libcall.
7723 (prepare_float_lib_cmp): Likewise.
7724
e6c247e0
SE
77252002-09-17 Steve Ellcey <sje@cup.hp.com>
7726
b4f94ac1 7727 * config/ia64/elf.h: Remove CPP_PREDEFINES.
e6c247e0 7728
1074d9d4
NP
7729Tue Sep 17 13:58:04 2002 Nicola Pero <n.pero@mi.flashnet.it>
7730
7731 Fix PR/7014 and related objc bugs:
7732 * c-typeck.c (comp_target_types): Added a reflexive argument.
7733 Pass it to ObjC when/if calling objc_comptypes(). Updated all
7734 callers to provide the appropriate reflexive argument.
7735 * objc/objc-act.c (objc_comptypes): Carefully checked and fixed
7736 typechecking for all cases of comparisons and assignments,
7737 particularly the obscure and less common ones involving protocols.
7738
256e9fd2
NC
77392002-09-17 Nick Clifton <nickc@redhat.com>
7740
7741 * machmode.def (V1DImode): New mode. A single element vector.
7742 * tree.h (TI_UV1DI_TYPE, TI_V1DI_TYPE): New tree_index enums.
7743 (unsigned_V1DI_type_node, V1D1_type_node): New type nodes.
7744 * tree.c (build_common_tree_nodes_2): Build
7745 unsigned_V1DI_type_node and V1D1_type_node.
7746 * c-common.c (c_common_type_for_mode): Return
7747 unsigned_V1DI_type_node or V1D1_type_node for V1DImode.
7748 * rtl.c (class_narrowest_): Start integer vector nodes with V1DImode.
7749
838c4534
NP
7750Tue Sep 17 13:40:13 2002 Nicola Pero <n.pero@mi.flashnet.it>
7751
7752 * doc/objc.texi (Constant string objects): Extended documentation
7753 to make clear that the constant string class ivar layout is
7754 completely fixed.
b4f94ac1 7755
07532fad
RS
77562002-09-17 Roger Sayle <roger@eyesopen.com>
7757
7758 * cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned
7759 NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
7760
4977bab6
ZW
77612002-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
7762
7763 * config/mips/mips.c (save_restore_insns): Remove unused variable.
7764 * gcc.c (make_relative_prefix): Likewise.
7765 * loop.c (check_final_value): Likewise.
7766 * jump.c (init_label_info): Remove return value.
7767 * cse.c (prev_insn): Move variable between #ifdef HAVE_cc0 ... #endif.
7768
77692002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7770
7771 * dsp16xx.h (ASM_FORMAT_PRIVATE_NAME): Delete.
7772 (ASM_PN_FORMAT): Define.
7773
77742002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7775
7776 * alpha.h, alpha/vms.h, arc.h, arm/aof.h, arm/aout.h, avr.h,
7777 c4x.h, cris.h, d30v.h, fr30.h, frv.h, h8300.h, i370.h, i386.h,
7778 i960.h, ia64.h, ip2k.h, m32r.h, m68hc11.h, m68k/3b1.h,
7779 m68k/hp320.h, m68k.h, m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h,
7780 m88k.h, mcore.h, mips.h, mmix.h, mn10200.h, mn10300.h, ns32k.h,
7781 pa.h, pdp11.h, romp.h, rs6000.h, s390/linux.h, sh.h, sparc.h,
7782 stormy16.h, v850.h, vax.h, xtensa.h (ASM_FORMAT_PRIVATE_NAME):
7783 Delete.
7784 * alpha/vms.h, h8300.h, i370.h, ia64.h, m68k/3b1.h, m68k/hp320.h,
7785 m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h, mmix.h, mn10200.h,
7786 mn10300.h, pa.h, v850.h (ASM_PN_FORMAT): Define.
7787
7788 * defaults.h (ASM_PN_FORMAT, ASM_FORMAT_PRIVATE_NAME): Define.
7789 * doc/tm.texi (ASM_FORMAT_PRIVATE_NAME): Update documentation.
7790
cb38fd88
RH
77912002-09-16 Richard Henderson <rth@redhat.com>
7792
7793 * expr.c (emit_block_move): Set memory block size as appropriate
7794 for the copy.
7795
bd055118
RH
77962002-09-16 Richard Henderson <rth@redhat.com>
7797
7798 PR fortran/3924
b4f94ac1 7799 * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol.
bd055118 7800
8c317c5f
RH
78012002-09-16 Richard Henderson <rth@redhat.com>
7802
7803 * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE
7804 as well as OFFSET for BITPOS.
7805
3780101d
JG
78062002-09-16 Jeff Garzik <jgarzik@mandrakesoft.com>
7807
b4f94ac1
ZW
7808 * config.gcc: Treat winchip_c6-*|winchip2-*|c3-* as pentium-mmx.
7809 * config/i386/i386.c (processor_alias_table): Add winchip-c6,
3780101d 7810 winchip2 and c3.
b4f94ac1 7811 * doc/invoke.texi: Mention new aliases.
3780101d 7812
9dff28ab
JDA
78132002-09-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
7814
7815 * calls.c (store_one_arg): Set default alignment for BLKmode arguments
7816 to BITS_PER_UNIT when ARGS_GROW_DOWNWARD and the padding direction is
7817 downward.
7818 * function.c (pad_below): Always compile.
7819 (locate_and_pad_parm): If defined ARGS_GROW_DOWNWARD, pad argument to
7820 alignment when it is not in a register or REG_PARM_STACK_SPACE is true.
7821 Pad below when the argument is not in a register and the padding
7822 direction is downward.
7823
7824 * pa-64.h (MUST_PASS_IN_STACK): Move define to pa.h.
7825 (PAD_VARARGS_DOWN): Define.
7826 * pa.c (function_arg_padding): Revise padding directions to make them
7827 compatible with the 32 and 64-bit runtime architecture documentation.
7828 (hppa_va_arg): Add code to handle variable and size zero arguments
7829 passed by reference on TARGET_64BIT. Reformat.
7830 (function_arg): Use a PARALLEL for BLKmode and aggregates args on
7831 TARGET_64BIT. Use a DImode PARALLEL for BLKmode args 5 to 8 bytes
7832 wide when !TARGET_64BIT. Move forward check for mode==VOIDmode.
7833 Add comments.
7834 * pa.h (MAX_PARM_BOUNDARY): Correct define for TARGET_64BIT.
7835 (RETURN_IN_MEMORY): Return size zero types in memory.
7836 (FUNCTION_VALUE): Return TFmode in general registers.
7837 (MUST_PASS_IN_STACK): Define.
7838 (FUNCTION_ARG_BOUNDARY): Simplify.
7839 (FUNCTION_ARG_PASS_BY_REFERENCE): Pass variable and zero sized types
7840 by reference.
7841 (FUNCTION_ARG_CALLEE_COPIES): Define to FUNCTION_ARG_PASS_BY_REFERENCE.
7842
94313f35
RH
78432002-09-16 Richard Henderson <rth@redhat.com>
7844
7845 * real.c (do_fix_trunc): New.
7846 (real_arithmetic): Call it.
7847 * simplify-rtx.c (simplify_unary_operation): Handle FIX
7848 with a floating-point result mode.
7849
1472e41c
RH
78502002-09-16 Richard Henderson <rth@redhat.com>
7851
7852 * builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
7853 (BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New.
7854 * builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New.
7855 (__builtin_nans, __builtin_nansf, __builtin_nansl): New.
7856 * builtins.c (fold_builtin_nan): New.
7857 (fold_builtin): Call it.
7858 * real.c (real_nan): Parse a non-empty string.
7859 (round_for_format): Fix NaN significand truncation.
7860 * real.h (real_nan): Return bool.
7861 * doc/extend.texi: Document new builtins.
7862
f354b828
JM
78632002-09-16 Jason Merrill <jason@redhat.com>
7864 Danny Smith <dannysmith@users.sourceforge.net>
7865
7866 * config/i386/winnt.c (ix86_handle_dll_attribute): Set
7867 DECL_EXTERN and TREE_PUBLIC for dllimported variables here...
7868 (i386_pe_mark_dllimport): Not here.
7869
85341ddd
NS
78702002-09-16 Nathan Sidwell <nathan@codesourcery.com>
7871
7872 * c-semantics.c (genrtl_do_stmt): Cope with NULL cond.
7873
045572c7
GK
78742002-09-16 Geoffrey Keating <geoffk@redhat.com>
7875
7876 * config/rs6000/rs6000.c (build_mask64_2_operands): Suppress
7877 warnings about unused operands when HOST_BITS_PER_WIDE_INT is
7878 < 64.
7879 (rs6000_emit_cmove): Use real_isinf not target_isinf.
7880
d57551c7
KH
78812002-09-16 Kazu Hirata <kazu@cs.umass.edu>
7882
7883 * calls.c (emit_library_call_value_1): Don't refer to
7884 hard_libcall_value.
7885 * optabs.c (prepare_float_lib_cmp): Likewise.
7886
36a5eadd
GK
78872002-09-16 Geoffrey Keating <geoffk@apple.com>
7888
7889 * ggc-common.c (ggc_mark_rtx_children_1): Update for changed name
7890 mangling.
7891
7892 The following changes are merged from pch-branch:
7893
7894 * doc/gty.texi (GTY Options): Document %a.
7895 * gengtype.c (do_scalar_typedef): New function.
7896 (process_gc_options): Handle `length' option.
7897 (set_gc_used_type): A pointer to an array of structures doesn't
7898 qualify as a pointer to a structure.
7899 (output_escaped_param): Add `%a' escape.
7900 (write_gc_structure_fields): Allow 'desc' on array of unions.
7901 (main): Define `uint8', `jword' and `JCF_u2' as scalars; use
7902 do_scalar_typedef.
7903
7904 * gengtype.c (enum rtx_code): Make global.
7905 (rtx_format): Make global.
7906 (rtx_next): New.
7907 (gen_rtx_next): New.
7908 (write_rtx_next): New.
7909 (adjust_field_rtx_def): Skip fields marked by chain_next.
7910 (open_base_files): Delete redundant prototype.
7911 (write_enum_defn): New.
7912 (output_mangled_typename): Correct abort call.
7913 (write_gc_marker_routine_for_structure): Handle chain_next and
7914 chain_prev options.
7915 (finish_root_table): Don't output redundant \n.
7916 (main): Call gen_rtx_next, write_rtx_next, write_enum_defn.
7917 * c-tree.h (union lang_tree_node): Add chain_next option.
7918
7919 * gengtype.h (NUM_PARAM): New definition.
7920 (struct type): For TYPE_PARAM_STRUCT, allow multiple parameters.
7921 * gengtype.c (find_param_structure): New.
7922 (adjust_field_type): Handle param<n>_is option.
7923 (process_gc_options): Detect use_params option. Update callers.
7924 (set_gc_used_type): Add 'param' parameter, update callers. Handle
7925 'use_params' option.
7926 (open_base_files): Add splay-tree.h to list of files included.
7927 (output_mangled_typename): New.
7928 (write_gc_structure_fields): Update 'param' parameter to support
7929 multiple parameters. Change name mangling. Allow parameterized
7930 fields to have an apparent scalar type. Handle param<n>_is options,
7931 use_param option.
7932 (write_gc_marker_routine_for_structure): Update for change to name
7933 mangling. Better guess the output file for parameterized types.
7934 (write_gc_types): Update for change to name mangling.
7935 (write_gc_root): Update for change to name mangling. Handle (ignore)
7936 param<n>_is options.
7937 * doc/gty.texi (GTY Options): Add description of param<n>_is
7938 options, use_params option.
7939 * ggc.h (ggc_mark_rtx): Update for changed name mangling.
7940 * gengtype-lex.l: Produce token for param<n>_is.
7941 * gengtype-yacc.y: Parse param<n>_is.
7942
7943 * gengtype.c (adjust_field_tree_exp): Don't name a variable 'rindex'.
7944
7945 * rtl.c: Update comment describing rtx_format.
7946 * rtl.h (union rtunion): Separate definition and typedef.
7947 (struct rtx_def): Use gengtype to mark.
7948 * Makefile.in (gengtype.o): Also depend on rtl.def.
7949 * ggc.h (ggc_mark_rtx_children): Delete prototype.
7950 (ggc_mark_rtx): Change to alias of gengtype-generated routine.
7951 * ggc-common.c (ggc_mark_rtx_children): Delete.
7952 (ggc_mark_rtx_children_1): Delete.
7953 (gt_ggc_m_rtx_def): Delete.
7954 * gengtype.c (adjust_field_rtx_def): New.
7955 (adjust_field_type): Call adjust_field_rtx_def.
7956 (write_gc_structure_fields): Add 'default' case to switch if none
7957 is specified; remove unused code.
7958
7959 * tree.h (struct tree_exp): Update for change to meaning
7960 of special.
7961 * gengtype.c (adjust_field_tree_exp): New function.
7962 (adjust_field_type): Handle `tree_exp' special here.
7963 (write_gc_structure_fields): Don't handle `tree_exp' special here.
7964 Handle new `dot' option.
7965
7966 * gengtype.h: Make `info' a pointer-to-const.
7967 * gengtype-yacc.y (yacc_ids): Use xasprintf.
7968
7969 * gengtype.c (write_gc_structure_fields): Remove implementation
7970 of `always' option, add `default' option.
7971 * doc/gty.texi (GTY Options): Remove documentation of `always',
7972 add `default'.
7973
a7f6d760
HPN
79742002-09-16 Hans-Peter Nilsson <hp@bitrange.com>
7975
7976 * output.h: Remove #ifdef RTX_CODE and #ifdef TREE_CODE.
7977
245ff137
KG
79782002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7979
7c3414b6
KG
7980 * m68hc11.md (addhi_sp): Fix uninitialized variable bug.
7981
245ff137
KG
7982 * c4x-c.c, c4x.c, darwin.c, i370-c.c, m32r.c: Include tm_p.h
7983 instead of the *-protos.h file directly.
7984 * t-c4x, t-i370, t-v850: Depend on $(TM_P_H).
7985 * darwin.c (machopic_output_stub): Move prototype ...
7986 * darwin-protos.h (machopic_output_stub): ... here.
7987 * rs6000-protos.h (machopic_output_stub): Don't declare.
7988
ac520ec9
RH
79892002-09-16 Richard Henderson <rth@redhat.com>
7990
7991 * c-common.c (builtin_define_float_constants): Emit __FOO_DENORM_MIN__.
7992
efdc7e19
RH
79932002-09-16 Richard Henderson <rth@redhat.com>
7994
7995 * real.c, real.h: Rewrite from scratch.
7996
7997 * Makefile.in (simplify-rtx.o): Depend on TREE_H.
7998 (paranoia): New target.
7999 * builtins.c (fold_builtin_inf): Use new real.h interface.
8000 * c-common.c (builtin_define_with_hex_fp_value): Likewise.
8001 * c-lex.c (interpret_float): Likewise.
8002 * emit-rtl.c (gen_lowpart_common): Likewise.
8003 * optabs.c (expand_float): Use real_2expN.
8004 * config/ia64/ia64.md (divsi3, udivsi3): Likewise.
8005 * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): New.
8006 (FLOAT_WORDS_BIG_ENDIAN): New.
8007 * cse.c (find_comparison_args): Don't pass FLOAT_STORE_FLAG_VALUE
8008 directly to REAL_VALUE_NEGATIVE.
8009 * loop.c (canonicalize_condition): Likewise.
8010 * simplify-rtx.c: Include tree.h.
8011 (simplify_unary_operation): Don't handle FIX and UNSIGNED_FIX
8012 with floating-point result modes.
8013 * toplev.c (backend_init): Call init_real_once.
8014
8015 * fold-const.c (force_fit_type): Don't call CHECK_FLOAT_VALUE.
8016 * tree.c (build_real): Likewise.
8017 * config/alpha/alpha.c, config/vax/vax.c (float_strings,
8018 float_values, inited_float_values, check_float_value): Remove.
8019 * config/alpha/alpha.h, config/m68hc11/m68hc11.h,
8020 config/m88k/m88k.h, config/vax/vax.h (CHECK_FLOAT_VALUE): Remove.
8021 * doc/tm.texi (CHECK_FLOAT_VALUE): Remove.
8022 (VAX_HALFWORD_ORDER): Remove.
8023
a41c6c53
UW
80242002-09-16 Ulrich Weigand <uweigand@de.ibm.com>
8025
8026 * config/s390/s390.c: (legitimize_la_operand): Remove, replace by ...
8027 (s390_load_address): ... this new function.
8028 (s390_decompose_address): Allow the argument pointer and all
8029 virtual registers as 'pointer' registers.
8030 (s390_expand_plus_operand): Use s390_load_address.
8031 config/s390/s390.md (movti, movdi, movdf splitters): Likewise.
8032 ("force_la_31"): New insn pattern.
8033 config/s390/s390-protos.h (legitimize_la_operand): Remove.
8034 (s390_load_address): Add prototype.
8035
8036 * config/s390/s390.c: Include "optabs.h".
8037 (s390_expand_movstr, s390_expand_clrstr, s390_expand_cmpstr): New.
b4f94ac1 8038 config/s390/s390-protos.h (s390_expand_movstr, s390_expand_clrstr,
a41c6c53
UW
8039 s390_expand_cmpstr): Add prototypes.
8040 config/s390/s390.md ("movstrdi", "movstrsi"): Call s390_expand_movstr.
8041 ("movstrdi_short"): Rename to "movstr_short_64". Change predicates
8042 for operands 0 and 1 to "memory_operand". Add type attribute.
8043 ("movstrsi_short"): Rename to "movstr_short_31". Change predicates
8044 for operands 0 and 1 to "memory_operand". Add type attribute.
8045 ("movstrdi_long", "movstrsi_long"): Remove.
8046 ("movstrdi_64"): Rename to "movstr_long_64". Add type attribute.
8047 ("movstrsi_31"): Rename to "movstr_long_31". Add type attribute.
8048 ("clrstrdi", "clrstrsi"): Call s390_expand_clrstr.
8049 ("clrstrsico"): Remove, replace by ...
8050 ("clrstr_short_64", "clrstr_short_31"): ... these new patterns.
8051 ("clrstrsi_64"): Rename to "clrstr_long_64".
8052 ("clrstrsi_31"): Rename to "clrstr_long_31".
8053 ("cmpstrdi", "cmpstrsi"): Call s390_expand_cmpstr.
8054 ("cmpstr_const"): Remove, replace by ...
8055 ("cmpstr_short_64", "cmpstr_short_31"): ... these new patterns.
8056 ("cmpstr_64"): Rename to "cmpstr_long_64".
8057 ("cmpstr_31"): Rename to "cmpstr_long_31".
8058
8d9afc4e
KH
80592002-09-16 Kazu Hirata <kazu@cs.umass.edu>
8060
8061 * ABOUT-NLS: Follow spelling conventions.
8062 * ChangeLog: Likewise.
8063 * ChangeLog.1: Likewise.
8064 * ChangeLog.2: Likewise.
8065 * ChangeLog.3: Likewise.
8066 * ChangeLog.4: Likewise.
8067 * ChangeLog.5: Likewise.
8068 * ChangeLog.6: Likewise.
8069 * FSFChangeLog.10: Likewise.
8070 * FSFChangeLog.11: Likewise.
8071 * c-common.c: Likewise.
8072 * c-lex.c: Likewise.
8073 * c-objc-common.c: Likewise.
8074 * cppexp.c: Likewise.
8075 * cppinit.c: Likewise.
8076 * cpplex.c: Likewise.
8077 * doloop.c: Likewise.
8078 * flow.c: Likewise.
8079 * function.c: Likewise.
8080 * integrate.c: Likewise.
8081 * loop.c: Likewise.
8082 * reg-stack.c: Likewise.
8083 * reload.h: Likewise.
8084 * ssa.c: Likewise.
8085
4977bab6
ZW
80862002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8087
8088 * Makefile.in (vmsdbgout.o): Depend on $(TARGET_H)
8089 * vmsdbgout.c: Include "target.h".
8090
981f6289
KH
80912002-09-15 Kazu Hirata <kazu@cs.umass.edu>
8092
8093 * ChangeLog: Follow spelling conventions.
8094 * ChangeLog.0: Likewise.
8095 * ChangeLog.1: Likewise.
8096 * ChangeLog.2: Likewise.
8097 * ChangeLog.4: Likewise.
8098 * ChangeLog.6: Likewise.
8099 * config.gcc: Likewise.
8100 * dwarfout.c: Likewise.
8101 * reload1.c: Likewise.
8102 * simplify-rtx.c: Likewise.
8103 * unwind-sjlj.c: Likewise.
8104 * config/avr/avr.h: Likewise.
8105 * config/d30v/d30v.h: Likewise.
8106 * config/frv/frv.c: Likewise.
8107 * config/frv/frv.h: Likewise.
8108 * config/ip2k/ip2k.h: Likewise.
8109 * config/m88k/m88k-move.sh: Likewise.
8110 * config/stormy16/stormy16.c: Likewise.
8111 * config/stormy16/stormy16.h: Likewise.
8112 * doc/extend.texi: Likewise.
8113 * doc/interface.texi: Likewise.
8114 * doc/invoke.texi: Likewise.
8115 * doc/md.texi: Likewise.
8116 * doc/rtl.texi: Likewise.
8117 * doc/tm.texi: Likewise.
8118 * doc/trouble.texi: Likewise.
8119 * ginclude/float.h: Likewise.
8120 * treelang/treelang.texi: Likewise.
8121
8764eef7
KG
81222002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8123
bb6155b5
KG
8124 * i386-protos.h (i386_pe_dllexport_name_p,
8125 i386_pe_dllimport_name_p, i386_pe_unique_section,
8126 i386_pe_declare_function_type, i386_pe_record_external_function,
8127 i386_pe_record_exported_symbol, i386_pe_asm_file_end): Add
8128 prototype.
8129 * i386/t-cygwin (winnt.o): Depend on $(TM_P_H).
8130 * i386/t-interix (winnt.o): Likewise.
8131
8764eef7
KG
8132 * v850-protos.h (v850_output_addr_const_extra): Prototype.
8133
a24f7c1a
JT
81342002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
8135
8136 * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Add
8137 MIPS ABI CPP macros.
8138 (TARGET_CPU_CPP_BUILTINS): Redefine.
8139 (SUBTARGET_EXTRA_SPECS): Remove subtarget_endian_default.
8140 (SUBTARGET_ENDIAN_DEFAULT_SPEC): Remove.
8141
bd25febf
KG
81422002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8143
8144 * ia64/aix.h (TARGET_OS_CPP_BUILTINS): Fix typo.
8145
05713b80
KH
81462002-09-15 Kazu Hirata <kazu@cs.umass.edu>
8147
8148 * ChangeLog: Follow spelling conventions.
8149 * ChangeLog.0: Likewise.
8150 * ChangeLog.1: Likewise.
8151 * ChangeLog.2: Likewise.
8152 * ChangeLog.3: Likewise.
8153 * ChangeLog.4: Likewise.
8154 * ChangeLog.5: Likewise.
8155 * ChangeLog.6: Likewise.
8156 * FSFChangeLog.10: Likewise.
8157 * FSFChangeLog.11: Likewise.
8158 * c-common.c: Likewise.
8159 * c-common.h: Likewise.
8160 * c-format.c: Likewise.
8161 * c-opts.c: Likewise.
8162 * cpplib.c: Likewise.
8163 * langhooks.h: Likewise.
8164 * real.c: Likewise.
8165 * reg-stack.c: Likewise.
8166 * toplev.c: Likewise.
8167 * config/arm/arm.c: Likewise.
8168 * config/arm/arm.md: Likewise.
8169 * config/arm/linux-gas.h: Likewise.
8170 * config/arm/netbsd.h: Likewise.
8171 * config/c4x/c4x.c: Likewise.
8172 * config/c4x/c4x.h: Likewise.
8173 * config/c4x/c4x.md: Likewise.
8174 * config/c4x/libgcc.S: Likewise.
8175 * config/fr30/fr30.md: Likewise.
8176 * config/frv/frv.md: Likewise.
8177 * config/ia64/ia64.md: Likewise.
8178 * config/mips/mips.h: Likewise.
8179 * config/mn10300/mn10300.c: Likewise.
8180 * config/stormy16/stormy16.c: Likewise.
8181 * config/v850/v850.md: Likewise.
8182 * doc/extend.texi: Likewise.
8183 * doc/invoke.texi: Likewise.
8184 * doc/md.texi: Likewise.
8185
b0c2b2f9
JT
81862002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
8187
8188 * config/netbsd.h (LIB_SPEC): Include the appropriate pthread
8189 library if -pthread is specified.
8190
a0494c05
JT
81912002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
8192
8193 * config.gcc (*-*-netbsd*): Set thread_file to 'posix'
8194 for --enable-threads=yes and --enable-threads=posix.
8195
56149abc
KH
81962002-09-15 Kazu Hirata <kazu@cs.umass.edu>
8197
8198 * config/sparc/cypress.md: Replace Sparc with SPARC.
8199 * config/sparc/freebsd.h: Likewise.
8200 * config/sparc/gmon-sol2.c: Likewise.
8201 * config/sparc/hypersparc.md: Likewise.
8202 * config/sparc/lb1spc.asm: Likewise.
8203 * config/sparc/lb1spl.asm: Likewise.
8204 * config/sparc/linux.h: Likewise.
8205 * config/sparc/linux64.h: Likewise.
8206 * config/sparc/lynx.h: Likewise.
8207 * config/sparc/sol2.h: Likewise.
8208 * config/sparc/sparc-modes.def: Likewise.
8209 * config/sparc/sparc.c: Likewise.
8210 * config/sparc/sparc.h: Likewise.
8211 * config/sparc/sparc.md: Likewise.
8212 * config/sparc/sparclet.md: Likewise.
8213 * config/sparc/supersparc.md: Likewise.
8214 * config/sparc/sysv4.h: Likewise.
8215 * config/sparc/vxsim.h: Likewise.
8216 * config/sparc/vxsparc64.h: Likewise.
8217
4977bab6
ZW
82182002-09-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8219
8220 * c-lex.c (cb_ident): Mark variable with ATTRIBUTE_UNUSED.
8221 * collect2.c (ignore_library, aix_std_libs): Move into the context
8222 where it is used.
8223 * m68hc11.c (m68hc11_autoinc_compatible_p): Delete prototype.
8224 (autoinc_mode, m68hc11_make_autoinc_notes): Add prototypes.
8225 * m88k.c (output_call): Wrap variables with macro controlling use.
8226 * rs6000.md: Likewise. Const-ify variable.
8227 * sh.h (ASM_OUTPUT_LABELREF): Likewise.
8228 * final.c (only_leaf_regs_used): Likewise.
8229 * regrename.c (maybe_mode_change): Mark parameter with
8230 ATTRIBUTE_UNUSED.
8231 * reload.c (find_valid_class): Likewise. Likewise for variable.
8232 (find_reloads_address_1): Likewise.
8233 * varasm.c (weak_finish): Wrap variable with macro controlling use.
8234
3eaf7a3c
MM
82352002-09-14 Marek Michalkiewicz <marekm@amelek.gda.pl>
8236
8237 * config/avr/avr.c (output.h): Move after inclusion of tree.h.
8238
4912a07c
KH
82392002-09-14 Kazu Hirata <kazu@cs.umass.edu>
8240
8241 * ChangeLog: Follow spelling conventions.
8242 * ChangeLog.0: Likewise.
8243 * ChangeLog.2: Likewise.
8244 * ChangeLog.3: Likewise.
8245 * ChangeLog.4: Likewise.
8246 * ChangeLog.5: Likewise.
8247 * ChangeLog.6: Likewise.
8248 * cppfiles.c: Likewise.
8249 * cppinit.c: Likewise.
8250 * cpplib.h: Likewise.
8251 * cse.c: Likewise.
8252 * debug.h: Likewise.
8253 * df.c: Likewise.
8254 * dominance.c: Likewise.
8255 * hashtable.c: Likewise.
8256 * hashtable.h: Likewise.
8257 * loop.c: Likewise.
8258 * config/arm/README-interworking: Likewise.
8259 * config/arm/arm.c: Likewise.
8260 * config/arm/arm.h: Likewise.
8261 * config/arm/arm.md: Likewise.
8262 * config/dsp16xx/dsp16xx.h: Likewise.
8263 * config/frv/frv.c: Likewise.
8264 * config/frv/frv.h: Likewise.
8265 * config/ip2k/ip2k.h: Likewise.
8266 * config/rs6000/rs6000.c: Likewise.
8267 * config/stormy16/stormy-abi: Likewise.
8268 * config/stormy16/stormy16.h: Likewise.
8269 * config/v850/v850.c: Likewise.
8270
3dc60fc7
KH
82712002-09-14 Kazu Hirata <kazu@cs.umass.edu>
8272
8273 * loop.c: Fix a comment typo.
8274
a920aefe
KH
82752002-09-14 Kazu Hirata <kazu@cs.umass.edu>
8276
8277 * config/fr30/fr30.h: Fix comment typos.
8278 * config/frv/frv.c: Likewise.
8279 * config/i386/xmmintrin.h: Likewise.
8280 * config/mips/mips.c: Likewise.
8281 * config/sh/sh.c: Likewise.
8282
88cad84b
KH
82832002-09-14 Kazu Hirata <kazu@cs.umass.edu>
8284
8285 * haifa-sched.c: Follow spelling conventions.
8286 * regclass.c: Likewise.
8287 * regrename.c: Likewise.
8288 * config/fp-bit.c: Likewise.
8289 * config/frv/frv.h: Likewise.
8290 * config/m88k/m88k.c: Likewise.
8291 * config/mcore/mcore.c: Likewise.
8292 * config/rs6000/darwin.h: Likewise.
8293 * config/rs6000/gnu.h: Likewise.
8294 * config/rs6000/linux.h: Likewise.
8295 * config/rs6000/linux64.h: Likewise.
8296 * config/rs6000/rs6000.c: Likewise.
8297 * config/rs6000/rs6000.h: Likewise.
8298 * config/sh/sh.c: Likewise.
8299 * config/sparc/sparc.c: Likewise.
8300 * config/sparc/ultra1_2.md: Likewise.
8301
f197f1cf
SC
83022002-09-14 Stephane Carrez <stcarrez@nerim.fr>
8303
8304 * config/m68hc11/m68hc11.md ("movdi_internal"): Allow any offsetable
8305 memory operand when source is 0 (K constraint).
8306 ("movsi_internal"): Likewise.
8307 ("movdf_internal"): Likewise.
8308 ("movsf_internal"): Likewise.
8309
b629ba0c
AM
83102002-09-14 Alan Modra <amodra@bigpond.net.au>
8311
8312 * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Use
8313 targetm.binds_local_p to set SYMBOL_REF_FLAG.
8314 (rs6000_xcoff_encode_section_info): Likewise.
8315 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
8316
2e485129
TR
83172002-09-10 Theodore A. Roth <troth@verinet.com>
8318
8319 * gcc/config/avr/avr.h: Set default options for C++ for avr.
8320
4977bab6
ZW
83212002-09-13 Roger Sayle <roger@eyesopen.com>
8322
8323 * stmt.c (struct nexting): Remove unused alt_end_label field.
8324 (expand_start_loop): Delete initialization of alt_end_label.
8325 (expand_start_null_loop): Likewise.
8326 (expand_exit_loop_if_false): Delete updating of alt_end_label.
8327
907aee69
RH
83282002-09-13 Richard Henderson <rth@redhat.com>
8329
8330 * Makefile.in (toplev.o): Depend on real.h.
8331 (print-rtl.o, varasm.o, ifcvt.o): Likewise.
8332
374b0b7d
AM
83332002-09-14 Alan Modra <amodra@bigpond.net.au>
8334
8335 * doc/tm.texi (DBX_OUTPUT_NFUN): Describe.
8336 * dbxout.c (dbxout_function_end): Use DBX_OUTPUT_NFUN.
8337 * config/rs6000/linux64.h (DBX_OUTPUT_NFUN): Define.
8338
690eed2c
NS
83392002-09-13 Nathan Sidwell <nathan@codesourcery.com>
8340
8341 * ggc-common.c (ggc_mark_roots): Don't iterate NULL hash tables.
8342
32b4f6f4
SE
83432002-09-13 Steve Ellcey <sje@cup.hp.com>
8344
8345 * config.gcc (ia64*-*-aix*, ia64*-*-elf*, ia64*-*-freebsd*,
8346 ia64*-*-linux*): Set extra_parts.
8347 * config/ia64/t-aix (EXTRA_PARTS): Remove.
8348 * config/ia64/t-ia64 (EXTRA_PARTS): Remove.
8349
3db11b5c
KH
83502002-09-13 Kazu Hirata <kazu@cs.umass.edu>
8351
8352 * config/h8300/fixunssfsi.c: Replace H8/S with H8S.
8353 * config/h8300/h8300.c: Likewise.
8354 * config/h8300/h8300.h: Likewise.
8355 * config/h8300/h8300.md: Likewise.
8356 * doc/invoke.texi: Likewise.
8357
b6894857
KH
83582002-09-13 Kazu Hirata <kazu@cs.umass.edu>
8359
8360 * config/h8300/h8300.c (h8300_init_once): Fix formatting.
8361
d5909a79
RH
83622002-09-13 Richard Henderson <rth@redhat.com>
8363
8364 * config/alpha/alpha.md (attr type): Add callpal.
8365 (imb, trap, load_tp, set_tp): Use it.
8366 * config/alpha/ev4.md (ev4_callpal): New.
8367 * config/alpha/ev5.md (ev5_callpal): New.
8368 * config/alpha/ev6.md (ev6_ibr): Handle callpal.
8369 * config/alpha/alpha.c (alphaev4_insn_pipe): Handle TYPE_CALLPAL.
8370 (alphaev5_insn_pipe): Likewise.
8371
e0073fa8
AJ
83722002-09-13 Andreas Jaeger <aj@suse.de>
8373
8374 * Makefile.in (print-rtl.o): Depend on CONFIG_H.
8375
1f298625
SE
83762002-09-13 Steve Ellcey <sje@cup.hp.com>
8377
8378 * config/ia64/t-hpux (LIBGCC1_TEST, STMP_FIXPROTO,
8379 LIB2ADDEH): New, set to NULL.
8380 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP): New.
8381
1a7e1470
SE
83822002-09-13 Steve Ellcey <sje@cup.hp.com>
8383
8384 * config/ia64/quadlib.c (_U_Qfcmp): Make extern.
8385 (_U_Qfcnvfxt_quad_to_sgl): Remove declaration.
8386 (_U_Qfeq, _U_Qfne, _U_Qfgt, _U_Qfge, U_Qflt, U_Qfle, _U_Qfcomp):
8387 Add declarations.
8388 (_U_Qfneg): Remove.
8389
d56c04ce
DD
83902002-09-13 Dhananjay Deshpande <dhananjayd@kpit.com>
8391
8392 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Add support
8d9afc4e
KH
8393 for H8/300, H8S aa:8 mode.
8394 (TINY_CONSTANT_ADDRESS_P): Add support for H8S aa:16 mode.
d56c04ce
DD
8395 * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust length
8396 for H8/300 aa:8 mode.
8397
4456530d
HP
83982002-09-13 Hartmut Penner <hpenner@de.ibm.com>
8399
8400 * config/s390/s390.md ("trap", "conditional_trap", "*trap"): New
8401 insns.
8402
4d2d910c
RH
84032002-09-12 Richard Henderson <rth@redhat.com>
8404
8405 * Makefile.in (HOST_PRINT): Use print-rtl1.o
8406 (print-rtl.o): Don't define GENERATOR_FILE.
8407 (print-rtl1.o): Rename from $(BUILD_PREFIX_1)print-rtl.o.
8408 * print-rtl.c (print_rtx): Include CONST_DOUBLE fp decimal output
8409 unless GENERATOR_FILE.
8410
7606e68f
SS
84112002-09-12 Stan Shebs <shebs@apple.com>
8412
6ab9a3f4
SS
8413 * config/darwin.h (USER_LABEL_PREFIX): Define here...
8414 * config/i386/darwin.h: ... instead of here.
8415
7606e68f
SS
8416 * target.h (struct gcc_target): New field
8417 terminate_dw2_eh_frame_info.
8418 * target-def.h (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
8419 (TARGET_INITIALIZER): Add it.
8420 * dwarf2out.c (output_call_frame_info): Use target hook.
8421 * dwarf2asm.c (dw2_asm_output_delta): Use macro
8422 ASM_OUTPUT_DWARF_DELTA if defined.
8423 * doc/tm.texi (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Document.
8424 (ASM_OUTPUT_DWARF_DELTA): Ditto.
8425 (ASM_OUTPUT_DWARF_OFFSET): Ditto.
8426 (ASM_OUTPUT_DWARF_PCREL): Ditto.
8427 * config.gcc (i[34567]86-*-darwin*): Define extra_parts.
8428 (powerpc-*-darwin*): Ditto.
8429 * crtstuff.c [OBJECT_FORMAT_MACHO]: Update the Mach-O bits
8430 to work correctly for Darwin.
8431 * config/darwin.h (OBJECT_FORMAT_MACHO): Define.
8432 (STARTFILE_SPEC): Add crtbegin.o.
8433 (ENDFILE_SPEC): Define.
8434 (EXTRA_SECTION_FUNCTIONS): Put gcc_except_tab in data segment.
8435 (ASM_PREFERRED_EH_DATA_FORMAT): Handle more cases.
8436 (ASM_OUTPUT_DWARF_DELTA): Define.
8437 (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
8438 * config/darwin.c (darwin_asm_output_dwarf_delta): New function.
8439
20b71b17
AM
84402002-09-13 Alan Modra <amodra@bigpond.net.au>
8441
8442 * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Remove "if"
8443 nesting. Correct test for non-PowerPC64 ELF ABI_AIX.
8444 * config/rs6000/rs6000.md (load_toc_v4_PIC*): Disable when ABI_AIX.
8445
d48fd218
ZW
84462002-09-12 Zack Weinberg <zack@codesourcery.com>
8447
8448 * toplev.c: Move default definition of USER_LABEL_PREFIX...
8449 * defaults.h: ... here.
8450
92bc3c1a
RH
84512002-09-12 Richard Henderson <rth@redhat.com>
8452
8453 * vax.c: Include tree.h earlier.
8454
3f64e543
SS
84552002-09-12 Stan Shebs <shebs@apple.com>
8456
8457 * config/darwin.c (machopic_finish): Remove #if 0 chunks.
8458 (machopic_operand_p): Ditto.
8459
52bd31bb
KH
84602002-09-12 Kazu Hirata <kazu@cs.umass.edu>
8461
8462 * config/arm/arm.c (arm_compute_initial_elimination_offset):
8463 Fix a comment typo.
8464
387c9294
KH
84652002-09-12 Kazu Hirata <kazu@cs.umass.edu>
8466
8467 * toplev.c (do_abort): Fix a comment typo.
8468
e34bb004
KH
84692002-09-12 Kazu Hirata <kazu@cs.umass.edu>
8470
8471 * cselib.c: Fix comment formatting.
8472 * gengtype.c: Likewise.
8473
d0029ebd
KH
84742002-09-12 Kazu Hirata <kazu@cs.umass.edu>
8475
8476 * config/h8300/h8300.md (udivmodqi4): Do not use an expander.
8477 (udivmodhi4): Likewise.
8478
c3c637e3 84792002-09-12 Graham Stott <graham.stott@btinternet.com>
d48fd218 8480 Roger Sayle <roger@eyesopen.com>
c3c637e3
GS
8481
8482 * i386.c (any_fp_register_operand, fp_register_operand,
8483 register_and_not_any_fp_reg_operand, register_and_not_fp_reg_operand):
8484 New predicate functions.
8485 * i386-protos.h: Add their prototypes.
8486 * i386.h: Add them to PREDICATE_CODES.
8487 * i386.md ("*pushsf_rex64"+2, "*pushsf_rex64"+3, "*pushdf_integer"+1,
8488 "*pushdf_integer"+2, "*pushtf_integer"+1, "*pushtf_integer"+2,
8489 "*pushtf_integer"+3, "*pushtf_integer"+4, "*dummy_extendsfdf2"+1,
8490 "*dummy_extendsfdf2"+2, "*dummy_extendsfxf2"+1,
8491 "*dummy_extendsftf2"+1, "*dummy_extendsftf2"+2,
8492 "*dummy_extenddfxf2"+1, "*dummy_extenddftf2"+1,
8493 "*dummy_extenddftf2"+2, "*negsf2_if"+1, "*negsf2_if"+2,
8494 "*negdf2_if_rex64"+1, "*negdf2_if_rex64"+2, "*negxf2_if"+1,
8495 "*negxf2_if"+2, "*negtf2_if"+1, "*negtf2_if"+2, "*abssf2_if"+1,
8496 "*abssf2_if"+2, "*absdf2_if_rex64"+1, "*absdf2_if_rex64"+2,
8497 "*absxf2_if"+1, "*absxf2_if"+2, "*abstf2_if"+1, "*abstf2_if"+2):
8498 Use these new predicates to simplify and correct the use of
8499 FP_REG_P, ANY_FP_REG_P, FP_REGNO_P and any ANY_FP_REGNO_P.
8500
db4c55f6
JM
85012002-09-12 Jason Merrill <jason@redhat.com>
8502
236a2ac8
JM
8503 * diagnostic.c (output_add_identifier): New fn.
8504 * diagnostic.h: Declare it.
8505
db4c55f6
JM
8506 * calls.c (store_one_arg): Use size_in_bytes to determine the
8507 amount of space to push.
8508
13c0bc20
JJ
85092002-09-12 Jakub Jelinek <jakub@redhat.com>
8510
8511 * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo.
8512
0a3bdf9d
UW
85132002-09-12 Ulrich Weigand <uweigand@de.ibm.com>
8514
8515 * config/s390/s390-modes.def (CCAPmode, CCANmode): New CC modes.
8516 * config/s390/s390.c (s390_match_ccmode_set): Support new CC modes.
8517 (s390_select_ccmode): Likewise.
8518 (s390_branch_condition_mask): Likewise.
8519 (optimization_options): Do not set flag_branch_on_count.
8520 (s390_split_branches): Handle doloop branches.
8521 (s390_chunkify_pool): Likewise.
8522 * config/s390/s390.md ("*adddi3_imm_cc", "*addsi3_imm_cc"): New insns.
8523 ("doloop_end"): New expander.
8524 ("doolop_si", "*doloop_si_long", "doloop_di", "*doloop_di_long",
8525 associated splitters): New.
8526
4977bab6
ZW
85272002-09-11 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
8528
8529 * genattrtab.c (simplify_cond): Remove unused variable(s).
8530 * global.c (record_conflicts): Likewise.
8531 * jump.c (rebuild_jump_labels): Likewise.
8532 * loop.c (scan_loop, check_final_value): Likewise.
8533 * ra-colorize.c (colorize_one_web, assign_colors): Likewise.
8534 * reload1.c (eliminate_regs_in_insn, do_input_reload): Likewise.
8535 * rtlanal.c (reg_set_p): Likewise.
8536 * stmt.c (expand_asm_operands, expand_decl): Likewise.
8537 * genautomata.c (empty_reserv): Remove.
8538 * loop.c (max_luid): Likewise.
8539 * sched-rgn.c (bitlst_table_size): Likewise.
8540
85412002-09-11 Nathan Sidwell <nathan@codesourcery.com>
8542
8543 Reimplement gcov format.
8544 * gcov-io.h: Replace.
8545 * gcov.c: Reimplement.
8546 * gcov-iov.c: New file.
8547 * gcov-dump.c: New file.
8548 * libgcc2.c (L_bb): Replace with ...
8549 (L_gcov): ... this.
8550 (struct bb_function_info, struct bb): Remove.
8551 (inhibit_libc): Never inhibit.
8552 (gcov_list, gcov_crc): New static variables.
8553 (gcov_version_mismatch): New static function.
8554 (__bb_exit_func): Renamed to ...
8555 (__gcov_exit): ... here. Made static. Reimplement.
8556 (__gcov_init_func): Rename to ...
8557 (__gcov_init): ... here. Check version, update crc.
8558 (__bb_fork_func): Rename to ...
8559 (__gcov_flush): ... here.
8560 * libgcc2.h (struct bb, __bb_exit_func, __bb_init_func,
8561 __bb_fork_func, gcov_type, __bb_find_arc_counters): Remove.
8562 * calls.c (expand_call): Call __gcov_flush.
8563 * profile.c (bb_file, last_bb_file_name): Remove.
8564 (bbg_file_name): New global variable.
8565 (output_gcov_string): Remove.
8566 (get_exec_counts): Reimplement.
8567 (branch_prob): Reimplement gcov file writing.
8568 (init_branch_prob): Create bbg_file_name, don't create
8569 bb_file_name.
8570 (end_branch_prob): Adjust. Don't remove counter file when
8571 instrumenting ourselves.
8572 (create_profiler): Adjust.
8573 * doc/gcov.texi (Gcov Data Files): Remove detailed specification,
8574 point to gcov-io.h.
8575 * Makefile.in (LANGUAGES): Add gcov-dump.
8576 (coverageexts): Remove .bb.
8577 (STAGESTUFF): Add gcov-dump.
8578 (LIB2FUNCS_ST): Replace _bb with _gcov.
8579 (profile.o): Depend on gcov-iov.h.
8580 (final.o): Don't depend on profile.h, gcov.h.
8581 (gcov.o): Depend on gcov-iov.h.
8582 (gcov-iov.o): New target.
8583 (gcov-iov): New target.
8584 (gcov-iov.h): New target.
8585 (gcov-dump.o): New target.
8586 (GCOV_DUMP_OBJS): New variable.
8587 (gcov-dump): New target.
8588 (distclean): Remove coverageexts.
8589 (stage1): Remove coverageexts.
8590
4f968d93
HP
85912002-09-11 Hartmut Penner <hpenner@de.ibm.com>
8592
8593 * fold-const.c (make_range): Only narrow to signed range if
8594 the signed range is smaller than the unsigned range.
8595
35aff10b
AM
85962002-09-12 Alan Modra <amodra@bigpond.net.au>
8597
8598 * emit-rtl.c (set_mem_size): New function.
8599 * expr.h (set_mem_size): Declare.
8600 * config/rs6000/rs6000.c (expand_block_move_mem): Exterminate.
8601 (expand_block_move): Instead, use adjust_address and
8602 replace_equiv_address to generate proper aliasing info.
8603 Move common code out of conditionals. Localize vars.
8604
a9b6f1e7 86052002-09-11 Eric Botcazou <ebotcazou@libertysurf.fr>
d48fd218 8606
874f6a6d
EB
8607 * optabs.c (expand_binop): Minor cleanup.
8608 (expand_twoval_binop): Convert CONST_INTs like in expand_binop.
8609
d1df930b
DN
86102002-09-11 Dan Nicolaescu <dann@ics.uci.edu>
8611
8612 * print-tree.c (print_node): Print the restrict qualifier.
8613
9026a957
JJ
86142002-09-11 Janis Johnson <janis187@us.ibm.com>
8615
8616 * doc/install.texi: Fix typos.
8617
3fd9d606
ZW
86182002-09-11 Zack Weinberg <zack@codesourcery.com>
8619
8620 * Makefile.in: Remove all references to s-under and underscore.c.
8621 * collect2.c, tlink.c: Change all uses of prepends_underscore
8622 to look directly at USER_LABEL_PREFIX.
8623
5b5198f7
DE
86242002-09-11 David Edelsohn <edelsohn@gnu.org>
8625
8626 * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Append
8627 alignment to csect.
8628 (rs6000_xcoff_unique_section): Only set section name for public
8629 data.
8630 (rs6000_xcoff_section_type_flags): Store log2 alignment in flags.
8631 * config/rs6000/xcoff.h (TARGET_ASM_SELECT_SECTION): Remove
8632 duplicate definition.
8633
77de9af2
JDA
86342002-09-10 John David Anglin <dave@hiauly1.hia.nrc.ca>
8635
8636 * pa.md (extzv): Check predicates before emitting extzv_32.
8637 (insv): Likewise.
8638
33b679d1
UW
86392002-09-10 Ulrich Weigand <uweigand@de.ibm.com>
8640
8641 * config/s390/s390.h (MOVE_MAX): Define to correct value.
8642 (MAX_MOVE_MAX): Define.
8643 (MOVE_BY_PIECES_P): Define.
8644 (CLEAR_BY_PIECES_P): Define.
8645
bfae8040
DC
86462002-09-10 Denis Chertykov <denisc@overta.ru>
8647
8648 * config/avr/avr.md (movstrhi): Use right operands for conversion.
8649
7730c3ff
RE
86502002-09-10 Richard Earnshaw <rearnsha@arm.com>
8651
8652 PR c/7873
8653 * arm.md (insv): Use reg_or_int_operand for operand[3].
8654
5add3202
DE
86552002-09-10 David Edelsohn <edelsohn@gnu.org>
8656
8657 * rs6000.c (rs6000_assemble_visibility): Protect declaration
8658 inside macro. Correct function definition typo.
8659 (rs6000_xcoff_section_type_flags): New function.
8660 (TARGET_SECTION_TYPE_FLAGS): Remove definition.
8661 (rs6000_elf_section_type_flags): Call default_section_type_flags_1
8662 with appropriate PIC test.
8663 (rs6000_xcoff_select_section): Use decl_readonly_section_1 to
8664 determine readonly.
8665 (rs6000_binds_local_p): Combine PIC flags.
8666 * sysv4.h (TARGET_SECTION_TYPE_FLAGS): Define.
8667 * xcoff.h (TARGET_SECTION_TYPE_FLAGS): Define.
8668
4977bab6
ZW
86692002-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8670
8671 * h8300.md: Fix signed/unsigned warnings.
8672 * mcore.md: Likewise.
8673 * mn10300.c (mask_ok_for_mem_btst): Likewise.
8674
90389422
PB
86752002-09-09 Per Bothner <per@bothner.com>
8676
8677 * print-tree.c (print_node): In a STRING_CST, escape non-ascii
8678 characters, and only print TREE_STRING_LENGTH chars.
8679
686f3bf0
SE
86802002-09-09 Steve Ellcey <sje@cup.hp.com>
8681
8682 * config/ia64/hpux.h (TARGET_HPUX_LD): New, define true.
8683 (ASM_FILE_END) New.
8684 * config/ia64/ia64.h (TARGET_HPUX_LD): New, define false.
8685 * config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New.
8686 * config/ia64/ia64.c (ia64_asm_output_external): Create list
8687 of external functions if TARGET_HPUX_LD is true.
8688 (ia64_hpux_add_extern_decl): New, routine to put names on
8689 list of external functions.
8690 (ia64_hpux_asm_file_end): Put out declarations for external
8691 functions if and only if they are used.
8692
0c263f4e
JDA
86932002-09-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
8694
8695 * pa.md (exception_receiver, builtin_setjmp_receiver): Add blockage
8696 on TARGET_64BIT before pic register restore.
8697
e2a6476e
DE
86982002-09-09 David Edelsohn <edelsohn@gnu.org>
8699
8700 * doc/tm.texi (TARGET_HAVE_SRODATA_SECTION): New description.
8701 (TARGET_HAVE_TLS): New description.
8702
b73b1546
JJ
87032002-09-09 Janis Johnson <janis187@us.ibm.com>
8704
8705 * doc/extend.texi (Statement Exprs): Fix broken link.
8706
a9738643
DC
87072002-09-09 Denis Chertykov <denisc@overta.ru>
8708
8709 * config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
8710 right conversion of operands[1].
8711
05b9aaaa
UW
87122002-09-09 Ulrich Weigand <uweigand@de.ibm.com>
8713
8714 * config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as
8715 commutative. Use "nonimmediate_operand" instead of "register_operand"
8716 as predicate for operand 0. Move to after the "*tmXX_mem" insns.
8717
8718 ("*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem"): Do not mark
8719 as commutative.
8720
8721 ("*anddi3_ni", "*andsi3_ni", "*iordi3_ni", "*iorsi3_ni"): Do not
8722 mark as commutative. Use "nonimmediate_operand" instead of
8723 "register_operand" as predicate for operand 1.
8724
8725 ("movstrictsi"): Fix typo in insn name.
8726
7ec70495
JH
87272002-09-09 Jan Hubicka <jh@suse.cz>
8728
8729 * i386.c (index_register_operand): New.
8730 * i386.h (predicate_codes): Add new predicate.
8e746279 8731 * i386.md (lea_general_*): Use index_register_operand
7ec70495
JH
8732 (ashift to lea splitter): Do not produce invalid leas
8733 (ashift to mov+ashift split): New.
8734
b2fc915b
NC
87352002-09-09 Nick Clifton <nickc@redhat.com>
8736
8737 * config/fr30/fr30.c (output.h): Move after inclusion of tree.h.
8738 Fix folding marks.
8739
0b0ad147 87402002-09-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
d48fd218 8741 J"orn Rennecke <joern.rennecke@superh.com>
0b0ad147
TM
8742
8743 * sh/sh.h (OVERRIDE_OPTIONS): align_functions is in bytes, not bits.
8744
2bcc50d0
AM
87452002-09-09 Alan Modra <amodra@bigpond.net.au>
8746
8747 * config/rs6000/rs6000.c (rs6000_binds_local_p): Return bool.
8748 (function_ok_for_sibcall): Use binds_local_p. Respect longcall
8749 attributes.
8750
4977bab6
ZW
87512002-09-08 Nathan Sidwell <nathan@codesourcery.com>
8752
8753 * basic_block.h (gcov_type): Explain why it is signed.
8754 * final.c: Don't include profile.h.
8755 (struct function_list, functions_head, functions_tail,
8756 end_final): Moved to profile.c
8757 (final): Move arc chaining code to profile.c.
8758 * function.c (prepare_function_start): Remove duplicate line.
8759 * output.h (end_final): Remove prototype.
8760 * predict.c (estimate_loops_at_level): Use gcov_type.
8761 * profile.c (struct function_list, functions_head,
8762 functions_tail): Moved from final.c
8763 (need_func_profiler): Remove.
8764 (instrument_edges): Don't set need_func_profiler.
8765 (get_exec_counts): Avoid signed/unsigned warning.
8766 (compute_checksum): Use crc32.
8767 (branch_prob): Adjust. Chain onto functions_head.
8768 (init_branch_prob): Absorb init_edge_profiler.
8769 (init_edge_profiler): Remove.
8770 (create_profiler): Moved and renamed from final.c:end_final.
8771 Emit data and constructor.
8772 (output_func_start_profiler): Remove.
8773 * profile.h (struct profile_info): checksum is unsigned.
8774 * rtl.h (output_func_start_profiler): Remove prototype.
8775 (create_profiler): Declare.
8776 * toplev.c (compile_file): Call create_profiler, if instrumenting
8777 arcs. Don't call end_final.
8778
c1b4f089
KG
87792002-09-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8780
8781 * fr30.c (fr30_print_operand): Fix bug in output of CONST_DOUBLE.
8782
b9203463
RH
87832002-09-08 Richard Henderson <rth@redhat.com>
8784
8785 * dwarf2.h (DW_OP_call_ref): Rename from DW_OP_calli.
8786 (DW_OP_GNU_push_tls_address): New.
8787 (DW_OP_lo_user): Fix.
8788 * dwarf2out.c (INTERNAL_DW_OP_tls_addr): New.
8789 (dwarf_stack_op_name): Handle it, plus other dwarf3 opcodes.
8790 (size_of_loc_descr): Likewise.
8791 (output_loc_operands): Handle INTERNAL_DW_OP_tls_addr.
8792 (add_AT_location_description): Take a dw_loc_descr_ref not an rtx.
8793 (loc_descriptor_from_tree): Handle TLS variables.
8794 (rtl_for_decl_location): Do avoid_constant_pool_reference here ...
8795 (add_location_or_const_value_attribute): ... not here. Defer
8796 to loc_descriptor_from_tree for TLS variables.
8797
8798 * config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): New.
8799 * config/i386/i386.c (i386_output_dwarf_dtprel): New.
8800 * config/i386/i386-protos.h: Update.
8801
7df98878
RS
88022002-09-08 Roger Sayle <roger@eyesopen.com>
8803
8804 PR optimization/6405
8805 * unroll.c (loop_iterations): last_loop_insn should be the previous
8806 non-note instruction before loop->end.
8807 * loop.c (strength_reduce): The conditional jump is the last
8808 non-note instruction before loop->end (as above).
8809
f40f4c8e
RS
88102002-09-08 Roger Sayle <roger@eyesopen.com>
8811
8812 * combine.c (try_combine): Handle the case that undobuf.other_insn
8813 has been turned into a return or unconditional jump, by inserting
8814 a BARRIER if necessary.
8815 (simplify_set): Test if a condition code setter has a constant
8816 comparison at compile time, if so convert this insn to a no-op move
8817 and update/simplify the condition code user (undobuf.other_insn).
8818
e2f97e26
KW
88192002-09-08 Krister Walfridsson <cato@df.lth.se>
8820
8821 * config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Redefine.
8822 (CLEAR_INSN_CACHE): Define.
8823
4b7e68e7
KH
88242002-09-08 Kazu Hirata <kazu@cs.umass.edu>
8825
8826 * basic-block.h: Fix comment formatting.
8827 * c-common.c: Likewise.
8828 * c-common.h: Likewise.
8829 * c-lex.c: Likewise.
8830 * c-pretty-print.c: Likewise.
8831 * cfglayout.c: Likewise.
8832 * cfgloop.c: Likewise.
8833 * defaults.h: Likewise.
8834 * et-forest.c: Likewise.
8835 * explow.c: Likewise.
8836 * function.h: Likewise.
8837 * gcov.c: Likewise.
8838 * genattrtab.c: Likewise.
8839 * gengtype.c: Likewise.
8840 * ifcvt.c: Likewise.
8841 * libgcc2.c: Likewise.
8842 * loop.c: Likewise.
8843 * profile.c: Likewise.
8844 * ra-build.c: Likewise.
8845 * real.c: Likewise.
8846 * rtl.h: Likewise.
8847 * tracer.c: Likewise.
8848 * tree-inline.c: Likewise.
8849 * varasm.c: Likewise.
8850
2567406a
JH
88512002-09-08 Jan Hubicka <jh@suse.cz>
8852
8853 * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix array_ref
8854 handling.
8855
a36fc5f8 8856 * loop.c (loop_givs_reduce): Emit addition after.
2567406a 8857
bd79540a
AM
88582002-09-08 Alan Modra <amodra@bigpond.net.au>
8859
8860 * varasm.c (default_assemble_visibility): Rename from
8861 assemble_visibility.
8862 * output.h: Here too.
8863 * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): And here.
8864 * config/rs6000/rs6000.c (rs6000_assemble_visibility): And here.
8865
32ff9c74
AM
88662002-09-08 Alan Modra <amodra@bigpond.net.au>
8867
8868 * reload.c (find_reloads <p constraint>): Pass operand_mode to
8869 find_reloads_address.
8870
6588987e
KH
88712002-09-08 Kazu Hirata <kazu@cs.umass.edu>
8872
8873 * config/h8300/h8300.md (udivmodqi4): Enable on H8/300.
8874 (anonymous pattern): Likewise.
8875
4977bab6
ZW
88762002-09-07 Igor Shevlyakov <igor@microunity.com>
8877
8878 * machmode.def: Add modes for half-float vectors.
8879
0100732e
SS
88802002-09-07 Scott Snyder <snyder@fnal.gov>
8881
8882 PR target/7374
8883 * config/alpha/alpha.md (abstf2): Fix typo: 'neg' for 'abs'.
8884
77043c7c
RS
88852002-09-07 Roger Sayle <roger@eyesopen.com>
8886
8887 * basic-block.h (struct loop): Remove unused cont_dominator field.
8888
5dd78220
IS
88892002-09-07 Igor Shevlyakov <igor@microunity.com>
8890
d48fd218 8891 * varasm.c (decode_rtx_const): Don't check undefined field for
5dd78220
IS
8892 CONST_VECTOR.
8893
b96a3fa3
GN
88942002-09-07 Glen Nakamura <glen@imodulo.com>
8895
7fa86a10 8896 PR opt/7814
b96a3fa3
GN
8897 * sched-deps.c (sched_analyze_insn): Make sure to add insn
8898 to reg_last->sets after flushing the dependency lists to guarantee
8899 that subsequent clobbers will be dependent on it.
8900
ad9df12f 89012002-09-07 Igor Shevlyakov <igor@microunity.com>
2567406a 8902
ad9df12f
IS
8903 * combine.c (simplify_shift_const): Calculate rotate count
8904 correctly for vector operands.
8905
54c93c30
AE
89062002-09-07 Ansgar Esztermann <ansgar@thphy.uni-duesseldorf.de>
8907
8908 * c-typeck.c (c_tree_expr_nonnegative_p): New function.
8909 (build_binary_op): Call c_tree_expr_nonnegative_p rather than
2567406a 8910 tree_expr_nonnegative_p.
54c93c30
AE
8911 (build_conditional_expr): Likewise.
8912 * c-tree.h (c_tree_expr_nonnegative_p): Declare.
8913
36eea25f
RH
89142002-09-07 Richard Henderson <rth@redhat.com>
8915
3aa4cad7
RH
8916 * builtins.def (inf, inff, infl): Mark const.
8917 (huge_val, huge_valf, huge_vall): Likewise.
8918 (BUILT_IN_GETEXP, BUILT_IN_GETMAN): Remove.
8919
36eea25f
RH
8920 * real.c (ereal_inf): Clear E before use.
8921
5c102b48
KH
89222002-09-07 Kazu Hirata <kazu@cs.umass.edu>
8923
8924 * config/h8300/h8300.md (udivmodqi4): Split the pattern into
8925 an expander and an anonymous pattern. Zero out the upper half
8926 of the dividend in the expander.
8927 (udivmodqi4): Likewise.
8928
8bd06267
KH
89292002-09-07 Kazu Hirata <kazu@cs.umass.edu>
8930
8931 * config/h8300/h8300.c: Fix formatting.
8932 * config/h8300/h8300.h: Likewise.
8933 * config/h8300/h8300.md: Likewise.
8934
39587bb9
ZD
89352002-09-07 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
8936
8937 * cfgcleanup.c (try_crossjump_to_edge): Fix updating of liveness
8938 information.
8939
34146b94 89402002-09-07 Graham Stott <graham.stott@btinternet.com>
92d9256d
GS
8941
8942 * rtlanal.c (dead_or_set_regno_p): Fix typo.
8943
93638d7a
AM
89442002-09-07 Alan Modra <amodra@bigpond.net.au>
8945
fea76d82
AM
8946 * config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
8947
93638d7a
AM
8948 * doc/tm.texi (TARGET_ASM_ASSEMBLE_VISIBILITY): Describe.
8949 * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
8950 (TARGET_ASM_OUT): Add the above here.
8951 * target.h (struct gcc_target): Add "visibility" field.
8952 * varasm.c (maybe_assemble_visibility): Call targetm visibility func.
8953 * config/rs6000/rs6000.c (rs6000_assemble_visibility): New function.
8954 (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
8955 (rs6000_legitimize_reload_address, first_reg_to_save): Formatting.
8956
370ce32a
ZL
89572002-09-06 Ziemowit Laski <zlaski@apple.com>
8958
8959 * c-lang.c (objc_is_id): New stub.
8960 * c-tree.h (objc_is_id): New forward declaration.
8961 * c-typeck.c (build_c_cast): Do not strip protocol
8962 qualifiers from 'id' type.
8963 * objc/objc-act.c (objc_comptypes): Correct handling
8964 of protocol qualifiers.
8965 (objc_is_id): New.
8966
942579db
JL
8967Fri Sep 6 13:10:08 2002 Jeffrey A Law (law@redhat.com)
8968
54c93c30 8969 * pentium.md (pentium-firstvboth): Fix typo.
942579db 8970
c4dfc70c
DD
89712002-09-06 Dhananjay Deshpande <dhananjayd@kpit.com>
8972
8973 * h8300.c (enum shift_alg): Move to earlier in h8300.c.
8974 (enum shift_type, enum h8_cpu): Likewise.
8975 (INL, ROT, LOP, SPC macros): Likewise.
8976 (shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise. Lose
8977 const designator.
8978 (h8300_init_once): Update shift_alg_{qi,hi,si} to use more
8979 space efficient algorithms when optimize for codesize.
8980
5873a4c1
NP
8981Fri Sep 6 16:35:32 2002 Nicola Pero <n.pero@mi.flashnet.it>
8982
8983 Fix PR/1727 and long-standing failing testcase
8984 objc/formal-protocol-6.m.
8985 * objc-act.c (build_protocol_expr): If compiling for the GNU
8986 runtime, create a list of Protocol statically allocated instances
8987 if it doesn't exist, then add the Protocol object to this same
8988 list.
8989 (get_objc_string_decl): Fixed typo/bug - TREE_VALUE had been used
8990 instead of TREE_CHAIN.
8991
e30d4c82
NP
8992Fri Sep 6 16:17:33 2002 Nicola Pero <n.pero@mi.flashnet.it>
8993
8994 * objc/objc-act.c (dump_interface): Enlarged the char * buffer to
8995 10k. Fixed category dumping - print out category names with the
8996 proper syntax. Print '@end\n' and not '\n@end' at the end of the
8997 interface.
22d4398d 8998 (finish_objc): Fixed the -gen-decls option. It was printing out
e30d4c82
NP
8999 only the last class. Dump an interface declaration of all classes
9000 being compiled instead.
9001
fcd53748
JT
90022002-09-06 Jason Thorpe <thorpej@wasabisystems.com>
9003
2567406a
JH
9004 * config/arm/arm-protos.h (arm_gen_return_addr_mask): New
9005 prototype.
fcd53748
JT
9006 * config/arm/arm.c (arm_gen_return_addr_mask): New function.
9007 * config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
9008 if not APCS26 and not Thumb or ARMv4-or-higher. Use gen_int_mode
9009 rather than GEN_INT.
9010 * config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
9011 (return_addr_mask, *check_arch2): New.
9012
96fd3851
UW
90132002-09-06 Ulrich Weigand <uweigand@de.ibm.com>
9014
2567406a 9015 * config/s390/s390.md ("*adddi3_cc", "*adddi3_cconly",
96fd3851 9016 "*adddi3_cconly2", "*adddi3_64", "*adddi3_31", "adddi3",
2567406a 9017 "*addsi3_carry1_cc", "*addsi3_carry1_cconly",
96fd3851
UW
9018 "*addsi3_carry2_cc", "*addsi3_carry2_cconly",
9019 "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2", "addsi3",
2567406a 9020 "adddf3", "*adddf3", "*adddf3_ibm",
96fd3851
UW
9021 "addsf3", "*addsf3", "*addsf3_ibm",
9022 "muldi3", "mulsi3", "mulsidi3",
9023 "muldf3", "*muldf3", "*muldf3_ibm",
9024 "mulsf3", "*mulsf3", "*mulsf3_ibm",
9025 "*anddi3_cc", "*anddi3_cconly", "anddi3",
9026 "*andsi3_cc", "*andsi3_cconly", "andsi3",
9027 "*iordi3_cc", "*iordi3_cconly", "iordi3",
9028 "*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
9029 "*xordi3_cc", "*xordi3_cconly", "xordi3",
9030 "*xorsi3_cc", "*xorsi3_cconly", "xorsi3"): Use "nonimmediate_operand"
9031 instead of "register_operand" as predicate for "%0" operand.
9032
22252625
JJ
90332002-09-06 Jakub Jelinek <jakub@redhat.com>
9034
9035 * configure.in (HAVE_AS_OFFSETABLE_LO10): Use -xarch=v9
9036 unconditionally when gcc_cv_as_flags64 checks are gone.
9037 * configure: Rebuilt.
9038
bc401279
AM
90392002-09-06 Alan Modra <amodra@bigpond.net.au>
9040
9041 * config/rs6000/rs6000.md (extzvsi_internal2): Revert most of
9042 2002-07-26 change. Comment.
9043
b3fbfc07
KG
90442002-09-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9045
9046 * frv.c (frv_unique_section, frv_select_section,
9047 frv_select_rtx_section): Delete.
9048 (frv_in_small_data_p): New.
9049 (TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_SECTION,
9050 TARGET_ASM_SELECT_RTX_SECTION): Delete.
9051 (TARGET_IN_SMALL_DATA_P): Define.
9052
41e34bab
DJ
90532002-09-05 Dale Johannesen <dalej@apple.com>
9054
9055 * reload1.c (reload): Retain only those memory clobbers
9056 added for variable-array handling.
9057
dc0ba55a
JT
90582002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
9059
9060 * config/arm/arm.c (arm_return_in_memory): Implement ATPCS
2567406a 9061 return-in-memory rules.
dc0ba55a
JT
9062 * config/arm/arm.h (ARM_FLAG_ATPCS, TARGET_ATPCS): Define.
9063
dd19d142
DE
90642002-09-05 David Edelsohn <edelsohn@gnu.org>
9065
9066 * config/rs6000/xcoff.h (HOT_TEXT_SECTION_NAME): Delete.
9067 (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Delete.
9068
3717da94
JT
90692002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
9070
9071 * real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
9072 not a compile-time constant for the non-IBM case.
9073 * config/arm/arm-protos.h (arm_float_words_big_endian): New
2567406a 9074 prototype.
3717da94 9075 * config/arm/arm.c (arm_float_words_big_endian): New function.
b5b620a4 9076 * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__
2567406a
JH
9077 if TARGET_VFP and not TARGET_HARD_FLOAT.
9078 (ARM_FLAG_VFP, TARGET_VFP): Define.
3717da94
JT
9079 (FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
9080
225cee28
DE
90812002-09-05 David Edelsohn <edelsohn@gnu.org>
9082
9083 * doc/install.texi: Correct text of s390-*-linux* and s390x-*-linux*
9084 URLs. Fix AIX wording.
9085
c72bfda7
SS
90862002-09-05 Stan Shebs <shebs@apple.com>
9087
9088 * config/rs6000/rs6000.c (rs6000_override_options): Make -fpic and
9089 -fPIC equivalent on Darwin.
9090
3578cf63
R
9091Thu Sep 5 16:27:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
9092
9093 * sh.c (sh_expand_builtin): Return early if encountering an
9094 error_mark for a type.
9095
7974fe63
UW
90962002-09-05 Ulrich Weigand <uweigand@de.ibm.com>
9097
9098 * config/s390/s390.c (s390_expand_plus_operand): Do not require
9099 double-word scratch register.
9100 config/s390/s390.md ("reload_indi", "reload_insi"): Adapt.
9101
2567406a 9102 ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem",
7974fe63
UW
9103 "*cli"): Replace s_operand by memory_operand.
9104 ("cmpstrdi", "cmpstrsi"): Replace s_operand by general_operand.
9105
f8cb5851
KH
91062002-09-05 Kazu Hirata <kazu@cs.umass.edu>
9107
9108 * config/h8300/h8300.c (asm_file_start): Add a missing
9109 semicolon.
9110
4977bab6
ZW
91112002-09-04 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
9112
9113 * c-typeck.c (build_function_call): Remove unused variable(s).
9114 (build_c_cast): Likewise.
9115 * calls.c (rtx_for_function_call): Likewise.
9116 * cfglayout.c (duplicate_insn_chain): Likewise.
9117 * cfgloop.c (flow_loop_nodes_find): Likewise.
9118 * cfgrtl.c (split_edge): Likewise.
9119 * df.c (df_ref_create): Likewise.
9120 * except.c (expand_end_catch): Likewise.
9121 * expr.c (emit_push_insn, store_constructor, expand_expr): Likewise.
9122 * function.c (emit_return_into_block): Likewise.
9123 (reposition_prologue_and_epilogue_notes): Likewise.
9124 * gengtype.c (get_file_basename, write_gc_structure_fields): Likewise.
9125 * combine.c (subst_prev_insn, need_refresh): Remove.
9126 * dwarf2out.c (primary_filename): Remove.
9127 * final.c (new_block): Remove.
9128 * gcse.c (orig_bb_count): Remove.
9129
91302002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9131
9132 * dsp16xx-protos.h (dsp16xx_compare_gen): Change to bool.
9133 * dsp16xx.c (dsp16xx_compare_gen): Likewise.
9134 * dsp16xx.md: Treat dsp16xx_compare_gen as a bool. Call functions
9135 directly instead of using a function pointer.
9136
5fc0e5df
KW
91372002-09-04 Krister Walfridsson <cato@df.lth.se>
9138
9139 * config/i386/i386.h (GOT_SYMBOL_NAME): Define.
9140 * config/i386/i386.c (output_set_got): Use GOT_SYMBOL_NAME.
9141 (ix86_output_addr_diff_elt) Likewise.
9142 (x86_output_mi_thunk) Likewise.
9143 * config/i386/netbsd.h (GOT_SYMBOL_NAME): Redefine.
9144
f4b488fd
KG
91452002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9146
9147 * frv.c (frv_encode_section_info): Fix error in last change.
9148
0e5dbd9b
DE
91492002-09-04 David Edelsohn <edelsohn@gnu.org>
9150
9151 * config/rs6000/rs6000.c (rs6000_flag_pic): New variable.
9152 (rs6000_elf_encode_section_info): ATTRIBUTE_UNUSED.
9153 (TARGET_BINDS_LOCAL_P): Define.
9154 (rs6000_override_options): Save original flag_pic value.
9155 (rs6000_elf_select_section): Call default_elf_select_section_1.
9156 (rs6000_elf_unique_section): Call default_unique_section_1.
9157 (rs6000_elf_in_small_data_p): New function.
9158 (rs6000_xcoff_asm_named_section): Determine storage mapping class.
9159 (rs6000_xcoff_select_section): Update based on defaults.
9160 (rs6000_xcoff_unique_section): Set to basic name if not common.
9161 (rs6000_binds_local_p): New function.
9162 * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set
9163 targetm.have_srodata_section if SDATA_EABI.
9164 (TARGET_IN_SMALL_DATA_P): Define.
9165
f57f9cb8
DJ
91662002-09-04 Dale Johannesen <dalej@apple.com>
9167
9168 * varasm.c (struct rtx_const, decode_rtx_const):
9169 Make veclo and vechi fields not share storage.
9170
ed6cc1f5
R
9171Thu Sep 5 00:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
9172
9173 * loop.c (scan_loop): Don't mark separate insns out of a libcall
9174 for moving.
9175 (move_movables): Abort if we see the first insn of a libcall.
9176
ab5e2615
RH
91772002-09-04 Richard Henderson <rth@redhat.com>
9178
9179 * builtin-types.def (BT_FN_FLOAT): New.
9180 (BT_FN_DOUBLE, BT_FN_LONG_DOUBLE): New.
9181 * builtins.def (BUILT_IN_INF, BUILT_IN_INFF, BUILT_IN_INFL,
9182 BUILT_IN_HUGE_VAL, BUILT_IN_HUGE_VALF, BUILT_IN_HUGE_VALL): New.
9183 * builtins.c (fold_builtin_inf): New.
9184 (fold_builtin): Call it.
9185 * real.c (ereal_inf): New.
9186 * real.h: Declare it.
9187 * doc/extend.texi: Document new builtins.
9188
9beb7d20
RH
91892002-09-04 Richard Henderson <rth@redhat.com>
9190
9191 * cse.c (cse_insn): Avoid subreg games if the equivalence
9192 is already in the proper mode.
9193
29984e05
EB
91942002-09-04 Eric Botcazou <ebotcazou@multimania.com>
9195
9196 PR c/7102
9197 * optabs.c (expand_binop): Convert CONST_INTs in all cases.
9198
8d46398e
JDA
91992002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
9200
9201 * pa.md (setccfp0, setccfp1): New patterns.
9202
14966b94
KG
92032002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9204
9205 * frv-protos.h (frv_init_builtins, frv_expand_builtin,
9206 frv_select_section, frv_select_rtx_section,
9207 frv_encode_section_info, frv_unique_section): Delete.
9208 * frv.c: Update for target hooks.
9209 * frv.h (STRIP_NAME_ENCODING, SLOW_ZERO_EXTEND, SELECT_SECTION,
9210 SELECT_RTX_SECTION, ENCODE_SECTION_INFO, UNIQUE_SECTION,
9211 EASY_DIV_EXPR, MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Delete.
9212
c8bf1a1a
KG
92132002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9214
9215 * ip2k-protos.h (function_prologue, function_epilogue,
9216 encode_section_info): Update to match target hook specification.
9217 * ip2k.c: Wrap `MDR' code in IP2K_MD_REORG_PASS.
9218 (function_prologue, function_epilogue, encode_section_info):
9219 Update to match target hook specification.
9220 * ip2k.h (SELECT_SECTION, SELECT_RTX_SECTION, ASM_OPEN_PAREN,
9221 ASM_CLOSE_PAREN, EASY_DIV_EXPR): Delete.
9222 (NOTICE_UPDATE_CC): Cast to void.
9223 * ip2k.md: Add defaults in switch statements.
9224
0484cb35
JJ
92252002-09-04 Janis Johnson <janis187@us.ibm.com>
9226
9227 * doc/trouble.texi (Interoperation): Update information about C++ ABI
9228 issues.
9229
3e62bd08
JT
92302002-09-04 Jason Thorpe <thorpej@wasabisystems.com>
9231
9232 * config/sparc/t-netbsd64: Disable multilib for now.
9233
275b6d80
DE
92342002-09-04 David Edelsohn <edelsohn@gnu.org>
9235
9236 * target-def.h (TARGET_HAVE_SRODATA_SECTION): New macro.
9237 * target.h (gcc_target): Add have_srodata_section member.
9238 * varasm.c (section_category): Add SECCAT_SRODATA.
9239 (categorize_decl_for_section): Return SECCAT_SRODATA for sdata if
9240 READONLY_SDATA_SECTION defined.
9241 (decl_readonly_section_1): True for SECCAT_SRODATA also.
9242 (default_elf_select_section_1): Map SECCAT_SRODATA to .sdata2.
9243 (default_unique_section_1): Likewise.
9244
015b1ad1
JDA
92452002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
9246
9247 * expr.c (emit_group_load): Revise to allow splitting TCmode source
9248 into DImode pieces.
9249
9250 * pa-64.h (LONG_DOUBLE_TYPE_SIZE): Define to 128.
9251 * pa64-regs.h (CLASS_CANNOT_CHANGE_MODE_P): Inhibit changes from SImode
9252 for floating-point register class.
9253 * pa.c (function_arg): Fix handling of modes wider than one word for
9254 TARGET_64BIT.
9255
b10f2187
R
9256Wed Sep 4 18:48:10 2002 J"orn Rennecke <joern.rennecke@superh.com>
9257
9258 * combine.c (make_compound_operation): Don't generate zero / sign
9259 extensions in floating point modes.
9260
478c9e72
JJ
92612002-09-04 Janis Johnson <janis187@us.ibm.com>
9262
9263 * doc/c-tree.texi: Fix overfull hboxes.
9264 * doc/cppopts.texi: Ditto.
9265 * doc/extend.texi: Ditto.
9266 * doc/gty.texi: Ditto.
9267 * doc/invoke.texi: Ditto.
9268 * doc/makefile.texi: Ditto.
9269 * doc/rtl.texi: Ditto.
9270 * doc/standards.texi: Ditto.
9271 * doc/tm.texi: Ditto.
9272
77e8a0cc
RH
92732002-09-04 Richard Henderson <rth@redhat.com>
9274
9275 * c-common.c (builtin_define_with_hex_fp_value): New.
9276 (builtin_define_float_constants): Use it. Fix H_FLOAT mant_dig.
9277
a9c60612
JJ
92782002-09-04 Janis Johnson <janis187@us.ibm.com>
9279
9280 * doc/invoke.texi (-fshort-wchar): Move to Code Generation Options.
9281 (-fpcc-struct-return, -freg-struct-return, -fshort-enums,
9282 -fshort-double, -fshort-wchar, -fpack-struct, -fleading-underscore):
9283 Warn that these options can break ABI compatibility.
9284
4b67a274
RH
92852002-09-04 Richard Henderson <rth@redhat.com>
9286
9287 * real.c (ereal_to_decimal): Add digits parameter.
9288 * real.h (REAL_VALUE_TO_DECIMAL): Remove format; add digits parameter.
9289 * c-pretty-print.c (pp_c_real_literal): Update call.
9290 * print-rtl.c (print_rtx): Likewise.
9291 * print-tree.c (print_node_brief, print_node): Likewise.
9292 * sched-vis.c (print_value): Likewise.
9293 * config/arc/arc.c (arc_print_operand): Likewise.
9294 * config/c4x/c4x.c (c4x_print_operand): Likewise.
9295 * config/i370/i370.h (PRINT_OPERAND): Likewise.
9296 * config/i386/i386.c (print_operand): Likewise.
9297 * config/i960/i960.c (i960_print_operand): Likewise.
9298 * config/ip2k/ip2k.c (asm_output_float): Likewise.
9299 * config/m32r/m32r.c (m32r_print_operand): Likewise.
9300 * config/m68hc11/m68hc11.c (print_operand): Likewise.
9301 * config/m68k/hp320.h (PRINT_OPERAND, ASM_OUTPUT_FLOAT_OPERAND,
9302 ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
2567406a 9303 * config/m68k/m68k.h (ASM_OUTPUT_FLOAT_OPERAND,
4b67a274
RH
9304 ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
9305 * config/m68k/sun2o4.h (ASM_OUTPUT_FLOAT_OPERAND,
9306 ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
9307 * config/m68k/sun3.h (ASM_OUTPUT_FLOAT_OPERAND,
9308 ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
9309 * config/mips/mips.c (print_operand): Likewise.
9310 * config/ns32k/ns32k.c (print_operand): Likewise.
9311 * config/pdp11/pdp11.h (PRINT_OPERAND): Likewise.
9312 * config/vax/vax.h (PRINT_OPERAND): Likewise.
9313 * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Update docs.
9314
01abf342
BW
93152002-09-04 Bob Wilson <bob.wilson@acm.org>
9316
9317 * config/xtensa/elf.h (TARGET_SECTION_TYPE_FLAGS): Define to
9318 xtensa_multibss_section_type_flags.
9319 * config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Define.
9320
cd42d3df
RH
93212002-09-04 Richard Henderson <rth@redhat.com>
9322
9323 * doc/install-old.texi: Don't mention enquire.
9324 * doc/sourcebuild.texi: Update float.h description.
9325
502e6d5a
R
9326Wed Sep 4 11:22:14 2002 J"orn Rennecke <joern.rennecke@superh.com>
9327
9328 * sh.md (mperm_w_little, mperm_w_big): Supply mode for zero_extract.
9329
4977bab6
ZW
93302002-09-03 Roger Sayle <roger@eyesopen.com>
9331
9332 * builtins.c (build_function_call_expr): Remove prototype, export
9333 as non-static and add a comment above function definition.
9334 (builtin_mathfn_code): New function to check for math builtins.
9335 (fold_builtin): Optimize sqrt(0.0) as 0.0, sqrt(1.0) as 1.0,
9336 exp(0.0) as 1.0, and log(1.0) as 0.0. Optimize exp(log(x)) and
9337 log(exp(x)) as x. Optimize sqrt(exp(x)) as exp(x/2.0) and
9338 log(sqrt(x)) as log(x)/2.0.
9339
9340 * tree.h: Prototype build_function_call_expr and builtin_mathfn_code
9341 in new "builtins.c" section. Place the build_range_type prototype
9342 with the other prototypes from "tree.c".
9343
9344 * fold-const.c (fold) [ABS_EXPR]: Fold fabs(sqrt(x)) as sqrt(x)
9345 and fabs(exp(x)) as exp(x). [MULT_EXPR]: Fold sqrt(x)*sqrt(y)
9346 as sqrt(x*y) and exp(x)*exp(y) as exp(x+y). [RDIV_EXPR]: Fold
9347 x/exp(y) as x*exp(-y).
9348
2cc9fb4c
DE
93492002-09-03 David Edelsohn <edelsohn@gnu.org>
9350
9351 * varasm.c (default_section_type_flags): Append _1 to name with
9352 shlib parameter. Use original name to call new function with
9353 implicit flag_pic.
9354 (decl_readonly_section): Likewise.
9355 (default_elf_select_section): Likewise.
9356 (default_unique_section): Likewise.
9357 (default_bind_local_p): Likewise.
9358 (categorize_decl_for_section): Add shlib parameter to use in place
9359 of implicit flag_pic.
9360 * output.h: Declare new functions with _1 and shlib argument.
9361
7c19f816
JJ
93622002-09-03 Janis Johnson <janis187@us.ibm.com>
9363
8c085f6f
JJ
9364 * doc/install.texi: Fix typos, formatting problems, and obvious
9365 overfull/underfull boxes.
9366
7c19f816
JJ
9367 * Makefile.in (TEXI_GCC_FILES): Add compat.texi.
9368 * doc/gcc.texi (Top): Add new chapter, Binary Compatibility, and
9369 include its file, compat.texi.
9370 * doc/compat.texi: New file with new chapter, Binary Compatibility.
9371
79ba5e3b
NB
93722002-09-03 Neil Booth <neil@daikokuya.co.uk>
9373
9374 Debian BTS Bug #157416
9375 * cpphash.h (FIRST, LAST, CUR, RLIMIT): Fix definitions.
9376 * cpplib.c (destringize_and_run): Kludge around getting
9377 tokens from in-progress macros.
9378 (_cpp_do__Pragma): Simplify.
9379
57016b47
SE
93802002-09-03 Steve Ellcey <sje@cup.hp.com>
9381
9382 * config/ia64/ia64.h (EXTRA_SPECS): Remove cpp_cpu.
9383 (CPP_CPU_SPEC): Remove.
9384 (TARGET_CPU_CPP_BUILTINS): New.
9385 * config/ia64/hpux.h (CPP_PREDEFINES): Remove.
9386 (CPP_SPEC): Remove.
9387 (TARGET_OS_CPP_BUILTINS): New.
9388 * config/ia64/linux.h (CPP_PREDEFINES): Remove.
9389 (TARGET_OS_CPP_BUILTINS): New.
9390 * config/ia64/aix.h (CPP_SPEC): Move some stuff to
9391 TARGET_OS_CPP_BUILTINS.
9392 (CPP_PREDEFINES): Remove.
9393 (CPLUSPLUS_CPP_SPEC): Remove.
9394 (TARGET_OS_CPP_BUILTINS): New.
9395
d57a4b98
RH
93962002-09-03 Richard Henderson <rth@redhat.com>
9397
9398 * Makefile.in (USER_H): Add ginclude/float.h.
9399 (FLOAT_H): Remove.
9400 (stmp-int-hdrs, install-mkheaders): Don't handle FLOAT_H.
9401 (mostlyclean): Don't remove float.h intermediate files.
9402 (distclean): Don't remove float.h.
9403 * config.gcc: Remove all float_format references.
9404 * configure.in (float_format, float_h_file): Remove.
9405
9406 * c-common.c: Include tree-inline.h.
9407 (builtin_define_with_int_value): New.
9408 (builtin_define_type_precision): Use it.
9409 (builtin_define_float_constants): New.
9410 (cb_register_builtins): Use it. Define __FLT_RADIX__ and
9411 __FLT_EVAL_METHOD__.
9412 * defaults.h (TARGET_FLT_EVAL_METHOD): New.
9413 * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): New.
9414 * config/m68k/m68k.h (TARGET_FLT_EVAL_METHOD): New.
9415 * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Mention moto 96-bit format.
9416 (TARGET_FLT_EVAL_METHOD): New.
9417
9418 * config/float-c4x.h, config/float-i128.h, config/float-i32.h,
9419 config/float-i386.h, config/float-i64.h, config/float-m68k.h,
9420 config/float-sh.h, config/float-sparc.h, config/float-vax.h: Remove.
9421 * ginclude/float.h: New.
9422
527347f0
SS
94232002-09-03 Stan Shebs <shebs@apple.com>
9424
9425 * config/darwin.h (WARN_FOUR_CHAR_CONSTANTS): Remove, never used.
9426 (DWARF2_DEBUGGING_INFO): Remove until assembler accepts Dwarf-2.
9427 (PREFERRED_DEBUGGING_TYPE): Ditto.
9428 (ASM_OUTPUT_IDENT): Remove empty definition.
9429
34c1864f
SE
94302002-09-03 Steve Ellcey <sje@cup.hp.com>
9431
9432 * config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and
9433 cxx_target.
9434 * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Register pragma
9435 handling routine for builtin pragma.
9436 * config/ia64/ia64-protos.h (ia64_hpux_handle_builtin_pragma):
9437 Registered pragma handling routine.
9438 * ia64-c.c (ia64_hpux_handle_builtin_pragma): Ditto.
9439 (ia64_hpux_add_pragma_builtin) New subroutine used by above.
9440 If builtin pragma seen for math routine and C89 conformance is
9441 requested use different math function in order to set errno.
9442 * t-ia64 (ia64-c.o): Add new rule for new file.
9443
9b7c75b9
UW
94442002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
9445
9446 * config/s390/s390.md ("movti"): Add Q->Q alternative.
9447 ("*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64",
9448 "movqi", "*movdf_64", "*movdf_31", "*movsf"): Likewise.
2567406a
JH
9449
9450 ("*movti_ss", "*movdi_ss", "*movsi_ss", "*movdf_ss",
9b7c75b9
UW
9451 "*movsf_ss"): Remove.
9452
710ba35f
JDA
94532002-09-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
9454
9455 * pa32-regs.h (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P):
9456 Delete macros.
9457
ff970081
AD
94582002-09-03 Arati Dikey <aratid@kpit.com>
9459
9460 * h8300.c (asm_file_start): Corrected optimization comment.
9461
b50d021d
SS
94622002-09-03 Stan Shebs <shebs@apple.com>
9463
9464 * c-lang.c (recognize_objc_keyword): Remove, no longer used.
9465 * c-tree.h (recognize_objc_keyword): Remove decl.
9466 * c-typeck.c (comp_target_types): Update a comment.
9467
b808c04c
UW
94682002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
9469
9470 * config/s390/s390.c (s390_decompose_address): Remove STRICT parameter
9471 and register validity checks.
9472 (general_s_operand): Adapt to s390_decompose_address interface change.
9473 (q_constraint): Likewise.
9474 (s390_expand_plus_operand): Likewise.
9475 (legitimiate_address_p): Likewise.
9476 (legitimate_la_operand_p): Likewise.
9477 (legitimize_la_operand): Likewise.
9478 (print_operand_address): Likewise.
9479 (print_operand): Likewise.
9480
ee453219
NP
9481Tue Sep 3 11:32:14 2002 Nicola Pero <n.pero@mi.flashnet.it>
9482
9483 PR objc/5956:
9484 * objc/objc-act.c (build_typed_selector_reference): Fix typo which
2567406a
JH
9485 was causing the new selector never to match the existing ones
9486 (Patch by Alexander Malmberg <alexander@malmberg.org>).
ee453219 9487
d82283d5
GS
94882002-09-03 Graham Stott <graham.stott@btinternet.com>
9489
9490 * config/i386/i386.md ("femms"): Add "memory" attr "none".
9491
94922002-09-03 Graham Stott <graham.stott@btinternet.com>
c7a009a2
GS
9493
9494 * expr.c (expand_expr): Remove extraneous comment and code.
9495
4977bab6
ZW
94962002-09-02 Nathan Sidwell <nathan@codesourcery.com>
9497
9498 * stor-layout (finish_builtin_struct): Renamed and moved from c++
9499 frontend. Take chain of fields. Allow NULL alignment type.
9500 * tree.h (finish_builtin_struct): Declare.
9501
95022002-09-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9503
9504 * config/alpha/alpha.c config/alpha/alpha.h config/alpha/alpha.md
9505 config/alpha/elf.h config/alpha/unicosmk.h config/alpha/vms.h
9506 config/arc/arc.c config/arc/arc.h config/arm/aout.h
9507 config/arm/arm.c config/arm/arm.h config/arm/arm.md
9508 config/avr/avr.h config/d30v/d30v.h config/dbxcoff.h
9509 config/dbxelf.h config/elfos.h config/fr30/fr30.h config/frv/frv.h
9510 config/i386/i386.c config/i386/i386.md config/i386/sco5.h
9511 config/ia64/ia64.h config/ip2k/ip2k.h config/m68hc11/m68hc11.md
9512 config/m68k/hp320.h config/m68k/m68k.c config/m68k/m68k.md
9513 config/m68k/mot3300.h config/m68k/sgs.h config/m68k/tower-as.h
9514 config/m88k/m88k.c config/m88k/m88k.h config/mcore/mcore-pe.h
9515 config/mcore/mcore.c config/mips/mips.c config/mips/mips.h
9516 config/ns32k/ns32k.md config/pa/pa-linux.h config/pa/pa.c
9517 config/pa/pa.h config/pa/pa.md config/romp/romp.h
9518 config/rs6000/linux64.h config/rs6000/lynx.h
9519 config/rs6000/rs6000.c config/rs6000/sysv4.h config/rs6000/xcoff.h
9520 config/s390/s390.c config/s390/s390.md config/sh/sh.c
9521 config/sparc/sparc.c config/sparc/sysv4.h
9522 config/stormy16/stormy16.h dbxout.c defaults.h dwarf2out.c
9523 dwarfout.c except.c final.c varasm.c vmsdbgout.c: Replace
9524 ASM_OUTPUT_INTERNAL_LABEL macro with a call to the target hook.
9525
9526 * doc/tm.texi: Update docs.
9527 * default.h (ASM_OUTPUT_INTERNAL_LABEL): Don't define.
9528 * system.h (ASM_OUTPUT_INTERNAL_LABEL): Poison.
9529
95302002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9531
9532 * Makefile.in (sdbout.o, insn-output.o): Depend on $(TARGET_H).
9533 * arc.c (arc_internal_label): New function.
9534 (TARGET_ASM_INTERNAL_LABEL): Set.
9535 * arc.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9536 * arm.c (arm_internal_label): New function.
9537 (TARGET_ASM_INTERNAL_LABEL): Set.
9538 * arm.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9539 * arm/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9540 * i370.c (i370_internal_label): New function.
9541 (TARGET_ASM_INTERNAL_LABEL): Set.
9542 * i370.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9543 * m68k/hp320.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9544 * m68k.c (m68k_hp320_internal_label): New function.
9545 (TARGET_ASM_INTERNAL_LABEL): Set.
9546 * m88k.c (m88k_internal_label): New function.
9547 (TARGET_ASM_INTERNAL_LABEL): Set.
9548 * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9549 * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Set to target hook.
9550 * genoutput.c (output_prologue): Include target.h in output file.
9551 * output.h (default_internal_label): Declare.
9552 * sdbout.c: Include target.h.
9553 * target-def.h (TARGET_ASM_INTERNAL_LABEL): Set and add to
9554 TARGET_ASM_OUT.
9555 * target.h (internal_label): Add to struct gcc_target.
9556 * varasm.c (default_internal_label): New function.
9557
95582002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9559
9560 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
9561 * avr.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9562 * c4x.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9563 * cris.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9564 * d30v.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9565 * darwin.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9566 * dsp16xx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9567 * elfos.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9568 * h8300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9569 * i386/att.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9570 * i386/bsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9571 * i386/i386-coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9572 * i386/lynx-ng.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9573 * i386/lynx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9574 * i386/sco5.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9575 * i960/i960.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9576 * m68k/3b1.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9577 * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9578 * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9579 * m68k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9580 * m68k/mot3300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9581 * m68k/tower-as.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9582 * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9583 * mcore.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9584 * mips.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9585 * mmix-protos.h (mmix_asm_output_internal_label): Likewise.
9586 * mmix.c (mmix_asm_output_internal_label): Likewise.
9587 * mmix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9588 * ns32k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9589 * pa.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9590 * pdp11.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9591 * romp.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9592 * rs6000/xcoff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9593 * sh/coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9594 * sh/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9595 * sparc/freebsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9596 * sparc/linux.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9597 * sparc/linux64.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9598 * sparc/netbsd-elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9599 * sparc/pbd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9600 * sparc/sol2.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9601 * sparc.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9602 * sparc/vxsim.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9603 * stormy16.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9604 * svr3.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9605 * vax.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
9606
9607 * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Define.
9608
98c0d8d1
RH
96092002-08-31 Richard Henderson <rth@redhat.com>
9610
9611 * expr.c (block_move_libcall_safe_for_call_parm): Fix thinko.
9612
a5f3f0ab
JDA
96132002-08-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
9614
9615 * pa.c (pa_globalize_label): Add ATTRIBUTE_UNUSED to prototype.
9616
38ec83b1
RH
96172002-08-30 Richard Henderson <rth@redhat.com>
9618
c9989d09 9619 PR opt/7515
38ec83b1
RH
9620 * c-objc-common.c: Include target.h.
9621 (c_cannot_inline_tree_fn): Don't auto-inline functions that
9622 don't bind locally. Factor setting DECL_UNINLINABLE.
9623 * Makefile.in (c-objc-common.o): Update.
9624
4c64396e
JJ
96252002-08-30 Janis Johnson <janis187@us.ibm.com>
9626
9627 * doc/install.texi (Configuration, Building): Fix a typo and
9628 some formatting directives.
9629
4226378a
PK
96302002-08-30 Paul Koning <pkoning@equallogic.com>
9631
9632 * doc/c-tree.texi (RDIV_EXPR): Fix typo.
9633 * doc/rtl.texi (post_modify): Remove misplaced text, remove "not
9634 implemented" note.
9635 * doc/md.texi (IP2K): Move machine-specific constraints before MIPS
9636 for alphabetic order.
9637 * doc/tm.texi (TARGET_FLOAT_FORMAT): Update description for
9638 VAX_FLOAT_FORMAT. Remove reference to HOST_FLOAT_FORMAT.
9639 (VAX_HALFWORD_ORDER): Document.
9640 (LARGEST_EXPONENT_IS_NORMAL): Remove note about being only for
9641 IEEE float format.
9642 (TARGET_SCHED_ISSUE_RATE): Reword reference to MAX_DFA_ISSUE_RATE.
9643 (ASM_OUTPUT_LABEL_REF): Fix font.
9644 (CASE_VECTOR_SHORTEN_MODE): Ditto.
9645
b8074dbe
DC
96462002-08-30 Denis Chertykov <denisc@overta.ru>
9647
9648 * config/ip2k/ip2k.c (ip2k_set_compare): Remove all const_double
9649 stuff.
9650 (ip2k_gen_unsigned_comp_branch): Handle CONST_INT and
9651 CONST_DOUBLE constants.
2567406a 9652
55f49e3d
JT
96532002-08-30 Jason Thorpe <thorpej@wasabisystems.com>
9654
9655 * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Move language-
9656 related defines to...
9657 (SUBTARGET_LANGUAGE_CPP_BUILTINS): ...here.
9658 * config/alpha/netbsd.h (SUBTARGET_LANGUAGE_CPP_BUILTINS): Redefine
9659 as a no-op.
9660
e1944073
KW
96612002-08-30 Krister Walfridsson <cato@df.lth.se>
9662
9663 * config/arm/arm.c (arm_asm_output_labelref): New function.
9664 * config/arm/arm.h (ASM_OUTPUT_LABELREF): Call arm_asm_output_labelref.
9665 * config/arm/arm-protos.h: Add prototype for arm_asm_output_labelref.
9666
6e92b3a1
RB
96672002-08-29 Rodney Brown <rbrown64@csc.com.au>
9668
9669 * doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual
9670 memory exhausted" workarounds.
9671
9d533cb5
GDR
96722002-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
9673
9674 * diagnostic.c (fancy_abort): Don't repeat "internal error".
9675 * toplev.c (crash_signal): Likewise.
9676
1f676100
NP
9677Fri Aug 30 00:33:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
9678
9679 * doc/cpp.texi (__NEXT_RUNTIME__): Extended documentation.
9680 * doc/invoke.texi (-fnext-runtime, -Wno-protocol, -Wselector):
9681 Extended, updated documentation.
9682 (-Wundeclared-selector): Documented.
9683
23532de9
JT
96842002-08-29 Jason Thorpe <thorpej@wasabisystems.com>
9685
9686 * config/chorus.h: Consistently define *_DEBUGGING_INFO with
9687 the value 1. Do not undef before defining.
9688 * config/darwin.h: Likewise.
9689 * config/dbx.h: Likewise.
9690 * config/dbxcoff.h: Likewise.
9691 * config/dbxelf.h: Likewise.
9692 * config/elfos.h: Likewise.
9693 * config/interix.h: Likewise.
9694 * config/lynx-ng.h: Likewise.
9695 * config/lynx.h: Likewise.
9696 * config/netware.h: Likewise.
9697 * config/psos.h: Likewise.
9698 * config/svr3.h: Likewise.
9699 * config/alpha/alpha.h: Likewise.
9700 * config/alpha/elf.h: Likewise.
9701 * config/alpha/vms.h: Likewise.
9702 * config/arc/arc.h: Likewise.
9703 * config/arm/aout.h: Likewise.
9704 * config/arm/coff.h: Likewise.
9705 * config/c4x/c4x.h: Likewise.
9706 * config/h8300/h8300.h: Likewise.
9707 * config/i386/cygwin.h: Likewise.
9708 * config/i386/djgpp.h: Likewise.
9709 * config/i386/gas.h: Likewise.
9710 * config/i386/gstabs.h: Likewise.
9711 * config/i386/i386-coff.h: Likewise.
9712 * config/i386/i386-interix.h: Likewise.
9713 * config/i386/sco5.h: Likewise.
9714 * config/i386/svr3dbx.h: Likewise.
9715 * config/i386/sysv3.h: Likewise.
9716 * config/i386/win32.h: Likewise.
9717 * config/i386/x86-64.h: Likewise.
9718 * config/i960/i960.h: Likewise.
9719 * config/ia64/ia64.h: Likewise.
9720 * config/ip2k/ip2k.h: Likewise.
9721 * config/m32r/m32r.h: Likewise.
9722 * config/m68k/3b1.h: Likewise.
9723 * config/m68k/3b1g.h: Likewise.
9724 * config/m68k/ccur-GAS.h: Likewise.
9725 * config/m68k/coff.h: Likewise.
9726 * config/m68k/hp2bsd.h: Likewise.
9727 * config/m68k/hp310g.h: Likewise.
9728 * config/m68k/hp320g.h: Likewise.
9729 * config/m68k/hp3bsd.h: Likewise.
9730 * config/m68k/hp3bsd44.h: Likewise.
9731 * config/m68k/linux-aout.h: Likewise.
9732 * config/m68k/m68k-aout.h: Likewise.
9733 * config/m68k/mot3300.h: Likewise.
9734 * config/m68k/netbsd.h: Likewise.
9735 * config/m68k/openbsd.h: Likewise.
9736 * config/m68k/pbb.h: Likewise.
9737 * config/m68k/plexus.h: Likewise.
9738 * config/m68k/sun2.h: Likewise.
9739 * config/m68k/sun3.h: Likewise.
9740 * config/m68k/tower-as.h: Likewise.
9741 * config/m68k/vxm68k.h: Likewise.
9742 * config/m88k/aout-dbx.h: Likewise.
9743 * config/m88k/m88k-aout.h: Likewise.
9744 * config/mcore/mcore-elf.h: Likewise.
9745 * config/mcore/mcore-pe.h: Likewise.
9746 * config/mips/elf.h: Likewise.
9747 * config/mips/elf64.h: Likewise.
9748 * config/mips/iris5gas.h: Likewise.
9749 * config/mips/iris6.h: Likewise.
9750 * config/mips/mips.h: Likewise.
9751 * config/mips/sni-gas.h: Likewise.
9752 * config/mmix/mmix.h: Likewise.
9753 * config/ns32k/netbsd.h: Likewise.
9754 * config/pa/pa64-hpux.h: Likewise.
9755 * config/romp/romp.h: Likewise.
9756 * config/rs6000/sysv4.h: Likewise.
9757 * config/rs6000/xcoff.h: Likewise.
9758 * config/sh/coff.h: Likewise.
9759 * config/sh/elf.h: Likewise.
9760 * config/sparc/linux64.h: Likewise.
9761 * config/sparc/liteelf.h: Likewise.
9762 * config/sparc/netbsd.h: Likewise.
9763 * config/sparc/openbsd.h: Likewise.
9764 * config/sparc/pbd.h: Likewise.
9765 * config/sparc/sp64-elf.h: Likewise.
9766 * config/sparc/sp86x-elf.h: Likewise.
9767 * config/sparc/sparc.h: Likewise.
9768 * config/vax/vax.h: Likewise.
9769 * config/vax/vaxv.h: Likewise.
9770
5e98fba2
DD
97712002-08-29 "Dhananjay R. Deshpande" <dhananjayd@kpit.com>
9772
9773 * h8300.c (shift_alg_hi): Various tweaks to improve performance
9774 of HImode shifts.
9775 (get_shift_alg): Corresponding changes.
9776
43852342
JDA
97772002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
9778
9779 * som.h (ALWAYS_STRIP_DOTDOT): Define to 1.
9780
44bb111a
RH
97812002-08-29 Richard Henderson <rth@redhat.com>
9782
9783 * expr.h (enum block_op_methods): New.
9784 (emit_block_move): Update prototype.
9785 * expr.c (block_move_libcall_safe_for_call_parm): New.
9786 (emit_block_move_via_loop): New.
9787 (emit_block_move): Use them. New argument METHOD.
9788 (emit_push_insn): Always respect the given alignment.
9789 (expand_assignment): Update call to emit_block_move.
9790 (store_expr, store_field, expand_expr): Likewise.
9791 * builtins.c (expand_builtin_apply): Likewise.
9792 (expand_builtin_memcpy, expand_builtin_va_copy): Likewise.
9793 * function.c (expand_function_end): Likewise.
9794 * config/sh/sh.c (sh_initialize_trampoline): Likewise.
9795 * config/sparc/sparc.c (sparc_va_arg): Likewise.
9796 * calls.c (expand_call, emit_library_call_value_1): Likewise.
9797 (save_fixed_argument_area): Use emit_block_move with
9798 BLOCK_OP_CALL_PARM instead of move_by_pieces.
9799 (restore_fixed_argument_area): Likewise.
9800 (store_one_arg): Fix alignment parameter to emit_push_insn.
9801
08b3d104
JDA
98022002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
9803
9804 * install.texi (hppa64-hp-hpux11*): Document installation procedure.
9805
ce4e9970 98062002-08-29 Catherine Moore <clm@redhat.com>
8376061d
CM
9807
9808 * config/v850/v850.h (MULDI3_LIBCALL, UCMPDI2_LIBCALL, CMPDI2_LIBCALL,
9809 NEGDI2_LIBCALL, INIT_TARGET_OPTABS, MASK_STRICT_ALIGN): Define.
9810 (PREDICATE_CODES): Include new predicates.
9811 (RTX_COSTS): Handle UMOD and UDIV. Tune MULT for v850e.
9812 (TARGET_SWITCHES): Add strict-align.
9813 (TARGET_STRICT_ALIGN): New.
2567406a 9814 (MASK_DEFAULT, STRICT_ALIGNMENT): Redefine.
8376061d
CM
9815 * config/v850/t-v850 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
9816 Define.
9817 (LIB1ASMFUNCS): Add v850_negdi2, v850_cmpdi2, v850_ucmpdi2,
9818 v850_muldi3.
9819 * config/v850/lib1funcs.asm (L_callt_save_r2_r29, L_return_r2_r29,
9820 L_callt_save_r2_r31, L_return_r2_r31,
9821 L_save_all_interrupt): Change addi to add.
9822 (L_save_interrupt, L_return_interrupt): Rework.
9823 (__return_r31): Correct .size directive.
9824 (mulsi3, divsi3, udivsi3, umodsi3, modsi3): Tune for v850e.
9825 (v850_negdi2, v850_cmpdi2, v850_ucmpdi2, v850_muldi3):
9826 New routines.
9827 * config/v850/v850.c (expand_prologue): Call
9828 gen_callt_save_interrupt, gen_callt_restore_all_interrupt,
9829 gen_callt_return_interrupt and gen_callt_save_all_interrupt.
9830 (reg_or_int9_operand): New predicate.
9831 (reg_or_const_operand): New routine.
9832 * config/v850/v850.md (return_interrupt): Changed from
9833 restore_interrupt.
9834 (callt_save_all_interrupt): Changed from save_all_interrupt_v850e.
9835 (callt_save_interrupt): Change save sequence.
9836 (callt_return_interrupt): New.
9837 (save_interrupt): Don't use runtime function for LONG_CALLS
9838 and TARGET_PROLOG_FUNCTION.
9839 (save_all_interrupt): Likewise.
9840 (mulsi3): Use new predicate.
9841 (moviscc): Disallow some combination of constants.
9842 Fix define_split for sasf insns, so that it will not generate bad
9843 code if operand0 and operand5 are the same.
9844 * config/v850/v850-protos.h: Prototype new predicates.
9845
4977bab6
ZW
98462002-08-29 Zack Weinberg <zack@codesourcery.com>
9847
9848 * config/rs6000/rs6000.c (processor_target_table): Add 405f.
9849 * config/rs6000/rs6000.h (ASM_CPU_SPEC): Likewise.
9850
585e661a
GDR
98512002-08-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
9852
9853 * c-common.c (builtin_define_type_precision): New function.
9854 (cb_register_builtins): Use it. Define __WCHAR_UNSIGNED__ is
9855 wchar_t is unsigned in C++.
9856 * doc/cpp.texi (Common Predefined Macros): Document
9857 __WCHAR_UNSIGNED__, __CHAR_BIT__, __WCHAR_BIT__, __SHRT_BIT__,
9858 __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
9859 __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
9860
bd8f9aec
SP
98612002-08-28 Sylvain Pion <pion@cs.nyu.edu>
9862
9863 * doc/invoke.texi (-Wreorder): Remove remaining pieces from the generic
9864 section. Mention that it is enabled by -Wall.
9865 (-Wall): Mention that there can be language-specific warnings as well.
9866 (-Wctor-dtor-privacy): Mention that it is enabled by default.
9867 (-Wnon-virtual-dtor): Mention that it is enabled by -Wall.
9868
58ab7171
R
9869Wed Aug 28 15:35:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
9870
9871 * sh.c (calc_live_regs): Save FPSCR_REG in an interrupt handler
9872 if it is ever live.
9873
9874 * sh.c (sh_handle_interrupt_handler_attribute): Reject interrupt_handler
9875 attribute for SHCOMPACT.
9876
9877 * sh.h (OVERRIDE_OPTIONS): If align_function isn't set, set it
9878 appropriately.
9879 (FUNCTION_BOUNDARY): Specify only the minimum alignment required
9880 by the ABI.
9881
9882 * sh.h (SH5_WOULD_BE_PARTIAL_NREGS): Also handle TImode case.
9883
27f4b67e
JT
98842002-08-28 Jason Thorpe <thorpej@wasabisystems.com>
9885
9886 * config.gcc (mips*-*-netbsd*): Set target_cpu_default to
9887 "MASK_GAS|MASK_ABICALLS".
9888 * config/mips/netbsd.h (TARGET_ENDIAN_DEFAULT)
9889 (TARGET_DEFAULT): Remove.
9890 (MACHINE_TYPE): Undefine before defining.
9891 (DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Remove.
9892
eca7f13c
MM
98932002-08-27 Mark Mitchell <mark@codesourcery.com>
9894
9895 * c-common.c (warn_abi): New variable.
9896 * c-common.h (warn_abi): Likewise.
9897 * c-opts.c (COMMAND_LINE_OPTIONS): Add -Wabi.
9898 (c_common_decode_option): Handle it.
7ee425e4 9899 * doc/invoke.texi: Document -Wabi.
2567406a 9900
ece4ce85
NP
9901Tue Aug 27 23:03:52 2002 Nicola Pero <n.pero@mi.flashnet.it>
9902
9903 * c-common.c (warn_undeclared_selector): New variable.
9904 * c-common.h (warn_undeclared_selector): Idem.
9905 * c-opts.c (c_common_decode_option): Set warn_undeclared_selector
9906 to on when -Wundeclared-selector is found.
9907 (COMMAND_LINE_OPTIONS): Added -Wundeclared-selector.
9908 * objc/objc-act.c (build_selector_expr): If
9909 warn_undeclared_selector is set, check that the selector has
9910 already been defined, and emit a warning if not.
9911
b4378319 99122002-08-27 Nick Clifton <nickc@redhat.com>
54c93c30
AE
9913 Catherine Moore <clm@redhat.com>
9914 Jim Wilson <wilson@cygnus.com>
9915
9916 * config.gcc: Add v850e-*-* target.
9917 Add --with-cpu= support for v850.
9918 * config/v850/lib1funcs.asm: Add v850e callt functions.
9919 * config/v850/v850.h: Add support for v850e target.
9920 * config/v850/v850.c: Add functions to support v850e target.
9921 * config/v850/v850-protos.h: Add prototypes for new functions in v850.c.
9922 * config/v850/v850.md: Add patterns for v850e instructions.
9923 * doc/invoke.texi: Document new v850e command line switches.
b4378319 9924
ef261fee
R
9925Tue Aug 27 18:30:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
9926 Aldy Hernandez <aldyh at redhat dot com>
9927
9928 * doc/tm.texi: Applied numerous fixes to the automaton based
9929 scheduler descrition.
9930
c60ee6f5
JH
9931Tue Aug 27 19:51:05 CEST 2002 Jan Hubicka <jh@suse.cz>
9932
9933 * i386.c (classify_argument): Handle variable sized objects.
9934
1985ef90
JH
9935Tue Aug 27 19:18:16 CEST 2002 Jan Hubicka <jh@suse.cz>
9936
9937 * i386.c (ix86_expand_int_movcc): Fix RTL sharing problem
9938
7acc97e0
JH
9939Tue Aug 27 18:01:45 CEST 2002 Jan Hubicka <jh@suse.cz>
9940
9941 * libgcc2.c (__bb_exit_func): Properly write the summarized statistics.
9942
23327dae
JH
9943Tue Aug 27 18:00:11 CEST 2002 Jan Hubicka <jh@suse.cz>
9944
9945 * i386.c (classify_argument): Properly compute word size of the analyzed object.
9946
c49439f1
R
9947Tue Aug 27 14:39:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
9948
9949 * sh.md (attribute type): Add types mt_group, fload, pcfload, fpul_gp,
9950 mac_gp ftrc_s and cwb. Add / Adjust definitions in individual insn
9951 accordingly.
9952 (attribute insn_class): Provide default definitions based on type.
9953 Remove all insn-specific settings.
9954 (various function units): Remove old SH4 scheduling.
9955 (branch_zero, dfp_comp, late_fp_use, any_fp_comp, any_int_load):
9956 New attributes. Set them where appropriate.
9957 (cpu unit FS): Don't define / use.
9958 (F3, load_store): New cpu units.
9959 (F01): New reservation.
9960 (all insn_reservations): Make dependent on sh4 pipeline model.
9961 Fix latencies.
9962 (nil, reg_mov, freg_mov, sh4_fpul_gp, sh4_call): New insn_reservations.
9963 (sh4_mac_gp, fp_arith_ftrc, arith3, arith3b): Likewise.
9964 (mt insn_reservation): Use type mt_group.
9965 (insn_reservation load_store): Split into sh4_load, sh4_load_si,
9966 sh4_fload and sh4_store.
9967 (insn_reservation branch_zero and branch): Replace with sh4_branch.
9968 (insn_reservation branch_far): Replace with sh4_return.
9969 (insn_reservation return_from_exp): Rename to:
9970 (sh4_return_from_exp). Change to be just d_lock*5.
9971 (insn_reservation lds_to_pr): Rename to:
9972 (sh4_lds_to_pr). Change to be just d_lock*2.
9973 (insn_reservation ldsmem_to_pr, sts_from_pr): Change to be just
9974 d_lock*2.
9975 (insn_reservation prload_mem): Rename to:
9976 (sh4_prstore_mem). Change to d_lock*2,nothing,memory.
9977 (insn_reservation fpscr_store): Rename to:
9978 (fpscr_load). Change to d_lock,nothing,F1*3.
9979 (insn_reservation fpscr_store_mem): Rename to:
9980 (fpscr_load_mem). Change to d_lock,nothing,(F1+memory),F1*2.
9981 (insn_reservation multi): Change to
9982 d_lock,(d_lock+f1_1),(f1_1|f1_2)*3,F2.
9983 (insn_reservation fp_arith): Change to issue,F01,F2.
9984 (insn_reservation fp_div: Change to issue,F01+F3,F2+F3,F3*7,F1+F3,F2.
9985 (insn_reservation dp_float): Change to issue,F01,F1+F2,F2.
9986 (insn_reservation fp_double_arith): Change to issue,F01,F1+F2,fpu*4,F2.
9987 (insn_reservation fp_double_cmp): Change to
9988 d_lock,(d_lock+F01),F1+F2,F2.
9989 (insn_reservation dp_div): Change to
9990 issue,F01+F3,F1+F2+F3,F2+F3,F3*16,F1+F3,(fpu+F3)*2,F2.
9991 * sh.c (flow_dependent_p, flow_dependent_p_1): New functions.
9992 (sh_adjust_cost, SHcompact): Differentiate between different
9993 kinds of dependencies. Drop factor of ten for superscalar.
9994 Use new instruction types. Add new exception rules.
9995
9996 * sh.md (mulhisi3, umulhisi3: Add a REG_EQUAL note.
9997
9998 * sh.md (mperm_w): Add DONE.
9999
f34fc46e
DE
100002002-08-27 David Edelsohn <edelsohn@gnu.org>
10001
10002 * longlong.h: Import current PowerPC defintion from GMP-4.1.
10003
10004 * config/rs6000/rs6000.h (MIN_UNITS_PER_WORD): Add IN_LIBGCC2 case.
10005
10006 * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Undef before define.
10007
dcb44500
R
10008Tue Aug 27 13:53:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
10009
10010 * sh.h (MAX_FIXED_MODE_SIZE): Define.
10011
3ec07554
GDR
100122002-08-27 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net>
10013
10014 * doc/cpp.texi (Common Predefined Macros): Don't mess with table
2567406a 10015 delimiter.
3ec07554 10016
35885eab
GDR
100172002-08-27 Gabriel Dos Reis <gdr@integrable-solutions.net>
10018
10019 * c-common.c (cpp_define_data_format): New function.
10020 (cb_register_builtins): Call it.
10021
10022 * doc/cpp.texi (Common Predefined Macros): Document
10023 __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
10024 __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
10025 __TARGET_FLOAT_FORMAT__, __TARGET_USES_VAX_F_FLOAT__,
10026 __TARGET_USES_VAX_D_FLOAT__, __TARGET_USES_VAX_G_FLOAT__,
10027 __TARGET_USES_VAX_H_FLOAT__.
10028
d632dee9
ZL
100292002-08-26 Ziemowit Laski <zlaski@apple.com>
10030
10031 * objc/objc-act.c (get_super_receiver): If inside a class method
10032 of a category, cast the receiver to 'id' before accessing the 'isa'
10033 field so that <objc/objc-class.h> is not needed. For NeXT runtime.
10034
c3cc6b78
UW
100352002-08-26 Ulrich Weigand <uweigand@de.ibm.com>
10036
2567406a 10037 * config/s390/s390-protos.h (s390_function_prologue,
c3cc6b78
UW
10038 s390_function_epilogue): Remove.
10039 config/s390/s390.c (s390_function_prologue, s390_function_epilogue,
10040 TARGET_ASM_FUNCTION_PROLOGUE, TARGET_ASM_FUNCTION_EPILOGUE): Remove.
10041
10042 config/s390/s390.c (s390_machine_dependent_recorg): New function.
10043 config/s390/s390-protos.h (s390_machine_dependent_reorg): Declare it.
10044 config/s390/s390.h (MACHINE_DEPENDENT_REORG): Call it.
10045 config/s390/s390.c (s390_split_branches, s390_chunkify_pool): Adapt
10046 to being called from MACHINE_DEPENDENT_REORG. Update regs_ever_live.
10047
2567406a 10048 config/s390/s390.c (s390_frame_info): Inline save_fprs_p. Always
c3cc6b78
UW
10049 assume BASE_REGISTER and RETURN_REGNUM need to be saved.
10050 (s390_emit_prologue): Assume RETURN_REGNUM to be saved iff
10051 function is not a leaf function. Use save_gprs and restore_gprs.
10052 (s390_emit_epilogue): Likewise.
10053 (save_gprs, restore_gprs): New functions.
10054 (struct s390_frame): Remove return_reg_saved_p member.
10055 (save_fprs_p): Remove.
10056 (s390_optimize_prolog): New function.
10057 (s390_legitimate_reload_constant): Remove now unnecessary check.
10058
10059 (s390_function_count): Remove.
10060 (s390_output_symbolic_const): Replace s390_function_count by
10061 current_function_funcdef_no.
10062 (s390_output_constant_pool): Likewise.
10063
10064 (legitimize_pic_address): Use regs_ever_live to track PIC register
10065 instead of current_function_uses_pic_offset_table.
10066 (s390_emit_prologue): Likewise.
10067 config/s390/s390.md ("call", "call_value"): Likewise.
10068
3f662186
NB
100692002-08-26 Neil Booth <neil@daikokuya.co.uk>
10070
10071 * c-opts.c (find_opt): Don't complain about wrong languages
10072 here. Return exact matches even for wrong language.
10073 (c_common_decode_option): Complain about wrong languages
10074 here.
10075
b6128b8c
SH
100762002-08-24 Stuart Hastings <stuart@apple.com>
10077
10078 * function.h (struct function): Add flag
10079 all_throwers_are_sibcalls.
10080 * except.c (set_nothrow_function_flags): Replaces
10081 nothrow_function_p. Set new flag.
10082 * except.h (set_nothrow_function_flags): Replaces
10083 nothrow_function_p.
10084 * dwarf2out.c (struct dw_fde_struct): Add flag
10085 all_throwers_are_sibcalls.
10086 (output_call_frame_info): Test it.
10087 (dwarf2out_begin_prologue) Propagate it from cfun to
10088 dw_fde_struct.
10089 * toplev.c (rest_of_compilation): Update calls to
10090 nothrow_function_p.
10091
280cf02a
ZW
100922002-08-23 Zack Weinberg <zack@codesourcery.com>
10093
10094 * ggc-page.c (compute_inverse): Short circuit calculation for
10095 object sizes larger than half a page.
10096
c6664446
DE
100972002-08-23 David Edelsohn <edelsohn@gnu.org>
10098
10099 * config/rs6000/rs6000.c (rs6000_elf_select_section): Treat
10100 DEFAULT_ABI == ABI_AIX like PIC. Test PIC & reloc for readonly
10101 default.
10102 (rs6000_elf_unique_section): Likewise.
10103
da57d233
KG
101042002-08-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10105
10106 * ns32k.c (ns32k_globalize_label): Delete.
10107 * ns32k.h (ASM_OUTPUT_LABEL, TARGET_ASM_GLOBALIZE_LABEL): Delete.
10108
56a7189a
AM
101092002-08-23 Alan Modra <amodra@bigpond.net.au>
10110
10111 * config/rs6000/rs6000.c (output_mi_thunk): Don't determine insns
10112 for loading delta with num_insns_constant_wide. Calculate
10113 delta_low, delta_high without using a conditional.
10114
d65b1d77
JM
101152002-08-22 Jason Merrill <jason@redhat.com>
10116
10117 * c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR.
10118 * c-common.def: Adjust.
10119 * c-dump.c (c_dump_tree): Adjust.
10120 * c-semantics.c (genrtl_return_stmt): Adjust.
10121 * c-pretty-print.c (pp_c_statement): Adjust.
10122 * tree-inline.c (copy_body_r): Adjust.
10123
8537ed68
ZW
101242002-08-22 Zack Weinberg <zack@codesourcery.com>
10125
10126 * ggc-page.c: Avoid division in ggc_set_mark.
10127 (DIV_MULT, DIV_SHIFT, OFFSET_TO_BIT, inverse_table,
10128 compute_inverse): New.
10129 (ggc_set_mark, ggc_marked_p): Use OFFSET_TO_BIT.
10130 (init_ggc): Initialize inverse_table.
10131
8567c70f
TT
101322002-08-22 Tom Tromey <tromey@redhat.com>
10133
10134 * doc/install.texi (Configuration): Document --datadir.
10135
fde59d4b
AO
101362002-08-22 Alexandre Oliva <aoliva@redhat.com>
10137
10138 * Makefile.in ($(BUILD_PREFIX_1)varray.o): Depend on $(GGC_H).
10139
44ddc79a
HPN
101402002-08-22 Hans-Peter Nilsson <hp@bitrange.com>
10141
10142 * gengtype-lex.l (ID): Allow underscore as first character.
10143
b275d088
DE
101442002-08-21 David Edelsohn <edelsohn@gnu.org>
10145
10146 * config/rs6000/rs6000.c (rs6000_xcoff_asm_globalize_label): New
10147 function.
10148 (rs6000_xcoff_asm_named_section): Rename.
10149 * config/rs6000/xcoff.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
10150
57ce46bb
TT
101512002-08-21 Tom Tromey <tromey@redhat.com>
10152
10153 For PR java/6005 and PR java/7611:
10154 * fold-const.c (fold_truthop): Use can_use_bit_fields_p.
10155 (fold): Likewise.
10156 * langhooks.c (lhd_can_use_bit_fields_p): New function.
10157 * langhooks-def.h (lhd_can_use_bit_fields_p): Declare.
10158 (LANG_HOOKS_CAN_USE_BIT_FIELDS_P): New define.
10159 (LANG_HOOKS_INITIALIZER): Use it.
10160 * langhooks.h (struct lang_hooks) [can_use_bit_fields_p]: New
10161 field.
10162
27d30956
SS
101632002-08-21 Stan Shebs <shebs@apple.com>
10164
10165 * tree.c (finish_vector_type): Fix a typo in a comment.
10166 * Makefile.in: Fix "the the" stutters in comments.
10167 * genautomata.c: Ditto.
10168 * ifcvt.c: Ditto.
10169 * regrename.c: Ditto.
10170 * config/alpha/alpha.c: Ditto.
10171 * config/alpha/vms-crt0-64.c: Ditto.
10172 * config/alpha/vms-crt0.c: Ditto.
10173 * config/alpha/vms-psxcrt0-64.c: Ditto.
10174 * config/alpha/vms-psxcrt0.c: Ditto.
10175 * config/d30v/d30v.h: Ditto.
10176 * config/fr30/fr30.h: Ditto.
10177 * config/rs6000/rs6000.c: Ditto.
10178 * config/stormy16/stormy16.h: Ditto.
10179 * doc/md.texi: Ditto.
8537ed68 10180
d873d827
JDA
101812002-08-21 John David Anglin <dave@hiauly1.hia.nrc.ca>
10182
10183 * cppinit.c (remove_dup_nonsys_dirs): Fix warning and return value.
10184
b462d4ab
JM
101852002-08-21 Joseph S. Myers <jsm@polyomino.org.uk>
10186
10187 * c-decl.c (grokdeclarator): Make invalid combinations with long,
10188 short, signed or unsigned into hard errors. Fixes PR c/4319.
10189 Also make duplicate modifiers such as "short short" into hard
10190 errors.
10191
b65d23aa 101922002-08-21 Andrew Pinski <pinskia@physics.uc.edu>
8537ed68 10193 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b65d23aa
AP
10194
10195 * doc/tm.texi (TARGET_ASM_GLOBALIZE_LABEL): Move '@end deftypefn'
10196 to the actual end. Add '@end table' and '@table @code'.
8537ed68 10197
3823f0b2
GK
101982002-08-20 Geoffrey Keating <geoffk@redhat.com>
10199
8d25d915
GK
10200 * doc/tm.texi (Label Output): Add missing '@end deftypefn'.
10201
3823f0b2
GK
10202 * unroll.c (biv_total_increment): Don't try to compute the total
10203 increment for FP BIVs.
10204
5eb99654
KG
102052002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10206
10207 * alpha.c (TARGET_ASM_GLOBALIZE_LABEL): Define for unicosmk.
10208 * alpha/elf.h (ASM_OUTPUT_EXTERNAL_LIBCALL,
10209 ASM_OUTPUT_ALIGNED_BSS): Use target hook.
10210 * alpha/osf.h (ASM_OUTPUT_WEAK_ALIAS): Likewise.
10211 * alpha/unicosmk.h (ASM_GLOBALIZE_LABEL): Delete.
10212 * arm/aof.h (ASM_GLOBALIZE_LABEL): Likewise.
10213 (GLOBAL_ASM_OP): Define.
10214 * arm.c (aof_globalize_label): New function.
10215 (TARGET_ASM_GLOBALIZE_LABEL): Define for AOF.
10216 * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
10217 * c4x.c (c4x_globalize_label): New function.
10218 (TARGET_ASM_GLOBALIZE_LABEL): Define for c4x.
10219 * c4x.h (ASM_GLOBALIZE_LABEL): Delete.
10220 (GLOBAL_ASM_OP): Define.
10221 * cris/aout.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
10222 * darwin-protos.h (darwin_globalize_label): Declare.
10223 * darwin.c (darwin_globalize_label): New function.
10224 * darwin.h (ASM_DECLARE_CLASS_REFERENCE): Use target hook.
10225 (ASM_GLOBALIZE_LABEL): Delete.
10226 (GLOBAL_ASM_OP, TARGET_ASM_GLOBALIZE_LABEL): Define.
10227 * dsp16xx.c (asm_output_common): Use target hook.
10228 * elfos.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
10229 * frv.h (ASM_GLOBALIZE_LABEL): Delete.
10230 (GLOBAL_ASM_OP): Define.
10231 * i370.c (i370_globalize_label): New function.
10232 (TARGET_ASM_GLOBALIZE_LABEL): Define for i370.
10233 * i370.h (ASM_GLOBALIZE_LABEL): Delete.
10234 * i386.c (ix86_asm_file_end): Use target hook.
10235 * i386/sco5.h (ASM_GLOBALIZE_LABEL): Don't undef.
10236 (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
10237 * ia64.c (ia64_asm_output_external): Likewise.
10238 * ia64/sysv4.h: Update comment.
10239 * m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
10240 * mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
10241 * mips/iris5.h (ASM_OUTPUT_WEAK_ALIAS): Use target hook.
10242 * mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
10243 * mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use target hook.
10244 * mmix-protos.h (mmix_asm_globalize_label): Delete.
10245 * mmix.c (mmix_asm_globalize_label): Likewise.
10246 * mmix.h (ASM_GLOBALIZE_LABEL): Likewise.
10247 (GLOBAL_ASM_OP): Define.
10248 * ns32k.c (ns32k_globalize_label): New function.
10249 * ns32k.h (TARGET_ASM_GLOBALIZE_LABEL): Define for ns32k.
10250 (ASM_GLOBALIZE_LABEL): Delete.
10251 * pa/pa-linux.h (ASM_GLOBALIZE_LABEL): Don't undef.
10252 (TARGET_ASM_GLOBALIZE_LABEL): Undefine.
10253 * pa.c (pa_globalize_label): New function.
10254 * pa.h (ASM_GLOBALIZE_LABEL): Delete.
10255 (TARGET_ASM_GLOBALIZE_LABEL): Define for pa.
10256 * rs6000/darwin.h (ASM_GLOBALIZE_LABEL): Delete.
10257 (GLOBAL_ASM_OP): Define.
10258 (TARGET_ASM_GLOBALIZE_LABEL): Undef.
10259 * rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
10260 * rs6000/xcoff.h (ASM_GLOBALIZE_LABEL): Delete.
10261 (GLOBAL_ASM_OP): Define.
10262 * v850.c (v850_output_aligned_bss): Use target hook.
10263 * vax.c (vms_globalize_label): New function.
10264 (TARGET_ASM_GLOBALIZE_LABEL): Define for vms.
10265 * vax/vms.h (ASM_GLOBALIZE_LABEL): Delete.
10266 (GLOBAL_ASM_OP): Define.
10267 * defaults.h (ASM_GLOBALIZE_LABEL): Delete.
10268 * doc/tm.texi: Update docs.
10269 * dwarf2out.c (default_eh_frame_section, output_die_symbol): Use
10270 target hook.
10271 * final.c (output_alternate_entry_point): Likewise.
10272 * hooks.c (hook_FILEptr_constcharptr_void): New function.
10273 * hooks.h (hook_FILEptr_constcharptr_void): Declare.
10274 * output.h (assemble_global): Delete.
10275 (default_globalize_label): Declare.
10276 * system.h (ASM_GLOBALIZE_LABEL): Poison.
10277 * target-def.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
10278 (TARGET_ASM_OUT): Add TARGET_ASM_GLOBALIZE_LABEL.
10279 * target.h (gcc_target): Add globalize_label member.
10280 * varasm.c (asm_output_bss, asm_output_aligned_bss,
10281 globalize_decl): Use target hook.
10282 (assemble_global): Delete.
10283 (default_globalize_label): New function.
10284
f8f28a75
KG
102852002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10286
10287 * dsp16xx.h (dsp16xx_umulhi3_libcall): Delete.
10288
92b5aacd
DP
102892002-08-20 Devang Patel <dpatel@apple.com>
10290 * tree.c (get_qualified_type): Add TYPE_CONTEXT check.
8537ed68 10291
761c70aa
KG
102922002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10293
10294 * arc.c (output_shift): Use stdio instead of asm_fprintf.
10295 * arm.c (thumb_output_function_prologue): Likewise.
10296 * avr.c (print_operand): Likewise.
10297 * c4x.c (c4x_print_operand): Likewise.
10298 * c4x.h (ASM_OUTPUT_INTERNAL_LABEL, TRAMPOLINE_TEMPLATE,
10299 ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
10300 * cris.c (cris_target_asm_function_prologue,
10301 cris_asm_output_mi_thunk): Likewise.
10302 * h8300.c (print_operand): Likewise.
10303 * h8300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
10304 * ip2k.c (print_operand): Likewise. Fix format specifier.
10305 * m68hc11.c (asm_print_register, print_operand,
10306 print_operand_address): Use stdio instead of asm_fprintf.
10307 (print_operand_address): Fix format specifier.
10308 * m68hc11.h (FUNCTION_PROFILER, ASM_OUTPUT_ADDR_DIFF_ELT,
10309 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ALIGN): Use stdio instead of
10310 asm_fprintf.
10311 * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
10312 * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
10313 * m68k.c (m68k_output_function_prologue,
10314 m68k_output_function_epilogue, print_operand): Likewise.
10315 * mmix.c (mmix_asm_output_mi_thunk, mmix_asm_weaken_label):
10316 Likewise. Fix format specifier.
10317 * mn10200.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
10318 * mn10300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
10319 * v850.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
10320
5ce6f47b
EC
103212002-08-15 Eric Christopher <echristo@redhat.com>
10322 Jeff Knaggs <jknaggs@redhat.com>
10323
10324 * config.gcc (mipsisa64sr71k-elf): New target.
10325 * config/mips/sr71k.md: New file.
10326 * config/mips/mips.md: Use it.
10327 (rot*): Add sr71k specifics.
10328 * config/mips/t-sr71k: New file.
10329 * config/mips/mips.h (sr71k): New cpu.
10330 (TARGET_SR71K): Use it.
10331 (TUNE_SR71K): Ditto.
10332 (GENERATE_BRANCHLIKELY): Ditto.
10333 (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC,
10334 ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto.
10335 * config/mips/mips.c (sr71k): New cpu.
10336 (mips_use_dfa_pipeline_interface): Use.
10337
103382002-08-15 Eric Christopher <echristo@redhat.com>
8537ed68 10339 Richard Sandiford <rsandifo@redhat.com>
5ce6f47b
EC
10340 Aldy Hernandez <aldyh@redhat.com>
10341 Graham Stott <grahams@redhat.com>
10342 Michael Meissner <meissner@redhat.com>
10343 Gavin Romig-Koch <gavin@redhat.com>
10344 Ken Raeburn <raeburn@cygnus.com>
10345 Alexandre Oliva <aoliva@redhat.com>
10346
10347 * config.gcc (mips64vr-elf): New target.
10348 * config/mips/5400.md: New file.
10349 * config/mips/5500.md: Ditto.
10350 * config/mips/mips.md: Use them.
10351 (frsqrt): New.
10352 * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New
10353 cpus.
10354 (mips_issue_rate): Use them.
10355 (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500.
10356 (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above.
10357 * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New
10358 cpus.
10359 (TARGET_MIPSx): Use them.
10360 (TUNE_MIPSx): Ditto.
10361 (GETNATE_MULT3_SI): Ditto.
10362 (ISA_HAS_BRANCHLIKELY): Ditto.
10363 (ISA_HAS_CONDMOVE): Ditto.
10364 (ISA_HAS_NMADD_NMSUB): Ditto.
10365 (ISA_HAS_MULHI): New. Ditto.
10366 (ISA_HAS_MULS): Ditto.
10367 (ISA_HAS_MSAC): Ditto.
10368 (ISA_HAS_MACC): Ditto.
10369 (ISA_HAS_ROTR_SI): Ditto.
10370 (ISA_HAS_ROTR_DI): Ditto.
10371 (RTX_COSTS): Use.
10372
48209ce5
JDA
103732002-08-20 John David Anglin <dave@hiauly1.hia.nrc.ca>
10374
10375 * cppinit.c (remove_dup_dir): Add head_ptr argument to handle removal
10376 at head.
10377 (remove_dup_nonsys_dirs): New function.
10378 (remove_dup_dirs): Change argument head to head_ptr. Remove warnings.
10379 (merge_include_chains): Remove non-system include directories from
10380 quote and bracket include chains when they duplicate equivalent system
10381 directories.
10382 * doc/cpp.texi (-I): Update.
8537ed68
ZW
10383 * doc/cppopts.texi (-I): Update.
10384 * doc/install.texi (--with-local-prefix): Further document usage of
48209ce5
JDA
10385 this option.
10386 * doc/invoke.texi (-I): Update.
10387
4ca79136
RH
103882002-08-20 Richard Henderson <rth@redhat.com>
10389
10390 * expr.c (TARGET_MEM_FUNCTIONS): Transform to boolean.
10391 (emit_block_move): Split out subroutines.
10392 (emit_block_move_via_movstr): New.
10393 (emit_block_move_via_libcall): New. Emit bcopy via normal call also.
10394 (emit_block_move_libcall_fn): New. Construct function prototype for
10395 bcopy as well.
10396 (clear_storage): Split out subroutines.
10397 (clear_storage_via_clrstr): New.
10398 (clear_storage_via_libcall): New. Emit bzero as a normal call also.
10399 (clear_storage_libcall_fn): New. Construct function prototype for
10400 bzero as well.
10401 (emit_push_insn): Use emit_block_move.
10402 (expand_assignment): Booleanize TARGET_MEM_FUNCTIONS.
10403 (store_constructor): Likewise.
10404
9f05cef3
ZL
104052002-08-19 Ziemowit Laski <zlaski@apple.com>
10406
10407 * objc/objc-act.c (building_objc_message_expr): Rename to
10408 current_objc_message_selector.
10409
1bd5981b
ZL
104102002-08-19 Ziemowit Laski <zlaski@apple.com>
10411
10412 * objc/objc-act.c (build_ivar_chain): Remove.
10413 (objc_copy_list): Likewise.
10414 (get_class_ivars): Inline call to removed build_ivar_chain
10415 function. Save off a clean copy of ivars in the CLASS_OWN_IVARS
10416 slot; use that slot (rather than CLASS_IVARS) when accessing
10417 ivars for base classes. Call copy_list and chainon instead of
10418 objc_copy_list.
10419 (build_private_template): Call get_class_ivars instead of
10420 build_ivar_chain.
10421 (start_class): Allocate room for the CLASS_OWN_IVARS slot.
5ce6f47b 10422 (continue_class): Call get_class_ivars instead of
1bd5981b
ZL
10423 build_ivar_chain.
10424 (encode_field_decl): Check for DECL_BIT_FIELD_TYPE instead
10425 of DECL_BIT_FIELD (which may have been cleared).
10426 * objc/objc-act.h (CLASS_OWN_IVARS): New accessor macro.
10427
2bf087c0
KG
104282002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10429
10430 * genautomata.c (output_translate_vect, output_state_ainsn_table,
10431 output_min_issue_delay_table): Mark variable with ATTRIBUTE_UNUSED
10432 in output file.
10433 (output_internal_min_issue_delay_func): Initialize variable in
10434 output file.
10435
3fcd079e
AO
104362002-08-19 Alexandre Oliva <aoliva@redhat.com>
10437
10438 * Makefile.in (GCC_FOR_TARGET): Prepend STAGE_CC_WRAPPER.
10439 (stage2_build, stage3_build, stage4_build): Likewise, to CC.
10440
71012d97
GK
104412002-08-19 Geoffrey Keating <geoffk@redhat.com>
10442 Steve Ellcey <sje@cup.hp.com>
10443
10444 * machmode.h (SCALAR_INT_MODE_P): New macro to test for
10445 scaler integer mode (MODE_INT or MODE_PARTIAL_INT).
10446 * explow.c (trunc_int_for_mode): Abort when the mode is not
10447 a scaler integer mode.
10448 * combine.c (expand_compound_operation): Don't expand Vector
10449 or Complex modes into shifts.
10450 (expand_field_assignment): Don't do bitwise arithmatic and
10451 shifts on Vector or Complex modes.
10452 (simplify_comparison): Don't call trunc_int_for_mode
10453 for VOIDmode.
10454 * recog.c (general_operand): Likewise.
10455 (immediate_operand): Likewise.
10456 (nonmemory_operand): Likewise.
10457
af8cb5c5
DE
104582002-08-19 David Edelsohn <edelsohn@gnu.org>
10459
10460 * config/rs6000/rs6000.c (rs6000_emit_set_const): Inline
10461 multi-instruction SImode constant. Add REG_EQUAL note.
10462 * config/rs6000/rs6000.md (movsi splitter): Use
5ce6f47b 10463 rs6000_emit_set_const.
af8cb5c5 10464
9bc146b3
KG
104652002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10466
10467 * tree-inline.c (initialize_inlined_parameters): Wrap variable in
10468 the macro test controlling its use.
10469
66df2ac2
L
104702002-08-18 H.J. Lu (hjl@gnu.org)
10471
10472 * config.gcc (*-*-linux*): Set extra_parts="crtbegin.o
10473 crtbeginS.o crtbeginT.o crtend.o crtendS.o", gas=yes and
10474 gnu_ld=yes.
10475 (alpha*-*-linux*, cris-*-linux*, i370-*-linux*,
10476 i[34567]86-*-linux*, x86_64-*-linux*, mips*-*-linux*,
10477 s390-*-linux*, s390x-*-linux*, sparc-*-linux*, sparc64-*-linux*,
10478 xtensa-*-linux*): Remove setting extra_parts, gas, and gnu_ld
10479 here.
10480 (cris-*-linux*): Remove setting thread_file here.
10481
463f1b2b
NB
104822002-08-18 Neil Booth <neil@daikokuya.co.uk>
10483
10484 PR preprocessor/7602
10485 * cppinit.c (path_include): Treat the system environment
10486 variables as being cxx_aware.
10487
2984fe64
JM
104882002-08-17 Joseph S. Myers <jsm@polyomino.org.uk>
10489
10490 * c-decl.c (flexible_array_type_p): New function.
10491 (grokdeclarator, finish_struct): Use it.
10492 * doc/extend.texi: Document constraints on use of structures with
10493 flexible array members.
10494
fded6d78
RS
104952002-08-17 Richard Sandiford <rsandifo@redhat.com>
10496
10497 * config/mips/t-coff, config/mips/t-elf, config/mips/t-isa3264,
10498 config/mips/t-r3900 (MULTILIB_MATCHES): Define.
10499 * config/mips/mips.h (ASM_SPEC): Use %(endian_spec).
10500
8aa5074e
SS
105012002-08-16 Stan Shebs <shebs@apple.com>
10502
10503 * c-common.c (cb_register_builds): Define __NEXT_RUNTIME__
10504 for ObjC with -fnext-runtime.
10505 * doc/cpp.texi: Document it.
10506
f97a5bda
JJ
105072002-08-16 Janis Johnson <janis187@us.ibm.com>
10508
10509 * doc/install.texi (Final installation): Replace links to individual
10510 build status pages with a link to a common page that lists them all.
10511
d3075b6c
SP
105122002-08-16 Sylvain Pion <pion@cs.nyu.edu>
10513
10514 * doc/invoke.texi: Fix typo.
10515
fdf68669
DE
105162002-08-16 David Edelsohn <edelsohn@gnu.org>
10517
10518 * doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.
10519
105202002-08-16 Andrew Haley <aph@redhat.com>
d436bff8
AH
10521
10522 * tree-inline.c: Add includes for Java inliner.
10523 (remap_decl): Don't handle anonymous types for Java.
10524 (remap_block): Add handling for Java trees.
10525 (copy_scope_stmt): Conditionalize for non-Java use only.
10526 (copy_body_r): Handle Java trees. Add handling for
10527 LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, Java blocks.
10528 (initialize_inlined_parameters): Handle Java trees.
10529 (declare_return_variable): Likewise.
10530 (expand_call_inline): Handle Java trees.
10531 (walk_tree): Likewise.
10532 (copy_tree_r): Don't handle SCOPE_STMTs for Java.
10533 (add_stmt_to_compound): New function.
10534
204250d2
RH
105352002-08-15 Richard Henderson <rth@redhat.com>
10536
10537 * Makefile.in (LOOSE_WARN): Remove -fno-common.
10538 (NOCOMMON_FLAG): New substitution point.
10539 (GCC_WARN_CFLAGS): Include it.
10540 * configure.in (ac_checking): Set nocommon_flag.
10541 (nocommon_flag): New substitution point.
10542
25587e40
AO
105432002-08-15 Alexandre Oliva <aoliva@redhat.com>
10544
10545 * c-tree.h (skip_evaluation): Move declaration...
10546 * c-common.h: ... here.
10547 * c-typeck.c (build_external_ref): Don't assemble_external nor
10548 mark a tree as used if skip_evaluation is set.
10549 * c-parse.in (typeof): New non-terminal to set skip_evaluation
10550 around TYPEOF.
10551 (typespec_nonreserved_nonattr): Use it.
10552
702ada3d
DR
105532002-08-15 Douglas B Rupp <rupp@gnat.com>
10554
10555 * dbxout.c (dbx_debug_hooks): Update end_prologue, end_epilogue.
10556 (xcoff_debug_hooks): Update end_prologue.
10557 * debug.c (do_nothing_debug_hooks): Update end_prologue, end_epilogue.
10558 * debug.h (end_prologue): Add file arg.
10559 (end_epilogue): Add line and file args.
10560 (dwarf2out_end_epilogue): Add line and file args.
10561 (vmsdbgout_after_prologue): Remove.
10562 * dwarf2out.c (dwarf2out_end_epilogue): Add line and file args.
10563 (dwarf2_debug_hooks): Update end_prologue.
10564 * dwarfout.c (dwarfout_end_epilogue): Add line and file args.
10565 (dwarfout_end_prologue): Add file arg.
10566 * final.c (vmsdbgout_after_prologue): Remove
10567 (final_end_function): Update end_epilogue call.
10568 (final_scan_insn): Update end_prologue call.
10569 * sdbout.c (sdbout_end_epilogue): Add line and file args.
10570 (sdbout_end_prologue): Add file arg.
10571 (sdb_debug_hooks): Update end_prologue.
10572 (sdb_begin_prologue): Update sdbout_end_prologue call.
10573 * vmsdbgout.c (vmsdbg_debug_hooks): Add vmsdbgout_end_prologue,
10574 vmsdbgout_end_function.
10575 (vmsdbgout_end_prologue): New function renamed from
10576 vmsdbgout_after_prologue. Call vmsdbgout_source_line.
10577 (vmsdbgout_end_function): New function.
10578 (vmsdbgout_end_epilogue): Add line and file args. Call
10579 vmsdbgout_source_line.
10580 (write_pclines): Write only valid line numbers.
10581 (write_srccorr): Don't write source correlation records if 0 lines.
10582 * xcoffout.c (xcoffout_end_epilogue): Add line and file args.
10583
9ef30f83
SE
105842002-08-15 Steve Ellcey <sje@cup.hp.com>
10585
10586 * gcc/unwind.h (_Unwind_Ptr): Make 64 bits on IA64 HP-UX.
10587 (_Unwind_Internal_Ptr): 32 bit version for use in
10588 read_encoded_value_with_base.
10589 * gcc/unwind-pe.h (read_encoded_value_with_base): Use
10590 _Unwind_Internal_Ptr instead of _Unwind_Ptr in order to get the
10591 right size.
10592
f7043461
KG
105932002-08-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10594
10595 * loop.c (scan_loop, move_movables, count_one_set): Cast to avoid
10596 signed/unsigned warnings.
10597
10598 * regclass.c (init_reg_sets_1, choose_hard_reg_mode,
10599 record_reg_classes): Likewise.
10600
10601 * reload.c (reload_inner_reg_of_subreg, push_reload,
10602 find_reloads_address_1): Likewise.
10603
b4d330e1
DE
106042002-08-15 David Edelsohn <edelsohn@gnu.org>
10605
10606 * rs6000.c (output_mi_thunk): Return to function section on
10607 TARGET_ELF.
10608
10609 * rs6000-c.c (rs6000_cpu_cpp_builtins): Define __PPC405__ if PPC405.
10610
61f02ff5
UW
106112002-08-15 Ulrich Weigand <uweigand@de.ibm.com>
10612
10613 * config/s390/s390.c (legitimize_address): Optimize loading
10614 of large displacements.
10615
1330f7d5
DR
106162002-08-14 Douglas B Rupp <rupp@gnat.com>
10617
10618 * config/alpha/alpha-protos.h: Update.
10619
10620 * config/alpha/alpha.c: (LINKAGE_SYMBOL_REF_P): New macro.
10621 (alpha_legitimate_address_p): Test LINKAGE_SYMBOL_REF_P.
10622 (alpha_linkage_symbol_p): New static function.
10623 (print_operand_address): Print linkage operand.
10624
10625 (alpha_funcs_num, alpha_funcs_tree, alpha_links_tree): New static
10626 variables.
10627 (reloc_kind): New enum.
10628 (struct alpha_funcs): New struct.
10629 (struct alpha_links): Add reloc_kind field. Rename links_kind field.
10630
10631 (alpha_need_linkage): Rewrite.
10632 (alpha_use_linkage): New global function.
10633 (alpha_write_linkage): Rewrite and make static.
10634 (alpha_write_one_linkage): Rewrite
10635
10636 (alpha_start_function): Remove procedure descriptor output.
10637 (alpha_end_function): Write linkages at end of each function.
10638
10639 * config/alpha/alpha.md (call_vms, call_value_vms): Rewrite.
10640 (call_vms_1, call_value_vms_1): Rewrite.
10641
10642 * config/alpha/vms.h (ASM_FILE_END): Remove.
10643
d1f1cc6a
RH
106442002-08-14 Richard Henderson <rth@redhat.com>
10645
10646 * ggc-page.c (RTL_SIZE): New.
10647 (extra_order_size_table): Add specializations for 2 and 10 rtl slots.
10648 * rtl.def (BARRIER, NOTE): Pad to 9 slots.
10649
23626154
RH
106502002-08-14 Richard Henderson <rth@redhat.com>
10651
10652 * calls.c: Include target.h.
10653 * Makefile.in (calls.o): Update.
10654
10655 * config/alpha/alpha.c (alpha_end_function): Use targetm.binds_local_p.
10656 * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Likewise.
10657
fd350d24
RH
106582002-08-14 Richard Henderson <rth@redhat.com>
10659
10660 * Makefile.in (LOOSE_WARN): Add -fno-common.
10661 * c-common.h (constant_string_class_name): Add missing extern.
10662
182d89a3
NB
106632002-08-15 Neil Booth <neil@daikokuya.co.uk>
10664
10665 PR preprocessor/7358
10666 * c-opts.c (check_deps_environment_vars): Ignore main file
10667 for SUNPRO_DEPENDENCIES.
10668 * cppfiles.c (stack_include_file): Ignore main file if
10669 appropriate.
10670 * cpplib.h (struct cpp_options): New member in deps.
10671 * doc/cppenv.texi: Update.
10672
8bfb1467
NB
106732002-08-14 Neil Booth <neil@daikokuya.co.uk>
10674
10675 PR preprocessor/7526
10676 * cpplib.c (run_directive): Kludge so _Pragma dependency works.
10677
41685063
NS
106782002-08-14 Nathan Sidwell <nathan@codesourcery.com>
10679
10680 * doc/invoke.texi (-a): Remove documentation.
10681 (-fprofile-arcs): Remove reference to -a, -ax options.
10682 * doc/gcov.texi (Gcov Data Files): Data might be merged.
10683
77893a23
GDR
106842002-08-14 Gabriel Dos Reis <gdr@nerim.net>
10685
10686 Fix PR/7566
10687 * c-semantics.c (genrtl_case_label): Don't (mis)use
5ce6f47b 10688 warning_with_decl.
77893a23 10689
260f91c2
DJ
106902002-08-14 Dale Johannesen <dalej@apple.com>
10691
8537ed68 10692 * explow.c (emit_stack_restore): Emit memory clobbers
260f91c2
DJ
10693 preceding the stack pop, to prevent the scheduler from
10694 moving refs to variable arrays below this pop.
10695 * reload1.c (reload): Preserve these clobbers for sched2.
10696 * doc/rtl.texi: Document clobber (mem:BLK (scratch)).
10697
cd79e210
NB
106982002-08-14 Neil Booth <neil@daikokuya.co.uk>
10699
10700 * c-opts.c (c_common_post_options): Correct test.
10701
3eb75a73
KG
107022002-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10703
10704 * m88k.h (ASM_OUTPUT_SOURCE_FILENAME): Fix incorrect argument
10705 order in call to fprintf.
10706
be3a0ce2
RO
107072002-08-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
10708
10709 * config/sparc/sol2.h (SUBTARGET_EXTRA_SPECS): Define.
10710
ccfc6cc8
UW
107112002-08-14 Ulrich Weigand <uweigand@de.ibm.com>
10712
5ce6f47b 10713 * reload.c (find_reloads): Handle constraint letters marked by
ccfc6cc8
UW
10714 EXTRA_ADDRESS_CONSTRAINT and EXTRA_MEMORY_CONSTRAINT.
10715 (alternative_allows_memconst): Likewise.
10716 * reload1.c (maybe_fix_stack_asms): Likewise.
5ce6f47b 10717 * recog.c (asm_operand_ok, preprocess_constraints,
ccfc6cc8
UW
10718 constrain_operands): Likewise.
10719 * regclass.c (record_operand_costs, record_reg_classes): Likewise.
10720 * local-alloc.c (block_alloc, requires_inout): Likewise.
10721 * stmt.c (parse_output_constraint, parse_input_constraint): Likewise.
10722
10723 * defaults.h (EXTRA_MEMORY_CONSTRAINT): Provide a default.
10724 (EXTRA_ADDRESS_CONSTRAINT): Likewise.
10725 * doc/tm.texi: Document these two new target macros.
10726
10727 * config/s390/s390.c (s390_expand_plus_operand): Accept already
10728 valid operands.
10729 (q_constraint): New function.
10730 config/s390/s390-protos.h (q_constraint): Declare it.
10731 config/s390/s390.h (EXTRA_CONSTRAINT): Use it.
10732 (EXTRA_MEMORY_CONSTRAINT): New macro.
10733
10734 * config/s390/s390.md: Throughout the machine description,
10735 replace all instances of the constraint combinations 'Qo'
10736 or 'oQ' with simply 'Q'.
10737
d6ee9f6f
SC
107382002-08-14 Stephane Carrez <stcarrez@nerim.fr>
10739
10740 * config/m68hc11/m68hc11.h (LINK_SPEC): Support -mrelax.
10741 * config/m68hc11/t-m68hc11-gas (LIBGCC2_DEBUG_CFLAGS): Can use -g now.
10742 (LIBGCC2_CFLAGS): Compile with -mrelax.
10743
8a0b86f5
SC
107442002-08-14 Stephane Carrez <stcarrez@nerim.fr>
10745
10746 * doc/invoke.texi: Document -minmax for 68HC12.
10747
10748 * config/m68hc11/m68hc11.md ("umaxqi3"): Use TARGET_MIN_MAX.
10749 ("uminqi3"): Likewise.
10750 ("uminhi3", "umaxhi3"): Likewise.
10751
10752 * config/m68hc11/m68hc11.h (MASK_MIN_MAX): Define.
10753 (TARGET_MIN_MAX): Define.
10754 (TARGET_SWITCHES): New option -minmax/-mnominmax.
10755
d6381f4e
SC
107562002-08-14 Stephane Carrez <stcarrez@nerim.fr>
10757
10758 * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build __far_trampoline.
10759 (MULTILIB_OPTIONS): Must also generate for -mlong-calls.
10760
10761 * config/m68hc11/larith.asm: Put a mode for ELF ABI flags.
10762 (ret, declare, farsym): New gas macros.
10763 (__premain, exit, abort, _cleanup, memcpy, memset, ___adddi3,
10764 ___subdi3, ___notdi2, __mulhi32, __mulsi3): Use them to use 'rtc'
10765 and declare the symbol far when compiled with -mlong-calls.
5ce6f47b 10766 (__far_trampoline): New for 68HC12 trampoline code to invoke a
d6381f4e
SC
10767 far handler using jsr/bsr.
10768
10769 * config/m68hc11/m68hc11-crt0.S: Put a mode for ELF ABI flags.
10770 (jsr): New macro to transform a 'jsr' into a 'call'.
10771
058edcdb
SC
107722002-08-14 Stephane Carrez <stcarrez@nerim.fr>
10773
10774 * doc/invoke.texi: Document -mlong-calls for 68HC12.
10775
10776 * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__USE_RTC__ when
10777 -mlong-calls is specified.
5ce6f47b 10778 (ASM_DECLARE_FUNCTION_NAME): Define to generate .far and .interrupt
058edcdb
SC
10779 assembler directives.
10780 (TARGET_LONG_CALL, MASK_LONG_CALL): Declare.
10781 (TARGET_SWITCHES): Add -mlong-calls options.
10782 (current_function_far): Declare.
10783
10784 * config/m68hc11/m68hc11.c (m68hc11_initial_elimination_offset): Take
10785 into account the page register saved on the stack.
10786 (m68hc11_override_options): Take into account -mlong-calls option.
10787 (m68hc11_asm_file_start): Put a mode for the ELF flags ABI.
10788
10789 * config/m68hc11/m68hc11.md ("*return_32bit"): Return rtc
10790 if the function is going to be in 68HC12 banked memory (-mlong-calls).
10791 ("*return_16bit"): Likewise.
10792 ("*return_void"): Likewise.
10793 ("call", "call_value"): Use call for a far function call.
10794
c79043f3
NB
107952002-08-14 Neil Booth <neil@daikokuya.co.uk>
10796
10797 * toplev.c (parse_options_and_default_flags): Don't call
10798 post_options here.
10799 (general_init): Initialize GC, pools and tree hash here,
10800 instead of lang_independent_init.
10801 (lang_independent_init): Rename backend_init.
10802 (do_compile): Call post_options hook; exit early if there
10803 have been errors after switch processing.
10804 (toplev_main): Update.
10805
6bf346d4
GDR
108062002-08-14 Gabriel Dos Reis <gdr@nerim.net>
10807
10808 * c-pretty-print.h: Guard against multiple inclusion.
10809 Robustify macros.
10810 (pp_c_attributes): Declare.
10811 * c-pretty-print.c (pp_c_attributes): New function.
10812
cbf2f479
KG
108132002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10814
10815 * m68k.c (m68k_output_function_prologue,
10816 m68k_output_function_epilogue): Delete versions for DPX2/MOTOROLA
10817 and NEWS/MOTOROLA.
10818 * genattrtab.c: Remove dpx2 comment.
10819 * libgcc2.c (__enable_execute_stack): Delete versions for
10820 NeXT/__MACH__, __convex__, __sysV88__, __pyr__ and
10821 sony_news/SYSTYPE_BSD.
10822 * longlong.h: Delete code for __a29k__, _AM29K, __clipper__,
10823 __gmicro__, __i860__, __NeXT__ and __pyr__.
10824 * rtl.h: Remove convex comment.
10825 * varasm.c: Likewise.
10826
d3969c34
KG
108272002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10828
10829 * c-opts.c (lang_flags): Const-ify.
10830 * ra-build.c (undef_table): Likewise.
10831 * ra.c (eliminables): Likewise.
10832
df89f8e7
GDR
108332002-08-14 Gabriel Dos Reis <gdr@nerim.net>
10834
10835 * tree.h: Guard against multiple inclusion.
10836
cf87d551
HPN
108372002-08-14 Hans-Peter Nilsson <hp@bitrange.com>
10838
10839 * reload1.c (reload_cse_simplify): Before checking
10840 REG_FUNCTION_VALUE_P, check REG_P.
10841
a43c8986
GK
108422002-08-13 Geoffrey Keating <geoffk@redhat.com>
10843
10844 * Makefile.in (attribs.o): Remove $(OBSTACK_H) dependency.
10845
29337351
NB
108462002-08-13 Neil Booth <neil@daikokuya.co.uk>
10847
10848 * c-opts.c (c_common_init_options): Extra braces needed.
10849
8202c8c4
R
10850Tue Aug 13 17:40:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
10851
10852 * sh.c (sh_init_builtins): Add PARAMS to declaration.
10853 (sh_media_init_builtins, sh_expand_builtin): Likewise.
10854 (sh_expand_unop_v2sf): Use PARAMS for variable declaration.
10855 (sh_expand_binop_v2sf): Likewise.
10856 * sh-protos.h (sh_expand_unop_v2sf): Add PARAMS to declaration.
10857 (sh_expand_binop_v2sf, sh_cfun_interrupt_handler_p): Likewise.
10858 (sh_initialize_trampoline): Likewise.
10859
07893d4f
UW
108602002-08-13 Ulrich Weigand <uweigand@de.ibm.com>
10861
10862 * s390-modes.def [CCL1, CCL2, CCT1, CCT2, CCT3, CCUR, CCSR]: Declare
10863 new condition code modes.
10864 s390.c (s390_match_ccmode_set): Handle those new CC modes.
10865 (s390_select_ccmode): Likewise.
10866 (s390_branch_condition_mask): Likewise.
10867
10868 * s390-protos.h (s390_tm_ccmode): Declare.
10869 s390.c (s390_tm_ccmode): New function.
10870 (s390_match_ccmode): Allow VOIDmode as REQ_MODE.
10871
10872 * s390.md ("*cmpdi_tm2"): Rename to "*tmdi_ext".
10873 ("*cmpsi_tm2"): Rename to "*tmsi_ext".
10874 ("*cmpqi_tm2"): Rename to "*tmqi_ext".
10875
10876 ("*cmpdi_tm_reg", "*cmpdi_tm_mem", "*cmpsi_tm_reg", "*cmpsi_tm_mem",
10877 "*cmphi_tm_sub","*cmphi_cct_0", "*cmpqi_tm", "*cmpqi_tm_sub",
10878 "*cmpqi_cct_0", "*tm_0"): Remove, replace by ...
10879 ("*tmdi_reg", "*tmsi_reg", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem",
10880 "*tmqi_mem", "*tmhi_full", "*tmqi_full"): ... these new patterns.
10881
10882 ("*ltgr", "*cmpdi_ccs_0_64", "*cmpdi_ccs_0_31", "*ltr", "*icm15",
5ce6f47b 10883 "*icm15_cconly", "*cmpsi_ccs_0", "*icm3", "*cmphi_ccs_0", "*icm1",
07893d4f
UW
10884 "*cmpqi_ccs_0"): Remove, replace by ...
10885 ("*tstdi_sign", "*tstdi", "*tstdi_cconly", "*tstdi_cconly_31",
5ce6f47b 10886 "*tstsi", "*tstsi_cconly", "*tstsi_cconly2", "*tsthi", "*tsthi_cconly",
07893d4f
UW
10887 "*tstqi", "*tstqi_cconly"): ... these new patterns.
10888
10889 ("*cmpsidi_ccs"): Remove, replace by ...
10890 ("*cmpsi_ccs_sign"): ... this new pattern.
10891 ("*cmpdi_ccs_sign", "*cmpdi_ccu_zero"): New patterns.
10892
10893 ("*cmpqi_ccu_0", "*cmpqi_ccu_immed"): Remove, replace by ...
10894 ("*cli"): ... this new pattern.
10895
10896 ("*adddi3_sign", "*adddi3_zero_cc", "*adddi3_zero_cconly",
10897 "*adddi3_zero", "*adddi3_cc", "*adddi3_cconly", "*adddi3_cconly2"):
10898 New patterns.
10899 ("adddi3_64"): Rename to "*adddi3_64".
10900 ("adddi3_31"): Replace by insn and splitter "*adddi3_31".
10901 ("adddi3"): Adapt expander.
10902
10903 ("*addsi3_cc"): Allow "general_operand" for operand 2.
5ce6f47b 10904 ("*addsi3_carry1_cc", "*addsi3_carry1_cconly",
07893d4f
UW
10905 "*addsi3_carry2_cc", "*addsi3_carry2_cconly"): New patterns.
10906
10907 ("addhi3", "addqi3"): Remove, replace by ...
10908 ("*addsi3_sign", "*addsi3_sub"): ... these new patterns.
10909
10910 ("*subdi3_sign", "*subdi3_zero_cc", "*subdi3_zero_cconly",
10911 "*subdi3_zero", "*subdi3_cc", "*subdi3_cconly"): New patterns.
10912 ("subdi3"): Replace by insn and splitter "*subdi3_31".
10913 ("subdi3"): New expander.
10914
10915 ("*subsi3_borrow_cc", "*subsi3_borrow_cconly"): New patterns.
10916
10917 ("subhi3", "subqi3"): Remove, replace by ...
10918 ("*subsi3_sign", "*subsi3_sub"): ... these new patterns.
10919
10920 ("*muldi3_sign"): New pattern.
10921 ("muldi3"): Do not clobber CC.
10922 ("mulsi3"): Likewise.
10923 ("mulsi_6432"): Likewise.
10924
db62867b
DC
109252002-08-13 Denis Chertykov <denisc@overta.ru>
10926
10927 * config/avr/avr.md: Call CC_STATUS_INIT in all peepnoles
8537ed68 10928 which can change CC0.
db62867b 10929
8ba46434
R
10930Tue Aug 13 14:49:20 2002 J"orn Rennecke <joern.rennecke@superh.com>
10931
10932 * gcse.c (adjust_libcall_notes): New function.
10933 (do_local_cprop): Use it. Add fourth parameter. Changed caller.
10934
8733892f
NS
109352002-08-13 Nathan Sidwell <nathan@codesourcery.com>
10936
10937 * libgcc2.c (L_bb): Remove unneeded #includes.
10938 (__global_counters, __gthreads_active): Remove unused globals.
10939 (__bb_exit_func): Merge counts into files rather than appending.
10940 * Makefile.in (INTERNAL_CFLAGS): Move COVERAGE_FLAGS from here ...
10941 (ALL_CFLAGS): ... to here.
10942
f4769721
DC
109432002-08-13 Denis Chertykov <denisc@overta.ru>
10944
10945 * config/ip2k/ip2k.c (commands_in_file): Variable removed.
10946 (function_epilogue): Don't calculate function size.
10947 (ip2k_set_compare): Don't use lookup_const_double.
10948 (asm_file_start): Initialization of commands_in_file removed.
10949 (asm_file_end): Output of commands_in_file removed.
5ce6f47b 10950
f4769721
DC
10951 * config/ip2k/ip2k.c (CPP_PREDEFINES): Remove definition of
10952 __INT_MAX__.
10953
c31cddfd
NB
109542002-08-13 Neil Booth <neil@daikokuya.co.uk>
10955
10956 * c-opts.c (c_common_init_options): Check option array is
10957 sorted if checking enabled.
10958
f076f0ce
GDR
109592002-08-13 Gabriel Dos Reis <gdr@nerim.net>
10960
10961 * c-pretty-print.c: #include "c-tree.h".
10962 (pp_c_simple_type_specifier): Tweak.
10963 (pp_c_storage_class_specifier): New.
10964 (pp_c_function_specifier): Likewise.
10965 (pp_c_declaration_specifiers): Likewise.
10966 (pp_c_init_declarator): Likewise.
10967 (pp_c_declaration): Likewise.
10968 (pp_c_direct_declarator): Stub.
10969 (pp_c_declarator): Likewise.
10970 (pp_c_parameter_declaration): Likewise.
10971
f4ff5a69
NB
109722002-08-13 Neil Booth <neil@daikokuya.co.uk>
10973
10974 * c-opts.c (deps_seen, deps_file, deferred_count, deferred_size,
10975 handle_deferred_opts, sanitize_cpp_opts, defer_opt,
10976 struct deferred_opt): New.
10977 (COMMAND_LINE_OPTIONS): Add -M*.
10978 (missing_arg): Update.
10979 (c_common_decode_option): Handle -M*.
10980 (c_common_post_options): Handle -M*. Use sanitize_cpp_opts;
10981 don't call cpp_post_options.
10982 (c_common_finish, check_deps_environment_vars): Update.
10983 * cppfiles.c (stack_include_file, handle_missing_header): Update.
10984 * cpphash.h (CPP_PRINT_DEPS): Remove.
10985 * cppinit.c: Don't include version.h.
10986 (cpp_create_reader): Don't call deps_init. Initialize
10987 warn_long_long.
10988 (cpp_read_main_file): Init deps if necessary.
10989 (cpp_destroy): Conditionally free deps.
10990 (cpp_finish): Update.
10991 (no_tgt): Remove.
10992 (COMMAND_LINE_OPTIONS, cpp_handle_option): Remove -M*.
10993 (cpp_post_options): Rename post_options.
10994 * cpplib.h (struct cpp_options): Remove some dependency options;
10995 move others to a new structure.
10996 (cpp_post_options): Remove.
10997 (cpp_finish): Comment.
10998 * fix-header.c (read_scan_file): Don't call cpp_post_options.
10999
34116c2a
HPN
110002002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
11001
11002 * config/mmix/mmix.md (define_constants): Add MMIX_rR_REGNUM.
11003 ("divdi3", "*divdi3_nonknuth", "moddi3", "*moddi3_nonknuth"): Mark
11004 MMIX_rR_REGNUM as clobbered.
11005 * config/mmix/mmix.h (MMIX_REMAINDER_REGNUM): Use MMIX_rR_REGNUM.
11006
9b32718c
GDR
110072002-08-12 Gabriel Dos Reis <gdr@nerim.net>
11008
11009 * diagnostic.h (output_formatted_scalar): Rename from
5ce6f47b 11010 output_formatted_integer.
9b32718c
GDR
11011 * diagnostic.def: Add DK_DEBUG.
11012 * diagnostic.c (output_decimal): Adjust.
11013 (output_long_decimal): Likewise.
11014 (output_unsigned_decimal): Likewise.
11015 (output_octal): Likewise.
11016 (output_long_octal): Likewise.
11017 (output_hexadecimal): Likewise.
11018 (output_long_hexadecimal): Likewise.
11019 * c-pretty-print.c (pp_c_type_specifier): New function.
11020 (pp_c_specifier_qualifier_list): Likewise.
11021 (pp_c_abstract_declarator): Likewise.
11022 (pp_c_char): Replace pp_format_integer with pp_format_scalar.
11023
032613df
DE
110242002-08-12 David Edelsohn <edelsohn@gnu.org>
11025
11026 * doc/trouble.texi (Disappointments): Add static constructor and
11027 destructor dependency information for AIX.
11028
a3737481
NB
110292002-08-12 Neil Booth <neil@daikokuya.co.uk>
11030
11031 * cpphash.h (struct printer): New from cppmain.c.
11032 (cpp_reader): New member.
11033 * cppmain.c (struct printer): Move to cpphash.h.
11034 (options, print): Remove.
11035 (account_for_newlines, print_line, maybe_print_line,
11036 cpp_preprocess_file, setup_callbacks, scan_translation_unit,
11037 scan_translation_unit_trad, cb_line_change, cb_ident,
11038 cb_define, cb_undef, cb_include, cb_file_change, dump_macro,
11039 cb_def_pragma): Make reentrant.
11040
d71f7700
KG
110412002-08-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11042
11043 * real.c (ieee_64): Always define.
11044 (ieee_113): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
11045 (dec_h): Not used yet, hide it.
11046 (emdnorm): Mark parameter in ATTRIBUTE_UNUSED. Guard label with
11047 macro controlling use.
11048 (TFbignan, TFlittlenan): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
11049
c16576e6
JH
11050Mon Aug 12 12:48:20 CEST 2002 Jan Hubicka <jh@suse.cz>
11051
11052 * i386.md (tablejump): Sign extend the operand.
11053 * i386.c (classify_argument): Fix missed case from previous patch.
11054
460bd0e3
NB
110552002-08-12 Neil Booth <neil@daikokuya.co.uk>
11056
11057 * c-common.c (STDC_0_IN_SYSTEM_HEADERS, c_common_init): Move
11058 to c-copts.c.
11059 (warn_multichar): Die.
11060 (cb_register_builtins): Export.
11061 * c-common.h (warn_multichar, preprocess_file): Remove.
11062 (cb_register_builtins): New.
11063 * c-lang.c (c_init): Remove.
11064 (LANG_HOOKS_INIT): Use c_objc_common_init.
11065 * c-lex.c (init_c_lex): Don't canonicalize filename.
11066 * c-opts.c (in_fname, STDC_0_IN_SYSTEM_HEADERS): New.
11067 (preprocess_file): Make static. Update for cpplib.
11068 (c_common_decode_option): Remove warn_multichar. Use in_fname.
11069 (c_common_post_options): Set some cpp options here.
11070 (c_common_init): Move from c-common.c.
11071 * cppinit.c (cpp_post_options): Don't canonicalize in_fname.
11072 * cpplib.h (struct cpp_options): Remove in_fname.
11073 (cpp_preprocess_file): Update.
11074 * cppmain.c (cpp_preprocess_file): Update for new prototypes.
11075
f3f268dd
KG
110762002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11077
11078 * config.gcc (mips*-*-netbsd*): Include ${tm_file}.
11079
f0201fba
KG
110802002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11081
11082 * i370.h (TARGET_CPU_CPP_BUILTINS): Remove spurious trailing
11083 backslash in comment preceeding macro definition.
11084 * i370/linux.h (TARGET_OS_CPP_BUILTINS): Likewise.
11085 * i370/mvs.h (TARGET_OS_CPP_BUILTINS): Likewise.
11086 * i370/oe.h (TARGET_OS_CPP_BUILTINS): Likewise.
11087
e56fc090
HPN
110882002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
11089
11090 * expr.c (store_expr): In condition for checking if value is
11091 generated in TARGET, move call to expr_size last.
11092
76c3e73e
NB
110932002-08-11 Neil Booth <neil@daikokuya.co.uk>
11094
11095 * c-common.c (c_common_init): Call preprocess_file instead.
11096 (c_common_finish): Move to c-opts.c.
11097 * c-common.h (preprocess_file): new.
11098 * c-opts.c (out_fname, out_stream, deps_append, preprocess_file,
11099 check_deps_environment_vars, c_common_finish): New.
11100 (c_common_decode_option): Update for out_fname and dependencies.
11101 * cppinit.c (init_dependency_output, output_deps): Remove.
11102 (cpp_destroy): Update prototype.
11103 (cpp_add_dependency_target): New.
11104 (cpp_read_main_file): Don't overlay a buffer.
11105 (cpp_finish): Take a deps output stream and write deps to it.
11106 Return the error count.
11107 (cpp_post_options): Don't canonicalize out_fname, or do anything
11108 with dependencies.
11109 * cpplib.h (struct cpp_options): Remove out_fname and
11110 preprocess_only.
11111 (cpp_add_dependency_target): New.
11112 (cpp_destroy, cpp_finish, cpp_preprocess_file): Update.
11113 * cppmain.c (cpp_preprocess_file): Update prototype. Don't
11114 set preprocess_only. Don't handle the output stream directly.
11115
e0c32c62
KG
111162002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11117
11118 * dsp16xx.c (print_operand): Fix format specifier.
11119 * dsp16xx.md: Avoid automatic aggregate initialization.
11120 * frv.h (REG_CLASS_FROM_LETTER): Avoid char as array index.
11121 * h8300.c (emit_a_rotate, h8300_adjust_insn_length): Avoid U
11122 integer constant modifier.
11123 * ip2k.c (ip2k_set_compare): Avoid signed/unsigned warning.
11124 * mmix-protos.h (mmix_use_simple_return): Move outside TREE_CODE
11125 guards.
11126 * sh/netbsd-elf.h (FUNCTION_PROFILER): Fix format specifier.
11127 * v850.c (v850_select_section): Mark parameter with
11128 ATTRIBUTE_UNUSED.
11129 * global.c (global_alloc): Const-ify.
11130 * ra-colorize.c (hardregset_to_string): Fix format specifier.
11131
7ae8cf75
KG
111322002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11133
11134 * darwin-c.c (darwin_pragma_options): Const-ify.
11135 * darwin.c (machopic_non_lazy_ptr_name,
11136 machopic_validate_stub_or_non_lazy_ptr): Likewise.
11137 (machopic_indirect_data_reference): Wrap variables in macros
11138 controlling their use.
11139 (machopic_finish, update_non_lazy_ptrs, update_stubs): Const-ify.
11140 (machopic_select_section): Use parentheses around && within ||.
11141 * i386/darwin.h (ASM_OUTPUT_ALIGN): Avoid ambiguous-else.
11142
8819cab5
KG
111432002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11144
11145 * ip2k.c (mdr_resequence_xy_yx, mdr_propagate_reg_equivs,
11146 mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
11147 ip2k_adjust_stack_ref, mdr_try_move_pushes, mdr_try_propagate_clr,
11148 ip2k_xexp_not_uses_reg_for_mem, mdr_try_propagate_move,
11149 mdr_try_remove_redundant_insns, track_w_reload,
11150 mdr_try_wreg_elim): Make function static to match prototype.
11151 * mmix.c (mmix_target_asm_function_epilogue): Likewise. Mark
11152 parameter with ATTRIBUTE_UNUSED.
11153
ab2877a3
KG
111542002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11155
11156 * arc.c (arc_init): Don't use ISO C style function definitions.
11157 * arm.c (count_insns_for_constant, thumb_far_jump_used_p,
11158 arm_get_strip_length, arm_strip_name_encoding): Likewise.
11159 * avr.h (progmem_section): Likewise.
11160 * h8300.c h8300_asm_insn_count): Likewise.
11161 * m32r.c (init_idents): Likewise.
11162 * s390.c (s390_split_branches, s390_chunkify_pool): Likewise.
11163 * sh.c (sh_cfun_interrupt_handler_p): Likewise.
11164 * xtensa.c (xtensa_build_va_list): Likewise.
11165
08767a6f
NB
111662002-08-11 Neil Booth <neil@daikokuya.co.uk>
11167
11168 * c-common.h (enum c_language_kind): Emphasize that clk_c is 0.
11169 * c-opts.c (parse_option): Rename find_opt.
11170 (set_std_c99): New function.
11171 (COMMAND_LINE_OPTIONS): Handle -remap and -o. Remove OPT_std_bad.
11172 (missing_arg): Remove OPT_std_bad. Handle -o.
11173 (c_common_decode_option): Handle input and output file names,
11174 -o and -remap. Clean up -std= handling.
11175 * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_o and OPT_remap.
11176 (cpp_handle_option): Similarly. Don't handle filenames.
11177
db01f480
JH
11178Sun Aug 11 14:43:17 CEST 2002 Jan Hubicka <jh@suse.cz>
11179
11180 * i386.c (classify_argument): Fix computing of field's offsets.
11181
a7701995
AJ
111822002-08-11 Andreas Jaeger <aj@suse.de>
11183
11184 PR target/7531:
11185 * doc/invoke.texi (i386 and x86-64 Options): Document -mcmodel.
11186
2516f236
ZL
111872002-08-10 Ziemowit Laski <zlaski@apple.com>
11188
11189 * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Replace
11190 reference to clk_objective_c with flag_objc.
11191 * config/i386/i386-interix.h (TARGET_OS_CPP_BUILTINS):
11192 Likewise.
11193 * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Likewise.
11194
f749a36b
NB
111952002-08-10 Neil Booth <neil@daikokuya.co.uk>
11196
11197 * c-opts.c (set_std_cxx98, set_std_c89): New.
11198 (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
11199 (c_common_decode_option): Handle new switches from cppinit.c.
11200 Add -std=gnu++98.
11201 * cppinit.c (set_lang): Rename cpp_set_lang. Export.
11202 (no_arg, no_num): Remove.
11203 (COMMAND_LINE_OPTIONS): Move more to c-opts.c. Drop all lang-
11204 switches apart from -lang-objc and lang-asm.
11205 (cpp_handle_option): Similarly.
11206 * cpplib.h (cpp_set_lang): New.
11207 * doc/cppopts.texi, doc/invoke.texi: Document -std=c++98,
11208 -std=gnu++98.
11209 * objc/lang-specs.h: Remove -ansi.
11210
77abb5d8
JH
11211Sat Aug 10 19:59:43 CEST 2002 Jan Hubicka <jh@suse.cz>
11212 Graham Stott
11213
11214 * cfg.c (redirect_edge_succ_nodup): Avoid overflows due to roundoff
11215 errors.
11216
fac37dc4
KG
112172002-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11218
d950dee3
KG
11219 * emit-rtl.c (emit_jump_insn_before, emit_call_insn_before,
11220 emit_jump_insn): Fix uninitialized variable.
11221 * gcov.c (init_line_info): Likewise.
11222 * genautomata.c (transform_3): Add braces around ambiguous
11223 else.
11224 * ifcvt.c (cond_exec_process_insns): Mark parameter with
11225 ATTRIBUTE_UNUSED.
11226 * ra-build.c (parts_to_webs_1): Fix uninitialized variable.
11227 * regrename.c (copyprop_hardreg_forward): Fix uninitialized
11228 variable.
11229
fac37dc4
KG
11230 * gengtype.c (write_gc_structure_fields): Avoid signed/unsigned
11231 warnings in output files.
11232
0f7866e7
ZL
112332002-08-09 Ziemowit Laski <zlaski@apple.com>
11234
11235 * c-common.c (flag_objc): New.
11236 * c-common.h (c_language_kind): Get rid of clk_objective_c
11237 enum value.
11238 (flag_objc): New extern declaration.
11239 * c-decl.c (implicitly_declare): Call objc_check_decl
11240 instead of maybe_objc_check_decl.
11241 (finish_decl): Likewise.
11242 (grokfield): Likewise.
11243 (finish_struct): Likewise.
11244 * c-lang.c (maybe_objc_check_decl): Rename to objc_check_decl.
11245 (maybe_objc_comptypes): Rename to objc_comptypes.
a7701995 11246 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
11247 objc_message_selector.
11248 * c-lex.c (lex_charconst): Remove uses of clk_objective_c,
11249 replace with flag_objc as needed.
11250 * c-opts.c (c_common_init_options): Likewise.
11251 (c_common_decode_option): Likewise.
11252 * c-parse.in (init_reswords): Likewise.
11253 * c-tree.h (maybe_objc_check_decl): Rename to objc_check_decl.
11254 (maybe_objc_comptypes): Rename to objc_comptypes.
a7701995 11255 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
11256 objc_message_selector.
11257 * c-typeck.c (comptypes): Call objc_comptypes instead of
11258 maybe_objc_comptypes, and/or objc_message_selector instead of
11259 maybe_building_objc_message_expr.
11260 (comp_target_types): Likewise.
11261 (convert_for_assignment): Likewise.
11262 (warn_for_assignment): Likewise.
11263 * cppinit.c (init_builtins): Set __OBJC__ manifest constant
11264 independently of those for other languages.
11265 * objc/objc-act.c (maybe_objc_comptypes): Delete.
11266 (maybe_objc_check_decl): Delete.
a7701995 11267 (maybe_building_objc_message_expr): Rename to
0f7866e7
ZL
11268 objc_message_selector.
11269 * objc/objc-lang.c (objc_init_options): Use clk_c instead of
11270 clk_objective_c; set flag_objc flag.
11271
c512fd7b
TM
112722002-08-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
11273
11274 * ifcvt.c (find_if_case_2): Test correct basic block for size.
11275
5e1bf043 112762002-08-09 Dale Johannesen <dalej@apple.com>
c512fd7b 11277
5e1bf043
DJ
11278 * config/rs6000/rs6000.md: Add sibcall patterns.
11279 * config/rs6000/rs6000.h (FUNCTION_OK_FOR_SIBCALL): Define.
11280 * config/rs6000/rs6000.c (rs6000_ra_ever_killed):
11281 Rewritten to handle sibcalls.
11282 * config/rs6000/rs6000.c (function_ok_for_sibcall): New.
11283 * config/rs6000/rs6000-protos.h (function_ok_for_sibcall): New.
11284
2043c38e
NS
112852002-08-08 Nathan Sidwell <nathan@codesourcery.com>
11286
11287 * profile.c (da_file_name): New static var.
11288 (init_branch_prob): Initialize it.
11289 (end_branch_prob): Remove da file.
11290
11291 * Makefile.in (stage1_build): Pass empty COVERAGE_FLAGS.
41685063 11292 * configure.in (coverage_flags): Default to nothing.
2043c38e
NS
11293 * configure: Rebuilt.
11294
4b7091eb
NB
112952002-08-09 Neil Booth <neil@daikokuya.co.uk>
11296
11297 * Makefile.in (c-opts.o): Update
11298 * c-opts.c: Include intl.h.
11299 (print_help): Move from cppinit.c. Remove unused options.
11300 (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
11301 (missing_arg): Complain for switches without an argument.
11302 (c_common_decode_option): Reject missing joined arguments.
11303 Handle new switches from cppinit.c.
11304 * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
11305 (cpp_handle_option): Similarly.
11306 (print_help): Moved to c-opts.c.
11307 * cpplib.h (struct cpp_options): Remove help_only.
11308 * gcc.c (cpp_unique_options): Remove -$.
11309 * doc/cppopts.texi: Undocument -h.
11310
9e20be0c
JJ
113112002-08-08 Jakub Jelinek <jakub@redhat.com>
11312
11313 * config/i386/i386.c (legitimate_constant_p): UNSPEC_TP is not
11314 legitimate constant.
11315 (legitimate_pic_operand_p): Neither pic operand.
11316 (legitimate_address_p): But legitimate address.
11317 (get_thread_pointer): Generate MEM/u instead of CONST around
11318 UNSPEC_TP.
11319 (print_operand): Remove printing of UNSPEC_TP.
11320 (print_operand_address): And print it here.
11321
7b9be5c7 113222002-08-08 Devang Patel <dpatel@apple.com>
9e20be0c 11323
a7701995
AJ
11324 * objc/objc-act.c (build_selector_translation_table): Issue warning,
11325 when -Wselector is used,if method for which selector is being
7b9be5c7 11326 created does not exist.
a7701995 11327
5615d8fd
SC
113282002-08-08 Stephen Clarke <stephen.clarke@superh.com>
11329
11330 * config/sh/sh.c (prepare_move_operands): Only call
11331 target_reg_operand if TARGET_SHMEDIA.
a7701995 11332
3b85fe5f
JJ
113332002-08-08 Jakub Jelinek <jakub@redhat.com>
11334
11335 * config/rs6000/rs6000.h, config/rs6000/aix.h,
11336 config/rs6000/darwin.h, config/rs6000/linux64.h: Revert last
11337 two patches.
11338 * config/rs6000/sysv4.h: Likewise, remove #undef ADJUST_FIELD_ALIGN.
11339
e10c79fe
LB
113402002-08-08 Lars Brinkhoff <lars@nocrew.org>
11341 Richard Henderson <rth@redhat.com>
11342
11343 * emit-rtl.c (gen_rtx_REG): After reload, only return
11344 frame_pointer_rtx or hard_frame_pointer_rtx if frame_pointer_needed.
11345
aa2a83dc
JJ
113462002-08-08 Jakub Jelinek <jakub@redhat.com>
11347
11348 * config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove.
11349 * config/rs6000/rs6000.c (rs6000_field_alignment): Move...
11350 * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the
11351 macro.
11352
aeaf4d25
AN
113532002-08-08 Adam Nemet <anemet@lnxw.com>
11354
11355 * config/arm/arm.c (thumb_unexpanded_epilogue): Stack the PIC
11356 register.
11357 (thumb_expand_prologue): Likewise.
11358 (thumb_output_function_prologue): Likewise.
11359 * config/arm/arm.h (THUMB_INITIAL_ELIMINATION_OFFSET): Account for
11360 the additional push of the PIC register.
11361
22aa533e
NS
113622002-08-08 Nathan Sidwell <nathan@codesourcery.com>
11363
11364 * configure.in (enable_coverage): New enable switch.
11365 * configure: Rebuilt.
11366 * Makefile.in (COVERAGE_FLAGS, coverageexts): New variables.
11367 (INTERNAL_CFLAGS): Append COVERAGE_FLAGS.
11368 (ALL_FLAGS): Reorder so INTERNAL_CFLAGS comes after CFLAGS.
11369 (mostlyclean): Remove coverage files.
11370 * doc/install.texi: Document enable_coverage.
11371
11372 * cp/Make-lang.in (c++.mostlyclean): Remove coverage files.
11373 * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
11374 * f/Make-lang.in (f.mostlyclean): Remove coverage files.
11375 * java/Make-lang.in (java.mostlyclean): Remove coverage files.
11376 * objc/Make-lang.in (objc.mostlyclean): Remove coverage files.
11377 * treelang/Make-lang.in (treelang.mostlyclean): Remove coverage
11378 files.
a7701995 11379
18bdccaa
NB
113802002-08-08 Neil Booth <neil@daikokuya.co.uk>
11381
11382 * c-opts.c (cpp_opts): New.
11383 (COMMAND_LINE_OPTIONS): Add switches from cppinit.c.
11384 (c_common_decode_options): Handle cpplib switches.
11385 (c_common_init_options): Set cpp_opts.
11386 * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
11387 (cpp_handle_option): Similarly.
11388
774b5662
DE
113892002-08-08 David Edelsohn <edelsohn@gnu.org>
11390
11391 * config/rs6000/aix.h (TARGET_ALTIVEC): Define to 0.
11392 (TARGET_ALTIVEC_ABI): Same.
11393 (TARGET_ALTIVEC_VRSAVE): Same.
11394
11395 * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Check
11396 icode not CODE_FOR_nothing. Change switch to if.
11397
957e9e48
AM
113982002-08-08 Alan Modra <amodra@bigpond.net.au>
11399
11400 * config/rs6000/rs6000.h (ASM_CPU_SPEC): Pass -mpower4 when cpu=power4.
11401
daf06049
JJ
114022002-08-08 Jakub Jelinek <jakub@redhat.com>
11403
11404 * stor-layout.c (place_union_field): For bitfields if
11405 PCC_BITFIELD_TYPE_MATTERS and TYPE_USER_ALIGN, set record's
11406 TYPE_USER_ALIGN.
11407
043d39a6
JDA
114082002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
11409
11410 * pa.c (struct deferred_plabel): Constify name field.
11411
34bb92e3
NB
114122002-08-07 Neil Booth <neil@daikokuya.co.uk>
11413
11414 * cppmacro.c (_cpp_builtin_macro_text): Remove unused variable.
11415
3ec5d64d
JDA
114162002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
11417
11418 * configure.in (PREFIX_INCLUDE_DIR): Don't define if prefix and
11419 local_prefix are the same.
11420 * configure: Rebuilt.
11421
ad9335eb
JJ
114222002-08-07 Jakub Jelinek <jakub@redhat.com>
11423 Richard Henderson <rth@redhat.com>
11424
11425 * stor-layout.c (place_union_field): Apply ADJUST_FIELD_ALIGN
11426 to type_align when PCC_BITFIELD_TYPE_MATTERS. Only apply
11427 ADJUST_FIELD_ALIGN if not DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
11428 (place_field): Likewise.
11429 * config/i386/i386.c (x86_field_alignment): Don't check
11430 DECL_USER_ALIGN here.
11431 * config/rs6000/rs6000.c (rs6000_field_alignment): New.
11432 * config/rs6000/rs6000-protos.h (rs6000_field_alignment): New
11433 prototype.
11434 * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): Define.
11435 * config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Remove.
11436 * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Remove.
11437 * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Remove.
11438 * config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Remove.
11439 * doc/tm.texi (ADJUST_FIELD_ALIGN): Update description.
11440
0b6f2917
NB
114412002-08-07 Neil Booth <neil@daikokuya.co.uk>
11442
11443 * Makefile.in (c-opts.o, c-common.o, C_AND_OBJC_OBJS): Update.
11444 * c-common.c: Don't include tree-inline.h.
11445 (c_common_init_options, c_common_post_options): Move to c-opts.c.
11446 * c-common.h (c_common_decode_option): New.
11447 * c-decl.c (c_decode_option): Remove.
11448 * c-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option.
11449 * c-opts.c: New file.
11450 * c-tree.h (c_decode_option): Remove.
11451 * doc/passes.texi: Update.
11452 * objc/objc-act.c (objc_decode_option): Remove.
11453 * objc/objc-act.h (objc_decode_option): Remove.
11454 * objc/ojbc-lang.c (LANG_HOOKS_DECODE_OPTION): Use
11455 c_common_decode_option.
11456
e49ec17d
CD
114572002-08-07 Chris Demetriou <cgd@broadcom.com>
11458
11459 * config/mips/mips.md (sunlt_sf, suneq_sf, sunle_sf): Remove
11460 dependency on TARGET_DOUBLE_FLOAT.
11461
ac1ca451
SC
114622002-08-07 Stephen Clarke <stephen.clarke@superh.com>
11463
11464 * config/sh/lib1funcs.asm (GCC_shcompact_incoming_args): Don't
11465 overwrite callee-save registers. Fix comment.
11466
af34e51e
CD
114672002-08-06 Chris Demetriou <cgd@broadcom.com>
11468
11469 * config/mips/mips.c (override_options): Set MASK_BRANCHLIKELY
11470 in target_flags based on ISA, if it was not set on the command
11471 line. Warn if MASK_BRANCHLIKLEY is set but the ISA does not
11472 support Branch Likely instructions.
11473 * config/mips/mips.h (MASK_BRANCHLIKLEY): New macro.
11474 (TARGET_BRANCHLIKELY): Likewise.
11475 (TARGET_SWITCHES): Add -mbranch-likely and -mno-branch-likely.
11476 (GENERATE_BRANCHLIKELY): Use TARGET_BRANCHLIKELY rather than
11477 ISA_HAS_BRANCHLIKELY.
11478 (ISA_HAS_BRANCHLIKELY): Do not include MIPS16 check.
11479 * doc/invoke.texi: Document new MIPS -mbranch-likely and
11480 -mno-branch-likely options.
11481
2631af95
KG
114822002-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11483
f538618e
KG
11484 * ip2k.c (ip2k_set_compare): Add missing iteration variable.
11485
2631af95
KG
11486 * Makefile.in (dummy-conditions.o): Depend on $(HCONFIG_H) not
11487 $(GCONFIG_H).
11488
1ae0ccb6
AH
114892002-08-06 Aldy Hernandez <aldyh@redhat.com>
11490
8537ed68
ZW
11491 * c-decl.c (duplicate_decls): Error out for incompatible TLS
11492 declarations.
1ae0ccb6 11493
8537ed68 11494 * testsuite/gcc.dg/tls/diag-3.c: New.
1ae0ccb6 11495
8d3e27d1 114962002-08-06 Dale Johannesen <dalej@apple.com>
db4c55f6 11497
8d3e27d1 11498 * c-common.c (fname_decl): Use line number 0 for
8537ed68 11499 __func__, to avoid confusing debuggers.
8d3e27d1 11500
8b219a76
NS
115012002-08-06 Nathan Sidwell <nathan@codesourcery.com>
11502
11503 * gcov.c: Tidy.
11504 (struct line_info, struct coverage): New structures.
11505 (gcov_file_name, gcov_file): Remove globals.
11506 (output_data): Take source file parameter. Fix memory leak. Break
11507 up into ...
11508 (init_line_info, output_line_info, make_gcov_file_name,
11509 accumulate_branch_counts): ... here.
11510 (calculate_branch_probs, function_summary): Adjust.
11511 (main): Adjust.
11512 (function_*): Remove global variables.
11513
317e98c0
NB
115142002-08-06 Neil Booth <neil@daikokuya.co.uk>
11515
11516 * dwarf2out.c: Remove unused macros.
11517
81d41e74
NB
115182002-08-06 Neil Booth <neil@daikokuya.co.uk>
11519
11520 * function.c (TRAMPOLINE_ALIGNMENT): Always defined.
11521
58551c23
NB
115222002-08-06 Neil Booth <neil@daikokuya.co.uk>
11523
11524 * cppinit.c (struct lang_flags): Rename trigraphs std.
11525 (set_lang): Update.
11526 * cpplib.h (struct cpp_options): New member std.
11527 * cppmacro.c (_cpp_builtin_macro_text): Use std.
11528 (collect_args): Flag whether to swallow a possible future
11529 comma pasted with varargs.
11530 (replace_args): Use this flag.
11531 * doc/cpp.texi: Update varargs extension documentation.
11532
daeabcd0
JJ
115332002-08-06 Jakub Jelinek <jakub@redhat.com>
11534
11535 * config/i386/mmintrin.h (__m64): Make the type 64-bit aligned.
11536
39e3a681
JJ
115372002-08-06 Jakub Jelinek <jakub@redhat.com>
11538
9812691e
JJ
11539 * config/i386/i386.c (x86_field_alignment): Apply min for all MODE_INT
11540 and MODE_CLASS_INT modes.
39e3a681 11541
609a87f3
JJ
115422002-08-06 Jakub Jelinek <jakub@redhat.com>
11543
11544 * config.gcc (*-*-linux*): Default to --enable-threads=posix if no
11545 --{enable,disable}-threads is given to configure.
11546 (alpha*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux*,
11547 x86_64-*-linux*, ia64*-*-linux*, m68k-*-linux*, mips*-*-linux*,
11548 powerpc-*-linux-gnualtivec*, powerpc-*-linux*, s390-*-linux*,
11549 s390x-*-linux*, sh-*-linux*, sparc-*-linux*, sparc64-*-linux*):
11550 Remove thread_file setting here.
11551
ff4c5e7b
DE
115522002-08-06 David Edelsohn <edelsohn@gnu.org>
11553
11554 * doc/install.texi (Binaries): Update Bull Freeware URL.
11555
54f3aa9e
GP
115562002-08-06 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
11557
11558 * doc/gcc.texi (Top): Rename Index to Keyword Index.
11559
d19202ba
NS
115602002-08-05 Nathan Sidwell <nathan@codesourcery.com>
11561
11562 * gcov.c (output_data): Round to % to nearest, tweak formatting.
11563
1bed5ee3
JJ
115642002-08-05 Jakub Jelinek <jakub@redhat.com>
11565
11566 * fold-const.c (associate_trees): Only optimize NEGATE_EXPR in one
11567 of the operands into MINUS_EXPR if code is PLUS_EXPR.
11568
84512347
DR
115692002-08-05 Douglas B Rupp <rupp@gnat.com>
11570
11571 * config.gcc (i[34567]86-*-interix*): Replace interix.o with winnt.o
11572 * config/i386/i386-interix.h (TARGET_NOP_FUN_DLLIMPORT,
11573 drectve_section): Define.
11574 * config/i386/t-interix: Replace interix.o rule with winnt.o.
11575 * config/i386/interix.c: Remove.
11576
b835f6f1
GK
115772002-08-05 Geoffrey Keating <geoffk@redhat.com>
11578
11579 * attribs.c: Don't include obstack.h.
11580 * builtins.c: Likewise.
11581 * cfganal.c: Likewise.
11582 * cfgbuild.c: Likewise.
11583 * cfgcleanup.c: Likewise.
11584 * emit-rtl.c: Likewise.
11585 * loop.c: Likewise.
11586 * stmt.c: Likewise.
11587
11588 * Makefile.in (s-gtype): Re-add dependency on $(GTFILES).
11589
fd291392
GDR
115902002-08-05 Gabriel Dos Reis <gdr@nerim.net>
11591
11592 * doc/c-tree.texi (Expression trees): Document VA_ARG_EXPR
11593
054b7507
CD
115942002-08-04 Chris Demetriou <cgd@broadcom.com>
11595
11596 * doc/invoke.texi: Remove duplicated paragraph describing
11597 TARGET_SWITCHES.
11598
6d9f628e
GK
115992002-08-04 Geoffrey Keating <geoffk@redhat.com>
11600
11601 * Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H).
11602 * collect2.h (permanent_obstack): Delete declaration.
11603 * collect2.c (permanent_obstack): Delete definition.
4912a07c 11604 (main): Don't initialize permanent_obstack. Use xstrdup instead.
6d9f628e
GK
11605 * expr.c: Don't include obstack.h.
11606 (permanent_obstack): Delete declaration.
11607 * function.c: Don't include obstack.h.
11608 (permanent_obstack): Delete declaration.
11609 * integrate.c: Don't include obstack.h.
11610 (function_maybepermanent_obstack): Delete declaration.
11611 * print-tree.c (debug_tree): Use x*alloc not permalloc.
11612 * sdbout.c (gen_fake_label): Use x*alloc not permalloc.
11613 * tlink.c (pfgets): Use xstrdup not permanent_obstack.
11614 * toplev.c (lang_independent_init): Rename init_obstacks to init_ttree.
11615 * tree.h: Rename init_obstacks to init_ttree. Remove declarations
11616 of permalloc, expralloc, perm_calloc.
11617 * tree.c (permanent_obstack): Delete definition.
11618 (init_ttree): Rename from init_obstacks.
11619 (permalloc): Delete.
11620 (perm_calloc): Delete.
11621 (dump_tree_statistics): Don't print information about
11622 permanent_obstack.
11623 * varasm.c (assemble_start_function): Use xstrdup instead of
11624 permalloc/strcpy.
11625 (assemble_variable): Likewise.
11626 * config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of
11627 permalloc.
11628 (unicosmk_add_extern): Likewise.
11629 * config/c4x/c4x.c (c4x_external_ref): Likewise.
11630 (c4x_global_label): Likewise.
11631 * config/frv/frv.c (frv_encode_section_info): Likewise.
11632 * config/i386/winnt.c (i386_pe_record_external_function): Likewise.
11633 (i386_pe_record_exported_symbol): Likewise.
11634 * config/mips/mips.c (mips_output_external): Likewise.
11635 (mips_output_external_libcall): Likewise.
11636 * config/pa/pa.c: (permanent_obstack): Delete declaration.
11637 (output_call): Use ggc_strdup instead of allocating on
11638 permanent_obstack.
11639 * config/romp/romp.c: Include ggc.h.
11640 (get_symref): Don't declare permanent_obstack, use ggc_strdup
11641 intead of permanent_obstack.
11642 * config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat
11643 instead of permalloc.
11644 * config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc
11645 instead of permalloc
11646 * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat
11647 instead of permalloc.
11648 * config/vax/vax.c (vms_check_external): Use xmalloc instead of
11649 permalloc.
11650
36a05131
BS
116512002-08-04 Bernd Schmidt <bernds@redhat.com>
11652
11653 Contribute a port developed primarily by Michael Meissner,
11654 Catherine Moore, and Richard Sandiford <rsandifo@redhat.com>.
11655 * config.gcc: Add frv-elf target.
11656 * config/frv/cmovd.c: New file.
11657 * config/frv/cmovh.c: New file.
11658 * config/frv/cmovw.c: New file.
11659 * config/frv/frv-abi.h: New file.
11660 * config/frv/frv-asm.h: New file.
11661 * config/frv/frv-modes.def: New file.
11662 * config/frv/frv-protos.h: New file.
11663 * config/frv/frv.c: New file.
11664 * config/frv/frv.h: New file.
11665 * config/frv/frv.md: New file.
11666 * config/frv/frvbegin.c: New file.
11667 * config/frv/frvend.c: New file.
11668 * config/frv/lib1funcs.asm: New file.
11669 * config/frv/media.h: New file.
11670 * config/frv/modi.c: New file.
11671 * config/frv/t-frv: New file.
11672 * config/frv/uitod.c: New file.
11673 * config/frv/uitof.c: New file.
11674 * config/frv/ulltod.c: New file.
11675 * config/frv/ulltof.c: New file.
11676 * config/frv/umodi.c: New file.
11677 * config/frv/xm-frv.h: New file.
86a0cbcb
BS
11678
11679 * config/frv/media.h: Removed again.
11680
37b8715b
NS
116812002-08-04 Nathan Sidwell <nathan@codesourcery.com>
11682
11683 * gcov.c (bb_file_time): New static variable.
11684 (object_directory): May also be object file.
11685 (preserve_paths): New static variable.
11686 (print_usage): Adjust.
11687 (options): Adjust.
11688 (process_args): Adjust.
11689 (open_files): Simplify. Cope when OBJECT_DIRECTORY is an object
11690 file. Find modification date on bb file.
11691 (read_profile): Don't rewind a NULL file.
11692 (format_hwint): New static function.
11693 (function_summary): Use format_hwint.
11694 (output_data): SOURCE_FILE_NAME is never relative to
11695 OBJECT_DIRECTORY. Use format_hwint. Adjust gcov file name
11696 mangling. Adjust output format to make it more machine readable.
11697 * doc/gcov.texi: Document & clarify semantics.
a7701995 11698
d500c5d7
JM
116992002-08-04 Joseph S. Myers <jsm@polyomino.org.uk>
11700
11701 * doc/include/gcc-common.texi (version-GCC): Increase to 3.3.
11702
ea67fe71
NS
117032002-08-04 Nathan Sidwell <nathan@codesourcery.com>
11704
11705 * gcc.c (cc1_options): Pass output file as auxbase when
11706 appropriate.
11707 * profile.c (init_branch_prob): FILENAME has already had ending
11708 stripped.
11709 * final.c (end_final): Likewise.
11710 * toplev.c (aux_base_name): New global.
11711 (compile_file): Pass aux_base_name to init init_branch_prob and
11712 end_final.
11713 (independent_decode_option, case 'a'): New auxinfo options.
11714 (case 'd'): Protect against mising basename.
11715 (do_compile): Initialize aux_base_name.
11716 * toplev.h (aux_base_name): New global.
11717 * doc/invoke.texi: Adjust documentation.
11718
b23c054d
NS
117192002-08-04 Nathan Sidwell <nathan@codesourcery.com>
11720
11721 * config/i386/i386.c (x86_field_alignment): Remove duplicate test
11722 of TARGET_ALIGN_DOUBLE.
11723
04c1334c 117242002-08-04 Gabriel Dos Reis <gdr@nerim.net>
a7701995 11725
04c1334c
GDR
11726 * diagnostic.c (inform): New function.
11727 * diagnostic.h (inform): Declare.
a7701995 11728
e34eaae5
DE
117292002-08-03 David Edelsohn <edelsohn@gnu.org>
11730
11731 * config/rs6000/rs6000.md (movsi_internal1): Add nop mnemonic.
11732 (movhi_internal): Same.
11733 (movqi_internal): Same.
11734 (movdi_internal64): Same.
11735
11736 * config/rs6000/t-ppccomm (MULTILIB_MATCHES_FLOAT): Add mcpu=405.
11737
11738 * config/rs6000/xcoff.h (SKIP_ASM_OP): Define.
11739 (ASM_OUTPUT_SKIP): Use it. SIZE unsigned.
11740 (COMMON_ASM_OP): Define.
11741 (ASM_OUTPUT_ALIGNED_COMMON): Use it. SIZE unsigned.
11742 Use ALIGN parameter.
11743 (LOCAL_COMMON_ASM_OP): Define.
11744 (ASM_OUTPUT_LOCAL): Use it. SIZE unsigned.
11745
e7b489c8
RS
117462002-08-03 Roger Sayle <roger@eyesopen.com>
11747
11748 * builtins.def: Define new builtin functions exp, expf, expl,
11749 log, logf and logl (and their __builtin_* variants).
11750 * optabs.h (enum optab_index): Add new OTI_exp and OTI_log.
11751 Define exp_optab and log_optab.
11752 * optabs.c (init_optans): Initialize exp_optab and log_optab.
11753 * genopinit.c (optabs): Implement exp_optab and log_optab
11754 using exp?f2 and log?f2 patterns.
11755 * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP*
11756 and BUILT_IN_LOG* using exp_optab and log_optab respectively.
11757 (expand_builtin): Ignore the new builtins (and all cos and
11758 sin variants) when not optimizing. Expand new builtins via
11759 expand_builtin_mathfn when flag_unsafe_math_optimizations.
11760
11761 * doc/extend.texi: Document new exp and log builtins.
11762 * doc/md.texi: Document new exp?f2 and log?f2 patterns
11763 (and previously undocumented cos?f2 and sin?f2 patterns).
11764
de8920be
JM
117652002-08-03 Jason Merrill <jason@redhat.com>
11766
11767 * explow.c (int_expr_size): New fn.
11768 * expr.c (expand_expr) [CONSTRUCTOR]: Use it.
11769 * expr.h: Declare it.
11770
ba462c8e
KW
117712002-08-02 Krister Walfridsson <cato@df.lth.se>
11772
11773 * Makefile.in (gengtype-lex.o, gengtype-yacc.o): Add path to
11774 gengtype-* dependencies.
11775
2017ed61
EC
117762002-08-02 Eric Christopher <echristo@redhat.com>
11777
11778 * config.gcc (mips*-*-linux*): Fix ordering of tm_file.
11779 * config/mips/mips.h (READONLY_DATA_SECTION_ASM_OP): Change
11780 #ifndef to #undef.
11781 (TARGET_MEM_FUNCTIONS): Define instead of define to 1.
11782
055dd007
DE
117832002-08-02 David Edelsohn <edelsohn@gnu.org>
11784
11785 PR optimize/7067
11786 * config/rs6000/rs6000.h (RTX_COSTS): Artificially make MULT
11787 small if optimizing for size.
11788
771a2a66
DJ
117892002-08-02 Daniel Jacobowitz <drow@mvista.com>
11790
11791 * configure.in (FORBUILD): Use $build_alias.
11792 * configure: Regenerated.
11793
ac8ab9fe
RS
117942002-08-02 Richard Sandiford <rsandifo@redhat.com>
11795
11796 * config.gcc: Don't include mips/abi64.h in $tm_file.
11797 * hard-reg-set.h (call_really_used_regs): Declare.
11798 * config/mips/abi64.h: Remove file.
11799 * config/mips/linux.h,
11800 * config/mips/iris6.h: Don't include it.
11801 * config/mips/mips-protos.h (mips_conditional_register_usage): Declare.
11802 * config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Use it.
11803 (REG_PARM_STACK_SPACE, STACK_BOUNDARY, STRICT_ARGUMENT_NAMING,
11804 FUNCTION_ARG_PASS_BY_REFERENCE, FUNCTION_ARG_PADDING,
11805 FUNCTION_ARG_CALLEE_COPIES, MUST_PASS_IN_STACK, MIPS_STACK_ALIGN):
11806 Bring across definitions from abi64.h.
11807 (GP_ARG_LAST, FP_ARG_LAST): Use MAX_ARGS_IN_REGISTERS.
11808 (BIGGEST_MAX_ARGS_IN_REGISTERS): New.
11809 (struct mips_args): Use it.
11810 * config/mips/mips.c (mips_conditional_register_usage): Define.
11811
a77a9a18
JM
118122002-08-02 Jason Merrill <jason@redhat.com>
11813
11814 * langhooks-def.h (LANG_HOOKS_EXPR_SIZE): New macro.
11815 * langhooks.c (lhd_expr_size): Define default.
11816 * langhooks.h (struct lang_hooks): Add expr_size.
11817 * explow.c (expr_size): Call it.
11818 * expr.c (store_expr): Don't copy an expression of size zero.
11819 (expand_expr) [CONSTRUCTOR]: Use expr_size to calculate how much
11820 to store.
11821 * Makefile.in (builtins.o): Depend on langhooks.h.
11822
a6be5aee
KG
118232002-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11824
11825 * Makefile.in (ra-debug.o): Depend on $(TM_P_H).
11826 * ra-debug.c: Include "tm_p.h".
11827 * ra-rewrite.c (is_partly_live_1): Change return type to bool.
11828
e3e16ee3
TM
118292002-08-02 Toon Moene <toon@moene.indiv.nluug.nl>
11830
11831 * simplify-rtx.c (simplify_binary_operation): x * 1 is allowed
11832 when not honoring signalling NaNs.
11833 (simplify_ternary_operation): a == b has a definite value
11834 when not honoring NaNs.
11835
b9d8832d
JM
118362002-08-02 Jason Merrill <jason@redhat.com>
11837
11838 * gdbinit.in (pct): New macro.
11839
825abef4
SS
118402002-08-01 Stan Shebs <shebs@apple.com>
11841 Andreas Tobler <toa@pop.agri.ch>
11842
11843 * ginclude/stddef.h (_BSD_SIZE_T_DEFINED_): Define if not defined,
11844 plays nice with Darwin headers.
bf2e488f 11845 (_BSD_RUNE_T_DEFINED_): Likewise.
825abef4 11846
56da7207
ZW
118472002-08-01 Zack Weinberg <zack@codesourcery.com>
11848
11849 * c-common.c (c_common_init): -Wtraditional also implies -Wlong-long.
11850 * cppinit.c (cpp_post_options): Likewise.
11851
11852 * cppexp.c (cpp_classify_number): Suppress -Wtraditional
11853 warning about 'LL' suffix (but not 'ULL' etc) when
11854 -Wno-long-long is in effect.
11855
11856 * cppmacro.c (_cpp_builtin_macro_text) [BT_TIME, BT_DATE]:
11857 Check for failing time()/localtime(), issue a warning, and
11858 make __TIME__ and __DATE__ expand to fallback strings.
11859
11860 * doc/cpp.texi, doc/extend.texi: Document behavior of __DATE__
11861 and __TIME__ when the date and time cannot be determined.
11862
f4857b9b
AM
118632002-08-02 Alan Modra <amodra@bigpond.net.au>
11864
11865 * config/rs6000/rs6000.c (output_cbranch): Hint differently for power4.
11866
77ca7b2e
DJ
118672002-08-01 Daniel Jacobowitz <drow@mvista.com>
11868
11869 * Makefile.in ($(BUILD_PREFIX_1)ggc-none.o): Use $(GGC_H).
11870
5b552f76
CD
118712002-08-01 Chris Demetriou <cgd@broadcom.com>
11872
11873 * config.gcc (mipsisa64sb1-*-elf*): New configuration.
11874 (mipsisa64sb1el-*-elf*): Likewise.
11875 * config/mips/mips.c (mips_cpu_info_table): Add sb1.
11876 * config/mips/mips.h (processor_type): Add PROCESSOR_SB1.
11877 (TARGET_SB1, TUNE_SB1): New macros.
11878 * doc/invoke.texi: Add sb1 to documentation for MIPS -march and
11879 -mtune flags.
11880
54fbf6a1
DE
118812002-08-01 David Edelsohn <edelsohn@gnu.org>
11882
11883 * varasm.c (asm_emit_uninitialized): Return false if global BSS
11884 and ASM_EMIT_BSS not supported by target.
11885 (assemble_variable): Do not duplicate uninitialized logic.
11886 Fall through if asm_emit_uninitialized failed.
11887
3d16b407
CD
118882002-08-01 Chris Demetriou <cgd@broadcom.com>
11889
11890 * config/mips/mips.h (BRANCH_LIKELY_P): Remove unused macro.
11891
fb52d8de
AM
118922002-08-02 Alan Modra <amodra@bigpond.net.au>
11893
80926cc1
AM
11894 * config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Define.
11895 (DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC): Define.
11896
fb52d8de
AM
11897 * config/rs6000/rs6000.c (output_toc): Don't use lshift_double when
11898 HOST_BITS_PER_WIDE_INT == 64.
11899
a4b5414c
KG
119002002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
11901
11902 * df.c (df_insn_table_realloc): Change parameter to unsigned.
11903 * optabs.c (expand_binop): Make variable unsigned.
11904 * simplify-rtx.c (simplify_subreg): Likewise.
11905 * unroll.c (unroll_loop): Cast to avoid signed/unsigned warnings.
11906
a03e67c3
FS
119072002-08-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
11908
11909 * c-common.c (cb_register_builtins): Always define __GXX_ABI_VERSION.
11910
de273d3f
RH
119112002-08-01 Richard Henderson <rth@redhat.com>
11912
56da7207 11913 * toplev.c (parse_options_and_default_flags): Don't set
de273d3f
RH
11914 flag_reorder_blocks for -Os.
11915
11916 * config/avr/avr.c (avr_optimization_options): Remove.
11917 * config/avr/avr.h (OPTIMIZATION_OPTIONS): Remove.
11918 * config/m68hc11/m68hc11.c (m68hc11_optimization_options): Remove.
11919 * config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Remove.
11920
4e4d733e
L
119212002-08-01 H.J. Lu <hjl@gnu.org>
11922 Richard Henderson <rth@redhat.com>
11923
11924 * output.h (DECL_READONLY_SECTION): Remove.
11925 (decl_readonly_section): Declare.
11926 * varasm.c (decl_readonly_section): New.
11927 (default_section_type_flags, default_select_section): Use it.
11928 * config/arm/pe.c (arm_pe_unique_section): Likewise.
11929 * config/i386/interix.c (i386_pe_unique_section): Likewise.
11930 * config/i386/winnt.c (i386_pe_unique_section): Likewise.
11931 * config/mcore/mcore.c (mcore_unique_section): Likewise.
11932 * config/mips/mips.c (mips_unique_section): Likewise.
11933
32e9b960
RH
119342002-08-01 Richard Henderson <rth@redhat.com>
11935
11936 * integrate.c (copy_rtx_and_substitute): Squash MEM_EXPR when it
11937 refers to a subroutine parameter.
11938
81e602b5
JJ
119392002-08-01 Jakub Jelinek <jakub@redhat.com>
11940
11941 * varasm.c (assemble_visibility): Strip name encoding.
11942
ac14c725
ID
119432002-08-01 Ian Dall <ian@sibyl.beware.dropbear.id.au>
11944
11945 * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE): Correct earlier patch.
11946 (RETURN_ADDR_RTX): Cannot determine return address for FRAME > 0
11947 when there is no frame pointer.
11948 (INITIAL_FRAME_POINTER_OFFSET): Count stack space for saved fp
11949 registers properly.
11950 * config/ns32k/__unorddf2.c: New file.
11951 * config/ns32k/__unordsf2.c: New file.
11952 * config/ns32k/t-ns32k: New file.
11953 * config.gcc (ns32k-*-netbsd*): Use it.
11954
17072732
AH
119552002-08-01 Aldy Hernandez <aldyh@redhat.com>
11956
11957 * config/rs6000/rs6000.h (SPU_CONST_OFFSET_OK): Change to 0xff.
11958
c288218a
NB
119592002-08-01 Neil Booth <neil@daikokuya.co.uk>
11960
11961 * c-common.c (__GXX_ABI_VERSION): Correct spelling.
11962
43bfc248
BK
119632002-08-01 Benjamin Kosnik <bkoz@redhat.com>
11964
11965 * c-common.c (cb_register_builtins): Set __GXX_ABI_VERSION__ to 102.
11966
479f2cea
RS
119672002-08-01 Richard Sandiford <rsandifo@redhat.com>
11968
11969 * config/mips/mips.md: Add [!]TARGET_MIPS16 to sgtu conditions.
11970
02280659
ZD
119712002-08-01 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
11972
11973 * gcse.c (expr_hash_table_size, n_exprs, set_hash_table_size,
11974 n_sets): Removed.
11975 (expr_hash_table, set_hash_table): Type changed to ...
11976 (struct hash_table): New type.
11977 (hash_scan_insn, hash_scan_set, hash_scan_clobber, hash_scan_call,
11978 insert_expr_in_table, insert_set_in_table, compute_hash_table,
11979 dump_hash_table, lookup_expr, lookup_set, compute_local_properties,
11980 compute_ae_gen, compute_ae_kill): Modified to pass the table explicitly.
11981 (alloc_set_hash_table, alloc_expr_hash_table): Merged to ...
11982 (alloc_hash_table): New.
11983 (free_set_hash_table, free_expr_hash_table): Merged to ...
11984 (free_hash_table): New.
11985 (compute_set_hash_table, compute_expr_hash_table): Merged to ...
11986 (compute_hash_table_work): New.
11987 (classic_gcse, one_classic_gcse_pass, compute_cprop_data,
11988 find_avail_set, one_cprop_pass, find_bypass_set, compute_pre_data,
11989 pre_edge_insert, pre_insert_copies, pre_delete, pre_gcse,
11990 one_pre_gcse_pass, compute_transpout, compute_code_hoist_vbeinout,
11991 hoist_code, one_code_hoisting_pass,
11992 trim_ld_motion_mems): Altered due to changed type of hash tables.
11993
905173eb
ZW
119942002-08-01 Zack Weinberg <zack@codesourcery.com>
11995
11996 * final.c (output_alternate_entry_point):
11997 If ASM_OUTPUT_TYPE_DIRECTIVE is defined, use it.
11998
83321d36
KG
119992002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12000
ad0f1765
KG
12001 * objc/objc-act.c (encode_complete_bitfield): Add prototype and
12002 avoid ISO C style function definition.
12003
83321d36
KG
12004 * expr.c (expand_assignment): Delete unused variable.
12005
73e42cf3
TM
120062002-08-01 Toon Moene <toon@moene.indiv.nluug.nl>
12007
12008 * c-common.c (cb_register_builtins): Set
12009 __FINITE_MATH_ONLY__ to 1 if -ffinite-math-only
12010 is given, and to 0 otherwise.
12011 * combine.c (simplify_if_then_else): HONOR_NANS
12012 implies FLOAT_MODE_P.
12013
78df51fe
NB
120142002-08-01 Neil Booth <neil@daikokuya.co.uk>
12015
12016 * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_dollar.
12017 (cpp_handle_option): Don't handle it.
12018 (print_help): Update.
12019 * doc/cppopts.texi: Update.
12020
abecfc8f
NB
120212002-08-01 Neil Booth <neil@daikokuya.co.uk>
12022
12023 * c-common.c (cb_register_builtins): If C++, define
12024 __EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.
12025 * gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION.
12026cp:
12027 * lang-specs.h: Simplify in accordance with new code in
12028 c-common.c.
12029
4078b403
NB
120302002-08-01 Neil Booth <neil@daikokuya.co.uk>
12031
12032 * c-common.c: Define all C/ObjC/C++ warning and flag variables.
12033 * c-common.h: Declare all C/ObjC/C++ warning and flag variables.
12034 * c-decl.c: Move all warning and flag variables to c-common.c.
12035 * c-format.c: Move all warning variables to c-common.c.
12036 * c-tree.h: Move all warning and flag declarations to c-common.h.
12037 * objc/objc-act.c: Move all warning variables to c-common.c.
12038 (flag_warn_protocol): Rename warn_protocol.
12039
692f5611
JDA
120402002-07-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
12041
12042 * pa-linux.h (GLOBAL_ASM_OP): Fix typo.
12043
c7a009a2 120442002-07-31 Graham Stott <graham.stott@btinternet.com>
480e7ded 12045
905173eb 12046 * config/stormy16/stormy16.h (BSS_SECTION_ASM_OP): Add missing
480e7ded
GS
12047 .section prefix.
12048
b069de3b
SS
120492002-07-31 Stan Shebs <shebs@apple.com>
12050
12051 * config.gcc (i[34567]86-*-darwin*): New configuration.
12052 * config/darwin.h (TARGET_ENCODE_SECTION_INFO): Undefine before
12053 defining.
12054 (TARGET_ENCODE_SECTION_INFO): Ditto.
12055 (ASM_PREFERRED_EH_DATA_FORMAT): Ditto.
12056 * config/darwin.c (machopic_indirect_data_reference): Remove
12057 setting of RTX_UNCHANGING_P.
12058 (machopic_legitimize_pic_address): Move RTX_UNCHANGING_P up so as
12059 not to be applied to sums.
12060 * config/i386/t-darwin: New file.
12061 * config/i386/darwin.h: New file.
12062 * config/i386/i386.h (TARGET_MACHO): Add default definition.
12063 * config/i386/i386.md (tablejump): Add TARGET_MACHO case.
12064 * config/i386/i386.c (output_set_got): For Mach-O, output Mach-O
12065 label and not the GOT add.
12066 (constant_address_p): For Mach-O, seeing a CONST is enough.
12067 (legitimate_pic_address_disp_p): Add a Mach-O case.
12068 (legitimate_address_p): Also test machopic_operand_p if Mach-O.
12069 (legitimize_pic_address): Use generic Mach-O code to legitimize.
12070 (output_pic_addr_const): Suppress @PLT if Mach-O, and parens
12071 if outputting a difference.
12072 (ix86_output_addr_diff_elt): Add Mach-O case.
12073 (ix86_expand_move): Similarly.
12074 (ix86_expand_call): Similarly.
12075 (current_machopic_label_num): New global.
12076 (machopic_output_stub): New function.
12077 (ix86_value_regno): New function.
12078 (ix86_function_value): Use it instead of VALUE_REGNO.
12079 (ix86_libcall_value): Ditto.
12080 * config/i386/unix.h (VALUE_REGNO): Remove.
12081
1de4ecb6
GS
120822002-07-31 Graham Stott <grahas@btinternet.com>
12083
12084 * config/rs6000/rs6000.c(rs6000_hash_constant): Fix
905173eb 12085 hash for LABEL_REF's.
1de4ecb6 12086
23368455
GS
120872002-07-31 Graham Stott <grahams@btinternet.com>
12088
12089 * config/rs6000/rs6000.c (spe_init_builtins,
12090 altivec_init_builtins, rs6000_common_init_builtins):
905173eb 12091 Replace ANSI with K&R function def.
23368455 12092
ad72b533
DE
120932002-07-31 David Edelsohn <edelsohn@gnu.org>
12094
12095 * rs6000.c (validate_condition_mode): Test flag_finite_math_only
12096 for CCFPmode.
12097
302359da
RS
120982002-07-31 Richard Sandiford <rsandifo@redhat.com>
12099
12100 * config/mips/crtn.asm: Don't use __mips16 to determine the
12101 return-address offset. Define RA to a suitable temporary
12102 register for the return address.
12103
ead0c1d5
RS
121042002-07-31 Richard Sandiford <rsandifo@redhat.com>
12105
12106 * config/mips/mips.md (eh_set_lr_si, eh_set_lr_di): Change
12107 constraints to 'd'.
12108
3fb9d48a
CD
121092002-07-30 Chris Demetriou <cgd@broadcom.com>
12110
12111 * config/mips/elf.h (STARTFILE_SPEC): Define differently if
12112 default ABI is MEABI. (Undoes incorrect change in Eric Christopher's
12113 patch on 2002-07-29.)
12114 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
12115
072cdaed
KG
121162002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12117
506a61b1
KG
12118 * alpha.h, arc.h, arm/aout.h, avr.h, cris.h, d30v.h, dsp16xx.h,
12119 fr30.h, h8300.h, i370.h, i386/sco5.h, i386/unix.h, i960.h, ia64.h,
12120 ip2k.h, m32r.h, mcore.h, mips.h, mn10200.h, mn10300.h, ns32k.h,
12121 openbsd.h, pa/pa-linux.h, pdp11.h, romp.h, rs6000/sysv4.h,
12122 s390/linux.h, sh.h, sparc.h, stormy16.h, v850.h, vax.h, xtensa.h:
12123 (ASM_GLOBALIZE_LABEL): Delete.
12124 (GLOBAL_ASM_OP): Define.
12125
072cdaed 12126 * m68hc11.h, m68k.h, m88k.h (ASM_GLOBALIZE_LABEL): Delete.
905173eb 12127
072cdaed
KG
12128 * defaults.h (ASM_GLOBALIZE_LABEL): Provide a default.
12129 * doc/tm.texi (ASM_GLOBALIZE_LABEL): Update docs.
12130
6fd14075
GK
121312002-07-30 Geoffrey Keating <geoffk@redhat.com>
12132
12133 * doc/extend.texi (Hints implementation): Document that GCC
12134 mostly ignores `register'.
12135
2e8f2e8f
TM
121362002-07-30 Toon Moene <toon@moene.indiv.nluug.nl>
12137
12138 * flags.h: Declare flag_finite_math_only.
12139 Use it in definition of HONOR_NANS and
12140 HONOR_INFINITIES.
12141 * c-common.c (cb_register_builtins): Emit
12142 __FINITE_MATH_ONLY__ when flag_finite_math_only
12143 is set.
12144 * combine.c (simplify_if_then_else): If
12145 flag_finite_math_only is set, a == b has a
12146 definite value.
12147 * toplev.c: Initialize flag_finite_math_only.
12148 (set_flags_fast_math): Set it on -ffast-math.
12149 (flag_fast_math_set_p): Test it.
12150 * doc/invoke.texi: Document -ffinite-math-only.
12151
a538e580
RH
121522002-07-30 Richard Henderson <rth@redhat.com>
12153
12154 * ifcvt.c (noce_get_alt_condition): Use reg_overlap_mentioned_p.
12155 (noce_process_if_block): Likewise.
12156
26e20555
BS
121572002-07-30 Bernd Schmidt <bernds@redhat.com>
12158
12159 * ifcvt.c (cond_exec_process_if_block): Fix a merging error.
12160 Bail out early if false_expr is NULL and we'd crash due to this.
79cbc1f7
BS
12161 * genemit.c (gen_expand): Recognize return insns even if the return
12162 appears in a parallel.
d8088c6f
BS
12163 * libgcc2.c: Expand macro DECLARE_LIBRARY_RENAMES if it is defined.
12164 * config/fp-bit.c: Likewise.
12165 * doc/tm.texi: Document it.
905173eb 12166
0559cc77
DE
121672002-07-30 David Edelsohn <edelsohn@gnu.org>
12168 Zack Weinberg <zack@codesourcery.com>
12169
12170 * rs6000.c (rs6000_expand_unop_builtin): Check icode not
12171 CODE_FOR_nothing. Change switch to if.
12172 (rs6000_expand_binop_builtin): Same.
12173 (rs6000_expand_builtin): Expand builtin if target support enabled.
12174 (rs6000_init_builtins): Init builtin if target support enabled.
12175 (rs6000_common_init_builtins): Check icode not CODE_FOR_nothing.
12176
60b8aa94
FS
121772002-07-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
12178
12179 * gcc.c (cpp_unique_options): Define __GXX_ABI_VERSION, bump it to 101.
12180
714fb710
RS
121812002-07-30 Richard Sandiford <rsandifo@redhat.com>
12182
12183 * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Fix typo.
12184
c608a684
R
12185Tue Jul 30 18:31:31 2002 J"orn Rennecke <joern.rennecke@superh.com>
12186
12187 * sh.md (cond_delay_slot): New attribute.
12188 (cbranch delay): Use it for anulled-true case.
12189 (stuff_delay_slot): New pattern.
12190 * sh.c (print_operand, case '.'): Don't print .s / /s fore zero-length
12191 delay slot insn.
12192 (gen_far_branch): Emit stuff_delay_slot pattern.
12193
0a756401
R
12194Tue Jul 30 11:21:44 2002 J"orn Rennecke <joern.rennecke@superh.com>
12195
12196 * unroll.c (copy_loop_body): Don't copy NOTE_INSN_LOOP_CONT.
12197
68e82b83
KH
121982002-07-30 Kazu Hirata <kazu@cs.umass.edu>
12199
12200 * fold-const.c: Fix comment typos.
12201 * gcse.c: Likewise.
12202 * reload1.c: Likewise.
12203
fe6b547a
AH
122042002-07-29 Aldy Hernandez <aldyh@redhat.com>
12205
12206 * config/rs6000/rs6000.md: Disallow CCEQ compare with crnor/crnot
12207 for TARGET_SPE.
12208
7ff4a7ef
GDR
122092002-07-30 Gabriel Dos Reis <gdr@nerim.net>
12210
12211 * c-pretty-print.h (pp_c_statement): Declare.
12212 * c-pretty-print.c (pp_c_postfix_expression): #if 0 support for SRCLOC.
12213 (pp_c_statement): Define.
12214
4ad5e05d
KG
122152002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12216
12217 * alpha.h, arc.h, arm/aout.h, avr.h, c4x.h, cris.h, d30v.h,
12218 darwin.h, dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i960.h,
12219 ip2k.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mips.h,
12220 mn10200.h, mn10300.h, ns32k.h, pa/pa-linux.h, pdp11.h, romp.h,
12221 rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h,
12222 v850.h, vax.h, xtensa.h (ASM_OUTPUT_LABEL): Delete definition.
12223
12224 * defaults.h (ASM_OUTPUT_LABEL): Provide a default.
12225 * doc/tm.texi (ASM_OUTPUT_LABEL): Update docs.
12226
1e6a3e1e
GDR
122272002-07-30 Gabriel Dos Reis <gdr@nerim.net>
12228
12229 * c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR.
12230 (pp_c_postfix_expression): Handle ARROW_EXPR, FFS_EXPR,
12231 COMPOUND_LITERAL_EXPR, VA_ARG_EXPR.
12232 (pp_c_expression): Update.
12233
1dcd444b
KG
122342002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12235
12236 * alpha/vms-cc.c (preprocess_args, main): Use xstrdup and/or
12237 concat in lieu of xmalloc/strcpy/memcpy/sprintf.
12238 * alpha/vms-ld.c (main): Likewise.
12239 * dsp16xx.c (double_reg_to_memory): Likewise.
12240 * mcore.c (mcore_expand_prolog): Likewise.
12241 * cppfiles.c (read_name_map): Likewise.
12242 * gensupport.c (process_rtx, identify_predicable_attribute,
12243 alter_test_for_insn): Likewise.
12244 * vmsdbgout.c (write_rtnbeg, vmsdbgout_init): Likewise.
12245
e62f4abc
RS
122462002-07-29 Roger Sayle <roger@eyesopen.com>
12247
12248 * builtins.c (expand_builtin): Change the default behavior to
905173eb 12249 only issue an error if the builtin function doesn't have a
e62f4abc
RS
12250 fallback library call. Remove several cases handled by the
12251 new default.
12252
0cd2fb44
JDA
122532002-07-29 John David Anglin <dave@hiauly1.hia.nrc>
12254
12255 * real.c (ieee_24, ieee_53, ieee_64, ieee_113): Define only if the
12256 floating point format of the target is IEEE.
12257 * (dec_f, dec_d, dec_g, dec_h): Define only if the floating point
12258 format of the target is DEC.
12259
b642261e
RH
122602002-07-29 Richard Henderson <rth@redhat.com>
12261
12262 * unroll.c (verify_addresses): Remove.
12263 (find_splittable_givs): Never split DEST_ADDR givs.
12264
cba57c9d
GK
122652002-07-29 Geoffrey Keating <geoffk@redhat.com>
12266
12267 * doc/gty.texi (GGC Roots): Clarify that the list of syntaxes
12268 is exhaustive.
12269 (Files): Improve documentation on generated source files.
12270
12271 * doc/extend.texi (Translation implementation): Document what
12272 diagnostics look like.
12273 (Identifiers implementation): Document that there's normally no
12274 limit on identifier names.
12275 (Integers implementation): Document two's complement.
8d9afc4e 12276 (Hints implementation): Document that GCC honors 'inline', mostly.
cba57c9d
GK
12277 (Preprocessing directives implementation): Document that GCC
12278 requires the current time.
12279
76a8ecba
GDR
122802002-07-30 Gabriel Dos Reis <gdr@nerim.net>
12281
12282 * c-pretty-print.h (struct c_pretty_print_info): Add new member.
12283 (pp_initializer): New macro.
12284 (pp_c_initializer): Declare.
12285 * c-pretty-print.c (pp_c_primary_expression): HAndle TARGET_EXPR.
12286 (pp_c_initializer): Define.
12287 (pp_c_initializer_list): New function.
12288 (pp_c_postfix_expression): Handle ABS_EXPR, COMPLEX_CST,
12289 VECTOR_CST, CONSTRUCTOR.
12290 (pp_c_unary_expression): Handle CONJ_EXPR, REALPART_EXPR,
905173eb 12291 IMAGPART_EXPR.
76a8ecba
GDR
12292 (pp_c_cast_expression): Handle FLOAT_EXPR.
12293 (pp_c_assignment_expression): Handle INIT_EXPR.
12294 (pp_c_expression): Update.
12295
4307be72
NB
122962002-07-30 Neil Booth <neil@daikokuya.co.uk>
12297
12298 * objc/objc-act.c (objc_init): Return immediately if filename
12299 is NULL.
12300
6d439235
EC
123012002-07-29 Eric Christopher <echristo@redhat.com>
12302
905173eb
ZW
12303 * config/mips/elf.h: Remove ecoff.h and gofast includes.
12304 (DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO): Define unconditionally.
12305 (SDB_DEBUGGING_INFO): Undefine.
12306 (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
6d439235
EC
12307 (PUT_SDB_SIZE): Remove.
12308 (SUBTARGET_ASM_DEBUGGING_SPEC): Redefine.
905173eb
ZW
12309 (STARTFILE_SPEC): Add isa3264 define.
12310 * config/mips/elf64.h: Ditto. Move TARGET_MEM_FUNCTIONS from here...
12311 * config/mips/ecoff.h: Remove. and here...
12312 * config/mips/iris3.h: and here...
12313 * config/mips/sni-svr4.h: and here...
12314 * config/mips/mips.h: To here. Remove OBJECT_FORMAT_ROSE ifdefs.
6d439235
EC
12315 Add assembler -mmdebug options for non-dwarf debugging.
12316 * config/mips/r3900.h: Remove debug info defines.
905173eb
ZW
12317 * config/mips/isa32-linux.h: Remove, move functionality to config.gcc.
12318 * config/mips/isa3264.h: Ditto.
12319 * config/mips/t-isa3264: Fix up for file removal and gofast configure
12320 change.
12321 * config/mips/t-elf: Ditto.
12322 * config/mips/t-ecoff: Ditto.
12323 * config/mips/t-r3900: Ditto.
12324 * config/mips/t-iris5-6: Ditto.
12325 * config/mips/t-isa3264: Ditto.
12326 * config/mips/t-linux: Remove.
12327 * config/mips/t-netbsd: Remove.
12328 * config/mips/t-mips: New file.
12329 * config/mips/t-gofast: Ditto.
12330 * config/mips/netbsd.h: Remove unnecessary undefines.
12331 * config/mips/linux.h: Remove #include of mips.h.
12332 * config.gcc: Add mips.h include for elf targets. Remove tm_file
12333 for ecoff. Add gofast configure option for mips.
6d439235 12334
4357a6c3
CD
123352002-07-29 Chris Demetriou <cgd@broadcom.com>
12336
12337 * configure.in (mips*-*-*): Add a test to see if MIPS libgloss
12338 linker scripts use STARTUP directives consistently.
12339 * configure: Regenerate.
12340 * config.in: Regenerate.
12341 * config/mips/elf.h (STARTFILE_SPEC): Define conditionally, based
12342 on whether HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is defined.
12343 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
12344 * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine if
12345 HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is set; the result
12346 will be the same.
12347
9a5cd606
AH
123482002-07-29 Aldy Hernandez <aldyh@redhat.com>
12349
12350 * config/rs6000/rs6000.md ("cpu"): Add ppc8540 to attribute.
12351
a23acaa6
AH
123522002-07-29 Aldy Hernandez <aldyh@redhat.com>
12353
12354 * config/rs6000/rs6000.h (RTX_COSTS): Add MULT case for 8540.
12355
10ed84db
AH
123562002-07-29 Aldy Hernandez <aldy@quesejoda.com>
12357
12358 * config/rs6000/rs6000.md: Move altivec patterns from here...
12359
12360 * config/rs6000/altivec.md: ...to here.
12361
c3021e5d
AH
123622002-07-29 Aldy Hernandez <aldyh@redhat.com>
12363
12364 * config/rs6000/spe.md ("spe_evmra"): Change to unspec.
12365
6f1087be
RH
123662002-07-29 Richard Henderson <rth@redhat.com>
12367
12368 * emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from
12369 set_mem_attributes and add BITPOS argument. Subtract it from
12370 OFFSET when same is adjusted.
12371 (set_mem_attributes): New wrapper function.
12372 * expr.c (expand_assignment): Use set_mem_attributes_minus_bitpos;
12373 remove offset adjustment hack.
12374 * expr.h (set_mem_attributes_minus_bitpos): Declare.
12375
61ccbcfd
GDR
123762002-07-29 Gabriel Dos Reis <gdr@nerim.net>
12377
12378 * Makefile.in (C_OBJS): Include c-pretty-print.o
12379 (c-pretty-print.o): Add depency rule.
12380 * pretty-print.h: Add more macros.
12381 * c-pretty-print.c: New file.
12382 * c-pretty-print.h: Likewise.
12383
09101f56
AH
123842002-07-29 Aldy Hernandez <aldyh@redhat.com>
12385
12386 * config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector
12387 constants to __ev64_s32__.
12388 (__internal_ev_mwhgsmian): Same.
12389 (__internal_ev_mwhgsmfan): Same.
12390 (__internal_ev_mwhgssfan): Same.
12391 (__internal_ev_mwhgumiaa): Same.
12392 (__internal_ev_mwhgsmiaa): Same.
12393 (__internal_ev_mwhgsmfaa): Same.
12394 (__internal_ev_mwhgssfaa): Same.
12395
af673a52
DE
123962002-07-29 David Edelsohn <edelsohn@gnu.org>
12397
12398 * varasm.c (assemble_variable): Narrow test for uninitialized
12399 without BSS target support.
12400
6c208acd
NS
124012002-07-29 Nathan Sidwell <nathan@codesourcery.com>
12402
12403 * profile.c: Add file comment describing the overall algorithm and
12404 structures.
12405 (struct edge_info): Add comments.
12406 (struct bb_info): Add comments.
12407 * basic-block.h (EDGE_*): Add comments.
12408 * doc/gcov.texi (Gcov Data Files): Document bit flags.
12409
624f0d60
BW
124102002-07-29 Bob Wilson <bob.wilson@acm.org>
12411
12412 * config/xtensa/elf.h, config/xtensa/linux.h
12413 (TARGET_OS_CPP_BUILTINS): Define.
12414 (CPP_PREDEFINES): Remove.
12415 * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define.
12416 (CPP_SPEC): Remove.
12417
2199e5fa
ZW
124182002-07-29 Zack Weinberg <zack@codesourcery.com>
12419
12420 * gensupport.c: Include hashtab.h.
12421 (insn_elision, condition_table, hash_c_test, cmp_c_test,
12422 maybe_eval_c_test): New routines and data structures to
12423 support insn elision.
12424 (init_md_reader): Read and initialize the condition_table.
12425 (read_md_rtx): Discard insn patterns whose C test is provably
12426 always false.
12427 * gensupport.h: Declare new functions and data structures.
12428
12429 * genconditions.c, dummy-conditions.c: New files.
12430 * Makefile.in: Build genconditions; run it to construct
12431 insn-conditions.c; build that and link it into most gen*
12432 programs.
12433 (HOST_SUPPORT, HOST_EARLY_SUPPORT): New variables.
12434 (GEN): Delete, unused.
12435 (STAGESTUFF): Update.
12436
12437 * gencodes.c: (gen_insn): #define CODE_FOR_xxx equal to
12438 CODE_FOR_nothing for all elided patterns.
12439 (main): Tweaked to support this.
12440 * genflags.c (gen_proto): Emit a static inline generator
12441 function here for all elided patterns, which simply returns
12442 NULL_RTX.
12443 (gen_insn): Do not define HAVE_xxx for elided patterns.
12444 (main): Tweaked to support this. No need to forward-declare
12445 struct rtx_def.
12446 * genrecog.c: Do not bother emitting the C test if it's known
12447 to be true at compile time.
12448
6ab185d6
MS
124492002-07-29 Mike Stump <mrs@apple.com>
12450
6d439235 12451 * config.gcc (target_gtfiles): Initialize, as otherwise cross
2199e5fa 12452 compilers hosted on powerpc-apple-darwin6.0 won't even build.
6ab185d6 12453
72b075d1
RE
124542002-07-29 Richard Earnshaw <rearnsha@arm.com>
12455
12456 * arm.md (sibcall, sibcall_value): Add RETURN as part of the pattern,
12457 remove clobber of LR.
12458 (sibcall_insn, sibcall_value_insn): Update accordingly.
12459 (sibcall_epilogue): Remove debugging comment from assembler stream.
12460
f63c45ec
GDR
124612002-07-29 Gabriel Dos Reis <gdr@nerim.net>
12462
12463 * pretty-print.h: Define more macros.
12464 * diagnostic.h (output_formatted_integer): Moved from...
12465 * diagnostic.c: ... here.
12466
c27c15db
KG
124672002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12468
12469 * stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use ASM_OUTPUT_LABEL_REF.
12470
99086d59
ZW
124712002-07-28 Zack Weinberg <zack@codesourcery.com>
12472
12473 * defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two
12474 arguments. Always use ".-symbol" as expression argument.
12475 * doc/tm.texi: Update to match. Document requirement for
12476 ".size symbol, .-symbol" to be acceptable to assembler.
12477
12478 * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
12479 config/arm/elf.h, config/avr/avr.h, config/cris/aout.h,
12480 config/i386/freebsd-aout.h, config/i386/sco5.h,
12481 config/ip2k/ip2k.h, config/m88k/m88k.h, config/xtensa/elf.h,
12482 config/xtensa/linux.h: Update uses of ASM_OUTPUT_MEASURED_SIZE.
12483
dd86aabf
KG
124842002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12485
6fd327e9
KG
12486 * Makefile.in (gengtype-lex.c): Fix error in last change.
12487
8155cedd
KG
12488 * alpha/freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing
12489 backslash.
12490
dd86aabf
KG
12491 * Makefile.in (vmsdbgout.o): Depend on function.h.
12492
12493 * vmsdbgout.c: Include function.h.
12494
d4348177
AM
124952002-07-28 Alan Modra <amodra@bigpond.net.au>
12496
12497 * prefix.c (update_path): Don't strip single `.' path components
12498 unless stripping a later `..' component. Exit loop as soon as
12499 a valid path is found.
12500
c2ef6d34
RS
125012002-07-27 Roger Sayle <roger@eyesopen.com>
12502
12503 * builtins.def [DEF_GCC_BUILTIN]: Require an explicit ATTRS
12504 argument. Mark BUILT_IN_RETURN, BUILT_IN_EH_RETURN,
12505 BUILT_IN_LONGJMP and BUILT_IN_TRAP as noreturn, the ISO C99
12506 floating point unordered comparisons (e.g. __builtin_isgreater)
12507 as const, and leave the remaining GCC_BUILTINs unchanged.
12508
12509 * c-decl.c (builtin_function): No need to explicitly mark
12510 BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn.
12511
52bfebf0
RS
125122002-07-27 Roger Sayle <roger@eyesopen.com>
12513
12514 * Makefile.in: rtlanal.o now depends upon real.h.
12515
12516 * flags.h [flag_signaling_nans]: New flag.
12517 [HONOR_SNANS]: New macro.
12518
12519 * toplev.c [flag_signaling_nans]: Initialize to false.
99086d59 12520 (f_options): Add processing for "-fsignaling-nans".
52bfebf0
RS
12521 (set_fast_math_flags): Clear flag_signaling_nans with -ffast-math.
12522 (process_options): flag_signaling_nans implies flag_trapping_math.
12523
12524 * c-common.c (cb_register_builtins): Define __SUPPORT_SNAN__
12525 when -fsignaling-nans. First step to implementing WG14's N965.
12526
12527 * fold-const.c (fold) [MULT_EXPR]: Conditionalize transforming
12528 1.0 * x into x, and -1.0 * x into -x on !HONOR_SNANS.
12529 [RDIV_EXPR]: Conditionalize x/1.0 into x on !HONOR_SNANS.
12530
12531 * simplify-rtx.c (simplify_relational_operation): Conditionalize
12532 transforming abs(x) < 0.0 into false on !HONOR_SNANS.
12533
12534 * rtlanal.c: #include real.c for TARGET_FLOAT_FORMAT definitions
12535 required by HONOR_SNANS. (may_trap_p): Floating point DIV, MOD,
99086d59
ZW
12536 UDIV, UMOD, GE, GT, LE, LT and COMPARE may always trap with
12537 -fsignaling_nans. EQ and NE only trap for flag_signaling_nans
52bfebf0
RS
12538 not flag_trapping_math (i.e. HONOR_SNANS but not HONOR_NANS).
12539
12540 * doc/invoke.texi: Document new -fsignaling-nans compiler option.
12541
e66f55b8
KG
125422002-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
12543
12544 * Makefile.in (gengtype-lex.c): Work around a bug in flex.
12545 * gengtype-lex.l (YY_USE_PROTOS): Undef.
12546 (YY_DECL): Define.
12547
a3926fe1
RS
125482002-07-27 Roger Sayle <roger@eyesopen.com>
12549
12550 * doc/invoke.texi: Document that both -fno-builtin-foo and
12551 -fno-builtin are supported by the g++ front-end.
12552
ef69da62
SS
125532002-07-27 Stan Shebs <shebs@apple.com>
12554
12555 * configure.in: Rename config_gtfiles to target_gtfiles.
12556 * configure: Regenerate.
12557 * doc/gty.texi: Update reference.
12558 * config.gcc (powerpc-*-darwin*): Set target_gtfiles
12559 instead of appending to it.
12560
a4b0320c
AH
125612002-07-25 Aldy Hernandez <aldyh@redhat.com>
12562
12563 * config/rs6000/rs6000.c (function_arg_advance): SPE vararg
12564 vectors are split into two registers.
12565 (function_arg): Same.
12566
c427db5d
R
12567Thu Jul 26 23:00:13 2002 J"orn Rennecke <joern.rennecke@superh.com>
12568
12569 * pa.md (extv): Check predicates before emitting extv_32.
12570
57ac7be9
AM
125712002-07-27 Alan Modra <amodra@bigpond.net.au>
12572
12573 * config/rs6000/rs6000.c (rs6000_traceback_name): New var.
12574 (rs6000_traceback): New var.
12575 (rs6000_override_options): Set rs6000_traceback.
12576 (rs6000_output_function_epilogue): Implement traceback options.
12577 * config/rs6000/rs6000.h (TARGET_OPTIONS): Add "traceback=".
12578 (rs6000_traceback_name): Declare.
12579
12580 * config/rs6000/rs6000.c (output_profile_hook): Don't generate profile
12581 label reference when NO_PROFILE_COUNTERS.
12582
8e51619a
JM
125832002-07-26 Jason Merrill <jason@redhat.com>
12584
12585 * function.c (assign_parms): Handle frontend-directed pass by
12586 invisible reference.
12587
b41f25cf
NB
125882002-07-26 Neil Booth <neil@daikokuya.co.uk>
12589
12590 * doc/cppopts.texi: Update.
12591
c2734e05
NB
125922002-07-26 Neil Booth <neil@daikokuya.co.uk>
12593
12594 * cppmacro.c (_cpp_create_definition): Don't attempt redefinition
12595 warnings on assertions.
12596
c372b0fa
NB
125972002-07-26 Neil Booth <neil@daikokuya.co.uk>
12598
12599 * c-common.h (RID_AND, RID_AND_EQ, RID_NOT, RID_NOT_EQ,
12600 RID_OR, RID_OR_EQ, RID_XOR, RID_XOR_EQ, RID_BITAND, RID_BITOR,
12601 RID_COMPL): Remove.
12602 * c-parse.in (rid_to_yy): Similarly.
12603
558ee214
JM
126042002-07-26 Jason Merrill <jason@redhat.com>
12605
12606 * c-dump.c: Resurrect.
12607 * tree-dump.c: Move C-specific stuff to c-dump.c.
12608 * c-common.h: Declare c_dump_tree.
12609 * c-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN): Define.
12610 * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
12611 (c-dump.o): New rule.
12612
ce71f754
AM
126132002-07-26 Alan Modra <amodra@bigpond.net.au>
12614
12615 * config/rs6000/rs6000.md: Enable patterns using rlwinm for
12616 PowerPC64. Replace "T" and "S" constraints with "n" when the
12617 predicate will do. Formatting fixes.
12618 (extzvsi_internal2): Use "andi.", "andis." and attr type of "compare"
12619 as for extzvsi_internal1.
12620
e179e7d7
NB
126212002-07-25 Neil Booth <neil@daikokuya.co.uk>
12622
12623 * dwarfout.c (VERSION_ASM_OP, DERIV_BEGIN_LABEL_FMT,
12624 DERIV_END_LABEL_FMT): Remove.
12625 (SL_BEGIN_LABEL_FMT, SL_END_LABEL_FMT): Move.
12626
a2056183
NB
126272002-07-25 Neil Booth <neil@daikokuya.co.uk>
12628
12629 * objc/objc-act.c (UTAG_STATICS, UTAG_PROTOCOL_LIST, USERTYPE):
12630 Remove.
12631
308c142a
SS
126322002-07-25 Stan Shebs <shebs@apple.com>
12633
12634 * config/rs6000/rs6000.c (rs6000_emit_prologue): Remove unused
12635 local var dwarfp.
12636 (output_compiler_stub): Remove unused locals.
12637 (output_call): Always initialize line number.
12638
59324685
R
12639Thu Jul 25 20:34:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
12640
12641 * sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia.
12642 * sh.md (truncdiqi2, movqi_media): Likewise.
12643
77bbd421
NB
126442002-07-25 Neil Booth <neil@daikokuya.co.uk>
12645
12646 * gcse.c (obstack_chunk_alloc): Remove.
12647 (gcse_alloc): Fix to count allocated bytes.
12648 * collect2.c (SYMBOL__MAIN): Remove.
12649
7bad45b0
NB
126502002-07-25 Neil Booth <neil@daikokuya.co.uk>
12651
12652 * gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if
12653 HAVE_TARGET_EXECUTABLE_SUFFIX.
12654
184166b5
R
12655Thu Jul 25 18:57:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
12656
12657 * rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN,
12658 SIZE, EXPR and OFFSET.
12659
40cb04f1
RH
126602002-07-25 Richard Henderson <rth@redhat.com>
12661
12662 * emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos
12663 in ARRAY_REF of DECL_P case.
12664
a27fb29b
RS
126652002-07-25 Richard Sandiford <rsandifo@redhat.com>
12666
12667 * doc/invoke.texi: Document -mabi=meabi, and expand on the EABI
12668 description. Document -mips32, -mips64, and the associated -march
12669 values. Describe the "mipsN" arguments to -march. Say that the
12670 -mipsN options are equivalent to -march. Reword the description
12671 of default type sizes.
12672 * toplev.h (target_flags_explicit): Declare.
12673 * toplev.c (target_flags_explicit): New var.
12674 (set_target_switch): Update target_flags_explicit.
12675 * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Undefine.
12676 * config/mips/elf64.h (MIPS_ISA_DEFAULT): Undefine.
12677 * config/mips/iris6.h (SUBTARGET_ASM_SPEC): -mabi=64 implies -mips3.
12678 * config/mips/isa3264.h (MIPS_ENABLE_EMBEDDED_O32): Undefine.
12679 * config/mips/mips.h (mips_cpu_info): New struct.
12680 (mips_cpu_string, mips_explicit_type_size_string): Remove.
12681 (mips_cpu_info_table, mips_arch_info, mips_tune_info): Declare.
12682 (MIPS_CPP_SET_PROCESSOR): New macro.
12683 (TARGET_CPP_BUILTINS): Declare a macro for each supported processor.
12684 Define _MIPS_ARCH and _MIPS_TUNE.
12685 (MIPS_ISA_DEFAULT): Don't provide a default value. Instead...
12686 (MIPS_CPU_STRING_DEFAULT): Set to "from-abi" if neither it nor
12687 MIPS_ISA_DEFAULT were already defined.
12688 (MULTILIB_DEFAULTS): Add MULTILIB_ABI_DEFAULT.
12689 (TARGET_OPTIONS): Remove -mcpu and -mexplicit-type-size.
12690 (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New.
12691 (GAS_ASM_SPEC): Remove -march, -mcpu, -mgp* and -mabi rules.
12692 (ABI_GAS_ASM_SPEC): Remove.
12693 (MULTILIB_ABI_DEFAULT, ASM_ABI_DEFAULT_SPEC): New macros.
12694 (ASM_SPEC): Add -mgp32, -mgp64, -march, -mabi=eabi and -mabi=o64.
12695 Invoke %(asm_abi_default_spec) if no ABI was specified.
12696 (CC1_SPEC): Remove ISA -> register-size rules.
12697 (EXTRA_SPECS): Remove abi_gas_asm_spec. Add asm_abi_default_spec.
12698 * config/mips/mips.c (mips_arch_info, mips_tune_info): New vars.
12699 (mips_cpu_string, mips_explicit_type_size_string): Remove.
12700 (mips_cpu_info_table): New array.
12701 (mips_set_architecture, mips_set_tune): New fns.
12702 (override_options): Rework to make -mipsN equivalent to -march.
12703 Detect more erroneous cases, including those removed from CC1_SPEC.
12704 Don't change the ABI based on architecture, or vice versa.
12705 Unify logic with GAS.
12706 (mips_asm_file_start): Get architecture name from mips_arch_info.
12707 (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
12708 (mips_parse_cpu): Take the name of the option as argument. Handle
12709 'from-abi'. Raise an error if the option is wrong.
12710 (mips_cpu_info_from_isa): New fn.
12711
6bbdc759
RS
127122002-07-25 Richard Sandiford <rsandifo@redhat.com>
12713
12714 * config/mips/mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF.
12715 (tablejump_mips162): Likewise.
12716
80a62484
R
12717Thu Jul 25 10:23:41 2002 J"orn Rennecke <joern.rennecke@superh.com>
12718
12719 * simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to
12720 int_mode_for_mode.
12721
ea793912
GDR
127222002-07-25 Gabriel Dos Reis <gdr@nerim.net>
12723
12724 * c-common.c (c_sizeof_or_alignof_type): Take a third argument for
99086d59 12725 complaining.
ea793912
GDR
12726 * c-common.h (c_sizeof): Adjust definition.
12727 (c_alignof): Likewise.
12728 * c-tree.h (c_sizeof_nowarn): Now macro.
12729 * c-typeck.c (c_sizeof_nowarn): Remove definition.
12730
2d615444
NB
127312002-07-25 Neil Booth <neil@daikokuya.co.uk>
12732
12733 * c-decl.c (c_decode_option): No need to handle switches
12734 cpplib handles.
12735
2be2ac70
ZW
127362002-07-24 Zack Weinberg <zack@codesourcery.com>
12737
12738 * defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, ASM_OUTPUT_SIZE_DIRECTIVE,
12739 ASM_OUTPUT_MEASURED_SIZE): New default definitions of new macros.
12740 * doc/tm.texi: Document them. Also document SIZE_ASM_OP,
12741 TYPE_ASM_OP, and TYPE_OPERAND_FMT.
12742
12743 * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
12744 config/alpha/elf.h, config/arm/elf.h, config/avr/avr.h,
12745 config/cris/aout.h, config/i386/freebsd-aout.h,
12746 config/i386/sco5.h, config/ia64/ia64.c, config/ip2k/ip2k.h,
12747 config/m68k/m68kelf.h, config/m68k/m68kv4.h, config/m88k/m88k.h,
12748 config/mcore/mcore-elf.h, config/mips/elf.h, config/mips/elf64.h,
12749 config/mips/iris6.h, config/mips/linux.h, config/pa/pa-linux.h,
12750 config/pa/pa64-hpux.h, config/rs6000/sysv4.h,
12751 config/xtensa/elf.h, config/xtensa/linux.h:
12752 Use the new macros.
12753 Where possible, remove redundant definitions of SIZE_ASM_OP,
12754 TYPE_ASM_OP, and TYPE_OPERAND_FMT.
12755
518878e1
AH
127562002-07-24 Aldy Hernandez <aldyh@redhat.com>
12757
12758 * config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
12759 TARGET_ISEL, and TARGET_FPRS.
99086d59 12760
518878e1
AH
12761 * doc/invoke.texi (RS/6000 and PowerPC Options): Document
12762 -mabi=spe, -mabi=no-spe, and -misel=.
12763
12764 * config/rs6000/rs6000-protos.h: Add output_isel.
12765 Move vrsave_operation prototype here.
12766
12767 * config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
12768 (smaxsi3): Same.
12769 (uminsi3): Same.
12770 (umaxsi3): Same.
12771 (abssi2_nopower): Disallow when TARGET_ISEL.
12772 (*ne0): Same.
12773 (negsf2): Change to expand and rename old pattern to *negsf2.
12774 (abssf2): Change to expand and rename old pattern to *abssf2.
99086d59 12775
518878e1
AH
12776 New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
12777 fixunssfsi2.
12778
12779 Change patterns that check for TARGET_HARD_FLOAT or
12780 TARGET_SOFT_FLOAT to also check TARGET_FPRS.
12781
12782 * config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
12783 rs6000_isel, rs6000_fprs, rs6000_isel_string.
12784 (rs6000_override_options): Add 8540 case to
12785 processor_target_table.
12786 Set rs6000_isel for the 8540.
12787 Call rs6000_parse_isel_option.
12788 (enable_mask_for_builtins): New.
12789 (rs6000_parse_isel_option): New.
12790 (rs6000_parse_abi_options): Add spe and no-spe.
12791 (easy_fp_constant): Treat !TARGET_FPRS as soft-float.
12792 (rs6000_legitimize_address): Check for TARGET_FPRS when checking
12793 for TARGET_HARD_FLOAT.
12794 Add case for SPE_VECTOR_MODE.
12795 (rs6000_legitimize_reload_address): Handle SPE vector modes.
12796 (rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
12797 vector modes.
12798 Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
12799 (rs6000_emit_move): Check for TARGET_FPRS.
12800 Add cases for SPE vector modes.
12801 (function_arg_boundary): Return 64 for SPE vector modes.
12802 (function_arg_advance): Check for TARGET_FPRS and
12803 Handle SPE vectors.
12804 (function_arg): Same.
12805 (setup_incoming_varargs): Check for TARGET_FPRS.
12806 (rs6000_va_arg): Same.
12807 (struct builtin_description): Un-constify mask field. Move up in
12808 file.
12809 (bdesc_2arg): Un-constify and add SPE builtins.
12810 (bdesc_1arg): Same.
12811 (bdesc_spe_predicates): New.
12812 (bdesc_spe_evsel): New.
12813 (rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
12814 (rs6000_expand_binop_builtin): Same.
12815 (bdesc_2arg_spe): New.
12816 (spe_expand_builtin): New.
12817 (spe_expand_predicate_builtin): New.
12818 (spe_expand_evsel_builtin): New.
12819 (rs6000_expand_builtin): Call spe_expand_builtin for SPE.
12820 (rs6000_init_builtins): Initialize SPE builtins. Call
12821 rs6000_common_init_builtins.
12822 (altivec_init_builtins): Move all non-altivec builtin code to...
12823 (rs6000_common_init_builtins): ...here. New function.
12824 (branch_positive_comparison_operator): Allow NE code for SPE.
12825 (ccr_bit): Return correct ccr bit for SPE fp.
12826 (print_operand): Emit crnor in 'D' case for SPE.
12827 New case 't'.
12828 Add SPE code for 'y' case.
12829 (rs6000_generate_compare): Generate rtl for SPE fp.
12830 (output_cbranch): Handle SPE hard floats.
12831 (rs6000_emit_cmove): Handle isel.
12832 (rs6000_emit_int_cmove): New.
12833 (output_isel): New.
12834 (rs6000_stack_info): Adjust stack frame so GPRs are saved in
12835 64-bits for SPE.
12836 (debug_stack_info): Add SPE info.
12837 (gen_frame_mem_offset): New.
12838 (rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
12839 Change mode of frame pointer, when saving it, to Pmode.
12840 (rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
12841 Misc cleanups and use gen_frame_mem_offset when appropriate.
12842
12843 * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
12844 (TARGET_SPE_ABI): New.
12845 (TARGET_SPE): New.
12846 (TARGET_ISEL): New.
12847 (TARGET_FPRS): New.
12848 (FIXED_SCRATCH): New.
12849 (RTX_COSTS): Add PROCESSOR_PPC8540.
12850 (ASM_CPU_SPEC): Add case for 8540.
12851 (TARGET_OPTIONS): Add isel= case.
12852 (rs6000_spe_abi): New.
12853 (rs6000_isel): New.
12854 (rs6000_fprs): New.
12855 (rs6000_isel_string): New.
12856 (UNITS_PER_SPE_WORD): New.
12857 (LOCAL_ALIGNMENT): Adjust for SPE.
12858 (HARD_REGNO_MODE_OK): Same.
12859 (DATA_ALIGNMENT): Same.
12860 (MEMBER_TYPE_FORCES_BLK): New.
12861 (FIRST_PSEUDO_REGISTER): Set to 113.
12862 (FIXED_REGISTERS): Add SPE registers.
12863 (reg_class): Same.
12864 (REG_CLASS_NAMES): Same.
12865 (REG_CLASS_CONTENTS): Same.
12866 (REGNO_REG_CLASS): Same.
12867 (REGISTER_NAMES): Same.
12868 (DEBUG_REGISTER_NAMES): Same.
12869 (ADDITIONAL_REGISTER_NAMES): Same.
12870 (CALL_USED_REGISTERS): Same.
12871 (CALL_REALLY_USED_REGISTERS): Same.
12872 (SPE_ACC_REGNO): New.
12873 (SPEFSCR_REGNO): New.
12874 (SPE_SIMD_REGNO_P): New.
12875 (HARD_REGNO_NREGS): Adjust for SPE.
12876 (VECTOR_MODE_SUPPORTED_P): Same.
12877 (REGNO_REG_CLASS): Same.
12878 (FUNCTION_VALUE): Same.
12879 (LIBCALL_VALUE): Same.
12880 (LEGITIMATE_OFFSET_ADDRESS_P): Same.
12881 (SPE_VECTOR_MODE): New.
12882 (CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
12883 the GPRs. Set FIXED_SCRATCH fixed in SPE case.
12884 (rs6000_stack): Add spe_gp_size, spe_padding_size,
12885 spe_gp_save_offset.
12886 (USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
12887 (LEGITIMATE_LO_SUM_ADDRESS_P): Same.
12888 (SPE_CONST_OFFSET_OK): New.
12889 (rs6000_builtins): Add SPE builtins.
12890
12891 * testsuite/gcc.dg/ppc-spe.c: New.
99086d59 12892
518878e1
AH
12893 * config/rs6000/eabispe.h: New.
12894
12895 * config/rs6000/spe.h: New.
12896
12897 * config/rs600/spe.md: New.
12898
12899 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
12900 __SIMD__ for TARGET_SPE.
12901
12902 * config.gcc: Add powerpc-*-eabispe* case.
12903 Add spe.h to user headers for powerpc.
12904
8d1b7ba1
CD
129052002-07-24 Chris Demetriou <cgd@broadcom.com>
12906
12907 * config/mips/elf.h (STARTFILE_SPEC): Undo previous change.
12908 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
12909 * config/mips/isa3264.h (STARTFILE_SPEC): Likewise.
12910
8ad8135a
RH
129112002-07-24 Richard Henderson <rth@redhat.com>
12912
12913 * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Use GOTO_SUBROUTINE_EXPR
12914 form when not optimizing.
12915
dc44a4d8
DM
129162002-07-24 David Mosberger <davidm@hpl.hp.com>
12917
12918 * config/ia64/ia64.c (gen_thread_pointer): Fix typo in marking
12919 thread_pointer_rtx as unchanging.
12920
c5605318
MM
129212002-07-24 Michael Matz <matz@suse.de>
12922
12923 * ra-colorize.c (INV_REG_ALLOC_ORDER): New macro.
12924 (free_reg): Use it.
12925
3ade30ea
RE
129262002-07-24 Richard Earnshaw <rearnsha@arm.com>
12927
12928 * arm.md (arm_buneq, arm_bltgt): put '\' before ';' in output
12929 pattern.
12930 (arm_buneq_reversed, arm_bltgt_reversed): Likewise.
12931 (movsicc, movsfcc, movdfcc): FAIL if UNEQ or LTGT.
12932
8a3ad737
CD
129332002-07-24 Chris Demetriou <cgd@broadcom.com>
12934
12935 * config/mips/elf.h (STARTFILE_SPEC): Never include crt0.o.
12936 * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
12937 * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine.
12938
7e51e626
JH
12939Wed Jul 24 17:59:12 CEST 2002 Jan Hubicka <jh@suse.cz>
12940
12941 * toplev.c (rest_of_compilation): Dump loops before clobbering
12942 the structure.
12943
5df533b3
JH
12944Wed Jul 24 17:23:16 CEST 2002 Jan Hubicka <jh@suse.cz>
12945
12946 * rtlanal.c (keep_with_call_p): Avoid overflow in fixed_regs.
12947
79258dce
RS
129482002-07-24 Frank van der Linden <fvdl@wasabisystems.com>
12949
12950 PR optimization/7291
12951 * config/i386/i386.c (ix86_expand_clrstr): Fix bzero alignment
12952 problem on x86_64.
12953
26ff2117
GDR
129542002-07-24 Gabriel Dos Reis <gdr@nerim.net>
12955
12956 * pretty-print.h: Add macros from cp/error.c
12957
0ba1b2ff
AM
129582002-07-24 Alan Modra <amodra@bigpond.net.au>
12959
12960 * config/rs6000/rs6000-protos.h (mask_operand_wrap): Declare.
12961 (mask64_2_operand): Declare.
12962 (build_mask64_2_operands): Declare.
12963 (and64_2_operand): Declare.
12964 (extract_MB): Declare.
12965 (extract_ME): Declare.
12966 * config/rs6000/rs6000.c (mask64_operand): Allow all ones. Remove
12967 CONST_DOUBLE code.
12968 (mask_operand_wrap): New insn predicate.
12969 (mask64_2_operand): Likewise.
12970 (and64_2_operand): Likewise.
12971 (build_mask64_2_operands): New function.
12972 (extract_MB): New function.
12973 (extract_ME): New function.
12974 (print_operand <case m,M>): Use extract_MB and extract_ME.
12975 (print_operand <case S>): Allow all ones. Remove CONST_DOUBLE support.
12976 * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Add 't'.
12977 (PREDICATE_CODES): Add and64_2_operand, mask_operand_wrap and
12978 mask64_2_operand. Remove CONST_DOUBLE from mask64_operand.
12979 * config/rs6000/rs6000.md (andsi3_internal3): New
12980 (andsi3_internal3+1): Enable split for powerpc64.
12981 (andsi3_internal3+2): New split.
12982 (andsi3_internal4): Renamed old andsi3_internal3.
12983 (andsi3_internal5): New.
12984 (andsi3_internal5+1): Enable split for powerpc64.
12985 (andsi3_internal5+2): New split.
12986 (andsi3_internal6, andsi3_internal7, andsi3_internal8): New.
12987 (anddi3): Handle 't' constraint.
12988 (anddi3+1): New split.
12989 (anddi3_internal2): Handle 't' constraint.
12990 (anddi3_internal2+1): New split.
12991 (anddi3_internal3): Handle 't' constraint.
12992 (anddi3_internal3+1): New split.
12993
097657c3
AM
129942002-07-24 Alan Modra <amodra@bigpond.net.au>
12995
12996 * config/rs6000/rs6000.md: Remove scratch reg on insns using
12997 addze and similar (plus (comparison r1 r2) r3) insns. Add
12998 missing scratch reg in one case. Formatting fixes.
12999
a69cbaac
NB
130002002-07-24 Neil Booth <neil@daikokuya.co.uk>
13001
13002 * cppexp.c (parse_defined): Mark macro used.
13003 * cpphash.h (struct cpp_macro): New member "used".
13004 (_cpp_mark_macro_used, _cpp_warn_if_unused_macro): New.
13005 (struct cpp_reader): New member.
13006 * cppinit.c (cpp_finish_options): Set first_unused_line.
13007 (cpp_finish): Warn of unused macros if requested.
13008 (OPT_TABLE): New switches.
13009 (cpp_handle_option): Handle them.
13010 * cpplib.c (do_undef): Warn if macro unused.
13011 (do_ifdef, do_ifndef): Mark macro used.
13012 * cpplib.h (struct cpp_options): New member.
13013 * cppmacro.c (_cpp_warn_if_unused_macro): New.
13014 (enter_macro_context): Mark macro used.
13015 (_cpp_create_definition): Mark macro unused; warn if unused
13016 when redefined.
13017 * cpptrad.c (scan_out_logcial_line, push_replacement_text):
13018 Mark macros used.
13019 * doc/cppopts.texi: Update.
13020
c0667597
NB
130212002-07-23 Neil Booth <neil@daikokuya.co.uk>
13022
13023 * dwarf2out.c (SECTION_ASM_OP,
13024 ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
13025 * system.h (SECTION_ASM_OP): Poison.
13026 * tree.c (FILE_FUNCTION_PREFIX_LEN): Remove.
13027 * config/alpha/alpha-interix.h, config/mips/linux.h
13028 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
13029 * config/mmix/mmix-protos.h, config/mmix/mmix.c
13030 (mmix_asm_output_define_label_difference_symbol): Remove.
13031 * config/mmix/mmix.h
13032 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
b841421a 13033 * doc/tm.texi: Remove documentation.
c0667597 13034
bf7cd754
R
13035Tue Jul 23 21:49:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
13036
13037 * recog.c (asm_operand_ok): Allow float CONST_VECTORs for 'F'.
13038 (constrain_operands): Likewise.
13039 * regclass.c (record_reg_classes): Likewise.
13040 * reload.c (find_reloads): Likewise.
13041 * doc/md.texi: Likewise.
451f86fd
R
13042
13043 * reload.c (find_reloads_toplev): Use simplify_gen_subreg.
13044 * simplify-rtx.c (simplify_subreg): When converting to a non-int
13045 mode, try to convert to an integer mode of matching size first.
1d5fa6b4
R
13046
13047 * simplify-rtx.x (simplify_subreg): When constructing a CONST_VECTOR
13048 from individual subregs, check that each subreg has been generated
13049 sucessfully.
13050
10d6af32
NB
130512002-07-23 Neil Booth <neil@daikokuya.co.uk>
13052
13053 * genautomata.c (VLA_HWINT_SHORTEN, VLA_HWINT_LAST): Remove.
13054 * df.c (HANDLE_SUBREG, FOR_EACH_BB_IN_BITMAP_REV,
13055 FOR_EACH_BB_IN_SBITMAP): Remove.
13056 * gcse.c (NEVER_SET, FOLLOW_BACK_EDGES): Remove.
13057 * haifa-sched.c (DONE_PRIORITY, MAX_PRIORITY, TAIL_PRIORITY,
13058 LAUNCH_PRIORITY, DONE_PRIORITY_P, LOW_PRIORITY_P): Remove.
13059 * loop.c (PREFETCH_BLOACK_IN_LOOP_MIN,
13060 PREFETCH_LIMIT_TO_SIMULTANEOUS): Remove.
13061 * regrename.c (REGNO_MODE_OK_FOR_BASE_P): Remove.
13062
6aaae39a
GDR
130632002-07-23 Gabriel Dos Reis <gdr@nerim.net>
13064
13065 * pretty-print.h: New file.
13066
45e574d0
JDA
130672002-07-23 Paul Koning <pkoning@equallogic.com>
13068
13069 * real.c (REAL_WORDS_BIG_ENDIAN): Make 1 for DEC.
13070 (LARGEST_EXPONENT_IS_NORMAL): Ditto.
13071 (VAX_HALFWORD_ORDER): Define (1 for DEC VAX, 0 otherwise).
13072 (TARGET_G_FLOAT): Default to 0 if not defined.
99086d59 13073 (ieeetoe): New, common routine to convert target format floats
45e574d0
JDA
13074 to internal form.
13075 (e24toe, e53toe): Change to use ieeetoe, distinguish DEC
13076 vs. others.
13077 (e113toe): Change to use ieeetoe.
13078
130792002-07-23 Roman Lechtchinsky <rl@cs.tu-berlin.de>
13080
13081 * real.c (REAL_WORDS_BIG_ENDIAN): Make sure it is 0 for DEC and 1 for
13082 IBM.
13083 (e53toe): Assume IEEE if non of DEC, IBM and C4X is defined.
13084 (e64toe): Remove special cases for DEC and IBM. Remove support for
13085 ARM_EXTENDED_IEEE_FORMAT.
13086 (e24toe): Remove special cases for DEC.
13087 (significand_size): Simplify. Indent.
13088 (ieee_format, ieee_24, ieee_53, ieee_64, ieee_113): New.
13089 (etoieee, toieee): New.
13090 (etoe113, toe113, etoe64, toe64, etoe53, toe53, etoe24, toe24): Use
13091 etoieee and toieee for IEEE arithmetic.
13092
3764f879
GDR
130932002-07-23 Gabriel Dos Reis <gdr@nerim.net>
13094
13095 * doc/extend.texi: Say ISO C90, not ISO C89.
13096 * doc/invoke.texi: Likewise.
13097 * doc/standards.texi: Likewise.
13098
aa0f70e6
SE
130992002-07-23 Steve Ellcey <sje@cup.hp.com>
13100
13101 * gcc/explow.c (convert_memory_address): Fix conversion of CONSTs.
13102 Fix permutation of conversion and plus/mult.
13103 * gcc/builtins.c (expand_builtin_memcpy) Ensure return pointer is
13104 ptr_mode and not Pmode when POINTERS_EXTEND_UNSIGNED is defined.
13105 (expand_builtin_strncpy) Ditto.
13106 (expand_builtin_memset) Ditto.
13107
fa72b064
GDR
131082002-07-23 Gabriel Dos Reis <gdr@nerim.net>
13109
13110 Fix PR/7363:
13111 * c-common.c (c_sizeof_or_alignof_type): New function.
13112 (c_alignof): Remove definition.
13113 * c-common.h (c_sizeof, c_alignof): Define as macros.
13114 (c_sizeof_or_alignof_type): Declare.
13115 (my_friendly_assert): Moved from cp/cp-tree.h
13116 * c-typeck.c (c_sizeof): Remove definition.
13117
2b773ee2
JH
131182002-07-23 Jan Hubicka <jh@suse.cz>
13119
13120 * gcse.c (try_replace_reg): Use num_changes_pending.
13121 * recog.c (num_changes_pending): New function.
13122 (validate_replace_src): Use validate_repalce_src_group.
13123 (validate_replace_src_group): New.
13124 * recog.h (validate_repalce_src_group): New.
13125 (num_changes_pending): Likewise.
13126
a0dc500c
R
13127Tue Jul 23 12:16:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
13128
13129 * calls.c (emit_library_call_value_1): If
13130 FUNCTION_ARG_PASS_BY_REFERENCE is true, pretend this is neither
13131 libcall, const call nor pure call.
13132
d22eda7b
NB
131332002-07-23 Neil Booth <neil@daikokuya.co.uk>
13134
13135 * config/m88k/m88k.h (SECTION_ASM_OP): Remove.
13136
b5e66e65
NB
131372002-07-23 Neil Booth <neil@daikokuya.co.uk>
13138
13139 * vmsdbgout.c (SECTION_ASM_OP): Remove.
13140
c3a600c0
NB
131412002-07-23 Neil Booth <neil@daikokuya.co.uk>
13142
13143 * config/i386/i386.c (AT_BP): Remove.
13144
4fa31c2a
NB
131452002-07-23 Neil Booth <neil@daikokuya.co.uk>
13146
13147 * defaults.h (obstack_chunk_alloc, obstack_chunk_free):
13148 Default definition.
13149 * gcse.c: Don't define obstack_chunk_free.
13150 * collect2.c, conflict.c, df.c, diagnostic.c, fix-header.c,
13151 flow.c, gcc.c, genattrtab.c, genautomata.c, genflags.c, gensupport.c,
13152 integrate.c, loop.c, ra.c, read-rtl.c, regrename.c, reload1.c,
13153 reorg.c, tlink.c, tree.c, config/arm/arm.c, objc/objc-act.c:
13154 Don't define obstack macros.
13155
fd576c86
SC
131562002-07-22 Stephane Carrez <stcarrez@nerim.fr>
13157
13158 PR target/6744
13159 * config/m68hc11/m68hc11.c (m68hc11_z_replacement): Also replace
13160 ASM_OPERANDS instructions.
13161
b791ff31
SC
131622002-07-22 Stephane Carrez <stcarrez@nerim.fr>
13163
13164 PR target/7361
13165 * config/m68hc11/m68hc11.c (go_if_legitimate_address_internal): Accept
13166 constant addresses only on 68HC12.
13167
4a941115
NB
131682002-07-22 Neil Booth <neil@daikokuya.co.uk>
13169
13170 * cppfiles.c (stack_include_file): Correct test of whether
13171 a dependency should be output.
13172
7488cc6d
DE
131732002-07-22 David Edelsohn <edelsohn@gnu.org>
13174
13175 * collect2.c (is_ctor_dtor): Add other possible JOINER values.
13176
b41caf7c
RE
131772002-07-22 Richard Earnshaw <rearnsha@arm.com>
13178
13179 * arm.md (movqi): If optimizing and we can create pseudos, use
13180 a ZERO_EXTEND to load from memory, then copy the result into the
13181 target.
13182 (movhi): Likewise, but only for ARMv4.
13183
492e9934
NB
131842002-07-22 Neil Booth <neil@daikokuya.co.uk>
13185
13186 * ssa-ccp.c (PHI_PARMS): Remove.
13187
f01f01a6
RS
131882002-07-22 Richard Sandiford <rsandifo@redhat.com>
13189
13190 * config/mips/mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS
13191 on big-endian targets.
13192
c2ae8aef
KG
131932002-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13194
13195 * hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE,
13196 HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
13197 HOST_WIDEST_INT_PRINT_DEC_SPACE, HOST_WIDEST_INT_PRINT_DEC_SPACE):
13198 New formatting macros.
13199
13200 * ra-debug.c (dump_static_insn_cost): Avoid string concatenation.
13201
eab2120d
R
13202Mon Jul 22 15:27:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
13203
13204 * rtlanal.c (subreg_regno_offset): Return correct offset for
13205 big endian paradoxical subregs.
0d541696
R
13206
13207 * optabs.c (expand_vector_unop): Don't expand using sub_optab
13208 if we got the wrong mode.
bb9b3805
R
13209
13210 * hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define.
13211 * genrecog.c (write_switch, write_cond): Use it.
13212 * genemit.c (gen_exp): Likewise.
13213
e96eb215
JJ
132142002-07-22 Jakub Jelinek <jakub@redhat.com>
13215
13216 * c-decl.c (build_compound_literal): Set decl TREE_READONLY from TYPE.
13217
cf3c4f56
JJ
132182002-07-22 Jakub Jelinek <jakub@redhat.com>
13219
13220 * c-decl.c (build_compound_literal): Defer compound literal decls
13221 until until file end to emit them only if they are actually used.
13222
533c4863
KG
132232002-07-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13224
13225 * ra-build.c (check_conflict_numbers): Hide unused function.
13226 (livethrough_conflicts_bb): Avoid automatic aggregate
13227 initialization.
13228 (parts_to_webs_1): Avoid `U' integer constant modifier.
13229 (conflicts_between_webs): Wrap a variable in the macro controlling
13230 its usage.
13231 * ra-debug.c (ra_debug_msg): Use VA_OPEN/VA_CLOSE.
13232 (dump_igraph, dump_graph_cost): Avoid string concatenation
13233 (dump_static_insn_cost): Avoid automatic aggregate
13234 initialization.
13235 * ra-rewrite.c (insert_stores): Avoid automatic aggregate
13236 initialization.
13237 (dump_cost): Avoid string concatenation
13238
8943a0b4
RH
132392002-07-21 Richard Henderson <rth@redhat.com>
13240
13241 * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Don't use
13242 GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded.
13243
b1aef35b
RH
132442002-07-21 Richard Henderson <rth@redhat.com>
13245
13246 * unroll.c (find_splittable_givs): Do not split DEST_ADDR givs
13247 that are not unrolled completely.
13248
5e1afb11
RH
132492002-07-21 Richard Henderson <rth@redhat.com>
13250
13251 * loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS.
13252 * loop.c (strength_reduce): Update.
13253 * toplev.c (rest_of_compilation): Do unrolling in the first
13254 loop pass, not the second.
13255
c67a1cf6
RH
132562002-07-21 Richard Henderson <rth@redhat.com>
13257
13258 * emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL
13259 when flag_argument_noalias == 2.
13260 * alias.c (nonoverlapping_memrefs_p): Handle that.
13261 * print-rtl.c (print_mem_expr): Likewise.
13262
b68daef4
HS
132632002-07-21 Hartmut Schirmer <hartmut.schirmer@arcor.de>
13264
13265 * libgcc2.c (__divdi3, __moddi3): Use unary minus operator
13266 instead of __negdi2 directly.
13267
060a58c5
NB
132682002-07-21 Neil Booth <neil@daikokuya.co.uk>
13269
13270 * gengenrtl.c (gencode): Don't define obstack_alloc_rtx.
13271 * function.c (SYMBOL__MAIN): Remove definition.
13272 * global.c (SET_CONFLICT, REGBITP, ALLOCNO_LIVE_P): Remove.
99086d59 13273 * predict.c (PROB_NEVER, PROB_LIKELY, PROB_UNLIKELY): Remove.
060a58c5
NB
13274 * profile.c (GCOV_INDEX_TO_BB): Remove.
13275 * sched-rgn.c (ABS_VALUE, MIN_DIFF_PRIORITY, MIN_PROB_DIFF): Remove.
13276 * simplify-rtx.c (FIXED_BASE_PLUS_P): Remove.
13277
2f8dd115
NB
132782002-07-21 Neil Booth <neil@daikokuya.co.uk>
13279
13280 * c-lex.c (GET_ENVIRONMENT): Remove.
13281 * collect2.c (GET_ENV_PATH_LIST): Remove.
13282 (prefix_from_env): Use GET_ENVIRONMENT.
13283 * cppinit.c (GET_ENV_PATH_LIST): Remove.
13284 (init_standard_includes): Use GET_ENVIRONMENT.
13285 * defaults.h (GET_ENVIRONMENT): Define here if not already.
13286 * gcc.c (GET_ENV_PATH_LIST): Remove.
13287 (make_relative_prefix, process_command): Update.
13288 * protoize.c (GET_ENV_PATH_LIST): Remove.
13289 (do_processing): Update.
13290
56508306
GDR
132912002-07-21 Gabriel Dos Reis <gdr@nerim.net>
13292
13293 * c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'.
13294 (grokdeclarator): Likewise.
13295 * c-format.c (C_STD_NAME): Likewise.
13296 * c-lex.c (interpret_integer): Likewise.
13297 * c-typeck.c (build_array_ref): Likewise.
13298 * cpplex.c (_cpp_lex_direct): Likewise.
13299 * toplev.c (documented_lang_options): Likewise.
13300
e2f62855
NB
133012002-07-21 Neil Booth <neil@daikokuya.co.uk>
13302
13303 * c-format.c (T99_I, T99_UI): Remove.
13304
c89d1dfd
NB
133052002-07-21 Neil Booth <neil@daikokuya.co.uk>
13306
13307 * c-typeck.c (SAVE_SPELLING_DEPTH): Remove.
13308
46690369
JH
13309Sun Jul 21 21:36:41 CEST 2002 Jan Hubicka <jh@suse.cz>
13310
13311 * gcse.c (do_local_cprop): Do not extend lifetimes of registers set by
13312 do_local_cprop.
13313
60ffc1b8
AJ
133142002-07-21 Andreas Jaeger <aj@suse.de>
13315
99086d59 13316 * reload1.c (fixup_abnormal_edges): Remove unused variable.
60ffc1b8 13317
c05ffc49
BS
133182002-07-21 Bernd Schmidt <bernds@redhat.com>
13319
13320 Improvements for the ifcvt pass from Michael Meissner, with patches
13321 by Richard Sandiford <rsandifo@redhat.com>
13322 * basic-block.h (struct ce_if_block, ce_if_block_t): New types.
13323 * ifcvt.c (cond_exec_changed_p): New static variable.
13324 (last_active_insn): New function, renamed from last_active_insn_p
13325 and changed to return the last active insn in a basic block. All
13326 callers updated.
13327 (block_fallthru): New function.
13328 (cond_exec_process_insns): New argument CE_INFO. Pass it to
13329 IFCVT_MODIFY_INSN. All callers updated.
13330 Return false if START or END are NULL.
13331 Handle case where we're processing an insn that is already
13332 conditional.
13333
13334 (noce_process_if_block): CE_INFO argument rather than
13335 multiple args containing the involved basic blocks. All callers
13336 changed.
13337 (process_if_block, merge_if_block, find_if_block,
13338 cond_exec_process_if_block): Likewise.
13339
13340 (cond_exec_process_if_block): New arg DO_MULTIPLE_P. All callers
13341 changed.
13342 Use new function last_active_insn to simplify some code.
13343 New code to handle multiple tests.
13344 Call IFCVT_MODIFY_CANCEL in all failure cases, otherwise set
13345 cond_exec_changed_p to TRUE.
13346
13347 (process_if_block): New code to handle multiple tests.
13348 (merge_if_block): Likewise.
13349 (find_if_header): New arg PASS. Changed to return the currently
13350 processed basic block or NULL instead of true/false. All callers
13351 changed.
13352 Call IFCVT_INIT_EXTRA_FIELDS.
13353 (block_jumps_and_fallthru_p): New function.
13354 (find_if_block): Discover opportunities to convert multiple tests.
13355 Add additional debugging output.
13356 Update the ce_info structure before returning.
13357
13358 (if_convert): Run multiple passes of if-conversion.
13359 * doc/tm.texi (IFCVT_MODIFY_TESTS, IFCVT_MODIFY_INSN,
13360 IFCVT_MODIFY_FINAL, IFCVT_MODIFY_CANCEL, IFCVT_MODIFY_MULTIPLE_TESTS,
13361 IFCVT_INIT_EXTRA_FIELDS, IFCVT_EXTRA_FIELDS): Update documentation for
13362 these macros.
13363
ae860ff7
JH
13364Sun Jul 21 00:54:54 CEST 2002 Jan Hubicka <jh@suse.cz>
13365
13366 * gcse.c: Include cselib.h
13367 (constptop_register): Break out from ...
13368 (cprop_insn): ... here; kill basic_block argument.
13369 (do_local_cprop, local_cprop_pass): New functions.
13370 (one_cprop_pass): Call local_cprop_pass.
13371
0da65b89
RS
133722002-07-20 Roger Sayle <roger@eyesopen.com>
13373
13374 * simplify-rtx.c (simplify_relational_operation): Optimize
13375 abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).
13376
47cc673a
MM
133772002-07-20 Michae Matz <matz@suse.de>
13378
13379 * ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.
13380
68e65275
NB
133812002-07-20 Neil Booth <neil@daikokuya.co.uk>
13382
13383 * cppexp.c (struct op): Add token pointer.
13384 (check_promotion, CHECK_PROMOTION): New.
13385 (optab): Update.
13386 (_cpp_parse_expr): Update, use token pointer of struct op.
13387 (reduce): Warn about change of sign owing to promotion.
13388 * cppinit.c (cpp_handle_option): New warning if -Wall.
13389 * cpplib.h (struct cpp_options): New member.
13390
e3485bbc
DE
133912002-07-19 David Edelsohn <edelsohn@gnu.org>
13392
13393 * config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
13394 fpu list. Separate Power4 compare and delayed_compare. Correct
13395 Power4 fpcompare.
13396 (fix_truncdfsi2_internal): Restore FPR preference.
13397 * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
13398 mcpu?power4, mcpu?604e. Remove mpower, mpower2, mpowerpc.
13399
449655a6
MV
134002002-07-19 Momchil Velikov <velco@fadata.bg>
13401
13402 * reload1.c (reload_as_needed): Duplicate oldpat.
13403
8b583747
AM
134042002-07-20 Alan Modra <amodra@bigpond.net.au>
13405
13406 PR optimization/7130
13407 * loop.h (struct loop_info): Add "preconditioned".
13408 * unroll.c (unroll_loop): Set it.
13409 * doloop.c (doloop_modify_runtime): Correct count for unrolled loops.
13410
0dc36574
ZW
134112002-07-19 Zack Weinberg <zack@codesourcery.com>
13412
13413 * rtl.def (CODE_LABEL): Remove slot 8.
13414 * rtl.h (struct rtx_def): Document new uses of jump and call fields.
13415 (LABEL_ALTERNATE_NAME): Delete.
13416 (LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New.
13417 * defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME.
13418
13419 * final.c (output_alternate_entry_point): New.
13420 (final_scan_insn): Use it instead of
13421 ASM_OUTPUT_ALTERNATE_LABEL_NAME. Do not consider possibility
13422 of a case label being an alternate entry point.
13423
13424 * cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P.
13425 * emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL.
13426 Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME
13427 (field deleted).
13428 * print-rtl.c, ra-debug.c: Update code to output CODE_LABELs.
13429
13430 * doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and
13431 LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME.
13432 * doc/tm.texi: Delete documentation of
13433 ASM_OUTPUT_ALTERNATE_LABEL_NAME.
13434
59267987
RO
134352002-07-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
13436
13437 * config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
13438 (PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
13439 (LINK_SPEC): Define.
13440 (STARTFILE_SPEC): Define.
13441 (ENDFILE_SPEC): Define.
13442
13443 * config/mips/iris6-o32.h (LINK_SPEC): Move ...
13444 * config/mips/iris6-o32-as.h (LINK_SPEC): ... here.
13445
13446 * config/mips/iris6-o32-gas.h: New file.
13447 * config.gcc (mips-sgi-irix6*o32): Use it.
13448
13449 * config/mips/t-iris5-gas: New file.
13450 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
13451
75aef48a
NB
134522002-07-19 Neil Booth <neil@daikokuya.co.uk>
13453
13454 * cppexp.c (ALWAYS_EVAL): Remove.
13455 (optab, reduce): Always evaluate.
13456 (num_unary_op, num_binary_op, num_div_op): Issue diagnostics
13457 only if not skipping evaluation.
13458
72a5503d
MM
134592002-07-19 Marek Michalkiewicz <marekm@amelek.gda.pl>
13460
13461 * config/avr/avr.c (debug_hard_reg_set): Remove.
13462
059ba716
CD
134632002-07-19 Chris Demetriou <cgd@broadcom.com>
13464
13465 * gcc.c (cpp_options): Include "%1" (cc1_spec).
13466
544823b6
RH
134672002-07-19 Richard Henderson <rth@redhat.com>
13468
13469 * loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.
13470
c35383cb
AM
134712002-07-19 Alan Modra <amodra@bigpond.net.au>
13472
13473 * prefix.c (update_path): Don't zap single `.' path components
13474 unless followed by another `.' and fix typo last patch.
13475
ad28cff7
NB
134762002-07-18 Neil Booth <neil@daikokuya.co.uk>
13477
13478 * cppexp.c (cpp_num_mul): Remove unused parameter.
13479 (UNARY, BINARY, OTHER, binary_handler): Remove.
13480 (ALWAYS_EVAL): New.
13481 (optab): Update.
13482 (reduce): Refactor to a large switch, don't use a function
13483 pointer.
13484
139b7f86
BT
134852002-07-18 Bo Thorsen <bo@berlioz.suse.de>
13486
13487 * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Define this always.
13488
e69d1422
R
13489Thu Jul 18 19:39:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
13490
13491 * sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.
13492 (sh_expand_binop_v2sf): Likewise.
13493 * sh.c (machine_dependent_reorg): Add move for UNSPEC_MOVA.
13494 (int_gpr_dest, trunc_hi_operand): New functions.
13495 * sh.h (PREDICATE_CODES): Add any_register_operand, int_gpr_dest and
13496 trunc_hi_operand.
13497 (SPECIAL_MODE_PREDICATES, any_register_operand): Define.
13498 * sh.md (cmpeqdi_t+1): Remove comments that genrecog warns about.
13499 (adddi3_compact+1, subdi3_compact+1, ashlsi3_n+1, ashlhi3+1): Likewise.
13500 (ashrsi2_16+1, ashrsi2_31+1, lshrsi3_n+1, ashrdi3+[12]): Likewise.
13501 (and_shl_scratch+[12], zero_extendhidi2+1): Likewise.
13502 (zero_extendhisi2_media+1, extendhidi2+1, extendqidi2+1): Likewise.
13503 (extendhisi2_media+1, extendqisi2_media+1): Likewise.
13504 (movsi_media_nofpu+[12], movhi_media+1, movdi_media_nofpu+1): Likewise.
13505 (movdi_const_16bit+[12], movdf_i4+[123], reload_outdf+[2-5]): Likewise.
13506 (movsf_ie+1): Likewise.
13507 (loaddi_trunc): Use int_gpr_dest predicate.
13508 (use_sfunc_addr, indirect_jump_scratch, sibcall_compact): Add mode(s).
13509 (mova, mova_const, GOTaddr2picreg, ptrel, casesi_worker_0): Likewise.
13510 (casesi_worker_0+[12], casesi_worker): Likewise.
13511 (shcompact_preserve_incoming_args): Likewise.
13512 (mov_nop): Use any_register_operand predicate.
13513 (mperm_w0): Use trunc_hi_operand predicate.
13514
47a4976f
JDA
135152002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
13516
13517 * pa-linux.h (DWARF2_UNWIND_INFO): Delete define.
13518 * pa.h (EH_RETURN_DATA_REGNO): Revise TARGET_64BIT and correct
13519 numbering.
13520
f3a4e54e
JDA
135212002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
13522
13523 * pa.c (output_deferred_plabels): Remove unused millicode enum mulU.
13524
30484ccf
RH
135252002-07-18 Richard Henderson <rth@redhat.com>
13526
13527 PR optimization/7147
13528 * ifcvt.c (noce_get_condition): Make certain that the condition
13529 is valid at JUMP.
13530
d042370e
R
13531Thu Jul 18 13:44:51 2002 J"orn Rennecke <joern.rennecke@superh.com>
13532
13533 * sh.c (barrier_align, push): Shut up compiler warnings.
13534 (initial_elimination_offset,sh_media_init_builtins): Likewise.
13535 (reg_no_subreg_operand): Delete.
13536
61fee9b3
BT
135372002-07-17 Bo Thorsen <bo@suse.de>
13538
13539 * config/i386/linux64.h (LINK_SPEC): Remove bogus -Y option.
13540 (STARTFILE_PREFIX_SPEC): Define for NATIVE_CROSS compilations.
13541 (STARTFILE_SPEC): Remove hardcoded library paths.
13542 (ENDFILE_SPEC): Likewise.
13543
f305679f
JH
13544Thu Jul 18 09:38:59 CEST 2002 Jan Hubicka <jh@suse.cz>
13545
13546 * gcse.c (hoist_expr_reaches_here_p): Stop once expr_bb is reached.
13547
13548 * gcse.c (try_replace_reg): Do not return false positives.
13549
99bcb625
AM
135502002-07-18 Alan Modra <amodra@bigpond.net.au>
13551
f6f23ad2
AM
13552 * prefix.c: (update_path): Strip ".." components when prior dir
13553 doesn't exist. Pass correct var to UPDATE_PATH_HOST_CANONICALIZE.
13554
99bcb625
AM
13555 * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.
13556 (ASM_OUTPUT_REG_POP): Likewise.
13557
09eeeacb
AM
135582002-07-18 Alan Modra <amodra@bigpond.net.au>
13559
13560 * config/rs6000/rs6000.c (first_reg_to_save): Remove bogus
13561 adjustments to first_reg for profiling case.
13562 (output_function_profiler): Correct lr save slot for ABI_AIX_NODESC.
13563 Disable profiling for 64 bit code on both ABI_V4 and ABI_AIX_NODESC.
13564 Save static chain reg to sp + 12 on ABI_AIX_NODESC.
13565 * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Define.
13566 (ASM_OUTPUT_REG_POP): Define.
13567 * config/rs6000/linux64.h (ASM_OUTPUT_REG_PUSH): Undef.
13568 (ASM_OUTPUT_REG_POP): Undef.
13569
74d06cf2
NB
135702002-07-17 Neil Booth <neil@daikokuya.co.uk>
13571
13572 * cpplib.c (do_sccs): Handle #sccs on all systems.
13573 * system.h (SCCS_DIRECTIVE): Poison.
13574 * config/darwin.h, config/freebsd.h, config/netbsd.h,
13575 config/ptx4.h, config/svr3.h, config/svr4.h, config/alpha/elf.h,
13576 config/arm/linux-elf.h, config/c4x/c4x.h, config/d30v/d30v.h,
13577 config/i370/i370.h, config/i386/gas.h, config/i386/sco5.h,
13578 config/i960/i960.h, config/m68hc11/m68hc11.h, config/m68k/3b1.h,
13579 config/m68k/3b1g.h, config/m68k/crds.h, config/m68k/mot3300.h,
13580 config/m68k/pbb.h, config/m88k/m88k.h, config/mips/mips.h,
13581 config/sparc/pbd.h, config/stormy16/stormy16.h, config/vax/vaxv.h:
13582 Remove all references to SCCS_DIRECTIVE.
13583 * doc/cpp.texi, doc/tm.texi: Update.
13584
61dde664
R
13585Wed Jul 17 19:23:32 2002 J"orn Rennecke <joern.rennecke@superh.com>
13586
13587 * regrename.c (maybe_mode_change): New function.
13588 (find_oldest_value_reg, copyprop_hardreg_forward_1): Use it.
13589
97f51ac4
RB
135902002-07-17 Rodney Brown <rbrown64@csc.com.au>
13591
13592 * config/i386/i386.c (ix86_expand_int_movcc): In the general case
13593 suppress addition when either ct or cf are zero.
13594
a9b6f1e7 135952002-07-17 Eric Botcazou <ebotcazou@multimania.com>
30484ccf 13596 Glen Nakamura <glen@imodulo.com>
f1a73cfe
EB
13597
13598 PR optimization/6713
13599 * loop.c (loop_givs_rescan): Explicitly delete the insn that
13600 sets a non-replaceable giv after issuing the new one.
13601
23ff0223
NB
136022002-07-17 Neil Booth <neil@daikokuya.co.uk>
13603
13604 * cppexp.c (cpp_interpret_integer, append_digit, parse_defined,
13605 eval_token): Clarify and correct use of "bool" variables.
13606 * cpplib.h (struct cpp_options): Similarly.
13607 * cppmacro.c (parse_params, _cpp_save_parameter): Ditto.
13608 * cpptrad.c (recursive_macro): Similarly.
13609
ac09192a
R
13610Wed Jul 17 17:08:06 2002 J"orn Rennecke <joern.rennecke@superh.com>
13611
d28586ab 13612 * config/sh/lib1funcs.asm (udivsi3_i4): Implement SHcompact version in
ac09192a 13613 SHmedia code.
68cef009
R
13614
13615 * sh.md (cmpgtudi_media): Remove spurious @.
701e3726
R
13616
13617 * config/sh/lib1funcs.asm (FMOVD_WORKS): Don't define for little endian.
13618 * sh.h (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for little endian.
ca903bba
R
13619
13620 * config/sh/lib1funcs.asm (init_trampoline): New entry point.
13621 * sh-protos.h (sh_initialize_trampoline): Declare.
13622 * sh.c (sh_initialize_trampoline): New function.
13623 * sh.h (TRAMPOLINE_SIZE): Only 24 for TARGET_SHMEDIA32.
13624 (TRAMPOLINE_ALIGNMENT): Need cache-line alignment for TARGET_SHMEDIA.
13625 (INITIALIZE_TRAMPOLINE): Call sh_initialize_trampoline.
13626 (TRAMPOLINE_ADJUST_ADDRESS): Not needed for SHcompact.
13627 * sh.md (initialize_trampoline, double_shori): New patterns.
13628 (initialize_trampoline_compact): Likewise.
13629 (shmedia32_initialize_trampoline_big): Remove.
13630 (shmedia32_initialize_trampoline_little): Likewise.
0ac78517
R
13631
13632 * sh-protos.h (binary_float_operator): Remove declaration.
13633 (sh_expand_unop_v2sf, sh_expand_binop_v2sf): Declare.
13634 * sh.c (print_operand, case 'N'): Check against CONST0_RTX.
13635 (unary_float_operator, sh_expand_unop_v2sf): New functions.
13636 (sh_expand_binop_v2sf): Likewise.
13637 (zero_vec_operand): Delete.
13638 (SH_BLTIN_UDI): New builtin shared signature define. Renumbered
13639 all non-shared ones.
13640 (bdesc): Change all the mextr builtins to use SH_BLTIN_UDI.
13641 Enable nsb and byterev.
13642 * sh.h (CONDITIONAL_REGISTER_USAGE): Initialize DF_HI_REGS.
13643 (HARD_REGNO_MODE_OK): Allow TImode in fp regs. Allow V2SFmode
13644 in general regs.
13645 (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add DF_HI_REGS.
13646 (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. Remove clause for
13647 immediate operands.
13648 (SECONDARY_INPUT_RELOAD_CLASS): Add clause for immediate operands.
13649 Add DF_HI_REGS.
13650 (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Allow
13651 lowpart fp regs - only for big endian for now.
da7d8304 13652 (LEGITIMATE_CONSTANT_P): Don't allow nonzero float vectors
0ac78517
R
13653 when FPU is in use.
13654 (EXTRA_CONTRAINT_U): Check against CONST0_RTX.
13655 (LOAD_EXTEND_OP): NIL for SImode.
13656 (REGISTER_MOVE_COST): Add DF_HI_REGS. Const for moves between
13657 general and fp registers is 4.
13658 PREDICATE_CODES: Amend binary_float_operator entry.
13659 Remove zero_vec_operand. Add unary_float_operator.
13660 * sh.md (udivsi3_i4_media): Use truncate instead of paradoxical
13661 subreg SET_DEST.
13662 (truncdisi2, truncdihi2, movv2sf): Allow memory destinations.
13663 (truncdiqi2): Do sign extension.
13664 (movsi_media, movdi_media): Allow to use r63 to an fp register.
13665 (movdf_media, movsf_media): Likewise.
13666 (movv2sf_i, movv2sf_i+1): Don't use f{ld,st}.p or SUBREGS.
13667 Collapse to one define_insn_and_split. Allow immediate sources.
13668 (addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New patterns.
13669 (movv4sf_i): Allow immediate sources. Use simplify_gen_subreg.
13670 (movv4sf): Allow immediate sources.
13671 (movsf_media_nofpu+1): Don't split moves to FP registers.
13672 (unary_sf_op, binary_sf_op, mshflo_w_x, concat_v2sf): New patterns.
13673 (movv8qi_i+3): Check against CONST0_RTX.
13674 (mextr1, mextr2. mextr3. mextr4, mextr5, mextr6, mextr7): Use DImode
13675 for input and output operands. Fix argument 3 to gen_mextr_rl.
13676 (mmul23_wl, mmul01_wl, mmulsum_wq_i): s/const_vector/parallel/
13677 (msad_ubq_i, mshf4_b, mshf0_b, mshf4_l, mshf0_l, mshf4_w): Likewise.
13678 (mshf0_w, fipr, ftrv): Likewise.
13679 (mshfhi_l_di): Now insn_and_split. Can handle FP regs.
13680
e9d7b180
JD
136812002-07-17 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
13682
13683 * arm.h (ARM_NUM_INTS, ARM_NUM_REGS, ARM_NUM_REGS2): Renamed from
13684 NUM_INTS, NUM_REGS and ARM_NUM_REGS2 respectively. All uses changed.
13685 * arm.c: Similarly.
13686
8214bf98
RS
136872002-07-17 Richard Sandiford <rsandifo@redhat.com>
13688
13689 * config/mips/mips-protos.h (mips_sign_extend): Declare.
13690 * config/mips/mips.h (MASK_DEBUG_H, TARGET_DEBUG_H_MODE): Remove.
13691 (TARGET_SWITCHES): Remove debugh.
13692 (ISA_HAS_TRUNC_W): New macro.
13693 (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS if TARGET_FLOAT64.
13694 (PREDICATE_CODES): Remove se_nonimmediate_operand.
13695 * config/mips/mips.c (movdi_operand): Allow sign-extensions of
13696 any SImode move_operand.
13697 (se_nonimmediate_operand): Remove.
13698 (mips_sign_extend): New.
13699 (mips_move_2words): Use it for sign-extended source operands.
13700 (override_options): Allow integers to be put into single FPRs.
13701 (mips_secondary_reload_class): Handle integers in float registers.
13702 * config/mips/mips.md (extendsidi2): Turn into a define_expand.
13703 (fix_truncsfsi2, fix_truncdfsi2): Likewise.
13704 (fix_truncdfsi2_insn, fix_truncdfsi2_macro): New.
13705 (fix_truncsfsi2_insn, fix_truncsfsi2_macro): New.
13706 (fix_truncdfdi2): Provide only a single alternative, in which the
13707 integer is in a float register. Depend on TARGET_FLOAT64 rather
13708 than TARGET_64BIT.
13709 (fix_truncsfdi2, floatdidf2, floatdisf2): Likewise.
13710 (floatsidf2, floatsisf2): Likewise, but no TARGET_FLOAT64 dependency.
13711 (movdi_internal2): Don't allow the source operand to be sign-extended.
13712 Add alternatives for float registers.
13713 (*movdi_internal2_extend): New. Version of movdi_internal2 that
13714 allows sign-extension.
13715 (*movdi_internal2_mips16): Name the existing mips16 movdi pattern.
13716 (movsi_internal2): Rename to movsi_internal. Add alternatives for
13717 float registers. Remove TARGET_DEBUG_H_MODE test.
13718 (movhi_internal1): Rename to movhi_internal. Don't check
13719 TARGET_DEBUG_H_MODE. Fix transposed *d and *f source constraints.
13720 (movqi_internal1): Rename to movqi_internal and remove
13721 TARGET_DEBUG_H_MODE dependency.
13722 (movsi_internal1, movhi_internal2, movqi_internal2): Remove.
13723
7ab0121e
JW
137242002-07-16 Jim Wilson <wilson@redhat.com>
13725
13726 * toplev.c (lang_dependent_init): Create function context for
13727 init_expr_once.
13728
349ccf2e
HPN
137292002-07-16 Hans-Peter Nilsson <hp@axis.com>
13730
13731 * config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't
13732 --gc-sections if -r.
13733 * config/cris/cris.h: Ditto.
13734
06ec023f
RB
137352002-07-16 Rodney Brown <rbrown64@csc.com.au>
13736
13737 * config/i386/i386.c (ix86_expand_int_movcc): In the case where
13738 the comparison directly gives a mask suppress addition when cf is
13739 zero by complementing the mask.
13740
39cef914
NN
137412002-07-16 Nathanael Nerode <neroden@gcc.gnu.org>
13742
13743 * Makefile.in: Delete references to enquire.
13744 * enquire.c: Move to contrib.
13745
92c1a778
SS
137462002-07-16 Stan Shebs <shebs@apple.com>
13747
2aa9948d
SS
13748 * config/darwin.h (ASM_OUTPUT_LABEL): Move to here from
13749 config/rs6000/darwin.h.
13750 (ASM_OUTPUT_SKIP): Ditto.
13751 (TEXT_SECTION_ASM_OP): Ditto.
13752 (DATA_SECTION_ASM_OP): Ditto.
13753 (ASM_APP_ON): Define.
13754 (ASM_APP_OFF): Define.
13755 * config/rs6000/darwin.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_SKIP,
13756 TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Remove.
13757
13758 * config/darwin.c (func_name_maybe_scoped): Remove unused decl.
92c1a778
SS
13759 (machopic_function_base_name): Declare result to be const.
13760 (machopic_non_lazy_ptr_name): Ditto.
13761 (machopic_stub_name): Ditto.
2aa9948d 13762 * config/darwin-protos.h: Ditto for the prototypes.
92c1a778 13763
daaab00a
JH
13764Wed Jul 17 00:22:39 CEST 2002 Jan Hubicka <jh@suse.cz>
13765
13766 * m68hc11.c (m68hc11_reorg): Do not rebuild CFG.
13767
63c574cc
JH
13768Wed Jul 17 00:20:48 CEST 2002 Jan Hubicka <jh@suse.cz>
13769
13770 * i386.md (prefetch): Fix for 64bit mode.
13771 (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
13772
2a500b9e
JH
13773Wed Jul 17 00:19:20 CEST 2002 Jan Hubicka <jh@suse.cz>
13774
13775 * i386.h (MACHINE_DEPENDENT_REORG): New macro.
13776 * i386.c (x86_machine_dependent_reorg): New function.
13777 * i386-protos.h (x86_machine_dependent_reorg): Declare.
13778
e5faf155
ZW
137792002-07-16 Zack Weinberg <zack@codesourcery.com>
13780
13781 * builtins.c (std_expand_builtin_va_start): Remove unused
13782 first argument.
13783 (expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and
13784 std_expand_builtin_va_start with just two arguments.
13785 * expr.h: Update prototypes.
13786
13787 * alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h,
13788 arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h,
13789 i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h,
13790 m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h,
13791 mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c,
13792 rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h,
13793 s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h,
13794 sparc.c, stormy16-protos.h, stormy16.h, stormy16.c,
13795 xtensa-protos.h, xtensa.h, xtensa.c: Remove unused first
13796 argument from all implementations of EXPAND_BUILTIN_VA_START
13797 and all uses of std_expand_builtin_va_start.
13798
dbf65c2f
R
13799Tue Jul 16 19:32:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
13800
13801 * regrename.c (copy_value): Don't record high part copies.
13802
6acb6d3e 138032002-07-16 Steve Ellcey <sje@cup.hp.com>
99b823ca 13804
6acb6d3e
SE
13805 * gcc/config/pa/long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.
13806 (fixunstfdi_libfunc): Change to use FIXUNS_TRUNCTFDI2_LIBCALL.
13807 * gcc/config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_udbl): New function.
13808
5d7c2819
ID
138092002-07-16 Ian Dall <ian@sibyl.beware.dropbear.id.au>
13810
13811 * doc/invoke.texi (NS32K Options): Document -mieee-compare option
13812
13813 * config/ns32k/ns32k.md (addsi3, *frame_addr, *stack_addr): merge
13814 into addsi3 using register class "x" and "y".
13815
13816 * config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf):
13817 "earlyclobber" constraint modifier for some alternative.
e5faf155 13818
5d7c2819
ID
13819 * config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble)
13820 (*ble, *blt): Flag to indicate bCOND and sCOND should check for
13821 unordered.
13822 config/ns32k/ns32k.h (CC_UNORD): define corresponding mask.
13823
13824 * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE, MASK_IEEE_COMPARE)
13825 (TARGET_SWITCHES): Add -mieee-compare option.
13826 (OVERRIDE_OPTIONS): 32332 is a subset of
13827 32532. Don't use IEEE_COMPARE -funsafe-math-optimizations.
4977bab6 13828 (TARGET_SWITCHES): Fix description of bitfield option.
5d7c2819
ID
13829 * config/ns32k/netbsd.h (TARGET_DEFAULT): Add
13830 -mieee-compare option. Remove 32332 flag.
13831
5da4f548 138322002-07-16 Steve Ellcey <sje@cup.hp.com>
5d7c2819
ID
13833
13834 * explow.c (convert_memory_address): Remove special handling
5da4f548 13835 when POINTERS_EXTEND_UNSIGNED < 0.
5d7c2819 13836 * config/ia64.md (movsi_symbolic): New instruction for ILP32 mode.
5da4f548
SE
13837 (movedi_symbolic): Fix typo.
13838 (load_fptr): Remove mode restriction so it works for SI and DI.
13839 (load_fptr_internal1): Ditto.
13840 (load_gprel): Ditto.
13841 (load_symptr_internal1): Ditto.
13842 (call_pic): Ditto.
5d7c2819 13843 * config/ia64.c (call_operand): Modify mode check.
5da4f548
SE
13844 (ia64_expand_load_address): Handle DI and SI addresses and symbols.
13845 (ia64_expand_move): Ditto.
13846 (ia64_assemble_integer): Handle SImode function pointers.
13847 (ia64_expand_fetch_and_op): Handle SImode mem addresses.
13848 (ia64_expand_op_and_fetch): Ditto.
13849 (ia64_expand_compare_and_swap): Ditto.
13850 (ia64_expand_lock_test_and_set): Ditto.
13851 (ia64_expand_lock_release): Ditto.
13852
1575c31e
JD
138532002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
13854
13855 * arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.
13856
138572002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
13858 Richard Earnshaw <rearnsha@arm.com>
13859
e5faf155 13860 * arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
1575c31e
JD
13861 CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF. Simplify logic.
13862
3894f59e
RE
138632002-07-16 Richard Earnshaw <rearnsha@arm.com>
13864
13865 * arm.md (stack_tie): New insn. Use an idiom that the alias code
13866 understands to be a memory clobber.
13867 * arm.c (arm_expand_prologue): Use it.
13868
e0b89be2 138692002-07-16 Daniel Berlin <dberlin@dberlin.org>
54b2a7f8
DB
13870
13871 * ra-rewrite.c: #include reload.h, insn-config.h
13872 * ra-build.c: #include reload.h
13873 * Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to
e5faf155 13874 depend on reload.h, insn-config.h.
54b2a7f8 13875
cffa2189
R
13876Tue Jul 16 11:57:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
13877
13878 * expr.c (emit_move_insn_1): Handle arbitrary moves that are
13879 the same size as a word.
13880
13881 * regrename.c (find_oldest_value_reg): Take WORDS_BIG_ENDIAN /
13882 BYTES_BIG_ENDIAN into account.
13883
052c96b1
JH
13884Tue Jul 16 12:22:44 CEST 2002 Jan Hubicka <jh@suse.cz>
13885
13886 * i386.md (prefetch): Fix for 64bit mode.
13887 (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
13888
13889 * i386.md (movss, movsd): Use xorps/xorpd for Athlon.
13890
ae32926b
MM
138912002-07-16 Marek Michalkiewicz <marekm@amelek.gda.pl>
13892
13893 * hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set.
13894
6c535c69
ZW
138952002-07-15 Zack Weinberg <zack@codesourcery.com>
13896
13897 * ginclude/varargs.h: Replace with stub which issues #error.
13898 * ginclude/stdarg.h: __builtin_stdarg_start is renamed
13899 __builtin_va_start.
13900
13901 * builtins.def (BUILT_IN_VARARGS_START): Delete.
13902 (BUILT_IN_VA_START): New.
13903 * builtins.c (expand_builtin_va_start): Eliminate first
13904 argument and code to implement pre-ISO varargs.
13905 (std_expand_builtin_va_start): Ignore first argument; it is
13906 always 1.
13907 (expand_builtin): Handle BUILT_IN_VA_START and
13908 BUILT_IN_STDARG_START identically. Delete
13909 BUILT_IN_VARARGS_START case.
13910
13911 * function.c (assign_parms): Delete hide_last_arg and all
13912 its uses.
13913 (mark_varargs): Delete function.
13914 * function.h (struct function): Delete 'varargs' bit.
13915 (current_function_varargs): Delete macro.
13916 * tree.h: Don't declare mark_varargs.
13917
13918 * c-decl.c (c_function_varargs, c_mark_varargs): Delete.
13919 (c_expand_body): Don't call mark_varargs.
13920 * c-objc-common.c: Handle BUILT_IN_VA_START and
13921 BUILT_IN_STDARG_START identically. Delete
13922 BUILT_IN_VARARGS_START case.
13923 * c-tree.h: Don't declare c_mark_varargs.
13924 * c-parse.in: Remove grammar rules for '&...' (which has been
13925 commented out since before 2.7.2) and for '...' in K+R
13926 argument declarations.
13927
13928 * builtins.c, function.c, integrate.c, sibcall.c,
13929 config/alpha/unicosmk.h, config/arc/arc.c, config/arc/arc.h,
13930 config/avr/avr.c, config/cris/cris.c, config/fr30/fr30.c,
13931 config/i960/i960.c, config/i960/i960.md, config/m32r/m32r.c,
13932 config/m32r/m32r.h, config/m88k/m88k.c, config/m88k/m88k.h,
13933 config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
13934 config/mn10300/mn10300.c, config/pa/som.h, config/s390/s390.c,
13935 config/sh/sh.c, config/sh/sh.h, config/sparc/sparc.h,
13936 config/stormy16/stormy16.c: Delete all references to
13937 current_function_varargs, and code predicated on that flag.
13938
13939 * config/alpha/alpha.c (alpha_va_start),
13940 config/arc/arc.c (arc_va_start),
13941 config/i386/i386.c (ix86_va_start),
13942 config/mips/mips.c (mips_va_start),
13943 config/mn10300/mn10300.c (mn10300_va_start),
13944 config/rs6000/rs6000.c (rs6000_va_start),
13945 config/s390/s390.c (s390_va_start),
13946 config/sh/sh.c (sh_va_start),
13947 Ignore first argument; it is always 1.
13948
13949 * config/c4x/c4x-protos.h, config/c4x/c4x.c: Delete c4x_va_start.
13950 * config/ia64/ia64-protos.h, config/ia64/ia64.c: Delete ia64_va_start.
13951 * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
13952 Delete m68hc11_va_start.
13953 * config/c4x/c4x.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h:
13954 No need to define EXPAND_BUILTIN_VA_START.
13955
13956 * doc/invoke.texi, doc/sourcebuild.texi, doc/tm.texi,
13957 doc/trouble.texi: Remove references to GCC-provided <varargs.h>.
13958
6d80a854
EB
139592002-07-15 Eric Botcazou <ebotcazou@multimania.com>
13960
13961 PR optimization/7153
13962 * regmove.c (optimize_reg_copy_3): Don't optimize if the register
13963 dies in more than one insn.
13964
043cfcbe
JT
139652002-07-15 Jason Thorpe <thorpej@wasabisystems.com>
13966
13967 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Remove.
13968
ed8d2920 139692002-07-15 Michael Matz <matz@suse.de>,
6c535c69 13970 Daniel Berlin <dberlin@dberlin.org>,
ed8d2920
MM
13971 Denis Chertykov <denisc@overta.ru>
13972
13973 Add a new register allocator.
13974
13975 * ra.c: New file.
13976 * ra.h: New file.
13977 * ra-build.c: New file.
13978 * ra-colorize.c: New file.
13979 * ra-debug.c: New file.
13980 * ra-rewrite.c: New file.
13981
13982 * Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
13983 (ra-rewrite.o): New .o files for libbackend.a.
13984 (GTFILES): Add basic-block.h.
13985
13986 * toplev.c (flag_new_regalloc): New.
13987 (f_options): New option "new-ra".
13988 (rest_of_compilation): Call initialize_uninitialized_subregs()
13989 only for the old allocator. If flag_new_regalloc is set, call
13990 new allocator, instead of local_alloc(), global_alloc() and
13991 friends.
13992
13993 * doc/invoke.texi: Document -fnew-ra.
13994 * basic-block.h (FOR_ALL_BB): New.
13995 * config/rs6000/rs6000.c (print_operand): Write small constants
13996 as @l+80.
13997
13998 * df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg.
13999 (df_reg_table_realloc): Make size at least as large as max_reg_num().
14000 (df_insn_table_realloc): Size argument now is absolute, not relative.
14001 Changed all callers.
14002
14003 * gengtype.c (main): Add the pseudo-type "HARD_REG_SET".
14004 * regclass.c (reg_scan_mark_refs): Ignore NULL rtx's.
14005
14006 2002-06-20 Michael Matz <matz@suse.de>
14007
14008 * df.h (struct ref.id): Make unsigned.
14009 * df.c (df_bb_reg_def_chain_create): Remove unsigned cast.
14010
14011 2002-06-13 Michael Matz <matz@suse.de>
14012
14013 * df.h (DF_REF_MODE_CHANGE): New flag.
14014 * df.c (df_def_record_1, df_uses_record): Set this flag for refs
14015 involving subregs with invalid mode changes, when
14016 CLASS_CANNOT_CHANGE_MODE is defined.
14017
14018 2002-05-07 Michael Matz <matz@suse.de>
14019
14020 * reload1.c (fixup_abnormal_edges): Don't insert on NULL edge.
14021
14022 2002-05-03 Michael Matz <matz@suse.de>
14023
14024 * sbitmap.c (sbitmap_difference): Accept sbitmaps of different size.
14025
14026 Sat Feb 2 18:58:07 2002 Denis Chertykov <denisc@overta.ru>
14027
14028 * regclass.c (regclass): Work with all regs which have sets or
14029 refs.
14030 (reg_scan_mark_refs): Count regs inside (clobber ...).
14031
14032 2002-01-04 Michael Matz <matzmich@cs.tu-berlin.de>
14033
14034 * df.c (df_ref_record): Correctly calculate SUBREGs of hardregs.
14035 (df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only
14036 add new refs.
14037 (df_bb_refs_update): Don't clear insns_modified here, ...
14038 (df_analyse): ... but here.
14039
14040 * sbitmap.c (dump_sbitmap_file): New.
14041 (debug_sbitmap): Use it.
14042
14043 * sbitmap.h (dump_sbitmap_file): Add prototype.
14044
14045 2001-08-07 Daniel Berlin <dan@cgsoftware.com>
14046
14047 * df.c (df_insn_modify): Grow the UID table if necessary, rather
14048 than assume all emits go through df_insns_modify.
14049
14050 2001-07-26 Daniel Berlin <dan@cgsoftware.com>
14051
14052 * regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS,
14053 increase REG_N_REFS (like flow does), so that regclass doesn't
14054 think a reg is useless, and thus, not calculate a class, when it
14055 really should have.
14056
14057 2001-01-28 Daniel Berlin <dberlin@redhat.com>
14058
14059 * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for
14060 dataflow analysis.
14061
794a292d
JJ
140622002-07-15 Jakub Jelinek <jakub@redhat.com>
14063
14064 PR middle-end/7245
14065 * config/i386/i386.c (const_int_1_31_operand): New.
14066 * config/i386/i386.h (PREDICATE_CODES): Add it.
14067 * config/i386/i386.md (ashlsi3_cmp, ashlsi3_cmp_zext, ashlhi3_cmp,
14068 ashlqi3_cmp, ashrsi3_cmp, ashrsi3_cmp_zext, ashrhi3_cmp, ashrqi3_cmp,
14069 lshrsi3_cmp, lshrsi3_cmp_zext, lshrhi3_cmp, lshrqi3_cmp): Use it.
14070
05d49501
AM
140712002-07-14 Alan Modra <amodra@bigpond.net.au>
14072
14073 PR target/7282
14074 * config/rs6000/rs6000.md (floatsidf2): Enable for POWERPC64.
14075 (floatunssidf2): Likewise.
14076 (floatsidf_ppc64): New insn_and_split.
14077 (floatunssidf_ppc64): Likewise.
14078
e89617fe
AJ
140792002-07-14 Andreas Jaeger <aj@suse.de>
14080
14081 * config.gcc (sh64): Remove unused
14082 target_requires_64bit_host_wide_int.
14083
78762e3b
RS
140842002-07-12 Roger Sayle <roger@eyesopen.com>
14085
14086 * expr.c [CLEAR_RATIO]: New macro defining the maximum number
14087 of move instructions to use when clearing memory, c.f. MOVE_RATIO.
14088 [CLEAR_BY_PIECES]: New macro, using CLEAR_RATIO, to determine
14089 whether clear_by_pieces should be used to clear storage.
14090 (clear_storage): Use CLEAR_BY_PIECES instead of MOVE_BY_PIECES.
14091
14092 * doc/tm.texi: Document these two new target macros.
14093
f7a454e9
SC
140942002-07-12 Stephane Carrez <stcarrez@nerim.fr>
14095
14096 * config/m68hc11/m68hc11.md ("zero_extendsidi2"): Use D_REG only for
14097 the scratch register.
14098 ("*movhi2_push"): Accept Z_REG because a split pattern can make use
14099 of it, forbid reload to use it.
14100
26af4041
MM
141012002-07-12 Marek Michalkiewicz <marekm@amelek.gda.pl>
14102
14103 * config/avr/avr.c (test_hard_reg_class): Fix TEST_HARD_REG_BIT
14104 usage on 64-bit hosts, return value was truncated to 32 bits.
14105
226cfe61
R
14106Fri Jul 12 00:49:36 2002 J"orn Rennecke <joern.rennecke@superh.com>
14107
14108 * simplify-rtx.c (simplify_subreg): Handle floating point
14109 CONST_DOUBLEs. When an integer subreg of a smaller mode than
14110 the element mode is requested, compute a subreg with an
14111 integer mode of the same size as the element mode first.
14112
25c25947
R
14113Thu Jul 11 22:02:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
14114
14115 * combine.c (try_combine): When converting a paradoxical subreg
14116 to an extension, take LOAD_EXTEND_OP into account.
14117
789b7de5
RO
141182002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
14119
14120 * config.gcc (mips-sgi-irix6*o32): New configuration.
14121
14122 * configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32
14123 configurations.
14124 * configure: Regenerate.
14125
14126 * config/mips/iris6-o32-as.h: New file.
14127 * config/mips/iris6-o32.h: New file.
e89617fe 14128
789b7de5
RO
14129 * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define.
14130 (NM_FLAGS): Define.
14131 (HAVE_AS_SHF_MERGE): Undefine.
14132
14133 * config/mips/t-iris5-as: New file.
14134 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
14135
14136 * config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME,
14137 SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK,
14138 SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT,
14139 dp-bit.c, fp-bit.c): Move ...
14140 * config/mips/t-iris5-6: ... here.
14141 New file, shared by IRIX 5 and IRIX 6.
14142 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*,
14143 mips-sgi-irix5*): Use it.
14144
14145 * config/mips/iris6.h: Remove duplicate comment.
14146
14147 * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
14148 !TARGET_IRIX6]: Define.
14149 (mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6.
14150
14151 * config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment.
14152
a18c2c5f
JDA
141532002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
14154
14155 * pa.md (adddi3): Change predicate of operand 2 to adddi3_operand
14156 and delete code to force constant to register.
14157 * pa-protos.h (adddi3_operand): Add prototype.
14158 * pa.c (adddi3_operand): New function.
14159
e65a2d65
RS
141602002-07-11 Roger Sayle <roger@eyesopen.com>
14161
14162 * c-decl.c (duplicate_decls): Preserve the noreturn attribute on
14163 non-ANSI builtin functions.
14164
a06e3c40
R
14165Thu Jul 11 11:31:12 2002 J"orn Rennecke <joern.rennecke@superh.com>
14166
14167 * rtl.h (gen_rtx_CONST_VECTOR): Declare.
14168 * gengenrtl.c (special_rtx): Check for CONST_VECTOR.
14169 * emit-rtl.c (gen_rtx_CONST_VECTOR): New function.
14170 (gen_const_vector_0): Use it.
14171
47abc309
JDA
141722002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
14173
14174 * pa.md (adddi3): For 32-bit targets, force constants to a register
14175 if they don't fit in an 11-bit immediate. Change insn predicate to
14176 arith11_operand. Remove comment.
14177 * pa.c (cint_ok_for_move): Fix comment.
14178 (emit_move_sequence): Don't directly split DImode constants on 32-bit
14179 targets.
14180
8ac9d31f
TJ
141812002-07-11 Tim Josling <tej@melbpc.org.au>
14182
e89617fe 14183 Remove front end hard coding from gengtype.c.
8ac9d31f
TJ
14184
14185 * Makefile.in
14186 (STAGESTUFF): add gtyp-gen.h
14187 (GTFILES): Remove front end specific files.
14188 (GTFILES_FILES_LANGS): New, from configure..
14189 (GTFILES_FILES_FILES): Likewise.
14190 (GTFILES_LANG_DIR_NAMES): Likewise.
14191 (GTFILES_SRCDIR): Likewise.
14192 (gtyp-gen.h): Build from configure information.
14193 (s-gtype): Remove command line parameters from gengtype.
14194 (gengtype.o): Remove dependency on GTFILES. Depend on gtyp-gen.h.
14195 (mostlyclean): Delete files generated by and for gengtype.
14196
14197 * c-config-lang.in: New file.
14198
14199 * configure.in (all_gtfiles_files_langs): New. Accumulate files
14200 for each language.
14201 (all_gtfiles_files_files): New. Accumulate language for each file
14202 accumulated.
14203 (gtfiles): Pick up value for C.
14204 (srcdir): AC-SUBST this variable.
14205 (all_gtfiles_files_langs): AC-SUBST this variable.
14206 (all_gtfiles_files_files): AC-SUBST this variable.
e89617fe 14207
8ac9d31f 14208 * configure: Regenerate.
e89617fe 14209
8ac9d31f
TJ
14210 * gengtype-lex.l (parse_file): Make parameter const.
14211
14212 * gengtype.c (toplevel): include gtyp-gen.h.
14213 (BASE_FILE_<language> unnamed enum): Delete.
14214 (lang_names): Delete (replaced by gtyp-gen.h)
14215 (lang_dir_names): From gtyp-gen.h, replaces lang_names; changed
14216 all references.
14217 (NUM_GT_FILES): New.
14218 (NUM_LANG_FILES): New.
14219 (srcdir_len): New.
14220 (NUM_BASE_FILES): Change calculation.
14221 (open_base_files): Change prototype to avoid warning.
14222 (startswith): Delete.
14223 (get_file_basename): Iterate through generated language list not
14224 hard coded list.
14225 (get_base_file_bitmap): Use generated list of files and languages.
14226 (close_output_files): Add prototype to rmove warning.
14227 (main): Iterate through list of generated files from gtyp-gen.h
14228 rather than command line paramaters. Ignore duplicated file
e89617fe 14229 names.
8ac9d31f
TJ
14230
14231 * gengtype.h (parse_file): Amend prototype for const parameter.
e89617fe 14232
8ac9d31f
TJ
14233 * doc/sourcebuild.texi: Document gtfiles variable.
14234
14235 * doc/gty.texi: Document changes to gtfiles variable for front
14236 ends.
14237
14238 * objc/config-lang.in (gtfiles): Add files needed for objc front
14239 end.
14240
0e603223
RS
142412002-07-10 Roger Sayle <roger@eyesopen.com>
14242
14243 PR c/2454
14244 * combine.c (nonzero_bits): LOAD_EXTEND_OP should only apply
14245 to SUBREGs of MEMs. (num_sign_bit_copies): Likewise.
14246
c5358a5d
RS
142472002-07-10 Roger Sayle <roger@eyesopen.com>
14248 Zack Weinberg <zack@codesourcery.com>
14249
14250 * builtins.def: Make the argument types of abort and exit
14251 independent of the front-end.
14252
a35f8b74
AM
142532002-07-11 Alan Modra <amodra@bigpond.net.au>
14254
14255 * config/rs6000/linux64.h (ASM_SPEC): Define.
14256
89e7058f
AH
142572002-07-10 Aldy Hernandez <aldyh@redhat.com>
14258
6c535c69
ZW
14259 * config/rs6000/rs6000.c (emit_frame_save): New.
14260 (rs6000_frame_related): Replace reg2 before reg.
14261 (rs6000_emit_prologue): Use emit_frame_save for saving gprs, fprs,
14262 and eh_return registers.
89e7058f 14263
086bbd21
TM
142642002-07-10 Toon Moene <toon@moene.indiv.nluug.nl>
14265
14266 Revert all patches for optimization of Complex .op. Real.
14267 * complex_part_zero_p: Remove
14268 * expand_cmplxdiv_straight: Replace complex_part_zero_p(x)
14269 with x.
14270 * expand_cmplxdiv_wide: Ditto.
14271 * expand_binop: Ditto.
14272
126dbce0
MM
142732002-07-10 Marek Michalkiewicz <marekm@amelek.gda.pl>
14274
14275 * config/avr/avr.md: Fix two 0x80000000 constants to make them
14276 negative also on 64-bit hosts.
14277
14278 Default to -fno-reorder-blocks when optimizing for size.
14279 * config/avr/avr-protos.h (avr_optimization_options): Declare.
14280 * config/avr/avr.c (avr_optimization_options): New function.
14281 * config/avr/avr.h (OPTIMIZATION_OPTIONS): New.
14282
14283 Optimize returning from simple functions.
14284 * config/avr/avr-protos.h (avr_simple_epilogue): Declare.
14285 * config/avr/avr.c (avr_simple_epilogue): New function.
14286 * config/avr/avr.md (return): New insn.
14287
21c318ba
DR
142882002-07-10 Douglas B Rupp <rupp@gnat.com>
14289
14290 * config/i386/i386.c (ix86_svr3_asm_out_constructor): Add
14291 HAS_INIT_SECTION to protection.
14292
537834c8
MM
142932002-07-10 Mark Mitchell <mark@codesourcery.com>
14294
14295 * doc/invoke.texi (Debugging Options): Mention that -gdwarf is
14296 deprecated.
14297
80ba02b1
R
14298Wed Jul 10 19:50:03 2002 J"orn Rennecke <joern.rennecke@superh.com>
14299
14300 * combine.c (gen_lowpart_for_combine): Handle vector modes.
14301 Supply non-VOID mode to simplify_gen_subreg.
14302
ae3aa00d
JH
14303Wed Jul 10 18:48:55 CEST 2002 Jan Hubicka <jh@suse.cz>
14304
14305 * i386.c (ix86_init_mmx_sse_builtins): Fix thinko.
14306
029f3983
JL
143072002-07-10 Jeffrey A Law <law@redhat.com>
14308
7a464913
JL
14309 * mn10200.c (expand_prologue): Create REG_MAYBE_DEAD notes
14310 as appropriate.
14311
6c535c69
ZW
14312 * mn10200.c (expand_epilogue): Fix test to determine which scratch
14313 register to use.
029f3983 14314
ff27a429
R
14315Wed Jul 10 16:06:00 2002 J"orn Rennecke <joern.rennecke@superh.com>
14316
14317 * cse.c (cse_insn): Supply proper SUBREG_BYTE to simplify_gen_subreg.
14318 Get mode from dest.
14319 If simplify_gen_subreg fails, try next equivalent.
14320
e6986399
GDR
143212002-07-09 Gabriel Dos Reis <gdr@codesourcery.com>
14322
14323 * diagnostic.h: #include location.h
14324 (location_t): Move definition to..
14325 * location.h: ... here. New file.
14326 * tree.h: #include location.h
14327 (DECL_SOURCE_LOCATION): New macro.
14328 (DECL_SOURCE_FILE): Use.
14329 (DECL_SOURCE_LINE): Likewise.
14330 (struct tree_decl): REplace filename and linenum with locus.
14331 * Makefile.in (TREE_H): add location.h
14332 (diagnostic.o): Depends on gt-location.h
14333 (gt-location.h): Depends on s-gtype
14334
7990b46f
MK
143352002-07-09 Matt Kraai <kraai@alumni.cmu.edu>
14336
14337 * config/rs6000/aix.h: Convert CPP_PREDEFINES to
14338 TARGET_OS_CPP_BUILTINS.
14339 * config/rs6000/aix31.h: Likewise.
14340 * config/rs6000/aix41.h: Likewise.
14341 * config/rs6000/aix43.h: Likewise.
14342 * config/rs6000/aix51.h: Likewise.
14343 * config/rs6000/beos.h: Likewise.
14344 * config/rs6000/darwin.h: Likewise.
14345 * config/rs6000/eabi.h: Likewise.
14346 * config/rs6000/eabisim.h: Likewise.
14347 * config/rs6000/linux.h: Likewise.
14348 * config/rs6000/linux64.h: Likewise.
14349 * config/rs6000/lynx.h: Likewise.
14350 * config/rs6000/mach.h: Likewise.
14351 * config/rs6000/rtems.h: Likewise.
14352 * config/rs6000/sysv4.h: Likewise.
14353 * config/rs6000/vxppc.h: Likewise.
efa39e99
DP
14354
143552002-07-09 Devang Patel <dpatel@apple.com>
14356 * objc/objc-act.c (adjust_type_for_id_default): Fix my previous patch.
14357 Do not allow ObjC objects as a parameter type for Objective-C methods.
14358 My previous patch restricted 'struct' also.
e89617fe 14359
cd98faa1
NB
143602002-07-09 Neil Booth <neil@daikokuya.co.uk>
14361
14362 * cpperror.c (cpp_error): Default to directive_line within
14363 directives here.
14364 * cppexp.c (cpp_interpret_integer): Only use traditional
14365 number semantics in directives.
14366 * cpplib.c (prepare_directive_trad): Don't reset pfile->line.
14367 (do_include_common): Similarly.
14368 * cpptrad.c (scan_out_logical_line): Implement accurate
14369 quoting of <> in #include.
14370 * doc/cpp.texi: Update.
14371
2ad65b0e 14372Tue Jul 9 22:37:44 2002 Stephen Clarke <stephen.clarke@superh.com>
6c535c69 14373 J"orn Rennecke <joern.rennecke@superh.com>
2ad65b0e
SC
14374
14375 * sh.c (sh_adjust_cost): Special handling of SHMEDIA code.
14376 * sh.md (attribute issues): Replace with:
14377 (attribute pipe_model). All users changed.
14378 (attribute type): Change pt / ptabs to pt_media / ptabs_media.
14379 All users changed.
14380 (function units sh5issue, sh5fds): New.
14381 (attribute is_mac_media): New.
14382 (adddi3_media, subdi3_media, divsi3_i1_media, anddi3): Add type.
14383 (andcdi3, iordi3, xordi3, ashldi3_media, lshrdi3_media): Likewise.
14384 (ashrdi3_media, negdi_media, extendsidi2, movqi_media): Likewise.
14385 (movhi_media, shori_media, movv2sf_i, jump_media): Likewise.
14386 (call_media, call_value_media, sibcall_media): Likewise.
14387 (casesi_jump_media, casesi_shift_media, casesi_load_media): Likewise.
14388 (return_media_i, addsf3_media, subsf3_media, mulsf3_media): Likewise.
14389 (mac_media, divsf3_media, floatdisf2, floatsisf2_media): Likewise.
14390 (fix_truncsfdi2, fix_truncsfsi2_media, cmpeqsf_media): Likewise.
14391 (cmpgtsf_media, cmpgesf_media, cmpunsf_media, negsf2_media): Likewise.
14392 (sqrtsf2_media, abssf2_media, adddf3_media, subdf3_media): Likewise.
14393 (muldf3_media, divdf3_media, floatdidf2, floatsidf2_media): Likewise.
14394 (fix_truncdfdi2, fix_truncdfsi2_media, cmpeqdf_media): Likewise.
14395 (cmpgtdf_media, cmpgedf_media,cmpundf_media, negdf2_media): Likewise.
14396 (sqrtdf2_media, absdf2_media, extendsfdf2_media): Likewise.
14397 (truncdfsf2_media): Likewise.
14398 (movsi_media, movsi_media_nofpu, movdi_media): Use new types.
14399 (movdi_media_nofpui, movdf_media, movdf_media_nofpu): Likewise.
14400
b6d33983
R
14401Tue Jul 9 21:39:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
14402
14403 * sh.h (PREDICATE_CODES): Add general_extend_operand and inqhi_operand.
14404 * sh.c (general_extend_operand, inqhi_operand): New functions.
14405 * sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Collapse
14406 alternatives using 'N' modifier. Add type.
14407 (adddi3z_media): Likewise. Enable generator function generation.
14408 (movdicc_false, movdicc_true, addsi3_media, subsi3_media): Use more
14409 exact predicates / constraints. Add type.
14410 (subsi3): Allow 0 for SHMEDIA.
14411 (udivsi3_i4_media): Use match_operand for input values
14412 rather than hard registers.
14413 (udivsi3 - TARGET_SHMEDIA_FPU case): Don't ferry values
14414 unnecessarily through hard registers. Keep copies of pseudo
14415 registers outside of the libcall sequence.
14416 (mulsidi3_media, umulsidi3_media): Use more exact predicates. Add type.
14417 (ashlsi3_media, ashrsi3_media, lshrsi3_media): Likewise.
14418 (zero_extendsidi2, zero_extendhidi2, zero_extendqidi2): Likewise.
14419 (extendhidi2, extendqidi2): Likewise.
14420 (andsi3_compact): Name.
14421 (andcdi3): Enable generator function generation.
14422 (zero_extendhisi2, zero_extendqisi2): Rename to
14423 (zero_extendhisi2_compact, zero_extendqisi2_compact).
14424 (extendhisi2, extendqisi2): Rename to
14425 (extendhisi2_compact, extendqisi2_compact).
14426 (rotldi3, rotldi3_mextr, rotrdi3, rotrdi3_mextr): New patterns.
14427 (loaddi_trunc, zero_extendhisi2, zero_extendhisi2_media): Likewise.
14428 (zero_extendhisi2_media+1, zero_extendqisi2): Likewise.
14429 (zero_extendqisi2_media, extendhisi2, extendhisi2_media): Likewise.
14430 (extendhisi2_media, extendhisi2_media+1, extendqisi2): Likewise.
14431 (extendqisi2_media, extendqisi2_media+1, truncdisi2): Likewise.
14432 (truncdihi2, truncdiqi2, reload_inqi, reload_inhi): Likewise.
14433 (shmedia32_initialize_trampoline_big): Likewise.
14434 (shmedia32_initialize_trampoline_little): Likewise.
14435 (nsb, nsbsi, nsbdi, ffsdi2, ffssi2, byterev): Likewise.
14436 (negdi2): Remove spurious T clobber.
14437 (zero_extendhidi2+1, extendhidi2+1, extendqidi2+1): Handle TRUNCATE.
14438 (movsi_media, movsi_media_nofpu): Remove spurious *k after b.
14439 (movdi_media, movdi_media_nofpu, pt, ptb): Likewise.
14440 (movsi_media_nofpu+2, movhi_media+1): Only do split after reload.
14441 (ic_invalidate_line_media): Write back data cache before invalidating
14442 instruction cache. Add type.
14443 (movsf_media): Sign-extend when the destination is a general
14444 purpose register. Add type.
14445 (bgt_media, bge_media, bgtu_media, bgeu_media, blt_media_i): Allow 0.
14446 (casesi_worker_0+1): Only increment ref count for proper label.
14447 (casesi_worker_0+2): Likewise.
14448
7ca0873c
MM
144492002-07-09 Mark Mitchell <mark@codesourcery.com>
14450
14451 * dwarfout.c (dwarfout_init): Warn that DWARF1 is deprecated.
14452
26b10ae0 144532002-07-09 Steve Ellcey <sje@cup.hp.com>
7ca0873c 14454
26b10ae0
SE
14455 * gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer
14456 from Pmode to ptr_mode.
14457 (get_exception_pointer): Ditto.
14458 (connect_post_landing_pads): Ditto.
14459 (dw2_build_landing_pads): Ditto.
14460
0c3a2ea0
SE
144612002-07-08 Steve Ellcey <sje@cup.hp.com>
14462 * gcc/c-pragma.h (add_to_renaming_pragma_list): New function.
14463 * gcc/c-pragma.c (add_to_renaming_pragma_list): New function.
14464 (handle_pragma_redefine_extname): Change to use new function.
14465
26c34780
RS
144662002-07-08 Roger Sayle <roger@eyesopen.com>
14467
14468 * combine.c (combine_simplify_rtx): Add an explicit cast
14469 to avoid signed/unsigned comparison warning.
14470 (simplify_if_then_else): Likewise.
14471 (extended_count): Likewise.
14472 (simplify_shift_const): Likewise.
14473 (simplify_comparison): Likewise.
14474
1d4047e0
RS
144752002-07-08 Richard Sandiford <rsandifo@redhat.com>
14476
14477 * config/mips/mips.md: Add imadd type. Update scheduler description
14478 to use imadd as well as imul.
14479 (*mul_acc_si, *madsi): Change imul alternatives to imadd.
14480 (*mul_acc_di, *mul_acc_64bit_di): Likewise.
14481 (*mul_sub_si): Likewise for first alternative. Change second
14482 alternative from imul to multi.
14483
5351f1ca
NB
144842002-07-07 Neil Booth <neil@daikokuya.co.uk>
14485
14486 * c-common.c (c_common_post_options): Update prototype;
14487 don't init backends if preprocessing only.
14488 * langhooks-def.h (LANG_HOOKS_POST_OPTIONS): Update.
14489 * langhooks.h (struct lang_hooks): Update post_options to
14490 return a boolean.
14491 * toplev.c (parse_options_and_default_flags, do_compile,
14492 lang_independent_init): Update prototypes. Allow the
14493 front end to specify that there is no need to initialize
14494 the back end.
14495 (general_init): Move call to hex_init here...
14496 (toplev_main): ...from here. Pass flag for back end init
14497 suppression.
14498
c8cc4417
R
14499Sun Jul 7 20:38:38 2002 J"orn Rennecke <joern.rennecke@superh.com>
14500
14501 * sh.h (PRINT_OPERAND_PUNCT_VALID_P): Allow '\''.
14502 (PREDICATE_CODES): Add entries for equality_comparison_operator,
14503 greater_comparison_operator and less_comparison_operator.
14504 * sh.c (print_operand): Add '\'' code. Make 'o' handle
14505 more operators.
14506 (equality_comparison_operator): New function.
14507 (greater_comparison_operator, less_comparison_operator): Likewise.
14508 * sh.md (beq_media_i): Disable generator function generation.
14509 Use match_operator to handle a whole class of comparisons. Add
14510 modifier in output template to provide branch prediction. Add type.
14511 (bgt_media_i, ble_media_i): Likewise. Allow zero operands.
14512 (bne_media_i, bge_media_i, bgtu_media_i, bgeu_media_i): Delete.
14513 (blt_media_i, bleu_media_i, bltu_media_i): Likewise.
14514 (bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu): Allow zero operands.
14515
957ec0f9
HPN
145162002-07-07 Hans-Peter Nilsson <hp@bitrange.com>
14517
14518 Emit MMIX function prologue and epilogue as rtl.
14519 * config/mmix/mmix.md ("call"): Use mmix_get_hard_reg_initial_val,
14520 not unprototyped get_hard_reg_initial_val.
14521 ("call_value", "nonlocal_goto_receiver"): Ditto.
14522 ("return"): Make define_expand. Move real insn to...
14523 ("*expanded_return"): New pattern.
14524 ("prologue", "epilogue"): New define_expands.
14525 * config/mmix/mmix.h (MMIX_rO_REGNUM): New macro.
14526 (struct machine_function): New member in_prologue.
14527 (FIRST_PSEUDO_REGISTER): Adjust for including rO as register.
14528 (FIXED_REGISTERS, CALL_USED_REGISTERS): Ditto.
14529 (MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Ditto.
14530 (MMIX_GNU_ABI_REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Ditto.
14531 (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Ditto.
14532 (LOCAL_REGNO): Define. Adjust comment.
14533 * config/mmix/mmix.c (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS):
14534 Consider regs_ever_live[MMIX_rJ_REGNUM], not just
14535 leaf_function_p.
14536 (MMIX_OUTPUT_REGNO): Don't translate registers while outputting
14537 the prologue.
14538 (mmix_target_asm_function_prologue): Make static. Just mark that
14539 the prologue is being emitted. Move guts to...
14540 (mmix_expand_prologue): New function. Adjust for emitting
14541 prologue as rtl. For sizes, use HOST_WIDE_INT only.
14542 (mmix_target_asm_function_epilogue): Make static. Simply emit a
14543 \n. Move guts to...
14544 (mmix_expand_epilogue): New function. Adjust for emitting
14545 epilogue as rtl. For sizes, use HOST_WIDE_INT only.
14546 (mmix_target_asm_function_end_prologue): Mark that the prologue
14547 has ended.
14548 (TARGET_ASM_FUNCTION_END_PROLOGUE): Define.
14549 (mmix_conditional_register_usage): Improve comments.
14550 (mmix_local_regno): New function.
14551 (mmix_emit_sp_add, mmix_get_hard_reg_initial_val): Ditto.
14552 * config/mmix/mmix-protos.h (mmix_local_regno): Prototype.
14553 (mmix_expand_prologue, mmix_expand_epilogue): Ditto.
14554 (mmix_get_hard_reg_initial_val): Ditto.
14555
7ab5c789
AJ
145562002-07-06 Andreas Jaeger <aj@suse.de>
14557
14558 * toplev.c (set_fast_math_flags): Don't use ISO C style function
14559 definitions.
14560 * gengtype.c (open_base_files): Likewise.
14561 (close_output_files): Likewise.
14562 * tracer.c (find_best_predecessor): Likewise.
14563 (find_best_successor): Likewise.
14564 (ignore_bb_p): Likewise.
14565
df061a43
RS
145662002-07-05 Roger Sayle <roger@eyesopen.com>
14567
14568 PR c++/7099
14569 * builtin-attrs.def: Define new attribute lists for use in
14570 builtins.def.
14571 * builtins.def [DEF_BUILTIN]: Modify to take an additional
14572 ATTRS argument, an enumerated value defined in builtin-attrs.def
14573 that represents the attribute list for the builtins. Modify
14574 all builtin functions to pass an appropriate attribute list.
14575 Specify "abort", "exit", "_exit" and "_Exit" builtins here with
14576 their required noreturn attributes.
14577 * tree.h (enum_builtin_function): Ignore the additional parameter
14578 to DEF_BUILTIN.
14579 * builtins.c (built_in_names): Likewise.
14580 * c-common.c: (builtin_function_2): Replace the "int noreturn_p"
14581 argument with a tree representing the functions attribute list.
14582 Pass this "attrs" argument to builtin_function. No longer handle
14583 the noreturn_p processing manually.
14584 (built_in_attributes): Move the definitions from builtin-attrs.def
14585 before c_common_nodes_and_builtins.
14586 (c_common_nodes_and_builtins): Handle the new ATTRS parameter in
14587 DEF_BUILTIN, passing it to both builtin_function and the changed
14588 builtin_function_2.
14589
14590 * doc/extend.texi: Document __builtin_abort, __builtin_exit,
14591 __builtin__exit and __builtin__Exit.
14592
e5eb8de8
SC
145932002-07-05 Stephane Carrez <stcarrez@nerim.fr>
14594
14595 * config/m68hc11/m68hc11.md ("*movqi_68hc12"): Avoid allocating
14596 QI mode registers in soft registers.
7ab5c789 14597 ("zero_extendqihi2"): Do not take into account soft registers
e5eb8de8
SC
14598 for register allocation (use '*' constraint).
14599
4c8aed14
SC
146002002-07-05 Stephane Carrez <stcarrez@nerim.fr>
14601
14602 * config/m68hc11/m68hc11.md ("*ashlsi3"): Avoid saving y if we know
14603 it is dead.
14604 ("*ashrsi3"): Likewise.
14605 ("*lshrsi3"): Likewise.
14606
99ed68ea
VM
146072002-07-05 Vladimir Makarov <vmakarov@redhat.com>
14608
14609 * genautomata.c (output_max_insn_queue_index_def): Take latencies
14610 into account.
14611
4c8aed14 146122002-07-05 Stephane Carrez <stcarrez@nerim.fr>
581fd392
SC
14613
14614 * config/m68hc11/m68hc11.md (peephole2): New peephole2 to optimize
14615 address computation and memory moves.
14616
9833f679
MM
146172002-07-03 Mark Mitchell <mark@codesourcery.com>
14618
14619 PR c++/6706
14620 * dwarfout.c (output_reg_number): Fix warning message.
14621 (output_bound_representation): Check SAVE_EXPR_RTL is not NULL
14622 before using it.
7ab5c789 14623
81bca2f5
RO
146242002-07-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
14625
14626 * gcc/gcc.c (asm_debug): Move initialization ...
14627 (init_spec): ... here.
14628
17f44f02
NS
146292002-07-05 Nathan Sidwell <nathan@codesourcery.com>
14630
14631 * c-parse.in (extdef): Append ';'.
14632 (old_style_parm_decls): Append ';'.
14633
da77408f
DJ
146342002-07-04 Daniel Jacobowitz <drow@mvista.com>
14635
14636 * configure.in: Correct typos: gcc_cv_as_gdwarf2_debug_flag to
14637 gcc_cv_as_gdwarf2_flag and gcc_cv_as_gstabs_debug_flag
14638 to gcc_cv_as_gstabs_flag.
14639 * configure: Rebuilt.
14640
ec52b446
GK
146412002-07-04 Geoffrey Keating <geoffk@redhat.com>
14642
14643 * ggc.h (ggc_add_root): Document as obsolete.
14644
8721e3df
R
14645Thu Jul 4 07:58:01 2002 J"orn Rennecke <joern.rennecke@superh.com>
14646
14647 * sh.md (mshfhi_b, mshflo_b, mshfhi_l, mshflo_l, mshfhi_w): Add DONE.
14648 (mshflo_w): Likewise.
14649
3767c0fd
R
14650Thu Jul 4 07:36:29 2002 J"orn Rennecke <joern.rennecke@superh.com>
14651
14652 * simplify-rtx.c (simplify_subreg): Reduce problem of finding
14653 vector mode subregs of constants to finding integer mode
14654 subregs of constants.
14655 * cse.c (cse_insn): Use simplify_gen_subreg.
14656 * convert.c (convert_to_integer): Don't strip a NOP_EXPR
14657 From a vector mode expression of different size than the
14658 target mode.
14659
4e314d1f
EC
146602002-07-03 Eric Christopher <echristo@redhat.com>
14661
14662 * config/mips/linux.h: Add #undef for SUBTARGET_CPP_SPEC.
14663 * config/mips/mips.h: Remove deprecated -m<processor> options
14664 and cc1_cpu_spec associated.
14665 (CONSTANT_ADDRESS_P): Fix last patch.
14666 (ASM_DECLARE_FUNCTION_NAME): Declare. Fix comment.
14667 * config/mips/mips.md (bungt, bunge, sungt_df, sungt_sf, sunge_df,
14668 sunge_sf): Remove.
14669
6f0361e3
SS
146702002-07-03 Stan Shebs <shebs@apple.com>
14671
14672 * config/darwin.h (APPLE_CC): Remove, not meaningful in FSF GCC.
14673 (STRINGIFY_THIS, REALLY_STRINGIFY): Remove.
14674 (CPP_SPEC): Remove insertion of APPLE_CC definition.
14675
3129af4c
RS
146762002-07-03 Roger Sayle <roger@eyesopen.com>
14677
14678 * combine.c (struct_undo): Change types of recorded substitutions
14679 to be either "int" or "rtx", instead of "unsigned int" and "rtx".
14680 (do_SUBST_INT): Change types of the substitution from unsigned int
14681 to int, to avoid compilation warning from SUBST_INT's only caller.
14682
14683 (make_extraction): Add cast to avoid compilation warning.
14684 (force_to_mode): Remove cast to avoid compilation warning.
14685
c7375e61
EB
146862002-07-03 Eric Botcazou <ebotcazou@multimania.com>
14687 Jeff Law <law@redhat.com>
14688
14689 * i386.md (length_immediate attribute): Fix typo.
14690 (length_address attribute): Likewise.
14691 (modrm attribute): Set it to 0 for immediate call instructions.
14692 (jcc_1 pattern): Set modrm attribute to 0.
14693 (jcc_2 pattern ): Likewise.
14694 (jump pattern): Likewise.
14695 (doloop_end_internal pattern): Explicitly set length.
14696 (leave pattern): Fix typo.
14697 (leave_rex64 pattern): Likewise.
14698
61c07d3c
DE
146992002-07-03 David Edelsohn <edelsohn@gnu.org>
14700
14701 * config/rs6000/rs6000.md (fix_truncdfsi2_internal): Ignore DImode
14702 in FPR as preference.
14703 (fctiwz): Same.
14704 (floatdidf2, fix_truncdfdi2): Same.
14705 (floatdisf2, floatditf2, fix_trunctfdi2): Same.
14706 (floatditf2): Same.
14707 (floatsitf2, fix_trunctfsi2): SImode in GPR.
14708 (ctrdi): Remove FPR alternative and splitter.
14709
147102002-07-03 Will Cohen <wcohen@redhat.com>
77966be3
WC
14711
14712 * config/i386/i386.c (x86_integer_DFmode_moves): Disable for PPro.
14713
34a80643
R
14714Wed Jul 3 10:24:16 2002 J"orn Rennecke <joern.rennecke@superh.com>
14715
14716 * optabs.c (expand_vector_binop): Don't store using a SUBREG smaller
14717 than UNITS_PER_WORD, unless this is little endian and the first unit
14718 in this word. Let extract_bit_field decide how to load an element.
14719 Force arguments to matching mode.
14720 (expand_vector_unop): Likewise.
14721
14722 * simplify-rtx.c (simplify_subreg): Don't assume that all vectors
14723 consist of word_mode elements.
14724 * c-typeck.c (build_binary_op): Allow vector types for BIT_AND_EXPR,
14725 BIT_ANDTC_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR.
14726 (build_unary_op): Allow vector types for BIT_NOT_EPR.
14727 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg for
14728 CONST_VECTOR.
14729 * optabs.c (expand_vector_binop): Try to perform operation in
14730 smaller vector modes with same inner size. Add handling of AND, IOR
14731 and XOR. Reject expansion to inner-mode sized scalars when using
14732 OPTAB_DIRECT. Use simplify_gen_subreg on constants.
14733 (expand_vector_unop): Try to perform operation in smaller vector
14734 modes with same inner size. Add handling of one's complement.
14735 When there is no vector negate operation, try a vector subtract
14736 operation. Use simplify_gen_subreg on constants.
14737 * simplify-rtx.c (simplify_subreg): Add capability to convert vector
14738 constants into smaller vectors with same inner mode, and to
14739 integer CONST_DOUBLEs.
14740
622d3731
KG
147412002-07-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14742
14743 * c-parse.in (parsing_iso_function_signature): New variable.
14744 (extdef_1): New, copied from...
14745 (extdef): ... here. Reset parsing_iso_function_signature.
14746 (old_style_parm_decls): Reset parsing_iso_function_signature.
14747 (old_style_parm_decls_1): New, copied from old_style_parm_decls.
14748 Warn about ISO C style function definitions.
14749 (nested_function, notype_nested_function): Reset
14750 parsing_iso_function_signature.
14751 (parmlist_2): Set parsing_iso_function_signature.
14752
14753 * doc/invoke.texi (-Wtraditional): Document new behavior.
14754
9bb46191
CD
147552002-07-02 Chris Demetriou <cgd@broadcom.com>
14756
14757 * config.gcc (mips*el-*-*): Use tm_defines to set
14758 TARGET_ENDIAN_DEFAULT, rather than including mips/little.h.
14759 * config/mips/little.h: Remove.
14760
e1c2dd26 147612002-07-02 Devang Patel <dpatel@apple.com>
c40da518 14762
c40da518 14763 * objc/objc-act.c (adjust_type_for_id_default): Do not allow an
31e25abd
CD
14764 object as parameter. Prevent something like 'NSObject' to be
14765 used as the type for a method argument.
c40da518 14766
0879540b
NB
147672002-07-03 Neil Booth <neil@daikokuya.co.uk>
14768
14769 * cpptrad.c: Update comment.
14770
b6fb43ab 147712002-07-02 Neil Booth <neil@daikokuya.co.uk>
4e314d1f 14772
b6fb43ab
NB
14773 * doc/cpp.texi: Update for traditional preprocessing changes.
14774 * goc/cppopts.texi: Similarly.
14775
c1c5187c
ZL
147762002-07-02 Ziemowit Laski <zlaski@apple.com>
14777
14778 * c-parse.in (designator): Enable designated initializers if ObjC.
14779 (objcmessageexpr): Remove references to objc_receiver_context.
14780 * objc/objc-act.h (objc_receiver_context): Remove decl.
14781 * objc/objc-act.c (objc_receiver_context): Remove.
14782 (lookup_objc_ivar): Test objc_method_context instead of
14783 objc_receiver_context.
14784
52702ae1
R
14785Tue Jul 2 18:45:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
14786
14787 * sh.c (print_operand, case 'N'): Allow zero vector.
14788 (arith_reg_or_0_operand): Likewise.
14789 (zero_vec_operand): Check for CONST_VECTOR, not PARALLEL.
4e314d1f 14790 * sh.h (CONST_COSTS): 0 has 0 cost. Check OUTER_CODE for
52702ae1
R
14791 IOR, XOR, PLUS and SET and take their respective constant
14792 ranges into account.
14793 (PREDICATE_CODES, arith_reg_or_0_operand): Can be CONST_VECTOR.
14794 * sh.md (subdi3, subdi3_media): Allow zero operand.
14795 (movv8qi_i+3): Only vector that is not split is the zero vector.
14796 Fix operand 3 to simplify_subreg.
14797 (movv2si_i): Split alternative 1.
14798 (mshfhi_l_di_rev+1): New splitter.
14799
49e7b251
NB
148002002-07-02 Neil Booth <neil@daikokuya.co.uk>
14801
ba57a9c0 14802 PR preprocessor/7029
49e7b251
NB
14803 * cppinit.c (cpp_handle_option): Suppress warnings with an
14804 implicit "-w" for "-M" and "-MM".
14805 * doc/cppopts.texi: Update.
14806
a3acdc0c
RS
148072002-07-01 Roger Sayle <roger@eyesopen.com>
14808
14809 * config/sh/sh.c (sh_media_init_builtins): Change use of poisoned
14810 identifier "bzero" to "memset". Pass extra NULL_TREE argument to
14811 builtin_function.
14812
0b558962
AM
148132002-07-02 Alan Modra <amodra@bigpond.net.au>
14814
14815 * README.Portability: Fix typos.
14816
9a81c5b7
HPN
148172002-07-01 Hans-Peter Nilsson <hp@axis.com>
14818
14819 PR target/7177
14820 * config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Correct number
14821 of indirections for register inside sign-extended mem part.
14822
6a2dd09a
RS
148232002-07-01 Roger Sayle <roger@eyesopen.com>
14824
14825 * tree.h: Modify builtin_function interface to take an extra
14826 argument ATTRS, which is a tree representing an attribute list.
14827
14828 * c-decl.c (builtin_function): Accept additional parameter.
14829 * objc/objc-act.c (builtin_function): Likewise.
14830 * f/com.c (builtin_function): Likewise.
14831 * java/decl.c (builtin_function): Likewise.
14832 * ada/utils.c (builtin_function): Likewise.
14833 * cp/decl.c (builtin_function): Likewise.
14834 (builtin_function_1): Likewise.
14835
14836 * c-common.c (c_common_nodes_and_builtins): Pass an additional
14837 NULL_TREE argument to builtin_function. (builtin_function_2):
14838 Likewise.
14839 * cp/call.c (build_java_interface_fn_ref): Likewise.
14840 * objc/objc-act.c (synth_module_prologue): Likewise.
14841 * java/decl.c (java_init_decl_processing): Likewise.
14842 * f/com.c (ffe_com_init_0): Likewise.
14843
14844 * config/alpha/alpha.c (alpha_init_builtins): Pass an additional
14845 NULL_TREE argument to builtin_function.
14846 * config/arm/arm.c (def_builtin): Likewise.
14847 * config/c4x/c4x.c (c4x_init_builtins): Likewise.
14848 * config/i386/i386.c (def_builtin): Likewise.
14849 * config/ia64/ia64.c (def_builtin): Likewise.
14850 * config/rs6000/rs6000.c (def_builtin): Likewise.
14851
e20569ae
ZW
148522002-07-01 Zack Weinberg <zack@codesourcery.com>
14853
14854 * config/ip2k/t-ip2k: Remove LIBGCC1, CROSS_LIBGCC1, and LIBGCC1_TEST.
14855 * config/mips/t-isa3264: Likewise.
14856 * config/mmix/t-mmix: Likewise.
14857
f1b690f1
JDA
148582002-07-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
14859
14860 * emit-rtl.c (init_emit_once): Add missing cast to HOST_WIDE_INT.
14861
6bfa5aac
RS
148622002-07-01 Roger Sayle <roger@eyesopen.com>
14863
14864 PR opt/4046
14865 * fold-const.c (fold) [COND_EXPR]: Simplify A ? 0 : 1 to !A,
14866 A ? B : 0 to A && B and A ? B : 1 into !A || B if both A and
14867 B are truth values.
14868
9a5c1b9d
NN
148692002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
14870
14871 * config/mmix/t-mmix: Eliminate last reference to LIBGCC1_TEST.
14872
d3fc4dbc
MK
148732002-07-01 Matt Kraai <kraai@alumni.cmu.edu>
14874
3b2124df
MK
14875 * README.Portability (Function prototypes): Give an example of
14876 declaring and defining a function with no arguments.
14877
d3fc4dbc
MK
14878 * README.Portability (Function prototypes): Document new
14879 variable-argument function macros.
14880
c1b92d09
R
14881Mon Jul 1 19:55:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
14882
14883 * sh.c (langhooks.h): Include.
14884 (sh_init_builtins, sh_media_init_builtins): New functions.
14885 (sh_expand_builtin, arith_reg_dest,and_operand): Likewise.
14886 (mextr_bit_offset, extend_reg_operand, zero_vec_operand): Likewise.
14887 (sh_rep_vec, sh_1el_vec, sh_const_vec): Likewise.
14888 (builtin_description): New struct tag.
14889 (signature_args, bdesc): New arrays.
14890 (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Undef / define.
14891 (print_operand): Add 'N' modifier.
14892 * sh.h (VECTOR_MODE_SUPPORTED_P): Add SHmedia vector modes.
14893 (EXTRA_CONSTRAINT_U, EXTRA_CONSTRAINT_W): New macros.
14894 (EXTRA_CONSTRAINT): Add 'U' and 'W' cases.
14895 (CONST_COSTS): Add special case for SHmedia AND.
14896 (PREDICATE_CODES): Add and_operand, arith_reg_dest,
14897 extend_reg_operand, extend_reg_or_0_operand, mextr_bit_offset,
14898 sh_const_vec, sh_1el_vec, sh_rep_vec, zero_vec_operand.
14899 target_operand can also be const or unspec.
14900 * sh.md (UNSPEC_INIT_TRAMP, UNSPEC_FCOSA UNSPEC_FSRRA): New constants.
14901 (UNSPEC_FSINA, UNSPEC_NSB, UNSPEC_ALLOCO): Likewise.
14902 (attribute type): Add new types.
14903 (anddi3): Add splitter.
14904 (movdi_const_16bit+1): Add code to handle vector constants and
14905 bitmasks efficiently.
14906 (shori_media): Have generator function made.
14907 (movv8qi, movv8qi_i, movv8qi_i+1, movv8qi_i+2): New patterns.
14908 (movv8qi_i+3, movv2hi, movv2hi_i, movv4hi, movv4hi_i): Likewise.
14909 (movv2si, movv2si_i, absv2si2, absv4hi2, addv2si3, addv4hi3): Likewise.
14910 (ssaddv2si3, usaddv8qi3, ssaddv4hi3, negcmpeqv8qi): Likewise.
14911 (negcmpeqv2si, negcmpeqv4hi, negcmpgtuv8qi, negcmpgtv2si): Likewise.
14912 (negcmpgtv4hi, mcmv, mcnvs_lw, mcnvs_wb, mcnvs_wub): Likewise.
14913 (mextr_rl, mextr_lr, mextr1, mextr2, mextr3, mextr4, mextr5): Likewise.
14914 (mextr6, mextr7, mmacfx_wl, mmacfx_wl_i, mmacnfx_wl): Likewise.
14915 (mmacnfx_wl_i, mulv2si3, mulv4hi3, mmulfx_l, mmulfx_w): Likewise.
14916 (mmulfxrp_w, mmulhi_wl, mmullo_wl, mmul23_wl, mmul01_wl): Likewise.
14917 (mmulsum_wq, mmulsum_wq_i, mperm_w, mperm_w_little): LIkewise.
14918 (mperm_w_big, mperm_w0, msad_ubq, msad_ubq_i, mshalds_l): Likewise.
14919 (mshalds_w, ashrv2si3, ashrv4hi3, mshards_q, mshfhi_b): Likewise.
14920 (mshflo_b, mshf4_b, mshf0_b, mshfhi_l, mshflo_l, mshf4_l): Likewsie.
14921 (mshf0_l, mshfhi_w, mshflo_w, mshf4_w, mshf0_w, mshfhi_l_di): Likewise.
14922 (mshfhi_l_di_rev, mshflo_l_di, mshflo_l_di_rev): Likewise.
14923 (mshflo_l_di_x, mshflo_l_di_x_rev, ashlv2si3, ashlv4hi3): Likewise.
14924 (lshrv2si3, lshrv4hi3, subv2si3, subv4hi3, sssubv2si3): Likewise.
14925 (ussubv8qi3, sssubv4hi3, fcosa_s, fsina_s, fipr, fsrra_s): Likewise.
14926 (ftrv): Likewise.
14927
14928 (fpu_switch+1, fpu_switch+2): Remove constraint.
14929
97ebc06f
AH
149302002-07-01 Aldy Hernandez <aldyh@redhat.com>
14931
6c535c69
ZW
14932 * tree.c (build_function_type_list): Update function comment.
14933 Rename first argument to return_type.
97ebc06f 14934
353a10d0
NB
149352002-07-01 Neil Booth <neil@daikokuya.co.uk>
14936
14937 * Makefile.in: Remove all trace of tradcpp.c, tradcpp.h,
14938 tradcif.y and related files.
14939
e34cabb3
NB
149402002-07-01 Neil Booth <neil@daikokuya.co.uk>
14941
14942 * cpptrad.c (skip_whitespace): Pass pointer to prior char.
14943
8bf3ccbb
KG
149442002-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
14945
14946 * mips.h (FUNCTION_ARG_REGNO_P): Fix parentheses.
14947
44eedb75 14948See ChangeLog.7 for earlier changes.