ChangeLog revision 33965
1Sat Jun 29 12:33:39 1996 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 2 3 * Version 2.7.2.1 released. 4 5Tue Jun 11 20:18:03 1996 Per Bothner <bothner@cygnus.com> 6 7 * fix-header.c (read_scna_file): Invoke FIXPROTO_INIT if defined. 8 * alpha.h (FIXPROTO_INIT): Define new macro. 9 10Fri May 10 18:35:00 1996 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 11 12 * loop.c (maybe_eliminate_biv_1): Disable all but two cases 13 of biv elimination with givs and restrict those two cases to 14 an ADD_VAL that is an address. 15 16Mon Apr 22 16:50:19 1996 Jeremy Bettis <jeremy@hksys.com> 17 18 * objc/hash.c (hash_value_for_key): Prevent endless loop when 0 was 19 stored in a hashtable. 20 21Wed Apr 17 17:53:23 1996 Michael Meissner <meissner@tiktok.cygnus.com> 22 23 * rs6000.c (expand_block_move_mem): Copy RTX_UNCHANGING_P. 24 (expand_block_move): Copy dest/src to registers using 25 copy_addr_to_reg, call expand_block_move_mem to copy all of the 26 bits. 27 28Mon Apr 8 13:46:28 1996 Michael Meissner <meissner@tiktok.cygnus.com> 29 30 * rs6000.c (output_{prolog,epilog}): For V.4/eabi systems, change 31 prologue and epilogue so that accesses beyond the current stack 32 pointer are not done like they are for AIX. 33 34Fri Mar 26 05:43:06 1996 Torbjorn Granlund <tege@noisy.matematik.su.se> 35 36 * vax.md (insv matcher): Call CC_STATUS_INIT. 37 * vax.h (NOTICE_UPDATE_CC): Handle ZERO_EXTRACT destination. 38 39Sat Mar 23 18:25:39 1996 J"orn Rennecke (amylaar@meolyon.hanse.de) 40 41 * c-typeck.c (set_init_index): Check for use outside an array 42 initializer. 43 44Sat Mar 23 09:21:40 1996 Doug Evans <dje@canuck.cygnus.com> 45 46 * sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Don't unfix %g[234] 47 if fixed with -ffixed-. 48 49Wed Mar 13 20:36:10 1996 Jim Wilson <wilson@chestnut.cygnus.com> 50 51 * mips.c (mips_expand_prologue): Change TYPE_NEEDS_CONSTRUCTING to 52 TREE_ADDRESSABLE; 53 * pa.h (ASM_DECLARE_FUNCTION_NAME): Likewise. 54 55Tue Mar 12 14:36:02 1996 Jason Merrill <jason@yorick.cygnus.com> 56 57 * lex.c (real_yylex): Warn about using the `namespace' keyword. 58 59Tue Feb 27 08:18:12 1996 Richard Earnshaw (rearnsha@armltd.co.uk) 60 61 * arm.md (mov{si,sf,df}cc and matchers): All conditional move 62 patterns must have a mode. 63 64Mon Feb 19 07:35:07 1996 Torbjorn Granlund <tege@tmg.se> 65 66 * rs6000.md (not:SI with assign and compare): Fix typo. 67 68Wed Jan 24 18:00:12 1996 Brendan Kehoe <brendan@lisa.cygnus.com> 69 70 * alpha.c (alpha_write_verstamp): Only emit MS_STAMP and LS_STAMP, 71 not the extra numbers. 72 73Wed Jan 17 21:22:40 1996 Brendan Kehoe <brendan@lisa.cygnus.com> 74 75 * cp/decl2.c (grokfield): Call cplus_decl_attributes with the attrlist. 76 Pass a null tree to grokdeclarator for its ATTRLIST arg, since it's 77 only ever used for functions in it. 78 79Tue Jan 16 06:01:28 1996 Thomas Graichen <graichen@omega.physik.fu-berlin.de> 80 81 * i386/freebsd.h (ASM_WEAKEN_LABEL): Deleted; not supported. 82 83Sun Jan 7 17:11:11 1996 David Edelsohn <edelsohn@mhpcc.edu> 84 85 * collect2.c (scan_libraries): Correct Import File ID interpretation. 86 87Thu Dec 28 22:24:53 1995 Michael Meissner <meissner@tiktok.cygnus.com> 88 89 * rs6000.md (common mode functions): Add condition reg clobbers. 90 91Tue Dec 19 15:08:31 1995 Jason Merrill <jason@yorick.cygnus.com> 92 93 * collect2.c: Remove auto_export functionality. 94 95Mon Dec 18 18:40:34 1995 Jim Wilson <wilson@chestnut.cygnus.com> 96 97 * svr4.h (ASM_IDENTIFY_GCC): Don't output stab here. 98 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Output stab here instead of 99 above. 100 101Sat Dec 16 07:03:33 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 102 103 * stor-layout.c (layout_record): When PCC_BITFIELD_TYPE_MATTERS, 104 compute bitpos using field_size % type_align instead of field_size. 105 106Fri Dec 15 18:41:50 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 107 108 * fixincludes (sys/wait.h): Add forward declaration of struct rusage 109 on AIX 3.2.5. 110 111Sat Dec 9 18:05:03 1995 Jim Wilson <wilson@cygnus.com> 112 113 * expr.c (expand_expr, case INDIRECT_REF): Correct typo in May 8 114 change. 115 116Sun Nov 26 14:47:42 1995 Richard Kenner <kenner@mole.gnu.ai.mit.edu> 117 118 * Version 2.7.2 released. 119 120 * function.c (fixup_var_refs_1): Make pseudo for DEST 121 in PROMOTED_MODE unless in a SUBREG. 122 123 * cse.c (insert): Don't put a REG into qty_const. 124 125 * msdos/top.sed: Change version to 2.7.2. 126 * winnt/config-nt.sed: Likewise. 127 128Sun Nov 26 14:41:49 1995 Douglas Rupp (drupp@cs.washington.edu) 129 130 * Makefile.in (stamp-objlist): Change .o to $objext. 131 132 * alpha/win-nt.h (CPP_PREDEFINES): Set __unaligned and __stdcall 133 to null. 134 (ASM_SPEC): Add a translation for -g to -Zi. 135 * winnt/ld.c (main): Don't pass -g to link. 136 * winnt/oldnames.c: Reformat and add some new functions for gnat1. 137 * winnt/win-nt.h (LINK_SPEC): Pass -g to ld.exe. 138 Increase default stack size. 139 * configure ({alpha-dec,i386-ibm}-winnt3.5): Add oldnames.o 140 to extra_objs. 141 * libgcc2.c (trampoline): Add getpagesize and mprotect for WINNT. 142 143Sun Nov 26 14:25:26 1995 Uwe Seimet (seimet@chemie.uni-kl.de) 144 145 * atari.h (FUNCTION_VALUE): Deleted; incorrect. 146 147Sun Nov 26 14:23:03 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 148 149 * fixincludes (curses.h): Allow space or tab after bool keyword, 150 instead of tab or tab. 151 152Sun Nov 26 14:14:11 1995 Oliver Kellogg (oliver.kellogg@space.otn.dasa.de) 153 154 * 1750a.md (pattern for HImode PSHM): Corrected. 155 (trunchiqi2, zero_extendqihi2, extendhftqf2): Corrected. 156 (pattern for movhi of CONST_INT to REG): Corrected. 157 (divmodqi pattern for DISN): Corrected. 158 (all shift patterns): Corrected. 159 160 * 1750a.h (REG_OK_FOR_INDEX_P, REG_OK_FOR_BASE_P): Corrected. 161 (ASM_OUTPUT_[datatype]): Corrected datalbl[].size computation 162 for output of arrays. 163 164Sun Nov 26 14:08:57 1995 Dave Love <d.love@dl.ac.uk> 165 166 * mips/iris5.h (NO_IMPLICIT_EXTERN_C): Define this again so 167 that unistd.h doesn't get badly `fixed' for C++. libg++ will now 168 build with this definition. 169 170Sun Nov 26 14:02:43 1995 Robert E. Brown (brown@grettir.bibliotech.com) 171 172 * configure: Better workaround for Nextstep bug. 173 174Sun Nov 26 13:55:07 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 175 176 * rs6000.md (load_multiple matcher): Fix typo in opcode. 177 178Sun Nov 26 13:51:08 1995 Lee Iverson <leei@Canada.AI.SRI.COM> 179 180 * final.c (final_start_function): Move call to sdbout_begin_function 181 back to final_scan_insn on MIPS systems so parameter descriptions are 182 recognized. 183 184Sun Nov 26 13:43:06 1995 DJ Delorie (dj@delorie.co)m 185 186 * msdos/top.sed: Don't insert "go32". 187 188Sun Nov 26 12:08:23 1995 Jim Wilson <wilson@chestnut.cygnus.com> 189 190 * combine.c (nonzero_bits, case REG): Put POINTERS_EXTEND_UNSIGNED 191 code before stack pointer code. Return nonzero at end of stack 192 pointer code. 193 194 * sparc.h (PRINT_OPERAND_ADDRESS): Handle CONST inside PLUS. 195 196 * Makefile.in (cppalloc.o): Add a rule to build it. 197 198 * alpha.c (alpha_emit_set_const): Don't output SImode sequences 199 that rely on invisible overflow. Sign extend new when SImode. 200 Don't recur if new == c. Don't allow shift outside mode. Make 201 logical right shift be unsigned. 202 203Sun Nov 26 11:37:50 1995 Arne H. Juul (arnej@idt.unit.no) 204 205 * Makefile.in (compare*): Add "|| true" to avoid spurious 206 failure messages from some versions of make. 207 208Sun Nov 26 11:20:09 1995 Dmitry K. Butskoy (buc@stu.spb.su) 209 210 * expr.c (truthvalue_conversion): Add declaration. 211 212Sun Nov 12 18:09:35 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 213 214 * Version 2.7.1 released. 215 216 * function.c (put_reg_into_stack): New arg volatile_p. 217 (put_var_into_stack): Call with new arg. 218 219Sat Nov 11 08:25:34 1995 Jim Wilson <wilson@chestnut.cygnus.com> 220 221 * reload.c (output.h): Include it. 222 * Makefile.in (reload.o): Add dependence on output.h. 223 224Thu Nov 9 11:24:20 1995 Jim Wilson <wilson@chestnut.cygnus.com> 225 226 * mips.h (HARD_REGNO_NREGS): If FP_REG_P, always use UNITS_PER_FPREG 227 to calculate number of words needed. 228 229Thu Nov 9 11:04:50 1995 Oliver Kellogg (Oliver.Kellogg@space.otn.dasa.de) 230 231 * 1750a.md (cmphf): Addd Base Reg with Offset address mode (LB,STB,..) 232 (movqi,movhi,movhf,addqi3,addhf3,subqi3,subhf3,mulqihi3): Likewise. 233 (mulhf3,divhf3,andqi3,iorqi3): Likewise. 234 (define_peephole): Remove the Base mode peepholes. Replace the 235 special addqi define_insn for "LIM Ra,sym,Rb" by a define_peephole. 236 (ashlqi3): Took out futile 0th alternative. 237 (lshrqi3, lshrhi3, ashrqi3, ahsrhi3): Correct case of non-constant 238 shift count. 239 240 * 1750a.h (REG_ALLOC_ORDER): Define. 241 (REGNO_OK_FOR_BASE_P): Include stack pointer in test against 242 reg_renumber[REGNO]. 243 (ASM_OUTPUT_DESTRUCTOR): Remove bogus assembler comment. 244 245Thu Nov 9 11:01:33 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 246 247 * expr.c (expand_expr, case ARRAY_REF): Properly convert types 248 of index, size, and multiplication. 249 250Wed Nov 8 09:00:22 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 251 252 * arm.md (mov*cc_{,soft_}insn): Use match_operator to test the 253 comparison and check that the condition code register is used. 254 255Wed Nov 8 08:49:35 1995 Michael Meissner <meissner@tiktok.cygnus.com> 256 257 * rs6000/sysv4.h (ASM_OUTPUT_{CONSTRUCTOR,DESTRUCTOR}): Undef before 258 including svr4.h. 259 260Tue Nov 7 10:58:12 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 261 262 * m68k.md (subxf3): Properly name pattern. 263 264Tue Nov 7 10:53:09 1995 Michael Meissner <meissner@tiktok.cygnus.com> 265 266 * libgcc2.c (__{C,D}TOR_LIST): For AIX, initialize these arrays to 267 0,0, just like NeXT to avoid a warning message from the AIX 4.1 268 linker. 269 270Tue Nov 7 09:58:34 1995 John F. Carr <jfc@mit.edu> 271 272 * cppexp.c (cpp_lex): Correctly parse character constants. 273 274Tue Nov 7 09:52:15 1995 Jason Merrill <jason@yorick.cygnus.com> 275 276 * rs6000.h (ASM_OUTPUT_{DES,CONS}TRUCTOR): Define. 277 278Mon Nov 6 10:27:15 1995 Doug Evans <dje@cygnus.com> 279 280 * combine.c (force_to_mode): Fix typo. 281 282Sun Nov 5 18:37:02 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 283 284 * m68k.md (cmpxf): Don't call force_const_mem, it looses for PIC; 285 get predicates right instead. Get rid of separate DEFINE_EXPAND. 286 (addxf3, subxf3, mulxf3, divxf3): Likewise. 287 (All XFmode patterns): Delete `F' and `G' constraints. 288 (absxf2, negxf2): Delete spurious condition on TARGET_FPA. 289 290Sun Nov 5 11:05:44 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 291 292 * fixincludes (malloc.h): Fix return type of {m,re}alloc. 293 294Sun Nov 5 11:02:26 1995 J"orn Rennecke (amylaar@meolyon.hanse.de) 295 296 * cse.c (invalidate): For a pseudo register, do a loop to 297 invalidate all table entries, irrespective of mode. 298 299Sun Nov 5 10:57:43 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 300 301 * combine.c (force_to_mode): Put in last change properly. 302 303Sun Nov 5 10:53:49 1995 Jeffrey A Law (law@cygnus.com) 304 305 * pa.h (CONDITIONAL_REGISTER_USAGE): Make sure FP regs 306 get disabled regardless of PA1.0 vs PA1.1 code generation 307 when TARGET_SOFT_FLOAT or TARGET_DISABLE_FPREGS is on. 308 309Sun Nov 5 10:49:43 1995 Doug Evans <dje@lisa.cygnus.com> 310 311 * i960.c (emit_move_sequence): Add a scratch register to 312 multi-reg stores. 313 (i960_output_move_{double,quad}): New functions. 314 (i960_print_operand): Handle new operand types E, F. 315 * i960.md (movdi matchers): Rewrite. 316 (store_unaligned_di_reg): New pattern. 317 (movti matchers): Rewrite. 318 (store_unaligned_ti_reg): New pattern. 319 320Sun Nov 5 10:45:24 1995 Ian Lance Taylor (ian@cygnus.com) 321 322 * mips.h (MULTILIB_DEFAULTS): Define. 323 * mips/elf64.h, mips/iris6.h (MULTILIB_DEFAULTS): Define. 324 325Sun Nov 5 10:41:48 1995 Jim Wilson <wilson@chestnut.cygnus.com> 326 327 * reload.c (push_reload): Delete abort for RELOAD_OTHER case added 328 in last change. 329 * reload1.c (emit_reload_insns): For RELOAD_OTHER output reloads, 330 output the reload insns in descending order of reloads. 331 332 * sh.md (mulsidi3-1, mulsidi3, umulsidi3-1, umulsidi3): Enable. 333 (smulsi3_highpart-1, smulsi3_highpart): New patterns. 334 (umulsi3_highpart-1, umulsi3_highpart): Likewise. 335 (movdi-1): Add r/x constraint. 336 * t-sh (MULTILIB_OPTIONS): Add m2. 337 (MULTILIB_DIRNAMES): Add m2. 338 (MULTILIB_MATCHES): Define. 339 340 * sparc.h (RTX_COSTS, case MULT): Check for TARGET_SPARCLITE. 341 342 * abi64.h, elf64.h (CPP_SPEC): Add -EB and -EL support. 343 344Sat Nov 4 10:36:26 1995 Jim Wilson <wilson@chestnut.cygnus.com> 345 346 * sh.md (casesi_worker): Change constraint from = to +. 347 348 * svr4.h (ASM_IDENTIFY_GCC_AFTER_SOURCE): Delete. 349 (ASM_IDENTIFY_GCC): Output stab here. 350 351Sat Nov 4 10:32:37 1995 John Carr <jfc@mit.edu> 352 353 * cpplib.c (finclude): Set current input pointer when input 354 is not a regular file. 355 356 * cppmain.c: Define progname, required by cpplib. 357 358Sun Oct 29 07:48:36 1995 Michael Meissner <meissner@cygnus.com> 359 360 * xcoffout.h (DBX_FINISH_SYMBOL): Deal with names created via 361 the __asm__ construct that start with a leading '*'. 362 * xcoffout.c (xcoff_declare_function): Likewise. 363 364Sun Oct 29 07:45:41 1995 Jim Wilson <wilson@chestnut.cygnus.com> 365 366 * stupid.c (stupid_mark_refs): Handle SUBREG of pseudo-reg in a 367 SET_DEST same as we handle a pseudo-reg in a SET_DEST. 368 369Sun Oct 29 07:43:15 1995 Pat Rankin <rankin@eql.caltech.edu> 370 371 * libgcc2.c (L_eh: __unwind_function): Implement for VAX. 372 * vax.h (RETURN_ADDRESS_OFFSET, RETURN_ADDR_RTX): Define. 373 374Sun Oct 29 12:39:08 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>a 375 376 * i386/sol2.h (CPP_PREDEFINES): Add -D__SVR4. 377 378Sun Oct 29 07:14:36 1995 J"orn Rennecke (amylaar@meolyon.hanse.de) 379 380 * reload.c (find_equiv_reg): Check for nonsaving setjmp. 381 382Fri Oct 27 15:15:56 1995 Jim Wilson <wilson@chestnut.cygnus.com> 383 384 * Makefile.in (out_object_file): Depend on TREE_H. 385 386Fri Oct 27 06:42:36 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 387 388 * alpha.c (call_operand): Only allow reg 27 on NT too. 389 * alpha.md (call_value_nt, call_nt): Force non-SYMBOL_REF 390 into reg 27, just like for OSF. 391 392 * rs6000.c (struct asm_option): Changed from struct option. 393 (expand_block_move_mem): Remove erroneously-added line. 394 395 * expr.c (clear_storage): SIZE is now rtx, not int. 396 (store_constructor): Call clear_storage with rtx. 397 (get_inner_reference): Convert index to precision of 398 sizetype, not POINTER_SIZE. 399 (expand_expr, case ARRAY_REF): Likewise. 400 * expr.h (clear_storage): Second arg is rtx, not int. 401 402Fri Oct 27 05:45:58 1995 J"orn Rennecke (amylaar@meolyon.hanse.de) 403 404 * combine.c (force_to_mode, case ASHIFTRT): Properly handle 405 mask wider than HOST_WIDE_INT. 406 407 * c-decl.c (pushdecl): Don't test TREE_PUBLIC when deciding whether 408 to register a duplicate decl in the current block. 409 410Thu Oct 26 21:55:39 1995 Jason Merrill <jason@sethra.cygnus.com> 411 412 * calls.c (expand_call): Don't trust the callee to copy a 413 TREE_ADDRESSABLE type. 414 * function.c (assign_parms): Likewise. 415 416Thu Oct 26 19:25:05 1995 Mike Stump <mrs@cygnus.com> 417 418 * libgcc2.c (__unwind_function): Provide a default definition for 419 implementations that don't yet have a function unwinder. 420 421Thu Oct 26 18:08:19 1995 Paul Eggert <eggert@twinsun.com> 422 423 * cccp.c (handle_directive): Don't treat newline as white 424 space when coalescing white space around a backslash-newline. 425 426Thu Oct 26 17:57:34 1995 Ian Lance Taylor <ian@cygnus.com> 427 428 * mips-tdump.c (enum st): Define st_Struct, st_Union, and st_Enum. 429 (st_to_string): Handle them. 430 (type_to_string): Add fdp argument; pass it to emit_aggregate. 431 (print_symbol): Add fdp argument; pass it to type_to_string. 432 Handle st_Struct, st_Union, and st_Enum. 433 (emit_aggregate): Add fdp argument. Handle opaque types. Map 434 through RFD entries. 435 (print_file_desc): Pass FDR to print_symbol. 436 (main): Pass null FDR to type_to_string. 437 438Thu Oct 26 08:07:10 1995 Michael Meissner <meissner@cygnus.com> 439 440 * configure (powerpc-ibm-aix[456789]*): Use rs6000/t-newas, 441 not rs6000/t-rs6000. 442 (rs6000-ibm-aix3.2.[456789]*): Likewise. 443 (rs6000-ibm-aix[456789]*): Likewise. 444 445 * rs6000/t-newas: Copy from t-rs6000. 446 * t-rs6000: Don't build -mcpu=common multilib variants of libgcc.a. 447 448 * rs6000.md (load_multiple insn): If address register is among regs, 449 don't load it with a lwsi instruction, which is undefined on PowerPC. 450 451Thu Oct 26 08:01:32 1995 Jim Wilson <wilson@chestnut.cygnus.com> 452 453 * dwarfout.c (output_compile_unit_die): Handle language_string 454 of "GNU F77". 455 456 * reload.c (find_reloads_address): When check for out of range constant 457 plus register, accept any hard register instead of just fp, ap, sp. 458 459 * combine.c (distribute_notes): For Oct 19 change, add additional 460 check to verify that place has a valid INSN_CUID. 461 462 * sparc/t-vxsparc (LIBGCC1_TEST): Define. 463 464 * sh.md (negdi2): Use TARGET_LITTLE_ENDIAN. 465 466 * combine.c (force_to_mode, case ASHIFTRT): Verify mode bitsize is 467 within HOST_BITS_PER_WIDE_INT before shifting by it. 468 469 * final.c (final_scan_insn): When recur for instruction in delay slot, 470 add loop around recursive call in case the instruction gets split. 471 472Thu Oct 26 07:28:45 1995 J"orn Rennecke (amylaar@meolyon.hanse.de) 473 474 * genrecog.c (write_tree_1): Avoid emitting '-2147483648'. 475 476 * jump.c (duplicate_loop_exit_test): Return 0 if found 477 a NOTE_INSN_LOOP_CONT. 478 479Tue Oct 24 15:30:14 1995 Jeffrey A Law <law@cygnus.com> 480 481 * calls.c (expand_call): Make sure valreg is at least 482 a full word. 483 484Sun Oct 22 19:35:41 1995 Jim Wilson <wilson@chestnut.cygnus.com> 485 486 * sh.h (INIT_SECTION_ASM_OP): Delete. 487 (HAVE_ATEXIT): Define. 488 489Sun Oct 22 07:46:04 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 490 491 * libgcc2.c (__fixuns[xds]fsi): #undef MIN and MAX before #include 492 of limits.h. 493 494 * pa.c (pa_adjust_cost): Use pa_cpu, not pa_cpu_attr. 495 496Sun Oct 22 07:38:58 1995 J"orn Rennecke (amylaar@meolyon.hanse.de) 497 498 * alpha.h (CONST_OK_FOR_LETTER_P): Use 'U' for unsigned constants. 499 * alpha.c (alpha_emit_set_const): Likewise. 500 * mips.c (gen_int_relational): Likewise. 501 502Sun Oct 22 07:14:35 1995 Douglas Rupp (drupp@cs.washington.edu) 503 504 * i386.c (i386_return_pops_args): Don't need a FUNDECL to 505 check for type attributes in FUNTYPE. 506 507Sat Oct 21 18:17:42 1995 Jim Wilson <wilson@chestnut.cygnus.com> 508 509 * sh.md (define_delay): Don't accept any instruction for an annulled 510 slot, only accept those for which in_delay_slot is yes. 511 * sh.c (find_barrier): When hi_const returns true, increment count_si 512 by two if found_si is true. 513 Always use get_attr_length to compute length of instructions. 514 If count_hi or count_si out of range at end, need two PREV_INSN calls 515 not one. 516 When create new label, set LABEL_NUSES to 1. 517 (reg_unused_after): Ifdef out code for handling labels. 518 (prepare_scc_operands): New local variable mode. Set it from 519 sh_compare_op0 or sh_compare_op1. Use it instead of SImode in 520 force_reg calls. 521 522 * optabs.c (expand_float): Emit missing barrier after unconditional 523 jump. 524 525Sat Oct 21 14:16:46 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 526 527 * alpha.md (cmpdf): Make conditional on TARGET_FP. 528 529Fri Oct 20 19:11:12 1995 J"orn Rennecke (amylaar@meolyon.hanse.de) 530 531 * combine.c (distribute_notes): Delete instructions without 532 side effect that set a subreg of an unused register. 533 534 * m68k.h (PREFERRED_RELOAD_CLASS): Check for !G constants 535 for DATA_OR_FP_REGS also. 536 537Fri Oct 20 18:57:10 1995 Ian Lance Taylor <ian@cygnus.com> 538 539 * genmultilib: Output negations of unused alternatives, even if 540 one of the alternatives is selected. 541 542Fri Oct 20 18:48:50 1995 Jeff Law (law@hurl.cygnus.com) 543 544 * integrate.c (output_inline_function): Turn on flag_no_inline 545 to avoid function integration once we begin writing deferred 546 output functions. 547 548Fri Oct 20 18:46:33 1995 Michael Meissner <meissner@wogglebug.tiac.net> 549 550 * rs6000.c (float_conv_temp): Delete global variable. 551 (stack_temps): New static array to hold stack temps. 552 (offsettable_mem_operand): Delete function. 553 (offsettable_addr_operand, rs6000_stack_temp): New functions. 554 (output_epilog): Zero stack_temps. 555 556 * rs6000.h (offsettable_addr_operand): Declare instead of 557 offsettable_mem_operand. 558 (PREDICATE_CODES): Use offsettable_addr_operand. 559 (float_conv_temp): Delete variable. 560 561 * rs6000.md (move_to_float insns): Change move_to_float so 562 that it doesn't have a clobber of the memory address, and instead 563 passes the stack temp's memory address as one of the unspec args. 564 (fix_truncdfsi2): Use rs6000_stack_temp to allocate the temp. 565 (multiply, shift insns): Fix all cases of multiply and shift insns so 566 that the right mnemonics are used for -mcpu=common with both 567 -m{old,new}-mnemonics. 568 569Fri Oct 20 17:58:19 1995 Jim Wilson <wilson@chestnut.cygnus.com> 570 571 * expr.c (safe_from_p, case RTL_EXPR): Return 0 if RTL_EXPR_SEQUENCE 572 exists. Delete code to return 0 if exp_rtl is zero. 573 574 * function.c (init_function_start): Don't call init_insn_lengths here. 575 * toplev.c (rest_of_compilation): Call it here. 576 577Thu Oct 19 19:19:06 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 578 579 * c-common.c (check_format_info): Make test for null pointer 580 more general. 581 582Thu Oct 19 18:56:16 1995 Satoshi Adachi (adachi@wisdom.aa.ap.titech.ac.jp) 583 584 * fixincludes (stdlib.h): Be more general in edit to change 585 declaration of {c,m,re}alloc. 586 587Thu Oct 19 18:48:53 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 588 589 * libgcc2.c (__udiv_w_sdiv): If we don't have sdiv_qrnnd, define 590 dummy variant of __udiv_w_sdiv. 591 592Thu Oct 19 18:45:21 1995 Jim Wilson <wilson@chestnut.cygnus.com> 593 594 * alpha.h (ASM_SPEC): If GNU as is the default, then pass -g to 595 the assembler if -malpha-as. If GNU as is not the default, then pass 596 -g to the assembler is not -mgas. 597 598 * combine.c (distribute_notes): When search for new place to put 599 REG_DEAD note, call distribute_links if this new place is between 600 i2 and i3, and i2 uses the register. 601 602Thu Oct 19 18:41:36 1995 Michael Meissner <meissner@cygnus.com> 603 604 * rs6000.md (float{,uns}sidf2): Rewrite to break the conversion 605 process into several general insns. 606 (move_to_float): New insns to move 2 integer regs into a float register 607 through memory, taking endianess into account. Make sure that the 608 floating temporary is a valid address. Use one temporary for all 609 floats converted. 610 (fix_truncdfsi2): Take endianess into account. 611 612 * rs6000.c ({low_32_bit,offsettable_mem}_operand): The function 613 low_32_bit_operand is now unused, delete it. New function 614 offsettable_mem_operand to determine if a memory address is 615 offsettable. 616 * rs6000.h ({low_32_bit,offsettable_mem}_operand): Ditto. 617 (PREDICATE_CODES): Ditto. 618 619 * rs6000.{c,h} (float_conv_temp): New global. 620 * rs6000.c (output_epilog): Zero out float_conv_temp. 621 622 * Makefile.in (libgcc{1,2}.a): Allow LIB{1,2}FUNCS_EXTRA files to 623 end in .S as well as .c and .asm. 624 625Wed Oct 18 17:56:45 1995 Jose Alonso (sidinf@fpsp.fapesp.br) 626 627 * c-typeck.c (parser_build_binary_op): Warn about x^y==z, etc. 628 629Mon Oct 9 12:38:06 1995 Michael Meissner <meissner@cygnus.com> 630 631 * protoize.c (reverse_def_dec_list): Silence compiler warnings. 632 633Mon Oct 9 12:35:54 1995 Andrew Cagney <cagney@highland.com.au> 634 635 * ginclude/va-ppc.h (va_arg): Deal with long longs that would be 636 passed in the 7th register, and are passed in the stack instead. 637 638Fri Oct 6 13:47:10 1995 Jim Wilson <wilson@chestnut.cygnus.com> 639 640 * alpha.h (ASM_SPEC): Add -g. 641 642Fri Oct 6 13:42:50 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 643 644 * alpha.h (alpha_{arg,auto}_offset): Make extern. 645 646Fri Oct 6 13:24:43 1995 Michael Meissner <meissner@tiktok.cygnus.com> 647 648 * rs6000.h (RETURN_ADDRESS_OFFSET): Correct previous change. 649 650Fri Oct 6 13:14:43 1995 Doug Evans <dje@canuck.cygnus.com> 651 652 * rtlanal.c (reg_set_last): Fix call to reg_set_between_p. 653 654Tue Oct 3 12:31:38 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 655 656 * stor-layout.c (layout_type, case ARRAY_TYPE): Strip MAX_EXPR 657 from upper bound when computing length if it just protects against 658 negative length. 659 660 * expr.c (emit_move_insn_1): When doing multi-word move, show 661 output is clobbered. 662 663Tue Oct 3 12:26:07 1995 Jim Wilson <wilson@chestnut.cygnus.com> 664 665 * cse.c (set_nonvarying_address_components, case AND): Add *pend to 666 end. Add constant to start instead of subtracting it. 667 668Tue Oct 3 12:23:28 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 669 670 * combine.c (simplify_rtx): In code that attempts to simplify 671 conditional expressions, if the result is an NE around another 672 comparison, return the original expression. 673 674 * longlong.h (mips umul_ppmm): Use `l' and `h' constraints; 675 remove mflo and mfhi instructions. 676 677Tue Oct 3 12:21:29 1995 Michael Meissner <meissner@cygnus.com> 678 679 * ginclude/va-ppc.h (va_start, stdarg case): Call 680 __builtin_next_arg, and ignore the result, so that the compiler 681 can report the proper error, if the second argument is not the 682 last argument. 683 684Tue Oct 3 12:02:51 1995 Kohtala Marko <Marko.Kohtala@ntc.nokia.com> 685 686 * function.c (assign_stack_temp): Adjust full_size field of 687 temp_slot when splitting an unused slot. 688 689Tue Oct 3 11:51:59 1995 Mike Stump <mrs@cygnus.com> 690 691 * expr.c (expand_builtin_return_addr): Break out functionality 692 from expand_builtin. 693 (expand_builtin): Call expand_builtin_return_addr. 694 * rs6000.h (RETURN_ADDR_RTX): Remove call to copy_to_reg. 695 Offset to return address is 4 when !TARGET_64BIT and v4_call_p, 696 8 otherwise. 697 * sparc.h (RETURN_ADDR_RTX): Remove call to copy_to_reg. 698 * alpha.h (RETURN_ADDR_RTX): New definition. 699 700Sun Oct 1 21:23:30 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 701 702 * tree.c (staticp, case INDIRECT_EXPR): Disable case. 703 704 * expr.c (expand_expr, case COMPONENT_REF): If getting component 705 of union of variable size, propagate TARGET. 706 707Fri Sep 29 07:48:09 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 708 709 * expr.c (store_expr): When storing promoted value, don't return 710 MEM if address contains target. 711 712Thu Sep 28 14:30:03 1995 Paul Eggert <eggert@twinsun.com> 713 714 * cccp.c (rescan): Expand `#if foo && #bar' without a bogus 715 complaint about preprocessor directives within macro args. 716 Expand `foo' in `foo#bar' without requiring a space before `#'. 717 718Thu Sep 28 14:24:26 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 719 720 * m68k.md (anonymous DImode shift patterns setting cc0): Turned 721 off due to reload problems. 722 723Thu Sep 28 14:05:22 1995 Niklas Hallqvist (niklas@appli.se) 724 725 * Makefile.in (USER_H): Move up so can override. 726 (INSTALL_ASSERT_H): New definition. 727 (install-headers): Use it. 728 (stmp-int-hdrs): Handle USER_H being empty. 729 * config/x-netbsd (INSTALL_ASSERT_H): Define as empty. 730 731 * i386/netbsd.h (WCHAR_{TYPE,UNSIGNED,TYPE_SIZE}): Now int. 732 * m68k/netbsd.h, ns32k/netbsd.h, sparc/netbsd.h: Likewise. 733 * vax/netbsd.h: Likewise. 734 (SIZE_TYPE): Use unsigned int. 735 736 * m68k.c (output_scc_di): Swap operands when needed. 737 * m68k.h (LEGITIMATE_PIC_OPERAND): Allow SYMBOL_REF_FLAG symref. 738 * m68k.md: Make both assembler syntaxes do the same for PIC calls. 739 740Tue Sep 26 16:51:44 1995 Michael Meissner <meissner@tiktok.cygnus.com> 741 742 * mips.c (override_options): Don't allow anything but integers to 743 go in the HI/LO registers. 744 745Tue Sep 26 16:36:18 1995 John F. Carr <jfc@mit.edu> 746 747 * c-common.c (check_format_info): Don't warn about format type 748 mismatch if the argument is an ERROR_MARK. 749 750Mon Sep 25 17:50:50 1995 Craig Burley (burley@gnu.ai.mit.edu) 751 752 * stor-layout.c (put_pending_sizes): New function. 753 * tree.h (put_pending_sizes): Add declaration. 754 * tree.c (save_expr): Return original for ERROR_MARK. 755 756Fri Sep 22 19:20:01 1995 Jeff Law (law@hurl.cygnus.com) 757 758 * expr.c (expand_builtin, case BUILT_IN_MEMCPY): Strip off 759 all NOP exprs from the source and destination nodes, then 760 set MEM_IN_STRUCT_P. 761 762Fri Sep 22 18:50:31 1995 Michael Meissner <meissner@tiktok.cygnus.com> 763 764 * rs6000/eabi.h (ASM_OUTPUT_INT): Test for whether the integer 765 being output is also a constant so &sym - &sym2 is not fixed up. 766 767Fri Sep 22 18:49:07 1995 Peter Flass (FLASS@LBDRSCS.BITNET) 768 769 * i370.md (cmpsi): Add missing constraints to operand 1. 770 771Fri Sep 22 18:27:33 1995 Torbjorn Granlund <tege@matematik.su.se> 772 773 * i386.h (CONST_OK_FOR_LETTER_P): Make `N' match range 0..255 774 for `outb' instruction. 775 776 * pyr.h (PRINT_OPERAND): Handle code `R' for REG. 777 * longlong.h (pyr umul_ppmm): Use it. 778 779Fri Sep 22 18:24:38 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 780 781 * c-parse.in (enumlist): Propagate error_mark_node. 782 783 * c-aux-info.c (gen_type): Handle ERROR_MARK. 784 785 * alpha.md (movdi): Avoid memory sharing problem when in reload. 786 787Wed Sep 20 14:27:09 1995 Peter Flass <flass@lbdrscs.bitnet> 788 789 * mvs.h (FUNCTION_PROLOGUE): Maintain savearea forward chain 790 per MVS standards. 791 792Wed Sep 20 14:20:52 1995 Torbjorn Granlund <tege@matematik.su.se> 793 794 * pyr.md (cmphi recognizer): Make condition match constraints. 795 (cmpqi recognizer): Likewise. 796 797Wed Sep 20 12:42:59 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 798 799 * integrate.c (expand_inline_function): Do copy something setting 800 the result register if it is setting it to itself and has a REG_NOTE. 801 802 * integrate.c (set_decl_{origin_self,abstract_flags}): Treat 803 a DECL_INITIAL of error_mark_node the same as one of NULL_TREE. 804 805Tue Sep 19 19:30:18 1995 Dave Pitts (dpitts@nyx.cs.du.edu) 806 807 * i370.md (cmphi, movhi, movstricthi, extendhisi2): Correct generation 808 of short integer (Halfword) 809 ({add,sub,mul,and,ior,xor}hi3): Likewise. 810 * i370/mvs.h (MACROPROLOGUE): New macro. 811 (FUNCTION_{PRO,EPI}LOGUE): Added ability to use IBM supplied function 812 prologue macros. 813 (FUNCTION_PROLOGUE): Corrected function "in-line" prologue alignment 814 problems. 815 (ASM_DECLARE_FUNCTION_NAME): Changed alignment to FullWord. 816 (ASM_OUTPUT_{SHORT,ASCII}): Reworked. 817 818Tue Sep 19 19:22:15 1995 Douglas Rupp (drupp@cs.washington.edu) 819 820 * winnt/win-nt.h: Renamed from winnt/win-nt.h. 821 (LINK_SPEC): Add -noinhibit-exec. 822 * {alpha,i386}/win-nt.h: Renamed from {alpha,i386}/winnt.h. 823 Include winnt/win-nt.h, not winnt/winnt.h. 824 * winnt/oldnames.c: New file. 825 * winnt/headers.mak (fixinc-nt.obj): Fix typo. 826 * winnt/config-nt.bat: Change winnt.h to win-nt.h. 827 * i386/config-nt.sed: Likewise. 828 * configure ({alpha,i386}-*-winnt3*): Likewise. 829 830Mon Sep 18 14:00:45 1995 Oliver Kellogg (Oliver.Kellogg@space.otn.dasa.de) 831 832 * 1750a.h (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): 833 Added R2 and R0_1. 834 (REG_CLASS_FROM_LETTER): New letters 't' and 'z'. 835 (EXTRA_CONSTRAINT): New letter 'Q'. 836 837Sun Sep 17 12:39:22 1995 Jeff Law (law@snake.cs.utah.edu) 838 839 * pa.h (ASM_DECLARE_FUNCTION_NAME): If a parameter's type 840 has TYPE_NEEDS_CONSTRUCTING on, then it's passed by invisible 841 reference. 842 843Sat Sep 16 17:42:33 1995 Jim Wilson <wilson@chestnut.cygnus.com> 844 845 * loop.c (find_and_verify_loops): Fix error in last change. 846 847Sat Sep 16 08:38:22 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 848 849 * alpha.h (GO_IF_LEGITIMATE_ADDRESS): Disallow SYMBOL_REF for 850 current function. 851 852 * cse.c (recorded_label_ref): New variable. 853 (insert): Set instead of cse_jumps_altered. 854 (cse_main): Initialize it and return 1 if nonzero at end. 855 856Fri Sep 15 18:26:49 1995 Torbjorn Granlund (tege@matematik.su.se) 857 858 * fold-const (div_and_round_double): Change `carry', `quo_est', 859 and `scale' from plain int to `unsigned HOST_WIDE_INT'. 860 861Fri Sep 15 18:24:24 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 862 863 * cse.c (insert): Set cse_jumps_altered when inserting a LABEL_REF. 864 865Fri Sep 15 17:29:41 1995 Oliver Kellogg (Oliver.Kellogg@space.otn.dasa.de) 866 867 * 1750a.c (b_mode_operand): New function. 868 (print_operand): Added code 'Q'. 869 870Fri Sep 15 17:27:23 1995 Jim Wilson <wilson@chestnut.cygnus.com> 871 872 * loop.c (find_and_verify_loops): When moving exit blocks out of 873 the loop, verify that the target of P is within the current loop. 874 875 * reorg.c (fill_slots_from_thread): Update thread if it is split. 876 877Fri Sep 15 17:06:51 1995 Michael Meissner <meissner@cygnus.com> 878 879 * rs6000.md (decrement_and_branchsi and related insns): Don't use 880 a "2" to select a register preference for operand 1 if operand 2 881 hasn't been seen yet. 882 Add appropriate clobbers in decrement_and_branchsi. 883 Add patterns where the pc/label_ref are interchanged. 884 885 * Makefile.in (gnucompare, stmp-multilib-sub): Remove extra . in 886 front of $(objext). 887 888 * rs6000.c (output_toc): Align DF constants if STRICT_ALIGNMENT. 889 890 * config/fp-bit.c (FLO_union_type): Add words field if double 891 precision to get at the separate words. 892 (FLO_union_type, pack_d, unpack_d): Use FLOAT_BIT_ORDER_MISMATCH 893 to determine when the bitfields need to be reversed, and 894 FLOAT_WORD_ORDER_MISMATCH when the words need to be reversed. 895 896Fri Sep 15 16:41:43 1995 Jeff Law (law@snake.cs.utah.edu) 897 898 * reorg.c (fill_simple_delay_slots): When filling insn's delay slot 899 with JUMP_INSN, don't assume it immediately follows insn on 900 unfilled slots obstack. 901 902 * Makefile.in (caller-save.o): Depend on insn-codes.h. 903 904Thu Sep 14 17:41:49 1995 Jim Meyering (meyering@comco.com) 905 906 * protoize.c (do_cleaning): Don't blank out backslash-escaped 907 newlines in double quoted strings. 908 909Thu Sep 14 16:20:35 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 910 911 * emit-rtl.c (gen_lowpart): If gen_lowpart_common fails 912 for a REG, load it into a pseudo and try again. 913 914Thu Sep 14 14:15:16 1995 Stan Cox (coxs@dg-rtp.dg.com) 915 916 * m88k.h (VERSION_INFO1): Removed BCS reference. 917 * m88k/dgux.h (ASM_SPEC, *_LEGEND): 918 Added -mno-legend option. -mstandard no longer implies that legend 919 legend information not be produced. 920 (LINK_SPEC): Removed -z text 921 922Tue Sep 12 19:05:39 1995 Jim Wilson <wilson@chestnut.cygnus.com> 923 924 * cccp.c (is_system_include): Call skip_redundant_dir_prefix. 925 926Tue Sep 12 18:58:21 1995 John Carr <jfc@mit.edu> 927 928 * sparc.md: Change `*return "string"' to "string" in patterns. 929 930Tue Sep 12 18:48:47 1995 Craig Burley (burley@gnu.ai.mit.edu) 931 932 * function.c (put_var_into_stack): For CONCAT case, order of 933 placement depends on FRAME_GROWS_DOWNWARD, not STACK_GROWS_DOWNWARD. 934 935Tue Sep 12 18:34:10 1995 Doug Evans <dje@canuck.cygnus.com> 936 937 * va-sparc.h (v9 varargs va_start): Handle __builtin_va_alist 938 being stack argument. 939 940 * sparc.h (STATIC_CHAIN_REGNUM): Use %g5 for sparc64. 941 (TRAMPOLINE_TEMPLATE): Rewrite for sparc64. 942 (TRAMPOLINE_SIZE): Is 40 for sparc64. 943 * sparc.c (sparc64_initialize_trampoline): Rewrite. 944 945Tue Sep 12 18:30:22 1995 Douglas Rupp (drupp@cs.washington.edu) 946 947 * cp/Make-lang.in (cc1plus) : Removed unnecessary $(exeext). 948 949 * configure: Added code to handle gcc_extra_objs. 950 (alpha-winnt): Changed xmake_file to winnt/x-winnt. 951 Added extra_gcc_objs=spawnv.o; changed extra_programs to ld.exe. 952 (i386-winnt): Changed xmake_file to winnt/x-winnt. 953 Added extra_gcc_objs=spawnv.o; changed extra_programs to ld.exe. 954 * configure.bat: Changed to used common winnt/config-nt.bat. 955 * Makefile.in: Changed various .o's to .$(objext)'s 956 (specs): Removed unnecessary $(exeext). 957 (EXTRA_GCC_OBJS): New variable. 958 (clean): Removed $(LIB2FUNCS_EXTRA) 959 * objc/Makefile: Changed archive command for libobjc.a to use $? 960 for objects. 961 962 * alpha/x-winnt, i386/x-winnt: Deleted. 963 * alpha/config-nt.bat, i386/config-nt.bat: Deleted. 964 * alpha/config-nt.sed, i386/config-nt.sed: Moved architecture 965 independent commands to config/winnt/config-nt.sed. 966 * alpha/winnt.h: Added -D_M_ALPHA to CPP_PREDEFINES. 967 Changed LIB_SPEC to be compatible with Gnu ld for NT. 968 * i386/winnt.h: Added -D_cdecl=__attribute__((__cdecl__)). 969 Change LIB_SPEC to be compatible with Gnu ld for NT. 970 * winnt/config-nt.bat, winnt/config-nt.sed: New files. 971 * winnt/dirent.{c,h}, winnt/fixinc-nt.c, winnt/headers.mak: New files. 972 * winnt/ld.c: Changed precedence of libraries to look for 973 libfoo.lib before libfoo.a 974 Changed to work like Gnu ld for NT. 975 * winnt/libgcc.mak, winnt/mklibgcc.c: New files. 976 * winnt/spawnv.c: Changed spawn function entry points to __spawn* 977 instead of spawn*. 978 * winnt/x-winnt: New file. 979 * fixinc-nt.sed: New file. 980 * fixinc.winnt: Rewritten to use fixinc-nt.sed. 981 982 * gcc.c: Remove fix_argv kludge. 983 984Tue Sep 12 13:24:17 1995 Michael Meissner <meissner@tiktok.cygnus.com> 985 986 * rs6000.md (power subdi3 pattern): Fix pattern to have 5 987 alternatives, and correct 4th alternative to match reality. 988 989 * rs6000.md (adddi3, subdi3, negdi2): Add constraints so output reg 990 does not overlap one reg with one of the inputs. 991 992Tue Sep 12 13:09:48 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 993 994 * m68k.c (output_scc_di): Fixed for non-SGS_CMP_ORDER syntax. 995 996 * collect2.c (scan_libraries): Cast lsyms' alloca to LDSYM*. 997 998Tue Sep 12 13:04:12 1995 Niklas Hallqvist (niklas@appli.se) 999 1000 * stmt.c (expand_start_stmt_expr): Do stack adjust in right place. 1001 1002 * stdarg.h (__gnuc_va_list): Make char * for NetBSD. 1003 1004Tue Sep 12 12:44:46 1995 Jason Merrill <jason@phydeaux.cygnus.com> 1005 1006 * ginclude/va-ppc.h (va_arg): Reorganize to avoid BIND_EXPRs of 1007 aggregate or array type. 1008 1009Tue Sep 12 12:42:27 1995 Ian Lance Taylor <ian@cygnus.com> 1010 1011 * fixincludes: Fix HP/UX <sys/file.h> for g++ -pedantic-errors. 1012 1013 * fixincludes (curses.h): typedef bool need not take up entire line. 1014 1015Mon Sep 11 19:05:42 1995 Stan Cox (coxs@dg-rtp.dg.com) 1016 1017 * c-typeck.c (digest_init): Don't recursively call digest_init 1018 when in traditional mode if the type is invalid. 1019 1020Mon Sep 11 18:58:26 1995 Oliver Kellogg (Oliver.Kellogg@space.otn.dasa.de) 1021 1022 * 1750a.md: Added DLB/DSTB peepholes for HFmode. 1023 Corrected mnemonics for HImode DSTB peephole. 1024 1025Mon Sep 11 18:48:06 1995 Michael Meissner <meissner@tiktok.cygnus.com> 1026 1027 * config/fp-bit.c (FLO_union_type): Remove bitfields to set sign, 1028 exponent, and mantissa, and add value_raw field, which is an 1029 integer of the appropriate type. If _DEBUG_BITFLOAT is defined, 1030 provide little and big endian bitfields. If the macro 1031 FLOAT_BIT_ORDER_MISMATCH is defined, use explicit bitfields. 1032 (pack_d, unpack_d): Switch to use value_raw and explicit shifts 1033 and masks so that we don't have to worry about whether the target 1034 is big or little endian unless FLOAT_BIT_ORDER_MISMATCH is 1035 defined. If single precision floating point, rename to pack_f and 1036 unpack_f, so there is no confusion in the debugger. 1037 1038 * rs6000.h (rs6000_abi): New enumeration to describe which 1039 ABI we're conforming to. 1040 (rs6000_stack): Use abi enum, not AIX vs. V.4 boolean. 1041 (ASM_OUTPUT_OPTIONS): New macro to print output options in .s file. 1042 (ASM_FILE_START): Use it. 1043 (output_options,rs6000_float_const): Declare new functions. 1044 1045 * rs6000.c (output_option{,s}): New functions to write -f, -m, 1046 and -W options to the asm file. 1047 (rs6000_float_const): New function to generate floating point 1048 constants portably used in signed,unsigned -> double conversions. 1049 (rs6000_stack_info,debug_stack_info): Use ABI enumeration instead 1050 of AIX vs. V.4 boolean. 1051 1052 * rs6000.md (float{,uns}sidf2): Call rs6000_float_const to 1053 portably build the proper floating point constant for conversions. 1054 (movdi): Properly handle movdi of CONST_{INT,DOUBLE} on little 1055 endian systems. 1056 1057 * rs6000/sysv4.h (LIBGCC2_WORDS_BIG_ENDIAN): Define to be 0/1 1058 depending on the target endianess. 1059 (ASM_FILE_START): Define, to call output_options in addition to 1060 output_file_directive. 1061 (TRAMPOLINE_SIZE): Correct size to match code. 1062 1063 * rs6000/eabi{,le}sim.h (CPP_SPEC): Define the correct endian 1064 macro for varargs/stdargs use. 1065 1066Mon Sep 11 18:41:58 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1067 1068 * c-decl.c (redeclaration_error_message): For TYPE_DECLs, return 0 1069 if TYPE_MAIN_VARIANT of old type is same as new type. 1070 1071Mon Sep 11 17:39:35 1995 Rob Ryan (robr@cmu.edu) 1072 1073 * xcoffout.c (xcoff_inlining): New variable, used in place of 1074 xcoff_current_include_file when determining whether to use 1075 absolute line numbers. 1076 (xcoffout_source_file): Switched to using xcoff_inlining to 1077 determine when to emit .bi/.ei directives. 1078 1079Mon Sep 11 16:55:06 1995 Torbjorn Granlund <tege@matematik.su.se> 1080 1081 * m68k.md (cmpdi): Change patterns to allocate scratch register at 1082 RTL generation time. 1083 (tstdi): Likewise. 1084 1085Sun Sep 3 09:03:50 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1086 1087 * fold-const.c (size_binop): Don't pass 1 to NOTRUNC. 1088 1089Thu Aug 31 19:27:00 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1090 1091 * libgcc2.c: Include longlong.h. 1092 [L_udivdi3 || L_divdi3 || L_umoddi3 || L_moddi3] (__udivmoddi4): 1093 Define this `static inline' when defining these, so they all 1094 remain leaf functions. 1095 1096Thu Aug 31 18:38:21 1995 Paul Eggert <eggert@twinsun.com> 1097 1098 * c-parse.in (ends_in_label): New %union member. 1099 (stmts, stmt_or_label): Use new member to avoid lexical lookahead hack. 1100 (lineno_stmt_or_labels): New rule. 1101 (lineno_stmt_or_label, stmt_or_label): Yield nonzero if it ends 1102 in a label. 1103 1104Thu Aug 31 08:31:40 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1105 1106 * cse.c (canon_hash, CONST_DOUBLE): Hash integer and real 1107 differently. 1108 * varasm.c (struct rtx_const): Add new field DI to union. 1109 (decode_rtx_const, case CONST_DOUBLE): Use to hash CONST_DOUBLE 1110 representing an integer. 1111 1112 * va-alpha.h (__gnuc_va_list): Make __offset an int. 1113 * alpha.c (alpha_builtin_saveregs): Properly compute address 1114 of __offset both both OSF and WINNT. 1115 1116 * xm-alpha.h (sbrk): Don't define here. 1117 * gmon.c (sbrk): Define here for __alpha. 1118 * toplev.c (sbrk): Likewise. 1119 * mips-tfile.c (malloc, calloc, realloc): Don't define for anybody. 1120 1121 * reload.c (push_reload): Add case for output reload of a SUBREG 1122 of a hard reg when output mode is invalid for that mode. 1123 In both that case and existing case for in, don't remove SUBREG. 1124 * reload1.c (emit_reload_insn): Emit RELOAD_OTHER output reloads last. 1125 1126Tue Aug 29 19:16:06 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1127 1128 * c-common.c (decl_attribute, case A_PACKED): Check is_type first. 1129 (decl_attribute, case A_T_UNION): Likewise. 1130 Don't access TYPE_FIELDS if DECL is zero. 1131 * c-decl.c (finish_struct): If transparent_union attribute 1132 specified, validate it once we finish laying the union out. 1133 1134Mon Aug 28 05:58:03 1995 Paul Eggert <eggert@twinsun.com> 1135 1136 * arm.c (arm_gen_movstrqi): Remove unused variable const_sxteen. 1137 1138 * bi-lexer.c (buffer, inpoint): Remove unused variables. 1139 1140 * i370/mvs.h, i370/mvs370.c (mvs_label_emitted): Renamed 1141 from mvs_label_emited. 1142 1143 * msdos/configur.bat: Fix misspelling of `maintainer-clean'. 1144 1145Sat Aug 26 06:57:17 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1146 1147 * reload.c (push_secondary_reload): If X is a paradoxical SUBREG, 1148 get mode and thing to reload from inside. 1149 * reload1.c (emit_reload_insns): Do nothing for SUBREG whose 1150 operand is unused subsequently. 1151 In secondary reload case, if paradoxical SUBREG for output, reload 1152 thing inside SUBREG, just like gen_reload. 1153 1154Fri Aug 25 19:26:53 1995 Paul Eggert <eggert@twinsun.com> 1155 1156 * c-typeck.c (set_init_label): Don't die if an entire 1157 brace-pair level is superfluous in the containing level. 1158 1159Fri Aug 25 19:22:46 1995 Michael Meissner <meissner@tiktok.cygnus.com> 1160 1161 * configure (powerpc{,le}-eabisim): Add support for a new target 1162 that works under the PSIM simulator. 1163 * rs6000/eabisim.h, rs6000/eabilesim.h, rs6000/t-eabisim: New files. 1164 1165 * rs6000/eabi.h (STRICT_ALIGNMENT): If little endian, always set 1166 strict alignment to 1. 1167 1168Fri Aug 25 19:22:23 1995 David Edelsohn <edelsohn@mhpcc.edu> 1169 1170 * rs6000.md ({add,sub,mulsi}di3): Support both endian possibilities. 1171 (negdi2): Likewise. 1172 1173Fri Aug 25 19:10:41 1995 Oliver Kellogg (Oliver.Kellogg@space.otn.dasa.de) 1174 1175 * 1750a.md: Added peephole definitions for Load/Store Base insns 1176 and eliminating redundant load in an equivalent store/load sequence. 1177 1178Fri Aug 25 18:33:27 1995 Craig Burley (burley@gnu.ai.mit.edu) 1179 1180 * toplev.c (report_error_function): Don't attempt to use input 1181 file stack to identify nesting of #include's if file name oflocation 1182 diagnosed is not same as input_filename. 1183 1184Fri Aug 25 07:31:47 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1185 1186 * integrate.c (output_inline_function): Switch to function obstack. 1187 1188Mon Aug 21 13:29:54 1995 J"orn Rennecke (amylaar@meolyon.hanse.de) 1189 1190 * i386.c (arithmetic_comparison_operator): New function. 1191 (print_operand): Take into account that overflow flag is not 1192 set the same as after a compare instruction. 1193 * i386.md (decrement_and_branch_until_zero): Use 1194 arithmetic_comparison_operator to decide if there is comparison 1195 suitable to be expressed by condition code from an arithmetic op. 1196 1197Mon Aug 21 13:26:13 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 1198 1199 * m68k.md (adddi3, subdi3): "&" added to clobber's constraints. 1200 1201Mon Aug 21 12:11:14 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1202 1203 * t-sparclite (MULTILIB_*, LIBGCC, INSTALL_LIBGCC): Define. 1204 1205 * sh.md (movdi-1, movdf-1): Make conditional on reload_completed, 1206 delete conditions checking for pseudo registers and Q addresses. 1207 Add code to handle SUBREG. 1208 1209 * local-alloc.c (wipe_dead_reg): Make a register mentioned in a 1210 REG_INC note die after the instruction. 1211 1212 * m68k.md: For all dbra pattern, change constraint from 'g' to 'd*g'. 1213 1214 * Makefile.in: (underscore.c): Rename rule to stamp-under, and 1215 touch stamp-under at the end. Add new rule for underscore.c that 1216 depends on stamp-under. 1217 1218 * sh.c (reg_unused_after): For a SEQUENCE, make sure all insns are 1219 safe before returning 1. 1220 1221 * sh.h (PROMOTE_FUNCTION_ARGS, PROMOTE_FUNCTION_RETURN): Define. 1222 1223 * sh.c (output_stack_adjust): Add new argument reg. Use it instead 1224 of stack_pointer_rtx. 1225 (sh_expand_prologue, sh_expand_epilogue): Pass new argument to 1226 output_stack_adjust. 1227 1228Sat Aug 19 17:34:15 1995 Jim Wilson <wilson@phydeaux.cygnus.com> 1229 1230 * sparc/gmon-sol2.c (_mcount): Define. 1231 * sparc/sol2.h (STARTFILE_SPEC, ENDFILE_SPEC): Delete superfluous 1232 -pg tests. 1233 (LINK_SPEC): Add libp directories to -Y when -pg. 1234 1235 * unroll.c (calculate_giv_inc): Handle increment computed by ASHIFT. 1236 1237Sat Aug 19 17:28:56 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 1238 1239 * m68k.md (subdi3): Should not be commutative. 1240 (one_cmpldi2): Fixed typo with register operand. 1241 1242Sat Aug 19 17:20:43 1995 Michael Meissner <meissner@cygnus.com> 1243 1244 * rs6000.c (output_prolog): Fixup code to set stack pointer 1245 if stack size > 32k. 1246 * rs6000.md (sync_isync): Renamed from sync; added an isync insn 1247 after the sync to properly deal with PowerPC's with split I/D caches. 1248 * sysv4.h (INITIALIZE_TRAMPOLINE): Sync function now named sync_isync. 1249 1250Sat Aug 19 17:07:09 1995 Doug Evans <dje@canuck.cygnus.com> 1251 1252 * h8300.h (STATIC_CHAIN_REGNUM): Use r3. 1253 (REGISTER_NAMES): Print r7 as sp. 1254 (ADDITIONAL_REGISTER_NAMES): Recognize r7. 1255 (ASM_OUTPUT_ALIGN): Alignment is power of 2. 1256 * h8300.md (fancy_btst,fancy_btst1): Branch target must be 1257 operand 0 for length attribute to work. 1258 1259Sat Aug 19 16:43:11 1995 Paul Franklin <paul@cs.washington.edu> 1260 1261 * assert.h: Declare __eprintf with attribute noreturn. 1262 1263Sat Aug 19 16:40:12 1995 Jason Merrill <jason@phydeaux.cygnus.com> 1264 1265 * stddef.h: Don't define wchar_t if __cplusplus is defined. 1266 1267Tue Aug 15 18:01:01 1995 Paul Eggert <eggert@twinsun.com> 1268 1269 * cccp.c (warning_with_line): Fix typo in declaration when 1270 !HAVE_VPRINTF and defined (__STDC__). 1271 1272Tue Aug 15 17:57:54 1995 Stephen L Moshier <moshier@world.std.com> 1273 1274 * real.c (ediv, emul): Set sign bit of IEEE -0.0 result. 1275 1276Tue Aug 15 17:49:47 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1277 1278 * expr.c (safe_from_p): Only safe if EXP is variable-size and X 1279 is BLKmode. 1280 1281 * stmt.c (fixup_gotos): When some fixups done, reset to point 1282 to next instead of zeroing TREE_VALUE, which may be shared. 1283 1284Mon Aug 14 09:15:45 1995 Doug Evans <dje@canuck.cygnus.com> 1285 1286 * m68k/m68kemb.h (STARTFILE_SPEC): Define as empty. 1287 1288Mon Aug 14 09:08:57 1995 Pat Rankin <rankin@eql.caltech.edu> 1289 1290 * vax.c (vms_check_external): Update `pending_head' properly 1291 when the first list element is removed. 1292 1293Mon Aug 14 09:01:32 1995 Jeffrey A. Law <law@adder.cygnus.com> 1294 1295 * pa.md (call expanders): Emit a blockage insn after restoring 1296 %r19 when generating PIC. 1297 1298Sun Aug 13 21:58:49 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1299 1300 * toplev.c (main): Change text of unsupported -g option warning. 1301 1302Sun Aug 13 21:47:57 1995 Andrew McCallum <mccallum@graphite.cs.rochester.edu> 1303 1304 * objc/selector.c (sel_get_any_typed_uid): New function. 1305 * objc/objc-api.h (sel_get_any_typed_uid): Declare new function. 1306 1307Sun Aug 13 21:43:17 1995 John Carr <jfc@mit.edu> 1308 1309 * c-typeck.c (c_expand_asm_operands): Check for read-only output 1310 operand where the variable is read-only but the type is not. 1311 1312Sun Aug 13 21:16:12 1995 David Edelsohn <edelsohn@mhpcc.edu> 1313 1314 * rs6000.c (direct_return): Epilogue required if CR saved. 1315 1316Sun Aug 13 19:09:25 1995 Jeff Law (law@snake.cs.utah.edu) 1317 1318 * configure (hppa1.?-hp-hpux10): Recognize and treat just like hpux9. 1319 1320Sun Aug 13 19:07:23 1995 Doug Evans <dje@canuck.cygnus.com> 1321 1322 * i960.md (movdi matchers): Fix src/dest order in unaligned 1323 reg->reg case. 1324 1325Sun Aug 13 18:49:01 1995 DJ Delorie <dj@delorie.com> 1326 1327 * i386/xm-dos.h (HAVE_STRERROR): New definition. 1328 1329 * msdos/configur.bat: Add missing carriage return. 1330 1331Sun Aug 13 18:40:55 1995 Andrew Cagney <cagney@highland.com.au> 1332 1333 * Makefile.in (USER_H): Add va-ppc.h. 1334 1335Sun Aug 13 18:36:17 1995 M. Warner Losh <imp@village.org> 1336 1337 * stmt.c (expand_asm_operands): Type '0'..'4' operands may 1338 allow regs, so move them to the default case. 1339 1340Sun Aug 13 18:32:35 1995 Paul Eggert <eggert@twinsun.com> 1341 1342 * cccp.c (warning_with_line): New function. 1343 (trigraph_pcp): Use it, to avoid reporting line number. 1344 (vwarning_with_line): Don't report line number if zero. 1345 1346Sun Aug 13 18:23:08 1995 Jason Merrill <jason@phydeaux.cygnus.com> 1347 1348 * toplev.c (vmessage): Support four arguments. 1349 1350Sun Aug 13 18:19:51 1995 Michael Meissner <meissner@cygnus.com> 1351 1352 * ginclude/stdarg.h: Add ppc svr4 calling sequence support. 1353 * ginclude/varargs.h: Likewise. 1354 * ginclude/va-ppc.h: New file. 1355 1356Sun Aug 13 18:05:20 1995 Michael Gschwind <mike@donoussa.vlsivie.tuwien.ac.at> 1357 1358 * configure (pdp-*-*): Add support for t-pdp11. 1359 * t-pdp11: New file. 1360 * Makefile.in (LIBGCC2_CFLAGS): Add TARGET_LIBGCC2_CFLAGS. 1361 1362Sun Aug 13 14:50:58 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1363 1364 * final.c (final_start_function): Always call sdbout_begin_function 1365 and xcoffout_begin_function, even if no line number info. 1366 1367 * mips/abi64.h (SETUP_INCOMING_VARARGS): In if statement, only 1368 subtract one for stdarg. Don't subtract PRETEND_SIZE from 1369 argument pointer when calculating stack address. 1370 * mips.h (INITIAL_ELIMINATION_OFFSET): For 64 bit ABI, subtract 1371 current_function_pretend_args_size when converting from argument 1372 pointer. 1373 * va-mips.h (va_start): For stdarg, delete separate define for 1374 64 bit ABI. For varargs, don't subtract 64, and only add -8 when 1375 all argument registers are used. 1376 1377 * gcc.c (main): When concat gcc_exec_prefix and 1378 standard_startfile_prefix, put machine_suffix in the middle. 1379 1380 * iris6.h (INIT_SECTION_ASM_OP): Don't define. 1381 (LD_INIT_SWITCH, LD_FINI_SWITCH, HAS_INIT_SECTION): Don't undef. 1382 (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Ifdef out. 1383 * configure (mips-sgi-irix6, mips-sgi-irix5cross64): Define 1384 use_collect2 to yes. 1385 1386 * combine.c (move_deaths): When have a multi-reg hard register, 1387 if don't find a note, then recur for each individual hard register. 1388 1389 * cse.c (set_nonvarying_address_components): Handle addresses 1390 which are the sum of two constant pseudo regs. 1391 (cse_rtx_addr_varies_p): Likewise. 1392 1393 * Makefile.in (gfloat.h): Add a - before the rm command. 1394 1395 * loop.c (find_and_verify_loops): Set dest_loop only if 1396 JUMP_LABEL (insn) is non-zero. 1397 1398Mon Jul 31 14:31:53 1995 Ian Lance Taylor <ian@cygnus.com> 1399 1400 * fixincludes: Avoid clobbering VxWorks drv/netif/if_med.h file. 1401 1402Sat Jul 29 16:21:42 1995 Jason Merrill <jason@phydeaux.cygnus.com> 1403 1404 * collect2.c: (XCOFF_SCAN_LIBS): Define if OBJECT_FORMAT_COFF and 1405 XCOFF_DEBUGGING_FORMAT. 1406 (SCAN_LIBRARIES): Also define if XCOFF_SCAN_LIBS. 1407 1408Sat Jul 29 16:19:42 1995 Stuart D. Gathman <stuart@bmsi.com> 1409 1410 * collect2.c (scan_libraries): Implement for AIX. 1411 1412Sat Jul 29 09:59:33 1995 Michael Gschwind <mike@lanai.vlsivie.tuwien.ac.at> 1413 1414 * configure: (pdp11-*-bsd) New target. 1415 * 2bsd.h: New file. 1416 1417 * pdp11.c (output_move_double): Handle CONST_INT parameters properly. 1418 * pdp11.h (RTX_COSTS): Fill in missing default values. 1419 * pdp11.md (truncdfsf2, extendsfdf2, floatsidf2, fix_truncdfsi2): 1420 Allow register parameters, required by gcc to generate correct code. 1421 * xm-pdp11.h: Include tm.h. 1422 1423Sat Jul 29 09:55:17 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1424 1425 * configure (m68k-*-linux*aout*, m68k-*-linux*): New targets. 1426 * m68k/linux-aout.h, m68k/linux.h, m68k/t-linux, m68k/xm-linux.h: New. 1427 * m68k.md [USE_GAS]: Output `jbsr' instead of `jsr' for normal 1428 function calls and `bsr.l' instead of `bsr' for pic function calls. 1429 1430Sat Jul 29 09:44:13 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1431 1432 * sh.h (CAN_DEBUG_WITHOUT_FP): Comment out. 1433 1434 * reload.c (find_reloads_address_1, case PLUS): When handle SUBREG, 1435 add SUBREG_WORD offset to SUBREG_REG register number. 1436 (find_reloads_address_1, case SUBREG): If a pseudo register inside 1437 a SUBREG is larger than the class, then reload the entire SUBREG. 1438 * sh.h (SUBREG_OK_FOR_INDEX_P): New macro. 1439 (INDEX_REGISTER_RTX_P): Use it. 1440 1441Sat Jul 29 09:33:19 1995 Doug Evans <dje@canuck.cygnus.com> 1442 1443 * mips/netbsd.h (CPP_SPEC): Fix typo. 1444 1445 * configure (a29k-*-vxworks*): Define extra_parts for crt{begin,end}.o. 1446 * t-a29k, t-a29kbase, t-vx29k ({,CROSS_}LIBGCC1): Define as empty. 1447 1448Sat Jul 29 09:15:17 1995 Jeffrey A. Law <law@rtl.cygnus.com> 1449 1450 * pa/lib2funcs.asm (gcc_plt_call): Rewrite to avoid the need 1451 for being called by _sr4export. Inline expand $$dyncall to 1452 avoid the need for long-call and PIC support. 1453 1454Sat Jul 29 07:30:04 1995 Oliver Kellogg (Oliver.Kellogg@space.otn.dasa.de) 1455 1456 * ms1750.inc (ucim.m, ucr.m, uc.m): New. 1457 * 1750a.md (cmpqi): Account for unsigned comparisons. 1458 (rotrqi3, rotrhi3): Reworked. 1459 * 1750a.c (notice_update_cc): INCM and DECM set condition codes. 1460 (unsigned_comparison_operator, next_cc_user_is_unsigned): New fcns. 1461 * 1750a.h (FUNCTION_EPILOGUE): Local variables freed from SP, not FP. 1462 (ASM_OUTPUT_BYTE): Make distinct from ASM_OUTPUT_CHAR. 1463 (ASM_OUTPUT_CONSTRUCTOR): Add FILE arg to assemble_name. 1464 1465Fri Jul 28 09:40:07 1995 Jeffrey A. Law <law@rtl.cygnus.com> 1466 1467 * pa.h (DO_GLOBAL_DTORS_BODY): Use an asm statement to keep optimizer 1468 from deleting an assignment it believes dead. 1469 1470Fri Jul 28 08:47:51 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1471 1472 * unroll.c (unroll_loop): When preconditioning, output code to 1473 execute loop once if initial value is greater than or equal to final 1474 value. 1475 1476 * configure (lang_specs_files, lang_options_files): Add $srcdir to 1477 file names when adding them to these variables. 1478 1479 * c-typeck.c (pointer_int_sum): Don't distribute if intop is unsigned 1480 and not the same size as ptrop. 1481 1482 * function.c (assign_stack_temp): When split a slot, set base_offset 1483 and full_size in the newly created slot. 1484 (combine_temp_slots): Update full_size when slots are combined. 1485 1486 * sh.c (reg_unused_after): New function. 1487 * sh.md (define_peephole): Add peepholes to use r0+rN addressing mode 1488 for some address reloads. 1489 1490 * final.c (final_start_function): If SDB_DEBUG, call 1491 sdbout_begin_function. If XCOFF_DEBUG, call xcoffout_begin_function 1492 instead of xcoffout_output_first_source_line. 1493 (final_scan_insn): Don't call sdbout_begin_function or 1494 xcoffout_begin_function. 1495 * xcoffout.c (xcoffout_output_first_source_line): Delete. 1496 (xcoffout_begin_function): Call dbxout_parms and 1497 ASM_OUTPUT_SOURCE_LINE. 1498 1499 * va-mips.h: Change every occurance of #if __mips>=3 to 1500 #ifdef __mips64. 1501 * mips/abi64.h (CPP_SPEC): Output -D__mips64 when -mips3, or -mips4, 1502 or -mgp64. Output -U__mips64 when -mgp32. 1503 * mips/dec-bsd.h, mips/elf64.h, mips/iris3.h: Likewise. 1504 * mips/iris5.h, mips/mips.h, mips/netbsd.h, mips/osfrose.h: Likewise. 1505 1506 * i960.c (i960_function_epilogue): Don't clear g14 for functions with 1507 an argument block. 1508 (i960_output_reg_insn): Likewise. 1509 (i960_output_call_insn): Clear g14 for functions wtih an argument 1510 block. 1511 1512Fri Jul 28 08:43:52 1995 Doug Evans <dje@canuck.cygnus.com> 1513 1514 * i960.c (i960_arg_size_and_align): Correct alignment of XFmode 1515 values in library calls. 1516 * i960.md (movdi matchers): Support odd numbered regs. 1517 1518Fri Jul 28 08:37:25 1995 Michael Gschwind <mike@lanai.vlsivie.tuwien.ac.at> 1519 1520 * pdp11.md (divhi3, modhi3, divmodhi4): Rewrite. 1521 1522Wed Jul 26 10:15:52 1995 Hallvard B Furuseth (h.b.furuseth@usit.uio.no) 1523 1524 * collect2.c (end_file): Fix typo in error message text. 1525 1526Wed Jul 26 09:22:22 1995 Jeff Law (law@snake.cs.utah.edu) 1527 1528 * xm-pa.h (USE_C_ALLOCA): Always define. 1529 * xm-pahpux.h (USE_C_ALLOCA): Likewise. 1530 1531 * x-pa (CC): Remove useless definition. 1532 * xm-pa.h (HAVE_STRERROR): Define. 1533 (__BSD_NET2__): Define. 1534 1535Wed Jul 26 09:10:25 1995 Jason Merrill <jason@phydeaux.cygnus.com> 1536 1537 * expr.c (preexpand_calls): Don't look past a CLEANUP_POINT_EXPR. 1538 1539Wed Jul 26 08:43:42 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1540 1541 * cse.c (cse_insn): When do special handling for (set REG0 REG1), 1542 must delete REG_EQUAL note from insn if it mentions REG0. 1543 1544 * loop.c (find_and_verify_loops): When moving blocks of code, verify 1545 that the just destination is not in an inner nested loop. 1546 (mark_loop_jump): Don't mark label as loop exit if it jumps to 1547 an inner nested loop. 1548 1549Wed Jul 26 08:40:31 1995 Paul Eggert <eggert@twinsun.com> 1550 1551 * cccp.c (do_include, read_name_map): Omit leading "./" and 1552 trailing "/" when it makes sense. 1553 (skip_redundant_dir_prefix): New function. 1554 1555Wed Jul 26 08:36:41 1995 Michael Meissner <meissner@cygnus.com> 1556 1557 * stmt.c (emit_nop): Do not emit a nop if there is a single 1558 insn before a label or at the start of a function. 1559 1560Wed Jul 26 08:21:21 1995 Doug Evans <dje@cygnus.com> 1561 1562 * Makefile.in (gfloat.h): Delete previous copy before updating. 1563 1564Wed Jul 26 08:18:29 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 1565 1566 * Makefile.in (STAGESTUFF): Add stamp-crtS. 1567 (crtbeginS.o, crtendS.o, stamp-crtS): New rules; just like 1568 crtbegin.o et al, but compiled using -fPIC. 1569 * configure (*-*-gnu*): Add crtbeginS.o and crtendS.o to $extra_parts. 1570 1571Wed Jul 26 08:11:52 1995 Michael Gschwind <mike@java.vlsivie.tuwien.ac.at> 1572 1573 * pdp11.md: Fixed typos ('bhos' -> 'bhis'). 1574 1575Wed Jul 26 08:05:41 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1576 1577 * hp320.h, m68k.h, m68kv4.h (LEGITIMATE_PIC_OPERAND_P): Reject 1578 CONST_DOUBLE with MEM with invalid pic address. 1579 * reload1.c (real.h): Include it. 1580 * Makefile.in (reload1.o): Depends on real.h. 1581 1582Wed Jul 26 07:58:22 1995 Ian Lance Taylor <ian@cygnus.com> 1583 1584 * gcc.c (MULTILIB_DIRS): Provide default if not defined. 1585 (multilib_defaults): New static variable. 1586 (default_arg): New static function. 1587 (set_multilib_dir): Ignore default arguments. 1588 (print_multilib_info): Ignore entries which use default arguments. 1589 1590Tue Jul 25 10:06:09 1995 Michael Meissner <meissner@cygnus.com> 1591 1592 * rs6000.md (allocate_stack): Don't copy the LR register to 1593 the new stack end. 1594 * rs6000.c (rs6000_stack_info): Correctly store the LR in 1595 the caller's frame, not the current frame, for V.4 calls. 1596 * rs6000/eabi.asm (_save*, _rest*): Provide all mandated V.4 save 1597 and restore functions, except for the save*_g functions which 1598 return the GOT address. 1599 1600Fri Jul 21 14:24:25 1995 Michael Meissner <meissner@cygnus.com> 1601 1602 * rs6000/eabi.h (__eabi): Load up r13 to be the small data 1603 pointer, unless -mrelocatable. 1604 1605 * rs6000/aix3newas.h (LINK_SPEC): Import machine independent 1606 functions if -mcpu=common. 1607 * rs6000/milli.exp: Import file referenced in aix3newas.h. 1608 1609 * rs6000/eabi.asm (__eabi): Support for fixing up user initialized 1610 pointers when -mrelocatable is used. 1611 * rs6000/eabi.h (ASM_OUTPUT_INT): Record any pointers initialized 1612 by the user if -mrelocatable, to be fixed up by __eabi. 1613 (CONST_SECTION_ASM_OP): If -mrelocatable, put read-only stuff in .data, 1614 not .rodata, to allow user initialized pointers to be updated by __eabi. 1615 1616 * rs6000.h (TARGET_SWITCHES): Add -mdebug-{stack,arg}. 1617 (TARGET_{ELF,NO_TOC,TOC}): Add defaults for non system V. 1618 (rs6000_stack): New structure to describe stack layout. 1619 (RS6000_{REG_SAVE,SAVE_AREA,VARARGS_*}): New macros used to 1620 support both AIX and V.4 calling sequences. 1621 (FP_ARG_*, GP_ARG_*): Ditto. 1622 (FP_SAVE_INLINE): Ditto. 1623 (STARTING_FRAME_OFFSET): Modify to support both AIX and V.4 1624 calling sequences. 1625 (FIRST_PARM_OFFSET): Ditto. 1626 (REG_PARM_STACK_SPACE): Ditto. 1627 (STACK_POINTER_OFFSET): Ditto. 1628 (FUNCTION_ARG_REGNO_P): Ditto. 1629 ({,INIT_}CUMULATIVE_ARGS): Ditto. 1630 (LEGITIMATE_LO_SUM_ADDRESS_P): Ditto. 1631 (FUNCTION_ARG{,_ADVANCE,PARTIAL_NREGS,PASS_BY_REFERENCE}): Ditto. 1632 (SETUP_INCOMING_VARARGS): Ditto. 1633 (EXPAND_BUILTIN_SAVEREGS): Ditto. 1634 (CAN_ELIMINATE): Ditto. 1635 (INITIAL_ELIMINATION_OFFSET): Ditto. 1636 (LEGITIMATE_CONSTANT_POOL_{BASE,ADDRESS}_P): Ditto. 1637 (GO_IF_{LEGITIMATE_ADDRESS,MODE_DEPENDENT_ADDRESS}): Ditto. 1638 (LEGITIMIZE_ADDRESS): Ditto. 1639 (CONST_COSTS): Ditto. 1640 (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Ditto. 1641 (ASM_OUTPUT_REG_{PUSH,POP}): Use reg_names to print registers. 1642 (function declarations): Add new rs6000.c function declarations, 1643 and delete decls of deleted functions. 1644 (SHIFT_COUNT_TRUNCATED): Parenthesize the expression. 1645 1646 * rs6000.c (init_cumulative_args): New function to support AIX 1647 and V.4 calling sequences. 1648 (function_arg{,_advance,partial_nregs,pass_by_reference}): Ditto. 1649 (setup_incoming_varargs): Ditto. 1650 (expand_builtin_saveregs): Ditto. 1651 (rs6000_stack_info): Ditto. 1652 (debug_stack_info): Ditto. 1653 (direct_return): Changes to support AIX and V.4 calling sequences. 1654 (first_reg_to_save): Ditto. 1655 (svr4_traceback): Ditto. 1656 (output_{prolog,epilog}): Ditto. 1657 (print_operand): Use reg_names to print registers. Add support 1658 for V.4 HIGH/LO_SUM address modes. 1659 (must_save_cr): Function deleted, in rewrite of AIX/V.4 calling 1660 sequence support. 1661 (rs6000_sa_size): Ditto. 1662 (rs6000_pushes_stack): Ditto. 1663 (output_toc): Add abort if no toc. 1664 1665 * rs6000.md (call insns): Add a new argument to flag a V.4 1666 function needs to set bit 6 of the CR. 1667 (elf_{low,high}): New V.4 functions to create addresses via HIGH 1668 and LO_SUM patterns. 1669 (movsi): Use elf_{low,high} if appropriate. 1670 (mov{si,di}_update): Name these patterns for allocate_stack. 1671 (allocate_stack): Support for V.4 stack layout. 1672 (sync): New pattern for V.4 trampolines to issue the sync 1673 instruction. 1674 1675 * rs6000/sysv4.h (TARGET_SWTICHES): Add -mcall-{aix,sysv}, and 1676 -mprototype. Remove separate flag bit for -mno-toc. 1677 (SUBTARGET_OVERRIDE_OPTIONS): Don't test for -mno-toc. 1678 (FP_ARG_*): Adjust for V.4 calling sequences. 1679 (RS6000_*): Ditto. 1680 (FP_SAVE_INLINE): Ditto. 1681 (toc_section): Eliminate use of AIX style full TOC. 1682 (TRAMPOLINE_{TEMPLATE,SIZE}): Redefine for V.4 support. 1683 (INITIALIZE_TRAMPOLINE): Ditto. 1684 1685 * rs6000/eabi.h (CPP_SPEC): Define _CALL_SYSV or _CALL_AIX, 1686 depending on whether -mcall-sysv or -mcall-aix was used. 1687 * rs6000/eabile.h (CPP_SPEC): Ditto. 1688 * rs6000/sysv4le.h (CPP_SPEC): Ditto. 1689 1690 * rs6000/t-eabigas (MULTILIB_{OPTIONS,DIRNAMES}): Delete no-toc 1691 libraries, explicit big endian libraries. 1692 * rs6000/t-ppcgas (MULTILIB_{OPTIONS,DIRNAMES}): Ditto. 1693 1694 * rs6000/t-eabiaix: New file for eabi, using -mcall-aix as the 1695 default. 1696 * rs6000/eabiaix.h: Ditto. 1697 1698 * rs6000/t-eabilegas: New file for eabi on little endian systems. 1699 * rs6000/t-ppclegas: New file for V.4 on little endian systems. 1700 1701 * rs6000/t-rs6000 (MULTILIB_{OPTIONS,DIRNAMES}): Build libgcc.a 1702 for -mcpu=common. 1703 1704 * configure (powerpc-*-eabiaix): New configuration for defaulting 1705 to old-style AIX calling sequence. 1706 (powerpcle*): Use new t-{eabi,ppc}legas files, to avoid building 1707 explicit little endian multilib libraries. 1708 1709Fri Jul 21 13:23:06 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1710 1711 * toplev.c (main): Don't define sbrk #ifdef __alpha__. 1712 1713Tue Jul 18 19:23:44 1995 Paul Eggert <eggert@twinsun.com> 1714 1715 * cccp.c (do_include): Prefix -H output lines with spaces, not dots. 1716 (output_dots): Remove. 1717 1718 * cccp.c (main): cplusplus_comments now defaults to 1. 1719 But clear it if -traditional or the new option -lang-c89 is given. 1720 * gcc.c (default_compilers, cpp): Specify -lang-c89 if -ansi is given. 1721 This turns off C++ comment recognition. 1722 1723Tue Jul 18 19:16:38 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1724 1725 * va-sparc.h (va_arg): Add support for 128 bit long double type. 1726 1727Tue Jul 18 19:11:18 1995 Jorn Rennecke (amylaar@meolyon.hanse.de) 1728 1729 * c-common.c (decl_attributes, case A_ALIGNED): Handle is_type 1730 case properly. 1731 1732Tue Jul 18 19:03:02 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1733 1734 * fold-const.c (fold, case CONVERT_EXPR): Don't merge conversions 1735 if outer is to handle a type with differing precision. 1736 1737Mon Jul 17 14:37:35 1995 Pat Rankin (rankin@eql.caltech.edu) 1738 1739 * vax/vms.h (HAVE_ATEXIT): Define. 1740 (DO_GLOBAL_CTORS_BODY): Don't call atexit; let __do_global_ctors do it. 1741 * vax/xm-vms.h (HAVE_VPRINTF): Define. 1742 1743Mon Jul 17 06:41:19 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1744 1745 * c-typeck.c ({unsigned,signed}_type): Handle intXX_type_node types. 1746 1747 * xm-alpha.h (sbrk): Add declaration. 1748 1749 * convert.c (convert_to_integer): If TYPE is a enumeral type or 1750 if its precision is not the same as the size of its mode, 1751 convert in two steps. 1752 1753 * m68k.md (tstdi, cmpdi): Use match_scratch, not match_operand. 1754 1755Fri Jul 14 19:23:42 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1756 1757 * c-decl.c (field_decl_cmp): Rewritten to make sure that a null 1758 name always sorts low against other names. 1759 * c-typeck.c (lookup_field): Change name comparison to match what 1760 field_decl_cmp does. 1761 1762Fri Jul 14 18:46:24 1995 Michael Meissner <meissner@cygnus.com> 1763 1764 * rs6000.md (movsi): Convert a CONST_DOUBLE into a CONST_INT of 1765 the low part. 1766 1767Fri Jul 14 18:30:52 1995 Doug Evans <dje@cygnus.com> 1768 1769 * toplev.c (main): Reword dwarf/c++/-g warning. 1770 1771Fri Jul 14 18:19:34 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1772 1773 * expr.h (NO_DEFER_POP): Remove last change. 1774 * expr.c (stor_expr): Force stack adjust before NO_DEFER_POP. 1775 (expand_expr, case COND_EXPR): Likewise. 1776 * stmt.c (expand_start_stmt_expr): Likewise. 1777 1778Fri Jul 14 07:58:35 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1779 1780 * function.c (struct temp_slot): New fields base_offset, full_size. 1781 (assign_stack_temp): For !FRAME_GROWS_DOWNWARD, set p->size to size. 1782 Set new fields base_offset and full_size. 1783 (combine_temp_slots): Use new fields base_offset and full_size instead 1784 of slot and size. 1785 1786 * loop.c (loop_number_exit_count): New global variable. 1787 (loop_optimize): Allocate space for it. 1788 (find_and_verify_loops, mark_loop_jump): Set it. 1789 (strength_reduce, check_dbra_loop): Use loop_number_exit_count 1790 instead of loop_number_exit_labels. 1791 * loop.h (loop_number_exit_count): Declare it. 1792 * unroll.c (find_splittable_{regs,givs}, final_[bg]iv_value): Use 1793 loop_number_exit_count instead of loop_number_exit_labels. 1794 (reg_dead_after_loop): Check loop_number_exit_count, and fail 1795 if the count doesn't match loop_number_exit_labels. 1796 1797 * cse.c (cse_insn): Ifdef out code that pre-truncates src_folded. 1798 1799 * sparc.md (sethi_di_sp64): Return null string at end. 1800 1801 * function.h (struct function): Add stdarg field. 1802 * function.c (current_function_stdarg): New global variable. 1803 (push_function_context_to): Save it. 1804 (pop_function_context_from): Restore it. 1805 (assign_parms): Set it. 1806 (init_function_start): Clear it. 1807 * output.h (current_function_stdarg): Declare it. 1808 * i960.md: Modify all patterns which handle stores to memory to also 1809 check current_function_varargs and current_function_stdarg. 1810 1811 * reorg.c (fill_simple_delay_slots): When trying to take instruction 1812 from after the branch, don't continue past target label. Local 1813 variables passed_label and target_uses are no longer necessary. 1814 1815Thu Jul 13 19:30:04 1995 Jeff Law (law@snake.cs.utah.edu) 1816 1817 * pa.c (output_bb): Fix error in long backwards branch with 1818 nullified delay slot. 1819 1820Thu Jul 13 19:26:13 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1821 1822 * expmed.c (SHIFT_COUNT_TRUNCATED): Use #ifdef not #if. 1823 1824Mon Jul 10 20:16:44 1995 Paul Eggert <eggert@twinsun.com> 1825 1826 * cccp.c (rescan): Don't address outside of array when 1827 preprocessing C++ comments. 1828 1829Mon Jul 10 20:05:46 1995 Michael Meissner <meissner@tiktok.cygnus.com> 1830 1831 * rs6000.c (expand_block_move): Remove #if 0 conditionals 1832 against using larger block moves. 1833 1834 * t-rs6000 (EXTRA_PARTS): Copy milli.exp to release dir. 1835 (milli.exp): Copy to build dir from machine dependend dir. 1836 1837Mon Jul 10 20:03:29 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 1838 1839 * arm.md (matcher for (shiftable_op (cond-exp) (reg))): If 1840 shiftable_op is minus, then subtract from zero when cond fails. 1841 1842Mon Jul 10 19:58:26 1995 John F. Carr <jfc@mit.edu> 1843 1844 * sparc.h (SELECT_SECTION): Use TREE_CODE_CLASS instead of directly 1845 referencing tree_code_type. 1846 1847Mon Jul 10 19:54:31 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1848 1849 * protoize.c (reverse_def_dec_list): Delete const qualifiers from 1850 local variables, and delete casts which were casting away const. 1851 1852Mon Jul 10 19:14:39 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1853 1854 * c-lang.c (finish_file): Add missing parm to start_function call. 1855 1856 * jump.c (jump_optimize): Pass outer_code arg to rtx_cost. 1857 1858 * varasm.c (assemble_name, bc_assemble_integer): Call 1859 bc_emit_labelref with proper args. 1860 1861 * function.c (setjmp_args_warning): Remove bogus arg. 1862 1863Mon Jul 10 18:20:54 1995 Fergus Henderson (fjh@cs.mu.oz.au) 1864 1865 * gcc.c (p{fatal,error}_with_name, perror_exec): Quote filename. 1866 1867Mon Jul 10 18:12:51 1995 Gran Uddeborg (uddeborg@carmen.se) 1868 1869 * i386/iscdbx.h (STARTFILE_SPEC): Handle -Xp. 1870 1871Wed Jul 5 02:42:17 1995 Per Bothner (bothner@spiff.gnu.ai.mit.edu) 1872 1873 * cpphash.h (enum node_type): Remove unneeded and non-standard 1874 forward declaration. 1875 1876Sat Jul 1 20:15:39 1995 Jim Wilson <wilson@chestnut.cygnus.com> 1877 1878 * mips/t-mips, mips/t-mips-gas (MULTILIB_*, LIBGCC, INSTALL_LIBGCC): 1879 Delete. 1880 1881 * sparc/sol2.h (LINK_SPEC): Revert March 16 change. Do not add -R 1882 for each -L. 1883 1884 * collect2.c (libcompare): Verify that file name extensions are valid. 1885 Put files with invalid extensions last in the sort. 1886 1887 * integrate.c (integrate_decl_tree): Set DECL_ABTRACT_ORIGIN before 1888 pushdecl call for local variables. 1889 1890Sat Jul 1 08:13:38 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 1891 1892 * cpplib.c (output_line_command): If not emitting #line directives 1893 delay returning until after adjust_position has been called. 1894 1895 * arm.md (mov{si,sf,df}cc): Call gen_compare_reg to generate 1896 the condition code register. 1897 1898Sat Jul 1 06:55:09 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1899 1900 * fold-const.c (decode_field_reference): New parm PAND_MASK. 1901 (unextend): New parm MASK. 1902 (fold_truthop): Pass new parms to decode_field_reference and unextend. 1903 1904 * va-alpha.h (__va_tsize): Use __extension__ to avoid warning 1905 on use of `long long'. 1906 1907 * expr.h (NO_DEFER_POP): Do any pending stack adjusts. 1908 1909 * recog.c (register_operand): Disallow subreg of reg not allowed to 1910 change size. 1911 1912Thu Jun 29 05:51:57 1995 Jeff Law (law@snake.cs.utah.edu) 1913 1914 * pa.md (reload addsi3): New pattern to avoid reload lossage 1915 with register eliminations. 1916 1917 * pa.c (output_cbranch): When checking for a jump to the given 1918 insn's delay slot, handle the case where JUMP_LABEL for the 1919 given insn does not point to the first label in a series of 1920 labels. 1921 (output_bb, output_dbra, output_movb): Likewise. 1922 1923Wed Jun 28 18:04:56 1995 Jeff Law (law@snake.cs.utah.edu) 1924 1925 * pa.h (PIC_OFFEST_TABLE_REGNUM_SAVED): Define to %r4. 1926 (CONDITIONAL_REGISTER_USAGE): Make it fixed when compiling 1927 PIC code. 1928 (INIT_EXPANDERS): Delete. 1929 * pa.c (hppa_save_pic_table_rtx): Delete variable. 1930 (hppa_expand_prologue): For PIC generation, copy the PIC 1931 register into a fixed callee register at the end of the 1932 prologue of non-leaf functions. 1933 * pa.md (call expanders): Reload the PIC register from the 1934 fixed callee saved register. Don't try to save the PIC 1935 register before the call. 1936 1937Wed Jun 28 18:01:14 1995 Stan Cox (coxs@dg-rtp.dg.com) 1938 1939 * m88k/dguxbcs.h (ASM_SPEC): Removed -h flag. 1940 * m88k/dgux.h (ASM_SPEC): Likewise. 1941 1942Wed Jun 28 17:01:58 1995 David Edelsohn <edelsohn@mhpcc.edu> 1943 1944 * rs6000.c (processor_target_table): Remove CPU name synonyms. 1945 * rs6000.h (CPP_SPEC): Likewise. 1946 * rs6000/sysv4.h (CPP_SPEC): Likewise. 1947 (ASM_SPEC): Likewise. 1948 * rs6000/sysv4le.h (CPP_SPEC): Likewise. 1949 * rs6000/eabile.h (CPP_SPEC): Likewise. 1950 * rs6000/powerpc.h (CPP_SPEC): Likewise. 1951 (ASM_SPEC): Set assembler target according to compiler target. 1952 * rs6000/aix3newas.h (CPP_SPEC): Likewise. 1953 (ASM_SPEC): Likewise. 1954 * rs6000/aix41.h (CPP_SPEC): Likewise. 1955 (ASM_SPEC): Likewise. 1956 1957Wed Jun 28 16:25:53 1995 Gran Uddeborg (uddeborg@carmen.se) 1958 1959 * i386/x-isc3 (INSTALL_HEADERS_DIR): Delete; done by configure. 1960 1961Wed Jun 28 16:10:47 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 1962 1963 * xm-rs6000.h (alloca): Extern decl added for non-GNU compiler. 1964 1965Wed Jun 28 11:31:30 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1966 1967 * cpplib.c (progname): Remove definition from here. 1968 1969 * final.c (final_scan_insn): Fix error in last change. 1970 1971 * rtlanal.c (reg_set_p_1): Now static; add extra parm. 1972 1973 * stmt.c: Delete redundant forward decls. 1974 (expand_anon_union_decl): Correctly call expand_decl. 1975 1976 * toplev.c (strip_off_ending): Strip off any ending; don't 1977 pretend we know what valid endings are. 1978 1979 * svr4.h (ASM_OUTPUT_SECTION_NAME): Don't crash if DECL is null. 1980 1981 * rs6000.md ({load,store}_multiple): Don't use indirect_operand 1982 in define_insn; use explicit MEM of register_operand instead. 1983 1984Tue Jun 27 11:42:56 1995 Stephen L Moshier <moshier@world.std.com> 1985 1986 * i386/i386.c (print_operand, case `J'): Use jns for GE and js for 1987 LT. 1988 1989Tue Jun 27 07:58:55 1995 Jason Merrill <jason@phydeaux.cygnus.com> 1990 1991 * expr.c (expand_expr, TARGET_EXPR): Only use original_target 1992 if !ignore. 1993 1994Tue Jun 27 07:27:26 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 1995 1996 * fold-const.c (fold_truthop): Commute unextend and convert on 1997 l_const and r_const. 1998 1999 * c-common.c (decl_attributes, case A_CONSTRUCTOR, A_DESTRUCTOR): 2000 Set TREE_USED. 2001 2002 * final.c (final_scan_insn): Don't call alter_cond unless 2003 condition is on cc0. 2004 2005 * stmt.c (expand_asm_operands): Handle input operands that may not 2006 be in a register. 2007 2008Mon Jun 26 19:23:05 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 2009 2010 * arm/lib1funcs.asm (L_dvmd_tls): Renamed from L_divmodsi_tools. 2011 * arm/t-semi (LIB1ASMFUNCS): Rename _dvmd_tls from _divmodsi_tools. 2012 2013Mon Jun 26 19:18:06 1995 Jim Wilson <wilson@chestnut.cygnus.com> 2014 2015 * unroll.c (find_splittable_regs): When completely unrolling loop, 2016 check for non-invariant initial biv values. 2017 2018Mon Jun 26 19:13:54 1995 Gran Uddeborg <uddeborg@carmen.se> 2019 2020 * configure (i[345]86-*-isc*): Fix misspelled "rfile" to "ifile". 2021 2022Mon Jun 26 18:58:22 1995 Mike Stump <mrs@cygnus.com> 2023 2024 * expr.c (expand_expr, case COND_EXPR): Protect the condition from 2025 being evaluated more than once. 2026 (do_jump, case TRUTH_ANDIF_EXPR, TRUTH_ORIF_EXPR): Likewise. 2027 2028Mon Jun 26 18:52:36 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 2029 2030 * fixincludes (string.h): Fix return value for mem{ccpy,chr,cpy,set} 2031 and str{len,spn,cspn} on sysV68. 2032 2033Mon Jun 26 06:54:50 1995 Michael Meissner (meissner@cygnus.com) 2034 2035 * i386/osfrose.h (LONG_DOUBLE_TYPE_SIZE): Go back to making long 2036 double == double. 2037 2038Thu Jun 22 19:14:41 1995 Pat Rankin (rankin@eql.caltech.edu) 2039 2040 * make-cc1.com (if DO_LINK): Skip c-parse.* processing when 2041 only relinking. 2042 (gas_message): Update to reflect current version, and give 2043 a different message if/when no version of gas is found.xo 2044 2045Thu Jun 22 18:52:37 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 2046 2047 * arm/lib1funcs.asm (___modsi3): Correctly set SIGN register for 2048 modulo involving negative numbers. 2049 2050Thu Jun 22 18:32:27 1995 Uwe Seimet (seimet@chemie.uni-kl.de) 2051 2052 * xm-atari.h (HZ): Now 100 and don't define if already defined. 2053 2054Thu Jun 22 18:26:12 1995 Jeffrey A Law (law@snake.cs.utah.edu) 2055 2056 * calls.c (expand_call): Correctly handle returning BLKmode 2057 structures in registers when the size of the structure is not 2058 a multiple of word_size. 2059 * stmt.c (expand_return): Likewise. 2060 2061 * pa-gux7.h (LIB_SPEC): Undefine before redefining. 2062 * pa-hpux.h (LIB_SPEC): Likewise. 2063 * pa-hpux7.h (LIB_SPEC): Likewise. 2064 2065 * genmultilib: Work around hpux8 /bin/sh case bug. 2066 2067 * pa.h (LIB_SPEC): Define to avoid -lg. 2068 2069Thu Jun 22 18:19:09 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2070 2071 * expr.c (expand_expr, TARGET_EXPR): Use original_target. 2072 2073 * collect2.c (locatelib): Fix parsing of LD_LIBRARY_PATH. 2074 2075Thu Jun 22 18:15:54 1995 Paul Eggert <eggert@twinsun.com> 2076 2077 * configure: Create an empty Makefile.sed first, to work 2078 around a Nextstep 3.3 bug. 2079 2080Thu Jun 22 18:03:44 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2081 2082 * Makefile.in (STAGESTUFF): Add stamp-crt. 2083 (crtbegin.o, crtend.o): Now depend on stamp-crt. 2084 (stamp-crt): New rule, to actually build crt{begin,end}.o. 2085 2086 * collect2.c (main): Unlink export_file before we return. 2087 2088Thu Jun 22 14:25:56 1995 Michael Meissner (meissner@cygnus.com) 2089 2090 * rs6000.h (STRIP_NAME_ENCODING): Store NAME and strlen(NAME) into 2091 local variables; cast result of alloca to avoid compiler warnings. 2092 2093Tue Jun 20 18:25:29 1995 Douglas Rupp (drupp@cs.washington.edu) 2094 2095 * alpha/config-nt.sed, i386/config-nt.sed: Edit to add 2096 a missing $(exeext) for CCCP. 2097 2098Tue Jun 20 18:18:00 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2099 2100 * protoize.c (default_include): Use name and two ints to be 2101 compatible with definition of INCLUDE_DEFAULTS. 2102 2103Mon Jun 19 19:24:29 1995 Ted Lemon <mellon@toccata.fugue.com> 2104 2105 * mips/netbsd.h (ASM_DECLARE_FUNCTION_NAME): Don't emit function label. 2106 2107Mon Jun 19 18:34:55 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2108 2109 * fixincludes: Don't define wchar_t under C++. 2110 2111Mon Jun 19 17:12:41 1995 Paul Eggert <eggert@twinsun.com> 2112 2113 * cccp.c (collect_expansion): Work around enum bug in vax 2114 ultrix 4.3 pcc. 2115 * tree.c (simple_cst_equal): Likewise. 2116 2117Mon Jun 19 16:53:00 1995 Douglas Rupp (drupp@cs.washington.edu) 2118 2119 * winnt/spawnv.c: New file. 2120 2121Mon Jun 19 16:30:29 1995 Glenn Brown <glenn@mars.myri.com> 2122 2123 * caller-save.c (save_call_clobbered_regs): If AUTO_INC_DEC, mark 2124 register indicated by REG_INC notes as live so they will be saved. 2125 2126Mon Jun 19 16:21:12 1995 Jeffrey A Law (law@snake.cs.utah.edu) 2127 2128 * pa.h (PRINT_OPERAND_ADDRESS, case LOW_SUM): Fix logic bug 2129 in last change. 2130 2131Mon Jun 19 14:11:49 1995 Jim Wilson <wilson@chestnut.cygnus.com> 2132 2133 * integrate.c (integrate_decl_tree): Only set DECL_ABSTRACT_ORIGIN 2134 if the decl returned by pushdecl is the one we started with. 2135 2136 * mips.h (current_function_name): Delete declaration. 2137 (ASM_DECLARE_FUNCTION_NAME): Don't set current_function_name. 2138 * gnu.h (ASM_DECLARE_FUNCTION_NAME): Likewise. 2139 * mips.c (current_function_decl): Delete declaration. 2140 (function_prologue): New variable fnname. Use it instead of 2141 current_function_name. 2142 (function_epilogue): Likewise. 2143 2144Mon Jun 19 13:13:15 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 2145 2146 * alpha.h (ASM_OUTPUT_ASCII): Always reset line count when 2147 starting new line. 2148 2149 * scan-decls.c (scan_decls): Fix typo when resetting PREV_ID_START. 2150 2151 * i386/config-nt.sed, alpha/config-nt.sed: Change version to 2.7.1. 2152 2153Mon Jun 19 13:06:14 1995 DJ Delorie (dj@delorie.com) 2154 2155 * msdos/top.sed: Support new build variables. 2156 * msdos/configur.bat: Make options.h and specs.h. 2157 Change realclean to maintainer-clean. 2158 2159Fri Jun 16 06:54:03 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2160 2161 * Version 2.7.0 Released. 2162 2163 * obstack.c: Always enable this code for now. 2164 2165 * alpha.c (alpha_builtin_saveregs): Use ptr_mode and conversions 2166 when need so works for both OSF and NT. 2167 * va-alpha.h (__va_tsize): Round to long long not long. 2168 2169Thu Jun 15 17:54:52 1995 Bdale Garbee <bdale@gag.com> 2170 2171 * configure (a29k-*-coff): Synonym for a29k-*-udi. 2172 2173Thu Jun 15 17:51:21 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2174 2175 * function.c (assign_parms): Do all conversions in CONVERSION_INSNS. 2176 2177Thu Jun 15 17:36:49 1995 Michael Meissner <meissner@cygnus.com> 2178 2179 * reg-stack.c (record_reg_life): Call record_reg_life_pat with 0 2180 for douse argument so that USE's created to mark variables within 2181 blocks don't get marked as set. 2182 2183Thu Jun 15 06:28:15 1995 Dennis Glatting (dennisg@CyberSAFE.COM) 2184 2185 * configure: Change one sed command to work around m68k-next bug. 2186 2187Wed Jun 14 22:14:39 1995 Jason Merrill <jason@deneb.cygnus.com> 2188 2189 * collect2.c (main): Don't turn off auto_export because of -g. 2190 (main): Ignore the argument to -o. 2191 2192 * alpha.h (LINK_SPEC): Don't pass -init __main anymore. 2193 * alpha/osf12.h (LINK_SPEC): Ditto. 2194 * mips/iris5.h (LINK_SPEC): Ditto. 2195 2196 * collect2.c (main): Place o_file after an initial .o (like crt0.o). 2197 If we have LD_INIT_SWITCH, use init and fini functions for 2198 executables, too. Specify the unique function names. 2199 (write_c_file_stat): Fix the case of destructors but no constructors. 2200 Don't include the generic-named functions for executables. 2201 (write_c_file): If we have LD_INIT_SWITCH, always use 2202 write_c_file_stat. 2203 2204 * collect2.c (main): Also add _GLOBAL__D? to export list. 2205 2206 * ginclude/iso646.h: Do nothing if compiled as C++. 2207 2208Wed Jun 14 17:39:10 1995 Roland McGrath (roland@gnu.ai.mit.edu) 2209 2210 * c-common.c (format_char_info, case 'm'): Set type to void. 2211 (check_format_info): If type is void, ignore operand. 2212 2213Wed Jun 14 17:04:10 1995 Paul F. Kunz (Paul_Kunz@SLAC.Stanford.EDU) 2214 2215 * expr.c (expand_builtin_apply_args): Put back original 2216 register save and restore order. 2217 2218Wed Jun 14 16:56:22 1995 Michael Meissner <meissner@cygnus.com> 2219 2220 * rs6000/eabi.h (INVOKE__main): Define, so __eabi is called after 2221 main's arguments are saved. 2222 2223 * rs6000.c (output_prolog): Don't call __eabi here, let 2224 compiler call it after the arguments to main are saved. 2225 (output_{prolog,epilog}): Don't use functions under V.4 to save 2226 and restore floating point registers. 2227 2228Wed Jun 14 16:52:12 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 2229 2230 * m68k/mot3300.h (PCC_BITFIELD_TYPE_MATTERS): Defined. 2231 2232Wed Jun 14 16:48:53 1995 Jerry Frain (jerry@tivoli.com) 2233 2234 * Makefile.in (stage[1-4]): Correctly link `as', `ld', and `collect2'. 2235 2236Wed Jun 14 05:52:04 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2237 2238 * objc-act.c (hack_method_prototype): Set DECL_CONTEXT of parms. 2239 2240 * expmed.c (emit_store_flag): Always set LAST. 2241 2242 * c-decl.c (start_function): New parameter for attributes. 2243 * c-tree.h (start_function): Likewise. 2244 * c-lang.c (finish_file): Pass extra parm to start_function. 2245 * objc-act.c (build_module_descriptor, really_start_method): Likewise. 2246 * c-parse.in (fndef, nested_function, notype_nested_function): 2247 Likewise. 2248 2249 * function.c (assign_parms): Use convert_to_mode instead of 2250 gen_lowpart when converting incoming parm. 2251 2252Tue Jun 13 19:10:32 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 2253 2254 * rs6000.md (decrement_and_branch): Finish last fix; update matching 2255 constraint. 2256 2257Tue Jun 13 18:32:51 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 2258 2259 * fold-const.c (fold): When converting a COND_EXPR to an ABS_EXPR, 2260 get the types right for ABS_EXPR to work. 2261 2262Mon Jun 12 17:09:55 1995 Michael Tiemann (tiemann@axon.cygnus.com) 2263 2264 * reorg.c (fill_simple_delay_slots): Set MAYBE_NEVER according to 2265 code of TRIAL_DELAY, not TRIAL. 2266 2267Mon Jun 12 15:02:37 1995 Doug Evans <dje@cygnus.com> 2268 2269 * configure: Restore code to make ld symlink if ! use_collect2. 2270 2271 * gcc.c (link_command_spec): Undo patch of May 11. 2272 -nostdlib implies -nostartfiles again. 2273 * dsp16xx.h (CROSS_LINK_SPEC): Likewise. 2274 * i386/freebsd.h (LINK_SPEC): Undo patch of May 24. 2275 Don't pass "-e start" if nostdlib. 2276 * i386/sun.h (LINK_SPEC): Likewise. 2277 * m68k/sun2o4.h (LINK_SPEC): Likewise. 2278 * m68k/sun3.h (LINK_SPEC): Likewise. 2279 * m68k/vxm68k.h (LINK_SPEC): Likewise. 2280 * mips/netbsd.h (LINK_SPEC): Likewise. 2281 * config/netbsd.h (LINK_SPEC): Likewise. 2282 * rs6000/mach.h (LINK_SPEC): Likewise. 2283 * sparc.h (LINK_SPEC): Likewise. 2284 * sparc/vxsparc.h (LINK_SPEC): Likewise. 2285 2286 * gcc.c (link_command_spec): New argument -nodefaultlibs. 2287 2288Sun Jun 11 20:47:53 1995 Stephen L Moshier (moshier@world.std.com) 2289 2290 * Makefile.in (fix-header.o): Depends on xsys-protos.h. 2291 2292Sun Jun 11 15:07:58 1995 Tim Carver (timc@ibeam.intel.com) 2293 2294 * reload1.c (emit_reload_insns): Don't call HARD_REGNO_NREGS 2295 on psuedo when clearing reg_last_reload_reg. 2296 2297Sun Jun 11 14:07:05 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 2298 2299 * m68k.md ({add,sub}di{_mem,3}): Patterns merged. 2300 2301Sun Jun 11 13:43:26 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 2302 2303 * m68k.md (cmpdi matcher): Set cc_status before returning. 2304 2305 * config/xm-freebsd.h (DONT_DECLARE_SYS_SIGLIST): Define. 2306 2307Sun Jun 11 13:38:49 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2308 2309 * fixincludes (math.h): Keep declaration of abs on HPUX. 2310 2311Sun Jun 11 12:31:42 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2312 2313 * stor-layout.c (variable_size): Do nothing if SIZE is constant. 2314 2315 * stmt.c (expand_asm_operands): See if output operand permits 2316 register. If not, mark output addressable, call expand_operand 2317 on it, and give error if not MEM. 2318 2319 * function.c (assign_parms): Handle promotions of both 2320 passed and nominal modes separately and insert needed conversions. 2321 (promoted_input_arg): Return 0 if nominal and passed modes differ. 2322 2323 * stmt.c (all_cases_count, case INTEGER_TYPE): Fix typo in checking 2324 for integer bounds. 2325 2326Sat Jun 10 08:55:25 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2327 2328 * libgcc2.c (_floatdidf): Correctly set float sizes. 2329 2330 * c-decl.c (c_decode_option, case "-Wall"): Don't set extra_warnings. 2331 2332 * Makefile.in (cpplib.o, fix-header.o): Update dependencies. 2333 (cpperror.o, cppexp.o, cpphash.o): New rules, to show .h dependencies. 2334 2335Fri Jun 9 18:06:10 1995 Doug Evans <dje@canuck.cygnus.com> 2336 2337 * cse.c (cse_basic_block): Fix test for whether block ends with a 2338 barrier. Return next insn, not 0, if block ends in a barrier. 2339 2340Fri Jun 9 17:58:29 1995 Paul Eggert <eggert@twinsun.com> 2341 2342 * fold-const.c (lshift_double): Replace `&' with `%' to fix typo. 2343 ([lr]shift_double): Truncate shift count only if SHIFT_COUNT_TRUNCATED. 2344 Remove unnecessary `count >= prec' test. 2345 2346 * cexp.y (left_shift): Ignore integer overflow. 2347 2348 * cexp.y (skip_evaluation): New variable. 2349 (&&, ||, ?:): Increment it in unevaluated subexpressions. 2350 (/, %, integer_overflow): Suppress diagnostics if skip_evaluation != 0. 2351 (yyerror): Clear skip_evaluation. 2352 2353Fri Jun 9 17:49:05 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 2354 2355 * m68k.md (tstdi): Rewrite. 2356 2357Fri Jun 9 17:28:55 1995 Per Bothner <bothner@cygnus.com> 2358 2359 * scan-decls.c (scan_decls): Handle declarations with 2360 multiple comma-separated declarators. 2361 2362Thu Jun 8 19:16:12 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 2363 2364 * arm.md (mov[sd]f expands): Don't allow fp constants in pseudos 2365 when TARGET_SOFT_FLOAT. 2366 2367Thu Jun 8 19:11:43 1995 Jim Wilson <wilson@chestnut.cygnus.com> 2368 2369 * expmed.c (store_split_bit_field): When adjust arg in 2370 BYTES_BIT_ENDIAN case, use number of bits in arg for MEM operands 2371 and BITS_PER_WORD for other operands. 2372 (extract_fixed_bit_field): Undo last change. 2373 2374 * unroll.c (verify_addresses): New function. 2375 (find_splittable_givs): Use it instead of memory_address_p. 2376 2377Thu Jun 8 18:58:18 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 2378 2379 * expmed.c (expand_divmod): Always check result of emit_store_flag. 2380 2381Thu Jun 8 12:02:34 1995 David D Zuhn (zoo@armadillo.com) 2382 2383 * cpplib.c (cpp_push_buffer): Include filename in error message. 2384 2385Thu Jun 8 11:53:45 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2386 2387 * function.c (assign_parms): Don't call promote_mode on arg 2388 unless PROMOTE_FUNCTION_ARGS defined. 2389 2390 * rs6000.md (decrement_and_branch): Ensure label is operand 0. 2391 2392 * rs6000.md (aux_truncdfsf2): New pattern. 2393 (movsf): Use it instead of invalid SUBREG and truncdfsf2. 2394 2395 * varasm.c (assemble_name): Disable warn_id_clash around 2396 get_identifier call. 2397 2398Wed Jun 7 17:22:25 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 2399 2400 * configure (gdb_needs_out_file_path): New variable. 2401 (m68k-motorola-sysv): Set gdb_needs_out_file_path if not using gas. 2402 (.gdbinit): If gdb_needs_out_file_path is set, add a 'dir' command 2403 for $(out_file). 2404 2405Wed Jun 7 17:17:19 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 2406 2407 * fold-const.c (fold): When folding `<' type nodes, make true_value 2408 and false_value have correct types. 2409 2410Wed Jun 7 05:06:42 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2411 2412 * collect2.c (COFF scan_prog_file): Use the AIX duplicate entry. 2413 2414Tue Jun 6 18:43:09 1995 Jeffrey A Law (law@snake.cs.utah.edu) 2415 2416 * pa.h (FUNCTION_ARG_CALLEE_COPIES): Define. 2417 2418Tue Jun 6 18:21:18 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2419 2420 * expr.c (expand_expr, case PLACEHOLDER_EXPR): Consider two types 2421 identical if their TYPE_MAIN_VARIANTs are the same. 2422 2423 * c-decl.c (start_decl): Set DECL_COMMON before calling 2424 decl_attributes. 2425 2426 * a29k.c (print_operands): Cast args to bcopy to char *. 2427 2428 * c-decl.c (duplicate_decls): Don't clear DECL_CONTEXT of 2429 new decl if it is a function. 2430 2431Tue Jun 6 17:57:44 1995 Eberhard Mattes (mattes@azu.informatik.uni-stuttgart.de) 2432 2433 * gcc.c (do_spec_1, case 'g'): Handle %O as suffix if MKTEMP_EACH_FILE. 2434 2435Tue Jun 6 17:53:05 1995 Michael Meissner <meissner@cygnus.com> 2436 2437 * rs6000.c (expand_block_move): Update source and destination pointers 2438 inside the loop moving the bytes, not outside. 2439 2440Tue Jun 6 14:58:37 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 2441 2442 * m68k.h (CONDITIONAL_REGISTER_USAGE): Don't mark pic reg as fixed. 2443 * m68k.c (finalize_pic): Emit USE insn at start and end of function. 2444 2445Tue Jun 6 13:46:57 1995 Jim Wilson <wilson@mole.gnu.ai.mit.edu> 2446 2447 * sh.c (print_operand): Check for annulled branches. 2448 (output_movedouble): Handle SUBREG addresses. 2449 (output_branch): Handle annulled branches. 2450 (sh_expand_prologue): Correct number of saved registers for 2451 varargs functions. 2452 * sh.h: Add some comments. 2453 * sh.md: Add some comments. Cleanup formatting. 2454 (type attribute): Add pstore and call. 2455 (return define_delay): Reorganize to make clearer. 2456 (call/sfunc define_delay): Define. 2457 (cbranch define_delay): Define to have annul-true delay slot. 2458 (subsi3): Use arith_reg_operand for operand 2. 2459 (shift patterns): Use const_int_operand instead of immediate_operand 2460 for shift counts. 2461 (push): Add pstore constraint case. 2462 (movsi_i): Move t/z constraint pair to the front of the list. 2463 (calli, call_valuei): Add "call" attribute. 2464 2465Mon Jun 5 19:23:13 1995 Jim Wilson <wilson@chestnut.cygnus.com> 2466 2467 * sched.c (attach_deaths): In last change, use find_reg_note instead 2468 of find_regno_note. 2469 2470Mon Jun 5 19:17:31 1995 Tom Quiggle (quiggle@lovelace.engr.sgi.com) 2471 2472 * mips/iris5.h (MACHINE_TYPE): Say "IRIX 5.x", not "5.0". 2473 (NO_DOLLAR_IN_LABEL): Undefine. 2474 * mips.h (sdb_begin_function_line): New declaration. 2475 (PUT_SDB_FUNCTION_END): New definition. 2476 2477Mon Jun 5 18:56:10 1995 Michael Meissner <meissner@cygnus.com> 2478 2479 * rs6000.c (expand_block_move): Don't do block moves where we clobber 2480 fixed numbers of regs, instead move just 1-8 bytes at a time. 2481 2482 * Makefile.in (STAGESTUFF): Copy files produced by -da and 2483 -save-temps to the stage subdirectories. 2484 2485Mon Jun 5 08:18:46 1995 Torbjorn Granlund <tege@bozo.matematik.su.se> 2486 2487 * combine.c (reg_dead_at_p): When scanning backwards, stop at BARRIER. 2488 2489 * m68k.c (print_operand): Handle 'R' for registers. 2490 * m68k.md (cmpdi): Rewrite to avoid bogus matching constraints. 2491 2492 * optabs.c (expand_binop): In last change, don't defererence TARGET 2493 if it is 0. 2494 2495 * pa.md (movsicc): Use MATCH_DUP for operand 4 and 5. 2496 2497Mon Jun 5 08:14:56 1995 Jeffrey A Law (law@cs.utah.edu) 2498 2499 * pa.c (hppa_encode_label): Allocate stuff on permanent_obstack 2500 rather than via malloc. 2501 2502 * c-common.c (decl_attributes): Fix typo in size passed to alloca. 2503 2504Mon Jun 5 08:10:55 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2505 2506 * alpha.md: Use "some_operand" for patterns valid only during 2507 reload and meant to handle adding more PLUS operators during 2508 register elimination. 2509 2510Mon Jun 5 07:31:53 1995 Stephen L Moshier (moshier@world.std.com) 2511 2512 * cse.c (simplify_unary_operation, case FLOAT, UNSIGNED_FLOAT): 2513 Truncate to requested mode. 2514 2515Sat Jun 3 22:08:51 1995 Jim Wilson <wilson@chestnut.cygnus.com> 2516 2517 * sched.c (attach_deaths): Don't add a REG_DEAD note if a REG_UNUSED 2518 note is already present. 2519 2520Sat Jun 3 18:36:57 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2521 2522 * pa.h (hppa_builtin_saveregs): Add declaration. 2523 2524Sat Jun 3 18:11:26 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2525 2526 * Makefile.in (scan-decls.o): Depends on cpplib.h. 2527 2528Fri Jun 2 19:23:47 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2529 2530 * optabs.c (expand_binop): Don't use non-REG TARGET in 2-word case. 2531 2532Thu Jun 1 19:30:30 1995 Tor Egge (tegge@flipper.pvv.unit.no) 2533 2534 * m88k.h (RETURN_POPS_ARGS): New argument. 2535 * m88k/dolphin.ld: Added start of comment. 2536 2537Thu Jun 1 19:12:28 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2538 2539 * configure (a29k-*-bsd*): Fix typo in last change. 2540 2541Thu Jun 1 18:51:53 1995 Jim Wilson <wilson@chestnut.cygnus.com> 2542 2543 * expmed.c (extract_fixed_bit_field): For REG case, compute total_bits 2544 from mode instead of assuming BITS_PER_WORD. 2545 2546Thu Jun 1 18:34:31 1995 Michael Meissner <meissner@cygnus.com> 2547 2548 * rs6000.h (FIXED_R13): Default to 0. 2549 ({FIXED,CALL_USED}_REGISTERS): Use FIXED_R13 for register 13. 2550 * sysv4.h (FIXED_R13): Define to be 1. 2551 2552Wed May 31 20:57:26 1995 Torbjorn Granlund <tege@matematik.su.se> 2553 2554 * m68k.md ([su]mulsi3_highpart): Pass correct number of arguments to 2555 const_uint32_operand. 2556 * m68k.c (const_uint32_operand): Reject negative numbers. 2557 2558 * expmed.c (expand_mult_highpart): Use wide_op1 for all multiplies. 2559 (expand_divmod): Undo Nov 12 change. Instead, add special case 2560 for division by MIN_INT in signed TRUNC_DIV_EXPR case. 2561 2562Wed May 31 20:44:21 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 2563 2564 * m68k.md (one_cmpldi2): New pattern. 2565 ({a,l}shrdi{3,_const}): Allow 63 as shift count. 2566 2567Wed May 31 14:56:31 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2568 2569 * varasm.c (assemble_start_function, assemble_variable): 2570 Make sure first_global_object_name is in permanent obstack. 2571 2572 * reload1.c (alter_reg): Clean up setting of RTX_UNCHANGING_P 2573 when making a MEM. 2574 2575 * reorg.c (struct resources): New field unch_memory. 2576 (CLEAR_RESOURCES, mark_target_live_regs, dbr_schedule): Clear it. 2577 (mark_{referenced,set}_resources, redundant_insn): Set it. 2578 (fill_simple_delay_slots): Likewise. 2579 (resource_conflicts_p): Test it. 2580 2581 * unroll.c (copy_loop_body): Fix typo in call to sets_cc0_p. 2582 2583 * integrate.c (output_inline_function): Don't call expand_function_end. 2584 2585 * calls.c (prepare_call_address): Only call use_reg on 2586 static_chain_rtx if it is a REG. 2587 2588 * configure (a29k-*-bsd*): Use t-a29k. 2589 * t-a29k: New file. 2590 * a29k/t-a29kbare (LIBGCC1_TEST): New null definition. 2591 * a29k/t-vx29k (LIBGCC1_TEST): Likewise. 2592 2593Wed May 31 14:17:42 1995 Jeffrey A Law (law@snake.cs.utah.edu) 2594 2595 * configure (hppa*-*-bsd*): Do not run fixincludes. 2596 (hppa*-*-osf*): Likewise. 2597 (hppa*-*-lites*): Likewise. 2598 2599 * pa.h (PRINT_OPERAND_ADDRESS): Use "RR'" rather than "R'" for 2600 symbolic addresses. 2601 * pa.md (symbolic HIGH patterns): Likewise. 2602 (symbolic LO_SUM pattern): Likewise. 2603 2604Wed May 31 14:11:53 1995 Michael Meissner <meissner@cygnus.com> 2605 2606 * rs6000.md (all movstri recognizers): Eliminate updating the pointers. 2607 * rs6000.c (expand_block_move): Don't pass argument of # bytes to 2608 increment pointers by to movstrsi expanders. 2609 2610 * rs6000.c (rs6000_override_options): Fix typo with -mstring handling. 2611 2612 * rs6000.h (TARGET_SWITCHES): Set MASK_STRING_SET explicitly 2613 if -mno-string, so that it can override the processor default. 2614 2615Wed May 31 07:31:53 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2616 2617 * c-common.c (truthvalue_conversion, BIT_AND_EXPR): Make sure that 2618 the result has boolean_type_node. 2619 2620Tue May 30 19:03:21 1995 J.T. Conklin <jtc@cygnus.com> 2621 2622 * stddef.h: Undefine _BSD_XXX_T_ if _GCC_XXX_T is defined on BSD 2623 Net/2 derived systems. 2624 2625Tue May 30 08:17:37 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 2626 2627 * m68k.md (decrement_and_branch_until_zero): Operand 0 constraint 2628 changed from "+g" to "+d*am". 2629 (similar anonymous HImode pattern): Likewise. 2630 2631 * m68k.md (tstdi): Use tst/subx #0 instead of neg/negx. 2632 Allow "a" and ">" for operand 0. 2633 2634Mon May 29 19:24:43 1995 Niklas Hallqvist (niklas@appli.se) 2635 2636 * m68k.md (addsi_lshrsi_31): Use match_dup, not constraint "1", 2637 for matching inputs. 2638 2639Mon May 29 12:39:58 1995 Allen Briggs <briggs@rrinc.com> 2640 2641 * i386/isc.h ({STARTFILE,LIB,CPP}_SPEC): Handle -Xp like -posix. 2642 * i386/x-isc3 (X_CFLAGS): Add -Xp. 2643 2644Mon May 29 12:28:41 1995 J.T. Conklin (jtc@cygnus.com) 2645 2646 * configure (sparc-*-netbsd): Add missing asterisk at end. 2647 2648Mon May 29 08:55:48 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2649 2650 * combine.c (recog_for_combine): New parm PADDED_SCRATCHES; set it. 2651 (try_combine): Accumulate number of scratches and update max_scratch. 2652 (simplify_set): Add extra parm to recog_for_combine. 2653 2654 * romp.md (call): Put USE for r0 in CALL_INSN; call call_internal 2655 to emit insn. 2656 (call_internal): New name for anonymous call. 2657 (call_value, call_value_internal): Likewise. 2658 2659 * winnt/xm-winnt.h: Protect most definitions with #ifndef. 2660 * alpha/xm-winnt.h: Include alpha/xm-alpha.h, then winnt/xm-winnt.h. 2661 (POSIX): Undefine. 2662 * xm-alpha.h: Don't include alloca.h for winnt. 2663 2664Sun May 28 18:34:01 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2665 2666 * configure: Make sed commands more uniform. 2667 2668 * Makefile.in: Properly use $(srcdir) for files that have it 2669 in their reference as a target of a rule. 2670 (libgcc1.a): Add missing RANLIB_TEST use. 2671 2672 * stmt.c (expand_computed_goto): Call do_pending_stack_adjust. 2673 2674Sun May 28 18:08:41 1995 Torbjorn Granlund <tege@mole.gnu.ai.mit.edu> 2675 2676 * m68k.md (divmodhi4, udivmodhi4): Use "dmsK" for operand 2. 2677 2678Fri May 26 17:01:22 1995 Paul Eggert <eggert@twinsun.com> 2679 2680 * fixincludes: Fix bogus recursive <stdlib.h> in NEWS-OS 4.0C. 2681 2682Fri May 26 08:02:14 1995 Michael Meissner (meissner@cygnus.com) 2683 2684 * c-typeck.c (initializer_constant_valid_p): For the CONSTRUCTOR 2685 case, if the type is a record, recurse, just like for unions. 2686 2687Thu May 25 07:56:14 1995 Paul Eggert <eggert@twinsun.com> 2688 2689 * fixincludes: Add `sel', `tahoe', `r3000', `r4000' to the 2690 list of pre-ANSI symbols that need to be surrounded with __ __. 2691 Allow white space between `#' and `if' when looking for lines to patch. 2692 2693 * objc/sarray.h (PRECOMPUTE_SELECTORS, struct soffset): 2694 Use #ifdef __sparc__, not sparc. 2695 2696 * m68k.md (addsi_lshrsi_31, ashldi_const, ashrdi_const, lshrdi_const): 2697 Replace `mov' with `move'. 2698 2699Thu May 25 07:35:37 1995 Allen Briggs <briggs@rrinc.com> 2700 2701 * libgcc2.c (L_eh, i386): Remove in-line comments in assembly 2702 code--the '#' character is not valid for the SYSV as. 2703 2704Thu May 25 07:28:54 1995 Pat Rankin (rankin@eql.caltech.edu) 2705 2706 * Makefile.in (BC_ALL): Restore it from May 22 change; vms uses it. 2707 (STAGESTUFF): Use it. 2708 2709Thu May 25 07:11:56 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2710 2711 * alpha.c (alpha_emit_set_const): Don't call expand_binop for 2712 other than add if SImode and can't create pseudos. 2713 2714Wed May 24 21:38:24 1995 Jim Wilson <wilson@cygnus.com> 2715 2716 * sched.c (reemit_notes): New function. 2717 (schedule_block): Call reemit_notes twice. Reorganize code for 2718 handling SCHED_GROUP_P insns, so that reemit_notes works. 2719 2720 * sh/sh.c (shiftcosts, genshifty_op): Add SH3 support. 2721 * sh/sh.md (ashlsi3, lshrsi3): Add SH3 support. 2722 (ashlsi3_d, ashrsi3_d, lshrsi3_d): New patterns for SH3. 2723 (ashrsi2_31): Remove r/!r constraint. 2724 2725Wed May 24 17:00:47 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2726 2727 * tree.c (type_list_equal): Call simple_cst_equal before checking 2728 types. 2729 2730Wed May 24 16:49:49 1995 Douglas Rupp (drupp@cs.washington.edu) 2731 2732 * Makefile.in (libgcc2.a): Handle case of separate srcdir. 2733 2734Wed May 24 16:22:01 1995 Paul Eggert <eggert@twinsun.com> 2735 2736 * configure: Define $(MAKE) if `make' doesn't. 2737 2738Wed May 24 15:50:51 1995 Doug Evans <dje@cygnus.com> 2739 2740 * dsp16xx.h (CROSS_LINK_SPEC): ENDFILE_SPEC moved to -nostartfiles. 2741 * i386/freebsd.h (LINK_SPEC): Don't pass "-e start" if nostartfiles 2742 rather than nostdlib. 2743 * i386/sun.h (LINK_SPEC): Likewise. 2744 * m68k/sun2o4.h (LINK_SPEC): Likewise. 2745 * m68k/sun3.h (LINK_SPEC): Likewise. 2746 * m68k/vxm68k.h (LINK_SPEC): Likewise. 2747 * mips/netbsd.h (LINK_SPEC): Likewise. 2748 * config/netbsd.h (LINK_SPEC): Likewise. 2749 * rs6000/mach.h (LINK_SPEC): Likewise. 2750 * sparc.h (LINK_SPEC): Likewise. 2751 * sparc/vxsparc.h (LINK_SPEC): Likewise. 2752 2753 * m88k/m88k.h (FUNCTION_ARG_BOUNDARY): Use GET_MODE_BITSIZE. 2754 2755Wed May 24 15:44:04 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2756 2757 * fold-const.c (fold): Make sure that a folded TRUTH_NOT_EXPR 2758 retains the same type. 2759 2760 * c-common.c (truthvalue_conversion): Also accept TRUTH_NOT_EXPR. 2761 2762Wed May 24 15:41:51 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2763 2764 * cplus-dem.c (strstr, strncmp, strlen): Remove declarations. 2765 2766 * tree.c (type_list_equal, simple_cst_list_equal, index_type_equal): 2767 Check for simple_cst_equal return value of -1. 2768 2769Wed May 24 10:05:24 1995 Michael Meissner <meissner@cygnus.com> 2770 2771 * libgcc1-test.c (start, _start): Provide declarations, so that 2772 the GNU linker doesn't give a warning message about defaulting the 2773 start address. 2774 2775 * rs6000/sysv4.h (STRIP_NAME_ENCODING): Redefine back to the 2776 original defination, rather than the defination used in rs6000.h. 2777 (ASM_OUTPUT_SOURCE_LINE): Use STRIP_NAME_ENCODING. 2778 * rs6000.h (STRIP_NAME_ENCODING): Skip leading '*'. 2779 2780 * rs6000.h (MASK_STRING_SET, TARGET_STRING_SET): Add target 2781 flags bit for whether -mstring was actually used. 2782 (TARGET_SWITCHES): Add MASK_STRING to all power targets. Set 2783 MASK_STRING_SET for -mstring and -mno-string. 2784 (TARGET_DEFAULT): Add MASK_STRING. 2785 2786 * rs6000.c (rs6000_override_options): Add MASK_STRING to 2787 all power targets. Make an explicit -mstring/-mno-string override 2788 the -mcpu=processor default. 2789 2790 * rs6000/eabile.h (CPP_SPEC): Copy from sysvle.h to provide the 2791 appropriate little endian defaults. 2792 2793 * rs6000/sysv4.h (ASM_OUTPUT_SOURCE_LINE): Use assemble_name to 2794 output the canonical name. 2795 2796Wed May 24 01:21:15 1995 Jason Merrill <jason@phydeaux.cygnus.com> 2797 2798 * rs6000.h (STRIP_NAME_ENCODING): Define. 2799 (RS6000_OUTPUT_BASENAME): Use it. 2800 2801Tue May 23 19:54:21 1995 Doug Evans <dje@cygnus.com> 2802 2803 * gcc.c (link_command_spec): Move ENDFILE_SPEC from -nostdlib 2804 to -nostartfiles. 2805 2806Tue May 23 17:01:50 1995 Jim Wilson <wilson@cygnus.com> 2807 2808 * alpha.md (negsi2-2): Change output pattern to #. 2809 2810 * mips.c (embedded_pic_offset): Output RTL to initialize 2811 embedded_pic_fnaddr_rtx. 2812 (mips_finalize_pic): Delete. 2813 * mips.h (mips_finalize_pic): Delete declaration. 2814 (FINALIZE_PIC): Delete. 2815 (INIT_EXPANDERS): Clear embedded_pic_fnaddr_rtx. 2816 * mips.md (get_fnaddr): Add = to output contraint. 2817 2818 * sh.c (shift_amounts): Correct entry for shifts by 29. 2819 * sh.md (sett): New pattern. 2820 (movsi_i): Change source constraint for move to T reg to be 'z'. 2821 2822 * mips/ecoff.h (STARTFILE_SPEC): Define to null string. 2823 * mips/elfl.h, mips/elfl64.h: Correct typo in comment. 2824 2825 * mips/elflorion.h, mips/elforion.h (MIPS_CPU_DEFAULT): Delete. 2826 * mips.c (override_options): Delete #ifdef MIPS_CPU_DEFAULT code. 2827 Add #ifdef MIPS_CPU_DEFAULT_STRING code before the first 2828 mips_cpu_string test. 2829 2830Tue May 23 07:22:36 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2831 2832 * romp.c (hash_rtx): Avoid warning on int-to-pointer conversion. 2833 (output_fpops): Cast args to bcopy to char *. 2834 2835 * cpplib.c (initialize_builtins): Add missing parm to timestamp call. 2836 2837 * Makefile.in (install-libobjc): Don't depend on libobjc.a. 2838 2839 * c-parse.in: Objc shift/reduce conflicts now 48. 2840 (parm): Use setspecs/restore here. 2841 (parmlist_or_identifiers): Not here. 2842 2843Mon May 22 19:30:30 1995 Doug Evans <dje@cygnus.com> 2844 2845 * h8300.md (movsf_h8300h): Add missing post-inc case to constraints. 2846 2847Mon May 22 14:38:36 1995 Michael Meissner <meissner@cygnus.com> 2848 2849 * rs6000.c (rs6000_override_options): Do SUBTARGET_OVERRIDE_OPTIONS 2850 here. 2851 * rs6000.h (OVERRIDE_OPTIONS): Not here. 2852 2853 * rs6000.c (expand_block_move): Handle moves without string 2854 instructions by generating a series of loads and stores. 2855 (output_prolog): Support -mno-toc on V.4 and eabi systems. 2856 2857 * rs6000/sysv4.h (TARGET_SWITCHES): Add -mtoc and -mno-toc. 2858 (SUBTARGET_OVERRIDE_OPTIONS): Add some warnings for incompatible 2859 switches. 2860 (TOC_SECTION_FUNCTION): Make -mno-toc like -mrelocatable in that 2861 we don't put the minimal toc pointer in the global toc section. 2862 (LINK_SPEC): Use -oformat to set link output format, not -m. 2863 2864 * rs6000/t-eabigas (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Build 2865 libgcc.a variants with -mno-toc support. 2866 * rs6000/t-ppcgas (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Ditto. 2867 2868Mon May 22 07:10:52 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2869 2870 * cplus-dem.c (mystrstr): Replacement for strstr. 2871 2872 * configure: Split up long sed command. 2873 * Makefile.in (SYMLINK): Deleted; unused. 2874 (oldobjext): Deleted; no longer used. 2875 (FLAGS_TO_PASS): Include objext and exeext. 2876 (STAGESTUFF, protoize.o, unprotoize.o): Use $(objext), not .o. 2877 (test_protoize_simple, compare{,3}, gnucompare{,3}): Likewise. 2878 (STAGESTUFF, specs, gcc-cross, collect2): Add missing $(exeext). 2879 (libgcc1.null, libgcc[12].a, stage[1-4]): Likewise. 2880 (xgcc, cc1, cc1obj, enquire): Use $@ instead of filename for -o value. 2881 (collect2, mips-tfile, mips-tdump, gen*): Likewise. 2882 (bi-arity, bi-opcode, bi-opname, cccp, cppmain): Likewise. 2883 (protoize, unprotoize, gen-protos, fix-header): Likewise. 2884 (crtbegin.o, crtend.o): Don't use -o; move output to proper 2885 filename (using objext) instead. 2886 (BI_ALL, BC_ALL, bytecode): Deleted; unused. 2887 (bi-*.o, cexp.o, stamp-{proto,fixinc}): Remove unneeded $(srcdir). 2888 (getopt{,1}.o, SYSCALLS.c.X): Likewise. 2889 (install-driver): New target. 2890 (install-normal): Depend on it. 2891 (install-common): Don't depend on xgcc. 2892 (maketest): Deleted; no longer used. 2893 (stage[1-4]): Use name collect-ld, not real-ld. 2894 (risky-stage[1-4]): Use stage[1-4] as dependencies; don't copy. 2895 * alpha/config-nt.bat, i386/config-nt.bat: Make {,h,t}config.h 2896 and tm.h by writing a single #include line. 2897 Update way specs.h and options.h are written. 2898 * alpha/config-nt.sed, i386/config-nt.sed: Set new variables 2899 into Makefile. 2900 Build winnt.obj. 2901 Edit CCCP definition. 2902 * alpha/x-winnt, i386/x-winnt (oldobjext): Deleted. 2903 Add rules for .c.obj, .adb.obj, and .ads.obj. 2904 (LIB2FUNCS_EXTRA, spawnv.o): New rules. 2905 * i386/x-winnt (objext): Now .obj, not .o. 2906 2907 * gcc.c (HAVE_OBJECT_SUFFIX): New macro. 2908 (process_command): Convert x.o to x.foo for OBJECT_SUFFIX of ".foo". 2909 (do_spec_1): Avoid shadow variable "i" and always use for loop var. 2910 2911 * c-decl.c (finish_decl_top_level): Removed; no longer used. 2912 * objc-act.c: Numerous formatting changes. 2913 (NULLT): Deleted; all uses changed to NULL_TREE. 2914 (get_{static,object}_reference, objc_add_static_instance): 2915 Use push_obstacks instead of saving obstacks manually. 2916 (build_{selector,class}_reference_decl): Likewise. 2917 (build_objc_string_decl, build_protocol_reference): Likewise. 2918 (comp_{method,proto}_with_proto): Likewise. 2919 (create_builtin_decl, synth_module_prologue): Set DECL_ARTIFICIAL 2920 for internal objects. 2921 (build_{selector,class}_reference_decl, add_objc_decls): Likewise. 2922 (generate_objc_symtab_decl, build_module_descriptor): Likewise. 2923 (build_protocol_reference): Likewise. 2924 (build_objc_string_decl, synch_forward_declarations): Likewise. 2925 Delete call to end_temporary_allocation. 2926 (generate_static_references, generate_strings): Likewise. 2927 (build_selector_translation_table, generate_category): Likewise. 2928 (generate_{ivars,protocol}_list, build_protocol_reference): Likewise. 2929 (build_objc_string_object): If next_runtime, put everything in 2930 permanent obstack. 2931 (objc_add_static_instance): Use build_decl instead of start_decl 2932 and finish_decl_top_level. 2933 (build_{class_reference,objc_string}_decl): Clear DECL_CONTEXT. 2934 (start_class): Exit with FATAL_EXIT_CODE, not 1. 2935 (add_objc_decls): Don't set DECL_IN_SYSTEM_HEADER. 2936 2937 * tree.c (valid_machine_attribute): Handle attribute on 2938 pointer-to-function types. 2939 2940Sun May 21 17:16:37 1995 J. T. Conklin <jtc@cygnus.com> 2941 2942 * mips/netbsd.h (HAVE_STRERROR): Remove. 2943 * mips/xm-netbsd.h: New file. 2944 * mips/t-mips-netbsd: Deleted. 2945 * configure (mips-dec-netbsd): Use xm-netbsd.h and t-libc-ok. 2946 2947Sun May 21 17:16:37 1995 Arne H. Juul (arnej@pvv.unit.no) 2948 2949 * mips/netbsd.h: Use __start as entry point. Ifdef some 2950 paths on CROSS_COMPILE. 2951 2952Sun May 21 08:39:26 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2953 2954 * c-parse.in (datadef, fndef, ivar_decl, mydecls): 2955 Restore declspec_stack since setspecs is used. 2956 (parmlist_or_identifiers): Use setspecs before parsing parms 2957 and restore after parsing parms. 2958 2959Sun May 21 01:04:52 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 2960 2961 * pa.c (hppa_encode_label): New variable "permanent" to 2962 where/how memory is allocated for the new label. All 2963 callers changed. 2964 2965Sat May 20 16:53:30 1995 Mike Meissner <meissner@cygnus.com> 2966 2967 * rs6000.md (insv, extz): Fail if the structure is QI or HI reg to 2968 avoid paradoxical subreg's being created in RTL phase, which uses 2969 SImode to load from memory if structure is later moved to stack. 2970 2971Sat May 20 06:44:59 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 2972 2973 * m68k.md (udivmodhi4): Output "divu" instead of "divs". 2974 2975Sat May 20 06:11:32 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 2976 2977 * reload.c (push_reload): Don't reload inside a SUBREG 2978 when SUBREG_WORD is nonzero. 2979 2980 * c-decl.c (shadow_tag_warned): Don't warn about useless keyword 2981 if in system header file. 2982 2983 * tree.c (simple_cst_equal): Don't look at language-specific 2984 nodes since we don't know what's in them. 2985 2986 * cpperror.c: #include config.h before any other .h file. 2987 * collect2.c: Likewise. 2988 2989 * i386/config-nt.bat: Add missing ^M on two lines. 2990 Add case for Fortran; fix typo in Ada case. 2991 * alpha/config-nt.bat: Add case for Fortran; fix typo in Ada case. 2992 2993 * m68k/t-next (LIBGCC1, CROSS_LIBGCC1): Make not, not "libgcc1.null". 2994 (OTHER_FIXINCLUDES_DIRS, LIMITS_H_TEST): Delete from here. 2995 * m68k/x-next (OTHER_FIXINCLUDES_DIR, LIMITS_H_TEST): Move to here. 2996 2997Fri May 19 19:30:20 1995 Stan Cox (gcc@dg-rtp.dg.com) 2998 2999 * crtstuff.c: Added reference to INIT_SECTION_PREAMBLE for systems that 3000 do something which must be undone prior to __do_global_ctors. 3001 3002Fri May 19 19:27:08 1995 Alan Modra <alan@SPRI.Levels.UniSA.Edu.Au> 3003 3004 * i386/linux-aout.h (CPP_SPEC): Add defines for -fPIC. 3005 * i386/linux-oldld.h (CPP_SPEC): Likewise. 3006 3007Fri May 19 17:46:28 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 3008 3009 * collect2.c (strstr): Deleted. 3010 * cplus-dem.c (strstr): Define ifndef POSIX. 3011 3012Fri May 19 11:16:51 1995 Per Bothner <bothner@kalessin.cygnus.com> 3013 3014 * cpplib.c (collect_expansion): Don't escape '@' inside string. 3015 3016Fri May 19 06:59:21 1995 Pat Rankin (rankin@eql.caltech.edu) 3017 3018 * vmsconfig.com (process_objc_lib, configure_makefile): New routines. 3019 (bc_all.list, ./vax.md, objc-objs.opt, objc-hdrs.list): New files 3020 created at config time. 3021 (bc_all.opt, ./md.): No longer created. 3022 * make-cc1.com: Handle revised filenames from vmsconfig.com; 3023 (DO_OBJCLIB): New variable, plus code to compile objc/*.{c,m}. 3024 3025Wed May 17 16:15:31 1995 Torbjorn Granlund <tege@cygnus.com> 3026 3027 * i960.c (i960_output_ldconst): New code for XFmode. 3028 Also, move SFmode code to immediately after DFmode code. 3029 (S_MODES, D_MODES): Handle XFmode. 3030 (XF_MODES): Was TF_MODES, handle XFmode instead of TFmode. 3031 (hard_regno_mode_ok): Replace TFmode with XFmode. 3032 (i960_output_long_double): New function. 3033 3034 * i960.h (DATA_ALIGNMENT): Define. 3035 (ROUND_TYPE_ALIGN): Align XFmode scalars at 128 bit boundaries. 3036 (ROUND_TYPE_SIZE): Round up the size of XFmode objects to 128 bits. 3037 (CONST_DOUBLE_OK_FOR_LETTER_P): Use CONST0_RTX and CONST1_RTX 3038 so that all FP modes are recognized. 3039 (ASM_OUTPUT_LONG_DOUBLE): Define. 3040 3041 * i960.md: Change all TFmode patterns to have XFmode. 3042 (movxf recognizer, frame version): Use movt, ldt, and stt. 3043 (movxf recognizer, non-frame version): Delete. 3044 (extenddfxf2): Delete * before f constraint. 3045 (extendsfxf2): Likewise. 3046 3047Wed May 17 17:53:35 1995 Jim Wilson <wilson@mole.gnu.ai.mit.edu> 3048 3049 * unroll.c (unroll_loop): Increment copy_start_luid if copy_start 3050 is loop_start. 3051 3052Wed May 17 17:44:57 1995 Lee Iverson <leei@Canada.AI.SRI.COM> 3053 3054 * fold-const.c (invert_truthvalue, case CLEANUP_POINT_EXPR): New case. 3055 3056Tue May 16 18:51:16 1995 Michael Meissner <meissner@cygnus.com> 3057 3058 * rs6000/rs6000.h (TARGET_SWITCHES): Add -mstring to enable string 3059 instructions, and -mno-string to disable them. 3060 (MOVE_MAX): Don't test TARGET_MULTIPLE anymore. 3061 (MAX_MOVE_MAX): Set to 8, not 16. 3062 (expand_block_move): Add declaration. 3063 3064 * rs6000/rs6000.c (expand_block_move): New function to expand 3065 block moves when -mstring is used. 3066 3067 * rs6000/rs6000.md (movti): Use TARGET_STRING, not TARGET_MULTIPLE. 3068 (load_multiple, store_multiple): Ditto. 3069 (string insns): Add 8, 6, 4, 2, and 1 register variants for using 3070 the native string instructions if -mstring. 3071 3072 * rs6000/sysv4.h (CPP_SPEC): If little endian, define 3073 _LITTLE_ENDIAN and set littleendian assertion. If big endian, 3074 define _BIG_ENDIAN and set bigendian assertion. 3075 * rs6000/sysv4le.h (CPP_SPEC): Copy from sysv4.h, and change 3076 default to little endian. 3077 3078 * rs6000/rs6000.c (override_options): Check for -mmultiple and 3079 -mstring on little endian systems here. 3080 * rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Don't do the check 3081 here. 3082 3083Tue May 16 18:36:41 1995 Douglas Rupp (drupp@cs.washington.edu) 3084 3085 * alpha.c: Changed WINNT to _WIN32. 3086 * alpha/config-nt.bat, i386/config-nt.bat: Added commands to 3087 generate specs.h and options.h. 3088 * i386/config-nt.sed: Changed link32 to link. 3089 * winnt/ld.c (main): Removed call to free. 3090 * configure.bat: Added line to echo usage on invalid input. 3091 * gcc.c (fix_argv): Removed call to free. 3092 * gcc.c, getpwd.c, protoize.c, sdbout.c: Changed WINNT to _WIN32. 3093 * toplev.c: Likewise. 3094 3095Tue May 16 18:04:47 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3096 3097 * toplev.c (pfatal_with_name, fatal_io_error, vfatal): 3098 Use FATAL_EXIT_CODE instead of magic number. 3099 * cccp.c, cpplib.c, cpplib.h: Use FATAL_EXIT_CODE instead 3100 of FAILURE_EXIT_CODE. 3101 * fix-header.c, gen-protos.c: Likewise. 3102 * cpperror.c, cppmain.c: Likewise. 3103 Include config.h #ifndef EMACS. 3104 * xm-alpha.h, xm-rs6000.h, xm-vms.h (FAILURE_EXIT_CODE): Remove. 3105 3106Tue May 16 17:46:57 1995 Adam Fedor <fedor@colorado.edu> 3107 3108 * objc/archive.c (__objc_write_class): Write class version. 3109 (__objc_write_selector, objc_{write,read}_selector): Handle null 3110 selector. 3111 3112 * objc/sarray.h (struct sarray): Make capacity size_t. 3113 * objc/sarray.c (sarray_realloc): Make array index variables size_t. 3114 3115Tue May 16 06:59:08 1995 Paul Eggert <eggert@twinsun.com> 3116 3117 * dsp16xx.c (print_operand_address): Fix misspellings in messages. 3118 * i370/mvs.h (FUNCTION_PROFILER): Likewise. 3119 * mips-tdump.c (type_to_string): Likewise. 3120 * print-tree.c (print_node): Likewise. 3121 3122 * protoize.c (edit_fn_definition): Fix mispelled local `have_flotsam'. 3123 3124 * objc/sendmsg.c (__objc_init_install_dtable): Fix misspelling 3125 in name of local label `already_initialized'. 3126 3127 * winnt/winnt.h (STDC_VALUE): Was misspelled. 3128 3129 * m68k/ccur-GAS.h (FUNCTION_BOUNDARY): Was misspelled. 3130 3131 * 1750a.h (DEFAULT_PCC_STRUCT_RETURN): Was misspelled. 3132 3133Mon May 15 23:41:25 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 3134 3135 * pa.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Make sure to encode section 3136 info for all libcalls. 3137 3138Mon May 15 20:58:00 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3139 3140 * collect2.c (strstr): Define ifndef POSIX. 3141 3142 * defaults.h (SUPPORTS_WEAK): Provide default. 3143 * aoutos.h, sparc/sunos4.h: Don't support weak symbols. 3144 * netbsd.h, svr4.h, i386/freebsd.h, i386/osfrose.h, 3145 m88k/m88k.h: Define ASM_WEAKEN_LABEL instead of WEAK_ASM_OP. 3146 * c-pragma.h: Check ASM_WEAKEN_LABEL instead of WEAK_ASM_OP. 3147 HANDLE_PRAGMA_WEAK is never defined in a tm.h file. 3148 * c-decl.c (duplicate_decls): Propagate DECL_WEAK. 3149 * tree.h (DECL_WEAK): New macro. 3150 (tree_decl): Add weak_flag. 3151 * varasm.c (assemble_start_function): Declare the symbol weak if 3152 appropriate. 3153 (assemble_variable): Ditto. 3154 (assemble_alias): Ditto. Mark the decl as written. 3155 (declare_weak): Check for weak declaration after definition. 3156 Set DECL_WEAK. 3157 (weak_finish): Use ASM_WEAKEN_LABEL. 3158 * libgcc2.c: The C++ free-store management functions are weak 3159 aliases on targets that always support them. 3160 3161Mon May 15 19:01:43 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3162 3163 * configure (out_object_file): New variable; put value in Makefile. 3164 * Makefile.in (out_object_file): Use in place of aux-output.o. 3165 3166 * fold-const.c (const_binop): Don't pass OVERFLOW to force_fit_type 3167 if type is unsigned. 3168 3169Mon May 15 18:48:26 1995 Paul Eggert <eggert@twinsun.com> 3170 3171 * install.sh (transformbasename): Fix misspelling. 3172 3173 * tahoe.h (CHECK_FLOAT_VALUE): Fix misspelling of OVERFLOW parameter. 3174 3175 * i386.h (VALID_MACHINE_{DECL,TYPE_ATTRIBUTE): Fix typo. 3176 3177 * fx80.h (CHECK_FLOAT_VALUE): Fix misspelled use of parameter. 3178 3179 * a29k.c (spec_reg_operand): Fix misspelling of `default:'. 3180 3181Mon May 15 18:36:41 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 3182 3183 * m68k.md (b{eq,ne,ge,lt}0_di): Fixed for non-MOTOROLA syntax. 3184 * m68k/xm-mot3300.h (alloca): Extern decl added for non-GNU compiler. 3185 3186Mon May 15 13:14:29 1995 Per Bothner <bothner@kalessin.cygnus.com> 3187 3188 * cppexp.c (cpp_reader): Test for '#' (start of assertion) *after* 3189 skipping hspace, not before. 3190 3191Mon May 15 08:13:54 1995 Pat Rankin (rankin@eql.caltech.edu) 3192 3193 * vmsconfig.com: Construct options.h and specs.h to #include 3194 all "*/lang-{options|specs}.h" files found. 3195 3196Sun May 14 21:32:49 1995 Doug Evans <dje@cygnus.com> 3197 3198 * alpha/alpha.md (movsicc, case NE): Don't generate unrecognizable 3199 insn. 3200 (movdicc, case NE): Likewise. 3201 3202Sun May 14 15:44:54 1995 Jim Wilson <wilson@mole.gnu.ai.mit.edu> 3203 3204 * unroll.c (unroll_loop): Make local_regno have size 3205 max_reg_before_loop. Don't do local register optimization if 3206 copy_end has no INSN_LUID. 3207 3208Sun May 14 10:38:23 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3209 3210 * objc-act.c (start_method_def): Mark _self as possibly unused. 3211 3212 * configure: Create specs.h and options.h from */lang-specs.h 3213 and */lang-options.h. 3214 Set lang_specs_files and lang_options_file variables in Makefile. 3215 * Makefile.in (lang_{specs,options}_files): New variables. 3216 (gcc.o): Depends on $(lang_specs_files). 3217 (toplev.o): Depends on $(lang_options_file); merge two dep lists. 3218 (distclean): Remove spes.h and options. 3219 * gcc.c (default_compilers): Remove entries for Ada, C++, Chill, 3220 and Fortran; #include specs.h instead. 3221 * toplev.c (lang_options): Remove entries for Ada, C++, and Fortran; 3222 include options.h instead. 3223 3224Sat May 13 23:11:21 1995 DJ Delorie <dj@delorie.com> 3225 3226 * configure (i[345]86-go32-msdos, i[345]86-*-go32): New targets. 3227 3228Sat May 13 10:58:38 1995 Jim Wilson <wilson@cygnus.com> 3229 3230 * loop.c (record_giv): When computing replaceable, use 3231 back_branch_in_range_p instead of looking for branches to named 3232 labels. 3233 * loop.h (back_branch_in_range_p): Declare. 3234 * unroll.c (back_branch_in_range_p): No longer static. 3235 3236Sat May 13 06:47:11 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3237 3238 * combine.c (simplify_shift_count, case LSHIFTRT): Don't merge 3239 shifts of different modes if first is any right shift. 3240 3241Sat May 13 05:39:09 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 3242 3243 * configure (arm-semi-aout): New configuration. 3244 * config.sub: Add support for semi-hosted ARM. 3245 * arm/t-semi, arm/semi.h: New files. 3246 3247Fri May 12 21:51:22 1995 Doug Evans <dje@cygnus.com> 3248 3249 * flow.c (find_basic_blocks): Only perform n_basic_blocks sanity 3250 check on first pass, and on second pass ensure it has the correct 3251 value. 3252 3253Fri May 12 19:23:11 1995 Jim Wilson <wilson@cygnus.com> 3254 3255 * c-typeck.c (build_binary_op): Warn when ~unsigned is compared 3256 against unsigned, and type promotions result in an unexpected 3257 answer. 3258 3259Fri May 12 19:10:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 3260 3261 * configure (*-*-gnu*): Always use ELF; set tm_file=${cpu_type}/gnu.h. 3262 * config/i386/gnu.h: Contents replaced with old i386/gnuelf.h. 3263 * config/i386/gnuelf.h: File removed. 3264 3265Fri May 12 17:29:57 1995 Ken Raeburn (raeburn@cygnus.com) 3266 3267 * m68k/lb1sf68.asm (__IMMEDIATE_PREFIX__): Default to #. 3268 (IMM): New macro. 3269 (all code): Use IMM macro instead of hardcoding # for immediate 3270 operands. 3271 3272Fri May 12 16:52:10 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 3273 3274 * m68k.c (output_scc_di): New function. 3275 (extend_operator) : Allow DImode target. 3276 * m68k.h (HARD_REGNO_MODE_OK): Don't allow d7/a0 as DImode reg pair. 3277 * m68k.md (tstdi, cmpdi, addsi_lshrsi_31, ashldi_extsi): New patterns. 3278 (extendqidi2, extendhidi2, extendsidi2): Allow "general_operand" 3279 instead of "register_operand" 0. 3280 (adddid_sexthishl32, subdid_sexthishl32, subdi_dishl32): Likewise. 3281 (adddi_dilshr32): Operand 0 constraint changed from "ro" to "do"; 3282 Code generation fixed. 3283 (adddi_mem, subdi_mem): Fixed for "<" and ">" operand 0. 3284 (adddi3, subdi3): Operand 2 constraint changed from "ao" to "*ao" 3285 (ashldi_sexthi, ashrdi_const32): Allow only "register_operand" 3286 instead of "general_operand" 0. 3287 (ash[lr]di_const, ash[lr]di3): Allow also 8 and 16 as shift count. 3288 (subreg1ashrdi_const32): Pattern deleted. 3289 (subreghi1ashrdi_const32, subregsi1ashrdi_const32): New pattern. 3290 (lshrsi_31): New implementation. 3291 (scc0_di, scc_di, beq0_di, bne0_di, bge0_di, blt0_di): New patterns. 3292 3293Fri May 12 16:50:49 1995 Jeffrey A. Law <law@mole.gnu.ai.mit.edu> 3294 3295 * pa.md (bb patterns): Fix bugs in length computation exposed by 3296 recent branch shortening and genattrtab changes. 3297 3298Fri May 12 16:22:27 1995 Ken Raeburn <raeburn@cygnus.com> 3299 3300 * cccp.c (enum node_type): Add T_IMMEDIATE_PREFIX_TYPE. 3301 (special_symbol): Handle it; emit value of IMMEDIATE_PREFIX. 3302 (IMMEDIATE_PREFIX): Default to empty string. 3303 (initialize_builtins): Install __IMMEDIATE_PREFIX__ builtin, 3304 parallel to __REGISTER_PREFIX__. 3305 3306Fri May 12 14:40:03 1995 Pat Rankin (rankin@eql.caltech.edu) 3307 3308 * cccp.c: #if VMS, don't define `stat' macro to be VMS_stat. 3309 Compare enums explicitly to 0 to work around VAX C bug. 3310 (do_include): Cast alloca's value. 3311 3312 * make-cc1.com (bc_loop): Process comma-separated list rather 3313 than space-separated one; restore .h suffix stripped by vmsconfig; 3314 (loop1): More robust handling of directory prefix on file names. 3315 * vmsconfig.com (TPU makefile.in): Reorganize and reformat code. 3316 Make generated .opt files have more consistent format (all comma 3317 separated, excess whitespace eliminated); 3318 (additional_compiler): New routine. 3319 (process_makefile): Use it to handle cc1plus via cp/Make-lang.in. 3320 3321Fri May 12 13:35:07 1995 Doug Evans <dje@cygnus.com> 3322 3323 * arm.h: Replace ARM_REG_PREFIX with REGISTER_PREFIX. 3324 Replace ARM_COMMENT_CHAR with ASM_COMMENT_START. 3325 (REGISTER_PREFIX): Define. 3326 (USER_LABEL_PREFIX, LOCAL_LABEL_PREFIX): Define. 3327 (SECONDARY_OUTPUT_RELOAD_CLASS): Handle DFmodes only if 3328 TARGET_HARD_FLOAT. 3329 (PREDICATE_CODES): Add soft_df_operand. 3330 * arm.c: Replace ARM_REG_PREFIX with REGISTER_PREFIX. 3331 Replace ARM_COMMENT_CHAR with ASM_COMMENT_START. 3332 (arm_asm_output_label): Use USER_LABEL_PREFIX. 3333 (soft_df_operand): New function. 3334 * arm.md (movsicc): New pattern. 3335 (movsfcc, movdfcc, *movsicc_insn, *movsfcc_hard_insn): Likewise. 3336 (*movsfcc_soft_insn, *movdfcc_insn): Likewise. 3337 (*movdf_soft_insn): Rewrite. 3338 (movsi matcher): Fix typo in type attribute. 3339 3340Fri May 12 10:25:40 1995 Michael Meissner (meissner@cygnus.com) 3341 3342 * i386.h (TARGET_RTD): Use MASK_RTD, not MASK_REGPARM. 3343 (TARGET_SWITCHES): Add -m{,no-}align-double switch. 3344 (TARGET_OPTIONS): Add -mregparm= switch to set number of registers 3345 to use for passing arguments. Add -malign-loops= switch to set 3346 the alignment for loops. Add -malign-jumps= switch to set the 3347 alignment for code that is jumped to. Add -malign-functions= 3348 switch to set the initial alignment of functions. 3349 (TARGET_REGPARM): Delete, in favor of -mregparm= 3350 (TARGET_SWITCHES): Delete -mregparm, add -mdebug-arg switches. 3351 (RETURN_POPS_ARGS): Call i386_return_pops_args to do the real work. 3352 (VALID_MACHINE_DECL_ATTRIBUTE): Define as function call. 3353 (VALID_MACHINE_TYPE_ATTRIBUTE): Define as function call. 3354 (COMP_TYPE_ATTRIBUTES): Define as function call. 3355 (REGPARM_MAX): Maximum number of regs to use for passing arguments. 3356 (CUMULATIVE_ARGS): Make this a structure, not an int. 3357 (INIT_CUMULATIVE_ARGS, FUNCTION_ARG{,_ADVANCE}): Call function. 3358 (FUNCTION_ARG_PARTIAL_NREGS): Likewise. 3359 (MAX_CODE_ALIGN): Maximum value to align loops/jumps to. 3360 (BIGGEST_ALIGNMENT): Return 64 if -malign-double, 32 otherwise. 3361 (ASM_OUTPUT_ALIGN_CODE): Use value of -malign-jumps= switch. 3362 (ASM_OUTPUT_LOOP_ALIGN): Use value of -malign-loops= switch. 3363 (toplevel): Declare all new functions and external variables added 3364 in i386.c. 3365 3366 * i386.c (i386_regparm_string, i386_regparm): New variables 3367 for -mregparm= switch to set the number of registers to use for 3368 passing arguments. 3369 (i386_align_loops_string, i386_align_loops): New variables for 3370 -malign-loops= switch to set alignment to use for loops. 3371 (i386_align_jumps_string, i386_align_jumps): New variables for 3372 -malign-jumps= switch to set alignment to use for labels that are 3373 jumped to. 3374 (override_options): Support new switches. 3375 (i386_valid_decl_attribute_p): New function to validate decl 3376 specific attributes. Presently returns 0. 3377 (i386_valid_type_attribute_p): New function to validate type 3378 specific attributes. Recognize "stdcall", which says function 3379 with fixed numbers of arguments is responsible for popping stack, 3380 "cdecl", which says to use the normal C calling sequence, even if 3381 -mrtd is used, and "regparm", which specifies the number of 3382 registers to use for passing arguments. 3383 (i386_comp_type_attributes): New function, to validate whether 3384 attributes are compatible. 3385 (i386_return_pops_args): New function, to return whether or not 3386 the function pops its argument list or not, taking into account 3387 -mrtd, and the stdcall/cdecl attributes. 3388 (init_cumulative_args): Rewrite as a function, taking variable 3389 argument functions, and regparm support into account. 3390 (function_arg{,_advance,_partial_nreg}): Likewise. 3391 (print_operand): Support %J, to print appropriate jump insn. 3392 3393 * i386.md (decrement_and_branch_until_zero): Define pattern, 3394 so that loops that count down to zero, don't have an unneeded 3395 compare after the decrement. Add a general insn recognizer for 3396 add to a value and compare against zero. 3397 3398 * i386/go32.h, i386/winnt.h (VALID_MACHINE_DECL_ATTRIBUTE): 3399 Delete, code folded into the mainline. 3400 (RETURN_POPS_ARGS): Likewise. 3401 3402 * i386/winnt.h (ENCODE_SECTION_INFO): The stdcall attribute is now 3403 stored on the type field, rather than the decl. 3404 3405 * i386/gas.h (ASM_OUTPUT_ALIGN_CODE, ASM_OUTPUT_LOOP_ALIGN): Use 3406 i386_align_{loops,jumps} variables to do alignment. 3407 * i386/osfrose.h, i386/svr3dbx.h: Likewise. 3408 3409Fri May 12 12:48:19 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3410 3411 * stor-layout.c (layout_type, case ARRAY_TYPE): Compute length using 3412 MAX of length and zero if sizetype signed and neither bound constant. 3413 3414 * i386/gnuelf.h, i386/linux-oldld.h, i386/lynx-ng.h, i386/v3gas.h: 3415 Use <...> in #include instead of "...". 3416 * m68k/lynx-ng.h, sparc/lynx-ng.h: Likewise. 3417 3418 * c-parse.in (myparm): Handle attributes. 3419 * objc-act.c (unused_list): New variable. 3420 (build_tmp_function_decl): Call push_parm_decl with new format. 3421 (start_class): Initialize unused_list. 3422 (start_method_def): Call push_parm_decl with new format and 3423 mark _cmp as possibly unused. 3424 3425 * combine.c (simplify_shift_const): Don't change SHIFT_MODE 3426 for LSHIFTRT either. 3427 3428 * unroll.c (unroll_loop): Don't move reg if used in copy_end and 3429 that is a JUMP_INSN. 3430 3431Fri May 12 12:31:37 1995 Doug Evans <dje@cygnus.com> 3432 3433 * arm/lib1funcs.asm: New file. 3434 3435Fri May 12 11:52:03 1995 Kung Hsu <kung@cygnus.com> 3436 3437 * configure (a29k-*-vxworks*): New target. 3438 * config.sub (vxworks29k): New alias. 3439 * a29k/t-vx29k: New file. 3440 * a29k/vx29k.h: New file. 3441 3442Fri May 12 11:17:28 1995 Jim Wilson <wilson@mole.gnu.ai.mit.edu> 3443 3444 * loop.c (check_dbra_loop): When reversing loop when 3445 no_use_except_counting is false, there must be only one biv. 3446 3447Fri May 12 07:10:00 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3448 3449 * unroll.c (unroll_loop): Only use local_regno for pseudos. 3450 3451 * genattrtab.c (write_test_expr, case MATCH_DUP): Use operands[N] 3452 instead of JUMP_LABEL (which may not be set). 3453 (walk_attr_value, case MATCH_DUP): Set must_extract. 3454 3455 * c-parse.in: Adjust number of shift/reduce conflicts. 3456 (parm): Support attributes. 3457 * c-decl.c (push_parm_decl): Pass any attributes to decl_attributes. 3458 3459Fri May 12 00:36:26 1995 Per Bothner <bothner@kalessin.cygnus.com> 3460 3461 * cpplib.c (skip_quoted_string): Removed - no longer needed. 3462 (skip_if_group): Use cpp_get_token instead of skip_quoted_string. 3463 3464 * cpplib.h (struct cpp_reader): Remove start_line field. 3465 Add multiline_string_line field. 3466 3467 * cpplib.c (cpp_error_with_line, cpp_warning_with_line, 3468 cpp_pedwarn_with_line): Take extra column number parameter. 3469 (macroexpand, cpp_get_token): Fix reporting of unterminated strings. 3470 (line_for_error): Removed - no longer needed. 3471 3472Fri May 12 02:21:34 1995 Jim Wilson <wilson@cygnus.com> 3473 3474 * mips/svr4-t.h (MD_STARTFILE_PREFIX, MD_EXEC_PREFIX, 3475 STARTFILE_SPEC, LINK_SPEC): Define. 3476 * configure (mips-tandem-sysv4): Use t-mips not t-svr4. 3477 3478Thu May 11 19:18:54 1995 Per Bothner <bothner@kalessin.cygnus.com> 3479 3480 * cpplib.c (line_for_error): Make it work; add extra parameter. 3481 (skip_quoted_string, cpp_get_token): Update calls to line_for_error. 3482 (macroexpand): Remember initial line so we can report it if the 3483 call is unterminated. Also, simplify error logic slightly. 3484 (do_include): Cast alloca return value, to avoid pcc warning. 3485 3486 * cppexp.c (parse_number): Cleanup some Cygnus crud for MPW. 3487 3488Thu May 11 21:35:23 1995 Torbjorn Granlund <tege@cygnus.com> 3489 3490 From Moshier: 3491 * i960.c (i960_output_ldconst): Let split_double handle DImode. 3492 (i960_print_operand): Use REAL_VALUE_TO_DECIMAL for decimal strings. 3493 (i960_output_double, i960_output_float): Likewise; also change arg 3494 VALUE from `double' to `REAL_VALUE_TYPE'. 3495 3496Thu May 11 21:09:25 1995 Per Bothner (bothner@wombat.gnu.ai.mit.edu) 3497 3498 * cpperror.c (cpp_print_containing_files): Remove some 3499 Cygnus-local stuff. 3500 3501Thu May 11 21:06:47 1995 Doug Evans <dje@canuck.cygnus.com> 3502 3503 * gcc.c (link_command_spec): Make -nostdlib no longer imply 3504 -nostartfiles. 3505 3506Thu May 11 18:48:57 1995 Paul Eggert <eggert@twinsun.com> 3507 3508 * c-common.c (convert_and_check): Don't diagnose overflow in constant 3509 expression merely because conversion overflowed. 3510 3511Thu May 11 18:43:59 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3512 3513 * c-decl.c (grokdeclarator): Use PARM_FLAG to see if should 3514 make PARM_DECL. 3515 * c-parse.in (nested_function, notype_nested_function): 3516 Allow old-style arg definitions (use xdecls). 3517 3518 * c-decl.c (finish_struct): Properly update DECL_PACKED. 3519 3520Thu May 11 15:24:15 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3521 3522 * fold-const.c (fold): Also fold CLEANUP_POINT_EXPRs into 3523 TRUTH_*_EXPRs and into the first operand. 3524 (operand_equal_for_comparison_p): Also make sure the second operand 3525 is integral. 3526 3527Thu May 11 14:22:03 1995 Ted Lemon <mellon@toccata.fugue.com> 3528 3529 * config/mips/netbsd.h: New file. 3530 * config/mips/t-mips-netbsd: New file. 3531 * config/mips/x-netbsd: New file. 3532 3533 * configure (mips-dec-netbsd*): Add entry. 3534 3535 * mips.h (LOCAL_LABEL_PREFIX, USER_LABEL_PREFIX): Define. 3536 (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END, ASM_OUTPUT_LABEL_REF, 3537 ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL, 3538 ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Use them. 3539 3540 * mips.c (mips_output_lineno): Use LOCAL_LABEL_PREFIX. 3541 3542Thu May 11 14:22:03 1995 Stan Cox (gcc@dg-rtp.dg.com) 3543 3544 * dwarfout.c (output_decl): Don't output DIE for struct or union type 3545 with no name or with ERROR_MARK for the fields. 3546 3547Thu May 11 06:36:34 1995 Michael Meissner (meissner@cygnus.com) 3548 3549 * flow.c (mark_used_regs): If a SUBREG does not have a REG in the 3550 SUBREG_REG position, recursively call mark_used_regs, instead of 3551 segfaulting. 3552 3553Thu May 11 06:44:34 1995 Pat Rankin (rankin@eql.caltech.edu) 3554 3555 * expr.c (do_jump, case EQ_EXPR, NE_EXPR): Fix typo for complex. 3556 3557Wed May 10 12:34:46 1995 Michael Meissner <meissner@cygnus.com> 3558 3559 * configure: Add support for the little endian variant of the 3560 PowerPC System V.4 and Eabi targets. If the GNU assembler was not 3561 specified, don't build libgcc.a variants on the PowerPC systems 3562 that use -mrelocatable, -mlittle, and -mbig. 3563 3564 * genmultilib: For MULTILIB_MATCHES arguments, map question marks 3565 into equal signs after spliting the left and right side of 3566 equivalent options, to all support for options like: -mcpu=403. 3567 3568 * rs6000/rs6000.md (rs6000_immed_double_const): New function that 3569 is like immed_double_const, except that it reverses the two words 3570 in the constant if the target is little endian. 3571 3572 * rs6000/rs6000.md (floatsidf2): Use rs6000_immed_double_const, 3573 not immed_double_const. 3574 (floatunssidf2): Ditto. 3575 3576 * rs6000/rs6000.h: Add declarations for all functions in rs6000.c. 3577 3578 * rs6000/sysv4.h (TARGET_SWITCHES): Add -mlittle, -mlittle-endian, 3579 -mbig, and -mbig-endian for bi-endian support. 3580 (ASM_SPEC): Pass -mlittle/-mbig to the assembler if it was passed 3581 to us. 3582 (LINK_SPEC): If explicit little or big endian support was 3583 requested, tell the GNU linker to use the appropriate target 3584 format. 3585 3586 * rs6000/t-eabi (MULTILIB_*): Build libgcc.a variants for software 3587 floating point. Remove mrelocatable libgcc.a variant. 3588 3589 * rs6000/t-eabigas: New file, cloned from t-eabi. Build 3590 mrelocatable libgcc.a variant in addition to the other variants. 3591 3592 * rs6000/t-ppc: New file, for PowerPC System V.4 support without 3593 the GNU assembler. 3594 3595 * rs6000/t-ppcgas: New file, for PowerPC System V.4 support with 3596 the GNU assembler. 3597 3598 * rs6000/eabile.h: New file, little endian eabi config file. 3599 * rs6000/sysv4le.h: New file, little endian V.4 config file. 3600 3601Wed May 10 14:22:28 1995 Doug Evans <dje@cygnus.com> 3602 3603 * libgcc1-test.c (main_without__main): Renamed from `main'. 3604 * Makefile.in (libgcc1-test): Tell the user to ignore warnings. 3605 3606 * configure: Support --enable-foo, --disable-foo. 3607 3608Wed May 10 10:34:00 1995 Lee Iverson <leei@Canada.AI.SRI.COM> 3609 3610 * unroll.c: Add declarations of static functions. 3611 (unroll_loop): Renumber regs local to loop for each unrolled iteration. 3612 3613Wed May 10 08:27:03 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3614 3615 * alpha.c (alpha_set_emit_const): Cleanups to work properly 3616 when run on 32-bit host. 3617 3618 * configure: Instead of symlinking tm.h and {h,t,}config.h, 3619 make them files that #include the proper file; pass to Makefile. 3620 Pass out_file and md_file to Makefile instead of making symlinks. 3621 * Makefile.in (out_file, md_file, tm_file, {build,host}_xm_file): 3622 New symbols, to be overridden by configure. 3623 (insn-*): Use $(md_file), not md. 3624 (aux-output.o): Use $(out_file), not aux-output.c. 3625 ($(MD_FILE)): Rework to use new conventions. 3626 (gen*.o, bi-*.o): Depend on $(build_xm_file), not hconfig.h. 3627 (scan.o, fix-header.o, scan-decls.o): Likewise. 3628 (distclean): Adjust files removed for new convention. 3629 3630Tue May 9 19:26:42 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3631 3632 * rs6000/rs6000.h (LIBGCC_SPEC): Do link with libgcc when -shared. 3633 3634 * Makefile.in (STAGESTUFF): Add underscore.c. 3635 (underscore.c): Rename temporary files to begin with 'tmp-' so that 3636 they will be removed by 'make mostlyclean'. 3637 3638Tue May 9 19:19:55 1995 Mike Stump <mrs@cygnus.com> 3639 3640 * toplev.c (lang_options): Add new flag -ffor-scope. 3641 3642Tue May 9 19:11:47 1995 Lee Iverson (leei@ai.sri.com) 3643 3644 * objc/init.c (objc_init_statics): Fix missing part of last change. 3645 3646Tue May 9 18:25:34 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 3647 3648 * i386/gnu.h, i386/linux.h, i386/linux-aout.h, i386/lynx.h: 3649 Use <...> in #include instead of "..." to avoid recursion. 3650 * i386/netbsd.h, i386/xm-gnu.h, i386/xm-linux.h: Likewise. 3651 * i386/xm-lynx.h, i386/xm-freebsd.h, i386/xm-netbsd.h: Likewise. 3652 * m68k/lynx.h, m68k/netbsd.h, m68k/xm-lynx.h: Likewise. 3653 * m68k/xm-netbsd.h, mips/gnu.h, ns32k/netbsd.h: Likewise. 3654 * ns32k/xm-netbsd.h, rs6000/lynx.h, rs6000/xm-lynx.h: Likewise. 3655 * sparc/lynx.h, sparc/netbsd.h, sparc/xm-lynx.h: Likewise. 3656 * sparc/xm-netbsd.h, vax/netbsd.h, vax/xm-netbsd.h: Likewise. 3657 3658Tue May 9 15:52:05 1995 Michael Meissner <meissner@cygnus.com> 3659 3660 * config.sub: Recognize powerpcle as the little endian varient of 3661 the PowerPC. Recgonize ppc as a PowerPC variant, and ppcle as a 3662 powerpcle variant. Convert pentium into i586, not i486. Add p5 3663 alias for i586. Map new x86 variants p6, k5, nexgen into i586 3664 temporarily. 3665 3666Tue May 9 15:43:27 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3667 3668 * rs6000/rs6000.h (LINK_SPEC, LIB_SPEC): Don't mess with libg 3669 if -shared. 3670 * rs6000/aix41ppc.h (LINK_SPEC): Ditto. 3671 3672 * rs6000/powerpc.h: Don't emit .extern directives. 3673 3674Tue May 9 14:08:09 1995 Jim Wilson <wilson@cygnus.com> 3675 3676 * sh/lib1funcs.asm (__ashrsi3, __ashlsi3, __lshrsi3): Use .byte 3677 instead of .word offsets in switch table. 3678 3679Tue May 9 11:44:47 1995 Jeremy Bettis <jbettis@cse.unl.edu> 3680 3681 * objc/sendmsg.c (__objc_send_initialize): Call superclass if object 3682 does not implement +initialize. 3683 3684Tue May 9 02:44:16 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3685 3686 * rs6000/xm-rs6000.h (COLLECT_EXPORT_LIST): Define if not 3687 cross-compiling. 3688 * rs6000/xm-mach.h: #undef COLLECT_EXPORT_LIST. 3689 * rs6000/rs6000.h (COLLECT_SCAN_OBJECTS): Lose. 3690 3691 * collect2.c (collect_exit): Unlink export_file. 3692 (prefix_from_string): Broken out from prefix_from_env. 3693 (prefix_from_env): Call it. 3694 (main): Under AIX, recognize -bE: and -bexport:, and don't 3695 automatically export everything if we see one. Otherwise, scan the 3696 objects individually and add all their symbols to an export file to be 3697 passed to the linker. 3698 (write_export_file): New function. 3699 (scan_prog_file): Ignore symbols starting with '.' 3700 3701 * c-common.c (declare_hidden_char_array): Mark decl artificial. 3702 3703Mon May 8 18:13:57 1995 Adam Fedor <fedor@colorado.edu> 3704 3705 * objc/init.c (_objc_load_callback): Add declaration. 3706 (__objc_exec_class): Call _objc_load_callback after every Class 3707 or Category is added. 3708 * objc/objc-api.h (_objc_load_callback): Add declaration. 3709 3710Mon May 8 17:56:28 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3711 3712 * expr.c (expand_expr, case INDIRECT_REF): Set RTX_UNCHANGING_P 3713 if both TREE_READONLY and TREE_STATIC set. 3714 3715 * c-typeck.c (convert_for_assignment): Don't give errors about 3716 adding const or volatile unless both sides point to functions. 3717 3718Mon May 8 11:48:23 1995 Michael Meissner <meissner@cygnus.com> 3719 3720 * configure: If ../ld/Makefile, symlink ../ld/ld.new to collect-ld, 3721 not real-ld. Don't test for $use_collect2 any more. 3722 3723Sun May 7 17:52:23 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3724 3725 * calls.c (expand_call): Improve -Winline warnings. 3726 3727Sun May 7 17:28:27 1995 DJ Delorie (dj@delorie.com) 3728 3729 * configure.bat: Use "go32" instead of "msdos" for future expansion. 3730 3731 * i386/go32.h: Add support for win32's stdcall functions. 3732 3733 * configure.bat: Add ^M to end of each line. 3734 * i386/config-nt.bat, alpha/config-nt.bat: Likewise. 3735 3736Sun May 7 02:12:26 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3737 3738 * tree.h (DECL_ARTIFICIAL): New macro. 3739 3740 * function.c (expand_function_end): Don't warn about unused 3741 anonymous or artificial parms. 3742 3743Fri May 5 18:41:22 1995 Jim Meyering (meyering@comco.com) 3744 3745 * configure: Fix typo in name of "maintainer-clean". 3746 3747Fri May 5 14:58:01 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 3748 3749 * pa.c (emit_move_sequence): Force problematical constants 3750 into memory during the reload pass when generating PIC. 3751 3752Fri May 5 13:30:33 1995 Doug Evans <dje@cygnus.com> 3753 3754 * objc/NXConstStr.m: NXConstantString.h renamed to NXConststr.h. 3755 3756Fri May 5 07:10:15 1995 Stephen L Moshier (moshier@world.std.com) 3757 3758 * real.c (emdnorm, toe64, etoe64): Significand of Intel long double 3759 denormals is shifted down one bit. 3760 3761Fri May 5 07:04:12 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3762 3763 * c-typeck.c (process_init_element): Don't clear_momentary if 3764 constructor_stack is not empty. 3765 3766 * objc/Makefile (SHELL): Now /bin/sh. 3767 3768 * c-typeck.c (build_binary_op): Also warn about ordered 3769 comparison of pointer with zero if -Wall. 3770 3771 * expr.c (do_jump, case EQ_EXPR, NE_EXPR): Properly compare complex. 3772 3773Thu May 4 18:01:25 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 3774 3775 * objc/Makefile: NXConstantString renamed to NXConstStr. 3776 * objc/NXConstStr.m: Renamed from objc/NXConstantString.m. 3777 * objc/NXConstStr.h: Renamed from objc/NXConstantString.h. 3778 3779Thu May 4 17:38:21 1995 J.T. Conklin <jtc@netbsd.org> 3780 3781 * configure (vax-*-netbsd*): New configuration. 3782 * vax/netbsd.h, vax/xm-netbsd.h: New files. 3783 3784Thu May 4 16:39:05 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3785 3786 * collect2.c (main): Add check for 'collect-ld', just like 3787 'real-ld', except that old versions won't be looking for it in the 3788 path. Don't look for 'real-ld' in the path anymore. Sigh. 3789 3790 * collect2.c: #include demangle.h and obstack.h. 3791 (obstack_chunk_alloc): Define. 3792 (obstack_chunk_free): Define. 3793 (generic): Don't define. Don't use. 3794 (main): Initialize obstacks and demangling. 3795 3796 * collect2.c (dump_file): Adjust space padding in output to 3797 maintain tabulation with Solaris ld. Don't demangle if the 3798 environment variable COLLECT_NO_DEMANGLE is set. 3799 3800 * collect2.c (main): Redirect the output of the first link and 3801 demangle it. Don't collect static c/dtors unless USE_COLLECT2 is 3802 defined. Null-terminate the list of objects. 3803 (dump_file): New function. 3804 (file_exists): New function. 3805 (collect_exit): Renamed from my_exit. Dump and remove the temporary 3806 ld output file. 3807 (collect_execute): Break out from fork_execute. Support redirection. 3808 (fork_execute): Call it. 3809 (fatal_perror, fatal, error): Make non-static. 3810 (xcalloc, xmalloc): Don't use generic. 3811 (xrealloc): Define. 3812 (collect_wait): Break out for do_wait. Just return the exit status. 3813 (do_wait): Call it. 3814 3815 * collect2.c: Check SUNOS4_SHARED_LIBRARIES using #if, not #ifdef. 3816 3817 * Makefile.in (collect2): Now uses cplus-dem.o and underscore.o. 3818 (collect2.o): Pass MAYBE_USE_COLLECT2 to compile. 3819 (underscore.c): Rules for creation. 3820 3821 * cplus-dem.c, demangle.h: Copy from libiberty. 3822 3823Thu May 4 14:12:35 1995 Jim Wilson <wilson@cygnus.com> 3824 3825 * sdbout.c (plain_type): Pass additional argument to plain_type_1. 3826 (plain_type_1): New parameter level. Increment it when making 3827 recursive calls. Force the type to void_type_mode before starting 3828 a 7th level of recursion. 3829 3830 * sh.c (general_movsrc_operand, general_movdst_operand): Delete 3831 references to POST_DEC and PRE_INC. 3832 * sh.h: Clean up whitespace, comments, etc. 3833 (TARGET_SH, RTL_BIT, DT_BIT, C_BIT, R_BIT, TARGET_DUMP_RTL, 3834 TARGET_DUMP_R, TARGET_CDUMP): Delete. 3835 (TARGET_SWITCHES): Delete -mR, -mc, -mr options. 3836 (CONST_DOUBLE_OK_FOR_LETTER_P): Delete 'G' contraint. 3837 (FUNCTION_VALUE): Simplify. 3838 (REG_OK_FOR_PRE_POST_P, IS_INDEX): Delete. 3839 (BASE_REGISTER_RTX_P, INDEX_REGISTER_RTX_P): Rewrite to allow 3840 SUBREGs. 3841 (GO_IF_LEGITIMATE_INDEX): Delete unused REGNO argument. 3842 (GO_IF_LEGITIMATE_ADDRESS): Use BASE_REGISTER_RTX_P instead of 3843 REG_OK_FOR_PRE_POST_P. Don't accept PRE_INC or POST_DEC addresses. 3844 (PREDICATE_CODES, PROMOTE_MODE): Define. 3845 3846Wed May 3 09:57:55 1995 Michael Meissner <meissner@cygnus.com> 3847 3848 * rs6000/rs6000.md (non power abs insns): If not powerpc, use 3849 sf/subfc instructions, not subf. 3850 3851Wed May 3 08:49:06 1995 Alan Modra <alan@SPRI.Levels.UniSA.Edu.Au> 3852 3853 * protoize.c (gen_aux_info_file): Use strerror #ifdef HAVE_STRERROR. 3854 3855Wed May 3 01:06:01 1995 Jeffrey A. Law <law@mole.gnu.ai.mit.edu> 3856 3857 * pa.c (output_call): Fix typo/thinko in last change. 3858 (output_function_epilogue): Align the data section before 3859 emitting deferred plabels. 3860 3861 From Torbjorn: 3862 * pa.c (before functions): Declare deferred_plabels and 3863 n_deferred_plabels. 3864 (output_call): When generating pic, don't use LP and RP. Use 32 bit 3865 plabel instead. 3866 (output_function_epilogue): Output plabels accumulated in output_call. 3867 3868Tue May 2 17:15:08 1995 Jeffrey A. Law <law@mole.gnu.ai.mit.edu> 3869 3870 * pa.c (hppa_expand_epilogue): Fix thinko in last change. 3871 3872Tue May 2 16:54:35 1995 Doug Evans <dje@cygnus.com> 3873 3874 * jump.c (jump_optimize, can_reach_end determination): A barrier can 3875 follow the return insn. 3876 3877Tue May 2 12:39:55 1995 Mike Stump <mrs@cygnus.com> 3878 3879 * fold-const.c (fold): Ensure that we don't alter the expression's 3880 type when folding CLEANUP_POINT_EXPRs. 3881 3882Tue May 2 13:36:08 1995 Michael Meissner <meissner@cygnus.com> 3883 3884 * expmed.c (emit_store_flag): When creating store flag 3885 instructions from simpler parts, such as XOR, ABS, etc. do not 3886 reuse pseudo registers if expensive optimizations, instead create new 3887 pseudos for each insn result. 3888 3889Tue May 2 01:25:29 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 3890 3891 * pa.c (hppa_expand_epilogue): Correctly handle restore of %rp 3892 for functions with a stack size of exactly 8kbytes and no frame 3893 pointer. 3894 3895Mon May 1 19:27:08 1995 Jim Wilson <wilson@cygnus.com> 3896 3897 * sdbout.c (sdbout_one_type): Don't switch to text section if 3898 in function with section attribute. 3899 3900 * combine.c (combine_instrutions): Set subst_prev_insn to zero. 3901 (try_combine, undo_all): Likewise. 3902 (get_last_value): Return zero if subst_prev_insn set. 3903 3904 * sparc.h (INIT_TARGET_OPTABS): Move INIT_SUBTARGET_OPTABS to end. 3905 3906 * Makefile.in (install-dir): chmod a+rx all newly created directories. 3907 3908 * expr.c (expand_expr, case SAVE_EXPR): Handle the case where 3909 mode is VOIDmode. 3910 3911Fri Apr 28 15:39:38 1995 Per Bothner <bothner@kalessin.cygnus.com> 3912 3913 * cpplib.h (cpp_buffer): Note new escape combination "@ ". 3914 * cpplib.c (macroexpand): Delete "@ " if stringifying. 3915 (cpp_skip_hspace): Also skip "@ " if input buffer has_escapes. 3916 (collect_expansion): Cleanup white-space handling. 3917 (create_definition): Remove all leading spaces, not just first one. 3918 (cpp_expand_to_buffer): Set has_escapes on resulting input buffer. 3919 (macroexpand): Set output_escapes during whole function (and 3920 specifically during calls of macarg). 3921 (macroexpand): Set "@ " before and after expansion result. 3922 (push_macro_expansion): Remove unneeded initial "@ ", not " ". 3923 (cpp_get_token): Remove unneeded "@ " (not " ") at end of expansion. 3924 (cpp_get_token): Handle "@ ". 3925 3926 * cpplib.c (read_name_map): Add cpp_reader parameter. Access 3927 map_list from former (instead of having it be static). 3928 (open_include_file): Extra parameter (because of above changes). 3929 (do_include, lookup_import): Update calls of open_include_file. 3930 3931 * cpplib.c (do_include): Fix memory leak. 3932 3933 * cpplib.c (delete_assertion): Also delete tokenlist. 3934 (do_unassert): Don't delete tokenlist (handled by delete_assertion). 3935 (cpp_cleanup): New function. Frees resources used by a cpp_reader. 3936 * cpphash.c (cpp_hash_cleanup): New function. 3937 (delete_macro): Enable commented-out code. 3938 (file_cleanup): Free actual buffer. 3939 3940 * cpplib.c (cpp_options): Add map_list. 3941 3942 * cpplib.h (PARSE_GETC): Removed. Bogus and unused. 3943 * cppmain.c (main): Remove commented-out code that used PARSE_GETC. 3944 3945 * cpplib.c: Don't #include <string.h>. Causes clashes 3946 on Nextstep (when index/rindex are macros). 3947 (cpp_grow_buffer, int_parse_file): Cast to U_CHAR*, rather than char*. 3948 3949Sun Apr 30 08:11:23 1995 Alan Modra (alan@spri.levels.unisa.edu.au) 3950 3951 * stdarg.h, varargs.h (va_arg): Don't assume __va_rounded_size (char) 3952 has the value of 4. 3953 3954Sun Apr 30 07:13:43 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 3955 3956 * vax.h (NOTICE_UPDATE_CC): Correctly handle aob insns. 3957 3958 * expr.c (expand_expr, case CONSTRUCTOR): Don't set target to 3959 zero if more then one word. 3960 Pass size and alignment to move_by_pieces_ninsns in bytes, not bits. 3961 3962 * cse.c (cse_insn): Properly set IN_MEMORY for SET_DEST. 3963 3964 * tree.c (substitute_in_expr): Preserve TREE_READONLY. 3965 3966 * c-common.c (enum attrs): Add A_UNUSED. 3967 (init_attributes): Initialize it. 3968 (decl_attributes, case A_UNUSED): New case. 3969 3970Sat Apr 29 15:42:03 1995 Paul Eggert <eggert@twinsun.com> 3971 3972 * cccp.c (do_include): Re-fix minor memory leak by using 3973 alloca instead of xmalloc and free. 3974 3975 * cccp.c (macarg): Except for reporting error, treat unterminated 3976 macro call as if it were terminated, since `macroexpand' relies 3977 on *argptr being filled in. 3978 3979Sat Apr 29 06:09:35 1995 Torbjorn Granlund <tege@cygnus.com> 3980 3981 * pa.c (output_mul_insn): Simplify, it is never called with 3982 UNSIGNEDP set. 3983 3984 * pa.md (divsi3, udivsi3, modsi3, umodsi3): Simplify. 3985 (ashlsi3): Clean up indentation and commentary. 3986 3987Fri Apr 28 12:48:01 1995 Jason Merrill <jason@phydeaux.cygnus.com> 3988 3989 * integrate.c (expand_inline_function): Don't emit any notes until 3990 after we've expanded the actual parameters. 3991 3992Fri Apr 28 11:51:06 1995 Stan Cox (gcc@dg-rtp.dg.com) 3993 3994 * m88k/dgux.h: (ENDFILE_SPEC, LIB_SPEC) Fix crtbegin and crtend 3995 (SELECT_RTX_SECTION) Put relocatable pic constants in data section 3996 3997 * m88k/dguxbcs.h: (LIB_SPEC) Likewise 3998 3999 * m88k/m88k.c: (symbolic_operand) Put relocatable pic constants in data 4000 4001 * m88k/m88k.h: (FRAME_POINTER_REQUIRED) Add -momit-leaf-frame-pointer 4002 4003 * m88k/m88k.md: (umulsidi3) Doesn't work for 88110 with mod/div changes 4004 4005 * m88k/x-dgux: (GCC_FOR_TARGET) tdesc gets mixed up for crtbegin/crtend 4006 4007Fri Apr 28 06:36:47 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4008 4009 * c-typeck.c (pop_init_level, output_init_element): Pass 4010 require_constant_* to digest_init. 4011 4012 * alpha.c (alpha_emit_set_const): Now returns rtx and take MODE arg. 4013 Rework to use a new pseudo for intermediate values if high opt level. 4014 Also use expand_{bin,un}op. 4015 * alpha.h (alpha_emit_set_const): Add declaration. 4016 * alpha.md (mov[sd]i and splits): Change call to alpha_emit_set_const. 4017 4018 * reg-stack.c (stack_result): Fix bug in last change. 4019 4020Fri Apr 28 01:08:43 1995 Doug Evans <dje@cygnus.com> 4021 4022 * objc-act.c: Update calls to start_decl, finish_struct, 4023 pass NULLs for attributes. 4024 4025Thu Apr 27 21:13:14 1995 Doug Evans <dje@cygnus.com> 4026 4027 * sparc.md (tablejump): Only if ! TARGET_MEDANY. 4028 (casesi): New pattern for TARGET_MEDANY case. 4029 4030 * c-common.c (decl_attributes): Always continue if attribute not found. 4031 * c-typeck.c (common_type): Call lookup_attribute instead of 4032 value_member. 4033 * tree.c (attribute_hash_list): New function. 4034 (build_type_attribute_variant): Call it. 4035 (valid_machine_attribute): Handle attributes with arguments. 4036 (is_attribute_p): New function. 4037 (lookup_attribute): New function. 4038 (attribute_in_list): Deleted. 4039 (attribute_list_contained): Check TREE_PURPOSE and TREE_VALUE. 4040 * tree.h (valid_machine_attribute): Add prototype. 4041 (is_attribute_p, lookup_attribute): Likewise. 4042 * i386/winnt.h (RETURN_POPS_ARGS): Call lookup_attribute. 4043 (ENCODE_SECTION_INFO): Likewise. 4044 (CPP_PREDEFINES): Use __stdcall__, __cdecl__. 4045 (VALID_MACHINE_DECL_ATTRIBUTE): Call is_attribute_p. 4046 `args' must be NULL. 4047 4048Thu Apr 27 21:10:41 1995 David Edelsohn <edelsohn@mhpcc.edu> 4049 4050 * rs6000.md (insv): New anonymous patterns to combine insert with 4051 arbitrary ashift, ashiftrt, lshiftrt, or zero_extract. (Based on 4052 patch from John Brooks <jbrooks@ea.com>.) 4053 (ashlsi3): Remove extraneous operand processing. 4054 4055Thu Apr 27 18:47:24 1995 Jim Wilson <wilson@cygnus.com> 4056 4057 * sh/ashlsi3.c, sh/ashrsi3.c, sh/lshrsi3.c: Delete. 4058 * sh/lib1funcs.asm (ashiftrt_r4_*): Rewrite for efficiency. 4059 (ashrsi3, lshrsi3, lshrsi3): Add. 4060 * t-sh (LIB1ASMFUNCS): Add new functions. 4061 (LIBGCC2_CFLAGS): Delete. 4062 (LIB2FUNCS_EXTRA): Remove deleted files. 4063 (ashlsi3.c, ashrsi3.c, lshrsi3.c): Remove rules for deleted files. 4064 4065 * stmt.c (expand_return): When returning BLKmode structure, use 4066 operand_subword instead of doing arithmetic on the register number. 4067 Also, for structures smaller than word_mode, copy it into a word_mode 4068 temporary and then subreg it. 4069 4070 * sparc.md: Delete two define_peepholes which print `bad peephole'. 4071 4072Thu Apr 27 16:17:01 1995 Torbjorn Granlund <tege@cygnus.com> 4073 4074 * toplev.c (rest_of_compilation): Call shorten_branches even when 4075 !optimize. 4076 * final.c (shorten_branches): For non-optimizing compiles, break 4077 after first pass. 4078 4079Thu Apr 27 14:22:50 1995 Michael Meissner <meissner@cygnus.com> 4080 4081 * i386/linux-oldld.h: New file, that is cloned from linux-aout.h, 4082 except that it does not pass -m i386linux to the linker. This is 4083 to support the original Linux ld that is on most distributions. 4084 4085 * configure (i[345]86-*-linux*oldld*): Use i386/linux-oldld.h as 4086 the target file. 4087 4088Thu Apr 27 08:56:50 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4089 4090 * tree.c (valid_machine_attribute): Update last change. 4091 4092Thu Apr 27 08:06:33 1995 Philippe De Muyter (phdm@info.ucl.ac.be) 4093 4094 * fix-header.c, cpplib.c: Don't include <sys/stat.h> twice. 4095 * cpplib.c (cpp_grow_buffer, init_parse_file): Cast {xmalloc,xrealloc} 4096 for token_buffer to U_CHAR* instead of char*. 4097 4098 * m68k/x-mot3300: New file. 4099 * configure (m68k-motorola-sysv*): Use x-mot3300 instead of x-alloca. 4100 4101Thu Apr 27 07:04:09 1995 Paul Eggert <eggert@twinsun.com> 4102 4103 * cccp.c (do_include): Fix minor memory leak. 4104 4105 * cccp.c (struct argdata): Remove unused `comments' member. 4106 (macarg): Don't set `comments' member. 4107 4108 * cccp.c (collect_expansion): Assume leading white space 4109 already removed. 4110 Don't allocate unnecessary space for expansion. 4111 4112 * cccp.c (deps_output): Don't generate overly long output lines. 4113 Do not invoke self recursively with spacer == 0; this simplifies 4114 the code a bit. 4115 4116Wed Apr 26 19:20:02 1995 Andrew McCallum <mccallum@leopard.cs.rochester.edu> 4117 4118 * objc/Object.h: Changed Class * to Class in order to match NEXTSTEP 4119 and OpenStep runtime. 4120 * objc/Object.m, objc/Object.h, objc/archive.c, objc/class.c: Likewise. 4121 * objc/encoding.c, objc/init.c, objc/objc-api.h, objc/objc.h: Likewise. 4122 * objc/objects.c, objc/runtime.h, objc/selector.c: Likewise. 4123 * objc/sendmsg.c, objc/typedstream.h: Likewise. 4124 4125Wed Apr 26 19:18:52 1995 Pieter Schoenmakers <tiggr@es.ele.tue.nl> 4126 4127 * objc/objc-api.h (objc_static_instances): New struct to record 4128 static instances of a certain class. 4129 (objc_module): New tag STATICS to point to the table of 4130 objc_statics_instances. 4131 4132 * objc/init.c (OBJC_VERSION): Version 7. 4133 (objc_init_statics): New function. 4134 (__objc_exec_class): Invoke objc_init_statics if needed. 4135 4136 * objc/NXConstantString.m, objc/NXConstantString.h: New files. 4137 * objc/Makefile (OBJC_O): Added bare-bones implementation of 4138 NXConstantString. 4139 4140 * objc-act.c (OBJC_VERSION): Version 7. 4141 (build_objc_string_object): Build a full declaration if not using 4142 the next runtime. 4143 (objc_add_static_instance): New function. 4144 (init_module_descriptor): Add reference to static instances table. 4145 (build_module_descriptor): Add field for static instances table. 4146 (get_objc_string_decl): New function. 4147 (generate_static_references): New function. 4148 (finish_objc): Call generate_static_references if needed. 4149 4150 * c-tree.h (finish_decl_top_level): New declaration. 4151 * c-decl.c (finish_decl_top_level): New function. 4152 4153Wed Apr 26 18:04:32 1995 Dirk Steinberg (Dirk.Steinberg@gmd.de) 4154 4155 * stddef.h: Treat _MACHINE_ANSI_H_ like _ANSI_H_. 4156 4157Wed Apr 26 14:09:59 1995 Jim Wilson <wilson@cygnus.com> 4158 4159 * sparc.h (NEGTF2_LIBCALL): Define. 4160 (INIT_TARGET_OPTABS): Add support for all TFmode *_LIBCALL macros. 4161 * optabs.c (init_optabs): Delete all uses of undocumented TImode and 4162 TFmode *_LIBCALL macros. 4163 4164 * combine.c (simplify_rtx, case TRUNCATE): Add. Use force_to_mode. 4165 (force_to_mode, case AND): Allow some simplifications when GET_MODE (x) 4166 has more bits than HOST_BITS_PER_WIDE_INT. 4167 * mips/mips.md (truncdiqi2+[456]): Add patterns to simplify ZERO_EXTEND 4168 of a TRUNCATE. 4169 4170Wed Apr 26 13:01:22 1995 Doug Evans <dje@cygnus.com> 4171 4172 * sparc.md (memop define_splits): Rewrite to not use memop. 4173 Preserve MEM_IN_STRUCT_P, MEM_VOLATILE_P, RTX_UNCHANGING_P bits. 4174 * sparc.c (memop): Deleted. 4175 (splittable_symbolic_memory_operand): New function. 4176 (splittable_immediate_memory_operand): New function. 4177 4178Wed Apr 26 12:54:26 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 4179 4180 * configure: Add hppa1.1-hp-lites support. 4181 4182Wed Apr 26 08:04:46 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4183 4184 * sh.md (ashrsi2_31): Don't use dead_or_set_p after reload. 4185 * pyr.md: Remove bad peepholes that improperly use dead_or_set_p. 4186 4187 * function.c (expand_function_end): Warn about unused parms 4188 if both -Wunused and -W. 4189 4190 * tree.h (TYPE_PARSE_INFO): Delete unused field. 4191 (TYPE_PACKED): Add new macro. 4192 (struct tree_type): Delete unused field `parse_info'. 4193 Add new field `packed_flag'. 4194 * c-tree.h (finish_enum, finish_struct): Add ATTRIBUTES argument. 4195 * c-common.c (init_attributes): Don't require decl for A_PACKED. 4196 (decl_attributes, case A_PACKED): Set TYPE_PACKED for type. 4197 * c-parse.in: Update number of shift/reduce conflicts. 4198 (structsp): Pass attribute arg to finish_struct. 4199 Support attributes on enums and pass to finish_enum. 4200 * c-decl.c (finish_struct): Add ATTRIBUTES argument, call 4201 decl_attributes and set DECL_PACKED from TYPE_PACKED. 4202 (finish_enum): Add ATTRIBUTES argument, call decl_attributes, 4203 and make enum narrow if TYPE_PACKED. 4204 * print-tree.c (print_node): Print TYPE_PACKED. 4205 4206 * c-decl.c (init_decl_processing): Don't give builtin__constant_p an 4207 argument type. 4208 * expr.c (expand_builtin, case BUILT_IN_CONSTANT_P): A pointer to a 4209 string constant is a constant. 4210 4211 * c-typeck.c (output_init_element): Constructor is not simple if 4212 a bitfield is being assigned a non-integer. 4213 4214 * c-typeck.c (push_init_level): Update constructor_depth when we 4215 push spelling level. 4216 4217Tue Apr 25 19:50:06 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 4218 4219 * pa.c (emit_move_sequence): Handle function label arithmetic for 4220 PIC code generation too. 4221 4222Tue Apr 25 18:52:43 1995 Stephen R. van den Berg (berg@pool.informatik.rwth-aachen.de) 4223 4224 * reg-stack.c (current_function_returns_real): Deleted (unused). 4225 (FP_mode_reg): Trimmed to a smaller size, less overhead. 4226 (FP_MODE_REG): New macro over which FP_mode_reg will be accessed. 4227 (mark_regs_pat, straighten_stack): New functions. 4228 (reg_to_stack): Amend initialisation of FP_mode_reg. 4229 Mark FP registers mentioned in USE insns before NOTE_INSN_FUNCTION_BEG. 4230 (get_true_reg): Eliminate FP subreg accesses in favour of the 4231 actual FP register in use. 4232 (record_reg_life_pat): Make it work on SUBREGs as well. Make use of 4233 the new mark_regs_pat function. Handle USE insns if called unnested. 4234 (record_reg_life): Don't check for QImode again, we know that it 4235 is there. Process CALL_INSNs like all other insns, they might `use' 4236 some FP argument registers if register passing. 4237 (stack_result_p): Changed in stack_result and returning an rtx. 4238 (stack_reg_life_analysis): Take a new stackentry state argument. 4239 Use stack_result and the rtx to mark using mark_regs_pat. This ensures 4240 that types that need multiple FP registers are handled correctly. 4241 Delete the no_live_regs shortcut to save space. 4242 Use stackentry state to determine filled registers. 4243 (replace_reg): Accept COMPLEX_FLOAT as well. 4244 (move_for_stack_reg): Optimise away some pointer dereferencing. 4245 (subst_stack_regs): Make sure the stack is in the right order 4246 and of the right size for register passing. 4247 (goto_block_pat): Make sure the stack is in the right order 4248 to return possible multi-register values from the function. 4249 (convert_regs): Fix comment about CALL_INSN, it's no longer valid. 4250 Make sure the stack is of the right size and in the right order 4251 to return possible multi-register values from the function. 4252 4253 * function.c (assign_parms): If STACK_REGS is defined, generate USE 4254 insns before the function body, thus showing which registers are filled 4255 with parameters. 4256 * expr.c (expand_builtin_apply_args): Likewise. 4257 Reverse order of saving registers, more compact code for i387. 4258 (expand_builtin_apply): Likewise. 4259 * emit-rtl.c (gen_highpart): Add comment about broken implementation. 4260 * i386.md (untyped_call): Make it return a complex double. 4261 4262 * c-parse.in (attrib): Permit null-length argument list to attributes. 4263 4264 * tree.c (valid_machine_attribute): Use new function attribute_in_list, 4265 makes sure type_attribute_variants are reused even when attributes have 4266 parameters. 4267 Assign any new type to TREE_TYPE (decl). 4268 (attribute_in_list): New function. 4269 (attribute_list_contained): Use it. 4270 * tree.h (attribute_in_list): New declaration. 4271 4272Tue Apr 25 18:25:53 1995 Jim Wilson <wilson@cygnus.com> 4273 4274 * expr.c (struct move_by_pieces): Add to_struct and from_struct fields. 4275 (move_by_pieces): Set to_struct and from_struct fields. 4276 (move_by_pieces_1): Set MEM_IN_STRUCT_P of to1 and from1. 4277 (expand_builtin, case BUILT_IN_MEMCPY): New variable type. 4278 Set MEM_IN_STRUCT_P of src_mem and dest_mem. 4279 4280 * Makefile.in (clean): Delete libgcc1-asm.a. 4281 4282 * m68k/vxm68k.h (CPP_SPEC): Define. 4283 4284 * c-decl.c (pushdecl): Don't test DECL_EXTERNAL when deciding whether 4285 to register a duplicate decl in the current block. 4286 4287 * cross64.h (INIT_ENVIRONMENT): Define as string not putenv call. 4288 * gcc.c (main): Pass INIT_ENVIRONMENT to putenv. 4289 4290 * stmt.c (expand_return): When returning BLKmode structure in 4291 registers, copy it to a psuedo-reg instead of to hard registers. 4292 4293Tue Apr 25 15:14:58 1995 Michael Meissner <meissner@cygnus.com> 4294 4295 * rs6000.h (LEGITIMIZE_ADDRESS): Don't create a DF address using two 4296 regs if -msoft-float or -mcpu=403. 4297 4298Tue Apr 25 15:45:44 1995 Richard Henderson (richard@atheist.tamu.edu) 4299 4300 * m68k.md (divhi3, udivhi3, modhi3, umodhi3): Deleted 4301 these insns plus some surrounding trash. 4302 (divmodhi4, udivmodhi4): Added these insns. 4303 4304Tue Apr 25 10:12:40 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4305 4306 * alpha.c (alpha_builtin_saveregs): Refine last change to work 4307 for both stdarg and varargs. 4308 4309 * tree.c (chain_member_purpose): Make similar to chain_member_value. 4310 4311 * Makefile.in, configure: Change "realclean" to "maintainer-clean". 4312 4313 * protoize.c: Removed __NetBSD__ from conditional. 4314 Declare strerror if HAVE_STRERROR is defined; otherwise 4315 declare sys_errlist and sys_nerr. 4316 (my_strerror): New function. 4317 (errno): Don't define if already defined as a macro. 4318 4319 * alpha.c (current_file_function_operand): Return false if profiling. 4320 4321 * expr.c (convert_move): Don't access a hard reg in an invalid 4322 mode when doing a truncation. 4323 4324 * alpha.c (add_operand): Test for exactly the constants allowed by 4325 the constraints. 4326 * alpha.h (CONST_OK_FOR_LETTER_P, case 'L'): Reject 0x80000000. 4327 4328 * c-parse.in (initdcl, notype_initdcl): Pass attributes to 4329 start_decl; delete call to decl_attributes. 4330 * c-tree.h (start_decl): Two new tree parameters. 4331 * c-decl.c (start_decl): New args for attributes; call decl_attributes. 4332 4333 * c-decl.c (duplicate_decls): Don't look at TYPE_ACTUAL_ARG_TYPES 4334 if it is not set. 4335 4336 * xm-1750a.h: New file. 4337 4338 * alpha.c (alpha_builtin_saveregs): Add to incoming args addr 4339 if less than 6 named args, not less than or equal to. 4340 4341Mon Apr 24 15:25:19 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4342 4343 * mips-tfile.c (fatal, error): Make first arg const to avoid warning. 4344 4345 * stmt.c (expand_end_bindings): Write a BARRIER after call 4346 to abort in nonlocal handler. 4347 4348 * stmt.c (expand_decl_init): Call preserve_temp_slots to keep 4349 around any temp whose address was taken. 4350 4351Fri Apr 21 16:26:15 1995 Torbjorn Granlund <tege@adder.cygnus.com> 4352 4353 * pa.md (call_internal_reg): Fix typos in length calculation. 4354 (call_value_internal_reg): Likewise. 4355 4356Fri Apr 21 13:17:15 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 4357 4358 * config/gnu.h (STANDARD_INCLUDE_DIR): New macro. 4359 * config/mips/gnu.h (STANDARD_INCLUDE_DIR): Macro moved there. 4360 4361Fri Apr 21 08:23:58 1995 Tom Quiggle (quiggle@lovelace.engr.sgi.com) 4362 4363 * toplev.c (lang_options): Add -I for GNAT. 4364 * gcc.c (default_compilers): Pass -I to gnat1. 4365 4366Fri Apr 21 07:58:06 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4367 4368 * tree.c (integer_all_onesp): Test to size of mode, not TYPE_PRECISION. 4369 4370 * toplev.c (main): Turn on -fforce-mem for -O2. 4371 4372 * fold-const.c ([lr]rotate_double): Replace; old versions were bogus. 4373 (fold, shift and rotate): Don't call tree_int_cst_sgn on non-integer. 4374 (fold, case LROTATE_EXPR): If constant count, convert to RROTATE_EXPR. 4375 (fold, case RROTATE_EXPR): Sometimes commute logical op with rotate. 4376 Delete pair of counteracting shifts. 4377 4378 * combine.c (simplify_logical, case AND): If still an AND, get 4379 new values for op0 and op1. 4380 4381Thu Apr 20 17:52:10 1995 Jim Wilson <wilson@chestnut.cygnus.com> 4382 4383 * sh.c: Completely rewritten. 4384 * sh.h (FAST_BIT, CONSTLEN_2_BIT, CONSTLEN_3_BIT, CONSTLEN_0_BIT, 4385 TARGET_FASTCODE, TARGET_CLEN3, TARGET_CLEN0, TARGET_OPTIONS): Delete. 4386 (TARGET_SWITCHES): Delete -mclen3 and -mclen0 options. 4387 (TARGET_DEFAULT): Is zero. 4388 (OVERRIDE_OPTIONS): Delete code to set max_count_si and max_count_hi. 4389 (SPECIAL_REG): New macro. 4390 (HARD_REGNO_MODE_OK): Allow any mode in any general register. 4391 (GO_IF_LEGITIMATE_ADDRESS): Delete constant + reg address case. 4392 (MOVE_RATIO): Define to 2 when TARGET_SMALLCODE. 4393 (max_si, max_hi, max_count_si, max_count_hi): Delete. 4394 * sh.md: Delete spurious constraints from all define_expands. 4395 (rotlsi3_1): Set T reg instead of clobbering it. 4396 (ashrsi3): Use expand_ashiftrt instead of gen_shifty_op. 4397 (movsi_i, movhi_i, movsf_i): Add conditions to reject patterns 4398 needing a reload. 4399 (movdi-2, movdf_k): Correct conditions to reject patterns needing 4400 a reload. 4401 ([inverse_]branch_{true,false}): Pass operands to output_branch. 4402 (jump): Delete unnecessary braces. 4403 (call, call_value): Don't use expand_acall. Force operand0 into 4404 a register. 4405 4406Thu Apr 20 12:57:16 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4407 4408 * function.c (assign_parms): Use TREE_ADDRESSABLE rather than 4409 TYPE_NEEDS_CONSTRUCTING to decide whether a parameter needs to be 4410 passed by invisible reference. 4411 4412 * calls.c (expand_call): Ditto. Abort if we try to pre-evaluate a 4413 parameter of TREE_ADDRESSABLE type. 4414 4415Wed Apr 19 17:50:24 1995 Torbjorn Granlund <tege@cygnus.com> 4416 4417 * pa.h (TARGET_SWITCHES): Fix typo. 4418 4419Tue Apr 18 18:06:03 1995 Per Bothner <bothner@kalessin.cygnus.com> 4420 4421 * expr.c (store_constructor): Use BYTES_BIG_ENDIAN rather 4422 than BITS_BIG_ENDIAN to layout bits within bitstring. 4423 * tree.c (get_set_constructor_bytes): Likewise. 4424 4425Tue Apr 18 17:22:46 1995 Per Bothner (bothner@wombat.gnu.ai.mit.edu) 4426 4427 * config/m68k/{x-hp320,x-hp320g} (FIXPROTO_DEFINES): 4428 Define _HPUX_SOURCE so putenv and other functions get seen. 4429 4430Tue Apr 18 03:57:35 1995 Michael Meissner (meissner@cygnus.com) 4431 4432 * varasm.c (weak_decls): Make this a unique structure, instead of 4433 a tree structure. 4434 (handle_pragma_weak): Don't redeclare asm_out_file. Use new weak 4435 structure to copy name and value to. Protect name and value by 4436 copying them to the permanent obstack. 4437 (declare_weak): Call handle_pragma_weak, instead of duplicating 4438 the code. 4439 (finish_weak): Rewrite to use new weak symbols list structure. 4440 4441 * c-pragma.h: New file to define the c-pragma.c interfaces. 4442 * c-pragma.c: Include it. 4443 * varasm.c: Include it. 4444 * c-lex.c: Include it. 4445 * cp/lex.c: Include it. 4446 4447 * varasm.c (handle_pragma_weak): No longer pass output file 4448 stream, since weak pragmas are delayed until the end of the 4449 compilation. 4450 * c-pragma.c (handle_pragma_token): Call handle_pragma_weak 4451 without file stream argument. 4452 4453 * Makefile.in (varasm.o, c-lex.o, c-pragma.o): Add dependencies on 4454 c-pragma.h. 4455 4456 * config/rs6000.md (movdf): If -msoft-float, do not generate 4457 memory to memory references, like is already done for the 4458 -mhard-float case. Remove an extra test for -mhard-float inside 4459 of -mhard-float code. 4460 4461Tue Apr 18 06:19:50 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4462 4463 * fold-const.c (size_int): Arg is unsigned HOST_WIDE_INT. 4464 * tree.h (size_int): Likewise. 4465 4466Mon Apr 17 23:36:57 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4467 4468 * rs6000/aix41.h: Restore March 11th changes, plus 4469 (ASM_OUTPUT_EXTERNAL): Do add [DS] or [RW], just don't emit 4470 anything. 4471 * rs6000/aix3newas.h (ASM_OUTPUT_EXTERNAL): Ditto. 4472 4473Mon Apr 17 15:58:52 1995 Per Bothner <bothner@kalessin.cygnus.com> 4474 4475 * config/mips/x-iris (FIXPROTO_DEFINES): Add -D_LANGUAGE_C_PLUS_PLUS. 4476 * config/mips/x-iris6: Likewise. 4477 4478 * cpplib.c: Rename make_definition to cpp_define. 4479 * cpplib.h (cpp_define): New declaration. 4480 4481 * cpplib.c (special_symbol): For T_SPECLINE, calculate __LINE__ 4482 in enclosing file buffer, not current buffer (if macro expanding). 4483 (cpp_get_token): Fix thinko (in code for chopping unneeded space). 4484 4485Mon Apr 17 11:36:07 1995 Jim Wilson <wilson@cygnus.com> 4486 4487 * abi64.h (CPP_SPECS): Define and use _ABI64 instead of 4488 _MIPS_SIM_ABI64. 4489 (SETUP_INCOMING_VARARGS): Set MEM_IN_STRUCT_P if big endian target. 4490 * iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Define. 4491 4492 * combine.c (get_last_value): Ignore BARRIER when scanning backwards. 4493 (move_deaths): New variables before_dead and after_dead. Set them 4494 to instructions that have valid INSN_CUID values and use in test. 4495 4496 * combine.c (subst_prev_insn): New variable. 4497 (try_combine): Set it. 4498 (get_last_value): Use it. 4499 4500 * reload.c (find_reloads): Recompute reg_equiv_address from 4501 reg_equiv_memory_loc before using it. 4502 (find_reloads_toplev, make_memloc): Likewise. 4503 4504 * expr.c (expand_builtin, case BUILT_IN_MEMCPY): Call force_operand 4505 on dest_rtx before returning it. 4506 4507 * function.c (instantiate_decls): Use temporary allocation if 4508 DECL_DEFER_OUTPUT is set. 4509 4510Sat Apr 15 23:19:03 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4511 4512 * aoutos.h (ASM_OUTPUT_DEF): Define instead of SET_ASM_OP. 4513 * sparc/sunos4.h (ASM_OUTPUT_DEF): Ditto. 4514 4515 * varasm.c (weak_finish): Don't handle aliases. 4516 (declare_weak): Ditto. 4517 (assemble_alias): Handle aliases. 4518 4519 * c-common.c (enum attrs): Add A_ALIAS. 4520 (init_attributes): Ditto. 4521 (decl_attributes): Ditto. 4522 4523Sat Apr 15 13:26:34 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4524 4525 * calls.c (expand_call): Call preserve_temp_slots on temps 4526 made for BLKmode args returned in registers. 4527 4528 * pa.c (override_options): Fix typo. 4529 4530Sat Apr 15 12:11:46 1995 Brendan Kehoe <brendan@cygnus.com> 4531 4532 * alpha/alpha.c (output_epilog): Initialize fp_offset to 0, and 4533 make sure it's non-zero before we try to use it to restore the 4534 frame pointer. 4535 4536Fri Apr 14 19:45:05 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4537 4538 * ginclude/va-{clipper,pa,pyr,sparc,spur}.h (va_arg): Reorganize 4539 to avoid BIND_EXPRs and COND_EXPRs of aggregate type. 4540 4541Fri Apr 14 19:31:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 4542 4543 * config/svr4.h (ASM_OUTPUT_SECTION_NAME): Make the section 4544 read-only executable "ax" if DECL is a FUNCTION_DECL; read-only 4545 "a" (previously the case always) if DECL is TREE_READONLY; 4546 otherwise writable "aw". 4547 4548Fri Apr 14 18:49:11 1995 Linus Torvalds <Linus.Torvalds@cs.Helsinki.FI> 4549 4550 * alpha.md (probe_stack): Probe with write, not read. 4551 (allocate_stack): Update and correct stack probe code. 4552 * alpha.c (output_prolog): Changed stack probe at function entry. 4553 4554Fri Apr 14 18:42:34 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4555 4556 * jump.c (delete_insn): When deleting after label, delete 4557 a BARRIER as well. 4558 4559Fri Apr 14 14:40:48 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4560 4561 * toplev.c (compile_file): Call weak_finish. 4562 4563 * c-common.c (enum attrs): Add A_WEAK. 4564 (init_attributes): Ditto. 4565 (decl_attributes): Support __attribute__ ((weak)) by 4566 calling declare_weak. 4567 4568 * sparc/sunos4.h (HANDLE_PRAGMA_WEAK, WEAK_ASM_OP, SET_ASM_OP): 4569 Define to support weak symbols with -fgnu-linker. 4570 * aoutos.h: Ditto. 4571 4572 * varasm.c (handle_pragma_weak): Add declared weak symbols to 4573 weak_decls rather than emitting them immediately. 4574 (declare_weak): Add the indicated declaration to weak_decls. 4575 (weak_finish): Emit .weak directives for any weak symbols. 4576 4577 * libgcc2.c: The C++ free-store management functions are weak. 4578 4579Fri Apr 14 13:00:29 1995 Michael Meissner (meissner@cygnus.com) 4580 4581 * rs6000/rs6000.c (output_prolog): For eabi systems, emit main's 4582 call to __eabi before setting up the minimal TOC used with the 4583 -mrelocatable support. 4584 4585 * rs6000/eabi.h (INVOKE__main): Don't define any more, 4586 output_prolog will emit the call. 4587 4588Fri Apr 14 09:09:03 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4589 4590 * alpha.c (call_operand): Any reg is valid for NT. 4591 (output_prologue): Never need GP for Windows/NT. 4592 Set SYMBOL_REF_FLAG in current function decl. 4593 4594Thu Apr 13 20:19:30 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4595 4596 * alpha/xm-alpha.h (HAVE_VPRINTF): Define. 4597 (HAVE_PUTENV): Define. 4598 (POSIX): Define. 4599 4600Thu Apr 13 19:57:44 1995 Doug Evans <dje@cygnus.com> 4601 4602 * emit-rtl.c (gen_sequence): If the insn has a non-null 4603 CALL_INSN_FUNCTION_USAGE field, output it as a sequence so the 4604 latter isn't discarded. 4605 4606 * c-parse.in: Update expected conflict count. 4607 4608Thu Apr 13 08:10:20 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4609 4610 * configure.bat: Arg 2 is which machine (i386 or alpha). 4611 * configure (alpha-*-winnt3*): New configuration. 4612 * alpha.c: Don't #include stamp.h for WINNT. 4613 (input_operand, case CONST): Allow ptr_mode and DImode. 4614 * alpha.h (WINDOWS_NT): Provide default definition. 4615 (ASM_OUTPUT_INT): Use output_addr_const. 4616 (ASM_OUTPUT_ADDR_DIFF_ELT): Use .long for NT. 4617 * alpha.md (calll, tablejump, movsi): New variants for NT. 4618 * alpha/winnt.h, alpha/xm-winnt.h, alpha/x-winnt: New files. 4619 * alpha/config-nt.bat, alpha/config-nt.sed: New files. 4620 * i386/config-nt.bat: Add Ada fragments to Makefile. 4621 * i386/config-nt.sed: Adjust for deletion of config.run in Makefile.in 4622 Change version to 2.6.3. 4623 Add some missing tabs. 4624 * winnt/winnt.h (TARGET_MEM_FUNCTIONS): Define. 4625 (LINK_SPEC): Delete "align:0x1000". 4626 * winnt/xm-winnt.h (OBJECT_SUFFIX): Define. 4627 * ginclude/stdarg.h, ginclude/varargs.h: Clean up code that 4628 defines *DEFINED* symbols. 4629 4630 * configure (a29k-*-sym1*): Same as a29k-*-bsd*. 4631 * a29k.h (ASM_OUTPUT_SECTION_NAME): New macro. 4632 4633Wed Apr 12 14:36:03 1995 Jim Wilson <wilson@cygnus.com> 4634 4635 * dbxout.c (dbxout_type_fields): Correct arguments to CHARS macro 4636 in flag_minimal_debug case. 4637 (dbxout_symbol_name): Use DECL_ASSEMBLER_NAME unconditionally. 4638 * sdbout.c (sdbout_record_type_name): Correct indentation. 4639 (sdbout_symbol): Use DECL_ASSEMBLER_NAME unconditionally. 4640 (sdbout_one_type): Likewise. 4641 4642Tue Apr 11 13:24:13 1995 Per Bothner <bothner@kalessin.cygnus.com> 4643 4644 * fix-header.c (main): Fix loop over required_functions_list. 4645 (fatal): Also print inc_filename. 4646 4647 * cpplib.c (cpp_push_buffer): Added missing initializatuon of buf. 4648 (cpp_file_buffer): Compare against CPP_NULL_BUFFER, not NULL. 4649 (finclude): No longer call cpp_push_buffer - let callers do it. 4650 (do_include): Add call to cpp_push_buffer. 4651 (push_parse_file): Call cpp_push_buffer early, so initial 4652 defines can use file and line from a valid cpp_buffer. 4653 (nreverse_pending): New function. 4654 (push_parse_file): Use nreverse_pending. 4655 (push_parse_file): For -include files, just push them in reverse 4656 order - we don't need to scan them now. 4657 (cpp_error_from_errno, cpp_perror_with_name): Don't emit extra '\n'. 4658 4659Tue Apr 11 13:36:44 1995 Jim Wilson <wilson@cygnus.com> 4660 4661 * configure (mips-dec-mach3): Add. 4662 4663 * sh.c (shiftby_operand): Delete. 4664 * sh.h (TARGET_SWITCHES): -m3 and -m3l also set SH2_BIT. 4665 (OVERRIDE_OPTIONS): Don't add CPU_SH2 to CPU_SH3 when TARGET_SH3. 4666 * sh.md (ashlsi3): Use nonmemory_operand as a predicate instead of 4667 shiftby_operand. Don't use shiftby_operand in the output statement. 4668 (lshrsi3): Likewise. 4669 4670 * c-decl.c (poplevel): Do output inline function if 4671 DECL_ABSTRACT_ORIGIN points to itself. 4672 4673 * varasm.c (output_constant): Cast assemble_string argument to char *. 4674 4675Mon Apr 10 14:29:28 1995 Torbjorn Granlund <tege@adder.cygnus.com> 4676 4677 * recog.c (constrain_operands, case 'E'): Make this work like 4678 constraint character `F' when REAL_ARITHMETIC is defined. 4679 * regclass.c (record_reg_classes, case 'E'): Likewise. 4680 * reload.c (find_reloads, case 'E'): Likewise. 4681 4682Mon Apr 10 14:30:31 1995 Michael Meissner <meissner@cygnus.com> 4683 4684 * rs6000/aix3newas.h, rs6000/aix41.h: Eliminate March 11th changes 4685 to undefine ASM_OUTPUT_EXTERNAL{,_LIBCALL}, since this causes the 4686 compiler not to bootstrap. 4687 4688Mon Apr 10 07:17:39 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4689 4690 * cppalloc.c: #include config.h. 4691 * cppexp.c: Add declarations of xmalloc and xrealloc. 4692 (cpp_parse_expr): Cast args to bcopy to char *. 4693 * cpphash.c: Add declaration of xmalloc. 4694 * cpplib.c (init_parse_options, cpp_reader): Cast args to bcopy, 4695 bcmp, and bzero to char *. 4696 (add_import, push_parse_file, init_parse_file): Likewise. 4697 4698 * c-common.c (enum attrs): New attribute, A_NOCOMMON. 4699 (init_attribute): Initialize it. 4700 (decl_attributes): Implement it. 4701 * varasm.c (make_decl_rtl): Allow section attribute if -fno-common 4702 or variable is not to be placed in common for some other reason. 4703 4704 * combine.c (simplify_set): Don't move a SUBREG to dest if it 4705 is changing the size of a hard reg in CLASS_CANNOT_CHANGE_SIZE. 4706 4707 * reload.c (find_equiv_reg): If goal is a pseudo that got memory, 4708 a store into memory makes it invalid. 4709 * reload1.c (reload_as_needed): Call forget_old_reloads_1 on 4710 pattern before reg elimination. 4711 4712Mon Apr 10 00:26:14 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 4713 4714 * pa.c (pa_reorg): Bump label use count for each entry in an 4715 exploded ADDR_VEC. 4716 4717Sun Apr 9 09:22:51 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4718 4719 * i386.md (adddi3, subdi3): Need scratch reg whenever operand 0 in 4720 mem and operands 1 not '0'. 4721 (subdi3): Don't treat two non-equal MEMs as non-aliasing. 4722 4723Sat Apr 8 22:53:38 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 4724 4725 * pa.c (pa_reorg): Fix typo. 4726 4727Sat Apr 8 19:36:36 1995 Michael Meissner <meissner@cygnus.com> 4728 4729 * rs6000/rs6000.h (SELECT_SECTION): TREE_CODE_CLASS must be called 4730 with a tree code, not a tree value. 4731 4732Sat Apr 8 12:41:01 1995 Mike Stump <mrs@cygnus.com> 4733 4734 * cpphash.c: Don't use const on compilers that don't support it. 4735 4736Sat Apr 8 16:32:22 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4737 4738 * expr.c (expand_increment): Handle case where INCREMENTED 4739 has a non-trivial conversion. 4740 4741Fri Apr 7 19:33:21 1995 Phil Nelson (phil@cs.wwu.edu) 4742 4743 * ns32k.h (TRAMPOLINE_TEMPLATE, TRANSFER_FROM_TRAMPOLINE): 4744 Fix assembler syntax errors. 4745 4746Fri Apr 7 19:27:23 1995 Pat Rankin (rankin@eql.caltech.edu) 4747 4748 * cccp.c (VMS_fstat, VMS_stat): New functions. 4749 4750Fri Apr 7 19:25:21 1995 Paul Eggert <eggert@twinsun.com> 4751 4752 * cccp.c (collect_expansion): If traditional, set stringify 4753 member to SHARP_TOKEN regardless of the value of 4754 stringify_sharp_token_type. 4755 4756Fri Apr 7 07:48:35 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4757 4758 * cse.c (simplify_unary_operation): #ifdef POINTERS_EXTEND_UNSIGNED, 4759 handle sign- or zero-extending addresses. 4760 4761 * optabs.c (init{,_integral,_floating,_complex}_libfuncs): 4762 Change SUFFIX to "char" to avoid confusion with prototype. 4763 4764 * explow.c (convert_memory_address): No longer static. 4765 New arg, TO_MODE. 4766 Do something special for SYMBOL_REF, LABEL_REF, and CONST. 4767 (memory_address): Add extra arg to call to convert_memory_address. 4768 * rtl.h (convert_memory_address): Add extra arg. 4769 * expr.c (expand_expr, case ADDR_EXPR): Always call 4770 convert_memory_address when converting; add extra arg. 4771 * stmt.c (expand_computed_goto): Convert from ptr_mode to Pmode. 4772 4773 * gcc.c (OBJECT_SUFFIX): Default now ".o", not "o". 4774 (all specs): Remove "." before %O; use %O in a few missing cases. 4775 * i386/os2.h (OBJECT_SUFFIX): Delete from here. 4776 * i386/xm-os2.h (OBJECT_SUFFIX): Move to here; now has period. 4777 4778 * Makefile.in (STAGESTUFF): Use $(exeext) for executables. 4779 4780Fri Apr 7 03:32:29 1995 Richard Stallman <rms@mole.gnu.ai.mit.edu> 4781 4782 * config.sub: Accept -lites* as op sys. 4783 4784Thu Apr 6 23:08:50 1995 Per Bothner <bothner@kalessin.cygnus.com> 4785 4786 * cpplib.c (bcopy, bzero, bcmp): Remove #undefs. 4787 * cppalloc.c (xcalloc): Re-implement using calloc, 4788 rather than malloc+bzero. 4789 * cpplib.c (SELF_DIR_DUMMY): New macro. 4790 (do_include): Don't pass searchptr to finclude if it is dsp, 4791 since that is on the stack, and would cause a dangling pointer. 4792 If handling #include_next, recognize SELF_DIR_DUMMY. 4793 4794Fri Apr 7 00:54:24 1995 Jeffrey A. Law <law@snake.cs.utah.edu> 4795 4796 * pa.h (MACHINE_DEPENDENT_REORG): Define. 4797 * pa.md (switch_jump): New pattern for jumps which implement 4798 a switch table. 4799 * pa.c (pa_reorg): New function to explode jump tables. 4800 (pa_adjust_insn_length): Account for jumps in switch tables with 4801 unfilled delay slots. 4802 4803Thu Apr 6 14:31:10 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4804 4805 * c-typeck.c (build_binary_op): Don't call common_type for 4806 uncommon pointer types. 4807 4808Wed Apr 5 13:53:17 1995 Per Bothner <bothner@kalessin.cygnus.com> 4809 4810 Re-write fixproto/fix-header/etc to use cpplib: 4811 * fix-header.c: Comment out support for adding missing extern "C" 4812 using #ifdef ADD_MISSING_EXTERN_C instead of #if 0. 4813 * fixproto: Removed case of required functions. Instead use ... 4814 * fix-header.c (std_include_table): ... new required-functions table. 4815 (cpp_file_line_for_message, cpp_print_containing_files, cpp_message): 4816 New stub functions, to intercept cpplib error message. 4817 * fixproto: Don't call $CPP, since fix-header now incorporates cpplib. 4818 * gen-protos.c (fatal, hashf): New functions. 4819 (main): Use hashf, instead of hash. 4820 * scan-decls.c (scan_decls, skip_to_closing_brace): Re-write to 4821 take a cpp_reader* as argument, not a FILE*. 4822 * scan.h (hash): Make parameter const. 4823 * scan.c (hash): Removed. 4824 * scan.c (memory_full, xmalloc, xrealloc): Removed. 4825 Use functions from cppalloc.c instead. 4826 * Makefile.in (gen-prtos, fix-header, stmp-fixproto): Update. 4827 4828Wed Apr 5 13:24:14 1995 Per Bothner <bothner@kalessin.cygnus.com> 4829 4830 * cpplib.c (cpp_get_token): If traditional, return after comment, 4831 instead of reading more, so end-of-line can be peeked at. 4832 * cpperror.c (cpp_file_line_for_message, cpp_message): New 4833 functions, that do the actual printing of error messages. 4834 (cpp_print_file_and_line, cpp_error, cpp_warning, cpp_pedwarn, 4835 cpp_error_with_line, cpp_warning_with_line, cpp_pedwarn_with_line, 4836 cpp_pedwarn_with_file_and_line, cpp_error_from_errno, my_strerror, 4837 cpp_perror_with_name): Re-write to use cpp_file_line_for_message 4838 and cpp_message, and move to cpplib.c. 4839 4840Tue Apr 4 23:35:49 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 4841 4842 * config/gnu.h (GNU_CPP_PREDEFINES): Remove -D__HURD__. 4843 4844Tue Apr 4 17:15:54 1995 Jeffrey A. Law <law@mole.gnu.ai.mit.edu> 4845 4846 * pa.h (DO_GLOBAL_DTORS_BODY): Fix pointer -> integer assignment 4847 problem. 4848 4849 * reorg.c (fill_simple_delay_slots): Don't use a JUMP_INSN 4850 a the target of another JUMP_INSN to fill a delay slot. 4851 4852Mon Apr 3 19:03:48 1995 Torbjorn Granlund <tege@adder.cygnus.com> 4853 4854 * cse.c (simplify_unary_operation): Sign-extend constants when 4855 they have the most significant bit set for the target. 4856 4857 * m68k.md (umulsi3_highpart): Test for CONST_INT and CONST_DOUBLE, 4858 not CONSTANT_P. 4859 (smulsi3_highpart): Likewise. 4860 * m68k.c (const_uint32_operand): New function. 4861 (const_sint32_operand): New function. 4862 * m68k.md (const_umulsi3_highpart): Use const_uint32_operand instead 4863 of immediate_operand for op3. Delete mode. 4864 (const_smulsi3_highpart): Analogous change. 4865 4866Mon Apr 3 19:03:48 1995 Jim Wilson <wilson@cygnus.com> 4867 4868 * cse.c (simplify_binary_operation): Sign-extend constants when 4869 they have the most significant bit set for the target. 4870 4871 * combine.c (force_to_mode, case PLUS): Sign extend masks that are 4872 negative in OP_MODE. 4873 (simplify_and_const_int): Sign-extend constants when they have the 4874 most significant bit set for the target. 4875 (merge_outer_ops): Likewise. 4876 (simplify_shift_const): Likewise. 4877 4878Mon Apr 3 18:23:48 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4879 4880 * toplev.c (lang_options): Add -f{no-,}repo. 4881 4882Mon Apr 3 18:13:15 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4883 4884 * combine.c (nonzero_bits, case REG): Check POINTERS_EXTEND_UNSIGNED. 4885 (num_sign_bit_copies, case REG): Likewise. 4886 * explow.c (convert_memory_address): New function. 4887 (memory_address): Call if it needed. 4888 (promote_mode, case POINTER_TYPE): Use Pmode and pointer extension. 4889 (allocate_dynamic_stack_space): Convert size from ptr_mode. 4890 * expr.c (clear_storage, expand_assignment, store_{expr,constructor}): 4891 Use ptr_mode instead of Pmode in some places. 4892 (expand_expr, expand_builtin): Likewise. 4893 (push_block, store_expr): Convert size to Pmode. 4894 (expand_expr, case ADDR_EXPR): Convert from Pmode to ptr_mode. 4895 4896Mon Apr 3 18:00:52 1995 Jim Wilson <wilson@cygnus.com> 4897 4898 * explow.c (allocate_dynamic_stack_space): Correct typo in last 4899 change. 4900 4901 * sh.c (gen_shifty_op, case ASHIFTRT): Return 0 if shift count is not 4902 a constant. 4903 4904Mon Apr 3 12:17:10 1995 Michael Meissner (meissner@cygnus.com) 4905 4906 * expmed.c (extract_bit_field): When converting a SUBREG into a 4907 REG, if the system is big endian, adjust the bit offset 4908 appropriately. 4909 4910Mon Apr 3 00:08:45 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 4911 4912 * config/i386/linux.h: Include "config/linux.h" instead of 4913 "linux.h", to avoid recursion. 4914 4915Sun Apr 2 23:50:27 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> 4916 4917 * config/i386/gnuelf.h: Include i386/linux.h instead of 4918 i386/linuxelf.h. 4919 4920Sun Apr 2 17:35:10 1995 Jim Wilson <wilson@cygnus.com> 4921 4922 * cse.c (simplify_relational_operation): Don't simplify A-B for 4923 compare of A and B when the compare is unsigned. 4924 4925Sun Apr 2 08:23:38 1995 Paul Eggert <eggert@twinsun.com> 4926 4927 * fixincludes (stdio.h): BSDI 2.0 changed the spelling of _VA_LIST_ 4928 to _BSD_VA_LIST_. 4929 4930Sun Apr 2 07:57:28 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 4931 4932 * i386/xm-bsd386.h: New file. 4933 * configure (i[345]86-*-bsd*): Add xm_file. 4934 4935 * gcc.c (default_compilers): Pass -W and -w to gnat1. 4936 4937 * winnt/winnt.h (STDC_VALUE): Add #undef. 4938 * i386/winnt.h (LIB_SPEC): Likewise. 4939 4940Sun Apr 2 07:55:25 1995 Douglas Rupp (drupp@cs.washington.edu) 4941 4942 * i386/winnt.h (RETURN_POPS_ARGS, ENCODE_SECTION_INFO): Call 4943 chain_member_purpose, not chain_member_value. 4944 (ASM_FILE_START, LIB_SPEC): Move to here. 4945 * winnt/winnt.h (ASM_FILE_START, LIB_SPEC): Delete from here. 4946 * tree.c (chain_member_purpose): New function. 4947 4948Sat Apr 1 12:19:14 1995 Jason Merrill <jason@phydeaux.cygnus.com> 4949 4950 * c-typeck.c (build_binary_op): New variable build_type controls 4951 type given to expression when created. Set to integer_type_node for 4952 comparison ops instead of result_type so result_type still holds type 4953 in which comparison is done. When checking for comparison between 4954 signed and unsigned, use result_type rather than (possibly shortened) 4955 type of op0. Don't warn about equality comparison of signed operand 4956 to unsigned constant that fits in signed type. 4957 4958Sat Apr 1 09:47:02 1995 Douglas Rupp (drupp@cs.washington.edu) 4959 4960 * i386/winnt.h (CPP_PREDEFINES): Add definitions for __stdcall 4961 and __cdecl. 4962 * winnt/winnt.h (LIB_SPEC): Add OLDNAMES.LIB. 4963 * winnt/xm-winnt.h: Remove unneeded #define's for non-ANSI functions. 4964 * fixinc.winnt: Remove unneeded fixes relating to __stdcall. 4965 4966 * objc/Makefile (SHELL): New definition. 4967 4968Sat Apr 1 08:25:26 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 4969 4970 * cse.c (cse_insn): When emitting a BARRIER, don't put it after 4971 a deleted insn. 4972 4973 * reload.c (push_reload): Initialize secondary_{in,out}_icode. 4974 4975 * gcc.c (print_multilib_info): Don't use LAST_PATH if not set. 4976 4977Sat Apr 1 08:15:59 1995 Pat Rankin (rankin@eql.caltech.edu) 4978 4979 * vax.md (extv, extzv): Don't use immediate value for operand 1. 4980 4981Sat Apr 1 07:48:29 1995 Yury Shevchuk (sizif@botik.yaroslavl.su) 4982 4983 * stmt.c (expand_asm_operands): Properly ignore invalid reg in clobber. 4984 4985Sat Apr 1 07:02:24 1995 Paul Eggert <eggert@twinsun.com> 4986 4987 * cccp.c: General code cleanup. 4988 Add prototypes for static functions. 4989 Remove unnecessary casts to (char *); add casts to (U_CHAR *). 4990 Add parentheses suggested by `gcc -Wparentheses'. 4991 Rename local variables as suggested by `gcc -Wshadow'. 4992 <fcntl.h>, <stdlib.h>, <string.h>, <unistd.h>: New includes. 4993 <sys/time.h>, <sys/resource.h>: Include only if defined(RLIMIT_STACK). 4994 <time.h>: Include, unless <sys/time.h> already does. 4995 (HAVE_FCNTL_H, HAVE_STDLIB_H, HAVE_SYS_TIME_H): New symbols. 4996 (HAVE_UNISTD_H, STDC_HEADERS, TIME_WITH_SYS_TIME): Likewise. 4997 (__attribute__, PROTO, VA_START, PRINTF_ALIST, PRINTF_DCL): New macros. 4998 (PRINTF_PROTO{,_1,_2,_3}, DO_PROTO): Likewise. 4999 (bcopy, bzero, bcmp): If #defined by configuration file, use that. 5000 If STDC_HEADERS is defined, use standard C functions. 5001 If BSTRING is defined, or USG and VMS are not defined, use 5002 the C library. Otherwise, use my_bcopy, my_bzero, my_bcmp. 5003 (localtime): Remove no-longer-necessary explicit declaration. 5004 (getenv, index, rindex): Don't declare explicitly if the 5005 appropriate system header should declare it. 5006 (fdopen): Remove no-longer-used declaration. 5007 (vprintf): Define a subsitute macro if !defined(HAVE_VPRINTF). 5008 (main): Replace `fdopen (dup (fileno (stdout)), "w"))' 5009 with `stdout'. 5010 (get_lintcmd, rescan, create_definition): Use bcmp instead of strncmp 5011 when both operands are known to be free of null bytes. 5012 (check_macro_name, compare_defs, collect_expansion): Likewise. 5013 (do_assert, compare_token_lists, assertion_lookup, do_line): Likewise. 5014 (skip_if_group, lookup): Likewise. 5015 (rescan): Remove unused label `startagain'. 5016 Abort instead of printing nonsense if the stack is corrupted 5017 when there was an unterminated successful conditional. 5018 (pcfinclude): Include explicit double-cast through GENERICPTR 5019 to identify particularly egregious type puns. 5020 (create_definition, do_define, check_macro_name): Use %.*s 5021 printf format to avoid painful copying-and-casting. 5022 (do_once): Return void, not (unused) int. 5023 (do_ident, do_pragma, do_sccs): Accept extra arguments so that 5024 all directive-handler's types match. 5025 (do_sccs): Define only if SCCS_DIRECTIVE is defined. 5026 (skip_if_group, dump_single_macro): Add `default: break;' to 5027 keep -Wswitch happy. 5028 (error, warning, error_with_line, vwarning_with_line, pedwarn): Use 5029 stdarg/vararg/vfprintf instead of passing bogus char * args around. 5030 (pedwarn_with_line, pedwarn_with_file_and_line, fatal): Likewise. 5031 (verror, vwarning, verror_with_line, vwarning_with_line): New fcns. 5032 (dump_single_macro): Abort if ap points to garbage. 5033 (make_definition, make_undef, make_assertion): Parameter now char *. 5034 (xmalloc, xrealloc, xcalloc, savestring, index0): Make sizes size_t 5035 instead of unsigned; make pointer parameters GENERICPTR, not char *. 5036 (xcalloc): Use bzero to clear memory instead of using own loop. 5037 5038Fri Mar 31 08:33:07 1995 Ken Raeburn (raeburn@wombat.gnu.ai.mit.edu) 5039 5040 * longlong.h (umul_ppmm mc68000): Use %# instead of #. 5041 5042Fri Mar 31 06:37:54 1995 Michael Meissner (meissner@cygnus.com) 5043 5044 * stor-layout.c (layout_decl): Implment -fpack-struct. 5045 (layout_record): Ditto. 5046 5047 * flags.h (flag_pack_struct): New flag variable. 5048 5049 * toplev.c (flag_pack_struct): New flag variable. 5050 (f_options): Add -fpack-struct support. 5051 5052 * Makefile.in (stor-layout.o): Add flags.h dependency. 5053 5054Fri Mar 31 08:40:16 1995 Douglas Rupp (drupp@cs.washington.edu) 5055 5056 * configure (i[345]86-*-winnt3*): Add tmake_file. 5057 * i386/x-winnt (winnt.o): Deleted. 5058 * i386/t-winnt: New file. 5059 5060Fri Mar 31 07:26:37 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5061 5062 * m68k/netbsd.h, m68k/hp3bsd44.h: Remove #include of machine/ansi.h. 5063 5064 * configure (a29k-*-bsd): Set tmake_file to t-libc-ok. 5065 5066 * stmt.c (expand_asm_operands): Properly handle output that can't 5067 be directly written into. 5068 5069 * c-parse.in (structsp): Correct error in last change. 5070 * c-common.c (init_attributes): A_FORMAT is only for decls. 5071 5072Thu Mar 30 18:27:34 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5073 5074 * libgcc2.c: Remove explicit 0-initializations of static variables. 5075 5076Thu Mar 30 18:22:39 1995 Fergus Henderson <fjh@cs.mu.oz.au> 5077 5078 * c-typeck.c (internal_build_compound_expr): Warn if LHS of comma 5079 expression has no side effects, or computes value which is not used. 5080 * stmt.c (make warn_if_unused_value): No longer static. 5081 * tree.h (warn_if_unused_value): Add declaration. 5082 5083Thu Mar 30 18:15:11 1995 Jim Wilson <wilson@cygnus.com> 5084 5085 * combine.c (get_last_value): Revert back to use prev_nonnote_insn 5086 instead of prev_real_insn. Modify test that ignores USE insns. 5087 5088 * rs6000.h (SELECT_SECTION): Apply constant DECL_INITIAL test 5089 only to DECLs. 5090 5091 * explow.c (allocate_dynamic_stack_space): Test STACK_BOUNDARY against 5092 BIGGEST_ALIGNMENT at run time instead of at compile time. 5093 Give MUST_ALIGN macro a value, and test this value in if statements. 5094 5095Thu Mar 30 08:59:56 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5096 5097 * c-parse.in: Now have 27 shift/reduce conflicts. 5098 (attribute_list): Just make chain of all attributes. 5099 (attrib): Consistently put name as PURPOSE, args, if any, as VALUE. 5100 (structsp): Allow attributes on any struct or union. 5101 * c-common.c (enum attrs): New enum class. 5102 (attrtab, attrtab_idx): New variables. 5103 (add_attribute, init_attributes): New functions. 5104 (decl_attributes): Major rewrite. 5105 * tree.c (valid_machine_attribute): Now receive name and args. 5106 5107Thu Mar 30 07:20:14 1995 Paul Eggert <eggert@twinsun.com> 5108 5109 * protoize.c: Use the phrase `preprocessing directive' consistently. 5110 * cccp.c (handle_directive, do_line, skip_if_group): Likewise. 5111 (output_line_directive): Renamed from output_line_command. 5112 (no_line_directives): Renamed from no_line_commands. 5113 5114 * cccp.c (rescan): Don't recognize preprocessing directives 5115 within macro args. Warn if one is found. 5116 5117Thu Mar 30 06:20:36 1995 H.J. Lu (hjl@nynexst.com) 5118 5119 * configure (i[345]86-*-linux*): Set xmake_file=x-linux, 5120 tm_file=i386/linux.h, and don't set extra_parts. 5121 (i[345]86-*-linux*aout*): New configuration. 5122 (i[345]86-*-linuxelf): Deleted. 5123 * config/linux{,-aout}.h, config/x-linux, config/xm-linux.h: New files. 5124 * config/i386/linux-aout.h: New file. 5125 * config/i386/linux.h: Extensive modifications to use ELF format 5126 as default. 5127 (LIB_SPEC): Don't use libc_p.a for -p. don't use libg.a 5128 unless for -ggdb. 5129 (LINUX_DEFAULT_ELF): Defined. 5130 * config/i386/linuxelf.h,config/i386/x-linux: Files deleted. 5131 * config/i386/xm-linux.h: Just include xm-i386.h and xm-linux.h. 5132 5133Wed Mar 29 19:09:36 1995 Mike Stump <mrs@cygnus.com> 5134 5135 * libgcc2.c (__throw_type_match): Update to use new calling convention. 5136 5137Wed Mar 29 14:53:23 1995 Jim Wilson <wilson@cygnus.com> 5138 5139 * gcc.c (process_command): Delete code modifying gcc_exec_prefix. 5140 (main): Put it here after last use of gcc_exec_prefix. For cross 5141 compiler, set startfile_prefixes if gcc_exec_prefix is set and 5142 standard_startfile_prefix is a relative path. 5143 5144 * combine.c (make_compound_operation, AND case): Undo July 7, 1994 5145 change. 5146 5147 * mips/mips.md (call_internal1, call_value_internal1): Move %* from 5148 start of assembler output to immediately before the jal. 5149 5150 * mips/mips.c (function_prologue): Put SDB_DEBUGGING_INFO ifdef around 5151 code for SDB_DEBUG support. 5152 (mips_select_rtx_section, mips_select_section): Change rdata_section 5153 to READONLY_DATA_SECTION and sdata_section to SMALL_DATA_SECTION. 5154 * mips/mips.h (SMALL_DATA_SECTION): Define. 5155 5156 * reorg.c (mark_referenced_resources): Make setjmp use all registers. 5157 5158 * flow.c (mark_used_regs, case SUBREG): Only fall through to REG case 5159 if operand is a REG. 5160 5161 * i960/i960.h (TARGET_SWITCHES): Make -mold-align set 5162 TARGET_FLAG_STRICT_ALIGN. 5163 (STRICT_ALIGNMENT): Test TARGET_STRICT_ALIGN. 5164 5165 * sh/sh.c (andcosts): Modify costs to match the hardware, and add 5166 explanatory comments. 5167 5168 * sparc/sol2.h (CPP_PREDEFINES): Add -D__SVR4. 5169 5170Wed Mar 29 14:30:30 1995 Michael Meissner <meissner@cygnus.com> 5171 5172 * rs6000/rs6000.md (movsf): When moving to/from integer registers, 5173 don't move floating point to memory if it is being simulated with 5174 -msoft-float. 5175 5176Wed Mar 29 06:47:36 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5177 5178 * c-parse.in (initdcl): Only call decl_attributes once. 5179 * c-common.c (decl_attributes): Clean up test for __mode__. 5180 5181Tue Mar 28 08:34:37 1995 John Hassey (hassey@dg-rtp.dg.com) 5182 5183 * i386.md (adddi3): Don't treat two non-equal MEMs as non-aliasing. 5184 5185Tue Mar 28 08:20:49 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5186 5187 * a29k.h (CONSTANT_ADDRESS_P): Provide consistent definition. 5188 5189Tue Mar 28 07:26:41 1995 Paul Eggert <eggert@twinsun.com> 5190 5191 * cccp.c (do_xifdef, do_endif): Remove unnecessary pointer comparisons. 5192 5193Mon Mar 27 20:45:15 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5194 5195 * calls.c (expand_call, store_one_arg): Don't set KEEP in calls 5196 to assign_stack_temp. 5197 * function.c (preserve_temp_slots): Clear ADDR_TAKEN on item 5198 that we are preserving. 5199 5200Mon Mar 27 14:39:35 1995 Ian Lance Taylor <ian@cygnus.com> 5201 5202 * mips/mips.h (FIRST_PSEUDO_REGISTER): Increment. 5203 (FIXED_REGISTERS, CALL_USED_REGISTERS): Add new register. 5204 (MD_REG_LAST): Increment. 5205 (ST_REG_FIRST, ST_REG_LAST): Increment. 5206 (HILO_REGNUM): Define. 5207 (enum reg_class): Add HILO_REG. 5208 (REG_CLASS_NAMES): Add "HILO_REG". 5209 (REG_CLASS_CONTENTS): Add HILO_REG initializer, and adjust ST_REGS 5210 and ALL_REGS initializers. 5211 (SECONDARY_RELOAD_CLASS): Remove. 5212 (SECONDARY_INPUT_RELOAD_CLASS): Define. 5213 (SECONDARY_OUTPUT_RELOAD_CLASS): Define. 5214 (REGISTER_MOVE_COST): Treat HILO_REG as MD_REGS. 5215 (REGISTER_NAMES): Add initialization line. 5216 (DEBUG_REGISTER_NAMES): Add "accum". 5217 * mips/mips.md: For each instruction which sets HI or LO, clobber 5218 HILO_REGNUM with (clobber (match_scratch:MODE N "=a")). Change 5219 each explicit reference to register 66 to register 67. 5220 (mulsidi3): Change to define_expand. 5221 (mulsidi3_internal): New name of old mulsidi3. 5222 (mulsidi3_64bit): New insn. 5223 (umulsidi3): Change to define_expand. 5224 (umulsidi3_internal): New name of old umulsidi3. 5225 (umulsidi3_64bit): New insn. 5226 (madddi_64bit, umaddi_64bit): New insns. 5227 (movdi_internal2): Add case for setting HILO_REG to zero. 5228 (reload_indi, reload_outdi): New define_expands. 5229 (movsi_internal1, movsi_internal2): Add cases for setting MD_REGS 5230 to zero, and for setting a general reg to HILO_REG. 5231 (reload_outsi): New define_expand. 5232 * mips/mips.c (mips_reg_names): Add "accum". 5233 (mips_sw_reg_names): Likewise. 5234 (mips_regno_to_class): Map HILO_REGNUM to HILO_REG. 5235 (mips_move_1word): Handle moving HILO_REGNUM to a general 5236 register. Make sure that the normal MD_REG cases aren't used for 5237 HILO_REGNUM. Handle moving zero to a MD_REG. 5238 (mips_move_2words): Make sure that the normal MD_REG cases aren't 5239 used for HILO_REGNUM. Handle moving zero to a MD_REG. 5240 (override_options): Set mips_char_to_class for 'a' and 'b'. 5241 (mips_secondary_reload_class): Add in_p argument. Handle 5242 HILO_REGNUM. 5243 5244Mon Mar 27 07:16:05 1995 Warner Losh <imp@village.org> 5245 5246 * gcc.c: Removed __NetBSD__ from conditional. 5247 Declare strerror if HAVE_STRERROR is defined; otherwise 5248 declare sys_errlist and sys_nerr. 5249 (my_strerror): New function. 5250 5251Fri Mar 24 18:08:14 1995 Jason Merrill <jason@python.cygnus.com> 5252 5253 * i386/linux.h (LIB_SPEC): Don't try to link with libraries we 5254 know only exist in archive form unless -static. 5255 5256Fri Mar 24 16:12:16 1995 Doug Evans <dje@cygnus.com> 5257 5258 * Makefile.in (multilib.h): Depend on Makefile, not config.status. 5259 5260Fri Mar 24 15:01:17 1995 Michael Meissner <meissner@cygnus.com> 5261 5262 * rs6000/rs6000.h (TARGET_MULTIPLE_SET): New target_flags bit that 5263 indicates -mmultiple or -mno-multiple was explicitly passed by the 5264 user, and not set as part of the cpu defaults. 5265 (TARGET_SWITCHES): Set TARGET_MULTIPLE_SET bit for both -mmultiple 5266 and -mno-multiple. 5267 5268 * rs6000/rs6000.c (rs6000_override_options): If -mmultiple or 5269 -mno-multiple was explicitly used, don't override the setting with 5270 the processor default. 5271 5272Wed Mar 22 21:42:13 1995 Doug Evans <dje@cygnus.com> 5273 5274 * i960/i960.c (i960_function_arg_advance): Ensure all regs marked 5275 as used if stack is also used (for va_start). 5276 (i960_setup_incoming_varargs): Rewrite to be similar to Intel's 5277 version, but don't allocate reg block unless necessary. 5278 * ginclude/va-i960.h (varargs va_start): Save g14 explicitly. 5279 Account for arguments preceding va_alist. 5280 5281Wed Mar 22 13:24:55 1995 Torbjorn Granlund <tege@adder.cygnus.com> 5282 5283 * pa.c (singlemove_string): Handle SFmode constants again. Simplify. 5284 (zdepi_cint_p): Make some variables HOST_WIDE_INT. 5285 (lhs_lshift_cint_operand): Likewise. 5286 (output_and): Likewise. 5287 (output_ior): Likewise. 5288 5289Wed Mar 22 12:40:09 1995 Jim Wilson <wilson@chestnut.cygnus.com> 5290 5291 * sh.md (udivsi3): Don't clobber register 6. 5292 (udivsi3, divsi3, mulsi3_call): Use a pseudo-reg with regclass 'z' 5293 for output rather than hard register 0. 5294 (block_move_real): Don't clobber registers 4 and 5. 5295 5296 * mips.c (mips_select_section): Apply constant DEC_INITIAL tests 5297 only to VAR_DECLs. 5298 5299Wed Mar 22 03:53:17 1995 Richard Stallman <rms@mole.gnu.ai.mit.edu> 5300 5301 * config.sub (rm400, rm600): New machine names. 5302 (sinix5.*, sinix): New os aliases. 5303 (mips-siemens): Default os to sysv4. 5304 5305Mon Mar 20 21:56:47 1995 Per Bothner <bothner@kalessin.cygnus.com> 5306 5307 Merged Paul Eggert's patch to cccp.c of Wed Mar 8 18:21:51 1995: 5308 * cpplib.c (do_include): Fix type typo: pcfbuflimit is char *, not int. 5309 5310 Merged Doug Evans' patch to cccp.c of Mon Feb 27 17:06:47 1995: 5311 * cpplib.c (do_include): Check for redundant file before opening in 5312 relative path case. Don't call fstat unnecessarily. 5313 5314 Merged J.T. Conklin's patch to cccp.c of Wed Feb 22 20:29:31 1995: 5315 * cpperror.c: Removed __NetBSD__ from conditional. 5316 5317 Merged Kenner's patch to cccp.c & cexp.y of Tue Sep 20 17:49:47 1994: 5318 * cppexp.c (struct operation): Make value by HOST_WIDE_INT. 5319 (cpp_parse_expr): Change return type to HOST_WIDE_INT. 5320 * cpplib (eval_if_expr): Likewise. 5321 (do_if, do_elif): Update appropriately. 5322 * cpplib.h (cpp_parse_expr): Removed, to avoid defining HOST_WIDE_INT. 5323 5324 Merged Paul Eggert's patch to cccp.c of Mon Aug 8 19:42:09 1994: 5325 * cpplib.c (create_definition): Warn about `#define a@', since a 5326 diagnostic is now required (see ISO TC1's addition to subclause 6.8). 5327 Also warn about `#define is-empty(x) (!x)'. 5328 5329Tue Mar 21 00:10:50 1995 Jeffrey A. Law <law@mole.gnu.ai.mit.edu> 5330 5331 * x-pa (CC): Add "-Dbsd4_4". 5332 5333Mon Mar 20 18:40:31 1995 Per Bothner <bothner@kalessin.cygnus.com> 5334 5335 * toplev.c (print_error_function): New function hook. 5336 (default_print_error_function): New function. Default value 5337 of print_error_function. Code moved here from report_error_function. 5338 (report_error_function): Use print_error_function hook. 5339 5340Mon Mar 20 20:27:43 1995 Doug Evans <dje@cygnus.com> 5341 5342 * cccp.c (do_xifdef): Handle c++ comments. 5343 (do_endif): Likewise. 5344 5345Mon Mar 20 15:31:45 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5346 5347 * configure (i386 configurations): Prepend i386/ to t-crt*. 5348 5349Mon Mar 20 07:58:04 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5350 5351 * stmt.c (fixup_gotos): Add missing call from last change. 5352 5353 * objc/misc.c: Put Alpha-specific decls before #include of runtime.h. 5354 5355 * alpha.h (EXTRA_SECTIONS): Write zeros first time in .rdata. 5356 5357Sat Mar 18 16:37:24 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5358 5359 * flow.c (mark_used_regs, case SUBREG): Set reg_changes_size even 5360 for integer modes. 5361 (mark_used_regs): Set reg_changes_size for RHS, if necessary. 5362 * combine.c (gen_lowpart_for_combine): Set reg_changes_size, if needed. 5363 * reload.c (push_reload): Reload a SUBREG if paradoxical and 5364 class is CLASS_CANNOT_CHANGE_SIZE. 5365 * reload1.c (gen_reload): Handle paradoxical SUBREGs. 5366 * alpha.h (SECONDARY_{INPUT,OUTPUT}_RELOAD_CLASS): Need GENERAL_REGS 5367 for paradoxical SUBREG and FLOAT_REGS. 5368 (SECONDARY_NEEDED_MODE): Use actual mode for 4 bytes or wider. 5369 * alpha.md (movsi): Allow FP regs and add case for store of FP reg. 5370 Remove cvtlq from MEM to FP reg case. 5371 5372 * rtl.h (emit_insns_after): Add declaration. 5373 * stmt.c (fixup_gotos): Do a cleanup for a block when it is exited 5374 even if label if not defined yet. 5375 5376 * function.c (pop_function_context): Fix error in last change; 5377 reference old value of current_function_decl before we modify it. 5378 5379Fri Mar 17 21:57:44 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5380 5381 * toplev.c (rest_of_compilation): Handle -Wreturn-type properly 5382 for inlines we aren't compiling yet. 5383 5384Fri Mar 17 21:26:48 1995 Mike Stump <mrs@cygnus.com> 5385 5386 * libgcc2.c (__register_exceptions): Handle empty tables. 5387 5388Fri Mar 17 11:48:31 1995 Douglas Rupp (drupp@cs.washington.edu) 5389 5390 * i386/winnt.c (winnt_function_prologue): Deleted. 5391 (gen_stdcall_suffix): New function. 5392 5393Thu Mar 16 17:36:52 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5394 5395 * svr4.h (LINK_SPEC): If the user did not specify -h name, use the 5396 output file name, if any. 5397 * sparc/sol2.h (LINK_SPEC): Ditto. Also, if the user did not 5398 specify -R path, add an -R for each -L. 5399 5400 Move SunOS 4-specific assembler switches into the appropriate place. 5401 * m68k/sun[23].h (ASM_SPEC): Add %{R} %{j} %{J} %{h} %{d2} 5402 %{keep-local-as-symbols:-L}. 5403 * i386/sun.h (ASM_SPEC): Add %{R} %{keep-local-as-symbols:-L}. 5404 * sparc/sparc.h (ASM_SPEC): Ditto. 5405 * gcc.c (default_compilers): Remove %{R} %{j} %{J} %{h} %{d2} 5406 %{keep-local-as-symbols:-L} from assembler rules. 5407 5408Thu Mar 16 16:58:09 1995 Michael Meissner <meissner@cygnus.com> 5409 5410 * rs6000/eabi-ctors.c: New file, handle C++ static constructors 5411 and destructors without requiring anything else from a libc. 5412 5413 * rs6000/t-eabi (LIB2FUNCS_EXTRA): Build eabi-ctors.c. 5414 5415 * rs6000/eabi.asm: Do not load up register 2 if there is no .got 5416 section. Jump to the __do_global_ctors function at the end of 5417 processing to call C++ static constructors, and it will return to 5418 __eabi's caller. Use normal volatile registers, instead of saving 5419 and restoring registers 30 and 31. 5420 5421 * rs6000/eabi.h (STARTFILE_SPEC): Define as null. 5422 (LIB_SPEC): Ditto. 5423 (ENDFILE_SPEC): Ditto. 5424 (LIBGCC_SPEC): Always look for libgcc.a. 5425 5426Thu Mar 16 17:05:14 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 5427 5428 * stmt.c (warn_if_unused_value, case SAVE_EXPR): New case. 5429 (warn_if_unused_value, case NOP_EXPR): OK if CALL_EXPR inside. 5430 5431 * c-common.c (decl_attributes): Allow alignment for TYPE_DECLs. 5432 5433 * Makefile.in (xsys-protos.h): Fix typo in -U operand. 5434 5435Thu Mar 16 13:49:10 1995 Per Bothner <bothner@rtl.cygnus.com> 5436 5437 * cpplib.c, cpplib.h: New files - a C PreProcessor library. 5438 * cpphash.c, cpphash.h, cppalloc.c, cpperror.c, cppexp.c: 5439 New files - utility features used by cpplib. 5440 * cppmain.c: New file - cpp replacement main program for cpplib. 5441 * Makefile.in: New rules to build cppmain. 5442 5443Thu Mar 16 16:11:05 1995 Douglas Rupp (drupp@cs.washington.edu) 5444 5445 * i386/winnt.h (FUNCTION_PROLOGUE, HAVE_probe, gen_probe): Deleted. 5446 (ENCODE_SECTION_INFO, VALID_MACHINE_DECL_ATTRIBUTE): New macro. 5447 5448Thu Mar 16 15:58:24 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5449 5450 * combine.c (apply_distributive_law, case SUBREG): Fix typo when 5451 checking for paradoxical SUBREG. 5452 5453Wed Mar 15 18:45:08 1995 Doug Evans <dje@cygnus.com> 5454 5455 * libgcc1-test.c: Renamed from cross-test.c. 5456 * Makefile.in (LIBGCC1_TEST): Renamed from CROSS_TEST. 5457 (all.cross): Delete $(ENQUIRE) dependency. 5458 (libgcc1-test): Renamed from cross-test. 5459 Delete unnecessary gcc-cross and $(LIBGCC) dependencies. 5460 Link with -nostartfiles -nostdlib 5461 `$(GCC_FOR_TARGET) --print-libgcc-file-name`. 5462 (libgcc1-test.o): Renamed from cross-test.o. 5463 Change gcc-cross dependency to xgcc since the latter is used. 5464 5465Wed Mar 15 13:49:21 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5466 5467 * tree.c (save_tree_status): Now takes a tree 'context' instead of 5468 a boolean 'toplevel' as an argument. If 'context' is not 5469 current_function_decl, create a new obstack for the new function. 5470 Also save inline_obstacks. 5471 (restore_tree_status): No longer takes a second argument. Also 5472 restore inline_obstacks. 5473 (temporary_allocation): Clear inline_obstacks. 5474 (permanent_allocation): Free up the obstacks in inline_obstacks. 5475 5476 * function.h (struct function): New fields contains_functions and 5477 inline_obstacks. 5478 5479 * function.c (push_function_context_to): Now takes a tree 5480 'context' instead of a boolean 'toplevel' as an argument. 5481 Also save current_function_contains_functions. 5482 (push_function_context): Pass current_function_decl to it. 5483 (pop_function_context_from): Takes 'context' instead of 'toplevel'. 5484 Set current_function_contains_functions properly. 5485 (pop_function_context): Pass current_function_decl to it. 5486 5487Wed Mar 15 14:53:09 1995 Michael Meissner <meissner@cygnus.com> 5488 5489 * rs6000/rs6000.md (abssi2): Turn into a define_expand. If 5490 TARGET_POWER, do old code that uses the abs instruction. If not, 5491 do abs in three instructions, using a temporary register, which 5492 enables generating more reasonable code for sne. Add a recognizer 5493 for negative of the absolute value. Add define_splits for the 5494 PowerPC. 5495 (sne insn): Add a recognizer for sne on the PowerPc to use two 5496 instructions, compared to the four generated using the absolute 5497 value insn. 5498 5499Tue Mar 14 18:38:40 1995 J.T. Conklin <jtc@cygnus.com> 5500 5501 * m68k.md ({add,sub,mul,div}[sdx]f3): Add new patterns for recognizing 5502 SImode, HImode, and QImode operands. 5503 5504Mon Mar 13 18:59:36 EST 1995 David Edelsohn <edelsohn@mhpcc.edu> 5505 5506 * rs6000.h (CPP_SPEC): Add PPC403. 5507 (processor_type): Add PPC403. 5508 (RTX_COSTS): Add PPC403. 5509 * powerpc.h (CPP_SPEC): Add PPC403. 5510 * sysv4.h (CPP_SPEC): Add PPC403. 5511 * rs6000.c (processor_target_table): Add PPC403. 5512 * rs6000.md (define_attr cpu and function units): Add PPC403. 5513 5514Mon Mar 13 14:40:23 1995 Michael Meissner <meissner@cygnus.com> 5515 5516 * rs6000/rs6000.md (call, call_value insns): Do not put a nop 5517 after a bl instruction on System V.4 and eABI. 5518 5519 * rs6000/sysv.4 (SUBTARGET_SWITCHES): Add support for 5520 -mno-traceback to suppress the V.4 traceback word. 5521 (ASM_DECLARE_FUNCTION_NAME): Don't put out a traceback work if 5522 -mno-traceback. 5523 5524Mon Mar 13 13:36:37 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5525 5526 * t-svr4, i386/t-{crtpic,sol2}, m88k/t-svr4, sparc/t-sol2: 5527 Use -fPIC, rather than -fpic, for building crtstuff. 5528 5529Sat Mar 11 17:27:08 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5530 5531 * configure: Use aix3newas.h for AIX 3.2.4 and 5. 5532 * rs6000/aix41.h: Undefine ASM_OUTPUT_EXTERNAL{,_LIBCALL}. 5533 * rs6000/aix3newas.h: New file. Define ASM_SPEC to -u, and 5534 undefine ASM_OUTPUT_EXTERNAL{,_LIBCALL}. 5535 5536Sat Mar 11 06:42:50 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5537 5538 * dbxout.c (dbxout_symbol): Properly handle decl whose DECL_NAME 5539 points to a TYPE_DECL with a zero TYPE_NAME. 5540 5541Fri Mar 10 18:18:33 1995 Torbjorn Granlund <tege@cygnus.com> 5542 5543 * pa.h (PROMOTE_MODE): Define. 5544 5545Fri Mar 10 14:37:58 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5546 5547 * sdbout.c (sdbout_record_type_name): If TYPE_NAME is 5548 a TYPE_DECL, get name from DECL_NAME. 5549 5550Fri Mar 10 14:09:26 1995 Doug Evans <dje@cygnus.com> 5551 5552 * arm/riscix.h (SUBTARGET_SWITCHES): Renamed from 5553 ARM_EXTRA_TARGET_SWITCHES. 5554 * arm/riscix1-1.h (SUBTARGET_SWITCHES): Likewise. 5555 * arm.h (SUBTARGET_SWITCHES): Likewise. 5556 (TARGET_HARD_FLOAT, TARGET_SOFT_FLOAT): Define. 5557 (TARGET_SWITCHES): Add -msoft-float, -mhard-float. 5558 (BYTES_BIG_ENDIAN): Delete #ifndef/#endif. 5559 (CONDITIONAL_REGISTER_USAGE): If -msoft-float, disable fp regs. 5560 (FUNCTION_VALUE): R16 is return reg only if !-msoft-float. 5561 (LIBCALL_VALUE): Likewise. 5562 * arm.md (all fp patterns): Conditionalize on TARGET_HARD_FLOAT. 5563 (*movsf_soft_insn, *movdf_soft_insn): New patterns. 5564 5565Fri Mar 10 13:53:46 1995 Jim Wilson <wilson@cygnus.com> 5566 5567 * reorg.c (steal_delay_list_from_target): Exit at the top if the 5568 branch in SEQ is not a single set. 5569 5570 * sh.md (movdi define_split, movdf define_split): Correct indentation 5571 and formatting. Make the condition fail if an operand is a MEM 5572 with an auto-inc address. 5573 5574 * varasm.c (copy_constant): Copy operand of ADDR_EXPR if it is a 5575 constant. 5576 5577 * mips/abi64.h (SETUP_INCOMING_VARARGS): Correct arguments to 5578 move_block_from_reg call. 5579 5580 * expr.c (expand_assignment): When offset is zero, make new MEM 5581 before setting MEM_VOLATILE_P. 5582 5583 * reload.c (find_reloads, case 'o'): Accept a fully reloaded 5584 auto-increment address. 5585 5586 * combine.c (max_uid_cuid): New static variable. 5587 (INSN_CUID): Call abort if INSN is out of range. 5588 (combine_instructions): Set max_uid_cuid. Set uid_cuid directly 5589 instead of through INSN_CUID. 5590 (get_last_value): Use prev_real_insn instead of prev_nonnote_insn. 5591 Ignore USE insns generated by combine. 5592 5593Fri Mar 10 13:47:08 1995 Rod Barman <rodb@cs.ubc.ca> 5594 5595 * m68k/fpgnulib.c (__fixdfsi): Catch values < 0.5 in magnitude. 5596 5597Fri Mar 10 12:02:33 1995 Ian Lance Taylor <ian@cygnus.com> 5598 5599 * fixincludes: Fix `typedef struct term;' on hppa1.1-hp-hpux9. 5600 5601Fri Mar 10 05:50:11 1995 Oliver Kellogg (Oliver.Kellogg@RST13.DASA.DBMAIL.d400.de) 5602 5603 * 1750a.c (sectname): Reverse Init and Normal. 5604 (print_operand_address, case PLUS): Add case for LABEL_REF. 5605 (print_operand_address, case LABEL_REF): Split fom SYMBOL_REF. 5606 (print_operand_address, case CODE_LABEL): New case. 5607 (ASM_FILE_END): Delete. 5608 * 1750a.h (FUNCTION_EPILOGUE): Restore stack before freeing local vars. 5609 (DEFAULT_SIGNED_CHAR): Now 1. 5610 (DATA_SECTION_ASM_OP): Use pseudo-op for read-only data (later copied). 5611 (JUMP_TABLES_IN_TEXT_SECTION): Define. 5612 (ASM_OUTPUT_ASCII): Split into multiple lines if long. 5613 (ASM_OUTPUT_{CHAR,SHORT,INT,LONG_INT}): Split up. 5614 (ASM_OUTPUT_COMMON): Call check_section. 5615 5616Thu Mar 9 12:46:53 1995 Michael Meissner <meissner@cygnus.com> 5617 5618 * rs6000.md (movsf): Do not call truncdfsf2 for non PowerPC 5619 when expanding a store to memory and -msoft-float was used. 5620 5621Thu Mar 9 08:51:35 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5622 5623 * c-decl.c (start_function): Handle new parameter ATTRIBUTES. 5624 * c-tree.h (start_function): Add new parameter. 5625 * c-lang.c (finish_file): Pass new parm to start_function. 5626 * objc-act.c (build_module_descriptor, really_start_method): Likewise. 5627 * c-parse.in (fndef, nested_function): Pass prefix_attributes 5628 to start_function. 5629 (setspecs): Save prefix_attributes in declspec_stack. 5630 (decl rules): Restore prefix_attributes along with current_declspecs. 5631 (setattrs): Concatenate prefix_attributes to previous value. 5632 * c-common.c (decl_attributes): Handle prefix and suffix attributes 5633 the same way. 5634 5635 * print-tree.c (print_node): Fix typo in printing large INTEGER_CST. 5636 5637 * varasm.c (assemble_variable): Consistently use DECL_SIZE for 5638 everything. 5639 5640 * c-typeck.c (convert_for_assignment): Fix typo in testing for 5641 pointer to function type. 5642 5643 * varasm.c (record_constant_1): Handle NON_LVALUE_EXPR. 5644 Rewrite to use switch instead of if/then/elseif/else. 5645 5646Wed Mar 8 18:21:51 1995 Paul Eggert <eggert@twinsun.com> 5647 5648 * cccp.c (do_include): Fix type typo: pcfbuflimit is char *, not int. 5649 5650Wed Mar 8 17:30:29 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5651 5652 * fold-const.c (force_fit_type): Always propagate OVERFLOW. 5653 5654 * rtl.def (INLINE_HEADER): Add new "e" field. 5655 * rtl.h (FORCED_LABELS): New field; other fields adjusted. 5656 (gen_inline_header_rtx): New parm FORCED_LABELS. 5657 * emit-rtl.c (gen_inline_header): Add new parm FORCED_LABELS. 5658 * integrate.c (initialize_for_inline, output_inline_function): 5659 Handle FORCED_LABELS. 5660 5661Wed Mar 8 13:47:20 1995 Jason Merrill (jason@cygnus.com) 5662 5663 * alpha.h (WORD_SWITCH_TAKES_ARG): Add -rpath. 5664 (LINK_SPEC): Pass through -taso and -rpath. 5665 * alpha/osf12.h (LINK_SPEC): Ditto. 5666 5667Wed Mar 8 09:59:56 1995 Michael Meissner <meissner@cygnus.com> 5668 5669 * rs6000/eabi.asm: Rewrite so that the initialized pointers go 5670 into the .got2 section, which allows eabi.asm to be assembled with 5671 the -mrelocatable option. Move the data picked up from the bl 5672 instruction to before the traceback tag. 5673 5674 * rs6000/sysv4.h (CPP_SPEC): Define _RELOCATABLE if -mrelocatable 5675 switch is used. 5676 5677 * libgcc2.c (__new_handler): Don't initialize the pointer variable 5678 with the address of __default_new_handler, which may not work in 5679 some shared library mechanisms. 5680 (__builtin_new): If __new_handler is NULL, call the function 5681 __default_new_handler. 5682 5683Tue Mar 7 17:34:59 1995 Ian Lance Taylor <ian@cygnus.com> 5684 5685 * i960.h (PROCESS_PRAGMA): Define. 5686 (ROUND_TYPE_ALIGN): Pass maximum of COMPUTED and SPECIFIED to 5687 i960_round_align. 5688 (ROUND_TYPE_SIZE): Delete. 5689 * i960.c (process_pragma): Uncomment, and rewrite for gcc 2. 5690 (i960_round_size): Delete. 5691 (i960_round_align): Don't adjust suggested alignment downward. 5692 Restrict alignment to value set by #pragma align. 5693 5694Tue Mar 7 12:14:46 1995 Doug Evans <dje@cygnus.com> 5695 5696 * configure (sparc64-*-elf): Add crtbegin.o, crtend.o to extra_parts. 5697 * sparc/sp64-elf.h (TARGET_VERSION): Define. 5698 (CPP_PREDEFINES): Delete sun, sparc, unix. Delete OS assertions. 5699 (ASM_SPEC): Define. 5700 (LINK_SPEC): Delete solaris stuff, this is an embedded target. 5701 (STARTFILE_SPEC, ENDFILE_SPEC): Define. 5702 5703Mon Mar 6 17:54:01 1995 Doug Evans <dje@cygnus.com> 5704 5705 * Makefile.in (install-common): Fix typo in installation of cpp. 5706 Likewise with gcc-cross. 5707 5708Mon Mar 6 02:29:05 1995 Jeffrey A. Law <law@mole.gnu.ai.mit.edu> 5709 5710 * pa.md (movsicc): New expander. 5711 5712Fri Mar 3 13:34:20 1995 Michael Meissner (meissner@cygnus.com) 5713 5714 * rs6000/sysv4.h (ASM_SPEC): If -mrelocatable was passed to 5715 compiler, pass it on to the assembler. 5716 5717Fri Mar 3 12:11:28 1995 Ian Lance Taylor <ian@cygnus.com> 5718 5719 * fixincludes: Add fixes for VxWorks header files. 5720 * ginclude/stddef.h: If VxWorks typedef macros are defined, invoke 5721 them as appropriate. 5722 5723Fri Mar 3 05:48:54 1995 Paul Eggert <eggert@twinsun.com> 5724 5725 * cccp.c (dump_single_macro): Fix typo: % wasn't properly 5726 doubled in printf formats. 5727 5728Thu Mar 2 19:44:02 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5729 5730 * expr.c (expand_expr, CLEANUP_POINT_EXPR): Force the operand out 5731 of memory before running cleanups. 5732 5733Thu Mar 2 19:15:24 1995 Paul Eggert <eggert@twinsun.com> 5734 5735 * cccp.c (rescan): Prevent accidental token-pasting to 5736 get !=, *=, /=, ==, or ^=. 5737 5738Thu Mar 2 15:37:13 1995 Jason Merrill <jason@phydeaux.cygnus.com> 5739 5740 * c-typeck.c (build_binary_op): Avoid spurious warning 5741 comparing enumerator to unsigned variable. 5742 5743Thu Mar 2 18:18:38 1995 J.T. Conklin <jtc@netbsd.org> 5744 5745 * m68k.md (sqrtsf2,sqrtdf2): Use fp precision specifiers. 5746 5747Thu Mar 2 18:09:01 1995 Stephen L Moshier (moshier@world.std.com) 5748 5749 * c-lex.c (yylex, case !NOT_FLOAT): Remove previous change. 5750 5751Thu Mar 2 15:26:50 1995 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 5752 5753 * Makefile.in (bootstrap*): Pass new STAGE_PREFIX to recursive makes. 5754 5755Wed Mar 1 14:52:16 1995 Ian Lance Taylor <ian@cygnus.com> 5756 5757 * i960/i960-coff.h (ASM_FILE_START): Define. 5758 (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Define. 5759 (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Define. 5760 (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Define. 5761 (INT_ASM_OP): Define. 5762 (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Define. 5763 * i960/vx960-coff.h (CPP_PREDEFINES): Define. 5764 (CPP_SPEC): Define. 5765 (CC1_SPEC): Default to -mca. 5766 5767Wed Mar 1 11:10:54 1995 Michael Meissner (meissner@cygnus.com) 5768 5769 * rs6000/rs6000.c (output_prologue): Do not emit the word that 5770 gives the PC relative location to the local GOT table for the 5771 -mrelocatable option here. 5772 * rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Emit it here. 5773 5774 * t-eabi (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Build -msoft-float 5775 and -mrelocatable versions of the library. 5776 5777 * rs6000/powerpc.h (CPP_PREDEFINES): Define the cpu and machine as 5778 powerpc, not rs6000. 5779 5780 * libgcc2.c (_unwind_function): Clone for powerpc, using the 5781 PowerPC mnemonics. 5782 5783 * rs6000/rs6000.md (uminsi3, umaxsi3): Silence warnings that 5784 -2147483648 is too large to fit in a signed integer on 32-bit 5785 hosts. 5786 5787Wed Mar 1 06:48:31 1995 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> 5788 5789 * fold-const.c (decode_field_reference): Don't check TREE_CODE 5790 of EXP; let get_inner_reference decide if have reference. 5791 Allow no bit reference if have AND_MASK. 5792 (all_ones_mask_p): Use tree_int_cst_equal, not operand_equal_p. 5793 (unextend): New function. 5794 (fold_truthop): For constant cases, use new function, rework 5795 conversion, and warn if comparison can never be true. 5796 5797 * expr.c (store_expr): Do conversion in two steps for promoted lhs. 5798 5799See ChangeLog.9 for earlier changes. 5800