12004-09-06 Release Manager 2 3 * GCC 3.4.2 released. 4 52004-09-05 Mark Mitchell <mark@codesourcery.com> 6 7 PR bootstrap/17325 8 Backport from mainline 9 2004-06-23 Wu Yongwei <adah@sh163.net> 10 * gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust. 11 (__gthr_i486_lock_cmp_xchg): New inline assembly function. 12 (__GTHR_W32_InterlockedCompareExchange): New macro to choose a 13 suitable function for interlocked compare-and-exchange. 14 (__gthread_mutex_trylock): Use 15 __GTHR_W32_InterlockedCompareExchange. 16 (__gthread_mutex_init_function, __gthread_mutex_lock, 17 __gthread_mutex_trylock, __gthread_mutex_unlock): Adjust the 18 initial counter value to work correctly under Windows 95. 19 * config/i386/gthr-win32.c: Adjust include order. 20 Define __GTHREAD_I486_INLINE_LOCK_PRIMITIVES before including 21 gthr-win32.h. 22 (__gthr_win32_mutex_init_function, __gthr_win32_mutex_lock, 23 __gthr_win32_mutex_trylock, __gthr_win32_mutex_unlock): Adjust 24 to match inline versions in gthr-win32.h. 25 26 2004-04-27 Wu Yongwei <adah@sh163.net> 27 * gthr-win32.h (__gthread_mutex_t): Change typedef to new structure. 28 (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust. 29 (__gthread_mutex_init_function): Replace CreateMutex with 30 initialization of custom mutex using CreateSemaphore. 31 (__gthread_mutex_lock): Use InterlockedIncrement. 32 (__gthread_mutex_trylock): Use InterlockedCompareExchange. 33 (__gthread_mutex_unlock): Use InterlockedDecrement and 34 ReleaseSemaphore to unlock 35 * config/i386/gthr-win32.c (__gthread_mutex_init_function, 36 __gthread_mutex_lock, __gthread_mutex_trylock, 37 __gthread_mutex_unlock): Adjust to match inline versions in 38 gthr-win32.h. 39 402004-09-03 Kaz Kojima <kkojima@gcc.gnu.org> 41 42 PR target/17303 43 Backport from mainline: 44 2004-08-31 Kaz Kojima <kkojima@gcc.gnu.org> 45 46 * config/sh/sh.c (output_branch): Check the insn length possibly 47 in the delayed slot. 48 492004-09-01 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 50 51 PR rtl-optimization/16408 52 * gcse.c (replace_store_insn): Fix LIBCALL/RETVAL notes. 53 542004-09-01 Richard Henderson <rth@redhat.com> 55 56 * config/ns32k/ns32k.h (TRANSFER_FROM_TRAMPOLINE): Remove. 57 (TRAMPOLINE_TEMPLATE): Merge code from __trampoline inline. 58 592004-09-01 Jakub Jelinek <jakub@redhat.com> 60 61 * libgcc-std.ver (GCC_3.4.2): Export also __trampoline_setup. 62 632004-09-01 Jakub Jelinek <jakub@redhat.com> 64 65 * fold-const.c (operand_equal_p): Require equal sign also for 66 FIX_{CEIL,TRUNC,FLOOR,ROUND}_EXPR. 67 682004-08-31 Jeff Law <law@redhat.com> 69 70 * gcse.c (remove_reachable_equiv_notes): Scan loops where 71 the store expression is killed for REG_EQUAL/REG_EQUIV notes 72 that need to be removed. 73 742004-08-30 Mark Mitchell <mark@codesourcery.com> 75 76 Revert: 77 2004-08-29 Mark Mitchell <mark@codesourcery.com> 78 PR rtl-optimization/16590 79 * gcse.c (pre_delete): Do not create invalid REG_EQUAL notes. 80 812004-08-29 Mark Mitchell <mark@codesourcery.com> 82 83 PR rtl-optimization/16590 84 * gcse.c (pre_delete): Do not create invalid REG_EQUAL notes. 85 862004-08-26 Richard Henderson <rth@redhat.com> 87 88 * config/alpha/alpha.h (HARD_REGNO_MODE_OK): Allow complex float 89 modes. 90 912004-08-26 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 92 93 PR target/17119. 94 * config/m32r.c (gen_compare): Use reg_or_int16_operand when 95 checking for a valid constant, regardless of sign. 96 972004-08-25 Richard Henderson <rth@redhat.com> 98 99 PR target/16974 100 * config/alpha/alpha.md (adddi_fp_hack): Don't rely on splitting 101 if the constant satisfies add_operand. 102 1032004-08-25 Richard Henderson <rth@redhat.com> 104 105 PR debug/10695 106 * config/alpha/alpha.c (emit_frame_store_1, emit_frame_store): New. 107 (alpha_expand_prologue): Handle >32-bit frames. Generate proper 108 unwind info for >16-bit frames. 109 1102004-08-25 Richard Henderson <rth@redhat.com> 111 112 * config/alpha/alpha.c (alpha_cannot_force_const_mem): New. 113 (TARGET_CANNOT_FORCE_CONST_MEM): New. 114 1152004-08-25 Richard Earnshaw <rearnsha@arm.com> 116 117 PR target/15927 118 * arm.h (THUMB_SECONDARY_OUTPUT_RELOAD_CLASS): Don't need a secondary 119 reload if CLASS is BASE_REGS. 120 1212004-08-25 Richard Earnshaw <rearnsha@arm.com> 122 123 * PR target/15948 124 * arm.md (bicsi3_cbranch): Add alternative to handle tying operands 125 one and two. 126 1272004-08-24 Richard Henderson <rth@redhat.com> 128 129 PR target/16298 130 * config/i386/i386.c (legitimate_constant_p): Rework to not accept 131 random codes within CONST. 132 1332004-08-24 Paolo Bonzini <bonzini@gnu.org> 134 135 PR target/17113 136 * config/i386/i386.md (movv16qi_internal): Fix typo. 137 1382004-08-24 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 139 140 PR target/17093 141 * config/m32r/m32r.md (movsi_sda): Add SI mode specification to 142 UNSPEC. 143 1442004-08-24 Jonathan Wakely <redi@gcc.gnu.org> 145 146 * doc/trouble.texi (C++ misunderstandings): Fix example code. 147 1482004-08-23 Roger Sayle <roger@eyesopen.com> 149 150 PR rtl-optimization/17078 151 * c-semantics.c (expand_unreachable_if_stmt): If the end of the 152 specified statement list is reachable, always return a non-NULL 153 pointer. If necessary, return error_mark_node. 154 1552004-08-23 Mark Mitchell <mark@codesourcery.com> 156 157 PR c/14492 158 * dwarf2out.c (loc_descriptor_from_tree): Robustify. 159 160 PR c/16180 161 * jump.c (duplicate_loop_exit_test): If the location reached by 162 the unconditional jump at the top of the loop is outside the loop, 163 then do not treat it as the exit test. 164 1652004-08-23 Janis Johnson <janis187@us.ibm.com> 166 167 Backports from mainline: 168 169 2004-02-11 Ziemowit Laski <zlaski@apple.com> 170 2004-02-21 Ziemowit Laski <zlaski@apple.com> 171 2004-02-27 Ziemowit Laski <zlaski@apple.com> 172 2004-03-04 Ziemowit Laski <zlaski@apple.com> 173 2004-03-20 Ziemowit Laski <zlaski@apple.com> 174 2004-03-24 Ziemowit Laski <zlaski@apple.com> 175 2004-05-11 Fariborz Jahanian <fjahanian@apple.com> 176 2004-07-23 Janis Johnson <janis187@us.ibm.com> 177 2004-08-12 Janis Johnson <janis187@us.ibm.com> 178 2004-08-12 Ben Elliston <bje@au.ibm.com> 179 2004-08-16 Janis Johnson <janis187@us.ibm.com> 180 181 * c-common.c (vector_size_helper): Remove; call 182 reconstruct_complex_type() instead. 183 * hooks.c (hook_constcharptr_tree_null): New hook. 184 * hooks.h (hook_constcharptr_tree_null): New prototype. 185 * target-def.h (TARGET_MANGLE_FUNDAMENTAL_TYPE): New target hook. 186 * target.h (mangle_fundamental_type): New target hook. 187 * tree.c (reconstruct_complex_type): New function 188 (formerly vector_size_helper() in c-common.c). 189 (make_vector): Make externally visible. 190 * tree.h (reconstruct_complex_type, make_vector): Add prototypes. 191 * doc/extend.texi (AltiVec builtins): Document additional differences 192 from the Motorola AltiVec PIM. 193 * doc/tm.texi (TARGET_MANGLE_FUNDAMENTAL_TYPE): Document. 194 * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Refer to 195 SUBTARGET_OPTION_TRANSLATE_TABLE for architecture-specific options. 196 * config/i386/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): Define it. 197 * config/rs6000/altivec.h: #error out if '-maltivec' not specified. 198 (vector, pixel, bool): #define to __vector, __pixel and __bool. 199 Change vector to __vector (except for the `vector' macro itself). 200 (__un_args_eq, __bin_args_eq, __tern_args_eq): Move to C-specific 201 portion of header. 202 (__altivec_link_error_invalid_argument): Remove prototype; will use 203 __builtin_altivec_compiletime_error("vec_*") instead. 204 (vec_*): Fix/complete set of available operation overloads given the 205 existence of distinct 'vector bool ...' and 'vector pixel' types; 206 tighten cv-correctness of pointer arguments; in C, always check for 207 correct argument types before macro expansion. 208 (vec_splat_s8, vec_splat_s16, vec_splat_s32, vec_splat_u8, 209 vec_splat_u16, vec_splat_u32): Change C++ definitions to accept a 210 'const int' argument; the prototypes already do. 211 (vec_dst, vec_dstst, vec_dststt, vec_dstt, vec_sld, vec_splat): Add 212 prototypes, marked with always_inline attribute. 213 * config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): New macro 214 defining Darwin/PowerPC-specific '-f[no-]altivec' and 215 '-W[no-]altivec-long-deprecated' switches. 216 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Pre-define 217 '__vector', '__pixel' and '__bool' macros using 218 '__attribute__((altivec(...)))' types. 219 * config/rs6000/rs6000.c (bool_char_type_node, bool_short_type_node, 220 bool_int_type_node, pixel_type_node, bool_V16QI_type_node, 221 bool_V8HI_type_node, bool_V4SI_type_node, pixel_V8HI_type_node): 222 New type nodes. 223 (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): New, for 224 handling '-W[no-]altivec-long-deprecated'. 225 (rs6000_override_options): Handle '-W[no-]altivec-long-deprecated'. 226 (rs6000_expand_binop_builtin, rs6000_expand_ternop_builtin, 227 altivec_expand_dst_builtin): Remove casts from integer literals. 228 (altivec_expand_builtin): Likewise; handle expansion of new 229 '__builtin_altivec_compiletime_error' function. 230 (rs6000_init_builtins): Initialize 'vector bool ...' and 'vector pixel' 231 types, and make them distinct from other vector types; register 232 '__builtin_altivec_compiletime_error' function. 233 (print_operand): For 'P', print a full target register name instead of 234 merely its number. 235 (rs6000_attribute_table): Add "altivec" attribute. 236 (rs6000_handle_altivec_attribute): New function. 237 (rs6000_common_init_builtins): Rename v4si_ftype_char, v8hi_ftype_char, 238 v16qi_ftype_char, v4sf_ftype_v4si_char, v4si_ftype_v4sf_char, 239 v4si_ftype_v4si_char, v8hi_ftype_v8hi_char, v16qi_ftype_v16qi_char, 240 v16qi_ftype_v16qi_v16qi_char, v8hi_ftype_v8hi_v8hi_char, 241 v4si_ftype_v4si_v4si_char and v4sf_ftype_v4sf_v4sf_char to 242 end in ..._int; change them to accept an int instead of a char 243 as the last parameter. 244 (altivec_expand_dst_builtin): Treat expansion as completed even if 245 literal argument is invalid (so that other expansions are not tried 246 in vain). 247 (TARGET_MANGLE_FUNDAMENTAL_TYPE): Point target hook at 248 rs6000_mangle_fundamental_type. 249 (rs6000_mangle_fundamental_type): New function. 250 * config/rs6000/rs6000.h (TARGET_OPTIONS): Describe 251 '-m[no-]-warn-altivec-long' (which '-W[no-]altivec-long-deprecated' 252 maps to). 253 (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): Forward 254 declare. 255 (ALTIVEC_BUILTIN_COMPILETIME_ERROR): New built-in enumeration. 256 2572004-08-20 Jakub Jelinek <jakub@redhat.com> 258 259 PR target/16195 260 * config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Make r30 261 fixed if TARGET_TOC && TARGET_MINIMAL_TOC. 262 * config/rs6000/rs6000.c (first_reg_to_save): Pretend 263 call_used_regs[30] is 0 if TARGET_TOC && TARGET_MINIMAL_TOC. 264 (rs6000_emit_prologue, rs6000_emit_epilogue): Likewise. 265 2662004-08-17 Joseph S. Myers <jsm@polyomino.org.uk> 267 268 * c-decl.c (grokdeclarator): Allow for function definition where 269 innermost declarator has attributes. 270 2712004-08-17 Daniel Bornstein <danfuzz@milk.com> 272 273 PR target/17019 274 * arm.md (addsi3_cbranch_scratch): Correct case labels. 275 2762004-08-14 Roger Sayle <roger@eyesopen.com> 277 David Billinghurst <David.Billinghurst@riotinto.com> 278 279 PR libgfortran/15930 280 * fixinc/inclhack.def (irix___generic1, irix___generic2): New. 281 * fixinc/fixincl.x: Regenerate. 282 * fixinc/tests/base/internal/math_core.h: New file 283 2842004-08-14 Roger Sayle <roger@eyesopen.com> 285 Bruce Korb <bkorb@gnu.org> 286 287 * fixinc/inclhack.def (aix_syswait_2): New fix. 288 * fixinc/fixincl.x: Regenerate. 289 * fixinc/tests/base/sys/wait.h: Update for new test. 290 2912004-08-14 Gerald Pfeifer <gerald@pfeifer.com> 292 Dimitri Papadopoulos-Orfanos <papadopo@shfj.cea.fr> 293 Dave Korn <dk@artimi.com> 294 295 * doc/install.texi (Building): Avoid duplicate reference to GNU 296 make requirement. 297 (*-*-solaris2*): Do not recommend GNU make any longer. Simplify. 298 2992004-08-13 J"orn Rennecke <joern.rennecke@superh.com> 300 301 * sh.md (cbranch define_delay) Use cond_delay_slot for 302 non-anulled condition too. 303 3042004-08-11 Mark Mitchell <mark@codesourcery.com> 305 306 PR c++/16618 307 * ginclude/stddef.h (offsetof): Refine C++ definition. 308 3092004-08-12 Alan Modra <amodra@bigpond.net.au> 310 311 Merge from mainline. 312 2004-07-01 Alan Modra <amodra@bigpond.net.au> 313 * config/rs6000/rs6000.c (rs6000_mixed_function_arg): Rewrite. 314 (function_arg): Use rs6000_arg_size rather than CLASS_MAX_NREGS in 315 calculating gpr size for altivec. Simplify and correct 316 rs6000_mixed_function_arg calls. Call rs6000_mixed_function_arg 317 for ABI_V4 gpr case too. Fix off-by-one error in long double 318 reg test. Generate the correct PARALLEL to handle long double 319 for ABI_AIX 32-bit. Use this for -m32 -mpowerpc64 fpr case too. 320 (function_arg_partial_nregs): Align before calculating regs left. 321 Don't return info on partial fprs when we need info on gprs. 322 Correct long double fpr off-by-one error. 323 3242004-08-11 James E Wilson <wilson@specifixinc.com> 325 326 PR rtl-optimization/16490 327 * cfgrtl.c (cfg_layout_split_edge): Set global_live_at_start and 328 global_live_at_end for new basic block if already set for other blocks. 329 3302004-08-07 Roger Sayle <roger@eyesopen.com> 331 332 PR middle-end/16790 333 * fold-const.c (expand_muldiv_1) <NOP_EXPR>: Disallow local 334 truncations, not just global truncations. 335 3362004-08-07 Alan Modra <amodra@bigpond.net.au> 337 338 * config/rs6000/rs6000.c (function_arg_padding): Revert 2004-07-28. 339 3402004-08-04 Zack Weinberg <zack@codesourcery.com> 341 342 PR 13956 343 * dbxout.c (dbx_output_lbrac, dbx_output_rbrac): New 344 functions, broken out of dbxout_block. 345 (dbxout_block): The block at depth 0 should get LBRAC/RBRAC 346 stabs too, if it contains symbols. Use the begin_label and 347 the Lscope label (emitted by dbxout_function_end) for the 348 range of this block. 349 (dbxout_function_decl): Always call dbxout_function_end. 350 (dbxout_function_end): Return after emitting the "Lscope" symbol 351 under the same conditions that this function formerly wasn't called. 352 Add explanatory comments. 353 3542004-08-03 Yossi Markovich <yossim@il.ibm.com> 355 Mostafa Hagog <mustafa@il.ibm.com> 356 357 * config/rs6000/altivec.md (altivec_vnmsubfp): Fix wrong pattern. 358 3592004-07-31 Andrew Pinski <apinski@apple.com> 360 361 PR other/16842 362 * mkheaders.in (libsubdir): s/gcc-lib/gcc/. 363 3642004-07-28 Aldy Hernandez <aldyh@redhat.com> 365 366 * config/rs6000/rs6000.md ("move_from_CR_gt_bit"): Rename to 367 move_from_CR_eq_bit. 368 Rename UNSPEC_MV_CR_GT to UNSPEC_MV_CR_EQ. 369 370 371 * config/rs6000/spe.md ("e500_flip_gt_bit"): Rename to 372 e500_flip_eq_bit. 373 374 * config/rs6000/rs6000-protos.h: Rename output_e500_flip_gt_bit to 375 output_e500_flip_eq_bit. 376 377 * config/rs6000/rs6000.c (output_e500_flip_gt_bit): Rename to 378 output_e500_flip_eq_bit. 379 (rs6000_emit_sCOND): Rename call to output_e500_flip_gt_bit to 380 output_e500_flip_eq_bit. 381 Rename gen_move_from_CR_gt_bit to gen_move_from_CR_eq_bit. 382 (print_operand): case D. Get to EQ bit. 383 3842004-07-28 Alan Modra <amodra@bigpond.net.au> 385 386 * config/rs6000/rs6000.c (function_arg_padding): Pad SFmode upwards. 387 3882004-07-24 Alexander Kabaev <kan@freebsd.org> 389 390 * config/ia64/ia64.h (SUBTARGET_EXTRA_SPECS): Default to nothing. 391 (EXTRA_SPECS): Use SUBTARGET_EXTRA_SPECS. 392 3932004-07-26 David Edelsohn <edelsohn@gnu.org> 394 395 PR target/16239 396 * config/rs6000/rs6000.md (movdi_internal64): Further disparage 397 f->f. 398 3992004-07-26 Richard Sandiford <rsandifo@redhat.com> 400 401 PR rtl-optimization/16643 402 * cfglayout.h (cfg_layout_initialize): Add a flags parameter. 403 * cfglayout.c (cfg_layout_initialize): Pass it to cleanup_cfg. 404 * basic-block.h (reorder_basic_blocks): Add a flags parameter. 405 * cfglayout.c (reorder_basic_blocks): Pass it to cfg_layout_initialize. 406 * loop-init.c (loop_optimizer_init): Pass 0 to cfg_layout_initialize. 407 * rtl.h (tracer): Add a flags parameter. 408 * tracer.c (tracer): Pass it to cfg_layout_initialise. 409 * toplev.c (rest_of_handle_stack_regs): Pass 0 to reorder_basic_blocks. 410 (rest_of_handle_reorder_blocks): Update calls to tracer and 411 reorder_basic_blocks, passing CLEANUP_UPDATE_LIFE if appropriate. 412 (rest_of_handle_tracer): Pass 0 to tracer. 413 4142004-07-24 Zack Weinberg <zack@codesourcery.com> 415 416 * config/ia64/hpux.h: Do not disable TLS. 417 4182004-07-24 Alexander Kabaev <kan@freebsd.org> 419 Zack Weinberg <zack@codesourcery.com 420 421 PR 16684 422 * c-decl.c (diagnose_mismatched_decls): Don't issue a 423 redundant-declaration warning the first time a builtin is 424 declared explicitly. 425 4262004-07-21 Jakub Jelinek <jakub@redhat.com> 427 Jan Hubicka <jh@suse.cz> 428 429 PR middle-end/15345 430 PR c/16450 431 * toplev.c (rest_of_handle_inlining): Set DECL_DEFER_OUTPUT on C 432 nested functions as well. 433 * tree-optimize.c (tree_rest_of_compilation): Don't clear decl rtls 434 for deferred nested inlines. 435 4362004-07-17 Eric Botcazou <ebotcazou@act-europe.fr> 437 438 * libgcc2.c (__enable_execute_stack): New symbol. 439 * libgcc-std.ver (GCC_3.4.2): New version. Inherit from GCC_3.4 440 and declare __enable_execute_stack. 441 * mklibgcc.in (lib2funcs): Add _enable_execute_stack. 442 * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): ANSIfy. 443 * config/sol2.h (TRANSFER_FROM_TRAMPOLINE): Rename into 444 ENABLE_EXECUTE_STACK and ANSIfy. 445 * config/alpha/alpha.c (alpha_initialize_trampoline): Conditionalize 446 on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE. 447 * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Rename into 448 ENABLE_EXECUTE_STACK. 449 * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Likewise. 450 * config/i386/i386.c (x86_initialize_trampoline): Conditionalize 451 on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE. 452 * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Rename into 453 ENABLE_EXECUTE_STACK. 454 * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Likewise. 455 * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Likewise. 456 * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Likewise. 457 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Likewise. 458 * config/sparc/sparc.c (sparc_initialize_trampoline): Conditionalize 459 on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE. 460 (sparc64_initialize_trampoline): Likewise. 461 * doc/tm.texi (trampolines): Add ENABLE_EXECUTE_STACK macro. 462 4632004-07-16 Andris Pavenis <pavenis@latnet.lv> 464 465 PR preprocessor/16366 466 * internal.h (struct cpp_reader): New field dir_hash. 467 * files.c (make_cpp_dir): Use dir_hash, not file_hash. 468 (_cpp_init_files, _cpp_cleanup_files): Update for new field. 469 4702004-07-15 James E Wilson <wilson@specifixinc.com> 471 472 Backport from mainline: 473 2004-02-19 Steve Ellcey <sje@cup.hp.com> 474 * config/ia64/ia64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro. 475 * testsuite/gcc.dg/20040219-1.c: New test. 476 4772004-07-15 Aldy Hernandez <aldyh@redhat.com> 478 479 * config/rs6000/rs6000.md ("*cceq_ior_compare"): Allow 480 unconditionally. 481 * config/rs6000/spe.md ("e500_cceq_ior_compare"): Remove. 482 4832004-07-14 James E Wilson <wilson@specifixinc.com> 484 485 PR target/16325 486 * config/mips/mips.h (STARTING_FRAME_OFFSET): When flag_profile_value 487 and ! TARGET_64BIT, include REG_PARM_STACK_SPACE. 488 4892004-07-14 Eric Botcazou <ebotcazou@libertysurf.fr> 490 491 Backport from mainline: 492 2004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr> 493 494 PR target/13926 495 * config/sparc/sparc-protos.h (output_ubranch): New prototype. 496 * config/sparc/sparc.c (output_ubranch): New function. 497 * config/sparc/sparc.md (jump pattern): Use it. 498 4992004-07-13 Richard Sandiford <rsandifo@redhat.com> 500 501 PR rtl-optimization/16380 502 * loop.c (check_dbra_loop): Sink comparison instructions if they 503 do something other than set cc0. 504 5052004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr> 506 507 PR target/16494 508 * config/sparc/sparc.c (output_cbranch): Properly guard 509 the code handling far branches with TARGET_V9. 510 * config/sparc/sparc.md (length attribute): Document the 511 side-effect of having a length greater or equal to 3. 512 5132004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr> 514 Lloyd Parkes <lloyd@must-have-coffee.gen.nz> 515 516 PR target/15186 517 * config/sparc/sol2-bi.h (LINK_ARCH64_SPEC_BASE): Pass 518 /usr/ucblib/sparcv9 as -R path when -compat-bsd is specified. 519 5202004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr> 521 Martin Sebor <sebor@roguewave.com> 522 523 PR target/12602 524 * doc/invoke.texi (SPARC options): Document -threads 525 and -pthreads on Solaris. 526 5272004-07-13 Anthony Heading <aheading@jpmorgan.com> 528 529 * configure.ac (gcc_cv_as_offsetable_lo10): Fix a typo. 530 * configure: Rebuilt. 531 5322004-07-12 Vladimir Makarov <vmakarov@redhat.com> 533 534 PR target/16445 535 * config/ia64/ia64.c (bundling): Don't count ignored insns. 536 5372004-07-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 538 539 * pa.c (output_indirect_call): Only use %r2 as the link register in 540 indirect calls with the long PA 2.0 pc-relative branch. 541 5422004-07-10 James E Wilson <wilson@specifixinc.com> 543 544 * config/gofast.h (gofast_maybe_init_libfuncs): Use SImode for litodp. 545 5462004-07-10 Jakub Jelinek <jakub@redhat.com> 547 548 * Backport from mainline: 549 2004-07-08 Paolo Bonzini <bonzini@gnu.org> 550 Jakub Jelinek <jakub@redhat.com> 551 552 * config/i386/i386.c (override_options): Enable 553 SSE prefetches with -mtune, as long as we are 554 compiling for i686 or higher. All i686 processors 555 accept SSE prefetches as NOPS, some i586's don't. 556 557 2004-07-07 Jakub Jelinek <jakub@redhat.com> 558 559 * config/i386/i386.c (override_options): Don't set x86_prefetch_sse 560 from -mtune= option. 561 5622004-07-10 Jakub Jelinek <jakub@redhat.com> 563 564 PR tree-optimization/16372 565 * fold-const.c (build_range_check): Use TYPE_MODE's precision for 566 enumerals. 567 5682004-07-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 569 570 PR target/16459 571 * pa.c (output_indirect_call): Use %r2 as the link register when 572 calling $$dyncall with a pc-relative branch. 573 5742004-07-08 Gerald Pfeifer <gerald@pfeifer.com> 575 576 * doc/install.texi (Binaries): Mention OpenPKG. 577 5782004-07-09 Eric Botcazou <ebotcazou@libertysurf.fr> 579 580 PR target/16416 581 * config/sparc/sol2-bi.h (OPTION_DEFAULT_SPECS): New macro. 582 Override default settings to account for -m32 and -m64. 583 5842004-07-08 Vladimir Makarov <vmakarov@redhat.com> 585 586 PR target/16414 587 * config/ia64/ia64.c (ia64_dfa_new_cycle): Fix typo in comparison 588 of asm_noperands result. 589 5902004-07-08 Eric Botcazou <ebotcazou@libertysurf.fr> 591 592 PR target/16430 593 * config/sparc/sparc.c (function_value): In 64-bit mode, 594 return the aggregates larger than 16 bytes like unions. 595 5962004-07-08 Eric Botcazou <ebotcazou@libertysurf.fr> 597 598 PR target/16199 599 * config/sparc/sparc.c (sparc_emit_set_symbolic_const64): When 600 'temp' is zero, generate new pseudos as needed and emit the 601 sequence of insns in single-assignment form. Resync comments 602 with code. 603 (sparc_emit_set_const64): Pass zero as 'temp' argument to above 604 function before reload. 605 6062004-07-07 Richard Sandiford <rsandifo@redhat.com> 607 608 PR target/16407 609 * config/mips/mips-protos.h (mips_declare_common_object): Declare. 610 * config/mips/mips.c (mips_declare_common_object): New function, 611 mostly split out from... 612 (mips_output_aligned_decl_common): ...here. 613 * config/mips/mips.h (ASM_OUTPUT_LOCAL): Remove in favor of... 614 (ASM_OUTPUT_ALIGNED_LOCAL): ...this new definition. 615 * config/mips/iris6.h (ASM_OUTPUT_ALIGNED_LOCAL): Undefine this 616 rather than ASM_OUTPUT_LOCAL. Call mips_declare_common_object. 617 6182004-07-07 Jason Merrill <jason@redhat.com> 619 620 PR c++/15815 621 * doc/extend.texi (C++ Interface): Correct information and 622 discourage use. 623 6242004-07-07 Andreas Schwab <schwab@suse.de> 625 626 * config/ia64/ia64.md: Define new attribute "empty". 627 (prologue_use, nop_x, insn_group_barrier): Set it. 628 629 * config/ia64/ia64.c (ia64_reorg): When looking for trailing call 630 skip over "empty" insns. 631 6322004-07-07 Vladimir Makarov <vmakarov@redhat.com> 633 634 PR target/16130 635 PR target/16142 636 PR target/16143 637 * config/ia64/ia64.c (ia64_dfa_new_cycle): Reset DFA state for asm 638 insn. 639 6402004-07-06 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 641 642 PR target/1679. 643 * config/m32r/m32r.c (m32r_function_symbol): New function: 644 Generate a symbol name RTX with the correct m32r specific flags 645 set. 646 (block_move_call): Use new function to generate correct symbol. 647 * config/m32r/m32r-protos.h: Add prototype for new funcion. 648 * config/m32r/m32r.h (INITIALIZE_TRAMPOLINE): Use the new 649 function. 650 6512004-07-07 Richard Sandiford <rsandifo@redhat.com> 652 653 PR target/16357 654 * config/mips/mips.c (mips_block_move_straight): Pass BLKmode memrefs 655 to mips_expand_unaligned_load, mips_expand_unaligned_store, and 656 move_by_pieces. 657 6582004-07-07 Richard Sandiford <rsandifo@redhat.com> 659 660 PR target/15869 661 * config/mips/mips.c (mips_avoid_hazards): Call split_all_insns_noflow. 662 6632004-07-06 Mark Mitchell <mark@codesourcery.com> 664 665 * doc/include/gcc-common.texi: Increment version number. 666 * version.c (version_string): Likewise. 667 6682004-07-06 Joseph S. Myers <jsm@polyomino.org.uk> 669 670 * doc/sourcebuild.texi: Use semicolons instead of commas in 671 section title. 672 6732004-07-06 Joseph S. Myers <jsm@polyomino.org.uk> 674 675 * doc/bugreport.texi, doc/configterms.texi, doc/contrib.texi, 676 doc/contribute.texi, doc/cpp.texi, doc/cppinternals.texi, 677 doc/extend.texi, doc/install.texi, doc/invoke.texi, doc/md.texi, 678 doc/portability.texi, doc/trouble.texi: Avoid some first-person 679 references and patronizing comments. Based on printed manual. 680 * doc/invoke.texi: Don't reference fortran@gnu.org. 681 * doc/trouble.texi (Warning when a non-void function value is 682 ignored): Rewrite. From Russ Allbery and Chris Devers. 683 6842004-07-06 Joseph S. Myers <jsm@polyomino.org.uk> 685 686 * doc/cppinternals.texi, doc/install.texi, doc/invoke.texi, 687 doc/md.texi, doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi: 688 Use terminology "testsuite" and "enumerated". 689 6902004-07-06 Eric Christopher <echristo@redhat.com> 691 692 PR rtl-optimization/14700 693 Backport from mainline: 694 2004-06-30 Zack Weinberg <zack@codesourcery.com> 695 * combine.c (distribute_notes): Don't look at global_regs for 696 pseudos. 697 698 2004-06-24 Eric Christopher <echristo@redhat.com> 699 * combine.c (distribute_notes): Don't delete sets to 700 global register variables. 701 7022004-07-04 Gerald Pfeifer <gerald@pfeifer.com> 703 704 * doc/contrib.texi (Contributors): Adjust link for GNU Classpath. 705 7062004-07-01 Release Manager 707 708 * GCC 3.4.1 released. 709 7102004-06-28 Neil Booth <neil@duron.akihabara.co.uk> 711 712 PR preprocessor/16192 713 PR preprocessor/15913 714 PR preprocessor/15572 715 * cppexp.c (_cpp_parse_expr): Handle remaining cases where an 716 expression is missing. 717 * cppinit.c (post_options): Traditional cpp doesn't do // comments. 718 * doc/cpp.texi: Don't document what we do for ill-formed expressions. 719 * doc/cppopts.texi: Clarify processing of command-line defines. 720 7212004-06-28 Richard Sandiford <rsandifo@redhat.com> 722 723 PR target/16176 724 * config/mips/mips.c (mips_expand_unaligned_load): Use a temporary 725 register for the destination of the lwl or ldl. 726 7272004-06-25 Philip Blundell <philb@gnu.org> 728 729 PR wrong-code/15089 730 * loop.c (scan_loop): Do not move user-specified register 731 assignments. 732 7332004-06-25 Mark Mitchell <mark@codesourcery.com> 734 735 PR wrong-code/16129 736 * alias.c (get_alias_set): Adjust setting of 737 DECL_POINTER_ALIAS_SET for pointers to aggregates. 738 7392004-06-25 Richard Sandiford <rsandifo@redhat.com> 740 741 PR target/16144 742 * config/mips/mips.md (divsf, divdf): Don't FAIL if the first operand 743 is 1.0; force it into a register instead. 744 7452004-06-24 Alan Modra <amodra@bigpond.net.au> 746 747 * calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and 748 pass raw n_named_args to it. 749 7502004-06-22 Richard Henderson <rth@redhat.com> 751 752 PR middle-end/16026 753 * function.c (assign_parms): Don't abort for overaligned PARALLEL. 754 7552004-06-21 Kelley Cook <kcook@gcc.gnu.org> 756 757 PR target/15551 758 * config/i386/i386.md: Change UNSPEC_STACK_PROBE to UNSPECV_STACK_PROBE. 759 (allocate_stack_worker): Make unspec_volatile. 760 (allocate_stack_worker_rex64): Likewise. 761 (allocate_stack_worker_postreload): Likewise. 762 (allocate_stack_worker_rex64_postreload): Likewise. 763 7642004-06-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 765 766 PR rtl-optimization/14782 767 * pa.c (emit_move_sequence): Use SFmode for 4-byte modes when doing 768 the address checks for secondary reloads for loads from and stores 769 to floating-point registers. 770 * pa.h (EXTRA_CONSTRAINT, case T): Use SFmode for 4-byte modes 771 in the address check. Move work around for ELF32 targets to 772 GO_IF_LEGITIMATE_ADDRESS. 773 (GO_IF_LEGITIMATE_ADDRESS): Require constant offsets to be 774 correctly aligned for DImode loads and stores. Don't allow long 775 SFmode displacements on ELF32. 776 7772004-06-21 Richard Henderson <rth@redhat.com> 778 779 PR rtl-opt/16114 780 * cse.c (merge_equiv_classes): Also rehash in response to 781 delete_reg_equiv changes. 782 (rehash_using_reg): Don't exclude REGs from rehashing. 783 7842004-06-21 Richard Sandiford <rsandifo@redhat.com> 785 786 PR rtl-optimization/15159 787 * tree.c (unsafe_for_reeval): Return 2 for TRY_CATCH_EXPRs. 788 7892004-06-19 Richard Henderson <rth@redhat.com> 790 791 PR target/15941 792 * function.c (assign_parms): If not padding upward or intentionally 793 forcing upward padding, take offset_rtx into account when determining 794 the alignment for stack_parm. 795 7962004-06-19 Richard Henderson <rth@redhat.com> 797 798 PR target/15550 799 * ifcvt.c (noce_try_move): Recognize all generated instructions. 800 8012004-06-19 Andrew Pinski <pinskia@physics.uc.edu> 802 803 PR target/10129 804 * config/darwin.c (darwin_encode_section_info): When the decl has 805 a DECL_INITIAL, it is only defined also when it is not a common. 806 8072004-06-17 Zack Weinberg <zack@codesourcery.com> 808 809 Bug 14610 810 * Makefile.in (min-insn-modes.o): Correct dependencies. 811 * real.c (encode_ieee_extended, decode_ieee_extended): Always 812 produce/consume 12-byte little-endian Intel format. 813 (encode_ieee_extended_128, decode_ieee_extended_128): Delete. 814 (encode_ieee_extended_motorola, decode_ieee_extended_motorola) 815 (encode_ieee_extended_intel_96, decode_ieee_extended_intel_96) 816 (encode_ieee_extended_intel_128, decode_ieee_extended_intel_128): 817 New functions which convert between 12-byte little-endian Intel 818 format and the desired format. 819 (ieee_extended_motorola_format, ieee_extended_intel_96_round_53_format) 820 (ieee_extended_intel_96_format, ieee_extended_intel_128_format): 821 Update. 822 8232004-06-16 James E Wilson <wilson@specifixinc.com> 824 825 PR c++/14808 826 * config/i386/cygwin.h (TARGET_IS_PE_COFF): Delete duplicate macro. 827 8282004-06-16 Bernardo Innocenti <bernie@develer.com> 829 830 Backport from mainline: 831 2004-06-16 Bernardo Innocenti <bernie@develer.com> 832 833 PR target/13292 834 * config/m68k/m68k.h (TARGET_SWITCHES): Don't remove MASK_68040_ONLY 835 on -msoft-float. 836 (TARGET_FLT_EVAL_METHOD): Don't advertise extended precision for 837 68040 and soft-float. 838 * config/m68k/m68k.md (truncdfsf2): Explicitly require TARGET_68881 839 in the TARGET_68040_ONLY case. 840 8412004-06-16 Vladimir Makarov <vmakarov@redhat.com> 842 843 PR target/15653 844 * config/ia64/ia64.c (ia64_dfa_new_cycle): Do not insert nops 845 after shifts before asm. 846 8472004-06-15 Chris Demetriou <cgd@broadcom.com> 848 849 * config/mips/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove 850 definition. 851 * config/mips/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove 852 #undef and #if 0'd definition. 853 8542004-06-15 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 855 856 * config/m32r/m32r.h (RETURN_ADDR_RTX): Define. 857 (INCOMING_RETURN_ADDR_RTX): Define. 858 * config/m32r/m32r-protos.h (m32r_return_addr): Added. 859 * config/m32r/m32r.c (m32r_exppand_prologue): Changed for 860 __builtin_return_address(0). 861 (m32r_return_addr): Added for __builtin_return_address(0). 862 (m32r_reload_lr): Ditto. 863 864 * longlong.h: Fix macros for m32r add_ssaaaa and sub_ddmmss. 865 8662004-06-15 Giovanni Bajo <giovannibajo@gcc.gnu.org> 867 868 * gccbug.in: Update optimization -> tree-optimization/rtl-optimization. 869 8702004-06-14 Eric Botcazou <ebotcazou@libertysurf.fr> 871 872 * real.c: Fix bit count in head comment. 873 8742004-06-14 Jakub Jelinek <jakub@redhat.com> 875 876 PR middle-end/15945 877 * simplify-rtx.c (simplify_binary_operation): Don't optimize out 878 Inf + -Inf, Inf - Inf, Inf / Inf and 0 * Inf if flag_trapping_math. 879 8802004-06-14 Jakub Jelinek <jakub@redhat.com> 881 882 PR target/15178 883 * config/i386/sol2.h (ASM_OUTPUT_DEF_FROM_DECLS): Define. 884 8852004-06-14 Alan Modra <amodra@bigpond.net.au> 886 887 * config/rs6000/rs6000.h (ASM_CPU_SPEC): Handle -mpowerpc64 and -mcpu 888 for power5 and rs64a. Correct condition for default. Correct power3, 889 620, 630, 7400, 7450, G4, 970 and G5 -mcpu entries. Add -many. 890 8912004-06-13 Alan Modra <amodra@bigpond.net.au> 892 893 Apply mainline 2004-01-27 Alan Modra <amodra@bigpond.net.au> 894 * config/rs6000/rs6000.h: Correct target_flags free bits comment. 895 (PREDICATE_CODES): Remove duplicate. 896 * config/rs6000/linux64.h (CPP_SYSV_SPEC): Don't define. 897 (SUBSUBTARGET_OVERRIDE_OPTIONS): Disallow 32 bit TARGET_PROFILE_KERNEL. 898 (MASK_PROFILE_KERNEL): Adjust define. 899 9002004-06-13 Hans-Peter Nilsson <hp@axis.com> 901 902 PR rtl-optimization/15296 903 * reorg.c (fill_simple_delay_slots): Use next_real_insn when 904 getting last consecutive label at a branch. 905 (relax_delay_slots): Similar, near top of loop. 906 9072004-06-12 Andreas Jaeger <aj@suse.de> 908 909 * libgcc-std.ver: Add __unorddf2 and __unordsf2 with version 3.3.4. 910 * libgcc-darwin.ver: Likewise. 911 9122004-06-11 Bernardo Innocenti <bernie@develer.com> 913 914 PR target/8309 915 PR target/13312 916 Backport from mainline: 917 918 2004-05-27 Peter Jakubek <peter@laseranimation.com> 919 920 * reload.c (find_reloads): Force reload for pseudo registers on big 921 endian machines. 922 9232004-06-11 J"orn Rennecke <joern.rennecke@superh.com> 924 925 * sh.c (dump_table): New argument start. Changed caller. 926 (fixup_mova): New function. 927 (find_barrier): Use it. 928 (sh_reorg): Likewise. Check for CODE_FOR_casesi_worker_2. 929 If the label a mova refers to is above the mova itself, change 930 the mova into a load. 931 * sh.md (*casesi_worker): Rename to: 932 (casesi_worker_1). 933 (casesi_worker_2): New insn. 934 9352004-06-11 Hartmut Penner <hpenner@de.ibm.com> 936 937 Backport from mainline: 938 939 * config/rs6000/rs6000.c (output_vec_const_move): 940 Find all cases of EASY_VECTOR_15_ADD_SELF. 941 (easy_vector_constant_add_self): Accept 942 all vector constant loadable by vsplt* and vadd*. 943 (easy_vector_same): Use easy_vector_splat_const. 944 (easy_vector_const): Use easy_vector_splat_const. 945 (easy_vector_splat_const): New function. 946 (gen_easy_vector_constant_add_self): New function. 947 948 * config/rs6000/rs6000-protos.c (gen_easy_vector_constant_add_self): 949 New prototype. 950 951 * config/rs6000/altivec.md (movv4si splitter): Change to 952 emit move insn with halfed vector constant. 953 (*movv8hi splitter): Likewise. 954 (*movv16qi splitter): Likewise. 955 9562004-06-10 Joseph S. Myers <jsm@polyomino.org.uk> 957 958 * doc/sourcebuild.texi (Front End): Add details of more 959 installation documentation required. 960 9612004-06-10 Vladimir Makarov <vmakarov@redhat.com> 962 963 PR target/15653 964 * haifa-sched.c (schedule_block): Finish cycle after issuing asm 965 insn. 966 9672004-06-10 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 968 969 PR web/15263 970 * doc/install.texi: Remove superfluous linebreak. 971 9722004-06-10 Bernardo Innocenti <bernie@develer.com> 973 974 PR target/13803 975 Backport from mainline: 976 977 2004-05-05 Peter Barada <peter@the-baradas.com> 978 979 * config/m68k/m68k.h(EXTRA_CONSTRAINT): Add 'U' for register offset 980 addressing. 981 * config/m68k/m68k.md: Add 'U,U' alternative to ColdFire variants of 982 movsi, movhi, movqi insn patterns. 983 9842004-06-10 Alan Modra <amodra@bigpond.net.au> 985 986 Apply from mainline: 987 2004-03-12 Jakub Jelinek <jakub@redhat.com> 988 * config/rs6000/rs6000-protos.h (rs6000_output_dwarf_dtprel): Add 989 prototype. 990 * config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): New. 991 * config/rs6000/rs6000.h (ASM_OUTPUT_DWARF_DTPREL): Define. 992 9932004-06-10 Jakub Jelinek <jakub@redhat.com> 994 995 * config/ia64/unwind-ia64.c (uw_frame_state_for): Don't assume a 996 leaf function without unwind info at RP 0. 997 9982004-06-10 Alan Modra <amodra@bigpond.net.au> 999 1000 PR target/15191 1001 2004-05-15 Alan Modra <amodra@bigpond.net.au> 1002 * config/rs6000/rs6000.c (rs6000_va_arg <ABI_V4>): Don't use 1003 UNITS_PER_WORD to calculate gpr size. Re-instate code to set reg 1004 count to 8 to handle n_reg > 2. 1005 2004-05-10 Alan Modra <amodra@bigpond.net.au> 1006 * config/rs6000/rs6000.c (function_arg_boundary): Always align 1007 AltiVec vectors. 1008 (function_arg_advance): Pass TARGET_32BIT -mabi=no-altivec AltiVec 1009 vectors by refererence. Align the same for TARGET_64BIT to a 16 1010 byte boundary. Remove useless code. Add function comment. 1011 (function_arg): Similarly. Move gpr rs6000_mixed_function_arg 1012 call to where it belongs. 1013 (function_arg_partial_nregs): Return true for all TARGET_32BIT 1014 -mabi=no-altivec AltiVec vectors. Fix debug output. 1015 (rs6000_va_arg): Adjust for AltiVec change. 1016 2004-05-10 Alan Modra <amodra@bigpond.net.au> 1017 * config/rs6000/rs6000.c (function_arg_boundary): Align for ABI_V4 1018 when size is 8 bytes. 1019 (function_arg_advance): Account for stack space used by AltiVec 1020 args when -mabi=altivec. Simplify alignment calculations. For 1021 ABI_V4, pass AltiVec vectors by reference when -mabi=no-altivec. 1022 (function_arg): Similarly. 1023 (function_arg_pass_by_reference): True for ABI_V4 AltiVec when 1024 not AltiVec ABI. 1025 (rs6000_va_arg): Correct fp arg test. Adjust for AltiVec change. 1026 Correct alignment, and align before testing reg count. Remove 1027 TREE_THIS_VOLATILE from reg. Don't emit unused labels. 1028 (rs6000_complex_function_value): Check TARGET_HARD_FLOAT and 1029 TARGET_FPRS here.. 1030 (rs6000_function_value): .. not here before call. 1031 2004-05-07 Alan Modra <amodra@bigpond.net.au> 1032 * config/rs6000/rs6000.h (STACK_BOUNDARY): Use 128 bit for either 1033 TARGET_ALTIVEC or TARGET_ALTIVEC_ABI. 1034 * config/rs6000/sysv4.h (ABI_STACK_BOUNDARY): Likewise. 1035 (STACK_BOUNDARY): Delete. 1036 10372004-06-10 Alan Modra <amodra@bigpond.net.au> 1038 1039 PR target/14960 1040 2004-04-24 Alan Modra <amodra@bigpond.net.au> 1041 * config/rs6000/rs6000.c (rs6000_stack_info): Rename total_raw_size 1042 to non_fixed_size, and leave out fixed_size from the sum. 1043 (generate_set_vrsave): Correct clobbers. 1044 (rs6000_emit_epilogue): Test TARGET_ALTIVEC with TARGET_ALTIVEC_SAVE. 1045 (rs6000_function_value): Test TARGET_ALTIVEC and TARGET_ALTIVEC_ABI. 1046 (rs6000_libcall_value): Likewise. 1047 * config/rs6000/rs6000.h (FUNCTION_VALUE_REGNO_P): Likewise. 1048 (FUNCTION_ARG_REGNO_P): Likewise. 1049 10502004-06-10 Alan Modra <amodra@bigpond.net.au> 1051 1052 PR target/14567 1053 2004-03-13 Alan Modra <amodra@bigpond.net.au> 1054 * config/rs6000/rs6000.h (UNITS_PER_ARG, RS6000_ARG_SIZE): Delete. 1055 (HARD_REGNO_MODE_OK): Disallow TFmode for fp31. 1056 * config/rs6000/rs6000.c (rs6000_arg_size): New function. 1057 Update all users of RS6000_ARG_SIZE. 1058 (function_arg_advance): Count fregno using mode size. 1059 (function_arg): Handle long double split over regs and memory. 1060 (function_arg_partial_nregs): Likewise. 1061 (rs6000_va_arg): Repackage complex args. 1062 2004-02-23 Fariborz Jahanian <fjahanian@apple.com> 1063 * config/rs6000/rs6000.c (function_arg): call to 1064 rs6000_mixed_function_arg for DFmode moved to allow 1065 normal DFmode incoming register assignment. 1066 10672004-06-09 Mark Mitchell <mark@codesourcery.com> 1068 1069 Revert: 1070 PR c++/15815 1071 2004-06-07 Mark Mitchell <mark@codesourcery.com> 1072 * doc/extend.texi: Deprecate #pragma interface and #pragma 1073 implementation. 1074 10752004-06-08 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 1076 1077 PR rtl-optimization/15761 1078 * cfgloopanal.c (count_strange_loop_iterations, 1079 count_loop_iterations): Use gen_int_mode instead 1080 of GEN_INT. 1081 10822004-06-08 Roger Sayle <roger@eyesopen.com> 1083 1084 PR c/14649 1085 * c-typeck.c (require_constant_value, require_constant_elements): 1086 Move declarations to the top of the file. 1087 (build_function_call): If we require a constant value, fold with 1088 fold_initializer. If the result is a constant, and the function 1089 wasn't called using __builtin_foo, issue a pedantic warning. 1090 (build_unary_op): If we require a constant value, fold tree with 1091 fold_initializer. 1092 (build_binary_op): Use require_constant_value to determine whether 1093 to call fold or fold_initializer. 1094 10952004-06-08 Richard Henderson <rth@redhat.com> 1096 1097 PR middle-end/15228 1098 * function.c (assign_parms): Always set_mem_align with the computed 1099 FUNCTION_ARG_BOUNDARY. Don't clear stack_parm if !STRICT_ALIGNMENT. 1100 11012004-06-08 Vladimir Makarov <vmakarov@redhat.com> 1102 1103 PR target/15598 1104 * config/ia64/ia64.c (bundling): Add missed TYPE_A. 1105 11062004-06-08 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 1107 1108 PR rtl-optimization/15717 1109 * config/i386/i386.c (legitimate_constant_p): Do not allow 1110 x - symbol_ref. 1111 11122004-06-07 James E Wilson <wilson@specifixinc.com> 1113 1114 PR target/15569 1115 * config/ia64/ia64.md (call_value_nogp): Add constraints for op0. 1116 (vall_value_gp): Likewise. 1117 11182004-06-07 Dan Kegel <dank@kegel.com> 1119 1120 PR c++/14808 1121 * config/i386/cygwin.h (TARGET_IS_PE_COFF): New. 1122 * config/i386/cygming.h (TARGET_IS_PE_COFF): New. 1123 11242004-06-07 Eric Botcazou <ebotcazou@libertysurf.fr> 1125 1126 PR target/15783 1127 * config/sparc/sparc.c (function_arg_union_value): Add 'mode' 1128 parameter. Enumerate the registers inside the PARALLEL. 1129 (function_arg): Adjust call to function_arg_union_value. 1130 (function_value): Likewise. 1131 11322004-06-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1133 1134 * pa.c (emit_move_sequence): Fix loading of non 14-bit CONST operands 1135 when generating PIC code. 1136 1137 * pa.md: Disable the peephole2 patterns that generate indexed 1138 floating-point stores when indexing is disabled. 1139 11402004-06-07 Joseph S. Myers <jsm@polyomino.org.uk> 1141 1142 PR c/14765 1143 * c-parse.in (compstmt_primary_start): Set last_expr_type to 1144 NULL_TREE. 1145 11462004-06-07 Mark Mitchell <mark@codesourcery.com> 1147 1148 PR c++/15815 1149 * doc/extend.texi: Deprecate #pragma interface and #pragma 1150 implementation. 1151 11522004-06-07 Richard Henderson <rth@redhat.com> 1153 1154 PR rtl-opt/15193 1155 * expmed.c (extract_bit_field): Fix vector_extract return. 1156 11572004-06-07 Mark Mitchell <mark@codesourcery.com> 1158 1159 PR c++/15337 1160 * c-common.c (c_sizeof_or_alignof_type): Use more detailed error 1161 message. 1162 11632004-06-06 Stephane Carrez <stcarrez@nerim.fr> 1164 1165 PR target/14542 1166 * config/m68hc11/m68hc11.md (move peephole2): Emit a use note to avoid 1167 a live change of a register after peephole replacement. 1168 11692004-06-06 Stephane Carrez <stcarrez@nerim.fr> 1170 1171 PR target/14457 1172 * config/m68hc11/m68hc11.c (splitable_operand): New predicate. 1173 * config/m68hc11/m68hc11-protos.h (splitable_operand): Declare. 1174 * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register it. 1175 (inhibit_libc): Must define. 1176 * config/m68hc11/m68hc11.md ("movhi_const0"): Use splitable_operand. 1177 ("*andhi3_gen", "iorhi3", "*iorhi3_gen"): Likewise. 1178 ("xorhi3"): Likewise. 1179 11802004-06-05 David S. Miller <davem@nuts.davemloft.net> 1181 1182 * config/sparc/linux.h (TARGET_C99_FUNCTIONS): Set. 1183 * config/sparc/linux64.h (TARGET_C99_FUNCTIONS): Likewise. 1184 11852004-06-04 Eric Christopher <echristo@redhat.com> 1186 1187 Backport from mainline: 1188 2004-06-02 Eric Christopher <echristo@redhat.com> 1189 1190 * c-typeck.c (common_type): Don't lose type qualifiers 1191 when creating new variants. 1192 11932004-06-03 Bernardo Innocenti <bernie@develer.com> 1194 1195 PR target/15782 1196 Backport from mainline: 1197 1198 2004-06-01 Peter Barada <peter@the-baradas.com> 1199 Peter Jakubek <peter@laseranimation.com> 1200 1201 * config/m68k/m68k.c(m68k_output_mi_thunk): For ColdFire, use %d0 as 1202 a scratch to perform an add to memory. 1203 12042004-06-01 Paul Eggert <eggert@cs.ucla.edu> 1205 1206 PR target/15626 1207 * doc/install.texi (sparc-sun-solaris2*): Document messages issued 1208 by the Sun linker in conjunction with the Sun assembler. 1209 (sparc-sun-solaris2.7): Update revision info for Sun patch 106950. 1210 12112004-06-01 Nicola Pero <nicola@brainstorm.co.uk> 1212 1213 PR objc/7993 1214 * objc-act.c (is_private): Do not emit the 'instance variable %s 1215 is declared private' error. 1216 (is_public): Emit the error after calling is_private. 1217 (lookup_objc_ivar): If the instance variable is private, return 0 1218 - the instance variable is invisible here. 1219 12202004-06-01 Eric Botcazou <ebotcazou@libertysurf.fr> 1221 1222 * doc/invoke.texi (-static-libgcc): Explicitly mention 1223 non-GNU linkers. 1224 12252004-05-31 Kaz Kojima <kkojima@gcc.gnu.org> 1226 1227 PR target/13250 1228 Backport from mainline: 1229 1230 2004-05-28 Kaz Kojima <kkojima@gcc.gnu.org> 1231 * config/sh/sh.md (rotlsi3): Use emit_move_insn. 1232 12332004-05-31 H.J. Lu <hongjiu.lu@intel.com> 1234 1235 PR middle-end/15666 1236 * cgraph.c (cgraph_remove_node): Don't call htab_clear_slot if 1237 we can't find the slot. Abort if we can't find slot and the 1238 node isn't for a builtin function. 1239 12402004-05-31 Roger Sayle <roger@eyesopen.com> 1241 1242 PR middle-end/15069 1243 * fold-const.c (fold_single_bit_test): Only perform "(X & C) != 0" 1244 into "X < 0" (where C is the signbit) if X's type is a full mode. 1245 12462004-05-31 Joseph S. Myers <jsm@polyomino.org.uk> 1247 1248 PR c/15749 1249 * c-decl.c (grokdeclarator, finish_struct): Don't pedwarn for 1250 misuses of structures with flexible array members if 1251 in_system_header. 1252 12532004-05-31 Eric Botcazou <ebotcazou@libertysurf.fr> 1254 1255 PR target/15693 1256 * config/sparc/sparc.c (compare_operand): New predicate. 1257 * config/sparc/sparc.h (PREDICATE_CODES): Add it. 1258 * config/sparc/sparc.md (cmpsi expander): Use it. If the first 1259 operand is a ZERO_EXTRACT and the second operand is not zero, 1260 force the former to a register. 1261 (cmpdi expander): Likewise. 1262 12632004-05-31 Danny Smith <dannysmith@users.sourceforge.net> 1264 1265 * c-incpath.c (add_path): Canonicalize paths to use '/' if 1266 HAVE_DOS_BASED_FILESYSTEM. 1267 12682004-05-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1269 1270 PR bootstrap/14671 1271 * alias.c (init_alias_analysis): Allocate alias_invariant array with 1272 ggc_calloc instead of xrealloc. 1273 (end_alias_analysis): Don't free alias_invariant. 1274 12752004-05-28 DJ Delorie <dj@redhat.com> 1276 1277 * stor-layout.c (place_field): Revert erroneous commit. 1278 12792004-05-28 Nick Clifton <nickc@redhat.com> 1280 1281 Bug 14093 1282 * config/sh/sh-protos.h (sh_promote_prototypes): Declare. 1283 * config/sh/sh.c (sh_promote_prototypes): Remove declaration. 1284 Delete static from definition. 1285 * config/sh/sh.h (FUNCTION_VALUE): Add sh_promote_prototypes call. 1286 12872004-05-27 Kaz Kojima <kkojima@gcc.gnu.org> 1288 1289 Backport from mainline: 1290 1291 * config/sh/t-linux (SHLIB_MAPFILES): Use sh specific 1292 libgcc-std.ver. 1293 * config/sh/libgcc-std.ver: New file. 1294 12952004-05-27 Olivier Hainque <hainque@act-europe.fr> 1296 1297 * expr.c (store_constructor): Restore sanity check on 1298 the size of the type before clearing. 1299 13002004-05-27 Alan Modra <amodra@bigpond.net.au> 1301 1302 PR target/14478 1303 * config/rs6000/rs6000.c (reg_or_neg_short_operand): Don't allow zero. 1304 13052004-05-26 Aldy Hernandez <aldyh@redhat.com> 1306 1307 PR/14924 1308 * config/rs6000/rs6000.c (spe_expand_stv_builtin): New. 1309 13102004-05-23 Joseph S. Myers <jsm@polyomino.org.uk> 1311 1312 * doc/gcc.texi, doc/gccint.texi, doc/include/gcc-common.texi: 1313 Update based on printed manual. Enable setting of offsets for 1314 FSFPRINT and move it to gcc-common.texi. 1315 * doc/gcc.texi: Update FSF printing details. 1316 * doc/gccint.texi: Remove FSF printing details. 1317 13182004-05-21 Jakub Jelinek <jakub@redhat.com> 1319 1320 * config/sparc/linux64.h (OPTION_DEFAULT_SPECS): If SPARC_BI_ARCH, 1321 override sparc.h definition. 1322 13232004-05-20 Jakub Jelinek <jakub@redhat.com> 1324 1325 * config/sparc/linux64.h (TARGET_DEFAULT): Make 64-bit by default 1326 also for TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3. 1327 13282004-05-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1329 1330 PR target/15202 1331 * pa.md (movdi, movsi, movhi, movqi): Support move from shift amount 1332 register to general register for DI, SI, HI and QI modes. Remove 1333 move to shift amount register in DF mode. 1334 13352004-05-18 Ulrich Weigand <uweigand@de.ibm.com> 1336 1337 PR middle-end/15054 1338 * expr.c (expand_expr_real): Do not call preserve_temp_slots 1339 on a TARGET_EXPR temp. 1340 * function.c (assign_stack_temp_for_type): Set 'keep' flag for 1341 TARGET_EXPR temp slots. 1342 13432004-05-18 Kaz Kojima <kkojima@gcc.gnu.org> 1344 1345 PR optimization/15100 1346 Backport from mainline: 1347 1348 2004-05-11 Kaz Kojima <kkojima@gcc.gnu.org> 1349 * combine.c (distribute_notes): Don't create a dangling 1350 REG_LIBCALL/REG_RETVAL note. 1351 13522004-05-17 H.J. Lu <hongjiu.lu@intel.com> 1353 1354 Backport from mainline 1355 1356 PR target/15301 1357 PR target/15302 1358 2004-05-17 Jan Hubicka <jh@suse.cz> 1359 1360 * i386.c (construct_container): Do not produce BLKmode registers. 1361 (classify_argument): Properly compute alignment of complex types. 1362 13632004-05-15 Joseph S. Myers <jsm@polyomino.org.uk> 1364 1365 * doc/extend.texi: Update WG14 URL. 1366 13672004-05-11 Aldy Hernandez <aldyh@redhat.com> 1368 1369 * config/rs6000/spe.md (spe_evneg): Rename to negv2si2. 1370 1371 * config/rs6000/rs6000.c (bdesc_1arg): Change spe_evneg to 1372 negv2si2. 1373 13742004-05-10 Kaz Kojima <kkojima@gcc.gnu.org> 1375 1376 PR target/15130 1377 Backport from mainline: 1378 1379 * config/sh/sh-protos.h (sh_expand_epilogue): Change prototype. 1380 * config/sh/sh.c (output_stack_adjust): Take the sibcall epilogue 1381 into account. Compute the correct number of general registers 1382 for the return value. Generate a special push/pop sequence when 1383 failing to get a temporary register for non SHmedia epilogue. 1384 (sh_expand_epilogue): Add an argument to show whether it's for 1385 sibcall or not. Set the 3rd argument of output_stack_adjust to 1386 -1 if needed. 1387 (sh_need_epilogue): Call sh_expand_epilogue with 0. 1388 * config/sh/sh.md (sibcall_epilogue): Call sh_expand_epilogue 1389 with 1. 1390 (epilogue): Call sh_expand_epilogue with 0. 1391 13922004-05-09 Aldy Hernandez <aldyh@redhat.com> 1393 1394 * config/rs6000/spe.md ("tstsflt_gpr"): Fix typo in unspec. 1395 13962004-05-08 Eric Botcazou <ebotcazou@libertysurf.fr> 1397 1398 * doc/install.texi (sparc-sun-solaris2*): Document bootstrap 1399 problems with earlier versions of the GNU compiler. 1400 14012004-05-07 Eric Botcazou <ebotcazou@libertysurf.fr> 1402 1403 PR c++/14962 1404 * c-pragma.c (handle_pragma_redefine_extname): Only change 1405 the assembler name of FUNCTION_DECLs and VAR_DECLs. 1406 14072004-05-07 Loren James Rittle <ljrittle@acm.org> 1408 1409 * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Proper redefinition. 1410 * config/arm/freebsd.h: Likewise. 1411 * config/ia64/freebsd.h: Likewise. 1412 * config/sparc/freebsd.h: Likewise. 1413 14142004-05-06 Richard Henderson <rth@redhat.com> 1415 1416 * stmt.c (parse_output_constraint): Don't warn for read-write 1417 memory operand. 1418 14192004-05-06 Jan Hubicka <jh@suse.cz> 1420 1421 PR c/15004 1422 * function.c (do_warn_unused_parameter): Break out form ... 1423 (expand_function_end): ... here; warn only when not using cgraphunit. 1424 * function.h (do_warn_unused_parameter): Declare. 1425 * cgraphunit.c: Include function.h. 1426 (cgraph_finalize_function): Do unused parameter warning. 1427 * Makefile.in (cgraphunit.o): Depend on function.h 1428 14292004-05-05 H.J. Lu <hongjiu.lu@intel.com> 1430 1431 PR target/15290 1432 * config/i386/i386.c (ix86_split_to_parts): Use real_to_target 1433 instead of REAL_VALUE_TO_TARGET_LONG_DOUBLE. 1434 14352004-05-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1436 1437 * fixinc/inclhack.def (svr4_profil): Don't apply on IRIX 5/6. 1438 * fixinc/fixincl.x: Regenerate. 1439 14402004-05-02 Josef Zlomek <zlomekj@suse.cz> 1441 1442 * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Print the debug 1443 message before redirecting the edge. 1444 14452004-05-02 Eric Botcazou <ebotcazou@libertysurf.fr> 1446 1447 PR optimization/15112 1448 * reload1.c (reload): Don't record unchanging memory locations. 1449 14502004-04-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1451 1452 PR other/1963 1453 * config/alpha/osf.h (SWITCHES_NEED_SPACES): Define. 1454 14552004-04-30 David Edelsohn <edelsohn@gnu.org> 1456 1457 Backport from mainline: 1458 1459 2004-04-19 David Edelsohn <edelsohn@gnu.org> 1460 1461 * doc/install.texi (*-ibm-aix*): Add AIX 5.1 assembler and archiver 1462 fix information. 1463 1464 2004-04-17 Alan Modra <amodra@bigpond.net.au> 1465 1466 PR target/14715 1467 * config/rs6000/rs6000.c (rs6000_stack_info): Make parm_size agree 1468 with STARTING_FRAME_OFFSET. 1469 1470 2004-04-07 David Edelsohn <edelsohn@gnu.org> 1471 1472 * config/rs6000/rs6000.c (processor_target_table): Add MASK_MFCRF 1473 to power4 and power5 entries. 1474 1475 2004-04-05 David Edelsohn 1476 1477 * config/rs6000/rs6000.c (VTABLE_NAME_P): Add _ZTI to special 1478 symbol handling. 1479 1480 2004-03-30 Hartmut Penner <hpenner@de.ibm.com> 1481 1482 PR 11591 1483 * config/rs6000/rs6000.c (rs6000_legitimate_address): 1484 Allow any offset to argument pointer in no-strict case. 1485 1486 2004-03-25 David Edelsohn <edelsohn@gnu.org> 1487 1488 * config/rs6000/rs6000.c (rs6000_always_hint): New variable. 1489 (rs6000_sched_groups): New variable. 1490 (processor_target_table): Add power5. 1491 (rs6000_override_options): Set rs6000_sched_insert_nops, 1492 rs6000_sched_costly_dep and rs6000_sched_restricted_insns_priority 1493 from rs6000_sched_groups. 1494 (output_cbranch): Use rs6000_always_hint. 1495 (rs6000_variable_issue): Use rs6000_sched_groups. 1496 (rs6000_adjust_cost): Add CPU_POWER5. 1497 (is_microcoded_insn): Use rs6000_sched_groups. 1498 (is_dispatch_slot_restricted): Use rs6000_sched_groups. 1499 Return 2 for POWER5 cracked instructions. 1500 (is_cracked_insn): Use rs6000_sched_groups. 1501 (is_branch_slot_insn): Use rs6000_sched_groups. 1502 (rs6000_issue_rate): Add CPU_POWER5. 1503 (rs6000_sched_finish): Use rs6000_sched_groups. 1504 (rs6000_rtx_costs): Add PROCESSOR_POWER5. 1505 * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER5. 1506 (DEFAULT_SCHED_COSTLY_DEP): Delete. 1507 (DEFAULT_RESTRICTED_INSNS_PRIORITY): Delete. 1508 (DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Delete. 1509 * config/rs6000/rs6000.md (define_attr "cpu"): Add power5. 1510 * config/rs6000/power5.md: New file. 1511 * doc/invoke.texi: Add power5 option. 1512 1513 2004-03-17 Fariborz Jahanian <fjahanian@apple.com> 1514 1515 * config/rs6000/rs6000.c (rs6000_stack_info): correct reg_size 1516 for mixed mode. 1517 (rs6000_emit_prologue): Ditto. 1518 (rs6000_emit_epilogue): Ditto. 1519 * config/rs6000/rs6000.h: Definition of DWARF_CIE_DATA_ALIGNMENT 1520 macro for mixed mode. 1521 1522 2004-03-04 David Edelsohn <edelsohn@gnu.org> 1523 GP <gp@qnx.com> 1524 1525 * config/rs6000/rs6000.c (output_function_profiler): Append @plt 1526 when compiling PIC. 1527 15282004-04-30 Paolo Bonzini <bonzini@gnu.org> 1529 1530 * config/altivec/altivec.h [__cplusplus] (vec_subsubs): Rename 1531 to vec_sububs. 1532 [__cplusplus] (vec_subsuhs): Rename to vec_subuhs, 1533 eliminating duplicates. 1534 15352004-04-29 Richard Sandiford <rsandifo@redhat.com> 1536 1537 PR target/15189 1538 * config/mips/mips.md (load_df_low): Use default length. 1539 (load_df_high, store_df_high): Likewise. 1540 15412004-04-29 Philip Blundell <philb@gnu.org> 1542 1543 * Merge from trunk: 1544 2004-04-20 Paul Brook <paul@codesourcery.com> 1545 1546 * config/arm/arm.c (arm_legitimate_address_p): Use rtx_equal_p. 1547 15482004-04-29 Aldy Hernandez <aldyh@redhat.com> 1549 1550 PR/12028 1551 * config/rs6000/rs6000.c (rs6000_emit_cmove): Disable comparisons 1552 of floats on the E500. 1553 (branch_positive_comparison_operator): Do not allow NE even on the 1554 E500. 1555 (ccr_bit): Remove E500 specific code. 1556 Remove miscompilation warning for e500. 1557 (print_operand): Add 'c' and 'D'. 1558 (rs6000_generate_compare): Rewrite to generate correct rtl. 1559 (rs6000_emit_sCOND): Handle E500. 1560 (output_cbranch): Adjust for changes in rs6000_generate_compare. 1561 (output_e500_flip_gt_bit): New. 1562 (rs6000_override_options): Error when user wants altivec and e500 1563 instructions. 1564 1565 * config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): New constant. 1566 (move_from_CR_gt_bit): New. 1567 (cceq_ior_compare): Name previously unnamed pattern. Disable for 1568 E500. 1569 (cceq_rev_compare): Name previously unnamed pattern. Allow for 1570 E500. 1571 1572 * config/rs6000/spe.md (cmpsfeq_gpr): Rewrite as unspec. 1573 (tstsfeq_gpr): Same. 1574 (cmpsfgt_gpr): Same. 1575 (tstsfgt_gpr): Same. 1576 (cmpsflt_gpr): Same. 1577 (tstsflt_gpr): Same. 1578 (e500_cceq_ior_compare): New. 1579 (e500_flip_gt_bit): New. 1580 1581 * config/rs6000/rs6000-protos.h (output_e500_flip_gt_bit): 1582 Protoize. 1583 15842004-04-28 Ben Elliston <bje@au.ibm.com> 1585 1586 * doc/invoke.texi (Objective-C Dialect Options): Don't prefix 1587 options with "-" in the option index. 1588 (SPARC Options): Likewise. 1589 (M32R/D Options): Likewise. 1590 15912004-04-28 Joseph S. Myers <jsm@polyomino.org.uk> 1592 1593 * Makefile.in ($(DESTDIR)$(infodir)/%.info): Don't condition 1594 calling install-info on $(DESTDIR)$(infodir)/dir already being 1595 present. 1596 15972004-04-28 H.J. Lu <hongjiu.lu@intel.com> 1598 1599 PR target/15084 1600 * config/i386/i386.md (*movsi_insv_1_rex64): Changed to DImode 1601 and renamed to movdi_insv_1_rex64. 1602 (insv): Support SImode for 32bit and DImode for 64bit. 1603 16042004-04-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1605 1606 PR debug/14829 1607 * dwarf2out.c (reg_number): Rename to dbx_reg_number. Adjust all 1608 callers. 1609 (multiple_reg_loc_descriptor, reg_loc_descriptor): Use gcc register 1610 number for indexing hard_regno_nregs array. 1611 16122004-04-27 Bob Wilson <bob.wilson@acm.org> 1613 1614 * config/xtensa/xtensa.c (call_insn_operand): Check 1615 SYMBOL_REF_EXTERNAL_P in addition to SYMBOL_REF_LOCAL_P. 1616 * config/xtensa/xtensa.h (LEGITIMATE_PIC_OPERAND): Likewise. 1617 * config/xtensa/xtensa.md (call, call_value): Likewise. 1618 16192004-04-26 Zack Weinberg <zack@codesourcery.com> 1620 1621 * config/ia64/hpux.h: Predefine __STDCPP__ when compiling C++. 1622 * config/pa/pa-hpux10.h: Likewise. 1623 * config/pa/pa-hpux11.h: Likewise. 1624 16252004-04-23 Eric Botcazou <ebotcazou@libertysurf.fr> 1626 1627 PR optimization/13985 1628 * cfgloopmanip.c (fix_loop_placements): New prototype. 1629 Call fix_bb_placements on the preheader of loops that have 1630 been reparented. 1631 (remove_path): Adjust call to fix_loop_placements. 1632 16332004-04-23 Nick Clifton <nickc@redhat.com> 1634 1635 * Import this patch from mainline: 1636 2004-04-16 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 1637 1638 * config/m32r/m32r.h (BIG_ENDIAN_BIT): Deleted to fix endian 1639 bug. 1640 (TARGET_LITTLE_ENDIAN, TARGET_BIG_ENDIAN, 1641 TARGET_DEFAULT): Changed. Ditto. 1642 (LITTLE_ENDIAN_BIT, TARGET_CPU_DEFAULT, 1643 TARGET_ENDIAN_DEFAULT): Added. Ditto. 1644 * config/m32r/little.h (TARGET_LITTLE_ENDIAN): Deleted. 1645 (TARGET_ENDIAN_DEFAULT): Added. 1646 16472004-04-22 Per Bothner <per@bothner.com> 1648 1649 * cppinit.c (cpp_read_main_file): Return NULL rather than false. 1650 Fixes PR preprocessor/15067. 1651 16522004-04-22 Ulrich Weigand <uweigand@de.ibm.com> 1653 1654 * function.c (thread_prologue_and_epilogue): Move 1655 NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes 1656 before the epilogue. 1657 16582004-04-22 Ulrich Weigand <uweigand@de.ibm.com> 1659 1660 * dbxout.c (dbxout_symbol_location): Do not output references 1661 to optimized-out constant pool symbols. 1662 16632004-04-22 Ulrich Weigand <uweigand@de.ibm.com> 1664 1665 * expr.c (store_constructor): Use gen_int_mode to correctly 1666 sign-extend CONST_INT value. 1667 16682004-04-22 Ulrich Weigand <uweigand@de.ibm.com> 1669 1670 * combine.c (if_then_else_cond): Check for NULL return value of 1671 simplify_gen_subreg. 1672 16732004-04-22 Ulrich Weigand <uweigand@de.ibm.com> 1674 1675 * reload1.c (emit_reload_insns): Set reg_has_output_reload to one 1676 after setting reg_last_reload_reg for optional output reloads. 1677 16782004-04-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1679 1680 * pa64-regs.h (DBX_REGISTER_NUMBER): Simplify and correct mapping of 1681 SAR register. Fix comment. 1682 (ADDITIONAL_REGISTER_NAMES): Correct register number of SAR register 1683 (%cr11). 1684 16852004-04-21 Kaz Kojima <kkojima@gcc.gnu.org> 1686 1687 Backport from mainline: 1688 1689 2004-04-05 Kaz Kojima <kkojima@gcc.gnu.org> 1690 * config/sh/sh.c (prepare_move_operands): Use emit_call_insn 1691 when the TLS address is generated by a function call. 1692 * config/sh/sh.md (tls_global_dynamic): Use a call expression. 1693 (tls_local_dynamic): Likewise. 1694 16952004-04-21 H.J. Lu <hongjiu.lu@intel.com> 1696 1697 PR target/14813 1698 Backport from mainline: 1699 1700 * config/ia64/crtend.asm: Move pointer to __do_global_ctors_aux 1701 in .init_array section to ... 1702 * config/ia64/crtbegin.asm: Here. 1703 1704 * config/ia64/crtend.asm: Mark __do_global_ctors_aux global 1705 and hidden if HAVE_INITFINI_ARRAY is defined. 1706 17072004-04-21 Richard Henderson <rth@redhat.com> 1708 1709 PR bootstrap/14671 1710 * alias.c (alias_invariant, alias_invariant_size): Mark GTY. 1711 (reg_known_value, reg_known_value_size): Likewise; make static. 1712 (reg_known_equiv_p): Make static. 1713 (clear_reg_alias_info): Update for new indexing. 1714 (get_reg_known_value, set_reg_known_value): New. 1715 (get_reg_known_equiv_p, set_reg_known_equiv_p): New. 1716 (canon_rtx): Use them. 1717 (init_alias_analysis): Likewise. Allocate reg_known_value with gc. 1718 Don't play queer offsetting games with reg_known_value and 1719 reg_known_equiv_p. 1720 (end_alias_analysis): Don't free reg_known_value. 1721 * rtl.h (get_reg_known_value, get_reg_known_equiv_p): Declare. 1722 * sched-deps.c (reg_known_equiv_p, reg_known_value): Remove. 1723 (deps_may_trap_p, sched_analyze_1, sched_analyze_2): Use the new 1724 functions instead. 1725 17262004-04-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1727 1728 * pa64-hpux.h (LIB_SPEC): Fix library specification used with GNU ld. 1729 17302004-04-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1731 1732 * doc/install.texi (Specific, mips-sgi-irix5): Fix IRIX 5.3 IDO 1733 download URL. 1734 17352004-04-21 H.J. Lu <hongjiu.lu@intel.com> 1736 1737 PR target/14857 1738 Backport from mainline: 1739 1740 * config/ia64/ia64.c (ia64_encode_section_info): Don't prod 1741 global register variables. 1742 17432004-04-21 H.J. Lu <hongjiu.lu@intel.com> 1744 1745 * PR target/14723 1746 Backport from mainline: 1747 2004-02-14 Jan Hubicka <jh@suse.cz> 1748 1749 * config.gcc: Add support for nocona/prescott/pentium-m/pentium3m 1750 /pentium4m. 1751 * i386.c (override_options): Add support for new CPUs. 1752 * i386.h (TARGET_CPU_DEFAULT_NAMES): New names. 1753 (TARGET_CPU_DEFAULT_pentium_m, TARGET_CPU_DEFAULT_pentium4e): New 1754 constants. 1755 * invoke.texi: Extend documentation of -mtune/-march for new CPUs. 1756 17572004-04-20 Mark Mitchell <mark@codesourcery.com> 1758 1759 * version.c (version_string): Mark as prerelease. 1760 * doc/include/gcc-common.texi: Bump version number. 1761 17622004-04-18 Release Manager 1763 1764 * GCC 3.4.0 released. 1765 17662004-04-18 Alan Modra <amodra@bigpond.net.au> 1767 1768 PR bootstrap/14992 1769 * configure.ac: Define HAVE_LD_AS_NEEDED only for linux. 1770 * configure: Regenerate. 1771 * gcc.c (init_gcc_specs): Revert earlier change. 1772 17732004-04-18 Mark Mitchell <mark@codesourcery.com> 1774 1775 PR other/14918 1776 * doc/invoke.texi (-fprofile-generate): Document requirement to 1777 use -fprofile-generate when linking. 1778 1779 PR bootstrap/14992 1780 * gcc.c (init_gcc_specs): Only honor HAVE_LD_AS_NEEDED on 1781 GNU/Linux. 1782 1783 * doc/extend.texi (Strong Using): Warn users against using this 1784 feature. 1785 17862004-04-17 Richard Sandiford <rsandifo@redhat.com> 1787 1788 * configure.ac (gcc_cv_ld_as_needed): Use AC_CACHE_CHECK. 1789 * configure: Regenerate. 1790 17912004-04-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1792 1793 * config.gcc (i[34567]86-*-solaris2*): Default to DWARF-2 1794 debugging on Solaris 7 and up. 1795 17962004-04-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1797 1798 * doc/install.texi (Specific, mips-sgi-irix5): Reflect working 1799 IRIX 5 port. 1800 Remove -save-temps workaround, handled automatically. 1801 Require GNU binutils 2.15 for debugging. 1802 Remove SGI make warnings since GNU make is now required. 1803 (Specific, mips-sgi-irix6): Some markup fixes. 1804 Describe MIPSpro C problems and workarounds. 1805 Mention working O32 ABI support. 1806 Recommend GNU as 2.15 for O32 with debugging. 1807 Remove description of fixed structure pass/return bug. 1808 18092004-04-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1810 1811 * aclocal.m4 (gcc_AC_PROG_GNAT): Check if ${CC} produces object 1812 file for Ada compilation. 1813 Fix gcc_cv_cc_supports_ada spelling. 1814 * configure: Regenerate. 1815 18162004-04-14 Zack Weinberg <zack@codesourcery.com> 1817 1818 PR 14936 1819 Backport from mainline: 1820 2004-03-12 Matt Austern <austern@apple.com> 1821 1822 * varasm.c (make_decl_one_only): Don't use DECL_COMMON if 1823 we're compiling for a SUPPORTS_ONE_ONLY target. 1824 18252004-04-09 Zack Weinberg <zack@codesourcery.com> 1826 1827 * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Look only at 1828 mode argument. 1829 * config/ia64/ia64.c (ia64_hpux_file_end): Check 1830 TREE_SYMBOL_REFERENCED on DECL_ASSEMBLER_NAME, not DECL_NAME. 1831 18322004-04-08 Mark Mitchell <mark@codesourcery.com> 1833 1834 * doc/invoke.texi (Precompiled Headers): Warn about known 1835 problems. 1836 18372004-04-08 Joel Sherrill <joel@oarcorp.com> 1838 1839 PR ada/14538 1840 * ada/5rosinte.adb: Remove fake mprotect() body. 1841 * ada/5rosinte.ads: Add SA_SIGINFO. Make pthread_key_t a type 1842 which can be set since Finalize_TCB in 7staprop.adb does not 1843 go through the Set_Specific interface. 1844 * ada/5rtpopsp.adb: Rewrite to use new interface. 1845 * ada/init.c: Reorder so the simple single OS conditional __rtems__ 1846 is tested before more complex ones which mix UNIX and embedded 1847 systems in the conditional. 1848 18492004-04-08 Joel Sherrill <joel@oarcorp.com> 1850 1851 PR ada/14665 1852 * ada/osint.adb (Find_Program_Name): Rework to properly handle 1853 filenames which end in .exe or have versioning suffixes like VMS. 1854 18552004-04-08 Joseph S. Myers <jsm@polyomino.org.uk> 1856 1857 * fixinc/inclhack.def (rpc_xdr_lvalue_cast_a, 1858 rpc_xdr_lvalue_cast_b): New fixes. 1859 * fixinc/fixincl.x: Regenerate. 1860 * fixinc/tests/base/rpc/xdr.h: Add new tests. 1861 18622004-04-06 Mark Mitchell <mark@codesourcery.com> 1863 1864 * config/darwin.h (LINK_COMMAND_SPEC): Change c++filt3 to c++filt. 1865 18662004-04-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1867 1868 * doc/install.texi: Update HP-UX 11 installation procedure. 1869 18702004-04-05 Jakub Jelinek <jakuB@redhat.com> 1871 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1872 1873 PR optimization/13424 (hppa), bootstrap/14462, c/14828 1874 * pa.md: Use replace_equiv_address to retain the attributes of the 1875 memory operands used in the split and peephole2 patterns for optimizing 1876 the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns. 1877 18782004-04-05 Alexandre Oliva <aoliva@redhat.com> 1879 1880 * cppinit.c (cpp_read_main_file): Return file name obtained by 1881 read_original_filename. Missed in 2004-02-04's check in to 3.4 1882 branch by Per Bothner. 1883 18842004-04-05 Eric Botcazou <ebotcazou@libertysurf.fr> 1885 1886 * config/sparc/sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Set 1887 to DWARF2_DEBUG unconditionally. 1888 (ASM_DEBUG_SPEC): Set the default to --gdwarf2 unconditionally. 1889 18902004-04-04 Mark Mitchell <mark@codesourcery.com> 1891 1892 PR c++/14804 1893 * varasm.c (initializer_constant_valid_p): Allow NOP_EXPRs to 1894 RECORD_TYPEs. 1895 18962004-04-02 Jakub Jelinek <jakub@redhat.com> 1897 Eric Botcazou <ebotcazou@libertysurf.fr> 1898 1899 PR optimization/13424, optimization/12419 1900 * explow.c (maybe_set_unchanging): Revert 2003-04-07 patch. 1901 Set RTX_UNCHANGING_P even for read-only DECL_EXTERNAL decls. 1902 * expr.c (store_constructor): When clearing aggregate because 1903 of an incomplete or mostly zero constructor, do the clearing 1904 without /u flag and then emit a blockage. 1905 19062004-04-01 Alan Modra <amodra@bigpond.net.au> 1907 Jakub Jelinek <jakub@redhat.com> 1908 1909 * gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with 1910 -lgcc --as-needed -lgcc_s --no-as-needed by default. 1911 * configure.ac (HAVE_LD_AS_NEEDED): Check for ld --as-needed. 1912 * configure: Rebuilt. 1913 * config.in: Rebuilt. 1914 * Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT). 1915 (stage2-start, stage3-start, stage4-start): Likewise. 1916 (stageprofile-start, stagefeedback-start): Likewise. 1917 19182004-04-01 Jakub Jelinek <jakub@redhat.com> 1919 1920 * config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0. 1921 * config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1. 1922 * config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1. 1923 * config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1. 1924 (SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS. 1925 * config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs 1926 with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS. 1927 * config.gcc (sparc-*-linux*): Revert 2004-03-23 change. 1928 * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise. 1929 * config/sparc/t-linux: Removed. 1930 19312004-04-01 Jakub Jelinek <jakub@redhat.com> 1932 1933 PR c++/14755 1934 * fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in 1935 "bitfld++ == const" to "++bitfld == const + incr" transformations. 1936 19372004-03-30 Aldy Hernandez <aldyh@redhat.com> 1938 1939 PR 14219 1940 * c-typeck.c (build_binary_op): Do not allow comparisons of 1941 vectors. 1942 19432004-03-26 Ian Lance Taylor <ian@wasabisystems.com> 1944 1945 PR target/14206 1946 * doc/install.texi (Specific): Document that exec-shield-randomize 1947 interferes with precompiled headers. 1948 19492004-03-26 Richard Henderson <rth@redhat.com> 1950 1951 PR 11527 1952 * c-typeck.c (pop_init_level): Emit pending init elements earlier 1953 rather than later. 1954 19552004-03-25 Jakub Jelinek <jakub@redhat.com> 1956 1957 * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file. 1958 * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set. 1959 * config/sparc/t-linux: New file. 1960 19612004-03-25 Jan Hubicka <jh@suse.cz> 1962 1963 PR debug/13974 1964 * cfgrtl.c (try_redirect_by_replacing_jump, 1965 force_nonfallthru_and_redirect, commit_one_edge_insertion, 1966 cfg_layout_merge_blocks): Do not attach any line number information 1967 to newly inserted instructions. 1968 * emit-rtl.c (emit_insn*_before, emit_insn*_after): Rename to 1969 emit_insn_*_noloc. 1970 (emit_*insn_before, emit_insn*_after): New. 1971 (emit_*insn_before_setloc, emit_*insn_after_setloc): Do not overwrite 1972 existing locators. 1973 * rtl.h (emit_*insn_before_noloc, emit_*insn_after_noloc): Declare. 1974 (emit_*insn_before_sameloc, emit_*insn_after_sameloc): Kill. 1975 19762004-03-24 Steven Bosscher <stevenb@suse.de> 1977 1978 PR pch/14137 1979 * c-pch.c (struct c_pch_validity): New flags_info field. 1980 (FLAG_UNIT_AT_A_TIME_SET): New definition. 1981 (pch_init): Write out the flags_info field to the PCH. Set the 1982 FLAG_UNIT_AT_A_TIME_SET bit of the field if flag_unit_at_a_time 1983 is set. 1984 (c_common_valid_pch): Make sure the flag settings used for compiling 1985 the PCH are the same as those used in the current compilation. 1986 19872004-03-24 Alexandre Oliva <aoliva@redhat.com> 1988 1989 PR preprocessor/14438 1990 * cpplib.c (do_pragma): Remove line_change call after pragma 1991 handler. 1992 19932004-03-23 Ian Lance Taylor <ian@wasabisystems.com> 1994 1995 * doc/extend.texi (ARM Built-in Functions): Replace with correct 1996 declarations. 1997 19982004-03-23 Kazu Hirata <kazu@cs.umass.edu> 1999 2000 PR optimization/14669 2001 * fold-const.c (fold): Only unwiden integer comparisons for equality 2002 and inequality operators, or when the signedness doesn't change. 2003 20042004-03-23 Jason Merrill <jason@redhat.com> 2005 2006 PR c++/14587 2007 * config/i386/winnt.c (associated_type): Look for attributes on 2008 the TYPE_MAIN_VARIANT of *this. 2009 20102004-03-21 Mark Mitchell <mark@codesourcery.com> 2011 2012 PR c/13129 2013 * c-decl.c (warn_if_shadowing): Don't warn about a new declaration 2014 of a file-scope entity. 2015 20162004-03-22 Jakub Jelinek <jakub@redhat.com> 2017 2018 PR c/14069 2019 * c-decl.c (finish_struct): Change type of incorrect flexible array 2020 field into error_mark_node. 2021 20222004-03-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 2023 2024 PR target/14260 2025 * config/rtems.h: Add STD_LIB_SPEC and LIB_SPEC. 2026 20272004-03-22 Eric Botcazou <ebotcazou@libertysurf.fr> 2028 2029 PR middle-end/14470 2030 * expr.c (mark_queue): New function. 2031 (emit_insns_enqueued_after_mark): New function replacing 2032 emit_queue. Clear the body of emitted queued insns. 2033 (emit_queue): Call emit_insns_enqueued_after_mark. 2034 (store_expr): Mark the increment queue on entry. Emit 2035 only the incrementations queued when expanding the source. 2036 20372004-03-22 Danny Smith <dannysmith@users.sourceforge.net> 2038 2039 * gcov-io.h: Update copyright year. 2040 20412004-03-22 Danny Smith <dannysmith@users.sourceforge.net> 2042 2043 PR target/14291 2044 * gcov-io.h (gcov_truncate): Define ftruncate as _chsize for 2045 __MINGW32__. 2046 20472004-03-21 Roger Sayle <roger@eyesopen.com> 2048 2049 PR target/13889 2050 * cse.c (fold_rtx): Avoid substituting constants into unary 2051 conversion operations. 2052 20532004-03-21 Joseph S. Myers <jsm@polyomino.org.uk> 2054 2055 * frontends.texi: Add missing line. 2056 20572004-03-21 Zack Weinberg <zack@codesourcery.com> 2058 Chris Devers <cdevers@pobox.com> 2059 Joseph S. Myers <jsm@polyomino.org.uk> 2060 2061 * doc/frontends.texi: Rewrite. 2062 * doc/gcc.texi: Update last modification date. 2063 20642004-03-20 Ian Lance Taylor <ian@wasabisystems.com> 2065 2066 PR c/12373 2067 * c-typeck.c (tagged_types_tu_compatible_p): Don't use 2068 DECL_ORIGINAL_TYPE if there isn't one. 2069 20702004-03-20 Joseph S. Myers <jsm@polyomino.org.uk> 2071 2072 PR other/14630 2073 * doc/install.texi: Add info directory category and entry. 2074 20752004-03-20 Joseph S. Myers <jsm@polyomino.org.uk> 2076 2077 PR c/14635 2078 * builtins.def (nan, nanf, nanl, nans, nansf, nansl): Change to 2079 DEF_GCC_BUILTIN. 2080 20812004-03-18 Mark Mitchell <mark@codesourcery.com> 2082 2083 * c-common.c (pointer_int_sum): Do not complain about using 2084 pointers to pointers-to-members. 2085 2086 * c-decl.c (grokdeclarator): Do not complain about redeclaring 2087 visible "static" identifiers "extern" in a local scope. 2088 * dwarf2out.c (loc_descriptor_from_tree): Handle pre- and 2089 post-increments/decrements. 2090 20912004-03-17 Jakub Jelinek <jakub@redhat.com> 2092 2093 * config/rs6000/t-linux64 (bispecs): Don't add -mlong-double-128 for 2094 32-bit builds when defaulting to 32-bit. 2095 20962004-03-17 Richard Sandiford <rsandifo@redhat.com> 2097 2098 PR target/14599 2099 * config/mips/mips.md (UNSPEC_GP): New constant. 2100 * config/mips/mips.c (CONST_GP_P): Expect the CONST to contain 2101 an UNSPEC instead of (reg $gp). 2102 (mips16_gp_pseudo_reg): Change accordingly. 2103 (print_operand): Print $gp directly when handling CONST_GP_P. 2104 21052004-03-16 Mark Mitchell <mark@codesourcery.com> 2106 2107 PR c++/14481 2108 * fold-const.c (fold): Set TREE_NO_UNUSED_WARNING on implicitly 2109 generated COMPOUND_EXPRs. 2110 21112004-03-16 Nathanael Nerode <neroden@gcc.gnu.org> 2112 2113 PR bootstrap/12974 2114 * Makefile.in: Pass $(INCLUDES) down to libgcc.mk explicitly. 2115 21162004-03-16 Richard Henderson <rth@redhat.com> 2117 2118 PR middle-end/14535 2119 * except.c (collect_one_action_chain): Create action record for 2120 cleanup outer of exception spec. 2121 21222004-03-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 2123 2124 PR target/14577 2125 * config.gcc: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff. 2126 21272004-03-15 Richard Henderson <rth@redhat.com> 2128 2129 PR target/14547 2130 * target.h (struct gcc_target): Move calls substructure before 2131 booleans. Add split_complex_arg. 2132 * function.c (assign_parms, split_complex_args): Use it. 2133 * calls.c (expand_call): Likewise. 2134 (split_complex_values): Likewise. Check for splittable types 2135 before allocating memory. 2136 (split_complex_types): Likewise. 2137 * system.h (SPLIT_COMPLEX_ARGS): Poison. 2138 * expr.h (SPLIT_COMPLEX_ARGS): Remove. 2139 * target-def.h (TARGET_SPLIT_COMPLEX_ARG): New. 2140 * config/alpha/alpha.c (alpha_split_complex_arg): New. 2141 (TARGET_SPLIT_COMPLEX_ARG): New. 2142 * config/alpha/alpha.h (SPLIT_COMPLEX_ARGS): Remove. 2143 * config/rs6000/rs6000.c (TARGET_SPLIT_COMPLEX_ARG): New. 2144 (rs6000_override_options): Zap it for non-AIX. 2145 (rs6000_function_value): Use targetm.calls.split_complex_arg. 2146 * config/rs6000/rs6000.h (SPLIT_COMPLEX_ARGS): Remove. 2147 * config/xtensa/xtensa.c (TARGET_SPLIT_COMPLEX_ARG): New. 2148 * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Remove. 2149 * doc/tm.texi (TARGET_SPLIT_COMPLEX_ARG): Modify from old 2150 SPLIT_COMPLEX_ARGS entry. 2151 21522004-03-15 Eric Botcazou <ebotcazou@act-europe.fr> 2153 2154 * config/sparc/sparc.h: Rework comments about the code model 2155 in 64-bit environment and the mode 'Pmode'. 2156 * doc/invoke.texi (SPARC options): Rework description of the 2157 different code models supported in 64-bit environment. 2158 21592004-03-14 Joseph S. Myers <jsm@polyomino.org.uk> 2160 2161 * doc/contrib.texi, doc/extend.texi, doc/gcov.texi, 2162 doc/install.texi, doc/invoke.texi, doc/makefile.texi, 2163 doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi: Capitalize 2164 "gcc", "g++" and "g77" or mark up with appropriate markup. Adjust 2165 wording and grammar. 2166 21672004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr> 2168 2169 PR c/14114 2170 * c-decl.c (merge_decls): Do not copy the C_DECL_INVISIBLE flag 2171 from the new decl to the old decl. 2172 (pushdecl): Use lookup_name to search for a previous decl with the 2173 same identifier. 2174 21752004-03-13 Dara Hazeghi <dhazeghi@yahoo.com> 2176 2177 * doc/install.texi: Note status of -fnew-ra. 2178 21792004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr> 2180 2181 PR middle-end/14470 2182 * expr.c (store_expr): Call emit_queue before generating the move 2183 from the temporary to the original target. Protect the temporary 2184 from emit_queue. 2185 21862004-03-13 Jakub Jelinek <jakub@redhat.com> 2187 2188 PR target/14533 2189 * config/s390/s390.c (legitimize_pic_address): Don't abort on UNSPEC 2190 other than UNSPEC_GOTOFF. 2191 21922004-03-13 Dean Ferreyra <dferreyra@igc.org> 2193 2194 PR target/14047 2195 * config/avr/avr.c (avr_progmem_p): Add "attributes" parameter. 2196 (avr_insert_attributes): Pass "attributes" to avr_progmem_p. 2197 * config/avr/avr-protos.h (avr_progmem_p): Change prototype. 2198 21992004-03-12 David Edelsohn <edelsohn@gnu.org> 2200 2201 * doc/install.texi (*-ibm-aix*): Document assembler and achiver 2202 fixes required by libstdc++ and update installation instructions 2203 for libstdc++.a. Document use of Bash to speed up configuration. 2204 22052004-03-12 Eric Botcazou <ebotcazou@libertysurf.fr> 2206 2207 * doc/tm.texi (registers) <Values in Registers>: Add 2208 entry for REGMODE_NATURAL_SIZE. 2209 22102004-03-11 Richard Henderson <rth@redhat.com> 2211 2212 PR target/14539 2213 * config/alpha/alpha.h (STACK_BOUNDARY): Set to 128. 2214 22152004-03-12 Alan Modra <amodra@bigpond.net.au> 2216 2217 * real.c (encode_ibm_extended): Do round low word. 2218 22192004-03-11 Richard Henderson <rth@redhat.com> 2220 2221 PR middle-end/14477 2222 * except.c (remove_unreachable_regions): Look thru CALL_PLACEHOLDER. 2223 22242004-03-11 Richard Sandiford <rsandifo@redhat.com> 2225 2226 PR target/14496 2227 * config/mips/mips.h (UNITS_PER_FPVALUE): Fix value for 2228 TARGET_SINGLE_FLOAT. 2229 22302004-03-11 Kelley Cook <kcook@gcc.gnu.org> 2231 2232 PR other/14536 2233 * configure: Regenerated with autoconf 2.57. 2234 * config.in: Regenerated with autoheader 2.57. 2235 22362004-03-11 Alan Modra <amodra@bigpond.net.au> 2237 2238 * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Don't 2239 bump retaddr here. 2240 22412004-03-11 Alan Modra <amodra@bigpond.net.au> 2242 2243 * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add darwin-ldouble.c. 2244 (SHLIB_MAPFILES): Add libgcc-ppc64.ver. 2245 (SHLIB_MKMAP_OPTS): Delete. 2246 (TARGET_LIBGCC2_CFLAGS): Add -specs. 2247 (bispecs): Add rule. 2248 * config/rs6000/libgcc-ppc64.ver: New file. 2249 * config/rs6000/ppc64-fp.c (__fixtfdi, __floatditf): New functions. 2250 (__floatdidf, __floatdisf): Optimize multiply. 2251 (__fixunstfdi): New function. 2252 * config/rs6000/rs6000.c (rs6000_complex_function_value): Allow for 2253 real and imag parts larger than one register. 2254 (function_arg): Correct type of reg used when fp arg split partially 2255 to stack. 2256 * config/rs6000/darwin-ldouble.c: Protect with #if !_SOFT_FLOAT 2257 and __MACH__ or __powerpc64__. 2258 22592004-03-10 Richard Henderson <rth@redhat.com> 2260 2261 PR c/14517 2262 * c-decl.c (grokdeclarator): Don't warn for duplicate qualifiers 2263 except for pedantic c90 mode. 2264 22652004-03-10 Andrew Haley <aph@redhat.com> 2266 2267 PR optimization/14381 2268 * function.c (expand_function_end): Emit a blockage insn before 2269 the epilogue when -fnon-call-exceptions is used. 2270 22712004-03-10 Joel Sherrill <joel@oarcorp.com> 2272 2273 PR target/14480 2274 * config.gcc (powerpc*-*-rtems*): Use rs6000/t-rtems. 2275 22762004-03-10 Roman Zippel <zippel@linux-m68k.org> 2277 2278 PR bootstrap/12371 2279 * config/m68k/m68k.h (FIXED_REGISTERS): Add arg pointer. 2280 (CALL_USED_REGISTERS): Likewise. 2281 (REG_CLASS_CONTENTS): Likewise. 2282 (REG_ALLOC_ORDER): New. 2283 (REGNO_REG_CLASS): Use regno_reg_class. 2284 * config/m68k/m68k.c: Add regno_reg_class array. 2285 22862004-03-10 Alan Modra <amodra@bigpond.net.au> 2287 Hartmut Penner <hpenner@de.ibm.com> 2288 2289 * config/rs6000/rs6000.c (invalid_gpr_mem): New function. 2290 (base_reg_operand): New function. 2291 (legitimate_offset_address_p): Don't test modes in an attempt to 2292 distinguish gpr vs fpr mem loads/stores. Don't prohibit offsets 2293 invalid for 64-bit gpr loads/stores here. 2294 (secondary_reload_class): Add "inp" parameter. Generate a reload 2295 for 64-bit gpr loads/stores. 2296 * config/rs6000/rs6000.h (SECONDARY_RELOAD_CLASS): Delete. 2297 (SECONDARY_INPUT_RELOAD_CLASS, SECONDARY_OUTPUT_RELOAD_CLASS): Define. 2298 (PREDICATE_CODES): Add invalid_gpr_mem and base_reg_operand. 2299 (DISPARAGE_RELOAD_CLASS): Define. 2300 * config/rs6000/rs6000-protos.h (secondary_reload_class): Update. 2301 * config/rs6000/rs6000.md (movdf_hardfloat64): Correct attrs. 2302 Add m->b alternative and split. 2303 (movdi_internal64): Replace r->m and m->r with r->Y and Y->r. 2304 Add m->b alternative and split. 2305 * reload.c (find_reloads): Invoke DISPARAGE_RELOAD_CLASS. 2306 23072004-03-10 Hans-Peter Nilsson <hp@axis.com> 2308 2309 PR other/14474 2310 * doc/md.texi (Pattern Ordering, Dependent Patterns) 2311 (Jump Patterns, Looping Patterns): Wrap in separate "@ifset 2312 INTERNALS". 2313 23142004-03-09 Zack Weinberg <zack@codesourcery.com> 2315 2316 * config/ia64/hpux.h (MULTILIB_DEFAULTS): Define. 2317 (LIBGCC_SPEC): Update to match. 2318 23192004-03-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 2320 2321 * config/h8300/t-rtems (h8300-*-rtems*): New. 2322 * config.gcc: Use config/h8300/t-rtems. 2323 23242004-03-09 Roger Sayle <roger@eyesopen.com> 2325 2326 PR middle-end/14289 2327 * c-typeck.c (c_mark_addressable): A register variable should 2328 be considered global if its not automatic, i.e. TREE_PUBLIC, 2329 TREE_STATIC or DECL_EXTERNAL. 2330 * function.c (put_var_into_stack): Call abort when placing a 2331 hard register into the stack, if x_parm_reg_stack_loc is NULL. 2332 23332004-03-08 David Edelsohn <edelsohn@gnu.org> 2334 2335 * collect2.c (main): Only export initfunc and finifunc if 2336 LD_INIT_SWITCH not defined. 2337 (scan_prog_file): Only export constructors and destructors if 2338 LD_INIT_SWITCH not defined. Only export symbols not found in 2339 shared objects. 2340 23412004-03-09 Alan Modra <amodra@bigpond.net.au> 2342 2343 * doc/tm.texi (INIT_CUMULATIVE_ARGS): Update doco. 2344 * calls.c (expand_call): Pass n_named_args to INIT_CUMULATIVE_ARGS. 2345 (emit_library_call_value_1): Likewise pass nargs. 2346 * expr.c (block_move_libcall_safe_for_call_parm): Pass 3 here. 2347 * function.c (assign_parms): Pass -1 to INIT_CUMULATIVE_ARGS. 2348 * config/rs6000/rs6000.c (init_cumulative_args): Use n_named_args 2349 parameter instead of scanning TYPE_ARGS_TYPES to count args. 2350 * config/rs6000/rs6000-protos.h (init_cumulative_args): Update 2351 prototype. 2352 * config/rs6000/rs6000.h (INIT_CUMULATIVE_ARGS): Pass extra arg. 2353 (INIT_CUMULATIVE_INCOMING_ARGS): Set extra arg to 1000. 2354 (INIT_CUMULATIVE_LIBCALL_ARGS): Set extra arg to 0. 2355 * config/sh/sh.c (sh_output_mi_thunk): Pass 1 as n_named_args to 2356 INIT_CUMULATIVE_ARGS. 2357 * config/alpha/alpha.h (INIT_CUMULATIVE_ARGS): Update. 2358 * config/alpha/unicosmk.h, config/alpha/vms.h, config/arc/arc.h, 2359 config/arm/arm.h, config/avr/avr.h, config/c4x/c4x.h, 2360 config/cris/cris.h, config/d30v/d30v.h, config/dsp16xx/dsp16xx.h, 2361 config/fr30/fr30.h, config/frv/frv.h, config/h8300/h8300.h, 2362 config/i370/i370.h, config/i386/i386.h, config/i860/i860.h, 2363 config/i960/i960.h, config/ia64/ia64.h, config/ip2k/ip2k.h, 2364 config/iq2000/iq2000.c, config/iq2000/iq2000.h, config/m32r/m32r.h, 2365 config/m68hc11/m68hc11.h, config/m68k/m68k.h, config/mcore/mcore.h, 2366 config/mips/mips.h, config/mmix/mmix.h, config/mn10300/mn10300.h, 2367 config/ns32k/ns32k.h, config/pa/pa.h, config/pdp11/pdp11.h, 2368 config/s390/s390.h, config/sh/sh.h, config/sparc/sparc.h, 2369 config/stormy16/stormy16.h, config/v850/v850.h, config/vax/vax.h, 2370 config/xtensa/xtensa.h: Likewise. 2371 23722004-03-09 Alan Modra <amodra@bigpond.net.au> 2373 2374 PR debug/11983 2375 * dwarf2out.c (enum dw_val_class): Rename dw_val_class_float to 2376 dw_val_class_vec. Replace use throughout file. 2377 (dw_float_const): Delete. 2378 (dw_vec_const): New. 2379 (dw_val_struct_union): Rename val_float to val_vec. Replace use 2380 throughout file. 2381 (add_AT_vec): Rename from add_AT_float. Add elt_size param. 2382 (same_dw_val_p): Adjust vec comparison. Use memcmp. 2383 (size_of_die): Adjust dw_val_class_vec sizing. 2384 (output_die): Output dw_val_class_vec. 2385 (insert_int, extract_int, insert_float): New functions. 2386 (add_const_value_attribute): Use insert_float for CONST_DOUBLE. 2387 Handle CONST_VECTOR. 2388 (add_location_or_const_value_attribute): Handle CONST_VECTOR. 2389 23902004-03-08 Joel Sherrill <joel@oarcorp.com> 2391 2392 PR target/14480 2393 * config/rs6000/t-rtems: Add missing file on branch. 2394 23952004-03-08 Roger Sayle <roger@eyesopen.com> 2396 2397 * fold-const.c (fold) <EQ_EXPR>: Rewrite optimization to transform 2398 "foo++ == const" into "++foo == const+incr". 2399 24002004-03-08 Ulrich Weigand <uweigand@de.ibm.com> 2401 2402 * config/s390/s390.md ("*extendqidi2_short_displ"): Add CC clobber. 2403 ("*extendqisi2_short_displ"): Likewise. 2404 24052004-03-08 Eric Botcazou <ebotcazou@act-europe.fr> 2406 2407 * expr.c (highest_pow2_factor_for_type): Rename into 2408 highest_pow2_factor_for_target. Use DECL_ALIGN instead of 2409 TYPE_ALIGN when the target is a COMPONENT_REF. 2410 (expand_assignment): Ajust call to highest_pow2_factor_for_type. 2411 24122004-03-08 Alan Modra <amodra@bigpond.net.au> 2413 2414 * config/rs6000/rs6000.c: Formatting fix. 2415 (legitimate_offset_address_p): Correct offset range check. 2416 2417 * config/rs6000/rs6000.c (rs6000_override_options): Don't override 2418 -msoft-float by -mcpu. Consolidate similar code for MASK_MULTIPLE 2419 and MASK_STRING. 2420 24212004-03-07 Aldy Hernandez <aldyh@redhat.com> 2422 2423 * config/rs6000/rs6000.md (ashrdi3): Do not call ashrdi3_no_power 2424 for little endian. 2425 ("ashrdi3_no_power"): Disable for little endian. 2426 (ashrdi3): Same. 2427 24282004-03-07 Aldy Hernandez <aldyh@redhat.com> 2429 2430 * config/rs6000/rs6000.c (rs6000_parse_abi_options): SPE and 2431 AltiVec abi cannot co-exist. 2432 2433 * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Same. 2434 24352004-03-07 Hans-Peter Nilsson <hp@axis.com> 2436 2437 PR target/14471 2438 * configure.ac (Target-specific assembler checks) <cris-*-*>: New 2439 case, checking for -no-mul-bug-abort option. 2440 * configure, config.in: Regenerate. 2441 * doc/invoke.texi (CRIS Options): Document -mmul-bug-workaround 2442 and -mno-mul-bug-workaround. 2443 * config/cris/cris.md ("smulsi3_highpart", "umulsi3_highpart") 2444 ("mulsidi3", "umulsidi3"): Prefix output template with "%!". 2445 ("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3"): 2446 Ditto. Make attribute "slottable" dependent on TARGET_MUL_BUG. 2447 * config/cris/mulsi3.asm (__Mul) [__CRIS_arch_version >= 10]: Make 2448 sure mulu.d is not last on cache-line. 2449 * config/cris/cris.h (ASM_SPEC): Translate -mno-mul-bug-workaround 2450 into -no-mul-bug-abort depending on HAVE_AS_MUL_BUG_ABORT_OPTION. 2451 (TARGET_MASK_MUL_BUG, TARGET_MUL_BUG): New macros. 2452 (TARGET_SWITCHES): New options -mmul-bug-workaround and 2453 -mno-mul-bug-workaround. 2454 (TARGET_DEFAULT): Include TARGET_MASK_MUL_BUG. 2455 (PRINT_OPERAND_PUNCT_VALID_P): Include '!'. 2456 * config/cris/cris.c (cris_operand_extend_operator): Clarify 2457 relation to MULT in head comment. 2458 (cris_op_str): Abort for MULT. 2459 (cris_print_operand) <case '!'>: New case. 2460 24612004-03-07 Stephane Carrez <stcarrez@nerim.fr> 2462 2463 * config/m68hc11/m68hc11.md ("*lshrsi3_const"): Disable for 68HC12. 2464 ("*lshrsi3"): Also accept an immediate for 68HC12. 2465 ("*ashrsi3_const"): Likewise. 2466 ("*ashrsi3"): Likewise. 2467 ("*ashlsi3_const"): Likewise. 2468 ("*ashlsi3"): Likewise. 2469 ("cmphi_1_hc12"): Compare two hard register by pushing them and 2470 comparing with a pop; don't use a split for that. 2471 ("cmphi split"): Disable compare split for 68HC12. 2472 2473 * config/m68hc11/m68hc11.c (m68hc11_notice_update_cc): Invalidate 2474 the status operands if they have side effects. 2475 24762004-03-07 Richard Sandiford <rsandifo@redhat.com> 2477 2478 * config/mips/mips.c (mips_in_small_data_p): Return false if 2479 TARGET_ABICALLS. 2480 24812004-03-06 Stephane Carrez <stcarrez@nerim.fr> 2482 2483 * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Use 2,-sp to push 2484 the stack register. 2485 (expand_prologue): Don't make an interrupt or a trap handler a far 2486 symbol. 2487 (m68hc11_initial_elimination_offset): Likewise. 2488 24892004-03-06 Richard Henderson <rth@redhat.com> 2490 2491 * config/alpha/alpha.c (alpha_in_small_data_p): False for functions. 2492 24932004-03-06 Richard Henderson <rth@redhat.com> 2494 2495 * config/alpha/alpha.h (MASK_LONG_DOUBLE_128): New. 2496 (TARGET_LONG_DOUBLE_128): New. 2497 (TARGET_SWITCHES): Add long-double-{128,64}. 2498 (TARGET_HAS_XFLOATING_LIBS): Default to TARGET_LONG_DOUBLE_128. 2499 (LONG_DOUBLE_TYPE_SIZE): Honor TARGET_LONG_DOUBLE_128. 2500 (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New. 2501 (WIDEST_HARDWARE_FP_SIZE): New. 2502 (TARGET_CPU_CPP_BUILTINS): Define __LONG_DOUBLE_128__. 2503 * config/alpha/alpha.c (override_options): Clear MASK_LONG_DOUBLE_128 2504 if TARGET_VAX_FLOAT. 2505 * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): Remove. 2506 (TARGET_DEFAULT): Set MASK_LONG_DOUBLE_128. 2507 25082004-03-06 Ulrich Weigand <uweigand@de.ibm.com> 2509 2510 * config/s390/s390.md ("load_multiple", "*load_multiple_di", 2511 "*load_multiple_si"): Allow only if reload_completed. 2512 ("store_multiple", "*store_multiple_di", "*store_multiple_si"): 2513 Likewise. 2514 25152004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr> 2516 2517 PR c/14465 2518 PR c/14114 2519 * c-decl (pushdecl): Revert previous change. 2520 25212004-03-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 2522 2523 * pa.md (icacheflush): Reorder operands to make match_scratch operand 2524 last. 2525 * pa.h (INITIALIZE_TRAMPOLINE): Remove unnecessary scratch argument 2526 from calls to gen_icacheflush. 2527 25282004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr> 2529 2530 PR target/14343 2531 * config/i386/i386.md (movv2di_internal): Conditionalize on 2532 TARGET_SSE, not TARGET_SSE2. 2533 25342004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr> 2535 2536 PR c/14114 2537 * c-decl (pushdecl): Do not record a previous, not-in-scope, 2538 external decl for restoration. 2539 25402004-03-05 Waldek Hebisch <hebisch@math.uni.wroc.pl> 2541 2542 PR middle-end/14203 2543 * function.c (uninitialized_vars_warning): Use DECL_RTL_SET_P 2544 instead of testing whether DECL_RTL is not NULL. 2545 25462004-03-05 Andreas Krebbel <krebbel1@de.ibm.com> 2547 2548 * rtl.h (mem_expr_equal_p): Function prototype added. 2549 * cfgcleanup.c (merge_memattrs): New function. 2550 (flow_find_cross_jump): Call merge_memattrs for matching insns. 2551 * emit-rtl.c (mem_expr_equal_p): New function. 2552 25532004-03-05 Bob Wilson <bob.wilson@acm.org> 2554 2555 * config/xtensa/xtensa.c (function_arg): Handle 16-byte aligned args. 2556 (xtensa_va_start): Initialize __va_stk to ($arg_ptr - 32). Adjust 2557 __va_ndx by 2 words when referencing an argument on the stack. 2558 (xtensa_va_arg): Handle 16-byte aligned args. Adjust __va_ndx by 2 2559 words when an arg on the stack is first seen. 2560 25612004-03-05 Nathan Sidwell <nathan@codesourcery.com> 2562 2563 PR driver/13577 2564 * gcc.c (cc1_options): Robustify -auxbase-strip from multiple -o 2565 options. 2566 25672004-03-04 Bob Wilson <bob.wilson@acm.org> 2568 2569 * config/xtensa/xtensa.c (xtensa_return_in_msb): New function. 2570 (TARGET_RETURN_IN_MSB): Define to xtensa_return_in_msb. 2571 25722004-03-04 Alan Modra <amodra@bigpond.net.au> 2573 2574 * real.c (encode_ibm_extended): Don't bother rounding low double. 2575 * c-cppbuiltin.c (builtin_define_float_constants): Tweak MAX 2576 when fmt->pnan < fmt->p. 2577 25782004-03-04 Alan Modra <amodra@bigpond.net.au> 2579 2580 PR target/14406 2581 * config/rs6000/rs6000.md (abstf2, abstf2+1): Delete define_insn. 2582 (abstf2, abstf2_internal): New define_expand. 2583 25842004-03-04 Eric Botcazou <ebotcazou@libertysurf.fr> 2585 2586 PR optimization/14235 2587 * expr.c (convert_move): Copy the source to a new pseudo 2588 when converting from a sub-word source to a larger-than-word 2589 register which conflicts with the source. 2590 25912004-03-03 Zack Weinberg <zack@codesourcery.com> 2592 2593 PR 13728 2594 * c-decl.c (diagnose_mismatched_decls): Issue an error for two 2595 parameters with the same name, unless one is a forward decl. 2596 Do not issue a redundant-redeclaration warning for forward 2597 decls of parameters. 2598 25992004-03-03 Stephane Carrez <stcarrez@nerim.fr> 2600 2601 * config/m68hc11/m68hc11.c (m68hc11_override_options): Disable -fweb 2602 because it breaks the 32-bit shift patterns that rely on a match_dup. 2603 (print_operand): Don't print a * before the base address. 2604 26052003-03-03 Richard Henderson <rth@redhat.com> 2606 2607 PR opt/13862 2608 * cselib.c (cselib_record_sets): Don't record multiple sets in 2609 asm insns. 2610 26112004-03-03 Nicolas Pitre <nico@cam.org> 2612 2613 * config/arm/ieee754-df.S (muldf3, divdf3): Fix denormalization of 2614 small negative values. 2615 26162004-03-02 Kazu Hirata <kazu@cs.umass.edu> 2617 2618 * config/h8300/lib1funcs.asm (___fixunssfsi): Change the 2619 threshold to 0x4f. 2620 2621 Revert: 2622 2004-02-27 Kazu Hirata <kazu@cs.umass.edu> 2623 * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300 2624 as well. 2625 * config/h8300/lib1funcs.asm (___fixunssfsi): Remove. 2626 * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm. 2627 26282004-03-02 Richard Henderson <rth@redhat.com> 2629 2630 PR middle-end/11767 2631 * coverage.c (coverage_counter_ref): Set MEM_NOTRAP_P. 2632 * optabs.c (prepare_cmp_insn): Force trapping memories to registers 2633 before the compare, if flag_non_call_exceptions. 2634 26352004-03-02 Richard Henderson <rth@redhat.com> 2636 2637 PR middle-end/14327 2638 * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before 2639 emitting the label, not after. 2640 26412004-03-02 David O'Brien <obrien@FreeBSD.org> 2642 2643 * config/freebsd-spec.h (FBSD_DYNAMIC_LINKER): Add. 2644 * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Define 2645 %(fbsd_dynamic_linker), 2646 (LINK_SPEC): Use %(fbsd_dynamic_linker), and sync style with 2647 config/i386/freebsd.h 2648 * config/arm/freebsd.h: Ditto. 2649 * config/i386/freebsd.h: Ditto. 2650 * config/i386/freebsd64.h: Ditto. 2651 * config/ia64/freebsd.h: Ditto. 2652 * config/rs6000/sysv4.h: Ditto. 2653 * config/sparc/freebsd.h: Ditto. 2654 26552004-03-02 Stephane Carrez <stcarrez@nerim.fr> 2656 2657 * config/m68hc11/m68hc11.c (m68hc11_addr_mode): New variable. 2658 (m68hc11_mov_addr_mode): Likewise. 2659 (m68hc11_override_options): Initialize them based on target. 2660 (register_indirect_p): Allow a MEM for indirect addressing modes and 2661 use flags to control what is allowed. 2662 (m68hc11_small_indexed_indirect_p): Use m68hc11_mov_addr_mode for 2663 supported addressing modes. 2664 (m68hc11_register_indirect_p): Use m68hc11_addr_mode. 2665 (go_if_legitimate_address_internal): Likewise. 2666 (m68hc11_indirect_p): Likewise and check the mode. 2667 (print_operand): Allow a (MEM (MEM)) and generate indirect addressing. 2668 26692004-03-02 Stephane Carrez <stcarrez@nerim.fr> 2670 2671 * config/m68hc11/m68hc11.md (move peephole2): New peepholes to optimize 2672 sequences of moves. 2673 (add peepholes): New peepholes to optimize sequences adding small 2674 constants. 2675 (bset peepholes): New peepholes to transform an OR in a bset form 2676 (bclr peepholes): Likewise for bclr form. 2677 (cmp peepholes): New peepholes to avoid register copies when comparing. 2678 26792004-03-02 Stephane Carrez <stcarrez@nerim.fr> 2680 2681 * config/m68hc11/m68hc11.md ("*pushdi_internal"): New insn and split 2682 to separate push from moves. 2683 ("*pushdf_internal"): Likewise. 2684 ("*pushsf_internal"): Likewise. 2685 ("*pushsi_internal"): Likewise. 2686 ("movdi_internal"): Use define_insn_and_split; non push operand. 2687 ("movdf_internal"): Likewise. 2688 ("movsf_internal"): Likewise. 2689 ("movsi_internal"): Likewise. 2690 ("*movhi_68hc12", "*addhi3_68hc12"): Fix and tune constraints 2691 ("*addhi3", "*subhi3", "*andhi3_mem", "*iorhi3_mem"): Likewise. 2692 ("*ashlsi3_const1", "*lshrsi3_const1"): Likewise. 2693 26942004-03-02 Stephane Carrez <stcarrez@nerim.fr> 2695 2696 * config/m68hc11/m68hc11.md ("tstqi_z_used"): Use define_insn_and_split. 2697 ("cmphi_z_used", "cmpqi_z_used"): Likewise. 2698 ("movstrictsi", "movstricthi", "movstrictqi"): Likewise. 2699 ("anddi3", "andsi3", "iordi3", "iorsi3"): Likewise. 2700 ("xordi3", "xorsi3", "*logicalsi3_zexthi"): Likewise. 2701 ("*logicalsi3_zextqi", "*logicalhi3_zexthi_ashift8"): Likewise. 2702 ("logicalhi3_zexthi", "*logicalsi3_silshr16"): Likewise. 2703 ("*logicalsi3_silshl16", "*logicalsi3_silshl16_zext"): Likewise. 2704 ("*ashldi3_const32", "*ashldi3_const1", "addsi_silshr16"): Likewise. 2705 ("addsi_andshr16", "*ashlsi3_const16_zexthi"): Likewise. 2706 ("*lshrdi3_const32", "*lshrdi_const1"): Likewise. 2707 27082004-03-02 Stephane Carrez <stcarrez@nerim.fr> 2709 2710 * config/m68hc11/m68hc11.md (SOFT_TMP_REGNUM): Define. 2711 (SOFT_XY_REGNUM): Define. 2712 (cmp split): Use the above instead of hard coded numbers. 2713 (8-bit op split): No need to check the mode; allow Q_REG. 2714 (ashift split): Adjust the first operand if it uses the SP and we 2715 are pushing the shifted value. 2716 (plus shift split): Fix when a source is in register D+X. 2717 ("doloop_end"): Pass dummy arguments to gen_rtx_NE. 2718 27192004-03-02 Stephane Carrez <stcarrez@nerim.fr> 2720 2721 * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix when 2722 comparing with Z register. 2723 27242004-03-02 Loren James Rittle <ljrittle@acm.org> 2725 2726 * gcc/doc/install.texi (*-*-freebsd*): Update target information. 2727 27282004-03-01 Mark Mitchell <mark@codesourcery.com> 2729 2730 PR bootstrap/14356 2731 * gcc.c (process_command): Remove const-qualification from argv. 2732 (main): Likewise. 2733 27342004-03-01 Mircea Namolaru <namolaru@il.ibm.com> 2735 2736 * cfgloop.h (get_var_set_from_bct, is_bct_cond): Declaration of 2737 new functions. 2738 * cfgloopanal.c: Include loop.h. 2739 (get_var_set_from_bct): New function. 2740 (is_bct_cond): New function. 2741 (blocks_single_set_registers): Handle branch and count jumps. 2742 (count_loop_iterations): Likewise. 2743 (simple_increment): Likewise 2744 * doloop.c (doloop_condition_get): Export. 2745 * loop-init.c (fixup_loop_exit_succesor): New function. 2746 (loop_optimizer_finalize): Handle loops ending with branch and 2747 count jumps. 2748 * loop-unroll.c: Include toplev.h 2749 (discard_increment): New function. 2750 (expand_bct): New function. 2751 (peel_loop_completely): Handle the removal of branch and count jumps. 2752 (unroll_loop_constant_iterations): Likewise. 2753 (unroll_loop_runtime_iterations): Likewise 2754 * loop.h (doloop_condition_get): Declare. 2755 27562004-02-29 Mark Mitchell <mark@codesourcery.com> 2757 2758 PR debug/14328 2759 * dwarf2out.c (gen_enumeration_type_die): Output all enumeration 2760 constants as signed values. 2761 27622004-02-29 Mark Mitchell <mark@codesourcery.com> 2763 2764 PR middle-end/13448 2765 * c-tree.h (readonly_warning): Rename to ... 2766 (readonly_error): ... this. 2767 * c-typeck.c (build_unary_op): Adjust accordingly. 2768 (readonly_warning): Rename to ... 2769 (readonly_error): ... this and issue errors, not warnings. 2770 (build_modify_expr): Call readonly_error, not readonly_warning. 2771 (c_expand_asm_operands): Likewise. 2772 * tree-inline.c (optimize_inline_calls): Do not inline functions 2773 after errors have occurred. 2774 27752004-02-29 Kazu Hirata <kazu@cs.umass.edu> 2776 2777 * doc/cppopts.texi: Fix a typo. 2778 27792004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 2780 2781 * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg. 2782 27832004-02-27 Ian Lance Taylor <ian@wasabisystems.com> 2784 2785 PR optimization/7871 2786 * flow.c (mark_set_1): Don't add LOG_LINKS for global registers 2787 from or to call insns. 2788 27892004-02-27 Eric Botcazou <ebotcazou@libertysurf.fr> 2790 2791 PR optimization/7871 2792 * flow.c (propagate_one_insn): Interpret calls as setting global 2793 registers, not merely clobbering them. 2794 27952004-02-27 Kazu Hirata <kazu@cs.umass.edu> 2796 2797 * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300 2798 as well. 2799 * config/h8300/lib1funcs.asm (___fixunssfsi): Remove. 2800 * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm. 2801 28022004-02-27 Daniel Jacobowitz <drow@mvista.com> 2803 2804 * config/arm/arm.c (arm_legitimate_address_p): Don't check the mode 2805 size for minipool references. 2806 28072004-02-27 Eric Botcazou <ebotcazou@act-europe.fr> 2808 Roger Sayle <roger@eyesopen.com> 2809 2810 * fold-const.c (fold): Revert 2004-02-25 change. Use the original 2811 operands to build a tree with swapped operands. 2812 * expr.c (expand_expr_real) <MAX_EXPR>: Consistently use the 2813 'unsignedp' predicate to specify the signedness. 2814 28152004-02-26 Aldy Hernandez <aldyh@redhat.com> 2816 2817 * config/rs6000/rs6000.md: Add fixuns_truncsfsi2 and 2818 fix_truncsfsi2. 2819 2820 * config/rs6000/spe.md: Delete spe_efsctuiz. 2821 Add spe_fixuns_truncsfsi2. 2822 Add spe_fix_truncsfsi2. 2823 28242004-02-26 Bob Wilson <bob.wilson@acm.org> 2825 2826 * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define __xtensa__. 2827 28282004-02-25 James E Wilson <wilson@specifixinc.com> 2829 2830 * gcc-simple.c (rtl_zone, tree_zone, garbage_zone, ggc_alloc_typed, 2831 ggc_alloc_zone): New. 2832 (ggc_pch_count_object, gcc_pch_alloc_object, ggc_pch_write_object): 2833 Add bool is_string parameter. 2834 28352004-02-26 Alan Modra <amodra@bigpond.net.au> 2836 2837 * gcse.c (delete_null_pointer_checks_1): Set stop_insn to end, not 2838 beginning of block. Do not delete CC setter unless HAVE_cc0. 2839 28402004-02-25 Kelley Cook <kcook@gcc.gnu.org> 2841 2842 * doc/contrib.texi: Add an entry for myself. 2843 28442004-02-25 Kelley Cook <kcook@gcc.gnu.org> 2845 2846 * config.gcc: Add comment describing extra_gcc_objs. 2847 i[34567]86-*-cygwin*): Replace host_extra_gcc_objs with extra_gcc_objs. 2848 * configure.ac (extra_gcc_objs): New substitution variable. 2849 (host_extra_gcc_objs): Don't substitute. 2850 * configure: Regenerate. 2851 * Makefile.in: Use extra_gcc_objs. 2852 28532004-02-25 Eric Botcazou <ebotcazou@act-europe.fr> 2854 2855 * fold-const.c (fold): Treat MAX_EXPR and MIN_EXPR like 2856 comparisons with regard to signedness. 2857 28582004-02-25 Jakub Jelinek <jakub@redhat.com> 2859 2860 * gcov-io.c (gcov_open) [GCOV_LOCKED]: Use open + fdopen instead of 2861 fopen. 2862 * libgcov.c: Include sys/stat.h. 2863 * config/rs6000/linux.h (TARGET_HAS_F_SETLKW): Define. 2864 * config/rs6000/linux64.h (TARGET_HAS_F_SETLKW): Define. 2865 * config/sparc/linux.h (TARGET_HAS_F_SETLKW): Define. 2866 * config/sparc/linux64.h (TARGET_HAS_F_SETLKW): Define. 2867 28682004-02-25 Richard Earnshaw <rearnsha@arm.com> 2869 2870 * arm.c (arm_legitimate_index_p): For QImode the range of an offset 2871 is -4095...+4095 inclusive. 2872 28732004-02-25 Eric Botcazou <ebotcazou@libertysurf.fr> 2874 2875 * doc/install.texi (sparc-sun-solaris2* specific notes): Document 2876 the bootstrap failure with Sun CC 5.4 and 5.5. 2877 28782004-02-24 Kazu Hirata <kazu@cs.umass.edu> 2879 2880 * cse.c (cse_change_cc_mode_insns): Stop at any instruction 2881 which modifies NEWREG. 2882 (cse_condition_code_reg): Update the mode of CC_REG in 2883 CC_SRC_INSN on our own. 2884 28852004-02-24 Michael Matz <matz@suse.de> 2886 2887 * config/i386/i386.c (ix86_comp_type_attributes): Check for 2888 regparm attributes. 2889 28902004-02-24 Aldy Hernandez <aldyh@redhat.com> 2891 2892 * config/rs6000/spe.md (spe_fix_truncsfsi2): Delete. 2893 (spe_fixuns_truncsfsi2): Delete. 2894 2895 * config/rs6000/rs6000.md (fix_truncsfsi2): Delete. 2896 (fixuns_truncsfsi2): Delete. 2897 28982004-02-24 Josef Zlomek <zlomekj@suse.cz> 2899 2900 PR/14240 2901 * rtlanal.c (replace_label): Fix replacing labels in constant pool. 2902 29032004-02-24 Bob Wilson <bob.wilson@acm.org> 2904 2905 * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Update. 2906 (init_cumulative_args): Likewise. 2907 (a7_overlap_mentioned_p): Delete prototype. 2908 * config/xtensa/xtensa.c (struct machine_function): Replace 2909 incoming_a7_copied field with need_a7_copy and vararg_a7 flags. 2910 Add set_frame_ptr_insn field. 2911 (xtensa_emit_move_sequence): Update call to xtensa_copy_incoming_a7. 2912 (xtensa_copy_incoming_a7): Rewrite to check need_a7_copy flag and check 2913 if the operand is an argument in a7. If so, copy a7 to a new pseudo 2914 at the function entry and replace the operand with the pseudo. 2915 (init_cumulative_args): Remove unused arguments. Add new "incoming" 2916 argument and record this flag in CUMULATIVE_ARGS. 2917 (function_arg): Remove result_mode and special-case code to handle 2918 arguments in a7. Instead, set need_a7_copy flag when there is an 2919 incoming argument in a7. 2920 (xtensa_expand_prologue): Remove code to search for set_frame_ptr insn 2921 and use the value recorded in cfun->machine->set_frame_ptr_insn. 2922 (xtensa_builtin_saveregs): Check for negative gp_left value. Set 2923 need_a7_copy and vararg_a7 flags. Use move_block_from_reg instead of 2924 special-case code. 2925 (a7_overlap_mentioned_p): Delete. 2926 * config/xtensa/xtensa.h (CUMULATIVE_ARGS): Add "incoming" flag. 2927 (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Remove useless 2928 arguments to init_cumulative_args and pass "incoming" flag instead. 2929 (BLOCK_REG_PADDING): Delete. 2930 * config/xtensa/xtensa.md (movdi, movsf, movdf): Remove unnecessary 2931 checks for reload_in_progress and reload_completed. Update calls to 2932 xtensa_copy_incoming_a7. 2933 (ashlsi3): Rename existing insn to ashlsi3_internal. Add expander 2934 to call xtensa_copy_incoming_a7. 2935 29362004-02-24 Richard Earnshaw <rearnsha@arm.com> 2937 2938 * invoke.texi (ARM Options): Mark -mapcs-26 and -mno-alignment-traps 2939 as deprecated. Remove already deprecated synonyms. 2940 * arm.c (arm_override_options): Generate an inform message if the 2941 user tries to invoke the compiler in apcs-26 mode. 2942 * arm.h (TARGET_SWITCHES): Remove help comments from deprecated 2943 switches. Delete deprecated synonyms for -malignment-traps. 2944 (TARGET_DEFAULT): Default to alignment traps. 2945 * arm/coff.h (TARGET_DEFAULT): Default to alignment traps. 2946 * arm/elf.h arm/netbsd.h arm/pe.h arm/semi.h arm/semiaof.h: Likewise. 2947 * arm/unknown-elf.h arm/wince-pe.h: Likewise. 2948 29492004-02-23 H.J. Lu <hongjiu.lu@intel.com> 2950 2951 * config/i386/i386.h: Deprecate -mpni/-mno-pni. 2952 29532004-02-23 Kelley Cook <kcook@gcc.gnu.org> 2954 2955 * config/i386/i386.c: Rename pni to sse3. 2956 * config/i386/i386.h: Likewise. 2957 * config/i386/i386.md: Likewise. 2958 * config/i386/pmmintrin.h: Likewise. 2959 * doc/extend.texi: Likewise. 2960 * doc/invoke.texi: Likewise. 2961 29622004-02-23 Andrew Pinski <pinskia@physics.uc.edu> 2963 2964 * config/rs6000/linux.h (OS_MISSING_POWERPC64): Define. 2965 * config/rs6000/linux64.h (OS_MISSING_POWERPC64): Define. 2966 29672004-02-23 Eric Botcazou <ebotcazou@libertysurf.fr> 2968 Falk Hueffner <falk@debian.org> 2969 2970 PR c/14188 2971 * builtins.c (expand_builtin_va_arg): Emit an informative message 2972 if a trap is generated. 2973 * c-typeck.c (build_function_call): Likewise. 2974 29752004-02-22 Christopher Faylor <cgf@redhat.com> 2976 2977 * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): *Really* specify 2978 extra host object file when targetting cygwin rather than generic 2979 object files. 2980 29812004-02-22 Matthias Klose <doko@debian.org> 2982 2983 Taken from mainline: 2984 2985 2004-02-12 Geoffrey Keating <geoffk@apple.com> 2986 2987 * Makefile.in (install-man): Use $(CPP_INSTALL_NAME) and 2988 $(GCOV_INSTALL_NAME) to install manpages. Remove generic rule 2989 for installing .1 manpages. Add rules for installing cpp 2990 and gcov manpages under their installed names. 2991 29922004-02-22 Hans-Peter Nilsson <hp@axis.com> 2993 2994 PR target/14209 2995 * config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak 2996 constraints to not match postincrement. Adjust the predicate to 2997 exclude a volatile memory reference. 2998 ("*andsi_clear"): Tweak constraints to not match postincrement. 2999 Adjust the predicate to exclude a volatile memory reference. 3000 ("*andhi_clear"): Ditto. Rename from "*andhi_clear_signed". 3001 ("*andhi_clear_unsigned"): Remove, non-matching pattern. 3002 30032004-02-21 Christopher Faylor <cgf@redhat.com> 3004 3005 * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): Specify extra host 3006 object file when targetting cygwin. 3007 * config/i386/t-cygwin (EXTRA_GCC_OBJS): Remove definition since it is 3008 overridden by top-level Makefile. 3009 30102004-02-21 Alan Modra <amodra@bigpond.net.au> 3011 3012 * combine.c (can_combine_p): Don't ignore SETs marked with 3013 REG_EH_REGION notes. 3014 30152004-02-21 Jan Hubicka <jh@suse.cz> 3016 3017 * params.def (max-peeled-insns, max-completely-peeled-insns, 3018 max-once-peeled-insns): Set to 400. 3019 30202004-02-20 Falk Hueffner <falk@debian.org> 3021 3022 PR target/14201 3023 * config/alpha/alpha.md (*fix_truncsfsi_ieee): Fix typoed operand 3024 numbers. 3025 30262004-02-20 Mohan Embar <gnustuff@thisiscool.com> 3027 Tom Tromey <tromey@redhat.com> 3028 3029 * doc/install.texi: Moved --disable-libgcj and 3030 --with-system-zlib documentation to new section for 3031 Java-specific options. 3032 Added explicit Cross-Compiler-Specific Options subheading. 3033 Added section for Java-specific options. 3034 30352004-02-20 James E Wilson <wilson@specifixinc.com> 3036 3037 * toplev.c (dump_file_index, dump_file): Put ce3 before rnreg. 3038 30392004-02-20 Josef Zlomek <zlomekj@suse.cz> 3040 3041 * tree-inline.c (copy_body_r): Do not replace ret_label. 3042 30432004-02-20 Kazu Hirata <kazu@cs.umass.edu> 3044 3045 * gcc.c (process_command): Allow translation of the copyright 3046 symbol but not the rest of the copyright message. 3047 * gcov.c (print_version): Likewise. Allow translation of the 3048 message about warranty. 3049 30502004-02-19 Aldy Hernandez <aldyh@redhat.com> 3051 3052 * config/rs6000/spe.md (spe_fixunssfsi2): Rename to 3053 spe_fixuns_truncsfsi2. 3054 3055 * config/rs6000/rs6000.md (fixunssfsi2): Rename to 3056 fixuns_truncsfsi2. 3057 30582004-02-19 Richard Sandiford <rsandifo@redhat.com> 3059 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 3060 3061 * config/mips/mips.c (mips_address_insns): Treat BLKmode specially. 3062 * config/mips/mips.md: Expand comment above unaligned loads and stores. 3063 30642004-02-20 Alan Modra <amodra@bigpond.net.au> 3065 3066 * function.c (assign_parms): Correct leakage of mainline code 3067 in last commit. Also leakage from INIT_CUMULATIVE_ARGS patch. 3068 30692004-02-19 Zack Weinberg <zack@codesourcery.com> 3070 3071 * config/ia64/ia64.c (ia64_function_arg): In big-endian mode, 3072 when passing single SFmode quantities in general registers, 3073 put them in the high half. 3074 (struct extern_func_list, extern_func_head): Mark with GTY(()). 3075 (ia64_hpux_add_extern_decl): Save the decl, not the name string. 3076 Allocate memory with ggc_alloc. No need to copy anything. 3077 (ia64_hpux_file_end): Update to match. 3078 30792004-02-19 David Daney <ddaney@avtrex.com> 3080 3081 PR preprocessor/14198 3082 * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Add 3083 builtin_assert ("machine=mips") 3084 30852004-02-19 Ulrich Weigand <uweigand@de.ibm.com> 3086 3087 * config/s390/s390.md ("*subdf3_cc", "*subdf3_cconly", "*subsf3_cc", 3088 "*subsf3_cconly"): Subtraction is not commutative. 3089 30902004-02-19 Alan Modra <amodra@bigpond.net.au> 3091 3092 * function.c (assign_parms): When building decl_rtl for 3093 SPLIT_COMPLEX_ARGS, ensure inner modes of concat match outer. 3094 30952004-02-19 Olivier Hainque <hainque@act-europe.fr> 3096 3097 * expr.c (is_aligning_offset): Check if we are aligning the 3098 expressions's address over BIGGEST_ALIGNMENT in bytes, not 3099 in bits. 3100 31012004-02-19 Jan Hubicka <jh@suse.cz> 3102 3103 * genextract.c (main): Do not output the memset when not checking. 3104 31052004-02-18 Jakub Jelinek <jakub@redhat.com> 3106 3107 * config/i386/i386.c (override_options): Don't imply 3DNow! for -m64 3108 by default. 3109 31102004-02-18 Ulrich Weigand <uweigand@de.ibm.com> 3111 3112 * config/s390/s390.md ("divmoddisi3"): Fix incorrect mode. 3113 31142004-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 3115 3116 * pa.h (PIC_OFFSET_TABLE_REGNUM): Define to INVALID_REGNUM when not 3117 generating PIC code. 3118 31192004-02-18 Ulrich Weigand <uweigand@de.ibm.com> 3120 3121 * config/s390/s390.c (s390_mainpool_start): Delete the main pool 3122 placeholder insn when chunkifying the pool. 3123 31242004-02-18 Per Bothner <per@bothner.com> 3125 3126 * cpphash.h (struct cpp_buffer): Restore return_at_eof field. This 3127 partly reverts my 2003-10-01 change, because we're back to logically 3128 including <command line> inside the main line. 3129 * cpplex.c (_cpp_get_fresh_line): Check return_at_eof field. 3130 * cppmacro.c (cpp_scan_nooutput): Set return_at_eof of current buffer. 3131 Fixes PR preprocessor/14103. 3132 31332004-02-18 Richard Earnshaw <rearnsha@arm.com> 3134 3135 PR target/13866 3136 * arm.c (load_multiple_operation): Don't insist that the source reg 3137 of a post-increment component is the same as the destination. 3138 (store_multiple_operation): Likewise. 3139 31402004-02-18 Paul Brook <paul@codesourcery.com> 3141 3142 * rtlanal.c (rtx_varies_p): Return 0 for NULL_RTX 3143 31442004-02-18 Mark Mitchell <mark@codesourcery.com> 3145 3146 PR c++/11326 3147 * config/ia64/ia64.c (ia64_struct_value_rtx): Cope with NULL 3148 fntype. 3149 31502004-02-18 Paul Brook <paul@codesourcery.com> 3151 3152 PR debug/12934 3153 * dwarf2out.c (loc_descriptor_from_tree): Handle 3154 EXPR_WITH_FILE_LOCATION. 3155 31562004-02-17 Mark Mitchell <mark@codesourcery.com> 3157 3158 PR c++/11326 3159 * c-common.c (flag_abi_version): Remove. 3160 * c-common.h (flag_abi_version): Likewise. 3161 * c-opts.c (c_common_handle_option): Remove OPT_fabi_version case. 3162 * c.opt (fabi-version): Remove. 3163 * calls.c (expand_call): Always pass a function type to 3164 struct_value_rtx. Use convert_memory_address. 3165 * common.opt (fabi-version): Add it. 3166 * flags.h (flag_abi_version): Likewise. 3167 (abi_version_at_least): New macro. 3168 * opts.c (common_handle_option): Add OPT_fabi_version. 3169 * toplev.c (flag_abi_version): Define it. 3170 * config/ia64/ia64.h (STRUCT_VALUE_REGNUM): Remove. 3171 * config/ia64/ia64.c (TARGET_STRUCT_VALUE_RTX): Define it. 3172 (ia64_struct_retval_addr_is_first_parm_p): 3173 New function. 3174 (ia64_output_mi_thunk): Use it. 3175 (ia64_struct_value_rtx): New function. 3176 31772004-02-18 Alan Modra <amodra@bigpond.net.au> 3178 3179 PR optimization/14119 3180 * combine.c (try_combine): When attemting to fix unrecognized insns, 3181 don't delete SETs marked with REG_EH_REGION notes. 3182 31832004-02-17 Jan Hubicka <jh@suse.cz> 3184 3185 PR bootstrap/14180 3186 * cselib.c (remove_useless_values): Do not access released 3187 memory. 3188 31892004-02-17 Ulrich Weigand <uweigand@de.ibm.com> 3190 3191 * combine.c (simplify_if_then_else): Do not replace 3192 (if_then_else (ne reg 0) (0) (const_int)) by (reg) if the 3193 modes differ. 3194 31952004-02-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3196 3197 * config/mips/t-iris6gld: Renamed to ... 3198 * config/mips/t-irix-gld: ... this. 3199 * config.gcc (mips-sgi-irix6*): Reflect this 3200 (mips-sgi-irix5*): Use it with GNU ld. 3201 3202 * config/mips/irix6-crti.asm, config/mips/irix6-crtn.asm: Renamed 3203 to ... 3204 * config/mips/irix-crti.asm, config/mips/irix-crtn.asm: ... this. 3205 * config/mips/t-irix-gld: Reflect this. 3206 * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise. 3207 3208 * config/mips/iris5gld.h: New file. 3209 * config.gcc (mips-sgi-irix5*): Use it with GNU ld. 3210 Only use collect2 without gas. 3211 3212 * config/mips/iris6.h (IRIX6_STARTFILE_SPEC, IRIX6_ENDFILE_SPEC): 3213 Renamed to IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC. 3214 (STARTFILE_SPEC, ENDFILE_SPEC, SUBTARGET_EXTRA_SPECS): Reflect this. 3215 * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise. 3216 3217 * config/mips/iris6.h (SUBTARGET_EXTRA_SPECS): Moved ... 3218 * config/mips/iris5.h: ... here. 3219 3220 * config/mips/iris5.h (STARTFILE_SPEC, ENDFILE_SPEC): Renamed to 3221 IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC. 3222 (STARTFILE_SPEC, ENDFILE_SPEC): Define. 3223 3224 * config/mips/iris5gas.h (STARTFILE_SPEC, ENDFILE_SPEC): Simplify 3225 using irix_startfile_spec, irix_endfile_spec. 3226 * patches.summary (http): 3227 32282004-02-17 Andrew Pinski <pinskia@physics.uc.edu> 3229 3230 PR c++/14178 3231 * doc/invoke.texi (fabi-version): The default is 2 now. 3232 32332004-02-17 Jonathan Wakely <redi@gcc.gnu.org> 3234 3235 * doc/install.texi: Update description of --gxx-include-dir to 3236 give correct default value. (merged from mainline) 3237 32382004-02-16 Matthias Klose <doko@debian.org> 3239 3240 * config/t-slibgcc-elf-ver: Define SHLIB_NAME and SHLIB_SONAME 3241 in terms of SHLIB_SOVERSION. 3242 * config/m68k/t-slibgcc-elf-ver: New file. 3243 * config/pa/t-slibgcc-elf-ver: New file. 3244 * config.gcc (m68k-linux, parisc-linux): Use them when not 3245 sjlj exceptions are not configured. 3246 32472004-02-16 Eric Botcazou <ebotcazou@libertysurf.fr> 3248 3249 * config/sparc/sparc.c (get_pc_symbol_name): Mark with GTY(()). 3250 32512004-02-16 Joseph S. Myers <jsm@polyomino.org.uk> 3252 3253 * doc/sourcebuild.texi: Mention backends.html. 3254 32552004-02-15 Roger Sayle <roger@eyesopen.com> 3256 3257 Backport from mainline: 3258 3259 2004-02-07 Roger Sayle <roger@eyesopen.com> 3260 PR middle-end/13696 3261 * fold-const.c (fold_convert): New function to provide type 3262 conversion to the middle-end without using convert. 3263 (negate_expr, associate_trees, size_diffop, omit_one_operand, 3264 operand_equal_for_comparison_p, pedantic_omit_one_operand, 3265 invert_truthvalue, optimize_bit_field_compare, range_binop, 3266 decode_field_reference, make_range, build_range_check, unextend, 3267 fold_truthop, extract_muldiv_1, fold_mathfn_compare, 3268 fold_binary_op_with_conditional_arg, fold_inf_compare, 3269 fold_single_bit_test, fold, multiple_of_p): Replace all calls to 3270 convert with calls to fold_convert. 3271 3272 2004-02-09 Roger Sayle <roger@eyesopen.com> 3273 * fold-const.c (fold) <NOP_EXPR>: Use the original type conversion 3274 tree code rather than call fold_convert, which doesn't specify a 3275 default floating point to integer conversion. 3276 3277 2004-02-10 Paolo Bonzini <bonzini@gnu.org> 3278 PR c/14092 3279 * fold-const.c (fold) <NEGATE_EXPR>: Convert result of 3280 negate_expr back to the original type. 3281 32822004-02-15 SUGIOKA Toshinobu <sugioka@itonet.co.jp> 3283 3284 Backport from mainline: 3285 3286 2004-02-05 SUGIOKA Toshinobu <sugioka@itonet.co.jp> 3287 * config/sh/t-linux (SHLIB_INSTALL): Prepend $$(DESTDIR) 3288 to $$(slibdir) in the installation commands. 3289 32902004-02-15 Roger Sayle <roger@eyesopen.com> 3291 3292 Backport from mainline: 3293 3294 2004-01-20 Roger Sayle <roger@eyesopen.com> 3295 * fold-const.c (fold_convert): Rename to fold_convert_const. 3296 (fold_convert_const): Change arguments to take a tree_code, 3297 a type and the operand/expression to be converted. Return 3298 NULL_TREE if no simplification is possible. 3299 (fold): Adjust call to fold_convert to match new fold_convert_const. 3300 Avoid modifying the tree passed to fold in-place. 3301 33022004-02-15 Jan Hubicka <jh@suse.cz> 3303 3304 * cselib.c (value_pool): New. 3305 (new_cselib_val): Use pool. 3306 (cselib_init): Initialize value_pool 3307 (cselib_finish): Free pool. 3308 3309 * cselib.c: Include alloc-pool.h 3310 (empty_vals, empty_elt_lists, empty_elt_loc_lists): Kill. 3311 (elt_loc_list_pool, elt_list_pool, cselib_val_pool): Declare. 3312 (new_elt_list, new_elt_loc_list, unchain_one_elt_list, 3313 unchain_one_elt_loc_list_pool, unchain_one_value, 3314 new_cselib_val): Simplify using allocpool. 3315 (cselib_init): Initialize allocpools. 3316 (cselib_finish): Finish allocpools. 3317 33182004-02-14 Richard Sandiford <rsandifo@redhat.com> 3319 3320 Backport from mainline: 3321 3322 2002-04-08 Richard Sandiford <rsandifo@redhat.com> 3323 * real.c (encode_ibm_extended): Normalize the input value before 3324 converting it to a double. Handle the case where a normal value 3325 rounds to infinity. 3326 33272004-02-14 Olivier Hainque <hainque@act-europe.fr> 3328 3329 * loop.c (check_dbra_loop): Use gen_int_mode instead of GEN_INT 3330 for start_value when it is directly moved into reg, and factorize 3331 the retrieval of GET_MODE (reg). 3332 33332004-02-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3334 3335 * configure.ac: Search for as, ld below libexec/gcc. 3336 * configure: Regenerate. 3337 33382004-02-13 Jan Hubicka <jh@suse.cz> 3339 3340 * combine.c (recog_for_combine): Avoid allocating unnecesary RTX. 3341 3342 * genrecog.c (find_operand): add extra argument stop. 3343 (validate_pattern): Verify that mach_dup is duplicating operand 3344 defined lexically earlier. 3345 33462004-02-13 Ian Lance Taylor <ian@wasabisystems.com> 3347 3348 PR other/10584 3349 * c-opts.c (c_common_post_options): Disable function inlining when 3350 using -finstrument-functions. 3351 * doc/invoke.texi (Code Gen Options): Document this restriction. 3352 33532004-02-12 Chris Demetriou <cgd@broadcom.com> 3354 3355 * config/mips/mips.md (casesi_internal, casesi_internal_di): 3356 Use ".set macro" to avoid warnings about multi-instruction 3357 macros, since they're intentional. 3358 33592004-02-13 Jan Hubicka <jh@suse.cz> 3360 3361 * alias.c (find_base_term, get_addr): Do not dereference NULL 3362 pointer when all VALUE's locations has been invalidated. 3363 (rtx_equal_for_memref_p): Simplify checking of VALUEs. 3364 3365 * cselib.c (discard_useless_values): Clear out value pointer pointing 3366 to datastructure to be recycled. 3367 3368 * gcse.c (bypass_block): Prevent edges to be unified when we are 3369 about to emit compenstation code. 3370 3371 * gcse.c (bypass_block): Fix a typo in the previous check-in 3372 to the file. 3373 3374 * alloc-pool.c (align_four): Kill. 3375 (create_alloc_pool): Align size to eight. 3376 (free_alloc_pool, free_pool): Invalidate deallocated data. 3377 33782004-02-12 Richard Sandiford <rsandifo@redhat.com> 3379 3380 PR bootstrap/13617 3381 * config/mips/mips-protos.h (mips_output_aligned_decl_common): Declare. 3382 (mips_declare_object): Make variadic. 3383 * config/mips/mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use 3384 mips_output_aligned_decl_common. 3385 * config/mips/mips.c (mips_output_aligned_decl_common): New function. 3386 (mips_declare_object): Make variadic. 3387 33882004-02-12 Jan Hubicka <jh@suse.cz> 3389 3390 * tree-optimize.c (tree_rest_of_compilation): Do not release DECL_ARGUMENTS 3391 33922004-02-12 Ian Lance Taylor <ian@wasabisystems.com> 3393 3394 PR inline-asm/6162 3395 * reload.c (find_reloads): Only support one pair of commutative 3396 operands. 3397 33982004-02-12 Ian Lance Taylor <ian@wasabisystems.com> 3399 3400 PR target/1532 3401 Backport from mainline: 3402 3403 2004-02-11 Richard Henderson <rth@redhat.com> 3404 3405 * flow.c (insn_dead_p): A clobber of a dead hard register is a 3406 dead insn after reload. 3407 3408 2004-01-24 Ian Lance Taylor <ian@wasabisystems.com> 3409 3410 * cse.c (cse_cc_succs): Change the mode of the source expression 3411 as soon as decide we need a new mode. Don't permit changing modes 3412 if we found a match in a successor block. 3413 (cse_condition_code_reg): Save original mode of source expression 3414 so that we know whether we have to change the mode in other 3415 insns. 3416 3417 2004-01-24 Andreas Tobler <a.tobler@schweiz.ch> 3418 3419 * cse.c: (cse_cc_succs) Fix comparison warning. 3420 3421 2004-01-23 Ian Lance Taylor <ian@wasabisystems.com> 3422 3423 * cse.c (cse_change_cc_mode): New static function. 3424 (cse_change_cc_mode_insns, cse_cc_succs): Likewise. 3425 (cse_condition_code_reg): New function. 3426 * rtl.h (cse_condition_code_reg): Declare. 3427 * toplev.c (rest_of_handle_cse2): Call cse_condition_code_reg. 3428 * target.h (struct gcc_target): Add fixed_condition_code_regs and 3429 cc_modes_compatible. 3430 * target-def.h (TARGET_FIXED_CONDITION_CODE_REGS): Define. 3431 (TARGET_CC_MODES_COMPATIBLE): Define. 3432 (TARGET_INITIALIZER): Add new initializers. 3433 * targhooks.c (default_cc_modes_compatible): New function. 3434 * targhooks.c (default_cc_modes_compatible): Declare. 3435 * hooks.c (hook_bool_intp_intp_false): New function. 3436 * hooks.h (hook_bool_intp_intp_false): Declare. 3437 * config/i386/i386.c (TARGET_FIXED_CONDITION_CODE_REGS): Define. 3438 (TARGET_CC_MODES_COMPATIBLE): Define. 3439 (ix86_fixed_condition_code_regs): New static function. 3440 (ix86_cc_modes_compatible): Likewise. 3441 * doc/tm.texi (Condition Code): Document new hooks. 3442 34432004-02-12 Hartmut Penner <hpenner@de.ibm.com> 3444 3445 * config/rs6000/altivec.md (*movv4si_internal): At least one 3446 operand must be register_operand. 3447 (*movv8hi_internal1): Likewise. 3448 (*movv16qi_internal1): Likewise. 3449 (*movv4sf_internal1): Likewise. 3450 34512004-02-12 Eric Botcazou <ebotcazou@libertysurf.fr> 3452 3453 PR target/14113 3454 Backport from mainline: 3455 3456 2004-02-03 Eric Botcazou <ebotcazou@libertysurf.fr> 3457 3458 * config/sparc/sparc.md (call followed by jump define_peephole's): 3459 Delete. 3460 34612004-02-12 Hartmut Penner <hpenner@de.ibm.com> 3462 3463 * gcc/config/rs6000/rs6000.c (rs6000_override_options) 3464 Set AltiVec ABI and vrsave as default for ppc64 linux. 3465 (init_cumulative_args): Post error, if try to return 3466 value in AltiVec register without enable AltiVec. 3467 (function_arg_advance): Ditto for passing arguments. 3468 34692004-02-11 Joseph S. Myers <jsm@polyomino.org.uk> 3470 3471 PR c/456 3472 * cppexp.c (num_binary_op): Don't allow comma operators in #if 3473 constant expressions at all outside C99 mode if pedantic. 3474 34752004-02-10 Aldy Hernandez <aldyh@redhat.com> 3476 3477 * config/rs6000/spe.md ("*movv2si_internal"): Check for register 3478 operand. 3479 (movv4hi_internal): Same. 3480 (movv2sf_internal): Same. 3481 (movv1di_internal): Same. 3482 34832004-02-11 Richard Sandiford <rsandifo@redhat.com> 3484 3485 * emit-rtl.c (mark_label_nuses): Check that a LABEL_REF refers to 3486 a label before updating its usage count. 3487 34882004-02-10 Danny Smith <dannysmith@users.sourceforge.net> 3489 3490 PR c/14088 3491 real.c (real_from_string): Look for 'X' as well as 'x' in 3492 hexfloat strings. 3493 34942004-02-10 Per Bothner <per@bothner.com> 3495 3496 * c-opts.c (c_common_post_options): Don't emit working directory 3497 in cpp output if -P was specified. 3498 34992004-02-10 Jakub Jelinek <jakub@redhat.com> 3500 3501 PR optimization/13424 3502 Backport from mainline: 3503 3504 2004-01-29 Jakub Jelinek <jakub@redhat.com> 3505 * emit-rtl.c (change_address): Use XEXP (memref, 0) instead 3506 of addr when creating MEM copy. 3507 3508 2004-01-28 Jakub Jelinek <jakub@redhat.com> 3509 * expr.c (store_constructor): Revert 2003-12-03 change. 3510 3511 * emit-rtl.c (change_address): Check also if MEM_ATTRS is set as 3512 expected before returning early. Avoid sharing RTL if they 3513 need to be changed. 3514 3515 * config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov 3516 handling so that memory attributes are preserved. Don't call 3517 ix86_set_move_mem_attrs. 3518 (ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed. 3519 (ix86_expand_clrstr): Rename src argument to 3520 dst. Rework rep_stos and strset handling so that memory attributes 3521 are preserved. 3522 (ix86_expand_strlen): Pass src argument to 3523 ix86_expand_strlensi_unroll_1. Rework strlenqi_1 handling so that 3524 memory attributes are preserved. 3525 (ix86_expand_strlensi_unroll_1): Add src argument. Use 3526 change_address instead of gen_rtx_MEM. 3527 * config/i386/i386.md (strmov, strmov_singleop, rep_mov): New 3528 expanders. 3529 (strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64, 3530 strmovqi, strmovqi_rex64): Remove. 3531 (rep_mov*, strmov*): Prefix insn names with *. 3532 (strset, strset_singleop, rep_stos): New expanders. 3533 (strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64, 3534 strsetqi, strsetqi_rex64): Remove. 3535 (rep_stos*, strset*): Prefix insn names with *. 3536 (rep_stosqi_rex64): Likewise. Fix mode of dirflag reg from DImode 3537 to SImode. 3538 (cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes 3539 are preserved. 3540 (cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1): 3541 Prefix insn names with *. 3542 (cmpstrqi_nz_1, cmpstrqi_1): New expanders. 3543 (strlenqi_1, strlenqi_rex_1): Prefix insn names with *. 3544 (strlenqi_1): New expander. 3545 * config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype. 3546 3547 2004-01-24 Jan Hubicka <jh@suse.cz> 3548 * emit-rtl.c (change_address, adjust_address_1, offset_address, 3549 widen_memory_access): Return early when there is nothing to change. 3550 35512004-02-10 David Edelsohn <edelsohn@gnu.org> 3552 3553 * configure.ac (gcc_cv_as_powerpc_mfcrf): Correct test for mfcr. 3554 * configure: Regenerate. 3555 35562004-02-10 Ulrich Weigand <uweigand@de.ibm.com> 3557 3558 * cfganal.c (flow_call_edges_add): Never split a libcall block. 3559 35602004-02-10 Richard Sandiford <rsandifo@redhat.com> 3561 3562 * config/mips/mips.h (TARGET_GPWORD): Return false for TARGET_NEWABI 3563 && TARGET_IRIX. 3564 35652004-02-09 Geoffrey Keating <geoffk@apple.com> 3566 3567 PR 12028 3568 * config/rs6000/rs6000.c (ccr_bit): Don't let consistency check 3569 failure stop compilation, just print helpful message. 3570 35712004-02-09 Fariborz Jahanian <fjahanian@apple.com> 3572 3573 * expr.c (emit_group_load): split constant 3574 correctly into register components of PARALLEL insn. 3575 35762004-02-09 DJ Delorie <dj@redhat.com> 3577 3578 * config/i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): No 3579 longer modify standard_exec_prefix, standard_bindir_prefix, or 3580 standard_startfile_prefix. 3581 35822004-02-09 James E Wilson <wilson@specifixinc.com> 3583 3584 PR c++/11295 3585 * c-common.c (c_expand_expr, case STMT_EXPR): Change expand_expr call 3586 to expand_expr_real call, and pass in alt_rtl as last argument. 3587 3588 PR libstdc++/5625 3589 * builtin-types.def (BT_WORD, BT_FN_WORD_PTR): New. 3590 * builtins.c (expand_builtin): Handle BUILT_IN_EXTEND_POINTER. 3591 * builtins.def (BUILT_IN_EXTEND_POINTER): New. 3592 * except.c (expand_builtin_extend_pointer): New. 3593 * except.h (expand_builtin_extend_pointer): Declare. 3594 35952004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3596 3597 * config/mips/iris5.h (BSS_SECTION_ASM_OP): Define. 3598 * config/mips/iris6.h (BSS_SECTION_ASM_OP): Undef. 3599 3600 * config/mips/iris6.h (TARGET_ASM_NAMED_SECTION): Moved ... 3601 * config/mips/iris5.h: ... here. 3602 * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Remove. 3603 3604 * config/mips/iris6.h (EXTRA_SECTION_FUNCTIONS): Move ... 3605 * config/mips/iris5.h: ... here. 3606 36072004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3608 3609 * configure.ac: Remove default executable files before AC_PROG_CC. 3610 * configure: Regenerate. 3611 36122004-02-09 Kazu Hirata <kazu@cs.umass.edu> 3613 3614 PR target/13721 3615 * config/h8300/h8300.c (byte_reg): Call abort() if asked to 3616 print a operand other than a register. 3617 36182004-02-09 Nick Clifton <nickc@redhat.com> 3619 3620 * Import these patches from mainline sources: 3621 3622 2004-01-21 Inaoka Kazuhiro <inaoka.kazuhiro@renesas.com> 3623 3624 * config/m32r/m32r.h (CPP_SPEC): Define. 3625 3626 2004-01-20 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 3627 3628 * config/m32r/m32r.h (TARGET_M32R2). Test for TARGET_M32R2_MASK 3629 not TARGET_M32RX_MASK. 3630 36312004-02-09 Eric Botcazou <ebotcazou@libertysurf.fr> 3632 3633 * cpplib.h (cpp_get_line_maps): Un-constify the structure 3634 pointed to by the pointer returned by the function. 3635 * cpplib.c (cpp_get_line_maps): Likewise. 3636 36372004-02-08 Kazu Hirata <kazu@cs.umass.edu> 3638 3639 * c-objc-common.c (c_cannot_inline_tree_fn): Fix a typo in a 3640 warning. 3641 36422004-02-08 Joseph S. Myers <jsm@polyomino.org.uk> 3643 3644 * README.Portability: Change "ISO C89" to "ISO C90". 3645 * c-parse.in (primary, initelt): Likewise. 3646 36472004-02-07 Zack Weinberg <zack@codesourcery.com> 3648 3649 Bug 13856 3650 * c-decl.c (diagnose_mismatched_decls): Only give special 3651 treatment when olddecl is DECL_BUILT_IN, if C_DECL_INVISIBLE 3652 is also true. 3653 (merge_decls): Don't clear DECL_BUILT_IN_CLASS and 3654 DECL_FUNCTION_CODE when defining a built-in function. 3655 Don't update DECL_ESTIMATED_INSNS. 3656 * dwarf2out.c (dwarf2out_decl): Don't ignore built-in 3657 FUNCTION_DECLs. 3658 * tree.h: Delete DECL_ESTIMATED_INSNS. 3659 * tree-inline.c (struct inline_data): Delete inlined_insns field. 3660 (expand_call_inline, optimize_inline_calls): Don't update 3661 DECL_ESTIMATED_INSNS nor inlined_insns. 3662 * cgraphunit.c (cgraph_analyze_function): Don't update 3663 DECL_ESTIMATED_INSNS. 3664 36652004-02-07 Zack Weinberg <zack@codesourcery.com> 3666 3667 * c-common.c (shadow_warning): Delete. 3668 * c-common.h (free_parser_stacks, shadow_warning, sw_kind): Delete. 3669 * c-decl.c (warn_if_shadowing): Issue shadow warnings directly. 3670 * c-opts.c (c_common_parse_file): Don't call free_parser_stacks. 3671 * c-parse.in (free_parser_stacks): Delete. 3672 36732004-02-07 Kazu Hirata <kazu@cs.umass.edu> 3674 3675 * c-opts.c, c-ppoutput.c, cppfiles.c, cpphash.h, cppinit.c, 3676 cpplib.h, diagnostic.h, fix-header.c, config/fp-bit.c, 3677 config/mips/iris5.h, doc/makefile.texi: Update copyright. 3678 36792004-02-06 James E Wilson <wilson@specifixinc.com> 3680 3681 * config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Only define for 3682 glibc 2.3 or better. 3683 36842004-02-06 Ulrich Weigand <uweigand@de.ibm.com> 3685 3686 * loop.c (force_movables): Transitively increase the priorities of 3687 all insns forces by an insn, not just the first one. 3688 36892004-02-06 Falk Hueffner <falk@debian.org> 3690 3691 PR target/12898 3692 * config/alpha/alpha.c (alpha_emit_set_const_1): If 3693 no_new_pseudos, use gen_rtx_SET directly for SImode constants 3694 which need multiple instructions to emit. 3695 36962004-02-06 H.J. Lu <hongjiu.lu@intel.com> 3697 3698 * doc/invoke.texi: Remove the pni option from -mfpmath=. 3699 37002004-02-05 Kelley Cook <kcook@gcc.gnu.org> 3701 3702 * doc/install.texi: Update automake and autoconf version 3703 requirements. Note where to find gcj automake version. 3704 37052004-02-05 Kelley Cook <kcook@gcc.gnu.org> 3706 3707 * Makefile.in (generate-manpages): Move dependencies to ... 3708 (man): here. 3709 * doc/makefile.texi: Document new targets. 3710 * doc/sourcebuild.texi (Make-lang.in): Document new langhooks. 3711 37122004-02-05 Kelley Cook <kcook@gcc.gnu.org> 3713 3714 PR/13485 3715 Makefile.in (srcextra): Add a level of indirection to ... 3716 (gcc.srcextra): ... here. 3717 (po-generated): Delete. 3718 (po/$(PACKAGE).pot: Use srcextra instead of po-generated. Depend on 3719 options.c. 3720 (start.encap): Remove superfluous lang.srcextra dependency. 3721 objc/Make-lang.in (po-generated): Delete. 3722 37232004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3724 3725 * config/mips/iris5gas.h (PREFERRED_DEBUGGING_TYPE): Define. 3726 37272004-02-05 Andreas Krebbel <krebbel1@de.ibm.com> 3728 3729 * config/s390/s390.md ("*tmqidi_ext"): New insn. 3730 ("*extendqidi2_short_displ", "*extendsiqi2_short_displ"): Old 3731 pre-reload splitters are transformed to post-reload 3732 define_insn_and_split patterns. 3733 ("*tmqisi_ext"): Renamed old "*tmqi_ext". 3734 37352004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3736 3737 PR middle-end/13750 3738 Revert: 3739 2004-01-15 Geoffrey Keating <geoffk@apple.com> 3740 PR pch/13361 3741 * c-typeck.c (constructor_asmspec): Delete. 3742 (struct initializer_stack): Delete field 'asmspec'. 3743 (start_init): Delete saving of asmspec. 3744 (finish_init): Don't update constructor_asmspec. 3745 * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree. 3746 * stmt.c (expand_asm): Duplicate strings from tree. 3747 (expand_asm_operands): Likewise. 3748 * tree.c (tree_size): Update computation of size of STRING_CST. 3749 (make_node): Don't make STRING_CST nodes. 3750 (build_string): Allocate string with tree node. 3751 * tree.def (STRING_CST): Update comment. 3752 * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST. 3753 (tree_string): Place contents of string in tree node. 3754 * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string 3755 from tree. 3756 37572004-02-05 Joseph S. Myers <jsm@polyomino.org.uk> 3758 3759 * diagnostic.h (DEFINE_DIAGNOSTIC_KIND): Change parameter M to 3760 msgid. 3761 37622004-02-05 Paul Brook <paul@codesourcery.com> 3763 3764 Backport from mainline. 3765 3766 2003-11-22 Phil Edwards <phil@codesourcery.com> 3767 3768 PR target/12476 3769 * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use 3770 'bx' instead of 'b' to avoid branch range restrictions. Output 3771 the thunk immediately before the thunked-to function. 3772 * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit 3773 .thumb_func if a thunk is being generated. Emit .code 16 along 3774 with .thumb_func if a thunk is not being generated. 3775 3776 2003-11-05 Mark Mitchell <mark@codesourcery.com> 3777 3778 * calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P 3779 parameter. Use it instead of current_function_is_thunk. 3780 * function.h (struct function): Update documentation for is_thunk. 3781 * tree.h (CALL_FROM_THUNK_P): New macro. 3782 * config/alpha/alpha.c (alpha_sa_mask): Do not check 3783 no_new_pseudos when testing current_function_is_thunk. 3784 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Likeiwse. 3785 37862004-02-05 Joseph S. Myers <jsm@polyomino.org.uk> 3787 3788 * sourcebuild.texi (Test Idioms): Update testcase naming 3789 conventions. 3790 37912004-02-04 Per Bothner <per@bothner.com> 3792 3793 Partially revert/redo 2003-10-01 change; fix -fworking-directory. 3794 * c-ppoutput.c (pp_dir_change): New function. 3795 * c-common.h (pp_dir_change): New declaration. 3796 * cpplib.h (struct cpp_options): Remove working_directory field. 3797 * cppinit.c (cpp_find_main_file, cpp_push_main_file): Merge back to 3798 (cpp_read_main_file): as before 10-01. Call _cpp_stack_file. 3799 Don't handle -fworking_directory here, but in c_common_post_options. 3800 (read_original_directory): Don't back up when done. 3801 Don't clear no-longer used working_directory flag. 3802 * cpplib.h: Update declarations to match. 3803 * c-lex.c (cb_dir_change): Move to c-opts.c. 3804 (init_c_lex): Don't set dir_change callback here, since we want 3805 to set it even if flag_preprocess_only. 3806 * c-opts.c (cb_dir_change): Function moved from c-lex.c. 3807 (c_common_post_options): Set dir_change callback. 3808 Call pp_dir_change if approporiate. 3809 (finish_options): Don't call cpp_find_main_file here. Hence remove 3810 unneeded parameter and result. Do LC_RENAME for <built-in>. 3811 (c_common_post_options): Call cpp_read_main_file here instead. 3812 (c_common_init): Update accordingly. 3813 (push_command_line_include): Don't cpp_push_main_file. 3814 Do LC_RENAME rather than LC_LEASE to get back to main file. 3815 Compared to pre-10-01 version, inline cpp_rename_to_main_file. 3816 (c_common_parse_file): Call cpp_read_main_file for subsequent main 3817 files, but call finish_options for all files. 3818 * c-opts.c (sanitize_cpp_opts): Don't set cpp_opts->working_directory. 3819 * fix-header.c (read_scan_file): Call cpp_read_main_file instead of 3820 cpp_find_main_file + cpp_push_main_file. 3821 * c-lex.c (fe_file_change): Don't set main_input_filename here. 3822 * opts.c (handle_options): Only set main_input_filename first time. 3823 38242004-02-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3825 3826 * Makefile.in: Move target, host overrides after per-language 3827 fragments. 3828 3829 * config/mips/t-iris5-as (FORCE_DEBUG_ADAFLAGS): Clear. 3830 (GNATLIBCFLAGS): Remove -g. 3831 38322004-02-04 Eric Botcazou <ebotcazou@libertysurf.fr> 3833 3834 * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1 3835 for all modes whose size is greater than 8 bytes if ARCH32. 3836 (sparc_va_arg): Handle all modes whose size is greater than 8 bytes 3837 by reference if ARCH32. 3838 38392004-02-04 Ulrich Weigand <uweigand@de.ibm.com> 3840 3841 * config/s390/s390.md ("*la_64" + peepholes, "reload_indi"): Move 3842 to before adddi3 insn patterns. 3843 ("*la_31" + peepholes, "*la_31_and", "*la_31_and_cc", "force_la_31", 3844 "reload_insi"): Move to before addsi3 insn patterns. 3845 38462004-02-04 Kazu Hirata <kazu@cs.umass.edu> 3847 3848 * doc/interface.texi, doc/tm.texi, doc/trouble.texi: Don't 3849 mention deprecated target macros. 3850 38512004-02-03 Wolfgang Bangerth <bangerth@dealii.org> 3852 3853 * doc/invoke.texi (x86 options): Fix spelling/wording. 3854 38552004-02-03 Richard Sandiford <rsandifo@redhat.com> 3856 3857 * config/mips/iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to 3858 put the original string in a comment. 3859 * config/mips/mips-protos.h (mips_output_ascii): Add prefix argument. 3860 * config/mips/mips.c (mips_output_ascii): Likewise. 3861 * config/mips/mips.h (ASM_OUTPUT_ASCII): Adjust accordingly. 3862 38632004-02-03 Mark Mitchell <mark@codesourcery.com> 3864 3865 PR c++/13975 3866 * tree.h (enum tree_index): Add TI_PUBLIC, TI_PROTECTED, and 3867 TI_PRIVATE. 3868 (access_public_node): Redefine. 3869 (access_protected_node): Likewise. 3870 (access_private_node): Likewise. 3871 * tree.c (build_common_tree_nodes): Create access_public_node, 3872 access_protected_node, and access_private_node. 3873 38742004-02-03 Alan Modra <amodra@bigpond.net.au> 3875 3876 PR target/13914 3877 * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Use ap 3878 for retaddr_column. 3879 38802004-02-03 Kelley Cook <kcook@gcc.gnu.org> 3881 3882 * opts.c (OPT_fwritable_strings): Deprecate -fwritable-strings. 3883 38842004-02-03 Steven Bosscher <s.bosscher@student.tudelft.nl> 3885 3886 * toplev.c: Fix broken checkin of 2003-12-30, again. 3887 38882004-02-02 Eric Christopher <echristo@redhat.com> 3889 Zack Weinberg <zack@codesourcery.com> 3890 3891 * c-opts.c (c_common_handle_option): Add -finput-charset. 3892 * c.opt: Ditto. 3893 * cppcharset.c (_cpp_convert_input): New function. 3894 (_cpp_default_encoding): Ditto. 3895 * cpphash.h: Add prototypes for above. 3896 * cppfiles.c (read_file_guts): Use _cpp_convert_input. 3897 * cppinit.c (cpp_create_reader): Use _cpp_default_encoding 3898 for narrow execution and input character sets. 3899 * doc/cppopts.texi: Document -finput-charset. 3900 39012004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr> 3902 3903 * doc/invoke.texi (SPARC options): Further improve. 3904 39052004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr> 3906 3907 * config/sparc/sparc.c (function_arg_slotno): Align TImode 3908 arguments on a 16-byte boundary in the parameter array if ARCH64. 3909 Split handling of TFmode. 3910 39112004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr> 3912 3913 * doc/invoke.texi (SPARC options): Document that -mflat is deprecated. 3914 39152004-02-01 Eric Botcazou <ebotcazou@libertysurf.fr> 3916 3917 * config/sparc/sol2-bi.h: Handle TARGET_CPU_ultrasparc3. 3918 (CPP_CPU_SPEC): Handle -mcpu=ultrasparc3. 3919 (ASM_CPU_SPEC): Likewise 3920 * config/sparc/sol2.h: Handle TARGET_CPU_ultrasparc3. 3921 (ASM_CPU_SPEC): Remove -mcpu=v8plus. Handle -mcpu=ultrasparc3. 3922 39232004-02-01 Jan Hubicka <jh@suse.cz> 3924 3925 PR c++/12850 3926 * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and 3927 initial pointers. 3928 * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS 3929 for functions that will be only inlined. 3930 (cgraph_mark_function_to_output): Likewise. 3931 (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear; 3932 do not clear function body. 3933 * tree-optimize.c (clear_decl_rtl): Use decl_function_context. 3934 (tree_rest_of_compilation): Reorganize the logic releasing function 3935 body to use callgraph datastructure. 3936 39372004-02-01 Richard Sandiford <rsandifo@redhat.com> 3938 3939 * config/mips/mips.md (adddi3_internal_2): Remove superfluous %s. 3940 39412004-01-31 Eric Botcazou <ebotcazou@libertysurf.fr> 3942 3943 * doc/invoke.texi (SPARC options): Restructure and update. 3944 39452004-01-31 Kazu Hirata <kazu@cs.umass.edu> 3946 3947 * doc/invoke.texi: Follow spelling conventions. 3948 * doc/tm.texi: Likewise. 3949 39502004-01-31 Kazu Hirata <kazu@cs.umass.edu> 3951 3952 * doc/install.texi: Fix typos. 3953 * doc/invoke.texi: Likewise. 3954 39552004-01-31 Ulrich Weigand <uweigand@de.ibm.com> 3956 3957 * config/s390/s390.c (s390_decompose_address): Do not treat virtual 3958 registers as pointers. 3959 * config/s390/s390.md ("*la_31" second peephole2): Fix incorrect mode. 3960 39612004-01-31 Jan Hubicka <jh@suse.cz> 3962 3963 Revert the following patch until after AIX linker bug is fixed: 3964 PR c++/12850 3965 * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and 3966 initial pointers. 3967 * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS 3968 for functions that will be only inlined. 3969 (cgraph_mark_function_to_output): Likewise. 3970 (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear; 3971 do not clear function body. 3972 * tree-optimize.c (clear_decl_rtl): Use decl_function_context. 3973 (tree_rest_of_compilation): Reorganize the logic releasing function 3974 body to use callgraph datastructure. 3975 39762004-01-31 Kazu Hirata <kazu@cs.umass.edu> 3977 3978 alloc-pool.c, alloc-pool.h, c-lex.c, c-pragma.h, 3979 tree-optimize.c, config/alpha/alpha.c, config/alpha/alpha.h, 3980 config/alpha/alpha.md, config/alpha/vms.h, config/arm/arm.h, 3981 config/arm/linux-elf.h, config/avr/avr.c, config/c4x/c4x.c, 3982 config/c4x/c4x.md, config/d30v/d30v.h, 3983 config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h, 3984 config/frv/frv.md, config/frv/frvbegin.c, config/frv/frvend.c, 3985 config/i386/cygming.h, config/i386/djgpp.h, 3986 config/i386/emmintrin.h, config/i386/gthr-win32.c, 3987 config/i386/i386-interix.h, config/i386/i386-protos.h, 3988 config/i386/i386.c, config/i386/i386.h, config/i386/openbsd.h, 3989 config/i386/winnt.c, config/i386/xm-mingw32.h, 3990 config/i386/xmmintrin.h, config/ia64/ia64-protos.h, 3991 config/ia64/ia64.c, config/ia64/ia64.md, config/ip2k/ip2k.c, 3992 config/iq2000/iq2000-protos.h, config/iq2000/iq2000.c, 3993 config/iq2000/iq2000.md, config/m32r/m32r-protos.h, 3994 config/m32r/m32r.c, config/m32r/m32r.md, config/m68k/m68k.md, 3995 config/m68k/netbsd-elf.h, config/mcore/mcore-elf.h, 3996 config/mcore/mcore.c, config/mcore/mcore.h, 3997 config/mcore/mcore.md, config/mips/elf.h, config/mips/elf64.h, 3998 config/mips/iris5gas.h, config/mips/iris6.h, 3999 config/mips/iris6gas.h, config/mips/linux.h, 4000 config/mips/mips.md, config/mips/netbsd.h, 4001 config/mips/openbsd.h, config/mips/windiss.h, 4002 config/mn10300/mn10300.c, config/mn10300/mn10300.h, 4003 config/pdp11/pdp11.c, config/rs6000/aix.h, 4004 config/rs6000/altivec.h, config/rs6000/darwin.h, 4005 config/rs6000/xcoff.h, config/s390/s390-protos.h, 4006 config/s390/s390.c, config/s390/s390.h, config/s390/s390.md, 4007 config/sh/netbsd-elf.h, config/sh/sh.h, config/sh/vxworks.h, 4008 config/sparc/sol2.h, config/stormy16/stormy16.h: Update 4009 copyright. 4010 40112004-01-30 Dara Hazeghi <dhazeghi@yahoo.com> 4012 4013 PR bootstrap/9249 4014 * doc/install.texi: document --enable-__cxa_atexit option. 4015 * configure.ac: Disable __cxa_atexit if not supported. 4016 * configure: Regenerate. 4017 40182004-01-30 Herman A.J. ten Brugge <hermantenbrugge@home.nl> 4019 4020 PR target/12978 4021 * c4x.md: (movstrqi*) Use match_scratch instead of match_dup. 4022 Remove movstrqi_small because it conflicts with movstrqi_large. 4023 40242004-01-30 Kelley Cook <kcook@gcc.gnu.org> 4025 4026 * Makefile.in (abs_docdir, abs_srcdir): Define. 4027 (doc/%.dvi, doc/gccinstall.dvi): Use $(abs_docdir). 4028 40292004-01-30 Ulrich Weigand <uweigand@de.ibm.com> 4030 4031 PR optimization/12147 4032 * reload1.c (reload_reg_free_p): RELOAD_OTHER conflicts with 4033 RELOAD_FOR_OPADDR_ADDR. 4034 (reload_reg_reaches_end_p): RELOAD_FOR_OTHER_ADDRESS register 4035 might be reused as RELOAD_FOR_OPADDR_ADDR register. 4036 40372004-01-30 Jan Hubicka <jh@suse.cz> 4038 4039 * reload.c (get_secondary_mem): Fix updating of 4040 secondary_memlocs_elim_used. 4041 40422004-01-30 Andrew Pinski <pinskia@physics.uc.edu> 4043 4044 * toplev.c: Include alloc-pool.h. 4045 * Makefile.in (toplev.c): Update dependencies. 4046 40472004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr> 4048 4049 * config/sparc/sparc.h: Update copyright. 4050 40512004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr> 4052 4053 PR c/12818 4054 * varasm.c (const_hash_1) <STRING_CST>: Use the 4055 address to compute the hash value if flag_writable_strings. 4056 (compare_constant) <STRING_CST>: Compare the addresses 4057 if flag_writable_strings. 4058 (build_constant_desc): Do not copy the expression for a 4059 STRING_CST if flag_writable_strings. 4060 40612004-01-30 Jan Hubicka <jh@suse.cz> 4062 4063 PR c++/12850 4064 * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and 4065 initial pointers. 4066 * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS 4067 for functions that will be only inlined. 4068 (cgraph_mark_function_to_output): Likewise. 4069 (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear; 4070 do not clear function body. 4071 * tree-optimize.c (clear_decl_rtl): Use decl_function_context. 4072 (tree_rest_of_compilation): Reorganize the logic releasing function 4073 body to use callgraph datastructure. 4074 4075 * reload.c (secondary_memlocs_elim_used): New static variable. 4076 (get_secondary_mem): Update it. 4077 (find_reloads): Use it. 4078 4079 * alias.c (reg_base_value): Turn into varray. 4080 (reg_base_value_size): Kill. 4081 (old_reg_base_value): New deletable varray. 4082 (alias_invariant_size): New variable. 4083 (REG_BASE_VALUE): Update to use varray. 4084 (find_base_value): Likewise. 4085 (record_set): Likewise. 4086 (record_base_value): Likewise. 4087 (memrefs_conflict_p): Likewise. 4088 (record_set): Likewise 4089 (record_base_value): Likewise. 4090 (memrefs_conflict_p): Use alias_invariant_size. 4091 (init_alias_analysis): Use varray; set alias_invariant_size; 4092 rescale other arrays to be sized by maxreg. 4093 (end_alias_analysis): Save reg_base_value; clear alias_invariant_size. 4094 4095 * basic-block.h (PROP_POSTRELOAD): New macro. 4096 (CLEANUP_LOG_LINKS): New. 4097 * cfgcleanup.c (cleanup_cfg): Only PROP_LOG_LINKS when asked to. 4098 * toplev.c (rest_of_handle_life): Preserve LOG_LINKS trought cleanup_cfg. 4099 4100 * alloc-pool.c: Include hashtab.h 4101 (alloc_pool_descriptor): New structure 4102 (alloc_pool_hash): New global variable. 4103 (hash_descriptor, eq_descriptor, alloc_pool_descriptor): New. 4104 (create_alloc_pool): Update statistics. 4105 (free_alloc_pool): Likewise. 4106 (pool_alloc): Likewise. 4107 (output_info): New structure 4108 (print_statistics, dump_alloc_pool_statistics): New function. 4109 * alloc-pool.h (alloc_pool_def): Turn name to be constant. 4110 (dump_alloc_pool_statistics): Declare. 4111 * toplev.c (finalize): Dump statistics. 4112 4113 * varray.c: Include hashtab.h 4114 (varray_descriptor): New structure. 4115 (hash_descriptor, eq_descriptor, varray_descriptor, 4116 print_statistics): New static functions 4117 (varray_init, varray_grow): Update statistics 4118 (dump_varray_statistics): New function. 4119 * varray.h (dump_varray_statistics): Declare. 4120 * toplev.c (finalize): Call it. 4121 41222004-01-30 Ulrich Weigand <uweigand@de.ibm.com> 4123 4124 * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for 4125 s390*-*-* targets by specifying a 'nop' insn. 4126 * configure: Regenerate. 4127 41282004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr> 4129 4130 PR target/11475 4131 * config/sparc/sparc.md (movhi_lo_sum): Tighten predicates. 4132 41332004-01-29 Bruce Korb <bkorb@gnu.org> 4134 4135 * fixinc/inclhack.def(math_exception): bypass only for glibc. 4136 (matherr_decl): rename & relocate as exception_structure. 4137 This fix must precede the math_exception fix. 4138 * fixinc/fixincl.x: regen 4139 41402004-01-29 Richard Henderson <rth@redhat.com> 4141 4142 * c-parse.in (extension): Use itype. 4143 (SAVE_EXT_FLAGS): Don't allocate a tree. 4144 (RESTORE_EXT_FLAGS): Don't read a tree. 4145 41462004-01-29 Giovanni Bajo <giovannibajo@gcc.gnu.org> 4147 4148 * c-lex.c (c_lex): Rename to... 4149 (c_lex_with_flags): Add new parameter to get CPP flags. 4150 (c_lex): Thunk to c_lex_with_flags while keeping the old interface. 4151 * c-pragma.h (c_lex_with_flags): Declare. 4152 41532004-01-29 Roger Sayle <roger@eyesopen.com> 4154 4155 PR java/13824 4156 * tree.c (unsafe_for_reeval): Handle EXIT_BLOCK_EXPR nodes specially 4157 as their EXIT_BLOCK_LABELED_BLOCK operands can lead to unbounded 4158 recursion. 4159 41602004-01-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4161 4162 * pa.md: Change predicate of a peephole2 pattern from reg_or_0_operand 4163 to register_operand. 4164 41652004-01-28 Zack Weinberg <zack@codesourcery.com> 4166 4167 * config/ia64/ia64.md (fetchadd_acq_si, fetchadd_acq_di) 4168 (cmpxchg_acq_si, cmpxchg_acq_di): Exchange match_dup and 4169 match_operand expressions so that all match_dups appear 4170 lexically after their corresponding match_operands. 4171 41722004-01-28 Zack Weinberg <zack@codesourcery.com> 4173 Jim Wilson <wilson@specifixinc.com> 4174 4175 * config/ia64/ia64.c (ia64_split_tmode, ia64_split_tmode_move): 4176 Rewrite to use POST_INC/POST_DEC/POST_MODIFY instead of a 4177 scratch pointer. 4178 (ia64_secondary_reload_class): Delete case GR_REGS. 4179 * config/ia64/ia64.md (movti, *movti_internal, movtf, *movtf_internal): 4180 Do not allocate a scratch register. 4181 (reload_inti, reload_outti, reload_intf, reload_outtf): Delete. 4182 41832004-01-27 Zack Weinberg <zack@codesourcery.com> 4184 4185 * ia64.c (ia64_function_arg): When placing HFAs in integer 4186 registers, do not special case the mode used for complex 4187 types. Do not advance int_regs until the current register 4188 is full. 4189 41902004-01-28 Jan Hubicka <jh@suse.cz> 4191 4192 * function.c (allocate_struct_function): Do not initialize expr, emit 4193 and varasm. 4194 (prepare_function_start): Do it here. 4195 * c-parse.in (maybe_type_qual): Do not produce line number notes. 4196 41972004-01-28 Richard Sandiford <rsandifo@redhat.com> 4198 4199 * config/fp-bit.c (pack_d): When using paired doubles to implement 4200 a long double, round the high part separately. 4201 (unpack_d): Fix the case in which the high part is a power of two 4202 and the low part is a nonzero value of the opposite sign. 4203 42042004-01-27 Roger Sayle <roger@eyesopen.com> 4205 4206 * config/pa/pa.c (emit_move_sequence): Check that operand1 is a 4207 CONST_INT before using INTVAL. 4208 42092004-01-27 Ulrich Weigand <uweigand@de.ibm.com> 4210 4211 * config/s390/s390.h (TARGET_DEFAULT): Default to !TARGET_BACKCHAIN. 4212 * config/s390/s390.c (s390_return_addr_rtx): Fail for all but current 4213 frame if !TARGET_BACKCHAIN. 4214 * config/s390/s390.md ("allocate_stack"): Use pattern only if 4215 TARGET_BACKCHAIN. 4216 * doc/invoke.texi (-mbackchain/-mno-backchain): Document new default. 4217 42182004-01-27 Richard Sandiford <rsandifo@redhat.com> 4219 4220 PR target/7297 4221 * except.c (init_eh): Use a 5-word __jbuf for __builtin_setjmp(). 4222 42232004-01-27 Bob Wilson <bob.wilson@acm.org> 4224 4225 * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Remove SUBREG 4226 on CQImode and CHImode incoming arguments in register a7. 4227 (function_arg): Wrap BLKmode argument in register a7 in a PARALLEL. 4228 * config/xtensa/xtensa.h (BLOCK_REG_PADDING): Define. 4229 * config/xtensa/xtensa.md (movdi, movdf): Only call force_reg or 4230 xtensa_copy_incoming_a7 before reload. 4231 42322004-01-27 Ian Lance Taylor <ian@wasabisystems.com> 4233 4234 * config/arm/arm.c (output_return_instruction): Only restore IP 4235 into SP if frame_pointer_needed. 4236 42372004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr> 4238 4239 * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1 4240 for SCmode and DCmode if ARCH32. 4241 (sparc_va_arg): Handle SCmode and DCmode by reference if ARCH32. 4242 * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for TCmode 4243 if ARCH32. 4244 (BASE_RETURN_VALUE_REG): Return 32 for all FP modes except TFmode 4245 if ARCH32. 4246 (BASE_OUTGOING_VALUE_REG): Likewise. 4247 42482004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr> 4249 4250 PR target/10904 4251 PR target/13058 4252 * config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): New. 4253 Forbid mode changes from SImode for lower FP regs if ARCH64. 4254 42552004-01-27 Jakub Jelinek <jakub@redhat.com> 4256 4257 * config/i386/i386.c (ix86_constant_alignment): Decrease alignment 4258 of long string literals from 32 bytes to sizeof (void *) when !-Os 4259 and to 1 with -Os. 4260 42612004-01-27 Kaz Kojima <kkojima@gcc.gnu.org> 4262 4263 PR optimization/13567 4264 * cse.c (cse_basic_block): Call cse_insn with a non-null 4265 libcall_insn for the last SET insn of a no-confilict block. 4266 42672004-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 4268 4269 * system.h (CHAR_BITFIELD): Delete. 4270 (BOOL_BITFIELD): New. 4271 * c-decl.c (c_scope): Use BOOL_BITFIELD. 4272 * gengtype-lex.l: Recognize BOOL_BITFIELD instead of CHAR_BITFIELD. 4273 42742004-01-26 J"orn Rennecke <joern.rennecke@superh.com> 4275 4276 * doc/tm.texi: Insert some weasel words when LOAD_EXTEND_OP 4277 may or may not return non-NIL. 4278 * postreload.c (reload_cse_simplify_operands): In LOAD_EXTEND_OP code, 4279 check CANNOT_CHANGE_MODE_CLASS 4280 42812004-01-26 Jeff Law <law@redhat.com> 4282 4283 * doc/contrib.texi: Minor cleanup for Paolo Carlini's entry. Add 4284 acute accents for Petur Runolfsson's entry. 4285 4286 42872004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr> 4288 4289 Backport from mainline: 4290 4291 2004-01-23 Eric Botcazou <ebotcazou@act-europe.fr> 4292 Olivier Hainque <hainque@act-europe.fr> 4293 4294 * fold-const.c (fold_binary_op_with_conditional_arg): Only 4295 build a COMPOUND_EXPR if 'arg' is really a SAVE_EXPR. 4296 42972004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr> 4298 4299 PR target/13666 4300 * config/sparc/sparc.c (function_arg_union_value): New function. 4301 (function_arg): Use it to deal with unions. 4302 (function_value): Likewise. Define 'regbase' only for ARCH64. 4303 Replace a conditional statement by a simpler one. 4304 43052004-01-26 Richard Sandiford <rsandifo@redhat.com> 4306 4307 * config/mips/mips.c (mips16_optimize_gp): Delete. 4308 (mips_reorg): Don't call it. 4309 43102004-01-25 Richard Sandiford <rsandifo@redhat.com> 4311 4312 * config/mips/mips.c (mips_offset_within_object_p): New function. 4313 (mips_symbolic_constant_p): Use it in the SYMBOL_SMALL_DATA and 4314 SYMBOL_CONSTANT_POOL cases. Also use it for SYMBOL_GENERAL if the 4315 ABI has 64-bit pointers and the object file only allows 32-bit symbols. 4316 43172004-01-25 Eric Botcazou <ebotcazou@act-europe.fr> 4318 4319 PR bootstrap/13853 4320 * cfgcleanup.c (try_optimize_cfg): Explicitly test against 0. 4321 43222004-01-25 Richard Sandiford <rsandifo@redhat.com> 4323 4324 * config/mips/mips-protos.h (mips_reg_mode_ok_for_base_p): Delete. 4325 (mips_regno_mode_ok_for_base_p): Declare. 4326 * config/mips/mips.h (ARG_POINTER_REGNUM): Renumber to 77. 4327 (FRAME_POINTER_REGNUM): Renumber to 78. 4328 (FIRST_PSEUDO_REGISTER): Update comment accordingly. 4329 (BASE_REG_P, GP_REG_OR_PSEUDO_STRICT_P): Delete. 4330 (GP_REG_OR_PSEUDO_NONSTRICT_P): Delete. 4331 (REGNO_MODE_OK_FOR_BASE_P): Use mips_regno_mode_ok_for_base_p. 4332 (REG_MODE_OK_FOR_BASE_P): Likewise. 4333 * config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Change 4334 entry for 77 to "$arg" and entry for 78 to "$frame". 4335 (mips_regno_to_class): Map 77 and 78 to ALL_REGS. 4336 (mips_reg_mode_ok_for_base_p): Remove. 4337 (mips_regno_mode_ok_for_base_p): New function, derived from old 4338 BASE_REG_P macro. Don't enforce the mips16 stack pointer 4339 restrictions unless we're being strict. 4340 (mips_valid_base_register_p): Use mips_regno_mode_ok_for_base_p. 4341 43422004-01-24 Kazu Hirata <kazu@cs.umass.edu> 4343 4344 * doc/frontends.texi: Update copyright. 4345 * doc/gcov.texi: Likewise. 4346 * doc/gty.texi: Likewise. 4347 * doc/sourcebuild.texi: Likewise. 4348 43492004-01-24 Kazu Hirata <kazu@cs.umass.edu> 4350 4351 * config/h8300/coff.h: Update copyright. 4352 * config/h8300/elf.h: Likewise. 4353 * config/h8300/h8300-protos.h: Likewise. 4354 * config/h8300/h8300.c: Likewise. 4355 * config/h8300/h8300.h: Likewise. 4356 * config/h8300/h8300.md: Likewise. 4357 43582004-01-24 Hartmut Penner <hpenner@de.ibm.com> 4359 4360 PR target/13674 4361 * config/rs6000/rs6000.md (movdf_hardfloat64): Do not disparage 4362 loading into GPR. 4363 43642004-01-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 4365 4366 PR optimization/12440 4367 * loop.c: Include ggc.h. 4368 (loop_optimize): Run garbage collector between optimization of loops. 4369 * Makefile.in (loop.o): Add GGC_H dependency. 4370 43712004-01-24 Jakub Jelinek <jakub@redhat.com> 4372 4373 * simplify-rtx.c (simplify_relational_operation): Don't 4374 simplify address == constant into address + -constant == 0. 4375 43762004-01-24 Kazu Hirata <kazu@cs.umass.edu> 4377 4378 * gcc.c (process_command): Don't internationalize the 4379 Copyright message. 4380 * mips-tfile.c (main): Likewise. 4381 43822004-01-23 Kazu Hirata <kazu@cs.umass.edu> 4383 4384 * recog.c: Fix a typo in copyright. 4385 43862004-01-23 Kazu Hirata <kazu@cs.umass.edu> 4387 4388 * alias.c, basic-block.h, c-common.c, c-common.h, 4389 c-cppbuiltin.c, c-pragma.c, c-pretty-print.c, c-semantics.c, 4390 calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c, 4391 combine.c, cppcharset.c, cpptrad.c, cse.c, cselib.c, cselib.h, 4392 defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c, 4393 expr.h, fold-const.c, function.h, gcc.c, gcse.c, genattrtab.c, 4394 genautomata.c, genconditions.c, genflags.c, gengtype.c, 4395 genopinit.c, genrecog.c, gensupport.c, ggc-zone.c, graph.c, 4396 haifa-sched.c, integrate.c, langhooks-def.h, langhooks.c, 4397 langhooks.h, local-alloc.c, optabs.c, optabs.h, postreload.c, 4398 ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c, 4399 rtlanal.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h, 4400 target.h, targhooks.c, toplev.h, tree-inline.c, 4401 unwind-dw2-fde.h, unwind-pe.h, unwind.h, varray.c, varray.h: 4402 Update copyright. 4403 44042004-01-23 Bob Wilson <bob.wilson@acm.org> 4405 4406 * config/xtensa/xtensa.c (xtensa_va_arg): Handle complex values as 4407 separate real and imaginary parts. 4408 * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Define. 4409 44102004-01-23 Richard Henderson <rth@redhat.com> 4411 4412 PR opt/12941 4413 * combine.c (SHIFT_COUNT_TRUNCATED): Provide default value. 4414 (simplify_comparison): Don't simplify (eq (zero_extract c 1 r) 0) 4415 if SHIFT_COUNT_TRUNCATED is set. 4416 44172004-01-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4418 4419 * fixinc/inclhack.def (alpha___extern_prefix): Renamed to ... 4420 (alpha___extern_prefix_sys_stat): ... this. 4421 Apply to <sys/mount.h>, too. 4422 Tweak to match more variations. 4423 * fixinc/tests/base/sys/stat.h: Adapt for new hackname. 4424 4425 * fixinc/inclhack.def (alpha___extern_prefix, 4426 alpha___extern_prefix_standards): New hacks to obey 4427 __PRAGMA_EXTERN_PREFIX. 4428 * fixinc/tests/base/testing.h [ALPHA___EXTERN_PREFIX_CHECK]: New 4429 test. 4430 * fixinc/tests/base/standards.h: Likewise. 4431 4432 * fixincl/inclhack.def (alpha_pthread): Tweak to match more 4433 variations. 4434 New testcase. 4435 * fixinc/tests/base/pthread.h: Handle it. 4436 4437 * fixinc/fixincl.x: Regenerate. 4438 44392004-01-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4440 4441 * fixinc/inclhack.def (bad_lval): Renamed to ... 4442 (alpha_bad_lval): ... this. 4443 Removed file list. 4444 Restrict to alpha*-dec-osf*. 4445 * fixinc/fixincl.x: Regenerate. 4446 * fixinc/tests/base/libgen.h: Remove, moving test ... 4447 * fixinc/tests/base/testing.h: ... here, reflecting new name. 4448 44492004-01-23 Ian Lance Taylor <ian@wasabisystems.com> 4450 4451 * doc/invoke.texi (Optimize Options): Note that --param arguments 4452 are subject to change without notice. 4453 44542004-01-23 Zack Weinberg <zack@codesourcery.com> 4455 4456 PR c/13814 4457 * c-decl.c (diagnose_mismatched_decls): Also discard a 4458 built-in if we encounter an old-style definition with the 4459 same name. 4460 44612004-01-23 Jakub Jelinek <jakub@redhat.com> 4462 4463 * config.gcc (powerpc*-*): Clear $with_cpu or $with_tune if it was 4464 set to default{32,64}. 4465 44662004-01-21 Jakub Jelinek <jakub@redhat.com> 4467 4468 * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR) 4469 [!__powerpc64__]: Corrected to handle kernels with changed ucontext. 4470 44712003-11-30 Jan Hubicka <jh@suse.cz> 4472 4473 * i386.c (ix86_emit_restore_regs_using_mov): Deal with large offsets. 4474 44752004-01-23 Eric Botcazou <ebotcazou@libertysurf.fr> 4476 4477 * config/sparc/sparc.c (scan_record_type): New function. 4478 (function_arg_slotno): Use it to determine which kinds of 4479 registers the record can be passed in. 4480 44812004-01-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4482 4483 * configure.ac (enable_werror): Fixed typo. 4484 * configure: Regenerate. 4485 44862004-01-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4487 4488 * config.gcc (mips-sgi-irix6*o32): Removed. 4489 * config/mips/iris6-o32-as.h: Likewise. 4490 * config/mips/iris6-o32-gas.h: Likewise. 4491 * config/mips/iris6-o32.h: Likewise. 4492 44932004-01-22 Bob Wilson <bob.wilson@acm.org> 4494 4495 * config/xtensa/xtensa.c (function_arg): Generalize logic so that it 4496 handles complex and vector modes. 4497 44982004-01-22 Daniel Jacobowitz <drow@mvista.com> 4499 4500 * c-semantics.c (genrtl_while_stmt, genrtl_do_stmt_1) 4501 (genrtl_for_stmt): Remove emit_nop calls. 4502 45032004-01-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4504 4505 PR target/13713 4506 PR target/13324 4507 * pa.md (movstrsi_prereload, movstrsi_postreload, movstrdi_prereload, 4508 movstrdi_postreload, clrstrsi_prereload, clrstrsi_postreload, 4509 clrstrdi_prereload, clrstrdi_postreload): Fix constraints. 4510 45112004-01-22 Daniel Jacobowitz <drow@mvista.com> 4512 4513 * config/arm/arm.c: Include "debug.h". 4514 (thumb_pushpop): Take two new arguments. Add some commentary. 4515 Output frame information when pushing. 4516 (thumb_exit, thumb_unexpanded_epilogue): Update calls to 4517 thumb_pushpop. 4518 (thumb_output_function_prologue): Likewise. Accumulate a CFA 4519 offset, and pass it to thumb_pushpop. Output CFI information. 4520 (thumb_expand_prologue): Add some frame-related markers and notes. 4521 45222004-01-22 Ulrich Weigand <uweigand@de.ibm.com> 4523 4524 * config/s390/s390.c (s390_frame_info): Allow large frame sizes 4525 for TARGET_64BIT. 4526 (s390_arg_frame_offset): Change return type to HOST_WIDE_INT. 4527 * config/s390/s390-protos.h (s390_arg_frame_offset): Likewise. 4528 45292004-01-22 Kazu Hirata <kazu@cs.umass.edu> 4530 4531 * doc/tm.texi (CASE_VECTOR_PC_RELATIVE): Mention that the 4532 macro need not be defined if jump-tables should contain 4533 relative addresses only when -fPIC or -fPIC is in effect. 4534 45352004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr> 4536 4537 * config/sparc/sparc.c (function_arg_slotno): Use 4538 FLOAT_TYPE_P to detect FP fields in structures. 4539 (function_arg_record_value_1): Likewise. 4540 (function_arg_record_value_2): Likewise. 4541 45422004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr> 4543 4544 PR target/13559 4545 * config/sparc/sparc.c (function_arg_record_value_3): Revert 4546 to 'word_mode' once the first slot has been filled. 4547 45482004-01-22 Olivier Hainque <hainque@act-europe.fr> 4549 4550 * config/sparc/sparc.c (function_arg_record_value_1): Fix 4551 computation of the number of integer registers required. 4552 45532004-01-22 Hartmut Penner <hpenner@de.ibm.com> 4554 4555 * gcc/config/rs6000/rs6000.c (function_arg) Handle 4556 vector register special in function without prototype. 4557 (function_arg_advance): Vector parameters get always 4558 GPRs allocated for the linux64 target. 4559 45602004-01-21 Andrew Pinski <apinski@apple.com> 4561 4562 PR target/13785 4563 * config/rs6000/rs6000.md (call_value): Force operand 4564 1 not operand 0 into a register. 4565 45662004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4567 4568 * pa-protos.h: Update copyright. 4569 * pa.h: Likewise. 4570 * pa.md: Likewise. 4571 4572 * fixinc/inclhack.def (hpux10_stdio_declarations, ultrix_const3, 4573 ultrix_locale, ultrix_stdlib, ultrix_strings, ultrix_sys_time, 4574 ultrix_unistd): New hacks. 4575 * fixinc/tests/base/stdio.h (HPUX10_STDIO_DECLARATIONS_CHECK, 4576 ULTRIX_CONST2_CHECK): Add checks. 4577 * fixinc/tests/base/stdlib.h (ULTRIX_STDLIB_CHECK): Likewise. 4578 * fixinc/tests/base/strings.h (ULTRIX_STRINGS2_CHECK): Likewise. 4579 * fixinc/tests/base/unistd.h (ULTRIX_UNISTD_CHECK): Likewise. 4580 * fixinc/tests/base/sys/time.h (ULTRIX_SYS_TIME_CHECK): Likewise. 4581 * fixinc/tests/base/locale.h: New file. 4582 * fixincl.x: Rebuilt. 4583 45842004-01-21 Andreas Jaeger <aj@suse.de> 4585 Michael Matz <matz@suse.de> 4586 4587 * doc/extend.texi (Extended Asm): Clarify memory clobber. 4588 45892004-01-21 Zack Weinberg <zack@codesourcery.com> 4590 4591 * c-decl.c (merge_decls): Kill different_binding_level and 4592 different_tu arguments; simplify throughout. 4593 (duplicate_decls): Likewise. 4594 (pushdecl, merge_translation_unit_decls): Update calls to 4595 duplicate_decls. 4596 45972004-01-20 Kelley Cook <kcook@gcc.gnu.org> 4598 4599 PR bootstrap/12730 4600 * configure.ac: Delete definition and subsitution of docdir. 4601 Add info, man, srcman and srcinfo to target hooks. Create doc/ 4602 directory. 4603 * configure: Regenerate. 4604 * Makefile.in: Don't substitute docdir and delete all references 4605 throughout. 4606 (MAKEINFOFLAGS): Define. 4607 (stmp-docobjdir): Delete. 4608 (INFOFILES, MANFILES): Define. 4609 (info): Call lang.info, srcinfo and lang.srcinfo. 4610 (generated-manpages): Call lang.man, srcman and lang.srcman. 4611 (srcinfo, srcman): New rules to copy back files to source directory. 4612 (doc/%.info, doc/%.dvi, doc/%.1, doc/%.7): New implict rule. 4613 (install-man): Revamp rule. 4614 (clean): Update dvi directory. 4615 (distclean): Delete TAGS from front end directorys. 4616 (maintainer-clean): Delete all document files in source directory. 4617 4618 objc/Make-lang.in (objc.man, objc.info): Dummy entries. 4619 (objc.srcman, objc.srcinfo): Likewise. 4620 46212004-01-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 4622 4623 * Makefile.in (pretty-print.o): Depend on $(CONFIG_H) and 4624 $(SYSTEM_H). 4625 (print-rtl1.o): Depend on $(SYSTEM_H). 4626 46272004-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4628 4629 * pa-protos.h (compute_frame_size): Use HOST_WIDE_INT for frame sizes. 4630 * pa.c (store_reg, store_reg_modify, load_reg, set_reg_plus_d): 4631 Likewise. Handle frames larger than 0x7fffffff on 64-bit ports. 4632 (emit_move_sequence): Check scratch_reg first in various if statements. 4633 Extend source simplification to handle all 64-bit CONST_INTs. 4634 (pa_output_function_prologue): Use HOST_WIDE_INT_PRINT_DEC for printing 4635 frame size. 4636 (hppa_expand_prologue, hppa_expand_epilogue): Use HOST_WIDE_INT for 4637 frame offset calculations. 4638 * pa.h (NEW_HP_ASSEMBLER): Add comment. 4639 (MAX_LEGIT_64BIT_CONST_INT, MIN_LEGIT_64BIT_CONST_INT, 4640 LEGITIMATE_64BIT_CONST_INT_P): Define. 4641 (LEGITIMATE_CONSTANT_P): Use LEGITIMATE_64BIT_CONST_INT_P. Treat 4642 any CONST_INT as legitimate during and after reload. 4643 (VAL_32_BITS_P, INT_32_BITS): Define. 4644 (LEGITIMIZE_RELOAD_ADDRESS): Handle large frame offsets. 4645 46462004-01-21 Alan Modra <amodra@bigpond.net.au> 4647 4648 * config/rs6000/sysv4.h (DWARF2_FRAME_REG_OUT): Define. 4649 * dwarf2out.c (output_cfi): Map regs using DWARF2_FRAME_REG_OUT. 4650 * doc/tm.texi (DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Document. 4651 46522004-01-20 Geoffrey Keating <geoffk@apple.com> 4653 4654 * alias.c (new_alias_set): Mark last_alias_set for PCH. 4655 (get_varargs_alias_set): Rename 'set' to 'varargs_set' and mark it 4656 for PCH. 4657 (get_frame_alias_set): Likewise, except rename it to 'frame_set'. 4658 * config/rs6000/rs6000.c (rs6000_sr_alias_set): Mark for PCH. 4659 (get_TOC_alias_set): Mark 'set' for PCH. 4660 46612004-01-20 Richard Sandiford <rsandifo@redhat.com> 4662 4663 * config/mips/mips.c (mips_load_call_address): Make the call insn 4664 use $gp if it could be calling a lazy binding stub. 4665 46662004-01-20 Denis Chertykov <denisc@overta.ru> 4667 4668 PR bootstrap/13735 4669 * config/avr/avr.h (BASE_REG_CLASS): Don't permit to use X 4670 register as pointer after reload. 4671 46722004-01-20 Eric Botcazou <ebotcazou@libertysurf.fr> 4673 4674 PR target/13557 4675 * config/sparc/sparc.c (function_arg): Reorder the cases. 4676 46772004-01-19 Kelley Cook <kcook@gcc.gnu.org> 4678 4679 * Makefile.in (target_noncanonical, program_transform_name): Use 4680 immediate define instead of deferred. 4681 (GCC_INSTALL_NAME, GCC_TARGET_INSTALL_NAME, CPP_INSTALL_NAME, 4682 PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, GCOV_INSTALL_NAME, 4683 GCCBUG_INSTALL_NAME): Define via a immediate $(shell) instead of 4684 deferred backquote. 4685 46862004-01-19 Richard Henderson <rth@redhat.com> 4687 4688 * config/alpha/alpha.c (aligned_memory_operand): Check MEM_ALIGN, 4689 don't check memory mode. 4690 (unaligned_memory_operand): Likewise. 4691 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Don't 4692 abort for op0 not MEM. 4693 4694 * config/alpha/alpha.c (alpha_expand_mov_nobwx): If the destination 4695 is not a reg, copy to a scratch first. 4696 (aligned_loadqi, aligned_loadhi, unaligned_loadqi, unaligned_loadhi, 4697 unaligned_loadqi_le, unaligned_loadqi_be, unaligned_loadhi_le, 4698 unaligned_loadhi_be): Expect op0 in DImode; don't SUBREG. 4699 (reload_inqi, reload_inhi): Fix mode of op0. 4700 (reload_inqi_help, reload_inhi_help, reload_outqi_help, 4701 reload_outhi_help): Likewise. Use define_insn_and_split. 4702 4703 * config/alpha/alpha.md (call peepholes): Check for REG_NORETURN 4704 as well as $29 dead. 4705 47062004-01-19 Eric Botcazou <ebotcazou@libertysurf.fr> 4707 4708 * config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): New. Emit 4709 "tls_object" for thread-local objects. 4710 * config/sparc/sparc.c (sparc_elf_asm_named_section): Emit 4711 "#tls" for thread-local sections. 4712 * configure.ac (thread-local checks): Specify --fatal-warnings in 4713 every binutils-specific checks. For sparc*-*-*, test whether the 4714 OS is Solaris and the tools are native and act accordingly. 4715 * configure: Rebuild. 4716 47172004-01-19 Jeff Law <law@redhat.com> 4718 4719 * contrib.texi: Update Paolo Carlini's entry. New entries for 4720 Jerry Quinn and Petur Runolfsson. 4721 47222004-01-19 Richard Henderson <rth@redhat.com> 4723 4724 * alpha.h (HARD_REGNO_MODE_OK): Disallow SImode in FP regs. 4725 * alpha.md (UNSPEC_NT_LDA): Remove. 4726 (UNSPEC_CVTLQ, cvtlq): New. 4727 (extendsidi2_1): Rename from extendsidi2_nofix; remove f/f. 4728 (extendsidi2_fix): Remove. 4729 (extendsidi2 splitter): Use cvtlq. 4730 (extendsidi2 fp peepholes): Remove. 4731 (cvtql): Use SFmode instead of SImode. 4732 (fix_trunc?fsi): Update to match. 4733 (floatsisf2_ieee, floatsisf2, floatsidf2_ieee, floatsidf2): New. 4734 (movsi): Rename from movsi_nofix, remove f alternatives. 4735 (movsi_nt_vms): Similarly. 4736 (movsi_fix, movsi_nt_vms_fix): Remove. 4737 (nt_lda): Remove. 4738 * alpha.c (alpha_expand_prologue): Use adddi3, not nt_lda. 4739 47402004-01-19 Jan Hubicka <jh@suse.cz> 4741 4742 * cgraph.c (cgraph_remove_node): Fix removal from linked list. 4743 * cgraphunit.c (cgraph_finalize_compilation_unit): Clear next_needed 4744 list. 4745 (cgraph_remove_unreachable_nodes): New function 4746 (cgraph_decide_inlining_of_small_function): Fix pasto. 4747 (cgraph_decide_inlining_incrementally): Fix pasto. 4748 (cgrpah_decide_inlining): Likewise; remove unreachable nodes. 4749 47502004-01-18 Roger Sayle <roger@eyesopen.com> 4751 4752 * builtins.c (expand_builtin_expect_jump): Fix thinko of reusing 4753 live "next" variable, which can lead to an infinite loop. 4754 47552004-01-18 Daniel Jacobowitz <drow@mvista.com> 4756 4757 * final.c (final_scan_insn): Make non-static again. 4758 * output.h (final_scan_insn): Re-add prototype. 4759 * config/arc/arc.c (arc_output_function_epilogue): Add NULL 4760 to final_scan_insn call. 4761 * config/cris/cris.c (cris_target_asm_function_epilogue): Likewise. 4762 * config/mips/mips.c (mips_output_conditional_branch): Likewise. 4763 * config/pa/pa.c (output_lbranch, output_call): Likewise. 4764 * config/sh/sh.c (print_slot): Likewise. 4765 * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Likewise. 4766 (output_sibcall, sparc_flat_function_epilogue): Likewise. 4767 47682004-01-18 Jan Hubicka <jh@suse.cz> 4769 4770 * basic-block.h (try_redirect_by_replacing_jump): Declare. 4771 * cfgcleanup.c (try_optimize_cfg): Use it. 4772 * cfgrtl.c (try_redirect_by_replacing_jump): Export. 4773 (rtl_redirect_edge_and_branch, cfg_layout_redirect_edge_and_branch): 4774 Kill hack. 4775 (cfg_layout_merge_blocks): Use try_redirect_by_replacing_jump. 4776 47772004-01-18 Andrew Pinski <pinskia@physics.uc.edu> 4778 4779 * config/rs6000/altivec.h: Wrap C++ functions in extern "C++" 4780 block. 4781 4782 * config/rs6000/rs6000.c (rs6000_special_round_type_align): 4783 Check for NULL in the chain and remove repeated code. 4784 47852004-01-18 Jan Hubicka <jh@suse.cz> 4786 4787 * coverage.c (checksum_string): Rename to ... 4788 (coverage_checksum_string): ... this one, Use crc32_string; recognize 4789 names containing random number and zero the number out in order to get 4790 match. 4791 47922004-01-18 Richard Sandiford <rsandifo@redhat.com> 4793 4794 * config/mips/mips.c (mips_got_alias_set): Mark for PCH. 4795 47962004-01-18 Joseph S. Myers <jsm@polyomino.org.uk> 4797 4798 * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi, 4799 doc/frontends.texi, doc/gcov.texi, doc/gty.texi, doc/install.texi, 4800 doc/invoke.texi, doc/libgcc.texi, doc/md.texi, doc/rtl.texi, 4801 doc/sourcebuild.texi, doc/standards.texi, doc/tm.texi, 4802 doc/trouble.texi: Remove trailing whitespace. 4803 48042004-01-18 Richard Sandiford <rsandifo@redhat.com> 4805 4806 PR target/7618 4807 * config/mips/mips.c: Include cfglayout.h. 4808 (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define. 4809 (mips_unspec_offset_high): Add temporary register argument. 4810 (mips_load_call_address): New function, split out from... 4811 (mips_expand_call): ...here. 4812 (mips_output_cplocal): New function. 4813 (mips_output_function_prologue, mips_output_function_epilogue): Use it. 4814 (mips_emit_loadgp): New function, split out from... 4815 (mips_expand_prologue): ...here. 4816 (mips_output_mi_thunk): New function. 4817 48182004-01-17 Roger Sayle <roger@eyesopen.com> 4819 4820 * builtins.c (expand_builtin_expect_jump): Fix mistake in my 4821 last patch. Use XEXP (x, 0) to get a LABEL_REF's CODE_LABEL. 4822 48232004-01-17 Andrew Pinski <pinskia@physics.uc.edu> 4824 4825 * config/rs6000/rs6000.c (rs6000_special_round_type_align): 4826 Return type is unsigned int not int. 4827 * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align): 4828 Likewise. 4829 48302004-01-18 Joseph S. Myers <jsm@polyomino.org.uk> 4831 4832 * doc/contrib.texi, doc/cppenv.texi, doc/extend.texi, 4833 doc/install.texi, doc/invoke.texi, doc/tm.texi: Consistently use 4834 "GNU/Linux" and "Microsoft Windows" terminology. 4835 48362004-01-18 Joseph S. Myers <jsm@polyomino.org.uk> 4837 4838 * doc/c-tree.texi, doc/compat.texi, doc/cpp.texi, 4839 doc/cppopts.texi, doc/extend.texi, doc/install.texi, 4840 doc/interface.texi, doc/invoke.texi, doc/libgcc.texi, doc/md.texi, 4841 doc/objc.texi, doc/rtl.texi, doc/tm.texi, doc/trouble.texi: Use 4842 @smallexample instead of @example. 4843 48442004-01-17 Ziemowit Laski <zlaski@apple.com> 4845 4846 * objc/objc-act.c (build_objc_method_call): Use target 4847 hooks instead of macros to determine if ..._stret 4848 dispatchers should be used (NeXT runtime only). 4849 48502004-01-17 Daniel Jacobowitz <drow@mvista.com> 4851 4852 * rtl.h (emit_insn_before_sameloc, emit_jump_insn_before_sameloc) 4853 (emit_call_insn_before_sameloc, emit_insn_after_sameloc) 4854 (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): New 4855 macros. 4856 * reload1.c (emit_reload_insns): Use them. 4857 * emit-rtl.c (emit_insn_before_sameloc, emit_insn_after_sameloc) 4858 (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): Check 4859 for NULL PATTERN. 4860 48612004-01-17 Daniel Jacobowitz <drow@mvista.com> 4862 4863 * final.c (SEEN_BB, SEEN_NOTE, SEEN_EMITTED): Define. 4864 (final_scan_insn): Update to take an additional SEEN argument. Emit 4865 a line note after the prologue. Make static. 4866 (line_note_exists): Remove. 4867 (final): Don't initialize line_note_exists. Update call to 4868 final_scan_insn. 4869 * output.h (final_scan_insn): Remove prologue. 4870 * function.c (set_insn_locators): Update comment. 4871 (thread_prologue_and_epilogue_insns): Add a comment. 4872 48732004-01-17 Joseph S. Myers <jsm@polyomino.org.uk> 4874 4875 * doc/invoke.texi, doc/standards.texi: Point to 3.4 version of 4876 c99status.html. 4877 48782004-01-17 Andrew Pinski <pinskia@physics.uc.edu> 4879 4880 PR target/10781 4881 * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align): 4882 Prototype. 4883 * config/rs6000/rs6000.c (rs6000_special_round_type_align): 4884 New function. 4885 * config/rs6000/linux64.h (ROUND_TYPE_ALIGN): Use it. 4886 * config/rs6000/aix.h (ROUND_TYPE_ALIGN): Likewise. 4887 * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Likewise. 4888 48892004-01-17 Jan Hubicka <jh@suse.cz> 4890 4891 * toplev.c (rest_of_handle_reorder_blocks): Fix pasto in previous 4892 commit. 4893 4894 * toplev.c (HAVE_conditional_execution): Provide default. 4895 (rest_of_handle_reorder_blocks): For conditional_execution target 4896 update liveness once after all transformations 4897 (rest_of_compilation): Do crossjumping before ce3. 4898 48992004-01-17 J. Brobecker <brobecker@gnat.com> 4900 4901 * dwarf2out.c (is_subrange_type): Renamed from is_ada_subrange_type(). 4902 Remove checks for is_ada() and TREE_UNSIGNED. 4903 (subrange_type_die): Emit a byte_size attribute if the subrange 4904 type size is different from the base type size. 4905 (modified_type_die): Replace call to is_ada_subrange_type() by 4906 call to is_subrange_type(). 4907 49082004-01-16 Mark Mitchell <mark@codesourcery.com> 4909 4910 * configure.ac: Do not do internal checking or -Werror by default. 4911 * configure: Regenerated. 4912 4913 * doc/include/gcc-common.texi (DEVELOPMENT): @clear it. 4914 * version.c (version_string): Mark as prerelease. 4915 49162004-01-16 Andrew Pinski <pinskia@physics.uc.edu> 4917 4918 * config/sh/sh.c: Include ggc.h. 4919 49202004-01-17 Jan Hubicka <jh@suse.cz> 4921 4922 * c-common.c (c_estimate_num_insns_1): Handle builtin_constant_p and 4923 builtin_expect specially. 4924 * params.def (PARAM_MAX_INLINE_INSNS_AUTO): Set to 100. 4925 (PARAM_LARGE_FUNCTION_INSNS): Set to 3000. 4926 * invoke.texi (max-inline-insns-single): Set to 100. 4927 (large-function-insns): Set to 3000. 4928 49292004-01-16 Jan Hubicka <jh@suse.cz> 4930 4931 * i386.md (load_tp_di): Fix pasto. 4932 4933 PR opt/13608 4934 * i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function. 4935 4936 * c-pretty-print.c (pp_c_type_cast, pp_c_abstract_declarator, 4937 pp_c_character_constant, pp_c_floating_constant, 4938 pp_c_additive_expression, pp_c_shift_expression, 4939 pp_c_equality_expression, pp_c_and_expression, 4940 pp_c_exclusive_or_expression, pp_c_inclusive_or_expression, 4941 pp_c_logical_and_expression): Remove inline modifier. 4942 * dwarf2out.c (get_AT): Likewise. 4943 * et-forest.c (et_splay): Likewise. 4944 * ra.h (ra_alloc, ra_calloc): Likewise 4945 49462004-01-16 Kazu Hirata <kazu@cs.umass.edu> 4947 4948 * config/frv/frv-protos.h: Fix comment formatting. 4949 * config/frv/frv.c: Likewise. 4950 * config/frv/frv.h: Likewise. 4951 * config/frv/frv.md: Likewise. 4952 * config/frv/frvbegin.c: Likewise. 4953 * config/frv/frvend.c: Likewise. 4954 49552004-01-16 Kazu Hirata <kazu@cs.umass.edu> 4956 4957 * system.h (LINKER_DOES_NOT_WORK_WITH_DWARF2): Poison. 4958 * doc/tm.texi (PREFERRED_DEBUGGING_TYPE): Don't mention 4959 LINKER_DOES_NOT_WORK_WITH_DWARF2. 4960 (LINKER_DOES_NOT_WORK_WITH_DWARF2): Remove. 4961 49622004-01-16 J"orn Rennecke <joern.rennecke@superh.com> 4963 4964 PR 11864 4965 * postreload.c (reload_cse_simplify_operands): Don't remove 4966 implicit extension from LOAD_EXTEND_OP. 4967 49682004-01-16 Jan Hubicka <jh@suse.cz> 4969 4970 PR opt/11350 4971 * cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal 4972 after reload. 4973 * cfgrtl.c (rtl_can_merge_blocks, cfglayout_can_merge_blocks, 4974 rtl_try_redirect_by_replacing_branch): Likewise. 4975 49762004-01-15 Geoffrey Keating <geoffk@apple.com> 4977 4978 PR pch/13689 4979 * alias.c (struct alias_set_entry): Mark for GC. 4980 (alias_sets): Make static, mark for GC. 4981 (record_alias_subset): Use GC to allocate alias structures. 4982 * varray.c (element): Make generic varrays GCed. 4983 4984 PR pch/13361 4985 * c-typeck.c (constructor_asmspec): Delete. 4986 (struct initializer_stack): Delete field 'asmspec'. 4987 (start_init): Delete saving of asmspec. 4988 (finish_init): Don't update constructor_asmspec. 4989 * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree. 4990 * stmt.c (expand_asm): Duplicate strings from tree. 4991 (expand_asm_operands): Likewise. 4992 * tree.c (tree_size): Update computation of size of STRING_CST. 4993 (make_node): Don't make STRING_CST nodes. 4994 (build_string): Allocate string with tree node. 4995 * tree.def (STRING_CST): Update comment. 4996 * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST. 4997 (tree_string): Place contents of string in tree node. 4998 * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string 4999 from tree. 5000 5001 * config/rs6000/rs6000.c (rs6000_va_arg): No need to special-case 5002 altivec operands. 5003 50042004-01-15 Kazu Hirata <kazu@cs.umass.edu> 5005 5006 * c-common.h: Fix comment formatting. 5007 * c-cppbuiltin.c: Likewise. 5008 * c-pragma.c: Likewise. 5009 * calls.c: Likewise. 5010 * collect2.c: Likewise. 5011 * cppcharset.c: Likewise. 5012 * cpptrad.c: Likewise. 5013 * dbxout.c: Likewise. 5014 * defaults.h: Likewise. 5015 * dwarf2out.c: Likewise. 5016 * fold-const.c: Likewise. 5017 * genautomata.c: Likewise. 5018 * genconditions.c: Likewise. 5019 * genflags.c: Likewise. 5020 * gengtype.c: Likewise. 5021 * integrate.c: Likewise. 5022 * loop.c: Likewise. 5023 * predict.c: Likewise. 5024 * sdbout.c: Likewise. 5025 50262004-01-15 Zack Weinberg <zack@codesourcery.com> 5027 5028 * config/ia64/ia64.md (*movti_internal): C output template 5029 extracted to ia64.c. 5030 (*movti_internal_reg): Delete. 5031 (reload_inti, reload_outti): Use the correct mode on operand 2 5032 in the first place, don't fix it up in the output template. 5033 (movtf, reload_ointf, reload_outtf): New expanders. 5034 (*movtf_internal): New define_insn_and_split. 5035 * config/ia64/ia64.c (ia64_split_timode): Rename to ia64_split_tmode; 5036 make static; do not hand TFmode CONST_DOUBLEs to split_double. 5037 (ia64_split_tmode_move): New function, body mostly pulled 5038 from ia64.md:*movti_internal. 5039 (ia64_function_arg_words): New function, extracted common 5040 logic from ia64_function_arg et seq. 5041 (ia64_function_arg_offset): Likewise. Handle correctly the 5042 case of a scalar quantity 16 bytes wide with only 8-byte alignment. 5043 (ia64_function_arg, ia64_function_arg_partial_nregs) 5044 (ia64_function_arg_advance): Use ia64_function_arg_words and 5045 ia64_function_arg_offset. 5046 (ia64_function_value): TCmode does not go in float regs. 5047 (ia64_secondary_reload_class): Also handle TFmode. 5048 * config/ia64/ia64-protos.h: Remove prototype for 5049 ia64_split_timode; add prototype for ia64_split_tmode_move. 5050 50512004-01-15 Kelley Cook <kcook@gcc.gnu.org> 5052 5053 * Makefile.in (MAINT): Make it an immediate assignment. 5054 50552004-01-15 Kazu Hirata <kazu@cs.umass.edu> 5056 5057 * config/m32r/m32r.md: Remove useless calls to gen_lowpart. 5058 50592004-01-15 Kazu Hirata <kazu@cs.umass.edu> 5060 5061 * config/h8300/coff.h: Replace Hitachi with Renesas. 5062 * config/h8300/elf.h: Likewise. 5063 * config/h8300/h8300-protos.h: Likewise. 5064 * config/h8300/h8300.c: Likewise. 5065 * config/h8300/h8300.h: Likewise. 5066 * config/h8300/h8300.md: Likewise. 5067 * config/h8300/lib1funcs.asm: Likewise. 5068 50692004-01-15 Andrew Pinski <apinski@apple.com> 5070 5071 * config/rs6000/rs6000.c (uses_TOC): Wrap #if TARGET_ELF 5072 around it. 5073 50742004-01-15 Kazu Hirata <kazu@cs.umass.edu> 5075 5076 * config/h8300/h8300.c (h8300_return_in_memory): New. 5077 (TARGET_STRUCT_VALUE_RTX): Likewise. 5078 (TARGET_RETURN_IN_MEMORY): Likewise. 5079 * config/h8300/h8300.h (STRUCT_VALUE): Remove. 5080 (RETURN_IN_MEMORY): Likewise. 5081 50822004-01-15 Richard Earnshaw <rearnsha@arm.com> 5083 5084 PR optimization/13375 5085 * gcse.c (handle_avail_expr): Just return if the source is not a 5086 single set. 5087 50882004-01-15 Richard Earnshaw <rearnsha@arm.com> 5089 Daniel Jacobowitz <drow@mvista.com> 5090 5091 * arm/lib1funcs.asm (ARM_FUNC_START): Correct interworking case. 5092 (EQUIV): Define. 5093 (ARM_FUNC_ALIAS): New macro. 5094 * arm/ieee754-df.S (gedf2, ledf2, nedf2, eqdf2): Use it. 5095 * arm/ieee754-sf.S (gesf2, lesf2, nesf2, eqsf2): Use it. 5096 50972004-01-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 5098 5099 PR optimization/12372 5100 * calls.c (expand_call): Add call_fusage data for stack arguments in 5101 constant calls. 5102 51032004-01-15 Alan Modra <amodra@bigpond.net.au> 5104 5105 * config/rs6000/rs6000.c (uses_TOC): Correct comment. Make static. 5106 (rs6000_elf_declare_function_name): Formatting. 5107 * config/rs6000/rs6000-protos.h (uses_TOC): Remove declaration. 5108 51092004-01-15 Jan Hubicka <jh@suse.cz> 5110 5111 PR bootstrap/13692 5112 * sched-deps.c (sched_analyze_1, sched_analyze_2): Fix thinko in 5113 previous patch. 5114 51152004-01-15 Richard Henderson <rth@redhat.com> 5116 5117 * config/alpha/alpha.h (REG_ALLOC_ORDER): Reorder fp regs after 5118 integer regs of the same call-savedness. 5119 51202004-01-15 Andreas Schwab <schwab@suse.de> 5121 5122 PR bootstrap/13562 5123 * config/m68k/m68k.c (output_move_const_into_data_reg): Clear cc 5124 status for NOTB/NOTW/NEGW methods. 5125 51262004-01-15 Kazu Hirata <kazu@cs.umass.edu> 5127 5128 * doc/invoke.texi: Update dump file names. Fix a typo. 5129 51302004-01-15 Kazu Hirata <kazu@cs.umass.edu> 5131 5132 * builtins.c (expand_builtin_va_end): Don't use 5133 EXPAND_BUILTIN_VA_END. 5134 * system.h (EXPAND_BUILTIN_VA_END): Poison. 5135 * config/d30v/d30v.h: Remove a commented-out definition of 5136 EXPAND_BUILTIN_VA_END. 5137 * config/stormy16/stormy16.h: Likewise. 5138 51392004-01-15 Kazu Hirata <kazu@cs.umass.edu> 5140 5141 * system.h (STRUCT_VALUE_INCOMING_REGNUM): Poison. 5142 * targhooks.c (default_struct_value_rtx): Don't use 5143 STRUCT_VALUE_INCOMING_REGNUM. 5144 51452004-01-15 Kelley Cook <kcook@gcc.gnu.org> 5146 5147 PR bootstrap/12744 5148 * configure.in: Revamp enable-generated-files-in-srcdir rule to define 5149 GENINSRC and not parsedir. Define srcextra as a langhook. 5150 * configure: Regenerate. 5151 * Makefile.in: Suppress default .l.c rule. Don't substitute 5152 parsedir and delete all references throughout. Conditionally define 5153 rule for srcextra dependent on GENINSRC. 5154 (stmp-docobjdir): Delete. 5155 (c-parse.o, gengtype-lex.o, gengtype-yacc.o): Use implicit build rule. 5156 (srcextra): Copy c-parse.y, c-parse.c, gengtype-lex.c, gengtype-yacc.c, 5157 and gengtype-yacc.h back to source directory. 5158 (maintainer-clean): Delete all parse files in source directory. 5159 (distclean): Delete generated files. 5160 5161 * objc/Make-lang.in (objc-parse.o): Use implicit build rule. 5162 (objc-parse.c, objc-parse.y): Don't use parsedir. 5163 (objc.srcextra): Copy objc-parse.y and objc-parse.c back to source 5164 directory if requested. 5165 (po-generated): Don't use parsedir. 5166 (objc.maintainer-clean): Delete above files from source directory. 5167 51682004-01-14 Kazu Hirata <kazu@cs.umass.edu> 5169 5170 * doc/tm.texi (FUNCTION_VALUE): Fix a typo. 5171 51722004-01-14 Kazu Hirata <kazu@cs.umass.edu> 5173 5174 * doc/tm.texi: Replace RETURN_IN_MEMORY with 5175 TARGET_RETURN_IN_MEMORY. 5176 51772004-01-15 Jan Hubicka <jh@suse.cz> 5178 5179 * builtins.c (std_expand_builtin_va_arg): Align operand when needed. 5180 * i386.c (init_cumulative_args): Set warn_sse; fix handling of variadic 5181 functions accepting SSE arguments 5182 (function_arg): Warn only when asked to warn. 5183 * i386.h (ix86_args): Add warn_sse/warn_mmx fiels. 5184 51852004-01-14 Joseph S. Myers <jsm@polyomino.org.uk> 5186 5187 * c-parse.in (stmts_and_decls): Make label at end of compound 5188 statement a hard error. 5189 51902004-01-14 Jan Hubicka <jh@suse.cz> 5191 5192 * cgraph.c (create_edge): Use local.redefined_extern_inline. 5193 * cgraph.h (cgraph_local_info): Sort fields by size; add 5194 redefined_extern_inline 5195 (cgraph_global_info): Sort fields by size. 5196 (cgraph_node): Likewise. 5197 * cgraphunit.c (cgraph_finalize_function): Se 5198 local.redefined_extern_inline on redefinition. 5199 (cgraph_analyze_function): Use it; fix formating. 5200 52012004-01-14 Jan Hubicka <jh@suse.cz> 5202 5203 PR c++/10776 5204 * sched-deps.c (trye_dependency_cache, anti_dependency_cache, 5205 outptu_dependency_cache, forward_dependency_cahe): Trun to vectors of 5206 bitmaps 5207 (cache_size): New variable 5208 (add_dependence): Update use; canonize early memory locations 5209 (sched_analyze_1): Likewise. 5210 (sched_analyze_2): Likewise. 5211 (init_dependency_caches): Initialize bitmaps. 5212 (free_dependency_caches): Free bitmaps 5213 52142004-01-14 Kazu Hirata <kazu@cs.umass.edu> 5215 5216 * calls.c: Replace STRICT_ARGUMENT_NAMING in comments with 5217 targetm.calls.strict_argument_naming(). 5218 * target.h: Likewise. 5219 52202004-01-14 Richard Henderson <rth@redhat.com> 5221 5222 PR debug/13231 5223 * dwarf2out.c (dwarf2out_stack_adjust): Skip prologue and epilogue 5224 instructions. 5225 52262004-01-14 Richard Henderson <rth@redhat.com> 5227 5228 PR c++/12491 5229 * except.c (struct eh_region): Add u.fixup.resolved. 5230 (resolve_one_fixup_region): Split out from ... 5231 (resolve_fixup_regions): ... here. 5232 52332004-01-14 Kazu Hirata <kazu@cs.umass.edu> 5234 5235 * config/mn10300/mn10300.h (STRUCT_VALUE): Change to 0. 5236 52372004-01-14 Kazu Hirata <kazu@cs.umass.edu> 5238 5239 * config/alpha/alpha.h (STRUCT_VALUE): Remove. 5240 * config/alpha/vms.h (STRUCT_VALUE_REGNUM): Remove #undef. 5241 (STRUCT_VALUE): Remove. 5242 52432003-01-14 Steven Bosscher <stevenb@suse.de> 5244 5245 * system.h: Poison PROMOTED_MODE 5246 * integrate.c (expand_inline_function): Don't mention the 5247 PROMOTED_MODE. 5248 * loop.c (update_giv_derive): Same. 5249 * tree.h (DECL_RTL): Same. 5250 52512004-01-14 J"orn Rennecke <joern.rennecke@superh.com> 5252 5253 PR target/9365 5254 * sh.c (gen_block_redirect): Add special handling of RETURN. 5255 (gen_far_branch) Don't call gen_stuff_delay_slot if there is no 5256 far branch target (i.e. it's a return). 5257 52582004-01-14 Kazu Hirata <kazu@cs.umass.edu> 5259 5260 * regrename.c (find_oldest_value_reg): Fix a warning. 5261 52622004-01-14 Richard Earnshaw <rearnsha@arm.com> 5263 5264 PR bootstrap/12527 5265 * config.gcc (arm*-*-linux*): Don't include unknown-elf.h in tm_file. 5266 Move linux-gas.h and linux-elf.h before aout.h. 5267 * arm/arm.h (INITIALIZE_TRAMPOLINE): Only define if not already. 5268 * arm/linux-elf.h (SUBTARGET_CPU_DEFAULT): Define. 5269 52702004-01-14 Kazu Hirata <kazu@cs.umass.edu> 5271 5272 * config/m32r/m32r.md: Use GEN_INT instead of gen_rtx 5273 (CONST_INT, VOIDmode, ...). 5274 52752004-01-14 Richard Earnshaw <rearnsha@arm.com> 5276 5277 * regrename.c (find_oldest_value_reg): If the replacement uses 5278 multiple hard registers, check that all of them are in CLASS. 5279 52802004-01-14 Jan Hubicka <jh@suse.cz> 5281 5282 * alias.c (get_alias_set): Initialize alias set to 0 when subset is 5283 impossible. 5284 52852004-01-14 Kelley Cook <kcook@gcc.gnu.org> 5286 5287 * Makefile.in: Define MAINT from --enable-maintainer-mode. 5288 52892004-01-14 Hartmut Penner <hpenner@de.ibm.com> 5290 5291 * gcc/config/rs6000/rs6000.c (rs6000_stack_info) 5292 Calculate always vrsave_mask if TARGET_ALTIVEC. 5293 (rs6000_emit_prologue): Emit code for vrsave 5294 only if TARGET_ALTIVEC_VRSAVE. 5295 (rs6000_emit_epilogue): Likewise. 5296 52972004-01-14 Eric Botcazou <ebotcazou@libertysurf.fr> 5298 5299 * config/sparc/sparc.md (tie_add32): Fix pasto. 5300 (tie_add64): Likewise. 5301 53022004-01-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 5303 5304 * config/i386/i386.md (*addqi_1_slp): Do not access operands[2]. 5305 53062004-01-13 Kazu Hirata <kazu@cs.umass.edu> 5307 5308 * config/iq2000/iq2000-protos.h: Fix comment formatting. 5309 * config/iq2000/iq2000.c: Likewise. 5310 * config/iq2000/iq2000.md: Likewise. 5311 53122004-01-14 J. Brobecker <brobecker@gnat.com> 5313 5314 * dwarf2out.c (is_ada_subrange_type): No longer check the TYPE_NAME. 5315 (subrange_type_die): Add handle for nameless subrange types. 5316 53172004-01-13 Kazu Hirata <kazu@cs.umass.edu> 5318 5319 * config/h8300/h8300-protos.h: Replace do_movsi with 5320 h8300_expand_movsi. 5321 * config/h8300/h8300.c (do_movsi): Change to 5322 h8300_expand_movsi. 5323 * config/h8300/h8300.md (movsi): Replace do_movsi with 5324 h8300_expand_movsi. 5325 (movsf): Likewise. 5326 53272004-01-13 Kazu Hirata <kazu@cs.umass.edu> 5328 5329 * config/h8300/h8300.c (dosize): Change to 5330 h8300_emit_stack_adjustment. Update callers. 5331 53322004-01-13 Kazu Hirata <kazu@cs.umass.edu> 5333 5334 * config/h8300/h8300.md (movstrictqi): Add an alternative with 5335 the source being post_inc. Tighten the predicate for the 5336 destination to register_operand. 5337 (movstricthi): Likewise. 5338 53392004-01-13 Kazu Hirata <kazu@cs.umass.edu> 5340 5341 * system.h (SHARED_BSS_SECTION_ASM_OP): Poison. 5342 * varasm.c (bss_section): Don't use SHARED_BSS_SECTION_ASM_OP. 5343 * doc/tm.texi (SHARED_BSS_SECTION_ASM_OP): Remove. 5344 53452004-01-14 Jan Hubicka <jh@suse.cz> 5346 5347 Partial fix PR c++/12850 5348 * cgraphunit.c (cgraph_finalize_function): Always ggc_collect when 5349 at zero nest level. 5350 53512004-01-13 Bernardo Innocenti <bernie@develer.com> 5352 5353 * config/m68k/netbsd-elf.h (REGISTER_NAMES): Add missing "argptr" 5354 pseudo-register. 5355 53562004-01-13 Devang Patel <dpatel@apple.com 5357 5358 PR debug/7078 5359 * dbxout.c (dbxout_symbol_name): Emit mangled names for 5360 NAMESPACE_DECL memebers. 5361 53622004-01-13 Andrew Pinski <pinskia@physics.uc.edu> 5363 5364 PR c++/12709 5365 * c-common.c (finish_fname_decls): Use the chain only if the 5366 tree is an expr_stmt. 5367 53682004-01-13 Vladimir Makarov <vmakarov@redhat.com> 5369 5370 * rtl.def: Add comment about new option in automata_option. 5371 5372 * genautomata.c (PROGRESS_OPTION): New macro. 5373 (progress_flag): New global variable. 5374 (gen_automata_option): Process `progress'. 5375 (transform_insn_regexps, check_unit_distributions_to_automata, 5376 make_automaton, NDFA_to_DFA, build_automaton, create_automata, 5377 expand_automata, write_automata): Print about the progress only if 5378 progress_flag. Remove fflush. 5379 (initiate_automaton_gen): Process command line flag `-progress'. 5380 5381 * doc/md.texi: Describe the new option. 5382 53832004-01-13 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 5384 5385 * cfg.c (dump_bb): Dump entry edges. 5386 53872004-01-13 Richard Earnshaw <rearnsha@arm.com> 5388 5389 * arm.c (thumb_legitimate_address_p): Only allow constant pool 5390 references from SImode. 5391 * arm.md (thumb_movhi_insn): Don't allow minipool references. 5392 53932004-01-13 Kazu Hirata <kazu@cs.umass.edu> 5394 5395 * system.h (TEXT_SECTION): Poison. 5396 * varasm.c (text_section): Don't use TEXT_SECTION. 5397 * config/sh/sh.c (sh_file_start): Fix a comment typo. 5398 * doc/tm.texi (TEXT_SECTION): Remove. 5399 54002004-01-13 Ben Elliston <bje@wasabisystems.com> 5401 5402 * doc/rtl.texi (Vector Operations): Remove defunct vec_const item. 5403 54042004-01-12 James E Wilson <wilson@specifixinc.com> 5405 5406 * unwind-libunwind.c: Delete. 5407 54082004-01-12 Zack Weinberg <zack@codesourcery.com> 5409 5410 PR 13656 5411 * c-decl.c (diagnose_mismatched_decls): Whenever newtype or 5412 oldtype is set, set *newtypep or *oldtypep too. Do not set 5413 them at the very end. 5414 (validate_proto_after_old_defn): Restructure for comprehensibility; 5415 make error messages clearer. 5416 54172004-01-12 Zack Weinberg <zack@codesourcery.com> 5418 5419 * varray.h (VARRAY_POP): Add checking variant, aborts on underflow. 5420 (VARRAY_TOP): Use VARRAY_CHECK so the access is bounds-checked. 5421 * varray.c: No need to prototype error. 5422 (varray_check_failed): Wrap long string onto two lines. 5423 (varray_underflow): New function. 5424 54252004-01-13 Steven Bosscher <stevenb@suse.de> 5426 5427 PR c++/13376 5428 * function.h (struct function): Kill `name' field. 5429 (current_function_name): Make it an extern function. 5430 * function.c (current_function_name): New function. 5431 * graph.c: Update all uses of current_function_name. 5432 * gcse.c: Likewise. 5433 * config/alpha/alpha.c, config/avr/avr.c, config/c4x/c4x.c, 5434 config/mips/mips.c, config/pdp11/pdp11.c: Likewise. 5435 * config/ip2k/ip2k.c (function_prologue): Use MAIN_NAME_P 5436 instead of a strcmp with "main". 5437 54382004-01-13 Jan Hubicka <jh@suse.cz> 5439 5440 * c-decl.c (diagnose_mismatched_decls): Fix warning calls. 5441 5442 * cgraphunit.c (cgraph_optimize_function): Always do 5443 optimize_inline_calls when there is always_inline callee. 5444 (cgraph_decide_inlining): Fix formating. 5445 * tree-inline.c (inlinable_function_p): Do sorry for alwaysinline 5446 functions. 5447 (expand_call_inline): Likewise. 5448 * toplev.h (sorry): Fix prototype. 5449 54502004-01-12 Roger Sayle <roger@eyesopen.com> 5451 5452 * builtins.c (expand_builtin_expect_jump): Simplify logic. Handle 5453 conditional jumps that drop through to unconditional jumps or the 5454 end of the sequence. 5455 54562004-01-13 Jan Hubicka <jh@suse.cz> 5457 5458 * alias.c (new_alias_set): Construct the alias_set varray. 5459 (init_alias_once): Don't do it here. 5460 54612004-01-12 Marc Espie <espie@openbsd.org> 5462 5463 * system.h: handle YYBYACC like YYBISON. 5464 54652004-01-12 Jonathan Merriman <jonm@dualitymedia.com> 5466 5467 PR target/10847 5468 * config.gcc: No longer includes conflicting header sparc/sol2.h when 5469 building on sparc64-*-openbsd*. 5470 54712004-01-12 Andrew Pinski <pinskia@physics.uc.edu> 5472 5473 PR debug/13539 5474 * dbxout.c (dbxout_type): Protected inheritance is not 5475 private but protected. 5476 54772004-01-12 Richard Sandiford <rsandifo@redhat.com> 5478 5479 * config/mips/mips.c (mips_symbolic_constant_p): Revert last patch. 5480 54812004-01-12 Kazu Hirata <kazu@cs.umass.edu> 5482 5483 PR optimization/12508. 5484 * combine.c (try_combine): Remove a dead set in a parallel 5485 even if its destination is a subreg. 5486 5487 Revert: 5488 2003-06-03 Kazu Hirata <kazu@cs.umass.edu> 5489 * combine.c (simplify_set): Don't move a subreg in SET_SRC to 5490 SET_DEST if WORD_REGISTER_OPERATIONS is not defined. 5491 54922004-01-12 Geoffrey Keating <geoffk@apple.com> 5493 5494 * real.c: Update copyright date. 5495 * emit-rtl.c: Likewise. 5496 * rtl.h: Likewise. 5497 * dwarf2out.c: Likewise. 5498 * config/rs6000/darwin-ldouble.c: Likewise. 5499 * config/rs6000/rs6000.md: Likewise. 5500 55012004-01-12 David Edelsohn <edelsohn@gnu.org> 5502 5503 * config/rs6000/rs6000.c (rs6000_init_libfuncs): Add AIX 5504 TFmode to SImode libfuncs. 5505 55062004-01-12 Roger Sayle <roger@eyesopen.com> 5507 5508 PR middle-end/11397 5509 * varasm.c (assemble_alias): Remove weak aliases from weak_decls. 5510 55112004-01-12 Jan Hubicka <jh@suse.cz> 5512 5513 PR opt/12826 5514 * loop.c (insert_loop_mem): Preffer VOLATILE memory references to be 5515 stored. 5516 5517 PR opt/12863 5518 * cfgcleanup.c (label_is_jump_target_p): Move to... 5519 * rtlanal.c (label_is_jump_target_p): ... here. 5520 * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Fix redirecting of fallthru 5521 edges unified with branch edges. 5522 55232004-01-12 Richard Earnshaw <rearnsha@arm.com> 5524 5525 * simplify-rtx.c (simplify_immed_subreg): Correctly extract the 5526 high word of an integral CONST_DOUBLE. 5527 55282004-01-12 Paul Brook <paul@codesourcery.com> 5529 5530 * simplify-rtx.c (simplify_plus_minus): Always generate canonical form. 5531 55322004-01-12 J"orn Rennecke <joern.rennecke@superh.com> 5533 5534 PR target/13585 5535 * sh-protos.h (check_use_sfunc_addr): Declare. 5536 * sh.c (extract_sfunc_addr, check_use_sfunc_addr): New functions. 5537 * sh.md (use_sfunc_addr): Use check_use_sfunc_addr in insn predicate. 5538 55392004-01-12 Jan Hubicka <jh@suse.cz> 5540 5541 * alias.c: Invlude varray.h 5542 (alias_sets): Turn into varray. 5543 (get_alias_set_entry): Use VARRAY; mark inline. 5544 (mems_in_disjoint_alias_sets_p): Mark inline. 5545 (record_alias_subset): Use varray. 5546 (init_alias_once): Initialize varray. 5547 (new_alias_set): Grow array. 5548 * varray.c: Make VARRAY_GENERIC_PTR non GTYized. 5549 55502004-01-12 Jan Hubicka <jh@suse.cz> 5551 5552 Partial fix for PR opt/10776 II 5553 * cselib.c: Include params.h 5554 (cselib_invalidate_mem): Limit amount of nonconflicting memory 5555 locations. 5556 * params.def (PARAM_MAX_CSELIB_MEMORY_LOCATIONS): New. 5557 * Makefile.in (cselib.o): Depend on params.h 5558 55592004-01-12 Richard Sandiford <rsandifo@redhat.com> 5560 5561 * combine.c (combine_simplify_rtx): Don't pass VOIDmode to 5562 simplify_unary_operation if the operand has a known mode. 5563 55642004-01-12 Hartmut Penner <hpenner@de.ibm.com> 5565 5566 PR target/13534 5567 * gcc/config/rs6000/rs6000.c (word_offset_memref_operand): New 5568 predicate to handle 'ld' conform addresses. 5569 * gcc/config/rs6000/rs6000.h (EXTRA_CONSTRAINT): New 'Y' 5570 contraint. 5571 (EXTRA_MEMORY_CONSTRAINT): Tell reload which constraint 5572 are memory contraints. 5573 * gcc/config/rs6000/rs6000-protos.h (word_offset_memref_operand): 5574 New prototype. 5575 * gcc/config/rs6000/rs6000.md (*movdf_hardfloat64): 5576 Change 'o' to 'Y' constraint. 5577 (*movdf_softfloat64): Ditto. 5578 55792004-01-12 Bernardo Innocenti <bernie@develer.com> 5580 5581 * gcc/config/m68k/m68k.md: Switch from the "*..." syntax to the 5582 brace-enclosed syntax in all C output statements. 5583 55842004-01-12 David Edelsohn <edelsohn@gnu.org> 5585 5586 PR target/13401 5587 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): 5588 Objective-C language type value is 14. 5589 55902004-01-12 Markus F.X.J. Oberhumer <markus@oberhumer.com> 5591 5592 PR c/12148 5593 * config/m68k/fpgnulib.c: Fix `-mshort' bugs: Use `long' instead of 5594 `int' in a number of places to make sure we always have a SImode 5595 and not a HImode. Add a 'L' suffix to a number of constants. 5596 55972004-01-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 5598 5599 * pa.c: Don't include obstack.h. 5600 5601 * pa.md: Correct constraint in pattern for loading PIC label address. 5602 56032004-01-11 Kaz Kojima <kkojima@gcc.gnu.org> 5604 5605 * config/sh/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Undefine 5606 before defining. 5607 56082004-01-11 Steven Bosscher <stevenb@suse.de> 5609 5610 PR fortran/9972 5611 * toplev.c (rest_of_handle_inline): Also consider functions 5612 for deferral if the language is GNU F77. 5613 56142004-01-11 Zack Weinberg <zack@codesourcery.com> 5615 5616 * c-decl.c (diagnose_arglist_conflict): Add missing space to 5617 diagnostic messages. 5618 56192004-01-11 Jakub Jelinek <jakub@redhat.com> 5620 5621 PR middle-end/13392 5622 * builtins.c (expand_builtin_expect_jump): Handle conditional jumps 5623 to drop through label. Don't fall back to SCC even when conditional 5624 jump has not been found. 5625 56262004-01-11 Jan Hubicka <jh@suse.cz> 5627 5628 * invoke.texi: Fix syntax error in previous patch. 5629 5630 Partial fix for PR opt/10776 5631 * Makefile.in (reload.o): Include param.h 5632 * params.def (PARAM_MAX_RELOAD_SEARCH_INSNS): New parameter. 5633 * reload.c: Include params.h. 5634 (find_equiv_reg): Work limiting check. 5635 * invoke.texi: Document. 5636 56372004-01-11 Richard Sandiford <rsandifo@redhat.com> 5638 5639 * config/mips/mips.c (mips_symbolic_constant_p): Don't allow 5640 out-of-bounds accesses to string constants. Simplify mips16 5641 case accordingly. 5642 56432004-01-11 Richard Sandiford <rsandifo@redhat.com> 5644 5645 PR optimization/13469 5646 * toplev.c (rest_of_compilation): Call purge_all_dead_edges after 5647 reload_cse_regs (-fnon-call-exceptions only). 5648 56492004-01-11 Kazu Hirata <kazu@cs.umass.edu> 5650 5651 * config/mcore/lib1.asm: Fix comment formatting. 5652 * config/mcore/mcore-elf.h: Likewise. 5653 * config/mcore/mcore.c: Likewise. 5654 * config/mcore/mcore.h: Likewise. 5655 * config/mcore/mcore.md: Likewise. 5656 56572004-01-10 Zack Weinberg <zack@codesourcery.com> 5658 5659 * c-decl.c (duplicate_decls): Break apart into... 5660 (diagnose_arglist_conflict, validate_proto_after_old_defn) 5661 (locate_old_defn, diagnose_mismatched_decls, merge_decls): 5662 ... these new functions. Restructure for comprehensibility. 5663 Remove various archaic special cases. Always report the 5664 location of the previous declaration when a diagnostic is issued. 5665 (redeclaration_error_message): Fold into diagnose_mismatched_decls. 5666 (match_builtin_function_types): Delete unnecessary forward declaration. 5667 56682004-01-10 Zack Weinberg <zack@codesourcery.com> 5669 5670 * genautomata.c (make_automaton, NDFA_to_DFA): 5671 Print progress bars with '.' characters instead of '*'. 5672 (build_automaton): Change notes to match. 5673 56742004-01-10 Kazu Hirata <kazu@cs.umass.edu> 5675 5676 * config/m32r/m32r.md: Use define_constants for unspec and 5677 unspec_volatile. 5678 56792004-01-10 Jan Hubicka <jh@suse.cz> 5680 5681 PR opt/11635 5682 * expr.c (expand_expr_real): More curefully expand union casts. 5683 56842004-01-10 Kazu Hirata <kazu@cs.umass.edu> 5685 5686 * config/m32r/m32r.md (flush_icache): Use 1 for 5687 unspec_volatile. 5688 56892004-01-10 David Edelsohn <edelsohn@gnu.org> 5690 James E Wilson <wilson@specifixinc.com> 5691 5692 PR debug/12860 5693 * dbxout.c (dbxout_symbol): Remove initialization of 5694 current_sym_code, current_sym_value, and current_sym_addr. 5695 (dbxout_symbol_location): Same. 5696 (dbxout_prepare_symbol): Zero current_sym_code, 5697 current_sym_value, and current_sym_addr. 5698 56992004-01-10 Richard Sandiford <rsandifo@redhat.com> 5700 5701 * tree.c (get_unwidened): Reorder conditions so that the null pointer 5702 check is done first. 5703 57042004-01-09 Eric Christopher <echristo@redhat.com> 5705 5706 * toplev.c (rest_of_handle_cfg): Add reg_scan pass 5707 if we're running mark_constant_function. 5708 57092004-01-09 Jeff Bailey <jbailey@nisa.net> 5710 5711 PR target/12561 5712 * config/t-gnu: Rename SYSTEM_HEADER_DIR to NATIVE_SYSTEM_HEADER_DIR. 5713 57142004-01-09 Andrew Pinski <pinskia@physics.uc.edu> 5715 5716 PR debug/11231 5717 * dbxout.c (dbxout_type_fields): Return if any item is 5718 error_mark_node or the type is error_mark_node. 5719 57202004-01-09 Geoffrey Keating <geoffk@apple.com> 5721 5722 * config/rs6000/darwin-ldouble.c: Add big comment explaining 5723 exactly what is expected as a 'long double'. 5724 (_xlqadd): When a value to be returned is representable as a 5725 'double', just return it directly, do not construct it using a union. 5726 Also, correct final fixup. 5727 (_xlqmul): Likewise. 5728 (_xlqdiv): Likewise. 5729 * real.c (encode_ibm_extended): Make consistent with darwin-ldouble.c. 5730 5731 * config/rs6000/rs6000.md (fix_trunctfdi2): Delete. 5732 57332004-01-09 Richard Henderson <rth@redhat.com> 5734 5735 * recog.c (constrain_operands): Validate mem operands. 5736 57372004-01-09 James E Wilson <wilson@specifixinc.com> 5738 5739 * gcc.c (init_spec): Remove -lunwind from shared case. 5740 * conifg/ia64/t-hpux (SHLIB_LINK): Add -lunwind. 5741 57422004-01-09 Steve Ellcey <sje@cup.hp.com> 5743 5744 * configure.ac: (gcc_cv_ld_hidden) Set to true for ia64*-*-hpux*. 5745 * configure: Regenerate 5746 57472004-01-09 Joseph S. Myers <jsm@polyomino.org.uk> 5748 5749 PR c/11234 5750 * c-typeck.c (build_c_cast): If pedantic, warn for conversions 5751 between function and object pointers. 5752 (digest_init): When comparing a pointer to function type to the 5753 target type, only apply TREE_TYPE once to the pointer to function 5754 type. 5755 * except.c (for_each_eh_label_1): Treat data as a pointer to a 5756 function pointer rather than casting it to a function pointer. 5757 (for_each_eh_label): Update caller. 5758 * recog.h (struct insn_data): Use a struct or union for output. 5759 * genoutput.c (output_insn_data): Update. 5760 * final.c (get_insn_template): Update. 5761 57622004-01-09 Mark Mitchell <mark@codesourcery.com> 5763 5764 * expr.h (expand_expr): Make it a macro, not a function. 5765 (expand_expr_real): New function. 5766 * expr.c (store_expr): Adjust logic for deciding whether or not to 5767 copy the value returned by expand_expr. 5768 (expand_expr): Rename to ... 5769 (expand_expr_real): ... this. Add alt_rtl parameter. Adjust 5770 calls to language hooks. 5771 * c-common.h (c_expand_expr): Adjust prototype. 5772 * c-common.c (c_expand_expr): Add alt_rtl parameter. 5773 * langhooks-def.h (lhd_expand_expr): Change prototype. 5774 * langhooks.c (lhd_expand_expr): Add all_rtl parameter. 5775 * langhooks.h (lang_hooks): Change type of expand_expr. 5776 * stmt.c (stmt_status): Add x_last_expr_alt_rtl. 5777 (last_expr_alt_rtl): Likewise. 5778 (expand_expr_stmt_value): Set last_expr_alt_rtl. 5779 (clear_last_expr): Clear it. 5780 (expand_end_stmt_expr): Set RTL_EXPR_ATL_RTL. 5781 (expand_end_bindings): Save and restor last_expr_alt_rtl. 5782 * tree.def (RTL_EXPR): Give it an additional operand. 5783 * tree.h (RTL_EXPR_ALT_RTL): New macro. 5784 57852004-01-09 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 5786 5787 * config/m32r/m32r.h (TARGET_CPU_CPP_BUILTINS): Add __m32r__. 5788 * config/m32r/m32r.c (call26_operand): Allow in PIC mode. 5789 57902004-01-09 Kazu Hirata <kazu@cs.umass.edu> 5791 5792 PR target/13380. 5793 * config/m32r/m32r.md: Replace (reg:SI 17) with (reg:CC 17) 5794 or (ne:SI (reg:CC 17) (const_int 0)). 5795 Be specific about modes wherever possible. 5796 57972004-01-09 Kazu Hirata <kazu@cs.umass.edu> 5798 5799 * config/m32r/m32r.c (m32r_expand_block_move): Call 5800 gen_movestrsi_internal with two more arguments. 5801 (m32r_output_block_move): Adjust operand numbers. 5802 Properly update the source and destination pointers. 5803 * config/m32r/m32r.md (movstrsi_internal): Use 'r' instead of 5804 'r+'. Change the set detinations to match_operand. 5805 58062004-01-09 Kazu Hirata <kazu@cs.umass.edu> 5807 5808 * final.c (FIRST_INSN_ADDRESS): Remove. 5809 (shorten_branches): Don't use FIRST_INSN_ADDRESS. 5810 * system.h (FIRST_INSN_ADDRESS): Poison. 5811 * config/avr/avr.h: Remove a comment about FIRST_INSN_ADDRESS. 5812 * config/m32r/m32r-protos.h: Remove the prototype for 5813 m32r_first_insn_address. 5814 * config/m32r/m32r.c (m32r_first_insn_address): Remove. 5815 * config/m32r/m32r.h (FIRST_INSN_ADDRESS): Likewise. 5816 * doc/md.texi (FIRST_INSN_ADDRESS): Likewise. 5817 58182004-01-09 J. Brobecker <brobecker@gnat.com> 5819 5820 * dwarf2out.c (gen_enumeration_type_die): Return the DIE that 5821 we just created. 5822 (is_ada_subrange_type): DIEs for enumeration subtypes should be 5823 emitted as subrange types too. 5824 (subrange_type_die): Add handling of enumeration subtypes. 5825 58262004-01-08 Richard Henderson <rth@redhat.com> 5827 5828 PR opt/12441 5829 Revert: Sat Mar 30 14:08:55 CET 2002 Jan Hubicka <jh@suse.cz> 5830 * i386.c (aligned_operand): Be prepared for SUBREGed registers. 5831 (ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG. 5832 (ix86_address_cost): Be prepared for SUBREGed registers. 5833 (legitimate_address_p): Accept SUBREGed registers. 5834 58352004-01-08 Kelley Cook <kcook@gcc.gnu.org> 5836 5837 * Makefile.in: Rename configure.in to configure.ac 5838 * doc/sourcebuild.texi: Likewise. 5839 * configure: Regenerate. 5840 * config.in: Regenerate. 5841 58422004-01-08 Stuart Hastings <stuart@apple.com> 5843 5844 * config/i386/i386.md: Typos in MMX/SSE immediate shifts. 5845 58462004-01-08 Jan Hubicka <jh@suse.cz> 5847 5848 * cgraphunit.c (cgraph_decide_inlining): Fix typo. 5849 58502004-01-08 Geoffrey Keating <geoffk@apple.com> 5851 5852 * config/rs6000/rs6000.md (cmptf_internal1): Correct branch offset. 5853 (UNSPEC_FIX_TRUNC_TF): New constant. 5854 (movtf_internal): Make splitter active only when insn is active. 5855 (extenddftf2): Rewrite to properly load zero into low part. 5856 (extenddftf2_internal): New. 5857 (extendsftf2): Rewrite. 5858 (truncdftf2): Correct length. 5859 (floatditf2): Delete. 5860 (fix_trunc_helper): New. 5861 (fix_trunctfdi2): Use fix_trunc_helper. 5862 (fix_trunctfsi2): Likewise.fix_trunc 5863 (fix_trunctfsi2_internal): New. 5864 5865 * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): lo_sum 5866 addresses are legitimate on Darwin even when flag_pic. 5867 (rs6000_legitimize_reload_address) [TARGET_MACHO]: Don't create 5868 non-offsettable addresses for loads of TFmode constants. 5869 58702004-01-08 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 5871 5872 * config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_BSS): Actually emit 5873 variables in the appropriate bss section. 5874 58752004-01-09 Alan Modra <amodra@bigpond.net.au> 5876 5877 * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Ensure 5878 target_flags has MASK_POWERPC64 when -m64. 5879 * config/rs6000/rs6000.c (processor_target_table): Add MASK_POWERPC64 5880 to 620, 630, power3, power4 and rs64a entries. 5881 * config/rs6000/rs6000.h (MASK_64BIT): Expand comment. 5882 58832004-01-08 Richard Sandiford <rsandifo@redhat.com> 5884 5885 * simplify-rtx.c (simplify_immed_subreg): Fix construction of 5886 floating-point constants. 5887 58882004-01-08 J. Brobecker <brobecker@gnat.com> 5889 5890 * dwarf2out.c (subrange_type_die): Add context_die parameter. 5891 Create the subrange_type DIE using the given context DIE. 5892 (modified_type_die): Update call to subrange_type_die. 5893 58942004-01-08 Zack Weinberg <zack@codesourcery.com> 5895 5896 * dwarf2.h, unwind-dw2-fde.h, unwind-pe.h, unwind.h: 5897 Add multiple-include guard. 5898 58992004-01-08 Hartmut Penner <hpenner@de.ibm.com> 5900 5901 * gcc/config/rs6000/rs6000.c (easy_vector_constant): Accept 5902 all vector constant loadable by vsplt*. 5903 (output_vec_const_move): Likewise. 5904 59052004-01-07 Joseph S. Myers <jsm@polyomino.org.uk> 5906 5907 PR c/6024 5908 * c-typeck.c (comptypes): Only treat enumerated types in the same 5909 translation unit as compatible with each other when they are the 5910 same type. 5911 * doc/extend.texi: Update. 5912 59132004-01-07 Joseph S. Myers <jsm@polyomino.org.uk> 5914 5915 PR c/12165 5916 * c-decl.c (grokdeclarator): Take type qualifiers of typedefed 5917 array type from the array element type. 5918 59192004-01-07 Alan Modra <amodra@bigpond.net.au> 5920 5921 * config/rs6000/rs6000.c (rs6000_dbx_register_number): New function. 5922 * config/rs6000/rs6000-protos.h (rs6000_dbx_register_number): Declare. 5923 * config/rs6000/rs6000.h (DWARF_FRAME_REGNUM): Define. 5924 (DWARF_REG_TO_UNWIND_COLUMN): Correct column adjustment and comment. 5925 * config/rs6000/sysv4.h (DBX_REGISTER_NUMBER): Define. 5926 59272004-01-06 Eric Christopher <echristo@redhat.com> 5928 5929 * config/mips/mips.h (MDEBUG_ASM_SPEC): Change for dwarf2 default. 5930 (DWARF2_DEBUGGING_INFO): Define. 5931 (PREFERRED_DEBUGGING_TYPE): Set to dwarf2. 5932 * config/mips/openbsd.h (PREFERRED_DEBUGGING_TYPE): Remove. 5933 * config/mips/iris6.h (SUBTARGET_ASM_DEBUGGING_SPEC): Only pass -g0 5934 for irix as. 5935 (SUBTARGET_ASM_OPTIMIZING_SPEC): Only pass O0 for irix as. 5936 * config/mips/iris6gas.h (MDEBUG_ASM_SPEC): Remove. 5937 * config/mips/iris5gas.h: Ditto. 5938 (DBX_DEBUGGING_INFO): Remove. 5939 (DWARF2_DEBUGGING_INFO): Ditto. 5940 (MIPS_DEBUGGING_INFO): Ditto. 5941 (PREFERRED_DEBUGGING_TYPE): Ditto. 5942 * config/mips/elf.h (DWARF2_DEBUGGING_INFO): Remove. 5943 (PREFERRED_DEBUGGING_TYPE): Ditto. 5944 (SUBTARGET_ASM_DEBUGGING_SPEC): Ditto. 5945 * config/mips/elf64.h: Ditto. 5946 59472004-01-06 Jan Hubicka <jh@suse.cz> 5948 5949 * Makefile.in (STAGEPROFILE_FLAGS_TO_PASS): Use -fprofile-generate. 5950 (STAGEFEEDBACK_FLAGS_TO_PASS): Use -fprofile-use. 5951 59522004-01-06 Geoffrey Keating <geoffk@apple.com> 5953 5954 * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Compile darwin-ldouble.c. 5955 (TARGET_LIBGCC2_CFLAGS): Use -mlong-double-128. 5956 * config/rs6000/darwin-ldouble.c: New. 5957 5958 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg 5959 for constants. 5960 (constant_subword): Delete. 5961 * rtl.h (constant_subword): Delete prototype. 5962 (immed_double_const): Is not in varasm.c. 5963 * simplify-rtx.c (simplify_immed_subreg): New. 5964 (simplify_subreg): Use simplify_immed_subreg. 5965 5966 * config/rs6000/rs6000.md (floatsitf2): Use expand_float rather 5967 than trying to generate RTL directly. 5968 (fix_trunctfsi2): Use expand_fix rather than trying to generate 5969 RTL directly. 5970 5971 * dwarf2out.c (add_const_value_attribute): Remove incorrect comment. 5972 59732004-01-06 David Edelsohn <edelsohn@gnu.org> 5974 5975 * config/rs6000/xcoff.h (EXTRA_SECTION_FUNCTIONS): Split each 5976 function into a separate macro. 5977 (read_only_data_section): Add void argument. 5978 (private_data_section): Same. 5979 (read_only_private_data_section): Same. 5980 (toc_section): Same. 5981 59822004-01-06 Jan Hubicka <jh@suse.cz> 5983 5984 * invoke.texi: Remove typo in last change. 5985 5986 PR target/10301 5987 * config.gcc: Accept opteron and athlon-64 as variants 5988 of k8. 5989 * i386.c (override_options): Likewise. 5990 * invoke.texi (i386 -mtune): Expand documentation. 5991 59922004-01-06 Kazu Hirata <kazu@cs.umass.edu> 5993 5994 * alias.c: Fix comment typos. 5995 * builtins.c: Likewise. 5996 * cfg.c: Likewise. 5997 * df.c: Likewise. 5998 * dominance.c: Likewise. 5999 * dwarf2out.c: Likewise. 6000 * emit-rtl.c: Likewise. 6001 * expr.c: Likewise. 6002 * final.c: Likewise. 6003 * fold-const.c: Likewise. 6004 * gcse.c: Likewise. 6005 * genattrtab.c: Likewise. 6006 * genrecog.c: Likewise. 6007 * gensupport.c: Likewise. 6008 * ggc-zone.c: Likewise. 6009 * integrate.c: Likewise. 6010 * local-alloc.c: Likewise. 6011 * loop.c: Likewise. 6012 * recog.c: Likewise. 6013 * regmove.c: Likewise. 6014 * reg-stack.c: Likewise. 6015 * reorg.c: Likewise. 6016 * rtlanal.c: Likewise. 6017 * rtl.h: Likewise. 6018 * sched-ebb.c: Likewise. 6019 * simplify-rtx.c: Likewise. 6020 * toplev.c: Likewise. 6021 * varasm.c: Likewise. 6022 60232004-01-06 Kazu Hirata <kazu@cs.umass.edu> 6024 6025 * doc/install.texi: Fix typos. 6026 * doc/invoke.texi: Likewise. 6027 * doc/md.texi: Likewise. 6028 60292004-01-06 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 6030 6031 * config/m32r/m32r.h (TRAMPOLINE_LINE_SIZE): Changed 6032 60332004-01-06 Jan Hubicka <jh@suse.cz> 6034 6035 * i386.c (init_cumulative_args): Add handling of MMX_REGPARM. 6036 (function_arg_advance): Do not pass aggregates in SSE; deal handling 6037 of MMX_REGPARM. 6038 (function_arg): Add new warnings about ABI changes; fix SSE_REGPARM; 6039 add MMX_REGPARM. 6040 * i386.h (ix86_args): Add mmx_words/mmx_regs/mmx_regno fields. 6041 (SSE_REGPARM_MAX): Default to 3 on i386 -msse ABI. 6042 (MMX_REGPARM_MAX): Similarly for -mmmx. 6043 60442004-01-05 Kazu Hirata <kazu@cs.umass.edu> 6045 6046 * config/sh/linux.h: Fix comment formatting. 6047 * config/sh/netbsd-elf.h: Likewise. 6048 * config/sh/sh.c: Likewise. 6049 * config/sh/sh.h: Likewise. 6050 * config/sh/vxworks.h: Likewise. 6051 60522004-01-05 Kazu Hirata <kazu@cs.umass.edu> 6053 6054 * system.h (ASM_OUTPUT_MAIN_SOURCE_FILENAME): Poison. 6055 * toplev.c (output_file_directive): Don't use 6056 ASM_OUTPUT_MAIN_SOURCE_FILENAME. 6057 60582004-01-05 Steven Bosscher <s.bosscher@student.tudelft.nl> 6059 6060 * toplev.c: Fix broken checkin of 2003-12-30. 6061 60622004-01-05 Daniel Berlin <dberlin@dberlin.org> 6063 6064 * ggc-zone.c: Remove everything in #ifdef USING_MALLOC_PAGE_GROUPS 6065 (USING_MMAP): We don't support non-mmap. 6066 (struct alloc_chunk): Steal 1 bit from typecode, use it to mark 6067 large objects. 6068 (struct page_entry): Remove bytes_free. 6069 (struct page_table_chain): Remove. 6070 (struct globals): Remove page_table member. 6071 (loookup_page_table_entry): Function deleted. 6072 (set_page_table_entry): Ditto. 6073 (ggc_allocated_p): No longer need page table lookups. 6074 (ggc_marked_p): Ditto. 6075 (alloc_small_page): Don't care about bytes_free anymore. 6076 (alloc_large_page): Round up size. 6077 (ggc_alloc_zone_1): Mark large objects as such, and calculate 6078 their size the new way. 6079 Remove page table lookups and setting. 6080 (ggc_get_size): Calculate large object size the new way. 6081 (sweep_pages): Redo to account for fact that we no longer have 6082 bytes_free. 6083 (ggc_collect): No longer need to reincrement bytes_free. 6084 (ggc_pch_alloc_object): Handle new large objects properly. 6085 (ggc_pch_read): Put PCH stuff into it's own uncollected zone. 6086 60872004-01-05 Kazu Hirata <kazu@cs.umass.edu> 6088 6089 * doc/invoke.texi: Remove a page break. 6090 60912004-01-05 Kazu Hirata <kazu@cs.umass.edu> 6092 6093 * config/avr/avr.c (avr_output_function_prologue): Remove an 6094 extra pair of curly braces. 6095 60962004-01-05 Kazu Hirata <kazu@cs.umass.edu> 6097 6098 * config/mn10300/mn10300.c: Fix comment formatting. 6099 * config/mn10300/mn10300.h: Likewise. 6100 61012004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 6102 6103 * tree.h: Update documentation on nothrow_flag. 6104 * print-tree.c (print_node): Print TREE_NOTHROW as "align-ok" for 6105 types. 6106 61072004-01-05 Kazu Hirata <kazu@cs.umass.edu> 6108 6109 * doc/invoke.texi: Remove traces of dead ports. 6110 61112004-01-05 Richard Sandiford <rsandifo@redhat.com> 6112 6113 * doc/invoke.texi: Add documentation for the MIPS -mexplicit-relocs 6114 option. 6115 61162004-01-05 Richard Sandiford <rsandifo@redhat.com> 6117 6118 PR target/12945 6119 * coverage.c (coverage_counter_alloc): Set SYMBOL_FLAG_LOCAL for 6120 counter labels. 6121 * config/mips/mips.c (INTERNAL_SYMBOL_P): Delete. 6122 (mips_classify_symbol): Always treat SYMBOL_REF_FLAG as indicating 6123 string constants if TARGET_MIPS16. Use SYMBOL_REF_DECL to check 6124 the binding of decl symbols, otherwise check SYMBOL_REF_LOCAL_P. 6125 (mips_symbol_insns): Don't trust the local/global classification. 6126 (m16_usym8_4, m16_usym5_4): Same mips16 change as mips_classify_symbol. 6127 (override_options): Make -mabicalls -fno-unit-at-a-time imply 6128 -mno-explicit-relocs. 6129 (mips_encode_section_info): Don't use SYMBOL_REF_FLAG to distinguish 6130 between local and global symbols. 6131 61322004-01-05 Richard Sandiford <rsandifo@redhat.com> 6133 6134 * config/mips/mips-protos.h (mips_dangerous_for_la25_p): Declare. 6135 (mips_preferred_reload_class): Declare. 6136 * config/mips/mips.h (DANGEROUS_FOR_LA25_P): Replace with function. 6137 (EXTRA_CONSTRAINT): Update accordingly. 6138 (PREFERRED_RELOAD_CLASS): Use mips_preferred_reload_class. 6139 * config/mips/mips.c (mips_dangerous_for_la25_p): New function. 6140 (mips_preferred_reload_class): New function. Prefer LEA_REGS if 6141 mips_dangerous_for_la25_p. 6142 (mips_secondary_reload_class): Use LEA_REGS rather than GR_REGS 6143 if mips_dangerous_for_la25_p. 6144 61452004-01-05 Bernardo Innocenti <bernie@develer.com> 6146 6147 * config/m68k/m68k.c (output_andsi3): Fix signed/unsigned comparison 6148 warning. 6149 61502004-01-04 Nathanael Nerode <neroden@gcc.gnu.org> 6151 6152 * configure.ac: Use AC_PROG_CPP_WERROR. 6153 * configure: Regenerate. 6154 61552004-01-04 Zack Weinberg <zack@codesourcery.com> 6156 6157 * .cvsignore: Add autom4te.cache. 6158 61592004-01-04 Richard Sandiford <rsandifo@redhat.com> 6160 6161 * doc/invoke.texi: Revamp documentation of MIPS options. Remove 6162 -mabi=meabi, -mabi-fake-default, -mmips-as, -mgas, -mmips-tfile, 6163 -m4650, -mfix7000 and -(m)no-crt0. Put endianness options first, 6164 then architecture options, then ABI options. General rewording. 6165 61662004-01-04 Joseph S. Myers <jsm@polyomino.org.uk> 6167 6168 PR c/3414 6169 * doc/extend.texi: Clarify definition of malloc attribute. 6170 61712004-01-04 Jan Hubicka <jh@suse.cz> 6172 6173 * Makefile.in (cgraph.o, cgraphunit.o): Add intl.h dependency. 6174 * cgraph.c (create_edge, dump_cgraph): Update to use inline_failed 6175 * cgraph.h (cgraph_edge): Replace inline_call by inline_failed 6176 (cgraph_inline_p): Add extra argument reason. 6177 * cgraphunit.c: Minor formating fixes. 6178 cgraph_first_inlined_callee): New functions. 6179 (record_call_1): Record builtins too. 6180 (cgraph_analyze_function): Update inline_failed messages. 6181 (cgraph_mark_functions_to_output, cgraph_expand_function, cgraph_inlined_into, 6182 cgraph_inlined_callees, cgraph_estimate_growth): Update to use inline_failed. 6183 (cgraph_check_inline_limits): Likewise; Add argument reason. 6184 (cgraph_set_inline_failed): New static function. 6185 (cgraph_decide_inlining_of_small_function, cgraph_decide_inlining): Set 6186 reasons. 6187 (cgraph_inline_p): Add new argument reason. 6188 * tree-inline.c (expand_call_inline): Update warning. 6189 61902004-01-03 Nathanael Nerode <neroden@gcc.gnu.org> 6191 6192 * configure.ac: Replace AC_INIT, AC_OUTPUT, AC_CANONICAL_SYSTEM 6193 with modern equivalents. 6194 * configure: Regenerate. 6195 6196 * configure.ac: Replace gcc_AC_CHECK_TYPE with AC_CHECK_TYPE. 6197 * aclocal.m4 (gcc_AC_CHECK_TYPE): Remove. 6198 * configure: Regenerate. 6199 6200 * doc/install.texi: Note that 'gcc' is now a 2.57 directory. 6201 6202 * configure.in: Rename to configure.ac. 6203 * configure.ac: Renamed from configure.in; make minimum necessary 6204 changes for autoconf 2.5x. 6205 * aclocal.m4: Make minimum necessary changes for autoconf 2.5x. 6206 * configure: Regenerate with autoconf 2.57. 6207 62082004-01-03 Kazu Hirata <kazu@cs.umass.edu> 6209 6210 * config/mips/linux.h: Fix comment formatting. 6211 * config/mips/mips.c: Likewise. 6212 * config/mips/mips.h: Likewise. 6213 * config/mips/mips.md: Likewise. 6214 * config/mips/netbsd.h: Likewise. 6215 * config/mips/windiss.h: Likewise. 6216 62172004-01-02 Richard Henderson <rth@redhat.com> 6218 6219 * config/i386/i386.md (fp constant pool splitter): Reorg suppression 6220 for sse and 387; add suppression for mmx. 6221 62222004-01-02 Andrew Pinski <pinskia@physics.uc.edu> 6223 6224 * loop.c (loop_optimize): Free all loops_info's mems. 6225 6226 * c-typeck.c (finish_init): Free spelling_base before 6227 setting it again. 6228 6229 * cfgloop.c (flow_loops_find): Always free the sbitmap 6230 headers. 6231 6232 * predict.c (estimate_probability): Free bbs after being 6233 done with it. 6234 62352004-01-02 Kazu Hirata <kazu@cs.umass.edu> 6236 6237 * config/mn10300/mn10300.h (PREDICATE_CODES): Add 6238 const_8bit_operand and call_address_operand. 6239 62402004-01-02 Jan Hubicka <jh@suse.cz> 6241 6242 * cgraphunit.c (cgraph_optimize_function): Call optimize_inline_calls 6243 when there is nothing to inline but warnings are requested. 6244 (cgraph_decide_inlining): Fix memory leak. 6245 62462004-01-02 Jan Hubicka <jh@suse.cz> 6247 6248 * expr.c (store_constructor): Fix pasto in previous patch. 6249 62502004-01-02 Kazu Hirata <kazu@cs.umass.edu> 6251 6252 * config/i386/cygming.h: Fix comment formatting. 6253 * config/i386/djgpp.h: Likewise. 6254 * config/i386/gthr-win32.c: Likewise. 6255 * config/i386/i386-interix.h: Likewise. 6256 * config/i386/i386.c: Likewise. 6257 * config/i386/i386.h: Likewise. 6258 * config/i386/openbsd.h: Likewise. 6259 * config/i386/winnt.c: Likewise. 6260 * config/i386/xm-mingw32.h: Likewise. 6261 62622004-01-02 Joseph S. Myers <jsm@polyomino.org.uk> 6263 6264 * doc/gcc.texi, doc/invoke.texi, doc/install.texi: Update 6265 copyright and last modification dates. 6266 62672004-01-02 Andreas Jaeger <aj@suse.de>, Gerald Pfeifer <gp@suse.de> 6268 6269 * doc/install.texi (Specific): Mention x86_64. 6270 62712004-01-01 Hans-Peter Nilsson <hp@bitrange.com> 6272 6273 * builtins.c (expand_builtin_apply_args_1) [STACK_GROWS_DOWNWARD]: 6274 Call force_operand on plus_constant result. 6275 62762004-01-01 Jan Hubicka <jh@suse.cz> 6277 6278 * expmed.c (store_bit_field, extract_bit_field): Use new named patterns 6279 * expr.c (store_constructor): Use vec_init pattern. 6280 * genopinit.c (optabs): Initailize vec_set/vec_extract/vec_init. 6281 * optabs.h (optab_index): ADD OTI_vec_set/OTI_vec_extract/OTI_vec_init 6282 (vec_set_optab, vec_extract_optab, vec_init_optab): New. 6283 * i386.md (vec_setv2df, vec_extractv2df, vec_setv4sf, vec_extractv4sf): 6284 New patterns. 6285 (sse2_unpc?pd): Fix pattern. 6286 (sse2_movlpd): Kill. 6287 (sse2_movsd): Deal with movlpd too. 6288 * i386.c (ix86_expand_builtin): Use sse2_movsd instead of sse2_movlpd. 6289 (ix86_expand_vector_init): New. 6290 * emmintrin.h (__mm_set_pd, __mm_set_ps): Use vector extensions. 6291 * md.texi (vec_set, vec_extract): Document 6292 62932003-12-31 Jan Hubicka <jh@suse.cz> 6294 6295 PR opt/13473 6296 * recog.c (validate_replace_rtx_1): Take care for RTL sharing inside 6297 ASM input operands 6298 6299 PR opt/12617 6300 * toplev.c (dump_file_index): Reorder ce3 and bbro. 6301 (dump_file): Likewise. 6302 (rest_of_compilation): Likewise. 6303 6304 PR debug/13367 6305 * cgraph.c (cgraph_function_possibly_inlined): Even with 6306 flag_really_no_inline we inline always_inline functions. 6307 * cgraphunit.c (cgraph_analyze_function): Clear inlinable flag 6308 for non-always_inline functions when there is flag_really_no_inline. 6309 (cgraph_decide_inlining): Limit work done when not inlining. 6310 (cgraph_decide_inlining_incrementally): Likewise. 6311 (cgraph_optimize_function): Check whether something got inlined. 6312 * c-objc-common.c (c_disregard_inline_limits): Do not always inline 6313 extern inline functions when not inlining. 6314 6315 * opts.c (decode_options): Disable crossjumping at -O1 6316 * invoke.texi (-O1): Document change. 6317 6318See ChangeLog.10 for earlier changes. 6319