12005-05-03 Release Manager 2 3 * GCC 3.3.6 Released. 4 52005-05-01 Roger Sayle <roger@eyesopen.com> 6 7 PR rtl-optimization/19579 8 Backport from mainline 9 2005-01-26 Jakub Jelinek <jakub@redhat.com> 10 * ifcvt.c (noce_try_cmove_arith): If emitting instructions to set up 11 both A and B, see if they don't clobber registers the other expr uses. 12 132005-04-30 Gabriel Dos Reis <gdr@integrable-solutions.net> 14 15 PR 14884 16 * Apply: 17 2004-03-25 Joseph S. Myers <jsm@polyomino.org.uk> 18 19 * fixinc/inclhack.def (rpc_xdr_lvalue_cast_a, 20 rpc_xdr_lvalue_cast_b): New fixes. 21 * fixinc/tests/base/rpc/xdr.h: Add new tests. 22 232005-04-30 Gabriel Dos Reis <gdr@integrable-solutions.net> 24 25 * Apply: 26 2004-10-21 Aldy Hernandez <aldyh@redhat.com> 27 28 PR target/18004. 29 * expmed.c (store_bit_field): Pass original 'value' before 30 recursing. 31 322005-04-22 Eric Botcazou <ebotcazou@libertysurf.fr> 33 34 * doc/invoke.texi (SPARC options): Document that -mapp-regs 35 is turned off by default on Solaris. 36 372005-04-06 James E. Wilson <wilson@specifixinc.com> 38 39 PR target/20670 40 * unwind-ia64.c (uw_intall_context): Add missing load of r27. 41 422005-04-04 Gabriel Dos Reis <gdr@integrable-solutions.net> 43 44 PR c++/18644 45 * doc/invoke.texi (-Wsynth): Remove documentation. 46 472005-03-28 James E Wilson <wilson@specifixinc.com> 48 49 PR target/20286. 50 * config/ia64/ia64.c (ia64_encode_section_info): Only abort if encoding 51 or symbol_str[1] is 's'. 52 532005-02-23 Michael Beach <michaelb@ieee.org> 54 55 PR target/20159 56 * config/sparc/t-elf (startup files): Assemble with CPP. 57 582005-02-11 John David Anglin <dave.anglin@nrc-crnc.gc.ca> 59 60 PR middle-end/19697 61 2005-01-30 Roger Sayle <roger@eyesopen.com> 62 * config/pa/pa.md (anddi3, iordi3): On HPPA64, disallow an integer 63 constant as the second operand and a register as the third. 64 652005-01-29 Alan Modra <amodra@bigpond.net.au> 66 67 * unwind-dw2.c (execute_stack_op): Add missing cases for 68 DW_OP_shl, DW_OP_shr, DW_OP_shra, DW_OP_xor. 69 702005-01-28 Stephane Carrez <stcarrez@nerim.fr> 71 72 PR target/15384 73 * config/m68hc11/t-m68hc11-gas (dp-bit.c): Fix typo causing a 74 configuration part of dp-bit.c to be lost. 75 762005-01-27 Ulrich Weigand <uweigand@de.ibm.com> 77 78 PR target/17771 79 Backport from mainline: 80 * config/s390/s390.md ("reload_outti"): Remove predicate for 81 output operand. Abort if operand is not a MEM. 82 ("reload_outdi", "reload_outdf"): Likewise. 83 842005-01-22 Roger Sayle <roger@eyesopen.com> 85 86 PR target/18402 87 Backport from mainline 88 2003-02-05 Jakub Jelinek <jakub@redhat.com> 89 90 PR optimization/8555 91 * config/i386/i386.md (sse_mov?fcc split): Handle op2 == op3 case 92 instead of aborting. 93 942005-01-21 Giovanni Bajo <giovannibajo@gcc.gnu.org> 95 96 * gccbug.in: Update optimization -> tree-optimization/rtl-optimization. 97 982005-01-21 Giovanni Bajo <giovannibajo@gcc.gnu.org> 99 100 PR c++/17115 101 * tree-inline.c (expand_call_inline): Do not warn for functions 102 marked with attribute noinline. 103 1042005-01-18 Eric Botcazou <ebotcazou@libertysurf.fr> 105 106 PR rtl-optimization/19296 107 * combine.c (simplify_comparison): Rewrite the condition under 108 which a non-paradoxical SUBREG of a PLUS can be lifted when 109 compared against a constant. 110 1112004-01-14 David Mosberger <davidm@hpl.hp.com> 112 James E Wilson <wilson@specifixinc.com> 113 114 PR target/18987 115 * config/ia64/ia64.c (process_set): For alloc insn, only call 116 process_epilogue is !frame_pointer_needed. 117 118 PR target/13158 119 * config/ia64/ia64.c (ia64_expand_epilogue): Set RTX_FRAME_RELATED_P on 120 sibcall alloc instruction. 121 (process_set): Handle sibcall alloc instruction. 122 1232005-01-13 David O'Brien <obrien@FreeBSD.org> 124 125 Backport from mainline: 126 * config/freebsd-spec.h: Use KSE pthread lib for -pthread. 127 1282005-01-08 Sergey M. Samoylov <ssamoylov@dev.rtsoft.ru> 129 130 Backport: 131 2004-02-12 Richard Sandiford <rsandifo@redhat.com> 132 PR bootstrap/13617 133 * config/mips/mips-protos.h (mips_output_aligned_decl_common): Declare. 134 (mips_declare_object): Make variadic. 135 * config/mips/mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use 136 mips_output_aligned_decl_common. 137 * config/mips/mips.c (mips_output_aligned_decl_common): New function. 138 (mips_declare_object): Make variadic. 139 1402005-01-08 Richard Sandiford <rsandifo@redhat.com> 141 142 PR target/17565 143 * config/mips/mips.md (define_asm_attributes): Set can_delay to no. 144 1452004-12-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 146 147 * vax.c (vax_address_cost, vax_rtx_cost): Correct casts. 148 (vax_rtx_cost): Handle small offsets for both PLUS and MINUS. 149 1502004-12-27 Steven Bosscher <stevenb@suse.de> 151 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 152 153 rtl-optimization/12863 154 * config/vax/vax.h (CASE_DROPS_THROUGH): Don't define. 155 * config/vax/vax.md (casesi): Emit a test-and-branch to make sure 156 that the case is in range, to make sure the casesi insn is always 157 in range and never falls through. 158 (casesi1): Add comment to explain why casesi never falls through. 159 Remove the unnamed special case casesi pattern. 160 1612004-12-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 162 163 PR target/17643 164 * config/pa/pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Return false when 165 TARGET_PORTABLE_RUNTIME is true. 166 1672004-12-25 Alan Modra <amodra@bigpond.net.au> 168 169 PR target/19147 170 * config/rs6000/rs6000.md (andsi3_internal7, andsi3_internal8): Delete. 171 1722004-12-21 Joseph S. Myers <jsm@polyomino.org.uk> 173 174 PR c/14765 175 * c-parse.in (compstmt_primary_start): Set last_expr_type to 176 NULL_TREE. 177 1782004-12-19 Roger Sayle <roger@eyesopen.com> 179 180 PR middle-end/19068 181 * expr.c (expand_expr_real_1) <MAX_EXPR>: Ensure that target, op0 182 and op1 are all registers (or constants) before expanding the RTL 183 comparison sequence [to avoid reg_overlap_mentioned (target, op1)]. 184 1852004-12-16 Eric Botcazou <ebotcazou@adacore.com> 186 187 PR middle-end/18882 188 * function.c (assign_stack_local_1): Use BITS_PER_UNIT alignment 189 when passed -2 as 'align'. 190 (put_var_into_stack): Adjust calls to put_reg_into_stack. 191 When passed a CONCAT, instruct put_reg_into_stack to use 192 a consecutive stack slot for the second part. 193 (put_reg_into_stack): Remove 'promoted_mode' parameter, add 194 'consecutive_p' parameter. Retrieve the register mode from 'reg'. 195 When consecutive_p is true, instruct assign_stack_local_1 to use 196 BITS_PER_UNIT alignment. 197 (put_addressof_into_stack): Adjust call to put_reg_into_stack. 198 1992004-12-16 Eric Botcazou <ebotcazou@libertysurf.fr> 200 201 PR middle-end/18590 202 * function.c (fixup_var_refs_insns_with_hash): Do not invoke 203 fixup_var_refs_insn on insns marked as deleted. 204 2052004-12-15 Richard Henderson <rth@redhat.com> 206 207 PR target/19005 208 * config/i386/i386.md (swaphi_1): Swap with swaphi_2, allow with 209 optimize_size. 210 (swapqi_1): Rename from swapqi. Enable only for no partial reg 211 stall and optimize_size. 212 (swapqi_2): New. 213 (swaphi_1, swaphi_2, swapqi_1): Add athlon_decode. 214 (swapsi, swaphi_1, swaphi_2, swapqi_1, swapdi): Remove modrm override. 215 2162004-12-13 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 217 218 PR middle-end/18730 219 * emit-rtl.c (get_first_nonnote_insn, get_last_nonnote_insn): When 220 the first/last insn is a sequence, return the first/last insn of the 221 sequence. 222 2232004-12-12 Richard Henderson <rth@redhat.com> 224 225 PR target/18932 226 * config/i386/i386.md (all splits and peepholes): Use flags_reg_operand 227 and compare_operator to propagate the input CC mode to the output. 228 * config/i386/i386.c (flags_reg_operand, compare_operator): New. 229 * config/i386/i386.h (PREDICATE_CODES): Add them. 230 * config/i386/i386-protos.h: Update. 231 2322004-12-10 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 233 234 PR rtl-optimization/16536 235 Backport from mainline: 236 2004-06-25 Mark Mitchell <mark@codesourcery.com> 237 * alias.c (get_alias_set): Adjust setting of 238 DECL_POINTER_ALIAS_SET for pointers to aggregates. 239 2402004-12-09 Richard Henderson <rth@redhat.com> 241 242 PR target/17025 243 * config/i386/i386.md (testqi_1_maybe_si, andqi_2_maybe_si): New. 244 (test_qi_1, andqi_2): Do not promote to simode. 245 2462004-12-07 David Mosberger <davidm@hpl.hp.com> 247 248 PR target/18443 249 * config/ia64/ia64.c (ia64_assemble_integer): Add support for 250 emitting unaligned pointer-sized integers. 251 2522004-12-05 Richard Henderson <rth@redhat.com> 253 254 PR target/18841 255 * config/alpha/alpha.md (UNSPECV_SETJMPR_ER): New. 256 (builtin_setjmp_receiver_er_sl_1): Use it. 257 (builtin_setjmp_receiver_er_1): Likewise. 258 (builtin_setjmp_receiver_er, exception_receiver_er): Remove. 259 (builtin_setjmp_receiver): Don't split for explicit relocs until 260 after reload. 261 (exception_receiver): Likewise. 262 2632004-12-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 264 265 2003-10-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 266 Backport from mainline 267 * aclocal.m4 (gcc_AC_FUNC_MMAP_BLACKLIST): Blacklist ultrix*. 268 * configure: Rebuilt. 269 2702004-12-03 Richard Henderson <rth@redhat.com> 271 272 2004-09-24 Richard Henderson <rth@redhat.com> 273 PR rtl-opt/17503 274 * regclass.c (subregs_of_mode): Turn into an htab. Make static. 275 (som_hash, som_eq): New. 276 (init_subregs_of_mode, record_subregs_of_mode): New. 277 (cannot_change_mode_set_regs): Rewrite for htab implementation. 278 (invalid_mode_change_p): Likewise. 279 * combine.c (gen_lowpart_for_combine): Use record_subregs_of_mode. 280 * flow.c (mark_used_regs): Likewise. 281 (life_analysis): Use init_subregs_of_mode. 282 * regs.h (subregs_of_mode): Remove. 283 * rtl.h (init_subregs_of_mode, record_subregs_of_mode): Declare. 284 2852004-12-03 Roger Sayle <roger@eyesopen.com> 286 287 PR target/9908 288 * config/i386/i386.md (*call_value_1): Correct Intel assembler 289 syntax by using %A1 instead of %*%1. 290 2912004-12-01 Alan Modra <amodra@bigpond.net.au> 292 293 PR target/12817 294 * config/rs6000/rs6000.c (rs6000_emit_prologue): Use r0 for vrsave. 295 2962004-11-29 Roger Sayle <roger@eyesopen.com> 297 298 PR rtl-optimization/9771 299 * regclass.c (CALL_REALLY_USED_REGNO_P): New macro to eliminate 300 conditional compilation in init_reg_sets_1. 301 (init_reg_sets_1): Let global_regs[i] take priority over the frame 302 (but not stack) pointer exceptions to regs_invalidated_by_call. 303 (globalize_reg): Globalizing a fixed register may need to update 304 regs_invalidated_by_call. 305 3062004-11-27 Falk Hueffner <falk@debian.org> 307 Eric Botcazou <ebotcazou@libertysurf.fr> 308 309 PR optimization/18577 310 * unroll.c (unroll_loop): Test both REGNO_LAST_UID and 311 REGNO_LAST_NOTE_UID to decide whether a pseudo is local 312 to the loop. 313 3142004-11-27 Alan Modra <amodra@bigpond.net.au> 315 316 PR target/12769 317 * config/rs6000/rs6000.c (init_cumulative_args): Set call_cookie 318 from rs6000_default_long_calls for libcalls. 319 3202004-11-25 Richard Henderson <rth@redhat.com> 321 322 PR c++/6764 323 * reload1.c (set_initial_eh_label_offset): New. 324 (set_initial_label_offsets): Use it. 325 3262004-11-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 327 328 PR rtl-optimization/14838 329 * emit-rtl.c (get_first_nonnote_insn): Don't assume first insn is a 330 note. 331 (get_last_nonnote_insn): Don't assume last insn is a note. 332 3332004-10-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 334 335 * doc/install.texi (*-*-solaris2*): Update with info about kernel 336 patches to solve spurious testsuite failures. 337 3382004-10-13 Eric Botcazou <ebotcazou@libertysurf.fr> 339 340 PR target/14454 341 * config/sparc/sparc.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Set to 342 sparc_can_output_mi_thunk. 343 (sparc_output_mi_thunk): Simplify handling of delta offset. Add 344 handling of vcall offset. 345 (sparc_can_output_mi_thunk): New predicate. 346 * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Document VCALL_OFFSET. 347 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Delete. 348 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New target hook. 349 350 * config/sparc/sparc.md (movdi): Remove redundant test. 351 3522004-10-07 Eric Botcazou <ebotcazou@libertysurf.fr> 353 354 * doc/install.texi (*-*-solaris2*): Fix marker for URL. 355 3562004-10-06 Eric Botcazou <ebotcazou@libertysurf.fr> 357 358 PR target/16007 359 * doc/install.texi (*-*-solaris2*): Mention potential problem 360 with Sun assembler + GNU linker and C++ programs. 361 Document status of binutils 2.15 release. 362 3632004-09-30 Richard Henderson <rth@redhat.com> 364 365 * config/alpha/qrnnd.asm: Mark for noexecstack. 366 3672004-09-30 Richard Henderson <rth@redhat.com> 368 369 * unwind-dw2.c (_Unwind_GetGR): Honor DWARF_ZERO_REG. 370 * doc/tm.texi (DWARF_ZERO_REG): New. 371 372 * config/alpha/alpha.c (alpha_sa_mask, alpha_expand_prologue, 373 alpha_expand_epilogue): Revert 2003-09-30 change to store zero. 374 * config/alpha/alpha.h (DWARF_ZERO_REG): New. 375 3762003-07-06 James E Wilson <wilson@tuliptree.org> 377 378 PR optimization/9812 379 * rtl.h (mem_for_const_double): Delete prototype. 380 * varasm.c (mem_for_const_double): Delete function. 381 * config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h, 382 config/m68k/m68kv4.h, config/m68k/netbsd-elf.h 383 (LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions. 384 * config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode. 385 (LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests. 386 * config/m68k/m68k.md (movxf): Add reload_in_progress guard. Add 387 comment about confused support for XFmode constants. 388 3892004-09-30 Release Manager 390 391 * GCC 3.3.5 Released. 392 3932004-09-20 Roger Sayle <roger@eyesopen.com> 394 395 PR rtl-optimization/17363 396 Backport from mainline 397 2003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 398 399 PR bootstrap/11593 400 * sched-rgn.c (find_rgns): Initialize current_edge correctly. 401 4022004-09-17 James E Wilson <wilson@specifixinc.com> 403 404 PR target/17455 405 * config/ia64/ia64.c (ia64_function_ok_for_sibcall): Return false 406 if current_function_decl is a sibcall. 407 4082004-09-13 Richard Henderson <rth@redhat.com> 409 410 PR inline-asm/6806 411 * cselib.c (cselib_invalidate_rtx): Export. Remove unused args. 412 (cselib_invalidate_rtx_note_stores): New. 413 (cselib_record_sets, cselib_process_insn): Update to match. 414 * cselib.h (cselib_invalidate_rtx): Declare. 415 * reload1.c (reload_cse_simplify): Invalidate asm clobbers. 416 4172004-08-29 Jonathan Wakely <redi@gcc.gnu.org> 418 419 * doc/trouble.texi (C++ misunderstandings): Fix example code. 420 4212004-08-26 Richard Henderson <rth@redhat.com> 422 423 PR target/15718 424 * config/alpha/alpha.h (HARD_REGNO_MODE_OK): Allow complex float 425 modes. 426 4272004-08-26 Matthias Klose <doko@debian.org> 428 429 * doc/invoke.texi: Remove duplicate -fbranch-probabilities entry. 430 4312004-08-14 Roger Sayle <roger@eyesopen.com> 432 433 * fixinc/tests/base/obstack.h: Backport from mainline. 434 4352004-08-14 Roger Sayle <roger@eyesopen.com> 436 David Billinghurst <David.Billinghurst@riotinto.com> 437 438 PR libgfortran/15930 439 * fixinc/inclhack.def (irix___generic1, irix___generic2): New. 440 * fixinc/fixincl.x: Regenerate. 441 * fixinc/tests/base/internal/math_core.h: New file 442 4432004-08-08 Roger Sayle <roger@eyesopen.com> 444 445 PR middle-end/16790 446 * fold-const.c (expand_muldiv_1) <NOP_EXPR>: Disallow local 447 truncations, not just global truncations. 448 4492004-08-02 Ulrich Weigand <uweigand@de.ibm.com> 450 451 Backport from mainline: 452 2003-07-11 Jakub Jelinek <jakub@redhat.com> 453 * optabs.c (prepare_cmp_insn): Try cmpmemM first if it exists, 454 then fall back to cmpstrM. 455 * builtins.c (expand_builtin_memcmp): Likewise. 456 * config/s390/s390-protos.h (s390_expand_cmpstr): Rename to... 457 (s390_expand_cmpmem): ... this. 458 * config/s390/s390.md (cmpmemdi, cmpmemsi, cmpmem_short_64, 459 cmpmem_short_31, cmpmem_long_64, cmpmem_long_31): Renamed 460 from cmpstr* patterns. Rename call to s390_expand_cmpstr 461 to s390_expand_cmpmem. 462 * config/s390/s390.c (s390_expand_cmpstr): Rename to... 463 (s390_expand_cmpstr): ... this. Rename cmpstr* instructions 464 to cmpmem*. 465 * config/i370/i370.md (cmpmemsi, cmpmemsi_1): Renamed from 466 cmpstr* patterns. 467 * doc/md.texi (cmpstrM): Describe as String compare insn, not 468 Block compare insn. 469 (cmpmemM): Add. 470 4712004-07-25 Andreas Jaeger <aj@suse.de> 472 473 Backport from mainline: 474 * libgcc-std.ver: Add __unorddf2 and __unordsf2 with version 3.3.4. 475 4762004-07-25 Kaz Kojima <kkojima@gcc.gnu.org> 477 478 PR target/13250 479 Backport from mainline: 480 * config/sh/sh.md (rotlsi3): Use emit_move_insn. 481 482 PR target/15647 483 Backport from mainline: 484 * config/sh/t-linux (SHLIB_MAPFILES): Use sh specific 485 libgcc-std.ver. 486 * config/sh/libgcc-std.ver: New file. 487 4882004-07-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 489 490 PR target/15202 491 * pa.md (movdi, movsi, movhi, movqi): Support move from shift amount 492 register to general register for DI, SI, HI and QI modes. Remove 493 move to shift amount register in DF mode. 494 495 PR rtl-optimization/14782 496 * pa.c (emit_move_sequence): Use SFmode for 4-byte modes when doing 497 the address checks for secondary reloads for loads from and stores 498 to floating-point registers. 499 * pa.h (EXTRA_CONSTRAINT, case T): Use SFmode for 4-byte modes 500 in the address check. Move work around for ELF32 targets to 501 GO_IF_LEGITIMATE_ADDRESS. 502 (GO_IF_LEGITIMATE_ADDRESS): Require constant offsets to be 503 correctly aligned for DImode loads and stores. Don't allow long 504 SFmode displacements on ELF32. 505 5062004-07-25 Matthias Klose <doko@debian.org> 507 508 Backport: 509 PR rtl-optimization/14700 510 511 2004-06-24 Eric Christopher <echristo@redhat.com> 512 513 * combine.c (distribute_notes): Don't delete sets to 514 global register variables. 515 516 2004-06-29 Zack Weinberg <zack@codesourcery.com> 517 518 * combine.c (distribute_notes): Don't look at global_regs for 519 pseudos. 520 5212004-07-23 James E Wilson <wilson@specifixinc.com> 522 523 PR target/16559 524 * ia64.c (ia64_expand_load_address): For CONST, replace 525 gen_load_symptr call with recursive call. 526 5272004-07-17 Eric Botcazou <ebotcazou@libertysurf.fr> 528 529 Backport from mainline: 530 2004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr> 531 532 PR target/13926 533 * config/sparc/sparc-protos.h (output_ubranch): New prototype. 534 * config/sparc/sparc.c (output_ubranch): New function. 535 * config/sparc/sparc.md (jump pattern): Use it. 536 5372004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr> 538 539 PR target/16494 540 * config/sparc/sparc.c (output_cbranch): Properly guard 541 the code handling far branches with TARGET_V9. 542 * config/sparc/sparc.md (length attribute): Document the 543 side-effect of having a length greater or equal to 3. 544 5452004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr> 546 Lloyd Parkes <lloyd@must-have-coffee.gen.nz> 547 548 PR target/15186 549 * config/sparc/sol2-bi.h (LINK_ARCH64_SPEC_BASE): Pass 550 /usr/ucblib/sparcv9 as -R path when -compat-bsd is specified. 551 5522004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr> 553 Martin Sebor <sebor@roguewave.com> 554 555 PR target/12602 556 * doc/invoke.texi (SPARC options): Document -threads 557 and -pthreads on Solaris. 558 5592004-07-12 Eric Botcazou <ebotcazou@libertysurf.fr> 560 561 * config/sparc/sol2-bi.h: Handle TARGET_CPU_ultrasparc3. 562 (CPP_CPU_SPEC): Handle -mcpu=ultrasparc3. 563 (ASM_CPU_SPEC): Likewise 564 * config/sparc/sol2.h: Handle TARGET_CPU_ultrasparc3. 565 (ASM_CPU_SPEC): Handle -mcpu=ultrasparc3. 566 5672004-07-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 568 569 * pa.c (output_indirect_call): Only use %r2 as the link register in 570 indirect calls with the long PA 2.0 pc-relative branch. 571 572 PR target/16459 573 * pa.c (output_indirect_call): Use %r2 as the link register when 574 calling $$dyncall with a pc-relative branch. 575 5762004-07-07 Andreas Schwab <schwab@suse.de> 577 578 * config/ia64/ia64.md: Define new attribute "empty". 579 (prologue_use, nop_x, insn_group_barrier): Set it. 580 581 * config/ia64/ia64.c (ia64_reorg): When looking for trailing call 582 skip over "empty" insns. 583 5842004-07-04 Gerald Pfeifer <gerald@pfeifer.com> 585 586 * doc/contrib.texi (Contributors): Adjust link for GNU Classpath. 587 5882004-06-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 589 590 * pa.c (emit_move_sequence): Fix loading of non 14-bit CONST operands 591 when generating PIC code. 592 5932004-06-28 Josef Zlomek <zlomekj@suse.cz> 594 595 PR c/15549 596 Backport from mainline 597 2003-08-19 Mark Mitchell <mark@codesourcery.com> 598 599 PR c++/11946 600 * convert.c (convert_to_integer): Use CONVERT_EXPR (instead of 601 NOP_EXPR) when necessary. 602 6032004-06-17 Ian Lance Taylor <ian@wasabisystems.com> 604 605 PR middle-end/16038 606 Backport from mainline: 607 Fri Apr 4 17:43:52 2003 Olivier Hainque <hainque@act-europe.fr> 608 609 * emit-rtl.c (get_mem_attrs): Adjust alignment tests determining 610 use of default attributes to agree MEM_ALIGN macro. 611 6122004-05-31 Release Manager 613 614 * GCC 3.3.4 Released. 615 6162004-05-31 Eric Botcazou <ebotcazou@libertysurf.fr> 617 618 PR target/15693 619 * config/sparc/sparc.c (compare_operand): New predicate. 620 * config/sparc/sparc.h (PREDICATE_CODES): Add it. 621 * config/sparc/sparc.md (cmpsi expander): Use it. If the first 622 operand is a ZERO_EXTRACT and the second operand is not zero, 623 force the former to a register. 624 (cmpdi expander): Likewise. 625 6262004-05-29 Eric Botcazou <ebotcazou@libertysurf.fr> 627 628 PR optimization/13653 629 * loop.c (loop_givs_rescan): When reducing a non-replaceable giv, 630 clear the RTX_UNCHANGING_P flag. 631 6322004-05-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 633 634 PR bootstrap/14671 635 * alias.c (init_alias_analysis): Allocate alias_invariant array with 636 ggc_alloc_cleared instead of xrealloc. 637 (end_alias_analysis): Don't free alias_invariant. 638 6392004-05-27 Richard Henderson <rth@redhat.com> 640 641 Backport from mainline: 642 2004-01-19 Richard Henderson <rth@redhat.com> 643 * alpha.md (UNSPEC_NT_LDA): Renumber. 644 (UNSPEC_CVTLQ, cvtlq): New. 645 (extendsidi2_1): Rename from extendsidi2_nofix; remove f/f. 646 (extendsidi2_fix): Remove. 647 (extendsidi2 splitter): Use cvtlq. 648 (extendsidi2 fp peepholes): Remove. 649 (cvtql): Use SFmode instead of SImode. 650 (fix_trunc?fsi): Update to match. 651 (floatsisf2_ieee, floatsisf2, floatsidf2_ieee, floatsidf2): New. 652 (movsi): Rename from movsi_nofix, remove f alternatives. 653 (movsi_nt_vms): Similarly. 654 (movsi_fix, movsi_nt_vms_fix): Remove. 655 6562004-05-26 Hans-Peter Nilsson <hp@axis.com> 657 658 PR optimization/15296 659 * reorg.c (fill_simple_delay_slots): Use next_real_insn when 660 getting last consecutive label at a branch. 661 (relax_delay_slots): Similar, near top of loop. 662 6632004-05-17 H.J. Lu <hongjiu.lu@intel.com> 664 665 Backport from mainline 666 667 PR target/15301 668 PR target/15302 669 2004-05-17 Jan Hubicka <jh@suse.cz> 670 671 * i386.c (construct_container): Do not produce BLKmode registers. 672 (classify_argument): Properly compute alignment of complex types. 673 6742004-05-17 Eric Botcazou <ebotcazou@libertysurf.fr> 675 676 PR optimization/11841 677 * loop.h (REGNO_LAST_NOTE_LUID): New macro. 678 * unroll.c (unroll_loop): Take into account notes when deciding 679 whether a pseudo is local to the loop. 680 6812004-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net> 682 683 Backport from mainline 684 2004-05-01 Ulrich Weigand <uweigand@de.ibm.com> 685 PR middle-end/15054 686 * expr.c (expand_expr_real): Do not call preserve_temp_slots 687 on a TARGET_EXPR temp. 688 * function.c (assign_stack_temp_for_type): Set 'keep' flag for 689 TARGET_EXPR temp slots. 690 6912004-05-13 Kaz Kojima <kkojima@gcc.gnu.org> 692 693 PR target/15130 694 * config/sh/sh-protos.h (sh_expand_epilogue): Change prototype. 695 * config/sh/sh.c (output_stack_adjust): Generate a special 696 push/pop sequence when failing to get a temporary register for 697 non SHmedia epilogue. 698 (sh_expand_epilogue): Add an argument to show whether it's for 699 sibcall or not. Take the sibcall epilogue into account. 700 (sh_need_epilogue): Call sh_expand_epilogue with 0. 701 * config/sh/sh.md (sibcall_epilogue): Call sh_expand_epilogue 702 with 1. 703 (epilogue): Call sh_expand_epilogue with 0. 704 7052004-05-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 706 707 * alias.c (set_reg_known_value, set_reg_known_equiv_p): 708 Prototype. 709 (get_reg_known_value, set_reg_known_value, 710 get_reg_known_equiv_p, set_reg_known_equiv_p): Use traditional 711 style function definitions. 712 (set_reg_known_equiv_p): Change parameter from bool to int. 713 714 Backport: 715 716 2003-06-13 Matt Kraai <kraai@alumni.cmu.edu> 717 718 * unwind-c.c: Define NO_SIZE_OF_ENCODED_VALUE. 719 * unwind-pe.h (size_of_encoded_value): Do not define if 720 NO_SIZE_OF_ENCODED_VALUE is defined. 721 722 2003-10-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 723 724 * unwind-dw2.c (NO_SIZE_OF_ENCODED_VALUE): Define when 725 appropriate. 726 727 2003-05-07 Richard Henderson <rth@redhat.com> 728 729 * unwind-dw2.c (_Unwind_GetCFA): Cast pointer to _Unwind_Ptr, 730 not _Unwind_Word. 731 7322004-05-08 Eric Botcazou <ebotcazou@libertysurf.fr> 733 734 * doc/install.texi (sparc-sun-solaris2*): Document bootstrap 735 problems with earlier versions of the GNU compiler. 736 7372004-05-07 Steven Bosscher <stevenb@suse.de> 738 739 PR opt/14749 740 * expr.c (do_jump): If TREE_CONSTANT_OVERFLOW is set, don't 741 trust integer_zerop. Just expand both branches. 742 7432004-04-29 Matthias Klose <doko@debian.org> 744 745 Backport: 746 747 2004-03-04 Eric Botcazou <ebotcazou@libertysurf.fr> 748 749 PR optimization/14235 750 * expr.c (convert_move): Copy the source to a new pseudo 751 when converting from a sub-word source to a larger-than-word 752 register which conflicts with the source. 753 7542004-04-29 Jakub Jelinek <jakub@redhat.com> 755 756 * config/sparc/sparc.h (FLOATDITF2_LIBCALL, FIX_TRUNCTFDI2_LIBCALL, 757 FIXUNS_TRUNCTFDI2_LIBCALL): Define. 758 (INIT_TARGET_OPTABS): If DITF_CONVERSION_LIBFUNCS, initialize 759 DI <-> TF libfuncs for TARGET_ARCH32. 760 (DITF_CONVERSION_LIBFUNCS): Define to 0. 761 * config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1. 762 * config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1. 763 * config.gcc (sparc-*-linux*): Revert 2004-03-25 change. 764 * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise. 765 * config/sparc/t-linux: Removed. 766 7672004-04-28 H.J. Lu <hongjiu.lu@intel.com> 768 769 PR target/15084 770 * config/i386/i386.md (*movsi_insv_1_rex64): Changed to DImode 771 and renamed to movdi_insv_1_rex64. 772 (insv): Support SImode for 32bit and DImode for 64bit. 773 7742004-04-24 Richard Henderson <rth@redhat.com> 775 776 PR bootstrap/14671 777 * alias.c (alias_invariant, alias_invariant_size): Mark GTY. 778 (reg_known_value, reg_known_value_size): Likewise; make static. 779 (reg_known_equiv_p): Make static. 780 (clear_reg_alias_info): Update for new indexing. 781 (get_reg_known_value, set_reg_known_value): New. 782 (get_reg_known_equiv_p, set_reg_known_equiv_p): New. 783 (canon_rtx): Use them. 784 (init_alias_analysis): Likewise. Allocate reg_known_value with gc. 785 Don't play queer offsetting games with reg_known_value and 786 reg_known_equiv_p. 787 (end_alias_analysis): Don't free reg_known_value. 788 * rtl.h (get_reg_known_value, get_reg_known_equiv_p): Declare. 789 * sched-deps.c (reg_known_equiv_p, reg_known_value): Remove. 790 (deps_may_trap_p, sched_analyze_1, sched_analyze_2): Use the new 791 functions instead. 792 7932004-04-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 794 795 * pa64-hpux.h (LIB_SPEC): Fix library specification used with GNU ld. 796 797 * pa64-regs.h (DBX_REGISTER_NUMBER): Simplify and correct mapping of 798 SAR register. Fix comment. 799 (ADDITIONAL_REGISTER_NAMES): Correct register number of SAR register 800 (%cr11). 801 8022004-04-14 Zack Weinberg <zack@codesourcery.com> 803 804 PR 14936 805 Backport from mainline: 806 2004-03-12 Matt Austern <austern@apple.com> 807 808 * varasm.c (make_decl_one_only): Don't use DECL_COMMON if 809 we're compiling for a SUPPORTS_ONE_ONLY target. 810 8112004-04-13 H.J. Lu <hongjiu.lu@intel.com> 812 813 PR debug/14919 814 815 From gcc-3_2-rhl8-branch: 816 2003-02-04 Jakub Jelinek <jakub@redhat.com> 817 818 * dwarf2out.c (dwarf2out_finish): Add AT_comp_dir attribute 819 even if input file name is absolute, but one of the includes 820 is relative. 821 8222004-04-06 Devang Patel <dpatel@apple.com> 823 824 PR 14467 825 * config/darwin.h (LINK_COMMAND_SPEC): Use c++filt instead of c++filt3. 826 8272004-03-25 Ulrich Weigand <uweigand@de.ibm.com> 828 829 * expr.c (store_constructor): Use gen_int_mode to correctly 830 sign-extend CONST_INT value. 831 8322004-04-01 Alan Modra <amodra@bigpond.net.au> 833 Jakub Jelinek <jakub@redhat.com> 834 835 * gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with 836 -lgcc --as-needed -lgcc_s --no-as-needed by default. 837 * configure.in (HAVE_LD_AS_NEEDED): Check for ld --as-needed. 838 * configure: Rebuilt. 839 * config.in: Rebuilt. 840 * Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT). 841 (stage2-start, stage3-start, stage4-start): Likewise. 842 (stageprofile-start, stagefeedback-start): Likewise. 843 8442004-04-01 Jakub Jelinek <jakub@redhat.com> 845 846 PR c++/14755 847 * fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in 848 "bitfld++ == const" to "++bitfld == const + incr" transformations. 849 8502004-04-01 Jakub Jelinek <jakub@redhat.com> 851 852 PR c/14069 853 * c-decl.c (finish_struct): Change type of incorrect flexible array 854 field into error_mark_node. 855 856 Backport from mainline: 857 2003-04-07 J"orn Rennecke <joern.rennecke@superh.com> 858 859 * c-typeck.c (output_init_element): Check for type == error_mark_node. 860 8612004-04-01 Alan Modra <amodra@bigpond.net.au> 862 863 * dwarf2out.c (DEBUG_STR_SECTION_FLAGS): Heed flag_merge_constants. 864 8652004-03-30 Matthias Klose <doko@debian.org> 866 867 Backport: 868 869 2004-01-14 Richard Earnshaw <rearnsha@arm.com> 870 871 PR bootstrap/12527 872 * config.gcc (arm*-*-linux*): Don't include unknown-elf.h in tm_file. 873 Move linux-gas.h and linux-elf.h before aout.h. 874 * arm/arm.h (INITIALIZE_TRAMPOLINE): Only define if not already. 875 * arm/linux-elf.h (SUBTARGET_CPU_DEFAULT): Define. 876 877 2003-05-15 Philip Blundell <philb@gnu.org> 878 879 * config/arm/arm.c (arm_is_xscale): Rename to arm_arch_xscale. 880 All uses updated. 881 (arm_tune_xscale): New variable. 882 (arm_override_options): Set it. 883 (arm_adjust_cost): Use it in place of arm_arch_xscale. 884 (arm_gen_load_multiple): Likewise. 885 (arm_gen_store_multiple): Likewise. 886 * config/arm/arm.md (is_xscale): Likewise. 887 * config/arm/arm.h (arm_tune_xscale): Declare. 888 889 2003-04-28 Nick Clifton <nickc@redhat.com> 890 891 * config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Remove definition. 892 8932004-03-29 Matthias Klose <doko@debian.org> 894 895 2003-09-17 Daniel Jacobowitz <drow@mvista.com> 896 897 * config/rs6000/sysv4.h (LIB_LINUX_SPEC): Give -lpthread before -lc. 898 8992004-03-29 Matthias Klose <doko@debian.org> 900 901 Backport: 902 2004-01-15 Andreas Schwab <schwab@suse.de> 903 904 PR bootstrap/13562 905 * config/m68k/m68k.c (output_move_const_into_data_reg): Clear cc 906 status for NOTB/NOTW/NEGW methods. 907 9082004-03-29 Aldy Hernandez <aldyh@redhat.com> 909 910 PR 14219 911 * c-typeck.c (build_binary_op): Do not allow comparisons of 912 vectors. 913 9142004-03-27 Matthias Klose <doko@debian.org> 915 916 PR target/11716 917 Michael Eager <eager@mvista.com> 918 919 * config/mips/mips.md: Limit the maximum length of a short branch to 920 64K instead of 128K. 921 9222004-03-26 Richard Henderson <rth@redhat.com> 923 924 PR 11527 925 * c-typeck.c (pop_init_level): Emit pending init elements earlier 926 rather than later. 927 9282004-03-26 Jan Hubicka <jh@suse.cz> 929 H.J. Lu <hongjiu.lu@intel.com> 930 931 PR Target/14723 932 * config.gcc: Add support --with-cpu=nocona. 933 934 * config/i386/i386.c (override_options): Add support for 935 Prescott and Nocona. 936 937 * doc/invoke.texi: Extend documentation of -mcpu/-march for new 938 CPUs. 939 9402004-03-25 Jakub Jelinek <jakub@redhat.com> 941 942 * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file. 943 * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set. 944 * config/sparc/t-linux: New file. 945 9462004-03-24 Kelley Cook <kcook@gcc.gnu.org> 947 948 Backport: 949 2004-03-01 Mark Mitchell <mark@codesourcery.com> 950 951 PR bootstrap/14356 952 * gcc.c (process_command): Remove const-qualification from argv. 953 (main): Likewise. 954 9552004-03-24 Alexandre Oliva <aoliva@redhat.com> 956 957 PR preprocessor/14438 958 * cpplib.c (do_pragma): Remove line_change call after pragma 959 handler. 960 9612004-03-22 Andrew Pinski <pinskia@physics.uc.edu> 962 963 BackPort: 964 2004-01-09 Andrew Pinski <pinskia@physics.uc.edu> 965 966 PR debug/11231 967 * dbxout.c (dbxout_type_fields): Return if any item is error_mark_node or the 968 type is error_mark_node. 969 9702004-03-22 Eric Botcazou <ebotcazou@libertysurf.fr> 971 972 PR middle-end/14470 973 * expr.c (mark_queue): New function. 974 (emit_insns_enqueued_after_mark): New function replacing 975 emit_queue. Clear the body of emitted queued insns. 976 (emit_queue): Call emit_insns_enqueued_after_mark. 977 (store_expr): Mark the increment queue on entry. Emit 978 only the incrementations queued when expanding the source. 979 9802004-03-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 981 982 PR target/14260 983 * config/rtems.h: Add STD_LIB_SPEC and LIB_SPEC. 984 9852004-03-21 Roger Sayle <roger@eyesopen.com> 986 987 * fold-const.c (fold) <EQ_EXPR>: Rewrite optimization to transform 988 "foo++ == const" into "++foo == const+incr". 989 9902004-03-21 Roger Sayle <roger@eyesopen.com> 991 992 PR target/13889 993 * cse.c (fold_rtx): Avoid substituting constants into unary 994 conversion operations. 995 9962004-03-17 Ian Lance Taylor <ian@wasabisystems.com> 997 998 Backport: 999 2003-11-08 Joseph S. Myers <jsm@polyomino.org.uk> 1000 1001 * c-typeck.c (pedantic_lvalue_warning): Deprecate compound 1002 expressions as lvalues. 1003 * doc/extend.texi: Document that all extended lvalues are now 1004 deprecated. 1005 1006 2003-11-05 Joseph S. Myers <jsm@polyomino.org.uk> 1007 1008 * c-typeck.c (pedantic_lvalue_warning): Deprecate use of 1009 conditional expressions as lvalues. 1010 1011 2003-10-22 Joseph S. Myers <jsm@polyomino.org.uk> 1012 1013 * c-typeck.c (pedantic_lvalue_warning): Unconditionally warn of 1014 deprecation of casts as lvalues. 1015 * fixinc/inclhack.def (obstack_lvalue_cast): New fix. 1016 * fixinc/fixincl.x: Regenerate. 1017 10182004-03-15 Richard Henderson <rth@redhat.com> 1019 1020 PR middle-end/14535 1021 * except.c (collect_one_action_chain): Record action for cleanup 1022 outer of exception spec. 1023 10242004-03-13 Dara Hazeghi <dhazeghi@yahoo.com> 1025 1026 * doc/install.texi: Note status of -fnew-ra. 1027 10282004-03-13 Jakub Jelinek <jakub@redhat.com> 1029 1030 PR target/14533 1031 * config/s390/s390.c (legitimize_pic_address): Don't abort on UNSPEC 1032 other than 100. 1033 10342004-03-13 Alan Modra <amodra@bigpond.net.au> 1035 1036 PR debug/11983 1037 * dwarf2out.c (enum dw_val_class): Rename dw_val_class_float to 1038 dw_val_class_vec. Replace use throughout file. 1039 (dw_float_const): Delete. 1040 (dw_vec_const): New. 1041 (dw_val_struct_union): Rename val_float to val_vec. Replace use 1042 throughout file. 1043 (add_AT_vec): Rename from add_AT_float. Add elt_size param. 1044 (same_dw_val_p): Adjust vec comparison. Use memcmp. 1045 (size_of_die): Adjust dw_val_class_vec sizing. 1046 (output_die): Output dw_val_class_vec. 1047 (insert_int, extract_int, insert_float): New functions. 1048 (add_const_value_attribute): Use insert_float for CONST_DOUBLE. 1049 Handle CONST_VECTOR. 1050 (add_location_or_const_value_attribute): Handle CONST_VECTOR. 1051 10522004-03-12 Gabriel Dos Reis <gdr@integrable-solutions.net> 1053 1054 Backport: 1055 2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr> 1056 PR middle-end/14470 1057 * expr.c (store_expr): Call emit_queue before generating the move 1058 from the temporary to the original target. Protect the temporary 1059 from emit_queue. 1060 10612004-03-10 James E Wilson <wilson@specifixinc.com> 1062 1063 PR target/13877 1064 * unroll.c (unroll_loop): If precondition loop, clear the initial_value 1065 field in loop_info. 1066 10672004-03-12 Gabriel Dos Reis <gdr@integrable-solutions.net> 1068 1069 Backport: 1070 2004-03-05 Nathan Sidwell <nathan@codesourcery.com> 1071 PR driver/13577 1072 * gcc.c (cc1_options): Robustify -auxbase-strip from multiple -o 1073 options. 1074 10752004-03-12 Gabriel Dos Reis <gdr@integrable-solutions.net> 1076 1077 Endorse: 1078 2004-01-10 Eric Botcazou <ebotcazou@libertysurf.fr> 1079 PR optimization/13472 1080 * reload1.c (reload): Don't record unchanging memory locations. 1081 10822004-03-12 Gabriel Dos Reis <gdr@integrable-solutions.net> 1083 1084 Backport 1085 2004-02-27 Mark Mitchell <mark@codesourcery.com> 1086 PR middle-end/13448 1087 * c-tree.h (readonly_warning): Rename to ... 1088 (readonly_error): ... this. 1089 * c-typeck.c (build_unary_op): Adjust accordingly. 1090 (readonly_warning): Rename to ... 1091 (readonly_error): ... this and issue errors, not warnings. 1092 (build_modify_expr): Call readonly_error, not readonly_warning. 1093 (c_expand_asm_operands): Likewise. 1094 * tree-inline.c (optimize_inline_calls): Do not inline 1095 functions after errors have occurred. 1096 10972004-03-12 Philip Blundell <philb@gnu.org> 1098 1099 PR target/10730 1100 Backport from trunk: 1101 2003-05-15 Philip Blundell <philb@gnu.org> 1102 * config/arm/arm.c (adjacent_mem_locations): Reject offsets 1103 involving invalid constants. 1104 11052004-03-12 Philip Blundell <philb@gnu.org> 1106 1107 PR target/14558 1108 Backport from trunk: 1109 2004-02-25 Richard Earnshaw <rearnsha@arm.com> 1110 * arm.h (ARM_GO_IF_LEGITIMATE_INDEX): For QImode the range of 1111 an offset is -4095...+4095 inclusive. 1112 11132004-03-11 Richard Henderson <rth@redhat.com> 1114 1115 PR target/14539 1116 * config/alpha/alpha.h (STACK_BOUNDARY): Set to 128. 1117 11182004-03-10 Roger Sayle <roger@eyesopen.com> 1119 1120 PR middle-end/14289 1121 * c-typeck.c (c_mark_addressable): A register variable should 1122 be considered global if its not automatic, i.e. TREE_PUBLIC, 1123 TREE_STATIC or DECL_EXTERNAL. 1124 * function.c (put_var_into_stack): Call abort when placing a 1125 hard register into the stack, if x_parm_reg_stack_loc is NULL. 1126 11272004-03-10 Andrew Haley <aph@redhat.com> 1128 1129 PR optimization/14381 1130 * function.c (expand_function_end): Emit a blockage insn before 1131 the epilogue when -fnon-call-exceptions is used. 1132 11332004-03-10 Joel Sherrill <joel@oarcorp.com> 1134 1135 PR target/14480 1136 * config.gcc (powerpc*-*-rtems*): Use rs6000/t-rtems. 1137 11382004-03-07 Aldy Hernandez <aldyh@redhat.com> 1139 1140 * config/rs6000/rs6000.md (ashrdi3): Do not call ashrdi3_no_power 1141 for little endian. 1142 ("ashrdi3_no_power"): Disable for little endian. 1143 (ashrdi3): Same. 1144 11452004-03-07 Richard Henderson <rth@redhat.com> 1146 1147 * config/alpha/alpha.h (MASK_LONG_DOUBLE_128): New. 1148 (TARGET_LONG_DOUBLE_128): New. 1149 (TARGET_SWITCHES): Add long-double-{128,64}. 1150 (TARGET_HAS_XFLOATING_LIBS): Default to TARGET_LONG_DOUBLE_128. 1151 (LONG_DOUBLE_TYPE_SIZE): Honor TARGET_LONG_DOUBLE_128. 1152 (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New. 1153 (WIDEST_HARDWARE_FP_SIZE): New. 1154 (TARGET_CPU_CPP_BUILTINS): Define __LONG_DOUBLE_128__. 1155 * config/alpha/alpha.c (override_options): Clear MASK_LONG_DOUBLE_128 1156 if TARGET_VAX_FLOAT. 1157 * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): Remove. 1158 (TARGET_DEFAULT): Set MASK_LONG_DOUBLE_128. 1159 11602004-03-08 Hans-Peter Nilsson <hp@axis.com> 1161 1162 PR target/14471 1163 * doc/invoke.texi (CRIS Options): Document -mmul-bug-workaround 1164 and -mno-mul-bug-workaround. 1165 * config/cris/cris.md ("smulsi3_highpart", "umulsi3_highpart") 1166 ("mulsidi3", "umulsidi3"): Prefix output template with "%!". 1167 ("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3"): 1168 Ditto. Make attribute "slottable" dependent on TARGET_MUL_BUG. 1169 * config/cris/mulsi3.asm (__Mul) [__CRIS_arch_version >= 10]: Make 1170 sure mulu.d is not last on cache-line. 1171 * config/cris/cris.h (ASM_SPEC): Translate -mno-mul-bug-workaround 1172 into -no-mul-bug-abort depending on HAVE_AS_MUL_BUG_ABORT_OPTION. 1173 (TARGET_MASK_MUL_BUG, TARGET_MUL_BUG): New macros. 1174 (TARGET_SWITCHES): New options -mmul-bug-workaround and 1175 -mno-mul-bug-workaround. 1176 (TARGET_DEFAULT): Include TARGET_MASK_MUL_BUG. 1177 (PRINT_OPERAND_PUNCT_VALID_P): Include '!'. 1178 * config/cris/cris.c (cris_operand_extend_operator): Clarify 1179 relation to MULT in head comment. 1180 (cris_op_str): Abort for MULT. 1181 (cris_print_operand) <case '!'>: New case. 1182 11832004-03-06 Richard Henderson <rth@redhat.com> 1184 1185 * config/alpha/alpha.c (alpha_in_small_data_p): False for functions. 1186 11872004-03-05 Ulrich Weigand <uweigand@de.ibm.com> 1188 1189 * config/s390/s390.md ("load_multiple", "*load_multiple_di", 1190 "*load_multiple_si"): Allow only if reload_completed. 1191 ("store_multiple", "*store_multiple_di", "*store_multiple_si"): 1192 Likewise. 1193 11942004-03-05 Ulrich Weigand <uweigand@de.ibm.com> 1195 1196 * config/s390/s390.c (s390_expand_movstr): Clobber double-word 1197 register before initializing high and low parts separately. 1198 (s390_expand_clrstr): Likewise. 1199 (s390_expand_cmpstr): Likewise. 1200 12012004-03-05 Ulrich Weigand <uweigand@de.ibm.com> 1202 1203 PR optimization/12147 1204 * reload1.c (reload_reg_free_p): RELOAD_OTHER conflicts with 1205 RELOAD_FOR_OPADDR_ADDR. 1206 (reload_reg_reaches_end_p): A RELOAD_FOR_OTHER_ADDRESS register 1207 might be reused as RELOAD_FOR_OPADDR_ADDR register. 1208 12092004-03-05 Ian Lance Taylor <ian@wasabisystems.com> 1210 1211 PR target/1532 1212 Backport from mainline: 1213 1214 2004-02-24 Kazu Hirata <kazu@cs.umass.edu> 1215 1216 * cse.c (cse_change_cc_mode_insns): Stop at any instruction 1217 which modifies NEWREG. 1218 (cse_condition_code_reg): Update the mode of CC_REG in 1219 CC_SRC_INSN on our own. 1220 1221 2004-02-11 Richard Henderson <rth@redhat.com> 1222 1223 * flow.c (insn_dead_p): A clobber of a dead hard register is a 1224 dead insn after reload. 1225 1226 2004-01-24 Ian Lance Taylor <ian@wasabisystems.com> 1227 1228 * cse.c (cse_cc_succs): Change the mode of the source expression 1229 as soon as decide we need a new mode. Don't permit changing modes 1230 if we found a match in a successor block. 1231 (cse_condition_code_reg): Save original mode of source expression 1232 so that we know whether we have to change the mode in other 1233 insns. 1234 1235 2004-01-24 Andreas Tobler <a.tobler@schweiz.ch> 1236 1237 * cse.c: (cse_cc_succs) Fix comparison warning. 1238 1239 2004-01-23 Ian Lance Taylor <ian@wasabisystems.com> 1240 1241 * cse.c: Include "target.h". 1242 (cse_change_cc_mode): New static function. 1243 (cse_change_cc_mode_insns, cse_cc_succs): Likewise. 1244 (cse_condition_code_reg): New function. 1245 (default_cc_modes_compatible): New function. 1246 * rtl.h (cse_condition_code_reg): Declare. 1247 (default_cc_modes_compatible): Declare. 1248 * toplev.c (rest_of_compilation): Call cse_condition_code_reg. 1249 * target.h (struct gcc_target): Add fixed_condition_code_regs and 1250 cc_modes_compatible. 1251 * target-def.h (TARGET_FIXED_CONDITION_CODE_REGS): Define. 1252 (TARGET_CC_MODES_COMPATIBLE): Define. 1253 (TARGET_INITIALIZER): Add new initializers. 1254 * targhooks.c (default_cc_modes_compatible): Declare. 1255 * hooks.c (hook_bool_intp_intp_false): New function. 1256 * hooks.h (hook_bool_intp_intp_false): Declare. 1257 * config/i386/i386.c (TARGET_FIXED_CONDITION_CODE_REGS): Define. 1258 (TARGET_CC_MODES_COMPATIBLE): Define. 1259 (ix86_fixed_condition_code_regs): New static function. 1260 (ix86_cc_modes_compatible): Likewise. 1261 * doc/gccint.texi: Add copyright 2004. 1262 * doc/tm.texi (Condition Code): Document new hooks. 1263 * Makefile.in (cse.o): Depend upon $(TARGET_H). 1264 1265 PR inline-asm/6162 1266 * reload.c (find_reloads): Only support one pair of commutative 1267 operands. 1268 12692004-03-02 Richard Henderson <rth@redhat.com> 1270 1271 PR middle-end/11767 1272 * optabs.c (prepare_cmp_insn): Force trapping memories to registers 1273 before the compare, if flag_non_call_exceptions. 1274 12752004-03-02 Richard Henderson <rth@redhat.com> 1276 1277 PR middle-end/14327 1278 * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before 1279 emitting the label, not after. 1280 12812004-03-02 Danny Smith <dannysmith@users.sourceforge.net> 1282 1283 * cppinit.c (init_standard_includes): Check that sysroot 1284 string is not empty. 1285 12862004-03-01 Gabriel Dos Reis <gdr@integrable-solutions.net> 1287 1288 Backport from 3.4.0: 1289 2004-02-29 Mark Mitchell <mark@codesourcery.com> 1290 PR debug/14328 1291 * dwarf2out.c (gen_enumeration_type_die): Output all enumeration 1292 constants as signed values. 1293 1294 2004-01-16 J"orn Rennecke <joern.rennecke@superh.com> 1295 PR optimization/11864 1296 * reload1.c (reload_cse_simplify_operands): Don't remove 1297 implicit extension from LOAD_EXTEND_OP. 1298 12992004-02-29 Hans-Peter Nilsson <hp@axis.com> 1300 1301 PR target/14346 1302 * config/cris/cris.c (cris_asm_output_mi_thunk): For PIC, prepend 1303 TAB to jumping "add.d" insn. Avoid PLT indirection by equating a 1304 local symbol and jumping through it. 1305 13062004-02-29 Gabriel Dos Reis <gdr@integrable-solutions.net> 1307 1308 Backport from mainline: 1309 2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr> 1310 PR target/10904 1311 PR target/13058 1312 * config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): New. 1313 Forbid mode changes from SImode for lower FP regs if ARCH64. 1314 13152004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1316 1317 * pa.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE, TRAMPOLINE_CODE_SIZE, 1318 MIN_CACHELINE_SIZE, INITIALIZE_TRAMPOLINE): Backport fixes from 3.5. 1319 * pa.md (anddi3, dcacheflush, icacheflush): Likewise. 1320 1321 * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg. 1322 13232004-02-27 Ian Lance Taylor <ian@wasabisystems.com> 1324 1325 PR optimization/7871 1326 * flow.c (mark_set_1): Don't add LOG_LINKS for global registers 1327 from or to call insns. 1328 13292004-02-27 Eric Botcazou <ebotcazou@libertysurf.fr> 1330 1331 PR optimization/7871 1332 * flow.c (propagate_one_insn): Interpret calls as setting global 1333 registers, not merely clobbering them. 1334 13352004-02-26 Richard Earnshaw <rearnsha@arm.com> 1336 Daniel Jacobowitz <drow@mvista.com> 1337 1338 PR target/14302 1339 * arm.h (ARM_GO_IF_LEGITIMATE_ADDRESS): Don't check the mode 1340 size for minipool references. 1341 13422004-02-25 Richard Earnshaw <rearnsha@arm.com> 1343 1344 PR target/14166 1345 * arm.h (THUMB_GO_IF_LEGITIMATE_ADDRESS): Only allow constant pool 1346 references from SImode. 1347 * arm.md (thumb_movhi_insn): Don't allow minipool references. 1348 13492004-02-24 Bob Wilson <bob.wilson@acm.org> 1350 1351 Backport from mainline (changes to xtensa_expand_prologue go into 1352 xtensa_reorg instead; remove irrelevant portions of the patch) 1353 1354 2004-02-09 Bob Wilson <bob.wilson@acm.org>: 1355 1356 * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Update. 1357 (init_cumulative_args): Likewise. 1358 (a7_overlap_mentioned_p): Delete prototype. 1359 * config/xtensa/xtensa.c (struct machine_function): Replace 1360 incoming_a7_copied field with need_a7_copy and vararg_a7 flags. 1361 Add set_frame_ptr_insn field. 1362 (xtensa_emit_move_sequence): Update call to xtensa_copy_incoming_a7. 1363 (xtensa_copy_incoming_a7): Rewrite to check need_a7_copy flag and check 1364 if the operand is an argument in a7. If so, copy a7 to a new pseudo 1365 at the function entry and replace the operand with the pseudo. 1366 (init_cumulative_args): Remove unused arguments. Add new "incoming" 1367 argument and record this flag in CUMULATIVE_ARGS. 1368 (function_arg): Remove result_mode and special-case code to handle 1369 arguments in a7. Instead, set need_a7_copy flag when there is an 1370 incoming argument in a7. 1371 (xtensa_expand_prologue): Remove code to search for set_frame_ptr insn 1372 and use the value recorded in cfun->machine->set_frame_ptr_insn. 1373 (xtensa_builtin_saveregs): Check for negative gp_left value. Set 1374 need_a7_copy and vararg_a7 flags. Use move_block_from_reg instead of 1375 special-case code. 1376 (a7_overlap_mentioned_p): Delete. 1377 * config/xtensa/xtensa.h (CUMULATIVE_ARGS): Add "incoming" flag. 1378 (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Remove useless 1379 arguments to init_cumulative_args and pass "incoming" flag instead. 1380 (BLOCK_REG_PADDING): Delete. 1381 * config/xtensa/xtensa.md (movdi, movsf, movdf): Remove unnecessary 1382 checks for reload_in_progress and reload_completed. Update calls to 1383 xtensa_copy_incoming_a7. 1384 (ashlsi3): Rename existing insn to ashlsi3_internal. Add expander 1385 to call xtensa_copy_incoming_a7. 1386 13872004-02-22 Jakub Jelinek <jakub@redhat.com> 1388 1389 * config/i386/i386.c (override_options): Don't imply 3DNow! for -m64 1390 by default. 1391 13922004-02-22 James E Wilson <wilson@specifixinc.com> 1393 1394 PR target/13918 1395 * sched-ebb.c (ebb_sched_info): Disable use of cselib. 1396 13972004-02-22 Hans-Peter Nilsson <hp@axis.com> 1398 1399 PR target/14209 1400 * config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak 1401 constraints to not match postincrement. Adjust the predicate to 1402 exclude a volatile memory reference. 1403 ("*andsi_clear"): Tweak constraints to not match postincrement. 1404 Adjust the predicate to exclude a volatile memory reference. 1405 ("*andhi_clear"): Ditto. Rename from "*andhi_clear_signed". 1406 ("*andhi_clear_unsigned"): Remove, non-matching pattern. 1407 14082004-02-14 Release Manager 1409 1410 * GCC 3.3.3 Released. 1411 14122004-02-12 Eric Botcazou <ebotcazou@libertysurf.fr> 1413 1414 PR target/14113 1415 Backport from mainline: 1416 1417 2004-02-03 Eric Botcazou <ebotcazou@libertysurf.fr> 1418 1419 * config/sparc/sparc.md (call followed by jump define_peephole's): 1420 Delete. 1421 14222004-02-06 H.J. Lu <hongjiu.lu@intel.com> 1423 1424 * doc/invoke.texi: Mention SSE2 and SSE3. 1425 1426 * config/i386/i386.h: Deprecate -mpni/-mno-pni. 1427 14282004-02-06 Kelley Cook <kcook@gcc.gnu.org> 1429 1430 * config/i386/i386.c: Rename pni to sse3. 1431 * config/i386/i386.h: Likewise. 1432 * config/i386/i386.md: Likewise. 1433 * config/i386/pmmintrin.h: Likewise. 1434 * doc/extend.texi: Likewise. 1435 * doc/invoke.texi: Likewise. 1436 14372004-02-03 Wolfgang Bangerth <bangerth@dealii.org> 1438 1439 PR other/14003 1440 * doc/invoke.texi (x86 options): Fix spelling/wording. 1441 14422004-02-01 Geoffrey Keating <geoffk@apple.com> 1443 1444 PR bootstrap/13960 1445 * config/rs6000/rs6000.h (LEGITIMATE_LO_SUM_ADDRESS_P): Accept 1446 lo_sum addresses on Darwin. 1447 14482004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr> 1449 1450 * config/sparc/sparc.c: Update copyright. 1451 * config/sparc/sparc.h: Likewise. 1452 * config/sparc/sparc.md: Likewise. 1453 14542004-01-29 Roger Sayle <roger@eyesopen.com> 1455 1456 PR java/13824 1457 * tree.c (unsafe_for_reeval): Handle EXIT_BLOCK_EXPR nodes specially 1458 as their EXIT_BLOCK_LABELED_BLOCK operands can lead to unbounded 1459 recursion. 1460 14612004-01-29 H.J. Lu <hongjiu.lu@intel.com> 1462 1463 * doc/invoke.texi: Remove the pni option from -mfpmath=. 1464 14652004-01-29 Gabriel Dos Reis <gdr@integrable-solutions.net> 1466 1467 Backport from mainline 1468 1469 2004-01-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 1470 1471 PR optimization/12440 1472 * loop.c: Include ggc.h. 1473 (loop_optimize): Run garbage collector between optimization of loops. 1474 * Makefile.in (loop.o): Add GGC_H dependency. 1475 14762004-01-24 Matthias Klose <doko@debian.org> 1477 1478 * objc/objc-act.c (is_public): Fix typo in message. 1479 14802004-01-23 Richard Henderson <rth@redhat.com> 1481 1482 PR opt/12941 1483 * combine.c (SHIFT_COUNT_TRUNCATED): Provide default value. 1484 (simplify_comparison): Don't simplify (eq (zero_extract c 1 r) 0) 1485 if SHIFT_COUNT_TRUNCATED is set. 1486 14872004-01-23 Ian Lance Taylor <ian@wasabisystems.com> 1488 1489 * doc/invoke.texi (Optimize Options): Note that --param arguments 1490 are subject to change without notice. 1491 14922004-01-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1493 1494 * reload.c (can_reload_into): Add prototype and K&R style function 1495 declaration. 1496 14972004-01-21 Andreas Jaeger <aj@suse.de> 1498 Michael Matz <matz@suse.de> 1499 1500 * doc/extend.texi (Extended Asm): Clarify memory clobber. 1501 15022004-01-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 1503 1504 PR target/13073 1505 * config/h8300/t-rtems (h8300-*-rtems*): New. 1506 * config.gcc: Use config/h8300/t-rtems. 1507 15082004-01-20 Gabriel Dos Reis <gdr@integrable-solutions.net> 1509 1510 Backport from mainline 1511 1512 2004-01-10 Jan Hubicka <jh@suse.cz> 1513 PR opt/12826 1514 * loop.c (insert_loop_mem): Prefer VOLATILE memory references to be 1515 stored. 1516 15172004-01-16 Jan Hubicka <jh@suse.cz> 1518 1519 PR opt/13608 1520 * i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function. 1521 15222004-01-16 Segher Boessenkool <boessen@de.ibm.com> 1523 1524 PR target/11793 1525 * config/rs6000/rs6000.h (LEGITIMATE_CONSTANT_P): Handle 1526 vectors. 1527 15282004-01-16 Jan Hubicka <jh@suse.cz> 1529 1530 PR opt/11350 1531 * cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal 1532 after reload. 1533 * cfgrtl.c (try_redirect_by_replacing_branch): Likewise. 1534 15352004-01-15 J"orn Rennecke <joern.rennecke@superh.com> 1536 1537 PR optimization/10392 1538 * reload.c (can_reload_into): New function. 1539 (push_reload): Use it. 1540 15412004-01-14 J"orn Rennecke <joern.rennecke@superh.com> 1542 1543 PR target/9365 1544 * sh.c (gen_block_redirect): Add special handling of RETURN. 1545 (gen_far_branch) Don't call gen_stuff_delay_slot if there is no 1546 far branch target (i.e. it's a return). 1547 15482004-01-14 Hartmut Penner <hpenner@de.ibm.com> 1549 1550 * gcc/config/rs6000/rs6000.c (rs6000_stack_info) 1551 Calculate always vrsave_mask if TARGET_ALTIVEC. 1552 (rs6000_emit_prologue): Emit code for vrsave 1553 only if TARGET_ALTIVEC_VRSAVE. 1554 (rs6000_emit_epilogue): Likewise. 1555 15562003-01-14 Nicola Pero <n.pero@mi.flashnet.it> 1557 1558 PR objc/7993 1559 * objc-act.c (is_private): Do not emit the 'instance variable %s 1560 is declared private' error. 1561 (is_public): Emit the error after calling is_private. 1562 (lookup_objc_ivar): If the instance variable is private, return 0 1563 - the instance variable is invisible here. 1564 15652004-01-12 Marc Espie <espie@openbsd.org> 1566 1567 * system.h: handle YYBYACC like YYBISON. 1568 15692004-01-12 Matthias Klose <doko@debian.org> 1570 1571 Backport from mainline 1572 1573 2003-12-08 Stuart Hastings <stuart@apple.com> 1574 * config/i386/i386.md: Typo in split of fp-valued if_then_else. 1575 15762004-01-12 Roger Sayle <roger@eyesopen.com> 1577 1578 PR middle-end/11397 1579 * varasm.c (assemble_alias): Remove weak aliases from weak_decls. 1580 15812004-01-12 J"orn Rennecke <joern.rennecke@superh.com> 1582 1583 PR target/13585 1584 * sh-protos.h (check_use_sfunc_addr): Declare. 1585 * sh.c (extract_sfunc_addr, check_use_sfunc_addr): New functions. 1586 * sh.md (use_sfunc_addr): Use check_use_sfunc_addr in insn predicate. 1587 15882004-01-12 Matthias Klose <doko@debian.org> 1589 1590 Backport from mainline 1591 1592 2004-01-11 Richard Henderson <rth@redhat.com> 1593 PR opt/12441 1594 Revert: Sat Mar 30 14:08:55 CET 2002 Jan Hubicka <jh@suse.cz> 1595 * i386.c (aligned_operand): Be prepared for SUBREGed registers. 1596 (ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG. 1597 (ix86_address_cost): Be prepared for SUBREGed registers. 1598 (legitimate_address_p): Accept SUBREGed registers. 1599 16002004-01-11 Richard Henderson <rth@redhat.com> 1601 1602 * config/alpha/alpha.c (alpha_encode_section_info): Use 'I' 1603 for TLS_MODEL_INITIAL_EXEC. 1604 (tls_symbolic_operand_1): Update to match. 1605 (tls_symbolic_operand_type): Likewise. 1606 16072004-01-11 Jakub Jelinek <jakub@redhat.com> 1608 1609 PR middle-end/13392 1610 * builtins.c (expand_builtin_expect_jump): Handle conditional jumps 1611 to drop through label. Don't fall back to SCC even when conditional 1612 jump has not been found. 1613 16142004-01-09 Jeff Bailey <jbailey@nisa.net> 1615 1616 PR target/12561 1617 * config/t-gnu: Rename SYSTEM_HEADER_DIR to NATIVE_SYSTEM_HEADER_DIR. 1618 16192004-01-09 Richard Henderson <rth@redhat.com> 1620 1621 * recog.c (constrain_operands): Validate mem operands. 1622 16232004-01-02 Nathanael Nerode <neroden@gcc.gnu.org> 1624 1625 PR target/13069 1626 Backport the following from mainline: 1627 1628 2003-03-08 Neil Booth <neil@daikokuya.co.uk> 1629 * config/sh/rtemself.h (TARGET_OS_CPP_BUILTINS): Use instead of 1630 CPP_PREDEFINES. 1631 * config/sh/rtems.h (TARGET_OS_CPP_BUILTINS): Use instead of 1632 CPP_PREDEFINES. 1633 1634 2003-09-27 Kelley Cook <kcook@gcc.gnu.org> 1635 * config/sh/rtemself.h, config/sh/rtems.h: GNU CC -> GCC. 1636 16372004-01-02 Roger Sayle <roger@eyesopen.com> 1638 1639 * tree.h (integer_nonzerop): Use PARAMS macro with prototype. 1640 * tree.c (integer_nonzerop): Use K&R style function declaration. 1641 16422004-01-02 Andreas Schwab <schwab@suse.de> 1643 1644 * doc/c-tree.texi: Fix @item vs. @itemx. 1645 * doc/cpp.texi: Likewise. 1646 * doc/install.texi: Likewise. 1647 * doc/invoke.texi: Likewise. 1648 16492004-01-02 Andreas Jaeger <aj@suse.de>, Gerald Pfeifer <gp@suse.de> 1650 1651 * doc/install.texi (Specific): Mention x86_64. 1652 16532004-01-01 Jakub Jelinek <jakub@redhat.com> 1654 1655 PR optimization/13521 1656 Backport from mainline: 1657 2003-03-22 Richard Henderson <rth@redhat.com> 1658 1659 * cfgcleanup.c (insns_match_p): Do not do EQUIV substitution 1660 after reload. 1661 16622003-12-31 Roger Sayle <roger@eyesopen.com> 1663 1664 PR fortran/12632 1665 * tree.c (integer_nonzerop): New predicate for nonzero integers. 1666 * tree.h (integer_nonzerop): Add function prototype. 1667 * fold-const.c (fold) <COND_EXPR>: Don't fold a constant condition, 1668 if we'd replace a COND_EXPR of non-void type by one of its operands 1669 of void type. 1670 16712003-12-31 Kazu Hirata <kazu@cs.umass.edu> 1672 1673 Backport from mainline: 1674 1675 2003-09-12 Richard Sandiford <rsandifo@redhat.com> 1676 1677 PR target/13373 1678 * config/mcore/mcore-protos.h (mcore_r15_operand_p): Declare. 1679 (mcore_secondary_reload_class): Declare. 1680 (mcore_output_inline_const_forced): Remove. 1681 * config/mcore/mcore.md (movsi): Remove the code that forced 1682 non-inlineable constants into a register if the target was r15 1683 or the stack pointer. Remove constant restrictions from the main 1684 define_insn. Remove r <- I, r <- M and r <- N alternatives in favor 1685 of an r <- P alternative. Remove fallback define_insn for reload. 1686 (movhi, movqi): Use gen_lowpart rather than gen_SUBREG. Remove reload 1687 define_insn. Use mcore_output_move in the remaining define_insn. 1688 Adjust condition and constraints in the way as for movsi. 1689 (movdi): Always split unacceptable constants into two. Use 1690 simplify_gen_subreg instead of operand_subword{,_force}. 1691 * config/mcore/mcore.c (mcore_output_inline_const_forced): Remove. 1692 (mcore_output_move): Support HImode and QImode moves as well. 1693 (mcore_m15_operand_p): New function. 1694 (mcore_reload_class): Use it to detect cases where LRW_REGS are better. 1695 (mcore_secondary_reload_class): New function. 1696 * config/mcore/mcore.h (SECONDARY_RELOAD_CLASS): Redefine in 1697 terms of mcore_secondary_reload_class. 1698 16992003-12-31 Zack Weinberg <zack@codesourcery.com> 1700 1701 * config/ia64/ia64.c (ia64_va_arg): Pass pointer for 1702 variable-sized type through convert_memory_address. 1703 (ia64_in_small_data_p): Always return false for FUNCTION_DECLs. 1704 17052003-12-24 Andrew Pinski <pinskia@physics.uc.edu> 1706 1707 PR bootstrap/13068 1708 Backport from mainline: 1709 2003-05-09 Matt Kraai <kraai@alumni.cmu.edu> 1710 1711 * mklibgcc.in: Remove extra quotes. 1712 2003-05-08 Aldy Hernandez <aldyh@redhat.com> 1713 1714 * mklibgcc.in: Use mkinstalldirs when installing multilib 1715 directories. 1716 17172003-12-24 Roger Sayle <roger@eyesopen.com> 1718 1719 Backport from mainline: 1720 1721 2003-09-18 Mark Mitchell <mark@codesourcery.com> 1722 * explow.c (convert_memory_address): Define even when 1723 POINTERS_EXTEND_UNSIGNED is not defined. Do nothing if the address 1724 is already in the right mode. 1725 17262003-12-23 Andrew Pinski <pinskia@physics.uc.edu> 1727 1728 PR middle-end/13475 1729 Backport from mainline: 1730 2003-06-19 Aldy Hernandez <aldyh@redhat.com> 1731 1732 * expr.c (const_vector_from_tree): Initialize remaining 1733 elements to 0. 1734 17352003-12-23 Kazu Hirata <kazu@cs.umass.edu> 1736 1737 PR target/11576 1738 * config/h8300/h8300.h (CONSTANT_ADDRESS_P): Allow CONST and 1739 HIGH on all variants. 1740 17412003-12-23 Matthias Klose <doko@debian.org> 1742 1743 * config/mips/linux.h (LIB_SPEC): Use -lpthread when 1744 -pthread was specified. 1745 17462003-12-23 Eric Botcazou <ebotcazou@libertysurf.fr> 1747 1748 PR optimization/13394 1749 * toplev.c (rest_of_compilation): Move call to 1750 check_function_return_warnings right after the sibcall 1751 optimization pass. 1752 17532003-12-23 Eric Botcazou <ebotcazou@libertysurf.fr> 1754 1755 PR c/13382 1756 * c-typeck.c (convert_for_assignment): When converting from 1757 integral type to pointer type, always call convert. 1758 17592003-12-22 Gabriel Dos Reis <gdr@integrable-solutions.net> 1760 1761 PR target/11271 1762 * reload.c: Revert last backport from mainline. It breaks s390. 1763 17642003-12-21 Roger Sayle <roger@eyesopen.com> 1765 1766 * config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define _ILP32 1767 when compiling in ILP32 mode. 1768 17692003-12-21 Gabriel Dos Reis <gdr@integrable-solutions.net> 1770 1771 Backport from mainline: 1772 2003-10-31 Richard Earnshaw <rearnsha@arm.com> 1773 1774 PR target/11271 1775 * reload.c (find_reloads_address): Handle any register in 1776 (PLUS (PLUS (REG) (REG)) (CONST_INT). 1777 17782003-12-21 Roger Sayle <roger@eyesopen.com> 1779 1780 PR middle-end/13400 1781 * ifcvt.c (noce_process_if_block): Disable unconditional write 1782 optimizations if we could introduce a store to trapping memory 1783 that wasn't present previously. 1784 17852003-12-20 Roger Sayle <roger@eyesopen.com> 1786 1787 PR optimization/13031 1788 * gcse.c (cprop_jump): Backport code clean-up and bug-fix 1789 from mainline [2003-05-20 Sayle, Hirata and Rennecke patch]. 1790 (cprop_insn): Don't attemp further substitutions if the 1791 current instruction has been deleted. 1792 (local_cprop_pass): Likewise. 1793 17942003-12-19 Jakub Jelinek <jakub@redhat.com> 1795 1796 PR c++/13239 1797 * builtins.c (expand_builtin_expect_jump): Update 1798 TREE_VALUE (arglist) if unsave_expr_now langhook 1799 created a new tree. 1800 18012003-12-18 Mark Mitchell <mark@codesourcery.com> 1802 1803 * config/sol2.h (LINK_ARCH32_SPEC): Define in terms of ... 1804 (LINK_ARCH32_SPEC_BASE): ... this new macro. 1805 * config/sparc/sol2-bi.h (LINK_ARCH64_SPEC): Define in terms of 1806 ... 1807 (LINK_ARCH64_SPEC_BASE): ... this new macro. 1808 * config/sparc/sol2-gld-bi.h (LINK_ARCH32_SPEC): New macro. 1809 (LINK_ARCH64_SPEC): Likewise. 1810 18112003-12-17 Ulrich Weigand <uweigand@de.ibm.com> 1812 1813 PR target/11992 1814 * config/s390/s390.md ("*cmpmem_long_64"): Use CLCLE instruction 1815 instead of CLCL. 1816 ("*cmpmem_long_31"): Likewise. 1817 18182003-12-16 Zack Weinberg <zack@codesourcery.com> 1819 1820 Backport the following patches from mainline. 1821 1822 2003-12-05 Mark Mitchell <mark@codesourcery.com> 1823 1824 * config/ia64/ia64.h (MUST_PASS_IN_STACK): Define. 1825 1826 2003-12-01 James E Wilson <wilson@specifixinc.com> 1827 1828 * config/ia64/ia64.h (FUNCTION_ARG_REGNO_P): Use AR_REG_FIRST not 1829 GR_ARG_FIRST. 1830 1831 2003-10-21 Zack Weinberg <zack@codesourcery.com> 1832 1833 * config/ia64/ia64.md (cmpxchg_acq_si): Mark operand 3 as DImode. 1834 * config/ia64/ia64.c (ia64_expand_fetch_and_op, 1835 ia64_expand_op_and_fetch): Make sure the REG for ar.ccv is 1836 DImode. Use convert_move to load ar.ccv. 1837 (ia64_expand_compare_and_swap): Likewise. 1838 If expand_expr doesn't put 'old' and 'new' in the proper 1839 modes, run them through convert_to_mode. 1840 1841 2003-10-14 Steve Ellcey <sje@cup.hp.com> 1842 1843 * config/ia64/ia64.c (ia64_expand_call): Force function address 1844 to DImode. 1845 * config/ia64/ia64.md (call_gp): Put DImode on operand 0. 1846 1847 2003-06-11 Richard Henderson <rth@redhat.com> 1848 1849 * config/ia64/ia64.md (call_gp): Fix memory mode. 1850 1851 2003-05-14 Eric Christopher <echristo@redhat.com> 1852 1853 * combine.c: Fix header comments. 1854 (distribute_notes): Remove usage of elim_i1, elim_i2. Propagate 1855 to all calls and prototype. 1856 18572003-12-16 David O'Brien <obrien@FreeBSD.org> 1858 1859 * config/alpha/freebsd.h (FBSD_TARGET_CPU_CPP_BUILTINS): Add __LP64__. 1860 * config/sparc/freebsd.h (FBSD_TARGET_CPU_CPP_BUILTINS): Likewise. 1861 * config/i386/freebsd64.h (FBSD_TARGET_CPU_CPP_BUILTINS): Conditionally 1862 add __LP64__. 1863 18642003-12-16 Hartmut Penner <hpenner@de.ibm.com> 1865 1866 * altivec.h (vec_cmple, vec_all_numeric): Fix typo. 1867 * testsuite/gcc.dg/altivec-10.c: Test for above. 1868 18692003-12-15 Kazu Hirata <kazu@cs.umass.edu> 1870 1871 PR target/13122 1872 * config/h8300/h8300.md (pushqi1_h8300hs_normal): New. 1873 (pushqi1): Call gen_pushqi1_h8300hs_normal in normal mode. 1874 (pushhi1_h8300hs_normal): New. 1875 (pushhi1): Call gen_pushqi1_h8300hs_normal in normal mode. 1876 1877 * config/h8300/h8300.h (LINK_SPEC): Support normal mode. 1878 * config/h8300/h8300.c (asm_file_start): Correctly output 1879 an architecture directive. 1880 * config/h8300/lib1funcs.asm: Correctly specify an 1881 architecture directive. 1882 18832003-12-12 Roger Sayle <roger@eyesopen.com> 1884 1885 PR optimization/13037 1886 * loop.c (update_giv_derive): Ignore redundant sets of a biv when 1887 calculating how to derive a giv from a biv. 1888 18892003-12-12 Jakub Jelinek <jakub@redhat.com> 1890 1891 * config/ia64/linux.h (IA64_GATE_AREA_END): Increase by 64K. 1892 (MD_FALLBACK_FRAME_STATE_FOR): Set fpsr_loc, br_loc[6] and 1893 br_loc[7]. Update comment. 1894 (MD_HANDLE_UNWABI): Define. 1895 * config/ia64/unwind-ia64.c (struct unw_state_record): Add 1896 unwabi field. 1897 (struct _Unwind_Context): Increase br_loc array size to 8 entries. 1898 (desc_abi): Set unwabi. 1899 (uw_update_reg_address): Allow br up to 7. 1900 (uw_update_context): Invoke MD_HANDLE_UNWABI if defined. 1901 (uw_install_context): Load b1..b5 from correct locations. 1902 Fix insn loading ar.fpsr. 1903 * doc/tm.texi: Document MD_HANDLE_UNWABI. 1904 19052003-12-12 Hans-Peter Nilsson <hp@axis.com> 1906 1907 PR target/13256 1908 Backport from mainline: 1909 * resource.h (enum mark_resource_type): Remove member MARK_DEST. 1910 The only user changed as follows: 1911 * resource.c (mark_set_resources) <case SET>: Always recurse for 1912 SET_SRC (x). 1913 <case SIGN_EXTRACT, case ZERO_EXTRACT>: Always recurse on 1914 operands. 1915 <case STRICT_LOW_PART>: Delete, deferring to default code. 1916 1917 PR target/12598 1918 Backport from mainline: 1919 * config/cris/cris.md (define_split "*mov_sidesi_biap_mem"+1) 1920 (define_splits "*mov_sidesi_mem"+1, "casesi"+9, +10, +11, +12): 1921 Use cris_mem_op and replace_equiv_address, not gen_rtx_MEM. 1922 ("call", "call_value", define_split "*mov_sidesi_mem"+19, +20) 1923 (define_split "*mov_sidesi_mem"+21, +22, +23, +24, +25, +26, +27) 1924 (define_split "*mov_sidesi_mem"+28, +29, +30): Use 1925 replace_equiv_address, not gen_rtx_MEM. 1926 * config/cris/cris.c (cris_mem_op): New match_operator function. 1927 (cris_notice_update_cc): Use replace_equiv_address, not 1928 gen_rtx_MEM. 1929 * config/cris/cris.h (PREDICATE_CODES): Add cris_mem_op. 1930 19312003-12-11 Eric Botcazou <ebotcazou@libertysurf.fr> 1932 1933 Backport from mainline: 1934 1935 2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr> 1936 1937 PR optimization/13318 1938 * loop.c (express_from): Protect integer division from overflow. 1939 19402003-12-11 Eric Botcazou <ebotcazou@libertysurf.fr> 1941 1942 Backport from mainline: 1943 1944 2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr> 1945 1946 PR optimization/13060 1947 * function.c (fixup_var_refs_1) [SUBREG]: Recognize even if a 1948 replacement already exists. Fix again the whole insn if that fails. 1949 19502003-12-11 Eric Botcazou <ebotcazou@libertysurf.fr> 1951 1952 Backport from mainline: 1953 1954 2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr> 1955 1956 PR optimization/12965 1957 * caller-save.c (save_call_clobbered_regs): Do not save/restore 1958 registers around no-return calls. 1959 19602003-12-10 Andrew Pinski <pinskia@physics.uc.edu> 1961 1962 * emit-rtl.c (copy_rtx_if_shared_1): Fix warning. 1963 19642003-12-10 Nathanael Nerode <neroden@gcc.gnu.org> 1965 1966 Backport from mainline (fixes unreported regression): 1967 * cpptrad.c (_cpp_scan_out_logical_line): Improve test for 1968 whether directive begins at the beginning of a line. 1969 19702003-12-10 Eric Botcazou <ebotcazou@libertysurf.fr> 1971 1972 PR target/13354 1973 * config/sparc/sparc.c (sparc_output_mi_thunk): Load DELTA 1974 manually if one can do that with only one instruction. 1975 19762003-12-09 Kelley Cook <kelleycook@wideopenwest.com> 1977 1978 2003-06-04 Kelley Cook <kelleycook@wideopenwest.com> 1979 PR optimization/4490 1980 * config/i386/i386.md: Don't use XFMode if TARGET_128BIT_LONG_DOUBLE. 1981 19822003-12-08 David Edelsohn <edelsohn@gnu.org> 1983 Graham Reed <greed@pobox.com> 1984 1985 PR target/13150 1986 * collect2.c (GCC_OK_SYMBOL): Add support for AIX C_WEAKEXT. 1987 (GCC_UNDEF_SYMBOL): Same. 1988 19892003-12-08 Andrew Pinski <pinskia@physics.uc.edu> 1990 1991 PR middle-end/10060 1992 * emit-rtl.c (copy_rtx_if_shared): Split out into ... 1993 (copy_rtx_if_shared_1): here and optimize the last one 1994 in the sequence into tail-recursion. 1995 (reset_used_flags): Optimize the last one 1996 in the sequence into tail-recursion. 1997 19982003-12-07 Alan Modra <amodra@bigpond.net.au> 1999 2000 * config/rs6000/rs6000.c (rs6000_elf_section_type_flags): Don't 2001 set SECTION_WRITE on TARGET_RELOCATABLE. 2002 20032003-12-05 Andrew Pinski <pinskia@physics.uc.edu> 2004 2005 PR driver/13211 2006 * gcc.c (execute) Increment execution_count when returning 2007 early because verbose_only_flag is true. 2008 20092003-12-05 Stuart Menefy <stuart.menefy@st.com> 2010 J"orn Rennecke <joern.rennecke@superh.com> 2011 2012 PR target/13302 2013 * sh.c (sh_build_builtin_va_list): Use (*lang_hooks.types.make_type). 2014 20152003-12-04 Andrew Pinski <pinskia@physics.uc.edu> 2016 2017 PR target/11322 2018 * config/sh/netbsd-elf.h (NO_PROFILE_COUNTERS): Define. 2019 2020 PR target/12467 2021 * config/rs6000/altivec.md (altivec_vmsummbm): Fix typo. 2022 20232003-12-04 H.J. Lu <hongjiu.lu@intel.com> 2024 2025 * Makefile.in (stmp-fixinc): Don't bail out if SYSTEM_HEADER_DIR 2026 does not exist and it's the default sys-include directory. 2027 20282003-12-03 Mark Mitchell <mark@codesourcery.com> 2029 2030 * config/ia64/hpux.h (TARGET_HAVE_TLS): Define it to false. 2031 * config/ia64/ia64.h (TARGET_HAVE_TLS): Define it to true if 2032 HAVE_AS_TLS is true. 2033 * config/ia64/ia64.c (TARGET_HAVE_TLS): Do not define it. 2034 20352003-12-03 James E Wilson <wilson@specifixinc.com> 2036 2037 2003-11-29 James E Wilson <wilson@specifixinc.com> 2038 * gcc.c (init_spec): Pass -lunwind to init_gcc_specs in eh_name 2039 instead of in shared_name. 2040 20412003-12-03 David Mosberger <davidm@hpl.hp.com> 2042 2043 2003-11-20 David Mosberger <davidm@hpl.hp.com> 2044 * config/t-libunwind (LIB2ADDEH): Add unwind-c.c. 2045 (SHLIB_LC): Define. 2046 * unwind-libunwind.c (_Unwind_GetCFA): Implement. 2047 (_Unwind_GetBSP) [UNW_TARGET_IA64]: New function. 2048 20492003-12-03 Jakub Jelinek <jakub@redhat.com> 2050 2051 * expr.c (store_constructor): Only set RTX_UNCHANGING_P for 2052 read-only field if cleared is 0. 2053 20542003-12-03 Kean Johnston <jkj@sco.com> 2055 2056 PR 12969 2057 * fixinc/inclhack.def (AAB_svr4_replace_byteorder): Revert the 2058 change I made on 2003-08-11 that removes the mach lines. 2059 Restore them to the same list thats in the head, as per 2060 Nathanael Nerode's changes. 2061 * fixinc/fixincl.x: Regenerated 2062 * fixinc/tests/base/ansi/string.h: Fix test case 2063 20642003-12-03 James E Wilson <wilson@specifixinc.com> 2065 2066 2003-12-01 James E Wilson <wilson@specifixinc.com> 2067 PR target/8407 2068 * config/ia64/ia64.c (ia64_function_arg): For single-reg HFA, call 2069 gen_rtx_REG to create new reg with argument mode. 2070 20712003-12-03 Josef Zlomek <zlomekj@suse.cz> 2072 2073 Backport from mainline 2074 2075 2003-10-31 Josef Zlomek <zlomekj@suse.cz> 2076 2077 PR/10239 2078 * cfgrtl.c (delete_insn): Decrease LABEL_NUSES for all 2079 REG_LABEL notes. 2080 2081 2003-10-31 Josef Zlomek <zlomekj@suse.cz> 2082 2083 PR/11640 2084 * cfgrtl.c (try_redirect_by_replacing_jump): Move jump 2085 immediatelly before BARRIER. 2086 20872003-12-01 Kaz Kojima <kkojima@gcc.gnu.org> 2088 2089 Backport from mainline 2090 2091 2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org> 2092 2093 * config.gcc (sh*-*-linux*): Add t-slibgcc-elf-ver and t-linux. 2094 to tmake_file. 2095 * config/sh/libgcc-glibc.ver: New file. 2096 2097 Backport from mainline 2098 2099 2003-10-08 Kaz Kojima <kkojima@gcc.gnu.org> 2100 2101 * config/sh/t-linux (SHLIB_LINK): Override to use a linker script 2102 libgcc_s.so. 2103 (SHLIB_INSTALL): Likewise. 2104 21052003-12-01 Roger Sayle <roger@eyesopen.com> 2106 2107 PR optimization/11634 2108 * recog.c (split_insn): Factor test of INSN_P and handling of 2109 set_noop_p out of here into the two callers. 2110 (split_all_insns): Add INSN_P test and set_noop_p handling here. 2111 If deleting a no-op set after reload that has a REG_UNUSED note, 2112 mark the basic block as changed and recalculate life information. 2113 (split_all_insns_noflow): Add INSN_P test and set_noop_p handling 2114 here. 2115 21162003-12-01 Zack Weinberg <zack@codesourcery.com> 2117 2118 PR 12505 2119 * configure.in: Check for system-provided 'uchar' type. 2120 * configure, config.in: Regenerate. 2121 * cpphash.h: Only typedef 'uchar' if the system doesn't. 2122 21232003-12-01 Ulrich Weigand <uweigand@de.ibm.com> 2124 2125 * unroll.c (find_splittable_givs): Add missing extend_value_for_giv. 2126 21272003-12-01 Eric Botcazou <ebotcazou@libertysurf.fr> 2128 2129 Backport from mainline: 2130 2131 2003-11-27 Eric Botcazou <ebotcazou@libertysurf.fr> 2132 2133 PR optimization/13041 2134 * final.c (frame_pointer_needed): Fix comment. 2135 * reload1.c (reload): Decrease alignment of the frame 2136 pointer if it was used for register allocation. 2137 21382003-12-01 Eric Botcazou <ebotcazou@libertysurf.fr> 2139 2140 Backport from mainline: 2141 2142 2003-11-27 Eric Botcazou <ebotcazou@libertysurf.fr> 2143 2144 PR target/12900 2145 * reg-stack (move_for_stack_reg): New prototype. Return 2146 whether a control flow insn was deleted. 2147 (subst_stack_regs_pat): Likewise, using the information provided 2148 by move_for_stack_reg. 2149 (subst_stack_regs): Likewise, using the information provided 2150 by subst_stack_regs_pat. 2151 (convert_regs_1): Record whether a control flow insn was deleted, 2152 using the information provided by subst_stack_regs. Purge dead 2153 edges only if a control flow insn was deleted. 2154 21552003-12-01 Gabriel Dos Reis <gdr@integrable-solutions.net> 2156 2157 * doc/c-tree.texi (Function Bodies): Update HANDLER documentation. 2158 21592003-11-29 Ulrich Weigand <uweigand@de.ibm.com> 2160 2161 * config/s390/s390.md ("cmpint_di"): Fix incorrect instruction lengths. 2162 21632003-11-19 Alan Modra <amodra@bigpond.net.au> 2164 2165 Backport 2003-03-26 Alan Modra <amodra@bigpond.net.au> 2166 * cppinit.c (init_standard_includes): Add both "translated" and 2167 non-translated header paths. 2168 21692003-11-18 Gerald Pfeifer <gerald@pfeifer.com> 2170 2171 Fix links in online manuals. 2172 * doc/invoke.texi (H8/300 Options): @xref to ld, not ld.info. 2173 21742003-11-17 Gerald Pfeifer <gerald@pfeifer.com> 2175 2176 * doc/invoke.texi (Warning Options): Simplify and clarify the 2177 description of -Wnonnull. 2178 21792003-11-14 Matthias Klose <doko@debian.org> 2180 2181 Backport from mainline 2182 2183 2003-06-04 Jakub Jelinek <jakub@redhat.com> 2184 2185 * function.c (trampolines_created): New variable. 2186 (expand_function_end): Set it when doing INITIALIZE_TRAMPOLINE. 2187 * function.h (trampolines_created): Add. 2188 * config/s390/linux.h (ASM_FILE_END): Define. 2189 * config/alpha/linux-elf.h (ASM_FILE_END): Define. 2190 * config/m68k/linux.h (ASM_FILE_END): Define. 2191 * config/rs6000/linux.h (ASM_FILE_END): Define. 2192 * config/rs6000/linux64.h (ASM_FILE_END): Define. 2193 * config/sparc/linux.h (ASM_FILE_END): Define. 2194 * config/sparc/linux64.h (ASM_FILE_END): Define. 2195 * config/i386/i386.c (ix86_asm_file_end): Use SUBTARGET_FILE_END. 2196 * config/i386/linux.h (SUBTARGET_FILE_END): Define. 2197 * config/i386/linux64.h (SUBTARGET_FILE_END): Define. 2198 2199 2003-06-05 Jakub Jelinek <jakub@redhat.com> 2200 2201 * mklibgcc.in: Propagate .note.GNU-stack section if needed into 2202 the .hidden assembly stubs. 2203 22042003-11-13 Eric Botcazou <ebotcazou@libertysurf.fr> 2205 2206 PR optimization/12926 2207 * expr.c (expand_assignment) [COMPONENT_REF]: Don't put 2208 the UNCHANGING_RTX_P flag on memory references to read-only 2209 components that are not addressable. 2210 22112003-11-12 Alexey Starovoytov <alexey.starovoytov@sun.com> 2212 2213 PR optimization/12953 2214 * c-objc-common.c (inline_forbidden_p): Added check for BUILT_IN 2215 before switch by FUNCTION_CODE. 2216 22172003-11-10 Waldek Hebisch <hebisch@math.uni.wroc.pl> 2218 2219 PR target/12865 2220 * config/sparc/sparc.c (sparc_initialize_trampoline): Call 2221 __enable_execute_stack only after writing onto the stack. 2222 (sparc64_initialize_trampoline): Likewise. 2223 22242003-11-08 Roger Sayle <roger@eyesopen.com> 2225 2226 Backport from mainline 2227 PR optimization/10467, PR optimization/11741 2228 * gcse.c (pre_insert_copy_insn): Tweak the logic for finding the 2229 appropriate set to match the code in hash_scan_insn. 2230 22312003-11-06 H.J. Lu <hongjiu.lu@intel.com> 2232 2233 * cppinit.c (init_standard_includes): Updated. 2234 2235 * Makefile.in (fixinc.sh): Updated. 2236 2237 Backport from 3.4-branch 2238 2239 2003-07-16 Daniel Jacobowitz <drow@mvista.com> 2240 2241 * gcc.c (STANDARD_STARTFILE_PREFIX): Remove unnecessary definition. 2242 (main): Remove unnecessary case. Only use standard_startfile_prefix 2243 if native. 2244 2245 2003-04-11 Alexandre Oliva <aoliva@redhat.com> 2246 2247 * Makefile.in (fixinc.sh): Pass BUILD_LIBERTY as LIBERTY to 2248 mkfixinc.sh. 2249 * fixinc/mkfixinc.sh (defs): Add LIBERTY. 2250 * configure.in (STMP_FIXINC, STMP_FIXPROTO): Don't disable on 2251 build != host sysrooted builds. 2252 * configure.in (SYSTEM_HEADER_DIR): Make sure it contains 2253 TARGET_SYSTEM_ROOT even on sysrooted natives. 2254 * configure: Rebuilt. 2255 2256 2003-03-04 Daniel Jacobowitz <drow@mvista.com> 2257 2258 * configure.in: Don't always define TARGET_SYSTEM_ROOT. 2259 * configure: Regenerated. 2260 * gcc.c: Check whether TARGET_SYSTEM_ROOT is defined. 2261 2262 2003-01-16 Daniel Jacobowitz <drow@mvista.com> 2263 2264 * Makefile.in (PREPROCESSOR_DEFINES): Add 2265 @TARGET_SYSTEM_ROOT_DEFINE@. 2266 * configure.in (PREFIX_INCLUDE_DIR): Don't define if $with_sysroot 2267 is specified or if building a cross compiler. 2268 (TARGET_SYSTEM_ROOT_DEFINE): Add TARGET_SYSTEM_ROOT_RELOCATABLE 2269 if the sysroot is under $exec_prefix. 2270 * configure: Regenerated. 2271 * cppdefault.h: Use native include paths if TARGET_SYSTEM_ROOT is 2272 defined. 2273 (struct default_include): Add add_sysroot field. 2274 (cpp_SYSROOT): Declare. 2275 * cppdefault.c (cpp_include_defaults): Fill in add_sysroot 2276 field. 2277 (cpp_SYSROOT): New variable. 2278 * cppinit.c (cpp_create_reader): Initialize 2279 CPP_OPTION (pfile, sysroot). 2280 (init_standard_includes): Handle add_sysroot. Do not 2281 add unrelocated copies of relocated directories. 2282 (COMMAND_LINE_OPTIONS): Add -isysroot. 2283 (cpp_handle_option): Handle -isysroot. 2284 * cpplib.h (struct cpp_options): Add sysroot member. 2285 * gcc.c (The Specs Language): Update description of %I. 2286 (target_system_root_changed): New variable. 2287 (process_command): Conditionalize make_relative_prefix call 2288 on !VMS and TARGET_SYSTEM_ROOT_RELOCATABLE. Set 2289 target_system_root_changed. 2290 (do_spec_1): Add -isysroot to %I. 2291 * doc/invoke.texi (Spec Files): Update description of %I. 2292 * doc/install.texi (--with-sysroot): Update comment about 2293 relocation. 2294 2295 2002-10-19 Alexandre Oliva <aoliva@redhat.com> 2296 Angela Marie Thomas <angela@releasedominatrix.com> 2297 Brendan Kehoe <brendan@zen.org> 2298 Nick Clifton <nickc@redhat.com> 2299 Andrew Haley <aph@redhat.com> 2300 2301 * configure.in (--with-sysroot): New. Don't inhibit libc if 2302 given. AC_SUBST TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE 2303 and CROSS_SYSTEM_HEADER_DIR. 2304 * configure: Rebuilt. 2305 * Makefile.in (CROSS_SYSTEM_HEADER_DIR): Set in configure. 2306 (TARGET_SYSTEM_ROOT): New. 2307 (DRIVER_DEFINES): Define CROSS_INCLUDE_DIR from 2308 CROSS_SYSTEM_HEADER_DIR. 2309 (install-gcc-tooldir): New target. 2310 (stmp-fixinc): Do not create $(libsubdir), but rather bail out 2311 of SYSTEM_HEADER_DIR does not exist. 2312 (deduced.h, stmp-fixproto): Quote SYSTEM_HEADER_DIR properly. 2313 (install-mkheaders): Likewise. 2314 * gcc.c (target_system_root): New variable. 2315 (add_sysrooted_prefix): New function. 2316 (process_command): Recompute run-time target_system_root from 2317 gcc_exec_prefix, keeping it unchanged if the relocated sysroot 2318 does not exist. 2319 (do_spec_1): Process 'R' spec. 2320 (main): Add md_exec_prefix to exec_prefixes regardless of 2321 startfile_prefix_spec. Use add_sysrooted_prefix for 2322 startfile_prefixes, and don't skip the default ones when cross 2323 compiling with sysroot enabled. Removed unused case of 2324 non-absolute standard_startfile_prefix. 2325 * config/interix.h: Remove the only potential, yet disabled, 2326 occurrence of non-absolute (empty) standard_startfile_prefix. 2327 * config/sh/linux.h (LIB_SPEC): Add -rpath-link in non-static 2328 linking. 2329 * config/mips/linux.h (LIB_SPEC): Define as in sh/linux.h. 2330 * doc/install.texi (--with-sysroot): Document. 2331 (--with-headers, --with-libs): Deprecate. 2332 23332003-11-06 Ulrich Weigand <uweigand@de.ibm.com> 2334 2335 * config/s390/s390-protos.h (s390_output_dwarf_dtprel): Declare. 2336 * config/s390/s390.c (s390_output_dwarf_dtprel): New function. 2337 * config/s390/s390.h (ASM_OUTPUT_DWARF_DTPREL): Define. 2338 23392003-11-06 Ulrich Weigand <uweigand@de.ibm.com> 2340 2341 * config/s390/s390.c (s390_function_arg_pass_by_reference): Return 2342 true for all arguments larger than 8 bytes, as well as for all vector 2343 type arguments. 2344 * config/s390/s390.h (RETURN_IN_MEMORY): Likewise for return values. 2345 23462003-11-05 Roger Sayle <roger@eyesopen.com> 2347 2348 PR optimization/10339 2349 * builtins.c (expand_builtin_strcmp): Try to emit cmpstrsi insn 2350 directly instead of unsafely transforming call into a memcmp. 2351 (expand_builtin_strncmp): Likewise. 2352 23532003-11-03 Alexander Kabaev <ak03@gte.com> 2354 2355 * real.c (encode_ieee_single): Ensure proper promotion. 2356 23572003-11-04 H.J. Lu <hongjiu.lu@intel.com> 2358 2359 Backport from 3.4-branch 2360 2361 2003-07-13 Andreas Jaeger <aj@suse.de> 2362 2363 * config.gcc: Add pmmintrin.h for x86_64-*-*. 2364 2365 2003-06-26 H.J. Lu <hongjiu.lu@intel.com> 2366 2367 * config.gcc (extra_headers): Add pmmintrin.h for i[34567]86-*-*. 2368 2369 * config/i386/i386.c (override_options): Turn on MASK_SSE2 2370 for -mpni. 2371 (bdesc_2arg): Add PNI builtins with 2 args. 2372 (bdesc_1arg): Add PNI builtins with 1 arg. 2373 (ix86_init_mmx_sse_builtins): Handle PNI builtins. 2374 (ix86_expand_builtin): Likewise. 2375 2376 * config/i386/i386.h (MASK_3DNOW, MASK_3DNOW_A, 2377 MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT, 2378 MASK_TLS_DIRECT_SEG_REFS): Renumbered. 2379 (TARGET_PNI): New. 2380 (TARGET_SWITCHES): Add -mpni and -mno-pni. 2381 (TARGET_CPU_CPP_BUILTINS): Defined __PNI__ for PNI. 2382 (ix86_builtins): Add PNI builtins. 2383 (config/i386/i386.md): Add PNI patterns. 2384 2385 * config/i386/pmmintrin.h: New file. 2386 2387 * config/i386/i386.c (override_options): Turn on MASK_SSE for 2388 -msse2. 2389 (MASK_SSE1): Removed. 2390 (MASK_SSE164): Removed. 2391 (MASK_SSE264): Removed. 2392 (bdesc_2arg): Replace MASK_SSE1 with MASK_SSE. Replace 2393 MASK_SSE164 with MASK_SSE | MASK_64BIT. Replace MASK_SSE264 2394 with MASK_SSE2 | MASK_64BIT. 2395 (bdesc_1arg): Likewise. 2396 (ix86_init_mmx_sse_builtins): Likewise. 2397 2398 * config/i386/i386.h (TARGET_SSE): Remove MASK_SSE2. 2399 2400 2003-06-20 H.J. Lu <hongjiu.lu@intel.com> 2401 2402 * doc/extend.texi: Document new builtin functions for Intel 2403 Prescott New Intrunctions. 2404 2405 * doc/invoke.texi: Document new command-line options, -mpni and 2406 -mno-pni, for Intel Prescott New Intrunctions. 2407 2408 2003-06-05 H.J. Lu <hongjiu.lu@intel.com> 2409 2410 * config.gcc (extra_headers): Add emmintrin.h for i[34567]86-*-* 2411 and x86_64-*-*. 2412 2413 * config/i386/mmintrin.h: Update version and add alternate 2414 intrinsic names. 2415 * config/i386/xmmintrin.h: Likewise. 2416 2417 * config/i386/xmmintrin.h: Include <emmintrin.h>. Move SSE2 2418 intrinsics to ... 2419 * config/i386/emmintrin.h: Here. New file. 2420 24212003-11-04 H.J. Lu <hongjiu.lu@intel.com> 2422 2423 Backport from 3.4-branch 2424 2003-04-25 H.J. Lu <hjl@gnu.org> 2425 2426 * config/ia64/ia64.c (ia64_expand_compare_and_swap): Add rmode 2427 for return mode. 2428 (ia64_expand_builtin): Set rmode to SImode for 2429 IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_SI, 2430 IA64_BUILTIN_VAL_COMPARE_AND_SWAP_SI and 2431 IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_DI. Set remode to DImode 2432 for IA64_BUILTIN_VAL_COMPARE_AND_SWAP_DI. 2433 2434 2003-04-24 H.J. Lu <hjl@gnu.org> 2435 2436 * config/ia64/ia64.c (ia64_init_builtins): Add si_ftype_pdi_di_di 2437 for __sync_bool_compare_and_swap_di for int return type. 2438 2439 * config/ia64/ia64intrin.h (__sync_bool_compare_and_swap_di): 2440 Change return type to int. 2441 (__sync_bool_compare_and_swap): Likewise. 2442 24432003-11-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 2444 2445 * doc/contrib.texi: Add Giovanni Bajo, Dara Hazeghi, Falk Hueffner, 2446 and Andrew Pinski. 2447 24482003-11-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2449 2450 * fixinc/inclhack.def (stdio_va_list): Allow tab before va_list. 2451 Merge two substitutions. 2452 * fixinc/fixincl.x: Regenerate. 2453 Fixes PR bootstrap/12666. 2454 24552003-10-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 2456 2457 PR target/11598 2458 PR libgcj/10610 2459 * config/rs6000/sysv4.h (PREFERRED_STACK_BOUNDARY): New macro. 2460 24612003-10-27 Falk Hueffner <falk@debian.org> 2462 2463 PR target/12654 2464 * config/alpha/alpha.c (alpha_emit_conditional_branch): Don't do 2465 comparison against constant by adjusting the argument except for 2466 EQ and NE. 2467 24682003-10-26 Ottavio Campana <ottavio@campana.vi.it> 2469 2470 PR target/12690 2471 * config/i386/mmintrin.h (_mm_set1_pi8): Fix comment. 2472 24732003-10-25 Bruce Korb <bkorb@gnu.org> 2474 2475 * gcc/fixinc/tests/base/ansi/string.h: 2476 This fixes a result from a broken sed or a hand-edited output file. 2477 The '__GNUC__' wrappers were misplaced. 2478 24792003-10-25 Eric Botcazou <ebotcazou@libertysurf.fr> 2480 2481 PR target/12712 2482 * reg-stack.c (convert_regs_1): Create an arbitrary input stack 2483 if the block has no predecessors. 2484 (convert_regs_2): Document the problem with successors whose 2485 only predecessor is the block to be processed. 2486 (convert_regs): Don't create the arbitrary input stack here. 2487 24882003-10-22 David Taylor <dtaylor@emc.com> 2489 2490 PR debug/12500 2491 * dbxout.c (dbxout_typedefs): Use COMPLETE_OR_VOID_TYPE_P. 2492 24932003-10-20 Zack Weinberg <zack@codesourcery.com> 2494 2495 * fixinc/inclhack.def (hpux11_snprintf): New edit. 2496 * fixinc/fixincl.x: Regenerate. 2497 * fixinc/tests/base/stdio.h: Add test for hpux11_snprintf. 2498 24992003-05-16 Jakub Jelinek <jakub@redhat.com> 2500 2501 * config/ia64/unwind-ia64.c (uw_update_reg_address): Handle 2502 .save XX, r0. 2503 25042003-10-19 Mark Mitchell <mark@codesourcery.com> 2505 2506 * doc/include/gcc-common.texi: Bump version number. 2507 * version.c (version_string): Reset to prerelease format. 2508 25092003-10-18 Kazu Hirata <kazu@cs.umass.edu> 2510 2511 * doc/extend.texi: Fix typos. 2512 25132003-10-16 Release Manager 2514 2515 * GCC 3.3.2 Released. 2516 25172003-10-14 Jason Merrill <jason@redhat.com> 2518 2519 PR c/11885 2520 * stor-layout.c (update_alignment_for_field): Packed non-bit-fields 2521 get byte alignment. 2522 25232003-10-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2524 2525 * fixinc/inclhack.def (alpha_pthread_gcc): New fix. 2526 * fixinc/fixincl.x: Regenerate. 2527 * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_GCC_CHECK]: New 2528 testcase. 2529 Fixes PR bootstrap/9330. 2530 25312003-10-14 Steven Bosscher <steven@gcc.gnu.org> 2532 2533 PR target/11087 2534 Backport from gcc-3_3-rhl-branch and mainline. 2535 2536 2003-07-17 Jakub Jelinek <jakub@redhat.com> 2537 2538 * loop.c (basic_induction_var): Check if convert_modes 2539 emitted any instructions. Remove them and return 0 if so. 2540 25412003-10-13 Matt Kraai <kraai@alumni.cmu.edu> 2542 2543 PR target/11949 2544 Backport from mainline: 2545 2546 2003-05-05 Aldy Hernandez <aldyh@redhat.com> 2547 2548 * testsuite/gcc.c-torture/compile/simd-6.c: New. 2549 * c-typeck.c (digest_init): Handle arrays of vector constants. 2550 25512003-10-11 Eric Botcazou <ebotcazou@libertysurf.fr> 2552 2553 PR optimization/12544 2554 * function.c (put_var_into_stack): Don't generate ADDRESSOFs 2555 for DECL_NONLOCAL decls. 2556 25572003-10-09 Eric Botcazou <ebotcazou@libertysurf.fr> 2558 2559 PR optimization/12510 2560 Backport from mainline: 2561 2562 2003-09-08 Jakub Jelinek <jakub@redhat.com> 2563 2564 * toplev.c (rest_of_compilation): Call split_all_insns before 2565 regstack if optimizing but not scheduling after reload. 2566 25672003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2568 2569 * fixinc/inclhack.def (stdio_va_list): Removed _ap fix. 2570 (irix_stdio_va_list): Don't require leading printf, IRIX 6.5.21 2571 introduced some multi-line prototypes. 2572 * fixinc/fixincl.x: Regenerate. 2573 Fixes PR libf2c/12263. 2574 25752003-10-08 Timo Kokkonen <tjko@iki.fi> 2576 Eric Botcazou <ebotcazou@libertysurf.fr> 2577 2578 PR bootstrap/12490 2579 * scan-decls.c (MAX_EXTERN_C_BRACES): New preprocessor constant 2580 to define the size of the extern_C_braces array. Set it to 200. 2581 (scan_decls): Abort when extern_C_braces_length is out-of-bounds. 2582 25832003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr> 2584 2585 PR optimization/12215 2586 * cse.c (cse_set_around_loop): Emit the move at the beginning 2587 of the next basic block for trapping sets. 2588 25892003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr> 2590 2591 PR optimization/11637 2592 * combine.c (adjust_for_new_dest): New function to adjust the 2593 notes and LOG_LINKS when the dest of an insn has changed. 2594 (try_combine): Use it when deleting the first insn of a two-insn 2595 parallel or splitting a two-load parallel. 2596 25972003-10-04 Stephane Carrez <stcarrez@nerim.fr> 2598 2599 * config/m68hc11/t-m68hc11-gas (MULTILIB_MATCHES): m68hcs12 is 2600 identical to m68hc12 as far as libraries are concerned. 2601 26022003-10-04 Eric Botcazou <ebotcazou@libertysurf.fr> 2603 2604 PR c/12446 2605 * c-typeck.c (convert_for_assignment): Issue an error for 2606 array to pointer assignment after default conversion. 2607 (digest_init): Likewise. 2608 26092003-10-03 Gerald Pfeifer <gerald@pfeifer.com> 2610 2611 * doc/extend.texi (Function Attributes): Fix title of GNU C 2612 Preprocessor manual. 2613 (C++ Extensions): Fix reference to "Predefined Macros" in the 2614 GNU C Preprocessor manual. 2615 26162003-10-03 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 2617 2618 PR/11883 2619 * cfgloop.c (flow_loops_find): Fix handling of abnormal edges. 2620 26212003-10-02 Mark Mitchell <mark@codesourcery.com> 2622 2623 PR optimization/12180 2624 * c-objc-common.c (inline_forbidden_p): Do not permit inlining of 2625 functions containing calls to __builtin_next_arg. 2626 26272003-10-02 Josef Zlomek <zlomekj@suse.cz> 2628 2629 PR/12292 2630 * combine.c (make_field_assignment): Check whether rtx's code 2631 is CONST_INT before using INTVAL. 2632 26332003-10-02 Josef Zlomek <zlomekj@suse.cz> 2634 2635 Waldek Hebisch <hebisch@math.uni.wroc.pl> 2636 PR/12072 2637 * varasm.c (compare_constant): Fix thinko. 2638 26392003-10-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 2640 2641 * aclocal.m4: Add hpux10* and hpux11.00 to /dev/zero blacklist. 2642 * configure: Rebuilt. 2643 26442003-10-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 2645 2646 * aclocal.m4: Add ultrix* to /dev/zero blacklist. 2647 * configure: Rebuilt. 2648 26492003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2650 2651 * config.gcc (sparc-*-solaris2*): Handle Solaris 10 and up like 2652 Solaris 7-9. 2653 2654 * fixinc/inclhack.def (solaris_widec): Replace solaris2.[0-5]* by 2655 wildcards which explicitly match micro versions. 2656 * fixinc/fixincl.x: Regenerate. 2657 26582003-10-01 Richard Henderson <rth@redhat.com> 2659 2660 * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Honor 2661 DWARF_ALT_FRAME_RETURN_COLUMN. 2662 * unwind-dw2.c (dwarf_reg_size_table): Expand by one. 2663 (_Unwind_GetGR, _Unwind_SetGR): Validate lookup column. 2664 (uw_frame_state_for): Return end-of-stack for null return address. 2665 2666 * config/alpha/alpha.c (alpha_sa_mask): Add r31 for eh_return. 2667 (alpha_expand_prologue): Store a zero for it. 2668 (alpha_expand_epilogue): Don't reload it. 2669 * config/alpha/alpha.h (DWARF_ALT_FRAME_RETURN_COLUMN): New. 2670 * config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Use column 64 2671 for the sigframe return address. 2672 26732003-10-01 Nick Clifton <nickc@redhat.com> 2674 2675 * Import this patch from mainline: 2676 2677 2003-02-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 2678 2679 * collect2.c (pexecute_pid): Rename to pid. 2680 (collect_wait, collect_execute, scan_prog_file, scan_libraries): Use 2681 pid. 2682 26832003-09-23 David S. Miller <davem@redhat.com> 2684 2685 * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Undefine 2686 before redefining. 2687 * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Likewise. 2688 26892003-10-01 Eric Botcazou <ebotcazou@libertysurf.fr> 2690 2691 PR optimization/11753 2692 * config/sparc/sparc.md (length attribute) [fcc branch]: Add 1 to 2693 the length in the non-V9 case. 2694 26952003-09-27 Eric Botcazou <ebotcazou@libertysurf.fr> 2696 2697 PR optimization/12340 2698 * loop.h (struct induction): Document the new semantics 2699 of the 'same' field for bivs. 2700 * unroll.c (biv_total_increment): Don't count the same 2701 biv increment several times. 2702 (loop_iterations) [GENERAL_INDUCT]: Likewise. 2703 27042003-09-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 2705 2706 PR bootstrap/12358 2707 * pa.c (output_bvb): Fix typo. 2708 27092003-09-24 Alexandre Oliva <aoliva@redhat.com> 2710 2711 * cpplib.c (do_pragma): Reintroduce cb_line_change call in the 2712 code path that calls a handler. 2713 27142003-09-23 Geoffrey Keating <geoffk@apple.com> 2715 2716 * config/t-darwin (crt2.o): Add stmp-int-hdrs to dependencies. 2717 2718 * config/rs6000/rs6000.c (function_arg_pass_by_reference): Don't 2719 pass zero-size arrays by reference. 2720 (rs6000_va_arg): Likewise. 2721 27222003-09-22 Joel Sherrill <joel@oarcorp.com> 2723 2724 * combine.c, config/mips/t-elf, config/c4x/rtems.h: Revert patches 2725 which should not have been committed with other RTEMS changes. 2726 27272003-09-22 Olivier Hainque <hainque@act-europe.fr> 2728 2729 PR target/9786 2730 * reg-stack.c (convert_regs_1): Purge possible dead eh edges 2731 after potential deletion of trapping insn. Avoids later ICE 2732 from call to fixup_abnormal_edges. 2733 (convert_regs_2): Stack the current block successors before 2734 processing this block, that is, before the potential deletion of 2735 dead edges by convert_regs_1, because these edges have been used 2736 to initialize the predecessors count. 2737 27382003-09-21 Eric Botcazou <ebotcazou@libertysurf.fr> 2739 2740 PR target/12301 2741 * reorg.c (stop_search_p): Return 1 for insns that can 2742 throw internally. 2743 27442003-09-19 Joel Sherrill <joel@oarcorp.com> 2745 2746 * config/m68k/t-m68kbare, config/m68k/t-rtems: Change 68681 to 2747 68881. 2748 27492003-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 2750 2751 * config/m68k/t-rtems (m68k-*-rtems*): New. 2752 * config.gcc: Use config/m68k/t-rtems. 2753 27542003-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 2755 2756 * config/mips/t-rtems: New. 2757 * config.gcc (mips*-*-rtems*): Use config/mips/t-rtems. 2758 27592003-09-19 T. Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> 2760 Eric Botcazou <ebotcazou@libertysurf.fr> 2761 2762 PR target/12166 2763 * config/sparc/sol2-c1.asm (start): Set __Argv if GCRT1. 2764 27652003-09-18 Mark Mitchell <mark@codesourcery.com> 2766 2767 PR target/11184 2768 * builtins.c (expand_builtin_apply): Use convert_memory_address 2769 before returning the value. 2770 27712003-09-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2772 2773 * configure.in (gcc_cv_as_hidden): Only disable if no GNU ld 2774 detected. 2775 * configure: Regenerate. 2776 Fixes PR target/12248. 2777 27782003-09-17 Richard Henderson <rth@redhat.com> 2779 2780 * config/alpha/alpha.c (alpha_expand_mov): Do gen_movdi_er_maybe_g 2781 always during initial code generation. 2782 * config/alpha/alpha.md (movdi_er_maybe_g): Don't conditionalize 2783 on flag_inline_functions. 2784 27852003-09-17 Eric Botcazou <ebotcazou@libertysurf.fr> 2786 2787 PR optimization/11646 2788 * cfgrtl.c (purge_dead_edges) [JUMP_INSN]: Rematerialize the 2789 EDGE_ABNORMAL flag for EH edges. 2790 * toplev.c (rest_of_compilation): Delete unreachable blocks 2791 if dead edges were purged after the first CSE pass. 2792 27932003-09-16 Jakub Jelinek <jakub@redhat.com> 2794 2795 * config/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. 2796 * config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. 2797 * config/arm/linux-elf.h (LINK_GCC_C_SEQUENCE_SPEC): Define. 2798 * config/rs6000/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. 2799 * config/rs6000/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define. 2800 * config/sh/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. 2801 * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. 2802 * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define. 2803 28042003-09-15 Alexandre Oliva <aoliva@redhat.com> 2805 2806 * cpplib.c (do_pragma): Remove unnecessary cb_line_change. 2807 28082003-09-14 Alexandre Oliva <aoliva@redhat.com> 2809 2810 * cppmain.c (cb_line_change): Revert 2003-08-04's change. 2811 * c-lex.c (cb_line_change): Skip line changing whenever 2812 cppmain.c would. 2813 28142003-09-11 Alexandre Oliva <aoliva@redhat.com> 2815 2816 PR fortran/11522 2817 * dwarf2out.c (gen_inlined_subroutine_die): Emit abstract function 2818 for ultimate origin even if block is abstract. 2819 28202003-09-10 Martin Husemann <martin@duskware.de> 2821 2822 PR target/11965 2823 * config/sparc/sparc.c (sparc_v8plus_shift): Protect against 2824 constants greater than 63. 2825 * config/sparc/sparc.md (ashlsi3, ashrsi3, lshrsi3): Protect 2826 against constants greater than 31. 2827 (*ashldi3_sp64, *ashrdi3_sp64, *lshrdi3_sp64): Protect against 2828 constants greater than 63. 2829 28302003-09-09 Richard Henderson <rth@redhat.com> 2831 2832 PR target/12224: 2833 * config/ia64/ia64.c (ia64_expand_move): Properly truncate 2834 result when op0 is SImode. 2835 28362003-09-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2837 2838 * configure.in (gcc_cv_as_ix86_cmov_sun_syntax): Check if 2839 assembler supports Sun syntax for cmov. 2840 * configure: Regenerate. 2841 * config.in: Li{ewise. 2842 * config/i386/i386.c: Rename CMOV_SUN_AS_SYNTAX to 2843 HAVE_AS_IX86_CMOV_SUN_SYNTAX. 2844 * config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Remove. 2845 Fixes PR target/12101. 2846 28472003-09-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2848 2849 * configure.in (gcc_cv_as_hidden): Disable unless using GNU ld. 2850 * configure: Regenerate. 2851 28522003-09-08 Mark Mitchell <mark@codesourcery.com> 2853 2854 * mklibgcc.in (libcc.a): Depend on stmp-dirs. 2855 (libgov.a): Likewise. 2856 (libgcc_eh.a): Likewise. 2857 28582003-09-07 Eric Botcazou <ebotcazou@libertysurf.fr> 2859 2860 PR target/11689 2861 * config/i386/i386.c (memory_address_length): Fix computation when 2862 the base is esp or ebp. 2863 28642003-09-07 Mark Mitchell <mark@codesourcery.com> 2865 2866 PR c++/11852 2867 * varasm.c (initializer_constant_valid_p): Correct logic for 2868 CONSTRUCTORs. 2869 2870Sun Sep 7 14:53:36 CEST 2003 Jan Hubicka <jh@suse.cz> 2871 2872 * cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch. 2873 28742003-09-07 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de> 2875 2876 PR optimization/11662 2877 Backport from mainline: 2878 2879 2003-07-10 Denis Chertykov <denisc@overta.ru> 2880 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 2881 2882 * combine.c (gen_binary): Handle the CLOBBER rtx and 2883 don't build a binary operation with it. 2884 2885Sat Sep 6 23:16:35 CEST 2003 Jan Hubicka <jh@suse.cz> 2886 2887 * cfgcleanup.c (try_simplify_condjump): Fix my previous patch. 2888 2889 PR target/12070 2890 * calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments. 2891 2892 PR opt/12082 2893 * cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning. 2894 28952003-09-06 Steven Bosscher <steven@gcc.gnu.org> 2896 2897 PR c/9862 2898 * c-decl.c (c_expand_body): Move return warning from here... 2899 (finish_function): ...to here. 2900 29012003-09-05 Jan Hubicka <jh@suse.cz> 2902 2903 PR target/8869 2904 * expr.c (convert_modes): Deal properly with integer to vector 2905 constant conversion. 2906 29072003-09-05 Andrew Pinski <pinskia@physics.uc.edu> 2908 2909 PR c/10962 2910 * c-decl.c (field_decl_cmp): Add back function. 2911 (finish_struct): Sort fields if number greater than 15 2912 and no anymous structs/unions. 2913 29142003-09-04 Jakub Jelinek <jakub@redhat.com> 2915 2916 * config/ia64/libgcc-ia64.ver: Export _Unwind_GetBSP@@GCC_3.3.2. 2917 * config/ia64/unwind-ia64.c (_Unwind_GetBSP): New function. 2918 * unwind.h (_Unwind_GetBSP): New prototype. 2919 * libgcc-std.ver: Add empty GCC_3.3.2 version. 2920 * mkmap-symver.awk: For symbol versions with no exported symbols, 2921 don't put anything into version script, just change all symbol 2922 versions which inherit from it to inherit from its ancestor. 2923 29242003-09-02 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 2925 2926 This is a fix for PR 10988: 2927 * m32r.c (m32r_print_operand): Correct comment. 2928 (m32r_expand_block_move): Correct the handling of leftover/small 2929 blocks. 2930 (m32r_block_small_immediate_operand): New predicate. 2931 * m32r.md (movstrsi_small_internal): New pattern. 2932 * m32r.h (PREDICATE_CODES): Add m32r_block_small_immediate_operand. 2933 * m32r-protos.h: Add prototype for m32r_block_small_immediate_operand. 2934 29352003-08-25 Richard Henderson <rth@redhat.com> 2936 2937 * config/i386.i386.c (ix86_return_in_memory): Reformat. Return true 2938 for 16-byte vector modes if sse not enabled; warn for abi change. 2939 (ix86_value_regno): Only return xmm0 for 16-byte vector types. 2940 29412003-08-25 Zack Weinberg <zack@codesourcery.com> 2942 2943 * config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove 2944 commented-out logic to use DCE threads (if present), add 2945 support for POSIX threads. 2946 * config/ia64/hpux.h: Define CPP_SPEC to set appropriate 2947 #defines for -pthread. Add -lpthread to LIB_SPEC when 2948 -pthread. In both cases take -mt as a synonym for -pthread 2949 for acc compatibility. 2950 Define GTHREAD_USE_WEAK to 0. 2951 * config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC. 2952 Remove old logic for DCE threads from LIB_SPEC. 2953 * config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0. 2954 29552003-08-25 Ulrich Weigand <uweigand@de.ibm.com> 2956 2957 * combine.c (distribute_notes): Handle REG_ALWAYS_RETURN. 2958 29592003-08-23 Jakub Jelinek <jakub@redhat.com> 2960 2961 * c-decl.c (pushdecl): Only put decls which finish_struct will do 2962 something about onto incomplete chain. 2963 (finish_struct): If not removing type from incomplete 2964 list, update prev. 2965 29662003-08-23 Alexandre Oliva <aoliva@redhat.com> 2967 2968 * cppmain.c (cb_line_change): Don't skip line changing while 2969 parsing macro arguments in the top-level context. 2970 29712003-08-22 Mark Mitchell <mark@codesourcery.com> 2972 2973 * config/ia64/hpux.h (SUPPORTS_INIT_PRIORITY): Define to 0. 2974 2975 * config/ia64/ia64.c (ia64_output_mi_thunk): Support ILP32 mode. 2976 29772003-08-21 Kazu Hirata <kazu@cs.umass.edu> 2978 2979 PR target/11805 2980 * config/h8300/h8300.md (two anonymous patterns): Remove. 2981 29822003-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 2983 2984 * stmt.c (expand_asm_operands): Avoid string concatenation. 2985 * tree.c (default_flag_random_seed): Avoid ISO C definition. 2986 * varasm.c (output_constant_def): Delete unused variable. 2987 29882003-08-18 Matt Kraai <kraai@alumni.cmu.edu> 2989 2990 PR c/11207 2991 * c-typeck.c (set_init_index): Check for negative index. 2992 29932003-08-14 Mark Mitchell <mark@codesourcery.com> 2994 2995 * version.c (version_string): Use "prerelease" not "experimental". 2996 29972003-08-11 James E Wilson <wilson@tuliptree.org> 2998 2999 PR optimization/11319 3000 PR target/10021 3001 * alias.c (find_base_value, case REG): Return 0 not src if no base 3002 found. 3003 30042003-08-11 Kean Johnston <jkj@sco.com> 3005 3006 * fixinc/inclhack.def (sco_math): Updated test text and select trigger 3007 according to bkorb's review. 3008 * fixinc/inclhack.def (sco_regset): Ditto. 3009 * fixinc/inclhack.def (AAB_svr4_replace_byteorder): Remove all mach 3010 lines so that this file is unconditionally replaced. 3011 * fixinc/inclhack.def (sco_string): Use ansi/string.h as the first file 3012 to check so that the Ultrix string.h check doesnt overwrite the test 3013 case with its replacement text. 3014 * fixinc/fixincl.x: Regenerated 3015 * fixinc/tests/base/math.h: Updated sco_math result text 3016 * fixinc/tests/base/ansi/string.h: New file. 3017 * fixinc/tests/base/sys/regset.h: Compacted result text to fewer lines. 3018 30192003-08-11 Dale Johannesen <dalej@apple.com> 3020 * config/rs6000/rs6000.md (ctrsi, ctrdi): Reenable handling of 3021 decrement-and-branch farther away than 32 bits. 3022 30232003-08-10 Zack Weinberg <zack@codesourcery.com> 3024 3025 Backport the following changes from mainline: 3026 3027 2003-05-08 David Mosberger <davidm@hpl.hp.com> 3028 3029 * unwind-libunwind.c (_Unwind_FindEnclosingFunction): New. 3030 3031 2003-04-03 Richard Henderson <rth@redhat.com> 3032 3033 * unwind-libunwind.c (_Unwind_GetCFA): New. 3034 3035 2003-03-27 David Mosberger <davidm@hpl.hp.com> 3036 3037 * unwind-libunwind.c (uw_frame_state_for): Adjust for libunwind 3038 v0.9 API change: replace read of UNW_REG_HANDLER with 3039 unw_get_proc_info(). 3040 (_Unwind_GetLanguageSpecificData): Replace read of UNW_REG_LSDA 3041 with unw_get_proc_info(). 3042 (_Unwind_GetRegionStart): Replace UNW_REG_PROC_START with 3043 unw_get_proc_info(). 3044 3045 2003-03-13 Nathanael Nerode <neroden@gcc.gnu.org> 3046 3047 * unwind-libunwind.c: Replace "GNU CC" with "GCC". 3048 3049 2002-10-02 David Mosberger-Tang <David.Mosberger@acm.org> 3050 3051 * config/t-libunwind: Mention unwind-sjlj.c. 3052 * unwind-libunwind.c: Change #ifdef __USING_LIBUNWIND_EXCEPTIONS__ 3053 to #ifndef __USING_SJLJ_EXCEPTIONS__. 3054 3055 * configure.in: Move sjlj-exceptions and --enable-libunwind-exceptions 3056 before inclusion of config.gcc, but after configuring the compiler etc. 3057 Determine default value for --enable-libunwind-exceptions based on 3058 whether the host has a libunwind library (not guaranteed to be correct, 3059 but it's a reasonable first guess and can always be overridden with an 3060 explicit --enable/disable-libunwind-exceptions. 3061 * config.gcc: For target ia64*-*-linux*, mention t-libunwind as a 3062 tmake_file when $use_libunwind_exceptions is enabled. 3063 * Makefile.in: Update comment: LIB2ADDEH is updated not just by 3064 ia64 (e.g., config/t-linux also updates it). 3065 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS]: Mention -lunwind 3066 along with the shared version of libgcc since the latter requires 3067 the former. 3068 3069 * unwind-libunwind.c: New file. 3070 * config/t-libunwind: Ditto. 3071 30722003-08-10 Richard Henderson <rth@redhat.com> 3073 3074 PR target/11693 3075 * config/ia64/ia64.c (ia64_emit_nops): Skip L slots when 3076 padding before inline assembly. 3077 30782003-08-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 3079 3080 PR c++/11712 3081 * pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define 3082 __STDC_EXT__ when using C++ dialect. 3083 30842003-08-08 Kean Johnston <jkj@sco.com> 3085 3086 PR target/9877 3087 PR target/8336 3088 * config.gcc (sco3.2v5*): Use elfos.h and dbxelf.h in tm_file; 3089 Eliminate need for t-sco5gas target fragment. 3090 No longer build crt{begin,end}S.o, that were used for COFF support. 3091 * tlink.c (recompile_files): Add missing = in putenv() calls. 3092 * unwind-dw2.c (_Unwind_GetCFA): Correct return cast. 3093 * config/i386/sco5.h: Major overhaul to remove all COFF support 3094 * config/i386/t-sco5: Multilib for PIC support 3095 * config/i386/t-sco5gas: Remove 3096 * config/i386/i386.c: Check value as well as presence of 3097 SUPPORTS_ONE_ONLY 3098 * doc/install.texi: Update for modern SCO instructions 3099 * fixinc/check.tpl: Allow user to specify diff program for make check 3100 * fixinc/inclhack.def: Fix several SCO header files, namely string.h, 3101 math.h, sys/byteorder.h and sys/regset.h. 3102 * fixinc/fixincl.x: Regenerate 3103 * fixinc/tests/base/math.h: Update 3104 * fixinc/tests/base/sys/byteorder.h: Update 3105 * fixinc/tests/base/string.h: Added 3106 * fixinc/tests/base/sys/regset.h: Added 3107 * testsuite/gcc.dg/nest.c: Allow failure on SCO (-pg not supported) 3108 31092003-08-08 Roger Sayle <roger@eyesopen.com> 3110 3111 PR c/11370 3112 * calls.c (emit_call_1): Don't bother popping the arguments off of 3113 the stack after a noreturn function call; The adjustment is dead. 3114 (expand_call): Likewise. 3115 31162003-08-08 SUGIOKA Toshinobu <sugioka@itonet.co.jp> 3117 3118 * config.gcc: Do not override sh/t-linux with sh/t-le. 3119 31202003-08-08 Kaz Kojima <kkojima@gcc.gnu.org> 3121 3122 * config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath. 3123 (LIB_SPEC): Set -lpthread always when -pthread set. Set -lieee 3124 when -mieee-fp set and -shared not set. 3125 31262003-08-08 Richard Henderson <rth@redhat.com> 3127 3128 PR target/11535 3129 * config/ia64/ia64.c (ia64_initial_elimination_offset): Remove 3130 RETURN_ADDRESS_POINTER_REGNUM. 3131 (ia64_expand_prologue): Don't frob it. 3132 (ia64_output_function_epilogue): Likewise. 3133 (ia64_return_addr_rtx): New. 3134 (ia64_split_return_addr_rtx): New. 3135 * config/ia64/ia64-protos.h: Update. 3136 * config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement. 3137 (RETURN_ADDRESS_POINTER_REGNUM): Remove. 3138 (GENERAL_REGNO_P): Don't check it. 3139 (AR_*_REGNUM): Renumber. 3140 (FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM. 3141 (CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise. 3142 (REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise. 3143 (ELIMINABLE_REGS, REGISTER_NAMES): Likewise. 3144 (RETURN_ADDR_RTX): Use ia64_return_addr_rtx. 3145 * config/ia64/ia64.md (UNSPEC_RET_ADDR): New. 3146 (movdi_ret_addr): New. 3147 31482003-08-03 Geoffrey Keating <geoffk@apple.com> 3149 3150 PR 11709 3151 * varasm.c (output_constant_def_contents): Use 3152 ASM_DECLARE_CONSTANT_NAME if defined. 3153 * doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME. 3154 * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized 3155 objects get at least one byte to prevent assembler problems. 3156 (ASM_DECLARE_CONSTANT_NAME): New. 3157 31582003-08-07 Mark Mitchell <mark@codesourcery.com> 3159 3160 * version.c (version_string): Reset to prerelease. 3161 * doc/include/gcc-common.texi: Update version. 3162 31632003-08-04 Release Manager 3164 3165 * GCC 3.3.1 Released. 3166 31672003-08-04 Release Manager 3168 3169 * GCC 3.3.1 Released. 3170 31712003-08-03 Neil Booth <neil@daikokuya.co.uk> 3172 3173 PR preprocessor/11534 3174 * cppexp.c (parse_defined): Warn only if -pedantic. 3175 31762003-08-03 Mark Mitchell <mark@codesourcery.com> 3177 3178 * Makefile.in (ORDINARY_FLAGS_TO_PASS): Pass AR. 3179 3180 * Makefile.in (STAGE2_FLAGS_TO_PASS): Pass AR_FOR_TARGET and 3181 RANLIB_FOR_TARGET. 3182 (stage1_build): Likewise. 3183 31842003-08-03 Jan Hubicka <jh@suse.cz> 3185 3186 PR 10510 3187 * config/pa/pa.h (MAYBE_FP_REG_CLASS_P): New. 3188 (SECONDARY_MEMORY_NEEDED): Use it. 3189 31902003-08-01 Geoffrey Keating <geoffk@apple.com> 3191 3192 PR 11709 (partial fix) 3193 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't 3194 insert a label at the end of an function under Mach-O. 3195 3196 PR 11313 3197 * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME 3198 when it's not needed. 3199 32002003-07-29 Richard Henderson <rth@redhat.com> 3201 3202 PR target/10681 3203 3204 2003-06-27 J"orn Rennecke <joern.rennecke@superh.com> 3205 * flow.c (propagate_one_insn): Use proper test for a register 3206 being part of the return value. 3207 3208 2003-06-26 Richard Henderson <rth@redhat.com> 3209 * flow.c (propagate_one_insn): Preserve live-at-end registers 3210 across tail calls. 3211 3212 2003-06-26 Richard Henderson <rth@redhat.com> 3213 * config/ia64/ia64.c (ia64_expand_call): Don't add ar.pfs for sibcalls. 3214 (ia64_split_call): Only load descriptor for GP register inputs. 3215 (ia64_expand_epilogue): Check current_frame_info.mask not 3216 current_function_is_leaf to restore ar.pfs. 3217 32182003-07-26 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 3219 3220 * doc/install.texi (Testing): Adjust required versions of DejaGnu. 3221 32222003-07-24 Aldy Hernandez <aldyh@redhat.com> 3223 3224 Backport the folling patch. 3225 3226 2003-04-01 Aldy Hernandez <aldyh@redhat.com> 3227 3228 PR/8878 3229 * expr.c (expand_expr): Handle VECTOR_CST. 3230 (const_vector_from_tree): New. 3231 3232 * varasm.c (output_constant): Handle VECTOR_CST. 3233 3234 * c-typeck.c (digest_init): Build a vector constant from a 3235 VECTOR_TYPE. 3236 32372003-07-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 3238 3239 PR target/11607 and PR target/11516 3240 * pa.md (extzv, extv, insv): Revert latter half of last patch. 3241 32422003-07-23 Mark Mitchell <mark@codesourcery.com> 3243 3244 PR optimization/10679 3245 * tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS. 3246 32472003-07-22 Bob Wilson <bob.wilson@acm.org> 3248 3249 * unwind-c.c (PERSONALITY_FUNCTION): Delete duplicate define. 3250 32512003-07-23 Dave Fluri <dave.fluri@onlink.net> 3252 3253 * doc/extend.texi: Fixes to spelling, grammar, and diction. 3254 32552003-07-21 H.J. Lu <hongjiu.lu@intel.com> 3256 3257 PR optimization/11599 3258 * config/ia64/ia64.md (prefetch): Support predicate. 3259 32602003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr> 3261 3262 PR optimization/11536 3263 * unroll.c (loop_iterations): Do not replace a register holding 3264 the final value by its equivalent before the loop if it is not 3265 invariant. 3266 32672003-07-21 Ben Elliston <bje@wasabisystems.com> 3268 3269 * doc/invoke.texi (V850 Options): Spelling fixes. 3270 32712003-07-21 Lisa M. Goldstein <opus@gnu.org> 3272 3273 * doc/invoke.texi: Fixes to style, grammar and diction. 3274 32752003-07-20 Mark Mitchell <mark@codesourcery.com> 3276 3277 PR debug/11279 3278 * dwarf2out.c (gen_enumeration_type_die): Remember that 3279 enumerators can be unsigned. 3280 32812003-07-19 Kelley Cook <kelleycook@wideopenwest.com> 3282 3283 * c-tree.texi: Backport changes from mainline. 3284 * c-tree.texi: Ditto. 3285 * collect2.texi: Ditto. 3286 * cpp.texi: Ditto. 3287 * cppopts.texi: Ditto. 3288 * extend.texi: Ditto. 3289 * fragments.texi: Ditto. 3290 * headerdirs.texi: Ditto. 3291 * install.texi: Ditto. 3292 * invoke.texi: Ditto. 3293 * md.texi: Ditto. 3294 * portability.texi: Ditto. 3295 * rtl.texi: Ditto. 3296 * sourcebuild.texi: Ditto. 3297 * trouble.texi: Ditto. 3298 32992003-07-19 Kelley Cook <kelleycook@wideopenwest.com> 3300 3301 PR optimization/4490 3302 * doc/invoke.texi (m96bit-long-double, m128bit-long-double): Reword 3303 documentation to accurately reflect what these options do. 3304 33052003-07-18 Richard Henderson <rth@redhat.com> 3306 David S. Miller <davem@redhat.com> 3307 3308 PR target/11556 3309 * optabs.c (prepare_operand): Fail gracefully instead of abort 3310 if the predicate doesn't satisfy. 3311 (gen_cond_trap): Allow prepare_operand to fail. 3312 Pass correct opnum argument to prepare_operand. 3313 33142003-07-18 Eric Botcazou <ebotcazou@libertysurf.fr> 3315 3316 PR optimization/11083 3317 * toplev.c (rest_of_compilation): Delete unreachable blocks 3318 if dead edges were purged after the addressof pass. 3319 33202003-07-17 Mark Mitchell <mark@codesourcery.com> 3321 3322 PR optimization/11557 3323 * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK 3324 unless we know which function is being called. 3325 33262003-07-17 Nathanael Nerode <neroden@gcc.gnu.org> 3327 3328 PR bootstrap/11043 3329 * config/arc/t-arc: Replace bogus references to "x-crtinit.o", 3330 "x-crtfini.o" with "crtinit.o", "crtfini.o". 3331 33322003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr> 3333 3334 PR other/11466 3335 * doc/invoke.texi (SPARC Options): Document "-mlittle-endian" 3336 and its restrictions for the SPARC64 port. 3337 3338 Backport from mainline: 3339 2003-06-13 Florian Weimer <fw@deneb.enyo.de> 3340 3341 * doc/invoke.texi (SPARC Options): Document "-mimpure-text". 3342 33432003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr> 3344 Phil Edwards <phil@jaj.com> 3345 3346 * doc/install.texi (*-*-solaris2*): Document the step-by-step 3347 procedure to bootstrap and install. 3348 Document the preference for the legacy Sun tools in /usr/bin 3349 over the POSIX tools in /usr/xpg4/bin for the build process. 3350 33512003-07-16 Richard Henderson <rth@redhat.com> 3352 3353 PR target/10907 3354 * config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end 3355 even with !TARGET_CONST_GP. 3356 (ia64_function_ok_for_sibcall): Reject non-local functions. 3357 33582003-07-15 Geoffrey Keating <geoffk@apple.com> 3359 3360 * config/darwin.c (machopic_select_section): Use decl_readonly_section 3361 to do most of the work. 3362 33632003-07-15 David S. Miller <davem@redhat.com> 3364 3365 * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only 3366 emit nop if the last real insn is CALL_INSN. 3367 33682003-07-15 Loren James Rittle <ljrittle@acm.org> 3369 3370 * config/i386/freebsd.h (SET_ASM_OP): Remove. 3371 (SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case. 3372 (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER 3373 MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace. 3374 33752003-07-15 Mark Mitchell <mark@codesourcery.com> 3376 3377 PR debug/11473 3378 * dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of 3379 base classes. 3380 33812003-07-15 James A. Morrison <ja2morri@student.math.uwaterloo.ca> 3382 3383 * doc/include/texinfo.tex: Upgrade to texinfo 4.6. 3384 33852003-07-15 Eric Botcazou <ebotcazou@libertysurf.fr> 3386 3387 PR optimization/11320 3388 * sched-int.h (struct deps) [reg_conditional_sets]: New field. 3389 (struct sched_info) [compute_jump_reg_dependencies]: New prototype. 3390 * sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to 3391 current_sched_info->compute_jump_reg_dependencies. Record which 3392 registers are used and which registers are set by the jump. 3393 Clear deps->reg_conditional_sets after a barrier. 3394 Set deps->reg_conditional_sets if the insn is a COND_EXEC. 3395 Clear deps->reg_conditional_sets if the insn is not a COND_EXEC. 3396 (init_deps): Initialize reg_conditional_sets. 3397 (free_deps): Clear reg_conditional_sets. 3398 * sched-ebb.c (compute_jump_reg_dependencies): New prototype. 3399 Mark registers live on entry of the fallthrough block and conditionally 3400 set as set by the jump. Mark registers live on entry of non-fallthrough 3401 blocks as used by the jump. 3402 * sched-rgn.c (compute_jump_reg_dependencies): New prototype. 3403 Mark new parameters as unused. 3404 34052003-07-14 Mark Mitchell <mark@codesourcery.com> 3406 3407 PR debug/11098 3408 * integrate.c (copy_decl_for_inlining): Do not mark copied decls 3409 as DECL_ABSTRACT. 3410 34112003-07-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 3412 3413 PR optimization/11440 3414 * gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or 3415 SIGN_EXTRACT SETs. 3416 34172003-07-13 Aaron W. LaFramboise <awlaframboise@aol.com> 3418 3419 * config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1. 3420 34212003-07-13 Roger Sayle <roger@eyesopen.com> 3422 3423 PR optimization/11059 3424 * expr.c (can_store_by_pieces): Return true if length is zero. 3425 (store_by_pieces): Do nothing if length is zero. 3426 (clear_by_pieces): Do nothing if length is zero. 3427 (clear_storage): Do nothing if length is zero. 3428 (store_constructor): Simplify code when size is zero, or the 3429 target has already been cleared. This avoids emitting a 3430 blockage instruction when initializing empty structures. 3431 34322003-07-13 Richard Henderson <rth@redhat.com> 3433 3434 * libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0, 3435 __gcc_personality_v0. 3436 34372003-07-11 Dara Hazeghi <dhazeghi@yahoo.com> 3438 3439 PR optimization/10877 3440 * doc/install.tex: Update required binutils for i?86-*-linux* 3441 34422003-07-11 Ben Elliston <bje@redhat.com> 3443 3444 PR c++/1607 3445 * doc/extend.texi (Function Attributes): Document the effect of 3446 the C++ "this" parameter on the counting of arguments for the 3447 "format" and "format_arg" attributes. 3448 34492003-07-11 Danny Smith <dannysmith@users.sourceforge.net> 3450 3451 Backport from mainline. 3452 3453 2003-05-13 Richard Henderson <rth@redhat.com> 3454 3455 * c-decl.c (duplicate_decls): Re-invoke make_decl_rtl if 3456 the old decl had instantiated DECL_RTL. 3457 3458 2003-05-21 Danny Smith <dannysmitx@users.sourceforge.net> 3459 3460 PR c++/9738 3461 * config/i386/winnt.c (i386_pe_encode_section_info): Enable 3462 even if not first. 3463 3464 2003-07-04 Danny Smith <dannysmith@users.sourceforge.net> 3465 3466 PR c++/5287, PR c++/7910, PR c++/11021 3467 * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add 3468 dllimport attribute if function is defined at declaration, but 3469 report error instead. Likewise for dllimport'd variable 3470 definitions. Set implicit TREE_PUBLIC for dllimport'd variables 3471 declared within functions, Report error if dllimport or dllexport 3472 symbol is not global. 3473 (i386_pe_dllimport_p): Ignore dllimport attribute of functions 3474 if defined after declaration or if inlined. Don't allow definition 3475 of static data members of C++ classes. Don't dllimport virtual 3476 methods. 3477 (i386_pe_mark_dllexport): Warn about inconsistent dll attributes. 3478 (i386_pe_mark_dllimport): Remove unnecessary checks. 3479 (i386_pe_encode_section_info): Warn if the dllimport attribute 3480 and symbol prefix have been instantiated and then overridden. 3481 3482 * doc/extend.texi: Document dllimport and dllexport attributes. 3483 34842003-07-10 James E Wilson <wilson@tuliptree.org> 3485 3486 PR optimization/9745 3487 * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before 3488 loop_insn_emit_before. 3489 (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise. 3490 34912003-07-10 Dara Hazeghi <dhazeghi@yahoo.com> 3492 3493 PR bootstrap/10758 3494 * doc/install.texi: Document requirements for ia64-*-hpux* target. 3495 34962003-07-09 Mark Mitchell <mark@codesourcery.com> 3497 3498 PR c++/10032 3499 * doc/invoke.texi (C++ Dialect Options): Change documentation of 3500 -fpermissive. 3501 35022003-07-10 Matt Kraai <kraai@alumni.cmu.edu> 3503 3504 * doc/invoke.texi: Fix misspelling of "@item". 3505 35062003-07-09 Hans-Peter Nilsson <hp@bitrange.com> 3507 3508 * doc/install.texi (Configuration): Document the valgrind option 3509 to --enable-checking. 3510 35112003-07-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 3512 3513 PR Target/11453 3514 * pa.md: Disparage all mtsar constraints. 3515 (extzv, extv, insv): Don't fail on length of {32|64}. 3516 35172003-07-08 James E Wilson <wilson@tuliptree.org> 3518 3519 PR target/10021 3520 * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF, 3521 loop over new variable t2 instead of t. 3522 35232003-07-08 Stephane Carrez <stcarrez@nerim.fr> 3524 3525 * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define 3526 as .file/.loc directives are incompatible with linker relaxation. 3527 35282003-07-08 Jakub Jelinek <jakub@redhat.com> 3529 3530 PR c/11420 3531 * config/i386/i386.c (ix86_check_movabs): New function. 3532 * config/i386/i386-protos.h (ix86_check_movabs): New prototype. 3533 * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative. 3534 (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions. 3535 3536 * config/i386/i386.md (movdi_1_rex64): Set Y<-m alternative's type 3537 to ssemov. 3538 35392003-07-08 Jakub Jelinek <jakub@redhat.com> 3540 3541 * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and 3542 REG_EQUIV notes as well. 3543 35442003-07-07 Dale Johannesen <dalej@apple.com> 3545 3546 PR 10900 3547 * config/rs6000/darwin-tramp.asm: Fix trampolines. 3548 35492003-07-07 Andrew Pinski <pinskia@physics.uc.edu> 3550 3551 PR optimization/11368 3552 * doc/invoke.texi (-falign-functions): Document that 3553 when n is zero then a machine-dependent default is used. 3554 (-falign-labels): Document that when n is zero then a 3555 machine-dependent default is used and that -falign-labels =1 3556 is equivalent to -fno-align-labels. 3557 (-falign-loops): Likewise. 3558 (-falign-jumps): Likewise. 3559 35602003-07-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 3561 Eric Botcazou <ebotcazou@libertysurf.fr> 3562 3563 PR optimization/11198 3564 * alias.c (objects_must_conflict_p): Return 1 if the types have 3565 the same alias set, not if the alias sets only conflict. 3566 35672003-07-06 Matthias Klose <doko@debian.org> 3568 3569 Backport from mainline: 3570 3571 2003-07-04 Zack Weinberg <zack@codesourcery.com> 3572 3573 * doc/extend.texi: Delete entire section on multiline strings. 3574 35752003-07-04 H.J. Lu <hongjiu.lu@intel.com> 3576 3577 * Makefile.in: Replace PWD with PWD_COMMAND. 3578 35792003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr> 3580 3581 PR optimization/11304 3582 Backport from mainline: 3583 3584 2003-04-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 3585 3586 * cfgcleanup.c (flow_find_cross_jump): Use INSN_P, not active_insn_p. 3587 35882003-07-03 Roger Sayle <roger@eyesopen.com> 3589 3590 PR target/10700 3591 * fold-const.c (extract_muldiv_1): There's nothing that can be done 3592 if the expression is a SAVE_EXPR. 3593 35942003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr> 3595 3596 PR optimization/11381 3597 * simplify-rtx.c (simplify_relational_operation): Check that 3598 two equal operands have no side-effects before simplifying 3599 the comparison. 3600 36012003-07-01 Zack Weinberg <zack@codesourcery.com> 3602 3603 PR 2873 3604 * fixinc/inclhack.def (avoid_wchar_t_type): Add bypass 3605 expressions to prevent triggering on recent curses.h, 3606 linux/nls.h, or X11/Xlib.h. 3607 (stdio_va_list): Add _G_va_list to bypass pattern. 3608 (strict_ansi_not): Add bypass pattern for __SCO_VERSION__. 3609 * fixinc/fixincl.x: Regenerate. 3610 36112003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3612 3613 * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5 3614 <internal/stdio_core.h> too. 3615 (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and 3616 <internal/wchar_core.h> too. 3617 Substitute va_list uses in inline definition. 3618 * fixinc/fixincl.x: Regenerate. 3619 36202003-07-01 Richard Henderson <rth@redhat.com> 3621 (blame to: Loren James Rittle <ljrittle@acm.org>) 3622 3623 * real.h (ieee_extended_intel_96_round_53_format): New. 3624 * real.c (ieee_extended_intel_96_round_53_format): New. 3625 * config/i386/freebsd.h (SUBTARGET_OVERRIDE_OPTIONS): Use it 3626 for XFmode and TFmode. 3627 36282003-07-01 Kazu Hirata <kazu@cs.umass.edu> 3629 3630 * doc/contrib.texi: Fix typos. 3631 * doc/sourcebuild.texi: Likewise. 3632 36332003-06-27 Gunther Nikl <gni@gecko.de> 3634 3635 PR target/11014 3636 * config/m68k/m68k.c (m68k_output_mi_thunk): Use correct assembly 3637 syntax for MIT / MOTOROLA. 3638 36392003-06-27 Ulrich Weigand <uweigand@de.ibm.com> 3640 3641 * config/s390/s390.h (SECONDARY_OUTPUT_RELOAD_CLASS): Define. 3642 * config/s390/s390.c (s390_secondary_output_reload_class): New function. 3643 * config/s390/s390-protos.h (s390_secondary_output_reload_class): 3644 Declare it. 3645 * config/s390/s390.md ("reload_outti", "reload_outdi", 3646 "reload_outdf"): New expanders. 3647 3648 * config/s390/s390.md ("movti" + splitters): Handle non-offsettable 3649 memory operands as source. 3650 ("movdi" + splitters): Likewise. 3651 ("movdf" + splitters): Likewise. 3652 * config/s390/s390.c (s390_split_ok_p): New function. 3653 * config/s390/s390-protos.h (s390_split_ok_p): Declare it. 3654 36552003-06-27 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3656 3657 * config/mips/mips.md (trap): Use break 0 when !TARGET_GAS. 3658 3659 * config/mips/iris6-o32.h (MIPS_ISA_DEFAULT): Remove. 3660 (MIPS_CPU_STRING_DEFAULT): Redefine to mips2. 3661 3662 * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 && 3663 !TARGET_IRIX6]: Define as NULL. 3664 3665 * config/mips/iris5gas.h (MDEBUG_ASM_SPEC): Override to match 3666 DWARF 2 default. 3667 3668 * config/mips/dbxmdebug.h: New file. 3669 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it with 3670 gas and --with-stabs. 3671 36722003-06-27 Andreas Schwab <schwab@suse.de> 3673 3674 * config.gcc (m68k-*-linux*): Don't override extra_parts and 3675 gnu_ld, use the generic *-*-linux* settings instead. 3676 36772003-06-26 Roger Sayle <roger@eyesopen.com> 3678 3679 PR optimization/11054 3680 * rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT 3681 and SIGN_EXTRACT. 3682 36832003-06-25 Zack Weinberg <zack@codesourcery.com> 3684 3685 PR bootstrap/3163 3686 * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE, AC_FUNC_MMAP_FILE): Delete. 3687 (gcc_AC_FUNC_MMAP_BLACKLIST): New. 3688 * configure.in: Check for sys/mman.h and mmap in AC_CHECK_HEADERS 3689 and AC_CHECK_FUNCS lists, respectively. Use 3690 gcc_AC_FUNC_MMAP_BLACKLIST, not AC_FUNC_MMAP_ANYWHERE nor 3691 AC_FUNC_MMAP_FILE. 3692 * configure, config.in: Regenerate. 3693 3694 * ggc-page.c (init_gcc): Call fatal_io_error, not abort, 3695 if opening /dev/zero fails. 3696 36972003-06-25 Roger Sayle <roger@eyesopen.com> 3698 3699 * builtins.c (expand_builtin_strcpy): Construct new argument list 3700 manually instead of using chainon to modify the original arglist. 3701 (expand_builtin_strcmp): Likewise. 3702 37032003-06-25 David O'Brien <obrien@FreeBSD.org> 3704 3705 * config/i386/i386.h (builtin_define): Remove duplicate __amd64 3706 and __amd64__. 3707 37082003-06-25 Dhananjay Deshpande <dhananjayd@kpitcummins.com> 3709 3710 * config/sh/sh.c (sh_register_move_cost): 3711 Add case for moving between MAC_REGS. 3712 37132003-06-24 Jerry Quinn <jlquinn@optonline.net> 3714 3715 PR other/11280 3716 * gcc/doc/invoke.texi (Optimization Options): Remove -Os from 3717 -freorder-functions description. 3718 37192003-06-25 Richard Sandiford <rsandifo@redhat.com> 3720 3721 PR target/11084 3722 * config/mips/mips.c (mips_expand_prologue): Fix setting of regno 3723 for the end of a variable argument list. 3724 37252003-06-25 Josef Zlomek <zlomekj@suse.cz> 3726 3727 * dwarf2out.c (gen_field_die): Return if type of decl is error mark. 3728 37292003-06-24 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de> 3730 3731 PR target/11260 3732 * config/alpha/alpha.md (sqrtdf2): Fix operand substitution. 3733 37342003-06-24 Jakub Jelinek <jakub@redhat.com> 3735 3736 * builtins.c (expand_builtin_strcpy): Don't evaluate side-effects in 3737 src twice. 3738 37392003-06-23 Jakub Jelinek <jakub@redhat.com> 3740 3741 * config/s390/s390.c (s390_output_mi_thunk): Avoid .plt in -m31 3742 mode, as it requires pic register loaded. 3743 37442003-06-23 Kazu Hirata <kazu@cs.umass.edu> 3745 3746 * doc/extend.texi: Fix typos. 3747 * doc/md.texi: Likewise. 3748 37492003-06-23 Roger Sayle <roger@eyesopen.com> 3750 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 3751 3752 * doc/contrib.texi (Contributors): Add a note on testing and 3753 remove duplicates from testers list. 3754 37552003-06-23 Kazu Hirata <kazu@cs.umass.edu> 3756 3757 * doc/invoke.texi: Document dump options, dT and dW. 3758 37592003-06-23 Andreas Schwab <schwab@suse.de> 3760 3761 * doc/invoke.texi: Remove leading `-' from options in index. 3762 37632003-06-22 Kazu Hirata <kazu@cs.umass.edu> 3764 3765 * doc/invoke.texi: Document dump, .cfg. 3766 37672003-06-22 Kazu Hirata <kazu@cs.umass.edu> 3768 3769 * doc/invoke.texi: Alphabetize dump options. 3770 37712003-06-22 Kazu Hirata <kazu@cs.umass.edu> 3772 3773 * doc/invoke.texi: Remove a duplicate -dk. 3774 37752003-06-22 Kazu Hirata <kazu@cs.umass.edu> 3776 3777 * doc/rtl.texi: Fix the @findex for pre_modify. 3778 3779Sat Jun 21 13:37:52 CEST 2003 Jan Hubicka <jh@suse.cz> 3780 3781 * i386.c (ix86_va_arg): Fix allocation of temporary slot. 3782 37832003-06-21 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 3784 3785 * doc/contrib.texi (Contributors): Use Windows instead of Win32. 3786 3787 Update Andreas Jaeger's entry. 3788 3789 Merge the two entries of Kaveh Ghazi, David Edelsohn, and 3790 Loren J. Rittle. 3791 37922003-06-20 Geoffrey Keating <geoffk@apple.com> 3793 3794 PR c++/9393 3795 * doc/invoke.texi (Debugging Options): Document -frandom-seed. 3796 * configure.in: Check for gettimeofday. 3797 * tree.c (flag_random_seed): Define. 3798 (default_flag_random_seed): New. 3799 (append_random_chars): Use flag_random_seed rather than trying 3800 to acquire randomness here. 3801 * tree.h (default_flag_random_seed): Declare. 3802 * toplev.c (display_help): Add -frandom-seed and -fstack-limit-* 3803 descriptions. 3804 (decode_f_option): Handle -frandom-seed. 3805 (print_switch_values): Call default_flag_random_seed. 3806 * flags.h (flag_random_seed): Declare. 3807 * configure: Regenerate. 3808 * config.in: Regenerate. 3809 38102003-06-20 Mark Mitchell <mark@codesourcery.com> 3811 3812 PR c++/10888 3813 * tree-inline.c (expand_call_inline): Do not warn about failing to 3814 inline functions declared in system headers. 3815 * doc/invoke.texi (-Winline): Expand on documentation. 3816 38172003-06-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3818 3819 * configure.in (gcc_cv_as_gstabs_flag): Disable if assembler warns. 3820 * configure: Regenerate. 3821 Fixes PR driver/9362. 3822 38232003-06-19 Vladimir Makarov <vmakarov@redhat.com> 3824 3825 * haifa-sched.c (max_isse): Backport from the mainline. 3826 (choice_entry): New structure. 3827 (choice_stack, cycle_issued_insns, max_lookahead_tries, 3828 cached_first_cycle_multipass_dfa_lookahead, cached_issue_rate): 3829 New variables. 3830 (choose_ready): Calculate max_lookahead_tries. Initiate 3831 ready_try. 3832 (schedule_block): Allocate/deallocate choice_stack. Change 3833 cycle_issued_insns value as necessary. 3834 (sched_init): Check cached_issue_rate. 3835 38362003-06-20 Daniel Egger <degger@fhm.edu> 3837 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 3838 3839 * doc/install.texi (Building): Correct and improve statement 3840 about parallel builds. 3841 38422003-06-20 Eric Botcazou <ebotcazou@libertysurf.fr> 3843 3844 * doc/install.texi (--with-gnu-as): Mention SPARC/Solaris and 3845 SPARC64/Solaris as platforms where --with-gnu-as makes a difference. 3846 (--with-as): Add @anchor. 3847 (--with-gnu-ld): Fix typo. 3848 (--with-ld): Add @uref to --with-as. 3849 38502003-06-19 Kazu Hirata <kazu@cs.umass.edu> 3851 3852 * flow.c (initialize_uninitialized_subregs): Use 3853 emit_move_insn instead of emitting a hardcoded move. 3854 38552003-06-19 David Edelsohn <edelsohn@gnu.org> 3856 3857 * config/rs6000/rs6000.c (init_cumulative_args): Limit CALL_LIBCALL 3858 to ABI_V4. 3859 38602003-06-19 DJ Delorie <dj@redhat.com> 3861 3862 PR preprocessor/11022 3863 * cppmacro.c (warn_of_redefinition): Handle cases where the two 3864 definitions have different numbers of tokens. 3865 38662003-06-18 Richard Henderson <rth@redhat.com> 3867 3868 * config/ia64/unwind-ia64.c (_Unwind_GetCFA): New. 3869 (_Unwind_FindEnclosingFunction): Implement. 3870 38712003-06-18 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 3872 3873 * config/rs6000/rs6000.c (init_cumulative_args): Add and handle LIBCALL 3874 argument. 3875 (function_arg): Handle CALL_LIBCALL flag. 3876 * config/rs6000/rs6000-protos.h (init_cumulative_args): Update 3877 prototype. 3878 * config/rs6000/rs6000.h (CALL_LIBCALL): New macro. 3879 (INIT_CUMULATIVE_LIBCALL_ARGS): New macro. 3880 (INIT_CUMULATIVE_ARGS): Add LIBCALL argument. 3881 (INIT_CUMULATIVE_INCOMING_ARGS): Likewise. 3882 38832003-06-17 Jason Merrill <jason@redhat.com> 3884 3885 PR c++/10929 3886 * tree-inline.c (expand_call_inline): Don't warn about failing to 3887 inline a function which was made inline by -finline-functions. 3888 38892003-06-17 Ranjit Mathew <rmathew@hotmail.com> 3890 3891 * install.texi (Testing): Add information on how to run Java 3892 runtime tests separately. 3893 38942003-06-17 Christopher Faylor <cgf@redhat.com> 3895 3896 * doc/install.texi: Add msvc rebuild caveat. 3897 38982003-06-17 Kazu Hirata <kazu@cs.umass.edu> 3899 3900 * doc/contrib.texi: Replace Hitachi with Renesas. 3901 * doc/install.texi: Likewise. 3902 * doc/invoke.texi: Likewise. 3903 39042003-06-17 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 3905 3906 * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Partly revert 3907 2003-01-23 patch. Corrected to handle kernels with changed ucontext. 3908 3909 * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Error on invalid 3910 -msdata=eabi usages. 3911 39122003-06-14 Richard Earnshaw <rearnsha@arm.com> 3913 3914 PR optimization/10842 3915 From trunk: 3916 2003-01-20 Nick Clifton <nickc@redhat.com> 3917 3918 * config/arm/arm.md (sibcall_epilogue): Add an 3919 UNSPEC_PROLOGUE_USE to prevent the link register from being 3920 considered dead. 3921 3922 2003-02-02 Richard Earnshaw <rearnsha@arm.com> 3923 3924 * arm.md (sibcall_epilogue): Set the "conds" to "clob". 3925 (epilogue_insns): Likewise. 3926 39272003-06-14 Richard Earnshaw <rearnsha@arm.com> 3928 3929 PR target/11183 3930 * arm.c (output_move_double): Pass SImode to adjust_address. 3931 39322003-06-13 Janis Johnson <janis187@us.ibm.com> 3933 3934 * doc/install.texi (m32r-*-elf): Change company to Renesas. 3935 39362003-06-13 Richard Earnshaw <rearnsha@arm.com> 3937 3938 * arm.c (output_call_mem): If the address references the link-register 3939 use an instruction sequence that avoids early-clobbering IP. 3940 (eliminate_lr2ip): Delete. 3941 39422003-06-12 Richard Henderson <rth@redhat.com> 3943 3944 PR target/11089 3945 * config/i386/i386.md (sse_movaps): Use an expander to force 3946 one operand to be a register. 3947 (sse_movups): Likewise. 3948 39492003-06-12 Richard Henderson <rth@redhat.com> 3950 3951 PR middle-end/10557 3952 * rtlanal.c (subreg_offset_representable_p): Relax subreg check. 3953 39542003-06-13 Eric Botcazou <ebotcazou@libertysurf.fr> 3955 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de> 3956 3957 PR target/10142 3958 * config/sparc/sparc.c (function_arg_record_value_parms): Add 3959 new 'stack' field. 3960 (function_arg_record_value_1): Set 'stack' to 1 if we run out of 3961 integer slots for an integer field. 3962 (function_arg_record_value_3): Shift vector index. 3963 (function_arg_record_value_2): Likewise. 3964 (function_arg_record_value): Initialize 'stack' to 0. 3965 Set 'stack' to 1 if we run out of integer slots for an integer field. 3966 Generate (parallel [(expr_list (nil) ...) ...]) if 'stack' is set to 1. 3967 39682003-06-13 Eric Botcazou <ebotcazou@libertysurf.fr> 3969 3970 PR optimization/10955 3971 * unroll.c (unroll_loop): Fix off-by-one bug. 3972 39732003-06-12 Richard Henderson <rth@redhat.com> 3974 3975 PR middle-end/10475 3976 * expmed.c (emit_store_flag): Use simplify_gen_subreg directly 3977 for extracting sub-words. 3978 39792003-06-12 Richard Henderson <rth@redhat.com> 3980 3981 PR target/7594 3982 * config/m68k/m68k.md (zero_extendhisi2): Use gen_lowpart_SUBREG. 3983 (zero_extendqihi2, zero_extendqisi2): Likewise. 3984 39852003-06-12 Richard Henderson <rth@redhat.com> 3986 3987 PR inline-asm/4823 3988 * reg-stack.c (any_malformed_asm): New. 3989 (check_asm_stack_operands): Set it. 3990 (convert_regs_1): Check it before aborting. 3991 39922003-06-12 Jakub Jelinek <jakub@redhat.com> 3993 3994 * c-decl.c (c_expand_body): Save input_filename and lineno, 3995 set it before tree inlining and restore before return. 3996 39972003-06-12 Ulrich Weigand <uweigand@de.ibm.com> 3998 3999 * config/s390/s390.c (s390_emit_prologue): Use LA instead of AR 4000 to initialize GOT register. 4001 40022003-06-12 Jakub Jelinek <jakub@redhat.com> 4003 4004 * c-opts.c (complain_wrong_lang): Add on argument. 4005 Print no- switch if on is false. 4006 (c_common_decode_option): Adjust caller. 4007 40082003-06-11 Richard Henderson <rth@redhat.com> 4009 4010 * stmt.c (expand_asm_operands): Don't warn for memories with 4011 queued addresses. 4012 40132003-06-11 Andrew Pinski <pinskia@physics.uc.edu> 4014 4015 PR target/8787 4016 * config/i386/djgpp.h (ASM_FILE_START): emit `.intel_syntax' 4017 if -masm=intel. 4018 40192003-06-10 Andrew Haley <aph@redhat.com> 4020 4021 * langhooks-def.h (LANG_HOOKS_DECL_OK_FOR_SIBCALL): New. 4022 (LANG_HOOKS_DECLS): Add LANG_HOOKS_DECL_OK_FOR_SIBCALL. 4023 (lhd_decl_ok_for_sibcall): New. 4024 * langhooks.c (lhd_decl_ok_for_sibcall): New. 4025 * langhooks.h (lang_hooks_for_decls.ok_for_sibcall): New field. 4026 * calls.c (expand_call): Check lang_hook before generating a 4027 sibcall. 4028 40292003-06-09 Richard Henderson <rth@redhat.com> 4030 4031 2003-05-11 Ulrich Weigand <uweigand@de.ibm.com> 4032 * except.c (EH_RETURN_STACKADJ_RTX): Do not define. 4033 (EH_RETURN_HANDLER_RTX): Likewise. 4034 (expand_builtin_eh_return): Do not copy stack adjustment 4035 if EH_RETURN_STACKADJ_RTX is not defined. 4036 (expand_eh_return): Likewise. Also, do not pass stack 4037 adjustment as argument to the eh_return pattern. 4038 * except.h (MUST_USE_SJLJ_EXCEPTIONS): Do not define just 4039 because EH_RETURN_STACKADJ_RTX is not defined. 4040 * unwind-dw.c (uw_update_context_1): If EH_RETURN_STACKADJ_RTX 4041 is not defined, treat stack pointer like a regular register. 4042 (uw_init_context_1): Set up fake initial stack pointer register. 4043 (uw_install_context_1): Do not compute stack adjustment if 4044 EH_RETURN_STACKADJ_RTX is not defined. 4045 4046 * config/i386/i386.md ("eh_return"): Remove first argument. 4047 * config/mips/mips.md ("eh_return"): Likewise. 4048 * config/rs6000/rs6000.md ("eh_return"): Likewise. 4049 * config/sh/sh.md ("eh_return"): Likewise. 4050 4051 * config/s390/s390.h (EH_RETURN_STACKADJ_RTX): Remove. 4052 40532003-06-08 Richard Henderson <rth@redhat.com> 4054 4055 * stmt.c (expand_asm_operands): Re-word warning. 4056 40572003-06-08 Richard Henderson <rth@redhat.com> 4058 4059 * expr.h (EXPAND_MEMORY): New. 4060 * expr.c (expand_expr): Check it. 4061 * stmt.c (expand_asm_operands): Provide it when the constraint 4062 requires a memory. Warn for memory input constraints without 4063 a memory operand. 4064 40652003-06-07 Richard Henderson <rth@redhat.com> 4066 4067 * c-common.c (cb_register_builtins): Define __EXCEPTIONS for C also. 4068 40692003-06-07 Kelley Cook <kelleycook@wideopenwest.com> 4070 4071 * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Remove quotes in 4072 section names. 4073 * configure: Regenerate. 4074 40752003-06-07 Alan Modra <amodra@bigpond.net.au> 4076 4077 * config/rs6000/linux64.h (CRT_CALL_STATIC_FUNCTION): Define. 4078 40792003-06-06 James E Wilson <wilson@tuliptree.org> 4080 4081 PR inline-asm/10890 4082 * reload1.c (merge_assigned_reloads): Abort only if two reloads have 4083 different in fields. 4084 40852003-06-06 Richard Earnshaw <rearnsha@arm.com> 4086 4087 PR target/11052 4088 * ifcvt.c (noce_process_if_block): Fail if the destination has 4089 side-effects. 4090 40912003-06-06 Dan Kegel <dank@kegel.com> 4092 Kaz Kojima <kkojima@gcc.gnu.org> 4093 4094 PR target/10331 4095 * config/sh/t-linux (STMP_FIXPROTO): Define. 4096 4097 PR target/11096 4098 * config/sh/linux.h (CPLUSPLUS_CPP_SPEC): Redefine so to include 4099 -D_GNU_SOURCE. 4100 41012003-06-05 David Miller <davem@redhat.com> 4102 Richard Henderson <rth@redhat.com> 4103 4104 * optabs.c (HAVE_conditional_trap): Provide default. 4105 (gen_conditional_trap): Likewise. 4106 (init_optabs): Merge init_traps. 4107 (gen_cond_trap): Use prepare_operand. Restructure and avoid ifdef. 4108 41092003-06-05 Eric Botcazou <ebotcazou@libertysurf.fr> 4110 4111 * doc/md.texi (Machine Constraints): Correct the meaning of 4112 constraints related to floating-point registers on SPARC. 4113 41142003-06-05 Eric Botcazou <ebotcazou@libertysurf.fr> 4115 Paolo Bonzini <bonzini@gnu.org> 4116 4117 PR target/10663 4118 * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Redirect 4119 assembler and linker output to /dev/null. 4120 Use a 'sed' construct instead of 'grep -A1'. 4121 * configure: Regenerate. 4122 41232003-06-04 David Edelsohn <edelsohn@gnu.org> 4124 4125 * doc/install.texi (*-ibm-aix*): Native as and ld required 4126 to bootstrap on AIX 5L. 4127 41282003-06-04 Richard Henderson <rth@redhat.com> 4129 4130 * c-common.c (handle_cleanup_attribute): New. 4131 (c_common_attributes): Add it. 4132 * c-decl.c (finish_decl): Honor the cleanup attribute. 4133 * doc/extend.texi (Variable Attributes): Document it. 4134 4135 * unwind-c.c: New file. 4136 * Makefile.in (LIB2ADDEH): Add it. 4137 * config/t-darwin, config/t-linux, config/t-linux-gnulibc1, 4138 config/ia64/t-ia64: Likewise. 4139 41402003-06-04 Eric Botcazou <ebotcazou@libertysurf.fr> 4141 4142 PR optimization/11018 4143 * config/sparc/sparc.c (sparc_v8plus_shift): Use which_alternative 4144 consistently to decide whether the scratch register is really 4145 required. 4146 41472003-06-04 Eric Botcazou <ebotcazou@libertysurf.fr> 4148 4149 PR optimization/10876 4150 * config/sparc/sparc.h (CONST_OK_FOR_LETTER): Add 4151 new 'O' constraint for constant 4096. 4152 (CONST_DOUBLE_OK_FOR_LETTER_P): Likewise. 4153 * config/sparc/sparc.md (adddi3 expander): Canonicalize pattern. 4154 Do not transform into MINUS insn for constant 4096. 4155 (*adddi3_sp64 insn): Canonicalize pattern. Add new alternative 4156 for constant 4096 as third operand. 4157 (addsi3 expander): Remove. 4158 (*addsi3 insn): Rename into 'addsi3'. Canonicalize pattern. Add 4159 new alternative for constant 4096 as third operand. 4160 (subdi3 expander): Do not transform into PLUS insn for constant 4096. 4161 (*subdi3_sp64 insn): Add new alternative for constant 4096 as third 4162 operand. 4163 (subsi3 expander): Remove. 4164 (*subsi3 insn): Rename into 'subsi3'. Add new alternative for 4165 constant 4096 as third operand. 4166 * doc/md.texi (Machine Constraints): Document new 'O' constraint for 4167 the SPARC port. 4168 41692003-06-03 Richard Henderson <rth@redhat.com> 4170 4171 * unwind.inc (_Unwind_Resume_or_Rethrow): Fix return type. 4172 * unwind.h (_Unwind_Resume_or_Rethrow): Update. 4173 (_Unwind_SjLj_Resume_or_Rethrow): Likewise. 4174 41752003-06-03 Douglas B Rupp <rupp@gnat.com> 4176 4177 * Makefile.in (TEXI_GCC_FILES): Remove vms.texi entry. 4178 * doc/gcc.texi: Remove vms.texi section. 4179 * doc/vms.texi: Remove obsolete file. 4180 41812003-06-03 Richard Henderson <rth@redhat.com> 4182 4183 PR target/10673 4184 * config/i386/i386.c (ix86_split_long_move): Fix base register 4185 mode for XFmode splits for TARGET_64BIT. 4186 41872003-06-02 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 4188 4189 * gcc/config.gcc Add support multilib parts for m32rx processor. 4190 41912003-06-01 Eric Botcazou <ebotcazou@libertysurf.fr> 4192 4193 PR target/11044 4194 * config/i386/i386.md (length attribute): Set length to 4 4195 for instructions of type "fcmp". 4196 41972003-06-01 Josef Zlomek <zlomekj@suse.cz> 4198 4199 * rtl.def (CONST_DOUBLE): Update comment. 4200 42012003-06-01 Seth Arnold <sarnold@wirex.com> 4202 Aldy Hernandez <aldyh@redhat.com> 4203 4204 PR10871 4205 * config/rs6000/rs6000.c (rs6000_stack_info): Do not add 4206 vrsave_size twice. 4207 42082003-05-31 Eric Botcazou <ebotcazou@libertysurf.fr> 4209 4210 * doc/install.texi (mips-sgi-irix5): Add missing 4211 HTML <hr> marker. 4212 42132003-05-31 Eric Botcazou <ebotcazou@libertysurf.fr> 4214 4215 * doc/md.texi (Machine Constraints): Document 4216 missing SPARC constraints. 4217 42182003-05-31 Eric Botcazou <ebotcazou@libertysurf.fr> 4219 4220 * doc/md.texi (Automaton pipeline description): Use 4221 "type" instead of "cpu" as the attribute in the examples. 4222 42232003-05-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4224 4225 * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Move 4226 -mdebug/-no-mdebug switches ... 4227 (MDEBUG_ASM_SPEC): ... here. 4228 Use only with gas. 4229 (EXTRA_SPECS): Initialize mdebug_asm_spec. 4230 (CONSTANT_ADDRESS_P): Allow native IRIX 6 O32 assembler. 4231 42322003-05-29 Gabriel Dos Reis <gdr@integrable-solutions.net> 4233 4234 * diagnostic.h (output_verbatim): Remove printf attribute. 4235 (verbatim): Likewise. 4236 * diagnostic.c (output_pointer): New function. 4237 (output_format): Use it. Handle %p format specifier. 4238 42392003-05-27 Denis Chertykov <denisc@overta.ru> 4240 4241 * cselib.c (cselib_invalidate_regno): Abort if hardreg have a 4242 VOIDmode. 4243 * cselib.c (cselib_process_insn): Pass reg_raw_mode for hardreg in 4244 call of cselib_invalidate_regno. 4245 42462003-05-25 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 4247 4248 * doc/contrib.texi (Contributors): Update Kean Johnston. 4249 4250Fri May 23 21:19:31 CEST 2003 Jan Hubicka <jh@suse.cz> 4251 Andreas Jaeger <aj@suse.de> 4252 4253 * i386.h (TARGET_CPU_CPP_BUILTINS): Define __amd64 and __amd64__; 4254 do not use assertion. 4255 4256Fri May 23 20:55:39 CEST 2003 Jan Hubicka <jh@suse.cz> 4257 4258 * i386.md (sse_loadss, sse_loadss_1, sse2_loadsd, sse2_loadsd_1): 4259 Rewrite 4260 42612003-05-23 Eric Botcazou <ebotcazou@libertysurf.fr> 4262 4263 * doc/install.texi: Remove sparc64-*-*. Add sparc64-*-solaris2*. 4264 Document sparcv9-*-solaris2* as a synonym for sparc64-*-solaris2*. 4265 42662003-05-22 Eric Botcazou <ebotcazou@libertysurf.fr> 4267 4268 PR bootstrap/10805 4269 * doc/install.texi (sparc-sun-solaris2.7): Document bootstrap 4270 failure with Sun assembler 5.0 Alpha 03/27/98. 4271 42722003-03-21 Loren James Rittle <ljrittle@acm.org> 4273 4274 * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Add -D__sparcv9 4275 -D__sparc__ to match system compiler convention. 4276 42772003-05-20 Kevin Ryde <user42@zip.com.au> 4278 Wolfgang Bangerth <bangerth@dealii.org> 4279 4280 PR c/10355 4281 * doc/extend.texi: Put a warning into the documentation 4282 of attribute regparm. 4283 42842003-05-20 Ulrich Weigand <uweigand@de.ibm.com> 4285 4286 * config/s390/s390.md ("*iordi3_oi"): Do not mark commutative. 4287 ("*iorsi3_oi"): Likewise. 4288 42892003-05-19 John David Anglin <dave.anglin@nrc-gnrc.gc.ca> 4290 4291 * pa/milli64.S ($$mulI): Fix typo. 4292 42932003-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> 4294 4295 * hashtable.h (struct ht_identifier): Add new field "hash_value". 4296 * hashtable.c (ht_lookup): Use it. 4297 (ht_expand): Likewise. Avoid doing the same computation twice. 4298 * tree.h (IDENTIFIER_HASH_VALUE): New macro. 4299 43002003-05-19 Nick Clifton <nickc@redhat.com> 4301 4302 * config/arm/arm.c (use_return_insn): Do not use a single return 4303 instruction for interrupt handlers which have to create a stack 4304 frame. 4305 (arm_expand_prologue): Do not pre-bias the return address of 4306 interrupt handlers which create a stack frame. 4307 43082003-05-19 Eric Botcazou <ebotcazou@libertysurf.fr> 4309 4310 Backport from mainline: 4311 4312 2003-05-10 Alexander Aganichev <aaganichev@yandex.ru> 4313 4314 * config/i386/i386.h (MODES_TIEABLE_P): Fix typo. 4315 43162003-05-16 Wolfgang Bangerth <bangerth@dealii.org> 4317 4318 * doc/bugreport.texi: Remove most of the preface of the 4319 bugs section. 4320 43212003-05-16 Nick Clifton <nickc@redhat.com> 4322 4323 * config/mcore/mcore.md (jump): Use emit_jump_insn to generate the 4324 jump insn. 4325 43262003-05-15 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 4327 4328 * doc/invoke.texi (Warning Options): Mark -Wmissing-declarations 4329 as a C only option. 4330 43312003-05-15 Wolfgang Bangerth <bangerth@dealii.org> 4332 4333 * doc/bugreport.texi: Remove most of the bug reporting 4334 instructions and merge them into bugs.html. 4335 43362003-05-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 4337 4338 * sparc.c (print_operand): Fix uninitialized warning. 4339 43402003-05-14 Mark Mitchell <mark@codesourcery.com> 4341 4342 * version.c: Reset to prerelease format. 4343 * doc/include/gcc-common.texi: Update version number. 4344 43452003-05-13 Release Manager 4346 4347 * GCC 3.3 Released. 4348 43492003-05-12 Mark Mitchell <mark@codesourcery.com> 4350 4351 PR other/10745 4352 * configure.in: Correct detection of GNU ld version number. 4353 * configure: Regenerated. 4354 43552003-05-08 J"orn Rennecke <joern.rennecke@superh.com> 4356 4357 * sh.c (gen_block_redirect, split_branches): Use 4358 CODE_FOR_jump_compact instead of CODE_FOR_jump 4359 43602003-05-06 Eric Christopher <echristo@redhat.com> 4361 4362 * config/mips/linux.h: Fix typo. 4363 43642003-05-06 Ulrich Weigand <uweigand@de.ibm.com> 4365 4366 PR other/10650 4367 * unwind-dw2.c (uw_update_context_1): Don't set sp as cfa on s390. 4368 (uw_init_context_1): Set initial sp to outer cfa on s390. 4369 43702003-05-06 Mark Mitchell <mark@codesourcery.com> 4371 4372 PR other/10658 4373 * gcc.c (process_command): Update copyright date. 4374 43752003-05-06 Bruce Korb <bkorb@gnu.org> 4376 4377 * inclhack.def: fix up whitespace differences from mainline. 4378 mark fix tests that fail on BSD systems (like mainline). 4379 Fixup the solaris_mutex_init test to cope with Sol. 2.6 (like mainline). 4380 Removed unused SONY commentary (its obsolete anyway). 4381 (svr4_mach_defines): remove i860 machine from comment (like mainline). 4382 * gcc/fixinc/tests/base/pthread.h: solaris_mutex_init fix tests 4383 * gcc/fixinc/tests/base/testing.h: remove ^M chars from some mistake 4384 * gcc/fixinc/tests/base/Xm/Traversal.h: accommodate BSD's sed 4385 * gcc/fixinc/tests/base/sys/stat.h: accommodate BSD's sed 4386 * gcc/fixinc/fixincl.x: regenerated 4387 43882003-05-06 Phil Edwards <pme@gcc.gnu.org> 4389 4390 * doc/install.texi (mips-*-*): Add note about libstdc++. 4391 43922003-05-05 Mark Mitchell <mark@codesourcery.com> 4393 Kean Johnston <jkj@sco.com> 4394 4395 * toplev.c (check_global_declarations): Do not warn about unused 4396 static consts. 4397 43982003-05-05 Richard Henderson <rth@redhat.com> 4399 4400 * builtins.c (expand_builtin) <BUILT_IN_DWARF_FP_REGNUM>: Remove. 4401 <BUILT_IN_DWARF_SP_COLUMN>: New. 4402 * builtins.def (BUILT_IN_DWARF_FP_REGNUM): Remove. 4403 (BUILT_IN_DWARF_SP_COLUMN): New. 4404 * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Remove. 4405 (expand_builtin_dwarf_sp_column): New. 4406 * except.h: Update to match. 4407 * unwind-dw2.c (execute_stack_op): Correct stack push typo. 4408 (execute_cfa_program): Record location expression address 4409 before extracting length. 4410 (uw_update_context_1): Install old CFA into stack pointer column. 4411 (uw_init_context_1): Set cfa_reg to stack pointer column. 4412 44132003-05-05 David O'Brien <obrien@FreeBSD.org> 4414 4415 * config/rs6000/sysv4.h (CPP_OS_FREEBSD_SPEC): Add __ELF__ to mirror 4416 other FreeBSD ports. 4417 (LINK_OS_FREEBSD_SPEC): Mirror conventions on other FreeBSD ports. 4418 44192003-05-05 Jason Merrill <jason@redhat.com> 4420 4421 * stor-layout.c (update_alignment_for_field): Set DECL_ALIGN for 4422 the field. 4423 44242003-05-02 Zack Weinberg <zack@codesourcery.com> 4425 4426 PR c/10604 4427 * c-opts.c (c_common_decode_option <OPT_Wall>): Set 4428 warn_sign_compare for C++ only. 4429 * doc/invoke.texi: Clarify documentation of -Wsign-compare. 4430 44312003-05-03 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de> 4432 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 4433 4434 * doc/contrib.texi (Contributors): Add Zdenek Dvorak, Aldy 4435 Hernandez, and Kazu Hirata. 4436 44372003-05-02 Richard Henderson <rth@redhat.com> 4438 4439 PR c++/10570 4440 * except.c: Revert 04-01 and 04-02 forced-unwind changes. 4441 * flags.h, toplev.c, doc/invoke.texi: Likewise. 4442 4443 * unwind-dw2.c (_Unwind_GetCFA): Fix ptr->int conversion warning. 4444 * unwind.inc (_Unwind_DeleteException): Check for null 4445 exception_cleanup. 4446 4447 * unwind-sjlj.c (_Unwind_SjLj_Resume_or_Rethrow): New. 4448 * unwind.inc (_Unwind_Resume_or_Rethrow): New. 4449 * unwind.h: Declare them. 4450 * libgcc-std.ver (GCC_3.3): Export them. 4451 44522003-05-02 Steven Bosscher <steven@gcc.gnu.org> 4453 4454 * tree-inline.c (find_alloca_call): 4455 Use walk_tree_without_duplicates, instead of walk_tree. 4456 (find_builtin_longjmp_call): Ditto. 4457 * c-objc-common.c (c_cannot_inline_fn): Ditto. 4458 44592003-05-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 4460 4461 * doc/contrib.texi (Contributors): Add Daniel Berlin. 4462 44632003-05-01 Rodney Brown <rbrown64@csc.com.au> 4464 4465 * rtl.h (subreg_offset_representable_p): Prototype. 4466 44672003-05-01 Roger Sayle <roger@eyesopen.com> 4468 4469 PR fortran/9974 4470 * gcse.c (reg_killed_on_edge): New function to test whether the 4471 given reg is overwritten by any instruction queued on an edge. 4472 (bypass_block): Ignore substitutions killed on incoming edges. 4473 Don't bypass outgoing edges that have queued instructions. 4474 44752003-04-30 Andreas Schwab <schwab@suse.de> 4476 4477 * doc/extend.texi (Other Builtins): Enclose multiple word data 4478 type in braces for @deftypefn. 4479 44802003-04-29 Jason Merrill <jason@redhat.com> 4481 4482 PR middle-end/10336 4483 * jump.c (never_reached_warning): Really stop looking if we reach 4484 the beginning of the function. 4485 4486Tue Apr 29 21:07:00 CEST 2003 Jan Hubicka <jh@suse.cz> 4487 4488 * cse.c (count_reg_usage): Revert my previous patch. 4489 44902003-04-29 Alexander Kabaev <kan@FreeBSD.ORG> 4491 4492 bootstrap/10452 4493 * gengtype-yacc.y: Improve portability. 4494 44952003-04-29 Zack Weinberg <zack@codesourcery.com> 4496 4497 * config.gcc: Install obsolete target list for GCC 3.3. 4498 * doc/install.texi: Mention in specific-target instructions 4499 that certain configurations are deprecated. 4500 45012003-04-29 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> 4502 4503 * c-pragma.c (maybe_apply_renaming_pragma): Fix typo. 4504 * gcc.c (display_help): Likewise. 4505 * toplev.c (f_options): Likewise. 4506 * params.def (PARAM_MAX_INLINE_SCOPE): Likewise. 4507 * config/c4x/c4x.h (TARGET_SWITCHES): Likewise. 4508 * config/mcore/mcore.h (TARGET_SWITCHES): Likewise. 4509 * config/s390/s390.h (TARGET_SWITCHES): Likewise. 4510 * config/v850/v850.h (TARGET_SWITCHES): Likewise. 4511 45122003-04-29 Danny Smith <dannysmith@users.sourceforge.net> 4513 4514 * config/i386/mingw32.h (LIBGCC_SPEC): Add libmingwex.a. 4515 Update copyright. 4516 * config/i386/cygwin.h (LIBGCC_SPEC): Add libmingwex.a, for 4517 -mno-cygwin case. 4518 45192003-04-29 J"orn Rennecke <joern.rennecke@superh.com> 4520 4521 * varasm.c (default_assemble_visibility): Use assemble_name. 4522 45232003-04-29 David O'Brien <obrien@FreeBSD.org> 4524 4525 * config/i386/freebsd64.h (LINK_SPEC): Mirror FreeBSD linker. 4526 * config/rs6000/freebsd.h (LINK_SHLIB_SPEC): New macro. 4527 (SIZE_TYPE): New macro. 4528 * config/i386/freebsd-aout.h (NO_PROFILE_COUNTERS): New macro. 4529 (SET_ASM_OP): New macro. 4530 (HANDLE_SYSV_PRAGMA): New macro. 4531 (ASM_WEAKEN_LABEL): New macro. 4532 45332003-04-28 Mark Mitchell <mark@codesourcery.com> 4534 4535 PR c++/10180 4536 * tree-inline.c (expand_call_inline): Call push_srcloc when 4537 encountering EXPR_WITH_FILE_LOCATION. Honor warn_inline. 4538 45392003-04-28 Mike Stump <mrs@apple.com> 4540 4541 * gdbinit.in: Update to reflect new identifier structure. 4542 45432003-04-28 Richard Henderson <rth@redhat.com> 4544 4545 * config/sparc/sparc.c (print_operand): Add 's' to sign-extend. 4546 * config/sparc/sparc.md (const_mulsidi3_v8plus): Fix mode of 4547 integral constant mult operand. 4548 (const_mulsidi3_sp32, const_mulsidi3_sp64): Likewise. 4549 (const_smulsi3_highpart_v8plus): Likewise. 4550 (const_smulsi3_highpart): Likewise. 4551 (const_umulsidi3_sp32): Likewise; sign-extend it in the output. 4552 (const_umulsidi3_sp64, const_umulsidi3_v8plus): Likewise. 4553 (const_umulsi3_highpart_v8plus): Likewise. 4554 (const_umulsi3_highpart): Likewise. 4555 45562003-04-28 David O'Brien <obrien@FreeBSD.org> 4557 4558 * config/i386/i386.h (builtin_define): Add __amd64 and __amd64__. 4559 4560Mon Apr 28 09:54:56 CEST 2003 Jan Hubicka <jh@suse.cz> 4561 4562 PR c/10308 4563 * reload.c (find_reloads_address_1): Reload plus at the place of 4564 index register. 4565 45662003-04-26 Richard Henderson <rth@redhat.com> 4567 4568 * config/ia64/ia64.c (ia64_compute_frame_size): Allow inline asm 4569 to clobber ar.pfs and ar.unat. 4570 (ia64_expand_prologue): Force alloc instruction if ar.pfs saved; 4571 fix test for spilling ar.pfs to the stack. 4572 45732003-04-26 Stephane Carrez <stcarrez@nerim.fr> 4574 4575 * doc/install.texi (Binaries): Mention binaries for HC11/HC12. 4576 45772003-04-26 Stephane Carrez <stcarrez@nerim.fr> 4578 4579 * doc/extend.texi (Function Attributes): Document "near" and "far" 4580 for 68HC11 and 68HC12. 4581 45822003-04-25 Bob Wilson <bob.wilson@acm.org> 4583 4584 * config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Back out previous 4585 addition of __PIC__ and __pic__ macros. 4586 * config/xtensa/xtensa.h: Clean up indentation. 4587 45882003-04-25 Bob Wilson <bob.wilson@acm.org> 4589 4590 * config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Remove definition of 4591 _GNU_SOURCE. Add definitions of __PIC__ and __pic__. 4592 (SUBTARGET_CPP_SPEC): Define. 4593 (LIB_SPEC): Delete. 4594 * config/xtensa/xtensa-protos.h (xtensa_declare_object): Delete. 4595 * config/xtensa/xtensa.c (xtensa_declare_object): Delete. 4596 * config/xtensa/xtensa.h (CPP_SPEC, SUBTARGET_CPP_SPEC, EXTRA_SPECS): 4597 Define. 4598 (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete. 4599 (ASM_OUTPUT_ALIGNED_BSS, BSS_SECTION_ASM_OP): Define. 4600 46012003-04-25 Richard Henderson <rth@redhat.com> 4602 4603 PR opt/10315 4604 * config/rs6000/rs6000.c (rs6000_emit_move): Only elide proper 4605 checks during reload; use validize_mem instead of adjust_address. 4606 4607Fri Apr 25 15:43:23 CEST 2003 Jan Hubicka <jh@suse.cz> 4608 4609 * emit-rtl.c (subreg_hard_regno): Check that register is 4610 representable. 4611 * reload.c (reload_inner_reg_of_subreg): When register is not 4612 representable, reload the whole thing. 4613 (find_reloads): Likewsie. 4614 * rtlanal.c (subreg_representable_p): New function. 4615 4616Sun Apr 20 18:23:18 CEST 2003 Richard Henderson <rth@redhat.com> 4617 4618 (backported to 3.3 by Jan Hubicka) 4619 4620 * config/ia64/ia64.md (UNSPECV_SETJMP_RECEIVER): New. 4621 (builtin_setjmp_receiver): Delay call to ia64_reload_gp 4622 until after reload. 4623 4624 * emit-rtl.c (try_split): Handle 1-1 splits of call insns properly. 4625 4626 * config/ia64/ia64.c (TARGET_FUNCTION_OK_FOR_SIBCALL): New. 4627 (ia64_gp_save_reg): Remove. 4628 (struct ia64_frame_info): Move to the beginning of the file; 4629 add reg_save_gp. 4630 (ia64_expand_call): Rearrange for new call patterns. 4631 (ia64_reload_gp): New. 4632 (ia64_split_call): New. 4633 (ia64_compute_frame_size): Allocate reg_save_gp. 4634 (ia64_expand_prologue): Save reg_save_gp. 4635 (ia64_expand_epilogue): Don't restore gp. 4636 (ia64_hard_regno_rename_ok): Remove R4 hack. 4637 (ia64_function_ok_for_sibcall): New. 4638 (ia64_output_mi_thunk): Set reload_completed, no_new_pseudos; 4639 call try_split on sibcall pattern. 4640 * config/ia64/ia64-protos.h: Update. 4641 * config/ia64/ia64.md (call_nogp, call_value_nogp, sibcall_nogp): 4642 Rename from nopic versions. Confiscate 2nd argument to call as 4643 a marker. 4644 (call_pic, call_value_pic, sibcall_pic): Remove. 4645 (call_gp, call_value_gp, sibcall_gp): New. 4646 (builtin_setjmp_setup): Remove. 4647 (builtin_setjmp_receiver): Call ia64_reload_gp. 4648 46492003-04-24 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4650 4651 PR opt/8705 4652 * gcse.c (try_replace_reg): On a successful substitution of a constant 4653 into a single set, try to simplify the source of the set. 4654 * loop.c (scan_loop): Don't try to optimize a MODE_CC set with a 4655 constant source. 4656 46572003-04-24 Alexander Kabaev <kan@FreeBSD.ORG> 4658 4659 bootstrap/10453 4660 * config/sparc/sparc.md (umulsidi3, mulsidi3): Avoid using 4661 const_umulsidi3_sp32 and const_mulsidi3_sp32 on 64bit targets 4662 where they might be not present. Use their _sp64 equivalent 4663 instead. 4664 46652003-04-23 Richard Henderson <rth@redhat.com> 4666 4667 PR opt/8300 4668 * toplev.c (rest_of_compilation): Delay no_new_pseudos until 4669 after initialize_uninitialized_subregs; update reg info assuming 4670 new pseudos were created. 4671 46722003-04-23 Olivier Hainque <hainque@act-europe.fr> 4673 4674 * config/pa/pa.md (extv, extzv): FAIL if the bitfield length is zero. 4675 46762003-04-23 James A Morrison <ja2morri@uwaterloo.ca> 4677 4678 * invoke.texi: Eliminate extra white-space caused by @gccoptlist{ 4679 on its own line. 4680 Ensure there are two spaces between each pair of options and add 4681 @gol where appropriate. 4682 46832003-04-23 Ulrich Weigand <uweigand@de.ibm.com> 4684 4685 * config/s390/s390.c (s390_expand_cmpstr): Disable CLC loop. 4686 46872003-04-22 Devang Patel <dpatel@apple.com> 4688 4689 * cpptrad.c (_cpp_replacement_text_len): Add check for macro parameter count. 4690 (_cpp_copy_replacement_text): Same. 4691 46922003-04-22 Richard Henderson <rth@redhat.com> 4693 4694 PR 8866 4695 * rtl.h (MEM_NOTRAP_P): New. 4696 (MEM_COPY_ATTRIBUTES): Copy it. 4697 * rtlanal.c (may_trap_p): Check it. 4698 * expr.c (do_tablejump): Set it. 4699 4700 * cfgrtl.c (try_redirect_by_replacing_jump): Revert last three changes. 4701 47022003-04-22 David Turner <novalis@gnu.org> 4703 4704 * gbl-ctors.h: Add special license exception. 4705 * libgcc2.h: Likewise. 4706 * tsystem.h: Likewise. 4707 * gcov-io.h: Likewise. 4708 47092003-04-21 Mark Mitchell <mark@codesourcery.com> 4710 4711 * Makefile.in (calls.o): Depend on except.h. 4712 * calls.c: Include except.h. 4713 (emit_call_1): Call note_eh_region_may_contain_throw if 4714 appropriate. 4715 * except.c (eh_region): Add may_contain_throw. 4716 (expand_eh_region_end_cleanup): Do not include handler code when 4717 it cannot be reached. 4718 (note_eh_region_may_contain_throw): New function. 4719 * except.h (note_eh_region_may_contain_throw): New function. 4720 47212003-04-21 Mark Mitchell <mark@codesourcery.com> 4722 4723 * config/i386/winnt.c (i386_pe_mark_dllimport): Revert previous 4724 changes. 4725 47262003-04-21 Mark Mitchell <mark@codesourcery.com> 4727 4728 * config/i386/winnt.c (i386_pe_}ark_dllimport): Make the new RTL 4729 have the same form as the old RTL. 4730 47312003-04-18 Mark Mitchell <mark@codesourcery.com> 4732 4733 * cfgrtl.c (try_redirect_by_replacing_jump): Create a basic block 4734 for orphaned jump tables. 4735 47362003-04-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4737 4738 PR/8705 4739 * pa.md (movccfp): New expander. 4740 (setccfp0, setccfp1): Rename to movccfp0 and movccfp1, respectively. 4741 Reverse fcmp conditions. 4742 47432003-04-20 Marek Michalkiewicz <marekm@amelek.gda.pl> 4744 4745 * config/avr/avr.md (*cmpqi_sign_extend): Handle negative values 4746 of operand 1 correctly. 4747 47482003-04-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4749 4750 * cfgrtl.c (try_redirect_by_replacing_jump): Remove unused variables. 4751 * flow.c (life_analysis): Fix warning. 4752 47532003-04-18 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 4754 4755 * doc/contrib.texi (Contributors): Prefer "bug fix" over "bugfix". 4756 Add Segher Boessenkool. 4757 47582003-04-18 Alexander Sotirov <sluncho@mirizma.org> 4759 4760 PR c/9177 4761 * c-decl.c (c_expand_body): Don't garbage collect the function 4762 body if we are going to dump it later. 4763 47642003-04-18 Eric Botcazou <ebotcazou@libertysurf.fr> 4765 4766 PR optimization/7675 4767 * c-typeck.c (build_external_ref): Set the DECL_NONLOCAL flag 4768 on VAR_DECL, PARM_DECL and FUNCTION_DECL from within 4769 nested functions if they refer to declarations from parent functions. 4770 * stmt.c (expand_decl): Don't put automatic variables in registers 4771 if the DECL_NONLOCAL flag is set. 4772 47732003-04-17 Janis Johnson <janis187@us.ibm.com> 4774 4775 * doc/sourcebuild.texi (Test Suites): Document support for testing 4776 binary compatibility (moved from testsuite/README.compat). 4777 47782003-04-17 Simon Law <sfllaw@engmail.uwaterloo.ca> 4779 4780 * doc/include/gpl.texi: Fix double-spacing after "MA" to match 4781 the one provided by the FSF. 4782 47832003-04-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 4784 4785 * doc/install.texi (Binaries): Update URL and list of platforms 4786 provided by ftp.thewrittenword.com. 4787 47882003-04-17 Eric Botcazou <ebotcazou@libertysurf.fr> 4789 4790 * doc/invoke.texi (inline-limit): Fix pasto. 4791 47922003-04-16 Mark Mitchell <mark@codesourcery.com> 4793 4794 PR middle-end/8866 4795 * cfgtrl.c (try_redirect_by_replacing_jump): Do not delete 4796 jumptables. 4797 47982003-04-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4799 4800 PR/10271 4801 * pa-protos.h (function_arg): Remove last argument. 4802 * pa.c (function_arg): Likewise. Use CUMULATIVE_ARGS struct instead. 4803 * pa.h (struct hppa_args): Add member incoming. 4804 (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Initialize 4805 member incoming. 4806 (FUNCTION_ARG): Revise call to function_arg. 4807 (FUNCTION_INCOMING_ARG): Delete. 4808 48092003-04-15 J"orn Rennecke <joern.rennecke@superh.com> 4810 4811 PR target/9594: 4812 * sh.c (barrier_align): Also recognize stuff_delay_slot as 4813 an indicator that a barrier was created by branch splitting. 4814 4815 merge from mainline: 4816 4817 2003-03-05 J"orn Rennecke <joern.rennecke@superh.com> 4818 4819 * sh.h (OVERRIDE_OPTIONS): For TARGET_SHMEDIA, the minimum value 4820 for align_jumps is 4. 4821 4822 (SECONDARY_INPUT_RELOAD_CLASS): If reloading a PLUS into FPUL, 4823 use GENERAL_REGS. 4824 4825 2003-03-03 J"orn Rennecke <joern.rennecke@superh.com> 4826 4827 * sh.h (OVERRIDE_OPTIONS): Set default values for align_loops 4828 and align_jumps if not set. 4829 Force align_jumps to be at least 2. 4830 When relaxing, force align_functions to be at least the maximum of 4831 align_loops, align_jumps and 4. 4832 * sh.c (find_barrier, barrier_align): Honour align_jumps_log. 4833 (sh_loop_align): Honour align_loops_log. 4834 4835 * sh.md (length attribute): Use prev_nonnote_insn instead of PREV_INSN 4836 to check for indirect_jump_scratch. 4837 (indirect_jump_scratch): Add second set. 4838 * sh.c (output_far_jump): Use prev_nonnote_insn instead of PREV_INSN 4839 when looking for indirect_jump_scratch. 4840 Extract scratch register taking new structure of indirect_jump_scratch 4841 into account. 4842 (gen_block_redirect): Set INSN_SCOPE for indirect_jump_scratch. 4843 48442003-04-15 James A. Morrison <ja2morri@uwaterloo.ca> 4845 4846 * invoke.texi (Spec Files): Wrap if-exists-else example. 4847 (MCore): Remove duplicate @itemx entries and @opindex entries. 4848 48492003-04-15 Ulrich Weigand <uweigand@de.ibm.com> 4850 4851 * unwind.inc (_Unwind_Backtrace): New function. 4852 * unwind.h (_Unwind_Backtrace): Declare it. 4853 * libgcc-std.ver (_Unwind_Backtrace): Export it. 4854 48552003-04-15 Jason Merrill <jason@redhat.com> 4856 4857 PR middle-end/10336, c++/10401 4858 * jump.c (never_reached_warning): Also stop looking if we reach the 4859 beginning of the function. 4860 48612003-04-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 4862 4863 PR target/10338 4864 PR bootstrap/10198 4865 PR bootstrap/10140 4866 * fixinc/gnu-regex.c (regerror): Use mempcpy not __mempcpy. 4867 48682003-04-15 Jakub Jelinek <jakub@redhat.com> 4869 4870 * config/rs6000/rs6000.h (EPILOGUE_USES): Use register 2, 4871 instead of TOC_REGISTER in epilogue in 4872 current_function_calls_eh_return functions. 4873 48742003-04-14 Hans-Peter Nilsson <hp@axis.com> 4875 4876 PR target/10377 4877 * config/cris/cris.md ("*mov_sideqi", "*mov_sidehi") 4878 ("*mov_sidesi", "*mov_sideqi_mem", "*mov_sidehi_mem") 4879 ("*mov_sidesi_mem", "*clear_sidesi", "*clear_sidehi") 4880 ("*clear_sideqi", "*ext_sideqihi", "*ext_sideqisi") 4881 ("*ext_sidehisi", "*op_sideqi", "*op_sidehi", "*op_sidesi") 4882 ("*op_swap_sideqi", "*op_swap_sidehi", "*op_swap_sidesi") 4883 ("*extopqihi_side", "*extopqisi_side", "*extophisi_side") 4884 ("*extopqihi_swap_side", "*extopqisi_swap_side") 4885 ("*extophisi_swap_side", 8th, 9th, 10th, 11th, 14th peepholes): 4886 When next to constraint R, replace constraint i with n. 4887 4888Mon Apr 14 16:14:37 CEST 2003 Jan Hubicka <jh@suse.cz> 4889 4890 PR opt/10024 4891 * cfgrtl.c (force_nonfallthru_and_redirect): Use unchecked_make_edge. 4892 48932003-04-14 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> 4894 4895 * doc/contrib.texi (Contributors): Correct my entry. 4896 48972003-04-12 Stephane Carrez <stcarrez@nerim.fr> 4898 4899 * config/m68hc11/m68hc11-protos.h 4900 (m68hc11_eq_compare_operator): Declare 4901 * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register new predicate. 4902 * config/m68hc11/m68hc11.c (m68hc11_eq_compare_operator): New predicate 4903 (d_register_operand): Check the operand mode. 4904 (hard_addr_reg_operand): Likewise. 4905 49062003-04-12 Stephane Carrez <stcarrez@nerim.fr> 4907 4908 * config/m68hc11/m68hc11.md ("decrement_and_branch_until_zero"): New 4909 pattern for dbcc/ibcc generation for 68HC12. 4910 ("doloop_end"): New pattern. 4911 ("m68hc12_dbcc_dec_hi"): New pattern for dbeq/dbne. 4912 ("m68hc12_dbcc_inc_hi"): New pattern for ibeq/ibne. 4913 ("m68hc12_dbcc_dec_qi"): New pattern. 4914 ("m68hc12_dbcc_inc_qi"): New pattern. 4915 (split): Add split for the above when we can't use dbcc/ibcc due to 4916 reloading. 4917 (peephole2): Add peephole2 to generate the above when possible. 4918 49192003-04-12 Stephane Carrez <stcarrez@nerim.fr> 4920 4921 * config/m68hc11/m68hc11.md ("bitcmpqi" split): No need to test the 4922 mode of operand 0. 4923 (peephole2 optimize const load): Likewise for operand 2. 4924 ("*rotlhi3_with_carry"): Change pattern to a const 1 rotate which 4925 clobbers CC_REGNUM. 4926 ("*rotrhi3_with_carry"): Likewise. 4927 (ashift:DI 1 split): Update pattern to create the above rotate. 4928 (lshiftrt:DI 1 split): Likewise. 4929 49302003-04-12 Stephane Carrez <stcarrez@nerim.fr> 4931 4932 * config/m68hc11/m68hc11.md (SOFT_Z_REGNUM): New constant. 4933 ("tstqi_z_used" split): Use it. 4934 ("cmphi_z_used"): Likewise. 4935 ("bitcmpqi_z_used"): Likewise; also use SP_REGNUM constant. 4936 ("cmpqi_z_used"): Likewise. 4937 49382003-04-12 Mark Mitchell <mark@codesourcery.com> 4939 4940 PR c++/7910 4941 * config/i386/winnt.c (i386_pe_mark_dllimport): Fix thinko. 4942 49432003-04-12 Stephane Carrez <stcarrez@nerim.fr> 4944 4945 * config/m68hc11/m68hc11.h (TARGET_SWITCHES): Fix -mnominmax option; 4946 recognize -mnorelax. 4947 (reg_class): Add Z_OR_S_REGS to represent soft registers with Z 4948 (REG_CLASS_NAMES): Add its name. 4949 (REG_CLASS_CONTENTS): Define its content. 4950 49512003-04-12 Stephane Carrez <stcarrez@nerim.fr> 4952 4953 * config/m68hc11/larith.asm (memcpy): Use ARG macro to access stack 4954 parameters so that offsets are valid for far definition. 4955 (__mulsi3): Likewise and use ret to return. 4956 (___adddi3, ___subdi3, ___notdi2, ): Don't use it to save the result. 4957 49582003-04-11 Geoffrey Keating <geoffk@apple.com> 4959 4960 * doc/extend.texi (Empty Structures): New. 4961 49622003-04-11 Richard Henderson <rth@redhat.com> 4963 4964 PR c++/10202 4965 * expr.c (expand_expr): Use COMPLETE_OR_UNBOUND_ARRAY_TYPE_P 4966 not COMPLETE_TYPE_P for re-invoking layout_decl. 4967 49682003-04-11 Simon Law <sfllaw@engmail.uwaterloo.ca> 4969 4970 * doc/bugreport.texi: Fix paragraph breaking between sections 4971 in preparation for TeXinfo's paragraph indentation fixes. 4972 * doc/extend.texi: Ditto. 4973 * doc/invoke.texi: Ditto. 4974 * doc/objc.texi: Ditto. 4975 * doc/gcov.texi: Wrap 'gcov' in @command{}. 4976 * doc/invoke.texi (Darwin Options): Add a preamble. 4977 49782003-04-11 Richard Henderson <rth@redhat.com> 4979 4980 PR c/10201 4981 * expr.c (expand_expr): Move DECL_RTL frobbing ... 4982 * stor-layout.c (layout_decl): ... here. 4983 49842003-04-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 4985 4986 * doc/install.texi (hppa): Update links for HP-UX patches. Revise 4987 notes on linker selection and configuration for 64-bit HP-UX port. 4988 * doc/invoke.texi (hppa): Remove hppa text from description for 4989 -ffunction-sections and -fdata-sections. Document -static, -nolibdld 4990 and -threads options. 4991 4992 * pa-hpux10.h (LIB_SPEC): Add link options to resolve dependency of 4993 libc.a on libdld.sl when -static is specified and -nolibdld is not 4994 specified. 4995 * pa64-hpux.h (LIB_SPEC): Likewise. 4996 * pa-hpux11.h (LIB_SPEC): Likewise. 4997 (LINK_SPEC): Add __gcc_plt_call as an undefined symbol when -shared 4998 is not specified. 4999 50002003-04-08 Jonathan Wakely <redi@gcc.gnu.org> 5001 5002 * doc/extend.texi (Template Instantiation): Refer to ISO standard, 5003 not Working Paper. 5004 * doc/invoke.texi (C++ Dialect Options): Same. 5005 5006Fri Apr 11 00:12:14 CEST 2003 Jan Hubicka <jh@suse.cz> 5007 5008 PR inline-asm/8803 5009 * function.c (instantate_virtual_regs): Verify that all ASM statements 5010 match after the virutal regs instantiation. 5011 50122003-04-10 Steve Ellcey <sje@cup.hp.com> 5013 5014 * ia64-protos.h (addp4_optimize_ok): New. 5015 * ia64.c (addp4_optimize_ok): New. 5016 * ia64.md (*ptr_extend_plus_1): Use addp4_optimize_ok. 5017 (*ptr_extend_plus_2): Ditto. 5018 50192003-04-10 Steve Ellcey <sje@cup.hp.com> 5020 5021 * expr.c (expand_assignment): Extend offset_rtx with convert_to_mode 5022 not with convert_memory_address. 5023 (store_constructor): Ditto, and same for copy_size_rtx. 5024 (expand_expr): Ditto. 5025 50262003-04-10 Ulrich Weigand <uweigand@de.ibm.com> 5027 5028 * config/s390/s390.c (larl_operand): Do not allow symbols 5029 marked with '@'. 5030 (s390_encode_section_info): Mark symbols with forced 1-byte 5031 alignment with '@'. 5032 (s390_strip_name_encoding): Strip '@'. 5033 (legitimize_pic_address): Handle symbols that are not valid 5034 LARL operands in 64-bit mode. 5035 50362003-04-10 Andrew Haley <aph@redhat.com> 5037 5038 * tree-inline.c (inlinable_function_p): Disable inlining for 5039 synchronized methods. 5040 50412003-04-09 Alexandre Oliva <aoliva@redhat.com> 5042 5043 * config/fp-bit.c (unpack_d): Handle pair of doubles with 5044 different signs correctly. 5045 50462003-04-08 Richard Henderson <rth@redhat.com> 5047 5048 PR target/9886 5049 * config/ia64/ia64.md (cmovdi_internal): Use 'n' not 'i' constraints. 5050 (cmovsi_internal): Likewise. 5051 50522003-04-07 Matt Kraai <kraai@alumni.cmu.edu> 5053 5054 * doc/install.texi: Use @command and @samp for single- and 5055 multi-word commands respectively. 5056 * doc/makefile.texi: Likewise. 5057 * doc/sourcebuild.texi: Likewise. 5058 50592003-04-07 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de> 5060 Richard Henderson <rth@redhat.com> 5061 5062 PR c/9516 5063 * expr.c (safe_from_p): Rearrange to avoid deep recursion in 5064 favour of looping and tail recursion for TREE_LIST and binops. 5065 50662003-04-07 Glen Nakamura <glen@imodulo.com> 5067 5068 PR opt/8634 5069 * explow.c (maybe_set_unchanging): Don't flag non-static const 5070 aggregate type initializers with RTX_UNCHANGING_P. 5071 50722003-04-07 Richard Henderson <rth@redhat.com> 5073 5074 PR opt/8634 5075 * function.c (purge_addressof_1): Don't try arithmetics for 5076 unchanging memories. 5077 50782003-04-07 Janis Johnson <janis187@us.ibm.com> 5079 5080 * doc/sourcebuild.texi (Test Suites): Document testing support for 5081 gcov and profile-directed optimizations; describe gcc.misc-tests. 5082 50832003-04-07 Eric Botcazou <ebotcazou@libertysurf.fr> 5084 5085 * doc/rtl.texi (Comparison operations): Update to 5086 record the allowed comparison modes. 5087 5088Mon Apr 7 22:13:38 CEST 2003 Jan Hubicka <jh@suse.cz> 5089 5090 PR target/10077 5091 * i386.md (movsi_1): Fix SSEMOV alternative. 5092 5093Mon Apr 7 15:56:30 CEST 2003 Jan Hubicka <jh@suse.cz> 5094 5095 PR opt/10024 5096 Revert Zack's change 5097 * cfglayout.c (cfg_layout_redirect_edge): 5098 Redirect any branch edges unified with the fallthru one. 5099 * cfgrtl.c (force_nonfallthru_and_redirect): Do not special 5100 case fallthru edges when called via cfglayout.c 5101 51022003-04-07 James A Morrison <ja2morri@student.math.uwaterloo.ca> 5103 5104 * doc/extend.texi (Darwin Pragmas): Fix spelling of Mac OS. 5105 51062003-04-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 5107 5108 * c-decl.c (set_save_expr_context): Prototype. 5109 51102003-04-05 David Edelsohn <edelsohn@gnu.org> 5111 5112 * config/rs6000/rs6000.h (RTX_COSTS): Halve Power multiply costs. 5113 * config/rs6000/rs6000.md: Correct Power4 multiply latency. 5114 51152003-04-05 Zack Weinberg <zack@codesourcery.com> 5116 5117 PR optimization/10024 5118 * cfgrtl.c (force_nonfallthru_and_redirect): If e is the edge 5119 we want, use it. 5120 51212003-04-05 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 5122 5123 PR bootstrap/10267 5124 * doc/install.texi (*-*-solaris2): /bin/ksh is not just recommended 5125 for configuring. 5126 51272003-04-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 5128 5129 * c-decl.c (set_save_expr_context): Use traditional-style function 5130 definition. 5131 51322003-04-04 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 5133 5134 * doc/contrib.texi (Contributors): Add entries for Wolfgang 5135 Bangerth, DJ Delorie, Christian Ehrhardt, Christopher Faylor, 5136 Nathanael Nerode, Diego Novillo, Hartmut Penner, Volker Reichelt, 5137 Danny Smith, and Ulrich Weigand. 5138 Update Kriang Lerdsuwanakij and fix a typo in Janis Johnson's 5139 entry. 5140 51412003-04-04 Zack Weinberg <zack@codesourcery.com> 5142 5143 PR bootstrap/10216 5144 * configure.in: Check whether it is necessary to link against 5145 libm to use ldexp. 5146 * configure: Regenerate. 5147 * Makefile.in: Add LDEXP_LIB substitution variable. 5148 51492003-04-03 Jason Merrill <jason@redhat.com> 5150 5151 PR c/10175 5152 * jump.c (never_reached_warning): Revert patch of 2002-11-02. 5153 Look backwards for a line note. 5154 51552003-04-02 Mike Stump <mrs@apple.com> 5156 5157 * doc/extend.texi (PowerPC AltiVec Built-in Functions): Split up 5158 some to avoid faulting makeinfo --html. 5159 51602003-04-02 Richard Henderson <rth@redhat.com> 5161 5162 * libgcc-std.ver (_Unwind_GetCFA): New. 5163 * unwind-dw2.c (_Unwind_GetCFA): New. 5164 * unwind-sjlj.c (_Unwind_GetCFA): New. 5165 * unwind.h: Declare it. 5166 51672003-04-02 Mike Stump <mrs@apple.com> 5168 5169 * doc/install.texi (Specific): Update pointers to apple.com. 5170 51712003-04-01 Jan Hubicka <jh@suse.cz> 5172 5173 PR inline-asm/8088 5174 * i386.c (ix86_hard_regno_mode_ok): Return 0 for MMX/SSE registers 5175 when MMX/SSE is not available. 5176 51772003-04-02 Richard Henderson <rth@redhat.com> 5178 5179 * except.c (sjlj_find_directly_reachable_regions): Recognize when 5180 must-not-throw region has been deleted. 5181 51822003-04-02 Richard Henderson <rth@redhat.com> 5183 5184 * dwarf2out.c (output_call_frame_info): Ignore fde->nothrow as an 5185 optimization when flag_exceptions not enabled. 5186 51872003-04-01 Richard Henderson <rth@redhat.com> 5188 5189 * except.c (convert_from_eh_region_ranges_1): Smash REG_EH_REGION 5190 notes for nothrow calls if flag_forced_unwind_exceptions. 5191 (build_post_landing_pads): Mind flag_forced_unwind_exceptions. 5192 (sjlj_find_directly_reachable_regions): Likewise. 5193 (reachable_handlers): Likewise. 5194 (can_throw_external): Likewise. 5195 (collect_one_action_chain): Record cleanups after catch-all and 5196 must-not-throw if flag_forced_unwind_exceptions. 5197 * flags.h (flag_forced_unwind_exceptions): Declare. 5198 * toplev.c (flag_forced_unwind_exceptions): New. 5199 (lang_independent_options): Add it. 5200 * doc/invoke.texi: Add it. 5201 52022003-04-01 Geoffrey Keating <geoffk@apple.com> 5203 5204 * unwind-dw2-fde-darwin.c (DESTRUCTOR_MAY_BE_CALLED_LIVE): New. 5205 (live_image_destructor): Reset image to initial state. 5206 (examine_objects): Set DESTRUCTOR_MAY_BE_CALLED_LIVE. 5207 52082003-04-01 Dale Johannesen <dalej@apple.com> 5209 5210 * cse.c (count_reg_usage): Fix handling of REG_EQUAL notes. 5211 (Zdenek Dvorak's fix from 3.4 branch) 5212 52132003-04-01 Ulrich Weigand <uweigand@de.ibm.com> 5214 5215 * config/s390/s390.c (s390_fixup_clobbered_return_reg): 5216 Do nothing if __builtin_return_address was not used. 5217 52182003-04-01 David Edelsohn <edelsohn@gnu.org> 5219 5220 * config/rs6000/rs6000.c (function_arg_pass_by_reference): 5221 Return true for variable sized types. 5222 (rs6000_va_arg): Handle variable sized types passed by reference 5223 on non-SVR4 ABI. 5224 52252003-03-31 Mark Mitchell <mark@codesourcery.com> 5226 5227 PR c/9936 5228 * c-decl.c (grokdeclarator): Clear SAVE_EXPR_CONTEXT for 5229 variably-sized arrays in parameters. 5230 (set_save_expr_context): New function. 5231 (c_expand_body): Use it, via walk_tree. 5232 52332003-03-31 Stephane Carrez <stcarrez@nerim.fr> 5234 5235 * config/m68hc11/m68hc11.c (hard_reg_operand): Check the mode. 5236 52372003-03-31 Stephane Carrez <stcarrez@nerim.fr> 5238 5239 * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Don't rely on REG_WAS_0 5240 notes as they are boggus. 5241 (m68hc11_gen_movqi): Likewise. 5242 52432003-03-31 Stephane Carrez <stcarrez@nerim.fr> 5244 5245 * config/m68hc11/m68hc11.c (expand_prologue): For an interrupt handler 5246 save the soft registers after the frame pointer so that gdb can unwind 5247 the frame more easily. 5248 (expand_epilogue): Likewise in opposite order; allow to use X register 5249 as scratch if the return value is by reference. 5250 52512003-03-31 Jason Merrill <jason@redhat.com> 5252 5253 PR java/10145 5254 * stor-layout.c (update_alignment_for_field): Respect 5255 DECL_USER_ALIGN for zero-length bitfields, too. 5256 * c-decl.c (finish_struct): Don't set DECL_ALIGN for normal 5257 fields. 5258 52592003-03-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 5260 5261 PR other/6955 5262 * collect2.c (collect_wait): Use WCOREDUMP and fix output message. 5263 * system.h (WCOREDUMP, WCOREFLG): Define if necessary. 5264 52652003-03-30 Richard Henderson <rth@redhat.com> 5266 5267 PR c/10083 5268 * config/alpha/alpha.md (umuldi3_highpart): Change to expander; 5269 don't zero_extend const inputs. 5270 52712003-03-29 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 5272 5273 * doc/contrib.texi: Add Eric Botcazou and Roger Sayle. 5274 Uniformly use bugfix instead of bug fix. 5275 52762003-03-29 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 5277 5278 PR doc/895 5279 * ONEWS: Remove those items that already appear in the EGCS 5280 release notes on our web pages. 5281 52822003-03-29 Alan Modra <amodra@bigpond.net.au> 5283 5284 * config/rs6000/rs6000.h (FUNCTION_VALUE_REGNO_P): Respect 5285 TARGET_HARD_FLOAT. Reformat. 5286 (FUNCTION_ARG_REGNO_P): Likewise, and remove unneeded casts. 5287 52882003-03-29 Ulrich Weigand <uweigand@de.ibm.com> 5289 5290 * config/s390/s390.c (s390_emit_prologoue): Make sure backchain is 5291 set up before any trapping memory access if flag_non_call_exceptions. 5292 52932003-03-29 Alan Modra <amodra@bigpond.net.au> 5294 5295 * reload1.c (reload_as_needed): Allow a USE in asm reloads. 5296 5297 * loop.c: (find_mem_in_note_1, find_mem_in_note): Comment. 5298 52992003-03-28 Loren James Rittle <ljrittle@acm.org> 5300 5301 * doc/install.texi (*-*-freebsd*): Update with known status. 5302 53032003-03-28 Ulrich Weigand <uweigand@de.ibm.com> 5304 5305 * config/s390/s390.md ("literal_pool_31"): Output pool anchor 5306 label even if pool empty when generating PIC. 5307 ("literal_pool_31", "literal_pool_64"): Coding style cleanup. 5308 53092003-03-28 Kazu Hirata <kazu@cs.umass.edu>, 5310 Dhananjay Deshpande <dhananjayd@kpit.com> 5311 5312 PR target/10205 5313 * config/h8300/h8300.c (h8300_initial_elimination_offset): 5314 Correct the offset computation when TARGET_NORMAL. 5315 53162003-03-28 Eric Botcazou <ebotcazou@libertysurf.fr> 5317 5318 PR target/10067 5319 * config/sparc/sparc.md (jump pattern): Correct order 5320 when issuing the annuling marker. 5321 53222003-03-28 Alan Modra <amodra@bigpond.net.au> 5323 5324 * loop.c: (find_mem_in_note_1, find_mem_in_note): New functions. 5325 (replace_loop_mems): Add "written" param. Remove invalid REG_EQUAL 5326 notes after hoisting. 5327 (load_mems): Adjust replace_loop_mems call. 5328 53292003-03-28 Eric Botcazou <ebotcazou@libertysurf.fr> 5330 5331 PR c/8281 5332 * config/sparc/sparc.md (movdi_insn_sp32_v9): Remove 'f-f' alternative. 5333 (movdi reg/reg split): Match only on sparc32, and v9 when int regs. 5334 53352003-03-28 Eric Botcazou <ebotcazou@libertysurf.fr> 5336 Richard Henderson <rth@redhat.com> 5337 5338 PR target/10114 and PR target/10084 5339 * dwarf2out.c (mem_loc_descriptor): Handle LO_SUM. 5340 53412003-03-27 Olivier Hainque <hainque@act-europe.fr> 5342 5343 PR ada/9953 5344 * ada/Makefile.in (gnatlib configuration for HPUX): Split 5345 the general section for HPUX into specific sections for 5346 HPUX 10 and HPUX 11. Fix the setting of TGT_LIB in the HPUX 5347 11 case. 5348 53492003-03-26 Ulrich Weigand <uweigand@de.ibm.com> 5350 5351 * config/s390/s390.c (s390_optimize_prolog): Do not save/restore 5352 registers used for global asm variables. 5353 (s390_frame_info, s390_arg_frame_offset): Likewise. 5354 (s390_emit_prologue, s390_emit_epilogue): Likewise. 5355 53562003-03-26 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 5357 5358 * doc/contrib.texi (Contributors): Update Janis Johnson. 5359 53602003-03-26 Jakub Jelinek <jakub@redhat.com> 5361 5362 * config/ia64/ia64.c (ia64_expand_op_and_fetch): Fix comment. 5363 (ia64_expand_compare_and_swap): Use always DImode ar.ccv, 5364 zero extend old to it. 5365 * config/ia64/ia64.md (cmpxchg_acq_si): Remove mode from ccv 5366 operand. 5367 53682003-03-26 Eric Botcazou <ebotcazou@libertysurf.fr> 5369 5370 PR target/7784 5371 * reload.c (find_reloads_address): Handle 5372 (PLUS (PLUS (REG) (REG)) (CONST_INT)) form for 5373 all base registers. 5374 53752003-03-25 Marcelo Abreu <mmabreu@inf.ufrgs.br> 5376 5377 PR other/10203 5378 * version.c: Reference the GCC web site in the URL. 5379 53802003-03-25 Jan Hubicka <jh@suse.cz> 5381 5382 PR opt/10056 5383 * cfglayout.c (fixup_reorder_chain): Fix dealing with the conditional 5384 jump jumping to the next instruction. 5385 * cfgrtl.c (force_nonfallthru_and_redirect): Likewise. 5386 * cfg.c (unchecked_make_edge): New. 5387 * basic-block.h (unchecked_make_edge): Declare. 5388 53892003-03-25 Jason Merrill <jason@redhat.com> 5390 5391 PR optimization/10171 5392 * unroll.c (unroll_loop): Don't delete the jump at the end unless 5393 we also delete a jump at the beginning. 5394 53952003-03-25 Stephane Carrez <stcarrez@nerim.fr> 5396 5397 * doc/contrib.texi (Contributors): Mention self as 68HC11/68HC12 5398 contributor. 5399 54002003-03-25 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 5401 5402 * doc/passes.texi (Passes): Properly document that we do not 5403 perform jump2 any longer; remove command-line option -dJ. 5404 54052003-03-25 Eric Botcazou <ebotcazou@libertysurf.fr> 5406 5407 PR optimization/8746 5408 * config/i386/i386.md (and promoting splitters): Disable HImode to 5409 SImode promoting when the sign bit matters and is not preserved, or 5410 when TARGET_FAST_PREFIX is true. Disable promoting when optimizing 5411 for size. 5412 54132003-03-24 Stephane Carrez <stcarrez@nerim.fr> 5414 5415 * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Add _call_far and 5416 _return_far 5417 (MULTILIB_OPTIONS): Don't multilib on -mlong-calls. 5418 (MULTILIB_EXCEPTIONS): Likewise. 5419 * config/m68hc11/m68hc11.md ("call"): Support far calls for 68HC11 5420 by calling some board support routine. 5421 ("call_value"): Likewise. 5422 ("*return_void"): Likewise for return. 5423 ("*return_16bit"): Likewise. 5424 ("*return_32bit"): Likewise. 5425 * config/m68hc11/m68hc11.h (ASM_DECLARE_FUNCTION_NAME): Generate .far 5426 for 68HC11 too. 5427 (DWARF2_ADDR_SIZE): Use 4 so that addresses can 5428 * config/m68hc11/m68hc11.c (m68hc11_override_options): Accept 5429 -mlong-calls for 68HC11. 5430 * config/m68hc11/larith.asm (declare_near): New macro. 5431 (__premain, ___negsi2, ___one_cmplsi2, ___ashlsi3): Use it. 5432 (___ashrsi3, ___lshrsi3, ___lshrhi3, ___lshlhi3): Likewise. 5433 (___rotrhi3, ___rotlhi3, ___ashrhi3, ___ashrqi3): Likewise. 5434 (___lshlqi3, __divmodhi4, ___mulqi3, ___mulhi3): Likewise. 5435 (__mulhi32): Likewise. 5436 (ret): Update macro for 68HC11. 5437 (__far_trampoline): Implement for 68HC11. 5438 (__call_a16, __call_a32, __return_void, __return_16): New support 5439 routines for 68HC11 memory bank switching calling support. 5440 (__return_32): Likewise. 5441 54422003-03-21 Glen Nakamura <glen@imodulo.com> 5443 5444 PR opt/10087 5445 * loop.c (loop_givs_reduce): Skip bivs with duplicate locations 5446 while incrementing giv. 5447 (record_biv): Check for duplicate biv locations and 5448 set (struct induction *) v->same if found. 5449 54502003-03-24 Janis Johnson <janis187@us.ibm.com> 5451 5452 * doc/install.texi (Testing): Mention test result links from build 5453 status pages. 5454 54552003-03-24 Mark Mitchell <mark@codesourcery.com> 5456 5457 * function.c (put_var_into_stack): Change bool parameter to int. 5458 (gen_mem_addressof): Likewise. 5459 * rtl.h (gen_mem_addressof): Likewise. 5460 * tree.h (put_var_into_stack): Likewise. 5461 * config/alpha/alpha.c (alpha_gp_save_rtx): Adjust call to 5462 gen_mem_addressof or put_var_into_stack. 5463 * config/c4x/c4x.c (c4x_expand_builtin): Likewise. 5464 54652003-03-24 Andreas Schwab <schwab@suse.de> 5466 5467 * config/ia64/ia64.c (spill_tfmode_operand): Adjust calls to 5468 gen_mem_addressof. 5469 54702003-03-24 Jakub Jelinek <jakub@redhat.com> 5471 5472 * expr.c (do_jump): Handle UNSAVE_EXPR specially. 5473 54742003-03-23 Eric Botcazou <ebotcazou@libertysurf.fr> 5475 5476 PR target/10072 5477 * combine.c (simplify_if_then_else): Check that the mode 5478 has MODE_INT class before applying the (OP Z (mult COND C2)) 5479 transformation. 5480 54812003-03-23 Eric Botcazou <ebotcazou@libertysurf.fr> 5482 5483 PR optimization/9414 5484 * config/sparc/sparc.md (widening peepholes): Use 5485 widen_memory_access instead of change_address. 5486 54872003-03-23 Mark Mitchell <mark@codesourcery.com> 5488 5489 PR c++/7086 5490 * c-typeck.c (c_mark_addressable): Adjust calls to 5491 put_var_into_stack. 5492 * expr.c (expand_expr): Likewise. 5493 * function.c (put_var_into_stack): Add rescan parameter. Do not 5494 call fixup_var_refs when rescan is false. 5495 (gen_mem_addressof): Likewise. 5496 (assign_parms): Adjust calls to put_var_into_stack. 5497 (setjmp_protect): Likewise. 5498 (setjmp_protect_args): Likewise. 5499 * rtl.h (gen_mem_addressof): Change prototype. 5500 * stmt.c (expand_decl): Adjust calls to put_var_into_stack. 5501 * tree.h (put_var_into_stack): Change prototype. 5502 55032003-03-23 Arpad Beszedes <beszedes@cc.u-szeged.hu> 5504 5505 PR middle-end/9967 5506 * builtins.c (expand_builtin_fputs): When optimizing for size, 5507 don't transform fputs into fwrite. 5508 55092003-03-24 Alan Modra <amodra@bigpond.net.au> 5510 5511 * config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Remove unnecessary 5512 globalize_label. 5513 5514 Merge from mainline. 5515 2003-01-13 Andreas Schwab <schwab@suse.de> 5516 * config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_LOCAL): Output type 5517 directive. 5518 55192003-03-23 Glen Nakamura <glen@imodulo.com> 5520 5521 PR c/8224 5522 * fold-const.c (extract_muldiv_1): Don't pass through type conversions 5523 when signedness changes for division or modulus. 5524 55252003-03-23 Richard Henderson <rth@redhat.com> 5526 5527 * cfgcleanup.c (try_optimize_cfg): Allow merging of tablejumps 5528 before flow2. 5529 * cfgrtl.c (try_redirect_by_replacing_jump): Similarly. 5530 55312003-03-23 Richard Henderson <rth@redhat.com> 5532 5533 PR opt/10116 5534 * ifcvt.c (find_if_block): Disallow tablejump insns outgoing 5535 from then_bb or else_bb after flow2. 5536 * jump.c (tablejump_p): New. 5537 * rtl.h: Declare it. 5538 55392003-03-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 5540 5541 * pa.c (output_cbranch): Fix typo in comment. 5542 55432003-03-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 5544 5545 * pa.c (output_cbranch, output_bb, output_bvb): Output nop for 5546 conditional branch to the following instruction. Use next_real_insn 5547 instead of next_active_insn. 5548 (output_dbra, output_movb, jump_in_call_delay): Use next_real_insn 5549 instead of next_active_insn. 5550 55512003-03-22 Ulrich Weigand <uweigand@de.ibm.com> 5552 5553 * config/s390/s390.md ("movti", "*movdi_31", "*movdf_31"): Use 'o' instead 5554 of 'm' constraint in forced-split alternatives. 5555 ("*adddi3_31", "*subdi3_31"): Likewise. Also, pass 0 instead of 1 as 5556 VALIDATE_ADDRESS parameter to operand_subword. 5557 55582003-03-22 Svein E. Seldal <Svein.Seldal@solidas.com> 5559 5560 * config/c4x/t-c4x (MULTILIB_MATCHES): Make gcc recognize a c33 as 5561 a c30 instead of a c40 processor. 5562 55632003-03-21 Richard Henderson <rth@redhat.com> 5564 5565 PR opt/2001 5566 * bb-reorder.c (maybe_duplicate_computed_goto_succ): New. 5567 (make_reorder_chain_1): Call it. 5568 5569 * function.h (struct function): Add computed_goto_common_label, 5570 computed_goto_common_reg. 5571 * function.c (free_after_compilation): Zap them. 5572 * stmt.c (expand_computed_goto): Use them to produce one 5573 indirect branch per function. 5574 55752003-03-22 Stephane Carrez <stcarrez@nerim.fr> 5576 5577 * config/m68hc11/m68hc11.md ("call_value"): Fix trap check. 5578 55792003-03-22 Stephane Carrez <stcarrez@nerim.fr> 5580 5581 * config/m68hc11/m68hc11.h (ASM_DECLARE_FUNCTION_NAME): Fix typo in 5582 writing .interrupt command. 5583 * config/m68hc11/m68hc11.md ("call"): Look at the symbol to see 5584 if it's a far or near function. 5585 ("call_value"): Likewise. 5586 * config/m68hc11/m68hc11.c (m68hc11_attribute_table): Add far and 5587 near attributes. 5588 (m68hc11_handle_fntype_attribute): Accept attributes on methods. 5589 (m68hc11_override_options): Ignore -mlong-calls for 68HC11. 5590 (m68hc11_initial_elimination_offset): Set current_function_far 5591 according to attributes. 5592 (expand_prologue): Likewise. 5593 (trap_handler_symbol): New global to keep track of trap handlers. 5594 (m68hc11_encode_section_info): Mark symbol as far if needed; set 5595 trap symbol. 5596 (m68hc11_is_far_symbol): New function. 5597 (m68hc11_is_trap_symbol): New function. 5598 * config/m68hc11/m68hc11-protos.h (m68hc11_is_far_symbol): Declare. 5599 (m68hc11_is_trap_symbol): Declare. 5600 56012003-03-21 Jan Hubicka <jh@suse.cz> 5602 5603 PR inline-asm/7916 5604 5605 * function.c (instantiate_virtual_regs_lossage): New function. 5606 (instantiate_virtual_regs_1): Use it. 5607 (instantiate_virtual_regs): Do not continue in substition when insn has 5608 been deleted. 5609 56102003-03-21 Ulrich Weigand <uweigand@de.ibm.com> 5611 5612 * config/s390/s390.h: Do not include fixdfdi.h on s390x. 5613 (TARGET_64BIT): Define as compile-time constant when IN_LIBGCC2. 5614 (MIN_UNITS_PER_WORD): Do not define when IN_LIBGCC2. 5615 56162003-03-21 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 5617 5618 PR doc-bug/9813 5619 * doc/extend.texi: Move misplaced paragraph about underscores in 5620 variables in macros. 5621 56222003-03-21 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 5623 5624 * doc/invoke.texi: Fix table environment. 5625 56262003-03-21 Richard Earnshaw <rearnsha@arm.com> 5627 5628 * ifcvt.c (find_if_case_1): If we add a new bb, update the dominance 5629 information. 5630 56312003-03-21 Eric Botcazou <ebotcazou@libertysurf.fr> 5632 Richard Henderson <rth@redhat.com> 5633 5634 PR optimization/8366 5635 * config/sparc/sparc.h: (SYMBOLIC_CONST): New macro. 5636 (GO_IF_LEGITIMATE_ADDRESS): Use it. Reject the form 5637 PIC+SYMBOLIC_CONST in other modes than Pmode. 5638 (GO_IF_MODE_DEPENDENT_ADDRESS): Use it. Mark 5639 the form PIC+SYMBOLIC_CONST as mode dependent. 5640 56412003-03-20 Richard Henderson <rth@redhat.com> 5642 5643 * fold-const.c (extract_muldiv_1): Revert changing order of 5644 operands in case MULT_EXPR of 2003-02-16 patch. 5645 56462003-03-20 Richard Henderson <rth@redhat.com> 5647 5648 PR c/8602 5649 * integrate.c (output_inline_function): Reset input_filename 5650 and lineno from the decl before rest_of_compilation. 5651 56522003-03-20 Richard Earnshaw <rearnsha@arm.com> 5653 5654 PR 10066 5655 * arm.md (UNSPEC_PIC_BASE): New constant. 5656 (pic_add_dot_plus_four): Wrap with unspec. 5657 (pic_add_dot_plus_eight): Likewise. 5658 56592003-03-19 Ulrich Weigand <uweigand@de.ibm.com> 5660 5661 * config/s390/s390.c (s390_preferred_reload_class): Do not 5662 force constants to the pool unless necessary. 5663 (s390_decompose_address): Prefer to use pointer as base, 5664 not index register. 5665 * config/s390/s390.md ("*tsthiCCT_only"): Remove '?' from 5666 Q alternative. 5667 ("*movdi_64", "*movsi", "movhi", "movqi_64", "movqi", 5668 "*movdf_64", "*movsf"): Add '?' to Q->Q alternatives. 5669 ("*extractqi", "*extracthi", "*zero_extendhisi2_31", 5670 "*zero_extendqisi2_31", "*zero_extendqihi2_31", 5671 "*adddi3_31", "*subdi3_31"): Do not set "type" attribute. 5672 56732003-03-19 Jakub Jelinek <jakub@redhat.com> 5674 5675 * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Don't call 5676 rs6000_maybe_dead if !fromprolog. 5677 56782003-03-19 Jakub Jelinek <jakub@redhat.com> 5679 5680 * ifcvt.c (dead_or_predicable): Fail if there are any references 5681 to tablejump in merge_bb other than the final JUMP_INSN. 5682 56832003-03-19 Jakub Jelinek <jakub@redhat.com> 5684 5685 * stmt.c (expand_start_case): Call emit_queue (). 5686 56872003-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 5688 5689 PR 10062 5690 * config/pa/pa-hpux.h (TARGET_HPUX_UNWIND_LIBRARY): Redefine. 5691 * pa-protos.h (output_lbranch): New prototype. 5692 * pa.c (compute_frame_size): Change size of the frame marker on the 5693 64-bit ports to 48 bytes. 5694 (pa_output_function_prologue): Document why SAVE_SP is set. 5695 (hppa_expand_prologue): Save previous stack pointer into frame marker 5696 on targets which use the hpux unwind library. 5697 (output_cbranch): Use output_lbranch. 5698 (output_lbranch): New function to output long unconditional branches. 5699 * pa.h (TARGET_HPUX_UNWIND_LIBRARY): Define. 5700 (STACK_POINTER_OFFSET): Update offset for 48-byte frame marker on 5701 64-bit ports. 5702 * pa.md (jump): Use output_lbranch. 5703 (allocate_stack): New expander for dynamic stack allocation. 5704 57052003-03-18 Alexandre Oliva <aoliva@redhat.com> 5706 5707 * toplev.c (independent_decode_option): Return success for --help, 5708 --target-help and --version. 5709 57102003-03-19 Alan Modra <amodra@bigpond.net.au> 5711 5712 PR target/10073 5713 * combine.c (force_to_mode <NOT>): Use gen_int_mode. 5714 57152003-03-18 Andreas Schwab <schwab@suse.de> 5716 5717 PR target/7248 5718 * config/m68k/m68k.md (iordi3): Fix setting low half to -1. From 5719 martin@blom.org. 5720 57212003-03-17 Jason Merrill <jason@redhat.com> 5722 5723 PR c++/10091 5724 * expr.c (expand_expr) [ADDR_EXPR]: Disallow taking the address of 5725 an unaligned member of TREE_ADDRESSABLE type. 5726 57272003-03-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 5728 5729 * dwarf2asm.h: Delete obsolete comment. 5730 (dw2_asm_output_data, dw2_asm_output_delta, dw2_asm_output_offset, 5731 dw2_asm_output_pcrel, dw2_asm_output_addr, 5732 dw2_asm_output_addr_rtx, dw2_asm_output_encoded_addr_rtx, 5733 dw2_asm_output_nstring, dw2_asm_output_data_uleb128, 5734 dw2_asm_output_data_sleb128, dw2_asm_output_delta_uleb128, 5735 dw2_asm_output_delta_sleb128): Add ATTRIBUTE_NULL_PRINTF. 5736 57372003-03-17 Steve Ellcey <sje@cup.hp.com> 5738 5739 * stmt.c (tail_recursion_args): Call promote_mode to set 5740 unsignedp flag correctly before calling convert_move. 5741 57422003-03-17 Dave Love <fx@gnu.org> 5743 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 5744 5745 * config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Define __digital__, 5746 __arch64__ to match Compaq cc. 5747 57482003-03-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz> 5749 5750 * function.c (thread_prologue_and_epilogue_insns): Set delete_unused 5751 argument to 0 for redirect_jump. 5752 57532003-03-16 Mark Mitchell <mark@codesourcery.com> 5754 5755 PR c++/8805 5756 * except.c (eh_region_u_cleanup): Add prev_try. 5757 (expand_eh_region_end_cleanup): Set it. 5758 (reachable_handlers): Use it to skip over cleanup blocks. 5759 57602003-03-16 Richard Henderson <rth@redhat.com> 5761 5762 PR opt/6798 5763 * cfgcleanup.c: Include params.h. 5764 (try_crossjump_bb): Use PARAM_MAX_CROSSJUMP_EDGES. Fix test for 5765 too many outgoing edges from a block. 5766 * Makefile.in (cfgcleanup.o): Depend on PARAMS_H. 5767 * params.def (max-crossjump-edges): New. 5768 * doc/invoke.texi: Document it. 5769 57702003-03-16 Richard Henderson <rth@redhat.com> 5771 5772 * config/i386/i386.md (movstrictqi, movstrictqi_1): Check 5773 optimize_size as well. 5774 57752003-03-16 Stephane Carrez <stcarrez@nerim.fr> 5776 5777 * config/m68hc11/m68hc11.c (print_operand): Handle 'b' modifier 5778 for D register to specify the low part of it, aka B. 5779 (m68hc11_gen_movhi): Use REG_WAS_0 note and increment or decrement 5780 the register if we are loading 1 or -1 to it; avoid using temp 5781 register when moving X/Y to Y/X. 5782 (m68hc11_gen_movqi): Likewise. 5783 (m68hc11_check_z_replacement): Fix last insn setting for compare case. 5784 57852003-03-14 Mark Mitchell <mark@codesourcery.com> 5786 5787 PR optimization/9016 5788 * config/i386/i386.c (ix86_expand_move): Force more CONST_DOUBLEs 5789 into the constant pool. 5790 57912003-03-16 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de> 5792 5793 PR target/9164 5794 * tree.c (get_narrower): For extensions with unchanged bit number, 5795 return the unsignedness of the outer mode. 5796 57972003-03-16 Roger Sayle <roger@eyesopen.com> 5798 5799 * c-typeck.c (build_component_ref): Turn "for" into "do .. while" 5800 to avoid "may be used uninitialized" warning on ia64-hpux. 5801 * config/ia64/ia64-c.c: Include "tm_p.h" for function prototypes. 5802 58032003-03-16 Neil Booth <neil@daikokuya.co.uk> 5804 5805 * cppinit.c: Remove support of -A-. 5806 * doc/cppopts.texi: Remove documentation of -A-. 5807 58082003-03-15 Richard Henderson <rth@redhat.com> 5809 5810 2003-01-14 Richard Henderson <rth@redhat.com> 5811 * config/alpha/alpha.c (alpha_expand_mov): Use correct mode 5812 for force_const_mem. 5813 58142003-03-15 Richard Henderson <rth@redhat.com> 5815 5816 PR target/9700 5817 * config/alpha/alpha.c (alpha_va_start): Account for 5818 current_function_pretend_args_size in the AP offset. 5819 58202003-03-15 Jason Merrill <jason@redhat.com> 5821 5822 PR debug/6387 5823 * dwarf2out.c (dwarf2out_decl): If we're at -g1, just stick nested 5824 function DIEs at toplevel. 5825 (decls_for_scope): At -g1, don't descend into subblocks. 5826 58272003-03-15 Ulrich Weigand <uweigand@de.ibm.com> 5828 5829 * varasm.c (struct rtx_const): Change type of un.addr member 5830 to struct holding an additional 'symbol' member. 5831 (decode_rtx_const): Re-enable optimization to count SYMBOL_REFs 5832 with equal string addresses as equal. 5833 (simplify_subtraction): Adapt to struct rtx_const change. 5834 58352003-03-15 Glen Nakamura <glen@imodulo.com> 5836 5837 * reload1.c (choose_reload_regs): Use && instead of || 5838 with REG_CANNOT_CHANGE_MODE_P condition. 5839 58402003-03-15 Michael Hayes <m.hayes@elec.canterbury.ac.nz> 5841 5842 PR optimization/9387 5843 * function.c (thread_prologue_and_epilogue_insns): Use redirect jump 5844 for conditional returns. 5845 58462003-03-14 Jason Merrill <jason@redhat.com> 5847 5848 PR optimization/6871 5849 * varasm.c (assemble_variable): Leave constant zeroes in .rodata. 5850 58512003-03-12 Andrew Lewycky <andrew@mxc.ca> 5852 5853 PR c++/7050 5854 * expr.c (store_expr): Don't attempt to store void-typed trees, 5855 just evaluate them for side effects. 5856 58572003-03-14 Eric Botcazou <ebotcazou@libertysurf.fr> 5858 5859 PR optimization/8396 5860 * tree-inline.c (initialize_inlined_parameters): Make sure the value 5861 of read-only constant arguments is passed with the right type. 5862 58632003-03-14 Andreas Jaeger <aj@suse.de> 5864 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 5865 5866 * linux64.h (TARGET_OS_CPP_BUILTINS): Define _LP64 and __LP64__ in 5867 64-bit mode. 5868 58692003-03-13 Mike Stump <mrs@apple.com> 5870 5871 * ggc-page.c (struct page_entry): Remove varray.h header. 5872 Add index_by_depth field. 5873 Remove save_in_use_p field. 5874 (struct globals): Add depth_in_use, depth_max, by_depth_in_use, 5875 by_depth_max, by_depth, and save_in_use fields. 5876 (INITIAL_PTE_COUNT): Add. 5877 (save_in_use_p_i): Add. 5878 (save_in_use_p): Add. 5879 (adjust_depth): Add. 5880 (push_depth): Add. 5881 (push_by_depth): Add. 5882 (prefetch): Add. 5883 (free_page): Add support for and use faster data structures. 5884 (ggc_alloc): Likewise. 5885 (init_ggc): Likewise. 5886 (ggc_recalculate_in_use_p): Likewise. 5887 (ggc_pop_context): Likewise. 5888 (clear_marks): Likewise. 5889 * Makefile.in (ggc-page.o): Remove varray.h. 5890 58912003-03-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 5892 5893 * pa.c (pa_init_builtins): Fix warning. 5894 58952003-03-12 Richard Henderson <rth@redhat.com> 5896 5897 PR opt/8178 5898 * config/i386/i386.md (ffssi2): Tighten op1 predicate to 5899 the requirements of the output insns. 5900 59012003-03-12 Steve Ellcey <sje@cup.hp.com> 5902 5903 * config/ia64/ia64.h (ASM_OUTPUT_XDATA_CHAR): Remove. 5904 (ASM_OUTPUT_XDATA_SHORT): Remove. 5905 (ASM_OUTPUT_XDATA_INT): Remove. 5906 (ASM_OUTPUT_XDATA_DOUBLE_INT): Remove. 5907 (ASM_OUTPUT_ADDR_DIFF_ELT): Handled 32 bit address diffs. 5908 (ASM_PREFERRED_EH_DATA_FORMAT): Handle 32 bit EH pointers. 5909 (CASE_VECTOR_MODE): Handle 32 bit pointers in case statement. 5910 59112003-03-12 Andrew Lewycky <andrew@mxc.ca> 5912 5913 PR c++/7050 5914 * expr.c (store_expr): Don't attempt to store void-typed trees, 5915 just evaluate them for side effects. 5916 59172003-03-12 Bob Wilson <bob.wilson@acm.org> 5918 5919 Backport from mainline: 5920 2003-03-12 Bob Wilson <bob.wilson@acm.org> 5921 5922 * config/xtensa/xtensa.md (adddi3): Don't clobber source operand used 5923 to detect carry. 5924 (subdi3): Reorder emitted instructions. 5925 59262003-03-12 Jan Hubicka <jh@suse.cz> 5927 5928 * i386.c (ix86_setup_incoming_varargs): Set stack_alignment_needed to 128. 5929 59302003-03-12 Daniel Jacobowitz <drow@mvista.com> 5931 5932 Fix PR target/9797 and PR c/9853. 5933 * stmt.c (expand_decl_init): Call push_temp_slots () and 5934 pop_temp_slots (). 5935 59362003-03-12 Hans-Peter Nilsson <hp@bitrange.com> 5937 5938 * configure.in (rlim_t): Define to long if no valid definition 5939 found in sys/resource.h. 5940 * config.in, configure: Regenerate. 5941 59422003-03-12 Eric Botcazou <ebotcazou@libertysurf.fr> 5943 5944 PR c/9928 5945 * c-decl.c (duplicate_decls): Discard the initializer of the new decl 5946 only if it is a VAR_DECL. 5947 59482003-03-12 Eric Botcazou <ebotcazou@libertysurf.fr> 5949 5950 PR optimization/9888 5951 * config/i386/i386.md (jcc_1): Fix range. 5952 (jcc_2): Likewise. 5953 (jump): LIkewise. 5954 (doloop_end_internal): Likewise. 5955 59562003-03-12 Eric Botcazou <ebotcazou@libertysurf.fr> 5957 5958 PR optimization/9888 5959 * config/i386/i386.md (movsi_1): Remove special alternatives 5960 for %eax register. 5961 (movhi_1): Likewise. 5962 * config/i386/i386.c (memory_address_length): Do not use 5963 short displacement when there is no base. 5964 (ix86_attr_length_address_default): Handle LEA instructions. 5965 59662003-03-11 Loren James Rittle <ljrittle@acm.org> 5967 5968 (per-port preprocessor fix, concurrent to Neil's cppinit.c fix) 5969 * config/freebsd-spec.h (FBSD_CPP_PREDEFINES): Remove. 5970 (FBSD_TARGET_OS_CPP_BUILTINS): New port-specific macro. 5971 (FBSD_TARGET_CPU_CPP_BUILTINS): New port-specific macro. 5972 * config/freebsd.h (CPP_PREDEFINES): Remove. 5973 (TARGET_OS_CPP_BUILTINS): New. 5974 * config/alpha/freebsd.h: Use overridden FBSD_TARGET_CPU_CPP_BUILTINS 5975 instead of TARGET_OS_CPP_BUILTINS. 5976 * config/sparc/freebsd.h (CPP_PREDEFINES): Remove. 5977 59782003-03-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 5979 5980 PR bootstrap/9994 5981 Backport from mainline: 5982 5983 2003-02-18 Roger Sayle <roger@eyesopen.com> 5984 5985 * sbitmap.c (sbitmap_resize): New function. 5986 * sbitmap.h (sbitmap_resize): Prototype here. 5987 * recog.c (split_all_insns): Use sbitmap_resize. 5988 5989 Mon Feb 17 16:16:54 CET 2003 Jan Hubicka <jh@suse.cz> 5990 5991 * recog.c (split_all_insns): Fix memory overflow. 5992 5993 2003-02-15 Richard Henderson <rth@redhat.com> 5994 5995 * recog.c (split_all_insns): Include new blocks in life update; 5996 do a global life update. 5997 59982003-03-11 Hans-Peter Nilsson <hp@bitrange.com> 5999 6000 * config/cris/cris.md: Remove lingering EGCS reference. 6001 ("*extopqihi_side_biap"): For HI operation, match 6002 cris_additive_operand_extend_operator, not 6003 cris_operand_extend_operator. Adjust condition. 6004 ("*extopqihi_side", "*extopqihi"): Ditto. 6005 ("*extopqisi_side_biap"): Correct operand numbers in condition. 6006 ("*extophisi_side_biap", "*extopqisi_swap_side_biap"): Ditto. 6007 ("*extophisi_swap_side_biap", "*extopqisi_swap"): Ditto. 6008 ("*extophisi_swap"): Ditto. 6009 ("*extopqihi_swap_side_biap"): For HI operation, match a simple 6010 PLUS, not cris_operand_extend_operator. Adjust condition and 6011 output template. 6012 ("*extopqihi_swap_side", "*extopqihi_swap"): Ditto. 6013 * config/cris/cris.h (PREDICATE_CODES): Add 6014 cris_additive_operand_extend_operator. 6015 * config/cris/cris.c (cris_additive_operand_extend_operator): 6016 New predicate. 6017 6018 * config/cris/aout.h (ENDFILE_SPEC): Undef. 6019 (CRIS_CPP_SUBTARGET_SPEC): Move -D__AOUT__ to... 6020 (TARGET_OS_CPP_BUILTINS): New macro. 6021 (HAVE_GAS_HIDDEN): Undef. 6022 * config/cris/cris.h: Remove EGCS references. 6023 (CPP_SPEC): Remove "-$". 6024 (INIT_CUMULATIVE_ARGS): Correct comment. 6025 * config/cris/cris.h (CRIS_CPP_SUBTARGET_SPEC): Move -D__ELF__ to... 6026 (TARGET_OS_CPP_BUILTINS): New macro. 6027 (CPP_PREDEFINES): Don't define. Move old definitions and... 6028 (CPP_SPEC): ...move -D__CRIS_ABI_version=2 to... 6029 (TARGET_CPU_CPP_BUILTINS): New macro. 6030 * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC): Move constant 6031 definitions and the optional __PIC__, __pic__ and 6032 __NO_UNDERSCORES__ definitions to... 6033 (TARGET_OS_CPP_BUILTINS): New macro. 6034 60352003-03-10 Devang Patel <dpatel@apple.com> 6036 6037 PR c++/9394 6038 * gcc.c (DEFAULT_SWITCH_TAKES_ARG): Remove. 6039 (DEFAULT_WORD_SWITCH_TAKES_ARG): Remove. 6040 * gcc.h (DEFAULT_SWITCH_TAKES_ARG): Add. 6041 (DEFAULT_WORD_SWITCH_TAKES_ARG): Add. 6042 * cppspec.c (DEFAULT_SWTICH_TAKES_ARG): Remove. 6043 (DEFAULT_WORD_SWITCH_TAKES_ARG): Remove. 6044 60452003-03-10 Stephane Carrez <stcarrez@nerim.fr> 6046 6047 * config/m68hc11/m68hc11.h (HARD_REGNO_RENAME_OK): Define. 6048 * config/m68hc11/m68hc11-protos.h (m68hc11_hard_regno_rename_ok): 6049 Declare. 6050 * config/m68hc11/m68hc11.c (m68hc11_hard_regno_rename_ok): New function 6051 for reg rename optimization to avoid using Z and Y registers. 6052 60532003-03-10 Stephane Carrez <stcarrez@nerim.fr> 6054 6055 * config/m68hc11/m68hc11.md ("*addhi3_68hc12"): Accept any constant 6056 when adding to X and Y since leax/leay are fast. 6057 ("*addhi3"): Accept 'I' constraint when adding to address register. 6058 ("rotlhi3"): Operand 1 must be a register_operand. 6059 (peephole2): New peephole to optimize some adds. 6060 * config/m68hc11/m68hc11.h (CONST_OK_FOR_LETTER_P): Use 'I' constraint 6061 to represent -2 .. 2 small integer range. 6062 60632003-03-10 Stephane Carrez <stcarrez@nerim.fr> 6064 6065 * config/m68hc11/m68hc11.c (m68hc11_gen_rotate): Set carry before 6066 each 16-bit rotation. 6067 60682003-03-10 Aldy Hernandez <aldyh@redhat.com> 6069 6070 * config/rs6000/spe.h: Merge from mainline. 6071 60722003-03-10 Jan Hubicka <jh@suse.cz> 6073 6074 * toplev.c (rest_of_compilation): Revert the previous patch. 6075 60762003-03-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6077 6078 PR middle-end/9986 6079 * c-common.c (c_common_nodes_and_builtins): Initialize target builtins 6080 after the common builtins. 6081 * pa-hpux.h (DONT_HAVE_FPUTC_UNLOCKED): Define. 6082 * pa.c (TARGET_INIT_BUILTINS): Define. 6083 (pa_init_builtins): New function. 6084 6085 * pa.md (call, call_value, sibcall, sibcall_value): When sufficient 6086 space has been allocated for the outgoing arguments, set the arg 6087 pointer for a call emitted after virtuals have been instantiated 6088 using the stack pointer offset, otherwise abort. 6089 60902003-03-06 Jan Hubicka <jh@suse.cz> 6091 6092 * toplev.c (rest_of_compilation): Defer RTL compilation only when 6093 RTL inlining is done. 6094 6095 * i386.c (ix86_expand_vector_move): Do not crash when offloading 6096 to memory in PIC mode. 6097 60982003-03-08 Neil Booth <neil@daikokuya.co.uk> 6099 6100 * cppinit.c (cpp_finish_options): Set first_unused_line to -1. 6101 61022003-03-08 Eric Botcazou <ebotcazou@libertysurf.fr> 6103 6104 PR middle-end/7796 6105 * unroll.c (calculate_giv_inc): Handle constants being 6106 loaded with LSHIFTRT. 6107 61082003-03-07 Eric Botcazou <ebotcazou@libertysurf.fr> 6109 6110 PR optimization/8726 6111 Backport patch from mainline: 6112 6113 2003-01-08 Dale Johannesen <dalej@apple.com> 6114 6115 * function.c (assign_parms): Don't set pretend_args_size if 6116 REG_PARM_STACK_SPACE. 6117 61182003-03-06 Kurt Garloff <garloff@suse.de> 6119 Geoffrey Keating <geoffk@apple.com> 6120 Dale Johannesen <dalej@apple.com> 6121 * params.def: Introduce parameter max-inline-insns-rtl for 6122 a separate limit for the RTL inliner. 6123 * params.h: Likewise. 6124 * integrate.c (function_cannot_inline_p): Use it. 6125 * toplev.c (decode_f_option): Set multiple parameters 6126 controlling inlining with -finline-limit. 6127 * params.def: Fix orthographic and typographic errors. 6128 * doc/invoke.texi: Document parameters controlling inlining 6129 and the way -finline-limit sets multiple of them. 6130 * tree.h (struct tree_decl): Introduce inlined_function_flag, 6131 recording whether the function became eligible for inlining 6132 by a compiler flag rather than the declaration. 6133 Provide DID_INLINE_FUNC macro to access it. 6134 * c-decl.c (grokdeclarator): Set DID_INLINE_FUNC. 6135 * cp/decl.c (grokfndecl): Likewise. 6136 * toplev.c (rest_of_compilation): Likewise. 6137 * cp/optimize (maybe_clone_body): Copy DID_INLINE_FUNC. 6138 * print-tree.c (print_node): Report it. 6139 * params.def: Introduce new max-inline-insns-auto limit. 6140 * params.h: Likewise. 6141 * tree-inline.c (inlinable_function_p): Apply it to functions 6142 with DID_INLINE_FUNC set. 6143 * toplev.c (decode_f_option): Initialize it from -finline-limit 6144 value. 6145 * doc/invoke.texi: Document new parameter. 6146 61472003-03-06 Michael Matz <matz@suse.de> 6148 6149 * i386/i386.c (ix86_save_reg): Also test 6150 current_function_uses_const_pool. 6151 61522003-03-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6153 6154 * pa.md (return_external_pic): Add !TARGET_PA_20 to constraint. 6155 (epilogue): Don't generate return_external_pic when emitting PA 2.0 6156 code. 6157 61582003-03-05 Stephane Carrez <stcarrez@nerim.fr> 6159 6160 * config/m68hc11/m68hc11.h (PAD_VARARGS_DOWN): Define and return 6161 according to va_arg type. 6162 (EXPAND_BUILTIN_VA_ARG): Remove. 6163 * config/m68hc11/m68hc11.c (m68hc11_va_arg): Remove. 6164 * config/m68hc11/m68hc11-protos.h (m68hc11_va_arg): Remove. 6165 61662003-03-05 Jan Hubicka <jh@suse.cz> 6167 6168 * toplev.c (rest_of_compilation): Do duplicate loop headers when 6169 optimizing for size. 6170 61712003-03-05 Michael Matz <matz@suse.de> 6172 6173 * unwind.h: Add the GPL exception. 6174 * Makefile.in (USER_H): Add unwind.h. 6175 61762003-03-05 Eric Botcazou <ebotcazou@libertysurf.fr> 6177 6178 PR c/9799 6179 * c-typeck.c (push_init_level): Add sanity check. 6180 61812003-03-04 Steve Ellcey <sje@cup.hp.com> 6182 6183 * expr.c (convert_modes): Check for legal hard register. 6184 61852003-03-04 Andreas Schwab <schwab@suse.de> 6186 6187 * config/m68k/m68k.c (m68k_output_function_prologue): Fix CFA 6188 offset without frame pointer. 6189 61902003-03-04 Steve Ellcey <sje@cup.hp.com> 6191 6192 * expr.c (expand_expr): Call promote_mode to set unsignedp. 6193 61942003-03-04 Roger Sayle <roger@eyesopen.com> 6195 6196 PR c++/9367 6197 * builtin-types.def (DEF_FUNCTION_TYPE_VAR_3): New macro. 6198 (BT_FN_INT_CONST_STRING_VALIST_ARG, 6199 BT_FN_INT_STRING_CONST_STRING_VALIST_ARG, 6200 BT_FN_INT_CONST_STRING_CONST_STRING_VALIST_ARG, 6201 BT_FN_INT_STRING_SIZE_CONST_STRING_VALIST_ARG, 6202 BT_FN_INT_STRING_CONST_STRING_VAR, 6203 BT_FN_INT_CONST_STRING_CONST_STRING_VAR, 6204 BT_FN_INT_STRING_SIZE_CONST_STRING_VAR): New built-in types. 6205 * builtin-attrs.def (ATTR_NONNULL_1, ATTR_NONNULL_2, 6206 ATTR_NONNULL_3): Also include the nothrow attribute. 6207 (sprintf, scanf, sscanf, vprintf, vsprintf, snprintf, 6208 vsnprintf, vscanf, vsscanf): Don't define attributes here. 6209 * builtins.def (putchar, puts): Make full C89 built-ins. 6210 (snprintf, sprintf, scanf, sscanf, vprintf, vscanf, 6211 vsscanf, vsnprintf, vsprintf): New built-ins. 6212 * c-common.c (c_common_nodes_and_builtins): Handle new macro 6213 DEF_FUNCTION_TYPE_VAR_3. 6214 6215 * doc/extend.texi: Document these new built-in functions. 6216 62172003-03-04 Jan Hubicka <jh@suse.cz> 6218 6219 * calls.c (rtx_for_function_call): Take the address as an argument 6220 (expand_call): Do not modify the expression. 6221 62222003-03-04 Kevin Buettner <kevinb@redhat.com> 6223 6224 * dwarf2out.c (rtl_for_decl_location): Don't return NULL_RTX for 6225 global register variables. 6226 62272003-03-03 Richard Henderson <rth@redhat.com> 6228 6229 * configure.in (HAVE_AS_LTOFFX_LDXMOV_RELOCS): New ia64 test. 6230 * config.in, configure: Rebuild. 6231 * config/ia64/ia64.c (ia64_ld_address_bypass_p): Accept lo_sum. 6232 * config/ia64/ia64.md (load_symptr): Use high/lo_sum for the 6233 paired ldtoffx and ldxmov annotations. 6234 (load_symptr_internal1): Remove. 6235 (load_symptr_high, load_symptr_low): New. 6236 * config/ia64/ia64.h (HAVE_AS_LTOFFX_LDXMOV_RELOCS): Default to 0. 6237 62382003-03-03 Jason Merrill <jason@redhat.com> 6239 6240 * calls.c (compute_argument_addresses): Give the new MEMs a 6241 minimum alignment of PARM_BOUNDARY. 6242 62432003-03-03 Geoffrey Keating <geoffk@apple.com> 6244 6245 * doc/install.texi (Specific): Update entry for powerpc-darwin. 6246 62472003-03-03 Jan Hubicka <jh@suse.cz> 6248 * toplev.c (rest_of_compilation): Avoid cfg_cleanup calls when not 6249 optimizing. 6250 62512003-02-28 Jan Hubicka <jh@suse.cz> 6252 6253 * combine.c (gen_lowpart_for_combine): Update handling of subregs_of_mode 6254 * flow.c (life_analysis, mark_used_regs): Likewise. 6255 * regclass.c (subregs_of_mode): Turn into single bitmap. 6256 (cannot_change-mode_set_regs, invalid_mode_change_p): Update 6257 dealing with subregs_of_mode 6258 * regs.h (subregs_of_mode): Update prototype. 6259 62602003-02-28 Jan Hubicka <jh@suse.cz> 6261 6262 * toplev.c (rest_of_compilation): Rearrange insn splitting 6263 * reg-stack.c (reg_to_stack): Do not split insns. 6264 62652003-03-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 6266 6267 * ggc-common.c (ggc_rlimit_bound): Cast RLIM_INFINITY to avoid 6268 warnings. 6269 62702003-03-02 Stephane Carrez <stcarrez@nerim.fr> 6271 6272 * config/m68hc11/m68hc11.c (m68hc11_override_options): Don't enable 6273 min/max instructions by default as may result in reload errors. 6274 62752003-03-02 Stephane Carrez <stcarrez@nerim.fr> 6276 6277 * config/m68hc11/m68hc11.md ("mulqi3"): Allow address register to 6278 avoid reload problems; define split for it. 6279 62802003-03-02 Stephane Carrez <stcarrez@nerim.fr> 6281 6282 * config/m68hc11/m68hc11.c (m68hc11_shift_operator): New function. 6283 * config/m68hc11/m68hc11-protos.h (m68hc11_shift_operator): Declare. 6284 * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register. 6285 * config/m68hc11/m68hc11.md ("rotrhi3", "rotlhi3"): New patterns for 6286 rotatert and rotate. 6287 ("rotrhi3_const", "rotlhi3_const"): Rename of old 'rotrhi3' insns. 6288 ("*rotrhi3", "*rotlhi3"): New insn pattern for non-const rotatert. 6289 ("*rotrhi3_addr"): New split for shift insns on address register. 6290 ("*lshrhi3", "*ashrhi3", "*ashlhi3_2"): Use new split. 6291 * config/m68hc11/larith.asm (___rotlhi3): New asm function. 6292 (___rotrhi3): Likewise. 6293 * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build them. 6294 62952003-03-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 6296 6297 * fp-bit.h (float_to_usi): Fix condition wrapping prototype. 6298 62992003-03-02 Ashif Harji <asharji@uwaterloo.ca> 6300 6301 * gcc.c (default_compilers): Add -no-integrated-cpp flag to invoke 6302 an external cpp during compilation. 6303 (option_map): Likewise. 6304 * objc/lang-specs.h (default_compilers): Similarly. 6305 * doc/invoke.texi: Document -no-integrated-cpp flag. 6306 63072003-03-01 Jason Thorpe <thorpej@wasabisystems.com> 6308 6309 * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Enable 6310 POSIX thread support by default. 6311 63122003-03-01 Roger Sayle <roger@eyesopen.com> 6313 6314 PR bootstrap/7389. 6315 * basic-block.h (flow_bb_inside_loop_p): Correct prototype. 6316 63172003-02-28 Jason Thorpe <thorpej@wasabisystems.com> 6318 6319 * config/netbsd.h: Update copyright years. 6320 (NETBSD_CPP_SPEC): Define _REENTRANT and _PTHREADS if 6321 -pthread is specified on the command line. 6322 63232003-02-28 Bob Wilson <bob.wilson@acm.org> 6324 6325 Backport following patch: 6326 6327 2003-02-28 Bob Wilson <bob.wilson@acm.org> 6328 * config.gcc (xtensa-*-linux*): Add t-slibgcc-elf-ver to tmake_file. 6329 63302003-02-27 Joel Sherrill <joel@OARcorp.com> 6331 6332 PR 9638/other 6333 * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Ensure the 6334 this constant defaults to 1. 6335 63362003-02-28 Richard Sandiford <rsandifo@redhat.com> 6337 6338 * config/mips/mips.md: Disable the movstrsi define_split. 6339 63402003-02-28 Richard Sandiford <rsandifo@redhat.com> 6341 6342 * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Wrap in 6343 #ifndef __mips16. 6344 63452003-02-27 Geert Bosch <bosch@gnat.com> 6346 6347 * toplev.c (print_version): Add indentation for GGC heuristics and 6348 output after printing version information. 6349 63502003-02-27 James E Wilson <wilson@tuliptree.org> 6351 6352 PR bootstrap/9255 6353 * combine.c (simplify_comparison): Require integral mode when 6354 permuting SUBREG with AND. 6355 63562003-02-27 Steve Ellcey <sje@cup.hp.com> 6357 6358 * config/ia64/hpux.h (STARTFILE_PREFIX_SPEC): Remove. 6359 63602003-02-27 Alan Modra <amodra@bigpond.net.au> 6361 6362 * config/rs6000/rs6000.md: Add TI constant splitter. 6363 63642003-02-26 Jan Hubicka <jh@suse.cz> 6365 6366 * expr.c (emit_group_store): Fix crash when converting single 6367 register into complex register. 6368 63692003-02-26 Michael Matz <matz@suse.de> 6370 6371 * ra-colorize.c (merge_moves): Fix list handling. 6372 63732003-02-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6374 6375 * pa.c (compute_frame_size): Don't assume PREFERRED_STACK_BOUNDARY 6376 is 8 * STACK_BOUNDARY. 6377 * pa.h (PREFERRED_STACK_BOUNDARY): Change to 128 on 64-bit port. 6378 63792003-02-26 Alan Modra <amodra@bigpond.net.au> 6380 6381 PR target/9681 6382 * tlink.c (scan_linker_output): Drop leading '.' from symbol names. 6383 63842003-02-25 Richard Henderson <rth@redhat.com> 6385 6386 * config/i386/i386.c (function_arg): Pass variable sized 6387 structures correctly on the stack. 6388 63892003-02-25 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 6390 6391 PR target/9732 6392 * config/rs6000/rs6000.c (first_reg_to_save): Handle 6393 PIC_OFFSET_TABLE_REGNUM for -fPIC too. 6394 (rs6000_emit_prologue): Likewise. 6395 (rs6000_emit_epilogue): Likewise. 6396 * config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Make 6397 PIC_OFFSET_TABLE_REGNUM a fixed register for -fPIC. 6398 63992003-02-25 Richard Henderson <rth@redhat.com> 6400 6401 * real.c (real_to_integer2): Force overflow result only for 6402 unsigned overflow. 6403 64042003-02-25 Jan Hubicka <jh@suse.cz> 6405 6406 PR target/8343 6407 * m68k.md (umulsidi, mulsidi expanders): Use register operand. 6408 64092003-02-24 Svein E. Seldal <Svein.Seldal@solidas.com> 6410 6411 * config/c4x/c4x.h (ASM_FILE_START): Added support for the c33 6412 processor. 6413 64142003-02-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6415 6416 * config/mips/iris6.h (TARGET_OS_CPP_BUILTINS): Define __c99 for 6417 ISO C99 and C++. 6418 6419 * fixinc/inclhack.def (irix___restrict): Don't change __restrict 6420 for C++ on IRIX 6.5.1[89]. 6421 * fixinc/tests/base/internal/sgimacros.h: New file. 6422 6423 * fixinc/inclhack.def (irix_wcsftime): Use XPG5 variant for C99. 6424 * fixinc/tests/base/internal/wchar_core.h: New file. 6425 6426 * fixinc/inclhack.def (irix_socklen_t): Fix broken IRIX 6.5.1[78] 6427 socklen_t definition. 6428 * fixinc/fixincl.x: Regenerate. 6429 * fixinc/tests/base/sys/socket.h: New file. 6430 Fixes PR libgcj/9652. 6431 64322003-02-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6433 6434 * config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Rename 6435 __EXTERN_PREFIX to __PRAGMA_EXTERN_PREFIX. 6436 * doc/extend.texi (Tru64 Pragmas): Reflect this. 6437 6438 * fixinc/inclhack.def (alpha___extern_prefix): Indicate #pragma 6439 extern_prefix support for Tru64 UNIX V5 <sys/stat.h>. 6440 * fixinc/fixincl.x: Regenerate. 6441 * fixinc/tests/base/sys/stat.h [ALPHA___EXTERN_PREFIX_CHECK]: New 6442 testcase. 6443 Fixes PR c/5059, c/6126, other/9671. 6444 64452003-02-24 Alan Modra <amodra@bigpond.net.au> 6446 6447 PR 9297, PR 9722 6448 * calls.c (store_one_arg): Revert 1999-02-16 change. Revert 6449 2000-12-17 change. Pass EXPAND_STACK_PARM to expand_expr. 6450 * expr.h (enum expand_modifier): Define EXPAND_STACK_PARM. 6451 (enum block_op_methods): Reorder for better store_expr optimization. 6452 * expr.c (store_expr): Test bit 1 of "want_value" for call param 6453 stores, test bit 0 for original want_value meaning. Pass 6454 BLOCK_OP_CALL_PARM to emit_block_move when bit 1 set. Adjust 6455 recursive calls, and calls to expand_param. 6456 (expand_expr): Handle EXPAND_STACK_PARM modifier. When cse 6457 expected, set target to 0 rather than to subtarget. Formatting. 6458 64592003-02-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 6460 6461 * doc/invoke.texi (ggc-min-expand, ggc-min-heapsize): Document 6462 new default behavior. 6463 * ggc-common.c: Include sys/resource.h. 6464 (ggc_rlimit_bound): New function. 6465 (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic): Update 6466 defaults to account for rlimits. 6467 64682003-02-22 Jan Hubicka <jh@suse.cz> 6469 6470 * config/linux.h (TARGET_HAS_F_SETLKW): Define. 6471 * config/alpha/linux.h (TARGET_HAS_F_SETLKW): Likewise 6472 64732003-02-22 Hans-Peter Nilsson <hp@axis.com> 6474 6475 * regmove.c (optimize_reg_copy_1): Do not replace a hard register 6476 in an asm. 6477 64782003-02-22 Jan Hubicka <jh@suse.cz> 6479 6480 * i386.c (builtin_description): Add __builtin_ia32_paddq and 6481 __builtin_ia32_psubq. Fix __builtin_ia32_paddq128 6482 and __builtin_ia32_psubq128. 6483 * i386.h (IX86_BUILTIN_PADDQ, IX86_BUILTIN_PSUBQ): New. 6484 * i386.md (addv*, mmx_ior*, mmx_xoe*, mmx_and*): Add missing '%'. 6485 (mmx_adddi3, mmx_subdi3): New. 6486 * mmintrin.h (_mm_add_si64, _mm_sub_si64): New. 6487 * xmmintrin.h (_mm_movepi64_pi64): New. 6488 (_mm_add_epi64, _mm_sub_epi64): fix. 6489 (_mm_mul_pu16): Rename to... 6490 (_mm_mul_su32): ... this one. 6491 6492 * i386.c (def_builtin): Special case 64bit builtins. 6493 (MASK_SSE164, MASK_SSE264): New constants. 6494 (builtin_description): Add 64bit builtins. 6495 (ix86_init_mmx_sse_builtins): Likewise. 6496 * i386.h (enum ix86_builtins): Likewise. 6497 * i386.md (cvtss2siq, cvttss2siq, cvtsd2siq, cvttsd2siq, cvtsi2sdq, 6498 sse2_movq2dq_rex64, sse2_movsq2q_rex64): New. 6499 (sse2_movq2dq, sse2_movsq2q): Disable for 64bit. 6500 * mmintrin.h (_mm_cvtsi64x_si64, _mm_set_pi64x, _mm_cvtsi64_si64x): New. 6501 * xmmintrin.h (_mm_cvtss_si64x, _mm_cvttss_si64x, _mm_cvtsi64x_ss, 6502 _mm_set_epi64x, _mm_set1_epi64x, _mm_cvtsd_si64x, _mm_cvttsd_si64x, 6503 _mm_cvtsi64x_sd, _mm_cvtsi64x_si128, _mm_cvtsi128_si64x): New. 6504 6505 * builtins.c (expand_builtin_expect): Do not predict 6506 flag_guess_branch_prob is not set. 6507 * c-semantics.c (expand_stmt): Likewise. 6508 * predict.c (predict_insn): Likewise. 6509 * stmt.c (expand_continue_loop): Likewise. 6510 * toplev.c (rest_of_compilation): Do not call 6511 note_prediction_to_br_prob and note_prediction_to_br_prob 6512 when not optimizing. 6513 6514 * basic-block.h (tidy_fallthru_edges): Kill. 6515 * cfgrtl.c (tidy_fallthru_edges): Kill. 6516 * cfgbuild.c (find_basic_blocks): Do not call tidy_fallthru_edges. 6517 * cfgcleanup.c (delete_unreachable_blocks): Likewise. 6518 65192003-02-22 Steven Bosscher <s.bosscher@student.tudelft.nl> 6520 6521 PR other/3782 6522 * toplev.c (process_options): If flag_detailed_statistics is set, 6523 then set time_report as well. 6524 6525 PR c/8828 6526 * jump.c (never_reached_warning): Don't fall through BARRRIER 6527 insns. Update comments to reflect what the function really does. 6528 65292003-02-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 6530 6531 * doc/invoke.texi (ggc-min-expand, ggc-min-heapsize): Update 6532 documentation. 6533 * ggc-common.c: Include params.h 6534 (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic, 6535 init_ggc_heuristics): New functions. 6536 * ggc.h (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic, 6537 init_ggc_heuristics): Prototype. 6538 * toplev.c (print_version): Output GGC heuristics. 6539 (parse_options_and_default_flags): Call init_ggc_heuristics. 6540 65412003-02-21 Jan Hubicka <jh@suse.cz> 6542 6543 * cfgrtl.c (commit_edge_insertions): Call 6544 find_many_sub_basic_block only when some code has been emitted. 6545 (commit_edge_insertions_watch_calls): Bring into sync with 6546 commit_edge_insertions 6547 65482003-02-21 Zack Weinberg <zack@codesourcery.com> 6549 6550 * cpphash.h (struct lexer_state): Add directive_wants_padding. 6551 * cpplib.c (_cpp_handle_directive): Set directive_wants_padding 6552 for directives of type INCL. 6553 (glue_header_name, parse_include): Use get_token_no_padding. 6554 * cppmacro.c (replace_args): If directive_wants_padding, 6555 provide padding tokens. 6556 65572003-02-21 Jan Hubicka <jh@suse.cz> 6558 6559 * cfgrtl.c (commit_one_edge_insertion): Only mark BB for splitting. 6560 (commit_edge_insertions): Call find_many_sub_basic_blocks 6561 6562 * reg-stack.c (convert_regs): Cleax aux for blocks. 6563 65642003-02-21 Glen Nakamura <glen@imodulo.com> 6565 6566 PR optimization/8613 6567 * builtins.c (expand_builtin): Emit postincrements before expanding 6568 builtin functions. 6569 65702003-02-21 Toon Moene <toon@moene.indiv.nluug.nl> 6571 6572 PR fortran/9038 6573 * c-opts.c (sanitize_cpp_opts): Add Fortran front end 6574 options to be ignored. 6575 (c_common_decode_option): Ignore them when preprocessing. 6576 65772003-02-21 Ben Elliston <bje@redhat.com> 6578 6579 PR other/5634 6580 * doc/install.texi (Configuration): Explain using $HOME instead of 6581 the ~ metacharacter when referring to home directories. 6582 65832003-02-20 Richard Earnshaw <rearnsha@arm.com> 6584 6585 * arm.c (arm_reload_in_hi): Ensure that the scratch register does 6586 not overlap the final result register. 6587 65882003-02-20 Josef Zlomek <zlomekj@suse.cz> 6589 6590 * combine.c (distribute_notes): Kill REG_EXEC_COUNT. 6591 * rtl.c (reg_note_name): Likewise. 6592 * rtl.h (enum reg_note): Likewise. 6593 * doc/invoke.texi: Likewise. 6594 * doc/rtl.texi: Likewise. 6595 65962003-01-30 Richard Henderson <rth@redhat.com> 6597 6598 * tree-inline.c (walk_tree): Streamline duplicate hash table lookup. 6599 66002003-02-19 Daniel Jacobowitz <drow@mvista.com> 6601 6602 * expr.c (expand_expr): Use gen_int_mode for the argument 6603 to gen_rtx_MULT. 6604 66052003-02-19 Jan Hubicka <jh@suse.cz> 6606 6607 * i386.md (cosxf2): Fix conditional. 6608 66092003-02-18 Matt Austern <austern@apple.com> 6610 * toplev.c, langhooks.c, langhooks-def.h: Move 6611 write_global_declarations from toplev.c to langhooks.c. 6612 66132003-02-18 Kazu Hirata <kazu@cs.umass.edu> 6614 6615 * config/h8300/h8300.c (general_operand_src): Always check 6616 MODE. 6617 (general_operand_dst): Likewise. 6618 66192003-02-18 Richard Henderson <rth@redhat.com> 6620 6621 * c-common.c (handle_used_attribute): Accept static data too. 6622 66232003-02-18 Jim Wilson <wilson@redhat.com> 6624 6625 * config/ia64/ia64.md (floatdidf2, floatdisf2): Add %, before second 6626 instruction in output template. 6627 (bsp_value): Change output template from string to C code, add %, 6628 before actual instruction. 6629 (flushrs): Mark as not predicable. 6630 66312003-02-18 Kazu Hirata <kazu@cs.umass.edu> 6632 6633 * config/h8300/h8300.md (*zero_extendhisi2_h8300): Fix the 6634 insn length. 6635 (extendqisi2): Likewise. 6636 (*extendhisi2_h8300): Likewise. 6637 66382003-02-18 Matt Austern <austern@apple.com> 6639 6640 * langhooks.h, langhooks-def.h: introduce new langhook, 6641 final_write_globals, with write_global_declarations as default. 6642 * toplev.c: Move invocation of wrapup_global_declarations from 6643 compile_file to new function, write_global_declarations. Change 6644 compile_file to use final_write_globals hook. Change 6645 wrapup_global_declarations so writing to DECL_DEFER_OUTPUT is 6646 conditional. 6647 66482003-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6649 6650 * pa.md: Correct and enhance comment. 6651 66522003-02-16 Kai Henningsen <kaih@khms.westfalen.de> 6653 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 6654 6655 * doc/install.texi (Specific): Fix link for m68k-att-sysv. 6656 (Binaries): Ditto for Sinix/Reliant Unix. 6657 66582003-02-16 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 6659 6660 * config/i386/i386-protos.h (function_arg_pass_by_reference): Declare. 6661 * config/i386/i386.h (FUNCTION_ARG_PASS_BY_REFERENCE): Use it. 6662 * config/i386/i386.c (function_arg_pass_by_reference): New. 6663 (ix86_va_arg): Support arguments passed by reference. 6664 66652003-02-16 Arend Bayer <arend.bayer@web.de> 6666 Richard Henderson <rth@redhat.com> 6667 6668 PR c/8068 6669 * fold-const.c (extract_muldiv_1): Rename from extract_muldiv; 6670 rearrange mult arguments for less recursion. 6671 (extract_muldiv): New. Prevent runaway recursion. 6672 66732003-02-16 Danny Smith <dannysmith@users.sourceforge.net> 6674 6675 * config/i386/cygwin.h (TARGET_SUBTARGET_DEFAULT): Set 6676 MASK_ALIGN_DOUBLE. 6677 66782003-02-15 Adam Nemet <anemet@lnxw.com> 6679 6680 PR opt/2391 6681 * combine.c: Fix spelling in comment. 6682 (cached_nonzero_bits): New function. 6683 (cached_num_sign_bit_copies): New function. 6684 (nonzero_bits_with_known): New macro. 6685 (num_sign_bit_copies_with_known): New macro. 6686 (nonzero_bits1): Rename from nonzero_bits. Add three new 6687 arguments. Change calls from nonzero_bits to 6688 nonzero_bits_with_known. 6689 (num_sign_bit_copies1): Rename from num_sign_bit_copies. Add 6690 three new arguments. Change calls from num_sign_bit_copies to 6691 num_sign_bit_copies_with_known. 6692 (nonzero_bits): New macro. 6693 (num_sign_bit_copies): New macro. 6694 (update_table_tick): Don't traverse identical subexpression more 6695 than once. 6696 (get_last_value_validate): Likewise. 6697 66982003-02-15 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de> 6699 6700 PR optimization/7702 6701 * reload1.c (reload_cse_simplify_set): Honor 6702 CANNOT_CHANGE_MODE_CLASS. 6703 67042003-02-15 Jan Hubicka <jh@suse.cz> 6705 6706 PR optimization/9258, PR fortran/7681 6707 * global.c (struct allocno): Add no_stack_reg. 6708 (global_conflicts): Set it. 6709 (find_reg): Use it. 6710 67112003-02-14 Alexandre Oliva <aoliva@redhat.com> 6712 6713 * config/mn10300/mn10300.c (mn10300_wide_const_load_uses_clr): New 6714 function. 6715 * config/mn10300/mn10300-protos.h: Declare it. 6716 * config/mn10300/mn10300.md (movdi, movdf): Use it to compute 6717 attribute cc of instructions that may use clr. 6718 67192003-02-13 John David Anglin <dave.anglin@nrc-crnc.gc.ca> 6720 6721 * inclhack.def (hpux_long_double): Tighten select and add bypass 6722 regexp. 6723 * fixincl.x: Rebuilt. 6724 67252003-01-30 Richard Henderson <rth@redhat.com> 6726 6727 * ggc-page.c (G.context_depth_allocations): New. 6728 (G.context_depth_collections): New. 6729 (alloc_page): Set G.context_depth_allocations. 6730 (ggc_collect): Set G.context_depth_collections. 6731 (ggc_push_context): Limit to HOST_BITS_PER_LONG contexts. 6732 (ggc_pop_context): Early exit for no allocations or collections. 6733 67342003-01-25 Segher Boessenkool <segher@koffie.nl> 6735 6736 * bitmap.h (BITMAP_WORD): New typedef: fundamental storage 6737 type for bitmaps. Use unsigned long. 6738 (nBITMAP_WORD_BITS): New macro. 6739 (BITMAP_WORD_BITS): New macro. 6740 (rest of file): Use it. 6741 * bitmap.c: Use it. 6742 67432003-02-13 Josef Zlomek <zlomekj@suse.cz> 6744 6745 * cfgcleanup.c (outgoing_edges_match): When there is single outgoing 6746 edge and block ends with a jump insn it must be simple jump. 6747 67482003-02-13 Robert Lipe <robertlipe@usa.net> 6749 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 6750 6751 * doc/install.texi (Specific): Update three SCO-related URLs. 6752 67532003-02-12 Ranjit Mathew <rmathew@hotmail.com> 6754 6755 * doc/tm.texi (MODIFY_JNI_METHOD_CALL): Document. 6756 * config/i386/cygwin.h (MODIFY_JNI_METHOD_CALL): New macro. 6757 67582003-02-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 6759 6760 * doc/install.texi (Specific): Update AVR- and Darwin-related URLs. 6761 67622003-02-11 Eric Botcazou <ebotcazou@libertysurf.fr> 6763 6764 PR c/9100 6765 Backport patch from mainline: 6766 6767 2003-01-12 Mark Mitchell <mark@codesourcery.com> 6768 6769 PR c++/9264 6770 * c-lex.c (c_lex): Set the token value to error_mark_node for 6771 invalid numeric constants. 6772 67732003-02-11 Jan Hubicka <jh@suse.cz> 6774 6775 * i386.md (ahi?v*3): Set third operand type to TImode. 6776 * i386.c (ix86_expand_binop_builtin): Extend operand when needed. 6777 6778 * i386.c (contains_128bit_aligned_vector_p): New function 6779 (ix86_function_arg_boundary): Properly align vector modes. 6780 67812003-02-11 Bob Wilson <bob.wilson@acm.org> 6782 6783 Backport following patch: 6784 6785 2003-02-11 Bob Wilson <bob.wilson@acm.org> 6786 6787 * config/xtensa/xtensa.md (set_frame_ptr): Change rtl to set reg a7. 6788 * config/xtensa/xtensa.c (xtensa_reorg): Search for UNSPECV_SET_FP 6789 as a SET pattern. 6790 67912003-02-11 Jan Hubicka <jh@suse.cz> 6792 6793 * simplify-rtx.c (simplify_subreg): Fix conversion from vector into 6794 integer mode. 6795 6796 * rtl.def (VEC_MERGE, VEC_SELECT, VEC_CONCAT, VEC_DUPLICATE): 6797 Change code so they are arithmetic expressions now. 6798 * simplify-rtx.c (simplify_unary_operation, simplify_binary_operation, 6799 simplify_ternary_operation): Deal with VEC_* expressions. 6800 68012003-02-11 Richard Henderson <rth@redhat.com> 6802 6803 2003-01-15 Richard Henderson <rth@redhat.com> 6804 * config/alpha/alpha.c (find_lo_sum_using_gp): Rename from find_lo_sum; 6805 also check that GP is being used. 6806 (alpha_find_lo_sum_using_gp): New. 6807 (alpha_does_function_need_gp): Use get_attr_usegp. 6808 * config/alpha/alpha-protos.h: Update. 6809 * config/alpha/alpha.md (attr usegp): New. Annotate patterns 6810 as needed. 6811 68122003-02-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6813 6814 * inclhack.def (hpux_long_double, hpux10_ctype_declarations1, 6815 hpux10_ctype_declarations2, hpux_ctype_macros): New hacks. 6816 * fixincl.x: Rebuilt. 6817 * tests/base/stdlib.h: Update. 6818 * tests/base/ctype.h: New file. 6819 68202003-02-11 Janis Johnson <janis187@us.ibm.com> 6821 6822 * config/rs6000/ppc64-fp.c: New file. 6823 * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add ppc64-fp.c. 6824 68252003-02-11 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de> 6826 6827 PR optimization/9651 6828 * rtlanal.c (may_trap_p): Handle FIX. 6829 68302003-02-11 Jan Hubicka <jh@suse.cz> 6831 6832 * predict.c (choose_function_section): Choose sections correctly. 6833 68342003-02-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6835 6836 * reload1.c (first_label_num): New. 6837 (reload): Index offsets_known_at and offsets_at using difference of 6838 label number and first label number. Don't use offset pointers. 6839 (set_label_offsets, set_initial_label_offsets): Likewise. 6840 68412003-02-10 Eric Botcazou <ebotcazou@libertysurf.fr> 6842 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de> 6843 6844 PR c/7741 6845 * c-decl.c (duplicate_decls): Discard the initializer of the 6846 new decl when the types are conflicting. 6847 68482003-02-09 Wolfgang Bangerth <bangerth@ticam.utexas.edu> 6849 6850 * doc/install.texi: Squeeze and streamline section on 6851 testing and regression checking. 6852 68532003-02-07 Jason Thorpe <thorpej@wasabisystems.com> 6854 6855 * config/t-netbsd (USER_H): Revert previous change. 6856 68572003-02-07 Richard Henderson <rth@redhat.com> 6858 6859 PR 9226 6860 * gcse.c (local_cprop_find_used_regs): New. 6861 (local_cprop_pass): Use it. 6862 68632003-02-07 Jan Hubicka <jh@suse.cz> 6864 6865 * i386.md (sse2_nandv2di3): Fix. 6866 6867 * i386.md (movdi_rex64_1): Fix mmx<->int move opcode. 6868 68692003-02-07 Andrey Petrov <petrov@netbsd.org> 6870 6871 * optabs.c (expand_float): Search wider integer modes first. 6872 68732003-02-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6874 6875 * config.gcc (hppa*-*-linux*): Set MASK_NO_SPACE_REGS in 6876 target_cpu_default. 6877 * pa.c (attr_length_call): Add 8 to call length (long indirect PA 1.X) 6878 if not MASK_NO_SPACE_REGS. 6879 (output_call): Adjust return pointer, don't load new space register 6880 into %sr0, and use %sr4 for call if TARGET_NO_SPACE_REGS is true. 6881 (pa_asm_output_mi_thunk): Don't load new space register into %sr0 if 6882 TARGET_NO_SPACE_REGS is true. 6883 * pa.md (return_external_pic): Add TARGET_NO_SPACE_REGS to insn 6884 conditions. 6885 (epilogue): Always use return_internal if TARGET_NO_SPACE_REGS is true. 6886 (interspace_jump): Add new pattern for when TARGET_NO_SPACE_REGS is 6887 true. Use bve when TARGET_64BIT is true. 6888 68892003-02-06 Eric Botcazou <ebotcazou@libertysurf.fr> 6890 Richard Henderson <rth@redhat.com> 6891 6892 PR c/9530 6893 * config/i386/i386.h (FUNCTION_OK_FOR_SIBCALL): Forbid sibcalls 6894 from functions that return a float to functions that don't. 6895 68962003-02-04 Ulrich Weigand <uweigand@de.ibm.com> 6897 6898 * reload.c (find_reloads): Do not use the mode specified in the insn 6899 pattern as reload mode for address operands. Do not generate optional 6900 reloads for operands where a mandatory reload was already pushed. 6901 69022003-02-04 Jan Hubicka <jh@suse.cz> 6903 6904 * i386.md (movti_rex64): Fix constraint. 6905 69062003-02-04 Rodney Brown <rbrown64@csc.com.au> 6907 6908 * config/i386/i386.c (x86_function_profiler): Fix typo in format. 6909 69102003-01-23 Mike Stump <mrs@apple.com> 6911 6912 * regclass.c (init_reg_autoinc): New function. 6913 (regclass): Move initialization of forbidden_inc_dec_class from 6914 here... 6915 (init_regs): to here. Avoids reinitialization for each function, 6916 saving compilation time. 6917 69182003-02-04 Phil Edwards <pme@gcc.gnu.org> 6919 6920 * doc/install.texi (*-*-linux-gnu): Mention glibc requirements 6921 for recent libstdc++. Remove formatting cruft. 6922 69232003-02-04 Joseph S. Myers <jsm@polyomino.org.uk> 6924 6925 * doc/gcc.texi, doc/gccint.texi, doc/gcov.texi, 6926 doc/include/fdl.texi, doc/invoke.texi: Update to GFDL 1.2. 6927 * doc/install.texi: Update copyright dates. Update to GFDL 1.2. 6928 69292003-02-03 Bob Wilson <bob.wilson@acm.org> 6930 6931 * config/xtensa/xtensa.c (order_regs_for_local_alloc): Order the 6932 coprocessor registers before floating-point registers. 6933 * config/xtensa/xtensa.h (REG_ALLOC_ORDER): Adjust register numbers 6934 to account for a previously removed register. 6935 (SPEC_REG_FIRST, SPEC_REG_LAST, SPEC_REG_NUM, COUNT_REGISTER_REGNUM): 6936 Delete unused macros. 6937 69382003-02-03 Jan Hubicka <jh@suse.cz> 6939 6940 * i386.c (ix86_expand_store_builtin): Always force op1 to register. 6941 (mov*_internal): Fix predicates; require one of operands to not be memory. 6942 (SSE?MMX move expanders): Fix predicates; force one of operands to register. 6943 (SSE/MMX push patterns): Reorganize; fix x86-64 code generation. 6944 (movups/movupd/movdqu patterns): Force one of operands to not be memory. 6945 69462003-02-03 Jan Hubicka <jh@suse.cz> 6947 6948 * regclass.c (cannot_change_mode_set_regs): Correct argument order. 6949 69502003-02-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 6951 6952 * mips/_tilib.c: Don't include tsystem.h. Don't define 6953 LIBGCC2_WORDS_BIG_ENDIAN. 6954 69552003-02-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6956 6957 * doc/install.texi (hppa*-hp-hpux11*): Update installation notes. 6958 69592003-02-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 6960 6961 * pa-protos.h (attr_length_millicode_call): Remove second argument. 6962 (attr_length_indirect_call, attr_length_indirect_call, 6963 attr_length_save_restore_dltp): New prototypes. 6964 * pa.c (attr_length_millicode_call): Remove second argument. Check 6965 INSN_ADDRESSES_SET_P in distance calculation. 6966 (output_millicode_call): Check INSN_ADDRESSES_SET_P before using 6967 INSN_ADDRESSES. 6968 (attr_length_call): Check INSN_ADDRESSES_SET_P in distance calculation. 6969 (output_call): Check INSN_ADDRESSES_SET_P before using INSN_ADDRESSES. 6970 Call attr_length_call directly. 6971 (attr_length_indirect_call, output_indirect_call, 6972 attr_length_save_restore_dltp): New functions. 6973 * pa.md (attr_length_millicode_call): Drop second argument from all 6974 patterns. 6975 (return_internal_pic): Delete. 6976 (return_external_pic): Remove use of PIC register and pic operand and 6977 flag checks. 6978 (epilogue): Use return_internal for both normal and pic code. 6979 (call, call_value): Emit new 32-bit pic patterns for symref and 6980 indirect calls. Remove uses for arg pointer and pic register. 6981 (call_symref_pic, call_symref_pic_post_reload, call_reg_pic, 6982 call_reg_pic_post_reload, call_val_symref_pic, 6983 call_val_symref_pic_post_reload, call_val_reg_pic, 6984 call_val_reg_pic_post_reload): New pre and post reload insn patterns. 6985 Implement define_split and define_peephole2 patterns for pre reload 6986 patterns. 6987 (call_symref_64bit, call_internal_reg_64bit, call_value_symref_64bit, 6988 call_value_internal_reg_64bit): Shorten names. 6989 (all call patterns): Explicitly indicate registers used and clobbered. 6990 Use attr_length_indirect_call and attr_length_save_restore_dltp for 6991 attribute length calculation. Move code generation for indirect calls 6992 to output_indirect_call. 6993 (sibcall, sibcall_value): Don't restore PIC register. 6994 (exception_receiver, builtin_setjmp_receiver): Add blockage after PIC 6995 register retore. 6996 69972003-02-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 6998 6999 * doc/install.texi (Testing): Simplify and compress instructions 7000 concerning Dejagnu. 7001 70022003-02-01 Daniel Jacobowitz <drow@mvista.com> 7003 7004 * dwarf2out.c (gen_type_die): Check for typedefs before calling 7005 for TYPE_MAIN_VARIANT. 7006 70072003-02-01 Ulrich Weigand <uweigand@de.ibm.com> 7008 7009 * reload.c: Revert 2003-01-31 change. 7010 70112003-02-01 Jan Hubicka <jh@suse.cz> 7012 7013 PR c/9506 7014 * i386.c (override_options): Use DEFAULT_PCC_STRUCT_RETURN. 7015 70162003-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 7017 7018 * pa.c (pa_output_function_prologue, pa_output_function_epilogue): Move 7019 updating of total_code_bytes from prologue to epilogue. 7020 70212003-01-31 Ulrich Weigand <uweigand@de.ibm.com> 7022 7023 * regclass.c (record_reg_classes): Fix incorrect argument 7024 to EXTRA_ADDRESS_CONSTRAINT macro. 7025 70262003-01-31 Ulrich Weigand <uweigand@de.ibm.com> 7027 7028 * reload.c (find_reloads): Do not use the mode specified in the insn 7029 pattern as reload mode for address operands. Do not generate optional 7030 reloads for operands where a mandatory reload was already pushed. 7031 Generate optional reloads only in the final pass though find_reloads. 7032 (have_replacement_p): New function. 7033 70342003-01-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 7035 7036 * doc/install.texi (Testing): Remove a reference to our obsolete 7037 /testresults web pages and strip redundant information concerning 7038 test results. 7039 (Binaries): Refer to Microsoft Windows instead of listing all 7040 possible variants. 7041 70422003-02-01 Jan Hubicka <jh@suse.cz> 7043 7044 * loop.c (emit_prefetch_instructions): Do conversion at right place in 7045 RTL chain. 7046 7047 * combine.c (simplify_set): Reverse order of ragumetns to 7048 REG_CANNOT_CHANGE_MODE_P 7049 * df.c (df_def_record_1): Likewise. 7050 * recog.c (register_operand): Likewise. 7051 * simplify-rtx.c (simplify_subreg): Likewise. 7052 * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): Update use of 7053 CANNOT_CHANGE_MODE_CLASS. 7054 * regclass.c (cannot_change_mode_set_regs, invalid_mode_change_p): 7055 Likewise. 7056 * reload.c (push_reload): Likewise. 7057 * alpha.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7058 * ia64.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7059 * mips.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7060 * mips-protos.h (mips_cannot_change_mode_class): Update prototype. 7061 * mips.c (mips_cannot_change_mode_class): Update. 7062 * pa64-regs.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7063 * rs6000.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7064 * s390.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7065 * sh.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7066 * sh-protos.h (sh_cannot_change_mode_class): Update prototype. 7067 * sh.c (sh_cannot_change_mode_class): Update. 7068 * i386.h (CANNOT_CHANGE_MODE_CLASS): New. 7069 * tm.texi (CANNOT_CHANGE_MODE_CLASS): Update documentation. 7070 70712003-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 7072 7073 * pa32-regs.h (REGNO_REG_CLASS, REG_CLASS_FROM_LETTER): Delete 7074 duplicated code. 7075 70762003-01-30 Richard Earnshaw <rearnsha@arm.com> 7077 7078 * arm.c (arm_compute_initial_elimination_offset): If optimizing for 7079 size, the link register is always saved if any other register is 7080 saved. 7081 70822003-01-30 Jerry Quinn <jlquinn@optonline.net> 7083 7084 * gcc/doc/invoke.texi (Optimization Options): Group together 7085 optional and experimental flags. Move trapv and bounds-check 7086 out of this section. Group floating point flags together. 7087 (Code Gen Options): Move trapv and bounds-check to here. 7088 70892003-01-30 Jerry Quinn <jlquinn@optonline.net> 7090 7091 * gcc/doc/invoke.texi (Optimization Options): List -O levels 7092 for each optimization flag. 7093 70942003-01-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 7095 7096 PR target/9316 7097 * config/rs6000/rtems.h: Add CPP_OS_DEFAULT_SPEC. 7098 * config/rs6000/sysv4.h: Add CPP_OS_RTEMS_SPEC. 7099 * config/rs6000/t-rtems: New file. multilib variants to match OS. 7100 * config.gcc (powerpc-*-rtems*): Use rs6000/t-rtems instead of 7101 rs6000/t-ppcgas so we get the desired multilibs. 7102 71032003-01-30 Alexandre Oliva <aoliva@redhat.com> 7104 7105 * config/fp-bit.h (__make_dp): Declare if TMODES. 7106 71072003-01-29 Steve Ellcey <sje@cup.hp.com> 7108 7109 * config/ia64/ia64.c (ia64_rwreloc_section_type_flags): New. 7110 * config/ia64/hpux.h (TARGET_SECTION_TYPE_FLAGS): New. 7111 71122003-01-29 Steve Ellcey <sje@cup.hp.com> 7113 7114 * config/ia64/ia64.c (ia64_rwreloc_select_rtx_section): Rename 7115 from ia64_aix_select_rtx_section. 7116 (ia64_rwreloc_select_section): Simlarly; use default*_1 function 7117 instead of saving and restoring flag_pic. 7118 (ia64_rwreloc_unique_section): Similarly. 7119 * config/ia64/aix.h (TARGET_ASM_SELECT_SECTION, 7120 TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): Update. 7121 * config/ia64/hpux.h (TARGET_ASM_SELECT_SECTION, 7122 TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): New. 7123 71242003-01-29 Joel Sherrill <joel@OARcorp.com> 7125 7126 PR bootstrap/9296 7127 * gthr-rtems.h: Define __GTHREAD_MUTEX_INIT. Apparently no code 7128 depended on it being defined until now. 7129 71302003-01-29 Joel Sherrill <joel@OARcorp.com> 7131 7132 PR target/9295 7133 * config/mips/rtems.h: Predefine __USE_INIT_FINI__ so generic 7134 RTEMS code knows which C++ initialization style the toolset 7135 configuration is using. 7136 71372003-01-29 Joel Sherrill <joel@OARcorp.com> 7138 7139 PR bootstrap/9293 7140 * config/m68k/t-crtstuff: Replace spaces with tabs, add 7141 $(MULTILIB_CFLAGS) as compiler option and multilib crtbegin/end.o. 7142 71432003-01-29 Joel Sherrill <joel@OARcorp.com> 7144 7145 PR bootstrap/9292 7146 * config.gcc (hppa1.1-rtems): Did not include t-rtems nor enable 7147 RTEMS threads. 7148 * config/pa/rtems.h (LIB_SPEC): Use -N when linking. 7149 71502003-01-25 Andrew Haley <aph@redhat.com> 7151 7152 * tree-inline.c (walk_tree): Add CHAR_TYPE. 7153 71542003-01-28 Christian Cornelssen <ccorn@cs.tu-berlin.de> 7155 7156 * doc/install.texi: Add documentation for installation into 7157 tooldirs and with DESTDIR. 7158 71592003-01-28 Andreas Schwab <schwab@suse.de> 7160 7161 * config/m68k/m68k.md (tablejump+2): Don't sign extend an address 7162 register. 7163 * config/m68k/apollo68.h (ASM_RETURN_CASE_JUMP): Likewise. 7164 * config/m68k/coff.h (ASM_RETURN_CASE_JUMP): Likewise. 7165 * config/m68k/linux.h (ASM_RETURN_CASE_JUMP): Likewise. 7166 * config/m68k/m68kelf.h (ASM_RETURN_CASE_JUMP): Likewise. 7167 * config/m68k/mot3300.h (ASM_RETURN_CASE_JUMP): Likewise. 7168 * config/m68k/netbsd-elf.h (ASM_RETURN_CASE_JUMP): Likewise. 7169 * config/m68k/pbb.h (ASM_RETURN_CASE_JUMP): Likewise. 7170 71712003-01-28 David Edelsohn <edelsohn@gnu.org> 7172 7173 * config/rs6000/rs6000.md (movti_string): Remove clobber. 7174 * config/rs6000/rs6000.c (rs6000_emit_move, TImode): Explicitly 7175 generate PARALLEL with clobber for TARGET_POWER. 7176 71772003-01-28 Richard Henderson <rth@redhat.com> 7178 7179 * ifcvt.c (noce_process_if_block): Re-add check vs X being changed 7180 in no-else-block case. Add commentary. 7181 71822003-01-28 Alexandre Oliva <aoliva@redhat.com> 7183 7184 * config/mips/mips.h (UNITS_PER_HWFPVALUE): Renamed from... 7185 (UNITS_PER_FPVALUE): Defined as the width of a long double, or 7186 zero if no hardware floating point. 7187 (LONG_DUBLE_TYPE_SIZE): Set to 128 on N32 and N64. 7188 (MAX_FIXED_MODE_SIZE): Define to LONG_DOUBLE_TYPE_SIZE. 7189 (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define. 7190 (BIGGEST_ALIGNMENT): Same as LONG_DOUBLE_TYPE_SIZE. 7191 (FUNCTION_VALUE_REGNO_P): Set for FP_RETURN+2 on N32 and N64. 7192 * config/mips/iris6.h (MIPS_TFMODE_FORMAT): Define. 7193 * config/mips/mips.c (override_options): Use it. 7194 (mips_arg_info): Pass TFmode values in even FP registers on N32 7195 and N64. 7196 (mips_setup_incoming_varargs): Use UNITS_PER_HWFPVALUE. 7197 (mips_va_start): Adjust alignment of ARG_POINTER_REGNUM. 7198 (mips_va_arg): Use UNITS_PER_HWFPVALUE. Impose additional 7199 even-register-like alignment to 128-bit arguments. 7200 (save_restore_insns): Use UNITS_PER_HWFPVALUE. 7201 (mips_function_value): Likewise. Return TFmode in $f0 and $f2 7202 on N32 or N64. 7203 * config/mips/_tilib.c (__negti2, __ashlti3, __lshrti3): New. 7204 * config/mips/t-iris6 (LIB2FUNCS_EXTRA): Add _tilib.c. 7205 (TPBIT): Set to tp-bit.c. 7206 (tp-bit.c): Create out of fp-bit.c. 7207 72082003-01-27 Gabriel Dos_Reis <gdosreis@sophia.inria.fr> 7209 7210 * c-parse.in: Remove '%expect 32' directive when in objc mode. 7211 72122003-01-27 Josef Zlomek <zlomekj@suse.cz> 7213 7214 * gcse.c (constprop_register): Check NEXT_INSN (insn) != NULL. 7215 72162003-01-27 Richard Earnshaw <rearnsha@arm.com> 7217 7218 PR optimization/9090 7219 * function.c (purge_addressof_1): After pushing an addressed register 7220 onto the stack, simplify the result. 7221 72222003-01-27 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 7223 7224 * doc/extend.texi: Fix typo. 7225 72262003-01-27 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 7227 7228 * doc/cppopts.texi: Fix typo. 7229 * doc/objc.texi: Likewise. 7230 * doc/passes.texi: Likewise. 7231 72322003-01-27 Alexandre Oliva <aoliva@redhat.com> 7233 7234 * real.c (ibm_extended_format): Add 53 to minimum exponent. 7235 (encode_ibm_extended): Adjust. 7236 72372003-01-26 Kazu Hirata <kazu@cs.umass.edu> 7238 7239 * doc/gccint.texi: Update the copyright. 7240 72412003-01-26 Kazu Hirata <kazu@cs.umass.edu> 7242 7243 * doc/cpp.texi: Fix typos. 7244 * doc/extend.texi: Likewise. 7245 * doc/gty.texi: Likewise. 7246 * doc/install.texi: Likewise. 7247 * doc/passes.texi: Likewise. 7248 * doc/rtl.texi: Likewise. 7249 72502003-01-26 Christian Cornelssen <ccorn@cs.tu-berlin.de> 7251 7252 * Makefile.in (ORDINARY_FLAGS_TO_PASS): Also pass DESTDIR. 7253 (install-cpp, installdirs, install-common) 7254 (install-driver, install-info, install-man) 7255 (install-headers, install-include-dir, install-headers-tar) 7256 (install-headers-cpio, install-headers-cp, install-mkheaders) 7257 (install-collect2, uninstall): Prepend $(DESTDIR) to 7258 destination paths in all (un)installation commands. 7259 (install-driver): Rewrite $(LN) commands to support DESTDIR 7260 with "ln" as well as with "ln -s". 7261 (installdirs): Simply use mkinstalldirs. 7262 (install-libgcc, install-multilib): Also pass DESTDIR. 7263 * mklibgcc.in: Prepend $(DESTDIR) to $(libsubdir) in the 7264 installation destination variable ldir. 7265 * config/alpha/t-osf4 (SHLIB_INSTALL): Prepend $$(DESTDIR) 7266 to $$(slibdir) in the installation commands. 7267 * config/arm/t-netbsd (SHLIB_INSTALL): Likewise. 7268 * config/ia64/t-hpux (SHLIB_INSTALL): Likewise. 7269 * config/mips/t-iris5-6 (SHLIB_INSTALL): Likewise. 7270 * config/pa/t-hpux-shlib (SHLIB_INSTALL): Likewise. 7271 * config/rs6000/t-aix43 (SHLIB_INSTALL): Likewise. 7272 * config/rs6000/t-aix52 (SHLIB_INSTALL): Likewise. 7273 * config/t-slibgcc-elf-ver (SHLIB_INSTALL): Likewise. 7274 * config/t-slibgcc-sld (SHLIB_INSTALL): Likewise. 7275 * config/arc/t-arc (install-multilib-arc): Prepend $(DESTDIR) to 7276 $(libsubdir) in the installation commands. 7277 72782003-01-26 Alexandre Oliva <aoliva@redhat.com> 7279 7280 * fp-bit.h: Define macros for TFmode floating-point constants 7281 in IBM-extended TFmode types. 7282 (TMODES): Define if __LDBL_MANT_DIG__ has the newly-supported 7283 widths. 7284 * config/fp-bit.c (pack_d, unpack_d): Support IBM-extended 7285 TFmode type. 7286 7287 * config/fp-bit.h: Define macros for TFmode floating-point 7288 constants in IEEE quad TFmode type. Declare functions according 7289 to L_ macros. 7290 (TMODES): Define if __LDBL_MANT_DIG__ is 113. 7291 (TFtype, TItype, UTItype): Define if TMODES is defined. 7292 (MAX_UDI_INT, MAX_DI_INT, BITS_PER_DI): Likewise. 7293 (F_T_BITOFF, D_T_BITOFF): Define. 7294 (IMPLICIT_1, IMPLICIT_2): Cast constants to types that are 7295 guaranteed to be wide enough. 7296 * config/fp-bit.c: Check for L_ macros for tf functions. 7297 (__thenan_tf): New. 7298 (nan): Adjust. 7299 (pack_d, unpack_d): Support IEEE 854 quad type. 7300 (_fpmul_parts): Support TFmode. Compute exponent adjustment 7301 from FRAC_NBITS, FRAC_BITS and NGARDS. 7302 (usi_to_float): Cast constants to be shifted to fractype 7303 instead of assuming long long is wide enough. 7304 (sf_to_tf, df_to_tf, __make_tp, tf_to_df, tf_to_sf): New. 7305 7306 * Makefile.in (FPBIT_FUNCS): Added _sf_to_tf. 7307 (DBBIT_FUNCS): Added _df_to_tf. 7308 (TPBIT_FUNCS): New. 7309 (libgcc.mk): Pass TPBIT and TPBIT_FUNCS down. 7310 (LIBGCC_DEPS): Added TPBIT. 7311 * mklibgcc.in: Support TPBIT and TPBIT_FUNCS. 7312 7313 * optabs.c (expand_binop) <add, sub>: Return xtarget if we haven't 7314 been able to move the result to target. 7315 7316 * expr.c (emit_group_store): Initialize dst with CONST0_RTX 7317 for the appropriate mode. 7318 7319 * calls.c (emit_library_call_value_1): Handle return values 7320 in a PARALLEL. 7321 7322 * rtl.c (get_mode_alignment): Moved to... 7323 * stor-layout.c: ... here. 7324 7325 * print-rtl.c (print_rtx): Don't print MEM details in 7326 GENERATOR_FILEs. 7327 73282003-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz> 7329 7330 * df.c (df_uses_record): Handle CC0. 7331 73322003-01-25 Jan Hubicka <jh@suse.cz> 7333 Eric Botcazou <ebotcazou@libertysurf.fr> 7334 7335 PR opt/8492 7336 * gcse.c (one_cprop_pass): Delete unreachable blocks. 7337 73382003-01-25 Ulrich Weigand <uweigand@de.ibm.com> 7339 7340 * reload.c (maybe_memory_address_p): New function. 7341 (find_reloads_address): Use it instead of memory_address_p. 7342 73432003-01-25 Kaz Kojima <kkojima@gcc.gnu.org> 7344 7345 * final.c (shorten_branches): Align the address of code label 7346 when computing initial lengths and addresses. 7347 73482003-01-25 Richard Henderson <rth@redhat.com> 7349 7350 2002-02-19 Robert Lipe <robertlipe@usa.net> 7351 * config/i386/t-sco5gas: (CRTSTUFF_T_CFLAGS_S): Delete -mcoff. 7352 73532003-01-23 Andreas Schwab <schwab@suse.de> 7354 7355 * config/ia64/crtend.asm [HAVE_INITFINI_ARRAY]: Make 7356 __do_global_ctors_aux hidden global and don't put it in 7357 .init_array. 7358 * config/ia64/crtbegin.asm [HAVE_INITFINI_ARRAY]: Put it here 7359 instead so that it comes first. 7360 73612003-01-25 Michael Hayes <m.hayes@elec.canterbury.ac.nz> 7362 7363 * config/c4x/c4x.h (ASM_SPEC): Fix for new gas format. 7364 73652003-01-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 7366 7367 * calls.c (fix_unsafe_tree): Prototype. 7368 * loop.c (loop_invariant_p): Avoid signed/unsigned warning. 7369 73702003-01-24 Richard Henderson <rth@redhat.com> 7371 7372 PR optimization/4382 7373 * tree-inline.c (find_builtin_longjmp_call_1): New. 7374 (find_builtin_longjmp_call): New. 7375 (inlinable_function_p): Use it. 7376 73772003-01-24 Ulrich Weigand <uweigand@de.ibm.com> 7378 7379 * configure.in (HAVE_AS_TLS): Add s390-*-* and s390x-*-* cases. 7380 * configure: Regenerate. 7381 7382 * config/s390/s390-protos.h (tls_symbolic_operand): Add prototype. 7383 (tls_symbolic_reference_mentioned_p): Add prototype. 7384 (s390_tls_get_offset): Add prototype. 7385 (emit_pic_move): Remove prototype, replace by ... 7386 (emit_symbolic_move): .. this new prototype. 7387 7388 * config/s390/s390.c (TARGET_HAVE_TLS): Conditionally define. 7389 (tls_model_chars): New global variable. 7390 (s390_encode_section_info): Encode TLS model. 7391 Use targetm.binds_local_p to check for local symbols. 7392 (s390_strip_name_encoding): New function. 7393 (TARGET_STRIP_NAME_ENCODING): Define. 7394 7395 (get_thread_pointer): New function. 7396 (legitimize_tls_address): New function. 7397 (legitimize_address): Call it. 7398 (emit_pic_move): Remove, replace by ... 7399 (emit_symbolic_move): ... this new function. 7400 7401 (larl_operand): Handle TLS operands. 7402 (legitimate_constant_p): Likewise. 7403 (s390_decompose_address): Likewise. 7404 (s390_cannot_force_const_mem): New function. 7405 (TARGET_CANNOT_FORCE_CONST_MEM): Define. 7406 7407 (s390_output_symbolic_const): Handle TLS unspecs. 7408 (print_operand): New code 'J'. 7409 (machine_function): Add struct member 'some_ld_name'. 7410 (get_some_local_dynamic_name, get_some_local_dynamic_name_1): New. 7411 7412 (enum s390_builtin): New type. 7413 (code_for_builtin_64, code_for_builtin_31): New global variables. 7414 (s390_init_builtins, s390_expand_builtin): New functions. 7415 (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Define. 7416 7417 * config/s390/s390.h (TLS_SYMBOLIC_CONST): New macro. 7418 (ASM_OUTPUT_LABELREF): Define. 7419 (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Handle TLS constants. 7420 7421 * config/s390/s390.md: Define TLS UNSPEC constants. 7422 ("movdi", "movsi"): Handle TLS operands. 7423 ("get_tp_64", "get_tp_31", "set_tp_64", "set_tp_31"): New insns. 7424 ("*tls_load_64", "*tls_load_31"): New insns. 7425 ("call_value_tls", "call_value_tls_exp"): New expanders. 7426 ("brasl_tls", "bras_tls", "basr_tls_64", "basr_tls_31", 7427 "bas_tls_64", "bas_tls_31"): New insns. 7428 74292003-01-24 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 7430 7431 * doc/passes.texi: Fix typo. 74322003-02-01 Jan Hubicka <jh@suse.cz> 7433 7434 * loop.c (emit_prefetch_instructions): Do conversion at right place in 7435 RTL chain. 7436 7437 * combine.c (simplify_set): Reverse order of ragumetns to 7438 REG_CANNOT_CHANGE_MODE_P 7439 * df.c (df_def_record_1): Likewise. 7440 * recog.c (register_operand): Likewise. 7441 * simplify-rtx.c (simplify_subreg): Likewise. 7442 * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): Update use of 7443 CANNOT_CHANGE_MODE_CLASS. 7444 * regclass.c (cannot_change_mode_set_regs, invalid_mode_change_p): 7445 Likewise. 7446 * reload.c (push_reload): Likewise. 7447 * alpha.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7448 * ia64.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7449 * mips.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7450 * mips-protos.h (mips_cannot_change_mode_class): Update prototype. 7451 * mips.c (mips_cannot_change_mode_class): Update. 7452 * pa64-regs.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7453 * rs6000.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7454 * s390.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7455 * sh.h (CANNOT_CHANGE_MODE_CLASS): Update definition. 7456 * sh-protos.h (sh_cannot_change_mode_class): Update prototype. 7457 * sh.c (sh_cannot_change_mode_class): Update. 7458 * i386.h (CANNOT_CHANGE_MODE_CLASS): New. 7459 * tm.texi (CANNOT_CHANGE_MODE_CLASS): Update documentation. 7460 74612003-01-24 Gabriel Dos Reis <gdr@integrable-solutions.net> 7462 7463 * timevar.def (TV_NAME_LOOKUP, TV_OVERLOAD, 7464 TV_TEMPLATE_INSTANTIATION): New timevar_id eumerations. 7465 * timevar.h (POP_TIMEVAR_AND_RETURN): New macro. 7466 * timevar.c (timevar_pop): Be verbose when aborting. Include 7467 "toplev.h". 7468 74692003-01-24 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 7470 7471 * doc/bugreport.texi: Use @command instead of @code for commands. 7472 * doc/collect2.texi: Likewise. 7473 * doc/headerdirs.texi: Likewise. 7474 * doc/invoke.texi: Likewise. 7475 * doc/standards.texi: Likewise. 7476 * doc/tm.texi: Likewise. 7477 * doc/trouble.texi: Likewise. 7478 74792003-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 7480 7481 PR java/6748 7482 * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Don't destroy 7483 regs->nip. Fix rt_sigreturn frame layout. Add support for newer 7484 kernels. 7485 74862003-01-23 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 7487 7488 PR other/7341 7489 * invoke.texi (ftest-coverage): Fix broken cross-reference. 7490 Change @code to @command for gcov command. 7491 7492 * gcc.texi: Adjust title of gcov section. 7493 Adjust copyright. 7494 * gcov.texi: Likewise. 7495 74962003-01-23 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 7497 7498 PR other/7448 7499 * doc/passes.texi (fssa-ccp): Remove misplaced line. 7500 75012003-01-22 Ulrich Weigand <uweigand@de.ibm.com> 7502 7503 * config/s390/s390.h (HARD_REGNO_MODE_OK): Fix warning regression 7504 introduced by last change. 7505 75062003-01-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 7507 7508 * configure.in: Make --disable-checking the default. 7509 * configure: Regenerate. 7510 75112003-01-22 Ulrich Weigand <uweigand@de.ibm.com> 7512 7513 * config/s390/s390-protos.h (preferred_la_operand_p): 7514 Remove second parameter. 7515 * config/s390/s390.c (preferred_la_operand_p): Likewise. 7516 * config/s390/s390.h (FRAME_REGNO_P, FRAME_REG_P): New macros. 7517 (HARD_REGNO_MODE_OK): Use FRAME_REGNO_P. 7518 * config/s390/s390.md ("*la_cc_64", "*la_cc_31", splitters): Remove. 7519 Add peepholes to transform ADD to LOAD ADDRESS. 7520 75212003-01-20 Jan Hubicka <jh@suse.cz> 7522 7523 * i386.md (SSE cmov splitter): Handle memory operand in operand 5. 7524 75252003-01-21 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de> 7526 7527 PR opt/7507 7528 * calls.c (fix_unsafe_tree): Split out from ... 7529 (expand_call): ... here. Use it on the function address too. 7530 75312003-01-20 Richard Henderson <rth@redhat.com> 7532 7533 PR opt/7154 7534 * stmt.c (expand_asm_operands): Validize memory operands. 7535 75362003-01-20 Richard Henderson <rth@redhat.com> 7537 7538 PR opt/8848 7539 * ifcvt.c (noce_process_if_block): Correct arguments to 7540 modified_between_p for no-else-block case. 7541 75422003-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 7543 7544 * ifcvt.c (noce_emit_store_flag): Don't emit store flag if mode of x 7545 is not a scalar int mode. 7546 75472003-01-20 Kazu Hirata <kazu@cs.umass.edu> 7548 7549 * config/h8300/h8300.c (notice_update_cc): Don't assume that 7550 recog_data.operands[0] is always associated with cc0. 7551 75522003-01-19 Stephane Carrez <stcarrez@nerim.fr> 7553 7554 * config/m68hc11/m68hc11.c (stack_push_word, stack_pop_word, 7555 z_reg, z_reg_qi): Declare static and GTY(). 7556 (da_reg): Remove. 7557 (create_regs_rtx): Don't create da_reg. 7558 ("gt-m68hc11.h"): Include for GTY roots. 7559 (m68hc11_autoinc_compatible_p): Remove. 7560 (autoinc_mode): Declare prototype. 7561 (m68hc11_make_autoinc_notes): Likewise. 7562 * config/m68hc11/m68hc11.h (ix_reg, iy_reg, d_reg): Declare extern 7563 and GTY() here. 7564 (m68hc11_compare_op0, m68hc11_compare_op1): Likewise. 7565 (m68hc11_soft_tmp_reg): Likewise. 7566 * config/m68hc11/m68hc11-protos.h: Remove above declarations. 7567 75682003-01-18 Roger Sayle <roger@eyesopen.com> 7569 7570 * config/pa/pa.md (muldi3): Avoid invalid sharing of SUBREG RTXs. 7571 75722003-01-10 Geoffrey Keating <geoffk@apple.com> 7573 7574 * varasm.c (struct constant_descriptor_rtx): Remove unused 7575 `label' field. 7576 7577 * ggc-page.c (ggc_collect): Avoid overflow computing 7578 min_expand. 7579 75802002-12-20 Geoffrey Keating <geoffk@apple.com> 7581 7582 * integrate.c (output_inline_function): Don't hold private 7583 pointers to 'struct function' over GC calls. 7584 75852003-01-17 Alexandre Oliva <aoliva@redhat.com> 7586 7587 * config/mips/mips.h: Don't use #elif. Reported by Kaveh 7588 R. Ghazi. 7589 75902003-01-16 Kaz Kojima <kkojima@gcc.gnu.org> 7591 7592 * config/sh/sh.c (sh_initialize_trampoline): Emit rotrdi3_mextr 7593 instead of rotldi3_mextr. 7594 75952003-01-16 Stephane Carrez <stcarrez@nerim.fr> 7596 7597 * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix handling 7598 68HC12 pre/post inc/dec side effects. 7599 76002003-01-16 Stephane Carrez <stcarrez@nerim.fr> 7601 7602 * config/m68hc11/m68hc11.h (MASK_M6812): Define. 7603 76042003-01-16 Stephane Carrez <stcarrez@nerim.fr> 7605 7606 * config/m68hs11/m68hc11.c (expand_prologue): Use push/pop to 7607 allocate 4-bytes of locals on 68HC11. 7608 (expand_epilogue): Likewise. 7609 (m68hc11_memory_move_cost): Increase cost of HI/QI soft registers. 7610 76112003-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca> 7612 7613 * som.h (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY, 7614 ASM_WEAKEN_LABEL, GTHREAD_USE_WEAK): Define. 7615 * pa.h (TARGET_SOM_SDEF): Define. 7616 * pa-hpux11.h (TARGET_SOM_SDEF): Define. 7617 76182003-01-15 Stephane Carrez <stcarrez@nerim.fr> 7619 7620 * config/m68hc11/m68hc11.h (ASM_SPEC): Handle -m68hcs12; Pass -mshort 7621 and -mshort-double to the assembler to specify the ABI. 7622 (LINK_SPEC): Likewise. 7623 (CPP_SPEC): Pass HCS12 specific define. 7624 (MASK_M68S12): New define. 7625 (TARGET_M68S12): Likewise. 7626 (TARGET_SWITCHES): New options -m68hcs12 and -m68S12. 7627 (TARGET_VERSION): Update. 7628 * config/m68hc11/m68hc12.h (CPP_SPEC): Pass HCS12 specific define. 7629 (LINK_SPEC): Update. 7630 (ASM_SPEC): Update. 7631 * config/m68hc11/m68hc11.c (m68hc11_asm_file_start): Update. 7632 * doc/invoke.texi (M68hc1x Options): Document -m68hcs12. 7633 76342003-01-15 John David Anglin <dave.anglin@nrc.gc.ca> 7635 7636 * gengtype-lex.l (malloc, realloc): Move defines after include of 7637 system.h. 7638 76392003-01-15 Stephane Carrez <stcarrez@nerim.fr> 7640 7641 * config/m68hc11/m68hc11.md ("return"): Use emit_jump_insn to emit 7642 the return code. 7643 76442003-01-15 Josef Zlomek <zlomekj@suse.cz> 7645 7646 * cfganal.c (set_edge_can_fallthru_flag): Clear the EDGE_CAN_FALLTHRU 7647 flag before setting it. 7648 76492003-01-15 Josef Zlomek <zlomekj@suse.cz> 7650 7651 Segher Boessenkool <segher@koffie.nl> 7652 7653 * predict.c (real_inv_br_prob_base): New variable. 7654 (propagate_freq): Use multiply by reciprocal instead of 7655 division. Don't divide by 1.0 at all. 7656 (estimate_bb_frequencies): Similar. 7657 76582003-01-15 Alexandre Oliva <aoliva@redhat.com> 7659 7660 * configure.in (libgcc_visibility): Force disabled on IRIX 6 too. 7661 * configure: Rebuilt. 7662 7663 * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Define so as 7664 to set $gp before the call. 7665 76662003-01-10 Andrew Haley <aph@redhat.com> 7667 7668 * config/i386/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Rename 7669 registers to be in correct order. Add rip. 7670 76712003-01-14 Denis Chertykov <denisc@overta.ru> 7672 7673 * config/ip2k/ip2k.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove. 7674 (VALID_MACHINE_TYPE_ATTRIBUTE): Remove. 7675 7676 * config/ip2k/ip2k.c (ip2k_attribute_table): New table of 7677 attributes. 7678 (TARGET_ATTRIBUTE_TABLE): New macro. 7679 (valid_machine_type_attribute): Remove. 7680 (valid_machine_decl_attribute): Remove. 7681 (ip2k_handle_progmem_attribute): New function. 7682 (ip2k_handle_fndecl_attribute): New function. 7683 76842003-01-14 Eric Botcazou <ebotcazou@libertysurf.fr> 7685 7686 PR target/8870, PR target/9195 7687 7688 Backport from mainline: 7689 7690 2003-01-10 Richard Henderson <rth@redhat.com> 7691 7692 * combine.c (make_compound_operation): Use SCALAR_INT_MODE_P, 7693 not INTEGRAL_MODE_P when widening extensions. 7694 76952003-01-13 Alexandre Oliva <aoliva@redhat.com> 7696 7697 * aclocal.m4 (gcc_AC_PROG_GNAT): Don't try to prepend 7698 ${ac_tool_prefix} to ADAC or CC. Protect them from word 7699 splitting. 7700 * configure: Rebuilt. 7701 77022003-01-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 7703 7704 * unwind-dw2-fde.h (last_fde): Mark parameter with __attribute__ 7705 ((__unused__)). 7706 77072003-01-12 Alan Modra <amodra@bigpond.net.au> 7708 7709 * expr.c (expand_expr <RDIV_EXPR>): Correct recursive call args. 7710 77112003-01-11 Jan Hubicka <jh@suse.cz> 7712 7713 PR target/9068 7714 * i386.c (output_fp_compare): Fix typo 7715 77162003-01-10 Josef Zlomek <zlomekj@suse.cz> 7717 7718 * jump.c (next_nonnote_insn_in_loop): New function. 7719 (copy_loop_headers): Use next_nonnote_insn_in_loop instead of 7720 next_nonnote_insn. 7721 (duplicate_loop_exit_test). Likewise. 7722 77232003-01-08 Jan Hubicka <jh@suse.cz> 7724 7725 PR target/8213 7726 * i386.c (ix86_expand_int_movcc): Fix RTL sharing problem. 7727 77282003-01-09 Kazu Hirata <kazu@cs.umass.edu> 7729 7730 * config/h8300/h8300.md (*extzv_1_r_h8300): Correct the insn 7731 length. 7732 (*extzv_1_r_h8300hs): Likewise. 7733 (*extzv_1_r_inv_h8300): Likewise. 7734 (*extzv_1_r_inv_h8300hs): Likewise. 7735 77362003-01-09 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz> 7737 7738 * Makefile.in (optabs.o): Add dependency on basic-block.h. 7739 * basic-block.h (control_flow_insn_p): Fuction was exported. 7740 * cfgbuild.c (control_flow_insn_p): Fuction was made non-static. 7741 * optabs.c (emit_libcall_block): Emit REG_LIBCALL and REG_RETVAL 7742 notes only when the region is contained in a single basic block. 7743 77442003-01-09 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz> 7745 7746 * Makefile.in (PARTITION_H): New. 7747 (BASIC_BLOCK_H): Added hard-reg-set.h and $(PARTITION_H). 7748 * basic-block.h: Include hard-reg-set.h. 7749 77502003-01-09 Eric Botcazou <ebotcazou@libertysurf.fr> 7751 7752 PR inline-asm/8832 7753 * tree.h (expand_asm): New prototype. 7754 * stmt.c (expand_asm): Set the MEM_VOLATILE_P flag if instructed 7755 to do so. 7756 * c-semantics (genrtl_asm_stmt): Pass the RID_VOLATILE qualifier 7757 down to expand_asm. 7758 * c-typeck.c (simple_asm_stmt): Set the RID_VOLATILE qualifier. 7759 * rtlanal.c (volatile_insn_p) [ASM_INPUT]: Test the MEM_VOLATILE_P flag. 7760 (volatile_refs_p) [ASM_INPUT]: Likewise. 7761 (side_effects_p) [ASM_INPUT]: Likewise. 7762 77632003-01-09 Eric Botcazou <ebotcazou@libertysurf.fr> 7764 7765 PR c/8032 7766 * c-typeck.c (process_init_element) [RECORD_TYPE]: For 7767 an empty element, do not advance the pointer to unfilled 7768 fields if there are pending initializers. 7769 77702003-01-09 Kaz Kojima <kkojima@gcc.gnu.org> 7771 7772 * config/sh/sh.h (CASE_VECTOR_MODE): Use SImode for a 7773 non-optimizing compile. 7774 (ASM_OUTPUT_ADDR_VEC_ELT): Use .long for a non-optimizing 7775 compile. 7776 77772003-01-09 Andreas Jaeger <aj@suse.de> 7778 7779 * unwind-dw2-fde.h (last_fde): Revert last patch. 7780 77812003-01-08 Danny Smith <dannysmith@users.sourceforge.net> 7782 7783 PR optimization/8750 7784 * config/i386/i386.c (ix86_expand_prologue): Don't allow 7785 scheduling pass to move insns across __alloca call. 7786 77872003-01-08 Jeff Sturm <jsturm@one-point.com> 7788 7789 PR target/9210 7790 * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): 7791 Set SYMBOL_REF_FLAG on local data sym_ref. 7792 77932003-01-08 Jan Hubicka <jh@suse.cz> 7794 7795 PR target/8322 7796 * i386.c (ix86_init_mmx_sse_builtins): Constify arguments of loads. 7797 * xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts. 7798 7799 PR target/7782 7800 * reload1.c (delete_output_reload): Avoid repeated attempts 7801 to delete insn. 7802 7803 * cselib.c (cselib_current_insn_in_libcall): New static variable. 7804 (new_elt_loc_list, cselib_process_insn, cselib_init): Keep track on whether 7805 we are inside libcall. 7806 * cselib.h (elt_loc_list): Add in_libcall. 7807 * gcse.c (do_local_cprop): Do not copy propagate using insns 7808 in libcalls. 7809 78102003-01-07 Janis Johnson <janis187@us.ibm.com> 7811 7812 PR other/8947 7813 * doc/invoke.texi (-malign-double): Explain that the option breaks 7814 binary compatibility. 7815 78162003-01-07 Richard Henderson <rth@redhat.com> 7817 7818 * alias.c (find_base_value): Only use new_reg_base_value shortcut 7819 if the register is set once. 7820 78212003-01-07 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de> 7822 7823 * config/i386/i386.c (ix86_init_mmx_sse_builtins): 7824 __builtin_ia32_ldmxcsr and __builtin_ia32_stmxcsr are SSE, not MXX. 7825 * config/i386/i386.md (ldmxcsr, stmxcsr): SSE, not MMX. 7826 78272003-01-07 Benjamin Kosnik <bkoz@redhat.com> 7828 Sunil Davasam <sunil.k.davasam@intel.com> 7829 7830 PR libstdc++/9076 7831 * unwind-dw2.c (execute_cfa_program): DW_CFA_undefined, 7832 DW_CFA_same_value, read next and ignore. 7833 78342003-01-07 Richard Henderson <rth@redhat.com> 7835 7836 * cfganal.c (flow_call_edges_add): Don't crash on noreturn call. 7837 78382003-01-06 Aldy Hernandez <aldyh@redhat.com> 7839 7840 Segher Boessenkool <segher@koffie.nl> 7841 7842 * config/rs6000/rs6000.c (rs6000_reg_names): Add missing registers. 7843 (alt_reg_names): Ditto, fix formatting. 7844 * config/rs6000/rs6000.h (DEBUG_REGISTER_NAMES): Fix formatting. 7845 78462003-01-06 Bruce Korb <bkorb@gnu.org> 7847 7848 * fixinc/fixfixes.c(wrap_fix): the wrapper guard must be a function 7849 of *both* the file name and the fix name. 7850 78512003-01-06 Richard Henderson <rth@redhat.com> 7852 7853 * config/alpha/alpha.c (alpha_encode_section_info): Adjust symbol_str 7854 properly when changing "local-ness". 7855 * config/alpha/alpha.md (movdi_er_high_g): Allow all symbols. 7856 78572003-01-05 Andreas Jaeger <aj@suse.de> 7858 7859 * unwind-dw2-fde.h (last_fde): Add unused attribute for obj. 7860 78612003-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca> 7862 7863 * pa64-hpux.h (JCR_SECTION_NAME): Define. 7864 (PA_INIT_FRAME_DUMMY_ASM_OP): Check EH_FRAME_SECTION_NAME instead of 7865 USE_EH_FRAME_REGISTRY when defining. 7866 78672003-01-04 John David Anglin <dave.anglin@nrc.ca> 7868 7869 * config.gcc (hppa*64*-*-hpux11*): Define extra_parts. Don't use 7870 collect2. 7871 * pa-hpux11.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Undefine. 7872 (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Define. 7873 * pa64-hpux.h (HP_INIT_ARRAY_SECTION_ASM_OP, 7874 GNU_INIT_ARRAY_SECTION_ASM_OP, HP_FINI_ARRAY_SECTION_ASM_OP, 7875 GNU_FINI_ARRAY_SECTION_ASM_OP): Define. 7876 (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Define when not using 7877 elfos.h. 7878 (EH_FRAME_IN_DATA_SECTION): Delete define. 7879 (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Undefine. 7880 (STARTFILE_SPEC): Use crtbegin.o. 7881 (ENDFILE_SPEC): Use crtend.o. 7882 (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION, 7883 SUPPORTS_INIT_PRIORITY, PA_CXA_FINALIZE_STUB, PA_INIT_FINI_HACK, 7884 PA_INIT_FRAME_DUMMY_ASM_OP, PA_JV_REGISTERCLASSES_STUB, 7885 DTOR_LIST_BEGIN): Define. 7886 * pa.c (TARGET_ASM_CONSTRUCTOR): Define. 7887 (pa_asm_out_constructor, pa_asm_out_destructor): New functions. 7888 * som.h (SUPPORTS_INIT_PRIORITY): Delete define. 7889 78902003-01-02 Eric Christopher <echristo@redhat.com> 7891 7892 * config/mips/mips.md (movdf_internal2): Fix constraints. 7893 78942003-01-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 7895 7896 * doc/install.texi (Configuration): Fix markup for reference to 7897 gcc/config.gcc. 7898 78992003-01-02 Kazu Hirata <kazu@cs.umass.edu> 7900 7901 * config/h8300/h8300.c (stack_pointer_operand): New. 7902 (const_int_gt_2_operand): Likewise. 7903 (const_int_ge_8_operand): Likewise. 7904 * config/h8300/h8300.md (a splitter): Likewise. 7905 (a peephole2): Likewise. 7906 * config/h8300/h8300-protos.h: Add prototypes for the new 7907 functions above. 7908 79092003-01-02 Neil Booth <neil@daikokuya.co.uk> 7910 7911 * gccbug.in: Update for new categories. 7912 79132002-12-31 Tom Tromey <tromey@redhat.com> 7914 7915 * doc/install.texi (Testing): Fixed typo. 7916 79172002-12-31 Jerry Quinn <jlquinn@optonline.net> 7918 7919 * gcc/doc/invoke.texi (Optimization Options): Clean up -O flag 7920 descriptions. 7921 79222002-12-31 Jerry Quinn <jlquinn@optonline.net> 7923 7924 * gcc/doc/invoke.texi (Optimization Options): List the options 7925 enabled by each -O flag. 7926 79272002-12-31 David Edelsohn <edelsohn@gnu.org> 7928 7929 * config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define. 7930 79312002-12-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 7932 7933 * doc/install.texi (Configuration): Explicitly refer 7934 gcc/config.gcc for a list of cpu models. 7935 79362002-12-30 Joseph S. Myers <jsm@polyomino.org.uk> 7937 7938 * doc/gcc.texi, doc/gccint.texi: Update last modification dates. 7939 79402002-12-30 Tom Tromey <tromey@redhat.com> 7941 7942 * doc/install.texi (Testing): Mention Jacks. 7943 79442002-12-30 Joseph S. Myers <jsm@polyomino.org.uk> 7945 7946 * doc/service.texi: Uncomment and update FAQ link. 7947 79482002-12-28 Joseph S. Myers <jsm@polyomino.org.uk> 7949 7950 * doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi: 7951 Use @copying. 7952 79532002-12-28 Joseph S. Myers <jsm@polyomino.org.uk> 7954 7955 * configure.in: Increase makeinfo version requirement to 4.[2-9]. 7956 * configure: Regenerate. 7957 * doc/install.texi: Update Texinfo version requirement. 7958 79592002-12-27 Joseph S. Myers <jsm@polyomino.org.uk> 7960 7961 * doc/include/texinfo.tex: Update to version 2002-12-26.16. 7962 79632002-12-26 Joseph S. Myers <jsm@polyomino.org.uk> 7964 7965 * doc/standards.texi, doc/invoke.texi: Point to 3.3 version of 7966 c99status.html. 7967 79682002-12-26 Kazu Hirata <kazu@cs.umass.edu> 7969 7970 * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab. 7971 79722002-12-23 Larin Hennessy <larin@science.oregonstate.edu> 7973 7974 * doc/install.texi: Remove i386-*-isc, i860-*-bsd, 7975 m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries. 7976 * doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex, 7977 DG/UX entries. 7978 * doc/md.texi: Remove AMD 29K entries. 7979 * doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS 7980 1.38.1, NewsOS, RT PC, WE32K entries. 7981 79822002-12-23 Aldy Hernandez <aldyh@redhat.com> 7983 7984 PR/8763 7985 * config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector. 7986 (altivec_vspltisw_v4sf): Name pattern. 7987 (altivec_vslw_v4sf): New pattern. 7988 79892002-12-23 Joseph S. Myers <jsm@polyomino.org.uk> 7990 7991 * doc/include/gcc-common.texi: Clear DEVELOPMENT. 7992 79932002-12-23 David Edelsohn <edelsohn@gnu.org> 7994 7995 PR middle-end/8784 7996 * expr.c (expand_assignment): Apply special treatment to 7997 ARRAY_TYPE. 7998 79992002-12-21 Kazu Hirata <kazu@cs.umass.edu> 8000 8001 * config/h8300/h8300.md (zero_extendqisi2): Correct the 8002 length. 8003 80042002-12-19 Devang Patel <dpatel@apple.com> 8005 8006 * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add support for -dynamic. 8007 (CPP_SPEC): Define __STATIC__ and __DYNAMIC__ depending on -dynamic. 8008 (LINK_SPEC): Pass -dynamic to linker. 8009 * config/rs6000/darwin.h: Reject conflicting -static and -dynamic. 8010 80112002-12-19 Kazu Hirata <kazu@cs.umass.edu> 8012 8013 * config/h8300/h8300.md (pushqi_h8300): Don't push the stack 8014 pointer. 8015 (pushqi_h8300hs): Likewise. 8016 (pushhi_h8300): Likewise. 8017 (pushhi_h8300hs): Likewise. 8018 80192002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr> 8020 8021 PR optimization/8988 8022 * loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning 8023 the biv when eliminating. 8024 80252002-12-19 Aldy Hernandez <aldyh@redhat.com> 8026 8027 PR 8553 8028 * config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered 8029 registers. 8030 ("absv16qi2"): Same. 8031 ("absv4si2"): Same. 8032 ("absv4sf2"): Same. 8033 ("altivec_abss_v16qi"): Same. 8034 ("altivec_abss_v8hi"): Same. 8035 ("altivec_abss_v4si"): Same. 8036 80372002-12-19 Ulrich Weigand <uweigand@de.ibm.com> 8038 8039 * config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly", 8040 "*tstqiCCT", "*tstqiCCT_cconly"): New insns. 8041 80422002-12-18 Aldy Hernandez <aldyh@redhat.com> 8043 8044 * config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in 8045 macro. 8046 (vec_cmplt C++ functions): Reverse arguments. 8047 80482002-12-17 Kazu Hirata <kazu@cs.umass.edu> 8049 8050 * doc/c-tree.texi: Restore deliberate spelling mistakes. 8051 80522002-12-17 Kazu Hirata <kazu@cs.umass.edu> 8053 8054 * doc/c-tree.texi: Fix typos and follow spelling conventions. 8055 * doc/cpp.texi: Likewise. 8056 * doc/extend.texi: Likewise. 8057 * doc/gty.texi: Likewise. 8058 * doc/install.texi: Likewise. 8059 * doc/invoke.texi: Likewise. 8060 * doc/md.texi: Likewise. 8061 * doc/passes.texi: Likewise. 8062 * doc/rtl.texi: Likewise. 8063 * doc/sourcebuild.texi: Likewise. 8064 * doc/tm.texi: Likewise. 8065 80662002-12-17 Jerry Quinn <jlquinn@optonline.net> 8067 8068 * doc/invoke.texi: Minor spelling and grammar fixes. 8069 80702002-12-16 Mark Mitchell <mark@codesourcery.com> 8071 8072 * version.c (version_string): Mark as prerelease. 8073 80742002-12-13 John David Anglin <dave@hiauly1.hia.nrc.ca> 8075 8076 * pa.c (output_millicode_call): Correct typo. 8077 (output_call): Likewise. 8078 80792002-12-13 Alexandre Oliva <aoliva@redhat.com> 8080 8081 * config/mn10300/mn10300.c (print_operand) <case N>: Check 8082 operand's range. Print value directly, without aid from 8083 output_address. 8084 <case U>: New. 8085 <case S>: Make sure argument to fprintf has the right type. 8086 * config/mn10300/mn10300.h (OK_FOR_T): New macro. 8087 (EXTRA_CONSTRAINT): Adjust. 8088 * config/mn10300/mn10300.md: Add new all-QImode pattern for 8089 bclr. Use %U for immediate operands of bset and bclr. 8090 (iorqi3): New expand, with insns for AM33 and mn10300. 8091 80922002-12-13 J"orn Rennecke <joern.rennecke@superh.com> 8093 8094 * sh.c (sh_register_operand): New function. 8095 (prepare_move_operands): Use it. 8096 * sh.h (PREDICATE_CODES): Add entry for sh_register_operand. 8097 * sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0. 8098 (movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise. 8099 (movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise. 8100 (movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise. 8101 (movv2si_i): Likewise. 8102 81032002-12-13 Jim Wilson <wilson@redhat.com> 8104 8105 * doc/extend.texi (Complex Numbers): Update info on debug info. 8106 81072002-12-13 Kazu Hirata <kazu@cs.umass.edu> 8108 8109 * config/h8300/h8300.md (addhi3_h8300): Remove the last 8110 alternative. 8111 81122002-12-12 Devang Patel <dpatel@apple.com> 8113 8114 * doc/invoke.texi: Document Darwin linker options, -bundle 8115 -bind_at_load, -all_load and -arch_errors_fatal 8116 81172002-12-12 Jim Wilson <wilson@redhat.com> 8118 8119 * dbxout.c (dbxout_fptype_value): New. 8120 (dbxout_type, case COMPLEX_TYPE): Call it. Use 'R' instead of 'r'. 8121 81222002-12-12 Kazu Hirata <kazu@cs.umass.edu> 8123 8124 * c-decl.c: Fix a comment typo. 8125 * cfg.c: Likewise. 8126 * cfgcleanup.c: Likewise. 8127 * cfglayout.c: Likewise. 8128 * cfgrtl.c: Likewise. 8129 * c-typeck.c: Likewise. 8130 * dominance.c: Likewise. 8131 * dwarf2asm.c: Likewise. 8132 * dwarfout.c: Likewise. 8133 * expmed.c: Likewise. 8134 * expr.c: Likewise. 8135 * final.c: Likewise. 8136 * flow.c: Likewise. 8137 * function.c: Likewise. 8138 * gcc.c: Likewise. 8139 * genautomata.c: Likewise. 8140 * integrate.c: Likewise. 8141 * loop.c: Likewise. 8142 * loop.h: Likewise. 8143 * output.h: Likewise. 8144 * profile.c: Likewise. 8145 * ra.h: Likewise. 8146 * reload1.c: Likewise. 8147 * reload.c: Likewise. 8148 * sched-rgn.c: Likewise. 8149 * stmt.c: Likewise. 8150 * tree.h: Likewise. 8151 * vmsdbgout.c: Likewise. 8152 81532002-12-12 Kazu Hirata <kazu@cs.umass.edu> 8154 8155 * config/h8300/h8300.md: Add a new peephole2. 8156 81572002-12-12 Kazu Hirata <kazu@cs.umass.edu> 8158 8159 * config/h8300/h8300.md (a peephole2): Accept a constant 8160 that's accepted by CONST_OK_FOR_J. 8161 81622002-12-12 Kazu Hirata <kazu@cs.umass.edu> 8163 8164 * config/h8300/h8300.h (CONST_OK_FOR_J): New. 8165 (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J. 8166 * config/h8300/h8300.md (*addhi_h8300): Add a new alternative. 8167 (*addhi_h8300hs): Likewise. 8168 81692002-12-12 J"orn Rennecke <joern.rennecke@superh.com> 8170 8171 * sh.c (reg_class_from_letter): No longer const. Add 'e' entry. 8172 (sh_register_move_cost): Add clause for SImode fp-fp moves. 8173 Increase cost for moves involving multiple general purpose registers. 8174 * sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to 8175 TARGET_FMOVD. 8176 (HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose 8177 registers, and SImode in fp registers, for ! TARGET_SHMEDIA. 8178 (enum reg_class reg_class_from_letter): No longer const. 8179 (SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG / 8180 REGCLASS_HAS_GENERAL_REG. 8181 Handle SImode moves from/to fp registers. 8182 ! TARGET_SHMEDIA && TARGET_FMOVD. 8183 (SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG. 8184 * sh.md (movsi_ie): Add alternatives to move from / to fp regisyters. 8185 81862002-12-12 Andreas Schwab <schwab@suse.de> 8187 8188 * config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last 8189 change and some warnings. 8190 81912002-12-12 Kazu Hirata <kazu@cs.umass.edu> 8192 8193 * doc/md.texi (pushm): Fix a typo. 8194 81952002-12-12 Alexandre Oliva <aoliva@redhat.com> 8196 8197 * config/mips/mips.c (mips_output_conditional_branch): Support 8198 PIC-safe out-of-range branch and branch-likely. 8199 * config/mips/mips.md (attr length): PIC-safe out-of-range 8200 branches are longer. 8201 ("jump"): Support PIC-safe out-of-range-for-branch jumps. Remove 8202 unused code to support indirect jumps. 8203 82042002-12-11 John David Anglin <dave@hiauly1.hia.nrc.ca> 8205 8206 * pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits. 8207 (MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of 8208 BIGGEST_ALIGNMENT. 8209 (PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY. 8210 (FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD. 8211 82122002-12-11 Kazu Hirata <kazu@cs.umass.edu> 8213 8214 * doc/invoke.texi: Correct dump file names. 8215 82162002-12-09 Steve Ellcey <sje@cup.hp.com> 8217 8218 * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped 8219 name to globalize_label or assemble_name. 8220 82212002-12-11 J"orn Rennecke <joern.rennecke@superh.com> 8222 8223 * sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS 8224 if not TARGET_SHMEDIA. 8225 82262002-12-11 J"orn Rennecke <joern.rennecke@superh.com> 8227 8228 * sh.h (REG_CLASS_HAS_FP_REG): New. 8229 (REGISTER_MOVE_COST) Use it. Put body into a function and 8230 move it into: 8231 * sh.c (sh_register_move_cost). 8232 * sh-protos.h (sh_register_move_cost): Declare. 8233 8234 * sh.c (sh_expand_builtin): Abort for unexpected nop values. 8235 (sh_adjust_cost): Always return a value. 8236 82372002-12-11 J"orn Rennecke <joern.rennecke@superh.com> 8238 8239 * sh.h (REG_CLASS_HAS_GENERAL_REG): New. 8240 (REGISTER_MOVE_COST): Use it. 8241 82422002-12-11 Richard Henderson <rth@redhat.com> 8243 8244 * tree.h (MODULE_LOCAL_P): Kill. 8245 * varasm.c (default_binds_local_p_1): Use decl_visibility instead. 8246 82472002-12-11 Kazu Hirata <kazu@cs.umass.edu> 8248 8249 * config/h8300/h8300.md (two define_peephole2): New. 8250 82512002-12-11 Kazu Hirata <kazu@cs.umass.edu> 8252 8253 * config/h8300/h8300.h (CONST_OK_FOR_J): Remove. 8254 (CONST_OK_FOR_K): Likewise. 8255 (CONST_OK_FOR_M): Likewise. 8256 (CONST_OK_FOR_LETTER_P): Do not use the above macros. 8257 82582002-12-11 Neil Booth <neil@daikokuya.co.uk> 8259 8260 * c-common.c (builtin_define_type_max): Handle unsigned 8261 types too. 8262 82632002-12-10 Janis Johnson <janis187@us.ibm.com> 8264 8265 PR other/8882 8266 * doc/tm.texi (PUSH_ARGS): Remove misplaced line. 8267 82682002-12-10 Devang Patel <dpatel@appple.com> 8269 8270 * config/darwin.h(LINK_SPEC): Add darwin specific linker options. 8271 * doc/invoke.texi: Add new "Darwin Options" section. 8272 82732002-12-10 Jim Wilson <wilson@redhat.com> 8274 8275 * rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in 8276 memory. 8277 82782002-12-10 Andrew Haley <aph@redhat.com> 8279 8280 * cse.c (cse_insn): Don't cse past a basic block boundary. 8281 82822002-12-10 Jakub Jelinek <jakub@redhat.com> 8283 8284 * config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if 8285 -shared. 8286 * config/alpha/linux-elf.h (LIB_SPEC): Likewise. 8287 * config/alpha/linux.h (LIB_SPEC): Likewise. 8288 * config/arm/linux-elf.h (LIB_SPEC): Likewise. 8289 * config/pa/pa-linux.h (LIB_SPEC): Likewise. 8290 * config/sparc/linux.h (LIB_SPEC): Likewise. 8291 * config/sparc/linux64.h (LIB_SPEC): Likewise. 8292 82932002-12-09 Larin Hennessy <larin@science.oregonstate.edu> 8294 8295 * doc/invoke.texi: Document UltraSparc III option. 8296 82972002-12-09 Richard Henderson <rth@redhat.com> 8298 8299 * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define 8300 __tune_pentium2__ and __tune_pentium3__ as necessary. 8301 83022002-12-09 Richard Henderson <rth@redhat.com> 8303 8304 * target.h (gcc_target): Add cannot_force_const_mem. 8305 * target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New. 8306 (TARGET_INITIALIZER): Add it. 8307 * varasm.c (force_const_mem): Fail if cannot_force_const_mem. 8308 * expr.c (emit_move_insn): Be prepared for force_const_mem to fail. 8309 * reload1.c (reload): Likewise. 8310 * hooks.c (hook_bool_rtx_false): New. 8311 * hooks.h: Declare it. 8312 8313 * config/i386/i386.c (ix86_cannot_force_const_mem): New. 8314 (TARGET_CANNOT_FORCE_CONST_MEM): New. 8315 (ix86_expand_move): Remove de-const-pooling hack. 8316 83172002-12-09 Jan Hubicka <jh@suse.cz> 8318 8319 * toplev.c (dump_file): Fix order to match reality. 8320 83212002-12-08 Geoffrey Keating <geoffk@apple.com> 8322 8323 * config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv. 8324 (store_multiple): Likewise. 8325 83262002-12-09 John David Anglin <dave@hiauly1.hia.nrc.ca> 8327 8328 * pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize 8329 function pointers in page 0. 8330 83312002-12-09 Steve Ellcey <sje@cup.hp.com> 8332 8333 * config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove 8334 definition 8335 (MEMBER_TYPE_FORCES_BLK): Move. 8336 * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass 8337 aggregate arguments. 8338 (ia64_function_value): Use PARALLEL to return aggregate values. 8339 83402002-12-09 Steve Ellcey <sje@cup.hp.com> 8341 8342 * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition. 8343 * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition. 8344 * calls.c (store_unaligned_arguments_into_pseudos) Remove 8345 FUNCTION_ARG_REG_LITTLE_ENDIAN. 8346 * stmt.c (expand_return): Ditto. 8347 * expr.c (move_block_from_reg): Ditto. 8348 (copy_blkmode_from_reg): Ditto. 8349 * expmed.c (store_bit_field): Ditto. 8350 83512002-12-09 Svein E. Seldal <Svein.Seldal@solidas.com> 8352 8353 * config.gcc: Added tic4x-* target as an alias to c4x-* 8354 83552002-12-08 Jan Hubicka <jh@suse.cz> 8356 8357 * i386.c (ix86_expand_int_movcc): Use force_operand instead of 8358 constructing insn directly. 8359 83602002-12-07 Kazu Hirata <kazu@cs.umass.edu> 8361 8362 * config/h8300/h8300.md (*iorhi_shift_8): New. 8363 83642002-12-06 Bernd Schmidt <bernds@redhat.com> 8365 8366 * doc/invoke.texi: Document FRV port options. 8367 * doc/md.texi: Document FRV register classes. 8368 83692002-12-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 8370 8371 * doc/install.texi (Configuration): Improve description of cases 8372 where `make distclean` may fail; clarify --with-gnu-as; fix grammar. 8373 83742002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com> 8375 8376 * gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has 8377 FPU. 8378 (push): Generate push_fpscr. 8379 (pop): Generate pop_fpscr. 8380 * gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr". 8381 (fpu_switch): Add alternative to push fpscr. Enable for TARGET_SH3E. 8382 83832002-12-06 J"orn Rennecke <joern.rennecke@superh.com> 8384 8385 * sh.c (dump_table): DImode pool constants need only 32 bit alignment. 8386 DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE. 8387 83882002-12-06 J"orn Rennecke <joern.rennecke@superh.com> 8389 8390 * sh.md (movdi_i): Name. Remove inappropriate comment. 8391 83922002-12-06 J"orn Rennecke <joern.rennecke@superh.com> 8393 Merged from basic improvements branch (excerpt): 8394 8395 2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org> 8396 * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG. 8397 83982002-12-06 Jakub Jelinek <jakub@redhat.com> 8399 8400 * expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place. 8401 84022002-12-05 John David Anglin <dave@hiauly1.hia.nrc.ca> 8403 8404 * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define. 8405 * pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here. 8406 84072002-12-05 Dale Johannesen <dalej@apple.com> 8408 8409 * tree.c (unsafe_for_reeval): Consider callee child of CALL_EXPR. 8410 84112002-12-05 Danny Smith <dannysmith@users.sourceforge.net> 8412 8413 * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with 8414 PROFILE_HOOK. 8415 * config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef. 8416 84172002-12-05 Aldy Hernandez <aldyh@redhat.com> 8418 8419 * config/rs6000/spe.h (__ev_mwlufi): Remove. 8420 (__ev_mwlufia): Remove. 8421 (__ev_mwlumfaaw): Remove. 8422 (__ev_mwlusfaaw): Remove. 8423 (__ev_mwlumfanw): Remove. 8424 (__ev_mwlusfanw): Remove. 8425 84262002-12-05 Kazu Hirata <kazu@cs.umass.edu> 8427 8428 * config/h8300/h8300.md (*andorsi3_shift_8): New. 8429 84302002-12-05 Kazu Hirata <kazu@cs.umass.edu> 8431 8432 * config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and 8433 lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300. 8434 (get_shift_alg): Return optimal assembly instructions for the 8435 shifts mentioned above. 8436 84372002-12-04 Kazu Hirata <kazu@cs.umass.edu> 8438 8439 * config/h8300/h8300.c (h8300_init_once): Do not use loop to 8440 implement ashiftrt:HI by 13 bits on H8S. 8441 84422002-12-04 John David Anglin <dave@hiauly1.hia.nrc.ca> 8443 8444 * pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function. 8445 * pa.md (canonicalize_funcptr_for_compare): Output library call to 8446 canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32. 8447 * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL, 8448 CTOR_LIST_BEGIN): New defines. 8449 * pa/t-linux (LIB2FUNCS_EXTRA): New define. 8450 (fptr.c): Add make rules. 8451 84522002-12-04 Geoffrey Keating <geoffk@apple.com> 8453 8454 * combine.c (combine_simplify_rtx): Add new canonicalizations. 8455 * doc/md.texi (Insn Canonicalizations): Document new 8456 canonicalizations for multiply/add combinations. 8457 * config/rs6000/rs6000.md: Add and modify floating add/multiply 8458 patterns to ensure they're used whenever they can be. 8459 84602002-12-04 Kazu Hirata <kazu@cs.umass.edu> 8461 8462 * config/h8300/h8300.c: Update the comments related to shifts. 8463 84642002-12-04 Chris Demetriou <cgd@broadcom.com> 8465 8466 * config/mips/mips.md (get_fnaddr): Correct length attribute. 8467 84682002-12-04 Kazu Hirata <kazu@cs.umass.edu> 8469 8470 * config/h8300/h8300.md (*extzv_8_8): New. 8471 (*extzv_8_16): Likewise. 8472 84732002-12-04 Jason Merrill <jason@redhat.com> 8474 8475 PR c++/8461, c++/8625 8476 * integrate.c (copy_decl_for_inlining): Handle explicit invisible 8477 references. 8478 * tree-inline.c (initialize_inlined_parameters): Likewise. 8479 8480 * tree.c (variably_modified_type_p): Just return an error_mark_node. 8481 84822002-12-04 Chris Demetriou <cgd@broadcom.com> 8483 8484 * config/mips/mips.md (get_fnaddr): Avoid placing an "la" 8485 macro instruction in a branch delay slot, to avoid assembler 8486 warnings. 8487 84882002-12-04 Eric Botcazou <ebotcazou@libertysurf.fr> 8489 8490 PR c/7622 8491 * c-semantics (genrtl_scope_stmt): Do not output inlined 8492 nested functions that contain no code. 8493 84942002-12-04 Jan Hubicka <jh@suse.cz> 8495 8496 * cfgrtl.c (force_nonfallthru_and_redirect): Allow abnormal edge 8497 to be forced into nonfallthru. 8498 84992002-12-03 Jason Thorpe <thorpej@wasabisystems.com> 8500 8501 * config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS). 8502 85032002-12-03 Aldy Hernandez <aldyh@redhat.com> 8504 8505 * config/rs6000/spe.md (*movv1di_const0): New pattern. 8506 85072002-12-03 Richard Henderson <rth@redhat.com> 8508 8509 * libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0. 8510 85112002-12-03 Hans-Peter Nilsson <hp@bitrange.com> 8512 8513 * bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff): 8514 Initialize tmp.using_obstack to 0. 8515 85162002-12-03 Andreas Schwab <schwab@suse.de> 8517 8518 * config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define. 8519 (EH_RETURN_STACKADJ_RTX): Define. 8520 (EH_RETURN_HANDLER_RTX): Define. 8521 (ASM_PREFERRED_EH_DATA_FORMAT): Define. 8522 * config/m68k/m68k.c (m68k_save_reg): New function. Handle eh 8523 registers and don't save fixed registers. 8524 (m68k_output_function_prologue): Use it. 8525 (use_return_insn): Likewise. 8526 (m68k_output_function_epilogue): Likewise. 8527 85282002-12-03 Kazu Hirata <kazu@cs.umass.edu> 8529 8530 * config/h8300/h8300.c (single_one_operand): Fix a warning. 8531 (single_zero_operand): Likewise. 8532 85332002-12-02 Kazu Hirata <kazu@cs.umass.edu> 8534 8535 * config/h8300/h8300.c (dosize): Replace argument op with 8536 sign. 8537 (h8300_output_function_prologue): Update the call to dosize. 8538 (h8300_output_function_epilogue): Likewise. 8539 85402002-12-02 Bob Wilson <bob.wilson@acm.org> 8541 8542 * config/xtensa/xtensa.h: Delete ifndefs with nothing inside them. 8543 85442002-12-02 Craig Rodrigues <rodrigc@gcc.gnu.org> 8545 8546 * configure.in: Use "missing" script to generate warning if 8547 flex or bison programs not found, instead of invoking "false". 8548 * configure: Rebuilt. 8549 85502002-12-02 Jan Hubicka <jh@suse.cz> 8551 8552 * unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P. 8553 85542002-12-02 Jan Hubicka <jh@suse.cz> 8555 8556 * i386.c (ix86_expand_int_movcc): Avoid overflow. 8557 85582002-12-02 Kazu Hirata <kazu@cs.umass.edu> 8559 8560 * config/h8300/h8300.c (dosize): Output r7/er7 instead of sp. 8561 (push): Likewise. 8562 (pop): Likewise. 8563 (h8300_output_function_prologue): Likewise. 8564 (h8300_output_function_epilogue): Likewise. 8565 85662002-12-02 J"orn Rennecke <joern.rennecke@superh.com> 8567 8568 * expmed.c (store_bit_field): Use int_mode_for_mode to find 8569 corresponding mode of non-integer mode, unless it is VOIDmode. 8570 85712002-12-02 Kazu Hirata <kazu@cs.umass.edu> 8572 8573 * config/h8300/h8300.md (stm_h8300s_2): New. 8574 (stm_h8300s_3): Likewise. 8575 (stm_h8300s_4): Likewise. 8576 (five define_peephole2): Likewise. 8577 85782002-12-02 Kazu Hirata <kazu@cs.umass.edu> 8579 8580 * ra-build.c: Fix a comment typo. 8581 85822002-12-01 Kazu Hirata <kazu@cs.umass.edu> 8583 8584 * config/h8300/h8300.c (h8300_output_function_prologue): 8585 Remove variable idx. 8586 (h8300_output_function_epilogue): Likewise. 8587 85882002-12-01 Zack Weinberg <zack@codesourcery.com> 8589 8590 * config/frv/xm-frv.h: Delete, unnecessary. 8591 85922002-12-01 Kazu Hirata <kazu@cs.umass.edu> 8593 8594 * config/h8300/h8300.md: Add comments for define_peephole2. 8595 85962002-12-01 Mark Mitchell <mark@codesourcery.com> 8597 8598 * builtin-types.def (BT_SIZE): Use size_type_node. 8599 * builtins.c (fold_builtin): Make the builtin strlen returns a 8600 size_t, not a sizetype. 8601 * c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not 8602 c_size_type_node. 8603 (c_alignof_expr): Likewise. 8604 (c_common_nodes_and_builtins): Likewise. 8605 * c-common.h (CTI_C_SIZE_TYPE): Remove. 8606 (c_size_type_node): Likewise. 8607 * c-format.c (T_ST): Use size_type_node, not c_size_type_node. 8608 * tree.h (TI_SIZE_TYPE): New enumeral. 8609 (size_type_node): Likewise. 8610 86112002-11-30 John David Anglin <dave@hiauly1.hia.nrc.ca> 8612 8613 * cfg.c (dump_flow_info): Use max_reg_num () to determine the largest 8614 pseudo register number plus 1. 8615 86162002-11-29 Hans-Peter Nilsson <hp@bitrange.com> 8617 8618 * cpplib.c (_cpp_test_assertion): Default *value to 0. 8619 8620 * cppexp.c (num_part_mul): Initialize result.unsignedp, to 1. 8621 86222002-11-29 Ulrich Weigand <uweigand@de.ibm.com> 8623 8624 * config/s390/t-crtstuff: New target makefile fragment. 8625 * config.gcc [s390-*-linux, s390x-*-linux]: Use it. 8626 86272002-11-29 Kazu Hirata <kazu@cs.umass.edu> 8628 8629 * config/h8300/h8300.md (movsi_h8300hs): Change the order of 8630 alternatives to correct the length when the memory operand is 8631 either pre_dec or post_inc. 8632 86332002-11-29 Kazu Hirata <kazu@cs.umass.edu> 8634 8635 * config/h8300/h8300.md (an anonymous pattern): Give an 8636 internal name *tst_extzv_bitqi_1_n. 8637 Accept bit_operand instead of bit_memory_operand. 8638 Do not accept bit tests with the MSB. 8639 (*tst_extzv_memqi_1_n): New. 8640 86412002-11-28 Kazu Hirata <kazu@cs.umass.edu> 8642 8643 * config/h8300/h8300.c (h8300_eightbit_constant_address_p): 8644 Fix a comment typo. 8645 (h8300_tiny_constant_address_p): Likewise. 8646 86472002-11-28 Michael Matz <matz@suse.de> 8648 8649 * doc/passes.texi: Mention the other register allocator. 8650 86512002-11-28 Kazu Hirata <kazu@cs.umass.edu> 8652 8653 * config/h8300/h8300.md (6 new peephole2 patterns): New. 8654 86552002-11-28 Jakub Jelinek <jakub@redhat.com> 8656 8657 * config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff. 8658 * config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS). 8659 * config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define. 8660 86612002-11-28 Kazu Hirata <kazu@cs.umass.edu> 8662 8663 * config/h8300/h8300.c (h8300_and_costs): New. 8664 * config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs. 8665 * config/h8300/h8300-protos.h: Add a prototype for 8666 h8300_and_costs. 8667 86682002-11-27 Zack Weinberg <zack@codesourcery.com> 8669 8670 * config/rs6000/rs6000.c (altivec_init_builtins): Make the 8671 pointer argument in the prototypes of the following builtins 8672 be (const TYPE *) rather than (TYPE *): 8673 + __builtin_altivec_ld_internal_4sf 8674 + __builtin_altivec_ld_internal_4si 8675 + __builtin_altivec_ld_internal_8hi 8676 + __builtin_altivec_ld_internal_16qi 8677 + __builtin_altivec_lvsl 8678 + __builtin_altivec_lvsr 8679 + __builtin_altivec_lvebx 8680 + __builtin_altivec_lvehx 8681 + __builtin_altivec_lvewx 8682 + __builtin_altivec_lvxl 8683 + __builtin_altivec_lvx 8684 + __builtin_altivec_dst 8685 + __builtin_altivec_dstt 8686 + __builtin_altivec_dstst 8687 + __builtin_altivec_dststt 8688 86892002-11-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 8690 8691 * except.c (default_exception_section): Move variable into the 8692 scope where it is used. 8693 86942002-11-27 Krister Walfridsson <cato@df.lth.se> 8695 8696 * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for 8697 correct version. 8698 86992002-11-27 Kazu Hirata <kazu@cs.umass.edu> 8700 8701 * config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses. 8702 87032002-11-27 Kazu Hirata <kazu@cs.umass.edu> 8704 8705 * config/h8300/h8300.c (h8300_shift_costs): New. 8706 * config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs. 8707 * config/h8300/h8300-protos.h: Add a prototype for 8708 h8300_shift_costs. 8709 87102002-11-27 Jim Wilson <wilson@redhat.com> 8711 8712 * config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands 8713 in output template. 8714 87152002-11-27 Casper S. Hornstrup <chorns@users.sourceforge.net> 8716 8717 * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define. 8718 * config/i386/winnt.c (i386_pe_dllexport_name_p): Use 8719 DLL_IMPORT_EXPORT_PREFIX, not '@'. 8720 (i386_pe_dllimport_name_p): Likewise. 8721 (i386_pe_mark_dllexport): Likewise. 8722 (i386_pe_mark_dllimport): Likewise. 8723 (i386_pe_encode_section_info): Likewise. 8724 (i386_pe_strip_name_encoding): Likewise. 8725 87262002-11-27 Richard Henderson <rth@redhat.com> 8727 8728 * mkmap-symver.awk (BEGIN): Set sawsymbol false. 8729 (nm && NF == 3): Set sawsymbol true. 8730 (END): Exit if no symbols seen. 8731 (output): Fix map syntax error if no globals for the version. 8732 87332002-11-27 Jan Hubicka <jh@suse.cz> 8734 8735 * builtins.def (DEF_C99_BUILTIN): Fix. 8736 87372002-11-26 Andrew Haley <aph@redhat.com> 8738 8739 * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename 8740 from_Unwind_Find_Enclosing_Function. 8741 * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise. 8742 * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise. 8743 * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from 8744 _Unwind_Find_Enclosing_Function, export @@GCC_3.3. 8745 * unwind.h (_Unwind_FindEnclosingFunction): Add. 8746 87472002-11-26 Hartmut Penner <hpenner@de.ibm.com> 8748 8749 * config/s390/s390.c (390_output_constant_pool): Set alignment 8750 before label in 64 bit mode, behind otherwise. 8751 87522002-11-26 Richard Henderson <rth@redhat.com> 8753 8754 * c-common.c (handle_visibility_attribute): Accept "default". 8755 * tree.h (enum symbol_visibility): New. 8756 (decl_visibility): Declare. 8757 * target.h (gcc_target.visibility): Take visibility arg as integer. 8758 * varasm.c (default_assemble_visibility): Likewise. 8759 (decl_visibility): New. 8760 (maybe_assemble_visibility): Use it. 8761 * output.h (default_assemble_visibility): Update prototype. 8762 * config/rs6000/rs6000.c (rs6000_assemble_visibility): Take 8763 visibility arg as integer. 8764 * doc/extend.texi: Document default visibility. 8765 87662002-11-26 Kazu Hirata <kazu@cs.umass.edu> 8767 8768 * config/h8300/h8300.c: Adjust spacing. 8769 * config/h8300/h8300.h: Likewise. 8770 87712002-11-26 Richard Henderson <rth@redhat.com> 8772 8773 * hooks.c (hook_bool_void_false, hook_void_tree_int, 8774 hook_void_FILEptr_constcharptr): Rename so that the return 8775 type is first. 8776 (hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr, 8777 hook_bool_tree_false): New. 8778 * hooks.h: Update. 8779 * langhooks-def.h: Update for renames. 8780 * target-def.h: Likewise. 8781 * tree.c (default_comp_type_attributes, 8782 default_set_default_type_attributes, default_insert_attributes, 8783 default_function_attribute_inlinable_p, 8784 default_ms_bitfield_layout_p): Remove. 8785 * tree.h: Update. 8786 87872002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca> 8788 8789 * pa-protos.h (function_value): New prototype. 8790 * pa.c (function_value): Use a PARALLEL to return small aggregates on 8791 TARGET_64BIT. 8792 * pa.h (FUNCTION_VALUE): Use function_value. 8793 * pa.md (call_value_internal_symref, call_value_internal_reg_64bit, 8794 call_value_internal_reg, sibcall_value_internal_symref, 8795 sibcall_value_internal_symref_64bit): Remove =rf constraint on return 8796 value. 8797 87982002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca> 8799 8800 * expr.c (gen_group_rtx, emit_group_move): New functions. 8801 * expr.h (gen_group_rtx, emit_group_move): Prototype. 8802 * function.c (expand_function_start): Use gen_group_rtx to create a 8803 PARALLEL rtx to hold the return value when the real return rtx is a 8804 PARALLEL. 8805 (expand_function_end): Use emit_group_move to move the return value 8806 from a PARALLEL to the real return registers. 8807 * rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned 8808 in PARALLELs. 8809 88102002-11-26 Jason Thorpe <thorpej@wasabisystems.com> 8811 8812 * config/t-libc-ok: Fix typo. 8813 88142002-11-26 Jakub Jelinek <jakub@redhat.com> 8815 8816 * configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back 8817 before AC_PROG_CC. 8818 * configure: Rebuilt. 8819 88202002-11-26 Nathan Sidwell <nathan@codesourcery.com> 8821 8822 * c-decl.c: (start_struct): Commonize flag setting. 8823 88242002-11-26 Jason Thorpe <thorpej@wasabisystems.com> 8825 8826 * config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New. 8827 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use 8828 RS6000_CPU_CPP_ENDIAN_BUILTINS. 8829 * config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine. 8830 88312002-11-26 Hartmut Penner <hpenner@de.ibm.com> 8832 8833 * config/s390/s390.md (literal_pool_64, literal_pool_31 ): New 8834 insns. 8835 * config/s390/s390.c (struct machine_function): Introduction of 8836 struct machine_function. 8837 (s390_output_symbolic_const): Use of cfun. 8838 (s390_optimize_prolog): Likewise. 8839 (s390_fixup_clobbered_return_reg): Likewise. 8840 (s390_frame_info): Likewise. 8841 (s390_emit_prologue, s390_emit_epilogue): Likewise. 8842 (s390_init_machine_status): New function. 8843 (override_options): call s390_init_machine_status. 8844 * config/s390/s390-protos.h (s390_output_constant_pool): Changed 8845 prototype. 8846 88472002-11-26 Jakub Jelinek <jakub@redhat.com> 8848 8849 * varasm.c (output_constant_pool): For pool constants in mergeable 8850 section ensure each constant is padded to multiple of entity size. 8851 88522002-11-26 Jakub Jelinek <jakub@redhat.com> 8853 8854 * varasm.c (default_exception_section): Move to... 8855 * except.c (default_exception_section): ... here. Make 8856 .gcc_except_table read-only if it is not expected to have any 8857 dynamic relocations and linker handles it. 8858 * dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only 8859 if it is not expected to have any dynamic relocations and linker 8860 handles it. 8861 * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does 8862 when linking read-only and read-write sections together. 8863 * configure, config.in: Rebuilt. 8864 * crtstuff.c (EH_FRAME_SECTION_CONST): Define. 8865 (__EH_FRAME_BEGIN__, __FRAME_END__): Add it. 8866 88672002-11-25 Aldy Hernandez <aldyh@redhat.com> 8868 8869 * config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into 8870 new function. 8871 (__ev_create_ufix32_fs): Same. 8872 (__ev_get_sfix32_fs_internal): New. 8873 (__ev_get_sfix32_fs): Define to use function. 8874 (__ev_get_ufix32_fs_internal): New. 8875 (__ev_get_ufix32_fs): Define to use function. 8876 (__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs. 8877 (__ev_get_lower_ufix32_fs): Same. 8878 (__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs. 8879 (__ev_get_lower_sfix32_fs): Same. 8880 (__ev_set_sfix32_fs_internal): New. 8881 (__ev_set_ufix32_fs_internal): New. 8882 (__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal. 8883 (__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal. 8884 (__ev_set_upper_sfix32_fs): Call function. 8885 (__ev_set_lower_sfix32_fs): Same. 8886 (__ev_set_upper_ufix32_fs): Same. 8887 (__ev_set_lower_ufix32_fs): Same. 8888 88892002-11-25 Douglas B Rupp <rupp@gnat.com> 8890 8891 * gcc.c (do_spec_1): Reset delete_this_arg to zero. 8892 88932002-11-25 Jason Thorpe <thorpej@wasabisystems.com> 8894 8895 * config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1. 8896 * config/interix.h (HANDLE_SYSV_PRAGMA): Likewise. 8897 * config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise. 8898 * config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise. 8899 * config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise. 8900 * config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise. 8901 * config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise. 8902 * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise. 8903 * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise. 8904 * config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise. 8905 * config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise. 8906 * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise. 8907 * config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise. 8908 * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise. 8909 * config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise. 8910 * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise. 8911 * config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise. 8912 * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise. 8913 * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise. 8914 * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise. 8915 * config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise. 8916 * config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise. 8917 * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise. 8918 * config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before 8919 defining. 8920 * config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise. 8921 * config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise. 8922 89232002-11-25 Dave Pitts <dpitts@cozx.com> 8924 8925 * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list 8926 89272002-11-25 Kazu Hirata <kazu@cs.umass.edu> 8928 8929 * config/h8300/h8300.md (an anonymous pattern): New. 8930 89312002-11-25 Richard Henderson <rth@redhat.com> 8932 8933 * alias.c (find_base_value): Use new_reg_base_value if it's live. 8934 (copying_arguments): Make boolean. 8935 89362002-11-25 Jason Thorpe <thorpej@wasabisystems.com> 8937 8938 * gcc.c (static_spec_functions): Add if-exists-else spec 8939 function. 8940 (if_exists_else_spec_function): New function. 8941 * doc/invoke.texi: Document the if-exists-else spec function. 8942 8943 * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use 8944 "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)". 8945 89462002-11-25 Jason Thorpe <thorpej@wasabisystems.com> 8947 8948 * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with 8949 "netbsd.h netbsd-elf.h" in tm_file. Set tmake_file to 8950 "${tmake_file} rs6000/t-netbsd". 8951 * config/rs6000/netbsd.h: Rewrite. 8952 * config/rs6000/t-netbsd: New file. 8953 89542002-11-25 Kazu Hirata <kazu@cs.umass.edu> 8955 8956 * config/h8300/h8300.md (an anonymous pattern): Relax the 8957 condition for the pattern. 8958 89592002-11-25 Aldy Hernandez <aldyh@redhat.com> 8960 8961 * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf, 8962 evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw, 8963 evmwlssfanw, evmwlsmfanw. 8964 8965 * config/rs6000/rs6000.c (bdesc_2arg): Same. 8966 8967 * config/rs6000/spe.md: Same for patterns. 8968 89692002-11-25 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de> 8970 8971 PR c/8639 8972 * fold-const.c (extract_muldiv): Don't propagate division unless 8973 both arguments are multiples of C. 8974 89752002-11-25 Andrew Haley <aph@redhat.com> 8976 8977 * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add. 8978 * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New. 8979 * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise. 8980 * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise. 8981 89822002-11-24 Kazu Hirata <kazu@cs.umass.edu> 8983 8984 * config/h8300/h8300.c (h8300_init_once): Fix a typo in the 8985 target help message. 8986 89872002-11-24 Jason Thorpe <thorpej@wasabisystems.com> 8988 8989 * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set 8990 extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o 8991 crtbeginT.o". 8992 (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*) 8993 (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts 8994 to "" for a.out configurations. 8995 * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC". 8996 89972002-11-24 Jason Thorpe <thorpej@wasabisystems.com> 8998 8999 * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use 9000 NETBSD_CPP_SPEC directly. 9001 (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec. Add 9002 netbsd_endfile_spec. 9003 (ENDFILE_SPEC): Use %(netbsd_endfile_spec). 9004 90052002-11-24 Jason Thorpe <thorpej@wasabisystems.com> 9006 9007 * config/netbsd-elf.h (STARTFILE_SPEC): Rename to 9008 NETBSD_STARTFILE_SPEC. 9009 (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC. 9010 (ENDFILE_SPEC): Likewise. 9011 * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise. 9012 90132002-11-24 Andreas Schwab <schwab@suse.de> 9014 9015 * Makefile.in (install-driver): Remove versioned link before 9016 trying to create it. 9017 9018 * config/m68k/m68k.c: Fix typo in last change defining 9019 TARGET_ASM_CAN_OUTPUT_MI_THUNK. 9020 90212002-11-23 Kazu Hirata <kazu@cs.umass.edu> 9022 9023 * config/h8300/h8300.c (print_operand): Update the use of 9024 h8300_tiny_constant_address_p. 9025 (h8300_adjust_insn_length): Likewise. 9026 (h8300_tiny_constant_address_p): Check if the given rtx is a 9027 variable declared with __attribute__ ((tiny_data)). 9028 90292002-11-22 Dale Johannesen <dalej@apple.com> 9030 9031 * toplev.c (rest_of_compilation): Fix comments. 9032 90332002-11-22 Geoffrey Keating <geoffk@apple.com> 9034 9035 * aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not 9036 allow mmap from /dev/zero. Don't make decisions for the host 9037 based on presence or absence of /dev/zero on the build machine. 9038 (ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON. 9039 (AC_FUNC_MMAP_FILE): Darwin does have mmap of a file. 9040 * configure: Regenerate. 9041 90422002-11-22 Daniel Jacobowitz <drow@mvista.com> 9043 9044 * gcc.c (make_relative_prefix, split_directories) 9045 (free_split_directories): Removed. 9046 90472002-11-22 Daniel Jacobowitz <drow@mvista.com> 9048 9049 * configure.in: Set insn=nop for DWARF-2 tests on ARM. 9050 * configure: Regenerated. 9051 90522002-11-22 Kazu Hirata <kazu@cs.umass.edu> 9053 9054 * config/h8300/h8300.c (compute_a_shift_length): Fix the insn 9055 length computation when xor.l is output. 9056 90572002-11-21 Jim Wilson <wilson@redhat.com> 9058 9059 * config/rs6000/rs6000.c (function_arg): Set inner mode of SPE 9060 vectors to SI. 9061 90622002-11-21 Bob Wilson <bob.wilson@acm.org> 9063 9064 * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare. 9065 * config/xtensa/xtensa.c (struct machine_function): Add 9066 incoming_a7_copied flag. 9067 (xtensa_copy_incoming_a7): Define. 9068 (xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7. 9069 * config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto. 9070 90712002-11-21 Jan Hubicka <jH@suse.cz> 9072 9073 * i386-protos.h (x86_64_sign_extended_value): Fix prototype. 9074 * i386.c (x86_64_general_operand, x86_64_szext_general_operand, 9075 x86_64_nonmemory_operand, x86_64_movabs_operand, 9076 x86_64_szext_nonmemory_operand, x86_64_immediate_operand, 9077 ix86_expand_int_movcc): Update call of x86_64_sign_extended_value. 9078 (local_symbolic_operand): Do not care the 64bit limits. 9079 (x86_64_sign_extended_value): Remove allow_rip support. 9080 (legitimate_pic_address_disp_p): Handle all cases allowed 9081 with RIP addressing. 9082 (legitimate_address_p): Use legitimate_pic_address_disp_p for PIC. 9083 (legitimize_pic_address): Reorganize. 9084 * i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value. 9085 90862002-11-21 Jason Thorpe <thorpej@wasabisystems.com> 9087 9088 * config.gcc (arm*-*-netbsdelf*): Enable configuration. 9089 * config/arm/netbsd-elf.h: New file. 9090 90912002-11-21 Jason Thorpe <thorpej@wasabisystems.com> 9092 9093 * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add 9094 subtarget_asm_float_spec. 9095 (SUBTARGET_ASM_FLOAT_SPEC): Define, moving the 9096 defaults from... 9097 (ASM_SPEC): ...here. Use subtarget_asm_float_spec. 9098 90992002-11-21 Nick Clifton <nickc@redhat.com> 9100 9101 * config/fr30/fr30.md (movsf_constant_store): Move code to 9102 detect 0.0 into fr30.c. 9103 * config/fr30/fr30-protos.h (fr30_const_double_is_zero): 9104 Prototype. 9105 * config/fr30/fr30.c (fr30_const_double_is_zero): New 9106 function. Return true if the rtx is 0.0. 9107 91082002-11-21 Jason Thorpe <thorpej@wasabisystems.com> 9109 9110 * config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL 9111 if -mlittle-endian is specified. 9112 91132002-11-21 Richard Earnshaw <rearnsha@arm.com> 9114 9115 PR optimization/2903 9116 * arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1. 9117 (anddi_notsesidi_di): Likewise. 9118 91192002-11-21 Kazu Hirata <kazu@cs.umass.edu> 9120 9121 * config/h8300/h8300.c (print_operand): Use 9122 h8300_eightbit_constant_address_p and 9123 h8300_tiny_constant_address_p. 9124 (h8300_adjust_insn_length): Likewise. 9125 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove. 9126 (TINY_CONSTANT_ADDRESS_P): Likewise. 9127 (OK_FOR_U): Use eightbit_constant_address_p. 9128 91292002-11-21 Ulrich Weigand <uweigand@de.ibm.com> 9130 9131 * config/s390/libgcc-libc.ver: Add multilib support. 9132 * config/s390/linux.h (MULTILIB_DEFAULT): Define. 9133 * config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES, 9134 MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC, 9135 EXTRA_MULTILIB_PARTS): Define. 9136 91372002-11-21 Richard Earnshaw <rearnsha@arm.com> 9138 9139 * arm.c (arm_get_frame_size): A leaf function does not need its 9140 stack padding to an aligned boundary if it has no frame. 9141 (thumb_get_frame_size): Likewise. 9142 91432002-11-20 Steve Ellcey <sje@cup.hp.com> 9144 9145 * emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type 9146 to component type using GET_MODE_INNER. 9147 * expr.c (emit_move_insn_1): Ditto. 9148 * optabs.c (expand_binop): Ditto. 9149 (expand_unop): Ditto. 9150 (expand_complex_abs): Ditto. 9151 91522002-11-20 Douglas B Rupp <rupp@gnat.com> 9153 9154 * hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64). 9155 91562002-11-20 DJ Delorie <dj@redhat.com> 9157 9158 * config/stormy16/stormy16.c (s16builtins, 9159 xstormy16_init_builtins, xstormy16_expand_builtin): New. 9160 * config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New. 9161 91622002-11-20 Hans-Peter Nilsson <hp@bitrange.com> 9163 9164 * Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables. 9165 (DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES). 9166 (executing gencheck, genconfigs, genconditions, genflags, 9167 gencodes, genconstants, genemit, genrecog, genopinit, genextract, 9168 genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds, 9169 gengtype, genprotos): Prepend $(RUN_GEN). 9170 * configure.in: Move host compiler tests before --enable-checking 9171 tests. 9172 (--enable-checking=valgrind): New. 9173 * config.in, configure: Regenerate. 9174 * cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD): 9175 Define as empty. 9176 (read_include_file): When doing the mmap+1 trick, 9177 valgrind-annotate the byte after the mmap:ed area as readable. 9178 (purge_cache): Remove above annotation. 9179 * gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend 9180 VALGRIND_PATH -q to each command. 9181 9182 * ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD): 9183 Define as empty. 9184 (ggc_realloc): Update valgrind annotations. 9185 * ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD): 9186 Define as empty. 9187 (alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to 9188 valgrind-annotate memory. 9189 91902002-11-20 Ulrich Weigand <uweigand@de.ibm.com> 9191 9192 * recog.c (constrain_operands): Prefer exact match over reloadable 9193 EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT. 9194 9195 * reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT 9196 operands in Pmode. 9197 91982002-11-20 Eric Botcazou <ebotcazou@libertysurf.fr> 9199 9200 PR c/8518 9201 * c-decl.c (duplicate_decls): Outline the second definition 9202 of an extern inline function in all cases. 9203 92042002-11-20 Richard Sandiford <rsandifo@redhat.com> 9205 9206 * stor-layout.c (place_field): Update rli->offset as well as 9207 rli->bitpos. 9208 92092002-11-20 Richard Sandiford <rsandifo@redhat.com> 9210 9211 * sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED. 9212 92132002-11-20 Richard Sandiford <rsandifo@redhat.com> 9214 9215 * config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions 9216 into a libcall block. 9217 (divsi3): Likewise divsi3_i4_media. 9218 92192002-11-20 Richard Sandiford <rsandifo@redhat.com> 9220 9221 * global.c (find_reg): Check HARD_REGNO_NREGS before kicking 9222 out another register. 9223 92242002-11-20 Jakub Jelinek <jakub@redhat.com> 9225 9226 * combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask 9227 (not just mask) are set in C. 9228 92292002-11-19 Andreas Jaeger <aj@suse.de> 9230 9231 * loop.c (record_giv): Initialize not_replaceable. 9232 (check_final_value): Likewise. 9233 92342002-11-19 Kazu Hirata <kazu@cs.umass.edu> 9235 9236 * config/h8300/h8300.c (h8300_init_once): Replace 1 with 9237 MASK_H8300S. 9238 92392002-11-19 Vijay L. Khuspe <vijayk1@kpit.com> 9240 9241 * config/h8300/h8300.c (h8300_init_once): Allow -mn switch 9242 only if -mh or -ms present. 9243 (h8300_eightbit_constant_address_p): Support the normal mode. 9244 (h8300_tiny_constant_address_p): Likewise. 9245 * config/h8300/h8300.h (TARGET_NORMAL_MODE): New. 9246 (POINTER_SIZE): Add 16 bit pointer for the normal mode. 9247 (Pmode): Evaluate to HImode for the normal mode. 9248 (SIZE_TYPE): Evaluate to unsigned int for normal mode. 9249 (PTRDIFF_TYPE): Evaluate to int for the normal mode. 9250 (ASM_WORD_OP): Evaluate to word for the normal mode. 9251 * config/h8300/h8300.md (tablejump_normal_mode): New. 9252 (indirect_jump_normal_mode): New. 9253 * config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to 9254 directory. 9255 (MULTILIB_DIRNAMES): Create target dependent directory 9256 'normal'. 9257 (MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300. 9258 * doc/invoke.texi (gccoptlist): Describe the new switch -mn. 9259 92602002-11-19 Jan Hubicka <jh@suse.cz> 9261 9262 * i386.md (length_immediate): Do not refer to insn address. 9263 (jcc*, jmp patterns): Compute length explicitly. 9264 92652002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr> 9266 9267 PR c/8588 9268 * optabs.c (expand_binop): Convert CONST_INTs in shift 9269 operations too. 9270 92712002-11-19 Roger Sayle <roger@eyesopen.com> 9272 9273 * gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note. 9274 92752002-11-19 Kazu Hirata <kazu@cs.umass.edu> 9276 9277 * config/h8300/h8300.md (an anonymous pattern): Relax the 9278 condition to accept the same operands and/or subregs. 9279 92802002-11-19 Daniel Jacobowitz <drow@mvista.com> 9281 9282 * config/sh/sh.c (gen_shl_and): Revert previous patch. 9283 * config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on 9284 reload_completed. 9285 92862002-11-19 Kazu Hirata <kazu@cs.umass.edu> 9287 9288 * config/h8300/h8300.c (print_operand): Update the use of 9289 EIGHTBIT_CONSTANT_ADDRESS_P. 9290 (h8300_adjust_insn_length): Likewise. 9291 (h8300_eightbit_constant_address_p): Check if the given rtx is 9292 a variable with __attribute__((eightbit_data)). 9293 * config/h8300/h8300.h (OK_FOR_U): Update the use of 9294 EIGHTBIT_CONSTANT_ADDRESS_P. 9295 92962002-11-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 9297 9298 * doc/contrib.texi (Contributors): Add self as second contact in 9299 addition to Jeff Law. 9300 93012002-11-19 Andreas Jaeger <aj@suse.de> 9302 9303 * tree-inline.c: Move prototpyes of find_alloca_call_1 and 9304 find_alloca_call to right place. 9305 93062002-11-19 Kazu Hirata <kazu@cs.umass.edu> 9307 9308 * cppfiles.c: Fix formatting. 9309 93102002-11-19 Jason Thorpe <thorpej@wasabisystems.com> 9311 9312 * gcc.c (The Specs Language): Document spec functions. 9313 (static_spec_functions, lookup_spec_function) 9314 (eval_spec_function, handle_spec_function) 9315 (if_exists_spec_function, alloc_args): New. 9316 (execute): Abort if processing_spec_function is true. 9317 (do_spec_1): Hand off spec to handle_spec_function if %: 9318 is encountered. If processing_spec_function is true, 9319 end any pending argument when the end of the string is reached. 9320 (main): Use alloc_args to allocate the initial argument vector. 9321 * gcc.h (struct spec_function): New. 9322 (lang_specific_spec_functions): New extern. 9323 9324 * config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s). 9325 (ENDFILE_SPEC): Add if-exists(crtn%O%s). 9326 * config/alpha/netbsd.h (ENDFILE_SPEC): Likewise. 9327 9328 * doc/invoke.texi: Document spec functions. 9329 9330 * cppspec.c (lang_specific_spec_functions): New. 9331 * gccspec.c: Likewise. 9332 93332002-11-18 Steve Ellcey <sje@cup.hp.com> 9334 9335 * config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New. 9336 (FIXUNS_TRUNCTFDI2_LIBCALL): New. 9337 (fixunstfsi_libfunc): Change. 9338 (fixunstfdi_libfunc): Change. 9339 (sdiv_optab): Don't zero out SImode handler. 9340 (udiv_optab): Don't zero out SImode handler. 9341 (smod_optab): Don't zero out SImode handler. 9342 (umod_optab): Don't zero out SImode handler. 9343 93442002-11-18 Neil Booth <neil@daikokuya.co.uk> 9345 9346 PR preprocessor/8524 9347 * cpplib.c (run_directive): Remove previous kludge to _Pragma. 9348 Add a new one in its place, which hopefully works. 9349 (skip_rest_of_line): Change test for bottom-of-context-stack. 9350 93512002-11-18 Jan Hubicka <jh@suse.cz> 9352 9353 * i386.md (addqi_1_slp): Fix output template. 9354 (subqi_1_slp): Fix type. 9355 93562002-11-17 Jan Hubicka <jh@suse.cz> 9357 9358 * calls.c (alloca_call_p): New global function. 9359 * tree.h (alloca_call_p): New. 9360 * tree-inline.c (inlinable_function_p): Do not inline when 9361 function calls alloca. 9362 (find_alloca_call, find_alloca_call_1): New functions. 9363 93642002-11-18 Kazu Hirata <kazu@cs.umass.edu> 9365 9366 * config/h8300/h8300.md (*andorqi3): Use bor between bld and 9367 bst. Update the insn length. 9368 (*andorhi3): Likewise. 9369 (*andorsi3): Likewise. 9370 93712002-11-18 Richard Sandiford <rsandifo@redhat.com> 9372 9373 * config/sh/sh-protos.h (sh_mark_label): Declare. 9374 * config/sh/sh.c (sh_mark_label): New function, taken from 9375 movdi_const, but fixing the case when the address has an addend. 9376 * config/sh/sh.md (movdi_const, movdi_const_32bit): Use it. 9377 93782002-11-18 Richard Sandiford <rsandifo@redhat.com> 9379 9380 * config/sh/sh.c (pool_node): New field: part_of_sequence_p. 9381 (add_constant): Set it. 9382 (dump_table): Don't reorder a constant if part_of_sequence_p. 9383 (machine_dependent_reorg): Assume that float constants will 9384 stay in their original order if used as a sequence. 9385 93862002-11-18 Richard Sandiford <rsandifo@redhat.com> 9387 9388 * config/sh/sh.c (calc_live_regs): Update check for PIC liveness 9389 in compact code. 9390 93912002-11-18 Richard Sandiford <rsandifo@redhat.com> 9392 9393 * config/sh/sh.md (initialize_trampoline): Do not force the 9394 trampoline address into R0_REGS here. 9395 93962002-11-17 Kazu Hirata <kazu@cs.umass.edu> 9397 9398 * df.c: Fix formatting. 9399 94002002-11-17 Kazu Hirata <kazu@cs.umass.edu> 9401 9402 * config/h8300/h8300.md (two anonymous patterns): Fix insn 9403 lengths. 9404 94052002-11-17 Daniel Jacobowitz <drow@mvista.com> 9406 9407 * sh.c (gen_shl_and): Don't create a zero_extend if the operand 9408 is not an arith_reg_operand. 9409 94102002-11-17 Graham Stott <graham.stott@btinternet.com> 9411 9412 * real.c (real_to_decimal): Fix buffer overrun when buffer size 9413 is smaller than representation. 9414 94152002-11-17 Kazu Hirata <kazu@cs.umass.edu> 9416 9417 * builtins.c: Fix formatting. 9418 94192002-11-16 Kazu Hirata <kazu@cs.umass.edu> 9420 9421 * config/h8300/h8300.md (two anonymous patterns): Fix typos. 9422 94232002-11-16 Kazu Hirata <kazu@cs.umass.edu> 9424 9425 * config/h8300/h8300.md: Fix formatting. 9426 94272002-11-16 Kazu Hirata <kazu@cs.umass.edu> 9428 9429 * config/h8300/h8300.md: Replace spaces with tabs. 9430 * config/h8300/t-h8300: Remove a trailing empty line. 9431 94322002-11-16 Kazu Hirata <kazu@cs.umass.edu> 9433 9434 * tlink.c: Fix formatting. 9435 94362002-11-16 David Edelsohn <edelsohn@gnu.org> 9437 9438 PR 8362 9439 * config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function. 9440 * config/rs6000/rs6000.md (movti_string): Remove output modifier 9441 when scratch register never needed. 9442 (ldmsi[3-8]): New patterns. 9443 94442002-11-16 Kazu Hirata <kazu@cs.umass.edu> 9445 9446 * hard-reg-set.h: Follow spelling conventions. 9447 * real.c: Likewise. 9448 * target.h: Likewise. 9449 94502002-11-16 Jakub Jelinek <jakub@redhat.com> 9451 9452 * config/i386/x86-64.h (MCOUNT_NAME): Change into string literal. 9453 94542002-11-16 Kazu Hirata <kazu@cs.umass.edu> 9455 9456 * optabs.c: Fix formatting. 9457 94582002-11-16 Jan Hubicka <jh@suse.cz> 9459 9460 * athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1 9461 * i386.md (attribute type): Add type shift1 and rotate1. 9462 (*_slp): Rewrite to have just two operands to avoid reload problems. 9463 94642002-11-15 Kazu Hirata <kazu@cs.umass.edu> 9465 9466 * config/h8300/h8300.md (4 anonymous patterns): New. 9467 94682002-11-15 Geoffrey Keating <geoffk@apple.com> 9469 9470 * params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem. 9471 * doc/invoke.texi: Correct description of what needs to be done to 9472 force collection at every ggc_collect call. 9473 94742002-11-15 Ulrich Weigand <uweigand@de.ibm.com> 9475 9476 * config/s390/s390.c (optimization_options): Set 9477 flag_asynchronous_unwind_tables to 1 by default. 9478 94792002-11-15 Ulrich Weigand <uweigand@de.ibm.com> 9480 9481 * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define. 9482 94832002-11-15 Jan Hubicka <jh@suse.cz> 9484 9485 * i386-protos.h (x86_function_profiler): New function 9486 * i386.h (MCOUNT_NAME): New. 9487 (PROFILE_COUNT_REGISTER): New. 9488 (FUNCTION_PROFILER): Move offline to ... 9489 * i386.c (x86_function_profiler) ... here; fix 64bit support 9490 * beos-elf.h (FUNCTION_PROFILER): Kill. 9491 (MCOUNT_NAME): New. 9492 * freebsd-aout.h (FUNCTION_PROFILER): Kill. 9493 (MCOUNT_NAME): New. 9494 (PROFILE_COUNT_REGISTER): New. 9495 * linux.h (FUNCTION_PROFILER): Kill. 9496 (MCOUNT_NAME): New. 9497 * x86-64.h (FUNCTION_PROFILER): Kill. 9498 (MCOUNT_NAME): New. 9499 * freebsd.h (FUNCTION_PROFILER): Kill. 9500 (MCOUNT_NAME): New. 9501 95022002-11-14 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com> 9503 9504 * config/arm/arm.h (EXPAND_BUILTIN_VA_ARG, 9505 FUNCTION_ARG_PASS_BY_REFERENCE): Define. 9506 * config/arm/arm.c (arm_va_arg, 9507 arm_function_arg_pass_by_reference): New. 9508 * config/arm/arm-protos.h: Add prototypes. 9509 95102002-11-14 Kazu Hirata <kazu@cs.umass.edu> 9511 9512 * gthr-single.h: Fix formatting. 9513 95142002-11-14 Zack Weinberg <zack@codesourcery.com> 9515 9516 * tree.c (tree_vec_elt_check_failed): New function. 9517 * tree.h (TREE_VEC_ELT_CHECK): New checking macro. 9518 (TREE_VEC_ELT): Use it. 9519 9520 * tree-inline.c (optimize_inline_calls): Don't copy a 9521 zero-length vector. 9522 95232002-11-14 Gabriel Dos Reis <gdr@integrable-solutions.net> 9524 9525 * diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text. 9526 95272002-11-14 Jakub Jelinek <jakub@redhat.com> 9528 9529 * varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if 9530 both operands contain local relocations. 9531 (categorize_decl_for_section): Don't use mergeable sections if 9532 initializer has any relocations. 9533 95342002-11-14 Kazu Hirata <kazu@cs.umass.edu> 9535 9536 * gthr-vxworks.h: Fix formatting. 9537 95382002-11-13 Janis Johnson <janis187@us.ibm.com> 9539 9540 * doc/install.texi (Testing): Document extra Java testing. 9541 * doc/sourcebuild.texi (Test Suites): Document libgcj testing. 9542 95432002-11-13 John David Anglin <dave@hiauly1.hia.nrc.ca> 9544 9545 * pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the 9546 beginning of the spec. 9547 (LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete. 9548 (LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable. Add comment 9549 regarding problems with global constructors when using GNU ld. 9550 95512002-11-13 Kazu Hirata <kazu@cs.umass.edu> 9552 9553 * gthr-solaris.h: Fix formatting. 9554 95552002-11-13 Kazu Hirata <kazu@cs.umass.edu> 9556 9557 * gthr-posix.h: Fix formatting. 9558 95592002-11-12 Kazu Hirata <kazu@cs.umass.edu> 9560 9561 * config/h8300/h8300.md (*andorsi3): New. 9562 95632002-11-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 9564 9565 * doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement. 9566 95672002-11-12 Kazu Hirata <kazu@cs.umass.edu> 9568 9569 * config/h8300/h8300.c (tiny_constant_address_p): Parenthesize 9570 expressions appropriately. 9571 95722002-11-12 Kazu Hirata <kazu@cs.umass.edu> 9573 9574 * gthr-win32.h: Fix formatting. 9575 95762002-11-12 Kazu Hirata <kazu@cs.umass.edu> 9577 9578 * config/h8300/h8300.c (single_one_operand): Correctly compute 9579 mask when mode is SImode. 9580 (single_zero_operand): Likewise. 9581 * config/h8300/h8300.md (two new anonymous insns): New. 9582 95832002-11-12 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 9584 9585 * doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer 9586 to that entire project. 9587 95882002-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9589 9590 * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old 9591 directories. 9592 95932002-11-11 Zack Weinberg <zack@codesourcery.com> 9594 9595 * params.def (ggc-min-expand, ggc-min-heapsize): New parameters. 9596 * doc/invoke.texi: Document them. 9597 9598 * ggc-page.c: Include params.h. Remove definitions of 9599 GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED. Replace 9600 GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define. 9601 (init_gcc): Don't set G.allocated_last_gc here. 9602 (ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and 9603 PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to 9604 perform collection. 9605 * ggc-simple.c: Similarly. 9606 * Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to 9607 dependencies. 9608 96092002-11-11 Kazu Hirata <kazu@cs.umass.edu> 9610 9611 * gthr-dce.h: Fix formatting. 9612 96132002-11-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 9614 9615 PR c/8467 9616 * stmt.c (tail_recursion_args): Handle DECL_MODE differing from the 9617 mode of DECL_RTL case. 9618 96192002-11-11 Janis Johnson <janis187@us.ibm.com> 9620 9621 * doc/contrib.texi: Merge in the list from the libstdc++ web pages. 9622 96232002-11-11 Jan Hubicka <jh@suse.cz> 9624 9625 * i386.c (construct_container): Fix handling of SSE_CLASS. 9626 96272002-11-10 Joel Sherrill <joel@gcc.gnu.org> 9628 9629 * config/m68k/t-crtstuff (crti.o): Use this... 9630 ($(T)crti.o): ... instead. 9631 (crtn.o): Use this... 9632 ($(T)crtn.o): ... instead. 9633 96342002-11-10 Eric Botcazou <ebotcazou@libertysurf.fr> 9635 9636 PR c/8439 9637 * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only 9638 if there is something new to be simplified. 9639 96402002-11-10 H.J. Lu <hjl@gnu.org> 9641 9642 * calls.c (PUSH_ARGS_REVERSED): Define only if not defined. 9643 * expr.c (PUSH_ARGS_REVERSED): Likewise. 9644 9645 * config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1. 9646 96472002-11-10 Zack Weinberg <zack@codesourcery.com> 9648 9649 * config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here... 9650 * config/rs6000/linux.h, config/rs6000/linux64.h, 9651 config/rs6000/windiss.h: ... not here. 9652 96532002-11-10 Jason Thorpe <thorpej@wasabisystems.com> 9654 9655 * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define 9656 __ABICALLS__ if TARGET_ABICALLS. 9657 96582002-11-10 Jan Hubicka <jh@suse.cz> 9659 9660 * i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc. 9661 96622002-11-10 Joseph S. Myers <jsm@polyomino.org.uk> 9663 9664 * c-decl.c (grokdeclarator): Make error for duplicate type 9665 qualifiers into a pedwarn, disabled for C99. 9666 96672002-11-10 Hans-Peter Nilsson <hp@bitrange.com> 9668 9669 * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same 9670 as FUNCTION_ARG_PASS_BY_REFERENCE. 9671 96722002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca> 9673 9674 * pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16. 9675 9676 * config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define. 9677 (hppa*64*-*-hpux11*): Likewise. Use elfos.h with gas. 9678 * pa.c (output_millicode_call): Use symbol difference rather than 9679 $PIC_pcrel$0 when using HP assembler. 9680 * pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or 9681 not elfos.h (i.e., gas) is being used. 9682 (ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP, 9683 DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON, 9684 ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME, 9685 ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL, 9686 ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when 9687 using elfos.h. 9688 (TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h. 9689 (DWARF2_ASM_LINE_DEBUG_INFO): Delete. 9690 (ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not 9691 using elfos.h. 9692 (TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP, 9693 BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h. 9694 (TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): 9695 Don't define when not using elfos.h. 9696 (ASM_DECLARE_RESULT): Don't define. 9697 * doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler 9698 doesn't work on hppa64-hp-hpux11. 9699 (hppa*-hp-hpux11): Update. 9700 97012002-11-09 Jason Thorpe <thorpej@wasabisystems.com> 9702 9703 * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC 9704 to the assembler if -mno-abicalls was specified. 9705 97062002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca> 9707 9708 * pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO, 9709 ASM_OUTPUT_DEF): Delete. 9710 97112002-11-09 Neil Booth <neil@daikokuya.co.uk> 9712 9713 * c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit. 9714 97152002-11-08 Dale Johannesen <dalej@apple.com> 9716 9717 * dbxout.c (dbxout_type): Fix stabs info for vector types. 9718 97192002-11-08 Neil Booth <neil@daikokuya.co.uk> 9720 9721 PR preprocessor/8497 9722 PR preprocessor/8501 9723 * cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't 9724 start a directive. In assembler, #NUM is not a line directive. 9725 97262002-11-08 Neil Booth <neil@daikokuya.co.uk> 9727 9728 * cppmain.c (cpp_preprocess_file): Loop to pop any -included 9729 buffers. 9730 97312002-11-08 Kazu Hirata <kazu@cs.umass.edu> 9732 9733 * config/h8300/h8300.md (two anonymous test insns): New. 9734 97352002-11-08 Jan Hubicka <jh@suse.cz> 9736 9737 * jump.c (mark_jump_label): Handle subregs of label_refs. 9738 97392002-11-07 David Mosberger <davidm@hpl.hp.com> 9740 9741 * config/ia64/crtend.asm: Include "auto-host.h". 9742 [HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array. 9743 * config/ia64/crtbegin.asm: Similarly. 9744 * config/ia64/t-ia64 (crtbegin.o): Include from current directory. 9745 (crtend.o, crtbeginS.o, crtendS.o): Likewise. 9746 9747 * aclocal.m4 (gcc_AC_INITFINI_ARRAY): New. 9748 * configure.in: Use it if --enable-initfini-array not specified. 9749 * doc/install.texi (Configuration): Document --enable-initfini-array. 9750 * configure, config.in: Rebuild. 9751 97522002-11-07 Jason Thorpe <thorpej@wasabisystems.com> 9753 9754 * config/arm/arm-protos.h (arm_get_frame_size) 9755 (thumb_get_frame_size): New prototypes. 9756 * config/arm/arm.c (arm_get_frame_size) 9757 (thumb_get_frame_size): New functions. 9758 (use_return_insn, arm_output_epilogue, arm_output_function_epilogue) 9759 (arm_compute_initial_elimination_offset, arm_expand_prologue): Use 9760 arm_get_frame_size. 9761 (thumb_expand_prologue, thumb_expand_epilogue): Use 9762 thumb_get_frame_size. 9763 * config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define. 9764 (machine_function): Add frame_size member. 9765 (THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size. 9766 97672002-11-07 Richard Earnshaw <rearnsha@arm.com> 9768 9769 * arm.c (bit_count): Make argument unsigned long. Return unsigned. 9770 Adjust code to use portable unsigned bit manipulation. 9771 (insn_flags, tune_flags): Change type to unsigned. 9772 (struct processors): Make flags unsigned long. 9773 (arm_override_options): Change type of count and current_bit_count 9774 to unsigned. 9775 97762002-11-07 Richard Earnshaw <rearnsha@arm.com> 9777 9778 * arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %. 9779 97802002-11-07 J"orn Rennecke <joern.rennecke@superh.com> 9781 9782 * sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM. 9783 97842002-11-07 Jan Hubicka <jh@suse.cz> 9785 9786 * reg-stack.c (compensate_edge): Fix sanity check. 9787 97882002-11-05 Geoffrey Keating <geoffk@apple.com> 9789 9790 * config.gcc: Don't create crtbegin, crtend on Darwin; do create 9791 crt2.o. Rearrange t-darwin makefiles. 9792 * crtstuff.c [OBJECT_FORMAT_MACHO]: Delete. 9793 * unwind-dw2-fde-darwin.c: New. 9794 * unwind-dw2-fde-glibc.c: Correct comment. 9795 * unwind-dw2-fde.c (__register_frame_info_bases) 9796 [DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end. 9797 (classify_object_over_fdes): Use last_fde. 9798 (add_fdes): Likewise. 9799 (linear_search_fdes): Likewise. 9800 * unwind-dw2-fde.h (struct object) 9801 [DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field. 9802 (last_fde): New. 9803 * config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o. 9804 (ENDFILE_SPEC): No crtend.o. 9805 * config/t-darwin: New. 9806 * config/i386/t-darwin: Delete. 9807 * config/darwin-crt2.c: New. 9808 * config/rs6000/t-darwin: Delete contents duplicated in t-rs6000 9809 or config/t-darwin. 9810 98112002-11-06 David Edelsohn <edelsohn@gnu.org> 9812 9813 PR target/8480 9814 * config/rs6000/rs6000.md (movdi_internal64): Discourage 9815 FPR to FPR moves. 9816 98172002-11-06 Janis Johnson <janis187@us.ibm.com> 9818 9819 * doc/contrib.texi: Merge in the list from the Java web pages. 9820 98212002-11-06 David O'Brien <obrien@FreeBSD.org> 9822 9823 * config/sparc/freebsd: Fix typo. 9824 98252002-11-06 John David Anglin <dave@hiauly1.hia.nrc.ca> 9826 9827 * pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define. 9828 98292002-11-06 Alexandre Oliva <aoliva@redhat.com> 9830 9831 * config/mips/mips.md (call_value_multiple_internal2): Use dla for 9832 non-SImode addresses. 9833 98342002-11-05 Bob Wilson <bob.wilson@acm.org> 9835 9836 * config/xtensa/elf.h (LIB_SPEC): Add "-lhal". 9837 98382002-11-05 John David Anglin <dave2hiauly1.hia.nrc.ca> 9839 9840 * pa64-hpux.h (LIB_SPEC): Fix p and pg options. 9841 (STARTFILE_SPEC): Remove p and pg options. 9842 98432002-11-05 Andrew Haley <aph@redhat.com> 9844 9845 * fold-const.c (fold): Don't transform (a0 op compound(a1,a2)) 9846 to (compound(a1,a0 op a2)) if a0 or a1 have side effects. 9847 98482002-11-05 Richard Sandiford <rsandifo@redhat.com> 9849 9850 * config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to... 9851 * config/mips/mips.c (mips_cannot_change_mode_class): ...here. 9852 98532002-11-04 Dale Johannesen <dalej@apple.com> 9854 9855 * doloop.c (doloop_modify_runtime): Fix loop count computation 9856 for unrolled loops. 9857 * loop.c (loop_invariant_p): Support calling from unroller. 9858 98592002-11-04 Ulrich Weigand <uweigand@de.ibm.com> 9860 9861 * config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx 9862 for comparison. 9863 98642002-11-04 Aldy Hernandez <aldyh@redhat.com> 9865 9866 * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New. 9867 9868 * config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove. 9869 (CLASS_CANNOT_CHANGE_MODE): Remove. 9870 (CANNOT_CHANGE_MODE_CLASS): New. 9871 9872 * config/alpha/alpha.h: Same. 9873 9874 * config/ia64/ia64.h: Same. 9875 9876 * config/mips/mips.h: Same. 9877 9878 * config/s390/s390.h: Same. 9879 9880 * config/sh/sh.h: Same. 9881 9882 * config/pa/pa64-regs.h: Same. 9883 9884 * config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype. 9885 9886 * config/sh/sh.c (sh_cannot_change_mode_class): New. 9887 9888 * config/mips/mips-protos.h (mips_cannot_change_mode_class): Add 9889 prototype. 9890 9891 * config/mips/mips.c (mips_cannot_change_mode_class): New. 9892 9893 * doc/tm.texi (Register Classes): Remove 9894 CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P. 9895 Document CANNOT_CHANGE_MODE_CLASS. 9896 9897 * reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS. 9898 (push_reload): Same. 9899 9900 * simplify-rtx.c (simplify_subreg): Same. 9901 9902 * reload1.c (choose_reload_regs): Same. 9903 9904 * recog.c (register_operand): Same. 9905 9906 * regrename.c (mode_change_ok): Change to use new 9907 CANNOT_CHANGE_MODE_CLASS infrastructure. 9908 9909 * regclass.c (cannot_change_mode_set_regs): New. 9910 Declare subregs_of_mode. 9911 (regclass): Use subregs_of_mode. 9912 Remove references to reg_changes_mode. 9913 (init_reg_sets_1): Remove class_can_change_mode and 9914 reg_changes_mode code. 9915 (invalid_mode_change_p): New. 9916 (dump_regclass): Use invalid_mode_change_p instead of 9917 class_can_change_mode. 9918 (regclass): Same. 9919 (record_operand_costs): Do not set reg_changes_mode. 9920 9921 * local-alloc.c (struct qty): Remove changes_mode field. 9922 (alloc_qty): Remove changes_mode initialization. 9923 (update_qty_class): Remove set of changes_mode. 9924 (find_free_reg): Use subregs_of_mode. 9925 9926 * global.c (find_reg): Use subregs_of_mode info. 9927 9928 * rtl.h (cannot_change_mode_set_regs): New prototype. 9929 (invalid_mode_change_p): Same. 9930 (REG_CANNOT_CHANGE_MODE_P): New macro. 9931 9932 * flow.c (mark_used_regs): Calculate subregs_of_mode. Remove 9933 REG_CHANGES_MODE. 9934 (life_analysis): Clear subregs_of_mode. 9935 9936 * combine.c (subst): Pass class to CLASS_CANNOT_CHANGE_MODE_P. 9937 Remove use of CLASS_CANNOT_CHANGE_MODE. 9938 (simplify_set): Same. 9939 (gen_lowpart_for_combine): Calculate subregs_of_mode. Remove 9940 REG_CHANGES_MODE. 9941 9942 * regs.h: Add extern for subregs_of_mode; 9943 Include hard-reg-set and basic-block. 9944 (REG_CHANGES_MODE): Delete. 9945 99462002-11-03 John David Anglin <dave@hiauly1.hia.nrc.ca> 9947 9948 * jump.c (never_reached_warning): Don't set contains_insn until the 9949 first line note is seen. 9950 99512002-11-03 David Edelsohn <edelsohn@gnu.org> 9952 9953 * config/rs6000/rs6000.md (movti_string): Use string instructions. 9954 99552002-11-03 Roger Sayle <roger@eyesopen.com> 9956 9957 PR c/7128 9958 * c-typeck.c (c_expand_asm_operands): Defend against 9959 error_mark_nodes in the output argument to avoid ICE. 9960 99612002-11-03 Eric Botcazou <ebotcazou@libertysurf.fr> 9962 9963 PR middle-end/8408 9964 * genrecog.c (preds): Handle ADDRESSOF. 9965 (validate_pattern): Mark it as an lvalue. 9966 99672002-11-02 David Edelsohn <edelsohn@gnu.org> 9968 9969 * config/rs6000/rs6000.c (rs6000_override_options): Use string 9970 instructions when optimizing for size. 9971 99722002-11-02 Kazu Hirata <kazu@cs.umass.edu> 9973 9974 * config/h8300/h8300.h: Fix comment typos. 9975 * config/h8300/h8300.md: Likewise. 9976 * config/h8300/lib1funcs.asm: Likewise. 9977 99782002-11-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 9979 9980 Revert this change: 9981 9982 *doc/install.texi (Installing GCC: Configuration): Clarify 9983 the only supported ways to configure gcc. 9984 99852002-11-01 Kazu Hirata <kazu@cs.umass.edu> 9986 9987 * config/h8300/h8300.md (anonymous and:QI pattern): Use 'n' 9988 instead of 'O' for the constraint for the second operand. 9989 99902002-11-01 Mark Mitchell <mark@codesourcery.com> 9991 9992 PR c++/8391 9993 * toplev.c (rest_of_compilation): Do not refuse to output code for 9994 an inline function in a local class. 9995 99962002-11-01 David O'Brien <obrien@FreeBSD.org> 9997 9998 * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__. 9999 (TRANSFER_FROM_TRAMPOLINE): Reformat. 10000 Add comment. 10001 100022002-11-01 Kazu Hirata <kazu@cs.umass.edu> 10003 10004 * config/h8300/h8300.h (CAN_ELIMINATE): Simplify. 10005 100062002-11-01 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com> 10007 10008 * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New. 10009 100102002-11-01 Steve Ellcey <sje@cup.hp.com> 10011 10012 * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove. 10013 (MASK_INLINE_DIV_THR): Remove. 10014 (TARGET_INLINE_DIV_LAT): Remove. 10015 (TARGET_INLINE_DIV_THR): Remove. 10016 (TARGET_INLINE_DIV): Remove. 10017 (MASK_INLINE_FLOAT_DIV_LAT): New macro. 10018 (MASK_INLINE_FLOAT_DIV_THR): New macro. 10019 (MASK_INLINE_INT_DIV_LAT): New macro. 10020 (MASK_INLINE_INT_DIV_THR): New macro. 10021 (TARGET_INLINE_FLOAT_DIV_LAT): New macro. 10022 (TARGET_INLINE_FLOAT_DIV_THR): New macro. 10023 (TARGET_INLINE_INT_DIV_LAT): New macro. 10024 (TARGET_INLINE_INT_DIV_THR): New macro. 10025 (TARGET_INLINE_FLOAT_DIV): New macro. 10026 (TARGET_INLINE_INT_DIV): New macro. 10027 * config/ia64/ia64.md (divsi3): Change to use new macros. 10028 (modsi3): Ditto. 10029 (udivsi3): Ditto. 10030 (umodsi3): Ditto. 10031 (divsi3_internal): Ditto. 10032 (divdi3): Ditto. 10033 (moddi3): Ditto. 10034 (udivdi3): Ditto. 10035 (umoddi3): Ditto. 10036 (divdi3_internal_lat): Ditto. 10037 (divdi3_internal_thr): Ditto. 10038 (divsf3): Ditto. 10039 (divsf3_internal_lat): Ditto. 10040 (divsf3_internal_thr): Ditto. 10041 (divdf3): Ditto. 10042 (divdf3_internal_lat): Ditto. 10043 (divdf3_internal_thr): Ditto. 10044 (divtf3): Ditto. 10045 (divtf3_internal_lat): Ditto. 10046 (divtf3_internal_thr): Ditto. 10047 * config/ia64/ia64.c (ia64_override_options): Change 10048 to check new macros for conflicts in settings. 10049 * doc/invoke.texi (-minline-divide-min-latency): Remove. 10050 (-minline-divide-max-throughput): Remove. 10051 (-minline-float-divide-min-latency): New. 10052 (-minline-float-divide-max-throughput): New. 10053 (-minline-int-divide-min-latency): New. 10054 (-minline-int-divide-max-throughput): New. 10055 100562002-11-01 Richard Earnshaw (rearnsha@arm.com) 10057 10058 PR target/7856 10059 * arm.c (use_return_insn): Don't use a return insn if there are 10060 saved integer regs, but LR is not one of them. 10061 100622002-11-01 Jan Hubicka <jh@suse.cz> 10063 10064 * expr.c (emit_move_insn): Use SCALAR_FLOAT_MODE_P 10065 * machmode.h (SCALAR_FLOAT_MODE_P): New macro. 10066 100672002-10-31 Nathanael Nerode <neroden@gcc.gnu.org> 10068 10069 PR optimization/6162 10070 * doc/md.texi: Document restriction on commutative operand 10071 specification. 10072 100732002-10-31 Eric Christopher <echristo@redhat.com> 10074 10075 * explow.c (convert_memory_address): Use shallow_copy_rtx. 10076 100772002-10-31 Steve Ellcey <sje@cup.hp.com> 10078 10079 * expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN. 10080 100812002-10-31 Steve Ellcey <sje@cup.hp.com> 10082 10083 * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats. 10084 10085Thu Oct 31 Dale Johannesen <dalej@apple.com> 10086 10087 * config/rs6000/darwin.h: Correct formatting in previous. 10088 10089Thu Oct 31 Dale Johannesen <dalej@apple.com> 10090 10091 * config/rs6000/darwin.h: Enable -falign-xxx options. 10092 100932002-10-31 Jan Hubicka <jh@suse.cz> 10094 10095 * i386.c (override_options): Set defaults for flag_omit_frame_pointer, 10096 flag_asynchronous_unwind_tables, flag_pcc_struct_return. 10097 * i386.c (optimization_options): Set flag_omit_frame_pointer, 10098 flag_asynchronous_unwind_tables, flag_pcc_struct_return to 2. 10099 Do not clear -momit-leaf-frame-pointer when profiling. 10100 (ix86_frame_pointer_required): Frame pointer is always required when 10101 profiling. 10102 101032002-10-31 Jan Hubicka <jh@suse.cz> 10104 10105 * i386.md (negdf2_ifs_rex64): Don't allow GPR operand. 10106 101072002-10-31 J"orn Rennecke <joern.rennecke@superh.com> 10108 10109 * sh.h (binary_logical_operator): Declare. 10110 * sh.c (binary_logical_operator): New function. 10111 * sh.md (xordi3+1): New combiner splitter pattern. 10112 101132002-10-31 David O'Brien <obrien@FreeBSD.org> 10114 10115 * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Define 10116 __enable_execute_stack function. 10117 101182002-10-30 Aldy Hernandez <aldyh@redhat.com> 10119 10120 * c-common.c: Add GTY to vector_type_node_list. 10121 101222002-10-30 John David Anglin <dave@hiauly.hia.nrc.ca> 10123 10124 * pa-linux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Define. 10125 * pa-protos.h (attr_length_millicode_call, attr_length_call, 10126 pa_init_machine_status): Declare new global functions. 10127 * pa.c (void copy_fp_args, length_fp_args, get_plabel): Declare and 10128 implement new functions. 10129 (attr_length_millicode_call, attr_length_call): Implement. 10130 (total_code_bytes): Change type to long. 10131 (pa_output_function_prologue): Compute total_code_bytes on TARGET_64BIT. 10132 Reset counter if flag_function_sections. 10133 (output_deferred_plabels): Set output alignment to 3 for TARGET_64BIT. 10134 (output_cbranch): Move call to gen_label_rtx. 10135 (output_millicode_call): Rewrite adding long TARGET_64BIT call, expose 10136 delay slot in all variants, shorten pc-relative calls. 10137 (output_call): Rewrite adding long TARGET_64BIT call, improved delay 10138 slot usage and exposure, various new call variants, and shortened 10139 sequences for some variants on TARGET_PA_20. 10140 Miscellaneous format changes. 10141 * pa.h (total_code_bytes): Change type to long. 10142 (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_LONG_ABS_CALL, 10143 TARGET_LONG_PIC_SDIFF_CALL, TARGET_LONG_PIC_PCREL_CALL): Define. 10144 (TARGET_SWITCHES): Add "-mlong-calls" and "-mno-long-calls" options. 10145 (EXTRA_CONSTRAINT, GO_IF_LEGITIMATE_ADDRESS, 10146 LEGITIMIZE_RELOAD_ADDRESS): Don't use long floating point loads and 10147 stores on TARGET_ELF32. 10148 *pa.md (define_delay): Allow insns in delay on TARGET_PORTABLE_RUNTIME. 10149 (unnamed patterns for mulsi3, divsi3, udivsi3, modsi3, umodsi3 and 10150 canonicalize_funcptr_for_compare expanders): Calculate attribute length 10151 attr_length_millicode_call(). 10152 (call_internal_symref, call_value_internal_symref): Clobber register 1. 10153 Calculate attribute length using attr_length_call(). 10154 (call_internal_reg_64bit, call_value_internal_reg_64bit): Move gp load 10155 to delay slot. 10156 (sibcall, sibcall_value): Rewrite. 10157 (sibcall_internal_symref, sibcall_value_internal_symref): Clobber 10158 register 1. Use attr_length_call(). 10159 (sibcall_internal_symref_64bit, sibcall_value_internal_symref_64bit): 10160 New patterns. 10161 (unamed pattern for canonicalize_funcptr_for_compare): Rewrite. 10162 * som.h (MEMBER_TYPE_FORCES_BLK): Define. 10163 * t-pa64 (TARGET_LIBGCC2_CFLAGS): Add "-mlong-calls". 10164 * doc/invoke.texi (mlong-calls): Document. 10165 101662002-10-30 Roger Sayle <roger@eyesopen.com> 10167 10168 * fold-const.c (fold_binary_op_with_conditional_arg): Improve 10169 handling of cases where one or both branches of the conditional 10170 have void type, i.e. throw an exception or don't return. 10171 (fold): Only apply (and undo) type conversion to the non-void 10172 branches of a COND_EXPR. 10173 101742002-10-30 Mark Mitchell <mark@codesourcery.com> 10175 10176 PR c++/8333 10177 * varasm.c (asm_output_aligned_bss): Do not call 10178 ASM_GLOBALIZE_LABEL. 10179 101802002-10-30 David Edelsohn <edelsohn@gnu.org> 10181 Torbjorn Granlund <tege@swox.com> 10182 10183 * config/rs6000/rs6000.md (load_toc_v4_PIC_1): Use preferred form 10184 for addressibility. 10185 (load_toc_v4_PIC_1b): Same. 10186 101872002-10-30 Kazu Hirata <kazu@cs.umass.edu> 10188 10189 * config/h8300/h8300.c (h8300_eightbit_constant_address_p): 10190 Truncate the addresses for H8/300 using HImode. 10191 101922002-10-29 Hans-Peter Nilsson <hp@bitrange.com> 10193 10194 * toplev.c (rest_of_type_compilation): Return early in case of 10195 errors. 10196 (check_global_declarations): Don't call debug_hooks->global_decl 10197 in case of errors. 10198 101992002-10-28 Andreas Bauer <baueran@in.tum.de> 10200 10201 * doc/c-tree.texi (Tree overview): Fix typos. 10202 102032002-10-29 Phil Edwards <pme@gcc.gnu.org> 10204 10205 * Makefile.in (gnucompare*): Only record bad comparisons 10206 if there really was a bad comparison. 10207 102082002-10-29 Jan Hubicka <jh@suse.cz> 10209 10210 * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H' 10211 * i386.md (movsf*, movdf*): Use 'C' instead of 'H' 10212 * md.texi (machine dependent constraints): Document 'C' 10213 10214 * simplify-rtx.c (simplify_subreg): Fix const_int->vector subregging. 10215 10216 * i386.c (ix86_expand_vector_move): Fix. 10217 10218 * i386.c (ix86_expand_builtin): Use sse2_maskmovdqu_rex64. 10219 * i386.md (sse2_maskmovdqu_rex64): New pattern 10220 10221 PR target/8322 10222 * xmmintrin.h (_mm_stream_pi, _mm_stream_pd): Fix cast. 10223 (ix86_init_mmx_sse_builtins): Fix type. 10224 102252002-10-29 Jason Thorpe <thorpej@wasabisystems.com> 10226 10227 * gthr-posix.h: Include <unistd.h> for feature tests. 10228 (sched_get_priority_max, sched_get_priority_min) 10229 (pthread_getschedparam, pthread_setschedparam): Only use 10230 if _POSIX_THREAD_PRIORITY_SCHEDULING is defined. 10231 (__gthread_objc_thread_set_priority): Don't treat all non-zero 10232 returns from sched_get_priority_max and sched_get_priority_min 10233 as an error. 10234 102352002-10-29 Kazu Hirata <kazu@cs.umass.edu> 10236 10237 * config/h8300/h8300.h (TARGET_DEFAULT): Make it 10238 MASK_QUICKCALL. 10239 102402002-10-29 Kazu Hirata <kazu@cs.umass.edu> 10241 10242 * config/h8300/h8300.c (h8300_eightbit_constant_address_p): New. 10243 (h8300_tiny_constant_address_p): Likewise. 10244 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Use 10245 h8300_eightbit_constant_address_p. 10246 (TINY_CONSTANT_ADDRESS_P): Use h8300_tiny_constant_address_p. 10247 * config/h8300/h8300-protos.h: Add the prototypes for the two 10248 new functions. 10249 102502002-10-29 Kazu Hirata <kazu@cs.umass.edu> 10251 10252 * reload1.c (update_eliminables): Unconditionally check if 10253 frame_pointer_needed has changed. 10254 102552002-10-29 Jan Hubicka <jh@suse.cz> 10256 10257 * toplev.c (rest_of_compilation): Reorganize way reg_scan is called 10258 before final pass. 10259 102602002-10-29 Eric Botcazou <ebotcazou@libertysurf.fr> 10261 10262 PR optimization/8334 10263 * expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation; 10264 check for zero operands explicitly. 10265 102662002-10-29 Richard Sandiford <rsandifo@redhat.com> 10267 10268 * config/mips/mips.md (extv, extzv, insv): Set size of referenced 10269 memory after adjusting to BLKmode. 10270 102712002-10-29 Kazu Hirata <kazu@cs.umass.edu> 10272 10273 * config/h8300/h8300.h (MASK_*): New. 10274 (TARGET_*): Use MASK_*. 10275 102762002-10-28 Jason Thorpe <thorpej@wasabisystems.com> 10277 10278 * config.gcc (*-*-netbsd*): Add NETBSD_ENABLE_PTHREADS to 10279 tm_defines if pthreads are enabled. 10280 * config/netbsd.h (LIB_SPEC): Only support the -pthread option 10281 if NETBSD_ENABLE_PTHREADS is defined. 10282 102832002-10-28 Kazu Hirata <kazu@cs.umass.edu> 10284 10285 * ChangeLog.1: Fix typos. 10286 * cse.c: Fix a comment typo. 10287 * reload1.c: Likewise. 10288 102892002-10-27 Hans-Peter Nilsson <hp@bitrange.com> 10290 10291 * fixinc/inclhack.def (libc1_G_va_list): Correct test_text. 10292 * fixinc/tests/base/_G_config.h: New file. 10293 102942002-10-27 Kazu Hirata <kazu@cs.umass.edu> 10295 10296 * combine.c: Fix comment formatting. 10297 * loop.c: Likewise. 10298 * real.c: Likewise. 10299 * regclass.c: Likewise. 10300 * regmove.c: Likewise. 10301 * regrename.c: Likewise. 10302 * reg-stack.c: Likewise. 10303 * reload1.c: Likewise. 10304 * reload.c: Likewise. 10305 * reload.h: Likewise. 10306 * unroll.c: Likewise. 10307 103082002-10-27 Kazu Hirata <kazu@cs.umass.edu> 10309 10310 * reload1.c (reload): Fix a comment typo. 10311 103122002-10-27 Jan Hubicka <jh@suse.cz> 10313 10314 * linux64.h (DEFAULT_PCC_STRUCT_RETURN): Define. 10315 103162002-10-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 10317 10318 * Makefile.in (dwarf2out.o): Add dependendcy on hashtab.h. 10319 * dwarf2out.c: Include hashtab.h. 10320 (is_main_source): New static variable. 10321 (attr_checksum, die_checksum): Modified to handle die references. 10322 (same_loc_p, same_dw_val_p, same_attr_p, same_die_p, same_die_p_wrap, 10323 unmark_all_dies, htab_cu_hash, htab_cu_eq, htab_cu_del, check_duplicate_cu, 10324 record_comdat_symbol_number): New static functions. 10325 (output_comp_unit, compute_section_prefix, is_type_die, break_out_includes, 10326 mark_dies, unmark_dies, dwarf2out_start_source_file): Modified. 10327 * toplev.c (rest_of_decl_compilation): Call of dwarf2out_decl for type 10328 declarations added. 10329 103302002-10-26 Kazu Hirata <kazu@cs.umass.edu> 10331 10332 * config/h8300/h8300.c (initial_offset): Change to 10333 h8300_initial_elimination_offset. 10334 * config/h8300/h8300.h (INITIAL_ELIMINATION_OFFSET): Use 10335 h8300_initial_elimination_offset. 10336 * config/h8300/h8300-protos.h: Update the prototype. 10337 103382002-10-26 Hans-Peter Nilsson <hp@bitrange.com> 10339 10340 * config/mmix/mmix.h (LIBCALL_VALUE): Use 10341 MMIX_RETURN_VALUE_REGNUM, not MMIX_OUTGOING_RETURN_VALUE_REGNUM. 10342 (FUNCTION_VALUE_REGNO_P): Similar, but move code to... 10343 * config/mmix/mmix.c (mmix_function_value_regno_p): New. 10344 * config/mmix/mmix-protos.h: Remove needless ifdefs on TREE_CODE 10345 and RTX_CODE. 10346 (mmix_function_value_regno_p): Declare. 10347 10348 * config/mmix/mmix.md ("fixuns_truncdfdi2"): Replace unsigned_fix, 10349 invalid for floating point mode result, with fix. 10350 103512002-10-25 Mike Stump <mrs@apple.com> 10352 10353 Fixes gcc.dg/warn-1.c. 10354 * c-typeck.c (warn_for_assignment): Don't print argument number, if zero. 10355 103562002-10-26 Jan Hubicka <jh@suse.cz> 10357 10358 * toplev.c (dump_file_index): Add DFI_ce3. 10359 (dump_file_info): Likewise. 10360 (rest_of_compilation): Run first ifcvt pass before tracer. 10361 103622002-10-25 Steve Ellcey <sje@cup.hp.com> 10363 10364 * config/ia64/hpux.h (BITS_BIG_ENDIAN): Remove. 10365 103662002-10-25 Richard Henderson <rth@redhat.com> 10367 10368 * real.c (real_to_decimal): If the >1 tens reduction loop results 10369 in a negative exponent, fall into the <1 pten computation. 10370 103712002-10-25 Zack Weinberg <zack@codesourcery.com> 10372 10373 PR middle-end/6994 10374 * c-objc-common.c (inline_forbidden_p): Can not inline 10375 functions containing structures or unions containing VLAs. 10376 * tree-inline.c (walk_tree): For all class 't' nodes, walk 10377 TYPE_SIZE and TYPE_SIZE_UNIT. 10378 (copy_tree_r): Copy types if they are variably modified. 10379 103802002-10-25 Ulrich Weigand <uweigand@de.ibm.com> 10381 10382 * config/s390/s390.md: Remove old-style peepholes. 10383 103842002-10-25 Ulrich Weigand <uweigand@de.ibm.com> 10385 10386 * config/s390/s390.c (s390_decompose_address): Do not range check the 10387 displacement if base or index is the argument pointer register. 10388 103892002-10-24 Hans-Peter Nilsson <hp@bitrange.com> 10390 10391 PR other/3337 10392 PR bootstrap/6763 10393 PR bootstrap/8122 10394 * fixinc/inclhack.def (libc1_G_va_list): New fix. 10395 * fixinc/fixincl.x: Regenerate. 10396 * config/i386/linux.h: Move MD_FALLBACK_FRAME_STATE_FOR inside 10397 ifndef IN_LIBGCC2. Wrap it together with signal.h and 10398 sys/ucontext.h inclusion in ifndef USE_GNULIBC_1. 10399 * configure.in (gcc_AC_CHECK_DECLS): Check vasprintf too. 10400 * config.in, configure: Regenerate. 10401 104022002-10-24 Igor Shevlyakov <igor@microunity.com> 10403 10404 * varasm.c (struct rtx_const): Array size 16 for V16QImode. 10405 104062002-10-24 Richard Henderson <rth@redhat.com> 10407 10408 * config/i386/i386.c (x86_output_mi_thunk): Fix x86_64 pic jump. 10409 104102002-10-24 Kazu Hirata <kazu@cs.umass.edu> 10411 10412 * config/h8300/h8300.c (initial_offset): Simplify by using 10413 round_frame_size. 10414 104152002-10-24 Marek Michalkiewicz <marekm@amelek.gda.pl> 10416 10417 * doc/install.texi (avr): Update required binutils version. 10418 104192002-10-24 Theodore A. Roth <troth@openavr.org> 10420 10421 * doc/install.texi: Point avr users at more up-to-date information. 10422 104232002-10-24 Ulrich Weigand <uweigand@de.ibm.com> 10424 10425 * config/s390/s390.md (movdi, movsi, movhi, movqi): Add peepholes2 10426 to pull operands out of the literal pool where possible. 10427 104282002-10-24 Denis Chertykov <denisc@overta.ru> 10429 10430 * config/avr/avr.c (init_cumulative_args): Test fntype for zero. 10431 104322002-10-24 Steve Ellcey <sje@cup.hp.com> 10433 10434 * expr.c (convert_move): If unsignedp is less then zero there 10435 is no equivalent code. 10436 104372002-10-24 Zack Weinberg <zack@codesourcery.com> 10438 10439 * tree.def: Delete mention of nonexistent ARRAY_TYPE fields. 10440 104412002-10-24 Ulrich Weigand <uweigand@de.ibm.com> 10442 10443 * config/s390/s390.h: Rework comments; re-sort target macro definitions 10444 according to the sequence they are defined in the manual. 10445 (POINTER_BOUNDARY): Remove. 10446 104472002-10-24 Kazu Hirata <kazu@cs.umass.edu> 10448 10449 * config/h8300/h8300.c (round_frame_size): Replace 8 with 10450 BITS_PER_UNIT. 10451 104522002-10-24 Kazu Hirata <kazu@cs.umass.edu> 10453 10454 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Make it 10455 64-bit safe. 10456 (TINY_CONSTANT_ADDRESS_P): Likewise. 10457 104582002-10-24 Richard Henderson <rth@redhat.com> 10459 10460 * config/ia64/ia64.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True. 10461 (ia64_output_mi_thunk): Rewrite to use rtl, and to handle the 10462 vcall offset. 10463 104642002-10-24 Richard Henderson <rth@redhat.com> 10465 10466 PR opt/7944 10467 * reload.c (find_reloads_toplev): Mode of X is not important 10468 when simplifying subregs of constants. 10469 104702002-10-24 Richard Sandiford <rsandifo@redhat.com> 10471 10472 * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Add 10473 MIPS_MARCH_CONTROLS_SOFT_FLOAT=1 to $tm_defines. 10474 * config/mips/mips.c (MIPS_MARCH_CONTROLS_SOFT_FLOAT): Default to 0. 10475 (override_options): Base default setting of MASK_SOFT_FLOAT on -march 10476 if MIPS_MARCH_CONTROLS_SOFT_FLOAT. 10477 104782002-10-24 Richard Sandiford <rsandifo@redhat.com> 10479 10480 * optabs.c (expand_binop): Don't reuse the shift target in the 10481 middle of shift sequences. 10482 104832002-10-23 Ziemowit Laski <zlaski@apple.com> 10484 10485 * objc/objc-act.c (get_static_reference): Remove unneeded 10486 TYPE_BINFO initialization. 10487 (get_object-reference): Likewise. 10488 (build_constructor): Tighten precondition check. 10489 (finish_message_expr): Likewise. 10490 104912002-10-23 Jakub Jelinek <jakub@redhat.com> 10492 10493 * config/i386/i386.c (local_symbolic_operand): Move LABEL_REF test 10494 after CONST test. 10495 104962002-10-23 Steve Ellcey <sje@cup.hp.com> 10497 10498 * config/ia64/ia64.c (hfa_element_mode): Don't allow 128 bit floats 10499 in HFAs. 10500 105012002-10-23 Richard Henderson <rth@redhat.com> 10502 10503 * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True. 10504 (alpha_output_mi_thunk_osf): Handle vcall_offset. 10505 105062002-10-23 Zack Weinberg <zack@codesourcery.com> 10507 10508 * langhooks.h (struct lang_hooks_for_tree_inlining): Add 10509 var_mod_type_p. 10510 * langhooks-def.h: Default for tree_inlining.var_mod_type_p is 10511 hook_tree_bool_false. 10512 10513 * tree.c (variably_modified_type_p): Moved here from 10514 cp/tree.c. Use lang_hooks.tree_inlining.var_mod_type_p for 10515 language-specific cases. Due to this, must weaken some 'if 10516 and only if' checks to merely 'if'. 10517 * tree.h: Prototype variably_modified_type_p. 10518 10519 * tree-inline.c (walk_tree): #undef WALK_SUBTREE_TAIL at end. 10520 105212002-10-23 Ulrich Weigand <uweigand@de.ibm.com> 10522 10523 * config/s390/linux.h (CC1_SPEC, CC1PLUS_SPEC): Remove. 10524 * config/s390/s390.c (optimization_options): Disable -fcaller-saves. 10525 10526 * config/s390/s390-protos.h (fp_operand): Remove. 10527 * config/s390/s390.c (fp_operand): Remove. 10528 * config/s390/s390.md ("movdi"): Replace fp_operand by FP_REG_P. 10529 ("*movdi_lhi", "*movdi_lli", "*movdi_larl"): Likewise. 10530 ("movsi", "*movsi_lhi", "*movsi_lli"): Likewise. 10531 (movdi_31, movdf_31 splitters): Likewise. 10532 10533 * config/s390/s390.h (IEEE_FLOAT): Remove. 10534 (TARGET_FLOAT_FORMAT): Define in terms of TARGET_IEEE_FLOAT. 10535 (INT_REGNO_P): Rename to ... 10536 (GENERAL_REGNO_P): ... this. 10537 (FLOAT_REGNO_P): Rename to ... 10538 (FP_REGNO_P): ... this. 10539 (ADDR_REGNO_P): New macro. 10540 (GENERAL_REG_P, ADDR_REG_P, FP_REG_P, CC_REG_P): New macros. 10541 (REGNO_OK_FOR_DATA_P, REGNO_OK_FOR_FP_P): Remove. 10542 (DATA_REG_P, FP_REG_P, ADDRESS_REG_P): Likewise. 10543 (HARD_REGNO_NREGS): Adapt to macro renaming. 10544 (HARD_REGNO_MODE_OK): Likewise. 10545 105462002-10-23 David Edelsohn <edelsohn@gnu.org> 10547 Geoff Keating <geoffk@apple.com> 10548 10549 * config/rs6000/rs6000.c (rs6000_register_move_cost): New function. 10550 (rs6000_memory_move_cost): New function. 10551 * config/rs6000/rs6000-protos.h: Declare them. 10552 * config/rs6000/rs6000.h: Use them. 10553 105542002-10-23 Ulrich Weigand <uweigand@de.ibm.com> 10555 10556 * libgcc2.c (__udiv_w_sdiv): Use attribute ((always_inline)) when 10557 inlining it into other libgcc2 routines. 10558 (__udivmoddi4): Likewise. 10559 105602002-10-22 Nathanael Nerode <neroden@gcc.gnu.org> 10561 10562 * doc/sourcebuild.texi (Test Suites): Improve. 10563 105642002-10-22 Stan Shebs <shebs@apple.com> 10565 10566 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Add missing 10567 case for Darwin. 10568 105692002-10-22 Jim Wilson <wilson@redhat.com> 10570 10571 * config/i386/i386.md (subdi3_1): Add call to ix86_binary_operator_ok. 10572 105732002-10-23 Jan Hubicka <jh@suse.cz> 10574 10575 PR other/8289 10576 * xmmintrin.h: Add const to the argument of loads. 10577 10578 * i386.md (pushv2di): New pattern. 10579 PR target/6890 10580 * xmmintrin.h (_MM_TRANSPOSE4_PS): New. 10581 105822002-10-22 Richard Henderson <rth@redhat.com> 10583 10584 * target.h (gcc_target.asm_out): Merge output_mi_thunk and 10585 output_mi_vcall_thunk into a single hook. Add can_output_mi_thunk. 10586 * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Don't conditionalize. 10587 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove. 10588 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New. 10589 (TARGET_ASM_OUT): Update. 10590 * hooks.c (hook_bool_tree_hwi_hwi_tree_false): New. 10591 (hook_bool_tree_hwi_hwi_tree_true): New. 10592 (default_can_output_mi_thunk_no_vcall): New. 10593 * hooks.h: Declare them. 10594 * system.h (ASM_OUTPUT_MI_THUNK): Poison. 10595 10596 * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New. 10597 (alpha_output_mi_thunk_osf): Add VCALL_OFFSET parameter. 10598 * config/arm/arm.c, config/cris/cris.c, config/frv/frv.c, 10599 config/i960/i960.c, config/ia64/ia64.c, config/m68k/m68k.c, 10600 config/mmix/mmix.c, config/pa/pa.c, config/sparc/sparc.c, 10601 config/stormy16/stormy16.c: Similarly. 10602 10603 * config/i386/i386.c (x86_output_mi_thunk): Merge vcall_offset code. 10604 Handle 64-bit properly. Streamline. 10605 (x86_output_mi_vcall_thunk): Remove. 10606 (x86_this_parameter): Rename from ia32_this_parameter; handle 64-bit. 10607 (x86_can_output_mi_thunk): New. 10608 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove. 10609 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New. 10610 (override_options): Don't zap targetm.asm_out.output_mi_vcall_thunk. 10611 10612 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Rename from 10613 output_mi_thunk; make static; always use function_section. 10614 (TARGET_ASM_OUTPUT_MI_THUNK): New. 10615 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New. 10616 (rs6000_ra_ever_killed): Test no_new_pseudos not 10617 targetm.asm_out.output_mi_thunk in conjunction with thunks. 10618 * config/rs6000/rs6000-protos.h: Update. 10619 * config/rs6000/sysv4.h (TARGET_ASM_OUTPUT_MI_THUNK): Remove. 10620 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't call 10621 xcoffout_declare_function when using rs6000_output_mi_thunk. 10622 10623 * config/s390/s390.c (s390_output_mi_thunk): Rename from 10624 s390_output_mi_vcall_thunk. 10625 (TARGET_ASM_OUTPUT_MI_THUNK): Remove. 10626 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New. 10627 10628 * config/vax/vax.c (vax_output_mi_thunk): Static; add vcall_offset. 10629 (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): New. 10630 * config/vax/vax-protos.h: Update. 10631 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove. 10632 106332002-10-23 Jan Hubicka <jh@suse,cz> 10634 10635 * i386.c (standard_sse_constant_p): Accept vector and integer zeros too. 10636 * i386.h (EXTRA_CONSTRAINT): Recognize 'C' 10637 * i386.md (movti_internal): Use 'C' 10638 10639 * xmmintrin.h (_mm_cmplt_epi*): New. 10640 106412002-10-22 Ulrich Weigand <uweigand@de.ibm.com> 10642 10643 * config/s390/s390.md ("*movdi_64"): Fix op_type attribute. 10644 ("*movdf_64"): Likewise. 10645 ("*lshrdi3_64"): Likewise. 10646 ("blockage"): Add length attribute. 10647 ("lit"): Likewise. 10648 106492002-10-22 Jan Hubicka <jh@suse.cz> 10650 10651 * i386.md: FIx typo. 10652 (sse2_cvtsi2sd, sse2_pslrdq): Fix template. 10653 (sse2_umulv2siv2di3): Fix predicate. 10654 (sse2_psadbw, ashrv8hi3, ashrv4si3, lshrv8hi3 lshrv4si3, 10655 lshrv2di3, ashlv8hi3, ashlv4si3, ashlv2di3): Likewise. 10656 * xmmintrin.h (_mm_mul_epu16): Rename to... 10657 (_mm_mul_epu32): This one. 10658 (_mm_cvtsi32_si128, _mm_cvtsi128_si32): New. 10659 10660 (contains_128bit_aligned_vector_p): Undo accidental checkin. 10661 106622002-10-22 Eric Christopher <echristo@redhat.com> 10663 10664 * config/sparc/sparc.h: Add #error. 10665 106662002-10-22 Ulrich Weigand <uweigand@de.ibm.com> 10667 10668 * config.gcc [s390-*-linux]: Remove s390/t-linux from tmake_file. 10669 [s390x-*-linux*]: Likewise. 10670 * config/s390/t-linux: Remove. 10671 * config/s390/s390.h: Include fixdfdi.h when building libgcc2. 10672 106732002-10-22 Jan Hubicka <jh@suse.cz> 10674 10675 * i386.c (builtin_description): Add IX86_BUILTIN_PUNPCKHQDQ128. 10676 (ix86_expand_builtin): Fix MASKMOVDQU expasion. 10677 * i386.h (ix86_builtins): Add IX86_BUILTIN_PUNPCKHQDQ128. 10678 * i386.md (mmx_punpck?dq): Simplify. 10679 (sse2_pubpcklqdq): Fix. 10680 (sse2_pubpckhqdq): New. 10681 * xmmintrin.h (_mm_unpackhi_epi32): New. 10682 10683 * xmmintrin.h (_mm_cvt*, _mm_stream_pd): Fix prototypes. 10684 (_mm_shufflehi_epi16, _mm_shufflelo_epi16): Fix typo. 10685 106862002-10-22 Nathan Sidwell <nathan@codesourcery.com> 10687 10688 PR c++/7209 10689 * fold_const.c (fold_binary_op_with_conditional_arg): Always 10690 build compound_expr if we used save_expr. 10691 106922002-10-22 Alan Modra <amodra@bigpond.net.au> 10693 10694 * output.h (SECTION_NOTYPE): Define. 10695 * varasm.c (default_section_type_flags_1): Set SECTION_NOTYPE for 10696 init array sections. 10697 (default_elf_asm_named_section): Mind SECTION_NOTYPE. 10698 * config/arm/arm.c (arm_elf_asm_named_section): Likewise. Also 10699 merge TLS support. 10700 107012002-10-21 Richard Henderson <rth@redhat.com> 10702 10703 * real.c (sticky_rshift_significand): Return inexact, don't 10704 or it in immediately. 10705 (sub_significands): Accept incomming carry. 10706 (div_significands, rtd_divmod): Update for sub_significands change. 10707 (round_for_format): Update for sticky_rshift_significand change. 10708 (do_add): Don't involve the inexact bit in addition, do give the 10709 inexact bit as the subtraction carry-in. 10710 (encode_internal, decode_internal, real_internal_format): New. 10711 * real.h (real_internal_format): Declare. 10712 107132002-10-21 Ulrich Weigand <uweigand@de.ibm.com> 10714 10715 * libgcc2.c: Fix __udiv_w_sdiv breakage on platforms that 10716 don't define sdiv_qrnnd. 10717 107182002-10-21 Kazu Hirata <kazu@cs.umass.edu> 10719 10720 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Simplify 10721 using IN_RANGE. 10722 (TINY_CONSTANT_ADDRESS_P): Likewise. 10723 107242002-10-22 Jan Hubicka <jh@suse.cz> 10725 10726 * i386.c (builtin_description): Add punpcklqdq and movdq2q 10727 (ix86_init_mmx_sse_builtins): Add v2di_ftype_void, di_ftype_v2di, 10728 v16qi_ftype_pchar, void_ftype_pchar_v16qi, v4si_ftype_pchar, 10729 void_ftype_pchar_v4si; Initialize __builtin_ia32_movdq2q, 10730 __builtin_ia32_loaddqa, __builtin_ia32_loaddqu, __builtin_ia32_loadd 10731 __builtin_ia32_storedqa, __builtin_ia32_storedqu, __builtin_ia32_stored 10732 __builtin_ia32_setzero128. 10733 (ix86_expand_builtin): Handle IX86_BUILTIN_CLRTI, IX86_BUILTIN_LOADDQA, 10734 IX86_BUILTIN_LOADDQU, IX86_BUILTIN_LOADD, IX86_BUILTIN_STOREDQA, 10735 IX86_BUILTIN_STOREDQU, IX86_BUILTIN_STORED, Ix86_BUILTIN_MOVQ. 10736 * i386.h (ix86_builtins): Add IX86_BUILTIN_LOADDQA, IX86_BUILTIN_LOADDQU, 10737 IX86_BUILTIN_STOREDQA, IX86_BUILTIN_STOREDQU, IX86_BUILTIN_LOADD, 10738 IX86_BUILTIN_STORED, IX86_BUILTIN_CLRTI, IX86_BUILTIN_MOVDQ2Q, 10739 IX86_BUILTIN_PUNPCKLQDQ128, Ix86_BUILTIN_MOVQ. 10740 * i386.md (sse2_punpcklqdq, sse2_movqsse2_loadd, sse2_stored, 10741 sse2_movq): New patterns. 10742 (sse2_movdqa, sse2_movdqu, sse2_movdq2q): Fix. 10743 * xmmintrin.h (_mm_load_si128, _mm_loadu_si128, _mm_loadl_epi64, 10744 _mm_store_si128, _mm_storeu_si128, _mm_storel_epi64, 10745 _mm_setzero_si128, _mm_set_epi64, _mm_set_epi32, _mm_set_epi16, 10746 _mm_set_epi8, _mm_set1_epi64, _mm_set1_epi32, _mm_set1_epi16, 10747 _mm_set1_epi8, _mm_setr_epi64, _mm_setr_epi32, _mm_setr_epi16, 10748 _mm_setr_epi8, _mm_unpacklo_epi64,_mm_set_moveq): New functions. 10749 (_mm_insert_epi16): Fix. 10750 107512002-10-21 Dale Johannesen <dalej@apple.com> 10752 10753 * config/rs6000/rs6000.c (rs6000_reverse_condition): Handle 10754 unsafe math reversals correctly for RTL generation. 10755 (output_cbranch): Replace rs6000_reverse_condition call 10756 by its former definition. 10757 107582002-10-21 Jakub Jelinek <jakub@redhat.com> 10759 10760 * config/i386/i386.c (x86_64_sign_extended_value): Add allow_rip 10761 argument. In CM_SMALL_PIC model consider SYMBOL_REFs binding locally or 10762 from constant pool or LABEL_REFs as sign extended if allow_rip. 10763 Change all +-1GB limits to +-16MB. 10764 (x86_64_general_operand, x86_64_szext_general_operand, 10765 x86_64_nonmemory_operand, x86_64_movabs_operand, 10766 x86_64_szext_nonmemory_operand, x86_64_immediate_operand, 10767 legitimate_address_p, ix86_expand_int_movcc): Update callers. 10768 (local_symbolic_operand): Don't allow offsets bigger than +-16MB 10769 in CM_SMALL_PIC model. 10770 (legitimate_pic_address_disp_p): Don't check offsets before 10771 calling local_symbolic_operand. 10772 (legitimize_pic_address): Force offsets bigger than +-16MB into 10773 register. 10774 * config/i386/i386.h (EXTRA_CONSTRAINT, CONST_COSTS): Likewise. 10775 * config/i386/i386-protos.h (x86_64_sign_extended_value): Update 10776 prototype. 10777 10778 * configure.in: Test for @GOTNTPOFF and @INDNTPOFF on IA-32 too. 10779 Add x86-64 test. Set tls_first_minor to 14 on IA-32 and x86-64. 10780 * configure: Rebuilt. 10781 * config/i386/i386.c (x86_64_sign_extended_value): Don't allow TLS 10782 SYMBOL_REFs unless enclosed in UNSPEC. Handle UNSPEC_DTPOFF, 10783 UNSPEC_GOTNTPOFF and UNSPEC_NTPOFF. 10784 (legitimate_address_p): Allow foo@dtpoff(base) even on TARGET_64BIT 10785 -fpic. 10786 (ix86_encode_section_info): Don't ever generate TLSGD or TLSLD for 10787 non-pic code if TARGET_64BIT. 10788 (legitimize_address): Generate 64-bit TLS sequences. 10789 (output_pic_addr_const): Support x86-64 TLS operators. 10790 (i386_output_dwarf_dtprel): Output 64-bit DTPOFF as .long f@DTPOFF, 0. 10791 (print_operand_address): Use %fs instead of %gs on TARGET_64BIT. 10792 Don't append (%rip) in 64-bit TLSGD and TLSLD sequences. 10793 (output_addr_const_extra): Support x86-64 TLS operators. 10794 (maybe_get_pool_constant): Handle TARGET_64BIT -fpic. 10795 (ix86_tls_get_addr): Use __tls_get_addr on TARGET_64BIT 10796 unconditionally. 10797 * config/i386/i386.md (*tls_global_dynamic_gnu): Renamed to... 10798 (*tls_global_dynamic_32_gnu): ..., add !TARGET_64BIT. 10799 (*tls_global_dynamic_sun): Renamed to... 10800 (*tls_global_dynamic_32_sun): ..., add !TARGET_64BIT. 10801 (tls_global_dynamic): Renamed to... 10802 (tls_global_dynamic_32): ... this. 10803 (tls_global_dynamic_64, *tls_global_dynamic_64): New. 10804 (*tls_local_dynamic_base_dynamic_gnu): Renamed to... 10805 (*tls_local_dynamic_base_dynamic_32_gnu): ..., add !TARGET_64BIT. 10806 (*tls_local_dynamic_base_dynamic_sun): Renamed to... 10807 (*tls_local_dynamic_base_dynamic_32_sun): ..., add !TARGET_64BIT. 10808 (tls_local_dynamic_base_dynamic): Renamed to... 10809 (tls_local_dynamic_base_dynamic_32): ... this. 10810 (tls_local_dynamic_base_dynamic_64, 10811 *tls_local_dynamic_base_dynamic_64): New. 10812 (*tls_local_dynamic_once): Renamed to... 10813 (*tls_local_dynamic_32_once): ... this. 10814 108152002-10-21 Ulrich Weigand <uweigand@de.ibm.com> 10816 10817 * libgcc2.c: Inline __udiv_w_sdiv when compiling __udivdi3, 10818 __divdi3, __umoddi3, or __moddi3. 10819 108202002-10-21 Ulrich Weigand <uweigand@de.ibm.com> 10821 10822 * c-opts.c (missing_arg): Use cl_options[opt_index].opt_code 10823 instead of just opt_index as switch expression. 10824 10825 * calls.c (store_one_arg): Change type of 'excess_align' 10826 to unsigned int. 10827 10828 * profile.c (output_gcov_string): Change type of 'temp' 10829 to size_t. 10830 108312002-10-21 Ulrich Weigand <uweigand@de.ibm.com> 10832 10833 * config/s390/fixdfdi.h (__fixunsdfdi, __fixdfdi): Add prototypes. 10834 (__fixunssfdi, __fixsfdi): Likewise. 10835 * config/s390/s390.c (s390_single_hi): Initialize 'value'. 10836 (s390_single_qi): Likewise. 10837 (s390_emit_epilogue): Initialize 'offset'. Remove signed vs. 10838 unsigned comparison warning. 10839 (s390_return_addr_rtx): New function. 10840 * config/s390/s390-protos.h (s390_return_addr_rtx): Declare it. 10841 * config/s390/s390.h (RETURN_ADDR_RTX): Use it. 10842 (HARD_REGNO_MODE_OK): Rewrite condition to silence warnings. 10843 108442002-10-21 Ulrich Weigand <uweigand@de.ibm.com> 10845 10846 * config/s390/s390.c (s390_output_mi_vcall_thunk): New function. 10847 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define target hook. 10848 (s390_output_mi_thunk): Remove. 10849 (TARGET_ASM_OUTPUT_MI_THUNK): Remove. 10850 108512002-10-21 Kazu Hirata <kazu@cs.umass.edu> 10852 10853 * config/h8300/h8300.h (N_REG_CLASSES): Parenthesize. 10854 108552002-10-20 Richard Henderson <rth@redhat.com> 10856 10857 * target.h (struct gcc_target): Line wrap. 10858 10859 * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Static. 10860 (TARGET_ASM_OUTPUT_MI_THUNK): Define here... 10861 * config/alpha/alpha.h: ... not here. 10862 * config/alpha/alpha-protos.h: Update. 10863 10864 * config/arm/arm.c, config/arm/arm.h, config/arm/arm-protos.h 10865 config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h, 10866 config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h, 10867 config/i386/i386-protos.h, config/i386/i386.c, config/i386/openbsd.h, 10868 config/i386/unix.h, config/i960/i960-protos.h, config/i960/i960.c, 10869 config/i960/i960.h, config/ia64/ia64-protos.h, config/ia64/ia64.c, 10870 config/ia64/ia64.h, config/m68k/linux.h, config/m68k/m68k-protos.h, 10871 config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/m68k/openbsd.h, 10872 config/mmix/mmix-protos.h, config/mmix/mmix.c, config/mmix/mmix.h, 10873 config/pa/pa-protos.h, config/pa/pa.c, config/pa/pa.h, 10874 config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h, 10875 config/sparc/openbsd.h, config/sparc/sparc-protos.h, 10876 config/sparc/sparc.c, config/sparc/sparc.h, 10877 config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c, 10878 config/stormy16/stormy16.h: Similarly. 10879 10880 * config/m68k/m68k.c (m68k_output_mi_thunk): Replicate mnemonic 10881 selection logic from call patterns. 10882 108832002-10-20 Mark Mitchell <mark@codesourcery.com> 10884 10885 * config/m68k/m68k.c (m68k_output_mi_thunk): Fix typo. 10886 108872002-10-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 10888 10889 PR other/8202 10890 * i386.c (ix86_init_mmx_sse_builtins, ix86_expand_builtin): Define and 10891 expand __builtin_ia32_pslldqi128 and __builtin_ia32_psrldqi128. 10892 * i386.h (IX86_BUILTIN_PSLLDQI128, IX86_BUILTIN_PSRLDQI128): New. 10893 * xmmintrin.h (_mm_srli_si128, _mm_slli_si128): New. 10894 108952002-10-20 Roger Sayle <roger@eyesopen.com> 10896 10897 PR c/761 10898 * toplev.c (flag_unsafe_profile_arcs): Remove. 10899 (flag_bounded_pointers): Remove. 10900 (flag_bounds_check): Correct comments. 10901 (lang_independent_options): Remove -funsafe-profile-arcs and 10902 -fbounded-pointers. Correct -fbounds-check comments. 10903 10904 * flags.h: Correct flag_schedule_interblock comments. 10905 (flag_bounded_pointers): Remove prototype. 10906 (flag_bounds_check): Correct comments. 10907 10908 * c-opts.c (c_common_init_options): No need to mark 10909 flag_bounds_check as unspecified. 10910 (c_common_post_options): And no need to set it from 10911 flag_bounded_pointers if its still unspecified. 10912 10913 * doc/invoke.texi: Fix some overfull hboxes in "make dvi". 10914 Document --version, -feliminate-dwarf-2-dups, -fno-sched-interblock, 10915 -fno-sched-spec, -fsched-spec-load, -fsched-spec-load-dangerous, 10916 -fsched-verbose=n, -fno-branch-count-reg and -fbounds-check. 10917 109182002-10-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 10919 Mark Mitchell <mark@codesourcery.com> 10920 10921 * alpha-protos.h (alpha_output_mi_thunk_osf): Update signature to 10922 match target.h. 10923 * arm-protos.h, arm.c (arm_output_mi_thunk): Likewise. 10924 * cris-protos.h, cris.c (cris_asm_output_mi_thunk): Likewise. 10925 * frv-protos.h, frv.c (frv_asm_output_mi_thunk): Likewise. 10926 * i386-protos.h, i386.c (x86_output_mi_vcall_thunk, 10927 x86_output_mi_thunk): Likewise. 10928 * i960-protos.h, i960.c (i960_output_mi_thunk): Likewise. 10929 * ia64-protos.h, ia64.c (ia64_output_mi_thunk): Likewise. 10930 * m68k-protos.h, m68k.c (m68k_output_mi_thunk): Likewise. 10931 * mmix-protos.h, mmix.c (mmix_asm_output_mi_thunk): Likewise. 10932 * rs6000-protos.h, rs6000.c (output_mi_thunk): Likewise. 10933 * s390-protos.h, s390.c (s390_output_mi_thunk): Likewise. 10934 * stormy16-protos.h, stormy16.c (xstormy16_asm_output_mi_thunk): 10935 Likewise. 10936 * vax-protos.h, vax.c (vax_output_mi_thunk): Likewise. 10937 10938 * target.h (gcc_target): Update output_mi_thunk and 10939 output_mi_vcall_thunk to take a HOST_WIDE_INT delta and 10940 vcall_index. 10941 10942 * config/alpha/alpha.c: Replace ASM_OUTPUT_MI_THUNK with 10943 TARGET_ASM_OUTPUT_MI_THUNK in comments. 10944 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): Don't #undef it. 10945 (TARGET_ASM_OUTPUT_MI_THUNK): #undef it. 10946 * config/frv/frv.h (DEFAULT_VTABLE_THUNKS): Remove definition. 10947 * config/i386/i386-protos.h (x86_output_mi_vcall_thunk): Update 10948 signature. 10949 * config/i386/i386.c (x86_output_mi_vcall_thunk): Likewise. 10950 * config/i386/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with 10951 TARGET_ASM_OUTPUT_MI_THUNK in comments. 10952 * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Don't define. 10953 (TARGET_ASM_OUTPUT_MI_THUNK): Do define. 10954 * config/m68k/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with 10955 TARGET_ASM_OUTPUT_MI_THUNK in comments. 10956 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Remove #ifdef 10957 ASM_OUTPUT_MI_THUNK and replace with check of targetm. 10958 10959 * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Update signature. 10960 (TARGET_ASM_OUTPU_MI_VCALL_THUNK): Likewise. 10961 109622002-10-19 Brad Lucier <lucier@math.purdue.edu> 10963 10964 * real.c (do_add): Fix 0+0 sign corner case. 10965 (do_divide): Fix Inf/0 corner case. 10966 109672002-10-20 Jan Hubicka <jh@suse.cz> 10968 10969 * i386.c (classify_argument): Pass MMX arguments in memory 10970 (ix86_expand_builtin): Expand proper address mode for cflush. 10971 * i386.md (movdqa): Fix typo. 10972 (sse2_cflush): Accept DImode addresses. 10973 10974 * xmmintrin.h (_mm_sqrt_sd): Accept two arguments. 10975 (_mm_max_sd): Fix pasto. 10976 (_mm_storeh_pd, _mm_storel_pd): Fix. 10977 10978 * i386.c (bdesc_comi): Fix to match specification. 10979 (ix86_expand_sse_comi): Emit the comparison properly. 10980 * i386.md (sse_comi, sse2_comi, sse_ucomi, sse2_ucomi): 10981 Do not use comparison operator. 10982 (vnmaskcmp): Fix template. 10983 10984 * xmmintrin.h (_mm_cvtps_pi16): Fix. 10985 109862002-10-19 Sebastian Pop <s.pop@laposte.net> 10987 10988 * dependence.c : Removed. 10989 * Makefile.in : Remove dependence.o. 10990 109912002-10-19 Jan Hubicka <jh@suse.cz> 10992 10993 * mmintrin.h (__m64): typedef it to v2si. 10994 (_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16, 10995 _mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16, 10996 _mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64, 10997 _mm_srli_pi64, _mm_and_si64, _mm_andnot_si64, 10998 _mm_or_si64, _mm_xor_si64): Add neccesary casts. 10999 * xmmintrin.h (_mm_setzero_si64): Likewise. 11000 11001 * i386.h (ALIGN_MODE_128): Update comment; add missing modes 11002 (SSE_REG_MODE_P, MMX_REG_MODE_P): New macros. 11003 11004 PR target/7693 11005 Patch by Shawn Wagner 11006 * mmintrin.h: Replace pi64 by si64. 11007 110082002-10-18 David Edelsohn <edelsohn@gnu.org> 11009 11010 * rs6000.md (movdf_hardfloat32): Order alternatives consistently. 11011 Use length of 4 not *. 11012 (movdf_hardfloat64): Same. Support DFmode moves to/from CTR/LR. 11013 (movdf_softfloat64): Likewise. 11014 (movdi_internal32): Use length of 4 not *. 11015 (movti_power): Same. 11016 (ctrsi, ctrdi): Same. 11017 110182002-10-18 Zack Weinberg <zack@codesourcery.com> 11019 11020 * c-decl.c (start_decl): Point users of the old initialized- 11021 typedef extension at __typeof__. 11022 110232002-10-18 Richard Henderson <rth@redhat.com> 11024 11025 * real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New. 11026 (real_to_decimal): Re-implement using the logic from the 11027 gcc 3.2 etoasc. Comment heavily. 11028 (div_significands): Simplify loop startup and comparison logic. 11029 110302002-10-18 Mark Mitchell <mark@codesourcery.com> 11031 11032 * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL. 11033 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise. 11034 (TARGET_ASM_OUT): Add them. 11035 * target.h (asm_out): Add output_mi_thunk and 11036 output_mi_vcall_thunk. 11037 * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11038 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11039 * config/arm/arm-protos.h (arm_output_mi_thunk): Declare. 11040 * config/arm/arm.c (arm_output_mi_thunk): Define. 11041 * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11042 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11043 * config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11044 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11045 * config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11046 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11047 * config/i386/i386-protos.h (x86_output_mi_thunk): Adjust 11048 prototype. 11049 (x86_output_mi_vcall_thunk): Declare. 11050 * config/i386/i386.c (override_options): Clear 11051 output_mi_vcall_thunk in 64-bit mode. 11052 (ix86_fntype_regparm): New function. 11053 (ix86_return_pops_args): Use it. 11054 (ia32_this_parameter): New function. 11055 (x86_output_mi_vcall_thunk): New function. 11056 (x86_output_mi_thunk): Use it 11057 * config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust. 11058 (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define. 11059 * config/i960/i960-protos.h (i960_output_mi_thunk): Declare. 11060 * config/i960/i960.c (i960_output_mi_thunk): New function. 11061 * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust. 11062 * config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare. 11063 * config/ia64/ia64.c (ia64_output_mi_thunk): Define. 11064 * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11065 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11066 * config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function. 11067 * config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11068 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11069 * config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11070 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11071 * config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11072 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11073 * config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11074 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11075 * config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11076 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11077 * config/s390/s390-protos.h (s390_output_mi_thunk): Declare. 11078 * config/s390/s390.c (s390_output_mi_thunk): Define. 11079 * config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11080 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11081 * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11082 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11083 * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11084 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11085 * config/vax/vax-protos.h (vax_output_mi_thunk): Declare. 11086 * config/vax/vax.c (vax_output_mi_thunk): Define. 11087 * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ... 11088 (TARGET_ASM_OUTPUT_MI_THUNK): ... this. 11089 * doc/tm.texi: Adjust documentation. 11090 110912002-10-18 Jason Thorpe <thorpej@wasabisystems.com> 11092 11093 * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define 11094 __enable_execute_stack function. 11095 * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define 11096 as NETBSD_ENABLE_EXECUTE_STACK. 11097 * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto. 11098 * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto. 11099 * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto. 11100 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto. 11101 * config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto. 11102 111032002-10-18 Jason Thorpe <thorpej@wasabisystems.com> 11104 11105 * config/i386/i386.c (x86_initialize_trampoline): Emit a call 11106 to __enable_execute_stack with the address of the trampoline 11107 if TRANSFER_FROM_TRAMPOLINE is defined. 11108 * config/i386/i386.h (TARGET_64BIT): Expand to a compile-time 11109 constant if building libgcc2. 11110 111112002-10-17 Roger Sayle <roger@eyesopen.com> 11112 11113 * doc/c-tree.texi: Update description of COND_EXPR tree nodes. 11114 111152002-10-17 Geoffrey Keating <geoffk@apple.com> 11116 11117 * config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes 11118 in CTR/LR/MQ. 11119 * config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves 11120 to/from CTR/LR/MQ. 11121 (movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ. 11122 (movsf_softfloat): Likewise. 11123 111242002-10-17 Janis Johnson <janis187@us.ibm.com> 11125 11126 * Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS. 11127 111282002-10-17 Jason Thorpe <thorpej@wasabisystems.com> 11129 11130 * config/alpha/alpha.c (alpha_initialize_trampoline): Use 11131 tramp, not addr, to pass the trampoline address to 11132 __enable_execute_stack. 11133 111342002-10-17 Jan Hubicka <jh@suse.cz> 11135 11136 * mmintrin.h: Guard by __MMX__ 11137 * xmmintrin.h: Guard by __SSE__ 11138 11139 PR other/8062 11140 * xmmintrin.h (_MM_SHUFFLE2): New macro. 11141 (_mm_load*_?d): New functions. 11142 (_mm_set*_?d): New functions. 11143 (_mm_store*_?d): New functions. 11144 111452002-10-16 Jan Hubicka <jh@suse.cz> 11146 11147 Really commit patch announced at Oct 14 11148 PR c/7344 11149 * predict.c (can_predict_insn_p): New function. 11150 (estimate_probability): Avoid unnecesary work. 11151 (process_note_prediction): Likewise. 11152 * toplev.c (rest_of_compilation): Account early branch prediction pass 11153 as TV_BRANCH_PROB. 11154 11155 PR other/8048 11156 Found by Ian Ollmann 11157 * xmmintrin.h (_mm_shuffle_pd): Fix typo. 11158 (_mm_load?_pd): Likewise. 11159 (_mm_store?_pd): Likewise. 11160 11161 PR target/7386 11162 * i386.c (builtin_description):Drop cmpg[te]s[sd]. 11163 * xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using 11164 swapped alternative. 11165 11166 PR opt/7630 11167 * reload1.c (reload_inner_reg_of_subreg): New argument output; 11168 (push_reload): Update call. 11169 111702002-10-17 Richard Sandiford <rsandifo@redhat.com> 11171 11172 * config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines 11173 if using mips/elf.h or mips/elf64.h. 11174 * config/mips/elf.h (OBJECT_FORMAT_ELF): Remove. 11175 * config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove. 11176 111772002-10-16 Aldy Hernandez <aldyh@redhat.com> 11178 11179 * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to 11180 SI. 11181 111822002-10-16 Ulrich Weigand <uweigand@de.ibm.com> 11183 11184 * config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove. 11185 (LPREFIX): Likewise. 11186 (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME, 11187 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, 11188 ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS, 11189 TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, 11190 GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h. 11191 11192 * config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, 11193 ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, 11194 ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, 11195 BSS_SECTION_ASM_OP): Move from linux.h. 11196 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise. 11197 Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX. 11198 11199 * config/s390/s390.c (s390_function_profiler): Use 11200 ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX. 11201 112022002-10-15 Richard Henderson <rth@redhat.com> 11203 11204 * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS 11205 as arguments. Bound DIGITS by the available buffer size. 11206 (real_to_hexadecimal): Likewise. 11207 * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes. 11208 (REAL_VALUE_TO_DECIMAL): Remove. 11209 * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c, 11210 sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c, 11211 config/i370/i370.h, config/i386/i386.c, config/i960/i960.c, 11212 config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c, 11213 config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h, 11214 config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c, 11215 config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to 11216 use real_to_decimal directly, and with the proper arguments. 11217 * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove. 11218 112192002-10-15 Jim Wilson <wilson@redhat.com> 11220 11221 * reload1.c (merge_assigned_reloads): After converting overlapping 11222 reloads to RELOAD_OTHER, abort if there are now conflicting reloads. 11223 11224 * config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok. 11225 112262002-10-15 Jan Hubicka <jh@suse.cz> 11227 11228 * expr.c (do_tablejump): Fix typo in my previous commit. 11229 112302002-10-15 Richard Sandiford <rsandifo@redhat.com> 11231 11232 * config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}. 11233 112342002-10-15 Ulrich Weigand <uweigand@de.ibm.com> 11235 11236 * config/s390/s390.c (s390_split_branches): Add return 11237 value. Add parameters TEMP_REG and TEMP_USED. Use unspec 104. 11238 11239 (find_base_register_in_addr): New function. 11240 (find_base_register_ref): New function. 11241 (replace_base_register_ref): New function. 11242 11243 (struct constant_pool): Add members pool_insn, insns, and anchor. 11244 Remove member last_insn. 11245 (s390_start_pool): Initialize them. 11246 (s390_end_pool): Emit pool placeholder insn. 11247 (s390_add_pool_insn): New function. 11248 (s390_find_pool): Use insns bitmap instead of addresses. 11249 (s390_dump_pool): Replace placeholder insn. Emit anchor. 11250 Replace unspec 104 by local-pool-relative references. 11251 (s390_output_constant_pool): Output anchor label if required. 11252 (s390_output_symbolic_const): Handle unspec 104 and 105. 11253 (s390_add_pool): Remove, replace by ... 11254 (s390_add_constant, s390_find_constant): ... these new functions. 11255 (s390_add_anchor): New function. 11256 11257 (s390_chunkify_pool): Delete, replace by ... 11258 (s390_chunkify_start, s390_chunkify_finish, 11259 s390_chunkify_cancel): ... these new functions. 11260 (s390_optimize_prolog): Add parameter TEMP_REGNO. 11261 Recompute register live data for special registers. 11262 (s390_fixup_clobbered_return_reg): New function. 11263 (s390_machine_dependent_reorg): Rewrite to use new 11264 s390_chunkify_... routines. 11265 11266 config/s390/s390.md ("reload_base"): Rename to ... 11267 ("reload_base_31"): ... this. 11268 ("reload_base_64"): New insn. 11269 ("reload_base2"): Remove. 11270 ("reload_anchor"): New insn. 11271 ("pool"): New insn. 11272 11273 s390.c (s390_pool_overflow): Remove. 11274 s390.h (s390_pool_overflow): Likewise. 11275 s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow. 11276 112772002-10-15 J"orn Rennecke <joern.rennecke@superh.com> 11278 11279 * sh.md (movv8qi_i+2): Don't split if source is -1. 11280 112812002-10-15 Janis Johnson <janis187@us.ibm.com> 11282 11283 * doc/install.texi: Formatting changes for conformance to HTML 4.01. 11284 112852002-10-15 Ulrich Weigand <uweigand@de.ibm.com> 11286 11287 PR opt/7409 11288 * loop.c (loop_regs_scan): Mark registers used for function 11289 argument passing as MAY_NOT_OPTIMIZE. 11290 112912002-10-14 Jan Hubicka <jh@suse.cz> 11292 11293 * i386.md (movv2di_internal): New pattern. 11294 (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate. 11295 (movv2di): New expander. 11296 * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands. 11297 11298 * i386.c (ix86_expand_timode_binop_builtin): Delete. 11299 (builtin_description): Add SSE1 logicals; rename SSE2 logicals. 11300 (ix86_init_mmx_sse_builtins): Kill SSE1 logicals. 11301 (ix86_expand_builtin): Likewise. 11302 * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2, 11303 sse_andti3, 11304 sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2, 11305 sse_andnti3, 11306 sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2, 11307 sse_orti3, 11308 sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2, 11309 sse_xorti3): Kill. 11310 (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3, 11311 sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders. 11312 (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3, 11313 *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns. 11314 (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3, 11315 *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns. 11316 11317 * xmmintrin.h (__m128i): Define as __v2di. 11318 11319 PR c++/6419 11320 (expand_expr): Use DECL_RTL_SET_P. 11321 113222002-10-14 Roger Sayle <roger@eyesopen.com> 11323 11324 * combine.c (simplify_set): Treat MODE_CC registers like cc0. 11325 113262002-10-14 Roger Sayle <roger@eyesopen.com> 11327 Zack Weinberg <zack@codesourcery.com> 11328 11329 * config/i386/i386.c (k6_cost): Correct typo. 11330 113312002-10-14 Mark Mitchell <mark@codesourcery.com> 11332 11333 PR optimization/6631 11334 * alias.c (objects_must_conflict_p): Check honor_readonly when 11335 examining TYPE_READONLY. 11336 * function.c (assign_stack_temp_for_type): Likewise. 11337 113382002-10-14 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de> 11339 11340 * config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix): 11341 Swap zero extension arguments. 11342 (umaxhi3): Fix instruction class. 11343 PR target/7211 11344 (prefetch): Fix prefetch instructions. 11345 PR target/7238 11346 (pkwb): Fix output constraint. 11347 113482002-10-14 Alexandre Oliva <aoliva@redhat.com> 11349 11350 * config/mips/mips.c (print_operand): Increase buffer size for 11351 real numbers. 11352 113532002-10-14 Richard Henderson <rth@redhat.com> 11354 11355 PR opt/8165 11356 * gcse.c (adjust_libcall_notes): Revert last change. 11357 * simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM. 11358 113592002-10-14 Andrew Haley <aph@redhat.com> 11360 11361 * tree-inline.c (remap_block): All local class initialization 11362 flags go in the outermost scope. 11363 (expand_call_inline): Call java_inlining_map_static_initializers. 11364 (expand_call_inline): Call java_inlining_merge_static_initializers. 11365 * java/lang.c (merge_init_test_initialization): New. 11366 (java_inlining_merge_static_initializers): New. 11367 (inline_init_test_initialization): New. 11368 (java_inlining_map_static_initializers): New. 11369 11370 * tree-inline.c (expand_call_inline): Convert retvar to expected 11371 type. 11372 113732002-10-14 Graham Stott <graham.stott@btinternet.com> 11374 11375 * stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check. 11376 113772002-10-14 Aldy Hernandez <aldyh@redhat.com> 11378 11379 * stmt.c: Fix typo in comment. 11380 113812002-10-14 J"orn Rennecke <joern.rennecke@superh.com> 11382 11383 * c-common.c (c_common_type_for_mode): Add V2HImode case. 11384 * tree.c (build_common_tree_nodes_2): Initialize 11385 unsigned_V2HI_type_node and V2HI_type_node. 11386 * tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE. 11387 (unsigned_V2HI_type_node, V2HI_type_node): Define. 11388 113892002-10-14 Jakub Jelinek <jakub@redhat.com> 11390 11391 * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): 11392 Handle TARGET_64BIT. 11393 113942002-10-14 Richard Sandiford <rsandifo@redhat.com> 11395 11396 * config/mips/vr.h (DRIVER_SELF_SPECS): Define. 11397 * config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32. 11398 (MULTILIB_DIRNAMES): Remove long32. 11399 (MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs. 11400 (MULTILIB_REDUNDANT_DIRS): Remove. 11401 114022002-10-14 Richard Sandiford <rsandifo@redhat.com> 11403 11404 * doc/tm.texi (DRIVER_SELF_SPECS): Document. 11405 * gcc.c (driver_self_specs): New variable. 11406 (do_self_spec): New function. 11407 (main): Use it to process driver_self_specs. 11408 114092002-10-13 Richard Henderson <rth@redhat.com> 11410 11411 * rtl.c (shallow_copy_rtx): Use memcpy for the entire node. 11412 114132002-10-12 Neil Booth <neil@daikokuya.co.uk> 11414 11415 PR preprocessor/7862 11416 PR preprocessor/8190 11417 * gcc.c (cpp_unique_options): Don't delete .d files. 11418 Remove stray whitespace. 11419 114202002-10-12 Naohiko Shimizu <pshimizu@fa2.so-net.ne.jp> 11421 11422 * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant. 11423 (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise. 11424 * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o. 11425 (pdp11_output_function_epilogue, output_ascii): Likewise. 11426 (output_addr_const_pdp11): Likewise. 11427 * pdp11.md (movdi): Use offsetable memory for floating store. 11428 (lshrsi3, negsi2): Delete irrelevant comment. 11429 114302002-10-11 Geoffrey Keating <geoffk@apple.com> 11431 11432 * cse.c (mention_regs): Set SUBREG_TICKED to the register number, 11433 not the address of the REG. 11434 (struct cse_reg_info): Make subreg_ticked unsigned. 11435 114362002-10-11 Janis Johnson <janis187@us.ibm.com> 11437 11438 * doc/compat.texi: Add info about C++ libraries. 11439 114402002-10-11 Richard Henderson <rth@redhat.com> 11441 11442 PR opt/8165 11443 * gcse.c (adjust_libcall_notes): Also adjust notes for INSN. 11444 114452002-10-11 John David Anglin <dave@hiauly1.hia.nrc.ca> 11446 11447 * cfganal.c (dfs_enumerate_from): Use PARAMS. 11448 * genautomata.c (output_insn_code_cases): Likewise. 11449 * real.c (real_format): Likewise. 11450 * tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to 11451 ensure value is promoted before doing subtraction. 11452 114532002-10-11 Jan Hubicka <jh@suse.cz> 11454 11455 * calls.c (expand_call): Simplify noreturn call. 11456 11457 PR c/7344 11458 * cfgbuild.c (make_edges): Create edge cache when we do have 11459 large jumptable. 11460 * expr.c (do_tablejump): Note size of maximal jumptable. 11461 * function.c (prepare_function_start): Zero out size. 11462 * function.h (function): Add max_jumptable_ents. 11463 11464 * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to. 11465 114662002-10-11 J"orn Rennecke <joern.rennecke@superh.com> 11467 11468 * sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI 11469 register for mperm_w operation. 11470 114712002-10-11 J"orn Rennecke <joern.rennecke@superh.com> 11472 11473 * emit-rtl.c (gen_lowpart_common): When asked to make a vector from 11474 an integer, use simplify_gen_subreg. 11475 114762002-10-10 Aldy Hernandez <aldyh@redhat.com> 11477 11478 * extend.texi (Vector Extensions): Remove comment about single 11479 element vectors. 11480 114812002-10-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 11482 11483 * fold-const.c (size_htab_hash): Use htab_hash_pointer. 11484 * function.c (insns_for_mem_hash): Likewise. 11485 * varasm.c (STRHASH): Likewise. 11486 114872002-10-10 Stuart Hastings <stuart@apple.com> 11488 11489 * cse.c (struct cse_reg_info): Add subreg_ticked. 11490 (SUBREG_TICKED): New. 11491 (get_cse_reg_info): Initialize SUBREG_TICKED. 11492 (mention_regs): Use it. 11493 (invalidate): Set SUBREG_TICKED. 11494 (invalidate_for_call): Likewise. 11495 (addr_affects_sp_p): Likewise. 11496 114972002-10-10 Jakub Jelinek <jakub@redhat.com> 11498 11499 * config/i386/i386.md (tls_local_dynamic_base): Put pic reg 11500 into proper operand. 11501 115022002-10-10 Denis Chertykov <denisc@overta.ru> 11503 11504 * config/ip2k/ip2k.c (function_epilogue): Optimize stack 11505 deallocation. 11506 * config/ip2k/libgcc.S: Combine routines used by function 11507 epilogue. 11508 115092002-10-10 Jim Wilson <wilson@redhat.com> 11510 11511 * cse.c (fold_rtx): Don't perform associative optimization for DIV and 11512 UDIV. 11513 115142002-10-10 David Edelsohn <edelsohn@gnu.org> 11515 11516 * config/rs6000/aix52.h: New file. 11517 * config/rs6000/t-aix52: New File. 11518 * config.gcc (rs6000-ibm-aix5.1.*): New entry. 11519 (rs6000-ibm-aix[56789].*): Default to AIX 5.2. 11520 115212002-10-10 Jan Hubicka <jh@suse.cz> 11522 11523 PR target/5610 11524 * invoke.texi (-msse-math): Kill 11525 (-msse): Add note to mfpmath=sse. 11526 115272002-10-10 Jan Hubicka <jh@suse.cz> 11528 11529 PR target/7723 11530 * i386.c (ix86_expand_vector_move): Do not generate const0->mem moves. 11531 115322002-10-10 Neil Booth <neil@daikokuya.co.uk> 11533 11534 PR preprocessor/8179 11535 * gcc.c (cpp_options): Add {ansi}, move %{m*} to same location 11536 as cc1_options. 11537 (default_compilers): Pass debug options when preprocessing 11538 stdin. 11539 115402002-10-06 Richard Henderson <rth@redhat.com> 11541 11542 * toplev.c (rest_of_compilation): Revert opt/2960 change. 11543 115442002-10-09 Zack Weinberg <zack@codesourcery.com> 11545 11546 PR c/7353 11547 * c-decl.c (start_decl): Unconditionally issue error for 11548 'typedef foo = bar'. 11549 (finish_decl): Remove special case for TYPE_DECL with initializer. 11550 11551 * doc/extend.texi: Delete "Naming Types" section. Change all 11552 cross-references to that section to refer to "Typeof" instead. 11553 Add the useful safe-max()-macro example from "Naming Types" to 11554 "Typeof", rewritten using that extension. Add some compatibility 11555 notes to "Typeof." 11556 115572002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 11558 11559 * loop.c: Revert 2002-08-15 change. 11560 (LOOP_REGNO_NREGS): Ensure type is int. 11561 115622002-10-09 David Edelsohn <edelsohn@gnu.org> 11563 11564 * config/rs6000/rs6000.md (extenddftf2): Change to define_insn 11565 which copies first FPR and clears second. 11566 (extendsftf2): Same. 11567 (floatditf2): Fix typo. 11568 (floatsitf2): Same. 11569 (fix_trunctfdi2): Same. 11570 (fix_trunctfsi2): Same. 11571 115722002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 11573 11574 * conflict.c (arc_hash): Change return type to hashval_t. 11575 * cselib.c (get_value_hash): Likewise. 11576 * genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash, 11577 state_hash, automata_list_hash): Likewise. 11578 * read-rtl.c (def_hash): Likewise. 11579 * tree.c (type_hash_hash): Likewise. 11580 115812002-10-08 Aldy Hernandez <aldyh@redhat.com> 11582 11583 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call 11584 prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes. 11585 115862002-10-09 J"orn Rennecke <joern.rennecke@superh.com> 11587 11588 * sh.md (ffssi2): Fix emitted code. 11589 115902002-10-09 Ulrich Weigand <uweigand@de.ibm.com> 11591 11592 * cse.c (insn_live_p): Pass insn pattern, not full insn 11593 to may_trap_p. 11594 115952002-10-09 Neil Booth <neil@daikokuya.co.uk> 11596 11597 * cppmacro.c (paste_tokens): Only allow / to paste with =. 11598 115992002-10-09 David Edelsohn <edelsohn@gnu.org> 11600 11601 * config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on 11602 64-bit hosts. 11603 (movtf_internal): Reference correct displacement for second value 11604 in memory. 11605 (movtf splitter): Correct generation of constants in 64-bit mode. 11606 116072002-10-09 Alan Modra <amodra@bigpond.net.au> 11608 11609 * libgcc2.c (__floatdisf): Properly cure double rounding. 11610 116112002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net> 11612 11613 * c-common.c (cb_register_builtins): Define __WCHAR_MAX__. 11614 * doc/cpp.texi (Common Predefined Macros): Document. 11615 116162002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net> 11617 11618 PR doc/7484 11619 * doc/invoke.texi (Option Summary): List 11620 -Wmissing-declarations as a C only option. 11621 116222002-10-08 Jakub Jelinek <jakub@redhat.com> 11623 11624 * config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove 11625 mno-app-regs|mcmodel=medany. 11626 (MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt. 11627 (MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove. 11628 (CRTSTUFF_T_CFLAGS): Define. 11629 116302002-10-08 Roger Sayle <roger@eyesopen.com> 11631 11632 PR target/8087 11633 * simplify-rtx.c (avoid_constant_pool_reference): Allow constant 11634 pool references that are constructed using LO_SUM. 11635 116362002-10-08 Nathan Sidwell <nathan@codesourcery.com> 11637 11638 * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to 11639 -Wall. 11640 * c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak 11641 message. 11642 * flags.h (warn_strict_aliasing): Declare. 11643 * toplev.c (warn_strict_aliasing): Define. 11644 (lang_independent_options): Add it. 11645 * doc/invoke.texi (-Wstrict-aliasing): Document it. 11646 116472002-10-08 Zack Weinberg <zack@codesourcery.com> 11648 11649 * system.h (GCCBUGURL): Delete. 11650 * version.c (bug_report_url): New. Add commentary about 11651 modifying both these strings in modified distributions. 11652 * version.h: Declare bug_report_url. 11653 11654 * diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with 11655 bug_report_url. 11656 116572002-10-08 Nick Clifton <nickc@redhat.com> 11658 11659 * config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to 11660 convert uint64_t into __ev64_opaque__. 11661 (__ev_set_acc_s64): Likewise, but using signed types. 11662 116632002-10-08 Ulrich Weigand <uweigand@de.ibm.com> 11664 11665 * config/s390/s390.md ("*doloop_si_long"): Add missing operand. 11666 ("*doloop_di_long"): Likewise. 11667 116682002-10-08 Jan Hubicka <jh@suse.cz> 11669 11670 * print-rtl.c (print_rtx): Increase buffer size for real numbers. 11671 116722002-10-08 Richard Sandiford <rsandifo@redhat.com> 11673 11674 * config/mips/mips.md (define_attr cpu): Add r4111. 11675 116762002-10-08 Anthony Green <green@redhat.com> 11677 11678 * bitmap.c (bitmap_equal_p): Clear all bitmap_head fields. 11679 116802002-10-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz> 11681 11682 * config/c4x/c4x.c (c4x_print_operand): Enlarge buffer 11683 for REAL_VALUE_TO_DECIMAL output. 11684 116852002-10-07 David Edelsohn <edelsohn@gnu.org> 11686 11687 * config/rs6000/rs6000.c (rs6000_override_options): Set 11688 real_format_for_mode for IBM extended format, if enabled. 11689 (easy_fp_constant): Add TFmode. 11690 (rs6000_legitimize_address): Add TFmode. 11691 (rs6000_legitimate_address): Same. 11692 (function_arg_advance): TFmode uses two FPRs. 11693 (rs6000_emit_prologue): Fix warning. 11694 (rs6000_output_function_epilogue): Add TFmode. 11695 (output_toc): Add TFmode. 11696 * rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode. 11697 (LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode. 11698 * rs6000.md (movtf splitter): Load TFmode constant. 11699 117002002-10-07 Dale Johannesen <dalej@apple.com> 11701 11702 * rtl.h: Add NOTE_PRECONDITIONED. 11703 * unroll.c: Set it. 11704 * loop.c: Set loop_info->preconditioned from it. 11705 * doloop.c: Permit doloop treatment when loop_info->preconditoned. 11706 117072002-10-07 Richard Henderson <rth@redhat.com> 11708 11709 * config/i960/i960.c (i960_setup_incoming_varargs): Create a 11710 new rtx for comparing the argument pointer against zero. 11711 (i960_va_start): Similarly. 11712 117132002-10-07 Richard Henderson <rth@redhat.com> 11714 11715 * config/i960/i960.md (*): Use TFmode, not XFmode. 11716 * config/i960/i960.c (*): Likewise. 11717 (i960_arg_size_and_align): Remove XFmode alignment hack. 11718 (i960_round_align): Merge code from ROUND_TYPE_ALIGN. 11719 * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96. 11720 (MAX_LONG_DOUBLE_TYPE_SIZE): Likewise. 11721 (DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove. 11722 117232002-10-07 Richard Henderson <rth@redhat.com> 11724 11725 * config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode 11726 entry points; use void return value and argument list. 11727 117282002-10-05 Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp> 11729 11730 * t-pdp11: Add MULTILIB support for msoft-float. 11731 * pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case. 11732 11733 * t-pdp11: Add LIB2FUNCS_EXTRA. 11734 * pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit, 11735 add preceding 0 to the octal constant, rename 'fp' to 'r5', rename 11736 'fldd' to 'ldd', rename 'fstd' to 'std'. 11737 (pdp11_output_function_epilogue): Likewise. 11738 (output_move_quad): Make the comment gas compatible. 11739 (output_ascii): Add preceding 0 to the octal constant. 11740 (print_operand_address): Add pre_modify, post_modify. 11741 (output_addr_const_pdp11): Add preceding 0 to the octal constant. 11742 * pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case 11743 with the indication of Paul Koning. 11744 (PRINT_OPERAND): Fix floating constant. 11745 * pdp11.md (movdi): Restrict matching pattern. 11746 (movqi): Generalize the matching pattern. 11747 (movdf): Restrict matching pattern. 11748 (zero_extendqihi2): Change constant representation. 11749 (floatsidf2): Fix wrong operands. 11750 (addqi3): Fix wrong instruction name. 11751 (subqi3): Fix wrong instruction name. 11752 (andsi3, andhi3, andqi3): Simplify and fix to use 'bic'. 11753 (xorsi3): Fix wrong insn. 11754 (one_cmplqi2): Add two operand pattern. 11755 (lsrsi3): New. 11756 (negsi2): New. 11757 (call): Add register indirect case. 11758 (mod): Fix wrong subreg. 11759 117602002-10-06 Eric Botcazou <ebotcazou@libertysurf.fr> 11761 Volker Reichelt <reichelt@igpm.rwth-aachen.de> 11762 11763 PR c/7411 11764 * expr.c (expand_expr) [PLUS]: Simplify after the operands 11765 have been expanded in EXPAND_NORMAL mode. 11766 117672002-10-06 Richard Henderson <rth@redhat.com> 11768 11769 * config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint. 11770 117712002-10-06 Richard Henderson <rth@redhat.com> 11772 11773 PR optimization/2960 11774 * toplev.c (rest_of_compilation): Don't copy_loop_headers if 11775 optimize_size. 11776 117772002-10-06 Alexandre Oliva <aoliva@redhat.com> 11778 11779 * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override 11780 previously definitions. 11781 117822002-10-06 Frank Ch. Eigler <fche@redhat.com> 11783 11784 * cppinit.c (init_standard_includes, parse_option): Use strncmp. 11785 * c-opts.c (find_opt): Similarly. 11786 117872002-10-05 Jakub Jelinek <jakub@redhat.com> 11788 11789 * gcc.c (set_multilib_dir): Don't access *end. 11790 Use memcpy instead of strncpy. Don't write beyond malloced buffer. 11791 (print_multilib_info): Don't show paths starting with ".:". 11792 * genmultilib: Add new option, "yes" if multilibs are enabled. 11793 Update comments. If multilibs not enabled, print .:${osdirout} 11794 for each directory. If multilibs are enabled, always print 11795 ${dirout}:${osdirout}, even if the two are the same. 11796 * Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib. 11797 Pass all MULTILIB_* variables to genmultilib even if 11798 --disable-multilib but MULTILIB_OSDIRNAMES is not empty. 11799 118002002-10-04 Bruce Korb <bkorb@gnu.org> 11801 11802 * fixinc/inclhack.def(hpux11_abs): use format fix 11803 * fixinc/fixincl.x: regenerate 11804 * fixinc/tests/base/stdlib.h: accommodate new fix test 11805 118062002-10-05 Jan Hubicka <jh@suse.cz> 11807 11808 * c-common.c (cb_register_builtins): Use really_no_inline. 11809 118102002-10-04 David Edelsohn <edelsohn@gnu.org> 11811 11812 * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to 11813 copied instruction if the note is not loop invariant. 11814 118152002-10-04 Loren J. Rittle <ljrittle@acm.org> 11816 11817 * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system. 11818 118192002-10-04 Steve Ellcey <sje@cup.hp.com> 11820 11821 * doc/invoke.texi (HPPA): Add -mlinker-opt, -mgnu-ld, 11822 and -mhp-ld options to list of options. Add -mgnu-ld 11823 and -mhp-ld option descriptions. 11824 118252002-10-04 Steve Ellcey <sje@cup.hp.com> 11826 11827 * fixinc/inclhack.def (hpux11_abs): New. 11828 (stdio_va_list): change __va_list__ to __gnuc_va_list. 11829 * fixinc/fixincl.x: Rebuild. 11830 118312002-10-04 Roger Sayle <roger@eyesopen.com> 11832 11833 * config/i386/i386.h (processor_costs): Add new fields fadd, 11834 fmul, fdiv, fabs, fchs and fsqrt to costs structure. 11835 (RTX_COSTS): Use these fields to determine the RTX costs 11836 of floating point addition/subtraction, multiplication, 11837 division, fabs, negation and square root respectively. 11838 * config/i386/i386.c (size_cost): Provide instruction sizes 11839 for these new fields. 11840 (i386_cost, i486_cost, pentium_cost, pentiumpro_cost, 11841 k6_cost, athlon_cost, pentium4_cost): Provide typical cycle 11842 counts for these new fields for all x86 processor variants. 11843 118442002-10-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 11845 11846 * mips.c (mips_const_double_ok): Delete unused variable. 11847 11848 * gengtype.c (rtx_next): Change type to int. 11849 118502002-10-04 Andreas Jaeger <aj@suse.de> 11851 11852 * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value. 11853 118542002-10-04 Richard Henderson <rth@redhat.com> 11855 11856 * real.h (SIGNIFICAND_BITS): Add one more word. 11857 (CONST_DOUBLE_FORMAT): Accomodate 6 words. 11858 * real.c (times_pten): New. 11859 (real_to_decimal, real_from_string): Use it. 11860 (sticky_rshift_significand): Use & to find modulus. 11861 (rshift_significand, lshift_significand): Likewise. 11862 (do_divide): Apply sticky bit after normalization. 11863 (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN. 11864 118652002-10-03 Andreas Jaeger <aj@suse.de> 11866 11867 * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t 11868 to unsigned long, adjust printf format string. 11869 (output_mangled_typename): Likewise. 11870 118712002-10-03 Jason Thorpe <thorpej@wasabisystems.com> 11872 11873 * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf. 11874 * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New. 11875 (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL, 11876 assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME. 11877 (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX. 11878 (PRINT_OPERAND_PUNCT_VALID_P): Fix comment. 11879 * config/vax/elf.h (FUNCTION_PROFILER): Remove. 11880 (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount". 11881 118822002-10-03 Mark Mitchell <mark@codesourcery.com> 11883 11884 * doc/invoke.texi (-Wabi): Document mangling bug. 11885 118862002-10-04 Alan Modra <amodra@bigpond.net.au> 11887 11888 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a 11889 name for the tbtab label that depends on the function asm name. 11890 Don't output tbtab label unless optional_tbtab. 11891 (output_mi_thunk): Formatting. 11892 118932002-10-03 Richard Henderson <rth@redhat.com> 11894 11895 * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ... 11896 * config/m68k/m68k.c (override_options): ... here. 11897 * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove. 11898 * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove. 11899 * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove. 11900 * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove. 11901 119022002-10-03 Richard Henderson <rth@redhat.com> 11903 11904 * real.h (struct real_value): Use ENUM_BITFIELD. 11905 119062002-10-03 Richard Henderson <rth@redhat.com> 11907 11908 * config/i960/i960.md (call, call_value): Use emit_call_insn. 11909 119102002-10-03 Steve Ellcey <sje@cup.hp.com> 11911 11912 * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New. 11913 119142002-10-03 Steve Ellcey <sje@cup.hp.com> 11915 11916 * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld. 11917 * config/pa/pa.h (MASK_GNU_LD): New. 11918 (TARGET_GNU_LD): New. 11919 * config/pa/pa64-hpux.h (LINK_SPEC): Set based 11920 on gnu-ld and MASK_GNU_LD. 11921 (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags. 11922 119232002-10-03 Jan Hubicka <jh@suse.cz> 11924 11925 * i386.c (athlon_cost): Fix the move costs. 11926 119272002-10-03 Jan Hubicka <jh@suse.cz> 11928 11929 * final.c (final): Use symbol name as function name for profiling. 11930 * profile.c (get_exec_counts): Likewise. 11931 (branch_prob): Likewise. 11932 119332002-10-03 Jakub Jelinek <jakub@redhat.com> 11934 11935 * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype. 11936 119372002-10-03 Jakub Jelinek <jakub@redhat.com> 11938 11939 * gcc.c (print_multi_os_directory): New variable. 11940 (option_map): Support --print-multi-os-directory. 11941 (struct prefix_list): Add os_multilib field. 11942 (multilib_os_dir): New variable. 11943 (static_specs): Add multilib_options. 11944 (find_a_file): Add multilib argument. Search in GCC or OS multilib 11945 subdirs if non-zero. 11946 (read_specs, execute): Update callers. 11947 (find_file): Likewise. Don't prefix name with multilib_dir, instead 11948 pass 1 as multilib option. 11949 (display_help): Include --print-multi-os-directory. 11950 (add_prefix): Add os_multilib argument. Initialize pl->os_multilib. 11951 (process_command): Update callers. Handle --print-multi-os-directory. 11952 (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is 11953 set. 11954 (main): Update find_a_file and add_prefix callers. 11955 Handle print_multi_os_directory. 11956 (struct mdswitchstr): New. 11957 (mdswitches, n_mdswitches): New variables. 11958 (used_arg): Add MULTILIB_DEFAULT switches too if they are not 11959 present on the command line nor their mutually incompatible 11960 switches. 11961 (default_arg): Optimize. 11962 (set_multilib_dir): Compute multilib_os_dir. Initialize mdswitches 11963 array. 11964 (print_multilib_info): Only print GCC multilib dir name, not OS 11965 multilib dirname. 11966 * genmultilib: Add osdirnames parameter. Output multilib_options 11967 variable. If osdirnames is specified, output dirnames as 11968 dirname:osdirname. 11969 * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory 11970 and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES 11971 to compute libgcc_s soname and install path. 11972 * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of 11973 SHLIB_SLIBDIR_SUFFIXES to mklibgcc. 11974 (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib 11975 argument. 11976 11977 * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set. 11978 (SHLIB_SLIBDIR_SUFFIXES): Remove. 11979 * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64, 11980 ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove. 11981 (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32 11982 and -m64. 11983 * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set. 11984 (SHLIB_SLIBDIR_SUFFIXES): Remove. 11985 * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove. 11986 (STARTFILE_ARCH_SPEC): Remove. 11987 * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set. 11988 (SHLIB_SLIBDIR_SUFFIXES): Remove. 11989 * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove. 11990 * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set. 11991 (SHLIB_SLIBDIR_SUFFIXES): Remove. 11992 119932002-10-03 Jan Hubicka <jh@suse.cz> 11994 11995 * predict.c (choose_function_section): Avoid choice for linkonce functions. 11996 119972002-10-03 Jan Hubicka <jh@suse.cz> 11998 11999 * i386.md (lea to mul peep2): Fix condition. 12000 120012002-10-02 John David Anglin <dave@hiauly1.hia.nrc.ca> 12002 12003 * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro. 12004 * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define. 12005 120062002-10-02 Richard Henderson <rth@redhat.com> 12007 12008 PR opt/7124 12009 * config/i386/i386.c (ix86_register_move_cost): Increase cost 12010 for secondary_memory_needed pairs. 12011 120122002-10-02 Nathanael Nerode <neroden@gcc.gnu.org> 12013 12014 * doc/vms.texi: Blow away false include file section. 12015 120162002-10-02 Roger Sayle <roger@eyesopen.com> 12017 12018 PR optimization/6627 12019 * toplev.c (force_align_functions_log): New global variable. 12020 * flags.h (force_align_functions_log): Add extern prototype. 12021 * varasm.c (assemble_start_function): Use it to force minimum 12022 function alignment. 12023 * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct 12024 minimum function alignment to one byte. 12025 (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in 12026 the least significant bit of vtable member function pointers. 12027 * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to 12028 here from cp/cp-tree.h. 12029 120302002-10-02 Jan Hubicka <jh@suse.cz> 12031 12032 * i386.c (print_operand_address): Use RIP addressing for offsetted 12033 label refs too. 12034 120352002-09-30 David S. Miller <davem@redhat.com> 12036 12037 PR middle-end/7151 12038 * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs. 12039 (movdi reg/reg split): Match only on sparc32, and v9 when int regs. 12040 120412002-10-01 Roger Sayle <roger@eyesopen.com> 12042 12043 * unroll.c (loop_iterations): Revert 2002-09-08 change. 12044 120452002-10-01 Richard Henderson <rth@redhat.com> 12046 12047 * real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0. 12048 (real_to_hexadecimal): Likewise. 12049 * print-rtl.c (print_rtx): If we are linked with real.c, don't 12050 dump the XWINT fields of a floating point CONST_DOUBLE. 12051 120522002-10-01 Jason Thorpe <thorpej@wasabisystems.com> 12053 12054 * config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call. 12055 120562002-10-01 Richard Henderson <rth@redhat.com> 12057 12058 * calls.c (precompute_register_parameters): Force non-legitimate 12059 constants into pseudos. 12060 120612002-10-01 Nick Clifton <nickc@redhat.com> 12062 12063 * config/rs6000/spe.md (spe_evrlwi): Add missing third operand 12064 to assembler template. 12065 120662002-10-01 Richard Henderson <rth@redhat.com> 12067 12068 * dwarf2out.c (loc_descriptor_from_tree): Relax requirement 12069 for TLS debug info to !DECL_EXTERNAL. 12070 120712002-10-01 Matt Thomas <matt@3am-software.com> 12072 Jason Thorpe <thorpej@wasabisystems.com> 12073 12074 * config.gcc (vax-*-netbsdelf*): Enable configuration. 12075 * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only 12076 if not already defined. 12077 * config/vax/elf.h: New file. 12078 * config/vax/netbsd-elf.h: New file. 12079 * config/vax/vax.c: Include "debug.h". 12080 (vax_output_function_prologue): Add dwarf2 support. Use 12081 MAIN_NAME_P when checking for VMS_TARGET stack adjust. 12082 * config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for 12083 'J' [0..63], 'K' [-128..127], 'L' [-32768..32767], 12084 'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1]. 12085 (VAX_ISTREAM_SYNC): Remove. 12086 (INITIALIZE_TRAMPOLINE): Use gen_sync_istream. 12087 (JUMP_TABLES_IN_TEXT_SECTION): Define. 12088 (ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer. 12089 (ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL 12090 and assemble_name. 12091 (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise. 12092 (PRINT_OPERAND_PUNCT_VALID_P): Accept '|'. 12093 (PRINT_OPERAND): Output REGISTER_PREFIX for '|'. 12094 (INCOMING_RETURN_ADDR_RTX): Define. 12095 * config/vax/vax.md (VUNSPEC_BLOCKAGE) 12096 (VUNSPEC_SYNC_ISTREAM): Define. 12097 (blockage): Use VUNSPEC_BLOCKAGE. 12098 (sync_istream): New insn. 12099 121002002-10-01 Richard Henderson <rth@redhat.com> 12101 12102 * config/vax/vax.md (call_pop, *call_pop, call_value_pop) 12103 (*call_value_pop, call, call_value): Add dwarf2 EH support. 12104 (*call): New insn. 12105 121062002-10-01 Nathan Sidwell <nathan@codesourcery.com> 12107 12108 PR c/8083 12109 * c-typeck.c (build_c_cast): Warn about type punning which breaks 12110 type based aliasing. 12111 121122002-10-01 Mark Mitchell <mark@codesourcery.com> 12113 12114 * stor-layout.c (update_alignment_for_field): New function. 12115 (place_union_field): Use it. 12116 (place_field): Likewise. 12117 121182002-10-01 Nathan Sidwell <nathan@codesourcery.com> 12119 12120 PR other/8077 12121 * gcc.c (cc1_options): Add space on -auxbase-strip. 12122 121232002-10-01 Jim Wilson <wilson@redhat.com> 12124 12125 * config/v850/v850.h (EPILOGUE_USES): Define. 12126 121272002-09-30 Andrew Haley <aph@redhat.com> 12128 12129 * flow.c (insn_dead_p): When using non-call-exceptions, don't 12130 eliminate insns that may trap. 12131 * cse.c (insn_live_p): Likewise. 12132 121332002-10-01 Richard Sandiford <rsandifo@redhat.com> 12134 12135 * config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120. 12136 (TARGET_MIPS4121): Rename to TARGET_MIPS4120. 12137 * config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120. 12138 * config/mips/mips.md: Apply same renaming here. 12139 121402002-10-01 Richard Sandiford <rsandifo@redhat.com> 12141 12142 * config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove. 12143 (GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320. 12144 * config/mips/mips.c (mips_cpu_info): Remove vr4320 entry. 12145 * config/mips/mips.md (define_attr cpu): Remove r4320. 12146 Remove vr4320 scheduler and uses of TARGET_MIPS4320. 12147 121482002-10-01 Richard Sandiford <rsandifo@redhat.com> 12149 12150 * config/mips/mips.c (mips16_strings): New variable. 12151 (mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every 12152 symbol in mips16_strings. Free the list. 12153 (mips_encode_section_info): Keep track of local strings. 12154 121552002-10-01 Richard Sandiford <rsandifo@redhat.com> 12156 12157 * config/mips/mips.md (bunge, bltgt, bungt): New define_expands. 12158 (sordered_df, sordered_sf): Remove. 12159 * config/mips/mips.c (get_float_compare_codes): New fn. 12160 (gen_int_relational, gen_conditional_move): Use it. 12161 121622002-10-01 Richard Sandiford <rsandifo@redhat.com> 12163 12164 * config/mips/mips-protos.h (mips_emit_fcc_reload): Declare. 12165 * config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand. 12166 * config/mips/mips.c (fcc_register_operand): New function. 12167 (mips_emit_fcc_reload): New function, extracted from reload_incc. 12168 (override_options): Allow TFmode values in float registers 12169 if ISA_HAS_8CC. 12170 * cnfig/mips/mips.md (reload_incc): Change destination prediate 12171 to fcc_register_operand. Remove misleading source constraint. 12172 Use mips_emit_fcc_reload. 12173 (reload_outcc): Duplicate reload_incc. 12174 121752002-09-30 Ulrich Weigand <uweigand@de.ibm.com> 12176 12177 * longlong.h: Partially synchronize with GMP-4.1 version: 12178 Use i370 definitions also for s390. 12179 Add generic definition of umul_ppmm in terms of smul_ppmm. 12180 [s390] (umul_ppmm): Remove. 12181 [s390] (smul_ppmm): Fix incorrect assembler constraints. 12182 [s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x. 12183 121842002-09-30 Bob Wilson <bob.wilson@acm.org> 12185 12186 * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS): 12187 Add new RL_REGS register class. 12188 (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS): 12189 Call xtensa_preferred_reload_class for both input and output reloads. 12190 * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class. 12191 (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS 12192 instead of either AR_REGS or GR_REGS classes. 12193 (xtensa_secondary_reload_class): Use new RL_REGS class. 12194 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update. 12195 121962002-09-30 John David Anglin <dave@hiauly1.hia.nrc.ca> 12197 12198 * pa.c (hppa_encode_label): Don't drop '*' from function labels. 12199 (pa_strip_name_encoding): Strip '@' and '*', in that order. 12200 * pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when 12201 there is a '*' prefix in NAME. 12202 122032002-09-30 Jan Hubicka <jh@suse.cz> 12204 12205 * reload.c (push_reload): Handle subregs and secondary memory. 12206 * reload1.c (gen_reload): Likewise. 12207 12208 * jump.c (reg_or_subregno): New function. 12209 * rtl.h (reg_or_subregno): Declare 12210 * unroll.c (find_splittable_givs): Handle subregs. 12211 122122002-09-30 Mark Mitchell <mark@codesourcery.com> 12213 12214 * store-layout.c (finish_record_layout): Add free_p parameter. 12215 (layout_type): Pass it. 12216 * tree.h (finish_record_layout): Update prototype. 12217 122182002-09-30 Jan Hubicka <jh@suse.cz> 12219 12220 * i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__. 12221 12222 * gcse.c (cprop_jump): Check that the register has not 12223 been modified 12224 (cprop_jump): Likewise. 12225 122262002-09-30 Richard Earnshaw <rearnsha@arm.com> 12227 12228 * arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb. 12229 (MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know 12230 that we have a SImode access, and only then if reload hasn't completed; 12231 for all other cases, use LO_REGS. 12232 122332002-09-29 Richard Henderson <rth@redhat.com> 12234 12235 * real.c (real_from_string): Apply sign last. Tidy exponent handling. 12236 122372002-09-29 Richard Henderson <rth@redhat.com> 12238 12239 PR c/8002 12240 * combine.c (force_to_mode): Handle FLOAT_MODE destinations 12241 for CONST_INT. 12242 122432002-09-29 David Edelsohn <edelsohn@gnu.org> 12244 12245 * real.h (ibm_extended_format): Declare. 12246 * real.c (encode_ibm_extended, decode_ibm_extended): New 12247 functions. 12248 122492002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 12250 12251 * darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype. 12252 12253 * ia64.c (ia64_hpux_asm_file_end): Const-ify. 12254 122552002-09-29 John David Anglin <dave@hiauly1.hia.nrc.ca> 12256 12257 * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs. 12258 122592002-09-29 Kazu Hirata <kazu@cs.umass.edu> 12260 12261 * builtins.def: Fix comment formatting. 12262 * c-common.def: Likewise. 12263 * cfgcleanup.c: Likewise. 12264 * combine.c: Likewise. 12265 * gengtype.c: Likewise. 12266 * params.def: Likewise. 12267 * predict.def: Likewise. 12268 * rtl.def: Likewise. 12269 * stab.def: Likewise. 12270 * stor-layout.c: Likewise. 12271 * tree.def: Likewise. 12272 * config/darwin.c: Likewise. 12273 * config/darwin.h: Likewise. 12274 * config/dbxcoff.h: Likewise. 12275 * config/elfos.h: Likewise. 12276 * config/fp-bit.c: Likewise. 12277 * config/freebsd-spec.h: Likewise. 12278 * config/interix.h: Likewise. 12279 * config/libgloss.h: Likewise. 12280 * config/linux-aout.h: Likewise. 12281 * config/linux.h: Likewise. 12282 * config/lynx-ng.h: Likewise. 12283 * config/lynx.h: Likewise. 12284 * config/netbsd-aout.h: Likewise. 12285 * config/netbsd.h: Likewise. 12286 * config/netware.h: Likewise. 12287 * config/psos.h: Likewise. 12288 * config/ptx4.h: Likewise. 12289 122902002-09-28 Kazu Hirata <kazu@cs.umass.edu> 12291 12292 * ChangeLog.4: Fix typos. 12293 * ChangeLog.6: Likewise. 12294 * FSFChangeLog.10: Likewise. 12295 * genattrtab.c: Fix comment typos. 12296 * haifa-sched.c: Likewise. 12297 * real.c: Likewise. 12298 * tree.h: Likewise. 12299 * config/arm/arm.c: Likewise. 12300 * config/arm/crti.asm: Likewise. 12301 * config/arm/crtn.asm: Likewise. 12302 * config/frv/frv.c: Likewise. 12303 * config/frv/frv.md: Likewise. 12304 * config/h8300/h8300.md: Likewise. 12305 * config/i386/rtemself.h: Likewise. 12306 * config/ia64/unwind-ia64.c: Likewise. 12307 * config/ip2k/ip2k.h: Likewise. 12308 * config/m88k/m88k.c: Likewise. 12309 * config/m88k/m88k.md: Likewise. 12310 * config/mips/sr71k.md: Likewise. 12311 * config/mmix/mmix.c: Likewise. 12312 * config/rs6000/rs6000.c: Likewise. 12313 * config/sh/sh.md: Likewise. 12314 123152002-09-26 Theodore A. Roth <troth@verinet.com> 12316 12317 * config/avr/avr.c: Eliminate use of _PC_ in pc relative insns. 12318 * config/avr/avr.md: Ditto. 12319 123202002-09-27 Alexander N. Kabaev <ak03@gte.com> 12321 12322 PR preprocessor/8055 12323 * cppmacro.c (stringify_arg): Do not overflow the buffer 12324 with the terminating NUL when the argument to be stringified 12325 has no tokens. 12326 123272002-09-27 Richard Henderson <rth@redhat.com> 12328 12329 * unroll.c (simplify_cmp_and_jump_insns): New. 12330 (unroll_loop): Use it. Use simplify_gen_foo+force_operand 12331 instead of expand_simple_foo. 12332 123332002-09-27 Richard Henderson <rth@redhat.com> 12334 12335 PR optimization/7520 12336 * cfganal.c (flow_active_insn_p): New. 12337 (forwarder_block_p): Use it. 12338 123392002-09-27 Richard Henderson <rth@redhat.com> 12340 12341 * emit-rtl.c (active_insn_p): Revert last change. 12342 123432002-09-27 Jakub Jelinek <jakub@redhat.com> 12344 12345 * doc/extend.texi (tls_model): Document. 12346 * varasm.c (decl_tls_model): New. 12347 * c-common.c (handle_tls_model_attribute): New. 12348 (c_common_attribute_table): Add tls_model. 12349 * config/alpha/alpha.c (alpha_encode_section_info): Use 12350 decl_tls_model. 12351 * flags.h (enum tls_model, flag_tls_default): Move... 12352 * tree.h (enum tls_model, flag_tls_default): ...here. 12353 (decl_tls_model): New prototype. 12354 * config/ia64/ia64.c (ia64_encode_section_info): Likewise. 12355 * config/i386/i386.c (ix86_encode_section_info): Likewise. 12356 * config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base): 12357 Allow !flag_pic. 12358 123592002-09-27 Kazu Hirata <kazu@cs.umass.edu> 12360 12361 * LANGUAGES: Follow spelling conventions. 12362 * rtl.def: Likewise. 12363 * sbitmap.c: Likewise. 12364 * sched-int.h: Likewise. 12365 * sched-rgn.c: Likewise. 12366 * sibcall.c: Likewise. 12367 * simplify-rtx.c: Likewise. 12368 * ssa.c: Likewise. 12369 * stab.def: Likewise. 12370 * stmt.c: Likewise. 12371 * stor-layout.c: Likewise. 12372 * target.h: Likewise. 12373 * timevar.c: Likewise. 12374 * toplev.c: Likewise. 12375 * tree-dump.c: Likewise. 12376 * tree-inline.c: Likewise. 12377 * tree.c: Likewise. 12378 * tree.def: Likewise. 12379 * tree.h: Likewise. 12380 * unroll.c: Likewise. 12381 * varasm.c: Likewise. 12382 * vmsdbgout.c: Likewise. 12383 * treelang/treelang.texi: Likewise. 12384 * treelang/treetree.c: Likewise. 12385 123862002-09-27 Kazu Hirata <kazu@cs.umass.edu> 12387 12388 * config/h8300/h8300.c (compute_saved_regs): Use a macro 12389 instead of a hard register number. 12390 (get_shift_alg): Use an enumerated type instead of numbers. 12391 (h8300_shift_needs_scratch_p): Likewise. 12392 123932002-09-26 David S. Miller <davem@redhat.com> 12394 12395 PR optimization/7335 12396 * calls.c (emit_library_call_value_1): Passing args by reference 12397 converts a CONST function into a PURE one. 12398 123992002-09-26 David Edelsohn <edelsohn@gnu.org> 12400 12401 * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not 12402 text_section. 12403 * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to 12404 text section. 12405 * config/rs6000/rs6000.c (rs6000_override_options): Allow 12406 function-sections and data-sections functionality on AIX. 12407 124082002-09-26 David Edelsohn <edelsohn@gnu.org> 12409 Dale Johannesen <dalej@apple.com> 12410 12411 * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend 12412 in RTL for sub-word loads from memory. 12413 124142002-09-26 Richard Henderson <rth@redhat.com> 12415 12416 PR c/7160 12417 * sched-deps.c (sched_analyze_insn): Make clobber insns depend 12418 on call insns. 12419 124202002-09-26 Richard Henderson <rth@redhat.com> 12421 12422 * emit-rtl.c (const_double_htab_eq): Remove unused variable. 12423 124242002-09-26 Chris Lattner <sabre@nondot.org> 12425 12426 * ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when 12427 handling undefined values. 12428 124292002-09-26 Richard Henderson <rth@redhat.com> 12430 12431 PR opt/7520 12432 * emit-rtl.c (active_insn_p): Consider a clobber of the 12433 function return value to be active even after reload. 12434 124352002-09-27 Alan Modra <amodra@bigpond.net.au> 12436 12437 * doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust 12438 by absolute loop increment, not loop increment. 12439 124402002-09-26 Kazu Hirata <kazu@cs.umass.edu> 12441 12442 * c-common.h: Follow spelling conventions. 12443 * cpplex.c: Likewise. 12444 * cpplib.h: Likewise. 12445 * gthr-dce.h: Likewise. 12446 * gthr-posix.h: Likewise. 12447 * optabs.c: Likewise. 12448 * output.h: Likewise. 12449 * profile.c: Likewise. 12450 * protoize.c: Likewise. 12451 * ra-rewrite.c: Likewise. 12452 * real.c: Likewise. 12453 * recog.c: Likewise. 12454 * reg-stack.c: Likewise. 12455 * regclass.c: Likewise. 12456 * regmove.c: Likewise. 12457 * reload.c: Likewise. 12458 * reload.h: Likewise. 12459 * reload1.c: Likewise. 12460 * reorg.c: Likewise. 12461 * resource.c: Likewise. 12462 * rtl.h: Likewise. 12463 * rtlanal.c: Likewise. 12464 124652002-09-26 Steve Ellcey <sje@cup.hp.com> 12466 12467 * config/ia64/ia64.c (ia64_expand_load_address): Ensure correct mode 12468 for symbol address. 12469 124702002-09-24 Eric Christopher <echristo@redhat.com> 12471 12472 * config/mips/elf.h: Add HANDLE_SYSV_PRAGMA. 12473 * config/mips/elf64.h: Ditto. 12474 124752002-09-24 Eric Christopher <echristo@redhat.com> 12476 12477 * except.c (expand_builtin_extract_return_address): Handle case 12478 where Pmode != ptr_mode. 12479 124802002-09-26 Steve Ellcey <sje@cup.hp.com> 12481 12482 * config/ia64/hpux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): New 12483 124842002-09-26 Steve Ellcey <sje@cup.hp.com> 12485 12486 * config/ia64/hpux.h (TARGET_DEFAULT): Include TARGET_ILP32. 12487 124882002-09-26 Igor Shevlyakov <igor@microunity.com> 12489 12490 * combine.c (simplify_set): Don't call to force_to_mode if size 12491 of integer type is larger than HOST_BITS_PER_WIDE_INT. 12492 124932002-09-26 Janis Johnson <janis187@us.ibm.com> 12494 12495 * Makefile.in (qmtest-g++): Fix file path. 12496 124972002-09-26 Ulrich Weigand <uweigand@de.ibm.com> 12498 12499 * expr.c (expand_expr) [MINUS_EXPR]: Convert A - const to 12500 A + (-const) on RTX level, even for unsigned types. 12501 125022002-09-26 Ulrich Weigand <uweigand@de.ibm.com> 12503 12504 * reload.c (dup_replacements): New function. 12505 (find_reloads): Use it to duplicate replacements at the top level 12506 of match_dup operands. 12507 125082002-09-26 Miles Bader <miles@gnu.org> 12509 12510 * v850.md ("length"): Change default value to 4. 12511 125122002-09-26 Kazu Hirata <kazu@cs.umass.edu> 12513 12514 * ChangeLog.1: Follow spelling conventions. 12515 * ChangeLog.4: Likewise. 12516 * ChangeLog.6: Likewise. 12517 * FSFChangeLog.11: Likewise. 12518 * doc/cpp.texi: Likewise. 12519 * doc/invoke.texi: Likewise. 12520 * doc/tm.texi: Likewise. 12521 125222002-09-26 Nick Clifton <nickc@redhat.com> 12523 12524 * config.gcc: Add x prefix to v850e case for handling 12525 --with-cpu=v850e. 12526 125272002-09-25 David S. Miller <davem@redhat.com> 12528 12529 PR target/7842 12530 * config/sparc/sparc.c (set_extends): SImode ASHIFT does not 12531 extend. 12532 125332002-09-25 Richard Henderson <rth@redhat.com> 12534 12535 * emit-rtl.c (const_double_htab_eq): Distinguish integer and 12536 fp CONST_DOUBLE; use real_identical. 12537 125382002-09-25 Mark Mitchell <mark@codesourcery.com> 12539 12540 * doc/invoke.texi: Add more -Wabi examples. 12541 125422002-09-25 Richard Sandiford <rsandifo@redhat.com> 12543 12544 * config/mips/mips.h (TARGET_MIPS4100): Add missing bracket. 12545 125462002-09-24 Denis Chertykov <denisc@overta.ru> 12547 12548 * config/ip2k/ip2k.c (function_epilogue): Fix wrong numbers in 12549 cases of optimizing "add sp,w" to "inc sp". 12550 125512002-09-24 Adam Nemet <anemet@lnxw.com> 12552 12553 * config/arm/arm.c (thumb_unexpanded_epilogue): Don't generate 12554 epilogue for naked functions. 12555 125562002-09-24 Adam Nemet <anemet@lnxw.com> 12557 Nick Clifton <nickc@redhat.com> 12558 12559 * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Remove. 12560 (FUNCTION_PROFILER): Only invoke THUMB_FUNCTION_PROFILER if it 12561 is defined. 12562 125632002-09-24 Ulrich Weigand <uweigand@de.ibm.com> 12564 12565 * config/s390/s390.c (preferred_la_operand_p): New function. 12566 * config/s390/s390-protos.h (preferred_la_operand_p): Declare it. 12567 * config/s390/s390.md ("addaddr_esame", "*la_ccclobber"): Replace by ... 12568 ("*la_64_cc", "*la_31_cc", splitters): ... these. 12569 ("*la_31"): Deactivate for TARGET_64BIT. 12570 ("*la_31_and", "*la_31_and_cc"): New. 12571 125722002-09-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 12573 12574 * real.h (real_value): Make `exp' explicitly signed. 12575 125762002-09-24 Kazu Hirata <kazu@cs.umass.edu> 12577 12578 * config/elfos.h: Follow spelling conventions. 12579 * config/alpha/alpha.h: Likewise. 12580 * config/arc/arc.h: Likewise. 12581 * config/arm/arm.md: Likewise. 12582 * config/avr/avr.h: Likewise. 12583 * config/cris/cris.md: Likewise. 12584 * config/d30v/d30v.h: Likewise. 12585 * config/frv/frv.c: Likewise. 12586 * config/frv/frv.h: Likewise. 12587 * config/h8300/h8300.c: Likewise. 12588 * config/h8300/h8300.h: Likewise. 12589 * config/h8300/h8300.md: Likewise. 12590 * config/i386/cygwin.h: Likewise. 12591 * config/i386/i386.h: Likewise. 12592 * config/i386/sysv3.h: Likewise. 12593 * config/i960/i960.h: Likewise. 12594 * config/ia64/ia64.h: Likewise. 12595 * config/ia64/ia64.md: Likewise. 12596 * config/ip2k/ip2k.h: Likewise. 12597 * config/m32r/m32r.h: Likewise. 12598 * config/m68k/m68k.h: Likewise. 12599 * config/m88k/m88k.h: Likewise. 12600 * config/mcore/mcore.c: Likewise. 12601 * config/mcore/mcore.h: Likewise. 12602 * config/mcore/mcore.md: Likewise. 12603 * config/mips/mips.h: Likewise. 12604 * config/mmix/mmix.h: Likewise. 12605 * config/mmix/mmix.md: Likewise. 12606 * config/ns32k/netbsd.h: Likewise. 12607 * config/ns32k/ns32k.h: Likewise. 12608 * config/ns32k/ns32k.md: Likewise. 12609 * config/pa/pa.h: Likewise. 12610 * config/romp/romp.h: Likewise. 12611 * config/rs6000/rs6000.h: Likewise. 12612 * config/rs6000/rs6000.md: Likewise. 12613 * config/sparc/sparc.h: Likewise. 12614 * config/stormy16/stormy-abi: Likewise. 12615 * config/stormy16/stormy16.h: Likewise. 12616 * config/vax/vax.h: Likewise. 12617 126182002-09-23 Zack Weinberg <zack@codesourcery.com> 12619 12620 * version.c (version_string): Now const char[]. 12621 * version.h: Update to match. 12622 126232002-09-23 Richard Henderson <rth@redhat.com> 12624 12625 * config/i386/i386.h (MASK_ACCUMULATE_OUTGOING_ARGS_SET, MASK_MMX_SET, 12626 MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET, MASK_3DNOW_A_SET): Kill. 12627 (TARGET_SWITCHES): Don't reference them. 12628 * config/i386/i386.c (override_options): Use target_flags_explicit 12629 to examine bits set by the user. 12630 126312002-09-23 Dale Johannesen <dalej@apple.com> 12632 12633 * dbxout.c (dbxout_parms): Set current_sym_code for params 12634 passed on stack by invisible reference. 12635 126362002-09-23 Richard Earnshaw <rearnsha@arm.com> 12637 12638 * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Always allocate 12639 at least one byte of space. 12640 126412002-09-23 Mark Mitchell <mark@codesourcery.com> 12642 12643 * c-common.h (flag_abi_version): Fix typo in comment. 12644 * doc/invoke.texi (flag_abi_version): Document default value. 12645 126462002-09-23 Hans-Peter Nilsson <hp@axis.com> 12647 12648 * doc/extend.texi (Extended Asm): Clarify that overlap between 12649 asm-declared register variables used in an asm and the asm clobber 12650 list is not allowed. 12651 * stmt.c (decl_conflicts_with_clobbers_p): New function. 12652 (expand_asm_operands): Keep track of clobbered registers. Call 12653 decl_conflicts_with_clobbers_p for each input and output operand. 12654 If no conflicts found before, also do conflict sanity check when 12655 emitting clobbers. 12656 126572002-09-23 Richard Henderson <rth@redhat.com> 12658 12659 * c-common.c (cpp_define_data_format): Remove. 12660 (cb_register_builtins): Don't define __WCHAR_BIT__, __SHRT_BIT__, 12661 __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__, 12662 __DOUBLE_BIT__, __LONG_DOUBLE_BIT__. 12663 * doc/cpp.texi: Don't document them either. 12664 (__SCHAR_MAX__, __SHRT_MAX__, __INT_MAX__, __LONG_MAX__, 12665 __LONG_LONG_MAX__): Document. 12666 (__TARGET_FLOAT_FORMAT__): Remove. 12667 126682002-09-23 Richard Henderson <rth@redhat.com> 12669 12670 * real.c (do_multiply): Normalize U before addition. 12671 126722002-09-23 Mark Mitchell <mark@codesourcery.com> 12673 12674 * c-common.c (flag_abi_version): New variable. 12675 * c-common.h (flag_abi_version): Declare it. 12676 * c-opts.c (missing_arg): Add -fabi-version. 12677 (c_common_decode_option): Process -fabi-version. 12678 * doc/invoke.texi (-fabi-version): Document it. 12679 (-Wabi): Add information about bit-fields in unions. 12680 126812002-09-22 Jason Thorpe <thorpej@wasabisystems.com> 12682 12683 * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Always pass -KPIC 12684 unless -fno-pic or -fno-PIC is specified. 12685 126862002-09-22 John David Anglin <dave@hiauly1.hia.nrc.ca> 12687 12688 * c-common.c (preprocessing_trad_p): Define. 12689 * pa-hiux.h, pa-hpux.h, pa-hpux7.h (CPP_PREDEFINES): Delete. 12690 (TARGET_OS_CPP_BUILTINS, SUBTARGET_SWITCHES): Define. 12691 * pa-hpux10.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define. 12692 * pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define. 12693 * pa-linux.h (CPP_PREDEFINES): Delete. 12694 (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define. 12695 * pa32-linux.h, pa64-linux.h (CPP_SPEC): Delete. 12696 * pa-osf.h, pa-pro-end.h, rtems.h (CPP_PREDEFINES): Delete. 12697 (TARGET_OS_CPP_BUILTINS): Define. 12698 * pa.h (MASK_SIO, TARGET_SIO, TARGET_PA_10): Define. 12699 (TARGET_SWITCHES): Reformat. Use N_() macro. Add SUBTARGET_SWITCHES. 12700 (SUBTARGET_SWITCHES): Provide default definition. 12701 (TARGET_OPTIONS): Reformat. Use N_() macro. 12702 (CPP_PA10_SPEC, CPP_PA11_SPEC, CPP_PA20_SPEC, CPP_64BIT_SPEC, 12703 CPP_CPU_DEFAULT_SPEC, CPP_64BIT_DEFAULT_SPEC, SUBTARGET_EXTRA_SPECS, 12704 EXTRA_SPECS, CPP_SPEC, CPLUSPLUS_CPP_SPEC, CPP_PREDEFINES): Delete. 12705 (TARGET_CPU_CPP_BUILTINS): Define. 12706 (TARGET_OS_CPP_BUILTINS): Define for BSD-like systems. 12707 * doc/invoke.texi (msio, mwsio): Document new hppa options. 12708 * doc/tm.texi (TARGET_CPU_CPP_BUILTINS): Document macro 12709 preprocessing_trad_p(). 12710 127112002-09-22 Jason Thorpe <thorpej@wasabisystems.com> 12712 12713 * doc/install.texi: Document behavior of --with-headers and 12714 --with-libs when arguments are omitted. 12715 127162002-09-22 Kazu Hirata <kazu@cs.umass.edu> 12717 12718 * dbxout.c: Follow spelling conventions. 12719 * defaults.h: Likewise. 12720 * df.c: Likewise. 12721 * diagnostic.h: Likewise. 12722 * doloop.c: Likewise. 12723 * dwarf2out.c: Likewise. 12724 * dwarfout.c: Likewise. 12725 * emit-rtl.c: Likewise. 12726 * except.c: Likewise. 12727 * explow.c: Likewise. 12728 * expmed.c: Likewise. 12729 * expr.c: Likewise. 12730 * expr.h: Likewise. 12731 * flags.h: Likewise. 12732 * flow.c: Likewise. 12733 * fold-const.c: Likewise. 12734 * function.c: Likewise. 12735 * function.h: Likewise. 12736 * gcc.c: Likewise. 12737 * gcov-io.h: Likewise. 12738 * gcov.c: Likewise. 12739 * gcse.c: Likewise. 12740 * genattrtab.c: Likewise. 12741 * genconfig.c: Likewise. 12742 * genrecog.c: Likewise. 12743 * ggc-page.c: Likewise. 12744 * ggc.h: Likewise. 12745 * global.c: Likewise. 12746 * gthr-win32.h: Likewise. 12747 * integrate.c: Likewise. 12748 * jump.c: Likewise. 12749 * langhooks.c: Likewise. 12750 * langhooks.h: Likewise. 12751 * line-map.h: Likewise. 12752 * local-alloc.c: Likewise. 12753 * longlong.h: Likewise. 12754 * loop.c: Likewise. 12755 * loop.h: Likewise. 12756 127572002-08-27 Jan Hubicka <jh@suse.cz> 12758 12759 * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64. 12760 127612002-08-27 Jan Hubicka <jh@suse.cz> 12762 12763 * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128 12764 for -Os/TARGET_64BIT too. 12765 127662002-09-21 Kazu Hirata <kazu@cs.umass.edu> 12767 12768 * ChangeLog: Follow spelling conventions. 12769 * ChangeLog.0: Likewise. 12770 * ChangeLog.1: Likewise. 12771 * ChangeLog.2: Likewise. 12772 * ChangeLog.3: Likewise. 12773 * ChangeLog.4: Likewise. 12774 * ChangeLog.5: Likewise. 12775 * ChangeLog.6: Likewise. 12776 * FSFChangeLog.10: Likewise. 12777 * FSFChangeLog.11: Likewise. 12778 * alias.c: Likewise. 12779 * basic-block.h: Likewise. 12780 * c-aux-info.c: Likewise. 12781 * c-common.c: Likewise. 12782 * c-common.h: Likewise. 12783 * c-decl.c: Likewise. 12784 * c-format.c: Likewise. 12785 * c-semantics.c: Likewise. 12786 * c-typeck.c: Likewise. 12787 * calls.c: Likewise. 12788 * cfganal.c: Likewise. 12789 * cfgloop.c: Likewise. 12790 * collect2.c: Likewise. 12791 * combine.c: Likewise. 12792 * conflict.c: Likewise. 12793 * cppexp.c: Likewise. 12794 * cppfiles.c: Likewise. 12795 * cpphash.h: Likewise. 12796 * cppinit.c: Likewise. 12797 * cpplex.c: Likewise. 12798 * cpplib.c: Likewise. 12799 * cpplib.h: Likewise. 12800 * cppmacro.c: Likewise. 12801 * cse.c: Likewise. 12802 128032002-09-21 Richard Earnshaw <rearnsha@arm.com> 12804 12805 * netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): New, takes old definition of 12806 LINK_SPEC. 12807 (LINK_SPEC): Define to NETBSD_LINK_SPEC_AOUT. 12808 * arm/netbsd.h (SUBTARGET_EXTRA_SEPCS): Add NETBSD_LINK_SPEC_AOUT. 12809 (LINK_SPEC): Rework to use NETBSD_LINK_SPEC_AOUT). 12810 128112002-09-21 Richard Earnshaw <rearnsha@arm.com> 12812 12813 PR opt/7930 12814 * cse.c (fold_rtx): Calculate old_cost before we fold each 12815 operand. 12816 128172002-09-21 Richard Henderson <rth@redhat.com> 12818 12819 * c-common.c (cpp_define_data_format): Remove __GCC_LITTLE_ENDIAN__, 12820 __GCC_BIG_ENDIAN__, __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__, 12821 __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__, 12822 __TARGET_USES_VAX_F_FLOAT__, __TARGET_USES_VAX_D_FLOAT__, 12823 __TARGET_USES_VAX_G_FLOAT__, __TARGET_USES_VAX_H_FLOAT__. 12824 * doc/cpp.texi: Don't document them. 12825 128262002-09-21 Richard Henderson <rth@redhat.com> 12827 12828 * c-common.c (builtin_define_float_constants): Use real_format 12829 to get the floating-point parameters. 12830 128312002-09-21 Richard Henderson <rth@redhat.com> 12832 12833 * real.c (struct real_format): Move to real.h. 12834 (real_format_for_mode): Rename from fmt_for_mode; update all users; 12835 initialize with ieee defaults. 12836 (real_to_target_fmt, real_from_target_fmt): New. 12837 (ieee_single_format, ieee_double_format, ieee_extended_motorola_format, 12838 ieee_extended_intel_96_format, ieee_extended_intel_128_format, 12839 ieee_quad_format, i370_single_format, i370_double_format, 12840 c4x_single_format, c4x_extended_format): Rename from s/_format//. 12841 (ieee_quad_format): Fix emin. 12842 (format_for_size, init_real_once): Remove. 12843 * real.h (struct real_format): Move from real.c. 12844 (real_format_for_mode): Declare. 12845 (real_to_target_fmt, real_from_target_fmt): Declare. 12846 (ieee_single_format, ieee_double_format, ieee_extended_motorola_format, 12847 ieee_extended_intel_96_format, ieee_extended_intel_128_format, 12848 ieee_quad_format, vax_f_format, vax_d_format, vax_g_format, 12849 i370_single_format, i370_double_format, c4x_single_format, 12850 c4x_extended_format): Declare. 12851 * toplev.c (do_compile): Don't call init_real_once. 12852 12853 * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): Remove. 12854 * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Remove. 12855 12856 * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Define. 12857 * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): 64, if vax mode. 12858 * config/alpha/alpha.c (override_options): Set real_format_for_mode 12859 for VAX, if enabled. 12860 12861 * config/c4x/c4x.c (c4x_override_options): Set real_format_for_mode 12862 for C4X. 12863 12864 * config/i370/i370.h (OVERRIDE_OPTIONS): New. 12865 * config/i370/i370.c (override_options): New. 12866 * config/i370/i370-protos.h: Update. 12867 12868 * config/i386/i386.c (override_options): Set real_format_for_mode 12869 for Intel 80-bit extended. 12870 * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Remove. 12871 12872 * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Mind -mlong-double-64. 12873 (OVERRIDE_OPTIONS): Move code... 12874 * config/i960/i960.c (i960_initialize): ... here. Set 12875 real_format_for_mode for Intel 80-bit extended. 12876 12877 * config/ia64/ia64.c (ia64_override_options): Set real_format_for_mode 12878 for Intel 80-bit extended, if enabled. 12879 12880 * config/m68k/m68k.c (override_options): Set real_format_for_mode 12881 for Motorola 96-bit extended. 12882 12883 * config/vax/vax.h (OVERRIDE_OPTIONS): New. 12884 * config/vax/vax.c (override_options): New. 12885 * config/vax/vax-protos.h: Update. 12886 128872002-09-21 Alan Modra <amodra@bigpond.net.au> 12888 12889 * config/rs6000/rs6000.md (builtin_setjmp_receiver): Add 12890 #if TARGET_MACHO. 12891 12892 * config/rs6000/rs6000.md (floatdisf2_internal2): Combine 12893 insns. Supply missing clobber of scratch reg. 12894 128952002-09-20 Kazu Hirata <kazu@cs.umass.edu> 12896 12897 * config/m32r/m32r.c: Follow spelling conventions. 12898 * config/m32r/m32r.h: Likewise. 12899 * config/m32r/m32r.md: Likewise. 12900 * config/m68k/m68k.c: Likewise. 12901 * config/m88k/m88k.c: Likewise. 12902 * config/mcore/mcore.c: Likewise. 12903 * config/mips/mips.c: Likewise. 12904 * config/mips/mips.h: Likewise. 12905 * config/mmix/mmix.c: Likewise. 12906 * config/mn10200/mn10200.c: Likewise. 12907 * config/ns32k/ns32k.h: Likewise. 12908 * config/pa/pa.c: Likewise. 12909 * config/pa/pa64-linux.h: Likewise. 12910 * config/pdp11/pdp11.h: Likewise. 12911 * config/romp/romp.c: Likewise. 12912 * config/romp/romp.h: Likewise. 12913 * config/rs6000/eabi.asm: Likewise. 12914 * config/rs6000/linux64.h: Likewise. 12915 * config/rs6000/rs6000.c: Likewise. 12916 * config/rs6000/rs6000.h: Likewise. 12917 * config/rs6000/rs6000.md: Likewise. 12918 * config/rs6000/sysv4.h: Likewise. 12919 * config/rs6000/xcoff.h: Likewise. 12920 129212002-09-20 Jim Wilson <wilson@redhat.com> 12922 12923 * config/v850/v850/lib1funcs.asm (__muldi3): Change r5 to r28. 12924 129252002-09-20 Jakub Jelinek <jakub@redhat.com> 12926 12927 * config/i386/i386.md (UNSPEC_GOTNTPOFF, UNSPEC_INDNTPOFF): New. 12928 * config/i386/i386.c (legitimate_pic_address_disp_p): Handle 12929 UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF like UNSPEC_GOTTPOFF. 12930 (legitimate_address_p): Likewise. 12931 (legitimize_address): Use @gotntpoff and @indntpoff. 12932 (output_pic_addr_const): Handle UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF. 12933 (output_addr_const_extra): Likewise. 12934 129352002-09-20 Jim Wilson <wilson@redhat.com> 12936 12937 * combine.c (try_combine): When split an instruction pair, where the 12938 first has a sign_extend src, verify that the src and dest modes match. 12939 129402002-09-20 Richard Henderson <rth@redhat.com> 12941 12942 * config/mips/mips.c (dfhigh, dflow, sfhigh, sflow): Remove. 12943 (override_options): Do not initialize them. 12944 (mips_const_double_ok): Allow no fp constants except zero, 12945 and not even that for mips16. 12946 (const_float_1_operand): Use dconst1. 12947 * config/mips/mips.md (movsf, movsf_internal1, movsf_internal2, 12948 movdf, movdf_internal1, movdf_internal1a, movdf_internal2): 12949 Don't allow arbitrary constants; fix predicates and C constraint. 12950 129512002-09-20 Neil Booth <neil@daikokuya.co.uk> 12952 12953 * cppmacro.c: Don't warn about function-like macros without 12954 '(' during pre-expansion. 12955 129562002-09-20 Jim Wilson <wilson@redhat.com> 12957 12958 * config/v850/v850.c (current_function_anonymous_args): Delete. 12959 (expand_prologue): Use current_function_args_info.anonymous_args. 12960 (expand_epilogue): Delete use of current_function_anonymous_args. 12961 * config/v850/v850.h (struct cum_arg): Add anonymous_args field. 12962 (INIT_CUMULATIVE_ARGS): Clear anonymous_args field. 12963 (current_function_anonymous_args): Delete extern declaration. 12964 (SETUP_INCOMING_VARARGS): Set anonymous_args field. 12965 129662002-09-20 Geoffrey Keating <geoffk@apple.com> 12967 12968 * config/rs6000/rs6000.c (rs6000_emit_prologue): Update for change 12969 to load_macho_picbase. 12970 * config/rs6000/rs6000.md: Document Darwin-specific unspec IDs. 12971 (load_macho_picbase): Take the symbol to use as a parameter. 12972 (macho_correct_pic): New insn. 12973 (builtin_setjmp_reciever): On Darwin, restore the PIC register. 12974 12975 * config/rs6000/rs6000.h (ELIMINABLE_REGS): Use 12976 RS6000_PIC_OFFSET_TABLE_REGNUM rather than hardcoding 30. 12977 (CAN_ELIMINATE): Likewise. 12978 (INITIAL_ELIMINATION_OFFSET): Likewise. 12979 (TOC_REGISTER): Likewise. 12980 129812002-09-20 Richard Henderson <rth@redhat.com> 12982 12983 * real.c (real_hash): New. 12984 * real.h: Declare it. 12985 * cse.c (canon_hash): Use it. 12986 * cselib.c (hash_rtx): Likewise. 12987 * emit-rtl.c (const_double_htab_hash): Likewise. 12988 * rtl.h (CONST_DOUBLE_REAL_VALUE): New. 12989 * varasm.c (struct rtx_const): Reduce vector size; separate 12990 integer and fp vectors. 12991 (HASHBITS): Remove. 12992 (const_hash_1): Rename from const_hash. Use real_hash. Do not 12993 take modulus MAX_HASH_TABLE. 12994 (const_hash): New. Do take modulus MAX_HASH_TABLE. 12995 (output_constant_def): Do not take modulus MAX_HASH_TABLE. 12996 (SYMHASH): Don't use HASHBITS. 12997 (decode_rtx_const): Copy only active bits from REAL_VALUE_TYPE. 12998 Fix CONST_VECTOR thinko wrt fp vectors. Fix kind comparison. 12999 (simplify_subtraction): Fix kind comparison. 13000 (const_hash_rtx): Return unsigned int. Don't use HASHBITS. 13001 Use a union to pun integer array. 13002 * config/rs6000/rs6000.c (rs6000_hash_constant): Use real_hash; 13003 only hash two words of integral CONST_DOUBLE. 13004 130052002-09-20 Steve Ellcey <sje@cup.hp.com> 13006 13007 * config/ia64/hpux.h (STARTFILE_SPEC): Modify. 13008 (STARTFILE_PREFIX_SPEC): New. 13009 (LINK_SPEC): Modify. 13010 (LIB_SPEC): Modify. 13011 (LIBGCC_SPEC): New. 13012 130132002-09-20 Jakub Jelinek <jakub@redhat.com> 13014 13015 * config/i386/i386.c (legitimate_pic_address_disp_p): Allow 13016 UNSPEC_NTPOFF and UNSPEC_DTPOFF to be offsetted by constant. 13017 130182002-09-20 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com> 13019 13020 * config/arm/arm.md (sign_extract_onebit, not_signextract_onebit): 13021 Add clobber of the condition code register. 13022 130232002-09-20 Richard Henderson <rth@redhat.com> 13024 13025 * real.c (do_fix_trunc): Static. 13026 (encode_ieee_single, encode_ieee_double, encode_ieee_extended, 13027 encode_ieee_quad, encode_vax_f, encode_vax_d, encode_vax_g, 13028 encode_i370_single, encode_i370_double, encode_c4x_single, 13029 encode_c4x_extended): Add default abort case. 13030 130312002-09-20 Richard Henderson <rth@redhat.com> 13032 13033 * real.h (enum real_value_class, SIGNIFICAND_BITS, EXP_BITS, 13034 MAX_EXP, SIGSZ, SIG_MSB, struct real_value): Move from real.c. 13035 (struct realvaluetype): Remove. 13036 (REAL_VALUE_TYPE): Use struct real_value. 13037 (REAL_VALUE_TYPE_SIZE): Use SIGNIFICAND_BITS. 13038 (test_real_width): New. 13039 * real.c: Global replace struct real_value with REAL_VALUE_TYPE. 13040 (real_arithmetic): Avoid hoops for REAL_VALUE_TYPE parameters. 13041 (real_compare, real_exponent, real_ldexp, real_isinf, real_isnan, 13042 real_isneg, real_isnegzero, real_identical, exact_real_inverse, 13043 real_to_integer, real_to_integer2, real_to_decimal, 13044 real_to_hexadecimal, real_from_string, real_from_integer, 13045 real_inf, real_nan, real_2expN, real_convert, real_to_target, 13046 real_from_target): Likewise. 13047 * tree.h (struct tree_real_cst): Use real_value not realvaluetype. 13048 * gengtype-yacc.y (bitfieldopt): Accept an ID as well. 13049 130502002-09-20 Richard Henderson <rth@redhat.com> 13051 13052 * real.h (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT, 13053 IBM_FLOAT_FORMAT, C4X_FLOAT_FORMAT, TARGET_FLOAT_FORMAT): Move ... 13054 * defaults.h: ... here. 13055 * config/arm/arm.h, config/avr/avr.h, config/d30v/d30v.h, 13056 config/fr30/fr30.h, config/frv/frv.h, config/ia64/ia64.h, 13057 config/ip2k/ip2k.h, config/mips/mips.h, config/stormy16/stormy16.h, 13058 config/xtensa/xtensa.h (TARGET_FLOAT_FORMAT): Remove. 13059 130602002-09-20 Hans-Peter Nilsson <hp@bitrange.com> 13061 13062 * config/mmix/mmix.md ("negdf2"): Rewrite. 13063 ("*expanded_negdf2"): New. 13064 130652002-09-19 Jim Wilson <wilson@redhat.com> 13066 13067 * combine.c (simplify_set): When optimizing a subreg src with a 13068 cc0 dest, use GET_MODE (src) for mask instead of inner_mode. 13069 130702002-09-19 Dale Johannesen <dalej@apple.com> 13071 * combine.c (make_extraction): Don't create 13072 invalid subreg. 13073 130742002-09-19 Ulrich Weigand <uweigand@de.ibm.com> 13075 13076 * config/s390/s390.c (addr_generation_dependency_p): Handle SUBREG 13077 and STRICT_LOW_PART within SET_DEST. 13078 * config/s390/s390.md ("*extractqi", "*extracthi"): New insns with 13079 splitters, replacing pre-reload splitters. 13080 ("*zero_extendhisi2_31", "*zero_extendqisi2_31", 13081 "*zero_extendqihi2_31"): New insns. 13082 ("*zero_extendqihi2_64"): Do not clobber CC. 13083 130842002-09-19 Steve Ellcey <sje@cup.hp.com> 13085 13086 * config/ia64/hpux.h (CTORS_SECTION_ASM_OP): New. 13087 (DTORS_SECTION_ASM_OP): Ditto. 13088 (READONLY_DATA_SECTION_ASM_OP): Moved. 13089 (DATA_SECTION_ASM_OP): New. 13090 (SDATA_SECTION_ASM_OP): New. 13091 (BSS_SECTION_ASM_OP): New. 13092 (SBSS_SECTION_ASM_OP): New. 13093 (TEXT_SECTION_ASM_OP): New. 13094 130952002-09-19 Kazu Hirata <kazu@cs.umass.edu> 13096 13097 * config/fp-bit.c: Follow spelling conventions. 13098 * config/d30v/d30v.c: Likewise. 13099 * config/d30v/d30v.h: Likewise. 13100 * config/fr30/fr30.c: Likewise. 13101 * config/fr30/fr30.h: Likewise. 13102 * config/fr30/fr30.md: Likewise. 13103 * config/frv/frv.c: Likewise. 13104 * config/frv/frv.h: Likewise. 13105 * config/h8300/h8300.c: Likewise. 13106 * config/h8300/lib1funcs.asm: Likewise. 13107 * config/i370/i370.c: Likewise. 13108 * config/i386/i386.h: Likewise. 13109 * config/i386/i386.md: Likewise. 13110 * config/i386/pentium.md: Likewise. 13111 * config/i386/winnt.c: Likewise. 13112 * config/i960/i960.c: Likewise. 13113 * config/ia64/ia64.h: Likewise. 13114 * config/ip2k/ip2k.c: Likewise. 13115 * config/ip2k/ip2k.h: Likewise. 13116 * config/ip2k/ip2k.md: Likewise. 13117 * config/ip2k/libgcc.S: Likewise. 13118 131192002-09-19 Stephen Clarke <stephen.clarke@superh.com> 13120 13121 * config/sh/sh.h (UNSPEC_GOTOFF_P): Define. 13122 (GOTOFF_P): Extend to allow gotoff plus constant. 13123 131242002-09-18 Richard Henderson <rth@redhat.com> 13125 13126 * ifcvt.c (noce_process_if_block): Correctly detect X modified 13127 with INSN_B before COND_EARLIEST. Don't check A and B for 13128 modification in condition range. Reorder INSN_B for A==B properly. 13129 (if_convert): Iterate until no matches for a block. 13130 131312002-09-18 Richard Henderson <rth@redhat.com> 13132 13133 * calls.c (store_one_arg): Rename default_align to parm_align; 13134 always adjust parm_align for downward padding. 13135 131362002-09-18 Richard Henderson <rth@redhat.com> 13137 13138 * toplev.c (backend_init): Move init_real_once invocation ... 13139 (do_compile): ... here. 13140 131412002-09-18 Richard Henderson <rth@redhat.com> 13142 13143 * sibcall.c (optimize_sibling_and_tail_recursive_call): Also remove 13144 RTX_UNCHANGING_P markers for successful tail-recursive replacement. 13145 131462002-09-18 Richard Henderson <rth@redhat.com> 13147 13148 * real.c (round_for_format): Collect sticky as unsigned long, not bool. 13149 131502002-09-19 Alan Modra <amodra@bigpond.net.au> 13151 13152 * config/rs6000/rs6000.md: (floatdisf2): Rename to 13153 floatdisf2_internal1. 13154 (floatdisf2): New define_expand. 13155 (floatdisf2_internal2): Likewise. 13156 131572002-09-18 Richard Henderson <rth@redhat.com> 13158 13159 * real.c (sticky_rshift_significand): Collect sticky as 13160 unsigned long, not bool. 13161 131622002-09-18 Ulrich Weigand <uweigand@de.ibm.com> 13163 13164 * config/s390/s390.c (s390_address_cost): New function. 13165 config/s390/s390-protos.h (s390_address_cost): Add prototype. 13166 config/s390/s390.h (ADDRESS_COST): Call s390_address_cost. 13167 (RTX_COST): Use COSTS_N_INSNS. 13168 131692002-09-18 Douglas Rupp <rupp@gnat.com> 13170 Donn Terry <donnte@microsoft.com> 13171 13172 * stor-layout.c (place_field): Handle alignment of whole 13173 structures when MSVC compatible bitfields are involved. 13174 Change method of computing location of MS bitfields to 13175 be compatible with #pragma pack(n). 13176 13177 * tree.h (record_layout_info): Add new field 13178 remaining_in_alignment. 13179 13180 * doc/tm.texi: (TARGET_MS_BITFIELD_LAYOUT_P): Update. 13181 (pragma pack): Add paragraph on MSVC bit-field packing. 13182 131832002-09-18 Richard Earnshaw (reanrsha@arm.com) 13184 13185 PR optimization/7967 13186 * arm.md (ne_zeroextractsi): Add clobber of the condition code 13187 register. 13188 131892002-09-18 Kazu Hirata <kazu@cs.umass.edu> 13190 13191 * config/s390/s390.c: Follow spelling conventions. 13192 * config/sh/lib1funcs.asm: Likewise. 13193 * config/sh/sh.c: Likewise. 13194 * config/sh/sh.h: Likewise. 13195 * config/sparc/sparc.c: Likewise. 13196 * config/sparc/sparc.h: Likewise. 13197 * config/sparc/sparc.md: Likewise. 13198 * config/stormy16/stormy16.c: Likewise. 13199 * config/stormy16/stormy16.h: Likewise. 13200 * config/v850/v850.c: Likewise. 13201 * config/v850/v850.h: Likewise. 13202 * config/vax/vax.c: Likewise. 13203 * config/vax/vax.h: Likewise. 13204 132052002-09-18 Nick Clifton <nickc@redhat.com> 13206 13207 * config/rs60000/rs6000.c (rs6000_emit_move): Handle V1DImode moves. 13208 * config/rs60000/rs6000.c (SPE_VECTOR_MODE): Include V1DImode. 13209 * config/rs6000/spe.md (movv1di, movv1di_internal): New patterns. 13210 132112002-09-17 Zack Weinberg <zack@codesourcery.com> 13212 13213 * ABOUT-GCC-NLS: Remove reference to enquire, and out-of-date 13214 statement that the only translation is to en_UK. 13215 132162002-09-17 Kazu Hirata <kazu@cs.umass.edu> 13217 13218 * config/alpha/alpha.c: Follow spelling conventions. 13219 * config/alpha/alpha.h: Likewise. 13220 * config/alpha/alpha.md: Likewise. 13221 * config/arc/arc.h: Likewise. 13222 * config/arm/arm.c: Likewise. 13223 * config/arm/arm.h: Likewise. 13224 * config/arm/arm.md: Likewise. 13225 * config/arm/pe.c: Likewise. 13226 * config/arm/unknown-elf.h: Likewise. 13227 * config/avr/avr.c: Likewise. 13228 * config/avr/avr.h: Likewise. 13229 * config/c4x/c4x.c: Likewise. 13230 * config/cris/cris.c: Likewise. 13231 * config/cris/cris.h: Likewise. 13232 132332002-09-17 Samuel Figueroa <figueroa@apple.com> 13234 13235 * final.c (final_scan_insn): Use new macro ASM_OUTPUT_ALIGN_WITH_NOP. 13236 * config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP) New macro. 13237 * doc/tm.texi (ASM_OUTPUT_ALIGN_WITH_NOP) New description. 13238 132392002-09-17 Dale Johannesen <dalej@apple.com> 13240 13241 * cfgcleanup.c (try_forward_edges): Do not forward a 13242 branch to just after a loop exit before loop optimization; 13243 this interfered with doloop detection. 13244 132452002-09-17 Nick Clifton <nickc@redhat.com> 13246 13247 * config/arm/arm.c (output_return_instruction): Do not 13248 writeback the stack pointer when it is being loaded. 13249 (arm_output_epilogue): Likewise. 13250 132512002-09-17 Kazu Hirata <kazu@cs.umass.edu> 13252 13253 * optabs.c (prepare_cmp_insn): Let emit_library_call_value 13254 generate a pseudo reg that receives the result of a libcall. 13255 (prepare_float_lib_cmp): Likewise. 13256 132572002-09-17 Steve Ellcey <sje@cup.hp.com> 13258 13259 * config/ia64/elf.h: Remove CPP_PREDEFINES. 13260 132612002-09-17 Nicola Pero <n.pero@mi.flashnet.it> 13262 13263 Fix PR/7014 and related objc bugs: 13264 * c-typeck.c (comp_target_types): Added a reflexive argument. 13265 Pass it to ObjC when/if calling objc_comptypes(). Updated all 13266 callers to provide the appropriate reflexive argument. 13267 * objc/objc-act.c (objc_comptypes): Carefully checked and fixed 13268 typechecking for all cases of comparisons and assignments, 13269 particularly the obscure and less common ones involving protocols. 13270 132712002-09-17 Nick Clifton <nickc@redhat.com> 13272 13273 * machmode.def (V1DImode): New mode. A single element vector. 13274 * tree.h (TI_UV1DI_TYPE, TI_V1DI_TYPE): New tree_index enums. 13275 (unsigned_V1DI_type_node, V1D1_type_node): New type nodes. 13276 * tree.c (build_common_tree_nodes_2): Build 13277 unsigned_V1DI_type_node and V1D1_type_node. 13278 * c-common.c (c_common_type_for_mode): Return 13279 unsigned_V1DI_type_node or V1D1_type_node for V1DImode. 13280 * rtl.c (class_narrowest_): Start integer vector nodes with V1DImode. 13281 132822002-09-17 Nicola Pero <n.pero@mi.flashnet.it> 13283 13284 * doc/objc.texi (Constant string objects): Extended documentation 13285 to make clear that the constant string class ivar layout is 13286 completely fixed. 13287 132882002-09-17 Roger Sayle <roger@eyesopen.com> 13289 13290 * cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned 13291 NOTE_INSN_LOOP_CONT notes when deleting basic blocks. 13292 132932002-09-16 Richard Henderson <rth@redhat.com> 13294 13295 * expr.c (emit_block_move): Set memory block size as appropriate 13296 for the copy. 13297 132982002-09-16 Richard Henderson <rth@redhat.com> 13299 13300 PR fortran/3924 13301 * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol. 13302 133032002-09-16 Richard Henderson <rth@redhat.com> 13304 13305 * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE 13306 as well as OFFSET for BITPOS. 13307 133082002-09-16 Jeff Garzik <jgarzik@mandrakesoft.com> 13309 13310 * config.gcc: Treat winchip_c6-*|winchip2-*|c3-* as pentium-mmx. 13311 * config/i386/i386.c (processor_alias_table): Add winchip-c6, 13312 winchip2 and c3. 13313 * doc/invoke.texi: Mention new aliases. 13314 133152002-09-16 John David Anglin <dave@hiauly1.hia.nrc.ca> 13316 13317 * calls.c (store_one_arg): Set default alignment for BLKmode arguments 13318 to BITS_PER_UNIT when ARGS_GROW_DOWNWARD and the padding direction is 13319 downward. 13320 * function.c (pad_below): Always compile. 13321 (locate_and_pad_parm): If defined ARGS_GROW_DOWNWARD, pad argument to 13322 alignment when it is not in a register or REG_PARM_STACK_SPACE is true. 13323 Pad below when the argument is not in a register and the padding 13324 direction is downward. 13325 13326 * pa-64.h (MUST_PASS_IN_STACK): Move define to pa.h. 13327 (PAD_VARARGS_DOWN): Define. 13328 * pa.c (function_arg_padding): Revise padding directions to make them 13329 compatible with the 32 and 64-bit runtime architecture documentation. 13330 (hppa_va_arg): Add code to handle variable and size zero arguments 13331 passed by reference on TARGET_64BIT. Reformat. 13332 (function_arg): Use a PARALLEL for BLKmode and aggregates args on 13333 TARGET_64BIT. Use a DImode PARALLEL for BLKmode args 5 to 8 bytes 13334 wide when !TARGET_64BIT. Move forward check for mode==VOIDmode. 13335 Add comments. 13336 * pa.h (MAX_PARM_BOUNDARY): Correct define for TARGET_64BIT. 13337 (RETURN_IN_MEMORY): Return size zero types in memory. 13338 (FUNCTION_VALUE): Return TFmode in general registers. 13339 (MUST_PASS_IN_STACK): Define. 13340 (FUNCTION_ARG_BOUNDARY): Simplify. 13341 (FUNCTION_ARG_PASS_BY_REFERENCE): Pass variable and zero sized types 13342 by reference. 13343 (FUNCTION_ARG_CALLEE_COPIES): Define to FUNCTION_ARG_PASS_BY_REFERENCE. 13344 133452002-09-16 Richard Henderson <rth@redhat.com> 13346 13347 * real.c (do_fix_trunc): New. 13348 (real_arithmetic): Call it. 13349 * simplify-rtx.c (simplify_unary_operation): Handle FIX 13350 with a floating-point result mode. 13351 133522002-09-16 Richard Henderson <rth@redhat.com> 13353 13354 * builtin-types.def (BT_FN_FLOAT_CONST_STRING): New. 13355 (BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New. 13356 * builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New. 13357 (__builtin_nans, __builtin_nansf, __builtin_nansl): New. 13358 * builtins.c (fold_builtin_nan): New. 13359 (fold_builtin): Call it. 13360 * real.c (real_nan): Parse a non-empty string. 13361 (round_for_format): Fix NaN significand truncation. 13362 * real.h (real_nan): Return bool. 13363 * doc/extend.texi: Document new builtins. 13364 133652002-09-16 Jason Merrill <jason@redhat.com> 13366 Danny Smith <dannysmith@users.sourceforge.net> 13367 13368 * config/i386/winnt.c (ix86_handle_dll_attribute): Set 13369 DECL_EXTERN and TREE_PUBLIC for dllimported variables here... 13370 (i386_pe_mark_dllimport): Not here. 13371 133722002-09-16 Nathan Sidwell <nathan@codesourcery.com> 13373 13374 * c-semantics.c (genrtl_do_stmt): Cope with NULL cond. 13375 133762002-09-16 Geoffrey Keating <geoffk@redhat.com> 13377 13378 * config/rs6000/rs6000.c (build_mask64_2_operands): Suppress 13379 warnings about unused operands when HOST_BITS_PER_WIDE_INT is 13380 < 64. 13381 (rs6000_emit_cmove): Use real_isinf not target_isinf. 13382 133832002-09-16 Kazu Hirata <kazu@cs.umass.edu> 13384 13385 * calls.c (emit_library_call_value_1): Don't refer to 13386 hard_libcall_value. 13387 * optabs.c (prepare_float_lib_cmp): Likewise. 13388 133892002-09-16 Geoffrey Keating <geoffk@apple.com> 13390 13391 * ggc-common.c (ggc_mark_rtx_children_1): Update for changed name 13392 mangling. 13393 13394 The following changes are merged from pch-branch: 13395 13396 * doc/gty.texi (GTY Options): Document %a. 13397 * gengtype.c (do_scalar_typedef): New function. 13398 (process_gc_options): Handle `length' option. 13399 (set_gc_used_type): A pointer to an array of structures doesn't 13400 qualify as a pointer to a structure. 13401 (output_escaped_param): Add `%a' escape. 13402 (write_gc_structure_fields): Allow 'desc' on array of unions. 13403 (main): Define `uint8', `jword' and `JCF_u2' as scalars; use 13404 do_scalar_typedef. 13405 13406 * gengtype.c (enum rtx_code): Make global. 13407 (rtx_format): Make global. 13408 (rtx_next): New. 13409 (gen_rtx_next): New. 13410 (write_rtx_next): New. 13411 (adjust_field_rtx_def): Skip fields marked by chain_next. 13412 (open_base_files): Delete redundant prototype. 13413 (write_enum_defn): New. 13414 (output_mangled_typename): Correct abort call. 13415 (write_gc_marker_routine_for_structure): Handle chain_next and 13416 chain_prev options. 13417 (finish_root_table): Don't output redundant \n. 13418 (main): Call gen_rtx_next, write_rtx_next, write_enum_defn. 13419 * c-tree.h (union lang_tree_node): Add chain_next option. 13420 13421 * gengtype.h (NUM_PARAM): New definition. 13422 (struct type): For TYPE_PARAM_STRUCT, allow multiple parameters. 13423 * gengtype.c (find_param_structure): New. 13424 (adjust_field_type): Handle param<n>_is option. 13425 (process_gc_options): Detect use_params option. Update callers. 13426 (set_gc_used_type): Add 'param' parameter, update callers. Handle 13427 'use_params' option. 13428 (open_base_files): Add splay-tree.h to list of files included. 13429 (output_mangled_typename): New. 13430 (write_gc_structure_fields): Update 'param' parameter to support 13431 multiple parameters. Change name mangling. Allow parameterized 13432 fields to have an apparent scalar type. Handle param<n>_is options, 13433 use_param option. 13434 (write_gc_marker_routine_for_structure): Update for change to name 13435 mangling. Better guess the output file for parameterized types. 13436 (write_gc_types): Update for change to name mangling. 13437 (write_gc_root): Update for change to name mangling. Handle (ignore) 13438 param<n>_is options. 13439 * doc/gty.texi (GTY Options): Add description of param<n>_is 13440 options, use_params option. 13441 * ggc.h (ggc_mark_rtx): Update for changed name mangling. 13442 * gengtype-lex.l: Produce token for param<n>_is. 13443 * gengtype-yacc.y: Parse param<n>_is. 13444 13445 * gengtype.c (adjust_field_tree_exp): Don't name a variable 'rindex'. 13446 13447 * rtl.c: Update comment describing rtx_format. 13448 * rtl.h (union rtunion): Separate definition and typedef. 13449 (struct rtx_def): Use gengtype to mark. 13450 * Makefile.in (gengtype.o): Also depend on rtl.def. 13451 * ggc.h (ggc_mark_rtx_children): Delete prototype. 13452 (ggc_mark_rtx): Change to alias of gengtype-generated routine. 13453 * ggc-common.c (ggc_mark_rtx_children): Delete. 13454 (ggc_mark_rtx_children_1): Delete. 13455 (gt_ggc_m_rtx_def): Delete. 13456 * gengtype.c (adjust_field_rtx_def): New. 13457 (adjust_field_type): Call adjust_field_rtx_def. 13458 (write_gc_structure_fields): Add 'default' case to switch if none 13459 is specified; remove unused code. 13460 13461 * tree.h (struct tree_exp): Update for change to meaning 13462 of special. 13463 * gengtype.c (adjust_field_tree_exp): New function. 13464 (adjust_field_type): Handle `tree_exp' special here. 13465 (write_gc_structure_fields): Don't handle `tree_exp' special here. 13466 Handle new `dot' option. 13467 13468 * gengtype.h: Make `info' a pointer-to-const. 13469 * gengtype-yacc.y (yacc_ids): Use xasprintf. 13470 13471 * gengtype.c (write_gc_structure_fields): Remove implementation 13472 of `always' option, add `default' option. 13473 * doc/gty.texi (GTY Options): Remove documentation of `always', 13474 add `default'. 13475 134762002-09-16 Hans-Peter Nilsson <hp@bitrange.com> 13477 13478 * output.h: Remove #ifdef RTX_CODE and #ifdef TREE_CODE. 13479 134802002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 13481 13482 * m68hc11.md (addhi_sp): Fix uninitialized variable bug. 13483 13484 * c4x-c.c, c4x.c, darwin.c, i370-c.c, m32r.c: Include tm_p.h 13485 instead of the *-protos.h file directly. 13486 * t-c4x, t-i370, t-v850: Depend on $(TM_P_H). 13487 * darwin.c (machopic_output_stub): Move prototype ... 13488 * darwin-protos.h (machopic_output_stub): ... here. 13489 * rs6000-protos.h (machopic_output_stub): Don't declare. 13490 134912002-09-16 Richard Henderson <rth@redhat.com> 13492 13493 * c-common.c (builtin_define_float_constants): Emit __FOO_DENORM_MIN__. 13494 134952002-09-16 Richard Henderson <rth@redhat.com> 13496 13497 * real.c, real.h: Rewrite from scratch. 13498 13499 * Makefile.in (simplify-rtx.o): Depend on TREE_H. 13500 (paranoia): New target. 13501 * builtins.c (fold_builtin_inf): Use new real.h interface. 13502 * c-common.c (builtin_define_with_hex_fp_value): Likewise. 13503 * c-lex.c (interpret_float): Likewise. 13504 * emit-rtl.c (gen_lowpart_common): Likewise. 13505 * optabs.c (expand_float): Use real_2expN. 13506 * config/ia64/ia64.md (divsi3, udivsi3): Likewise. 13507 * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): New. 13508 (FLOAT_WORDS_BIG_ENDIAN): New. 13509 * cse.c (find_comparison_args): Don't pass FLOAT_STORE_FLAG_VALUE 13510 directly to REAL_VALUE_NEGATIVE. 13511 * loop.c (canonicalize_condition): Likewise. 13512 * simplify-rtx.c: Include tree.h. 13513 (simplify_unary_operation): Don't handle FIX and UNSIGNED_FIX 13514 with floating-point result modes. 13515 * toplev.c (backend_init): Call init_real_once. 13516 13517 * fold-const.c (force_fit_type): Don't call CHECK_FLOAT_VALUE. 13518 * tree.c (build_real): Likewise. 13519 * config/alpha/alpha.c, config/vax/vax.c (float_strings, 13520 float_values, inited_float_values, check_float_value): Remove. 13521 * config/alpha/alpha.h, config/m68hc11/m68hc11.h, 13522 config/m88k/m88k.h, config/vax/vax.h (CHECK_FLOAT_VALUE): Remove. 13523 * doc/tm.texi (CHECK_FLOAT_VALUE): Remove. 13524 (VAX_HALFWORD_ORDER): Remove. 13525 135262002-09-16 Ulrich Weigand <uweigand@de.ibm.com> 13527 13528 * config/s390/s390.c: (legitimize_la_operand): Remove, replace by ... 13529 (s390_load_address): ... this new function. 13530 (s390_decompose_address): Allow the argument pointer and all 13531 virtual registers as 'pointer' registers. 13532 (s390_expand_plus_operand): Use s390_load_address. 13533 config/s390/s390.md (movti, movdi, movdf splitters): Likewise. 13534 ("force_la_31"): New insn pattern. 13535 config/s390/s390-protos.h (legitimize_la_operand): Remove. 13536 (s390_load_address): Add prototype. 13537 13538 * config/s390/s390.c: Include "optabs.h". 13539 (s390_expand_movstr, s390_expand_clrstr, s390_expand_cmpstr): New. 13540 config/s390/s390-protos.h (s390_expand_movstr, s390_expand_clrstr, 13541 s390_expand_cmpstr): Add prototypes. 13542 config/s390/s390.md ("movstrdi", "movstrsi"): Call s390_expand_movstr. 13543 ("movstrdi_short"): Rename to "movstr_short_64". Change predicates 13544 for operands 0 and 1 to "memory_operand". Add type attribute. 13545 ("movstrsi_short"): Rename to "movstr_short_31". Change predicates 13546 for operands 0 and 1 to "memory_operand". Add type attribute. 13547 ("movstrdi_long", "movstrsi_long"): Remove. 13548 ("movstrdi_64"): Rename to "movstr_long_64". Add type attribute. 13549 ("movstrsi_31"): Rename to "movstr_long_31". Add type attribute. 13550 ("clrstrdi", "clrstrsi"): Call s390_expand_clrstr. 13551 ("clrstrsico"): Remove, replace by ... 13552 ("clrstr_short_64", "clrstr_short_31"): ... these new patterns. 13553 ("clrstrsi_64"): Rename to "clrstr_long_64". 13554 ("clrstrsi_31"): Rename to "clrstr_long_31". 13555 ("cmpstrdi", "cmpstrsi"): Call s390_expand_cmpstr. 13556 ("cmpstr_const"): Remove, replace by ... 13557 ("cmpstr_short_64", "cmpstr_short_31"): ... these new patterns. 13558 ("cmpstr_64"): Rename to "cmpstr_long_64". 13559 ("cmpstr_31"): Rename to "cmpstr_long_31". 13560 135612002-09-16 Kazu Hirata <kazu@cs.umass.edu> 13562 13563 * ABOUT-NLS: Follow spelling conventions. 13564 * ChangeLog: Likewise. 13565 * ChangeLog.1: Likewise. 13566 * ChangeLog.2: Likewise. 13567 * ChangeLog.3: Likewise. 13568 * ChangeLog.4: Likewise. 13569 * ChangeLog.5: Likewise. 13570 * ChangeLog.6: Likewise. 13571 * FSFChangeLog.10: Likewise. 13572 * FSFChangeLog.11: Likewise. 13573 * c-common.c: Likewise. 13574 * c-lex.c: Likewise. 13575 * c-objc-common.c: Likewise. 13576 * cppexp.c: Likewise. 13577 * cppinit.c: Likewise. 13578 * cpplex.c: Likewise. 13579 * doloop.c: Likewise. 13580 * flow.c: Likewise. 13581 * function.c: Likewise. 13582 * integrate.c: Likewise. 13583 * loop.c: Likewise. 13584 * reg-stack.c: Likewise. 13585 * reload.h: Likewise. 13586 * ssa.c: Likewise. 13587 135882002-09-15 Kazu Hirata <kazu@cs.umass.edu> 13589 13590 * ChangeLog: Follow spelling conventions. 13591 * ChangeLog.0: Likewise. 13592 * ChangeLog.1: Likewise. 13593 * ChangeLog.2: Likewise. 13594 * ChangeLog.4: Likewise. 13595 * ChangeLog.6: Likewise. 13596 * config.gcc: Likewise. 13597 * dwarfout.c: Likewise. 13598 * reload1.c: Likewise. 13599 * simplify-rtx.c: Likewise. 13600 * unwind-sjlj.c: Likewise. 13601 * config/avr/avr.h: Likewise. 13602 * config/d30v/d30v.h: Likewise. 13603 * config/frv/frv.c: Likewise. 13604 * config/frv/frv.h: Likewise. 13605 * config/ip2k/ip2k.h: Likewise. 13606 * config/m88k/m88k-move.sh: Likewise. 13607 * config/stormy16/stormy16.c: Likewise. 13608 * config/stormy16/stormy16.h: Likewise. 13609 * doc/extend.texi: Likewise. 13610 * doc/interface.texi: Likewise. 13611 * doc/invoke.texi: Likewise. 13612 * doc/md.texi: Likewise. 13613 * doc/rtl.texi: Likewise. 13614 * doc/tm.texi: Likewise. 13615 * doc/trouble.texi: Likewise. 13616 * ginclude/float.h: Likewise. 13617 * treelang/treelang.texi: Likewise. 13618 136192002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 13620 13621 * i386-protos.h (i386_pe_dllexport_name_p, 13622 i386_pe_dllimport_name_p, i386_pe_unique_section, 13623 i386_pe_declare_function_type, i386_pe_record_external_function, 13624 i386_pe_record_exported_symbol, i386_pe_asm_file_end): Add 13625 prototype. 13626 * i386/t-cygwin (winnt.o): Depend on $(TM_P_H). 13627 * i386/t-interix (winnt.o): Likewise. 13628 13629 * v850-protos.h (v850_output_addr_const_extra): Prototype. 13630 136312002-09-15 Jason Thorpe <thorpej@wasabisystems.com> 13632 13633 * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Add 13634 MIPS ABI CPP macros. 13635 (TARGET_CPU_CPP_BUILTINS): Redefine. 13636 (SUBTARGET_EXTRA_SPECS): Remove subtarget_endian_default. 13637 (SUBTARGET_ENDIAN_DEFAULT_SPEC): Remove. 13638 136392002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 13640 13641 * ia64/aix.h (TARGET_OS_CPP_BUILTINS): Fix typo. 13642 136432002-09-15 Kazu Hirata <kazu@cs.umass.edu> 13644 13645 * ChangeLog: Follow spelling conventions. 13646 * ChangeLog.0: Likewise. 13647 * ChangeLog.1: Likewise. 13648 * ChangeLog.2: Likewise. 13649 * ChangeLog.3: Likewise. 13650 * ChangeLog.4: Likewise. 13651 * ChangeLog.5: Likewise. 13652 * ChangeLog.6: Likewise. 13653 * FSFChangeLog.10: Likewise. 13654 * FSFChangeLog.11: Likewise. 13655 * c-common.c: Likewise. 13656 * c-common.h: Likewise. 13657 * c-format.c: Likewise. 13658 * c-opts.c: Likewise. 13659 * cpplib.c: Likewise. 13660 * langhooks.h: Likewise. 13661 * real.c: Likewise. 13662 * reg-stack.c: Likewise. 13663 * toplev.c: Likewise. 13664 * config/arm/arm.c: Likewise. 13665 * config/arm/arm.md: Likewise. 13666 * config/arm/linux-gas.h: Likewise. 13667 * config/arm/netbsd.h: Likewise. 13668 * config/c4x/c4x.c: Likewise. 13669 * config/c4x/c4x.h: Likewise. 13670 * config/c4x/c4x.md: Likewise. 13671 * config/c4x/libgcc.S: Likewise. 13672 * config/fr30/fr30.md: Likewise. 13673 * config/frv/frv.md: Likewise. 13674 * config/ia64/ia64.md: Likewise. 13675 * config/mips/mips.h: Likewise. 13676 * config/mn10300/mn10300.c: Likewise. 13677 * config/stormy16/stormy16.c: Likewise. 13678 * config/v850/v850.md: Likewise. 13679 * doc/extend.texi: Likewise. 13680 * doc/invoke.texi: Likewise. 13681 * doc/md.texi: Likewise. 13682 136832002-09-15 Jason Thorpe <thorpej@wasabisystems.com> 13684 13685 * config/netbsd.h (LIB_SPEC): Include the appropriate pthread 13686 library if -pthread is specified. 13687 136882002-09-15 Jason Thorpe <thorpej@wasabisystems.com> 13689 13690 * config.gcc (*-*-netbsd*): Set thread_file to 'posix' 13691 for --enable-threads=yes and --enable-threads=posix. 13692 136932002-09-15 Kazu Hirata <kazu@cs.umass.edu> 13694 13695 * config/sparc/cypress.md: Replace Sparc with SPARC. 13696 * config/sparc/freebsd.h: Likewise. 13697 * config/sparc/gmon-sol2.c: Likewise. 13698 * config/sparc/hypersparc.md: Likewise. 13699 * config/sparc/lb1spc.asm: Likewise. 13700 * config/sparc/lb1spl.asm: Likewise. 13701 * config/sparc/linux.h: Likewise. 13702 * config/sparc/linux64.h: Likewise. 13703 * config/sparc/lynx.h: Likewise. 13704 * config/sparc/sol2.h: Likewise. 13705 * config/sparc/sparc-modes.def: Likewise. 13706 * config/sparc/sparc.c: Likewise. 13707 * config/sparc/sparc.h: Likewise. 13708 * config/sparc/sparc.md: Likewise. 13709 * config/sparc/sparclet.md: Likewise. 13710 * config/sparc/supersparc.md: Likewise. 13711 * config/sparc/sysv4.h: Likewise. 13712 * config/sparc/vxsim.h: Likewise. 13713 * config/sparc/vxsparc64.h: Likewise. 13714 137152002-09-14 Marek Michalkiewicz <marekm@amelek.gda.pl> 13716 13717 * config/avr/avr.c (output.h): Move after inclusion of tree.h. 13718 137192002-09-14 Kazu Hirata <kazu@cs.umass.edu> 13720 13721 * ChangeLog: Follow spelling conventions. 13722 * ChangeLog.0: Likewise. 13723 * ChangeLog.2: Likewise. 13724 * ChangeLog.3: Likewise. 13725 * ChangeLog.4: Likewise. 13726 * ChangeLog.5: Likewise. 13727 * ChangeLog.6: Likewise. 13728 * cppfiles.c: Likewise. 13729 * cppinit.c: Likewise. 13730 * cpplib.h: Likewise. 13731 * cse.c: Likewise. 13732 * debug.h: Likewise. 13733 * df.c: Likewise. 13734 * dominance.c: Likewise. 13735 * hashtable.c: Likewise. 13736 * hashtable.h: Likewise. 13737 * loop.c: Likewise. 13738 * config/arm/README-interworking: Likewise. 13739 * config/arm/arm.c: Likewise. 13740 * config/arm/arm.h: Likewise. 13741 * config/arm/arm.md: Likewise. 13742 * config/dsp16xx/dsp16xx.h: Likewise. 13743 * config/frv/frv.c: Likewise. 13744 * config/frv/frv.h: Likewise. 13745 * config/ip2k/ip2k.h: Likewise. 13746 * config/rs6000/rs6000.c: Likewise. 13747 * config/stormy16/stormy-abi: Likewise. 13748 * config/stormy16/stormy16.h: Likewise. 13749 * config/v850/v850.c: Likewise. 13750 137512002-09-14 Kazu Hirata <kazu@cs.umass.edu> 13752 13753 * loop.c: Fix a comment typo. 13754 137552002-09-14 Kazu Hirata <kazu@cs.umass.edu> 13756 13757 * config/fr30/fr30.h: Fix comment typos. 13758 * config/frv/frv.c: Likewise. 13759 * config/i386/xmmintrin.h: Likewise. 13760 * config/mips/mips.c: Likewise. 13761 * config/sh/sh.c: Likewise. 13762 137632002-09-14 Kazu Hirata <kazu@cs.umass.edu> 13764 13765 * haifa-sched.c: Follow spelling conventions. 13766 * regclass.c: Likewise. 13767 * regrename.c: Likewise. 13768 * config/fp-bit.c: Likewise. 13769 * config/frv/frv.h: Likewise. 13770 * config/m88k/m88k.c: Likewise. 13771 * config/mcore/mcore.c: Likewise. 13772 * config/rs6000/darwin.h: Likewise. 13773 * config/rs6000/gnu.h: Likewise. 13774 * config/rs6000/linux.h: Likewise. 13775 * config/rs6000/linux64.h: Likewise. 13776 * config/rs6000/rs6000.c: Likewise. 13777 * config/rs6000/rs6000.h: Likewise. 13778 * config/sh/sh.c: Likewise. 13779 * config/sparc/sparc.c: Likewise. 13780 * config/sparc/ultra1_2.md: Likewise. 13781 137822002-09-14 Stephane Carrez <stcarrez@nerim.fr> 13783 13784 * config/m68hc11/m68hc11.md ("movdi_internal"): Allow any offsetable 13785 memory operand when source is 0 (K constraint). 13786 ("movsi_internal"): Likewise. 13787 ("movdf_internal"): Likewise. 13788 ("movsf_internal"): Likewise. 13789 137902002-09-14 Alan Modra <amodra@bigpond.net.au> 13791 13792 * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Use 13793 targetm.binds_local_p to set SYMBOL_REF_FLAG. 13794 (rs6000_xcoff_encode_section_info): Likewise. 13795 * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise. 13796 137972002-09-10 Theodore A. Roth <troth@verinet.com> 13798 13799 * gcc/config/avr/avr.h: Set default options for C++ for avr. 13800 138012002-09-13 Richard Henderson <rth@redhat.com> 13802 13803 * Makefile.in (toplev.o): Depend on real.h. 13804 (print-rtl.o, varasm.o, ifcvt.o): Likewise. 13805 138062002-09-14 Alan Modra <amodra@bigpond.net.au> 13807 13808 * doc/tm.texi (DBX_OUTPUT_NFUN): Describe. 13809 * dbxout.c (dbxout_function_end): Use DBX_OUTPUT_NFUN. 13810 * config/rs6000/linux64.h (DBX_OUTPUT_NFUN): Define. 13811 138122002-09-13 Nathan Sidwell <nathan@codesourcery.com> 13813 13814 * ggc-common.c (ggc_mark_roots): Don't iterate NULL hash tables. 13815 138162002-09-13 Steve Ellcey <sje@cup.hp.com> 13817 13818 * config.gcc (ia64*-*-aix*, ia64*-*-elf*, ia64*-*-freebsd*, 13819 ia64*-*-linux*): Set extra_parts. 13820 * config/ia64/t-aix (EXTRA_PARTS): Remove. 13821 * config/ia64/t-ia64 (EXTRA_PARTS): Remove. 13822 138232002-09-13 Kazu Hirata <kazu@cs.umass.edu> 13824 13825 * config/h8300/fixunssfsi.c: Replace H8/S with H8S. 13826 * config/h8300/h8300.c: Likewise. 13827 * config/h8300/h8300.h: Likewise. 13828 * config/h8300/h8300.md: Likewise. 13829 * doc/invoke.texi: Likewise. 13830 138312002-09-13 Kazu Hirata <kazu@cs.umass.edu> 13832 13833 * config/h8300/h8300.c (h8300_init_once): Fix formatting. 13834 138352002-09-13 Richard Henderson <rth@redhat.com> 13836 13837 * config/alpha/alpha.md (attr type): Add callpal. 13838 (imb, trap, load_tp, set_tp): Use it. 13839 * config/alpha/ev4.md (ev4_callpal): New. 13840 * config/alpha/ev5.md (ev5_callpal): New. 13841 * config/alpha/ev6.md (ev6_ibr): Handle callpal. 13842 * config/alpha/alpha.c (alphaev4_insn_pipe): Handle TYPE_CALLPAL. 13843 (alphaev5_insn_pipe): Likewise. 13844 138452002-09-13 Andreas Jaeger <aj@suse.de> 13846 13847 * Makefile.in (print-rtl.o): Depend on CONFIG_H. 13848 138492002-09-13 Steve Ellcey <sje@cup.hp.com> 13850 13851 * config/ia64/t-hpux (LIBGCC1_TEST, STMP_FIXPROTO, 13852 LIB2ADDEH): New, set to NULL. 13853 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP): New. 13854 138552002-09-13 Steve Ellcey <sje@cup.hp.com> 13856 13857 * config/ia64/quadlib.c (_U_Qfcmp): Make extern. 13858 (_U_Qfcnvfxt_quad_to_sgl): Remove declaration. 13859 (_U_Qfeq, _U_Qfne, _U_Qfgt, _U_Qfge, U_Qflt, U_Qfle, _U_Qfcomp): 13860 Add declarations. 13861 (_U_Qfneg): Remove. 13862 138632002-09-13 Dhananjay Deshpande <dhananjayd@kpit.com> 13864 13865 * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Add support 13866 for H8/300, H8S aa:8 mode. 13867 (TINY_CONSTANT_ADDRESS_P): Add support for H8S aa:16 mode. 13868 * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust length 13869 for H8/300 aa:8 mode. 13870 138712002-09-13 Hartmut Penner <hpenner@de.ibm.com> 13872 13873 * config/s390/s390.md ("trap", "conditional_trap", "*trap"): New 13874 insns. 13875 138762002-09-12 Richard Henderson <rth@redhat.com> 13877 13878 * Makefile.in (HOST_PRINT): Use print-rtl1.o 13879 (print-rtl.o): Don't define GENERATOR_FILE. 13880 (print-rtl1.o): Rename from $(BUILD_PREFIX_1)print-rtl.o. 13881 * print-rtl.c (print_rtx): Include CONST_DOUBLE fp decimal output 13882 unless GENERATOR_FILE. 13883 138842002-09-12 Stan Shebs <shebs@apple.com> 13885 13886 * config/darwin.h (USER_LABEL_PREFIX): Define here... 13887 * config/i386/darwin.h: ... instead of here. 13888 13889 * target.h (struct gcc_target): New field 13890 terminate_dw2_eh_frame_info. 13891 * target-def.h (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define. 13892 (TARGET_INITIALIZER): Add it. 13893 * dwarf2out.c (output_call_frame_info): Use target hook. 13894 * dwarf2asm.c (dw2_asm_output_delta): Use macro 13895 ASM_OUTPUT_DWARF_DELTA if defined. 13896 * doc/tm.texi (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Document. 13897 (ASM_OUTPUT_DWARF_DELTA): Ditto. 13898 (ASM_OUTPUT_DWARF_OFFSET): Ditto. 13899 (ASM_OUTPUT_DWARF_PCREL): Ditto. 13900 * config.gcc (i[34567]86-*-darwin*): Define extra_parts. 13901 (powerpc-*-darwin*): Ditto. 13902 * crtstuff.c [OBJECT_FORMAT_MACHO]: Update the Mach-O bits 13903 to work correctly for Darwin. 13904 * config/darwin.h (OBJECT_FORMAT_MACHO): Define. 13905 (STARTFILE_SPEC): Add crtbegin.o. 13906 (ENDFILE_SPEC): Define. 13907 (EXTRA_SECTION_FUNCTIONS): Put gcc_except_tab in data segment. 13908 (ASM_PREFERRED_EH_DATA_FORMAT): Handle more cases. 13909 (ASM_OUTPUT_DWARF_DELTA): Define. 13910 (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define. 13911 * config/darwin.c (darwin_asm_output_dwarf_delta): New function. 13912 139132002-09-13 Alan Modra <amodra@bigpond.net.au> 13914 13915 * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Remove "if" 13916 nesting. Correct test for non-PowerPC64 ELF ABI_AIX. 13917 * config/rs6000/rs6000.md (load_toc_v4_PIC*): Disable when ABI_AIX. 13918 139192002-09-12 Zack Weinberg <zack@codesourcery.com> 13920 13921 * toplev.c: Move default definition of USER_LABEL_PREFIX... 13922 * defaults.h: ... here. 13923 139242002-09-12 Richard Henderson <rth@redhat.com> 13925 13926 * vax.c: Include tree.h earlier. 13927 139282002-09-12 Stan Shebs <shebs@apple.com> 13929 13930 * config/darwin.c (machopic_finish): Remove #if 0 chunks. 13931 (machopic_operand_p): Ditto. 13932 139332002-09-12 Kazu Hirata <kazu@cs.umass.edu> 13934 13935 * config/arm/arm.c (arm_compute_initial_elimination_offset): 13936 Fix a comment typo. 13937 139382002-09-12 Kazu Hirata <kazu@cs.umass.edu> 13939 13940 * toplev.c (do_abort): Fix a comment typo. 13941 139422002-09-12 Kazu Hirata <kazu@cs.umass.edu> 13943 13944 * cselib.c: Fix comment formatting. 13945 * gengtype.c: Likewise. 13946 139472002-09-12 Kazu Hirata <kazu@cs.umass.edu> 13948 13949 * config/h8300/h8300.md (udivmodqi4): Do not use an expander. 13950 (udivmodhi4): Likewise. 13951 139522002-09-12 Graham Stott <graham.stott@btinternet.com> 13953 Roger Sayle <roger@eyesopen.com> 13954 13955 * i386.c (any_fp_register_operand, fp_register_operand, 13956 register_and_not_any_fp_reg_operand, register_and_not_fp_reg_operand): 13957 New predicate functions. 13958 * i386-protos.h: Add their prototypes. 13959 * i386.h: Add them to PREDICATE_CODES. 13960 * i386.md ("*pushsf_rex64"+2, "*pushsf_rex64"+3, "*pushdf_integer"+1, 13961 "*pushdf_integer"+2, "*pushtf_integer"+1, "*pushtf_integer"+2, 13962 "*pushtf_integer"+3, "*pushtf_integer"+4, "*dummy_extendsfdf2"+1, 13963 "*dummy_extendsfdf2"+2, "*dummy_extendsfxf2"+1, 13964 "*dummy_extendsftf2"+1, "*dummy_extendsftf2"+2, 13965 "*dummy_extenddfxf2"+1, "*dummy_extenddftf2"+1, 13966 "*dummy_extenddftf2"+2, "*negsf2_if"+1, "*negsf2_if"+2, 13967 "*negdf2_if_rex64"+1, "*negdf2_if_rex64"+2, "*negxf2_if"+1, 13968 "*negxf2_if"+2, "*negtf2_if"+1, "*negtf2_if"+2, "*abssf2_if"+1, 13969 "*abssf2_if"+2, "*absdf2_if_rex64"+1, "*absdf2_if_rex64"+2, 13970 "*absxf2_if"+1, "*absxf2_if"+2, "*abstf2_if"+1, "*abstf2_if"+2): 13971 Use these new predicates to simplify and correct the use of 13972 FP_REG_P, ANY_FP_REG_P, FP_REGNO_P and any ANY_FP_REGNO_P. 13973 139742002-09-12 Jason Merrill <jason@redhat.com> 13975 13976 * diagnostic.c (output_add_identifier): New fn. 13977 * diagnostic.h: Declare it. 13978 13979 * calls.c (store_one_arg): Use size_in_bytes to determine the 13980 amount of space to push. 13981 139822002-09-12 Jakub Jelinek <jakub@redhat.com> 13983 13984 * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo. 13985 139862002-09-12 Ulrich Weigand <uweigand@de.ibm.com> 13987 13988 * config/s390/s390-modes.def (CCAPmode, CCANmode): New CC modes. 13989 * config/s390/s390.c (s390_match_ccmode_set): Support new CC modes. 13990 (s390_select_ccmode): Likewise. 13991 (s390_branch_condition_mask): Likewise. 13992 (optimization_options): Do not set flag_branch_on_count. 13993 (s390_split_branches): Handle doloop branches. 13994 (s390_chunkify_pool): Likewise. 13995 * config/s390/s390.md ("*adddi3_imm_cc", "*addsi3_imm_cc"): New insns. 13996 ("doloop_end"): New expander. 13997 ("doolop_si", "*doloop_si_long", "doloop_di", "*doloop_di_long", 13998 associated splitters): New. 13999 140002002-09-11 Hartmut Penner <hpenner@de.ibm.com> 14001 14002 * fold-const.c (make_range): Only narrow to signed range if 14003 the signed range is smaller than the unsigned range. 14004 140052002-09-12 Alan Modra <amodra@bigpond.net.au> 14006 14007 * emit-rtl.c (set_mem_size): New function. 14008 * expr.h (set_mem_size): Declare. 14009 * config/rs6000/rs6000.c (expand_block_move_mem): Exterminate. 14010 (expand_block_move): Instead, use adjust_address and 14011 replace_equiv_address to generate proper aliasing info. 14012 Move common code out of conditionals. Localize vars. 14013 140142002-09-11 Eric Botcazou <ebotcazou@libertysurf.fr> 14015 14016 * optabs.c (expand_binop): Minor cleanup. 14017 (expand_twoval_binop): Convert CONST_INTs like in expand_binop. 14018 140192002-09-11 Dan Nicolaescu <dann@ics.uci.edu> 14020 14021 * print-tree.c (print_node): Print the restrict qualifier. 14022 140232002-09-11 Janis Johnson <janis187@us.ibm.com> 14024 14025 * doc/install.texi: Fix typos. 14026 140272002-09-11 Zack Weinberg <zack@codesourcery.com> 14028 14029 * Makefile.in: Remove all references to s-under and underscore.c. 14030 * collect2.c, tlink.c: Change all uses of prepends_underscore 14031 to look directly at USER_LABEL_PREFIX. 14032 140332002-09-11 David Edelsohn <edelsohn@gnu.org> 14034 14035 * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Append 14036 alignment to csect. 14037 (rs6000_xcoff_unique_section): Only set section name for public 14038 data. 14039 (rs6000_xcoff_section_type_flags): Store log2 alignment in flags. 14040 * config/rs6000/xcoff.h (TARGET_ASM_SELECT_SECTION): Remove 14041 duplicate definition. 14042 140432002-09-10 John David Anglin <dave@hiauly1.hia.nrc.ca> 14044 14045 * pa.md (extzv): Check predicates before emitting extzv_32. 14046 (insv): Likewise. 14047 140482002-09-10 Ulrich Weigand <uweigand@de.ibm.com> 14049 14050 * config/s390/s390.h (MOVE_MAX): Define to correct value. 14051 (MAX_MOVE_MAX): Define. 14052 (MOVE_BY_PIECES_P): Define. 14053 (CLEAR_BY_PIECES_P): Define. 14054 140552002-09-10 Denis Chertykov <denisc@overta.ru> 14056 14057 * config/avr/avr.md (movstrhi): Use right operands for conversion. 14058 140592002-09-10 Richard Earnshaw <rearnsha@arm.com> 14060 14061 PR c/7873 14062 * arm.md (insv): Use reg_or_int_operand for operand[3]. 14063 140642002-09-10 David Edelsohn <edelsohn@gnu.org> 14065 14066 * rs6000.c (rs6000_assemble_visibility): Protect declaration 14067 inside macro. Correct function definition typo. 14068 (rs6000_xcoff_section_type_flags): New function. 14069 (TARGET_SECTION_TYPE_FLAGS): Remove definition. 14070 (rs6000_elf_section_type_flags): Call default_section_type_flags_1 14071 with appropriate PIC test. 14072 (rs6000_xcoff_select_section): Use decl_readonly_section_1 to 14073 determine readonly. 14074 (rs6000_binds_local_p): Combine PIC flags. 14075 * sysv4.h (TARGET_SECTION_TYPE_FLAGS): Define. 14076 * xcoff.h (TARGET_SECTION_TYPE_FLAGS): Define. 14077 140782002-09-09 Per Bothner <per@bothner.com> 14079 14080 * print-tree.c (print_node): In a STRING_CST, escape non-ascii 14081 characters, and only print TREE_STRING_LENGTH chars. 14082 140832002-09-09 Steve Ellcey <sje@cup.hp.com> 14084 14085 * config/ia64/hpux.h (TARGET_HPUX_LD): New, define true. 14086 (ASM_FILE_END) New. 14087 * config/ia64/ia64.h (TARGET_HPUX_LD): New, define false. 14088 * config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New. 14089 * config/ia64/ia64.c (ia64_asm_output_external): Create list 14090 of external functions if TARGET_HPUX_LD is true. 14091 (ia64_hpux_add_extern_decl): New, routine to put names on 14092 list of external functions. 14093 (ia64_hpux_asm_file_end): Put out declarations for external 14094 functions if and only if they are used. 14095 140962002-09-09 John David Anglin <dave@hiauly1.hia.nrc.ca> 14097 14098 * pa.md (exception_receiver, builtin_setjmp_receiver): Add blockage 14099 on TARGET_64BIT before pic register restore. 14100 141012002-09-09 David Edelsohn <edelsohn@gnu.org> 14102 14103 * doc/tm.texi (TARGET_HAVE_SRODATA_SECTION): New description. 14104 (TARGET_HAVE_TLS): New description. 14105 141062002-09-09 Janis Johnson <janis187@us.ibm.com> 14107 14108 * doc/extend.texi (Statement Exprs): Fix broken link. 14109 141102002-09-09 Denis Chertykov <denisc@overta.ru> 14111 14112 * config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for 14113 right conversion of operands[1]. 14114 141152002-09-09 Ulrich Weigand <uweigand@de.ibm.com> 14116 14117 * config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as 14118 commutative. Use "nonimmediate_operand" instead of "register_operand" 14119 as predicate for operand 0. Move to after the "*tmXX_mem" insns. 14120 14121 ("*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem"): Do not mark 14122 as commutative. 14123 14124 ("*anddi3_ni", "*andsi3_ni", "*iordi3_ni", "*iorsi3_ni"): Do not 14125 mark as commutative. Use "nonimmediate_operand" instead of 14126 "register_operand" as predicate for operand 1. 14127 14128 ("movstrictsi"): Fix typo in insn name. 14129 141302002-09-09 Jan Hubicka <jh@suse.cz> 14131 14132 * i386.c (index_register_operand): New. 14133 * i386.h (predicate_codes): Add new predicate. 14134 * i386.md (lea_general_*): Use index_register_operand 14135 (ashift to lea splitter): Do not produce invalid leas 14136 (ashift to mov+ashift split): New. 14137 141382002-09-09 Nick Clifton <nickc@redhat.com> 14139 14140 * config/fr30/fr30.c (output.h): Move after inclusion of tree.h. 14141 Fix folding marks. 14142 141432002-09-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com> 14144 J"orn Rennecke <joern.rennecke@superh.com> 14145 14146 * sh/sh.h (OVERRIDE_OPTIONS): align_functions is in bytes, not bits. 14147 141482002-09-09 Alan Modra <amodra@bigpond.net.au> 14149 14150 * config/rs6000/rs6000.c (rs6000_binds_local_p): Return bool. 14151 (function_ok_for_sibcall): Use binds_local_p. Respect longcall 14152 attributes. 14153 141542002-09-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 14155 14156 * fr30.c (fr30_print_operand): Fix bug in output of CONST_DOUBLE. 14157 141582002-09-08 Richard Henderson <rth@redhat.com> 14159 14160 * dwarf2.h (DW_OP_call_ref): Rename from DW_OP_calli. 14161 (DW_OP_GNU_push_tls_address): New. 14162 (DW_OP_lo_user): Fix. 14163 * dwarf2out.c (INTERNAL_DW_OP_tls_addr): New. 14164 (dwarf_stack_op_name): Handle it, plus other dwarf3 opcodes. 14165 (size_of_loc_descr): Likewise. 14166 (output_loc_operands): Handle INTERNAL_DW_OP_tls_addr. 14167 (add_AT_location_description): Take a dw_loc_descr_ref not an rtx. 14168 (loc_descriptor_from_tree): Handle TLS variables. 14169 (rtl_for_decl_location): Do avoid_constant_pool_reference here ... 14170 (add_location_or_const_value_attribute): ... not here. Defer 14171 to loc_descriptor_from_tree for TLS variables. 14172 14173 * config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): New. 14174 * config/i386/i386.c (i386_output_dwarf_dtprel): New. 14175 * config/i386/i386-protos.h: Update. 14176 141772002-09-08 Roger Sayle <roger@eyesopen.com> 14178 14179 PR optimization/6405 14180 * unroll.c (loop_iterations): last_loop_insn should be the previous 14181 non-note instruction before loop->end. 14182 * loop.c (strength_reduce): The conditional jump is the last 14183 non-note instruction before loop->end (as above). 14184 141852002-09-08 Roger Sayle <roger@eyesopen.com> 14186 14187 * combine.c (try_combine): Handle the case that undobuf.other_insn 14188 has been turned into a return or unconditional jump, by inserting 14189 a BARRIER if necessary. 14190 (simplify_set): Test if a condition code setter has a constant 14191 comparison at compile time, if so convert this insn to a no-op move 14192 and update/simplify the condition code user (undobuf.other_insn). 14193 141942002-09-08 Krister Walfridsson <cato@df.lth.se> 14195 14196 * config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Redefine. 14197 (CLEAR_INSN_CACHE): Define. 14198 141992002-09-08 Kazu Hirata <kazu@cs.umass.edu> 14200 14201 * basic-block.h: Fix comment formatting. 14202 * c-common.c: Likewise. 14203 * c-common.h: Likewise. 14204 * c-lex.c: Likewise. 14205 * c-pretty-print.c: Likewise. 14206 * cfglayout.c: Likewise. 14207 * cfgloop.c: Likewise. 14208 * defaults.h: Likewise. 14209 * et-forest.c: Likewise. 14210 * explow.c: Likewise. 14211 * function.h: Likewise. 14212 * gcov.c: Likewise. 14213 * genattrtab.c: Likewise. 14214 * gengtype.c: Likewise. 14215 * ifcvt.c: Likewise. 14216 * libgcc2.c: Likewise. 14217 * loop.c: Likewise. 14218 * profile.c: Likewise. 14219 * ra-build.c: Likewise. 14220 * real.c: Likewise. 14221 * rtl.h: Likewise. 14222 * tracer.c: Likewise. 14223 * tree-inline.c: Likewise. 14224 * varasm.c: Likewise. 14225 142262002-09-08 Jan Hubicka <jh@suse.cz> 14227 14228 * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix array_ref 14229 handling. 14230 14231 * loop.c (loop_givs_reduce): Emit addition after. 14232 142332002-09-08 Alan Modra <amodra@bigpond.net.au> 14234 14235 * varasm.c (default_assemble_visibility): Rename from 14236 assemble_visibility. 14237 * output.h: Here too. 14238 * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): And here. 14239 * config/rs6000/rs6000.c (rs6000_assemble_visibility): And here. 14240 142412002-09-08 Alan Modra <amodra@bigpond.net.au> 14242 14243 * reload.c (find_reloads <p constraint>): Pass operand_mode to 14244 find_reloads_address. 14245 142462002-09-08 Kazu Hirata <kazu@cs.umass.edu> 14247 14248 * config/h8300/h8300.md (udivmodqi4): Enable on H8/300. 14249 (anonymous pattern): Likewise. 14250 142512002-09-07 Scott Snyder <snyder@fnal.gov> 14252 14253 PR target/7374 14254 * config/alpha/alpha.md (abstf2): Fix typo: 'neg' for 'abs'. 14255 142562002-09-07 Roger Sayle <roger@eyesopen.com> 14257 14258 * basic-block.h (struct loop): Remove unused cont_dominator field. 14259 142602002-09-07 Igor Shevlyakov <igor@microunity.com> 14261 14262 * varasm.c (decode_rtx_const): Don't check undefined field for 14263 CONST_VECTOR. 14264 142652002-09-07 Glen Nakamura <glen@imodulo.com> 14266 14267 PR opt/7814 14268 * sched-deps.c (sched_analyze_insn): Make sure to add insn 14269 to reg_last->sets after flushing the dependency lists to guarantee 14270 that subsequent clobbers will be dependent on it. 14271 142722002-09-07 Igor Shevlyakov <igor@microunity.com> 14273 14274 * combine.c (simplify_shift_const): Calculate rotate count 14275 correctly for vector operands. 14276 142772002-09-07 Ansgar Esztermann <ansgar@thphy.uni-duesseldorf.de> 14278 14279 * c-typeck.c (c_tree_expr_nonnegative_p): New function. 14280 (build_binary_op): Call c_tree_expr_nonnegative_p rather than 14281 tree_expr_nonnegative_p. 14282 (build_conditional_expr): Likewise. 14283 * c-tree.h (c_tree_expr_nonnegative_p): Declare. 14284 142852002-09-07 Richard Henderson <rth@redhat.com> 14286 14287 * builtins.def (inf, inff, infl): Mark const. 14288 (huge_val, huge_valf, huge_vall): Likewise. 14289 (BUILT_IN_GETEXP, BUILT_IN_GETMAN): Remove. 14290 14291 * real.c (ereal_inf): Clear E before use. 14292 142932002-09-07 Kazu Hirata <kazu@cs.umass.edu> 14294 14295 * config/h8300/h8300.md (udivmodqi4): Split the pattern into 14296 an expander and an anonymous pattern. Zero out the upper half 14297 of the dividend in the expander. 14298 (udivmodqi4): Likewise. 14299 143002002-09-07 Kazu Hirata <kazu@cs.umass.edu> 14301 14302 * config/h8300/h8300.c: Fix formatting. 14303 * config/h8300/h8300.h: Likewise. 14304 * config/h8300/h8300.md: Likewise. 14305 143062002-09-07 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 14307 14308 * cfgcleanup.c (try_crossjump_to_edge): Fix updating of liveness 14309 information. 14310 143112002-09-07 Graham Stott <graham.stott@btinternet.com> 14312 14313 * rtlanal.c (dead_or_set_regno_p): Fix typo. 14314 143152002-09-07 Alan Modra <amodra@bigpond.net.au> 14316 14317 * config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define. 14318 14319 * doc/tm.texi (TARGET_ASM_ASSEMBLE_VISIBILITY): Describe. 14320 * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Define. 14321 (TARGET_ASM_OUT): Add the above here. 14322 * target.h (struct gcc_target): Add "visibility" field. 14323 * varasm.c (maybe_assemble_visibility): Call targetm visibility func. 14324 * config/rs6000/rs6000.c (rs6000_assemble_visibility): New function. 14325 (TARGET_ASM_ASSEMBLE_VISIBILITY): Define. 14326 (rs6000_legitimize_reload_address, first_reg_to_save): Formatting. 14327 143282002-09-06 Ziemowit Laski <zlaski@apple.com> 14329 14330 * c-lang.c (objc_is_id): New stub. 14331 * c-tree.h (objc_is_id): New forward declaration. 14332 * c-typeck.c (build_c_cast): Do not strip protocol 14333 qualifiers from 'id' type. 14334 * objc/objc-act.c (objc_comptypes): Correct handling 14335 of protocol qualifiers. 14336 (objc_is_id): New. 14337 143382002-09-06 Jeffrey A Law (law@redhat.com) 14339 14340 * pentium.md (pentium-firstvboth): Fix typo. 14341 143422002-09-06 Dhananjay Deshpande <dhananjayd@kpit.com> 14343 14344 * h8300.c (enum shift_alg): Move to earlier in h8300.c. 14345 (enum shift_type, enum h8_cpu): Likewise. 14346 (INL, ROT, LOP, SPC macros): Likewise. 14347 (shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise. Lose 14348 const designator. 14349 (h8300_init_once): Update shift_alg_{qi,hi,si} to use more 14350 space efficient algorithms when optimize for codesize. 14351 143522002-09-06 Nicola Pero <n.pero@mi.flashnet.it> 14353 14354 Fix PR/1727 and long-standing failing testcase 14355 objc/formal-protocol-6.m. 14356 * objc-act.c (build_protocol_expr): If compiling for the GNU 14357 runtime, create a list of Protocol statically allocated instances 14358 if it doesn't exist, then add the Protocol object to this same 14359 list. 14360 (get_objc_string_decl): Fixed typo/bug - TREE_VALUE had been used 14361 instead of TREE_CHAIN. 14362 143632002-09-06 Nicola Pero <n.pero@mi.flashnet.it> 14364 14365 * objc/objc-act.c (dump_interface): Enlarged the char * buffer to 14366 10k. Fixed category dumping - print out category names with the 14367 proper syntax. Print '@end\n' and not '\n@end' at the end of the 14368 interface. 14369 (finish_objc): Fixed the -gen-decls option. It was printing out 14370 only the last class. Dump an interface declaration of all classes 14371 being compiled instead. 14372 143732002-09-06 Jason Thorpe <thorpej@wasabisystems.com> 14374 14375 * config/arm/arm-protos.h (arm_gen_return_addr_mask): New 14376 prototype. 14377 * config/arm/arm.c (arm_gen_return_addr_mask): New function. 14378 * config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask 14379 if not APCS26 and not Thumb or ARMv4-or-higher. Use gen_int_mode 14380 rather than GEN_INT. 14381 * config/arm/arm.md (UNSPEC_CHECK_ARCH): Define. 14382 (return_addr_mask, *check_arch2): New. 14383 143842002-09-06 Ulrich Weigand <uweigand@de.ibm.com> 14385 14386 * config/s390/s390.md ("*adddi3_cc", "*adddi3_cconly", 14387 "*adddi3_cconly2", "*adddi3_64", "*adddi3_31", "adddi3", 14388 "*addsi3_carry1_cc", "*addsi3_carry1_cconly", 14389 "*addsi3_carry2_cc", "*addsi3_carry2_cconly", 14390 "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2", "addsi3", 14391 "adddf3", "*adddf3", "*adddf3_ibm", 14392 "addsf3", "*addsf3", "*addsf3_ibm", 14393 "muldi3", "mulsi3", "mulsidi3", 14394 "muldf3", "*muldf3", "*muldf3_ibm", 14395 "mulsf3", "*mulsf3", "*mulsf3_ibm", 14396 "*anddi3_cc", "*anddi3_cconly", "anddi3", 14397 "*andsi3_cc", "*andsi3_cconly", "andsi3", 14398 "*iordi3_cc", "*iordi3_cconly", "iordi3", 14399 "*iorsi3_cc", "*iorsi3_cconly", "iorsi3", 14400 "*xordi3_cc", "*xordi3_cconly", "xordi3", 14401 "*xorsi3_cc", "*xorsi3_cconly", "xorsi3"): Use "nonimmediate_operand" 14402 instead of "register_operand" as predicate for "%0" operand. 14403 144042002-09-06 Jakub Jelinek <jakub@redhat.com> 14405 14406 * configure.in (HAVE_AS_OFFSETABLE_LO10): Use -xarch=v9 14407 unconditionally when gcc_cv_as_flags64 checks are gone. 14408 * configure: Rebuilt. 14409 144102002-09-06 Alan Modra <amodra@bigpond.net.au> 14411 14412 * config/rs6000/rs6000.md (extzvsi_internal2): Revert most of 14413 2002-07-26 change. Comment. 14414 144152002-09-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 14416 14417 * frv.c (frv_unique_section, frv_select_section, 14418 frv_select_rtx_section): Delete. 14419 (frv_in_small_data_p): New. 14420 (TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_SECTION, 14421 TARGET_ASM_SELECT_RTX_SECTION): Delete. 14422 (TARGET_IN_SMALL_DATA_P): Define. 14423 144242002-09-05 Dale Johannesen <dalej@apple.com> 14425 14426 * reload1.c (reload): Retain only those memory clobbers 14427 added for variable-array handling. 14428 144292002-09-05 Jason Thorpe <thorpej@wasabisystems.com> 14430 14431 * config/arm/arm.c (arm_return_in_memory): Implement ATPCS 14432 return-in-memory rules. 14433 * config/arm/arm.h (ARM_FLAG_ATPCS, TARGET_ATPCS): Define. 14434 144352002-09-05 David Edelsohn <edelsohn@gnu.org> 14436 14437 * config/rs6000/xcoff.h (HOT_TEXT_SECTION_NAME): Delete. 14438 (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Delete. 14439 144402002-09-05 Jason Thorpe <thorpej@wasabisystems.com> 14441 14442 * real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is 14443 not a compile-time constant for the non-IBM case. 14444 * config/arm/arm-protos.h (arm_float_words_big_endian): New 14445 prototype. 14446 * config/arm/arm.c (arm_float_words_big_endian): New function. 14447 * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__ 14448 if TARGET_VFP and not TARGET_HARD_FLOAT. 14449 (ARM_FLAG_VFP, TARGET_VFP): Define. 14450 (FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian. 14451 144522002-09-05 David Edelsohn <edelsohn@gnu.org> 14453 14454 * doc/install.texi: Correct text of s390-*-linux* and s390x-*-linux* 14455 URLs. Fix AIX wording. 14456 144572002-09-05 Stan Shebs <shebs@apple.com> 14458 14459 * config/rs6000/rs6000.c (rs6000_override_options): Make -fpic and 14460 -fPIC equivalent on Darwin. 14461 144622002-09-05 J"orn Rennecke <joern.rennecke@superh.com> 14463 14464 * sh.c (sh_expand_builtin): Return early if encountering an 14465 error_mark for a type. 14466 144672002-09-05 Ulrich Weigand <uweigand@de.ibm.com> 14468 14469 * config/s390/s390.c (s390_expand_plus_operand): Do not require 14470 double-word scratch register. 14471 config/s390/s390.md ("reload_indi", "reload_insi"): Adapt. 14472 14473 ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem", 14474 "*cli"): Replace s_operand by memory_operand. 14475 ("cmpstrdi", "cmpstrsi"): Replace s_operand by general_operand. 14476 144772002-09-05 Kazu Hirata <kazu@cs.umass.edu> 14478 14479 * config/h8300/h8300.c (asm_file_start): Add a missing 14480 semicolon. 14481 144822002-09-04 Krister Walfridsson <cato@df.lth.se> 14483 14484 * config/i386/i386.h (GOT_SYMBOL_NAME): Define. 14485 * config/i386/i386.c (output_set_got): Use GOT_SYMBOL_NAME. 14486 (ix86_output_addr_diff_elt) Likewise. 14487 (x86_output_mi_thunk) Likewise. 14488 * config/i386/netbsd.h (GOT_SYMBOL_NAME): Redefine. 14489 144902002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 14491 14492 * frv.c (frv_encode_section_info): Fix error in last change. 14493 144942002-09-04 David Edelsohn <edelsohn@gnu.org> 14495 14496 * config/rs6000/rs6000.c (rs6000_flag_pic): New variable. 14497 (rs6000_elf_encode_section_info): ATTRIBUTE_UNUSED. 14498 (TARGET_BINDS_LOCAL_P): Define. 14499 (rs6000_override_options): Save original flag_pic value. 14500 (rs6000_elf_select_section): Call default_elf_select_section_1. 14501 (rs6000_elf_unique_section): Call default_unique_section_1. 14502 (rs6000_elf_in_small_data_p): New function. 14503 (rs6000_xcoff_asm_named_section): Determine storage mapping class. 14504 (rs6000_xcoff_select_section): Update based on defaults. 14505 (rs6000_xcoff_unique_section): Set to basic name if not common. 14506 (rs6000_binds_local_p): New function. 14507 * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set 14508 targetm.have_srodata_section if SDATA_EABI. 14509 (TARGET_IN_SMALL_DATA_P): Define. 14510 145112002-09-04 Dale Johannesen <dalej@apple.com> 14512 14513 * varasm.c (struct rtx_const, decode_rtx_const): 14514 Make veclo and vechi fields not share storage. 14515 145162002-09-05 J"orn Rennecke <joern.rennecke@superh.com> 14517 14518 * loop.c (scan_loop): Don't mark separate insns out of a libcall 14519 for moving. 14520 (move_movables): Abort if we see the first insn of a libcall. 14521 145222002-09-04 Richard Henderson <rth@redhat.com> 14523 14524 * builtin-types.def (BT_FN_FLOAT): New. 14525 (BT_FN_DOUBLE, BT_FN_LONG_DOUBLE): New. 14526 * builtins.def (BUILT_IN_INF, BUILT_IN_INFF, BUILT_IN_INFL, 14527 BUILT_IN_HUGE_VAL, BUILT_IN_HUGE_VALF, BUILT_IN_HUGE_VALL): New. 14528 * builtins.c (fold_builtin_inf): New. 14529 (fold_builtin): Call it. 14530 * real.c (ereal_inf): New. 14531 * real.h: Declare it. 14532 * doc/extend.texi: Document new builtins. 14533 145342002-09-04 Richard Henderson <rth@redhat.com> 14535 14536 * cse.c (cse_insn): Avoid subreg games if the equivalence 14537 is already in the proper mode. 14538 145392002-09-04 Eric Botcazou <ebotcazou@multimania.com> 14540 14541 PR c/7102 14542 * optabs.c (expand_binop): Convert CONST_INTs in all cases. 14543 145442002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca> 14545 14546 * pa.md (setccfp0, setccfp1): New patterns. 14547 145482002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 14549 14550 * frv-protos.h (frv_init_builtins, frv_expand_builtin, 14551 frv_select_section, frv_select_rtx_section, 14552 frv_encode_section_info, frv_unique_section): Delete. 14553 * frv.c: Update for target hooks. 14554 * frv.h (STRIP_NAME_ENCODING, SLOW_ZERO_EXTEND, SELECT_SECTION, 14555 SELECT_RTX_SECTION, ENCODE_SECTION_INFO, UNIQUE_SECTION, 14556 EASY_DIV_EXPR, MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Delete. 14557 145582002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 14559 14560 * ip2k-protos.h (function_prologue, function_epilogue, 14561 encode_section_info): Update to match target hook specification. 14562 * ip2k.c: Wrap `MDR' code in IP2K_MD_REORG_PASS. 14563 (function_prologue, function_epilogue, encode_section_info): 14564 Update to match target hook specification. 14565 * ip2k.h (SELECT_SECTION, SELECT_RTX_SECTION, ASM_OPEN_PAREN, 14566 ASM_CLOSE_PAREN, EASY_DIV_EXPR): Delete. 14567 (NOTICE_UPDATE_CC): Cast to void. 14568 * ip2k.md: Add defaults in switch statements. 14569 145702002-09-04 Janis Johnson <janis187@us.ibm.com> 14571 14572 * doc/trouble.texi (Interoperation): Update information about C++ ABI 14573 issues. 14574 145752002-09-04 Jason Thorpe <thorpej@wasabisystems.com> 14576 14577 * config/sparc/t-netbsd64: Disable multilib for now. 14578 145792002-09-04 David Edelsohn <edelsohn@gnu.org> 14580 14581 * target-def.h (TARGET_HAVE_SRODATA_SECTION): New macro. 14582 * target.h (gcc_target): Add have_srodata_section member. 14583 * varasm.c (section_category): Add SECCAT_SRODATA. 14584 (categorize_decl_for_section): Return SECCAT_SRODATA for sdata if 14585 READONLY_SDATA_SECTION defined. 14586 (decl_readonly_section_1): True for SECCAT_SRODATA also. 14587 (default_elf_select_section_1): Map SECCAT_SRODATA to .sdata2. 14588 (default_unique_section_1): Likewise. 14589 145902002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca> 14591 14592 * expr.c (emit_group_load): Revise to allow splitting TCmode source 14593 into DImode pieces. 14594 14595 * pa-64.h (LONG_DOUBLE_TYPE_SIZE): Define to 128. 14596 * pa64-regs.h (CLASS_CANNOT_CHANGE_MODE_P): Inhibit changes from SImode 14597 for floating-point register class. 14598 * pa.c (function_arg): Fix handling of modes wider than one word for 14599 TARGET_64BIT. 14600 146012002-09-04 J"orn Rennecke <joern.rennecke@superh.com> 14602 14603 * combine.c (make_compound_operation): Don't generate zero / sign 14604 extensions in floating point modes. 14605 146062002-09-04 Janis Johnson <janis187@us.ibm.com> 14607 14608 * doc/c-tree.texi: Fix overfull hboxes. 14609 * doc/cppopts.texi: Ditto. 14610 * doc/extend.texi: Ditto. 14611 * doc/gty.texi: Ditto. 14612 * doc/invoke.texi: Ditto. 14613 * doc/makefile.texi: Ditto. 14614 * doc/rtl.texi: Ditto. 14615 * doc/standards.texi: Ditto. 14616 * doc/tm.texi: Ditto. 14617 146182002-09-04 Richard Henderson <rth@redhat.com> 14619 14620 * c-common.c (builtin_define_with_hex_fp_value): New. 14621 (builtin_define_float_constants): Use it. Fix H_FLOAT mant_dig. 14622 146232002-09-04 Janis Johnson <janis187@us.ibm.com> 14624 14625 * doc/invoke.texi (-fshort-wchar): Move to Code Generation Options. 14626 (-fpcc-struct-return, -freg-struct-return, -fshort-enums, 14627 -fshort-double, -fshort-wchar, -fpack-struct, -fleading-underscore): 14628 Warn that these options can break ABI compatibility. 14629 146302002-09-04 Richard Henderson <rth@redhat.com> 14631 14632 * real.c (ereal_to_decimal): Add digits parameter. 14633 * real.h (REAL_VALUE_TO_DECIMAL): Remove format; add digits parameter. 14634 * c-pretty-print.c (pp_c_real_literal): Update call. 14635 * print-rtl.c (print_rtx): Likewise. 14636 * print-tree.c (print_node_brief, print_node): Likewise. 14637 * sched-vis.c (print_value): Likewise. 14638 * config/arc/arc.c (arc_print_operand): Likewise. 14639 * config/c4x/c4x.c (c4x_print_operand): Likewise. 14640 * config/i370/i370.h (PRINT_OPERAND): Likewise. 14641 * config/i386/i386.c (print_operand): Likewise. 14642 * config/i960/i960.c (i960_print_operand): Likewise. 14643 * config/ip2k/ip2k.c (asm_output_float): Likewise. 14644 * config/m32r/m32r.c (m32r_print_operand): Likewise. 14645 * config/m68hc11/m68hc11.c (print_operand): Likewise. 14646 * config/m68k/hp320.h (PRINT_OPERAND, ASM_OUTPUT_FLOAT_OPERAND, 14647 ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise. 14648 * config/m68k/m68k.h (ASM_OUTPUT_FLOAT_OPERAND, 14649 ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise. 14650 * config/m68k/sun2o4.h (ASM_OUTPUT_FLOAT_OPERAND, 14651 ASM_OUTPUT_DOUBLE_OPERAND): Likewise. 14652 * config/m68k/sun3.h (ASM_OUTPUT_FLOAT_OPERAND, 14653 ASM_OUTPUT_DOUBLE_OPERAND): Likewise. 14654 * config/mips/mips.c (print_operand): Likewise. 14655 * config/ns32k/ns32k.c (print_operand): Likewise. 14656 * config/pdp11/pdp11.h (PRINT_OPERAND): Likewise. 14657 * config/vax/vax.h (PRINT_OPERAND): Likewise. 14658 * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Update docs. 14659 146602002-09-04 Bob Wilson <bob.wilson@acm.org> 14661 14662 * config/xtensa/elf.h (TARGET_SECTION_TYPE_FLAGS): Define to 14663 xtensa_multibss_section_type_flags. 14664 * config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Define. 14665 146662002-09-04 Richard Henderson <rth@redhat.com> 14667 14668 * doc/install-old.texi: Don't mention enquire. 14669 * doc/sourcebuild.texi: Update float.h description. 14670 146712002-09-04 J"orn Rennecke <joern.rennecke@superh.com> 14672 14673 * sh.md (mperm_w_little, mperm_w_big): Supply mode for zero_extract. 14674 146752002-09-03 David Edelsohn <edelsohn@gnu.org> 14676 14677 * varasm.c (default_section_type_flags): Append _1 to name with 14678 shlib parameter. Use original name to call new function with 14679 implicit flag_pic. 14680 (decl_readonly_section): Likewise. 14681 (default_elf_select_section): Likewise. 14682 (default_unique_section): Likewise. 14683 (default_bind_local_p): Likewise. 14684 (categorize_decl_for_section): Add shlib parameter to use in place 14685 of implicit flag_pic. 14686 * output.h: Declare new functions with _1 and shlib argument. 14687 146882002-09-03 Janis Johnson <janis187@us.ibm.com> 14689 14690 * doc/install.texi: Fix typos, formatting problems, and obvious 14691 overfull/underfull boxes. 14692 14693 * Makefile.in (TEXI_GCC_FILES): Add compat.texi. 14694 * doc/gcc.texi (Top): Add new chapter, Binary Compatibility, and 14695 include its file, compat.texi. 14696 * doc/compat.texi: New file with new chapter, Binary Compatibility. 14697 146982002-09-03 Neil Booth <neil@daikokuya.co.uk> 14699 14700 Debian BTS Bug #157416 14701 * cpphash.h (FIRST, LAST, CUR, RLIMIT): Fix definitions. 14702 * cpplib.c (destringize_and_run): Kludge around getting 14703 tokens from in-progress macros. 14704 (_cpp_do__Pragma): Simplify. 14705 147062002-09-03 Steve Ellcey <sje@cup.hp.com> 14707 14708 * config/ia64/ia64.h (EXTRA_SPECS): Remove cpp_cpu. 14709 (CPP_CPU_SPEC): Remove. 14710 (TARGET_CPU_CPP_BUILTINS): New. 14711 * config/ia64/hpux.h (CPP_PREDEFINES): Remove. 14712 (CPP_SPEC): Remove. 14713 (TARGET_OS_CPP_BUILTINS): New. 14714 * config/ia64/linux.h (CPP_PREDEFINES): Remove. 14715 (TARGET_OS_CPP_BUILTINS): New. 14716 * config/ia64/aix.h (CPP_SPEC): Move some stuff to 14717 TARGET_OS_CPP_BUILTINS. 14718 (CPP_PREDEFINES): Remove. 14719 (CPLUSPLUS_CPP_SPEC): Remove. 14720 (TARGET_OS_CPP_BUILTINS): New. 14721 147222002-09-03 Richard Henderson <rth@redhat.com> 14723 14724 * Makefile.in (USER_H): Add ginclude/float.h. 14725 (FLOAT_H): Remove. 14726 (stmp-int-hdrs, install-mkheaders): Don't handle FLOAT_H. 14727 (mostlyclean): Don't remove float.h intermediate files. 14728 (distclean): Don't remove float.h. 14729 * config.gcc: Remove all float_format references. 14730 * configure.in (float_format, float_h_file): Remove. 14731 14732 * c-common.c: Include tree-inline.h. 14733 (builtin_define_with_int_value): New. 14734 (builtin_define_type_precision): Use it. 14735 (builtin_define_float_constants): New. 14736 (cb_register_builtins): Use it. Define __FLT_RADIX__ and 14737 __FLT_EVAL_METHOD__. 14738 * defaults.h (TARGET_FLT_EVAL_METHOD): New. 14739 * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): New. 14740 * config/m68k/m68k.h (TARGET_FLT_EVAL_METHOD): New. 14741 * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Mention moto 96-bit format. 14742 (TARGET_FLT_EVAL_METHOD): New. 14743 14744 * config/float-c4x.h, config/float-i128.h, config/float-i32.h, 14745 config/float-i386.h, config/float-i64.h, config/float-m68k.h, 14746 config/float-sh.h, config/float-sparc.h, config/float-vax.h: Remove. 14747 * ginclude/float.h: New. 14748 147492002-09-03 Stan Shebs <shebs@apple.com> 14750 14751 * config/darwin.h (WARN_FOUR_CHAR_CONSTANTS): Remove, never used. 14752 (DWARF2_DEBUGGING_INFO): Remove until assembler accepts Dwarf-2. 14753 (PREFERRED_DEBUGGING_TYPE): Ditto. 14754 (ASM_OUTPUT_IDENT): Remove empty definition. 14755 147562002-09-03 Steve Ellcey <sje@cup.hp.com> 14757 14758 * config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and 14759 cxx_target. 14760 * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Register pragma 14761 handling routine for builtin pragma. 14762 * config/ia64/ia64-protos.h (ia64_hpux_handle_builtin_pragma): 14763 Registered pragma handling routine. 14764 * ia64-c.c (ia64_hpux_handle_builtin_pragma): Ditto. 14765 (ia64_hpux_add_pragma_builtin) New subroutine used by above. 14766 If builtin pragma seen for math routine and C89 conformance is 14767 requested use different math function in order to set errno. 14768 * t-ia64 (ia64-c.o): Add new rule for new file. 14769 147702002-09-03 Ulrich Weigand <uweigand@de.ibm.com> 14771 14772 * config/s390/s390.md ("movti"): Add Q->Q alternative. 14773 ("*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64", 14774 "movqi", "*movdf_64", "*movdf_31", "*movsf"): Likewise. 14775 14776 ("*movti_ss", "*movdi_ss", "*movsi_ss", "*movdf_ss", 14777 "*movsf_ss"): Remove. 14778 147792002-09-03 John David Anglin <dave@hiauly1.hia.nrc.ca> 14780 14781 * pa32-regs.h (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): 14782 Delete macros. 14783 147842002-09-03 Arati Dikey <aratid@kpit.com> 14785 14786 * h8300.c (asm_file_start): Corrected optimization comment. 14787 147882002-09-03 Stan Shebs <shebs@apple.com> 14789 14790 * c-lang.c (recognize_objc_keyword): Remove, no longer used. 14791 * c-tree.h (recognize_objc_keyword): Remove decl. 14792 * c-typeck.c (comp_target_types): Update a comment. 14793 147942002-09-03 Ulrich Weigand <uweigand@de.ibm.com> 14795 14796 * config/s390/s390.c (s390_decompose_address): Remove STRICT parameter 14797 and register validity checks. 14798 (general_s_operand): Adapt to s390_decompose_address interface change. 14799 (q_constraint): Likewise. 14800 (s390_expand_plus_operand): Likewise. 14801 (legitimiate_address_p): Likewise. 14802 (legitimate_la_operand_p): Likewise. 14803 (legitimize_la_operand): Likewise. 14804 (print_operand_address): Likewise. 14805 (print_operand): Likewise. 14806 148072002-09-03 Nicola Pero <n.pero@mi.flashnet.it> 14808 14809 PR objc/5956: 14810 * objc/objc-act.c (build_typed_selector_reference): Fix typo which 14811 was causing the new selector never to match the existing ones 14812 (Patch by Alexander Malmberg <alexander@malmberg.org>). 14813 148142002-09-03 Graham Stott <graham.stott@btinternet.com> 14815 14816 * config/i386/i386.md ("femms"): Add "memory" attr "none". 14817 148182002-09-03 Graham Stott <graham.stott@btinternet.com> 14819 14820 * expr.c (expand_expr): Remove extraneous comment and code. 14821 148222002-08-31 Richard Henderson <rth@redhat.com> 14823 14824 * expr.c (block_move_libcall_safe_for_call_parm): Fix thinko. 14825 148262002-08-31 John David Anglin <dave@hiauly1.hia.nrc.ca> 14827 14828 * pa.c (pa_globalize_label): Add ATTRIBUTE_UNUSED to prototype. 14829 148302002-08-30 Richard Henderson <rth@redhat.com> 14831 14832 PR opt/7515 14833 * c-objc-common.c: Include target.h. 14834 (c_cannot_inline_tree_fn): Don't auto-inline functions that 14835 don't bind locally. Factor setting DECL_UNINLINABLE. 14836 * Makefile.in (c-objc-common.o): Update. 14837 148382002-08-30 Janis Johnson <janis187@us.ibm.com> 14839 14840 * doc/install.texi (Configuration, Building): Fix a typo and 14841 some formatting directives. 14842 148432002-08-30 Paul Koning <pkoning@equallogic.com> 14844 14845 * doc/c-tree.texi (RDIV_EXPR): Fix typo. 14846 * doc/rtl.texi (post_modify): Remove misplaced text, remove "not 14847 implemented" note. 14848 * doc/md.texi (IP2K): Move machine-specific constraints before MIPS 14849 for alphabetic order. 14850 * doc/tm.texi (TARGET_FLOAT_FORMAT): Update description for 14851 VAX_FLOAT_FORMAT. Remove reference to HOST_FLOAT_FORMAT. 14852 (VAX_HALFWORD_ORDER): Document. 14853 (LARGEST_EXPONENT_IS_NORMAL): Remove note about being only for 14854 IEEE float format. 14855 (TARGET_SCHED_ISSUE_RATE): Reword reference to MAX_DFA_ISSUE_RATE. 14856 (ASM_OUTPUT_LABEL_REF): Fix font. 14857 (CASE_VECTOR_SHORTEN_MODE): Ditto. 14858 148592002-08-30 Denis Chertykov <denisc@overta.ru> 14860 14861 * config/ip2k/ip2k.c (ip2k_set_compare): Remove all const_double 14862 stuff. 14863 (ip2k_gen_unsigned_comp_branch): Handle CONST_INT and 14864 CONST_DOUBLE constants. 14865 148662002-08-30 Jason Thorpe <thorpej@wasabisystems.com> 14867 14868 * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Move language- 14869 related defines to... 14870 (SUBTARGET_LANGUAGE_CPP_BUILTINS): ...here. 14871 * config/alpha/netbsd.h (SUBTARGET_LANGUAGE_CPP_BUILTINS): Redefine 14872 as a no-op. 14873 148742002-08-30 Krister Walfridsson <cato@df.lth.se> 14875 14876 * config/arm/arm.c (arm_asm_output_labelref): New function. 14877 * config/arm/arm.h (ASM_OUTPUT_LABELREF): Call arm_asm_output_labelref. 14878 * config/arm/arm-protos.h: Add prototype for arm_asm_output_labelref. 14879 148802002-08-29 Rodney Brown <rbrown64@csc.com.au> 14881 14882 * doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual 14883 memory exhausted" workarounds. 14884 148852002-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net> 14886 14887 * diagnostic.c (fancy_abort): Don't repeat "internal error". 14888 * toplev.c (crash_signal): Likewise. 14889 148902002-08-30 Nicola Pero <n.pero@mi.flashnet.it> 14891 14892 * doc/cpp.texi (__NEXT_RUNTIME__): Extended documentation. 14893 * doc/invoke.texi (-fnext-runtime, -Wno-protocol, -Wselector): 14894 Extended, updated documentation. 14895 (-Wundeclared-selector): Documented. 14896 148972002-08-29 Jason Thorpe <thorpej@wasabisystems.com> 14898 14899 * config/chorus.h: Consistently define *_DEBUGGING_INFO with 14900 the value 1. Do not undef before defining. 14901 * config/darwin.h: Likewise. 14902 * config/dbx.h: Likewise. 14903 * config/dbxcoff.h: Likewise. 14904 * config/dbxelf.h: Likewise. 14905 * config/elfos.h: Likewise. 14906 * config/interix.h: Likewise. 14907 * config/lynx-ng.h: Likewise. 14908 * config/lynx.h: Likewise. 14909 * config/netware.h: Likewise. 14910 * config/psos.h: Likewise. 14911 * config/svr3.h: Likewise. 14912 * config/alpha/alpha.h: Likewise. 14913 * config/alpha/elf.h: Likewise. 14914 * config/alpha/vms.h: Likewise. 14915 * config/arc/arc.h: Likewise. 14916 * config/arm/aout.h: Likewise. 14917 * config/arm/coff.h: Likewise. 14918 * config/c4x/c4x.h: Likewise. 14919 * config/h8300/h8300.h: Likewise. 14920 * config/i386/cygwin.h: Likewise. 14921 * config/i386/djgpp.h: Likewise. 14922 * config/i386/gas.h: Likewise. 14923 * config/i386/gstabs.h: Likewise. 14924 * config/i386/i386-coff.h: Likewise. 14925 * config/i386/i386-interix.h: Likewise. 14926 * config/i386/sco5.h: Likewise. 14927 * config/i386/svr3dbx.h: Likewise. 14928 * config/i386/sysv3.h: Likewise. 14929 * config/i386/win32.h: Likewise. 14930 * config/i386/x86-64.h: Likewise. 14931 * config/i960/i960.h: Likewise. 14932 * config/ia64/ia64.h: Likewise. 14933 * config/ip2k/ip2k.h: Likewise. 14934 * config/m32r/m32r.h: Likewise. 14935 * config/m68k/3b1.h: Likewise. 14936 * config/m68k/3b1g.h: Likewise. 14937 * config/m68k/ccur-GAS.h: Likewise. 14938 * config/m68k/coff.h: Likewise. 14939 * config/m68k/hp2bsd.h: Likewise. 14940 * config/m68k/hp310g.h: Likewise. 14941 * config/m68k/hp320g.h: Likewise. 14942 * config/m68k/hp3bsd.h: Likewise. 14943 * config/m68k/hp3bsd44.h: Likewise. 14944 * config/m68k/linux-aout.h: Likewise. 14945 * config/m68k/m68k-aout.h: Likewise. 14946 * config/m68k/mot3300.h: Likewise. 14947 * config/m68k/netbsd.h: Likewise. 14948 * config/m68k/openbsd.h: Likewise. 14949 * config/m68k/pbb.h: Likewise. 14950 * config/m68k/plexus.h: Likewise. 14951 * config/m68k/sun2.h: Likewise. 14952 * config/m68k/sun3.h: Likewise. 14953 * config/m68k/tower-as.h: Likewise. 14954 * config/m68k/vxm68k.h: Likewise. 14955 * config/m88k/aout-dbx.h: Likewise. 14956 * config/m88k/m88k-aout.h: Likewise. 14957 * config/mcore/mcore-elf.h: Likewise. 14958 * config/mcore/mcore-pe.h: Likewise. 14959 * config/mips/elf.h: Likewise. 14960 * config/mips/elf64.h: Likewise. 14961 * config/mips/iris5gas.h: Likewise. 14962 * config/mips/iris6.h: Likewise. 14963 * config/mips/mips.h: Likewise. 14964 * config/mips/sni-gas.h: Likewise. 14965 * config/mmix/mmix.h: Likewise. 14966 * config/ns32k/netbsd.h: Likewise. 14967 * config/pa/pa64-hpux.h: Likewise. 14968 * config/romp/romp.h: Likewise. 14969 * config/rs6000/sysv4.h: Likewise. 14970 * config/rs6000/xcoff.h: Likewise. 14971 * config/sh/coff.h: Likewise. 14972 * config/sh/elf.h: Likewise. 14973 * config/sparc/linux64.h: Likewise. 14974 * config/sparc/liteelf.h: Likewise. 14975 * config/sparc/netbsd.h: Likewise. 14976 * config/sparc/openbsd.h: Likewise. 14977 * config/sparc/pbd.h: Likewise. 14978 * config/sparc/sp64-elf.h: Likewise. 14979 * config/sparc/sp86x-elf.h: Likewise. 14980 * config/sparc/sparc.h: Likewise. 14981 * config/vax/vax.h: Likewise. 14982 * config/vax/vaxv.h: Likewise. 14983 149842002-08-29 "Dhananjay R. Deshpande" <dhananjayd@kpit.com> 14985 14986 * h8300.c (shift_alg_hi): Various tweaks to improve performance 14987 of HImode shifts. 14988 (get_shift_alg): Corresponding changes. 14989 149902002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca> 14991 14992 * som.h (ALWAYS_STRIP_DOTDOT): Define to 1. 14993 149942002-08-29 Richard Henderson <rth@redhat.com> 14995 14996 * expr.h (enum block_op_methods): New. 14997 (emit_block_move): Update prototype. 14998 * expr.c (block_move_libcall_safe_for_call_parm): New. 14999 (emit_block_move_via_loop): New. 15000 (emit_block_move): Use them. New argument METHOD. 15001 (emit_push_insn): Always respect the given alignment. 15002 (expand_assignment): Update call to emit_block_move. 15003 (store_expr, store_field, expand_expr): Likewise. 15004 * builtins.c (expand_builtin_apply): Likewise. 15005 (expand_builtin_memcpy, expand_builtin_va_copy): Likewise. 15006 * function.c (expand_function_end): Likewise. 15007 * config/sh/sh.c (sh_initialize_trampoline): Likewise. 15008 * config/sparc/sparc.c (sparc_va_arg): Likewise. 15009 * calls.c (expand_call, emit_library_call_value_1): Likewise. 15010 (save_fixed_argument_area): Use emit_block_move with 15011 BLOCK_OP_CALL_PARM instead of move_by_pieces. 15012 (restore_fixed_argument_area): Likewise. 15013 (store_one_arg): Fix alignment parameter to emit_push_insn. 15014 150152002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca> 15016 15017 * install.texi (hppa64-hp-hpux11*): Document installation procedure. 15018 150192002-08-29 Catherine Moore <clm@redhat.com> 15020 15021 * config/v850/v850.h (MULDI3_LIBCALL, UCMPDI2_LIBCALL, CMPDI2_LIBCALL, 15022 NEGDI2_LIBCALL, INIT_TARGET_OPTABS, MASK_STRICT_ALIGN): Define. 15023 (PREDICATE_CODES): Include new predicates. 15024 (RTX_COSTS): Handle UMOD and UDIV. Tune MULT for v850e. 15025 (TARGET_SWITCHES): Add strict-align. 15026 (TARGET_STRICT_ALIGN): New. 15027 (MASK_DEFAULT, STRICT_ALIGNMENT): Redefine. 15028 * config/v850/t-v850 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): 15029 Define. 15030 (LIB1ASMFUNCS): Add v850_negdi2, v850_cmpdi2, v850_ucmpdi2, 15031 v850_muldi3. 15032 * config/v850/lib1funcs.asm (L_callt_save_r2_r29, L_return_r2_r29, 15033 L_callt_save_r2_r31, L_return_r2_r31, 15034 L_save_all_interrupt): Change addi to add. 15035 (L_save_interrupt, L_return_interrupt): Rework. 15036 (__return_r31): Correct .size directive. 15037 (mulsi3, divsi3, udivsi3, umodsi3, modsi3): Tune for v850e. 15038 (v850_negdi2, v850_cmpdi2, v850_ucmpdi2, v850_muldi3): 15039 New routines. 15040 * config/v850/v850.c (expand_prologue): Call 15041 gen_callt_save_interrupt, gen_callt_restore_all_interrupt, 15042 gen_callt_return_interrupt and gen_callt_save_all_interrupt. 15043 (reg_or_int9_operand): New predicate. 15044 (reg_or_const_operand): New routine. 15045 * config/v850/v850.md (return_interrupt): Changed from 15046 restore_interrupt. 15047 (callt_save_all_interrupt): Changed from save_all_interrupt_v850e. 15048 (callt_save_interrupt): Change save sequence. 15049 (callt_return_interrupt): New. 15050 (save_interrupt): Don't use runtime function for LONG_CALLS 15051 and TARGET_PROLOG_FUNCTION. 15052 (save_all_interrupt): Likewise. 15053 (mulsi3): Use new predicate. 15054 (moviscc): Disallow some combination of constants. 15055 Fix define_split for sasf insns, so that it will not generate bad 15056 code if operand0 and operand5 are the same. 15057 * config/v850/v850-protos.h: Prototype new predicates. 15058 150592002-08-28 Gabriel Dos Reis <gdr@integrable-solutions.net> 15060 15061 * c-common.c (builtin_define_type_precision): New function. 15062 (cb_register_builtins): Use it. Define __WCHAR_UNSIGNED__ is 15063 wchar_t is unsigned in C++. 15064 * doc/cpp.texi (Common Predefined Macros): Document 15065 __WCHAR_UNSIGNED__, __CHAR_BIT__, __WCHAR_BIT__, __SHRT_BIT__, 15066 __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__, 15067 __DOUBLE_BIT__, __LONG_DOUBLE_BIT__. 15068 150692002-08-28 Sylvain Pion <pion@cs.nyu.edu> 15070 15071 * doc/invoke.texi (-Wreorder): Remove remaining pieces from the generic 15072 section. Mention that it is enabled by -Wall. 15073 (-Wall): Mention that there can be language-specific warnings as well. 15074 (-Wctor-dtor-privacy): Mention that it is enabled by default. 15075 (-Wnon-virtual-dtor): Mention that it is enabled by -Wall. 15076 150772002-08-28 J"orn Rennecke <joern.rennecke@superh.com> 15078 15079 * sh.c (calc_live_regs): Save FPSCR_REG in an interrupt handler 15080 if it is ever live. 15081 15082 * sh.c (sh_handle_interrupt_handler_attribute): Reject interrupt_handler 15083 attribute for SHCOMPACT. 15084 15085 * sh.h (OVERRIDE_OPTIONS): If align_function isn't set, set it 15086 appropriately. 15087 (FUNCTION_BOUNDARY): Specify only the minimum alignment required 15088 by the ABI. 15089 15090 * sh.h (SH5_WOULD_BE_PARTIAL_NREGS): Also handle TImode case. 15091 150922002-08-28 Jason Thorpe <thorpej@wasabisystems.com> 15093 15094 * config.gcc (mips*-*-netbsd*): Set target_cpu_default to 15095 "MASK_GAS|MASK_ABICALLS". 15096 * config/mips/netbsd.h (TARGET_ENDIAN_DEFAULT) 15097 (TARGET_DEFAULT): Remove. 15098 (MACHINE_TYPE): Undefine before defining. 15099 (DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Remove. 15100 151012002-08-27 Mark Mitchell <mark@codesourcery.com> 15102 15103 * c-common.c (warn_abi): New variable. 15104 * c-common.h (warn_abi): Likewise. 15105 * c-opts.c (COMMAND_LINE_OPTIONS): Add -Wabi. 15106 (c_common_decode_option): Handle it. 15107 * doc/invoke.texi: Document -Wabi. 15108 151092002-08-27 Nicola Pero <n.pero@mi.flashnet.it> 15110 15111 * c-common.c (warn_undeclared_selector): New variable. 15112 * c-common.h (warn_undeclared_selector): Idem. 15113 * c-opts.c (c_common_decode_option): Set warn_undeclared_selector 15114 to on when -Wundeclared-selector is found. 15115 (COMMAND_LINE_OPTIONS): Added -Wundeclared-selector. 15116 * objc/objc-act.c (build_selector_expr): If 15117 warn_undeclared_selector is set, check that the selector has 15118 already been defined, and emit a warning if not. 15119 151202002-08-27 Nick Clifton <nickc@redhat.com> 15121 Catherine Moore <clm@redhat.com> 15122 Jim Wilson <wilson@cygnus.com> 15123 15124 * config.gcc: Add v850e-*-* target. 15125 Add --with-cpu= support for v850. 15126 * config/v850/lib1funcs.asm: Add v850e callt functions. 15127 * config/v850/v850.h: Add support for v850e target. 15128 * config/v850/v850.c: Add functions to support v850e target. 15129 * config/v850/v850-protos.h: Add prototypes for new functions in v850.c. 15130 * config/v850/v850.md: Add patterns for v850e instructions. 15131 * doc/invoke.texi: Document new v850e command line switches. 15132 151332002-08-27 J"orn Rennecke <joern.rennecke@superh.com> 15134 Aldy Hernandez <aldyh at redhat dot com> 15135 15136 * doc/tm.texi: Applied numerous fixes to the automaton based 15137 scheduler descrition. 15138 151392002-08-27 Jan Hubicka <jh@suse.cz> 15140 15141 * i386.c (classify_argument): Handle variable sized objects. 15142 151432002-08-27 Jan Hubicka <jh@suse.cz> 15144 15145 * i386.c (ix86_expand_int_movcc): Fix RTL sharing problem 15146 151472002-08-27 Jan Hubicka <jh@suse.cz> 15148 15149 * libgcc2.c (__bb_exit_func): Properly write the summarized statistics. 15150 151512002-08-27 Jan Hubicka <jh@suse.cz> 15152 15153 * i386.c (classify_argument): Properly compute word size of the analyzed object. 15154 151552002-08-27 J"orn Rennecke <joern.rennecke@superh.com> 15156 15157 * sh.md (attribute type): Add types mt_group, fload, pcfload, fpul_gp, 15158 mac_gp ftrc_s and cwb. Add / Adjust definitions in individual insn 15159 accordingly. 15160 (attribute insn_class): Provide default definitions based on type. 15161 Remove all insn-specific settings. 15162 (various function units): Remove old SH4 scheduling. 15163 (branch_zero, dfp_comp, late_fp_use, any_fp_comp, any_int_load): 15164 New attributes. Set them where appropriate. 15165 (cpu unit FS): Don't define / use. 15166 (F3, load_store): New cpu units. 15167 (F01): New reservation. 15168 (all insn_reservations): Make dependent on sh4 pipeline model. 15169 Fix latencies. 15170 (nil, reg_mov, freg_mov, sh4_fpul_gp, sh4_call): New insn_reservations. 15171 (sh4_mac_gp, fp_arith_ftrc, arith3, arith3b): Likewise. 15172 (mt insn_reservation): Use type mt_group. 15173 (insn_reservation load_store): Split into sh4_load, sh4_load_si, 15174 sh4_fload and sh4_store. 15175 (insn_reservation branch_zero and branch): Replace with sh4_branch. 15176 (insn_reservation branch_far): Replace with sh4_return. 15177 (insn_reservation return_from_exp): Rename to: 15178 (sh4_return_from_exp). Change to be just d_lock*5. 15179 (insn_reservation lds_to_pr): Rename to: 15180 (sh4_lds_to_pr). Change to be just d_lock*2. 15181 (insn_reservation ldsmem_to_pr, sts_from_pr): Change to be just 15182 d_lock*2. 15183 (insn_reservation prload_mem): Rename to: 15184 (sh4_prstore_mem). Change to d_lock*2,nothing,memory. 15185 (insn_reservation fpscr_store): Rename to: 15186 (fpscr_load). Change to d_lock,nothing,F1*3. 15187 (insn_reservation fpscr_store_mem): Rename to: 15188 (fpscr_load_mem). Change to d_lock,nothing,(F1+memory),F1*2. 15189 (insn_reservation multi): Change to 15190 d_lock,(d_lock+f1_1),(f1_1|f1_2)*3,F2. 15191 (insn_reservation fp_arith): Change to issue,F01,F2. 15192 (insn_reservation fp_div: Change to issue,F01+F3,F2+F3,F3*7,F1+F3,F2. 15193 (insn_reservation dp_float): Change to issue,F01,F1+F2,F2. 15194 (insn_reservation fp_double_arith): Change to issue,F01,F1+F2,fpu*4,F2. 15195 (insn_reservation fp_double_cmp): Change to 15196 d_lock,(d_lock+F01),F1+F2,F2. 15197 (insn_reservation dp_div): Change to 15198 issue,F01+F3,F1+F2+F3,F2+F3,F3*16,F1+F3,(fpu+F3)*2,F2. 15199 * sh.c (flow_dependent_p, flow_dependent_p_1): New functions. 15200 (sh_adjust_cost, SHcompact): Differentiate between different 15201 kinds of dependencies. Drop factor of ten for superscalar. 15202 Use new instruction types. Add new exception rules. 15203 15204 * sh.md (mulhisi3, umulhisi3: Add a REG_EQUAL note. 15205 15206 * sh.md (mperm_w): Add DONE. 15207 152082002-08-27 David Edelsohn <edelsohn@gnu.org> 15209 15210 * longlong.h: Import current PowerPC defintion from GMP-4.1. 15211 15212 * config/rs6000/rs6000.h (MIN_UNITS_PER_WORD): Add IN_LIBGCC2 case. 15213 15214 * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Undef before define. 15215 152162002-08-27 J"orn Rennecke <joern.rennecke@superh.com> 15217 15218 * sh.h (MAX_FIXED_MODE_SIZE): Define. 15219 152202002-08-27 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net> 15221 15222 * doc/cpp.texi (Common Predefined Macros): Don't mess with table 15223 delimiter. 15224 152252002-08-27 Gabriel Dos Reis <gdr@integrable-solutions.net> 15226 15227 * c-common.c (cpp_define_data_format): New function. 15228 (cb_register_builtins): Call it. 15229 15230 * doc/cpp.texi (Common Predefined Macros): Document 15231 __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__, 15232 __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__, 15233 __TARGET_FLOAT_FORMAT__, __TARGET_USES_VAX_F_FLOAT__, 15234 __TARGET_USES_VAX_D_FLOAT__, __TARGET_USES_VAX_G_FLOAT__, 15235 __TARGET_USES_VAX_H_FLOAT__. 15236 152372002-08-26 Ziemowit Laski <zlaski@apple.com> 15238 15239 * objc/objc-act.c (get_super_receiver): If inside a class method 15240 of a category, cast the receiver to 'id' before accessing the 'isa' 15241 field so that <objc/objc-class.h> is not needed. For NeXT runtime. 15242 152432002-08-26 Ulrich Weigand <uweigand@de.ibm.com> 15244 15245 * config/s390/s390-protos.h (s390_function_prologue, 15246 s390_function_epilogue): Remove. 15247 config/s390/s390.c (s390_function_prologue, s390_function_epilogue, 15248 TARGET_ASM_FUNCTION_PROLOGUE, TARGET_ASM_FUNCTION_EPILOGUE): Remove. 15249 15250 config/s390/s390.c (s390_machine_dependent_recorg): New function. 15251 config/s390/s390-protos.h (s390_machine_dependent_reorg): Declare it. 15252 config/s390/s390.h (MACHINE_DEPENDENT_REORG): Call it. 15253 config/s390/s390.c (s390_split_branches, s390_chunkify_pool): Adapt 15254 to being called from MACHINE_DEPENDENT_REORG. Update regs_ever_live. 15255 15256 config/s390/s390.c (s390_frame_info): Inline save_fprs_p. Always 15257 assume BASE_REGISTER and RETURN_REGNUM need to be saved. 15258 (s390_emit_prologue): Assume RETURN_REGNUM to be saved iff 15259 function is not a leaf function. Use save_gprs and restore_gprs. 15260 (s390_emit_epilogue): Likewise. 15261 (save_gprs, restore_gprs): New functions. 15262 (struct s390_frame): Remove return_reg_saved_p member. 15263 (save_fprs_p): Remove. 15264 (s390_optimize_prolog): New function. 15265 (s390_legitimate_reload_constant): Remove now unnecessary check. 15266 15267 (s390_function_count): Remove. 15268 (s390_output_symbolic_const): Replace s390_function_count by 15269 current_function_funcdef_no. 15270 (s390_output_constant_pool): Likewise. 15271 15272 (legitimize_pic_address): Use regs_ever_live to track PIC register 15273 instead of current_function_uses_pic_offset_table. 15274 (s390_emit_prologue): Likewise. 15275 config/s390/s390.md ("call", "call_value"): Likewise. 15276 152772002-08-26 Neil Booth <neil@daikokuya.co.uk> 15278 15279 * c-opts.c (find_opt): Don't complain about wrong languages 15280 here. Return exact matches even for wrong language. 15281 (c_common_decode_option): Complain about wrong languages 15282 here. 15283 152842002-08-24 Stuart Hastings <stuart@apple.com> 15285 15286 * function.h (struct function): Add flag 15287 all_throwers_are_sibcalls. 15288 * except.c (set_nothrow_function_flags): Replaces 15289 nothrow_function_p. Set new flag. 15290 * except.h (set_nothrow_function_flags): Replaces 15291 nothrow_function_p. 15292 * dwarf2out.c (struct dw_fde_struct): Add flag 15293 all_throwers_are_sibcalls. 15294 (output_call_frame_info): Test it. 15295 (dwarf2out_begin_prologue) Propagate it from cfun to 15296 dw_fde_struct. 15297 * toplev.c (rest_of_compilation): Update calls to 15298 nothrow_function_p. 15299 153002002-08-23 Zack Weinberg <zack@codesourcery.com> 15301 15302 * ggc-page.c (compute_inverse): Short circuit calculation for 15303 object sizes larger than half a page. 15304 153052002-08-23 David Edelsohn <edelsohn@gnu.org> 15306 15307 * config/rs6000/rs6000.c (rs6000_elf_select_section): Treat 15308 DEFAULT_ABI == ABI_AIX like PIC. Test PIC & reloc for readonly 15309 default. 15310 (rs6000_elf_unique_section): Likewise. 15311 153122002-08-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15313 15314 * ns32k.c (ns32k_globalize_label): Delete. 15315 * ns32k.h (ASM_OUTPUT_LABEL, TARGET_ASM_GLOBALIZE_LABEL): Delete. 15316 153172002-08-23 Alan Modra <amodra@bigpond.net.au> 15318 15319 * config/rs6000/rs6000.c (output_mi_thunk): Don't determine insns 15320 for loading delta with num_insns_constant_wide. Calculate 15321 delta_low, delta_high without using a conditional. 15322 153232002-08-22 Jason Merrill <jason@redhat.com> 15324 15325 * c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR. 15326 * c-common.def: Adjust. 15327 * c-dump.c (c_dump_tree): Adjust. 15328 * c-semantics.c (genrtl_return_stmt): Adjust. 15329 * c-pretty-print.c (pp_c_statement): Adjust. 15330 * tree-inline.c (copy_body_r): Adjust. 15331 153322002-08-22 Zack Weinberg <zack@codesourcery.com> 15333 15334 * ggc-page.c: Avoid division in ggc_set_mark. 15335 (DIV_MULT, DIV_SHIFT, OFFSET_TO_BIT, inverse_table, 15336 compute_inverse): New. 15337 (ggc_set_mark, ggc_marked_p): Use OFFSET_TO_BIT. 15338 (init_ggc): Initialize inverse_table. 15339 153402002-08-22 Tom Tromey <tromey@redhat.com> 15341 15342 * doc/install.texi (Configuration): Document --datadir. 15343 153442002-08-22 Alexandre Oliva <aoliva@redhat.com> 15345 15346 * Makefile.in ($(BUILD_PREFIX_1)varray.o): Depend on $(GGC_H). 15347 153482002-08-22 Hans-Peter Nilsson <hp@bitrange.com> 15349 15350 * gengtype-lex.l (ID): Allow underscore as first character. 15351 153522002-08-21 David Edelsohn <edelsohn@gnu.org> 15353 15354 * config/rs6000/rs6000.c (rs6000_xcoff_asm_globalize_label): New 15355 function. 15356 (rs6000_xcoff_asm_named_section): Rename. 15357 * config/rs6000/xcoff.h (TARGET_ASM_GLOBALIZE_LABEL): Define. 15358 153592002-08-21 Tom Tromey <tromey@redhat.com> 15360 15361 For PR java/6005 and PR java/7611: 15362 * fold-const.c (fold_truthop): Use can_use_bit_fields_p. 15363 (fold): Likewise. 15364 * langhooks.c (lhd_can_use_bit_fields_p): New function. 15365 * langhooks-def.h (lhd_can_use_bit_fields_p): Declare. 15366 (LANG_HOOKS_CAN_USE_BIT_FIELDS_P): New define. 15367 (LANG_HOOKS_INITIALIZER): Use it. 15368 * langhooks.h (struct lang_hooks) [can_use_bit_fields_p]: New 15369 field. 15370 153712002-08-21 Stan Shebs <shebs@apple.com> 15372 15373 * tree.c (finish_vector_type): Fix a typo in a comment. 15374 * Makefile.in: Fix "the the" stutters in comments. 15375 * genautomata.c: Ditto. 15376 * ifcvt.c: Ditto. 15377 * regrename.c: Ditto. 15378 * config/alpha/alpha.c: Ditto. 15379 * config/alpha/vms-crt0-64.c: Ditto. 15380 * config/alpha/vms-crt0.c: Ditto. 15381 * config/alpha/vms-psxcrt0-64.c: Ditto. 15382 * config/alpha/vms-psxcrt0.c: Ditto. 15383 * config/d30v/d30v.h: Ditto. 15384 * config/fr30/fr30.h: Ditto. 15385 * config/rs6000/rs6000.c: Ditto. 15386 * config/stormy16/stormy16.h: Ditto. 15387 * doc/md.texi: Ditto. 15388 153892002-08-21 John David Anglin <dave@hiauly1.hia.nrc.ca> 15390 15391 * cppinit.c (remove_dup_nonsys_dirs): Fix warning and return value. 15392 153932002-08-21 Joseph S. Myers <jsm@polyomino.org.uk> 15394 15395 * c-decl.c (grokdeclarator): Make invalid combinations with long, 15396 short, signed or unsigned into hard errors. Fixes PR c/4319. 15397 Also make duplicate modifiers such as "short short" into hard 15398 errors. 15399 154002002-08-21 Andrew Pinski <pinskia@physics.uc.edu> 15401 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15402 15403 * doc/tm.texi (TARGET_ASM_GLOBALIZE_LABEL): Move '@end deftypefn' 15404 to the actual end. Add '@end table' and '@table @code'. 15405 154062002-08-20 Geoffrey Keating <geoffk@redhat.com> 15407 15408 * doc/tm.texi (Label Output): Add missing '@end deftypefn'. 15409 15410 * unroll.c (biv_total_increment): Don't try to compute the total 15411 increment for FP BIVs. 15412 154132002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15414 15415 * alpha.c (TARGET_ASM_GLOBALIZE_LABEL): Define for unicosmk. 15416 * alpha/elf.h (ASM_OUTPUT_EXTERNAL_LIBCALL, 15417 ASM_OUTPUT_ALIGNED_BSS): Use target hook. 15418 * alpha/osf.h (ASM_OUTPUT_WEAK_ALIAS): Likewise. 15419 * alpha/unicosmk.h (ASM_GLOBALIZE_LABEL): Delete. 15420 * arm/aof.h (ASM_GLOBALIZE_LABEL): Likewise. 15421 (GLOBAL_ASM_OP): Define. 15422 * arm.c (aof_globalize_label): New function. 15423 (TARGET_ASM_GLOBALIZE_LABEL): Define for AOF. 15424 * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook. 15425 * c4x.c (c4x_globalize_label): New function. 15426 (TARGET_ASM_GLOBALIZE_LABEL): Define for c4x. 15427 * c4x.h (ASM_GLOBALIZE_LABEL): Delete. 15428 (GLOBAL_ASM_OP): Define. 15429 * cris/aout.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook. 15430 * darwin-protos.h (darwin_globalize_label): Declare. 15431 * darwin.c (darwin_globalize_label): New function. 15432 * darwin.h (ASM_DECLARE_CLASS_REFERENCE): Use target hook. 15433 (ASM_GLOBALIZE_LABEL): Delete. 15434 (GLOBAL_ASM_OP, TARGET_ASM_GLOBALIZE_LABEL): Define. 15435 * dsp16xx.c (asm_output_common): Use target hook. 15436 * elfos.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise. 15437 * frv.h (ASM_GLOBALIZE_LABEL): Delete. 15438 (GLOBAL_ASM_OP): Define. 15439 * i370.c (i370_globalize_label): New function. 15440 (TARGET_ASM_GLOBALIZE_LABEL): Define for i370. 15441 * i370.h (ASM_GLOBALIZE_LABEL): Delete. 15442 * i386.c (ix86_asm_file_end): Use target hook. 15443 * i386/sco5.h (ASM_GLOBALIZE_LABEL): Don't undef. 15444 (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook. 15445 * ia64.c (ia64_asm_output_external): Likewise. 15446 * ia64/sysv4.h: Update comment. 15447 * m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook. 15448 * mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise. 15449 * mips/iris5.h (ASM_OUTPUT_WEAK_ALIAS): Use target hook. 15450 * mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise. 15451 * mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use target hook. 15452 * mmix-protos.h (mmix_asm_globalize_label): Delete. 15453 * mmix.c (mmix_asm_globalize_label): Likewise. 15454 * mmix.h (ASM_GLOBALIZE_LABEL): Likewise. 15455 (GLOBAL_ASM_OP): Define. 15456 * ns32k.c (ns32k_globalize_label): New function. 15457 * ns32k.h (TARGET_ASM_GLOBALIZE_LABEL): Define for ns32k. 15458 (ASM_GLOBALIZE_LABEL): Delete. 15459 * pa/pa-linux.h (ASM_GLOBALIZE_LABEL): Don't undef. 15460 (TARGET_ASM_GLOBALIZE_LABEL): Undefine. 15461 * pa.c (pa_globalize_label): New function. 15462 * pa.h (ASM_GLOBALIZE_LABEL): Delete. 15463 (TARGET_ASM_GLOBALIZE_LABEL): Define for pa. 15464 * rs6000/darwin.h (ASM_GLOBALIZE_LABEL): Delete. 15465 (GLOBAL_ASM_OP): Define. 15466 (TARGET_ASM_GLOBALIZE_LABEL): Undef. 15467 * rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook. 15468 * rs6000/xcoff.h (ASM_GLOBALIZE_LABEL): Delete. 15469 (GLOBAL_ASM_OP): Define. 15470 * v850.c (v850_output_aligned_bss): Use target hook. 15471 * vax.c (vms_globalize_label): New function. 15472 (TARGET_ASM_GLOBALIZE_LABEL): Define for vms. 15473 * vax/vms.h (ASM_GLOBALIZE_LABEL): Delete. 15474 (GLOBAL_ASM_OP): Define. 15475 * defaults.h (ASM_GLOBALIZE_LABEL): Delete. 15476 * doc/tm.texi: Update docs. 15477 * dwarf2out.c (default_eh_frame_section, output_die_symbol): Use 15478 target hook. 15479 * final.c (output_alternate_entry_point): Likewise. 15480 * hooks.c (hook_FILEptr_constcharptr_void): New function. 15481 * hooks.h (hook_FILEptr_constcharptr_void): Declare. 15482 * output.h (assemble_global): Delete. 15483 (default_globalize_label): Declare. 15484 * system.h (ASM_GLOBALIZE_LABEL): Poison. 15485 * target-def.h (TARGET_ASM_GLOBALIZE_LABEL): Define. 15486 (TARGET_ASM_OUT): Add TARGET_ASM_GLOBALIZE_LABEL. 15487 * target.h (gcc_target): Add globalize_label member. 15488 * varasm.c (asm_output_bss, asm_output_aligned_bss, 15489 globalize_decl): Use target hook. 15490 (assemble_global): Delete. 15491 (default_globalize_label): New function. 15492 154932002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15494 15495 * dsp16xx.h (dsp16xx_umulhi3_libcall): Delete. 15496 154972002-08-20 Devang Patel <dpatel@apple.com> 15498 * tree.c (get_qualified_type): Add TYPE_CONTEXT check. 15499 155002002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15501 15502 * arc.c (output_shift): Use stdio instead of asm_fprintf. 15503 * arm.c (thumb_output_function_prologue): Likewise. 15504 * avr.c (print_operand): Likewise. 15505 * c4x.c (c4x_print_operand): Likewise. 15506 * c4x.h (ASM_OUTPUT_INTERNAL_LABEL, TRAMPOLINE_TEMPLATE, 15507 ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise. 15508 * cris.c (cris_target_asm_function_prologue, 15509 cris_asm_output_mi_thunk): Likewise. 15510 * h8300.c (print_operand): Likewise. 15511 * h8300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise. 15512 * ip2k.c (print_operand): Likewise. Fix format specifier. 15513 * m68hc11.c (asm_print_register, print_operand, 15514 print_operand_address): Use stdio instead of asm_fprintf. 15515 (print_operand_address): Fix format specifier. 15516 * m68hc11.h (FUNCTION_PROFILER, ASM_OUTPUT_ADDR_DIFF_ELT, 15517 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ALIGN): Use stdio instead of 15518 asm_fprintf. 15519 * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise. 15520 * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise. 15521 * m68k.c (m68k_output_function_prologue, 15522 m68k_output_function_epilogue, print_operand): Likewise. 15523 * mmix.c (mmix_asm_output_mi_thunk, mmix_asm_weaken_label): 15524 Likewise. Fix format specifier. 15525 * mn10200.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise. 15526 * mn10300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise. 15527 * v850.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise. 15528 155292002-08-15 Eric Christopher <echristo@redhat.com> 15530 Jeff Knaggs <jknaggs@redhat.com> 15531 15532 * config.gcc (mipsisa64sr71k-elf): New target. 15533 * config/mips/sr71k.md: New file. 15534 * config/mips/mips.md: Use it. 15535 (rot*): Add sr71k specifics. 15536 * config/mips/t-sr71k: New file. 15537 * config/mips/mips.h (sr71k): New cpu. 15538 (TARGET_SR71K): Use it. 15539 (TUNE_SR71K): Ditto. 15540 (GENERATE_BRANCHLIKELY): Ditto. 15541 (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC, 15542 ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto. 15543 * config/mips/mips.c (sr71k): New cpu. 15544 (mips_use_dfa_pipeline_interface): Use. 15545 155462002-08-15 Eric Christopher <echristo@redhat.com> 15547 Richard Sandiford <rsandifo@redhat.com> 15548 Aldy Hernandez <aldyh@redhat.com> 15549 Graham Stott <grahams@redhat.com> 15550 Michael Meissner <meissner@redhat.com> 15551 Gavin Romig-Koch <gavin@redhat.com> 15552 Ken Raeburn <raeburn@cygnus.com> 15553 Alexandre Oliva <aoliva@redhat.com> 15554 15555 * config.gcc (mips64vr-elf): New target. 15556 * config/mips/5400.md: New file. 15557 * config/mips/5500.md: Ditto. 15558 * config/mips/mips.md: Use them. 15559 (frsqrt): New. 15560 * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New 15561 cpus. 15562 (mips_issue_rate): Use them. 15563 (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500. 15564 (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above. 15565 * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New 15566 cpus. 15567 (TARGET_MIPSx): Use them. 15568 (TUNE_MIPSx): Ditto. 15569 (GETNATE_MULT3_SI): Ditto. 15570 (ISA_HAS_BRANCHLIKELY): Ditto. 15571 (ISA_HAS_CONDMOVE): Ditto. 15572 (ISA_HAS_NMADD_NMSUB): Ditto. 15573 (ISA_HAS_MULHI): New. Ditto. 15574 (ISA_HAS_MULS): Ditto. 15575 (ISA_HAS_MSAC): Ditto. 15576 (ISA_HAS_MACC): Ditto. 15577 (ISA_HAS_ROTR_SI): Ditto. 15578 (ISA_HAS_ROTR_DI): Ditto. 15579 (RTX_COSTS): Use. 15580 155812002-08-20 John David Anglin <dave@hiauly1.hia.nrc.ca> 15582 15583 * cppinit.c (remove_dup_dir): Add head_ptr argument to handle removal 15584 at head. 15585 (remove_dup_nonsys_dirs): New function. 15586 (remove_dup_dirs): Change argument head to head_ptr. Remove warnings. 15587 (merge_include_chains): Remove non-system include directories from 15588 quote and bracket include chains when they duplicate equivalent system 15589 directories. 15590 * doc/cpp.texi (-I): Update. 15591 * doc/cppopts.texi (-I): Update. 15592 * doc/install.texi (--with-local-prefix): Further document usage of 15593 this option. 15594 * doc/invoke.texi (-I): Update. 15595 155962002-08-20 Richard Henderson <rth@redhat.com> 15597 15598 * expr.c (TARGET_MEM_FUNCTIONS): Transform to boolean. 15599 (emit_block_move): Split out subroutines. 15600 (emit_block_move_via_movstr): New. 15601 (emit_block_move_via_libcall): New. Emit bcopy via normal call also. 15602 (emit_block_move_libcall_fn): New. Construct function prototype for 15603 bcopy as well. 15604 (clear_storage): Split out subroutines. 15605 (clear_storage_via_clrstr): New. 15606 (clear_storage_via_libcall): New. Emit bzero as a normal call also. 15607 (clear_storage_libcall_fn): New. Construct function prototype for 15608 bzero as well. 15609 (emit_push_insn): Use emit_block_move. 15610 (expand_assignment): Booleanize TARGET_MEM_FUNCTIONS. 15611 (store_constructor): Likewise. 15612 156132002-08-19 Ziemowit Laski <zlaski@apple.com> 15614 15615 * objc/objc-act.c (building_objc_message_expr): Rename to 15616 current_objc_message_selector. 15617 156182002-08-19 Ziemowit Laski <zlaski@apple.com> 15619 15620 * objc/objc-act.c (build_ivar_chain): Remove. 15621 (objc_copy_list): Likewise. 15622 (get_class_ivars): Inline call to removed build_ivar_chain 15623 function. Save off a clean copy of ivars in the CLASS_OWN_IVARS 15624 slot; use that slot (rather than CLASS_IVARS) when accessing 15625 ivars for base classes. Call copy_list and chainon instead of 15626 objc_copy_list. 15627 (build_private_template): Call get_class_ivars instead of 15628 build_ivar_chain. 15629 (start_class): Allocate room for the CLASS_OWN_IVARS slot. 15630 (continue_class): Call get_class_ivars instead of 15631 build_ivar_chain. 15632 (encode_field_decl): Check for DECL_BIT_FIELD_TYPE instead 15633 of DECL_BIT_FIELD (which may have been cleared). 15634 * objc/objc-act.h (CLASS_OWN_IVARS): New accessor macro. 15635 156362002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15637 15638 * genautomata.c (output_translate_vect, output_state_ainsn_table, 15639 output_min_issue_delay_table): Mark variable with ATTRIBUTE_UNUSED 15640 in output file. 15641 (output_internal_min_issue_delay_func): Initialize variable in 15642 output file. 15643 156442002-08-19 Alexandre Oliva <aoliva@redhat.com> 15645 15646 * Makefile.in (GCC_FOR_TARGET): Prepend STAGE_CC_WRAPPER. 15647 (stage2_build, stage3_build, stage4_build): Likewise, to CC. 15648 156492002-08-19 Geoffrey Keating <geoffk@redhat.com> 15650 Steve Ellcey <sje@cup.hp.com> 15651 15652 * machmode.h (SCALAR_INT_MODE_P): New macro to test for 15653 scaler integer mode (MODE_INT or MODE_PARTIAL_INT). 15654 * explow.c (trunc_int_for_mode): Abort when the mode is not 15655 a scaler integer mode. 15656 * combine.c (expand_compound_operation): Don't expand Vector 15657 or Complex modes into shifts. 15658 (expand_field_assignment): Don't do bitwise arithmatic and 15659 shifts on Vector or Complex modes. 15660 (simplify_comparison): Don't call trunc_int_for_mode 15661 for VOIDmode. 15662 * recog.c (general_operand): Likewise. 15663 (immediate_operand): Likewise. 15664 (nonmemory_operand): Likewise. 15665 156662002-08-19 David Edelsohn <edelsohn@gnu.org> 15667 15668 * config/rs6000/rs6000.c (rs6000_emit_set_const): Inline 15669 multi-instruction SImode constant. Add REG_EQUAL note. 15670 * config/rs6000/rs6000.md (movsi splitter): Use 15671 rs6000_emit_set_const. 15672 156732002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15674 15675 * tree-inline.c (initialize_inlined_parameters): Wrap variable in 15676 the macro test controlling its use. 15677 156782002-08-18 H.J. Lu (hjl@gnu.org) 15679 15680 * config.gcc (*-*-linux*): Set extra_parts="crtbegin.o 15681 crtbeginS.o crtbeginT.o crtend.o crtendS.o", gas=yes and 15682 gnu_ld=yes. 15683 (alpha*-*-linux*, cris-*-linux*, i370-*-linux*, 15684 i[34567]86-*-linux*, x86_64-*-linux*, mips*-*-linux*, 15685 s390-*-linux*, s390x-*-linux*, sparc-*-linux*, sparc64-*-linux*, 15686 xtensa-*-linux*): Remove setting extra_parts, gas, and gnu_ld 15687 here. 15688 (cris-*-linux*): Remove setting thread_file here. 15689 156902002-08-18 Neil Booth <neil@daikokuya.co.uk> 15691 15692 PR preprocessor/7602 15693 * cppinit.c (path_include): Treat the system environment 15694 variables as being cxx_aware. 15695 156962002-08-17 Joseph S. Myers <jsm@polyomino.org.uk> 15697 15698 * c-decl.c (flexible_array_type_p): New function. 15699 (grokdeclarator, finish_struct): Use it. 15700 * doc/extend.texi: Document constraints on use of structures with 15701 flexible array members. 15702 157032002-08-17 Richard Sandiford <rsandifo@redhat.com> 15704 15705 * config/mips/t-coff, config/mips/t-elf, config/mips/t-isa3264, 15706 config/mips/t-r3900 (MULTILIB_MATCHES): Define. 15707 * config/mips/mips.h (ASM_SPEC): Use %(endian_spec). 15708 157092002-08-16 Stan Shebs <shebs@apple.com> 15710 15711 * c-common.c (cb_register_builds): Define __NEXT_RUNTIME__ 15712 for ObjC with -fnext-runtime. 15713 * doc/cpp.texi: Document it. 15714 157152002-08-16 Janis Johnson <janis187@us.ibm.com> 15716 15717 * doc/install.texi (Final installation): Replace links to individual 15718 build status pages with a link to a common page that lists them all. 15719 157202002-08-16 Sylvain Pion <pion@cs.nyu.edu> 15721 15722 * doc/invoke.texi: Fix typo. 15723 157242002-08-16 David Edelsohn <edelsohn@gnu.org> 15725 15726 * doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning. 15727 157282002-08-16 Andrew Haley <aph@redhat.com> 15729 15730 * tree-inline.c: Add includes for Java inliner. 15731 (remap_decl): Don't handle anonymous types for Java. 15732 (remap_block): Add handling for Java trees. 15733 (copy_scope_stmt): Conditionalize for non-Java use only. 15734 (copy_body_r): Handle Java trees. Add handling for 15735 LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, Java blocks. 15736 (initialize_inlined_parameters): Handle Java trees. 15737 (declare_return_variable): Likewise. 15738 (expand_call_inline): Handle Java trees. 15739 (walk_tree): Likewise. 15740 (copy_tree_r): Don't handle SCOPE_STMTs for Java. 15741 (add_stmt_to_compound): New function. 15742 157432002-08-15 Richard Henderson <rth@redhat.com> 15744 15745 * Makefile.in (LOOSE_WARN): Remove -fno-common. 15746 (NOCOMMON_FLAG): New substitution point. 15747 (GCC_WARN_CFLAGS): Include it. 15748 * configure.in (ac_checking): Set nocommon_flag. 15749 (nocommon_flag): New substitution point. 15750 157512002-08-15 Alexandre Oliva <aoliva@redhat.com> 15752 15753 * c-tree.h (skip_evaluation): Move declaration... 15754 * c-common.h: ... here. 15755 * c-typeck.c (build_external_ref): Don't assemble_external nor 15756 mark a tree as used if skip_evaluation is set. 15757 * c-parse.in (typeof): New non-terminal to set skip_evaluation 15758 around TYPEOF. 15759 (typespec_nonreserved_nonattr): Use it. 15760 157612002-08-15 Douglas B Rupp <rupp@gnat.com> 15762 15763 * dbxout.c (dbx_debug_hooks): Update end_prologue, end_epilogue. 15764 (xcoff_debug_hooks): Update end_prologue. 15765 * debug.c (do_nothing_debug_hooks): Update end_prologue, end_epilogue. 15766 * debug.h (end_prologue): Add file arg. 15767 (end_epilogue): Add line and file args. 15768 (dwarf2out_end_epilogue): Add line and file args. 15769 (vmsdbgout_after_prologue): Remove. 15770 * dwarf2out.c (dwarf2out_end_epilogue): Add line and file args. 15771 (dwarf2_debug_hooks): Update end_prologue. 15772 * dwarfout.c (dwarfout_end_epilogue): Add line and file args. 15773 (dwarfout_end_prologue): Add file arg. 15774 * final.c (vmsdbgout_after_prologue): Remove 15775 (final_end_function): Update end_epilogue call. 15776 (final_scan_insn): Update end_prologue call. 15777 * sdbout.c (sdbout_end_epilogue): Add line and file args. 15778 (sdbout_end_prologue): Add file arg. 15779 (sdb_debug_hooks): Update end_prologue. 15780 (sdb_begin_prologue): Update sdbout_end_prologue call. 15781 * vmsdbgout.c (vmsdbg_debug_hooks): Add vmsdbgout_end_prologue, 15782 vmsdbgout_end_function. 15783 (vmsdbgout_end_prologue): New function renamed from 15784 vmsdbgout_after_prologue. Call vmsdbgout_source_line. 15785 (vmsdbgout_end_function): New function. 15786 (vmsdbgout_end_epilogue): Add line and file args. Call 15787 vmsdbgout_source_line. 15788 (write_pclines): Write only valid line numbers. 15789 (write_srccorr): Don't write source correlation records if 0 lines. 15790 * xcoffout.c (xcoffout_end_epilogue): Add line and file args. 15791 157922002-08-15 Steve Ellcey <sje@cup.hp.com> 15793 15794 * gcc/unwind.h (_Unwind_Ptr): Make 64 bits on IA64 HP-UX. 15795 (_Unwind_Internal_Ptr): 32 bit version for use in 15796 read_encoded_value_with_base. 15797 * gcc/unwind-pe.h (read_encoded_value_with_base): Use 15798 _Unwind_Internal_Ptr instead of _Unwind_Ptr in order to get the 15799 right size. 15800 158012002-08-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15802 15803 * loop.c (scan_loop, move_movables, count_one_set): Cast to avoid 15804 signed/unsigned warnings. 15805 15806 * regclass.c (init_reg_sets_1, choose_hard_reg_mode, 15807 record_reg_classes): Likewise. 15808 15809 * reload.c (reload_inner_reg_of_subreg, push_reload, 15810 find_reloads_address_1): Likewise. 15811 158122002-08-15 David Edelsohn <edelsohn@gnu.org> 15813 15814 * rs6000.c (output_mi_thunk): Return to function section on 15815 TARGET_ELF. 15816 15817 * rs6000-c.c (rs6000_cpu_cpp_builtins): Define __PPC405__ if PPC405. 15818 158192002-08-15 Ulrich Weigand <uweigand@de.ibm.com> 15820 15821 * config/s390/s390.c (legitimize_address): Optimize loading 15822 of large displacements. 15823 158242002-08-14 Douglas B Rupp <rupp@gnat.com> 15825 15826 * config/alpha/alpha-protos.h: Update. 15827 15828 * config/alpha/alpha.c: (LINKAGE_SYMBOL_REF_P): New macro. 15829 (alpha_legitimate_address_p): Test LINKAGE_SYMBOL_REF_P. 15830 (alpha_linkage_symbol_p): New static function. 15831 (print_operand_address): Print linkage operand. 15832 15833 (alpha_funcs_num, alpha_funcs_tree, alpha_links_tree): New static 15834 variables. 15835 (reloc_kind): New enum. 15836 (struct alpha_funcs): New struct. 15837 (struct alpha_links): Add reloc_kind field. Rename links_kind field. 15838 15839 (alpha_need_linkage): Rewrite. 15840 (alpha_use_linkage): New global function. 15841 (alpha_write_linkage): Rewrite and make static. 15842 (alpha_write_one_linkage): Rewrite 15843 15844 (alpha_start_function): Remove procedure descriptor output. 15845 (alpha_end_function): Write linkages at end of each function. 15846 15847 * config/alpha/alpha.md (call_vms, call_value_vms): Rewrite. 15848 (call_vms_1, call_value_vms_1): Rewrite. 15849 15850 * config/alpha/vms.h (ASM_FILE_END): Remove. 15851 158522002-08-14 Richard Henderson <rth@redhat.com> 15853 15854 * ggc-page.c (RTL_SIZE): New. 15855 (extra_order_size_table): Add specializations for 2 and 10 rtl slots. 15856 * rtl.def (BARRIER, NOTE): Pad to 9 slots. 15857 158582002-08-14 Richard Henderson <rth@redhat.com> 15859 15860 * calls.c: Include target.h. 15861 * Makefile.in (calls.o): Update. 15862 15863 * config/alpha/alpha.c (alpha_end_function): Use targetm.binds_local_p. 15864 * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Likewise. 15865 158662002-08-14 Richard Henderson <rth@redhat.com> 15867 15868 * Makefile.in (LOOSE_WARN): Add -fno-common. 15869 * c-common.h (constant_string_class_name): Add missing extern. 15870 158712002-08-15 Neil Booth <neil@daikokuya.co.uk> 15872 15873 PR preprocessor/7358 15874 * c-opts.c (check_deps_environment_vars): Ignore main file 15875 for SUNPRO_DEPENDENCIES. 15876 * cppfiles.c (stack_include_file): Ignore main file if 15877 appropriate. 15878 * cpplib.h (struct cpp_options): New member in deps. 15879 * doc/cppenv.texi: Update. 15880 158812002-08-14 Neil Booth <neil@daikokuya.co.uk> 15882 15883 PR preprocessor/7526 15884 * cpplib.c (run_directive): Kludge so _Pragma dependency works. 15885 158862002-08-14 Nathan Sidwell <nathan@codesourcery.com> 15887 15888 * doc/invoke.texi (-a): Remove documentation. 15889 (-fprofile-arcs): Remove reference to -a, -ax options. 15890 * doc/gcov.texi (Gcov Data Files): Data might be merged. 15891 158922002-08-14 Gabriel Dos Reis <gdr@nerim.net> 15893 15894 Fix PR/7566 15895 * c-semantics.c (genrtl_case_label): Don't (mis)use 15896 warning_with_decl. 15897 158982002-08-14 Dale Johannesen <dalej@apple.com> 15899 15900 * explow.c (emit_stack_restore): Emit memory clobbers 15901 preceding the stack pop, to prevent the scheduler from 15902 moving refs to variable arrays below this pop. 15903 * reload1.c (reload): Preserve these clobbers for sched2. 15904 * doc/rtl.texi: Document clobber (mem:BLK (scratch)). 15905 159062002-08-14 Neil Booth <neil@daikokuya.co.uk> 15907 15908 * c-opts.c (c_common_post_options): Correct test. 15909 159102002-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 15911 15912 * m88k.h (ASM_OUTPUT_SOURCE_FILENAME): Fix incorrect argument 15913 order in call to fprintf. 15914 159152002-08-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 15916 15917 * config/sparc/sol2.h (SUBTARGET_EXTRA_SPECS): Define. 15918 159192002-08-14 Ulrich Weigand <uweigand@de.ibm.com> 15920 15921 * reload.c (find_reloads): Handle constraint letters marked by 15922 EXTRA_ADDRESS_CONSTRAINT and EXTRA_MEMORY_CONSTRAINT. 15923 (alternative_allows_memconst): Likewise. 15924 * reload1.c (maybe_fix_stack_asms): Likewise. 15925 * recog.c (asm_operand_ok, preprocess_constraints, 15926 constrain_operands): Likewise. 15927 * regclass.c (record_operand_costs, record_reg_classes): Likewise. 15928 * local-alloc.c (block_alloc, requires_inout): Likewise. 15929 * stmt.c (parse_output_constraint, parse_input_constraint): Likewise. 15930 15931 * defaults.h (EXTRA_MEMORY_CONSTRAINT): Provide a default. 15932 (EXTRA_ADDRESS_CONSTRAINT): Likewise. 15933 * doc/tm.texi: Document these two new target macros. 15934 15935 * config/s390/s390.c (s390_expand_plus_operand): Accept already 15936 valid operands. 15937 (q_constraint): New function. 15938 config/s390/s390-protos.h (q_constraint): Declare it. 15939 config/s390/s390.h (EXTRA_CONSTRAINT): Use it. 15940 (EXTRA_MEMORY_CONSTRAINT): New macro. 15941 15942 * config/s390/s390.md: Throughout the machine description, 15943 replace all instances of the constraint combinations 'Qo' 15944 or 'oQ' with simply 'Q'. 15945 159462002-08-14 Stephane Carrez <stcarrez@nerim.fr> 15947 15948 * config/m68hc11/m68hc11.h (LINK_SPEC): Support -mrelax. 15949 * config/m68hc11/t-m68hc11-gas (LIBGCC2_DEBUG_CFLAGS): Can use -g now. 15950 (LIBGCC2_CFLAGS): Compile with -mrelax. 15951 159522002-08-14 Stephane Carrez <stcarrez@nerim.fr> 15953 15954 * doc/invoke.texi: Document -minmax for 68HC12. 15955 15956 * config/m68hc11/m68hc11.md ("umaxqi3"): Use TARGET_MIN_MAX. 15957 ("uminqi3"): Likewise. 15958 ("uminhi3", "umaxhi3"): Likewise. 15959 15960 * config/m68hc11/m68hc11.h (MASK_MIN_MAX): Define. 15961 (TARGET_MIN_MAX): Define. 15962 (TARGET_SWITCHES): New option -minmax/-mnominmax. 15963 159642002-08-14 Stephane Carrez <stcarrez@nerim.fr> 15965 15966 * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build __far_trampoline. 15967 (MULTILIB_OPTIONS): Must also generate for -mlong-calls. 15968 15969 * config/m68hc11/larith.asm: Put a mode for ELF ABI flags. 15970 (ret, declare, farsym): New gas macros. 15971 (__premain, exit, abort, _cleanup, memcpy, memset, ___adddi3, 15972 ___subdi3, ___notdi2, __mulhi32, __mulsi3): Use them to use 'rtc' 15973 and declare the symbol far when compiled with -mlong-calls. 15974 (__far_trampoline): New for 68HC12 trampoline code to invoke a 15975 far handler using jsr/bsr. 15976 15977 * config/m68hc11/m68hc11-crt0.S: Put a mode for ELF ABI flags. 15978 (jsr): New macro to transform a 'jsr' into a 'call'. 15979 159802002-08-14 Stephane Carrez <stcarrez@nerim.fr> 15981 15982 * doc/invoke.texi: Document -mlong-calls for 68HC12. 15983 15984 * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__USE_RTC__ when 15985 -mlong-calls is specified. 15986 (ASM_DECLARE_FUNCTION_NAME): Define to generate .far and .interrupt 15987 assembler directives. 15988 (TARGET_LONG_CALL, MASK_LONG_CALL): Declare. 15989 (TARGET_SWITCHES): Add -mlong-calls options. 15990 (current_function_far): Declare. 15991 15992 * config/m68hc11/m68hc11.c (m68hc11_initial_elimination_offset): Take 15993 into account the page register saved on the stack. 15994 (m68hc11_override_options): Take into account -mlong-calls option. 15995 (m68hc11_asm_file_start): Put a mode for the ELF flags ABI. 15996 15997 * config/m68hc11/m68hc11.md ("*return_32bit"): Return rtc 15998 if the function is going to be in 68HC12 banked memory (-mlong-calls). 15999 ("*return_16bit"): Likewise. 16000 ("*return_void"): Likewise. 16001 ("call", "call_value"): Use call for a far function call. 16002 160032002-08-14 Neil Booth <neil@daikokuya.co.uk> 16004 16005 * toplev.c (parse_options_and_default_flags): Don't call 16006 post_options here. 16007 (general_init): Initialize GC, pools and tree hash here, 16008 instead of lang_independent_init. 16009 (lang_independent_init): Rename backend_init. 16010 (do_compile): Call post_options hook; exit early if there 16011 have been errors after switch processing. 16012 (toplev_main): Update. 16013 160142002-08-14 Gabriel Dos Reis <gdr@nerim.net> 16015 16016 * c-pretty-print.h: Guard against multiple inclusion. 16017 Robustify macros. 16018 (pp_c_attributes): Declare. 16019 * c-pretty-print.c (pp_c_attributes): New function. 16020 160212002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16022 16023 * m68k.c (m68k_output_function_prologue, 16024 m68k_output_function_epilogue): Delete versions for DPX2/MOTOROLA 16025 and NEWS/MOTOROLA. 16026 * genattrtab.c: Remove dpx2 comment. 16027 * libgcc2.c (__enable_execute_stack): Delete versions for 16028 NeXT/__MACH__, __convex__, __sysV88__, __pyr__ and 16029 sony_news/SYSTYPE_BSD. 16030 * longlong.h: Delete code for __a29k__, _AM29K, __clipper__, 16031 __gmicro__, __i860__, __NeXT__ and __pyr__. 16032 * rtl.h: Remove convex comment. 16033 * varasm.c: Likewise. 16034 160352002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16036 16037 * c-opts.c (lang_flags): Const-ify. 16038 * ra-build.c (undef_table): Likewise. 16039 * ra.c (eliminables): Likewise. 16040 160412002-08-14 Gabriel Dos Reis <gdr@nerim.net> 16042 16043 * tree.h: Guard against multiple inclusion. 16044 160452002-08-14 Hans-Peter Nilsson <hp@bitrange.com> 16046 16047 * reload1.c (reload_cse_simplify): Before checking 16048 REG_FUNCTION_VALUE_P, check REG_P. 16049 160502002-08-13 Geoffrey Keating <geoffk@redhat.com> 16051 16052 * Makefile.in (attribs.o): Remove $(OBSTACK_H) dependency. 16053 160542002-08-13 Neil Booth <neil@daikokuya.co.uk> 16055 16056 * c-opts.c (c_common_init_options): Extra braces needed. 16057 160582002-08-13 J"orn Rennecke <joern.rennecke@superh.com> 16059 16060 * sh.c (sh_init_builtins): Add PARAMS to declaration. 16061 (sh_media_init_builtins, sh_expand_builtin): Likewise. 16062 (sh_expand_unop_v2sf): Use PARAMS for variable declaration. 16063 (sh_expand_binop_v2sf): Likewise. 16064 * sh-protos.h (sh_expand_unop_v2sf): Add PARAMS to declaration. 16065 (sh_expand_binop_v2sf, sh_cfun_interrupt_handler_p): Likewise. 16066 (sh_initialize_trampoline): Likewise. 16067 160682002-08-13 Ulrich Weigand <uweigand@de.ibm.com> 16069 16070 * s390-modes.def [CCL1, CCL2, CCT1, CCT2, CCT3, CCUR, CCSR]: Declare 16071 new condition code modes. 16072 s390.c (s390_match_ccmode_set): Handle those new CC modes. 16073 (s390_select_ccmode): Likewise. 16074 (s390_branch_condition_mask): Likewise. 16075 16076 * s390-protos.h (s390_tm_ccmode): Declare. 16077 s390.c (s390_tm_ccmode): New function. 16078 (s390_match_ccmode): Allow VOIDmode as REQ_MODE. 16079 16080 * s390.md ("*cmpdi_tm2"): Rename to "*tmdi_ext". 16081 ("*cmpsi_tm2"): Rename to "*tmsi_ext". 16082 ("*cmpqi_tm2"): Rename to "*tmqi_ext". 16083 16084 ("*cmpdi_tm_reg", "*cmpdi_tm_mem", "*cmpsi_tm_reg", "*cmpsi_tm_mem", 16085 "*cmphi_tm_sub","*cmphi_cct_0", "*cmpqi_tm", "*cmpqi_tm_sub", 16086 "*cmpqi_cct_0", "*tm_0"): Remove, replace by ... 16087 ("*tmdi_reg", "*tmsi_reg", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", 16088 "*tmqi_mem", "*tmhi_full", "*tmqi_full"): ... these new patterns. 16089 16090 ("*ltgr", "*cmpdi_ccs_0_64", "*cmpdi_ccs_0_31", "*ltr", "*icm15", 16091 "*icm15_cconly", "*cmpsi_ccs_0", "*icm3", "*cmphi_ccs_0", "*icm1", 16092 "*cmpqi_ccs_0"): Remove, replace by ... 16093 ("*tstdi_sign", "*tstdi", "*tstdi_cconly", "*tstdi_cconly_31", 16094 "*tstsi", "*tstsi_cconly", "*tstsi_cconly2", "*tsthi", "*tsthi_cconly", 16095 "*tstqi", "*tstqi_cconly"): ... these new patterns. 16096 16097 ("*cmpsidi_ccs"): Remove, replace by ... 16098 ("*cmpsi_ccs_sign"): ... this new pattern. 16099 ("*cmpdi_ccs_sign", "*cmpdi_ccu_zero"): New patterns. 16100 16101 ("*cmpqi_ccu_0", "*cmpqi_ccu_immed"): Remove, replace by ... 16102 ("*cli"): ... this new pattern. 16103 16104 ("*adddi3_sign", "*adddi3_zero_cc", "*adddi3_zero_cconly", 16105 "*adddi3_zero", "*adddi3_cc", "*adddi3_cconly", "*adddi3_cconly2"): 16106 New patterns. 16107 ("adddi3_64"): Rename to "*adddi3_64". 16108 ("adddi3_31"): Replace by insn and splitter "*adddi3_31". 16109 ("adddi3"): Adapt expander. 16110 16111 ("*addsi3_cc"): Allow "general_operand" for operand 2. 16112 ("*addsi3_carry1_cc", "*addsi3_carry1_cconly", 16113 "*addsi3_carry2_cc", "*addsi3_carry2_cconly"): New patterns. 16114 16115 ("addhi3", "addqi3"): Remove, replace by ... 16116 ("*addsi3_sign", "*addsi3_sub"): ... these new patterns. 16117 16118 ("*subdi3_sign", "*subdi3_zero_cc", "*subdi3_zero_cconly", 16119 "*subdi3_zero", "*subdi3_cc", "*subdi3_cconly"): New patterns. 16120 ("subdi3"): Replace by insn and splitter "*subdi3_31". 16121 ("subdi3"): New expander. 16122 16123 ("*subsi3_borrow_cc", "*subsi3_borrow_cconly"): New patterns. 16124 16125 ("subhi3", "subqi3"): Remove, replace by ... 16126 ("*subsi3_sign", "*subsi3_sub"): ... these new patterns. 16127 16128 ("*muldi3_sign"): New pattern. 16129 ("muldi3"): Do not clobber CC. 16130 ("mulsi3"): Likewise. 16131 ("mulsi_6432"): Likewise. 16132 161332002-08-13 Denis Chertykov <denisc@overta.ru> 16134 16135 * config/avr/avr.md: Call CC_STATUS_INIT in all peepnoles 16136 which can change CC0. 16137 161382002-08-13 J"orn Rennecke <joern.rennecke@superh.com> 16139 16140 * gcse.c (adjust_libcall_notes): New function. 16141 (do_local_cprop): Use it. Add fourth parameter. Changed caller. 16142 161432002-08-13 Nathan Sidwell <nathan@codesourcery.com> 16144 16145 * libgcc2.c (L_bb): Remove unneeded #includes. 16146 (__global_counters, __gthreads_active): Remove unused globals. 16147 (__bb_exit_func): Merge counts into files rather than appending. 16148 * Makefile.in (INTERNAL_CFLAGS): Move COVERAGE_FLAGS from here ... 16149 (ALL_CFLAGS): ... to here. 16150 161512002-08-13 Denis Chertykov <denisc@overta.ru> 16152 16153 * config/ip2k/ip2k.c (commands_in_file): Variable removed. 16154 (function_epilogue): Don't calculate function size. 16155 (ip2k_set_compare): Don't use lookup_const_double. 16156 (asm_file_start): Initialization of commands_in_file removed. 16157 (asm_file_end): Output of commands_in_file removed. 16158 16159 * config/ip2k/ip2k.c (CPP_PREDEFINES): Remove definition of 16160 __INT_MAX__. 16161 161622002-08-13 Neil Booth <neil@daikokuya.co.uk> 16163 16164 * c-opts.c (c_common_init_options): Check option array is 16165 sorted if checking enabled. 16166 161672002-08-13 Gabriel Dos Reis <gdr@nerim.net> 16168 16169 * c-pretty-print.c: #include "c-tree.h". 16170 (pp_c_simple_type_specifier): Tweak. 16171 (pp_c_storage_class_specifier): New. 16172 (pp_c_function_specifier): Likewise. 16173 (pp_c_declaration_specifiers): Likewise. 16174 (pp_c_init_declarator): Likewise. 16175 (pp_c_declaration): Likewise. 16176 (pp_c_direct_declarator): Stub. 16177 (pp_c_declarator): Likewise. 16178 (pp_c_parameter_declaration): Likewise. 16179 161802002-08-13 Neil Booth <neil@daikokuya.co.uk> 16181 16182 * c-opts.c (deps_seen, deps_file, deferred_count, deferred_size, 16183 handle_deferred_opts, sanitize_cpp_opts, defer_opt, 16184 struct deferred_opt): New. 16185 (COMMAND_LINE_OPTIONS): Add -M*. 16186 (missing_arg): Update. 16187 (c_common_decode_option): Handle -M*. 16188 (c_common_post_options): Handle -M*. Use sanitize_cpp_opts; 16189 don't call cpp_post_options. 16190 (c_common_finish, check_deps_environment_vars): Update. 16191 * cppfiles.c (stack_include_file, handle_missing_header): Update. 16192 * cpphash.h (CPP_PRINT_DEPS): Remove. 16193 * cppinit.c: Don't include version.h. 16194 (cpp_create_reader): Don't call deps_init. Initialize 16195 warn_long_long. 16196 (cpp_read_main_file): Init deps if necessary. 16197 (cpp_destroy): Conditionally free deps. 16198 (cpp_finish): Update. 16199 (no_tgt): Remove. 16200 (COMMAND_LINE_OPTIONS, cpp_handle_option): Remove -M*. 16201 (cpp_post_options): Rename post_options. 16202 * cpplib.h (struct cpp_options): Remove some dependency options; 16203 move others to a new structure. 16204 (cpp_post_options): Remove. 16205 (cpp_finish): Comment. 16206 * fix-header.c (read_scan_file): Don't call cpp_post_options. 16207 162082002-08-12 Hans-Peter Nilsson <hp@bitrange.com> 16209 16210 * config/mmix/mmix.md (define_constants): Add MMIX_rR_REGNUM. 16211 ("divdi3", "*divdi3_nonknuth", "moddi3", "*moddi3_nonknuth"): Mark 16212 MMIX_rR_REGNUM as clobbered. 16213 * config/mmix/mmix.h (MMIX_REMAINDER_REGNUM): Use MMIX_rR_REGNUM. 16214 162152002-08-12 Gabriel Dos Reis <gdr@nerim.net> 16216 16217 * diagnostic.h (output_formatted_scalar): Rename from 16218 output_formatted_integer. 16219 * diagnostic.def: Add DK_DEBUG. 16220 * diagnostic.c (output_decimal): Adjust. 16221 (output_long_decimal): Likewise. 16222 (output_unsigned_decimal): Likewise. 16223 (output_octal): Likewise. 16224 (output_long_octal): Likewise. 16225 (output_hexadecimal): Likewise. 16226 (output_long_hexadecimal): Likewise. 16227 * c-pretty-print.c (pp_c_type_specifier): New function. 16228 (pp_c_specifier_qualifier_list): Likewise. 16229 (pp_c_abstract_declarator): Likewise. 16230 (pp_c_char): Replace pp_format_integer with pp_format_scalar. 16231 162322002-08-12 David Edelsohn <edelsohn@gnu.org> 16233 16234 * doc/trouble.texi (Disappointments): Add static constructor and 16235 destructor dependency information for AIX. 16236 162372002-08-12 Neil Booth <neil@daikokuya.co.uk> 16238 16239 * cpphash.h (struct printer): New from cppmain.c. 16240 (cpp_reader): New member. 16241 * cppmain.c (struct printer): Move to cpphash.h. 16242 (options, print): Remove. 16243 (account_for_newlines, print_line, maybe_print_line, 16244 cpp_preprocess_file, setup_callbacks, scan_translation_unit, 16245 scan_translation_unit_trad, cb_line_change, cb_ident, 16246 cb_define, cb_undef, cb_include, cb_file_change, dump_macro, 16247 cb_def_pragma): Make reentrant. 16248 162492002-08-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16250 16251 * real.c (ieee_64): Always define. 16252 (ieee_113): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0. 16253 (dec_h): Not used yet, hide it. 16254 (emdnorm): Mark parameter in ATTRIBUTE_UNUSED. Guard label with 16255 macro controlling use. 16256 (TFbignan, TFlittlenan): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0. 16257 162582002-08-12 Jan Hubicka <jh@suse.cz> 16259 16260 * i386.md (tablejump): Sign extend the operand. 16261 * i386.c (classify_argument): Fix missed case from previous patch. 16262 162632002-08-12 Neil Booth <neil@daikokuya.co.uk> 16264 16265 * c-common.c (STDC_0_IN_SYSTEM_HEADERS, c_common_init): Move 16266 to c-copts.c. 16267 (warn_multichar): Die. 16268 (cb_register_builtins): Export. 16269 * c-common.h (warn_multichar, preprocess_file): Remove. 16270 (cb_register_builtins): New. 16271 * c-lang.c (c_init): Remove. 16272 (LANG_HOOKS_INIT): Use c_objc_common_init. 16273 * c-lex.c (init_c_lex): Don't canonicalize filename. 16274 * c-opts.c (in_fname, STDC_0_IN_SYSTEM_HEADERS): New. 16275 (preprocess_file): Make static. Update for cpplib. 16276 (c_common_decode_option): Remove warn_multichar. Use in_fname. 16277 (c_common_post_options): Set some cpp options here. 16278 (c_common_init): Move from c-common.c. 16279 * cppinit.c (cpp_post_options): Don't canonicalize in_fname. 16280 * cpplib.h (struct cpp_options): Remove in_fname. 16281 (cpp_preprocess_file): Update. 16282 * cppmain.c (cpp_preprocess_file): Update for new prototypes. 16283 162842002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16285 16286 * config.gcc (mips*-*-netbsd*): Include ${tm_file}. 16287 162882002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16289 16290 * i370.h (TARGET_CPU_CPP_BUILTINS): Remove spurious trailing 16291 backslash in comment preceeding macro definition. 16292 * i370/linux.h (TARGET_OS_CPP_BUILTINS): Likewise. 16293 * i370/mvs.h (TARGET_OS_CPP_BUILTINS): Likewise. 16294 * i370/oe.h (TARGET_OS_CPP_BUILTINS): Likewise. 16295 162962002-08-12 Hans-Peter Nilsson <hp@bitrange.com> 16297 16298 * expr.c (store_expr): In condition for checking if value is 16299 generated in TARGET, move call to expr_size last. 16300 163012002-08-11 Neil Booth <neil@daikokuya.co.uk> 16302 16303 * c-common.c (c_common_init): Call preprocess_file instead. 16304 (c_common_finish): Move to c-opts.c. 16305 * c-common.h (preprocess_file): new. 16306 * c-opts.c (out_fname, out_stream, deps_append, preprocess_file, 16307 check_deps_environment_vars, c_common_finish): New. 16308 (c_common_decode_option): Update for out_fname and dependencies. 16309 * cppinit.c (init_dependency_output, output_deps): Remove. 16310 (cpp_destroy): Update prototype. 16311 (cpp_add_dependency_target): New. 16312 (cpp_read_main_file): Don't overlay a buffer. 16313 (cpp_finish): Take a deps output stream and write deps to it. 16314 Return the error count. 16315 (cpp_post_options): Don't canonicalize out_fname, or do anything 16316 with dependencies. 16317 * cpplib.h (struct cpp_options): Remove out_fname and 16318 preprocess_only. 16319 (cpp_add_dependency_target): New. 16320 (cpp_destroy, cpp_finish, cpp_preprocess_file): Update. 16321 * cppmain.c (cpp_preprocess_file): Update prototype. Don't 16322 set preprocess_only. Don't handle the output stream directly. 16323 163242002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16325 16326 * dsp16xx.c (print_operand): Fix format specifier. 16327 * dsp16xx.md: Avoid automatic aggregate initialization. 16328 * frv.h (REG_CLASS_FROM_LETTER): Avoid char as array index. 16329 * h8300.c (emit_a_rotate, h8300_adjust_insn_length): Avoid U 16330 integer constant modifier. 16331 * ip2k.c (ip2k_set_compare): Avoid signed/unsigned warning. 16332 * mmix-protos.h (mmix_use_simple_return): Move outside TREE_CODE 16333 guards. 16334 * sh/netbsd-elf.h (FUNCTION_PROFILER): Fix format specifier. 16335 * v850.c (v850_select_section): Mark parameter with 16336 ATTRIBUTE_UNUSED. 16337 * global.c (global_alloc): Const-ify. 16338 * ra-colorize.c (hardregset_to_string): Fix format specifier. 16339 163402002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16341 16342 * darwin-c.c (darwin_pragma_options): Const-ify. 16343 * darwin.c (machopic_non_lazy_ptr_name, 16344 machopic_validate_stub_or_non_lazy_ptr): Likewise. 16345 (machopic_indirect_data_reference): Wrap variables in macros 16346 controlling their use. 16347 (machopic_finish, update_non_lazy_ptrs, update_stubs): Const-ify. 16348 (machopic_select_section): Use parentheses around && within ||. 16349 * i386/darwin.h (ASM_OUTPUT_ALIGN): Avoid ambiguous-else. 16350 163512002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16352 16353 * ip2k.c (mdr_resequence_xy_yx, mdr_propagate_reg_equivs, 16354 mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref, 16355 ip2k_adjust_stack_ref, mdr_try_move_pushes, mdr_try_propagate_clr, 16356 ip2k_xexp_not_uses_reg_for_mem, mdr_try_propagate_move, 16357 mdr_try_remove_redundant_insns, track_w_reload, 16358 mdr_try_wreg_elim): Make function static to match prototype. 16359 * mmix.c (mmix_target_asm_function_epilogue): Likewise. Mark 16360 parameter with ATTRIBUTE_UNUSED. 16361 163622002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16363 16364 * arc.c (arc_init): Don't use ISO C style function definitions. 16365 * arm.c (count_insns_for_constant, thumb_far_jump_used_p, 16366 arm_get_strip_length, arm_strip_name_encoding): Likewise. 16367 * avr.h (progmem_section): Likewise. 16368 * h8300.c h8300_asm_insn_count): Likewise. 16369 * m32r.c (init_idents): Likewise. 16370 * s390.c (s390_split_branches, s390_chunkify_pool): Likewise. 16371 * sh.c (sh_cfun_interrupt_handler_p): Likewise. 16372 * xtensa.c (xtensa_build_va_list): Likewise. 16373 163742002-08-11 Neil Booth <neil@daikokuya.co.uk> 16375 16376 * c-common.h (enum c_language_kind): Emphasize that clk_c is 0. 16377 * c-opts.c (parse_option): Rename find_opt. 16378 (set_std_c99): New function. 16379 (COMMAND_LINE_OPTIONS): Handle -remap and -o. Remove OPT_std_bad. 16380 (missing_arg): Remove OPT_std_bad. Handle -o. 16381 (c_common_decode_option): Handle input and output file names, 16382 -o and -remap. Clean up -std= handling. 16383 * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_o and OPT_remap. 16384 (cpp_handle_option): Similarly. Don't handle filenames. 16385 163862002-08-11 Jan Hubicka <jh@suse.cz> 16387 16388 * i386.c (classify_argument): Fix computing of field's offsets. 16389 163902002-08-11 Andreas Jaeger <aj@suse.de> 16391 16392 PR target/7531: 16393 * doc/invoke.texi (i386 and x86-64 Options): Document -mcmodel. 16394 163952002-08-10 Ziemowit Laski <zlaski@apple.com> 16396 16397 * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Replace 16398 reference to clk_objective_c with flag_objc. 16399 * config/i386/i386-interix.h (TARGET_OS_CPP_BUILTINS): 16400 Likewise. 16401 * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Likewise. 16402 164032002-08-10 Neil Booth <neil@daikokuya.co.uk> 16404 16405 * c-opts.c (set_std_cxx98, set_std_c89): New. 16406 (COMMAND_LINE_OPTIONS): Move more from cppinit.c. 16407 (c_common_decode_option): Handle new switches from cppinit.c. 16408 Add -std=gnu++98. 16409 * cppinit.c (set_lang): Rename cpp_set_lang. Export. 16410 (no_arg, no_num): Remove. 16411 (COMMAND_LINE_OPTIONS): Move more to c-opts.c. Drop all lang- 16412 switches apart from -lang-objc and lang-asm. 16413 (cpp_handle_option): Similarly. 16414 * cpplib.h (cpp_set_lang): New. 16415 * doc/cppopts.texi, doc/invoke.texi: Document -std=c++98, 16416 -std=gnu++98. 16417 * objc/lang-specs.h: Remove -ansi. 16418 164192002-08-10 Jan Hubicka <jh@suse.cz> 16420 Graham Stott 16421 16422 * cfg.c (redirect_edge_succ_nodup): Avoid overflows due to roundoff 16423 errors. 16424 164252002-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16426 16427 * emit-rtl.c (emit_jump_insn_before, emit_call_insn_before, 16428 emit_jump_insn): Fix uninitialized variable. 16429 * gcov.c (init_line_info): Likewise. 16430 * genautomata.c (transform_3): Add braces around ambiguous 16431 else. 16432 * ifcvt.c (cond_exec_process_insns): Mark parameter with 16433 ATTRIBUTE_UNUSED. 16434 * ra-build.c (parts_to_webs_1): Fix uninitialized variable. 16435 * regrename.c (copyprop_hardreg_forward): Fix uninitialized 16436 variable. 16437 16438 * gengtype.c (write_gc_structure_fields): Avoid signed/unsigned 16439 warnings in output files. 16440 164412002-08-09 Ziemowit Laski <zlaski@apple.com> 16442 16443 * c-common.c (flag_objc): New. 16444 * c-common.h (c_language_kind): Get rid of clk_objective_c 16445 enum value. 16446 (flag_objc): New extern declaration. 16447 * c-decl.c (implicitly_declare): Call objc_check_decl 16448 instead of maybe_objc_check_decl. 16449 (finish_decl): Likewise. 16450 (grokfield): Likewise. 16451 (finish_struct): Likewise. 16452 * c-lang.c (maybe_objc_check_decl): Rename to objc_check_decl. 16453 (maybe_objc_comptypes): Rename to objc_comptypes. 16454 (maybe_building_objc_message_expr): Rename to 16455 objc_message_selector. 16456 * c-lex.c (lex_charconst): Remove uses of clk_objective_c, 16457 replace with flag_objc as needed. 16458 * c-opts.c (c_common_init_options): Likewise. 16459 (c_common_decode_option): Likewise. 16460 * c-parse.in (init_reswords): Likewise. 16461 * c-tree.h (maybe_objc_check_decl): Rename to objc_check_decl. 16462 (maybe_objc_comptypes): Rename to objc_comptypes. 16463 (maybe_building_objc_message_expr): Rename to 16464 objc_message_selector. 16465 * c-typeck.c (comptypes): Call objc_comptypes instead of 16466 maybe_objc_comptypes, and/or objc_message_selector instead of 16467 maybe_building_objc_message_expr. 16468 (comp_target_types): Likewise. 16469 (convert_for_assignment): Likewise. 16470 (warn_for_assignment): Likewise. 16471 * cppinit.c (init_builtins): Set __OBJC__ manifest constant 16472 independently of those for other languages. 16473 * objc/objc-act.c (maybe_objc_comptypes): Delete. 16474 (maybe_objc_check_decl): Delete. 16475 (maybe_building_objc_message_expr): Rename to 16476 objc_message_selector. 16477 * objc/objc-lang.c (objc_init_options): Use clk_c instead of 16478 clk_objective_c; set flag_objc flag. 16479 164802002-08-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com> 16481 16482 * ifcvt.c (find_if_case_2): Test correct basic block for size. 16483 164842002-08-09 Dale Johannesen <dalej@apple.com> 16485 16486 * config/rs6000/rs6000.md: Add sibcall patterns. 16487 * config/rs6000/rs6000.h (FUNCTION_OK_FOR_SIBCALL): Define. 16488 * config/rs6000/rs6000.c (rs6000_ra_ever_killed): 16489 Rewritten to handle sibcalls. 16490 * config/rs6000/rs6000.c (function_ok_for_sibcall): New. 16491 * config/rs6000/rs6000-protos.h (function_ok_for_sibcall): New. 16492 164932002-08-08 Nathan Sidwell <nathan@codesourcery.com> 16494 16495 * profile.c (da_file_name): New static var. 16496 (init_branch_prob): Initialize it. 16497 (end_branch_prob): Remove da file. 16498 16499 * Makefile.in (stage1_build): Pass empty COVERAGE_FLAGS. 16500 * configure.in (coverage_flags): Default to nothing. 16501 * configure: Rebuilt. 16502 165032002-08-09 Neil Booth <neil@daikokuya.co.uk> 16504 16505 * Makefile.in (c-opts.o): Update 16506 * c-opts.c: Include intl.h. 16507 (print_help): Move from cppinit.c. Remove unused options. 16508 (COMMAND_LINE_OPTIONS): Move more from cppinit.c. 16509 (missing_arg): Complain for switches without an argument. 16510 (c_common_decode_option): Reject missing joined arguments. 16511 Handle new switches from cppinit.c. 16512 * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c. 16513 (cpp_handle_option): Similarly. 16514 (print_help): Moved to c-opts.c. 16515 * cpplib.h (struct cpp_options): Remove help_only. 16516 * gcc.c (cpp_unique_options): Remove -$. 16517 * doc/cppopts.texi: Undocument -h. 16518 165192002-08-08 Jakub Jelinek <jakub@redhat.com> 16520 16521 * config/i386/i386.c (legitimate_constant_p): UNSPEC_TP is not 16522 legitimate constant. 16523 (legitimate_pic_operand_p): Neither pic operand. 16524 (legitimate_address_p): But legitimate address. 16525 (get_thread_pointer): Generate MEM/u instead of CONST around 16526 UNSPEC_TP. 16527 (print_operand): Remove printing of UNSPEC_TP. 16528 (print_operand_address): And print it here. 16529 165302002-08-08 Devang Patel <dpatel@apple.com> 16531 16532 * objc/objc-act.c (build_selector_translation_table): Issue warning, 16533 when -Wselector is used,if method for which selector is being 16534 created does not exist. 16535 165362002-08-08 Stephen Clarke <stephen.clarke@superh.com> 16537 16538 * config/sh/sh.c (prepare_move_operands): Only call 16539 target_reg_operand if TARGET_SHMEDIA. 16540 165412002-08-08 Jakub Jelinek <jakub@redhat.com> 16542 16543 * config/rs6000/rs6000.h, config/rs6000/aix.h, 16544 config/rs6000/darwin.h, config/rs6000/linux64.h: Revert last 16545 two patches. 16546 * config/rs6000/sysv4.h: Likewise, remove #undef ADJUST_FIELD_ALIGN. 16547 165482002-08-08 Lars Brinkhoff <lars@nocrew.org> 16549 Richard Henderson <rth@redhat.com> 16550 16551 * emit-rtl.c (gen_rtx_REG): After reload, only return 16552 frame_pointer_rtx or hard_frame_pointer_rtx if frame_pointer_needed. 16553 165542002-08-08 Jakub Jelinek <jakub@redhat.com> 16555 16556 * config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove. 16557 * config/rs6000/rs6000.c (rs6000_field_alignment): Move... 16558 * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the 16559 macro. 16560 165612002-08-08 Adam Nemet <anemet@lnxw.com> 16562 16563 * config/arm/arm.c (thumb_unexpanded_epilogue): Stack the PIC 16564 register. 16565 (thumb_expand_prologue): Likewise. 16566 (thumb_output_function_prologue): Likewise. 16567 * config/arm/arm.h (THUMB_INITIAL_ELIMINATION_OFFSET): Account for 16568 the additional push of the PIC register. 16569 165702002-08-08 Nathan Sidwell <nathan@codesourcery.com> 16571 16572 * configure.in (enable_coverage): New enable switch. 16573 * configure: Rebuilt. 16574 * Makefile.in (COVERAGE_FLAGS, coverageexts): New variables. 16575 (INTERNAL_CFLAGS): Append COVERAGE_FLAGS. 16576 (ALL_FLAGS): Reorder so INTERNAL_CFLAGS comes after CFLAGS. 16577 (mostlyclean): Remove coverage files. 16578 * doc/install.texi: Document enable_coverage. 16579 16580 * cp/Make-lang.in (c++.mostlyclean): Remove coverage files. 16581 * ada/Make-lang.in (ada.mostlyclean): Remove coverage files. 16582 * f/Make-lang.in (f.mostlyclean): Remove coverage files. 16583 * java/Make-lang.in (java.mostlyclean): Remove coverage files. 16584 * objc/Make-lang.in (objc.mostlyclean): Remove coverage files. 16585 * treelang/Make-lang.in (treelang.mostlyclean): Remove coverage 16586 files. 16587 165882002-08-08 Neil Booth <neil@daikokuya.co.uk> 16589 16590 * c-opts.c (cpp_opts): New. 16591 (COMMAND_LINE_OPTIONS): Add switches from cppinit.c. 16592 (c_common_decode_options): Handle cpplib switches. 16593 (c_common_init_options): Set cpp_opts. 16594 * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c. 16595 (cpp_handle_option): Similarly. 16596 165972002-08-08 David Edelsohn <edelsohn@gnu.org> 16598 16599 * config/rs6000/aix.h (TARGET_ALTIVEC): Define to 0. 16600 (TARGET_ALTIVEC_ABI): Same. 16601 (TARGET_ALTIVEC_VRSAVE): Same. 16602 16603 * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Check 16604 icode not CODE_FOR_nothing. Change switch to if. 16605 166062002-08-08 Alan Modra <amodra@bigpond.net.au> 16607 16608 * config/rs6000/rs6000.h (ASM_CPU_SPEC): Pass -mpower4 when cpu=power4. 16609 166102002-08-08 Jakub Jelinek <jakub@redhat.com> 16611 16612 * stor-layout.c (place_union_field): For bitfields if 16613 PCC_BITFIELD_TYPE_MATTERS and TYPE_USER_ALIGN, set record's 16614 TYPE_USER_ALIGN. 16615 166162002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca> 16617 16618 * pa.c (struct deferred_plabel): Constify name field. 16619 166202002-08-07 Neil Booth <neil@daikokuya.co.uk> 16621 16622 * cppmacro.c (_cpp_builtin_macro_text): Remove unused variable. 16623 166242002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca> 16625 16626 * configure.in (PREFIX_INCLUDE_DIR): Don't define if prefix and 16627 local_prefix are the same. 16628 * configure: Rebuilt. 16629 166302002-08-07 Jakub Jelinek <jakub@redhat.com> 16631 Richard Henderson <rth@redhat.com> 16632 16633 * stor-layout.c (place_union_field): Apply ADJUST_FIELD_ALIGN 16634 to type_align when PCC_BITFIELD_TYPE_MATTERS. Only apply 16635 ADJUST_FIELD_ALIGN if not DECL_USER_ALIGN resp. TYPE_USER_ALIGN. 16636 (place_field): Likewise. 16637 * config/i386/i386.c (x86_field_alignment): Don't check 16638 DECL_USER_ALIGN here. 16639 * config/rs6000/rs6000.c (rs6000_field_alignment): New. 16640 * config/rs6000/rs6000-protos.h (rs6000_field_alignment): New 16641 prototype. 16642 * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): Define. 16643 * config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Remove. 16644 * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Remove. 16645 * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Remove. 16646 * config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Remove. 16647 * doc/tm.texi (ADJUST_FIELD_ALIGN): Update description. 16648 166492002-08-07 Neil Booth <neil@daikokuya.co.uk> 16650 16651 * Makefile.in (c-opts.o, c-common.o, C_AND_OBJC_OBJS): Update. 16652 * c-common.c: Don't include tree-inline.h. 16653 (c_common_init_options, c_common_post_options): Move to c-opts.c. 16654 * c-common.h (c_common_decode_option): New. 16655 * c-decl.c (c_decode_option): Remove. 16656 * c-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option. 16657 * c-opts.c: New file. 16658 * c-tree.h (c_decode_option): Remove. 16659 * doc/passes.texi: Update. 16660 * objc/objc-act.c (objc_decode_option): Remove. 16661 * objc/objc-act.h (objc_decode_option): Remove. 16662 * objc/ojbc-lang.c (LANG_HOOKS_DECODE_OPTION): Use 16663 c_common_decode_option. 16664 166652002-08-07 Chris Demetriou <cgd@broadcom.com> 16666 16667 * config/mips/mips.md (sunlt_sf, suneq_sf, sunle_sf): Remove 16668 dependency on TARGET_DOUBLE_FLOAT. 16669 166702002-08-07 Stephen Clarke <stephen.clarke@superh.com> 16671 16672 * config/sh/lib1funcs.asm (GCC_shcompact_incoming_args): Don't 16673 overwrite callee-save registers. Fix comment. 16674 166752002-08-06 Chris Demetriou <cgd@broadcom.com> 16676 16677 * config/mips/mips.c (override_options): Set MASK_BRANCHLIKELY 16678 in target_flags based on ISA, if it was not set on the command 16679 line. Warn if MASK_BRANCHLIKLEY is set but the ISA does not 16680 support Branch Likely instructions. 16681 * config/mips/mips.h (MASK_BRANCHLIKLEY): New macro. 16682 (TARGET_BRANCHLIKELY): Likewise. 16683 (TARGET_SWITCHES): Add -mbranch-likely and -mno-branch-likely. 16684 (GENERATE_BRANCHLIKELY): Use TARGET_BRANCHLIKELY rather than 16685 ISA_HAS_BRANCHLIKELY. 16686 (ISA_HAS_BRANCHLIKELY): Do not include MIPS16 check. 16687 * doc/invoke.texi: Document new MIPS -mbranch-likely and 16688 -mno-branch-likely options. 16689 166902002-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 16691 16692 * ip2k.c (ip2k_set_compare): Add missing iteration variable. 16693 16694 * Makefile.in (dummy-conditions.o): Depend on $(HCONFIG_H) not 16695 $(GCONFIG_H). 16696 166972002-08-06 Aldy Hernandez <aldyh@redhat.com> 16698 16699 * c-decl.c (duplicate_decls): Error out for incompatible TLS 16700 declarations. 16701 16702 * testsuite/gcc.dg/tls/diag-3.c: New. 16703 167042002-08-06 Dale Johannesen <dalej@apple.com> 16705 16706 * c-common.c (fname_decl): Use line number 0 for 16707 __func__, to avoid confusing debuggers. 16708 167092002-08-06 Nathan Sidwell <nathan@codesourcery.com> 16710 16711 * gcov.c: Tidy. 16712 (struct line_info, struct coverage): New structures. 16713 (gcov_file_name, gcov_file): Remove globals. 16714 (output_data): Take source file parameter. Fix memory leak. Break 16715 up into ... 16716 (init_line_info, output_line_info, make_gcov_file_name, 16717 accumulate_branch_counts): ... here. 16718 (calculate_branch_probs, function_summary): Adjust. 16719 (main): Adjust. 16720 (function_*): Remove global variables. 16721 167222002-08-06 Neil Booth <neil@daikokuya.co.uk> 16723 16724 * dwarf2out.c: Remove unused macros. 16725 167262002-08-06 Neil Booth <neil@daikokuya.co.uk> 16727 16728 * function.c (TRAMPOLINE_ALIGNMENT): Always defined. 16729 167302002-08-06 Neil Booth <neil@daikokuya.co.uk> 16731 16732 * cppinit.c (struct lang_flags): Rename trigraphs std. 16733 (set_lang): Update. 16734 * cpplib.h (struct cpp_options): New member std. 16735 * cppmacro.c (_cpp_builtin_macro_text): Use std. 16736 (collect_args): Flag whether to swallow a possible future 16737 comma pasted with varargs. 16738 (replace_args): Use this flag. 16739 * doc/cpp.texi: Update varargs extension documentation. 16740 167412002-08-06 Jakub Jelinek <jakub@redhat.com> 16742 16743 * config/i386/mmintrin.h (__m64): Make the type 64-bit aligned. 16744 167452002-08-06 Jakub Jelinek <jakub@redhat.com> 16746 16747 * config/i386/i386.c (x86_field_alignment): Apply min for all MODE_INT 16748 and MODE_CLASS_INT modes. 16749 167502002-08-06 Jakub Jelinek <jakub@redhat.com> 16751 16752 * config.gcc (*-*-linux*): Default to --enable-threads=posix if no 16753 --{enable,disable}-threads is given to configure. 16754 (alpha*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux*, 16755 x86_64-*-linux*, ia64*-*-linux*, m68k-*-linux*, mips*-*-linux*, 16756 powerpc-*-linux-gnualtivec*, powerpc-*-linux*, s390-*-linux*, 16757 s390x-*-linux*, sh-*-linux*, sparc-*-linux*, sparc64-*-linux*): 16758 Remove thread_file setting here. 16759 167602002-08-06 David Edelsohn <edelsohn@gnu.org> 16761 16762 * doc/install.texi (Binaries): Update Bull Freeware URL. 16763 167642002-08-06 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> 16765 16766 * doc/gcc.texi (Top): Rename Index to Keyword Index. 16767 167682002-08-05 Nathan Sidwell <nathan@codesourcery.com> 16769 16770 * gcov.c (output_data): Round to % to nearest, tweak formatting. 16771 167722002-08-05 Jakub Jelinek <jakub@redhat.com> 16773 16774 * fold-const.c (associate_trees): Only optimize NEGATE_EXPR in one 16775 of the operands into MINUS_EXPR if code is PLUS_EXPR. 16776 167772002-08-05 Douglas B Rupp <rupp@gnat.com> 16778 16779 * config.gcc (i[34567]86-*-interix*): Replace interix.o with winnt.o 16780 * config/i386/i386-interix.h (TARGET_NOP_FUN_DLLIMPORT, 16781 drectve_section): Define. 16782 * config/i386/t-interix: Replace interix.o rule with winnt.o. 16783 * config/i386/interix.c: Remove. 16784 167852002-08-05 Geoffrey Keating <geoffk@redhat.com> 16786 16787 * attribs.c: Don't include obstack.h. 16788 * builtins.c: Likewise. 16789 * cfganal.c: Likewise. 16790 * cfgbuild.c: Likewise. 16791 * cfgcleanup.c: Likewise. 16792 * emit-rtl.c: Likewise. 16793 * loop.c: Likewise. 16794 * stmt.c: Likewise. 16795 16796 * Makefile.in (s-gtype): Re-add dependency on $(GTFILES). 16797 167982002-08-05 Gabriel Dos Reis <gdr@nerim.net> 16799 16800 * doc/c-tree.texi (Expression trees): Document VA_ARG_EXPR 16801 168022002-08-04 Chris Demetriou <cgd@broadcom.com> 16803 16804 * doc/invoke.texi: Remove duplicated paragraph describing 16805 TARGET_SWITCHES. 16806 168072002-08-04 Geoffrey Keating <geoffk@redhat.com> 16808 16809 * Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H). 16810 * collect2.h (permanent_obstack): Delete declaration. 16811 * collect2.c (permanent_obstack): Delete definition. 16812 (main): Don't initialize permanent_obstack. Use xstrdup instead. 16813 * expr.c: Don't include obstack.h. 16814 (permanent_obstack): Delete declaration. 16815 * function.c: Don't include obstack.h. 16816 (permanent_obstack): Delete declaration. 16817 * integrate.c: Don't include obstack.h. 16818 (function_maybepermanent_obstack): Delete declaration. 16819 * print-tree.c (debug_tree): Use x*alloc not permalloc. 16820 * sdbout.c (gen_fake_label): Use x*alloc not permalloc. 16821 * tlink.c (pfgets): Use xstrdup not permanent_obstack. 16822 * toplev.c (lang_independent_init): Rename init_obstacks to init_ttree. 16823 * tree.h: Rename init_obstacks to init_ttree. Remove declarations 16824 of permalloc, expralloc, perm_calloc. 16825 * tree.c (permanent_obstack): Delete definition. 16826 (init_ttree): Rename from init_obstacks. 16827 (permalloc): Delete. 16828 (perm_calloc): Delete. 16829 (dump_tree_statistics): Don't print information about 16830 permanent_obstack. 16831 * varasm.c (assemble_start_function): Use xstrdup instead of 16832 permalloc/strcpy. 16833 (assemble_variable): Likewise. 16834 * config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of 16835 permalloc. 16836 (unicosmk_add_extern): Likewise. 16837 * config/c4x/c4x.c (c4x_external_ref): Likewise. 16838 (c4x_global_label): Likewise. 16839 * config/frv/frv.c (frv_encode_section_info): Likewise. 16840 * config/i386/winnt.c (i386_pe_record_external_function): Likewise. 16841 (i386_pe_record_exported_symbol): Likewise. 16842 * config/mips/mips.c (mips_output_external): Likewise. 16843 (mips_output_external_libcall): Likewise. 16844 * config/pa/pa.c: (permanent_obstack): Delete declaration. 16845 (output_call): Use ggc_strdup instead of allocating on 16846 permanent_obstack. 16847 * config/romp/romp.c: Include ggc.h. 16848 (get_symref): Don't declare permanent_obstack, use ggc_strdup 16849 intead of permanent_obstack. 16850 * config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat 16851 instead of permalloc. 16852 * config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc 16853 instead of permalloc 16854 * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat 16855 instead of permalloc. 16856 * config/vax/vax.c (vms_check_external): Use xmalloc instead of 16857 permalloc. 16858 168592002-08-04 Bernd Schmidt <bernds@redhat.com> 16860 16861 Contribute a port developed primarily by Michael Meissner, 16862 Catherine Moore, and Richard Sandiford <rsandifo@redhat.com>. 16863 * config.gcc: Add frv-elf target. 16864 * config/frv/cmovd.c: New file. 16865 * config/frv/cmovh.c: New file. 16866 * config/frv/cmovw.c: New file. 16867 * config/frv/frv-abi.h: New file. 16868 * config/frv/frv-asm.h: New file. 16869 * config/frv/frv-modes.def: New file. 16870 * config/frv/frv-protos.h: New file. 16871 * config/frv/frv.c: New file. 16872 * config/frv/frv.h: New file. 16873 * config/frv/frv.md: New file. 16874 * config/frv/frvbegin.c: New file. 16875 * config/frv/frvend.c: New file. 16876 * config/frv/lib1funcs.asm: New file. 16877 * config/frv/media.h: New file. 16878 * config/frv/modi.c: New file. 16879 * config/frv/t-frv: New file. 16880 * config/frv/uitod.c: New file. 16881 * config/frv/uitof.c: New file. 16882 * config/frv/ulltod.c: New file. 16883 * config/frv/ulltof.c: New file. 16884 * config/frv/umodi.c: New file. 16885 * config/frv/xm-frv.h: New file. 16886 16887 * config/frv/media.h: Removed again. 16888 168892002-08-04 Nathan Sidwell <nathan@codesourcery.com> 16890 16891 * gcov.c (bb_file_time): New static variable. 16892 (object_directory): May also be object file. 16893 (preserve_paths): New static variable. 16894 (print_usage): Adjust. 16895 (options): Adjust. 16896 (process_args): Adjust. 16897 (open_files): Simplify. Cope when OBJECT_DIRECTORY is an object 16898 file. Find modification date on bb file. 16899 (read_profile): Don't rewind a NULL file. 16900 (format_hwint): New static function. 16901 (function_summary): Use format_hwint. 16902 (output_data): SOURCE_FILE_NAME is never relative to 16903 OBJECT_DIRECTORY. Use format_hwint. Adjust gcov file name 16904 mangling. Adjust output format to make it more machine readable. 16905 * doc/gcov.texi: Document & clarify semantics. 16906 169072002-08-04 Joseph S. Myers <jsm@polyomino.org.uk> 16908 16909 * doc/include/gcc-common.texi (version-GCC): Increase to 3.3. 16910 169112002-08-04 Nathan Sidwell <nathan@codesourcery.com> 16912 16913 * gcc.c (cc1_options): Pass output file as auxbase when 16914 appropriate. 16915 * profile.c (init_branch_prob): FILENAME has already had ending 16916 stripped. 16917 * final.c (end_final): Likewise. 16918 * toplev.c (aux_base_name): New global. 16919 (compile_file): Pass aux_base_name to init init_branch_prob and 16920 end_final. 16921 (independent_decode_option, case 'a'): New auxinfo options. 16922 (case 'd'): Protect against mising basename. 16923 (do_compile): Initialize aux_base_name. 16924 * toplev.h (aux_base_name): New global. 16925 * doc/invoke.texi: Adjust documentation. 16926 169272002-08-04 Nathan Sidwell <nathan@codesourcery.com> 16928 16929 * config/i386/i386.c (x86_field_alignment): Remove duplicate test 16930 of TARGET_ALIGN_DOUBLE. 16931 169322002-08-04 Gabriel Dos Reis <gdr@nerim.net> 16933 16934 * diagnostic.c (inform): New function. 16935 * diagnostic.h (inform): Declare. 16936 169372002-08-03 David Edelsohn <edelsohn@gnu.org> 16938 16939 * config/rs6000/rs6000.md (movsi_internal1): Add nop mnemonic. 16940 (movhi_internal): Same. 16941 (movqi_internal): Same. 16942 (movdi_internal64): Same. 16943 16944 * config/rs6000/t-ppccomm (MULTILIB_MATCHES_FLOAT): Add mcpu=405. 16945 16946 * config/rs6000/xcoff.h (SKIP_ASM_OP): Define. 16947 (ASM_OUTPUT_SKIP): Use it. SIZE unsigned. 16948 (COMMON_ASM_OP): Define. 16949 (ASM_OUTPUT_ALIGNED_COMMON): Use it. SIZE unsigned. 16950 Use ALIGN parameter. 16951 (LOCAL_COMMON_ASM_OP): Define. 16952 (ASM_OUTPUT_LOCAL): Use it. SIZE unsigned. 16953 169542002-08-03 Roger Sayle <roger@eyesopen.com> 16955 16956 * builtins.def: Define new builtin functions exp, expf, expl, 16957 log, logf and logl (and their __builtin_* variants). 16958 * optabs.h (enum optab_index): Add new OTI_exp and OTI_log. 16959 Define exp_optab and log_optab. 16960 * optabs.c (init_optans): Initialize exp_optab and log_optab. 16961 * genopinit.c (optabs): Implement exp_optab and log_optab 16962 using exp?f2 and log?f2 patterns. 16963 * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP* 16964 and BUILT_IN_LOG* using exp_optab and log_optab respectively. 16965 (expand_builtin): Ignore the new builtins (and all cos and 16966 sin variants) when not optimizing. Expand new builtins via 16967 expand_builtin_mathfn when flag_unsafe_math_optimizations. 16968 16969 * doc/extend.texi: Document new exp and log builtins. 16970 * doc/md.texi: Document new exp?f2 and log?f2 patterns 16971 (and previously undocumented cos?f2 and sin?f2 patterns). 16972 169732002-08-03 Jason Merrill <jason@redhat.com> 16974 16975 * explow.c (int_expr_size): New fn. 16976 * expr.c (expand_expr) [CONSTRUCTOR]: Use it. 16977 * expr.h: Declare it. 16978 169792002-08-02 Krister Walfridsson <cato@df.lth.se> 16980 16981 * Makefile.in (gengtype-lex.o, gengtype-yacc.o): Add path to 16982 gengtype-* dependencies. 16983 169842002-08-02 Eric Christopher <echristo@redhat.com> 16985 16986 * config.gcc (mips*-*-linux*): Fix ordering of tm_file. 16987 * config/mips/mips.h (READONLY_DATA_SECTION_ASM_OP): Change 16988 #ifndef to #undef. 16989 (TARGET_MEM_FUNCTIONS): Define instead of define to 1. 16990 169912002-08-02 David Edelsohn <edelsohn@gnu.org> 16992 16993 PR optimize/7067 16994 * config/rs6000/rs6000.h (RTX_COSTS): Artificially make MULT 16995 small if optimizing for size. 16996 169972002-08-02 Daniel Jacobowitz <drow@mvista.com> 16998 16999 * configure.in (FORBUILD): Use $build_alias. 17000 * configure: Regenerated. 17001 170022002-08-02 Richard Sandiford <rsandifo@redhat.com> 17003 17004 * config.gcc: Don't include mips/abi64.h in $tm_file. 17005 * hard-reg-set.h (call_really_used_regs): Declare. 17006 * config/mips/abi64.h: Remove file. 17007 * config/mips/linux.h, 17008 * config/mips/iris6.h: Don't include it. 17009 * config/mips/mips-protos.h (mips_conditional_register_usage): Declare. 17010 * config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Use it. 17011 (REG_PARM_STACK_SPACE, STACK_BOUNDARY, STRICT_ARGUMENT_NAMING, 17012 FUNCTION_ARG_PASS_BY_REFERENCE, FUNCTION_ARG_PADDING, 17013 FUNCTION_ARG_CALLEE_COPIES, MUST_PASS_IN_STACK, MIPS_STACK_ALIGN): 17014 Bring across definitions from abi64.h. 17015 (GP_ARG_LAST, FP_ARG_LAST): Use MAX_ARGS_IN_REGISTERS. 17016 (BIGGEST_MAX_ARGS_IN_REGISTERS): New. 17017 (struct mips_args): Use it. 17018 * config/mips/mips.c (mips_conditional_register_usage): Define. 17019 170202002-08-02 Jason Merrill <jason@redhat.com> 17021 17022 * langhooks-def.h (LANG_HOOKS_EXPR_SIZE): New macro. 17023 * langhooks.c (lhd_expr_size): Define default. 17024 * langhooks.h (struct lang_hooks): Add expr_size. 17025 * explow.c (expr_size): Call it. 17026 * expr.c (store_expr): Don't copy an expression of size zero. 17027 (expand_expr) [CONSTRUCTOR]: Use expr_size to calculate how much 17028 to store. 17029 * Makefile.in (builtins.o): Depend on langhooks.h. 17030 170312002-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17032 17033 * Makefile.in (ra-debug.o): Depend on $(TM_P_H). 17034 * ra-debug.c: Include "tm_p.h". 17035 * ra-rewrite.c (is_partly_live_1): Change return type to bool. 17036 170372002-08-02 Toon Moene <toon@moene.indiv.nluug.nl> 17038 17039 * simplify-rtx.c (simplify_binary_operation): x * 1 is allowed 17040 when not honoring signalling NaNs. 17041 (simplify_ternary_operation): a == b has a definite value 17042 when not honoring NaNs. 17043 170442002-08-02 Jason Merrill <jason@redhat.com> 17045 17046 * gdbinit.in (pct): New macro. 17047 170482002-08-01 Stan Shebs <shebs@apple.com> 17049 Andreas Tobler <toa@pop.agri.ch> 17050 17051 * ginclude/stddef.h (_BSD_SIZE_T_DEFINED_): Define if not defined, 17052 plays nice with Darwin headers. 17053 (_BSD_RUNE_T_DEFINED_): Likewise. 17054 170552002-08-01 Zack Weinberg <zack@codesourcery.com> 17056 17057 * c-common.c (c_common_init): -Wtraditional also implies -Wlong-long. 17058 * cppinit.c (cpp_post_options): Likewise. 17059 17060 * cppexp.c (cpp_classify_number): Suppress -Wtraditional 17061 warning about 'LL' suffix (but not 'ULL' etc) when 17062 -Wno-long-long is in effect. 17063 17064 * cppmacro.c (_cpp_builtin_macro_text) [BT_TIME, BT_DATE]: 17065 Check for failing time()/localtime(), issue a warning, and 17066 make __TIME__ and __DATE__ expand to fallback strings. 17067 17068 * doc/cpp.texi, doc/extend.texi: Document behavior of __DATE__ 17069 and __TIME__ when the date and time cannot be determined. 17070 170712002-08-02 Alan Modra <amodra@bigpond.net.au> 17072 17073 * config/rs6000/rs6000.c (output_cbranch): Hint differently for power4. 17074 170752002-08-01 Daniel Jacobowitz <drow@mvista.com> 17076 17077 * Makefile.in ($(BUILD_PREFIX_1)ggc-none.o): Use $(GGC_H). 17078 170792002-08-01 Chris Demetriou <cgd@broadcom.com> 17080 17081 * config.gcc (mipsisa64sb1-*-elf*): New configuration. 17082 (mipsisa64sb1el-*-elf*): Likewise. 17083 * config/mips/mips.c (mips_cpu_info_table): Add sb1. 17084 * config/mips/mips.h (processor_type): Add PROCESSOR_SB1. 17085 (TARGET_SB1, TUNE_SB1): New macros. 17086 * doc/invoke.texi: Add sb1 to documentation for MIPS -march and 17087 -mtune flags. 17088 170892002-08-01 David Edelsohn <edelsohn@gnu.org> 17090 17091 * varasm.c (asm_emit_uninitialized): Return false if global BSS 17092 and ASM_EMIT_BSS not supported by target. 17093 (assemble_variable): Do not duplicate uninitialized logic. 17094 Fall through if asm_emit_uninitialized failed. 17095 170962002-08-01 Chris Demetriou <cgd@broadcom.com> 17097 17098 * config/mips/mips.h (BRANCH_LIKELY_P): Remove unused macro. 17099 171002002-08-02 Alan Modra <amodra@bigpond.net.au> 17101 17102 * config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Define. 17103 (DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC): Define. 17104 17105 * config/rs6000/rs6000.c (output_toc): Don't use lshift_double when 17106 HOST_BITS_PER_WIDE_INT == 64. 17107 171082002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17109 17110 * df.c (df_insn_table_realloc): Change parameter to unsigned. 17111 * optabs.c (expand_binop): Make variable unsigned. 17112 * simplify-rtx.c (simplify_subreg): Likewise. 17113 * unroll.c (unroll_loop): Cast to avoid signed/unsigned warnings. 17114 171152002-08-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 17116 17117 * c-common.c (cb_register_builtins): Always define __GXX_ABI_VERSION. 17118 171192002-08-01 Richard Henderson <rth@redhat.com> 17120 17121 * toplev.c (parse_options_and_default_flags): Don't set 17122 flag_reorder_blocks for -Os. 17123 17124 * config/avr/avr.c (avr_optimization_options): Remove. 17125 * config/avr/avr.h (OPTIMIZATION_OPTIONS): Remove. 17126 * config/m68hc11/m68hc11.c (m68hc11_optimization_options): Remove. 17127 * config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Remove. 17128 171292002-08-01 H.J. Lu <hjl@gnu.org> 17130 Richard Henderson <rth@redhat.com> 17131 17132 * output.h (DECL_READONLY_SECTION): Remove. 17133 (decl_readonly_section): Declare. 17134 * varasm.c (decl_readonly_section): New. 17135 (default_section_type_flags, default_select_section): Use it. 17136 * config/arm/pe.c (arm_pe_unique_section): Likewise. 17137 * config/i386/interix.c (i386_pe_unique_section): Likewise. 17138 * config/i386/winnt.c (i386_pe_unique_section): Likewise. 17139 * config/mcore/mcore.c (mcore_unique_section): Likewise. 17140 * config/mips/mips.c (mips_unique_section): Likewise. 17141 171422002-08-01 Richard Henderson <rth@redhat.com> 17143 17144 * integrate.c (copy_rtx_and_substitute): Squash MEM_EXPR when it 17145 refers to a subroutine parameter. 17146 171472002-08-01 Jakub Jelinek <jakub@redhat.com> 17148 17149 * varasm.c (assemble_visibility): Strip name encoding. 17150 171512002-08-01 Ian Dall <ian@sibyl.beware.dropbear.id.au> 17152 17153 * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE): Correct earlier patch. 17154 (RETURN_ADDR_RTX): Cannot determine return address for FRAME > 0 17155 when there is no frame pointer. 17156 (INITIAL_FRAME_POINTER_OFFSET): Count stack space for saved fp 17157 registers properly. 17158 * config/ns32k/__unorddf2.c: New file. 17159 * config/ns32k/__unordsf2.c: New file. 17160 * config/ns32k/t-ns32k: New file. 17161 * config.gcc (ns32k-*-netbsd*): Use it. 17162 171632002-08-01 Aldy Hernandez <aldyh@redhat.com> 17164 17165 * config/rs6000/rs6000.h (SPU_CONST_OFFSET_OK): Change to 0xff. 17166 171672002-08-01 Neil Booth <neil@daikokuya.co.uk> 17168 17169 * c-common.c (__GXX_ABI_VERSION): Correct spelling. 17170 171712002-08-01 Benjamin Kosnik <bkoz@redhat.com> 17172 17173 * c-common.c (cb_register_builtins): Set __GXX_ABI_VERSION__ to 102. 17174 171752002-08-01 Richard Sandiford <rsandifo@redhat.com> 17176 17177 * config/mips/mips.md: Add [!]TARGET_MIPS16 to sgtu conditions. 17178 171792002-08-01 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> 17180 17181 * gcse.c (expr_hash_table_size, n_exprs, set_hash_table_size, 17182 n_sets): Removed. 17183 (expr_hash_table, set_hash_table): Type changed to ... 17184 (struct hash_table): New type. 17185 (hash_scan_insn, hash_scan_set, hash_scan_clobber, hash_scan_call, 17186 insert_expr_in_table, insert_set_in_table, compute_hash_table, 17187 dump_hash_table, lookup_expr, lookup_set, compute_local_properties, 17188 compute_ae_gen, compute_ae_kill): Modified to pass the table explicitly. 17189 (alloc_set_hash_table, alloc_expr_hash_table): Merged to ... 17190 (alloc_hash_table): New. 17191 (free_set_hash_table, free_expr_hash_table): Merged to ... 17192 (free_hash_table): New. 17193 (compute_set_hash_table, compute_expr_hash_table): Merged to ... 17194 (compute_hash_table_work): New. 17195 (classic_gcse, one_classic_gcse_pass, compute_cprop_data, 17196 find_avail_set, one_cprop_pass, find_bypass_set, compute_pre_data, 17197 pre_edge_insert, pre_insert_copies, pre_delete, pre_gcse, 17198 one_pre_gcse_pass, compute_transpout, compute_code_hoist_vbeinout, 17199 hoist_code, one_code_hoisting_pass, 17200 trim_ld_motion_mems): Altered due to changed type of hash tables. 17201 172022002-08-01 Zack Weinberg <zack@codesourcery.com> 17203 17204 * final.c (output_alternate_entry_point): 17205 If ASM_OUTPUT_TYPE_DIRECTIVE is defined, use it. 17206 172072002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17208 17209 * objc/objc-act.c (encode_complete_bitfield): Add prototype and 17210 avoid ISO C style function definition. 17211 17212 * expr.c (expand_assignment): Delete unused variable. 17213 172142002-08-01 Toon Moene <toon@moene.indiv.nluug.nl> 17215 17216 * c-common.c (cb_register_builtins): Set 17217 __FINITE_MATH_ONLY__ to 1 if -ffinite-math-only 17218 is given, and to 0 otherwise. 17219 * combine.c (simplify_if_then_else): HONOR_NANS 17220 implies FLOAT_MODE_P. 17221 172222002-08-01 Neil Booth <neil@daikokuya.co.uk> 17223 17224 * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_dollar. 17225 (cpp_handle_option): Don't handle it. 17226 (print_help): Update. 17227 * doc/cppopts.texi: Update. 17228 172292002-08-01 Neil Booth <neil@daikokuya.co.uk> 17230 17231 * c-common.c (cb_register_builtins): If C++, define 17232 __EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate. 17233 * gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION. 17234cp: 17235 * lang-specs.h: Simplify in accordance with new code in 17236 c-common.c. 17237 172382002-08-01 Neil Booth <neil@daikokuya.co.uk> 17239 17240 * c-common.c: Define all C/ObjC/C++ warning and flag variables. 17241 * c-common.h: Declare all C/ObjC/C++ warning and flag variables. 17242 * c-decl.c: Move all warning and flag variables to c-common.c. 17243 * c-format.c: Move all warning variables to c-common.c. 17244 * c-tree.h: Move all warning and flag declarations to c-common.h. 17245 * objc/objc-act.c: Move all warning variables to c-common.c. 17246 (flag_warn_protocol): Rename warn_protocol. 17247 172482002-07-31 John David Anglin <dave@hiauly1.hia.nrc.ca> 17249 17250 * pa-linux.h (GLOBAL_ASM_OP): Fix typo. 17251 172522002-07-31 Graham Stott <graham.stott@btinternet.com> 17253 17254 * config/stormy16/stormy16.h (BSS_SECTION_ASM_OP): Add missing 17255 .section prefix. 17256 172572002-07-31 Stan Shebs <shebs@apple.com> 17258 17259 * config.gcc (i[34567]86-*-darwin*): New configuration. 17260 * config/darwin.h (TARGET_ENCODE_SECTION_INFO): Undefine before 17261 defining. 17262 (TARGET_ENCODE_SECTION_INFO): Ditto. 17263 (ASM_PREFERRED_EH_DATA_FORMAT): Ditto. 17264 * config/darwin.c (machopic_indirect_data_reference): Remove 17265 setting of RTX_UNCHANGING_P. 17266 (machopic_legitimize_pic_address): Move RTX_UNCHANGING_P up so as 17267 not to be applied to sums. 17268 * config/i386/t-darwin: New file. 17269 * config/i386/darwin.h: New file. 17270 * config/i386/i386.h (TARGET_MACHO): Add default definition. 17271 * config/i386/i386.md (tablejump): Add TARGET_MACHO case. 17272 * config/i386/i386.c (output_set_got): For Mach-O, output Mach-O 17273 label and not the GOT add. 17274 (constant_address_p): For Mach-O, seeing a CONST is enough. 17275 (legitimate_pic_address_disp_p): Add a Mach-O case. 17276 (legitimate_address_p): Also test machopic_operand_p if Mach-O. 17277 (legitimize_pic_address): Use generic Mach-O code to legitimize. 17278 (output_pic_addr_const): Suppress @PLT if Mach-O, and parens 17279 if outputting a difference. 17280 (ix86_output_addr_diff_elt): Add Mach-O case. 17281 (ix86_expand_move): Similarly. 17282 (ix86_expand_call): Similarly. 17283 (current_machopic_label_num): New global. 17284 (machopic_output_stub): New function. 17285 (ix86_value_regno): New function. 17286 (ix86_function_value): Use it instead of VALUE_REGNO. 17287 (ix86_libcall_value): Ditto. 17288 * config/i386/unix.h (VALUE_REGNO): Remove. 17289 172902002-07-31 Graham Stott <grahas@btinternet.com> 17291 17292 * config/rs6000/rs6000.c(rs6000_hash_constant): Fix 17293 hash for LABEL_REF's. 17294 172952002-07-31 Graham Stott <grahams@btinternet.com> 17296 17297 * config/rs6000/rs6000.c (spe_init_builtins, 17298 altivec_init_builtins, rs6000_common_init_builtins): 17299 Replace ANSI with K&R function def. 17300 173012002-07-31 David Edelsohn <edelsohn@gnu.org> 17302 17303 * rs6000.c (validate_condition_mode): Test flag_finite_math_only 17304 for CCFPmode. 17305 173062002-07-31 Richard Sandiford <rsandifo@redhat.com> 17307 17308 * config/mips/crtn.asm: Don't use __mips16 to determine the 17309 return-address offset. Define RA to a suitable temporary 17310 register for the return address. 17311 173122002-07-31 Richard Sandiford <rsandifo@redhat.com> 17313 17314 * config/mips/mips.md (eh_set_lr_si, eh_set_lr_di): Change 17315 constraints to 'd'. 17316 173172002-07-30 Chris Demetriou <cgd@broadcom.com> 17318 17319 * config/mips/elf.h (STARTFILE_SPEC): Define differently if 17320 default ABI is MEABI. (Undoes incorrect change in Eric Christopher's 17321 patch on 2002-07-29.) 17322 * config/mips/elf64.h (STARTFILE_SPEC): Likewise. 17323 173242002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17325 17326 * alpha.h, arc.h, arm/aout.h, avr.h, cris.h, d30v.h, dsp16xx.h, 17327 fr30.h, h8300.h, i370.h, i386/sco5.h, i386/unix.h, i960.h, ia64.h, 17328 ip2k.h, m32r.h, mcore.h, mips.h, mn10200.h, mn10300.h, ns32k.h, 17329 openbsd.h, pa/pa-linux.h, pdp11.h, romp.h, rs6000/sysv4.h, 17330 s390/linux.h, sh.h, sparc.h, stormy16.h, v850.h, vax.h, xtensa.h: 17331 (ASM_GLOBALIZE_LABEL): Delete. 17332 (GLOBAL_ASM_OP): Define. 17333 17334 * m68hc11.h, m68k.h, m88k.h (ASM_GLOBALIZE_LABEL): Delete. 17335 17336 * defaults.h (ASM_GLOBALIZE_LABEL): Provide a default. 17337 * doc/tm.texi (ASM_GLOBALIZE_LABEL): Update docs. 17338 173392002-07-30 Geoffrey Keating <geoffk@redhat.com> 17340 17341 * doc/extend.texi (Hints implementation): Document that GCC 17342 mostly ignores `register'. 17343 173442002-07-30 Toon Moene <toon@moene.indiv.nluug.nl> 17345 17346 * flags.h: Declare flag_finite_math_only. 17347 Use it in definition of HONOR_NANS and 17348 HONOR_INFINITIES. 17349 * c-common.c (cb_register_builtins): Emit 17350 __FINITE_MATH_ONLY__ when flag_finite_math_only 17351 is set. 17352 * combine.c (simplify_if_then_else): If 17353 flag_finite_math_only is set, a == b has a 17354 definite value. 17355 * toplev.c: Initialize flag_finite_math_only. 17356 (set_flags_fast_math): Set it on -ffast-math. 17357 (flag_fast_math_set_p): Test it. 17358 * doc/invoke.texi: Document -ffinite-math-only. 17359 173602002-07-30 Richard Henderson <rth@redhat.com> 17361 17362 * ifcvt.c (noce_get_alt_condition): Use reg_overlap_mentioned_p. 17363 (noce_process_if_block): Likewise. 17364 173652002-07-30 Bernd Schmidt <bernds@redhat.com> 17366 17367 * ifcvt.c (cond_exec_process_if_block): Fix a merging error. 17368 Bail out early if false_expr is NULL and we'd crash due to this. 17369 * genemit.c (gen_expand): Recognize return insns even if the return 17370 appears in a parallel. 17371 * libgcc2.c: Expand macro DECLARE_LIBRARY_RENAMES if it is defined. 17372 * config/fp-bit.c: Likewise. 17373 * doc/tm.texi: Document it. 17374 173752002-07-30 David Edelsohn <edelsohn@gnu.org> 17376 Zack Weinberg <zack@codesourcery.com> 17377 17378 * rs6000.c (rs6000_expand_unop_builtin): Check icode not 17379 CODE_FOR_nothing. Change switch to if. 17380 (rs6000_expand_binop_builtin): Same. 17381 (rs6000_expand_builtin): Expand builtin if target support enabled. 17382 (rs6000_init_builtins): Init builtin if target support enabled. 17383 (rs6000_common_init_builtins): Check icode not CODE_FOR_nothing. 17384 173852002-07-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 17386 17387 * gcc.c (cpp_unique_options): Define __GXX_ABI_VERSION, bump it to 101. 17388 173892002-07-30 Richard Sandiford <rsandifo@redhat.com> 17390 17391 * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Fix typo. 17392 173932002-07-30 J"orn Rennecke <joern.rennecke@superh.com> 17394 17395 * sh.md (cond_delay_slot): New attribute. 17396 (cbranch delay): Use it for anulled-true case. 17397 (stuff_delay_slot): New pattern. 17398 * sh.c (print_operand, case '.'): Don't print .s / /s fore zero-length 17399 delay slot insn. 17400 (gen_far_branch): Emit stuff_delay_slot pattern. 17401 174022002-07-30 J"orn Rennecke <joern.rennecke@superh.com> 17403 17404 * unroll.c (copy_loop_body): Don't copy NOTE_INSN_LOOP_CONT. 17405 174062002-07-30 Kazu Hirata <kazu@cs.umass.edu> 17407 17408 * fold-const.c: Fix comment typos. 17409 * gcse.c: Likewise. 17410 * reload1.c: Likewise. 17411 174122002-07-29 Aldy Hernandez <aldyh@redhat.com> 17413 17414 * config/rs6000/rs6000.md: Disallow CCEQ compare with crnor/crnot 17415 for TARGET_SPE. 17416 174172002-07-30 Gabriel Dos Reis <gdr@nerim.net> 17418 17419 * c-pretty-print.h (pp_c_statement): Declare. 17420 * c-pretty-print.c (pp_c_postfix_expression): #if 0 support for SRCLOC. 17421 (pp_c_statement): Define. 17422 174232002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17424 17425 * alpha.h, arc.h, arm/aout.h, avr.h, c4x.h, cris.h, d30v.h, 17426 darwin.h, dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i960.h, 17427 ip2k.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mips.h, 17428 mn10200.h, mn10300.h, ns32k.h, pa/pa-linux.h, pdp11.h, romp.h, 17429 rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h, 17430 v850.h, vax.h, xtensa.h (ASM_OUTPUT_LABEL): Delete definition. 17431 17432 * defaults.h (ASM_OUTPUT_LABEL): Provide a default. 17433 * doc/tm.texi (ASM_OUTPUT_LABEL): Update docs. 17434 174352002-07-30 Gabriel Dos Reis <gdr@nerim.net> 17436 17437 * c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR. 17438 (pp_c_postfix_expression): Handle ARROW_EXPR, FFS_EXPR, 17439 COMPOUND_LITERAL_EXPR, VA_ARG_EXPR. 17440 (pp_c_expression): Update. 17441 174422002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17443 17444 * alpha/vms-cc.c (preprocess_args, main): Use xstrdup and/or 17445 concat in lieu of xmalloc/strcpy/memcpy/sprintf. 17446 * alpha/vms-ld.c (main): Likewise. 17447 * dsp16xx.c (double_reg_to_memory): Likewise. 17448 * mcore.c (mcore_expand_prolog): Likewise. 17449 * cppfiles.c (read_name_map): Likewise. 17450 * gensupport.c (process_rtx, identify_predicable_attribute, 17451 alter_test_for_insn): Likewise. 17452 * vmsdbgout.c (write_rtnbeg, vmsdbgout_init): Likewise. 17453 174542002-07-29 Roger Sayle <roger@eyesopen.com> 17455 17456 * builtins.c (expand_builtin): Change the default behavior to 17457 only issue an error if the builtin function doesn't have a 17458 fallback library call. Remove several cases handled by the 17459 new default. 17460 174612002-07-29 John David Anglin <dave@hiauly1.hia.nrc> 17462 17463 * real.c (ieee_24, ieee_53, ieee_64, ieee_113): Define only if the 17464 floating point format of the target is IEEE. 17465 * (dec_f, dec_d, dec_g, dec_h): Define only if the floating point 17466 format of the target is DEC. 17467 174682002-07-29 Richard Henderson <rth@redhat.com> 17469 17470 * unroll.c (verify_addresses): Remove. 17471 (find_splittable_givs): Never split DEST_ADDR givs. 17472 174732002-07-29 Geoffrey Keating <geoffk@redhat.com> 17474 17475 * doc/gty.texi (GGC Roots): Clarify that the list of syntaxes 17476 is exhaustive. 17477 (Files): Improve documentation on generated source files. 17478 17479 * doc/extend.texi (Translation implementation): Document what 17480 diagnostics look like. 17481 (Identifiers implementation): Document that there's normally no 17482 limit on identifier names. 17483 (Integers implementation): Document two's complement. 17484 (Hints implementation): Document that GCC honors 'inline', mostly. 17485 (Preprocessing directives implementation): Document that GCC 17486 requires the current time. 17487 174882002-07-30 Gabriel Dos Reis <gdr@nerim.net> 17489 17490 * c-pretty-print.h (struct c_pretty_print_info): Add new member. 17491 (pp_initializer): New macro. 17492 (pp_c_initializer): Declare. 17493 * c-pretty-print.c (pp_c_primary_expression): HAndle TARGET_EXPR. 17494 (pp_c_initializer): Define. 17495 (pp_c_initializer_list): New function. 17496 (pp_c_postfix_expression): Handle ABS_EXPR, COMPLEX_CST, 17497 VECTOR_CST, CONSTRUCTOR. 17498 (pp_c_unary_expression): Handle CONJ_EXPR, REALPART_EXPR, 17499 IMAGPART_EXPR. 17500 (pp_c_cast_expression): Handle FLOAT_EXPR. 17501 (pp_c_assignment_expression): Handle INIT_EXPR. 17502 (pp_c_expression): Update. 17503 175042002-07-30 Neil Booth <neil@daikokuya.co.uk> 17505 17506 * objc/objc-act.c (objc_init): Return immediately if filename 17507 is NULL. 17508 175092002-07-29 Eric Christopher <echristo@redhat.com> 17510 17511 * config/mips/elf.h: Remove ecoff.h and gofast includes. 17512 (DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO): Define unconditionally. 17513 (SDB_DEBUGGING_INFO): Undefine. 17514 (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG. 17515 (PUT_SDB_SIZE): Remove. 17516 (SUBTARGET_ASM_DEBUGGING_SPEC): Redefine. 17517 (STARTFILE_SPEC): Add isa3264 define. 17518 * config/mips/elf64.h: Ditto. Move TARGET_MEM_FUNCTIONS from here... 17519 * config/mips/ecoff.h: Remove. and here... 17520 * config/mips/iris3.h: and here... 17521 * config/mips/sni-svr4.h: and here... 17522 * config/mips/mips.h: To here. Remove OBJECT_FORMAT_ROSE ifdefs. 17523 Add assembler -mmdebug options for non-dwarf debugging. 17524 * config/mips/r3900.h: Remove debug info defines. 17525 * config/mips/isa32-linux.h: Remove, move functionality to config.gcc. 17526 * config/mips/isa3264.h: Ditto. 17527 * config/mips/t-isa3264: Fix up for file removal and gofast configure 17528 change. 17529 * config/mips/t-elf: Ditto. 17530 * config/mips/t-ecoff: Ditto. 17531 * config/mips/t-r3900: Ditto. 17532 * config/mips/t-iris5-6: Ditto. 17533 * config/mips/t-isa3264: Ditto. 17534 * config/mips/t-linux: Remove. 17535 * config/mips/t-netbsd: Remove. 17536 * config/mips/t-mips: New file. 17537 * config/mips/t-gofast: Ditto. 17538 * config/mips/netbsd.h: Remove unnecessary undefines. 17539 * config/mips/linux.h: Remove #include of mips.h. 17540 * config.gcc: Add mips.h include for elf targets. Remove tm_file 17541 for ecoff. Add gofast configure option for mips. 17542 175432002-07-29 Chris Demetriou <cgd@broadcom.com> 17544 17545 * configure.in (mips*-*-*): Add a test to see if MIPS libgloss 17546 linker scripts use STARTUP directives consistently. 17547 * configure: Regenerate. 17548 * config.in: Regenerate. 17549 * config/mips/elf.h (STARTFILE_SPEC): Define conditionally, based 17550 on whether HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is defined. 17551 * config/mips/elf64.h (STARTFILE_SPEC): Likewise. 17552 * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine if 17553 HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is set; the result 17554 will be the same. 17555 175562002-07-29 Aldy Hernandez <aldyh@redhat.com> 17557 17558 * config/rs6000/rs6000.md ("cpu"): Add ppc8540 to attribute. 17559 175602002-07-29 Aldy Hernandez <aldyh@redhat.com> 17561 17562 * config/rs6000/rs6000.h (RTX_COSTS): Add MULT case for 8540. 17563 175642002-07-29 Aldy Hernandez <aldy@quesejoda.com> 17565 17566 * config/rs6000/rs6000.md: Move altivec patterns from here... 17567 17568 * config/rs6000/altivec.md: ...to here. 17569 175702002-07-29 Aldy Hernandez <aldyh@redhat.com> 17571 17572 * config/rs6000/spe.md ("spe_evmra"): Change to unspec. 17573 175742002-07-29 Richard Henderson <rth@redhat.com> 17575 17576 * emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from 17577 set_mem_attributes and add BITPOS argument. Subtract it from 17578 OFFSET when same is adjusted. 17579 (set_mem_attributes): New wrapper function. 17580 * expr.c (expand_assignment): Use set_mem_attributes_minus_bitpos; 17581 remove offset adjustment hack. 17582 * expr.h (set_mem_attributes_minus_bitpos): Declare. 17583 175842002-07-29 Gabriel Dos Reis <gdr@nerim.net> 17585 17586 * Makefile.in (C_OBJS): Include c-pretty-print.o 17587 (c-pretty-print.o): Add depency rule. 17588 * pretty-print.h: Add more macros. 17589 * c-pretty-print.c: New file. 17590 * c-pretty-print.h: Likewise. 17591 175922002-07-29 Aldy Hernandez <aldyh@redhat.com> 17593 17594 * config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector 17595 constants to __ev64_s32__. 17596 (__internal_ev_mwhgsmian): Same. 17597 (__internal_ev_mwhgsmfan): Same. 17598 (__internal_ev_mwhgssfan): Same. 17599 (__internal_ev_mwhgumiaa): Same. 17600 (__internal_ev_mwhgsmiaa): Same. 17601 (__internal_ev_mwhgsmfaa): Same. 17602 (__internal_ev_mwhgssfaa): Same. 17603 176042002-07-29 David Edelsohn <edelsohn@gnu.org> 17605 17606 * varasm.c (assemble_variable): Narrow test for uninitialized 17607 without BSS target support. 17608 176092002-07-29 Nathan Sidwell <nathan@codesourcery.com> 17610 17611 * profile.c: Add file comment describing the overall algorithm and 17612 structures. 17613 (struct edge_info): Add comments. 17614 (struct bb_info): Add comments. 17615 * basic-block.h (EDGE_*): Add comments. 17616 * doc/gcov.texi (Gcov Data Files): Document bit flags. 17617 176182002-07-29 Bob Wilson <bob.wilson@acm.org> 17619 17620 * config/xtensa/elf.h, config/xtensa/linux.h 17621 (TARGET_OS_CPP_BUILTINS): Define. 17622 (CPP_PREDEFINES): Remove. 17623 * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define. 17624 (CPP_SPEC): Remove. 17625 176262002-07-29 Zack Weinberg <zack@codesourcery.com> 17627 17628 * gensupport.c: Include hashtab.h. 17629 (insn_elision, condition_table, hash_c_test, cmp_c_test, 17630 maybe_eval_c_test): New routines and data structures to 17631 support insn elision. 17632 (init_md_reader): Read and initialize the condition_table. 17633 (read_md_rtx): Discard insn patterns whose C test is provably 17634 always false. 17635 * gensupport.h: Declare new functions and data structures. 17636 17637 * genconditions.c, dummy-conditions.c: New files. 17638 * Makefile.in: Build genconditions; run it to construct 17639 insn-conditions.c; build that and link it into most gen* 17640 programs. 17641 (HOST_SUPPORT, HOST_EARLY_SUPPORT): New variables. 17642 (GEN): Delete, unused. 17643 (STAGESTUFF): Update. 17644 17645 * gencodes.c: (gen_insn): #define CODE_FOR_xxx equal to 17646 CODE_FOR_nothing for all elided patterns. 17647 (main): Tweaked to support this. 17648 * genflags.c (gen_proto): Emit a static inline generator 17649 function here for all elided patterns, which simply returns 17650 NULL_RTX. 17651 (gen_insn): Do not define HAVE_xxx for elided patterns. 17652 (main): Tweaked to support this. No need to forward-declare 17653 struct rtx_def. 17654 * genrecog.c: Do not bother emitting the C test if it's known 17655 to be true at compile time. 17656 176572002-07-29 Mike Stump <mrs@apple.com> 17658 17659 * config.gcc (target_gtfiles): Initialize, as otherwise cross 17660 compilers hosted on powerpc-apple-darwin6.0 won't even build. 17661 176622002-07-29 Richard Earnshaw <rearnsha@arm.com> 17663 17664 * arm.md (sibcall, sibcall_value): Add RETURN as part of the pattern, 17665 remove clobber of LR. 17666 (sibcall_insn, sibcall_value_insn): Update accordingly. 17667 (sibcall_epilogue): Remove debugging comment from assembler stream. 17668 176692002-07-29 Gabriel Dos Reis <gdr@nerim.net> 17670 17671 * pretty-print.h: Define more macros. 17672 * diagnostic.h (output_formatted_integer): Moved from... 17673 * diagnostic.c: ... here. 17674 176752002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17676 17677 * stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use ASM_OUTPUT_LABEL_REF. 17678 176792002-07-28 Zack Weinberg <zack@codesourcery.com> 17680 17681 * defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two 17682 arguments. Always use ".-symbol" as expression argument. 17683 * doc/tm.texi: Update to match. Document requirement for 17684 ".size symbol, .-symbol" to be acceptable to assembler. 17685 17686 * config/elfos.h, config/netbsd-aout.h, config/openbsd.h, 17687 config/arm/elf.h, config/avr/avr.h, config/cris/aout.h, 17688 config/i386/freebsd-aout.h, config/i386/sco5.h, 17689 config/ip2k/ip2k.h, config/m88k/m88k.h, config/xtensa/elf.h, 17690 config/xtensa/linux.h: Update uses of ASM_OUTPUT_MEASURED_SIZE. 17691 176922002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17693 17694 * Makefile.in (gengtype-lex.c): Fix error in last change. 17695 17696 * alpha/freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing 17697 backslash. 17698 17699 * Makefile.in (vmsdbgout.o): Depend on function.h. 17700 17701 * vmsdbgout.c: Include function.h. 17702 177032002-07-28 Alan Modra <amodra@bigpond.net.au> 17704 17705 * prefix.c (update_path): Don't strip single `.' path components 17706 unless stripping a later `..' component. Exit loop as soon as 17707 a valid path is found. 17708 177092002-07-27 Roger Sayle <roger@eyesopen.com> 17710 17711 * builtins.def [DEF_GCC_BUILTIN]: Require an explicit ATTRS 17712 argument. Mark BUILT_IN_RETURN, BUILT_IN_EH_RETURN, 17713 BUILT_IN_LONGJMP and BUILT_IN_TRAP as noreturn, the ISO C99 17714 floating point unordered comparisons (e.g. __builtin_isgreater) 17715 as const, and leave the remaining GCC_BUILTINs unchanged. 17716 17717 * c-decl.c (builtin_function): No need to explicitly mark 17718 BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn. 17719 177202002-07-27 Roger Sayle <roger@eyesopen.com> 17721 17722 * Makefile.in: rtlanal.o now depends upon real.h. 17723 17724 * flags.h [flag_signaling_nans]: New flag. 17725 [HONOR_SNANS]: New macro. 17726 17727 * toplev.c [flag_signaling_nans]: Initialize to false. 17728 (f_options): Add processing for "-fsignaling-nans". 17729 (set_fast_math_flags): Clear flag_signaling_nans with -ffast-math. 17730 (process_options): flag_signaling_nans implies flag_trapping_math. 17731 17732 * c-common.c (cb_register_builtins): Define __SUPPORT_SNAN__ 17733 when -fsignaling-nans. First step to implementing WG14's N965. 17734 17735 * fold-const.c (fold) [MULT_EXPR]: Conditionalize transforming 17736 1.0 * x into x, and -1.0 * x into -x on !HONOR_SNANS. 17737 [RDIV_EXPR]: Conditionalize x/1.0 into x on !HONOR_SNANS. 17738 17739 * simplify-rtx.c (simplify_relational_operation): Conditionalize 17740 transforming abs(x) < 0.0 into false on !HONOR_SNANS. 17741 17742 * rtlanal.c: #include real.c for TARGET_FLOAT_FORMAT definitions 17743 required by HONOR_SNANS. (may_trap_p): Floating point DIV, MOD, 17744 UDIV, UMOD, GE, GT, LE, LT and COMPARE may always trap with 17745 -fsignaling_nans. EQ and NE only trap for flag_signaling_nans 17746 not flag_trapping_math (i.e. HONOR_SNANS but not HONOR_NANS). 17747 17748 * doc/invoke.texi: Document new -fsignaling-nans compiler option. 17749 177502002-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 17751 17752 * Makefile.in (gengtype-lex.c): Work around a bug in flex. 17753 * gengtype-lex.l (YY_USE_PROTOS): Undef. 17754 (YY_DECL): Define. 17755 177562002-07-27 Roger Sayle <roger@eyesopen.com> 17757 17758 * doc/invoke.texi: Document that both -fno-builtin-foo and 17759 -fno-builtin are supported by the g++ front-end. 17760 177612002-07-27 Stan Shebs <shebs@apple.com> 17762 17763 * configure.in: Rename config_gtfiles to target_gtfiles. 17764 * configure: Regenerate. 17765 * doc/gty.texi: Update reference. 17766 * config.gcc (powerpc-*-darwin*): Set target_gtfiles 17767 instead of appending to it. 17768 177692002-07-25 Aldy Hernandez <aldyh@redhat.com> 17770 17771 * config/rs6000/rs6000.c (function_arg_advance): SPE vararg 17772 vectors are split into two registers. 17773 (function_arg): Same. 17774 177752002-07-26 J"orn Rennecke <joern.rennecke@superh.com> 17776 17777 * pa.md (extv): Check predicates before emitting extv_32. 17778 177792002-07-27 Alan Modra <amodra@bigpond.net.au> 17780 17781 * config/rs6000/rs6000.c (rs6000_traceback_name): New var. 17782 (rs6000_traceback): New var. 17783 (rs6000_override_options): Set rs6000_traceback. 17784 (rs6000_output_function_epilogue): Implement traceback options. 17785 * config/rs6000/rs6000.h (TARGET_OPTIONS): Add "traceback=". 17786 (rs6000_traceback_name): Declare. 17787 17788 * config/rs6000/rs6000.c (output_profile_hook): Don't generate profile 17789 label reference when NO_PROFILE_COUNTERS. 17790 177912002-07-26 Jason Merrill <jason@redhat.com> 17792 17793 * function.c (assign_parms): Handle frontend-directed pass by 17794 invisible reference. 17795 177962002-07-26 Neil Booth <neil@daikokuya.co.uk> 17797 17798 * doc/cppopts.texi: Update. 17799 178002002-07-26 Neil Booth <neil@daikokuya.co.uk> 17801 17802 * cppmacro.c (_cpp_create_definition): Don't attempt redefinition 17803 warnings on assertions. 17804 178052002-07-26 Neil Booth <neil@daikokuya.co.uk> 17806 17807 * c-common.h (RID_AND, RID_AND_EQ, RID_NOT, RID_NOT_EQ, 17808 RID_OR, RID_OR_EQ, RID_XOR, RID_XOR_EQ, RID_BITAND, RID_BITOR, 17809 RID_COMPL): Remove. 17810 * c-parse.in (rid_to_yy): Similarly. 17811 178122002-07-26 Jason Merrill <jason@redhat.com> 17813 17814 * c-dump.c: Resurrect. 17815 * tree-dump.c: Move C-specific stuff to c-dump.c. 17816 * c-common.h: Declare c_dump_tree. 17817 * c-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN): Define. 17818 * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o. 17819 (c-dump.o): New rule. 17820 178212002-07-26 Alan Modra <amodra@bigpond.net.au> 17822 17823 * config/rs6000/rs6000.md: Enable patterns using rlwinm for 17824 PowerPC64. Replace "T" and "S" constraints with "n" when the 17825 predicate will do. Formatting fixes. 17826 (extzvsi_internal2): Use "andi.", "andis." and attr type of "compare" 17827 as for extzvsi_internal1. 17828 178292002-07-25 Neil Booth <neil@daikokuya.co.uk> 17830 17831 * dwarfout.c (VERSION_ASM_OP, DERIV_BEGIN_LABEL_FMT, 17832 DERIV_END_LABEL_FMT): Remove. 17833 (SL_BEGIN_LABEL_FMT, SL_END_LABEL_FMT): Move. 17834 178352002-07-25 Neil Booth <neil@daikokuya.co.uk> 17836 17837 * objc/objc-act.c (UTAG_STATICS, UTAG_PROTOCOL_LIST, USERTYPE): 17838 Remove. 17839 178402002-07-25 Stan Shebs <shebs@apple.com> 17841 17842 * config/rs6000/rs6000.c (rs6000_emit_prologue): Remove unused 17843 local var dwarfp. 17844 (output_compiler_stub): Remove unused locals. 17845 (output_call): Always initialize line number. 17846 178472002-07-25 J"orn Rennecke <joern.rennecke@superh.com> 17848 17849 * sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia. 17850 * sh.md (truncdiqi2, movqi_media): Likewise. 17851 178522002-07-25 Neil Booth <neil@daikokuya.co.uk> 17853 17854 * gcse.c (obstack_chunk_alloc): Remove. 17855 (gcse_alloc): Fix to count allocated bytes. 17856 * collect2.c (SYMBOL__MAIN): Remove. 17857 178582002-07-25 Neil Booth <neil@daikokuya.co.uk> 17859 17860 * gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if 17861 HAVE_TARGET_EXECUTABLE_SUFFIX. 17862 178632002-07-25 J"orn Rennecke <joern.rennecke@superh.com> 17864 17865 * rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN, 17866 SIZE, EXPR and OFFSET. 17867 178682002-07-25 Richard Henderson <rth@redhat.com> 17869 17870 * emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos 17871 in ARRAY_REF of DECL_P case. 17872 178732002-07-25 Richard Sandiford <rsandifo@redhat.com> 17874 17875 * doc/invoke.texi: Document -mabi=meabi, and expand on the EABI 17876 description. Document -mips32, -mips64, and the associated -march 17877 values. Describe the "mipsN" arguments to -march. Say that the 17878 -mipsN options are equivalent to -march. Reword the description 17879 of default type sizes. 17880 * toplev.h (target_flags_explicit): Declare. 17881 * toplev.c (target_flags_explicit): New var. 17882 (set_target_switch): Update target_flags_explicit. 17883 * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Undefine. 17884 * config/mips/elf64.h (MIPS_ISA_DEFAULT): Undefine. 17885 * config/mips/iris6.h (SUBTARGET_ASM_SPEC): -mabi=64 implies -mips3. 17886 * config/mips/isa3264.h (MIPS_ENABLE_EMBEDDED_O32): Undefine. 17887 * config/mips/mips.h (mips_cpu_info): New struct. 17888 (mips_cpu_string, mips_explicit_type_size_string): Remove. 17889 (mips_cpu_info_table, mips_arch_info, mips_tune_info): Declare. 17890 (MIPS_CPP_SET_PROCESSOR): New macro. 17891 (TARGET_CPP_BUILTINS): Declare a macro for each supported processor. 17892 Define _MIPS_ARCH and _MIPS_TUNE. 17893 (MIPS_ISA_DEFAULT): Don't provide a default value. Instead... 17894 (MIPS_CPU_STRING_DEFAULT): Set to "from-abi" if neither it nor 17895 MIPS_ISA_DEFAULT were already defined. 17896 (MULTILIB_DEFAULTS): Add MULTILIB_ABI_DEFAULT. 17897 (TARGET_OPTIONS): Remove -mcpu and -mexplicit-type-size. 17898 (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New. 17899 (GAS_ASM_SPEC): Remove -march, -mcpu, -mgp* and -mabi rules. 17900 (ABI_GAS_ASM_SPEC): Remove. 17901 (MULTILIB_ABI_DEFAULT, ASM_ABI_DEFAULT_SPEC): New macros. 17902 (ASM_SPEC): Add -mgp32, -mgp64, -march, -mabi=eabi and -mabi=o64. 17903 Invoke %(asm_abi_default_spec) if no ABI was specified. 17904 (CC1_SPEC): Remove ISA -> register-size rules. 17905 (EXTRA_SPECS): Remove abi_gas_asm_spec. Add asm_abi_default_spec. 17906 * config/mips/mips.c (mips_arch_info, mips_tune_info): New vars. 17907 (mips_cpu_string, mips_explicit_type_size_string): Remove. 17908 (mips_cpu_info_table): New array. 17909 (mips_set_architecture, mips_set_tune): New fns. 17910 (override_options): Rework to make -mipsN equivalent to -march. 17911 Detect more erroneous cases, including those removed from CC1_SPEC. 17912 Don't change the ABI based on architecture, or vice versa. 17913 Unify logic with GAS. 17914 (mips_asm_file_start): Get architecture name from mips_arch_info. 17915 (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns. 17916 (mips_parse_cpu): Take the name of the option as argument. Handle 17917 'from-abi'. Raise an error if the option is wrong. 17918 (mips_cpu_info_from_isa): New fn. 17919 179202002-07-25 Richard Sandiford <rsandifo@redhat.com> 17921 17922 * config/mips/mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF. 17923 (tablejump_mips162): Likewise. 17924 179252002-07-25 J"orn Rennecke <joern.rennecke@superh.com> 17926 17927 * simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to 17928 int_mode_for_mode. 17929 179302002-07-25 Gabriel Dos Reis <gdr@nerim.net> 17931 17932 * c-common.c (c_sizeof_or_alignof_type): Take a third argument for 17933 complaining. 17934 * c-common.h (c_sizeof): Adjust definition. 17935 (c_alignof): Likewise. 17936 * c-tree.h (c_sizeof_nowarn): Now macro. 17937 * c-typeck.c (c_sizeof_nowarn): Remove definition. 17938 179392002-07-25 Neil Booth <neil@daikokuya.co.uk> 17940 17941 * c-decl.c (c_decode_option): No need to handle switches 17942 cpplib handles. 17943 179442002-07-24 Zack Weinberg <zack@codesourcery.com> 17945 17946 * defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, ASM_OUTPUT_SIZE_DIRECTIVE, 17947 ASM_OUTPUT_MEASURED_SIZE): New default definitions of new macros. 17948 * doc/tm.texi: Document them. Also document SIZE_ASM_OP, 17949 TYPE_ASM_OP, and TYPE_OPERAND_FMT. 17950 17951 * config/elfos.h, config/netbsd-aout.h, config/openbsd.h, 17952 config/alpha/elf.h, config/arm/elf.h, config/avr/avr.h, 17953 config/cris/aout.h, config/i386/freebsd-aout.h, 17954 config/i386/sco5.h, config/ia64/ia64.c, config/ip2k/ip2k.h, 17955 config/m68k/m68kelf.h, config/m68k/m68kv4.h, config/m88k/m88k.h, 17956 config/mcore/mcore-elf.h, config/mips/elf.h, config/mips/elf64.h, 17957 config/mips/iris6.h, config/mips/linux.h, config/pa/pa-linux.h, 17958 config/pa/pa64-hpux.h, config/rs6000/sysv4.h, 17959 config/xtensa/elf.h, config/xtensa/linux.h: 17960 Use the new macros. 17961 Where possible, remove redundant definitions of SIZE_ASM_OP, 17962 TYPE_ASM_OP, and TYPE_OPERAND_FMT. 17963 179642002-07-24 Aldy Hernandez <aldyh@redhat.com> 17965 17966 * config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE, 17967 TARGET_ISEL, and TARGET_FPRS. 17968 17969 * doc/invoke.texi (RS/6000 and PowerPC Options): Document 17970 -mabi=spe, -mabi=no-spe, and -misel=. 17971 17972 * config/rs6000/rs6000-protos.h: Add output_isel. 17973 Move vrsave_operation prototype here. 17974 17975 * config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL. 17976 (smaxsi3): Same. 17977 (uminsi3): Same. 17978 (umaxsi3): Same. 17979 (abssi2_nopower): Disallow when TARGET_ISEL. 17980 (*ne0): Same. 17981 (negsf2): Change to expand and rename old pattern to *negsf2. 17982 (abssf2): Change to expand and rename old pattern to *abssf2. 17983 17984 New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2, 17985 fixunssfsi2. 17986 17987 Change patterns that check for TARGET_HARD_FLOAT or 17988 TARGET_SOFT_FLOAT to also check TARGET_FPRS. 17989 17990 * config/rs6000/rs6000.c: New globals: rs6000_spe_abi, 17991 rs6000_isel, rs6000_fprs, rs6000_isel_string. 17992 (rs6000_override_options): Add 8540 case to 17993 processor_target_table. 17994 Set rs6000_isel for the 8540. 17995 Call rs6000_parse_isel_option. 17996 (enable_mask_for_builtins): New. 17997 (rs6000_parse_isel_option): New. 17998 (rs6000_parse_abi_options): Add spe and no-spe. 17999 (easy_fp_constant): Treat !TARGET_FPRS as soft-float. 18000 (rs6000_legitimize_address): Check for TARGET_FPRS when checking 18001 for TARGET_HARD_FLOAT. 18002 Add case for SPE_VECTOR_MODE. 18003 (rs6000_legitimize_reload_address): Handle SPE vector modes. 18004 (rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE 18005 vector modes. 18006 Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT. 18007 (rs6000_emit_move): Check for TARGET_FPRS. 18008 Add cases for SPE vector modes. 18009 (function_arg_boundary): Return 64 for SPE vector modes. 18010 (function_arg_advance): Check for TARGET_FPRS and 18011 Handle SPE vectors. 18012 (function_arg): Same. 18013 (setup_incoming_varargs): Check for TARGET_FPRS. 18014 (rs6000_va_arg): Same. 18015 (struct builtin_description): Un-constify mask field. Move up in 18016 file. 18017 (bdesc_2arg): Un-constify and add SPE builtins. 18018 (bdesc_1arg): Same. 18019 (bdesc_spe_predicates): New. 18020 (bdesc_spe_evsel): New. 18021 (rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins. 18022 (rs6000_expand_binop_builtin): Same. 18023 (bdesc_2arg_spe): New. 18024 (spe_expand_builtin): New. 18025 (spe_expand_predicate_builtin): New. 18026 (spe_expand_evsel_builtin): New. 18027 (rs6000_expand_builtin): Call spe_expand_builtin for SPE. 18028 (rs6000_init_builtins): Initialize SPE builtins. Call 18029 rs6000_common_init_builtins. 18030 (altivec_init_builtins): Move all non-altivec builtin code to... 18031 (rs6000_common_init_builtins): ...here. New function. 18032 (branch_positive_comparison_operator): Allow NE code for SPE. 18033 (ccr_bit): Return correct ccr bit for SPE fp. 18034 (print_operand): Emit crnor in 'D' case for SPE. 18035 New case 't'. 18036 Add SPE code for 'y' case. 18037 (rs6000_generate_compare): Generate rtl for SPE fp. 18038 (output_cbranch): Handle SPE hard floats. 18039 (rs6000_emit_cmove): Handle isel. 18040 (rs6000_emit_int_cmove): New. 18041 (output_isel): New. 18042 (rs6000_stack_info): Adjust stack frame so GPRs are saved in 18043 64-bits for SPE. 18044 (debug_stack_info): Add SPE info. 18045 (gen_frame_mem_offset): New. 18046 (rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi. 18047 Change mode of frame pointer, when saving it, to Pmode. 18048 (rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi. 18049 Misc cleanups and use gen_frame_mem_offset when appropriate. 18050 18051 * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540. 18052 (TARGET_SPE_ABI): New. 18053 (TARGET_SPE): New. 18054 (TARGET_ISEL): New. 18055 (TARGET_FPRS): New. 18056 (FIXED_SCRATCH): New. 18057 (RTX_COSTS): Add PROCESSOR_PPC8540. 18058 (ASM_CPU_SPEC): Add case for 8540. 18059 (TARGET_OPTIONS): Add isel= case. 18060 (rs6000_spe_abi): New. 18061 (rs6000_isel): New. 18062 (rs6000_fprs): New. 18063 (rs6000_isel_string): New. 18064 (UNITS_PER_SPE_WORD): New. 18065 (LOCAL_ALIGNMENT): Adjust for SPE. 18066 (HARD_REGNO_MODE_OK): Same. 18067 (DATA_ALIGNMENT): Same. 18068 (MEMBER_TYPE_FORCES_BLK): New. 18069 (FIRST_PSEUDO_REGISTER): Set to 113. 18070 (FIXED_REGISTERS): Add SPE registers. 18071 (reg_class): Same. 18072 (REG_CLASS_NAMES): Same. 18073 (REG_CLASS_CONTENTS): Same. 18074 (REGNO_REG_CLASS): Same. 18075 (REGISTER_NAMES): Same. 18076 (DEBUG_REGISTER_NAMES): Same. 18077 (ADDITIONAL_REGISTER_NAMES): Same. 18078 (CALL_USED_REGISTERS): Same. 18079 (CALL_REALLY_USED_REGISTERS): Same. 18080 (SPE_ACC_REGNO): New. 18081 (SPEFSCR_REGNO): New. 18082 (SPE_SIMD_REGNO_P): New. 18083 (HARD_REGNO_NREGS): Adjust for SPE. 18084 (VECTOR_MODE_SUPPORTED_P): Same. 18085 (REGNO_REG_CLASS): Same. 18086 (FUNCTION_VALUE): Same. 18087 (LIBCALL_VALUE): Same. 18088 (LEGITIMATE_OFFSET_ADDRESS_P): Same. 18089 (SPE_VECTOR_MODE): New. 18090 (CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on 18091 the GPRs. Set FIXED_SCRATCH fixed in SPE case. 18092 (rs6000_stack): Add spe_gp_size, spe_padding_size, 18093 spe_gp_save_offset. 18094 (USE_FP_FOR_ARG_P): Check for TARGET_FPRS. 18095 (LEGITIMATE_LO_SUM_ADDRESS_P): Same. 18096 (SPE_CONST_OFFSET_OK): New. 18097 (rs6000_builtins): Add SPE builtins. 18098 18099 * testsuite/gcc.dg/ppc-spe.c: New. 18100 18101 * config/rs6000/eabispe.h: New. 18102 18103 * config/rs6000/spe.h: New. 18104 18105 * config/rs600/spe.md: New. 18106 18107 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define 18108 __SIMD__ for TARGET_SPE. 18109 18110 * config.gcc: Add powerpc-*-eabispe* case. 18111 Add spe.h to user headers for powerpc. 18112 181132002-07-24 Chris Demetriou <cgd@broadcom.com> 18114 18115 * config/mips/elf.h (STARTFILE_SPEC): Undo previous change. 18116 * config/mips/elf64.h (STARTFILE_SPEC): Likewise. 18117 * config/mips/isa3264.h (STARTFILE_SPEC): Likewise. 18118 181192002-07-24 Richard Henderson <rth@redhat.com> 18120 18121 * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Use GOTO_SUBROUTINE_EXPR 18122 form when not optimizing. 18123 181242002-07-24 David Mosberger <davidm@hpl.hp.com> 18125 18126 * config/ia64/ia64.c (gen_thread_pointer): Fix typo in marking 18127 thread_pointer_rtx as unchanging. 18128 181292002-07-24 Michael Matz <matz@suse.de> 18130 18131 * ra-colorize.c (INV_REG_ALLOC_ORDER): New macro. 18132 (free_reg): Use it. 18133 181342002-07-24 Richard Earnshaw <rearnsha@arm.com> 18135 18136 * arm.md (arm_buneq, arm_bltgt): put '\' before ';' in output 18137 pattern. 18138 (arm_buneq_reversed, arm_bltgt_reversed): Likewise. 18139 (movsicc, movsfcc, movdfcc): FAIL if UNEQ or LTGT. 18140 181412002-07-24 Chris Demetriou <cgd@broadcom.com> 18142 18143 * config/mips/elf.h (STARTFILE_SPEC): Never include crt0.o. 18144 * config/mips/elf64.h (STARTFILE_SPEC): Likewise. 18145 * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine. 18146 181472002-07-24 Jan Hubicka <jh@suse.cz> 18148 18149 * toplev.c (rest_of_compilation): Dump loops before clobbering 18150 the structure. 18151 181522002-07-24 Jan Hubicka <jh@suse.cz> 18153 18154 * rtlanal.c (keep_with_call_p): Avoid overflow in fixed_regs. 18155 181562002-07-24 Frank van der Linden <fvdl@wasabisystems.com> 18157 18158 PR optimization/7291 18159 * config/i386/i386.c (ix86_expand_clrstr): Fix bzero alignment 18160 problem on x86_64. 18161 181622002-07-24 Gabriel Dos Reis <gdr@nerim.net> 18163 18164 * pretty-print.h: Add macros from cp/error.c 18165 181662002-07-24 Alan Modra <amodra@bigpond.net.au> 18167 18168 * config/rs6000/rs6000-protos.h (mask_operand_wrap): Declare. 18169 (mask64_2_operand): Declare. 18170 (build_mask64_2_operands): Declare. 18171 (and64_2_operand): Declare. 18172 (extract_MB): Declare. 18173 (extract_ME): Declare. 18174 * config/rs6000/rs6000.c (mask64_operand): Allow all ones. Remove 18175 CONST_DOUBLE code. 18176 (mask_operand_wrap): New insn predicate. 18177 (mask64_2_operand): Likewise. 18178 (and64_2_operand): Likewise. 18179 (build_mask64_2_operands): New function. 18180 (extract_MB): New function. 18181 (extract_ME): New function. 18182 (print_operand <case m,M>): Use extract_MB and extract_ME. 18183 (print_operand <case S>): Allow all ones. Remove CONST_DOUBLE support. 18184 * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Add 't'. 18185 (PREDICATE_CODES): Add and64_2_operand, mask_operand_wrap and 18186 mask64_2_operand. Remove CONST_DOUBLE from mask64_operand. 18187 * config/rs6000/rs6000.md (andsi3_internal3): New 18188 (andsi3_internal3+1): Enable split for powerpc64. 18189 (andsi3_internal3+2): New split. 18190 (andsi3_internal4): Renamed old andsi3_internal3. 18191 (andsi3_internal5): New. 18192 (andsi3_internal5+1): Enable split for powerpc64. 18193 (andsi3_internal5+2): New split. 18194 (andsi3_internal6, andsi3_internal7, andsi3_internal8): New. 18195 (anddi3): Handle 't' constraint. 18196 (anddi3+1): New split. 18197 (anddi3_internal2): Handle 't' constraint. 18198 (anddi3_internal2+1): New split. 18199 (anddi3_internal3): Handle 't' constraint. 18200 (anddi3_internal3+1): New split. 18201 182022002-07-24 Alan Modra <amodra@bigpond.net.au> 18203 18204 * config/rs6000/rs6000.md: Remove scratch reg on insns using 18205 addze and similar (plus (comparison r1 r2) r3) insns. Add 18206 missing scratch reg in one case. Formatting fixes. 18207 182082002-07-24 Neil Booth <neil@daikokuya.co.uk> 18209 18210 * cppexp.c (parse_defined): Mark macro used. 18211 * cpphash.h (struct cpp_macro): New member "used". 18212 (_cpp_mark_macro_used, _cpp_warn_if_unused_macro): New. 18213 (struct cpp_reader): New member. 18214 * cppinit.c (cpp_finish_options): Set first_unused_line. 18215 (cpp_finish): Warn of unused macros if requested. 18216 (OPT_TABLE): New switches. 18217 (cpp_handle_option): Handle them. 18218 * cpplib.c (do_undef): Warn if macro unused. 18219 (do_ifdef, do_ifndef): Mark macro used. 18220 * cpplib.h (struct cpp_options): New member. 18221 * cppmacro.c (_cpp_warn_if_unused_macro): New. 18222 (enter_macro_context): Mark macro used. 18223 (_cpp_create_definition): Mark macro unused; warn if unused 18224 when redefined. 18225 * cpptrad.c (scan_out_logcial_line, push_replacement_text): 18226 Mark macros used. 18227 * doc/cppopts.texi: Update. 18228 182292002-07-23 Neil Booth <neil@daikokuya.co.uk> 18230 18231 * dwarf2out.c (SECTION_ASM_OP, 18232 ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove. 18233 * system.h (SECTION_ASM_OP): Poison. 18234 * tree.c (FILE_FUNCTION_PREFIX_LEN): Remove. 18235 * config/alpha/alpha-interix.h, config/mips/linux.h 18236 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove. 18237 * config/mmix/mmix-protos.h, config/mmix/mmix.c 18238 (mmix_asm_output_define_label_difference_symbol): Remove. 18239 * config/mmix/mmix.h 18240 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove. 18241 * doc/tm.texi: Remove documentation. 18242 182432002-07-23 J"orn Rennecke <joern.rennecke@superh.com> 18244 18245 * recog.c (asm_operand_ok): Allow float CONST_VECTORs for 'F'. 18246 (constrain_operands): Likewise. 18247 * regclass.c (record_reg_classes): Likewise. 18248 * reload.c (find_reloads): Likewise. 18249 * doc/md.texi: Likewise. 18250 18251 * reload.c (find_reloads_toplev): Use simplify_gen_subreg. 18252 * simplify-rtx.c (simplify_subreg): When converting to a non-int 18253 mode, try to convert to an integer mode of matching size first. 18254 18255 * simplify-rtx.x (simplify_subreg): When constructing a CONST_VECTOR 18256 from individual subregs, check that each subreg has been generated 18257 sucessfully. 18258 182592002-07-23 Neil Booth <neil@daikokuya.co.uk> 18260 18261 * genautomata.c (VLA_HWINT_SHORTEN, VLA_HWINT_LAST): Remove. 18262 * df.c (HANDLE_SUBREG, FOR_EACH_BB_IN_BITMAP_REV, 18263 FOR_EACH_BB_IN_SBITMAP): Remove. 18264 * gcse.c (NEVER_SET, FOLLOW_BACK_EDGES): Remove. 18265 * haifa-sched.c (DONE_PRIORITY, MAX_PRIORITY, TAIL_PRIORITY, 18266 LAUNCH_PRIORITY, DONE_PRIORITY_P, LOW_PRIORITY_P): Remove. 18267 * loop.c (PREFETCH_BLOACK_IN_LOOP_MIN, 18268 PREFETCH_LIMIT_TO_SIMULTANEOUS): Remove. 18269 * regrename.c (REGNO_MODE_OK_FOR_BASE_P): Remove. 18270 182712002-07-23 Gabriel Dos Reis <gdr@nerim.net> 18272 18273 * pretty-print.h: New file. 18274 182752002-07-23 Paul Koning <pkoning@equallogic.com> 18276 18277 * real.c (REAL_WORDS_BIG_ENDIAN): Make 1 for DEC. 18278 (LARGEST_EXPONENT_IS_NORMAL): Ditto. 18279 (VAX_HALFWORD_ORDER): Define (1 for DEC VAX, 0 otherwise). 18280 (TARGET_G_FLOAT): Default to 0 if not defined. 18281 (ieeetoe): New, common routine to convert target format floats 18282 to internal form. 18283 (e24toe, e53toe): Change to use ieeetoe, distinguish DEC 18284 vs. others. 18285 (e113toe): Change to use ieeetoe. 18286 182872002-07-23 Roman Lechtchinsky <rl@cs.tu-berlin.de> 18288 18289 * real.c (REAL_WORDS_BIG_ENDIAN): Make sure it is 0 for DEC and 1 for 18290 IBM. 18291 (e53toe): Assume IEEE if non of DEC, IBM and C4X is defined. 18292 (e64toe): Remove special cases for DEC and IBM. Remove support for 18293 ARM_EXTENDED_IEEE_FORMAT. 18294 (e24toe): Remove special cases for DEC. 18295 (significand_size): Simplify. Indent. 18296 (ieee_format, ieee_24, ieee_53, ieee_64, ieee_113): New. 18297 (etoieee, toieee): New. 18298 (etoe113, toe113, etoe64, toe64, etoe53, toe53, etoe24, toe24): Use 18299 etoieee and toieee for IEEE arithmetic. 18300 183012002-07-23 Gabriel Dos Reis <gdr@nerim.net> 18302 18303 * doc/extend.texi: Say ISO C90, not ISO C89. 18304 * doc/invoke.texi: Likewise. 18305 * doc/standards.texi: Likewise. 18306 183072002-07-23 Steve Ellcey <sje@cup.hp.com> 18308 18309 * gcc/explow.c (convert_memory_address): Fix conversion of CONSTs. 18310 Fix permutation of conversion and plus/mult. 18311 * gcc/builtins.c (expand_builtin_memcpy) Ensure return pointer is 18312 ptr_mode and not Pmode when POINTERS_EXTEND_UNSIGNED is defined. 18313 (expand_builtin_strncpy) Ditto. 18314 (expand_builtin_memset) Ditto. 18315 183162002-07-23 Gabriel Dos Reis <gdr@nerim.net> 18317 18318 Fix PR/7363: 18319 * c-common.c (c_sizeof_or_alignof_type): New function. 18320 (c_alignof): Remove definition. 18321 * c-common.h (c_sizeof, c_alignof): Define as macros. 18322 (c_sizeof_or_alignof_type): Declare. 18323 (my_friendly_assert): Moved from cp/cp-tree.h 18324 * c-typeck.c (c_sizeof): Remove definition. 18325 183262002-07-23 Jan Hubicka <jh@suse.cz> 18327 18328 * gcse.c (try_replace_reg): Use num_changes_pending. 18329 * recog.c (num_changes_pending): New function. 18330 (validate_replace_src): Use validate_repalce_src_group. 18331 (validate_replace_src_group): New. 18332 * recog.h (validate_repalce_src_group): New. 18333 (num_changes_pending): Likewise. 18334 183352002-07-23 J"orn Rennecke <joern.rennecke@superh.com> 18336 18337 * calls.c (emit_library_call_value_1): If 18338 FUNCTION_ARG_PASS_BY_REFERENCE is true, pretend this is neither 18339 libcall, const call nor pure call. 18340 183412002-07-23 Neil Booth <neil@daikokuya.co.uk> 18342 18343 * config/m88k/m88k.h (SECTION_ASM_OP): Remove. 18344 183452002-07-23 Neil Booth <neil@daikokuya.co.uk> 18346 18347 * vmsdbgout.c (SECTION_ASM_OP): Remove. 18348 183492002-07-23 Neil Booth <neil@daikokuya.co.uk> 18350 18351 * config/i386/i386.c (AT_BP): Remove. 18352 183532002-07-23 Neil Booth <neil@daikokuya.co.uk> 18354 18355 * defaults.h (obstack_chunk_alloc, obstack_chunk_free): 18356 Default definition. 18357 * gcse.c: Don't define obstack_chunk_free. 18358 * collect2.c, conflict.c, df.c, diagnostic.c, fix-header.c, 18359 flow.c, gcc.c, genattrtab.c, genautomata.c, genflags.c, gensupport.c, 18360 integrate.c, loop.c, ra.c, read-rtl.c, regrename.c, reload1.c, 18361 reorg.c, tlink.c, tree.c, config/arm/arm.c, objc/objc-act.c: 18362 Don't define obstack macros. 18363 183642002-07-22 Stephane Carrez <stcarrez@nerim.fr> 18365 18366 PR target/6744 18367 * config/m68hc11/m68hc11.c (m68hc11_z_replacement): Also replace 18368 ASM_OPERANDS instructions. 18369 183702002-07-22 Stephane Carrez <stcarrez@nerim.fr> 18371 18372 PR target/7361 18373 * config/m68hc11/m68hc11.c (go_if_legitimate_address_internal): Accept 18374 constant addresses only on 68HC12. 18375 183762002-07-22 Neil Booth <neil@daikokuya.co.uk> 18377 18378 * cppfiles.c (stack_include_file): Correct test of whether 18379 a dependency should be output. 18380 183812002-07-22 David Edelsohn <edelsohn@gnu.org> 18382 18383 * collect2.c (is_ctor_dtor): Add other possible JOINER values. 18384 183852002-07-22 Richard Earnshaw <rearnsha@arm.com> 18386 18387 * arm.md (movqi): If optimizing and we can create pseudos, use 18388 a ZERO_EXTEND to load from memory, then copy the result into the 18389 target. 18390 (movhi): Likewise, but only for ARMv4. 18391 183922002-07-22 Neil Booth <neil@daikokuya.co.uk> 18393 18394 * ssa-ccp.c (PHI_PARMS): Remove. 18395 183962002-07-22 Richard Sandiford <rsandifo@redhat.com> 18397 18398 * config/mips/mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS 18399 on big-endian targets. 18400 184012002-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 18402 18403 * hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE, 18404 HOST_WIDE_INT_PRINT_UNSIGNED_SPACE, 18405 HOST_WIDEST_INT_PRINT_DEC_SPACE, HOST_WIDEST_INT_PRINT_DEC_SPACE): 18406 New formatting macros. 18407 18408 * ra-debug.c (dump_static_insn_cost): Avoid string concatenation. 18409 184102002-07-22 J"orn Rennecke <joern.rennecke@superh.com> 18411 18412 * rtlanal.c (subreg_regno_offset): Return correct offset for 18413 big endian paradoxical subregs. 18414 18415 * optabs.c (expand_vector_unop): Don't expand using sub_optab 18416 if we got the wrong mode. 18417 18418 * hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define. 18419 * genrecog.c (write_switch, write_cond): Use it. 18420 * genemit.c (gen_exp): Likewise. 18421 184222002-07-22 Jakub Jelinek <jakub@redhat.com> 18423 18424 * c-decl.c (build_compound_literal): Set decl TREE_READONLY from TYPE. 18425 184262002-07-22 Jakub Jelinek <jakub@redhat.com> 18427 18428 * c-decl.c (build_compound_literal): Defer compound literal decls 18429 until until file end to emit them only if they are actually used. 18430 184312002-07-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 18432 18433 * ra-build.c (check_conflict_numbers): Hide unused function. 18434 (livethrough_conflicts_bb): Avoid automatic aggregate 18435 initialization. 18436 (parts_to_webs_1): Avoid `U' integer constant modifier. 18437 (conflicts_between_webs): Wrap a variable in the macro controlling 18438 its usage. 18439 * ra-debug.c (ra_debug_msg): Use VA_OPEN/VA_CLOSE. 18440 (dump_igraph, dump_graph_cost): Avoid string concatenation 18441 (dump_static_insn_cost): Avoid automatic aggregate 18442 initialization. 18443 * ra-rewrite.c (insert_stores): Avoid automatic aggregate 18444 initialization. 18445 (dump_cost): Avoid string concatenation 18446 184472002-07-21 Richard Henderson <rth@redhat.com> 18448 18449 * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Don't use 18450 GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded. 18451 184522002-07-21 Richard Henderson <rth@redhat.com> 18453 18454 * unroll.c (find_splittable_givs): Do not split DEST_ADDR givs 18455 that are not unrolled completely. 18456 184572002-07-21 Richard Henderson <rth@redhat.com> 18458 18459 * loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS. 18460 * loop.c (strength_reduce): Update. 18461 * toplev.c (rest_of_compilation): Do unrolling in the first 18462 loop pass, not the second. 18463 184642002-07-21 Richard Henderson <rth@redhat.com> 18465 18466 * emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL 18467 when flag_argument_noalias == 2. 18468 * alias.c (nonoverlapping_memrefs_p): Handle that. 18469 * print-rtl.c (print_mem_expr): Likewise. 18470 184712002-07-21 Hartmut Schirmer <hartmut.schirmer@arcor.de> 18472 18473 * libgcc2.c (__divdi3, __moddi3): Use unary minus operator 18474 instead of __negdi2 directly. 18475 184762002-07-21 Neil Booth <neil@daikokuya.co.uk> 18477 18478 * gengenrtl.c (gencode): Don't define obstack_alloc_rtx. 18479 * function.c (SYMBOL__MAIN): Remove definition. 18480 * global.c (SET_CONFLICT, REGBITP, ALLOCNO_LIVE_P): Remove. 18481 * predict.c (PROB_NEVER, PROB_LIKELY, PROB_UNLIKELY): Remove. 18482 * profile.c (GCOV_INDEX_TO_BB): Remove. 18483 * sched-rgn.c (ABS_VALUE, MIN_DIFF_PRIORITY, MIN_PROB_DIFF): Remove. 18484 * simplify-rtx.c (FIXED_BASE_PLUS_P): Remove. 18485 184862002-07-21 Neil Booth <neil@daikokuya.co.uk> 18487 18488 * c-lex.c (GET_ENVIRONMENT): Remove. 18489 * collect2.c (GET_ENV_PATH_LIST): Remove. 18490 (prefix_from_env): Use GET_ENVIRONMENT. 18491 * cppinit.c (GET_ENV_PATH_LIST): Remove. 18492 (init_standard_includes): Use GET_ENVIRONMENT. 18493 * defaults.h (GET_ENVIRONMENT): Define here if not already. 18494 * gcc.c (GET_ENV_PATH_LIST): Remove. 18495 (make_relative_prefix, process_command): Update. 18496 * protoize.c (GET_ENV_PATH_LIST): Remove. 18497 (do_processing): Update. 18498 184992002-07-21 Gabriel Dos Reis <gdr@nerim.net> 18500 18501 * c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'. 18502 (grokdeclarator): Likewise. 18503 * c-format.c (C_STD_NAME): Likewise. 18504 * c-lex.c (interpret_integer): Likewise. 18505 * c-typeck.c (build_array_ref): Likewise. 18506 * cpplex.c (_cpp_lex_direct): Likewise. 18507 * toplev.c (documented_lang_options): Likewise. 18508 185092002-07-21 Neil Booth <neil@daikokuya.co.uk> 18510 18511 * c-format.c (T99_I, T99_UI): Remove. 18512 185132002-07-21 Neil Booth <neil@daikokuya.co.uk> 18514 18515 * c-typeck.c (SAVE_SPELLING_DEPTH): Remove. 18516 185172002-07-21 Jan Hubicka <jh@suse.cz> 18518 18519 * gcse.c (do_local_cprop): Do not extend lifetimes of registers set by 18520 do_local_cprop. 18521 185222002-07-21 Andreas Jaeger <aj@suse.de> 18523 18524 * reload1.c (fixup_abnormal_edges): Remove unused variable. 18525 185262002-07-21 Bernd Schmidt <bernds@redhat.com> 18527 18528 Improvements for the ifcvt pass from Michael Meissner, with patches 18529 by Richard Sandiford <rsandifo@redhat.com> 18530 * basic-block.h (struct ce_if_block, ce_if_block_t): New types. 18531 * ifcvt.c (cond_exec_changed_p): New static variable. 18532 (last_active_insn): New function, renamed from last_active_insn_p 18533 and changed to return the last active insn in a basic block. All 18534 callers updated. 18535 (block_fallthru): New function. 18536 (cond_exec_process_insns): New argument CE_INFO. Pass it to 18537 IFCVT_MODIFY_INSN. All callers updated. 18538 Return false if START or END are NULL. 18539 Handle case where we're processing an insn that is already 18540 conditional. 18541 18542 (noce_process_if_block): CE_INFO argument rather than 18543 multiple args containing the involved basic blocks. All callers 18544 changed. 18545 (process_if_block, merge_if_block, find_if_block, 18546 cond_exec_process_if_block): Likewise. 18547 18548 (cond_exec_process_if_block): New arg DO_MULTIPLE_P. All callers 18549 changed. 18550 Use new function last_active_insn to simplify some code. 18551 New code to handle multiple tests. 18552 Call IFCVT_MODIFY_CANCEL in all failure cases, otherwise set 18553 cond_exec_changed_p to TRUE. 18554 18555 (process_if_block): New code to handle multiple tests. 18556 (merge_if_block): Likewise. 18557 (find_if_header): New arg PASS. Changed to return the currently 18558 processed basic block or NULL instead of true/false. All callers 18559 changed. 18560 Call IFCVT_INIT_EXTRA_FIELDS. 18561 (block_jumps_and_fallthru_p): New function. 18562 (find_if_block): Discover opportunities to convert multiple tests. 18563 Add additional debugging output. 18564 Update the ce_info structure before returning. 18565 18566 (if_convert): Run multiple passes of if-conversion. 18567 * doc/tm.texi (IFCVT_MODIFY_TESTS, IFCVT_MODIFY_INSN, 18568 IFCVT_MODIFY_FINAL, IFCVT_MODIFY_CANCEL, IFCVT_MODIFY_MULTIPLE_TESTS, 18569 IFCVT_INIT_EXTRA_FIELDS, IFCVT_EXTRA_FIELDS): Update documentation for 18570 these macros. 18571 185722002-07-21 Jan Hubicka <jh@suse.cz> 18573 18574 * gcse.c: Include cselib.h 18575 (constptop_register): Break out from ... 18576 (cprop_insn): ... here; kill basic_block argument. 18577 (do_local_cprop, local_cprop_pass): New functions. 18578 (one_cprop_pass): Call local_cprop_pass. 18579 185802002-07-20 Roger Sayle <roger@eyesopen.com> 18581 18582 * simplify-rtx.c (simplify_relational_operation): Optimize 18583 abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math). 18584 185852002-07-20 Michae Matz <matz@suse.de> 18586 18587 * ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS. 18588 185892002-07-20 Neil Booth <neil@daikokuya.co.uk> 18590 18591 * cppexp.c (struct op): Add token pointer. 18592 (check_promotion, CHECK_PROMOTION): New. 18593 (optab): Update. 18594 (_cpp_parse_expr): Update, use token pointer of struct op. 18595 (reduce): Warn about change of sign owing to promotion. 18596 * cppinit.c (cpp_handle_option): New warning if -Wall. 18597 * cpplib.h (struct cpp_options): New member. 18598 185992002-07-19 David Edelsohn <edelsohn@gnu.org> 18600 18601 * config/rs6000/rs6000.md: Remove ppc630 fpcompare from single 18602 fpu list. Separate Power4 compare and delayed_compare. Correct 18603 Power4 fpcompare. 18604 (fix_truncdfsi2_internal): Restore FPR preference. 18605 * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3, 18606 mcpu?power4, mcpu?604e. Remove mpower, mpower2, mpowerpc. 18607 186082002-07-19 Momchil Velikov <velco@fadata.bg> 18609 18610 * reload1.c (reload_as_needed): Duplicate oldpat. 18611 186122002-07-20 Alan Modra <amodra@bigpond.net.au> 18613 18614 PR optimization/7130 18615 * loop.h (struct loop_info): Add "preconditioned". 18616 * unroll.c (unroll_loop): Set it. 18617 * doloop.c (doloop_modify_runtime): Correct count for unrolled loops. 18618 186192002-07-19 Zack Weinberg <zack@codesourcery.com> 18620 18621 * rtl.def (CODE_LABEL): Remove slot 8. 18622 * rtl.h (struct rtx_def): Document new uses of jump and call fields. 18623 (LABEL_ALTERNATE_NAME): Delete. 18624 (LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New. 18625 * defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME. 18626 18627 * final.c (output_alternate_entry_point): New. 18628 (final_scan_insn): Use it instead of 18629 ASM_OUTPUT_ALTERNATE_LABEL_NAME. Do not consider possibility 18630 of a case label being an alternate entry point. 18631 18632 * cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P. 18633 * emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL. 18634 Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME 18635 (field deleted). 18636 * print-rtl.c, ra-debug.c: Update code to output CODE_LABELs. 18637 18638 * doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and 18639 LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME. 18640 * doc/tm.texi: Delete documentation of 18641 ASM_OUTPUT_ALTERNATE_LABEL_NAME. 18642 186432002-07-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 18644 18645 * config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define. 18646 (PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG. 18647 (LINK_SPEC): Define. 18648 (STARTFILE_SPEC): Define. 18649 (ENDFILE_SPEC): Define. 18650 18651 * config/mips/iris6-o32.h (LINK_SPEC): Move ... 18652 * config/mips/iris6-o32-as.h (LINK_SPEC): ... here. 18653 18654 * config/mips/iris6-o32-gas.h: New file. 18655 * config.gcc (mips-sgi-irix6*o32): Use it. 18656 18657 * config/mips/t-iris5-gas: New file. 18658 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it. 18659 186602002-07-19 Neil Booth <neil@daikokuya.co.uk> 18661 18662 * cppexp.c (ALWAYS_EVAL): Remove. 18663 (optab, reduce): Always evaluate. 18664 (num_unary_op, num_binary_op, num_div_op): Issue diagnostics 18665 only if not skipping evaluation. 18666 186672002-07-19 Marek Michalkiewicz <marekm@amelek.gda.pl> 18668 18669 * config/avr/avr.c (debug_hard_reg_set): Remove. 18670 186712002-07-19 Chris Demetriou <cgd@broadcom.com> 18672 18673 * gcc.c (cpp_options): Include "%1" (cc1_spec). 18674 186752002-07-19 Richard Henderson <rth@redhat.com> 18676 18677 * loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn. 18678 186792002-07-19 Alan Modra <amodra@bigpond.net.au> 18680 18681 * prefix.c (update_path): Don't zap single `.' path components 18682 unless followed by another `.' and fix typo last patch. 18683 186842002-07-18 Neil Booth <neil@daikokuya.co.uk> 18685 18686 * cppexp.c (cpp_num_mul): Remove unused parameter. 18687 (UNARY, BINARY, OTHER, binary_handler): Remove. 18688 (ALWAYS_EVAL): New. 18689 (optab): Update. 18690 (reduce): Refactor to a large switch, don't use a function 18691 pointer. 18692 186932002-07-18 Bo Thorsen <bo@berlioz.suse.de> 18694 18695 * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Define this always. 18696 186972002-07-18 J"orn Rennecke <joern.rennecke@superh.com> 18698 18699 * sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard. 18700 (sh_expand_binop_v2sf): Likewise. 18701 * sh.c (machine_dependent_reorg): Add move for UNSPEC_MOVA. 18702 (int_gpr_dest, trunc_hi_operand): New functions. 18703 * sh.h (PREDICATE_CODES): Add any_register_operand, int_gpr_dest and 18704 trunc_hi_operand. 18705 (SPECIAL_MODE_PREDICATES, any_register_operand): Define. 18706 * sh.md (cmpeqdi_t+1): Remove comments that genrecog warns about. 18707 (adddi3_compact+1, subdi3_compact+1, ashlsi3_n+1, ashlhi3+1): Likewise. 18708 (ashrsi2_16+1, ashrsi2_31+1, lshrsi3_n+1, ashrdi3+[12]): Likewise. 18709 (and_shl_scratch+[12], zero_extendhidi2+1): Likewise. 18710 (zero_extendhisi2_media+1, extendhidi2+1, extendqidi2+1): Likewise. 18711 (extendhisi2_media+1, extendqisi2_media+1): Likewise. 18712 (movsi_media_nofpu+[12], movhi_media+1, movdi_media_nofpu+1): Likewise. 18713 (movdi_const_16bit+[12], movdf_i4+[123], reload_outdf+[2-5]): Likewise. 18714 (movsf_ie+1): Likewise. 18715 (loaddi_trunc): Use int_gpr_dest predicate. 18716 (use_sfunc_addr, indirect_jump_scratch, sibcall_compact): Add mode(s). 18717 (mova, mova_const, GOTaddr2picreg, ptrel, casesi_worker_0): Likewise. 18718 (casesi_worker_0+[12], casesi_worker): Likewise. 18719 (shcompact_preserve_incoming_args): Likewise. 18720 (mov_nop): Use any_register_operand predicate. 18721 (mperm_w0): Use trunc_hi_operand predicate. 18722 187232002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca> 18724 18725 * pa-linux.h (DWARF2_UNWIND_INFO): Delete define. 18726 * pa.h (EH_RETURN_DATA_REGNO): Revise TARGET_64BIT and correct 18727 numbering. 18728 187292002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca> 18730 18731 * pa.c (output_deferred_plabels): Remove unused millicode enum mulU. 18732 187332002-07-18 Richard Henderson <rth@redhat.com> 18734 18735 PR optimization/7147 18736 * ifcvt.c (noce_get_condition): Make certain that the condition 18737 is valid at JUMP. 18738 187392002-07-18 J"orn Rennecke <joern.rennecke@superh.com> 18740 18741 * sh.c (barrier_align, push): Shut up compiler warnings. 18742 (initial_elimination_offset,sh_media_init_builtins): Likewise. 18743 (reg_no_subreg_operand): Delete. 18744 187452002-07-17 Bo Thorsen <bo@suse.de> 18746 18747 * config/i386/linux64.h (LINK_SPEC): Remove bogus -Y option. 18748 (STARTFILE_PREFIX_SPEC): Define for NATIVE_CROSS compilations. 18749 (STARTFILE_SPEC): Remove hardcoded library paths. 18750 (ENDFILE_SPEC): Likewise. 18751 187522002-07-18 Jan Hubicka <jh@suse.cz> 18753 18754 * gcse.c (hoist_expr_reaches_here_p): Stop once expr_bb is reached. 18755 18756 * gcse.c (try_replace_reg): Do not return false positives. 18757 187582002-07-18 Alan Modra <amodra@bigpond.net.au> 18759 18760 * prefix.c: (update_path): Strip ".." components when prior dir 18761 doesn't exist. Pass correct var to UPDATE_PATH_HOST_CANONICALIZE. 18762 18763 * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support. 18764 (ASM_OUTPUT_REG_POP): Likewise. 18765 187662002-07-18 Alan Modra <amodra@bigpond.net.au> 18767 18768 * config/rs6000/rs6000.c (first_reg_to_save): Remove bogus 18769 adjustments to first_reg for profiling case. 18770 (output_function_profiler): Correct lr save slot for ABI_AIX_NODESC. 18771 Disable profiling for 64 bit code on both ABI_V4 and ABI_AIX_NODESC. 18772 Save static chain reg to sp + 12 on ABI_AIX_NODESC. 18773 * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Define. 18774 (ASM_OUTPUT_REG_POP): Define. 18775 * config/rs6000/linux64.h (ASM_OUTPUT_REG_PUSH): Undef. 18776 (ASM_OUTPUT_REG_POP): Undef. 18777 187782002-07-17 Neil Booth <neil@daikokuya.co.uk> 18779 18780 * cpplib.c (do_sccs): Handle #sccs on all systems. 18781 * system.h (SCCS_DIRECTIVE): Poison. 18782 * config/darwin.h, config/freebsd.h, config/netbsd.h, 18783 config/ptx4.h, config/svr3.h, config/svr4.h, config/alpha/elf.h, 18784 config/arm/linux-elf.h, config/c4x/c4x.h, config/d30v/d30v.h, 18785 config/i370/i370.h, config/i386/gas.h, config/i386/sco5.h, 18786 config/i960/i960.h, config/m68hc11/m68hc11.h, config/m68k/3b1.h, 18787 config/m68k/3b1g.h, config/m68k/crds.h, config/m68k/mot3300.h, 18788 config/m68k/pbb.h, config/m88k/m88k.h, config/mips/mips.h, 18789 config/sparc/pbd.h, config/stormy16/stormy16.h, config/vax/vaxv.h: 18790 Remove all references to SCCS_DIRECTIVE. 18791 * doc/cpp.texi, doc/tm.texi: Update. 18792 187932002-07-17 J"orn Rennecke <joern.rennecke@superh.com> 18794 18795 * regrename.c (maybe_mode_change): New function. 18796 (find_oldest_value_reg, copyprop_hardreg_forward_1): Use it. 18797 187982002-07-17 Rodney Brown <rbrown64@csc.com.au> 18799 18800 * config/i386/i386.c (ix86_expand_int_movcc): In the general case 18801 suppress addition when either ct or cf are zero. 18802 188032002-07-17 Eric Botcazou <ebotcazou@multimania.com> 18804 Glen Nakamura <glen@imodulo.com> 18805 18806 PR optimization/6713 18807 * loop.c (loop_givs_rescan): Explicitly delete the insn that 18808 sets a non-replaceable giv after issuing the new one. 18809 188102002-07-17 Neil Booth <neil@daikokuya.co.uk> 18811 18812 * cppexp.c (cpp_interpret_integer, append_digit, parse_defined, 18813 eval_token): Clarify and correct use of "bool" variables. 18814 * cpplib.h (struct cpp_options): Similarly. 18815 * cppmacro.c (parse_params, _cpp_save_parameter): Ditto. 18816 * cpptrad.c (recursive_macro): Similarly. 18817 188182002-07-17 J"orn Rennecke <joern.rennecke@superh.com> 18819 18820 * config/sh/lib1funcs.asm (udivsi3_i4): Implement SHcompact version in 18821 SHmedia code. 18822 18823 * sh.md (cmpgtudi_media): Remove spurious @. 18824 18825 * config/sh/lib1funcs.asm (FMOVD_WORKS): Don't define for little endian. 18826 * sh.h (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for little endian. 18827 18828 * config/sh/lib1funcs.asm (init_trampoline): New entry point. 18829 * sh-protos.h (sh_initialize_trampoline): Declare. 18830 * sh.c (sh_initialize_trampoline): New function. 18831 * sh.h (TRAMPOLINE_SIZE): Only 24 for TARGET_SHMEDIA32. 18832 (TRAMPOLINE_ALIGNMENT): Need cache-line alignment for TARGET_SHMEDIA. 18833 (INITIALIZE_TRAMPOLINE): Call sh_initialize_trampoline. 18834 (TRAMPOLINE_ADJUST_ADDRESS): Not needed for SHcompact. 18835 * sh.md (initialize_trampoline, double_shori): New patterns. 18836 (initialize_trampoline_compact): Likewise. 18837 (shmedia32_initialize_trampoline_big): Remove. 18838 (shmedia32_initialize_trampoline_little): Likewise. 18839 18840 * sh-protos.h (binary_float_operator): Remove declaration. 18841 (sh_expand_unop_v2sf, sh_expand_binop_v2sf): Declare. 18842 * sh.c (print_operand, case 'N'): Check against CONST0_RTX. 18843 (unary_float_operator, sh_expand_unop_v2sf): New functions. 18844 (sh_expand_binop_v2sf): Likewise. 18845 (zero_vec_operand): Delete. 18846 (SH_BLTIN_UDI): New builtin shared signature define. Renumbered 18847 all non-shared ones. 18848 (bdesc): Change all the mextr builtins to use SH_BLTIN_UDI. 18849 Enable nsb and byterev. 18850 * sh.h (CONDITIONAL_REGISTER_USAGE): Initialize DF_HI_REGS. 18851 (HARD_REGNO_MODE_OK): Allow TImode in fp regs. Allow V2SFmode 18852 in general regs. 18853 (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add DF_HI_REGS. 18854 (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. Remove clause for 18855 immediate operands. 18856 (SECONDARY_INPUT_RELOAD_CLASS): Add clause for immediate operands. 18857 Add DF_HI_REGS. 18858 (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Allow 18859 lowpart fp regs - only for big endian for now. 18860 (LEGITIMATE_CONSTANT_P): Don't allow nonzero float vectors 18861 when FPU is in use. 18862 (EXTRA_CONTRAINT_U): Check against CONST0_RTX. 18863 (LOAD_EXTEND_OP): NIL for SImode. 18864 (REGISTER_MOVE_COST): Add DF_HI_REGS. Const for moves between 18865 general and fp registers is 4. 18866 PREDICATE_CODES: Amend binary_float_operator entry. 18867 Remove zero_vec_operand. Add unary_float_operator. 18868 * sh.md (udivsi3_i4_media): Use truncate instead of paradoxical 18869 subreg SET_DEST. 18870 (truncdisi2, truncdihi2, movv2sf): Allow memory destinations. 18871 (truncdiqi2): Do sign extension. 18872 (movsi_media, movdi_media): Allow to use r63 to an fp register. 18873 (movdf_media, movsf_media): Likewise. 18874 (movv2sf_i, movv2sf_i+1): Don't use f{ld,st}.p or SUBREGS. 18875 Collapse to one define_insn_and_split. Allow immediate sources. 18876 (addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New patterns. 18877 (movv4sf_i): Allow immediate sources. Use simplify_gen_subreg. 18878 (movv4sf): Allow immediate sources. 18879 (movsf_media_nofpu+1): Don't split moves to FP registers. 18880 (unary_sf_op, binary_sf_op, mshflo_w_x, concat_v2sf): New patterns. 18881 (movv8qi_i+3): Check against CONST0_RTX. 18882 (mextr1, mextr2. mextr3. mextr4, mextr5, mextr6, mextr7): Use DImode 18883 for input and output operands. Fix argument 3 to gen_mextr_rl. 18884 (mmul23_wl, mmul01_wl, mmulsum_wq_i): s/const_vector/parallel/ 18885 (msad_ubq_i, mshf4_b, mshf0_b, mshf4_l, mshf0_l, mshf4_w): Likewise. 18886 (mshf0_w, fipr, ftrv): Likewise. 18887 (mshfhi_l_di): Now insn_and_split. Can handle FP regs. 18888 188892002-07-17 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com> 18890 18891 * arm.h (ARM_NUM_INTS, ARM_NUM_REGS, ARM_NUM_REGS2): Renamed from 18892 NUM_INTS, NUM_REGS and ARM_NUM_REGS2 respectively. All uses changed. 18893 * arm.c: Similarly. 18894 188952002-07-17 Richard Sandiford <rsandifo@redhat.com> 18896 18897 * config/mips/mips-protos.h (mips_sign_extend): Declare. 18898 * config/mips/mips.h (MASK_DEBUG_H, TARGET_DEBUG_H_MODE): Remove. 18899 (TARGET_SWITCHES): Remove debugh. 18900 (ISA_HAS_TRUNC_W): New macro. 18901 (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS if TARGET_FLOAT64. 18902 (PREDICATE_CODES): Remove se_nonimmediate_operand. 18903 * config/mips/mips.c (movdi_operand): Allow sign-extensions of 18904 any SImode move_operand. 18905 (se_nonimmediate_operand): Remove. 18906 (mips_sign_extend): New. 18907 (mips_move_2words): Use it for sign-extended source operands. 18908 (override_options): Allow integers to be put into single FPRs. 18909 (mips_secondary_reload_class): Handle integers in float registers. 18910 * config/mips/mips.md (extendsidi2): Turn into a define_expand. 18911 (fix_truncsfsi2, fix_truncdfsi2): Likewise. 18912 (fix_truncdfsi2_insn, fix_truncdfsi2_macro): New. 18913 (fix_truncsfsi2_insn, fix_truncsfsi2_macro): New. 18914 (fix_truncdfdi2): Provide only a single alternative, in which the 18915 integer is in a float register. Depend on TARGET_FLOAT64 rather 18916 than TARGET_64BIT. 18917 (fix_truncsfdi2, floatdidf2, floatdisf2): Likewise. 18918 (floatsidf2, floatsisf2): Likewise, but no TARGET_FLOAT64 dependency. 18919 (movdi_internal2): Don't allow the source operand to be sign-extended. 18920 Add alternatives for float registers. 18921 (*movdi_internal2_extend): New. Version of movdi_internal2 that 18922 allows sign-extension. 18923 (*movdi_internal2_mips16): Name the existing mips16 movdi pattern. 18924 (movsi_internal2): Rename to movsi_internal. Add alternatives for 18925 float registers. Remove TARGET_DEBUG_H_MODE test. 18926 (movhi_internal1): Rename to movhi_internal. Don't check 18927 TARGET_DEBUG_H_MODE. Fix transposed *d and *f source constraints. 18928 (movqi_internal1): Rename to movqi_internal and remove 18929 TARGET_DEBUG_H_MODE dependency. 18930 (movsi_internal1, movhi_internal2, movqi_internal2): Remove. 18931 189322002-07-16 Jim Wilson <wilson@redhat.com> 18933 18934 * toplev.c (lang_dependent_init): Create function context for 18935 init_expr_once. 18936 189372002-07-16 Hans-Peter Nilsson <hp@axis.com> 18938 18939 * config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't 18940 --gc-sections if -r. 18941 * config/cris/cris.h: Ditto. 18942 189432002-07-16 Rodney Brown <rbrown64@csc.com.au> 18944 18945 * config/i386/i386.c (ix86_expand_int_movcc): In the case where 18946 the comparison directly gives a mask suppress addition when cf is 18947 zero by complementing the mask. 18948 189492002-07-16 Nathanael Nerode <neroden@gcc.gnu.org> 18950 18951 * Makefile.in: Delete references to enquire. 18952 * enquire.c: Move to contrib. 18953 189542002-07-16 Stan Shebs <shebs@apple.com> 18955 18956 * config/darwin.h (ASM_OUTPUT_LABEL): Move to here from 18957 config/rs6000/darwin.h. 18958 (ASM_OUTPUT_SKIP): Ditto. 18959 (TEXT_SECTION_ASM_OP): Ditto. 18960 (DATA_SECTION_ASM_OP): Ditto. 18961 (ASM_APP_ON): Define. 18962 (ASM_APP_OFF): Define. 18963 * config/rs6000/darwin.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_SKIP, 18964 TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Remove. 18965 18966 * config/darwin.c (func_name_maybe_scoped): Remove unused decl. 18967 (machopic_function_base_name): Declare result to be const. 18968 (machopic_non_lazy_ptr_name): Ditto. 18969 (machopic_stub_name): Ditto. 18970 * config/darwin-protos.h: Ditto for the prototypes. 18971 189722002-07-17 Jan Hubicka <jh@suse.cz> 18973 18974 * m68hc11.c (m68hc11_reorg): Do not rebuild CFG. 18975 189762002-07-17 Jan Hubicka <jh@suse.cz> 18977 18978 * i386.md (prefetch): Fix for 64bit mode. 18979 (prefetch_sse_rex, prefetch_3dnow_rex): New patterns. 18980 189812002-07-17 Jan Hubicka <jh@suse.cz> 18982 18983 * i386.h (MACHINE_DEPENDENT_REORG): New macro. 18984 * i386.c (x86_machine_dependent_reorg): New function. 18985 * i386-protos.h (x86_machine_dependent_reorg): Declare. 18986 189872002-07-16 Zack Weinberg <zack@codesourcery.com> 18988 18989 * builtins.c (std_expand_builtin_va_start): Remove unused 18990 first argument. 18991 (expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and 18992 std_expand_builtin_va_start with just two arguments. 18993 * expr.h: Update prototypes. 18994 18995 * alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h, 18996 arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h, 18997 i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h, 18998 m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h, 18999 mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c, 19000 rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h, 19001 s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h, 19002 sparc.c, stormy16-protos.h, stormy16.h, stormy16.c, 19003 xtensa-protos.h, xtensa.h, xtensa.c: Remove unused first 19004 argument from all implementations of EXPAND_BUILTIN_VA_START 19005 and all uses of std_expand_builtin_va_start. 19006 190072002-07-16 J"orn Rennecke <joern.rennecke@superh.com> 19008 19009 * regrename.c (copy_value): Don't record high part copies. 19010 190112002-07-16 Steve Ellcey <sje@cup.hp.com> 19012 19013 * gcc/config/pa/long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define. 19014 (fixunstfdi_libfunc): Change to use FIXUNS_TRUNCTFDI2_LIBCALL. 19015 * gcc/config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_udbl): New function. 19016 190172002-07-16 Ian Dall <ian@sibyl.beware.dropbear.id.au> 19018 19019 * doc/invoke.texi (NS32K Options): Document -mieee-compare option 19020 19021 * config/ns32k/ns32k.md (addsi3, *frame_addr, *stack_addr): merge 19022 into addsi3 using register class "x" and "y". 19023 19024 * config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf): 19025 "earlyclobber" constraint modifier for some alternative. 19026 19027 * config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble) 19028 (*ble, *blt): Flag to indicate bCOND and sCOND should check for 19029 unordered. 19030 config/ns32k/ns32k.h (CC_UNORD): define corresponding mask. 19031 19032 * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE, MASK_IEEE_COMPARE) 19033 (TARGET_SWITCHES): Add -mieee-compare option. 19034 (OVERRIDE_OPTIONS): 32332 is a subset of 19035 32532. Don't use IEEE_COMPARE -funsafe-math-optimizations. 19036 (TARGET_SWITCHES): Fix description of bit-field option. 19037 * config/ns32k/netbsd.h (TARGET_DEFAULT): Add 19038 -mieee-compare option. Remove 32332 flag. 19039 190402002-07-16 Steve Ellcey <sje@cup.hp.com> 19041 19042 * explow.c (convert_memory_address): Remove special handling 19043 when POINTERS_EXTEND_UNSIGNED < 0. 19044 * config/ia64.md (movsi_symbolic): New instruction for ILP32 mode. 19045 (movedi_symbolic): Fix typo. 19046 (load_fptr): Remove mode restriction so it works for SI and DI. 19047 (load_fptr_internal1): Ditto. 19048 (load_gprel): Ditto. 19049 (load_symptr_internal1): Ditto. 19050 (call_pic): Ditto. 19051 * config/ia64.c (call_operand): Modify mode check. 19052 (ia64_expand_load_address): Handle DI and SI addresses and symbols. 19053 (ia64_expand_move): Ditto. 19054 (ia64_assemble_integer): Handle SImode function pointers. 19055 (ia64_expand_fetch_and_op): Handle SImode mem addresses. 19056 (ia64_expand_op_and_fetch): Ditto. 19057 (ia64_expand_compare_and_swap): Ditto. 19058 (ia64_expand_lock_test_and_set): Ditto. 19059 (ia64_expand_lock_release): Ditto. 19060 190612002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com> 19062 19063 * arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF. 19064 190652002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com> 19066 Richard Earnshaw <rearnsha@arm.com> 19067 19068 * arm.h (LEGITIMATE_PIC_OPERAND_P): Only test 19069 CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF. Simplify logic. 19070 190712002-07-16 Richard Earnshaw <rearnsha@arm.com> 19072 19073 * arm.md (stack_tie): New insn. Use an idiom that the alias code 19074 understands to be a memory clobber. 19075 * arm.c (arm_expand_prologue): Use it. 19076 190772002-07-16 Daniel Berlin <dberlin@dberlin.org> 19078 19079 * ra-rewrite.c: #include reload.h, insn-config.h 19080 * ra-build.c: #include reload.h 19081 * Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to 19082 depend on reload.h, insn-config.h. 19083 190842002-07-16 J"orn Rennecke <joern.rennecke@superh.com> 19085 19086 * expr.c (emit_move_insn_1): Handle arbitrary moves that are 19087 the same size as a word. 19088 19089 * regrename.c (find_oldest_value_reg): Take WORDS_BIG_ENDIAN / 19090 BYTES_BIG_ENDIAN into account. 19091 190922002-07-16 Jan Hubicka <jh@suse.cz> 19093 19094 * i386.md (prefetch): Fix for 64bit mode. 19095 (prefetch_sse_rex, prefetch_3dnow_rex): New patterns. 19096 19097 * i386.md (movss, movsd): Use xorps/xorpd for Athlon. 19098 190992002-07-16 Marek Michalkiewicz <marekm@amelek.gda.pl> 19100 19101 * hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set. 19102 191032002-07-15 Zack Weinberg <zack@codesourcery.com> 19104 19105 * ginclude/varargs.h: Replace with stub which issues #error. 19106 * ginclude/stdarg.h: __builtin_stdarg_start is renamed 19107 __builtin_va_start. 19108 19109 * builtins.def (BUILT_IN_VARARGS_START): Delete. 19110 (BUILT_IN_VA_START): New. 19111 * builtins.c (expand_builtin_va_start): Eliminate first 19112 argument and code to implement pre-ISO varargs. 19113 (std_expand_builtin_va_start): Ignore first argument; it is 19114 always 1. 19115 (expand_builtin): Handle BUILT_IN_VA_START and 19116 BUILT_IN_STDARG_START identically. Delete 19117 BUILT_IN_VARARGS_START case. 19118 19119 * function.c (assign_parms): Delete hide_last_arg and all 19120 its uses. 19121 (mark_varargs): Delete function. 19122 * function.h (struct function): Delete 'varargs' bit. 19123 (current_function_varargs): Delete macro. 19124 * tree.h: Don't declare mark_varargs. 19125 19126 * c-decl.c (c_function_varargs, c_mark_varargs): Delete. 19127 (c_expand_body): Don't call mark_varargs. 19128 * c-objc-common.c: Handle BUILT_IN_VA_START and 19129 BUILT_IN_STDARG_START identically. Delete 19130 BUILT_IN_VARARGS_START case. 19131 * c-tree.h: Don't declare c_mark_varargs. 19132 * c-parse.in: Remove grammar rules for '&...' (which has been 19133 commented out since before 2.7.2) and for '...' in K+R 19134 argument declarations. 19135 19136 * builtins.c, function.c, integrate.c, sibcall.c, 19137 config/alpha/unicosmk.h, config/arc/arc.c, config/arc/arc.h, 19138 config/avr/avr.c, config/cris/cris.c, config/fr30/fr30.c, 19139 config/i960/i960.c, config/i960/i960.md, config/m32r/m32r.c, 19140 config/m32r/m32r.h, config/m88k/m88k.c, config/m88k/m88k.h, 19141 config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h, 19142 config/mn10300/mn10300.c, config/pa/som.h, config/s390/s390.c, 19143 config/sh/sh.c, config/sh/sh.h, config/sparc/sparc.h, 19144 config/stormy16/stormy16.c: Delete all references to 19145 current_function_varargs, and code predicated on that flag. 19146 19147 * config/alpha/alpha.c (alpha_va_start), 19148 config/arc/arc.c (arc_va_start), 19149 config/i386/i386.c (ix86_va_start), 19150 config/mips/mips.c (mips_va_start), 19151 config/mn10300/mn10300.c (mn10300_va_start), 19152 config/rs6000/rs6000.c (rs6000_va_start), 19153 config/s390/s390.c (s390_va_start), 19154 config/sh/sh.c (sh_va_start), 19155 Ignore first argument; it is always 1. 19156 19157 * config/c4x/c4x-protos.h, config/c4x/c4x.c: Delete c4x_va_start. 19158 * config/ia64/ia64-protos.h, config/ia64/ia64.c: Delete ia64_va_start. 19159 * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c: 19160 Delete m68hc11_va_start. 19161 * config/c4x/c4x.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h: 19162 No need to define EXPAND_BUILTIN_VA_START. 19163 19164 * doc/invoke.texi, doc/sourcebuild.texi, doc/tm.texi, 19165 doc/trouble.texi: Remove references to GCC-provided <varargs.h>. 19166 191672002-07-15 Eric Botcazou <ebotcazou@multimania.com> 19168 19169 PR optimization/7153 19170 * regmove.c (optimize_reg_copy_3): Don't optimize if the register 19171 dies in more than one insn. 19172 191732002-07-15 Jason Thorpe <thorpej@wasabisystems.com> 19174 19175 * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Remove. 19176 191772002-07-15 Michael Matz <matz@suse.de>, 19178 Daniel Berlin <dberlin@dberlin.org>, 19179 Denis Chertykov <denisc@overta.ru> 19180 19181 Add a new register allocator. 19182 19183 * ra.c: New file. 19184 * ra.h: New file. 19185 * ra-build.c: New file. 19186 * ra-colorize.c: New file. 19187 * ra-debug.c: New file. 19188 * ra-rewrite.c: New file. 19189 19190 * Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o, 19191 (ra-rewrite.o): New .o files for libbackend.a. 19192 (GTFILES): Add basic-block.h. 19193 19194 * toplev.c (flag_new_regalloc): New. 19195 (f_options): New option "new-ra". 19196 (rest_of_compilation): Call initialize_uninitialized_subregs() 19197 only for the old allocator. If flag_new_regalloc is set, call 19198 new allocator, instead of local_alloc(), global_alloc() and 19199 friends. 19200 19201 * doc/invoke.texi: Document -fnew-ra. 19202 * basic-block.h (FOR_ALL_BB): New. 19203 * config/rs6000/rs6000.c (print_operand): Write small constants 19204 as @l+80. 19205 19206 * df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg. 19207 (df_reg_table_realloc): Make size at least as large as max_reg_num(). 19208 (df_insn_table_realloc): Size argument now is absolute, not relative. 19209 Changed all callers. 19210 19211 * gengtype.c (main): Add the pseudo-type "HARD_REG_SET". 19212 * regclass.c (reg_scan_mark_refs): Ignore NULL rtx's. 19213 19214 2002-06-20 Michael Matz <matz@suse.de> 19215 19216 * df.h (struct ref.id): Make unsigned. 19217 * df.c (df_bb_reg_def_chain_create): Remove unsigned cast. 19218 19219 2002-06-13 Michael Matz <matz@suse.de> 19220 19221 * df.h (DF_REF_MODE_CHANGE): New flag. 19222 * df.c (df_def_record_1, df_uses_record): Set this flag for refs 19223 involving subregs with invalid mode changes, when 19224 CLASS_CANNOT_CHANGE_MODE is defined. 19225 19226 2002-05-07 Michael Matz <matz@suse.de> 19227 19228 * reload1.c (fixup_abnormal_edges): Don't insert on NULL edge. 19229 19230 2002-05-03 Michael Matz <matz@suse.de> 19231 19232 * sbitmap.c (sbitmap_difference): Accept sbitmaps of different size. 19233 19234 Sat Feb 2 18:58:07 2002 Denis Chertykov <denisc@overta.ru> 19235 19236 * regclass.c (regclass): Work with all regs which have sets or 19237 refs. 19238 (reg_scan_mark_refs): Count regs inside (clobber ...). 19239 19240 2002-01-04 Michael Matz <matzmich@cs.tu-berlin.de> 19241 19242 * df.c (df_ref_record): Correctly calculate SUBREGs of hardregs. 19243 (df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only 19244 add new refs. 19245 (df_bb_refs_update): Don't clear insns_modified here, ... 19246 (df_analyse): ... but here. 19247 19248 * sbitmap.c (dump_sbitmap_file): New. 19249 (debug_sbitmap): Use it. 19250 19251 * sbitmap.h (dump_sbitmap_file): Add prototype. 19252 19253 2001-08-07 Daniel Berlin <dan@cgsoftware.com> 19254 19255 * df.c (df_insn_modify): Grow the UID table if necessary, rather 19256 than assume all emits go through df_insns_modify. 19257 19258 2001-07-26 Daniel Berlin <dan@cgsoftware.com> 19259 19260 * regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS, 19261 increase REG_N_REFS (like flow does), so that regclass doesn't 19262 think a reg is useless, and thus, not calculate a class, when it 19263 really should have. 19264 19265 2001-01-28 Daniel Berlin <dberlin@redhat.com> 19266 19267 * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for 19268 dataflow analysis. 19269 192702002-07-15 Jakub Jelinek <jakub@redhat.com> 19271 19272 PR middle-end/7245 19273 * config/i386/i386.c (const_int_1_31_operand): New. 19274 * config/i386/i386.h (PREDICATE_CODES): Add it. 19275 * config/i386/i386.md (ashlsi3_cmp, ashlsi3_cmp_zext, ashlhi3_cmp, 19276 ashlqi3_cmp, ashrsi3_cmp, ashrsi3_cmp_zext, ashrhi3_cmp, ashrqi3_cmp, 19277 lshrsi3_cmp, lshrsi3_cmp_zext, lshrhi3_cmp, lshrqi3_cmp): Use it. 19278 192792002-07-14 Alan Modra <amodra@bigpond.net.au> 19280 19281 PR target/7282 19282 * config/rs6000/rs6000.md (floatsidf2): Enable for POWERPC64. 19283 (floatunssidf2): Likewise. 19284 (floatsidf_ppc64): New insn_and_split. 19285 (floatunssidf_ppc64): Likewise. 19286 192872002-07-14 Andreas Jaeger <aj@suse.de> 19288 19289 * config.gcc (sh64): Remove unused 19290 target_requires_64bit_host_wide_int. 19291 192922002-07-12 Roger Sayle <roger@eyesopen.com> 19293 19294 * expr.c [CLEAR_RATIO]: New macro defining the maximum number 19295 of move instructions to use when clearing memory, c.f. MOVE_RATIO. 19296 [CLEAR_BY_PIECES]: New macro, using CLEAR_RATIO, to determine 19297 whether clear_by_pieces should be used to clear storage. 19298 (clear_storage): Use CLEAR_BY_PIECES instead of MOVE_BY_PIECES. 19299 19300 * doc/tm.texi: Document these two new target macros. 19301 193022002-07-12 Stephane Carrez <stcarrez@nerim.fr> 19303 19304 * config/m68hc11/m68hc11.md ("zero_extendsidi2"): Use D_REG only for 19305 the scratch register. 19306 ("*movhi2_push"): Accept Z_REG because a split pattern can make use 19307 of it, forbid reload to use it. 19308 193092002-07-12 Marek Michalkiewicz <marekm@amelek.gda.pl> 19310 19311 * config/avr/avr.c (test_hard_reg_class): Fix TEST_HARD_REG_BIT 19312 usage on 64-bit hosts, return value was truncated to 32 bits. 19313 193142002-07-12 J"orn Rennecke <joern.rennecke@superh.com> 19315 19316 * simplify-rtx.c (simplify_subreg): Handle floating point 19317 CONST_DOUBLEs. When an integer subreg of a smaller mode than 19318 the element mode is requested, compute a subreg with an 19319 integer mode of the same size as the element mode first. 19320 193212002-07-11 J"orn Rennecke <joern.rennecke@superh.com> 19322 19323 * combine.c (try_combine): When converting a paradoxical subreg 19324 to an extension, take LOAD_EXTEND_OP into account. 19325 193262002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 19327 19328 * config.gcc (mips-sgi-irix6*o32): New configuration. 19329 19330 * configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32 19331 configurations. 19332 * configure: Regenerate. 19333 19334 * config/mips/iris6-o32-as.h: New file. 19335 * config/mips/iris6-o32.h: New file. 19336 19337 * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define. 19338 (NM_FLAGS): Define. 19339 (HAVE_AS_SHF_MERGE): Undefine. 19340 19341 * config/mips/t-iris5-as: New file. 19342 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it. 19343 19344 * config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME, 19345 SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK, 19346 SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT, 19347 dp-bit.c, fp-bit.c): Move ... 19348 * config/mips/t-iris5-6: ... here. 19349 New file, shared by IRIX 5 and IRIX 6. 19350 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*, 19351 mips-sgi-irix5*): Use it. 19352 19353 * config/mips/iris6.h: Remove duplicate comment. 19354 19355 * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 && 19356 !TARGET_IRIX6]: Define. 19357 (mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6. 19358 19359 * config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment. 19360 193612002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca> 19362 19363 * pa.md (adddi3): Change predicate of operand 2 to adddi3_operand 19364 and delete code to force constant to register. 19365 * pa-protos.h (adddi3_operand): Add prototype. 19366 * pa.c (adddi3_operand): New function. 19367 193682002-07-11 Roger Sayle <roger@eyesopen.com> 19369 19370 * c-decl.c (duplicate_decls): Preserve the noreturn attribute on 19371 non-ANSI builtin functions. 19372 193732002-07-11 J"orn Rennecke <joern.rennecke@superh.com> 19374 19375 * rtl.h (gen_rtx_CONST_VECTOR): Declare. 19376 * gengenrtl.c (special_rtx): Check for CONST_VECTOR. 19377 * emit-rtl.c (gen_rtx_CONST_VECTOR): New function. 19378 (gen_const_vector_0): Use it. 19379 193802002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca> 19381 19382 * pa.md (adddi3): For 32-bit targets, force constants to a register 19383 if they don't fit in an 11-bit immediate. Change insn predicate to 19384 arith11_operand. Remove comment. 19385 * pa.c (cint_ok_for_move): Fix comment. 19386 (emit_move_sequence): Don't directly split DImode constants on 32-bit 19387 targets. 19388 193892002-07-11 Tim Josling <tej@melbpc.org.au> 19390 19391 Remove front end hard coding from gengtype.c. 19392 19393 * Makefile.in 19394 (STAGESTUFF): add gtyp-gen.h 19395 (GTFILES): Remove front end specific files. 19396 (GTFILES_FILES_LANGS): New, from configure.. 19397 (GTFILES_FILES_FILES): Likewise. 19398 (GTFILES_LANG_DIR_NAMES): Likewise. 19399 (GTFILES_SRCDIR): Likewise. 19400 (gtyp-gen.h): Build from configure information. 19401 (s-gtype): Remove command line parameters from gengtype. 19402 (gengtype.o): Remove dependency on GTFILES. Depend on gtyp-gen.h. 19403 (mostlyclean): Delete files generated by and for gengtype. 19404 19405 * c-config-lang.in: New file. 19406 19407 * configure.in (all_gtfiles_files_langs): New. Accumulate files 19408 for each language. 19409 (all_gtfiles_files_files): New. Accumulate language for each file 19410 accumulated. 19411 (gtfiles): Pick up value for C. 19412 (srcdir): AC-SUBST this variable. 19413 (all_gtfiles_files_langs): AC-SUBST this variable. 19414 (all_gtfiles_files_files): AC-SUBST this variable. 19415 19416 * configure: Regenerate. 19417 19418 * gengtype-lex.l (parse_file): Make parameter const. 19419 19420 * gengtype.c (toplevel): include gtyp-gen.h. 19421 (BASE_FILE_<language> unnamed enum): Delete. 19422 (lang_names): Delete (replaced by gtyp-gen.h) 19423 (lang_dir_names): From gtyp-gen.h, replaces lang_names; changed 19424 all references. 19425 (NUM_GT_FILES): New. 19426 (NUM_LANG_FILES): New. 19427 (srcdir_len): New. 19428 (NUM_BASE_FILES): Change calculation. 19429 (open_base_files): Change prototype to avoid warning. 19430 (startswith): Delete. 19431 (get_file_basename): Iterate through generated language list not 19432 hard coded list. 19433 (get_base_file_bitmap): Use generated list of files and languages. 19434 (close_output_files): Add prototype to rmove warning. 19435 (main): Iterate through list of generated files from gtyp-gen.h 19436 rather than command line paramaters. Ignore duplicated file 19437 names. 19438 19439 * gengtype.h (parse_file): Amend prototype for const parameter. 19440 19441 * doc/sourcebuild.texi: Document gtfiles variable. 19442 19443 * doc/gty.texi: Document changes to gtfiles variable for front 19444 ends. 19445 19446 * objc/config-lang.in (gtfiles): Add files needed for objc front 19447 end. 19448 194492002-07-10 Roger Sayle <roger@eyesopen.com> 19450 19451 PR c/2454 19452 * combine.c (nonzero_bits): LOAD_EXTEND_OP should only apply 19453 to SUBREGs of MEMs. (num_sign_bit_copies): Likewise. 19454 194552002-07-10 Roger Sayle <roger@eyesopen.com> 19456 Zack Weinberg <zack@codesourcery.com> 19457 19458 * builtins.def: Make the argument types of abort and exit 19459 independent of the front-end. 19460 194612002-07-11 Alan Modra <amodra@bigpond.net.au> 19462 19463 * config/rs6000/linux64.h (ASM_SPEC): Define. 19464 194652002-07-10 Aldy Hernandez <aldyh@redhat.com> 19466 19467 * config/rs6000/rs6000.c (emit_frame_save): New. 19468 (rs6000_frame_related): Replace reg2 before reg. 19469 (rs6000_emit_prologue): Use emit_frame_save for saving gprs, fprs, 19470 and eh_return registers. 19471 194722002-07-10 Toon Moene <toon@moene.indiv.nluug.nl> 19473 19474 Revert all patches for optimization of Complex .op. Real. 19475 * complex_part_zero_p: Remove 19476 * expand_cmplxdiv_straight: Replace complex_part_zero_p(x) 19477 with x. 19478 * expand_cmplxdiv_wide: Ditto. 19479 * expand_binop: Ditto. 19480 194812002-07-10 Marek Michalkiewicz <marekm@amelek.gda.pl> 19482 19483 * config/avr/avr.md: Fix two 0x80000000 constants to make them 19484 negative also on 64-bit hosts. 19485 19486 Default to -fno-reorder-blocks when optimizing for size. 19487 * config/avr/avr-protos.h (avr_optimization_options): Declare. 19488 * config/avr/avr.c (avr_optimization_options): New function. 19489 * config/avr/avr.h (OPTIMIZATION_OPTIONS): New. 19490 19491 Optimize returning from simple functions. 19492 * config/avr/avr-protos.h (avr_simple_epilogue): Declare. 19493 * config/avr/avr.c (avr_simple_epilogue): New function. 19494 * config/avr/avr.md (return): New insn. 19495 194962002-07-10 Douglas B Rupp <rupp@gnat.com> 19497 19498 * config/i386/i386.c (ix86_svr3_asm_out_constructor): Add 19499 HAS_INIT_SECTION to protection. 19500 195012002-07-10 Mark Mitchell <mark@codesourcery.com> 19502 19503 * doc/invoke.texi (Debugging Options): Mention that -gdwarf is 19504 deprecated. 19505 195062002-07-10 J"orn Rennecke <joern.rennecke@superh.com> 19507 19508 * combine.c (gen_lowpart_for_combine): Handle vector modes. 19509 Supply non-VOID mode to simplify_gen_subreg. 19510 195112002-07-10 Jan Hubicka <jh@suse.cz> 19512 19513 * i386.c (ix86_init_mmx_sse_builtins): Fix thinko. 19514 195152002-07-10 Jeffrey A Law <law@redhat.com> 19516 19517 * mn10200.c (expand_prologue): Create REG_MAYBE_DEAD notes 19518 as appropriate. 19519 19520 * mn10200.c (expand_epilogue): Fix test to determine which scratch 19521 register to use. 19522 195232002-07-10 J"orn Rennecke <joern.rennecke@superh.com> 19524 19525 * cse.c (cse_insn): Supply proper SUBREG_BYTE to simplify_gen_subreg. 19526 Get mode from dest. 19527 If simplify_gen_subreg fails, try next equivalent. 19528 195292002-07-09 Gabriel Dos Reis <gdr@codesourcery.com> 19530 19531 * diagnostic.h: #include location.h 19532 (location_t): Move definition to.. 19533 * location.h: ... here. New file. 19534 * tree.h: #include location.h 19535 (DECL_SOURCE_LOCATION): New macro. 19536 (DECL_SOURCE_FILE): Use. 19537 (DECL_SOURCE_LINE): Likewise. 19538 (struct tree_decl): REplace filename and linenum with locus. 19539 * Makefile.in (TREE_H): add location.h 19540 (diagnostic.o): Depends on gt-location.h 19541 (gt-location.h): Depends on s-gtype 19542 195432002-07-09 Matt Kraai <kraai@alumni.cmu.edu> 19544 19545 * config/rs6000/aix.h: Convert CPP_PREDEFINES to 19546 TARGET_OS_CPP_BUILTINS. 19547 * config/rs6000/aix31.h: Likewise. 19548 * config/rs6000/aix41.h: Likewise. 19549 * config/rs6000/aix43.h: Likewise. 19550 * config/rs6000/aix51.h: Likewise. 19551 * config/rs6000/beos.h: Likewise. 19552 * config/rs6000/darwin.h: Likewise. 19553 * config/rs6000/eabi.h: Likewise. 19554 * config/rs6000/eabisim.h: Likewise. 19555 * config/rs6000/linux.h: Likewise. 19556 * config/rs6000/linux64.h: Likewise. 19557 * config/rs6000/lynx.h: Likewise. 19558 * config/rs6000/mach.h: Likewise. 19559 * config/rs6000/rtems.h: Likewise. 19560 * config/rs6000/sysv4.h: Likewise. 19561 * config/rs6000/vxppc.h: Likewise. 19562 195632002-07-09 Devang Patel <dpatel@apple.com> 19564 * objc/objc-act.c (adjust_type_for_id_default): Fix my previous patch. 19565 Do not allow ObjC objects as a parameter type for Objective-C methods. 19566 My previous patch restricted 'struct' also. 19567 195682002-07-09 Neil Booth <neil@daikokuya.co.uk> 19569 19570 * cpperror.c (cpp_error): Default to directive_line within 19571 directives here. 19572 * cppexp.c (cpp_interpret_integer): Only use traditional 19573 number semantics in directives. 19574 * cpplib.c (prepare_directive_trad): Don't reset pfile->line. 19575 (do_include_common): Similarly. 19576 * cpptrad.c (scan_out_logical_line): Implement accurate 19577 quoting of <> in #include. 19578 * doc/cpp.texi: Update. 19579 195802002-07-09 Stephen Clarke <stephen.clarke@superh.com> 19581 J"orn Rennecke <joern.rennecke@superh.com> 19582 19583 * sh.c (sh_adjust_cost): Special handling of SHMEDIA code. 19584 * sh.md (attribute issues): Replace with: 19585 (attribute pipe_model). All users changed. 19586 (attribute type): Change pt / ptabs to pt_media / ptabs_media. 19587 All users changed. 19588 (function units sh5issue, sh5fds): New. 19589 (attribute is_mac_media): New. 19590 (adddi3_media, subdi3_media, divsi3_i1_media, anddi3): Add type. 19591 (andcdi3, iordi3, xordi3, ashldi3_media, lshrdi3_media): Likewise. 19592 (ashrdi3_media, negdi_media, extendsidi2, movqi_media): Likewise. 19593 (movhi_media, shori_media, movv2sf_i, jump_media): Likewise. 19594 (call_media, call_value_media, sibcall_media): Likewise. 19595 (casesi_jump_media, casesi_shift_media, casesi_load_media): Likewise. 19596 (return_media_i, addsf3_media, subsf3_media, mulsf3_media): Likewise. 19597 (mac_media, divsf3_media, floatdisf2, floatsisf2_media): Likewise. 19598 (fix_truncsfdi2, fix_truncsfsi2_media, cmpeqsf_media): Likewise. 19599 (cmpgtsf_media, cmpgesf_media, cmpunsf_media, negsf2_media): Likewise. 19600 (sqrtsf2_media, abssf2_media, adddf3_media, subdf3_media): Likewise. 19601 (muldf3_media, divdf3_media, floatdidf2, floatsidf2_media): Likewise. 19602 (fix_truncdfdi2, fix_truncdfsi2_media, cmpeqdf_media): Likewise. 19603 (cmpgtdf_media, cmpgedf_media,cmpundf_media, negdf2_media): Likewise. 19604 (sqrtdf2_media, absdf2_media, extendsfdf2_media): Likewise. 19605 (truncdfsf2_media): Likewise. 19606 (movsi_media, movsi_media_nofpu, movdi_media): Use new types. 19607 (movdi_media_nofpui, movdf_media, movdf_media_nofpu): Likewise. 19608 196092002-07-09 J"orn Rennecke <joern.rennecke@superh.com> 19610 19611 * sh.h (PREDICATE_CODES): Add general_extend_operand and inqhi_operand. 19612 * sh.c (general_extend_operand, inqhi_operand): New functions. 19613 * sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Collapse 19614 alternatives using 'N' modifier. Add type. 19615 (adddi3z_media): Likewise. Enable generator function generation. 19616 (movdicc_false, movdicc_true, addsi3_media, subsi3_media): Use more 19617 exact predicates / constraints. Add type. 19618 (subsi3): Allow 0 for SHMEDIA. 19619 (udivsi3_i4_media): Use match_operand for input values 19620 rather than hard registers. 19621 (udivsi3 - TARGET_SHMEDIA_FPU case): Don't ferry values 19622 unnecessarily through hard registers. Keep copies of pseudo 19623 registers outside of the libcall sequence. 19624 (mulsidi3_media, umulsidi3_media): Use more exact predicates. Add type. 19625 (ashlsi3_media, ashrsi3_media, lshrsi3_media): Likewise. 19626 (zero_extendsidi2, zero_extendhidi2, zero_extendqidi2): Likewise. 19627 (extendhidi2, extendqidi2): Likewise. 19628 (andsi3_compact): Name. 19629 (andcdi3): Enable generator function generation. 19630 (zero_extendhisi2, zero_extendqisi2): Rename to 19631 (zero_extendhisi2_compact, zero_extendqisi2_compact). 19632 (extendhisi2, extendqisi2): Rename to 19633 (extendhisi2_compact, extendqisi2_compact). 19634 (rotldi3, rotldi3_mextr, rotrdi3, rotrdi3_mextr): New patterns. 19635 (loaddi_trunc, zero_extendhisi2, zero_extendhisi2_media): Likewise. 19636 (zero_extendhisi2_media+1, zero_extendqisi2): Likewise. 19637 (zero_extendqisi2_media, extendhisi2, extendhisi2_media): Likewise. 19638 (extendhisi2_media, extendhisi2_media+1, extendqisi2): Likewise. 19639 (extendqisi2_media, extendqisi2_media+1, truncdisi2): Likewise. 19640 (truncdihi2, truncdiqi2, reload_inqi, reload_inhi): Likewise. 19641 (shmedia32_initialize_trampoline_big): Likewise. 19642 (shmedia32_initialize_trampoline_little): Likewise. 19643 (nsb, nsbsi, nsbdi, ffsdi2, ffssi2, byterev): Likewise. 19644 (negdi2): Remove spurious T clobber. 19645 (zero_extendhidi2+1, extendhidi2+1, extendqidi2+1): Handle TRUNCATE. 19646 (movsi_media, movsi_media_nofpu): Remove spurious *k after b. 19647 (movdi_media, movdi_media_nofpu, pt, ptb): Likewise. 19648 (movsi_media_nofpu+2, movhi_media+1): Only do split after reload. 19649 (ic_invalidate_line_media): Write back data cache before invalidating 19650 instruction cache. Add type. 19651 (movsf_media): Sign-extend when the destination is a general 19652 purpose register. Add type. 19653 (bgt_media, bge_media, bgtu_media, bgeu_media, blt_media_i): Allow 0. 19654 (casesi_worker_0+1): Only increment ref count for proper label. 19655 (casesi_worker_0+2): Likewise. 19656 196572002-07-09 Mark Mitchell <mark@codesourcery.com> 19658 19659 * dwarfout.c (dwarfout_init): Warn that DWARF1 is deprecated. 19660 196612002-07-09 Steve Ellcey <sje@cup.hp.com> 19662 19663 * gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer 19664 from Pmode to ptr_mode. 19665 (get_exception_pointer): Ditto. 19666 (connect_post_landing_pads): Ditto. 19667 (dw2_build_landing_pads): Ditto. 19668 196692002-07-08 Steve Ellcey <sje@cup.hp.com> 19670 * gcc/c-pragma.h (add_to_renaming_pragma_list): New function. 19671 * gcc/c-pragma.c (add_to_renaming_pragma_list): New function. 19672 (handle_pragma_redefine_extname): Change to use new function. 19673 196742002-07-08 Roger Sayle <roger@eyesopen.com> 19675 19676 * combine.c (combine_simplify_rtx): Add an explicit cast 19677 to avoid signed/unsigned comparison warning. 19678 (simplify_if_then_else): Likewise. 19679 (extended_count): Likewise. 19680 (simplify_shift_const): Likewise. 19681 (simplify_comparison): Likewise. 19682 196832002-07-08 Richard Sandiford <rsandifo@redhat.com> 19684 19685 * config/mips/mips.md: Add imadd type. Update scheduler description 19686 to use imadd as well as imul. 19687 (*mul_acc_si, *madsi): Change imul alternatives to imadd. 19688 (*mul_acc_di, *mul_acc_64bit_di): Likewise. 19689 (*mul_sub_si): Likewise for first alternative. Change second 19690 alternative from imul to multi. 19691 196922002-07-07 Neil Booth <neil@daikokuya.co.uk> 19693 19694 * c-common.c (c_common_post_options): Update prototype; 19695 don't init backends if preprocessing only. 19696 * langhooks-def.h (LANG_HOOKS_POST_OPTIONS): Update. 19697 * langhooks.h (struct lang_hooks): Update post_options to 19698 return a boolean. 19699 * toplev.c (parse_options_and_default_flags, do_compile, 19700 lang_independent_init): Update prototypes. Allow the 19701 front end to specify that there is no need to initialize 19702 the back end. 19703 (general_init): Move call to hex_init here... 19704 (toplev_main): ...from here. Pass flag for back end init 19705 suppression. 19706 197072002-07-07 J"orn Rennecke <joern.rennecke@superh.com> 19708 19709 * sh.h (PRINT_OPERAND_PUNCT_VALID_P): Allow '\''. 19710 (PREDICATE_CODES): Add entries for equality_comparison_operator, 19711 greater_comparison_operator and less_comparison_operator. 19712 * sh.c (print_operand): Add '\'' code. Make 'o' handle 19713 more operators. 19714 (equality_comparison_operator): New function. 19715 (greater_comparison_operator, less_comparison_operator): Likewise. 19716 * sh.md (beq_media_i): Disable generator function generation. 19717 Use match_operator to handle a whole class of comparisons. Add 19718 modifier in output template to provide branch prediction. Add type. 19719 (bgt_media_i, ble_media_i): Likewise. Allow zero operands. 19720 (bne_media_i, bge_media_i, bgtu_media_i, bgeu_media_i): Delete. 19721 (blt_media_i, bleu_media_i, bltu_media_i): Likewise. 19722 (bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu): Allow zero operands. 19723 197242002-07-07 Hans-Peter Nilsson <hp@bitrange.com> 19725 19726 Emit MMIX function prologue and epilogue as rtl. 19727 * config/mmix/mmix.md ("call"): Use mmix_get_hard_reg_initial_val, 19728 not unprototyped get_hard_reg_initial_val. 19729 ("call_value", "nonlocal_goto_receiver"): Ditto. 19730 ("return"): Make define_expand. Move real insn to... 19731 ("*expanded_return"): New pattern. 19732 ("prologue", "epilogue"): New define_expands. 19733 * config/mmix/mmix.h (MMIX_rO_REGNUM): New macro. 19734 (struct machine_function): New member in_prologue. 19735 (FIRST_PSEUDO_REGISTER): Adjust for including rO as register. 19736 (FIXED_REGISTERS, CALL_USED_REGISTERS): Ditto. 19737 (MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Ditto. 19738 (MMIX_GNU_ABI_REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Ditto. 19739 (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Ditto. 19740 (LOCAL_REGNO): Define. Adjust comment. 19741 * config/mmix/mmix.c (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS): 19742 Consider regs_ever_live[MMIX_rJ_REGNUM], not just 19743 leaf_function_p. 19744 (MMIX_OUTPUT_REGNO): Don't translate registers while outputting 19745 the prologue. 19746 (mmix_target_asm_function_prologue): Make static. Just mark that 19747 the prologue is being emitted. Move guts to... 19748 (mmix_expand_prologue): New function. Adjust for emitting 19749 prologue as rtl. For sizes, use HOST_WIDE_INT only. 19750 (mmix_target_asm_function_epilogue): Make static. Simply emit a 19751 \n. Move guts to... 19752 (mmix_expand_epilogue): New function. Adjust for emitting 19753 epilogue as rtl. For sizes, use HOST_WIDE_INT only. 19754 (mmix_target_asm_function_end_prologue): Mark that the prologue 19755 has ended. 19756 (TARGET_ASM_FUNCTION_END_PROLOGUE): Define. 19757 (mmix_conditional_register_usage): Improve comments. 19758 (mmix_local_regno): New function. 19759 (mmix_emit_sp_add, mmix_get_hard_reg_initial_val): Ditto. 19760 * config/mmix/mmix-protos.h (mmix_local_regno): Prototype. 19761 (mmix_expand_prologue, mmix_expand_epilogue): Ditto. 19762 (mmix_get_hard_reg_initial_val): Ditto. 19763 197642002-07-06 Andreas Jaeger <aj@suse.de> 19765 19766 * toplev.c (set_fast_math_flags): Don't use ISO C style function 19767 definitions. 19768 * gengtype.c (open_base_files): Likewise. 19769 (close_output_files): Likewise. 19770 * tracer.c (find_best_predecessor): Likewise. 19771 (find_best_successor): Likewise. 19772 (ignore_bb_p): Likewise. 19773 197742002-07-05 Roger Sayle <roger@eyesopen.com> 19775 19776 PR c++/7099 19777 * builtin-attrs.def: Define new attribute lists for use in 19778 builtins.def. 19779 * builtins.def [DEF_BUILTIN]: Modify to take an additional 19780 ATTRS argument, an enumerated value defined in builtin-attrs.def 19781 that represents the attribute list for the builtins. Modify 19782 all builtin functions to pass an appropriate attribute list. 19783 Specify "abort", "exit", "_exit" and "_Exit" builtins here with 19784 their required noreturn attributes. 19785 * tree.h (enum_builtin_function): Ignore the additional parameter 19786 to DEF_BUILTIN. 19787 * builtins.c (built_in_names): Likewise. 19788 * c-common.c: (builtin_function_2): Replace the "int noreturn_p" 19789 argument with a tree representing the functions attribute list. 19790 Pass this "attrs" argument to builtin_function. No longer handle 19791 the noreturn_p processing manually. 19792 (built_in_attributes): Move the definitions from builtin-attrs.def 19793 before c_common_nodes_and_builtins. 19794 (c_common_nodes_and_builtins): Handle the new ATTRS parameter in 19795 DEF_BUILTIN, passing it to both builtin_function and the changed 19796 builtin_function_2. 19797 19798 * doc/extend.texi: Document __builtin_abort, __builtin_exit, 19799 __builtin__exit and __builtin__Exit. 19800 198012002-07-05 Stephane Carrez <stcarrez@nerim.fr> 19802 19803 * config/m68hc11/m68hc11.md ("*movqi_68hc12"): Avoid allocating 19804 QI mode registers in soft registers. 19805 ("zero_extendqihi2"): Do not take into account soft registers 19806 for register allocation (use '*' constraint). 19807 198082002-07-05 Stephane Carrez <stcarrez@nerim.fr> 19809 19810 * config/m68hc11/m68hc11.md ("*ashlsi3"): Avoid saving y if we know 19811 it is dead. 19812 ("*ashrsi3"): Likewise. 19813 ("*lshrsi3"): Likewise. 19814 198152002-07-05 Vladimir Makarov <vmakarov@redhat.com> 19816 19817 * genautomata.c (output_max_insn_queue_index_def): Take latencies 19818 into account. 19819 198202002-07-05 Stephane Carrez <stcarrez@nerim.fr> 19821 19822 * config/m68hc11/m68hc11.md (peephole2): New peephole2 to optimize 19823 address computation and memory moves. 19824 198252002-07-03 Mark Mitchell <mark@codesourcery.com> 19826 19827 PR c++/6706 19828 * dwarfout.c (output_reg_number): Fix warning message. 19829 (output_bound_representation): Check SAVE_EXPR_RTL is not NULL 19830 before using it. 19831 198322002-07-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 19833 19834 * gcc/gcc.c (asm_debug): Move initialization ... 19835 (init_spec): ... here. 19836 198372002-07-05 Nathan Sidwell <nathan@codesourcery.com> 19838 19839 * c-parse.in (extdef): Append ';'. 19840 (old_style_parm_decls): Append ';'. 19841 198422002-07-04 Daniel Jacobowitz <drow@mvista.com> 19843 19844 * configure.in: Correct typos: gcc_cv_as_gdwarf2_debug_flag to 19845 gcc_cv_as_gdwarf2_flag and gcc_cv_as_gstabs_debug_flag 19846 to gcc_cv_as_gstabs_flag. 19847 * configure: Rebuilt. 19848 198492002-07-04 Geoffrey Keating <geoffk@redhat.com> 19850 19851 * ggc.h (ggc_add_root): Document as obsolete. 19852 198532002-07-04 J"orn Rennecke <joern.rennecke@superh.com> 19854 19855 * sh.md (mshfhi_b, mshflo_b, mshfhi_l, mshflo_l, mshfhi_w): Add DONE. 19856 (mshflo_w): Likewise. 19857 198582002-07-04 J"orn Rennecke <joern.rennecke@superh.com> 19859 19860 * simplify-rtx.c (simplify_subreg): Reduce problem of finding 19861 vector mode subregs of constants to finding integer mode 19862 subregs of constants. 19863 * cse.c (cse_insn): Use simplify_gen_subreg. 19864 * convert.c (convert_to_integer): Don't strip a NOP_EXPR 19865 From a vector mode expression of different size than the 19866 target mode. 19867 198682002-07-03 Eric Christopher <echristo@redhat.com> 19869 19870 * config/mips/linux.h: Add #undef for SUBTARGET_CPP_SPEC. 19871 * config/mips/mips.h: Remove deprecated -m<processor> options 19872 and cc1_cpu_spec associated. 19873 (CONSTANT_ADDRESS_P): Fix last patch. 19874 (ASM_DECLARE_FUNCTION_NAME): Declare. Fix comment. 19875 * config/mips/mips.md (bungt, bunge, sungt_df, sungt_sf, sunge_df, 19876 sunge_sf): Remove. 19877 198782002-07-03 Stan Shebs <shebs@apple.com> 19879 19880 * config/darwin.h (APPLE_CC): Remove, not meaningful in FSF GCC. 19881 (STRINGIFY_THIS, REALLY_STRINGIFY): Remove. 19882 (CPP_SPEC): Remove insertion of APPLE_CC definition. 19883 198842002-07-03 Roger Sayle <roger@eyesopen.com> 19885 19886 * combine.c (struct_undo): Change types of recorded substitutions 19887 to be either "int" or "rtx", instead of "unsigned int" and "rtx". 19888 (do_SUBST_INT): Change types of the substitution from unsigned int 19889 to int, to avoid compilation warning from SUBST_INT's only caller. 19890 19891 (make_extraction): Add cast to avoid compilation warning. 19892 (force_to_mode): Remove cast to avoid compilation warning. 19893 198942002-07-03 Eric Botcazou <ebotcazou@multimania.com> 19895 Jeff Law <law@redhat.com> 19896 19897 * i386.md (length_immediate attribute): Fix typo. 19898 (length_address attribute): Likewise. 19899 (modrm attribute): Set it to 0 for immediate call instructions. 19900 (jcc_1 pattern): Set modrm attribute to 0. 19901 (jcc_2 pattern ): Likewise. 19902 (jump pattern): Likewise. 19903 (doloop_end_internal pattern): Explicitly set length. 19904 (leave pattern): Fix typo. 19905 (leave_rex64 pattern): Likewise. 19906 199072002-07-03 David Edelsohn <edelsohn@gnu.org> 19908 19909 * config/rs6000/rs6000.md (fix_truncdfsi2_internal): Ignore DImode 19910 in FPR as preference. 19911 (fctiwz): Same. 19912 (floatdidf2, fix_truncdfdi2): Same. 19913 (floatdisf2, floatditf2, fix_trunctfdi2): Same. 19914 (floatditf2): Same. 19915 (floatsitf2, fix_trunctfsi2): SImode in GPR. 19916 (ctrdi): Remove FPR alternative and splitter. 19917 199182002-07-03 Will Cohen <wcohen@redhat.com> 19919 19920 * config/i386/i386.c (x86_integer_DFmode_moves): Disable for PPro. 19921 199222002-07-03 J"orn Rennecke <joern.rennecke@superh.com> 19923 19924 * optabs.c (expand_vector_binop): Don't store using a SUBREG smaller 19925 than UNITS_PER_WORD, unless this is little endian and the first unit 19926 in this word. Let extract_bit_field decide how to load an element. 19927 Force arguments to matching mode. 19928 (expand_vector_unop): Likewise. 19929 19930 * simplify-rtx.c (simplify_subreg): Don't assume that all vectors 19931 consist of word_mode elements. 19932 * c-typeck.c (build_binary_op): Allow vector types for BIT_AND_EXPR, 19933 BIT_ANDTC_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR. 19934 (build_unary_op): Allow vector types for BIT_NOT_EPR. 19935 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg for 19936 CONST_VECTOR. 19937 * optabs.c (expand_vector_binop): Try to perform operation in 19938 smaller vector modes with same inner size. Add handling of AND, IOR 19939 and XOR. Reject expansion to inner-mode sized scalars when using 19940 OPTAB_DIRECT. Use simplify_gen_subreg on constants. 19941 (expand_vector_unop): Try to perform operation in smaller vector 19942 modes with same inner size. Add handling of one's complement. 19943 When there is no vector negate operation, try a vector subtract 19944 operation. Use simplify_gen_subreg on constants. 19945 * simplify-rtx.c (simplify_subreg): Add capability to convert vector 19946 constants into smaller vectors with same inner mode, and to 19947 integer CONST_DOUBLEs. 19948 199492002-07-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 19950 19951 * c-parse.in (parsing_iso_function_signature): New variable. 19952 (extdef_1): New, copied from... 19953 (extdef): ... here. Reset parsing_iso_function_signature. 19954 (old_style_parm_decls): Reset parsing_iso_function_signature. 19955 (old_style_parm_decls_1): New, copied from old_style_parm_decls. 19956 Warn about ISO C style function definitions. 19957 (nested_function, notype_nested_function): Reset 19958 parsing_iso_function_signature. 19959 (parmlist_2): Set parsing_iso_function_signature. 19960 19961 * doc/invoke.texi (-Wtraditional): Document new behavior. 19962 199632002-07-02 Chris Demetriou <cgd@broadcom.com> 19964 19965 * config.gcc (mips*el-*-*): Use tm_defines to set 19966 TARGET_ENDIAN_DEFAULT, rather than including mips/little.h. 19967 * config/mips/little.h: Remove. 19968 199692002-07-02 Devang Patel <dpatel@apple.com> 19970 19971 * objc/objc-act.c (adjust_type_for_id_default): Do not allow an 19972 object as parameter. Prevent something like 'NSObject' to be 19973 used as the type for a method argument. 19974 199752002-07-03 Neil Booth <neil@daikokuya.co.uk> 19976 19977 * cpptrad.c: Update comment. 19978 199792002-07-02 Neil Booth <neil@daikokuya.co.uk> 19980 19981 * doc/cpp.texi: Update for traditional preprocessing changes. 19982 * goc/cppopts.texi: Similarly. 19983 199842002-07-02 Ziemowit Laski <zlaski@apple.com> 19985 19986 * c-parse.in (designator): Enable designated initializers if ObjC. 19987 (objcmessageexpr): Remove references to objc_receiver_context. 19988 * objc/objc-act.h (objc_receiver_context): Remove decl. 19989 * objc/objc-act.c (objc_receiver_context): Remove. 19990 (lookup_objc_ivar): Test objc_method_context instead of 19991 objc_receiver_context. 19992 199932002-07-02 J"orn Rennecke <joern.rennecke@superh.com> 19994 19995 * sh.c (print_operand, case 'N'): Allow zero vector. 19996 (arith_reg_or_0_operand): Likewise. 19997 (zero_vec_operand): Check for CONST_VECTOR, not PARALLEL. 19998 * sh.h (CONST_COSTS): 0 has 0 cost. Check OUTER_CODE for 19999 IOR, XOR, PLUS and SET and take their respective constant 20000 ranges into account. 20001 (PREDICATE_CODES, arith_reg_or_0_operand): Can be CONST_VECTOR. 20002 * sh.md (subdi3, subdi3_media): Allow zero operand. 20003 (movv8qi_i+3): Only vector that is not split is the zero vector. 20004 Fix operand 3 to simplify_subreg. 20005 (movv2si_i): Split alternative 1. 20006 (mshfhi_l_di_rev+1): New splitter. 20007 200082002-07-02 Neil Booth <neil@daikokuya.co.uk> 20009 20010 PR preprocessor/7029 20011 * cppinit.c (cpp_handle_option): Suppress warnings with an 20012 implicit "-w" for "-M" and "-MM". 20013 * doc/cppopts.texi: Update. 20014 200152002-07-01 Roger Sayle <roger@eyesopen.com> 20016 20017 * config/sh/sh.c (sh_media_init_builtins): Change use of poisoned 20018 identifier "bzero" to "memset". Pass extra NULL_TREE argument to 20019 builtin_function. 20020 200212002-07-02 Alan Modra <amodra@bigpond.net.au> 20022 20023 * README.Portability: Fix typos. 20024 200252002-07-01 Hans-Peter Nilsson <hp@axis.com> 20026 20027 PR target/7177 20028 * config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Correct number 20029 of indirections for register inside sign-extended mem part. 20030 200312002-07-01 Roger Sayle <roger@eyesopen.com> 20032 20033 * tree.h: Modify builtin_function interface to take an extra 20034 argument ATTRS, which is a tree representing an attribute list. 20035 20036 * c-decl.c (builtin_function): Accept additional parameter. 20037 * objc/objc-act.c (builtin_function): Likewise. 20038 * f/com.c (builtin_function): Likewise. 20039 * java/decl.c (builtin_function): Likewise. 20040 * ada/utils.c (builtin_function): Likewise. 20041 * cp/decl.c (builtin_function): Likewise. 20042 (builtin_function_1): Likewise. 20043 20044 * c-common.c (c_common_nodes_and_builtins): Pass an additional 20045 NULL_TREE argument to builtin_function. (builtin_function_2): 20046 Likewise. 20047 * cp/call.c (build_java_interface_fn_ref): Likewise. 20048 * objc/objc-act.c (synth_module_prologue): Likewise. 20049 * java/decl.c (java_init_decl_processing): Likewise. 20050 * f/com.c (ffe_com_init_0): Likewise. 20051 20052 * config/alpha/alpha.c (alpha_init_builtins): Pass an additional 20053 NULL_TREE argument to builtin_function. 20054 * config/arm/arm.c (def_builtin): Likewise. 20055 * config/c4x/c4x.c (c4x_init_builtins): Likewise. 20056 * config/i386/i386.c (def_builtin): Likewise. 20057 * config/ia64/ia64.c (def_builtin): Likewise. 20058 * config/rs6000/rs6000.c (def_builtin): Likewise. 20059 200602002-07-01 Zack Weinberg <zack@codesourcery.com> 20061 20062 * config/ip2k/t-ip2k: Remove LIBGCC1, CROSS_LIBGCC1, and LIBGCC1_TEST. 20063 * config/mips/t-isa3264: Likewise. 20064 * config/mmix/t-mmix: Likewise. 20065 200662002-07-01 John David Anglin <dave@hiauly1.hia.nrc.ca> 20067 20068 * emit-rtl.c (init_emit_once): Add missing cast to HOST_WIDE_INT. 20069 200702002-07-01 Roger Sayle <roger@eyesopen.com> 20071 20072 PR opt/4046 20073 * fold-const.c (fold) [COND_EXPR]: Simplify A ? 0 : 1 to !A, 20074 A ? B : 0 to A && B and A ? B : 1 into !A || B if both A and 20075 B are truth values. 20076 200772002-07-01 Nathanael Nerode <neroden@gcc.gnu.org> 20078 20079 * config/mmix/t-mmix: Eliminate last reference to LIBGCC1_TEST. 20080 200812002-07-01 Matt Kraai <kraai@alumni.cmu.edu> 20082 20083 * README.Portability (Function prototypes): Give an example of 20084 declaring and defining a function with no arguments. 20085 20086 * README.Portability (Function prototypes): Document new 20087 variable-argument function macros. 20088 200892002-07-01 J"orn Rennecke <joern.rennecke@superh.com> 20090 20091 * sh.c (langhooks.h): Include. 20092 (sh_init_builtins, sh_media_init_builtins): New functions. 20093 (sh_expand_builtin, arith_reg_dest,and_operand): Likewise. 20094 (mextr_bit_offset, extend_reg_operand, zero_vec_operand): Likewise. 20095 (sh_rep_vec, sh_1el_vec, sh_const_vec): Likewise. 20096 (builtin_description): New struct tag. 20097 (signature_args, bdesc): New arrays. 20098 (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Undef / define. 20099 (print_operand): Add 'N' modifier. 20100 * sh.h (VECTOR_MODE_SUPPORTED_P): Add SHmedia vector modes. 20101 (EXTRA_CONSTRAINT_U, EXTRA_CONSTRAINT_W): New macros. 20102 (EXTRA_CONSTRAINT): Add 'U' and 'W' cases. 20103 (CONST_COSTS): Add special case for SHmedia AND. 20104 (PREDICATE_CODES): Add and_operand, arith_reg_dest, 20105 extend_reg_operand, extend_reg_or_0_operand, mextr_bit_offset, 20106 sh_const_vec, sh_1el_vec, sh_rep_vec, zero_vec_operand. 20107 target_operand can also be const or unspec. 20108 * sh.md (UNSPEC_INIT_TRAMP, UNSPEC_FCOSA UNSPEC_FSRRA): New constants. 20109 (UNSPEC_FSINA, UNSPEC_NSB, UNSPEC_ALLOCO): Likewise. 20110 (attribute type): Add new types. 20111 (anddi3): Add splitter. 20112 (movdi_const_16bit+1): Add code to handle vector constants and 20113 bitmasks efficiently. 20114 (shori_media): Have generator function made. 20115 (movv8qi, movv8qi_i, movv8qi_i+1, movv8qi_i+2): New patterns. 20116 (movv8qi_i+3, movv2hi, movv2hi_i, movv4hi, movv4hi_i): Likewise. 20117 (movv2si, movv2si_i, absv2si2, absv4hi2, addv2si3, addv4hi3): Likewise. 20118 (ssaddv2si3, usaddv8qi3, ssaddv4hi3, negcmpeqv8qi): Likewise. 20119 (negcmpeqv2si, negcmpeqv4hi, negcmpgtuv8qi, negcmpgtv2si): Likewise. 20120 (negcmpgtv4hi, mcmv, mcnvs_lw, mcnvs_wb, mcnvs_wub): Likewise. 20121 (mextr_rl, mextr_lr, mextr1, mextr2, mextr3, mextr4, mextr5): Likewise. 20122 (mextr6, mextr7, mmacfx_wl, mmacfx_wl_i, mmacnfx_wl): Likewise. 20123 (mmacnfx_wl_i, mulv2si3, mulv4hi3, mmulfx_l, mmulfx_w): Likewise. 20124 (mmulfxrp_w, mmulhi_wl, mmullo_wl, mmul23_wl, mmul01_wl): Likewise. 20125 (mmulsum_wq, mmulsum_wq_i, mperm_w, mperm_w_little): LIkewise. 20126 (mperm_w_big, mperm_w0, msad_ubq, msad_ubq_i, mshalds_l): Likewise. 20127 (mshalds_w, ashrv2si3, ashrv4hi3, mshards_q, mshfhi_b): Likewise. 20128 (mshflo_b, mshf4_b, mshf0_b, mshfhi_l, mshflo_l, mshf4_l): Likewsie. 20129 (mshf0_l, mshfhi_w, mshflo_w, mshf4_w, mshf0_w, mshfhi_l_di): Likewise. 20130 (mshfhi_l_di_rev, mshflo_l_di, mshflo_l_di_rev): Likewise. 20131 (mshflo_l_di_x, mshflo_l_di_x_rev, ashlv2si3, ashlv4hi3): Likewise. 20132 (lshrv2si3, lshrv4hi3, subv2si3, subv4hi3, sssubv2si3): Likewise. 20133 (ussubv8qi3, sssubv4hi3, fcosa_s, fsina_s, fipr, fsrra_s): Likewise. 20134 (ftrv): Likewise. 20135 20136 (fpu_switch+1, fpu_switch+2): Remove constraint. 20137 201382002-07-01 Aldy Hernandez <aldyh@redhat.com> 20139 20140 * tree.c (build_function_type_list): Update function comment. 20141 Rename first argument to return_type. 20142 201432002-07-01 Neil Booth <neil@daikokuya.co.uk> 20144 20145 * Makefile.in: Remove all trace of tradcpp.c, tradcpp.h, 20146 tradcif.y and related files. 20147 201482002-07-01 Neil Booth <neil@daikokuya.co.uk> 20149 20150 * cpptrad.c (skip_whitespace): Pass pointer to prior char. 20151 201522002-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 20153 20154 * mips.h (FUNCTION_ARG_REGNO_P): Fix parentheses. 20155 20156See ChangeLog.7 for earlier changes. 20157 20158