|
|
1.1.1.21! root 1: Thu Aug 27 04:20:43 1992 Richard Stallman ([email protected]) ! 2: ! 3: * version 1.41 released. ! 4: ! 5: Mon Aug 24 00:20:27 1992 Richard Stallman ([email protected]) ! 6: ! 7: * sparc.md (floatsisf2, floatsidf2): Make two alternatives; ! 8: put r for op1 in first, and fm in second. ! 9: ! 10: * cse.c (fold_rtx): Don't make a constant that's a sum of two symbols. ! 11: ! 12: Sun Aug 23 02:45:28 1992 Richard Stallman ([email protected]) ! 13: ! 14: * cccp.c (handle_directive): When copying directive, copy the char ! 15: after a \ without otherwise handling it. ! 16: ! 17: * c-typeck.c (build_binary_op_nodefault): Don't shorten signed divide. ! 18: ! 19: Tue Aug 11 10:41:54 1992 Michael Meissner ([email protected]) ! 20: ! 21: * config.gcc (mips-*-os5): Add new varients for MIPS computers ! 22: using RISC-OS revision 5.00, to turn off shared libraries by ! 23: default, since the MIPS linker complains about the location of the ! 24: frame pointer that GCC uses when linking against shared libraries. ! 25: ! 26: * tm-mips-5.h (new file): Tm file for MIPS RISC-OS, revision 5.00. ! 27: ! 28: * tm-mips-5b.h (new file): Tm file for MIPS RISC-OS, revision 5.00 ! 29: with the BSD4.3 environment as default. ! 30: ! 31: * tm-mips-5s.h (new file): Tm file for MIPS RISC-OS, revision 5.00 ! 32: with the System V.3 environment as default. ! 33: ! 34: Mon Jul 20 16:07:12 1992 Pat Rankin ([email protected]) ! 35: ! 36: * tm-vms.h (MAYBE_VMS_FUNCTION_PROLOGUE): change _c$main_args to ! 37: uppercase instead of relying on gas to make the case translation ! 38: ! 39: Mon Jul 20 17:39:25 1992 Pat Rankin ([email protected]) ! 40: ! 41: * tm-vax.h (FUNCTION_PROLOGUE): adjust the stack allocation size by ! 42: STARTING_FRAME_OFFSET (normally 0, so no change in generated code). ! 43: * tm-vms.h (STARTING_FRAME_OFFSET): redefine, to reserve an extra ! 44: longword at top of local stack in case user calls VAXC$ESTABLISH(). ! 45: ! 46: Sun Jul 12 15:29:46 1992 Richard Stallman ([email protected]) ! 47: ! 48: * cse.c (canon_hash): ! 49: Fp and ap regs are not volatile even if SMALL_REGISTER_CLASSES. ! 50: ! 51: Sat Jul 11 16:21:52 1992 Richard Stallman ([email protected]) ! 52: ! 53: * expmed.c (expand_divmod): Don't use non-register target. ! 54: ! 55: Sun Jul 5 13:09:21 1992 Richard Stallman ([email protected]) ! 56: ! 57: * configure: New file. ! 58: ! 59: Mon Jun 29 12:54:07 1992 Richard Stallman ([email protected]) ! 60: ! 61: * toplev.c (main): Accept -O0 (don't optimize). ! 62: ! 63: Tue Jun 23 06:15:47 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) ! 64: ! 65: * stmt.c (expand_return): Add missing emit_queue call in tail ! 66: recursion case. ! 67: ! 68: Wed Jun 10 17:56:57 1992 Richard Stallman ([email protected]) ! 69: ! 70: * c-parse.y (check_newline): After calling yylex, transfer nextchar ! 71: into finput using ungetc. ! 72: ! 73: Sat Jun 6 15:00:22 1992 Richard Stallman ([email protected]) ! 74: ! 75: * toplev.c (main): Accept -O1 and -O2. ! 76: ! 77: Fri May 29 22:10:58 1992 Richard Stallman ([email protected]) ! 78: ! 79: * reload.1 (new_spill_reg): Undo Nov 28 change. ! 80: ! 81: * emit-rtl.c (gen_highpart): Typo sign-extending CONST_INT. ! 82: ! 83: * expr.c (expand_expr): For VAR_DECL inside ARRAY_REF, ! 84: verify that DECL_INITIAL is really a CONSTRUCTOR. ! 85: ! 86: Wed May 27 06:44:42 1992 Richard Stallman ([email protected]) ! 87: ! 88: * dbxout.c (errno): Declare it. ! 89: ! 90: * tm-pyr.h (PCC_BITFIELD_TYPE_MATTERS): Define as 1. ! 91: ! 92: Tue May 26 10:28:19 1992 Michael Meissner ([email protected]) ! 93: ! 94: * loop.c (loop_has_volatile): New static variable to record ! 95: whether the loop has any volatile references in it. ! 96: (prescan_loop): Set loop_has_volatile. ! 97: (check_dbra_loop): Don't reverse loop if there are any volatile ! 98: references in it. ! 99: ! 100: Fri May 22 23:48:04 1992 Richard Stallman ([email protected]) ! 101: ! 102: * cccp.c (finclude): Null-terminate input before trigraph_pcp. ! 103: ! 104: Sun May 17 22:32:22 1992 Richard Stallman ([email protected]) ! 105: ! 106: * rtlanal.c (dead_or_partially_set_p): New function. ! 107: * combine.c (move_deaths): Use that. ! 108: ! 109: Sat Apr 18 17:43:26 1992 Richard Stallman ([email protected]) ! 110: ! 111: * varasm.c (make_decl_rtl): ! 112: Don't warn if local explicit reg var has an initial value. ! 113: ! 114: Sat Apr 18 16:41:01 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) ! 115: ! 116: * tree.c (save_expr): Must do something with read-only tree that ! 117: has side-effects. ! 118: ! 119: Thu Feb 13 02:34:02 1992 Richard Stallman ([email protected]) ! 120: ! 121: * cccp.c (skip_if_group): Skip comments after the #. ! 122: ! 123: * cccp.c (macarg): Don't assume stringify will compress spaces. ! 124: (macroexpand): In stringify, compress space only outside tokens. ! 125: ! 126: Tue Feb 11 16:58:27 1992 Richard Stallman ([email protected]) ! 127: ! 128: * combine.c (subst): Preserve all bits outside the field ! 129: when simplifying (set (zero_extend...) (and (zero_extend...) const)). ! 130: ! 131: Sat Feb 1 01:05:34 1992 Richard Stallman ([email protected]) ! 132: ! 133: * expr.c: Include recog.h just once. ! 134: ! 135: * dbxout.c (dbxout_init): Output current directory in N_SO sym. ! 136: ! 137: Tue Jan 28 00:39:34 1992 Richard Stallman ([email protected]) ! 138: ! 139: * fold-const.c (fold_convert): Properly handle real-to-real case. ! 140: ! 141: * loop.c (can_jump_outside_range_p): New function. ! 142: (loop_can_jump_out_p): New function. ! 143: (check_dbra_loop): Check that. ! 144: ! 145: Mon Jan 27 22:55:19 1992 Richard Stallman ([email protected]) ! 146: ! 147: * cccp.c (main): Add terminating null, then call trigraph_pcp. ! 148: ! 149: Mon Jan 20 00:04:10 1992 Richard Stallman ([email protected]) ! 150: ! 151: * expr.c (expand_call): When clearing is_integrable, call ! 152: mark_addressable too. ! 153: ! 154: * tm-pyr.h (PCC_BITFFIELD_TYPE_MATTERS): Defined. ! 155: (STRUCTURE_SIZE_BOUNDARY): Deleted. ! 156: ! 157: Wed Jan 15 01:16:05 1992 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 158: ! 159: * tm-sparc.h (FIRST_PARM_OFFSET): Fix typo. ! 160: ! 161: Mon Jan 13 16:14:12 1992 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 162: ! 163: * c-decl.c (grokdeclarator): Turn off incomplete array element warning. ! 164: ! 165: Fri Dec 20 19:27:50 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 166: ! 167: * tm-sparc.h (WORD_SWITCH_TAKES_ARG): Add -assert. ! 168: (LINK_SPEC): Pass -assert to linker. ! 169: ! 170: * expr.c (expand_call): Treat vfork and sigsetjmp like setjmp. ! 171: ! 172: Thu Dec 19 01:34:32 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 173: ! 174: * expr.c (store_expr): Handle copying too-short STRING_CST. ! 175: ! 176: * gstdarg.h (_VA_LIST): Handle this like _VA_LIST_. ! 177: ! 178: Sat Dec 14 16:10:11 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 179: ! 180: * tm-ultrix.h (CPP_PREDEFINED): Add __unix, __ultrix, __bsd4_2. ! 181: ! 182: Tue Dec 10 16:11:18 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 183: ! 184: * expr.c (move_block_to_reg): No error if block appears unaligned. ! 185: (move_block_from_reg): Likewise. ! 186: ! 187: Thu Nov 28 14:18:28 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 188: ! 189: * tm-mips-news (CPP_SPEC): Added more -D options. ! 190: (WORDS_BIG_ENDIAN, BYTES_BIG_ENDIAN, MIPS_NEWS): Deleted. ! 191: ! 192: * reload1.c (new_spill_reg): Error if spill explicit reg. ! 193: ! 194: * out-sparc.c (single_insn_src_p): Do test MINUS for large int arg. ! 195: ! 196: Sun Nov 24 23:08:13 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 197: ! 198: * tm-sun3.h (LINK_SPEC): -g no longer sets -Bstatic. ! 199: ! 200: Tue Nov 19 14:58:56 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 201: ! 202: * fold-const.c (combine): If result is single-float, truncate to fit. ! 203: (fold): Don't add 1 to float constant if that doesn't change the value. ! 204: ! 205: Sun Nov 17 01:38:46 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 206: ! 207: * config.gcc (i860-gas): Set `machine'. ! 208: ! 209: Sat Nov 16 14:18:33 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 210: ! 211: * ecoff-cmp: Use ld to do stripping. ! 212: ! 213: * sdbout.c (sdbout_symbol): Do nothing for var if LOCAL is 0. ! 214: * toplev.c (compile_file): For sdb, output file-scope vars at end. ! 215: ! 216: Mon Nov 11 09:22:41 1991 Michael Meissner (meissner at osf.org) ! 217: ! 218: * cccp.c (make_undef): Fix off by one error in calling do_under. ! 219: ! 220: Wed Oct 23 17:19:17 1991 Richard Stallman ([email protected]) ! 221: ! 222: * stddef.h: Conditional on __sys_stdtypes_h. ! 223: ! 224: * m68k.md (compare shift right by 24): Don't allow increment addrs. ! 225: ! 226: Mon Oct 21 23:08:02 1991 Richard Stallman ([email protected]) ! 227: ! 228: * c-decl.c (grokdeclarator): Fix error message for long float. ! 229: ! 230: Sun Oct 20 22:16:40 1991 Richard Stallman ([email protected]) ! 231: ! 232: * reload.c (find_reloads): Warning or error for misuse of `&'. ! 233: (this_insn_is_asm): New variable. ! 234: (push_reload): Verify specified reg class is at least possible. ! 235: * toplev.c (warning_for_asm): New function. ! 236: ! 237: Sat Oct 19 12:22:23 1991 Richard Stallman ([email protected]) ! 238: ! 239: * tm-sun3.h, tm-sparc.h (WORD_SWITCH_TAKES_ARG): ! 240: Check for Tdata as well as target. ! 241: ! 242: Tue Oct 8 13:40:23 1991 Richard Stallman ([email protected]) ! 243: ! 244: * expr.c (store_expr): All non-static constructors need spec. handling. ! 245: ! 246: * tm-sparc.h (LINK_SPEC): -g no longer sets -Bstatic. ! 247: ! 248: Sat Oct 5 17:47:19 1991 Richard Stallman ([email protected]) ! 249: ! 250: * expmed.c (expand_mult): Avoid multiple refs to volatile mem. ! 251: ! 252: Thu Sep 26 20:52:17 1991 Michael Meissner (meissner at osf.org) ! 253: ! 254: * integrate.c (expand_inline_function): Make sure all REG_NOTES are ! 255: copied as needed as well as the normal pattern. ! 256: ! 257: Sun Sep 22 02:07:55 1991 Richard Stallman ([email protected]) ! 258: ! 259: * c-typeck.c (build_unary_op): Disallow address of cast. ! 260: ! 261: * caller-save.c (emit_mult_restore): Fix typo testing sign of offset. ! 262: ! 263: * varasm.c (assemble_variable): Prevent overflow in size in bytes. ! 264: ! 265: * fixincludes: Redirect cmp output to /dev/null; don't close it. ! 266: ! 267: * i386.md (call_value) [FMTOWNS]: Don't use fpregs. ! 268: * tm-fmtowns.h: New file. ! 269: ! 270: Wed Sep 11 21:06:32 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 271: ! 272: * gvarargs.h, va-mips.h (va_list): Now an alias for __va___list. ! 273: (__va___list): This is a typedef. ! 274: ! 275: Sat Sep 7 13:09:51 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 276: ! 277: * optabs.c (expand_float, expand_fix): Use 0.5, not 1.0, in ldexp. ! 278: ! 279: Fri Sep 6 00:25:25 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 280: ! 281: * c-decl.c (init_decl_processing): Set up void_list_node. ! 282: (get_parm_info): Use that. ! 283: ! 284: * reload1.c (eliminate_frame_pointer): If insn becomes unrecognizable, ! 285: assume it still fits the same pattern as before (but for reloading). ! 286: ! 287: Thu Sep 5 21:25:21 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 288: ! 289: * out-sparc.c (output_move_double): Properly unincrement addreg1. ! 290: ! 291: Wed Sep 4 18:53:16 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 292: ! 293: * fixincludes : Change `m68k' to `__m68k__' in all #if's. ! 294: ! 295: Mon Sep 2 15:08:38 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 296: ! 297: * c-typeck.c (build_array_type): Better error messages. ! 298: ! 299: Sat Aug 31 01:55:45 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 300: ! 301: * out-sparc.c (single_insn_src_p): Undo July 29 change ! 302: as regards everything except shifts. ! 303: ! 304: Fri Aug 30 04:42:19 1991 James Van Artsdalen (james at bigtex.cactus.org) ! 305: ! 306: * tm-i386.h (OUTPUT_JUMP): Use cc_prev_status. ! 307: ! 308: Thu Aug 29 01:17:06 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 309: ! 310: * tm-delta68k.h (PUT_SDB_START_DIM): Renamed from PUT_SDB_DIM. ! 311: ! 312: Wed Aug 28 19:18:43 1991 Richard Stallman ([email protected]) ! 313: ! 314: * tm-sparc.h: Reverted change of Aug 4; loses with alloca. ! 315: ! 316: Tue Aug 27 23:20:50 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 317: ! 318: * expr.c (move_block_to_reg, move_block_from_reg): ! 319: Don't return prematurely after using movsi_unaligned. ! 320: ! 321: Mon Aug 26 20:59:17 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 322: ! 323: * c-parse.y (yylex): Cast shorts[n] to long before shifting. ! 324: * fold-const.c (decode): Likewise. ! 325: ! 326: * i386.md (seq, etc.): Clear the cc_status. ! 327: ! 328: Sat Aug 24 14:31:19 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 329: ! 330: * expr.c (store_constructor): Handle union constructor. ! 331: ! 332: Sat Aug 17 14:34:35 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 333: ! 334: * stmt.c (expand_end_case): ! 335: When filling labelvec from case range, avoid overflow in i. ! 336: ! 337: Fri Aug 16 18:09:44 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 338: ! 339: * Makefile (install): Create bindir. Install gcc as $(bindir)/gcc. ! 340: ! 341: Sat Aug 10 15:18:02 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 342: ! 343: * ns32k.md (call_value): Consistently realize function is operand 1. ! 344: ! 345: Thu Aug 8 13:36:25 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 346: ! 347: * toplev.c (main): Accept -g with warning if not supported. ! 348: ! 349: * tm-m68k.h (LEGITIMIZE_ADDRESS): Copy address before changing it. ! 350: (COPY_ONCE): New macro, subroutine for LEGITIMIZE_ADDRESS. ! 351: ! 352: * tm-i386.h (FIX_FRAME_POINTER_ADDRESS): Remove spurious backslash. ! 353: ! 354: Sun Aug 4 15:39:24 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 355: ! 356: * Kludge to preallocate stack space for stack args on Sparc. ! 357: * expr.c (expand_call): Support STACK_SPACE_FOR_CALLS. ! 358: (init_pending_stack_adjust): Likewise. ! 359: * stmt.c (frame_offset): No longer static. ! 360: * tm-sparc.h (STACK_SPACE_FOR_CALLS): Defined. ! 361: (STACK_ARGS_ADJUST): Defined. ! 362: ! 363: Thu Aug 1 17:22:40 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 364: ! 365: * tm-i860.h (MAX_PARM_BOUNDARY): Defined. ! 366: (GO_IF_LEGITIMATE_ADDRESS): Add parens around & operator. ! 367: (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Use sp, not r3 (that's fp). ! 368: * i860.md (movsf): Don't reload high address part if already loaded. ! 369: (cmplesf, cmpledf, cmpgesf, cmpgedf): Set CC_NEGATED; swap operands. ! 370: * out-i860.c (strict_single_insn_op_p): ! 371: Fix criterion for loading high half. ! 372: (output_load_address): #if 0 since not used. ! 373: ! 374: Wed Jul 31 12:36:37 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 375: ! 376: * fixincludes: New variable INCLUDES specifies input dir. ! 377: ! 378: Tue Jul 30 17:24:52 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 379: ! 380: * stmt.c (expand_end_stmt_expr): Force out the queue. ! 381: Protect the value from the queue. ! 382: ! 383: * stddef.h (WCHAR_T): Also test and define _WCHAR_T_. ! 384: ! 385: * expr.c (move_block_to_reg): Check for QUEUED only within MEM. ! 386: ! 387: Sun Jul 28 16:15:39 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 388: ! 389: * move-if-change: Use -f with rm and mv. ! 390: ! 391: Sat Jul 27 13:03:50 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 392: ! 393: * fixincludes (memvar.h): Make two defs of CAT, one ANSI and one trad. ! 394: ! 395: * combine.c (try_combine): Reject if I1DEST used between I2 and I3. ! 396: ! 397: Wed Jul 24 13:54:41 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 398: ! 399: * cse.c (cse_insn): Don't use HASHREG. ! 400: Detect all volatile destinations. ! 401: (HASHREG): Deleted. ! 402: ! 403: * tm-m68k.h (NOTICE_UPDATE_CC): ! 404: Calls clear status even if value in address reg. ! 405: ! 406: Fri Jul 19 15:50:46 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 407: ! 408: * varasm.c (make_decl_rtl): Set EXTERNAL_SYMBOL_P only if TREE_PUBLIC. ! 409: ! 410: Tue Jul 16 20:16:16 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 411: ! 412: * Makefile [comments for SCO] (CC, OLDCC): Add some -D options. ! 413: ! 414: Wed Jul 10 13:18:03 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 415: ! 416: * cccp.c (hack_vms_include_specification): Fix typos. ! 417: ! 418: Tue Jul 9 21:17:43 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 419: ! 420: * fold-const.c (mul_double): Add parens to avoid precedence errors. ! 421: ! 422: Mon Jul 8 22:17:20 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 423: ! 424: * c-parse.y (yylex): Pedantic warning here for `asm'. ! 425: No warning for `__asm__'. ! 426: (maybe_type_qual, maybeasm, extdef): No warning here. ! 427: ! 428: Sun Jul 7 15:29:42 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 429: ! 430: * README-ENCAP: New file. (Actually, it used to exist, and went away.) ! 431: ! 432: * emit-rtl.c (gen_highpart): Handle a const_int. ! 433: ! 434: * integrate.c (copy_rtx_and_substitute): Avoid change_address. ! 435: ! 436: * stmt.c (expand_end_stmt_expr): Instead of 0, use const0_rtx. ! 437: ! 438: * c-decl.c (NULL): Undef before defining. ! 439: ! 440: * tm-9k320.h (STANDARD_STARTFILE_PREFIX): Let this be overridden. ! 441: ! 442: Sat Jul 6 14:51:15 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 443: ! 444: * expr.c (expand_assignment): Don't abort for volatile structure field ! 445: even if the structure is in a register. ! 446: ! 447: * fold-const.c (div_and_round_double): Make lnum and lden unsigned. ! 448: Use the small-denominator algorithm only for denom < 2**24. ! 449: Fix backward conditionals in ?: operators in general case. ! 450: Change i + j to i - 1 + j when indexing num. ! 451: ! 452: Wed Jul 3 11:40:27 1991 Michael Meissner (meissner at osf.org) ! 453: ! 454: * expr.c (move_block_from_reg, move_block_to_reg): Protect block ! 455: addresses from queued memory insns, which occur for things like *p++. ! 456: ! 457: * expr.c (move_block_from_reg, move_block_to_reg): Add an alignment ! 458: field that gives how much alignment the structure has. If the md ! 459: file provides movsi_unaligned, use it if the structure is not ! 460: properly aligned. Change all callers to pass the alignment in bits. ! 461: ! 462: * stmt.c (assign_params): Pass structure alignment to ! 463: move_block_from_reg. ! 464: ! 465: * mips.md (movsi_unaligned): New define_expand to handle unaligned ! 466: moves. ! 467: (movsi_ulw, movsi_usw): New define_insn's to handle unaligned moves ! 468: to/from a register. ! 469: ! 470: Tue Jul 2 16:56:28 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 471: ! 472: * cccp.c: Include descrip.h. ! 473: ! 474: Mon Jul 1 21:04:54 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 475: ! 476: * out-ns32k.c (output_move_double): ! 477: Use CONSTANT_P to check for single-word constant. ! 478: ! 479: Sun Jun 30 16:12:34 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 480: ! 481: * gnulib2.c (__builtin_saveregs): ! 482: For i860, make data structure fit in with va-i860.h. ! 483: ! 484: * reload1.c (choose_reload_regs): Don't use reg_reloaded_contents ! 485: for a reg that has a reg_equiv_address. ! 486: ! 487: * gnulib2.c, gnulib.c (abort): Get rid of any macro definition. ! 488: ! 489: Sat Jun 29 09:27:12 1991 Michael Tiemann (tiemann at cygint.cygnus.com) ! 490: ! 491: * out-sparc.c (single_insn_src_p): Reject any ASHIFT patterns with ! 492: non-REG second operand. ! 493: ! 494: Sat Jun 29 06:25:19 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 495: ! 496: * tm-vax.h (CPP_SPEC, LIB_SPEC): New macros. ! 497: ! 498: * reload.c (push_reload): Handle two different inmodes, etc. ! 499: ! 500: * gcc.c (S_ISREG): Define if not defined. ! 501: (delete_temp_files): Use it. ! 502: ! 503: * limits.h (UCHAR_MAX, CHAR_MAX, USHRT_MAX): Delete `U'. ! 504: (LONG_MAX, ULONG_MAX): Add `L'. ! 505: ! 506: Fri Jun 28 22:21:54 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) ! 507: ! 508: * Makefile (realclean): Delete stage1, stage2, stage3. ! 509: ! 510: * gcc.c (fatal) [HAVE_VFPRINTF]: Do print the program name. ! 511: 1.1.1.20 root 512: Sat Jun 1 01:10:32 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 513: 514: * Version 1.40 released. 515: 516: * i386.md (divmodsi4, udivmodsi4): Add separate define_expands 517: to force duplicated args into registers. 518: 519: Thu May 30 00:32:18 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 520: 521: * expr.c (expand_expr): 522: Don't lose volatility of fields in COMPONENT_REF. 523: 524: * fixincludes (stdtypes.h): Handle wchar_t like the other types. 525: 526: Tue May 28 12:34:24 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 527: 528: * cse.c (canon_hash): Don't hash hard regs if SMALL_REGISTER_CLASSES. 529: * tm-i386.h (SMALL_REGISTER_CLASSES): Define it. 530: 531: * expr.c (store_one_arg): Set used after calling push_rounding. 532: 533: * tm-decstatn.h (CPP_PREDEFINES): Add __ versions of macros. 534: 535: * tm-apollo68.h (LIB_SPEC): Renamed from LINK_SPEC. 536: 537: Sun May 26 00:52:32 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 538: 539: * cse.c (refers_to_mem_p): Handle constants as addresses. 540: 541: Thu May 23 12:35:25 1991 John Vasta (vasta at apollo.hp.com) 542: 543: * tm-apollo68.h (STARTFILE_SPEC): Remove unneeded 544: conditional and use correct file for ANSI mode. 545: (LIB_SPEC): Deleted. 546: (LINK_SPEC): Specify -e switch. 547: 548: Wed May 22 14:35:13 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 549: 550: * tm-i386isc.h (STARTFILE_SPEC): Add missing %s. 551: 552: * tm-vaxv.h (ASM_OUTPUT_LOCAL): Use data_section. 553: 554: Mon May 20 12:38:39 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 555: 556: * Makefile (float.h): Pass certain vars down to nested make. 557: 558: * hard-params.c [NO_LONG_DOUBLE]: Inhibit handling of long double. 559: 560: * m68k.md (trunc*): Clear cc if use wider insn. 561: 562: Sun May 19 14:45:46 1991 Ron Guilmette (rfg at ncd.com) 563: 564: * Makefile.in (clean): Delete stage1...stage4. 565: (realclean): Delete cexp.output. 566: 567: * fixincludes: Handle BSD43__IO* and BSD43_CTRL like IO* and CTRL. 568: 569: Sun May 19 15:00:05 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 570: 571: * fixincludes (machine/cpu.h): 572: Create in proper dir. Fix mips/cpu.h too. 573: 574: Fri May 17 15:41:22 1991 James Van Artsdalen (james at bigtex.cactus.org) 575: 576: * tm-i386v4.h (ASM_OUTPUT_COMMON): Don't attempt alignment on a 577: three byte boundary. 578: 579: Thu May 16 12:46:37 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 580: 581: * expr.c (convert_to_mode): Don't use gen_lowpart on most constants. 582: 583: Mon May 13 23:42:03 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 584: 585: * expmed.c (store_bit_field, extract_bit_field): 586: Temporarily set volatile_ok when checking predicates. 587: 588: * explow.c (force_not_mem): Do nothing for BLKmode. 589: 590: * tree.c (real_value_from_int_cst): Add parens to fix misparsings. 591: 592: Sun May 12 22:39:42 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 593: 594: * tree.c (real_value_from_int_cst): Make MASK unsigned. 595: 596: Wed May 8 11:19:32 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 597: 598: * rtl.c (reg_note_name): Put in REG_UNSET. Remove dead ones. 599: 600: * tree.c (real_value_from_int_cst): Avoid converting unsigned to float. 601: 602: * stor-layout.c (round_size): Cast to int when comparing modes. 603: 604: * tm-ultrix.h (CPP_PREDEFINES): Define __vax. 605: 606: Mon May 6 13:29:48 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 607: 608: * out-i386.c (fp_top_dead_p1): Look past any number of labels. 609: 610: * tm-aix386.h (ASM_FILE_START): Discard directories from .file arg. 611: 612: Sat May 4 14:36:26 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 613: 614: * tm-hp9k320.h (CPP_SPEC): Always define _HPUX_SOURCE. 615: Move other standard predefs with underscores here. 616: (CPP_PREDEFINES): Standard predefs moved from here. 617: 618: * hard-params.c (EPROP): Avoid comparing a with out if bad is 1. 619: 620: Thu May 2 14:43:48 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 621: 622: * math-68881.h (pow): Negate x if negative when taking log. 623: 624: * c-decl.c (finish_enum): Don't store the enum as the type of any of 625: its enumerator values. 626: 627: Wed May 1 15:02:15 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 628: 629: * c-decl.c (finish_enum): Rewrite handling of min and max values. 630: Rewrite handling of flag_short enums. 631: * stor-layout.c (round_size): New subroutine. 632: 633: * out-i386.c (fp_top_dead_p1): Use mentions_fp_top to check dest. 634: 635: Tue Apr 30 14:41:58 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 636: 637: * expr.c (expand_call): Copy value to mem via a pseudo. 638: 639: * tm-decstatn.h (CPP_PREDEFINES): Define __mips and __LANGUAGE_C. 640: 641: * fixincludes (machine/cpu.h): Delete superfluous `static'. 642: 643: * Makefile (maketest): Don't stop on error in `if' statement. 644: 645: Mon Apr 29 12:29:16 1991 (Eric Youngdale at [email protected]) 646: 647: * cccp.c (hack_vms_include_specification): Modified conversion of 648: unix filenames to VMS filenames, if no VMS device or directory is 649: present and a unix style directory name is present. In this case, use 650: the first unix directory name as the VMS device spec. This is only 651: used in '#include <...>' type includes, when the include file has 652: not been found in the standard locations. 653: 654: Mon Apr 29 22:18:47 1991 James Van Artsdalen (james at bigtex.cactus.org) 655: 656: * tm-att386.h (ASM_OUTPUT_LOCAL): Align static local variables. 657: 658: Mon Apr 29 13:50:55 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 659: 660: * reload1.c (emit_reload_insns): When changing the mode, 661: make a REG, not a SUBREG. 662: 663: * out-i386.c (print_operand): For non-'c', print prefix for LABEL_REF. 664: 665: * c-decl.c (pushdecl): Just a warning for type of extern not global. 666: 667: Wed Apr 17 12:44:16 1991 Richard Stallman (rms at apple-gunkies) 668: 669: * stmt.c (use_variable, use_variable_after): Handleg subregs. 670: 671: Sat Apr 13 10:10:28 1991 Eric Youngdale ([email protected]) 672: 673: * cccp.c (hack_vms_include_specification) Made parsing more 674: intelligent when confronted with something like: 675: "SYS$SYSROOT:[SYSLIB.]/foo.h". Previously this routine would 676: return a file specification that had a syntax error. This example 677: will now parsed to "SYS$SYSROOT:[SYSLIB]foo.h". 678: 679: Fri Apr 12 02:37:07 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 680: 681: * expmed.c (store_bit_field): Don't die if VALUE is constant 682: for a field bigger than a word. 683: 684: * tm-sparc.h (FUNCTION_BLOCK_PROFILER): Must set %o0 to the address 685: LPBX0 by adding in the low part of the address before calling 686: ___bb_init_func. 687: 688: * cccp.c (skip_to_end_of_comment): Handle warn_comment. 689: 690: * out-m68k.c (output_move_double): Really test HOST_WORDS_BIG_ENDIAN. 691: 692: * config.gcc (i386-isc): New target. 693: * tm-i386isc.h: New file. 694: 695: * m68k.md (dbra patterns): Use `=' in constraint of op 0. 696: 697: Sat Mar 30 15:16:16 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 698: 699: * ns32k.md (andcbhi3, andcbqi3): Constraint shouldn't say commutative. 700: 701: * tm-mips.h, tm-sparc.h, tm-spur.h (CONST_DOUBLE_OK_FOR_LETTER_P): 702: Use CONST_DOUBLE_LOW and CONST_DOUBLE_HIGH. 703: 704: Fri Mar 29 16:17:59 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 705: 706: * tm-hp9k2bsd.h: New file. 707: * config.h (hp9k200-bsd): New target. 708: 709: Thu Mar 28 16:31:50 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 710: 711: * tm-vax.h (CHECK_FLOAT_VALUE): Change float max to ...444e+38. 712: 713: Wed Mar 27 19:57:33 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 714: 715: * integrate.c (access_parm_map): Use /, not %, in setting WORD. 716: 717: Sun Mar 24 23:47:19 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 718: 719: * gcc.c (store_arg): Use xrealloc. 720: (xrealloc, xmalloc): Change error message. 721: 722: Sat Mar 23 03:42:20 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 723: 724: * gnulib.c [GNULIB_NEEDS_DOUBLE]: Override FLOAT_ARG_TYPE, FLOATIFY. 725: 726: Fri Mar 22 00:46:42 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 727: 728: * integrate.c (frame_pointer_sum_p): New function. 729: (copy_rtx_and_substitute): Use that. 730: 731: * cccp.c (bzero, etc.): Don't test for BSD--it's never defined. 732: 733: Tue Mar 19 21:25:52 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) 734: 735: * gstab.h: Renamed from stab.h. 736: * dbxout.c, symout.c, final.c: Include under that name. 737: 738: * stddef.h (wchar_t): New typedef. 739: 740: Sun Mar 17 21:01:56 1991 Richard Stallman ([email protected]) 741: 742: * fixincludes (dnetdb.h): Fix missing semi in nodeent. 743: (rusers.h): Code to fix this file was duplicated. 744: 745: Sat Mar 16 15:25:56 1991 Richard Stallman ([email protected]) 746: 747: * toplev.c (compile_file): Write out all static consts that are used. 748: 749: Thu Mar 14 16:56:03 1991 Richard Stallman (rms at mole.ai.mit.edu) 750: 751: * tm-att386.h (ASM_OUTPUT_SKIP): Delete duplicate #define. 752: 753: * out-sparc.c (output_block_move): 754: Conditionalize templates at end on NO_UNDERSCORES. 755: 756: Tue Mar 12 23:48:11 1991 Richard Stallman (rms at mole.ai.mit.edu) 757: 758: * fixincludes: Quote the # in an echo. 759: 760: Sun Mar 10 20:11:04 1991 Richard Stallman (rms at mole.ai.mit.edu) 761: 762: * expr.c (emit_library_call): Support GNULIB_NEEDS_DOUBLE. 763: * tm-i860.h (GNULIB_NEEDS_DOUBLE): Define it. 764: 765: Sun Mar 3 15:13:50 1991 Michael Meissner (meissner at osf.org) 766: 767: * out-mips.c (function_arg_partial_nregs): Fix passing two 768: structures, each of which contains two doubles to a function which 769: returns a structure -- the problem was caused when the 1.37.1 code 770: was modified to have two fields for the FUNCTION_ARG routines, 771: arg_number which is the number of arguments, and arg_words which is 772: the total number of words passed, instead of the old arg_number 773: which counted the words. The function_arg_partial_nregs routine was 774: returning -1 for the second call. In 1.37.1, the macro 775: FUNCTION_ARG_PARTIAL_NREGS was only called one time, if it returned 776: non-zero. This no longer seems the case for 1.39. 777: 778: Sun Mar 10 19:06:36 1991 Richard Stallman (rms at mole.ai.mit.edu) 779: 780: * tm-harris.h (ASM_FILE_START): Output a .file. 781: 782: * tm-mips.h (TARGET_MEM_FUNCTIONS): Define on certain systems. 783: 784: Fri Mar 8 15:51:15 1991 Richard Stallman (rms at mole.ai.mit.edu) 785: 786: * gcc.c (delete_temp_files): Delete only ordinary files. 787: 788: Thu Mar 7 17:51:11 1991 Richard Stallman (rms at mole.ai.mit.edu) 789: 790: * c-typeck.c (build_array_ref): Notice if array expression 791: is const or volatile. 792: 793: Tue Mar 5 14:21:57 1991 Richard Stallman (rms at mole.ai.mit.edu) 794: 795: * c-decl.c (store_parm_decls): If -traditional, 796: allow unsigned int in prototype in place of int. 797: 798: * stmt.c (fixup_gotos): Handle jumping to end of rtl. 799: 800: * tm-mips-news.h (DECSTATION): Definition deleted. 801: (MIPS_NEWS): Define it. 802: 803: * config.gcc (i860-gas): New target. 804: * tm-i860g.h: New file. 805: 806: Mon Mar 4 00:39:11 1991 Richard Stallman (rms at mole.ai.mit.edu) 807: 808: * fixincludes: Fix typos handling size_t and ptrdiff_t. 809: 810: * out-mips.c: Include sys/types.h. 811: 812: Sun Mar 3 01:11:46 1991 Richard Stallman (rms at mole.ai.mit.edu) 813: 814: * cccp.c (include_defaults, cplusplus_include_defaults): 815: Use CC_INCLUDE_DIR. 816: (CC_INCLUDE_DIR): Define by default as /use/include. 817: * tm-mips.h (CC_INCLUDE_DIR): Define, if MIPS_BSD43. 818: (CPP_SPEC): Don't do -I to handle -ZSYSV, -ZBSD43. 819: 820: Sat Mar 2 16:22:59 1991 Richard Stallman (rms at mole.ai.mit.edu) 821: 822: * expr.c (expand_call): Use argpos, not i, where appropriate. 823: 824: Wed Feb 27 15:46:54 1991 Richard Stallman (rms at mole.ai.mit.edu) 825: 826: * gnulib.c (FLOAT_ARG_TYPE, FLOATIFY): New macros. 827: (__*sf*): Use them for `float' args. 828: 829: * stmt.c (fixup_gotos): Check that jump into bindings 830: really comes from before the start of the bindings. 831: Use TREE_REGDECL to indicate error message printed. 832: 833: Tue Feb 26 15:46:35 1991 Richard Stallman (rms at mole.ai.mit.edu) 834: 835: * c-decl.c (grokdeclarator): Check for errors before warnings. 836: 837: Mon Feb 25 20:46:43 1991 Richard Stallman (rms at mole.ai.mit.edu) 838: 839: * sdbout.c (SDB_NO_FORWARD_REFS): Renamed from MAYBE. 840: (plain_type_1): Don't call sdb_record_type_name if no forward refs. 841: 842: * integrate.c (expand_inline_function): Copy REG_USERVAR_P to new regs. 843: (copy_rtx_and_substitute): Likewise. 844: 845: * c-typeck.c (digest_init): Handle STRING_CST before same-type case. 846: 847: * make-cc1.com, make-cccp.com: Set default dir for batch use. 848: 849: Sun Feb 24 17:14:09 1991 Richard Stallman (rms at mole.ai.mit.edu) 850: 851: * out-sparc.c (output_fp_move_double): Typo choosing inc_reg. 852: If we use %g1, then put that into the memref. 853: 854: * loop.c (check_dbra_loop): Win if loop biv is used only for counting. 855: 856: Sat Feb 23 13:36:13 1991 Richard Stallman (rms at mole.ai.mit.edu) 857: 858: * sdbout.c (sdbout_one_type): Changed #ifndef MAYBE controlling 859: call to sdbout_field_types into #ifdef. It seems it was backwards. 860: 861: * c-decl.c (grokdeclarator): Error for `signed void', etc. 862: Warning for `signed my_int', and only if pedantic. 863: 864: Fri Feb 22 12:45:06 1991 Richard Stallman (rms at mole.ai.mit.edu) 865: 866: * tm-i386sco.h (STRUCT_RETURN_CALLER_POP): Define it. 867: 868: * stmt.c (expand_end_loop): Don't be fooled by notes at loop end. 869: 870: Thu Feb 21 21:34:12 1991 Richard Stallman (rms at mole.ai.mit.edu) 871: 872: * tm-sun2os4.h (LINK_SPEC): New macro. 873: * tm-sun386i.h (LINK_SPEC): Undef before redefining. 874: 875: Mon Feb 11 00:06:19 1991 Richard Stallman (rms at mole.ai.mit.edu) 876: 877: * Makefile (libg): Rule deleted. 878: (install): Don't create libg.a. 879: 880: * out-mips.c (mips_asm_file_start, make_temp_file): New functions. 881: * tm-mips.h (ASM_FILE_START): Use those functions. 882: 883: * gcc.c (do_spec_1): Handle %G. 884: (LIBG_SPEC): New macro. 885: (link_spec): Use %G. 886: * tm-mips.h (LIBG_SPEC): Define this as empty string. 887: 888: Sun Feb 10 23:03:45 1991 Richard Stallman (rms at mole.ai.mit.edu) 889: 890: * integrate.c (copy_parm_decls): Set TREE_INLINE before pushdecl. 891: 892: Sat Feb 9 16:31:28 1991 Richard Stallman (rms at mole.ai.mit.edu) 893: 894: * loop.c (eliminate_biv, can_eliminate_biv_p): 895: For compare insn and constant coeffs, check for overflow. 896: For variable coeffs, or variable endpoint, don't allow inequality. 897: 898: Fri Feb 8 18:04:43 1991 Richard Stallman (rms at mole.ai.mit.edu) 899: 900: * Makefile (libg): Put one (null) member in the library. 901: 902: Thu Feb 7 22:20:24 1991 Richard Stallman (rms at mole.ai.mit.edu) 903: 904: * tm-i386v4.h (ASM_OUTPUT_COMMON): Override; put alignment in output. 905: 906: * tm-news.h (FUNCTION_PROLOGUE): Correct syntax of link insn. 907: (PRINT_OPERAND_ADDRESS): Use period, not colon, before index reg width. 908: 909: Wed Feb 6 23:59:42 1991 Richard Stallman (rms at mole.ai.mit.edu) 910: 911: * config.gcc (mips-sysv): Use xm-umips.h. 912: * tm-mips-sysv.h (TARGET_MEM_FUNCTIONS): Define it. 913: 914: Tue Feb 5 00:45:58 1991 Richard Stallman (rms at mole.ai.mit.edu) 915: 916: * c-parse.y (combine_strings): Finish fixing wide strings. 917: 918: * reload1.c (possible_group_p): New subroutine. 919: (reload): Don't kill last group when looking for a non-group. 920: 921: * expmed.c (expand_divmod): If emit a cmp, must copy op0 to a reg. 922: 923: * expr.c (expand_builtin): For ffs, get mode from TREE_TYPE. 924: 925: * tm-att386.h (ASM_OUTPUT_SKIP): In text seg, make explicit zeros. 926: 927: Mon Feb 4 17:39:36 1991 Richard Stallman (rms at mole.ai.mit.edu) 928: 929: * c-typeck.c (digest_init): Error if init array with another array. 930: 931: Sun Feb 3 22:05:40 1991 Richard Stallman (rms at mole.ai.mit.edu) 932: 933: * m68k.md (extend QI to HI): Typo in clr insn. 934: 935: * c-parse.y (combine_strings): Subtract properly from LEN when copying. 936: (init_lex, yylex): max_wide is now measured in wide chars, not bytes. 937: 938: Sat Feb 2 12:32:41 1991 Richard Stallman (rms at mole.ai.mit.edu) 939: 940: * xm-m68k.h (HOST_WORDS_BIG_ENDIAN): Define it. 941: 942: Thu Jan 31 00:33:33 1991 Richard Stallman (rms at mole.ai.mit.edu) 943: 944: * tm-aix386.h (ASM_OUTPUT_LOCAL): Ok to use bss, since no shared libs. 945: (LINK_SPEC): Pass through all -K and -T options. 946: * xm-aix386.h (TRUE, FALSE): Undef if already def, to avoid warning. 947: 948: * c-decl.c (pushdecl): Don't make an extern global for -traditional 949: if it uses any local types. 950: 951: * tm-sun386i.h (PCC_BITFFIELD_TYPE_MATTERS): Use 1 as value. 952: (LINK_SPEC): Copy definition from xm-sun386i.h. 953: * xm-sun386i.h (LINK_SPEC): Definition deleted. 954: 955: * tm-hp9k320.h (STANDARD_STARTFILE_PREFIX): Once again always redefine. 956: 957: Wed Jan 30 16:27:14 1991 Richard Stallman (rms at mole.ai.mit.edu) 958: 959: * fixincludes (sys/stdtypes.h): Edit this to handle _SIZE_T, etc. 960: 961: Mon Jan 28 12:48:20 1991 Richard Stallman (rms at mole.ai.mit.edu) 962: 963: * loop.c (loop_reg_used_before_p): Scan explicitly, don't use luids. 964: 965: Thu Jan 24 18:15:08 1991 Richard Stallman (rms at mole.ai.mit.edu) 966: 967: * expr.c (expand_expr, case for ARRAY_REF): Use build_pointer_type. 968: 969: * loop.c (strength_reduce): Substitute regs inside some reg notes. 970: 1.1.1.19 root 971: Wed Jan 16 15:34:38 1991 Richard Stallman (rms at mole.ai.mit.edu) 972: 973: * Version 1.39 released. 974: 975: * config.gcc (i386-esix): New alternative. 976: * tm-i386esix.h: New file. 977: 978: * expr.c (expand_call): Don't put libcall notes on const function call 979: unless there is a suitable value-copying insn at the end. 980: 981: * config.gcc (delta68k): New alternative. 982: * tm-delta68k.h, xm-delta68k.h: New files. 983: 984: Tue Jan 15 01:37:21 1991 Richard Stallman (rms at mole.ai.mit.edu) 985: 986: * loop.c (scan_loop): Condition for movability was wrong. 987: A reg that isn't necessarily set may be unsafe 988: even if used only inside the loop. 989: However, a reg used only in the same basic block after the set is safe. 990: So is a reg that isn't a user-level variable. 991: 992: * combine.c (try_distrib): Don't push + thru negative-count shift. 993: * tm-vax.h (NEGATIVE_SHIFT_COUNT): Define to enable that change. 994: 995: Mon Jan 14 18:17:58 1991 Richard Stallman (rms at mole.ai.mit.edu) 996: 997: * stmt.c (assign_parms) [FIRST_PARM_CALLER_OFFSET]: 998: If that's negative, adjust first_parm_offset rather than 999: stack_args_size for size of structure value address. 1000: (Kludge to make sparc work.) 1001: 1002: * fixincludes-V4: Handle #lint. 1003: 1004: * tm-i386sco.h (CPP_PREDEFINES): Get rid of the %-spec. 1005: (CPP_SPEC): Override this; handle -scointl here. 1006: 1007: Sun Jan 13 23:06:25 1991 Richard Stallman (rms at mole.ai.mit.edu) 1008: 1009: * fixincludes (sys/file.h): Fix incorrect conditional in Ultrix. 1010: 1011: Sat Jan 12 14:25:02 1991 Richard Stallman (rms at mole.ai.mit.edu) 1012: 1013: * i386.md (movsf, movdf): Change constraints to ensure opt reload. 1014: 1015: Fri Jan 11 13:22:22 1991 Richard Stallman (rms at mole.ai.mit.edu) 1016: 1017: * tm-tower-as.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP): 1018: Use %u. 1019: (PUT_SDB_START_DIM): New macro. 1020: (PUT_SDB_DIM): Deleted. 1021: 1022: * tm-next.h (LIB_SPEC, STARTFILE_SPEC): Don't support -p. 1023: 1024: Thu Jan 10 13:05:46 1991 Richard Stallman (rms at mole.ai.mit.edu) 1025: 1026: * tm-sun2.h (CC1_SPEC): Define to ignore -sun2 and -target. 1027: (WORD_SWITCH_TAKES_ARG): Define to recognize -target. 1028: (LIB_SPEC): Define; handle -a. 1029: * tm-sun3os4.h: New file. 1030: 1031: * tm-mips-news.h (CPP_SPEC): Update include directory version. 1032: (MACHINE_TYPE): Change this string. 1033: 1034: * tm-next.h (LIB_SPEC): Use -lsys_s, not -lc. 1035: 1036: * Makefile (gnulib): Depend on config.status. 1037: 1038: Mon Jan 7 15:03:53 1991 Richard Stallman (rms at mole.ai.mit.edu) 1039: 1040: * c-typeck.c (process_init_constructor): Error if values 1041: provided for an array of empty elements. 1042: Rename variable `error' to `error_flag'. 1043: 1044: * out-i386.c (function_epilogue) [STRUCT_RETURN_CALLER_POP]: 1045: Don't pop struct value arg if -fpcc-struct-return. 1046: * expr.c (expand_call) [STRUCT_RETURN_CALLER_POP]: 1047: Change handling of structure_value_addr. 1048: 1049: * cse.c (cse_insn): In special case for (set REG0 REG1), 1050: change any REG_EQUIV notes to REG_EQUAL. 1051: 1052: Sun Jan 6 13:51:59 1991 Richard Stallman (rms at mole.ai.mit.edu) 1053: 1054: * tm-sun386i.h (PCC_BITFIELD_TYPE_MATTERS): Define it. 1055: 1056: * out-i386.c (fp_top_dead_p1): Follow jump only if optimizing. 1057: 1058: Fri Jan 4 23:17:41 1991 Richard Stallman (rms at mole.ai.mit.edu) 1059: 1060: * tm-att386.h (ASM_OUTPUT_LOCAL): Change back to data section. 1061: 1062: Thu Jan 3 13:31:41 1991 Richard Stallman (rms at mole.ai.mit.edu) 1063: 1064: * loop.c (move_movables): Do reg substitutions on REG_EQUAL, REG_EQUIV. 1065: 1066: * out-i386.c (fp_top_dead_p1): Follow one jump or label. 1067: 1068: * rtl.c (read_rtx): Cast type of NULL vector. 1069: 1070: Wed Jan 2 18:59:34 1991 Richard Stallman (rms at mole.ai.mit.edu) 1071: 1072: * out-i386.c (fp_call_internal): Use fp_top_dead_p1, not top_dead_p. 1073: * reload1.c (emit_reload_insns): Undo previous change. 1074: 1075: Tue Jan 1 12:01:43 1991 Richard Stallman (rms at mole.ai.mit.edu) 1076: 1077: * integrate.c (expand_inline_function): 1078: Handle parms passed in reg but stored in memory. 1079: 1080: * ecoff-cmp: Specify `c' in option to tail. 1081: 1082: * reload1.c (emit_reload_insns) [PRESERVE_DEATH_INFO_REGNO_P]: 1083: Move notes to output reload even if dest is reg. 1084: Check for notes matching by hard reg, even if different origin. 1085: Really scan all the output reload insns. 1086: 1087: Mon Dec 31 16:04:11 1990 Richard Stallman (rms at mole.ai.mit.edu) 1088: 1089: * stupid.c (stupid_find_reg): Don't use reg if OVERLAPPING_REGNO_P. 1090: 1091: * i386.md (push for SFmode): Operand of fst was missing. 1092: * out-i386.c (fp_call_internal): Discard result if unused. 1093: 1094: Sat Dec 29 16:37:10 1990 Richard Stallman (rms at mole.ai.mit.edu) 1095: 1096: * Makefile (install): Use basename on eachfile; BSD make adds dirs. 1097: 1098: * cccp.c (macroexpand): Test traditional when computing expansion size. 1099: 1100: Thu Dec 27 23:42:42 1990 Richard Stallman (rms at mole.ai.mit.edu) 1101: 1102: * reload.c (find_reloads_address_1): For auto-increment, save the reg 1103: before replacing it with something being reloaded. 1104: 1105: Fri Dec 21 18:31:38 1990 Richard Stallman (rms at mole.ai.mit.edu) 1106: 1107: * Version 1.38. 1108: 1109: * tm-i386vgas.h (STARTFILE_SPEC, LIB_SPEC): Deleted. 1110: 1.1.1.18 root 1111: Sun Dec 16 18:10:20 1990 Richard Stallman (rms at mole.ai.mit.edu) 1112: 1113: * tm-i386vgas.h (ASM_OUTPUT_LABELREF): Do prepend `_' again. 1114: 1115: * tm-sun3.h (ASM_OUTPUT_FLOAT*, ASM_OUTPUT_DOUBLE*): 1116: Use double_is_minus_zero to test for -0.0. 1117: * out-m68k.c (double_is_minus_zero): New function. 1118: 1119: Fri Dec 14 00:57:30 1990 Richard Stallman (rms at mole.ai.mit.edu) 1120: 1121: * tm-sun3.h (ASM_OUTPUT_FLOAT*, ASM_OUTPUT_DOUBLE*): 1122: Use `iszero' and `signbit' to check for -0.0. 1123: 1124: * recog.c (offsettable_address_p): Use OFFSETTABLE_ADDRESS_P. 1125: * tm-i860.h (OFFSETTABLE_ADDRESS_P): Define this. 1126: 1127: Wed Dec 12 16:11:05 1990 Richard Stallman (rms at mole.ai.mit.edu) 1128: 1129: * gvarargs.h: Avoid duplicate inclusion using _VARARGS_H. 1130: 1131: * c-decl.c (grokdeclarator): Always promote short even if -mshort. 1132: 1133: Tue Dec 11 23:12:51 1990 Richard Stallman (rms at mole.ai.mit.edu) 1134: 1135: * expr.c (convert_move): Do compare before slt. 1136: Handle destination not valid in slt. 1137: 1138: Mon Dec 10 00:27:04 1990 Richard Stallman (rms at mole.ai.mit.edu) 1139: 1140: * out-sparc.c (output_fp_move_double): Bugs in last change: 1141: Use adj_offsettable_operand when possible. 1142: Choose a reg other than fp to increment. 1143: 1144: Sun Dec 9 23:21:05 1990 Richard Stallman (rms at mole.ai.mit.edu) 1145: 1146: * cccp.c (collect_expansion): Don't check for /* */ concat here. 1147: (macroexpand): Always use raw arg if traditional. 1148: 1149: Wed Dec 5 13:52:16 1990 Richard Stallman (rms at mole.ai.mit.edu) 1150: 1151: * optabs.c (expand_binop): Handle insn_before == 0. 1152: 1153: * Makefile (includes): Export LIB. 1154: 1155: Tue Dec 4 21:27:00 1990 Richard Stallman (rms at mole.ai.mit.edu) 1156: 1157: * loop.c (consec_sets_giv): Give proper type to force, force2. 1158: 1159: Mon Dec 3 15:57:19 1990 Richard Stallman (rms at mole.ai.mit.edu) 1160: 1161: * cccp.c (special_symbol): Use time_t as type of t. 1162: 1163: Sun Dec 2 16:43:31 1990 Richard Stallman (rms at mole.ai.mit.edu) 1164: 1165: * config.gcc (tower): New alternative. 1166: * tm-tower.h, tm-tower-as.h, xm-tower.h: New files. 1167: 1168: * stddef.h (ptrdiff_t): Prevent redefinition, as with size_t. 1169: (size_t): Define all the macros used to prevent redefinition. 1170: 1171: Fri Nov 30 14:25:49 1990 Michael Meissner (meissner at osf.org) 1172: 1173: * out-mips.c (init_cumulative_args, function_arg_advance, 1174: function_arg, function_arg_partial_nregs): Type CUMULATIVE_ARGS is 1175: now a pointer to a structure instead of a structure. New field 1176: arg_words tracks number of words consumed so far and arg_number just 1177: tracks physical numbers of arguments. Make four single precision 1178: floating point arguments passed via prototypes use $f12, $f14, $6, 1179: and $7, just like mips cc. 1180: 1181: * tm-mips.h (INIT_CUMULATIVE_ARGS, FUNCTION_ARG_ADVANCE, 1182: FUNCTION_ARG, FUNCTION_ARG_PARTIAL_NREGS): Type CUMULATIVE_ARGS is 1183: now a pointer to a structure instead of a structure, and storage is 1184: allocated via alloca. 1185: 1186: Thu Nov 29 22:03:57 1990 Richard Stallman (rms at mole.ai.mit.edu) 1187: 1188: * tm-vax.h (BLOCK_PROFILER, FUNCTION_BLOCK_PROFILER): New macros. 1189: 1190: Tue Nov 27 12:03:36 1990 Richard Stallman (rms at mole.ai.mit.edu) 1191: 1192: * tm-hp9k320.h (STANDARD_STARTFILE_PREFIX): Don't alter if already set. 1193: 1194: Tue Nov 27 12:28:45 1990 Michael Meissner (meissner at osf.org) 1195: 1196: * out-mips.c (function_arg, function_arg_advance): Pass single 1197: precision floating point numbers to prototyped functions by assuming 1198: only one word is passed rather than two unless the argument is 1199: passed in a floating point register. This behavior matches the MIPS 1200: C compiler. 1201: 1202: * tm-mips.h (CPP_SPEC): Add -D_MIPSEB -D_SYSTYPE_SYSV -D_LANGUAGE_C 1203: to SGI's CPP_SPEC. 1204: (MIPS_DEBUGGING_INFO): New macro. 1205: (PUT_SDB_*): Write debug information to the temporary file that 1206: buffers the text section, instead of using the current output file. 1207: 1208: * tm-iris.h (CPP_PREDEFINES): Move -D_LANGUAGE_C from CPP_PREDEFINES 1209: to CPP_SPEC since it's in the compiler name space, -ansi should not 1210: disable it. 1211: 1212: Mon Nov 26 18:37:39 1990 Michael Meissner (meissner at osf.org) 1213: 1214: * mips.md (stack compressor peephole): Remove check against 1215: stack_args_preallocated, since nobody sets it. 1216: (anonymous add/subtract patterns): Explicitly use the assembler 1217: temporary register if adding/subtracting a constant that won't fit 1218: in 16 bits -- Silicon Graphics asm complains. 1219: (fix_truncdfsi2, fix_truncsfsi2) Rewrite so that optimization of 1220: repeated conversions of the same number do not generate an insn not 1221: found error message (the generated insn was optimized to a gp->gp 1222: register move inside of a parallel with a clobber of a hard fp 1223: register). The new insns describe the machine more faithfully, and 1224: allow things like clobbering the fp register containing the value, 1225: if it is the last use rather than using a specific hard register. 1226: (fixuns_truncsfsi2, fixuns_truncdfsi2): New patterns to 1227: automatically convert {single,double} precision to unsigned. 1228: (anonymous move df/sf patterns): Put the operands to mfc1 in the 1229: order the assembler likes them (always put gp reg first, even if 1230: moving from gp register to fp register). 1231: (wild_insn): Remove bogus insn which is commented out. 1232: (jump): Remove TARGET_PIC code for now. 1233: 1234: * out-mips.c (toplevel, function_epilogue, mips_asm_file_end, 1235: mips_output_external): If optimizing for the global pointer, emit 1236: all code after processing the entire program, rather than emitting 1237: the code at the end of the function. Also, properly sized .extern's 1238: are emitted for variables that are not defined in the current 1239: module. This is because the MIPS assembler uses single pass 1240: semantics, and will emit a 2 instruction sequence for externals it 1241: doesn't know anything about, and GCC emits data definitions at the 1242: end of the program. You can't just emit a properly sized .extern 1243: either, because the assembler will complain if it sees an .extern 1244: followed by a definition. The ADDRESSABLE bit in the identifier 1245: node for the external name is used to indicate whether a definition 1246: for the name exists or not. This replaces code which told the 1247: assembler to preprocess the source, and include the same source 1248: twice. 1249: (sym_lineno): Add a new variable to keep trace of labels emitted 1250: after each .loc for Silicon Graphics. 1251: (function_prologue, function_epilogue, toplevel): Explicitly use 1252: temporary registers for stack frames > 32K, since the Silicon 1253: Graphics system doesn't automatically use $at if the value overflows, 1254: also save an instruction or two for large stack frames. 1255: (init_cumulative_args): Fix to work with the method types G++ 1256: produces as well as normal function types. 1257: (compare_collect): In debug code, print the mode symbolically. 1258: (trace): Take two additional arguments which are passed to fprintf. 1259: (override_options): Remove unsupported -mpic code. 1260: 1261: * tm-decstatn.h (toplevel): Add a GNU copyright. 1262: 1263: * tm-iris.h (toplevel): Add a GNU copyright. 1264: (CPP_SPEC): If -ansi, define __EXTENSIONS__. 1265: (SGI_TARGET): Define this for other mips files. 1266: (LABEL_AFTER_LOC): New macro to put a label after .loc. 1267: (SET_FILE_NUMBER): New macro to force .file/.loc file # to be 1. 1268: (ADJUST_STACK_SIZE): Don't deal with variable arguments. 1269: 1270: * tm-mips.h (*_SPEC): Add #ifdef's so other files can define their 1271: own, without #undef. 1272: (LINK_SPEC, ASM_SPEC): Pass -EB/-EL to assembler, linker so cross 1273: compilers can be made from little endian mips to big endian mips and 1274: vica versa. Generate an error message if the wrong flag is used. 1275: Do not pass -EB/-EL to Silicon Graphics assembler/linker. 1276: (CPP_SPEC, MACHINE_NAME): Add Silicon Graphics defaults. 1277: (MIPS_TEMP?_REGNUM): New macros for temporary registers used in the 1278: prologue and epilogue if the stack frame is > 32K. 1279: (ASM_OUTPUT_LABEL): If optimizing the global pointer, set the 1280: addressable bit in the indentifier node, so that mips_asm_file_end 1281: and mips_output_external can figure out if a particular identifier 1282: really is external to the compiliation unit. 1283: (ASM_OUTPUT_COMMON): Same change as ASM_OUTPUT_LABEL. 1284: (ASM_OUTPUT_LOCAL): Same change as ASM_OUTPUT_LABEL. 1285: (MACHINE_TYPE): Key off of OSF_OS and SGI_TARGET macros. 1286: (TARGET_DEFAULT): For OSF/1 make -mgas and -G 0 default. 1287: (STACK_POINTER_OFFSET): Define as 0. 1288: (external variables): Declare flag_omit_frame_pointer, 1289: sdb_label_count, mips_section_threshold, and sym_lineno. 1290: (STACK_ARGS_ADJUST): Protect with an #ifndef. 1291: (FUNCTION_PROFILER): Talk to the MIPS profiling routines the same 1292: way the MIPS compiler does. 1293: (INDIRECTABLE_ADDRESS_P): Allow disp+reg in addition to reg+disp. 1294: (ASM_FILE_START): If optimizing for the global pointer, create a 1295: temporay stream to hold text until program ends. Put gcc_compiled. 1296: in the data section. 1297: (ASM_DECLARE_FUNCTION_NAME): Switch file streams used to the text 1298: stream if optimizing for the global pointer. 1299: (ASM_FILE_END): New macro to invoke mips_asm_file_end function. 1300: (ASM_OUTPUT_SOURCE_LINE): Invoke macro LABEL_AFTER_LOC after .loc, 1301: so that Silicon Graphics can put out a label after each .loc. 1302: (ASM_OUTPUT_SOURCE_FILENAME): Invoke macro SET_FILE_NUMBER to set 1303: the file number, so Silicon Graphics can hardwire this to 1. 1304: (LABEL_AFTER_LOC, SET_FILE_NUMBER): Provide defaults if not Silicon 1305: Graphics. 1306: (ASM_OUTPUT_ASCII): Assign parameter to local variable, and remove 1307: special \a, \v support. 1308: (ASM_OUTPUT_IDENT): Dump #ident directives into .data. 1309: 1310: Mon Nov 26 16:50:57 1990 Richard Stallman (rms at mole.ai.mit.edu) 1311: 1312: * cccp.c (main): Handle -w. 1313: (warning): Do nothing if -w. 1314: * gcc.c (compilers): Pass -w to cpp. 1315: 1316: Sun Nov 25 16:37:10 1990 Richard Stallman (rms at mole.ai.mit.edu) 1317: 1318: * expr.c (emit_push_insn): Don't pad at all if space already allocated 1319: and padding is upward. 1320: 1321: * gcc.c (do_spec_1): Handle %W{...}. 1322: (compilers): Use %W{...} when passing -o option. 1323: 1324: Sat Nov 24 16:50:11 1990 Richard Stallman (rms at mole.ai.mit.edu) 1325: 1326: * va-mips.h (va_list): Don't typedef if _VA_LIST_ is defined. 1327: 1328: Wed Nov 21 15:57:48 1990 Richard Stallman (rms at mole.ai.mit.edu) 1329: 1330: * expr.c (expand_expr, expand_assignment): 1331: Check for TREE_THIS_VOLATILE in ARRAY_REF. 1332: expand_assignment failed to handle volstruct at all. 1333: 1334: Tue Nov 20 17:47:22 1990 Richard Stallman (rms at mole.ai.mit.edu) 1335: 1336: * out-sparc.c (output_fp_move_double): Handle reg+reg address 1337: when moving each word separately. 1338: 1339: * ns32k.md (addsi3): Don't use `addr' for very large displacements. 1340: 1341: * recog.c (address_operand): Don't allow volatile mem as indirect. 1342: 1343: Mon Nov 19 14:55:44 1990 Richard Stallman (rms at mole.ai.mit.edu) 1344: 1345: * out-sparc.c (output_fp_move_double): Don't assume arrays are aligned. 1346: 1347: Sun Nov 18 19:21:10 1990 Richard Stallman (rms at mole.ai.mit.edu) 1348: 1349: * expr.c (emit_push_insn): set extra to 0 once the padding is done, 1350: to avoid padding twice. 1351: 1352: Thu Nov 15 21:56:07 1990 Richard Stallman (rms at mole.ai.mit.edu) 1353: 1354: * math-68881.h (HUGE_VAL): Add extra braces on Sun. 1355: 1356: Wed Nov 14 14:30:29 1990 Richard Stallman (rms at mole.ai.mit.edu) 1357: 1358: * c-decl.c (grokdeclarator): Don't ignore prototype if -traditional. 1359: 1360: Tue Nov 13 18:16:47 1990 Richard Stallman (rms at mole.ai.mit.edu) 1361: 1362: * out-i860.c (output_block_move): Move .Lm%3 down one insn. 1363: 1364: Wed Nov 7 00:01:18 1990 Richard Stallman (rms at mole.ai.mit.edu) 1365: 1366: * c-parse.y (component_decl_list): Allow missing semi at end. 1367: 1368: Tue Nov 6 20:49:57 1990 Richard Stallman (rms at mole.ai.mit.edu) 1369: 1370: * expr.c (expand_builtin): For ffs, use mode of operand. 1371: 1372: * xm-iris.h (alloca): Don't define it. 1373: * tm-iris.h (CPP_SPEC): Define variant symbols starting with _. 1374: Define __EXTENSIONS__. 1375: 1376: * config.gcc (editing .gdbinit): Search current dir, not just srcdir. 1377: 1378: Sun Nov 4 12:55:03 1990 Richard Stallman (rms at mole.ai.mit.edu) 1379: 1380: * i386.md (extend*): Take out last change. 1381: Unix assembler rejects movsx... 1382: 1383: * expr.c (expand_expr): Special case for ignored volatile 1384: failed to return. 1385: 1386: Fri Nov 2 15:30:48 1990 Richard Stallman (rms at mole.ai.mit.edu) 1387: 1388: * va-i860.h (_VA_LIST): New macro avoids duplicate typedefs. 1389: 1390: * gnulib2.c (__builtin_saveregs): Add version for i860. 1391: 1392: * out-i860.c (output_block_move): Rearrange the copy loop. 1393: Now uses two labels and a more complicated lead-in. 1394: 1395: Thu Nov 1 18:15:11 1990 Richard Stallman (rms at mole.ai.mit.edu) 1396: 1397: * config.gcc (sun3, etc.): Assume os4 as default for Sun 3 and Sun 4. 1398: 1399: * math-68881.h (HUGE_VAL): Alternate definition for Suns. 1400: 1401: * tm-i386v.h (STARTFILE_SPEC, LIB_SPEC): Handle -posix. 1402: (CPP_SPEC): New macro. 1403: (LIB_SPEC): Handle -shlib. 1404: 1405: Wed Oct 31 22:12:33 1990 Richard Stallman (rms at mole.ai.mit.edu) 1406: 1407: * config.gcc (ultrix): New alternative. 1408: 1409: * i386.md (extend*): Change opcode to movsx. Was movs. 1410: 1411: Tue Oct 30 17:03:46 1990 Richard Stallman (rms at mole.ai.mit.edu) 1412: 1413: * tm-aix386.h (ASM_FILE_START): Don't do .noopt or .optim. 1414: 1415: * cccp.c (make_definition): Convert newline to newline-newline. 1416: 1417: Mon Oct 29 11:43:46 1990 Richard Stallman (rms at mole.ai.mit.edu) 1418: 1419: * fixincludes: Fix missing semi in rusers.h. 1420: 1421: Sun Oct 28 17:23:50 1990 Richard Stallman (rms at mole.ai.mit.edu) 1422: 1423: * cccp.c (macarg1): Don't skip the char after */. 1424: 1425: * Makefile: Put an `else' in every shell `if'. 1426: 1427: * m68k.md (zero-extend QI): Use gen_rtx, not change_address. 1428: 1429: * Makefile (USER_H): List va-*.h explicitly. 1430: (toplev.o): Depend on RTL_H. 1431: (expr.o): Depend on typeclass.h. 1432: (stamp-*): Depend on move-if-change. 1433: (install): Depend on various header files and gcc.1. 1434: (gcc.o): Depend on gvarargs.h and obstack.h. 1435: 1436: * i860.md (movsf): Handle moving CONST_DOUBLE to cpu reg. 1437: 1438: Fri Oct 26 11:16:03 1990 Richard Stallman (rms at mole.ai.mit.edu) 1439: 1440: * Makefile (libg): Add else to the if. 1441: 1442: Thu Oct 25 21:17:05 1990 Richard Stallman (rms at mole.ai.mit.edu) 1443: 1444: * integrate.c (access_parm_map): Handle refs to all words of DF reg. 1445: 1446: Wed Oct 24 13:50:13 1990 Richard Stallman (rms at mole.ai.mit.edu) 1447: 1448: * c-typeck.c (build_array_ref): Use main variant for value type. 1449: 1450: * expr.c (expand_expr): For ARRAY_REF, preserve const and volatile. 1451: 1452: * cccp.c (macarg1): Skip the */ that ends a comment. 1453: 1454: * cccp.c (rescan): Use newline_fix testing for comments before #. 1455: (handle_directive): Likewise, in comments before directive name. 1456: (rescan): Process macro when terminated by comment. 1457: Ignore backslash-newline in C++ comment. 1458: 1459: Tue Oct 23 20:35:13 1990 Richard Stallman (rms at mole.ai.mit.edu) 1460: 1461: * cccp.c (collect_expansion): Remove newline from error message. 1462: Error for ## at beginning or end of definition. 1463: 1464: * m68k.md (zero-extend QI): When pushing, store value at 1(sp). 1465: 1466: Mon Oct 22 13:07:31 1990 Richard Stallman (rms at mole.ai.mit.edu) 1467: 1468: * cccp.c (rescan): In the loop that handles numbers, discard \newline. 1469: 1470: * cccp.c (S_ISREG): Fix typo: do use the argument. 1471: 1472: * xm-sparc.h (alloca.h): Don't include if alloca already defined. 1473: 1474: Sun Oct 21 16:28:04 1990 Richard Stallman (rms at mole.ai.mit.edu) 1475: 1476: * reload.c (find_equiv_regs): Reject reg that overlaps goal. 1477: 1478: * expmed.c (extract_bit_field): For big fields, make sure 1479: value really goes in the target. 1480: 1481: Fri Oct 19 13:21:25 1990 Richard Stallman (rms at mole.ai.mit.edu) 1482: 1483: * fold-const.c (split_tree): Use NEGATE_EXPR to negate *conp. 1484: 1485: * expr.c (emit_push_insn): Allow const0_rtx for multi-word constant. 1486: 1487: Thu Oct 18 17:38:17 1990 Richard Stallman (rms at mole.ai.mit.edu) 1488: 1489: * reload1.c (choose_reload_regs): Cast reg class used as index. 1490: 1491: Wed Oct 17 00:21:25 1990 Richard Stallman (rms at mole.ai.mit.edu) 1492: 1493: * stmt.c (push_structure_value, pop_structure_value): New fns. 1494: * expr.c (expand_call): Use them if structure value needed. 1495: 1496: * gcc.c (do_spec_1): Null-terminate error message. 1497: 1498: * sdbout.c (sdbout_symbol): Handle subreg as DECL_RTL. 1499: This happens for vars from the parms of inline functions. 1500: * dbxout.c (dbxout_symbol): Likewise. 1501: 1502: Tue Oct 16 13:22:05 1990 Richard Stallman (rms at mole.ai.mit.edu) 1503: 1504: * expmed.c (extract_bit_field, store_bit_field): 1505: Handle fields wider than a word. 1506: Restrict special case for word-sized field to aligned words. 1507: 1508: * stddef.h (size_t): Also inhibit if _SIZE_T_. 1509: 1510: * cccp.c (macarg1): If traditional, let backslash quote always. 1511: 1512: * fixincludes (CTRL): Don't put quotes around a quote. 1513: 1514: Sun Oct 14 21:28:32 1990 Richard Stallman (rms at mole.ai.mit.edu) 1515: 1516: * flow.c (life_analysis): No hard regs for any pseudos live at setjmp. 1517: 1518: * c-decl.c (duplicate_decls): Don't suppress warning for fn defn 1519: after implicit declaration, if fn has already been defined. 1520: 1521: Thu Oct 11 13:15:36 1990 Richard Stallman (rms at mole.ai.mit.edu) 1522: 1523: * expr.c (saveregs_value): New variable. 1524: (init_expr): Init the variable. 1525: (expand_builtin): Don't call __builtin_saveregs twice in one function. 1526: 1527: * va-*.h: Rename all structure fields to start with __. 1528: * va-pyr.h: Rename variables also. 1529: (va_start): Delete the unmatched {. 1530: (va_end): Now a nop. 1531: 1532: Wed Oct 10 22:01:59 1990 Richard Stallman (rms at mole.ai.mit.edu) 1533: 1534: * va-sparc.h (__va_ctl): Rename fields to start with __. 1535: 1536: Tue Oct 9 14:47:53 1990 Richard Stallman (rms at mole.ai.mit.edu) 1537: 1538: * flow.c (propagate_block): Include NOTE at end of block in scan. 1539: 1540: * fixincludes: Fix missing semicolon in rstat.h. 1541: 1542: Mon Oct 8 13:09:40 1990 Richard Stallman (rms at mole.ai.mit.edu) 1543: 1544: * loop.c (eliminate_biv): Handle mult_val < 0 by reversing compare. 1545: 1546: * cccp.c (main): Handle .S when removing suffix for deps output. 1547: 1548: Sun Oct 7 23:33:24 1990 Richard Stallman (rms at mole.ai.mit.edu) 1549: 1550: * tm-i386v.h (STARTFILE_SPEC): Handle -p here. 1551: (LIB_SPEC): Not here. 1552: 1553: Sun Sep 30 21:35:52 1990 Richard Stallman (rms at mole.ai.mit.edu) 1554: 1555: * print-tree.c (print_node_brief): Declare i for printing REAL_CST. 1556: 1557: Sat Sep 29 18:40:08 1990 Richard Stallman (rms at mole.ai.mit.edu) 1558: 1559: * fixincludes: For link pointing outside /usr/include, 1560: use $x rather than $dest. 1561: 1562: Wed Sep 26 12:44:54 1990 Richard Stallman (rms at mole.ai.mit.edu) 1563: 1564: * tm-mips-news.h: New file. 1565: 1566: * out-i860.c (output_size_for_block_move): Don't decrement. 1567: (output_block_move): Decrement initial storing address instead. 1568: 1569: * c-parse.y (yylex): Always try unsigned int if `u' is written. 1570: 1571: * tm-seq386.h (LINK_SPEC): Define it. 1572: 1573: * c-typeck.c (build_unary_op): Don't let &* make an lvalue. 1574: 1575: Sun Sep 23 14:59:21 1990 Richard Stallman (rms at mole.ai.mit.edu) 1576: 1577: * cccp.c (S_ISREG): Define it unless overridden. 1578: (main, finclude): Use that. 1579: 1580: * reload1.c (reload): If insn after a function call uses the 1581: function value, and that reg is spilled, and the insn might 1582: use it for reloading, add an extra need. 1583: (reload_as_need): Detect such insns for new arg to choose_reload_regs. 1584: (choose_reload_regs): In that case, don't choose function value reg. 1585: 1586: * tm-convex1.h, tm-convex2.h (CPP_SPEC): Define __NO_INLINE_MATH. 1587: 1588: Sat Sep 22 14:01:00 1990 Richard Stallman (rms at mole.ai.mit.edu) 1589: 1590: * tree.c (build_index_type): Don't hash variable-bound type. 1591: 1592: * tm-aix386.h (LIB_SPEC): Different library name for -p. Always -lc. 1593: (LINK_SPEC): Don't pass -lg or -g. 1594: (CPP_PREDEFINES): Define _I386 and _AIX; don't define unix. 1595: (SDB_DEBUGGING_INFO): Define it. 1596: (DBX_DEBUGGING_INFO): Undefine it. 1597: (ASM_FILE_START): Output .noopt if not optimizing. 1598: (PCC_BITFIELD_TYPE_MATTERS): Define it. 1599: (FUNCTION_PROFILER): Add definition. 1600: 1601: Thu Sep 20 13:16:39 1990 Richard Stallman (rms at mole.ai.mit.edu) 1602: 1603: * tm-hp9k320.h (PROFILE_BEFORE_PROLOGUE): Define it. 1604: (FUNCTION_PROFILER): Don't redefine if not HPUX_ASM. 1605: 1606: Tue Sep 18 22:46:02 1990 Richard Stallman (rms at mole.ai.mit.edu) 1607: 1608: * sdbout.c (sdbout_one_type): Don't output undefined structs, etc. 1609: 1610: Mon Sep 17 13:35:45 1990 Richard Stallman (rms at mole.ai.mit.edu) 1611: 1612: * mips.md (movdf): Move words in opposite order if overlap. 1613: 1614: Sun Sep 16 16:27:29 1990 Richard Stallman (rms at mole.ai.mit.edu) 1615: 1616: * toplev.c (rest_of_decl_compilation): Output TYPE_DECL here for sdb 1617: only if top_level. 1618: 1619: * expr.c (expand_builtin): Error for __builtin_nextarg 1620: if function definition doesn't have `...'. 1621: 1622: * c-typeck.c (build_conditional_expr): Don't skip arg promotion. 1623: 1624: Fri Sep 14 17:26:59 1990 Richard Stallman (rms at mole.ai.mit.edu) 1625: 1626: * sdbout.c (plain_type_1): Save up array dims on the way out 1627: in the reverse order. 1628: (plain_type): Print the innermost ones, reversing them. 1629: 1630: Thu Sep 13 16:00:05 1990 Richard Stallman (rms at mole.ai.mit.edu) 1631: 1632: * gstdarg.h: New name for stdarg.h. 1633: * Makefile (install): Rename gstdarg.h while installing it. 1634: 1635: * fixincludes: Discard `.' from value of `files'. 1636: 1637: * sdbout.c (PUT_SDB_LAST_DIM): Get rid of SDB_DELIM. 1638: (plain_type): Output accumulated array dims and size. 1639: (plain_type_1): Eliminate arg NOSIZE. Save up dims and size. 1640: Call self rather than plain_type for pointers and functions. 1641: (sdbout_array_type, sdbout_array_depth): Functions deleted. 1642: 1643: Wed Sep 12 18:47:30 1990 Richard Stallman (rms at mole.ai.mit.edu) 1644: 1645: * expmed.c (expand_divmod): Use divmod insn for divide if appro. 1646: 1647: Tue Sep 11 13:24:58 1990 Richard Stallman (rms at mole.ai.mit.edu) 1648: 1649: * gnulib.c (_bb_init_func): Library member now named _bb. 1650: 1651: Mon Sep 10 13:07:39 1990 Richard Stallman (rms at mole.ai.mit.edu) 1652: 1653: * sdbout.c (plain_type_1): New argument NOSIZE. Inhibits size output. 1654: (sdbout_array_type): Call plain_type_1 directly; set NOSIZE. 1655: 1656: * sdbout.c (sdbout_array_type): New argument DEPTH. 1657: Don't output more than SDB_MAX_DIM dimensions. 1658: (sdbout_array_depth): New function. 1659: (plain_type_1): Start DEPTH by calling sdbout_array_depth. 1660: 1661: Sun Sep 9 18:05:56 1990 Richard Stallman (rms at mole.ai.mit.edu) 1662: 1663: * tm-mips.h (CPP_SPEC): Error for -EL and -EB. 1664: 1665: * sdbout.c (plain_type_1): Test KNOWN_TYPE_TAG with TREE_ASM_WRITTEN. 1666: (sdbout_symbol): Call sdbout_one_type before the switch. 1667: (sdbout_field_types): Look at targets of pointers. 1668: (sdbout_one_type): Call sdbout_field_types. 1669: 1670: * stor-layout.c (layout_record): Update size_unit adding var to var. 1671: 1672: * tm-i386v4.h: New file. 1673: 1674: Fri Sep 7 13:10:24 1990 Richard Stallman (rms at mole.ai.mit.edu) 1675: 1676: * cccp.c (STDC_VALUE): New macro, defaulting to 1. 1677: (intialize_builtins): Use that. 1678: 1679: * print-tree.c (print_node): Correct first_rtl for SAVE_EXPR. 1680: 1681: * m68k.md (movqi): `st' does not set cc's. 1682: 1683: Wed Sep 5 16:18:04 1990 Richard Stallman (rms at mole.ai.mit.edu) 1684: 1685: * Makefile (includes): Use proper directory. 1686: 1687: Tue Sep 4 13:01:37 1990 Richard Stallman (rms at mole.ai.mit.edu) 1688: 1689: * c-decl.c (store_parm_decls): Let extra_warnings control 1690: warnings about parms not declared. 1691: 1692: * local-alloc.c (block_alloc): Don't try to lower qty_birth 1693: if reg_qty is negative. 1694: 1695: * flow.c (life_analysis): Move code to detect stack-adjust insns. 1696: It was unreachable. 1697: 1698: * reload1.c (reload): Don't complete group with explicitly used reg. 1699: 1700: Mon Sep 3 14:37:41 1990 Richard Stallman (rms at mole.ai.mit.edu) 1701: 1702: * Makefile (RANLIB): Don't specify the directory. 1703: 1704: * local-alloc.c (reg_classes_overlap_p): Cast enums to ints. 1705: 1706: Fri Aug 31 17:09:38 1990 Michael Meissner (meissner at osf.org) 1707: 1708: * mips.md (anonymous add insn before addsi3): Allow offsets from the 1709: frame pointer to be >16 bits, just like the stack pointer. This is 1710: to prevent insn's not found generated when optimizing programs that 1711: have stack frames more than 32K, and the optimizer wants to load the 1712: address of an array into a register, it does so by generating a PLUS 1713: insn with the appropriate offset. This PLUS insn is never checked 1714: to see if the machine can handle the offset. 1715: (anonymous subtract insn before subsi3): same change as above. 1716: (addsi3): Don't accept large constants with a !n constraint. Just 1717: reject any large constants, the anonymous add pattern before addsi 1718: will catch references to the stack and frame pointers. 1719: (subsi3): Same change as addsi3. 1720: 1721: Sat Sep 1 16:14:31 1990 Richard Stallman (rms at mole.ai.mit.edu) 1722: 1723: * expr.c (convert_move): Don't forget to set `target'. 1724: 1725: Fri Aug 31 14:37:36 1990 Richard Stallman (rms at mole.ai.mit.edu) 1726: 1727: * sdbout.c (sdbout_begin_block): Delete excess arg to sdbout_block. 1728: 1729: Wed Aug 29 17:01:55 1990 Richard Stallman (rms at mole.ai.mit.edu) 1730: 1731: * local-alloc.c (combine_regs): Don't combine regs if classes 1732: fail to overlap usefully, if either reg says preferred or nothing. 1733: (reg_classes_overlap_p): New function. 1734: 1735: Tue Aug 28 21:28:54 1990 Richard Stallman (rms at mole.ai.mit.edu) 1736: 1737: * sdbout.c (plain_type_1): Output .dim X,Y...; for multi-dim array. 1738: (sdbout_array_dim): New recursive subroutine. 1739: (PUT_SDB_DIM): Macro eliminated. 1740: (PUT_SDB_START_DIM, PUT_SDB_NEXT_DIM, PUT_SDB_LAST_DIM): New macros. 1741: * tm-3b1.h: Override PUT_SDB_START_DIM. 1742: 1743: Sun Aug 26 21:28:20 1990 Richard Stallman (rms at mole.ai.mit.edu) 1744: 1745: * cccp.c (make_definition): Eliminate any backslash-newline. 1746: 1747: Sat Aug 25 17:20:47 1990 Richard Stallman (rms at mole.ai.mit.edu) 1748: 1749: * tm-att386.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): New macros. 1750: (BSS_SECTION_ASM_OP): New macro. 1751: (ASM_OUTPUT_LOCAL): Call bss_section, don't just print .bss. 1752: 1753: Fri Aug 24 17:16:28 1990 Richard Stallman (rms at mole.ai.mit.edu) 1754: 1755: * cse.c (rtx_cost): Cost of MEM depends on number of words. 1756: 1757: * i860.md (movsf, movdf): Allow moving G to m in constraints. 1758: * tm-i860.h (CONST_COSTS): Make SFmode constant cheaper. 1759: 1760: Thu Aug 23 14:19:20 1990 Richard Stallman (rms at mole.ai.mit.edu) 1761: 1762: * c-typeck.c (digest_initializer): No pedantic warning for string 1763: and array of unsigned char. 1764: 1765: * tree.c (get_identifier): Do id_clash_len stuff if length equals that. 1766: 1767: Wed Aug 22 15:06:11 1990 Richard Stallman (rms at mole.ai.mit.edu) 1768: 1769: * loop.c (scan_loop): Don't use REG_EQUAL notes as invariants 1770: unless they come with REG_RETVAL notes. 1771: 1772: Tue Aug 21 20:03:51 1990 Michael Meissner (meissner at osf.org) 1773: 1774: * Makefile (install): Add code to build libg.a if it doesn't exist 1775: when installing GCC. 1776: 1777: * out-mips.c (toplevel): add external declaration for asm_out_file, 1778: and 2 new FILE *'s (asm_out_data_file, asm_out_text_file) so we can 1779: switch between two files when optimizing for the global pointer. 1780: Also add a structure type to hold the linked list of externs that 1781: GCC wishes to emit. 1782: 1783: Everything between the function prologue and epilogue are written to 1784: a temporary file, which is written to the normal output file after 1785: the entire program is processed. This is needed because the MIPS 1786: assembler assumes that all externals should be referenced with a 2 1787: instruction sequence instead of the faster 1 instruction sequence 1788: off of the GP, unless a proper .extern proceeds any use. We can't 1789: emit the .extern because the assembler will complain if later there 1790: is a definition for the variable, such as GCC puts out at the end of 1791: the program. 1792: 1793: (compare_collect): print mode symbolically in debug code. 1794: 1795: (mips_output_external): Remove code which used the preprocessor to 1796: handle the global pointer, and remember all externs in a linked list 1797: for use at the end of the program. 1798: 1799: (mips_asm_file_end): If optimizing the global pointer, emit all 1800: externals which don't have definitions as the appropriate sized 1801: .extern, and then emit the code for functions that was written to a 1802: temporary file, so that the code comes after the appropriate 1803: definition or declaration. 1804: 1805: (function_epilogue): If optimizing for the global pointer, switch 1806: the current output file to the data file after all of the epilogue 1807: is written out. 1808: 1809: * tm-mips.h (ASM_SPEC): Duplicate ASM_SPEC into 2 #ifdef sections (one 1810: for the little endian DECstation, and the other for everybody else 1811: who uses the MIPS in a big endian mode), and pass the appropriate 1812: -EL and -EB switches to the assembler. This allows building a cross 1813: compiler for a different endian MIPS. 1814: 1815: (LINK_SPEC): Pass -EL and -EB to linker, just like ASM_SPEC. 1816: 1817: (MACHINE_TYPE): For DECstation, specify "Ultrix Dec Mips" instead of 1818: just "Dec Mips". 1819: 1820: (FUNCTION_PROFILER): Call _mcount in the appropriate MIPS fashion. 1821: 1822: (ASM_FILE_START): If optimizing for the global pointer, open a 1823: temporary file to write the code to (see out-mips.c above). 1824: 1825: (ASM_DECLARE_FUNCTION_NAME): If optimizing for the global pointer, 1826: switch the current output file to asm_out_text_file. 1827: 1828: (ASM_OUTPUT_COMMON): Remove the old code which used the preprocessor 1829: to optimize for the global pointer. 1830: 1831: Tue Aug 21 17:44:49 1990 Richard Stallman (rms at mole.ai.mit.edu) 1832: 1833: * make-cc1.com: Compile and link version.c. 1834: 1835: * expr.c (convert_move): Handle expand_unop retval not same as target. 1836: 1837: * reload.c (find_reloads): For register letters, don't win if BLK. 1838: 1839: * flow.c (mark_set_1, mark_used_regs): Update reg_first_use. 1840: (allocate_for_life_analysis): Allocate and clear it. 1841: * local-alloc.c (block_alloc): Calculate INSN_MAP. 1842: Get first use of each reg from reg_first_use. 1843: 1844: * tm-vms.h (MAYBE_VMS_FUNCTION_PROLOGUE): Distinguish C from C++. 1845: (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Add a const data section. 1846: (ASM_OUTPUT_EXTERNAL): Use that section. 1847: (SELECT_SECTION): Go to that section when appropriate. 1848: 1849: Mon Aug 20 13:00:53 1990 Richard Stallman (rms at mole.ai.mit.edu) 1850: 1851: * gcc.c (process_command): Split -oFOO into two arguments. 1852: 1853: * out-mips.c, tm-mips.h: Changes by Meissner. 1854: 1855: * stmt.c (expand_asm_operands): Handle COMPONENT_REF and 1856: ARRAY_REF directly as output operands. Avoids crash if BLKmode. 1857: 1858: * tm-i386vgas.h: New file, copied from tm-i386gas.h. 1859: (ASM_OUTPUT_LABELREF): Eliminate leading underscores. 1860: (STARTFILE_SPEC, LIB_SPEC): Define as in tm-i386v.h. 1861: (PCC_BITFIELD_TYPE_MATTERS): Likewise. 1862: * config.gcc (i386-sysv-gas): Use the new file. 1863: 1864: * tm-i860.h (PRINT_OPERAND): Convert double to float 1865: for SFmode operand. 1866: (PRINT_OPERAND_EXTRACT_FLOAT): New macro. 1867: 1868: Sun Aug 19 17:23:10 1990 Richard Stallman (rms at mole.ai.mit.edu) 1869: 1870: * c-parse.y (lineno): Delete definition--it's in toplev. 1871: 1872: * output.h: Make all variables extern. 1873: 1874: * tm-hp9k320bsd.h (CPP_SPEC): Def __HAVE_68881__ like __HAVE_FPU__. 1875: 1876: * fixincludes: Handle uses of _IO* followed by spaces. 1877: Change redirections for cd when testing that directory exists. 1878: 1879: Thu Aug 16 22:44:35 1990 Richard Stallman (rms at mole.ai.mit.edu) 1880: 1881: * out-sparc.c (output_scc_insn): Clear CC_IN_FCCR after 1882: operation since setting a register to the result of a 1883: floating-point comparision affects the INTEGER condition code 1884: register. 1885: 1886: * stmt.c: fixup_gotos must ignore blocks started after the goto. 1887: (block_start_count): New variable, and slot in some structures. 1888: (expand_function_start): Initialize it. 1889: (expand_start_bindings): Increment it and store in struct nesting. 1890: (expand_goto): Store it in struct goto_fixup. 1891: (fixup_gotos): Compare fixup's count with block's count. 1892: 1893: Wed Aug 15 16:46:04 1990 Richard Stallman (rms at mole.ai.mit.edu) 1894: 1895: * out-i860.c (output_size_for_block_move): Do subtract ALIGN. 1896: 1897: Mon Aug 13 17:45:13 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1898: 1899: * tm-i860.h (GO_IF_LEGITIMATE_ADDRESS): Typo testing offset alignment. 1900: 1901: * config.gcc (sun3-mach): New alternative. 1902: * tm-sun3mach.h: New file. 1903: 1904: * m68k.md (bfextu patterns): Set CC_NOT_NEGATIVE. 1905: 1906: Sun Aug 12 14:25:23 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1907: 1908: * tree.h (enum built_in_function): Delete comma after last name. 1909: * c-parse.h (enum rid): Likewise. 1910: * expr.h (enum optab_methods): Likewise. 1911: 1912: * config.gcc (genix): Set target_machine. 1913: * tm-genix.h (ASM_OUTPUT_DOUBLE): New overriding definition. 1914: 1915: Thu Aug 9 15:19:17 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1916: 1917: * tm-hp9k320.h (CPP_SPEC): Define _HPUX_SOURCE if not ANSI. 1918: (CPP_PREDEFINES): Don't define it here. 1919: Do define alternatives with __ prepended. 1920: 1921: * tm-mips.h (CPP_SPEC): Don't do -I if -nostdinc. 1922: 1923: Wed Aug 8 13:35:00 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1924: 1925: * cccp.c (do_define, do_undef): Warn if macro name is `defined'. 1926: 1927: * tm-mips.h (ASM_INT_OP): Add missing space. 1928: 1929: * tm-sun386i.h (ASM_IDENTIFY_GCC): If profiling, put a NOP after 1930: gcc_compiled. 1931: 1932: Tue Aug 7 12:19:46 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1933: 1934: * out-mips.c (need_ent_after_loc): Variable deleted. 1935: (function_prologue): Output initial .ent and initial label. 1936: * tm-mips.h: Add extern declarations. 1937: (ASM_SPEC): No -nocpp if optimizing. 1938: (STACK_ARGS_ADJUST): Round size up to 16. Nothing else. 1939: (PRINT_OPERAND_ADDRESS): Eliminate irrelevant things 1940: such as scaled indexing. 1941: (ASM_OUTPUT_SOURCE_FILENAME): Simplify code. 1942: (ASM_OUTPUT_SOURCE_LINE): Flush code to handle need_ent_after_loc. 1943: (ASM_DECLARE_FUNCTION_NAME): Likewise. 1944: (*_SECTION_ASM_OP): Delete the \n. 1945: 1946: * pyr.md (extendsfdf2, truncsfdf2, float*, fix*): Use `&'. 1947: 1948: Mon Aug 6 12:46:07 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1949: 1950: * c-decl.c (grokdeclarator): Don't warn if initialized fcn is extern. 1951: (start_decl): Don't warn at all for initialized extern. 1952: 1953: * final.c (final_start_function): Handle PROFILE_BEFORE_PROLOGUE. 1954: (profile_function): New subroutine. 1955: 1956: * tm-i386sco.h: New file. 1957: * config.gcc (i386-sco): New alternative. 1958: 1959: Sun Aug 5 12:36:46 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1960: 1961: * stor-layout.c (layout_record, layout_union): Test value of 1962: PCC_BITFIELD_TYPE_MATTERS for being nonzero, if it is defined. 1963: * tm-*.h: Define with value 1. 1964: * tm-vax.h (PCC_BITFIELD_TYPE_MATTERS): Depends on -mvaxc-alignment. 1965: 1966: * proto.h: New file. 1967: * Makefile.in (USER_H): Add that file. 1968: 1969: * loop.c (other_reg_use_p): Change && to || in test at beginning. 1970: 1971: Fri Aug 3 00:18:35 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1972: 1973: * gcc.c (ENDFILE_SPEC): New macro. 1974: (do_spec_1): Handle %E. 1975: (link_spec): Use %E. 1976: 1977: * xm-i386.h (alloca): Define without arg. 1978: 1979: * Makefile (RANLIB): New var, used in various places. 1980: 1981: * gnulib2.c (__bb_init_func): Add dummy function to prevent warning. 1982: 1983: * Makefile (install): Look for ranlib in both places. 1984: (stage1, ...): Likewise. And run ranlib even after ln. 1985: 1986: Tue Jul 31 23:59:45 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1987: 1988: * tm-encore.h (FUNCTION_PROFILER): Override, putting `.' in label. 1989: 1990: Mon Jul 30 13:52:45 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1991: 1992: * gnulib2.c (__floatdidf): Fix typo. 1993: 1994: Sun Jul 29 16:05:27 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 1995: 1996: * tm-vms.h (ASM_OUTPUT_EXTERNAL): Check TREE_READONLY. 1997: 1998: * xm-vms.h (alloca): Use built-in alloca. 1999: 2000: Fri Jul 27 15:07:00 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2001: 2002: * combine.c (subst): Handle (ASHIFT 1 x) in (EQ (AND ... y) 0) 2003: only if little-endian. 2004: 2005: Thu Jul 26 17:22:56 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2006: 2007: * tm-mips.h (ASM_OUTPUT_SOURCE_LINE): Delete pic stuff (was for v2). 2008: 2009: * fold-const.c (rshift_double): Reset carry after each shift of 2010: one bit. 2011: 2012: Wed Jul 25 16:21:08 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2013: 2014: * tm-vms.h (ASM_OUTPUT_EXTERNAL): Use assemble_name. 2015: 2016: Tue Jul 24 15:35:04 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2017: 2018: * c-typeck.c (build_binary_op_nodefault): Allow compare of any 2019: pointer with const void *, etc. 2020: 2021: * reload1.c (reload): Don't use fixed reg or frame pointer in group. 2022: 2023: * c-decl.c (grokdeclarator): Error for initialized parm. 2024: 2025: Mon Jul 23 14:33:53 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2026: 2027: * Makefile (install): chmod only the header files. 2028: 2029: Sat Jul 21 13:58:16 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2030: 2031: * cccp.c (O_RDONLY): Define it if not defined. 2032: 2033: * c-decl.c (finish_decl): No error for nonstatic incomplete array. 2034: 2035: Sat Jul 14 14:59:33 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2036: 2037: * gcc.c (compilers): Pass -P to cpp. 2038: 2039: * tm-mips.h (ASM_OUTPUT_SOURCE_LINE): Handle TARGET_GAS, TARGET_PIC. 2040: 2041: Thu Jul 12 12:28:16 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2042: 2043: * stor-layout.c (layout_record): Handle BITFIELD_NBYTES_LIMITED. 2044: 2045: * stmt.c (group_case_nodes): Don't group across an overflow. 2046: 2047: * combine.c (subst, case LSHIFT): Use gen_lowpart_for_combine. 2048: 2049: Wed Jul 11 15:17:32 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2050: 2051: * combine.c (subst, case LSHIFT): 2052: Fix condition for (lshift ... (sign_extend ...)). 2053: 2054: Tue Jul 10 17:02:54 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2055: 2056: * c-decl.c (pushdecl): No shadow warning if TREE_INLINE is set. 2057: * integrate.c (copy_parm_decls): Set TREE_INLINE in the copies. 2058: (copy_decl_tree): Likewise. 2059: 2060: * c-parse.y (yylex): Terminate token_buf after integer. 2061: 2062: Mon Jul 9 16:56:55 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2063: 2064: * expr.c (expand_call): Don't check args[i].partial when bumping 2065: negative args_size up to 0. 2066: 2067: * sparc.md (call recognizers): Don't allow address arithmetic. 2068: 2069: Sun Jul 8 14:22:22 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2070: 2071: * c-typeck.c (build_c_cast): Reinsert missing default_conversion call. 2072: 2073: * gnulib.c (__bb_init_func): Ensure this defines >=1 symbol. 2074: 2075: Fri Jul 6 12:28:44 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2076: 2077: * c-typeck.c (build_indirect_ref): 2078: No error if result is incomplete array. 2079: 2080: * m68k.md (casesi2 recognizer): Handle new ASM_RETURN_CASE_JUMP macro. 2081: 2082: * expmed.c (store_bit_field, extract_bit_field): New arg TOTAL_SIZE. 2083: Don't extract a bigger unit from memory than this. 2084: * expr.c: Callers changed. 2085: (store_field): New arg TOTAL_SIZE; callers changed. 2086: 2087: * xm-ns32k.h: Use built in alloca. 2088: * ns32k.md (movsf): Output float constants only if GAS_SYNTAX. 2089: (call, call_value): Support JSR_ALWAYS. 2090: Change handling of bsr for GAS_SYNTAX. 2091: 2092: Thu Jul 5 15:05:19 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2093: 2094: * mips.md (divdf3): Fix spacing in output. 2095: (movdf): Fix bad output storing CPU regs into memory. 2096: * out-mips.c (function_prologue): Bug testing fmask. 2097: (function_epilogue): Bug in spacing in output. 2098: 2099: * c-typeck.c (build_conditional_expr): Handle ((void *) 0). 2100: Allow 0 versus function pointer. 2101: 2102: Tue Jul 3 21:43:40 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2103: 2104: * c-decl.c (finish_struct): Lay out any array typedefs now completed. 2105: (layout_array_type): New function. 2106: (grokdeclarator): Don't warn for incomplete array in typedef. 2107: 2108: * tm-*.h (ASM_OUTPUT_COMMON): Use %u, not %d. 2109: (ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP): Likewise. 2110: 2111: Mon Jul 2 12:07:08 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2112: 2113: * i386.md (tstsf): Clobber reg 0 in SImode. 2114: 2115: Sun Jul 1 14:28:58 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2116: 2117: * stddef.h: Check __SIZE_T also. 2118: 2119: * toplev.c: Include types.h first. 2120: 2121: * i386.md (trunc*2): Don't allow moving symbolic constant to memory. 2122: Use wider move only for symbolic constant. 2123: 2124: * tm-convex.h (LINK_SPEC): Posix link flags. 2125: * tm-convex.h (STARTFILE_SPEC): Posix start files. 2126: * tm-convex[12].h (CPP_SPEC): Posix defines. 2127: * tm-convex[12].h (LIB_SPEC): Posix libraries. 2128: * tm-conv[12]os7.h: New files. 2129: * config.gcc: use tm-conv*os7 if /usr/include/stdlib.h isn't there. 2130: 2131: * xm-convex.h (S_IFMT, S_IFREG): make visible if hidden for posix. 2132: * xm-convex.h (_PROTO): define to keep 8.0 includes from screwing up. 2133: 2134: * tm-convex.h (ASM_OUTPUT_{FLOAT,DOUBLE}, PRINT_OPERAND): 2135: use %e instead of %#g, which is broken or non-posix. 2136: 2137: * tm-convex.h (current_section_is_text): make extern. 2138: * out-convex.c (current_section_is_text): define here. 2139: * tm-convex.h (OVERRIDE_OPTIONS), out-convex.c (override_options): 2140: useless; remove. 2141: * tm-convex.h (CPP_PREDEFINES): remove parsec, long gone from 2142: system includes. 2143: 2144: Fri Jun 29 12:42:16 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2145: 2146: * tm-vax.h (LEGITIMATE_CONSTANT_P): Fix typo. 2147: 2148: * out-mips.c (function_arg_partial_nregs): Round size up to words. 2149: 2150: Thu Jun 28 12:50:44 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2151: 2152: * cse.c (cse_insn): Replace src only with general_operand 2153: unless moving to a register. 2154: 2155: * expr.c (expand_expr): Use assign_stack_local for constructors. 2156: 2157: * Makefile (STAGESTUFF): Change names of stamp files. 2158: 2159: * pyr.md (tstqi): Change comma to semicolon. 2160: 2161: * out-mips.c (init_cumulative_args): Fix name of debug_tree. 2162: 2163: * vax.md (movsi special case): Fix assembler syntax. 2164: * tm-vax.h (LEGITIMATE_CONSTANT_P): Add missing backslashes. 2165: * tm-ultrix.h (DOLLARS_IN_IDENTIFIERS): Define as 1. 2166: 2167: Wed Jun 27 14:04:51 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2168: 2169: * expr.c (emit_move_insn): Force constants to mem only if predicate 2170: fails. 2171: * out-vax.c (supergeneral_operand): New function. 2172: * vax.md (movsi): Use that predicate. 2173: 2174: * out-mips.c (function_prologue): Don't use sp_str in .frame. 2175: Use sw rather than sd in cases 5 and 7. 2176: 2177: Tue Jun 26 14:21:36 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2178: 2179: * rtl.h (EXTERNAL_SYMBOL_P): New macro. 2180: * varasm.c (make_decl_rtl): Set it if variable is external. 2181: * tm-vms.h (NO_EXTERNAL_INDIRECT_ADDRESS): Define this. 2182: * tm-vax.h (INDIRECTABLE_CONSTANT_ADDRESS_P): New macro. 2183: Value depends on NO_EXTERNAL_INDIRECT_ADDRESS. 2184: (INDIRECTABLE_ADDRESS_P, LEGITIMATE_CONSTANT_P): Value depends... 2185: (NONINDIRECT_ADDRESS_P): New macro. 2186: (GO_IF_NONINDEXED_ADDRESS): Use NONINDIRECT_ADDRESS_P sometimes. 2187: * vax.md (movsi special case): New pattern for loading 2188: illegitimate constants. 2189: * out-vax.c (print_operand_address): Handle reg+(reg+const). 2190: 2191: * tm-sparc.h (LINK_SPEC): Delete spurious `-'. 2192: * tm-sun386i.h (LINK_SPEC): Define it, handling -Bstatic and aliases. 2193: * tm-sun3.h (ASM_OUTPUT_FLOAT_OPERAND): Delete spurious `\n'. 2194: (ASM_OUTPUT_DOUBLE_OPERAND): Likewise. 2195: 2196: Mon Jun 25 18:45:51 1990 Michael Meissner (meissner at osf.org) 2197: 2198: * sdbout.c: If not on a COFF system, define COFF symbols by hand. 2199: 2200: * out-mips.c (legitimize_constant_expr): Delete unused function. 2201: (output_load_immediate, addr_compensate): Delete unused functions. 2202: (compare_restore): Redo code based on eliminating peepholes. 2203: (function_prologue): New function, emit correct entry sequence. 2204: (function_epilogue): New function, emit correct exit sequence. 2205: Also output .ent, .frame, .mask, .fmask, and .end, for back tracing. 2206: (mips_fix_frame_pointer): New function to eliminate frame. 2207: (function_arg_partial_nregs, function_arg, function_arg_advance): 2208: (init_cumulative_args): New funtions. 2209: 2210: * stdarg.h (va_arg): Alternate definition for mips. 2211: * va-mips.h: Total rewrite. 2212: These changes in tm-mips.h have not yet been done. 2213: * tm-mips.h (ASM_OUTPUT_DOUBLE): Put floating point out in hex. 2214: (ASM_OUTPUT_FLOAT): Put floating point out in hex. 2215: (PRINT_OPERAND): Add 'D', 'L', and 'M' codes. 2216: (STRUCTURE_SIZE_BOUNDARY): Set this to 8 for MIPS cc compatibility. 2217: (CC1_SPEC): Add -O1 which is same as -O. 2218: (CC1_SPEC): Add -O3 which is -O2 + -finline-functions. 2219: (TARGET_SWITCHES): Use hex for options. 2220: (TARGET_SWITCHES): Rename -munix to -mmips-as. 2221: (TARGET_SWITCHES): Add -mgas as oppisite of -mmips-as. 2222: (TARGET_SWITCHES): Add -mpic, -mpic-large-object (but no code yet). 2223: (TARGET_SWITCHES): Make -mdebug* comments match reality. 2224: (PROMOTE_PROTOTYPES): Define this macro. 2225: (FIXED_REGISTERS): Allow $f0, $f2, and $f14 to be allocated. 2226: (NO_LIBG): Define this macro. 2227: (TARGET_VERSION): Be more specific about which vendors MIPS system. 2228: (ASM_FILE_START): Call ASM_OUTPUT_SOURCE_FILENAME, print_options. 2229: (ASM_OUTPUT_SOURCE_FILENAME): Emit correct .file directive. 2230: (ASM_OUTPUT_SOURCE_LINE): Emit correct .loc directive. 2231: (EXTRA_SECTIONS): Add rdata_section. 2232: (SELECT_SECTION, SELECT_SECTION_MODE): Use .rdata if feasible. 2233: (SDB_DEBUGGING): Define this, but only line #'s supported now. 2234: (FRAME_POINTER_REQUIRED): Allow no frame ptr in leaf procedures. 2235: (GO_IF_LEGITIMATE_ADDRESS): Don't allow REG+70000 as address. 2236: (various): Use MIPS profiling (no _mcount). 2237: (various): Add new macros to classify registers. 2238: (NO_UNDERSCORES): Define this for G++. 2239: 2240: * mips.md (peepholes): Merge 4 peepholes, delete 24 unneeded ones. 2241: Replaced with an anonymous pattern for a test insn. 2242: (call_value): Change to a define_insn. 2243: (movsi, movhi, movqi): Don't fall through at end, to avoid a warning. 2244: (movsf special case for immediate args): Pattern deleted. 2245: (movdf special case for immediate args): Pattern deleted. 2246: (movsf, movdf): Use new macros to distinguish fp regs. 2247: Add letter `y' to constraints. 2248: (cmpsi): Allow arith_operand for second operand. 2249: (hi and qi tests): Patterns deleted. 2250: (jump): Handle TARGET_PIC. 2251: (tablejump): Pattern moved. 2252: (conditional branches): Align the comments that are output. 2253: (call, call_value): Make predicates more specific. 2254: Don't output any comments. 2255: 2256: * out-mips.c: Include flags.h. Include tree.h at beginning. 2257: Define numerous variables counting things used in this compilation. 2258: (my_print_rtx): Deleted. Callers use debug_rtx. 2259: (output_load_immediate): Simply output an li instruction. 2260: (print_options): Body rewritten. Now always defined, but body 2261: is in an #if 0. 2262: (abort_show_logged, my_print_insncode): Functions deleted. 2263: (abort_with_insn): Now use `error' to print the message. 2264: (mips_section_get): Function deleted. 2265: (override_options): Update mips_section_threshold, once and for all. 2266: 2267: Mon Jun 25 16:54:13 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2268: 2269: * integrate.c (output_inline_function): Pass dummies for new args 2270: to init_function_start. 2271: 2272: * stddef.h: Check _T_SIZE as well as _SIZE_T. 2273: 2274: Sun Jun 24 17:15:34 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2275: 2276: * stmt.c (init_function_start): New args give file/line for first note. 2277: * c-decl.c (store_parm_decls): Pass them. 2278: * final.c (final_start_function): For sdb, don't output a line number, 2279: just set last_linenum. 2280: 2281: * tm-att386.h (ASM_OUTPUT_LOCAL): Put it in .bss section. 2282: 2283: Fri Jun 22 12:40:07 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2284: 2285: * cccp.c (handle_directive): Always ignore empty directive. 2286: 2287: * tree.h (BUILT_IN_NEXT_ARG): Define it. 2288: * c-decl.c (init_decl_processing): Declare __builtin_next_arg. 2289: * expr.h (current_function_arg_offset_rtx): Declare it. 2290: * stmt.c (assign_parms): Set that variable at end. 2291: * expr.c (expand_builtin): Implement __builtin_next_arg. 2292: * stdarg.h (va_start): Use __builtin_next_arg. 2293: * function.c (push_function_context, pop_function_context): 2294: Save and restore current_function_arg_offset_rtx. 2295: * function.h (struct function): New field for this. 2296: 2297: Wed Jun 20 15:26:16 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2298: 2299: * tm-apollo68.h (FUNCTION_ARG_PADDING): Never pad. 2300: (STACK_BOUNDARY): Make it 32. 2301: (CPP_SPEC): Add spaces. Define _APOLLO_SOURCE if not -ansi. 2302: 2303: * expr.c (expand_call): If have STACK_BOUNDARY and push insns, 2304: compute stack_align when size is rounded, and use later 2305: to push the space for the rounding. 2306: 2307: Tue Jun 19 15:41:53 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2308: 2309: * genextract.c (gen_peephole): Use sizeof (rtx), not UNITS_PER_WORD. 2310: 2311: * reload1.c (reload_inheritance_insn): New variable. 2312: (reg_reloaded_insn): New variable. 2313: (choose_reload_regs): Update those variables. 2314: (emit_reload_insns): Use them to remove deaths from insns 2315: that used input reloads. 2316: (reload_as_needed): Clear reg_reloaded_insn when necessary. 2317: 2318: Mon Jun 18 13:25:59 1990 Michael Meissner (meissner at osf.org) 2319: 2320: * mips.md (probe): Make a single insn, just a memref. 2321: 2322: * mips.md (ashlqi3, ashlhi3, one_cmplqi2, one_cmplhi2): Deleted. 2323: (ashlsi3, ashrsi3, lshrsi3, neg*, one_cmplsi2): Simplified. 2324: Don't output comments. Use more specific predicates. 2325: 2326: * mips.md (movsf, movdf): Use L, M codes to avoid #ifdef's. 2327: Also simplify and don't output comments. 2328: (anonymous patterns for those insns): Deleted. 2329: (loading floating constant): New patterns added. 2330: (move qi to si pattern): Deleted; ridiculous. 2331: (movdi, movsi, movhi, movqi): No need to check for moving reg to self. 2332: 2333: * mips.md (nop): Use .set noreorder to placate assembler. 2334: 2335: Sun Jun 17 01:19:26 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2336: 2337: * Makefile (stamp-*.c, stamp-*.h): Remove .c or .h from names. 2338: 2339: * tm-i860.h (GO_IF_LEGITIMATE_ADDRESS): Displacement must be multiple 2340: of the alignment of the operand. 2341: 2342: * i860.md (signed bit field recognizers): Don't shift by >31 bits. 2343: 2344: * out-i860.c (output_delayed_branch): Pass register properly to 2345: load_opcode. 2346: 2347: * sdbout.c (sdbout_symbol): Get right regno for var-length object. 2348: 2349: * c-decl.c (duplicate_decls): Types don't "match" if one is error. 2350: 2351: * cexp.y (yylex): Ignore carriage return. 2352: * cccp.c (initialize_char_syntax): Likewise. 2353: 2354: Sun Jun 17 01:19:26 1990 Michael Meissner (meissner at osf.org) 2355: 2356: * mips.md (general/fp reg move patterns): Use codes L, M, D. 2357: (movdi): Likewise. And don't output useless comments. 2358: Use the assembler temp reg for non-offsettable address. 2359: (movsi, movhi, movqi): Output nothing for move from reg to itself. 2360: Output li to load a constant. Use `move' instead of `add'. 2361: Don't output useless comments. 2362: (load-address pattern): Deleted; handled by addsi3 pattern. 2363: 2364: * mips.md (addsi3, mulsi3): Make both input predicates arith_operand 2365: since they are commutative. 2366: (andsi3, iorsi3, xorsi3): Likewise. 2367: 2368: * tm-mips.h (MOST_SIGNIFICANT_WORD, LEAST_SIGNIFICANT_WORD): New. 2369: 2370: * tm-mips.h (PRINT_OPERAND): New codes D, L, M. 2371: * mips.md (anddi3, iordi3, xordi3): Use earlyclobber to stop overlap. 2372: Use new print code D. 2373: 2374: * mips.md (andsi3, iorsi3, xorsi3): Make predicates more specific. 2375: (andhi3, ..., andqi3, ...): Patterns deleted. 2376: (patterns for nor): New anonymous patterns. 2377: * out-mips.c (uns_arith_operand): New function. 2378: 2379: * mips.md (trunc*, zero_extend*, extend*, fix_trunc*, float*): 2380: Use more specific predicates. 2381: 2382: * mips.md (addhi3, ..., addqi3, ...): Patterns deleted. 2383: (addsi3, subsi3, mulsi3, divsi3): Make predicates more specific. 2384: Delete useless comments from assembler code. 2385: Use more generic op codes rather than special cases such as addiu. 2386: (divmodsi4, udivmodsi4, udivsi3, modsi3, umodsi3): New patterns. 2387: (abssf2, absdf2): New patterns. 2388: 2389: Sat Jun 16 22:52:44 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2390: 2391: * c-typeck.c (process_init_constructor): Handle unions. 2392: (digest_init): Use that for union inits. 2393: 2394: Wed Jun 6 19:20:20 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2395: 2396: * loop.c (move_movables): In insn-deleting loop, check p != 0. 2397: 2398: Sun Jun 3 22:44:12 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2399: 2400: * c-decl.c (grokdeclarator): Warn about extern with initializer. 2401: 2402: Sat Jun 2 14:46:18 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2403: 2404: * c-decl.c (grokdeclarator): Handle const and volatile with parm 2405: specified as function type. 2406: 2407: * varasm.c (immed_real_const_1): Don't confuse -0.0 with 0.0. 2408: 2409: * tm-sun3.h (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE): Handle -0.0. 2410: (ASM_OUTPUT_FLOAT_OPERAND, ASM_OUTPUT_DOUBLE_OPERAND): Likewise. 2411: Note: Sun 4 (under SunOS 4) seems to work okay without this change. 2412: Perhaps printf works better in that version. 2413: 2414: Fri Jun 1 13:38:41 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2415: 2416: * expr.c (expand_call): For const function, pop stack before and aft. 2417: 2418: Thu May 31 12:59:28 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2419: 2420: * expr.c (expand_call): Don't round stack block if size negative. 2421: 2422: * fold-const.c (fold): Preserve sign on constant when other terms 2423: cancel (after call to split_tree). 2424: 2425: Wed May 30 20:49:10 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2426: 2427: * c-parse.y (primary, fndef): Use YYFAIL, since YYERROR was changed. 2428: 2429: * out-m68k.c (output_move_double): Don't test HOST_WORDS_BIG_ENDIAN 2430: since that only exists in version 2. 2431: * tm-m68k.h (PRINT_OPERAND_EXTRACT_FLOAT): New macro wasn't mentioned. 2432: Don't test HOST_WORDS_BIG_ENDIAN. 2433: (PRINT_OPERAND_PRINT_FLOAT): New macro wasn't mentioned before. 2434: (PRINT_OPERAND): Use them. 2435: 2436: Tue May 29 21:35:23 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2437: 2438: * optabs.c (expand_float): Don't use hard reg for intermediate result. 2439: 2440: * c-parse.y (yylex): Fix typo in handling of ERANGE. 2441: 2442: * sparc.md (tstdf, tstsf): Use a CLOBBER, not a USE, on f0. 2443: 2444: * sparc.md (eager branch peepholes): Fix typos. 2445: * tm-sparc.h (OUTPUT_JUMP): Define this. 2446: 2447: * print-tree.c (print_lang_identifier): New function. 2448: 2449: Sat May 26 13:42:04 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2450: 2451: * sdbout.c (sdb_begin_function_line): Now -1 if not in use. 2452: (sdbout_end_function): Set it to -1. 2453: 2454: Fri May 25 00:18:29 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2455: 2456: * print-tree.c: Total rewrite. 2457: 2458: Thu May 24 21:26:08 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2459: 2460: * cccp.c (macarg): When popping frame, free via free_ptr, not buf. 2461: 2462: Tue May 22 21:41:08 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2463: 2464: * c-decl.c (finish_decl): Discard any variable sizes in the decl. 2465: 2466: * pyr.md (mulsi3, adddi3, ...): Use symmetrical predicates in 2467: commutative patterns. 2468: (tsthi, tstqi): Set CC_NO_OVERFLOW 2469: * out-pyr.c (notice_update_cc): Don't do that here for 2470: explicit cc-setting insns. 2471: 2472: Sat May 19 12:41:44 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2473: 2474: * tm-i386gas.h (ASM_OUTPUT_ALIGN): Use log as arg to .align. 2475: (ASM_OUTPUT_ALIGN_CODE): Likewise. 2476: 2477: Wed May 16 16:09:47 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2478: 2479: * tm-pyr.h (FIXED_REGISTERS, CALL_USED_REGISTERS): 2480: Reserve register lr15 as fixed, for test instructions. 2481: * pyr.md (tsthi, tstqi): Use cvtXw into lr15 rather than test. 2482: 2483: * expr.c (expand_expr): Make sure a volatile value is referenced 2484: even if value is ignored. 2485: 2486: * c-typeck.c (truthvalue_conversion): Result COND_EXPR gets type int. 2487: (invert_truthvalue): Simplify COND_EXPR. 2488: 2489: Tue May 15 16:51:41 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2490: 2491: * c-decl.c (complete_array_type): Compensate for wide string constants. 2492: 2493: Mon May 14 15:31:07 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2494: 2495: * c-parse.y (combine_strings): Fix errors computing wide string length. 2496: 2497: Sat May 12 15:17:37 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2498: 2499: * i386.md (trunc**): Use long move if source is constant. 2500: * out-i386.c (PRINT_REG): Handle CODE == 'k'. 2501: 2502: * ns32k.md (signed bitfield extract): Don't output assembler comment. 2503: 2504: Fri May 11 14:45:06 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2505: 2506: * tm-i860.h (ASM_OUTPUT_CASE_LABEL): Align to multiple of 4. 2507: 2508: Thu May 10 23:43:31 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2509: 2510: * out-i860.c (single_insn_src_p, strict_single_insn_src_p): 2511: Correct conditions for needing multiple instructions. 2512: (output_delayed_branch): Likewise. 2513: 2514: Tue May 8 13:54:37 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2515: 2516: * tm-ultrix.h: New file. 2517: 2518: Mon May 7 18:47:47 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2519: 2520: * i386.md (test... recognizers): Output symbolic constant first. 2521: 2522: Sat May 5 12:18:05 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2523: 2524: * rtlanal.c (dead_or_set_p): Compare register numbers, not addresses. 2525: 2526: Thu May 3 16:56:43 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2527: 2528: * expmed.c (store_bit_field): Maximum size for loading mem struct 2529: into reg comes from the mode of the value to be stored. 2530: Alignment is no restriction if it matches BIGGEST_ALIGNMENT. 2531: Always do the real work in SImode if couldn't use MEM. 2532: (extract_bit_field): Likewise. 2533: 2534: * tm-sparc.h (PRINT_OPERAND): Handle new codes I and U. 2535: * sparc.md (delay slot peepholes): Use them to handle CC_NO_OVERFLOW. 2536: (negated jump recognizer): Likewise. 2537: * sparc.md (addcc and subcc recognizers): Test for validity of 2538: ignoring overflow with ignore_overflow_conditional_p. 2539: * out-sparc.c (ignore_overflow_conditional_p): New function. 2540: 2541: * pyr.md (bitw recognizer): Set CC_NO_OVERFLOW. 2542: 2543: Mon Apr 30 01:39:14 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2544: 2545: * stor-layout.c (build_int): Make arg unsigned. 2546: 2547: * cccp.c (macarg1): `\' not special outside strings. 2548: 2549: * c-typeck.c (build_unary_op): In increment ops, 2550: typo checking for ptr to void/function. 2551: Check original type for this and for amount of increment. 2552: 2553: Sat Apr 28 16:43:08 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2554: 2555: * c-typeck.c (build_indirect_ref): Error if target is incomplete type. 2556: 2557: Fri Apr 27 13:02:10 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2558: 2559: * reload1.c (order_regs_for_reload): Count multi-word pseudos right. 2560: 2561: * flow.c (mark_set_1): Handle nested SUBREG, SIGN_EXTRACT, 2562: STRICT_LOW_PART, etc. Also, always set subreg_p when setting 2563: a bit field, even if modes are same. 2564: 2565: Thu Apr 26 17:52:17 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2566: 2567: * cccp.c (handle_directive): Don't pass directive through if no_output. 2568: 2569: Tue Apr 24 13:40:25 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2570: 2571: * pyr.md (addsi3): Use general_operand for both inputs. 2572: 2573: * i860.md: Add missing = in some output constraints. 2574: 2575: Mon Apr 23 16:37:21 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2576: 2577: * combine.c (subst): When checking reg_last_set, verify nonzero. 2578: 2579: * ns32k.md (ashlhi3): Avoid using %1. 2580: 2581: Sat Apr 21 21:05:51 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2582: 2583: * stmt.c (assign_parms): Don't make entry_parm and stack_parm valid. 2584: Leave them explicit stack slots. 2585: (validize_mem): Copy it, don't alter it. 2586: 2587: Thu Apr 19 15:23:51 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2588: 2589: * out-sparc.c (find_addr_reg): Avoid using frame pointer. 2590: 2591: Sun Apr 15 13:42:24 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2592: 2593: * expr.c (emit_library_call): Precompute reg and partial of all parms, 2594: to do it in proper order. 2595: 2596: * integrate.c (save_for_inline): Copy reg notes after all insns. 2597: 2598: * final.c (final_scan_insn): No block profiling before jump table. 2599: 2600: Sat Apr 14 00:19:47 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2601: 2602: * i386.md (tstdf): Clobber reg in SImode, like cmpdf. 2603: (blt, ble): New define_expands. RTL like before except, 2604: for floats, reverse prev compare or test and do bgt/bge. 2605: 2606: Thu Apr 12 21:27:18 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2607: 2608: * expr.c (expand_call): New variable argpos counts args in the 2609: order written. For comparison with n_named_args. 2610: 2611: * c-decl.c (duplicate_decls): Preserve DECL_INITIAL from old 2612: function def to new one. 2613: 2614: * cccp.c (macroexpand): Count Newline Space as part of whitespace 2615: sequence when stringifying. 2616: 2617: Tue Apr 10 21:08:06 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2618: 2619: * cccp.c (do_line): No error if string follows number without space. 2620: 2621: Mon Apr 9 15:37:11 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2622: 2623: * Makefile (install): Turn off x bit on headers and man page. 2624: 2625: * i860.md (cmpeqsf, etc.): Change opcode name to pfeq.ss, etc. 2626: 2627: * tm-m68k.h (PRINT_OPERAND_PRINT_FLOAT): Delete spurious backslash. 2628: 2629: * c-decl.c (store_parm_decls): Don't do storedecls in prototype case. 2630: That was discarding the enumerators already pushdecl'd. 2631: 2632: * tm-m68k.h (NOTICE_UPDATE_CC): Undo last change. 2633: 2634: Sun Apr 8 19:00:09 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2635: 2636: * out-m68k.c (output_move_double, standard_68881_constant_p): 2637: Do word-swap when cross-compiling from little-endian machine. 2638: 2639: Sat Apr 7 00:45:49 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2640: 2641: * sparc.md (addcc and subcc patterns): Set CC_NO_OVERFLOW. 2642: 2643: * out-mips.c (output_load_immediate): Fix bug for values 2644: between -2**15 and -2**16; don't use addi. 2645: 2646: Thu Apr 5 14:00:41 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2647: 2648: * stdarg.h (va_start): Round initial pointer value down 2649: to double boundary. This is to eliminate big-endian adjustment. 2650: 2651: * c-typeck.c (build_c_cast): Reject array types for result. 2652: 2653: * fixincludes: Don't ignore errors when making dirs. 2654: But check whether dir already exists. 2655: 2656: Wed Apr 4 01:59:03 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2657: 2658: * c-decl.c (grokdeclarator): Complain if fn defn has `typedef' etc. 2659: 2660: Tue Apr 3 22:09:12 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2661: 2662: * expmed.c (store_bit_field): Don't do big-endian adjust twice. 2663: Do this by changing the mode whenever it is done. 2664: Some places must now cope with subregs. 2665: (extract_bit_field): Likewise. 2666: 2667: Fri Mar 30 15:54:43 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2668: 2669: * c-decl.c (c_build_type_variant): New function. 2670: (grokdeclarator): Call that, for ARRAY_TYPE only, in fields and vars. 2671: * c-decl.c, c-typeck.c: All calls to build_type_variant use that now. 2672: 2673: Wed May 2 16:34:25 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2674: 2675: * tm-sun3.h (CC1_SPEC): Ignore -target. 2676: (WORD_SWITCH_TAKES_ARG): Define it. 2677: * tm-sparc.h (CC1_SPEC): Ignore -target and -dalign. 2678: (WORD_SWITCH_TAKES_ARG): Define it. 2679: 2680: Thu Mar 29 15:34:53 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2681: 2682: * final.c (end_final): For basic block profiling, don't output 2683: source file name. Instead, append ".d", and remove ".c". 2684: * gnulib.c (__bb_init_func): New name for __bb_init_function. 2685: Conditionalize on mc68000, not m68k. 2686: Fix other typos. 2687: * Makefile (LIBFUNCS): Add _bb_init_func. 2688: 2689: * xm-sun386i.h (LINK_SPEC): Handle -static. 2690: 2691: Wed Mar 28 16:21:53 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2692: 2693: * c-decl.c (duplicate_decls): Preserve DECL_FRAME_SIZE from definition 2694: past subsequent declarations. 2695: 2696: * c-decl.c (xref_tag): If global_binding_level, make nodes permanent. 2697: 2698: * expr.c (expand_call): Handle STACK_BOUNDARY when using push insns. 2699: 2700: * stmt.c (assign_parms): Note how PUSH_ROUNDING affects stack 2701: parm size. 2702: 2703: * tm-mips.h (STRUCTURE_SIZE_BOUNDARY): Changed from 16 to 8. 2704: 2705: Tue Mar 27 14:24:00 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2706: 2707: * m68k.md (movsi, movhi, movstricthi, movqi, movstrictqi): 2708: Avoid both clr and st on volatile mem, but only on 68000. 2709: (SImode store 0 recognizer): Likewise. 2710: 2711: Mon Mar 26 15:01:02 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2712: 2713: * m68k.md (movqi): Don't use `st' insn on volatile memory. 2714: 2715: * tm-m68k.h (NOTICE_UPDATE_CC): addq and subq do update cc's 2716: even if destination is an address register. 2717: 2718: * cccp.c (discard_comments): Handle backslash-newline. 2719: 2720: Sun Mar 25 20:21:58 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2721: 2722: * cccp.c (handle_directive): Discard backslash-newline within <...>. 2723: 2724: Fri Mar 23 00:52:34 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2725: 2726: * c-decl.c (grokdeclarator): Warn if array element is incomplete. 2727: 2728: * xm-hp9k320.h (USE_C_ALLOCA): Define if not compiling with GCC. 2729: 2730: * expr.c (emit_call_1): Pass FUNTYPE directly to RETURN_POPS_ARGS. 2731: 2732: Thu Mar 22 22:33:36 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2733: 2734: * c-decl.c (get_parm_info): Void parm is special only if no name. 2735: 2736: * loop.c (may_not_optimize): Static var replaces local `may_not_move'. 2737: (strength_reduce): Don't accept those regs as givs. 2738: 2739: Wed Mar 21 17:14:00 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2740: 2741: * ns32k.md (stack adjust insn): Don't use cmpd or cmpqd on Sequent. 2742: * tm-sequent.h (SEQUENT_ADJUST_STACK): Define this. 2743: 2744: * Makefile (gnulib): Use OLDAR, not AR. 2745: (OLDAR): New variable. 2746: 2747: * expr.c (expand_call): Don't reuse pending_stack_adjust for argblock 2748: if inhibit_defer_pop. 2749: 2750: Tue Mar 20 02:41:15 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2751: 2752: * va-sparc.h: New file, handles changed calling convention. 2753: 2754: * expr.c (push_block): New argument EXTRA. All callers changed. 2755: (emit_push_insn): Use that for the padding when using push_block. 2756: 2757: * ns32k.md (ashlsi3): `return' was missing. 2758: 2759: * tm-sparc.h (FUNCTION_ARG, FUNCTION_INCOMING_ARG): 2760: Only word-aligned BLKmodes can go in registers. 2761: (FUNCTION_ARG_PARTIAL_NREGS): Likewise. 2762: * tm-spur.h (FUNCTION_ARG, FUNCTION_INCOMING_ARG): Likewise. 2763: * expr.c (expand_call): If encounter a stack parm before offset 2764: gets up to zero, make it zero. 2765: * stmt.c (assign_parms): Likewise. 2766: 2767: Mon Mar 19 00:06:35 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2768: 2769: * assert.h (__assert) [not __GNUC__]: Rename arg to avoid stringify. 2770: 2771: * gcc.c (main): Handle SIGPIPE. 2772: 2773: Sat Mar 17 14:13:43 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2774: 2775: * loop.c (general_induction_var): When adding sub-giv to ARG, 2776: don't produce an add_val that can't be the source of an add insn. 2777: 2778: Fri Mar 16 15:26:41 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2779: 2780: * tm-vms.h (NO_DOLLAR_IN_LABEL): Define this. 2781: 2782: * sparc.md (andncc, orncc, xorncc patterns): Delete `%' in constraint. 2783: 2784: Thu Mar 15 22:02:02 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2785: 2786: * expmed.c (extract_bit_field, store_bit_field): 2787: When changing mode of a reg to SImode, also do big-endian correction. 2788: Consistently use BYTES_BIG_ENDIAN to decide how bits are numbered. 2789: Fix stray ref to CODE_FOR_extzv in case for extv. 2790: 2791: * c-typeck.c (build_unary_op): Allow function type args to `!', 2792: since they convert to pointers. 2793: 2794: * stmt.c (init_function_start): Set max_structure_value_size to -1. 2795: 2796: Sun Mar 11 18:39:40 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2797: 2798: * reload1.c (spill_hard_reg): 2799: Typo: index regs_explicitly_used with regno. 2800: 2801: * cse.c (cse_insn): When replacing constant with reg+const, 2802: don't make a REG_EQUIV note unless there already is one. 2803: 2804: * gcc.c (fatal): Flush spurious arg to delete_temp_files. 2805: 2806: * Makefile (gnulib, stamp-gnulib2): Ignore error in ranlib. 2807: 2808: Sat Mar 10 16:07:27 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2809: 2810: * loop.c (other_reg_use_p): New name for only_reg_use_p. 2811: Return 0 if IN == EXPR. 2812: (check_eliminate_biv, strength_reduce): Re-invert the test 2813: using other_reg_use_p. 2814: 2815: Thu Mar 8 02:17:50 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2816: 2817: * ns32k.md (movsi, movdi): Handle floating point registers. 2818: 2819: * reload.c (find_reloads_toplev): Do BYTES_BIG_ENDIAN offset 2820: only within a word. 2821: 2822: * stdarg.h: Use _VA_LIST_ as macro to indicate already loaded. 2823: 2824: * tm-alliant.h (FUNCTION_PROLOGUE): Use `linkl' on 68020. 2825: 2826: Tue Mar 6 23:44:15 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2827: 2828: * cccp.c (macroexpand): Fix bug in scanning strings for stringify. 2829: 2830: Fri Mar 2 00:27:14 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2831: 2832: * out-mips.c (tree_code_name): Declaration deleted. 2833: 2834: Thu Mar 1 22:59:18 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2835: 2836: * assert.h (__assert): Don't call abort; use 0 as value. 2837: * gnulib.c (__eprintf): Call abort here. 2838: 2839: Wed Feb 28 13:11:24 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2840: 2841: * Makefile (install): When installing $${eachfile}, use basename. 2842: 2843: Fri Feb 23 13:21:27 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2844: 2845: * c-parse.y (readescape): For x, avoid overflow when shifting in if. 2846: 2847: Thu Feb 22 19:09:48 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2848: 2849: * fixincludes: Delete directories before creating them. 2850: When making internal symbolic directory links, chase 2851: chain of existing links to the end. 2852: 2853: * dbxout.c (dbxout_type): Always use main variant. 2854: 1.1.1.17 root 2855: Wed Feb 21 00:25:39 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2856: 2857: * Version 1.37.1 released. 2858: 2859: * tm-mips.h (ASM_OUTPUT_ADDR_VEC_ELT and ASM_OUTPUT_ADDR_DIFF_ELT): 2860: Start label names with $. 2861: 2862: Sun Feb 18 13:58:04 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2863: 2864: * tm-mips.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL): 2865: Start name with $. 2866: 2867: * integrate.c (expand_inline_function): Round up size of parm_map. 2868: 2869: Sat Feb 17 20:56:05 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2870: 2871: * tm-hp9k320.h (CPP_SPEC): Remove _INCLUDE__STDC__. 2872: 2873: Sun Feb 11 20:11:25 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2874: 2875: * Version 1.37 released. 2876: 2877: * c-decl.c (complete_array_type): In permanent type, add perm nodes. 2878: 2879: * out-i386.c (print_operand_address): Handle a MULT by itself. 2880: 2881: Sat Feb 10 14:35:03 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2882: 2883: * ns32k.md (movsf): Convert double constant to float. 2884: 2885: Fri Feb 9 00:02:43 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2886: 2887: * c-decl.c (duplicate_decls): Don't lose alignment of OLDDECL. 2888: 2889: * cccp.c (handle_directive): Keep comments by copying them explicitly. 2890: 2891: * cccp.c (rescan): When scanning for open-paren after macro name, 2892: discard comments if appropriate. 2893: 2894: Thu Feb 8 14:19:41 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2895: 2896: * c-decl.c (build_enumerator): Error if value outside range of int. 2897: 2898: * tm-hp9k320.h (CPP_SPEC): Define _INCLUDE__STDC__ if not traditional. 2899: * tm-hp9k310.h: Missing file brought back. 2900: 2901: Mon Feb 5 12:49:36 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2902: 2903: * reload1.c (spill_hard_reg): Return 1 if reg is explicitly used. 2904: (reload): Cancel dummy reloads using regs subject to spill. 2905: 2906: Sun Feb 4 12:37:00 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2907: 2908: * tm-3b1g.h: New file. 2909: * config.gcc (3b1g, 3b1-gas): New alternative. 2910: 2911: * tm-att386.h (ASM_OUTPUT_COMMON): Don't use rounded size. 2912: 2913: Fri Feb 2 17:04:37 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2914: 2915: * integrate.c (copy_for_inline): Use real width of rtunion in bcopy. 2916: * emit-rtl.c (copy_rtx_if_shared): Likewise. 2917: 2918: * assert.h (assert) [__STDC__]: Use comma operator to avoid warning. 2919: 2920: * c-decl.c (grokdeclarator): Traditionally change return type float 2921: to double. 2922: 2923: * cse.c (predecide_loop_entry): Give up unless simple jump enters loop. 2924: 2925: Thu Feb 1 02:02:21 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2926: 2927: * tm-convex.h (FASCIST_ASSEMBLER, VTABLE_USES_MASK, VINDEX_MAX): 2928: New definitions to control c++ files. 2929: 2930: * reload1.c (inc_for_reload): Forget reg_last_reload_reg 2931: for the reg being inc'd. 2932: 2933: * limits.h (INT_MIN): Define so it has type `int', not unsigned. 2934: (CHAR_MIN, SCHAR_MIN, SHRT_MIN): Put arens around value. 2935: 2936: Wed Jan 31 12:54:07 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2937: 2938: * tm-mips.h (FUNCTION_PROLOGUE): Use CONST_OK_FOR_LETTER_P to see 2939: if can update fp in one addiu insn. 2940: 2941: * reload1.c (reload): Reject fixed regs when finding groups to spill. 2942: 2943: * assert.h (assert) [NDEBUG]: Make value nonempty. 2944: (assert) [no NDEBUG]: Split into a version for __STDC__ and one not. 2945: (_assert) [__STDC__]: Pass expression and file separately to _eprintf. 2946: (_assert) [not __STDC__]: Likewise, but implemented differently. 2947: * gnulib.c (__eprintf): Handle 3 args plus format string. 2948: 2949: * tm-i386.h (STACK_BOUNDARY): Define it. 2950: 2951: Sat Jan 27 17:58:30 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2952: 2953: * hard-params.c: Use explicit file name to include self. 2954: 2955: Fri Jan 26 01:38:29 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2956: 2957: * cccp.c (rescan): Set beg_of_line when string ends at newline. 2958: (skip_quoted_string): Don't swallow newline that ends a string. 2959: (handle_directive): No need to back up here. 2960: Pass LIMIT as second arg to skip_quoted_string. 2961: 2962: * cccp.c (rescan): If traditional, end preproc number after expt sign. 2963: 2964: Thu Jan 25 01:57:34 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2965: 2966: * loop.c (general_induction_var): Reject widening multiply. 2967: 2968: * i860.md (andsi3): Truncate xop2 constant to 16 bits. 2969: 2970: Wed Jan 17 12:33:52 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2971: 2972: * tm-mips.h (CC1_SPEC): Don't complain about -g. 2973: 2974: * c-typeck.c (build_compound_expr): Delete special case 2975: that ignores expressions without side effects. 2976: 2977: * stor-layout.c (layout_type): Struct requires BLKmode if any field 2978: crosses a word boundary. 2979: 2980: * reload1.c (choose_reload_regs): Refix Sequent problem correctly. 2981: 2982: Tue Jan 16 12:03:42 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2983: 2984: * c-parse.y (unary_expr): If sizeof or alignof gets a comma expr 2985: which has array or function type, coerce it to pointer. 2986: 2987: * fold-const.c (combine): Propagate carry when subtracting from 0. 2988: 2989: * fold-const.c (fold): For x++==const, do arith in type of const. 2990: 2991: Mon Jan 15 19:24:04 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2992: 2993: * cexp.y (exp): Accept unary +. 2994: 2995: Sun Jan 14 12:18:49 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 2996: 2997: * fold-const.c (lshift_double, rshift_double, lrotate_double): 2998: (rrotate_double): Don't shift more than width of operand. 2999: 3000: Fri Jan 12 18:50:43 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3001: 3002: * recog.c (next_insns_test_no_inequality): Return 1 at end of rtl. 3003: 3004: Thu Jan 11 14:09:47 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3005: 3006: * cccp.c (skip_if_group): Skip strings even if -traditional. 3007: (handle_directive): Likewise, when handling copy_command. 3008: 3009: * i860.md (movsf): Ensure F to f is reloaded via r. 3010: 3011: Wed Jan 10 15:03:08 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3012: 3013: * Makefile [3b1]: Propose redefinition of CCLIBFLAGS. 3014: 3015: * reload1.c (choose_reload_regs): Break down hairy if expression. 3016: 3017: * loop.c (loop_skip_over): Do nothing if don't find expected compare. 3018: 3019: Sun Jan 7 00:58:06 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3020: 3021: * config.gcc: Add i386-mach. 3022: * xm-i386.h: Use built-in alloca if compiling with GCC. 3023: 3024: * optabs.c (emit_cmp_insn): Set CLASS after MODE. 3025: 3026: Sat Jan 6 15:33:32 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3027: 3028: * out-mips.c (function_arg, function_arg_advance): 3029: Define typedef for CUMULATIVE_ARGS, and use it here. 3030: 3031: * cccp.c (main): Recognize `.C' for -M. 3032: 3033: * c-parse.y (yylex): Put 0 at end of wide string. 3034: 3035: * tm-mips.h (CC1_SPEC): Don't distort meaning of -O. 3036: 3037: Fri Jan 5 12:12:31 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3038: 3039: * gcc.c (link_command_spec): If LIBS_COMPILED_WITH_GCC, gnulib is last. 3040: 3041: Thu Jan 4 23:58:59 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3042: 3043: * Makefile (c-parse.tab.o): Add explicit compilation cmd. 3044: 3045: Wed Jan 3 00:27:53 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3046: 3047: * Makefile (install): Use nested foreach-loop to expand va*.h. 3048: 3049: Mon Jan 1 19:36:49 1990 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3050: 3051: * expr.c (store_one_arg): Round size up for move_block_to_reg. 3052: (expand_call): Round up when emitting USE insns. 3053: * stmt.c (assign_parms): Round size up for move_block_from_reg. 3054: 3055: * reload1.c (alter_reg): Undo big-endian conversion from 3056: assign_stack_local. 3057: 3058: Sun Dec 31 20:10:52 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3059: 3060: * tree.h (struct tree_common): Declare `code' as char, not int. 3061: 3062: Thu Dec 28 13:49:43 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3063: 3064: * gnulib.c (__fixunsdfsi): Turn large numbers to small for conversion. 3065: 3066: * Makefile (includes): Set variable LIB. Run from `./'. 3067: 3068: Wed Dec 27 18:54:25 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3069: 3070: * Makefile (CCLIBFLAGS): Add -O. 3071: (gnulib): Remove -O here. 3072: (HARD_PARAMS_FLAGS): Like CCLIBFLAGS but no -O. 3073: (hard-params, hard-params.o): Use that. 3074: 3075: * loop.c (can_eliminate_biv_p, eliminate_biv): If add_val non zero, 3076: it must be a constant or register. 3077: 3078: Mon Dec 25 00:02:31 1989 Torbj|rn Granlund (tege at zevs.sics.se) 3079: 3080: * tm-pyr.h (FIXUNS_TRUNC_LIKE_FIX_TRUNC): Should not be defined. 3081: The cvtdw instruction causes a trap for floating point values 3082: that are out-of-range for a signed int. 3083: 3084: * out-pyr.c (has_direct_base): Don't accept 0 as a base, if there 3085: is a register displacement. This is a workaround of a bug in 3086: /bin/as. (/bin/as changes things like "cmpw 8(reg),0(reg)" into 3087: "cmpw 8(reg),(reg)", which is invalid assembler.) 3088: 3089: Sun Dec 24 11:51:52 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3090: 3091: * expr.c (emit_move_insn): Lossage validating mem addr of constant. 3092: 3093: * varasm.c (record_constant_1): Missing `return' in ADDR_EXPR case. 3094: 3095: Sat Dec 23 10:54:22 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3096: 3097: * ns32k.md (extract byte from register): Delete #if conditionals. 3098: Assume 32532 always. 3099: (adjust stack): Likewise. 3100: 3101: Thu Dec 21 10:24:05 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3102: 3103: * i860.md (load DF constant to reg): Typo: extra percent sign. 3104: (floatsidf2): Two words of a double were backwards. 3105: 3106: * reload1.c (alter_reg): 3107: Always do big-endian correction on slot address. 3108: 3109: * gnulib.c (__fixunsdfsi): Don't rely on host compiler for unsigned. 3110: 3111: * i386.md (float push recognizers): Don't pop fpreg if not dead. 3112: 3113: Sun Dec 17 12:13:37 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3114: 3115: * tm-hp9k320.h (CPP_PREDEFINES): Add __hp9000s300, _HPUX_SOURCE. 3116: 3117: Sat Dec 16 17:49:30 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3118: 3119: * loop.c (strength_reduce): When writing insn to init a biv, 3120: update life range of reg used to init it. 3121: 3122: * combine.c (try_combine): Do combine (y = x, x = y). 3123: 3124: * loop.c (strength_reduce): When finding initial value of a biv, 3125: notice assignments to subregs of it, etc. 3126: 3127: Fri Dec 15 00:42:31 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3128: 3129: * m68k.md (fpa float and float-trunc): Accept general_operand. 3130: 3131: * integrate.c (expand_inline_function): 3132: Put caller's line number after inline stuff. 3133: Put callee's line number before parm manipulation. 3134: 3135: * If local-alloc assumes a reg does not conflict, 3136: don't use it as dummy reload. 3137: * local-alloc.c (wipe_dead_reg): Add REG_UNSET note. 3138: * reload.c (find_dummy_reload): Check for that note. 3139: 3140: * vax.md (casesi): New pattern for super-trivial cse case. 3141: 3142: * jump.c (jump_optimize): Realize that more things can follow 3143: the NOTE_INSN_FUNCTION_END note. Change in two places, 3144: for optimized and one for unoptimized. 3145: 3146: Sat Dec 9 15:21:07 1989 Richard M. Stallman (rms at ccvi) 3147: 3148: * expr.c (expand_expr): For conversion ops, copy CONST_INT to reg 3149: to avoid lossage on VOIDmode in convert_move or expand_float. 3150: * optabs.c (expand_float): Abort if FROM has VOIDmode. 3151: 3152: * final.c (final_scan_insn): Delete unused label. 3153: 3154: Thu Dec 7 01:42:30 1989 Richard M. Stallman (rms at ccvi) 3155: 3156: * sdbout.c (MAKE_LINE_SAFE): Ensure arg is > sdb_begin_function_line. 3157: (sdbout_begin_block, sdbout_end_block, sdbout_end_function): Use it. 3158: 3159: * jump.c (jump_optimize): Leave block-beg, block-end notes 3160: in old context when swapping two ranges of insns. 3161: (squeeze_block_notes): New function. 3162: 3163: * expr.c (expand_call): For pcc struct, return reg mode is Pmode. 3164: 3165: * c-typeck.c (build_conditional_expr): 3166: Only explicit ints allow predetermined choice. 3167: 3168: Wed Dec 6 19:02:07 1989 Richard M. Stallman (rms at ccvi) 3169: 3170: * toplev.c: Undef FFS after including param.h. 3171: 3172: Tue Dec 5 16:01:18 1989 Richard M. Stallman (rms at ccvi) 3173: 3174: * mips.md (movsf): Use mtc1 where needed. 3175: 3176: * reload1.c (choose_reload_regs): If run out of spill regs, 3177: set must_reuse and try again. 3178: 3179: Mon Dec 4 00:18:24 1989 Richard M. Stallman (rms at ambroise) 3180: 3181: * reload1.c (alter_reg): 3182: Don't set spill_stack_slot_width if from_reg is -1. 3183: 3184: * cse.c (cse_end_of_basic_block): Typos checking NOTE insns. 3185: 3186: * math-68881.h (pow): Add parens around `&'. 3187: 3188: * loop.c (can_eliminate_biv_p, eliminate_biv): 3189: In COMPARE, verify the biv is one of the arguments. 3190: (strength_reduce): When eliminating biv, check for use 3191: in a giv in an address, just as in check_eliminate_biv. 3192: 3193: * stupid.c (reg_order): Make it int, in case reg # is large. 3194: (stupid_reg_compare, stupid_life_analysis): Implement this. 3195: 3196: Sun Dec 3 14:17:36 1989 Richard M. Stallman (rms at ambroise) 3197: 3198: * tm-att386.h (ASM_OUTPUT_LOCAL): Don't generate .lcomm. 3199: Go back to putting the variable in the data section. 3200: 3201: * expr.c (do_jump): Cast XVECLEN to int for subtracting 1. 3202: 3203: * reload.c (decompose): Handle SUBREGs. 3204: 3205: * c-typeck.c (build_modify_expr): Prevent -Wall warning 3206: when we generate a COMPOUND_EXPR for (?:)=. 3207: 3208: Mon Nov 27 15:39:40 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3209: 3210: * Makefile [pyramid]: Use CLIB, not ALLOCA, to access libPW.a. 3211: Use -lc explicitly first. 3212: 3213: * pyr.md (SI test recognizer): Fix syntax error, 3214: 3215: * c-decl.c (grokdeclarator): Don't test size of error_mark_node 3216: as type of a field. 3217: 3218: Sun Nov 26 12:36:01 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 3219: 3220: * tm-mips.h (CONST_OK_FOR_LETTER_P): Delete extra paren. 3221: 3222: Wed Nov 22 12:56:41 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3223: 3224: * pyr.md (mode conversion peepholes): Set CC_NO_OVERFLOW. 3225: * out-pyr.c (consecutive_operands): Don't expect wrap from reg15 to 16. 3226: 3227: * Makefile: Fix directions for pyramid. 3228: 3229: * tm-mips.h (CONST_OK_FOR_LETTER_P): Define `K'. 3230: (SMALL_INT): Range is 16 bits, not 17. 3231: (SMALL_INT_UNSIGNED): New macro. 3232: * mips.md (andsi3, iorsi3, xorsi3): Use `K', not `I'. 3233: 3234: * mips.md (negsi2): Accept general_operand as input. 3235: 3236: Tue Nov 21 10:57:45 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3237: 3238: * mips.md (one_cmpl*): Accept general_operand as input. 3239: 3240: Mon Nov 20 11:18:58 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3241: 3242: * expr.c (expand_expr): For MINUS_EXPR, don't explicitly negate int 3243: constant if it is in a mode too wide for host machine int. 3244: 3245: * cse.c (fold_rtx): Simulate negative shift counts. 3246: 3247: Sun Nov 19 14:36:18 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3248: 3249: * out-pyr.c (notice_update_cc): Set CC_NO_OVERFLOW in many cases. 3250: 3251: * cse.c (fold_rtx, fold_cc0): Handle float trap. 3252: 3253: Sat Nov 18 00:17:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3254: 3255: * varasm.c (output_constant): Handle float trap in fprintf. 3256: * toplev.c (float_signal): Don't print message. 3257: * fold-const.c (combine): Print it here. 3258: 3259: * sparc.md (extend patterns): Handle CONST_INT as operand. 3260: 3261: * out-i386.c (singlemove_string): Fix paren error. 3262: 3263: Fri Nov 17 12:19:56 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3264: 3265: * expr.c (expand_increment): For pre-increment, copy the rtx to return. 3266: 3267: * c-parse.y (compstmt): There may be implicit decls, so check 3268: and maybe keep the level. 3269: 3270: * tm-mips.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): 3271: Use call_used_regs, not a private copy. 3272: 3273: Thu Nov 16 00:28:29 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3274: 3275: * reload1.c: Keep track of paradoxical subregs of each pseudo, 3276: and make extra stack space for their sake. 3277: (reload): Record max size paradoxical subreg for each pseudo. 3278: (scan_paradoxical_subreg): New subroutine for that. 3279: (reload): Make stack slots big enough for that size. 3280: 3281: * tm-i860.h (ASM_DECLARE_FUNCTION_NAME): Define it, 3282: so we can output a no-op before each function. 3283: 3284: * tm-pyr.h (INIT_CUMULATIVE_ARGS): Simplify. 3285: Pass function type to aggregate_value_p. 3286: 3287: * fold-const.c (fold): 3288: For foo++ > const, don't change if foo++ could overflow. 3289: 3290: * loop.c (eliminate_biv): 3291: Fix typo; check both coeffs when comparing givs. 3292: 3293: Wed Nov 15 00:12:59 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3294: 3295: * integrate.c (copy_for_inline): Correctly handle RTL type "u". 3296: 3297: * jump.c (delete_insn): Extra test for PREV != 0. 3298: 3299: Tue Nov 14 17:31:08 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3300: 3301: * tm-sun3.h (LINK_SPEC): Specify -L to control choice of -lm. 3302: 3303: * tm-pyr.h (INIT_CUMULATIVE_ARGS): 3304: If -fpcc-struct-return, always do the scalar thing. 3305: 3306: * function.c (expand_function_end): Use FUNCTION_OUTGOING_VALUE. 3307: 3308: Sat Nov 11 00:18:54 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3309: 3310: * tm-sun386.h (ASM_OUTPUT_COMMON): Use ROUNDED, not SIZE. 3311: (ASM_OUTPUT_LOCAL): Likewise. Also, generate .lcomm 3312: rather than a .data area symbol. 3313: * tm-att386.h: Likewise. 3314: 3315: Fri Nov 10 15:04:15 1989 Richard Stallman (rms at rice-chex) 3316: 3317: * caller-save.c (emit_mult_restore, emit_mult_save): 3318: Improve arithmetic for address to save at. 3319: 3320: Thu Nov 9 00:14:19 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3321: 3322: * tm-pyr.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): 3323: Don't use obsolete pushw and popw insns. 3324: (ASM_OUTPUT_ALIGN): Ensure arg in range 2 to 5. 3325: * pyr.md (tstdi): Pattern deleted. 3326: (SImode test recognizer): Output ucmpw if jump is unsigned. 3327: 3328: * out-sparc.c (operands_satisfy_eager_branch_peephole): 3329: Check for moves between FP and non-FP regs; they take two insns. 3330: * sparc.md (eager branch peepholes): Likewise. 3331: (Ordinary delayed branch peepholes): Similar check. 3332: * out-sparc.c (single_insn_extra_test): New subroutine. 3333: 3334: Wed Nov 8 18:19:51 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3335: 3336: * combine.c (subst): In (sign_extend:M (subreg:N (and:M .. <const>) 0)) 3337: insist that constant be positive in mode N. 3338: 3339: Tue Nov 7 23:25:20 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3340: 3341: * rtl.h: Undefine FFS in case it was defined by the system. 3342: 3343: Mon Nov 6 14:43:55 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3344: 3345: * tm-i860.h, tm-m88k.h, tm-pyr.h, tm-spur.h (INIT_CUMULATIVE_ARGS): 3346: Test aggregate_value_p, not just BLKmode. 3347: 3348: * gnulib2.c (__builtin_saveregs): Moved from gnulib.c. 3349: Code added for mips. 3350: 3351: * pyr.md (conditional branch recognizers): Don't simplify if not -O. 3352: 3353: * out-pyr.c (extend_and_branch): Handle two constant operands. 3354: 3355: * integrate.c (function_cannot_inline_p): Don't inline if alloca used. 3356: 3357: Sun Nov 5 02:59:23 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3358: 3359: * Always make a LET_STMT and notes for the top level of a function 3360: if it has any subblocks. 3361: * c-decl.c (struct binding_level): New field keep_if_subblocks. 3362: (poplevel): Obey the new field. 3363: (keep_next_if_subblocks): New variable. 3364: (pushlevel): Use that variable. 3365: (store_parm_decls): Set that variable. 3366: (compstmt): Pass nonzero to expand_end_bindings 3367: for the new kept binding levels. 3368: (kept_level_p): New function. 3369: 3370: * xm-mips.h: Define USE_C_ALLOCA if compiling with CC. 3371: 3372: * tm-alliant.h (CHECK_FLOAT_VALUE): Define this. 3373: 3374: * expr.c (expand_call): Make valreg 0 if passing structure address. 3375: 3376: Sat Nov 4 23:27:02 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3377: 3378: * caller-save.c (emit_mult_save, emit_mult_restore): 3379: Test regs for suitability as address before using as temps. 3380: 3381: * cccp.c (make_definition, do_define): Better error checks for name. 3382: 3383: Fri Nov 3 01:05:04 1989 Torbj|rn Granlund (tege at echnaton) 3384: 3385: * pyr.md (tstdi): New pattern. Use 64-bit shift with count zero. 3386: 3387: * pyr-tm.h: -mretd pops args with the retd insn. 3388: 3389: * pyr.md (peep-holes for loop optimizations): Use the R output 3390: format in PRINT_OPERAND, don't use output_branch. 3391: * out-pyr.c: No need for functions output_branch, output_inv_branch. 3392: 3393: * tm-pyr.h (ASM_OUTPUT_ALIGN): Don't truncate alignment to two. 3394: 3395: Wed Nov 1 00:38:27 1989 Torbj|rn Granlund (tege at echnaton.sics.se) 3396: 3397: * out-pyr.c (output_inv_branch): When reversing test operands, ne 3398: remains ne, and eq eq eq. 3399: 3400: * pyr.md: Cleanup output code for compare patterns. 3401: 3402: * pyr.md (return): Adjust frame pointer if 3403: current_function_pretend_args_size != 0. 3404: 3405: * pyr.md (extendsidi2): Use general_operand for the input operand. 3406: 3407: * pyr.md, out-pyr.c: Output shift insns with output_shift. 3408: 3409: * tm-pyr.h, out-pyr.c: Make NOTICE_UPDATE_CC understand how 3410: condition codes are really set. Define flag CC_VALID_FOR_UNSIGNED 3411: with to make it possible not to reset cc after each compare or 3412: test. 3413: * pyr.md: Don't use CC_STATUS_INIT for most patterns. 3414: 3415: * out-pyr.c (already_sign_extended): Cleanup, correct, optimize. 3416: 3417: * out-pyr.c: rename radr_diff to constant_diff. 3418: 3419: * out-pyr.c (movdi_possible): Don't combine moves from memory to 3420: memory, because of possible address aliasing. Don't combine moves 3421: with register destination if the source operands are depending on 3422: the destination of the first move, as in 3423: 3424: movw (pr3),pr3 3425: movw 4(pr3),pr4. 3426: 3427: * out-pyr.c (consecutive_operands): Handle SUBREG in addition to REG. 3428: 3429: * out-pyr.c (output_move_double): movl of immediate *sign* extends. 3430: 3431: Tue Oct 31 22:51:39 1989 Torbj|rn Granlund (tege at echnaton.sics.se) 3432: 3433: * pyr.md (cmpsi): Don't expand this. It's just slower. 3434: 3435: * out-pyr.c (extend_and_branch): Handle only QImode and HImode. 3436: Flush code specific for SImode. 3437: 3438: * out-pyr.c (extend_and_branch): To make zero extensions to HImode 3439: of constants not crash: 3440: * out-pyr.c (ensure_extended): Call extend_const if it's a 3441: CONST_INT. Don't call extend_const from extend_and_branch. 3442: * pyr.md, out-pyr.md: Use global variable test_mode to determine the 3443: mode of tests and compares. Set in define_expands for tests and 3444: compares. Used in extend_and_branch. 3445: * out-pyr.c: Pass mode between extend_and_branch and ensure_extended. 3446: 3447: * out-pyr.c (extend_and_branch): Accept SUBREG whereever REG is 3448: accepted. 3449: * out-pyr.c (weird_memory_memory): Accept SUBREG whereever REG is 3450: accepted. 3451: 3452: Thu Nov 2 13:02:15 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3453: 3454: * gnulib2.c (lshrdi2, and other shifts): Take second arg as long long. 3455: 3456: * out-i386.c (fp_pop_int): Use %L0 in fistp insn. 3457: 3458: Wed Nov 1 00:05:59 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3459: 3460: * stmt.c (init_function_start): Init max_parm_reg. 3461: 3462: * varasm.c (compare_constant_1): For ADDR_EXPR, compare symbol name. 3463: (record_constant_1): Likewise. 3464: 3465: * out-sparc.c (output_mul_by_constant): Constant zero is legitimate. 3466: 3467: * caller-save.c (emit_mult_restore, emit_mult_save): 3468: Handle stack addresses which are invalid. 3469: 3470: * cse.c (use_related_value): Don't abort if offset is 0. 3471: 3472: Tue Oct 31 15:08:58 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3473: 3474: * config.gcc (pyramid): Set $machine to pyr. 3475: 3476: * Makefile: Change temp file names from tmp-insn-* to tmp-*. 3477: 3478: * expr.c (expand_call): OK_DEFER_POP for is_const was once too many. 3479: 3480: Sun Oct 29 00:53:46 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3481: 3482: * c-parse.y (yylex): Prevent warning for numbers that underflow. 3483: 3484: * stmt.c (assign_parms): Convert stack addresses to valid addresses. 3485: (validize_mem): New subroutine. 3486: 3487: * stmt.c (check_for_full_enumeration_handling): Accept enum type 3488: as argument (since was finding it incorrectly). 3489: Delete special case for constant index. 3490: (expand_end_case): Pass enum type; check for constant index. 3491: 3492: * cexp.y (initialize_random_junk): Test DOLLARS_IN_IDENTIFIERS 3493: for nonzeroness. 3494: 3495: Fri Oct 27 16:25:19 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3496: 3497: * tm-next.h (__inline): define as macro for old 1.34 Next uses. 3498: 3499: Wed Oct 25 17:59:33 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3500: * stmt.c: Include recog.h. 3501: 3502: Tue Oct 24 19:23:11 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3503: 3504: * combine.c (try_combine): Don't move a volatile asm. 3505: 3506: Mon Oct 23 01:45:34 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3507: 3508: * combine.c (try_combine): Don't install a subreg relating two modes 3509: that aren't tieable. 3510: 3511: * gnulib2.c (__fixdfdi): Declare __fixunsdfdi. 3512: 3513: * combine.c: Make uid_cuid an int *. 3514: (combine_instructions): Allocate as such. 3515: * loop.c: Make uid_luid an int *. 3516: (loop_optimize): Allocate as such. 3517: 3518: Sun Oct 22 16:34:28 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3519: 3520: * stmt.c (fixup_var_refs_1): New insn before a CALL goes before 3521: the preceding USEs. 3522: 3523: Sat Oct 21 00:51:49 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3524: 3525: * out-pyr.c (extend_and_branch): Allow SUBREG like REG. 3526: * pyr.md (mem-reg and reg-mem HI, QI patterns): 3527: Don't match unless one arg is MEM. 3528: 3529: * out-sparc.c (output_fp_move_double): Use ldd only when safe, 3530: on same conditions used for std. 3531: 3532: * Makefile (gnulib): Fix comments for editing for hpux. 3533: 3534: Fri Oct 20 00:27:00 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3535: 3536: * out-i386.c (singlemove_string): Handle ordinary constants as input. 3537: 3538: * reload1.c (choose_reload_regs): Arg of HARD_REGNO_MODE_OK 3539: was the pseudo; should be the reload reg. 3540: 3541: * tm-decstatn.h (CPP_PREDEFINES): Add bsd4_2, ultrix, MIPSEL, 3542: host_mips, R3000, LANGUAGE_C, SYSTYPE_BSD. 3543: * tm-mips.h (CPP_PREDEFINES): Add host_mips, R3000, MIPSEB, LANGUAGE_C. 3544: (CPP_SPEC): Remove those from here. 3545: Define __SYSTYPE_*__ always. Define SYSTYPE_* only if not -ansi. 3546: No CPP_SPEC needed for decstation. 3547: Correct typos in option tests. 3548: 3549: Thu Oct 19 18:16:40 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3550: 3551: * tm-m68k.h, tm-alliant.h (PRINT_OPERAND): 3552: Don't print :l for address if :w was already printed. 3553: 3554: Wed Oct 18 13:03:52 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3555: 3556: * tm-mips.h (FUNCTION_PROLOGUE): Get rid of __0__gcc macro. 3557: Store that value in frame_stack_difference. 3558: (FUNCTION_EPILOGUE): Get rid of __0__gcc macro. 3559: (FIX_FRAME_POINTER_ADDRESS): Use frame_stack_difference. 3560: * out-mips.c (frame_stack_difference): Define here. 3561: 3562: * gcc.c (compilers): Define __GNUG__ if g++. 3563: 3564: Tue Oct 17 01:17:07 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3565: 3566: * tm-i860.h (HAVE_PRE_INCREMENT): Undefine this. 3567: 3568: * mips.md (movsf): New alternatives for r registers. 3569: * tm-mips.h (FUNCTION_PROLOGUE): Handle big stack frames. 3570: * out-mips.c (function_arg): Handle mode distinction for floating args. 3571: 3572: * pyr.md (mtstsw pattern): Accept general_operand. 3573: 3574: * i860.md (movsf): New alternatives: allow loading r from F. 3575: Prefer f-reg as reload when moving m from F. 3576: * tm-i860.h (PRINT_OPERAND): Handle CONST_DOUBLE if SFmode. 3577: 3578: Sun Oct 15 19:45:56 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3579: 3580: * i860.md (movhi, movqi): Support moves to/from fp regs. 3581: 3582: * sparc.md (cse'd multiply): New pattern for mult. by -1. 3583: 3584: * out-i860.c (load_opcode, store_opcode): Handle DImode and fp reg. 3585: 3586: * expr.c (emit_library_call, expand_call): Make a SEQUENCE for 3587: any needed USE insns and pass them to emit_call_1. 3588: (emit_call_1): Place the passed SEQUENCE immediately before the 3589: generated CALL_INSN even if gen_call made more than one insn. 3590: 3591: Fri Oct 13 00:12:46 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3592: 3593: * recog.c (constrain_operands): Add case for `&'. 3594: 3595: * expmed.c (extract_bit_field): With structure reg fetched from mem, 3596: don't put in subreg if mode already correct. 3597: (store_bit_field): Typo: had extzv, wanted insv. 3598: 3599: * stmt.c (expand_function_start): Call init_recog. 3600: 3601: Thu Oct 12 01:48:30 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3602: 3603: * cccp.c (macarg1): Count newlines even after backslash. 3604: 3605: * c-decl.c (pushdecl): Don't warn for explicit extern 3606: followed by static. That case is useful for incomplete arrays. 3607: 3608: * tm-sparc.h (SELECT_RTX_SECTION): Test was backwards. 3609: 3610: Wed Oct 11 00:35:25 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3611: 3612: * tm-seq386.h (DBX_DEBUGGING_INFO): Override this. 3613: (HARD_REGNO_MODE_OK): Override this. 3614: 3615: Mon Oct 9 01:09:25 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3616: 3617: * i860.md (movdi): accept F source in 2nd alternative. 3618: Accept G source in 3rd. 3619: (adddi3, subdi3): Typo in opcode of output. 3620: 3621: Sun Oct 8 01:38:27 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3622: 3623: * tm-mips.h (ASM_SPEC): Pass -nocpp to as. 3624: 3625: * c-decl.c (grokdeclarator): Ignore variant differences 3626: when preserving typedef types from being altered. 3627: 3628: Sat Oct 7 00:46:18 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3629: 3630: * xm-mips.h: Use __builtin_alloca. 3631: 3632: Fri Oct 6 00:30:42 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3633: 3634: * reload.c (find_equiv_reg): Do let xregno be a pseudo reg, 3635: but don't call HARD_REGNO_NREGS in that case. 3636: 3637: Thu Oct 5 00:30:39 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3638: 3639: * reload.c (find_equiv_reg): Don't let xregno be a non-hard reg. 3640: Don't do OVERLAPPING_REGNO_P on a pseudo reg number. 3641: 3642: * i386.md (trunchiqi2, etc.): Output %1 with size of destination. 3643: * out-i386.c (PRINT_REG): Support 'b' as CODE. 3644: 3645: * combine.c (try_distrib): Make sure we don't move a reg use 3646: across a store into that reg. 3647: 3648: * reload1.c (order_regs_for_reload): Rate fixed regs at LARGE+2, 3649: and explicitly used regs at LARGE+1. 3650: 3651: * stor-layout.c (build_int): When memoizing, make permanent nodes. 3652: 3653: Wed Oct 4 19:40:37 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3654: 3655: * xm-i860.h: Missing file added. 3656: 3657: Mon Oct 2 16:26:33 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3658: 3659: * reload1.c (emit_reload_insns): Reject any OLDEQUIV that is 3660: in use in any other reload of this insn. 3661: 3662: * expr.c (expand_call): Don't put on notes for const functions 3663: if there aren't real insns to hold them. 3664: 3665: Sun Oct 1 19:50:59 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3666: 3667: * integrate.c (expand_inline_function): Handle PARALLEL in CALL_INSNs 3668: when setting follows_call. 3669: 3670: * i860.md (pfeq, pfgt and pfle patterns): Add f0 as 3rd arg. 3671: 3672: * integrate.c (save_for_inline): Don't delete NOTE_INSN_FUNCTION_END. 3673: 3674: Fri Sep 29 08:56:30 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3675: 3676: * tm-next.h (LINK_SPEC): Typo for -Z option. 3677: 3678: Thu Sep 28 12:57:11 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3679: 3680: * reload.c (decompose): Handle case of pseudo with no hard reg. 3681: 3682: Wed Sep 27 01:20:36 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3683: 3684: * explow.c (round_push): Fix typo: return fast if ALIGN is 1. 3685: 3686: * varasm.c (in_text_section): New function. 3687: * tm-3b1.h (ASM_OUTPUT_SKIP): Use that. 3688: 3689: Tue Sep 26 02:40:23 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3690: 3691: * c-typeck.c (commontype): If one arg is error_mark_node, return other. 3692: 1.1.1.16 root 3693: Sun Sep 24 00:21:24 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3694: 1.1.1.17 root 3695: * c-decl.c (poplevel): When popping a local extern decl, 3696: save the TREE_USED bit in the identifier. 3697: * toplev.c (compile_file): Check that, printing "not used" warnings. 3698: 3699: * tree.c (make_node): Always put PARM_DECL in saveable_obstack. 3700: 1.1.1.16 root 3701: * Version 1.36 released. 3702: 3703: * genextract.c (main): Pass `insn' as arg to `fatal_insn_not_found'. 3704: 3705: * tahoe.md (casel patterns): Use %@ for operand of .align. 3706: * tm-tahoe.h (PRINT_OPERAND): %@ prints `1'. 3707: * tm-harris.h (PRINT_OPERAND): Redefine it; %@ prints `2'. 3708: 3709: * config.gcc (decstation): New entry. 3710: 3711: * tm-harris.h: New file, using tm-tahoe.h. 3712: 3713: * tm-decstatn.h, tm-mips-bsd.h, tm-mips-sysv.h: New files. 3714: 3715: Sat Sep 23 00:28:14 1989 Alain Lichnewsky (lich at glenlivet) 3716: 3717: * added -Zxxx flag in tm-mips.h. (-Z stands for systype) 3718: 3719: used as -ZSYSV or -ZBSD43 on RISC_OS. I suppose 3720: that at somepoint -ZPOSIX might be required for Ultrix. 3721: 3722: * changed command issued to loader to set -systype and to get 3723: crt1 crtn instead of crt0. 3724: 3725: * changed predefines for cpp to agree with RISC-OS 3726: 3727: * tm-mips.h checks for machine type ( defined(ultrix) == DECSTATION) 3728: so that user does not have to go in and change tm-mips.h anymore 3729: 3730: * cpp defines mips host_mips unix and SYSTYPE_SYSV 3731: or SYSTYPE_BSD43. 3732: 3733: Fri Sep 22 00:31:29 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3734: 3735: * pyr.md (andsi3): Flush spurious paren. 3736: 3737: * Makefile (hard-params): Don't use LIBS or LIBDEPS. 3738: 3739: * rtl.c (init_rtl): 3740: Use malloc to allocate the string for format of CONST_DOUBLE. 3741: Don't fail to store in rtx_format. 3742: 3743: Thu Sep 21 00:33:13 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3744: 3745: * print-tree.c (dump): Move decl of P in REAL_CST case. 3746: 3747: * fold-const.c (fold): For ABS_EXPR, handle REAL_IS_NOT_DOUBLE. 3748: 3749: * c-convert.c (convert_to_real): Use REAL_VALUE_ATOF to make 0. 3750: 3751: * mips.md (movdi): Handle constant with or without WORDS_BIG_ENDIAN. 3752: For alternative 2, output just 2 store insns, not 3. 3753: 3754: * dbxout.c (dbxout_symbol): Optionally go to .data for 3755: a static file-scope variable. 3756: * tm-vax.h: Define DBX_STATIC_STAB_DATA_SECTION to request this. 3757: 3758: * varasm.c (output_constant, force_const_mem): 3759: ASM_OUTPUT_DOUBLE_INT now takes rtx as argument. 3760: 3761: * gvarargs.h [__NeXT__]: Undefine macros defined by stdardg.h. 3762: Define _VARARGS_H. 3763: 3764: * stddef.h (size_t): Don't define it if _SIZE_T macro is defined. 3765: (NULL): Undef any previous defn. 3766: 3767: * cexp.y (NULL): Don't define if already defined. 3768: 3769: * emit-rtl.c (force_next_line_note): New function. 3770: * stmt.c (expand_function_start): Call that just before returning. 3771: 3772: Wed Sep 20 01:22:16 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3773: 3774: * c-parse.y (asm_clobbers): 3775: Allow string concatenation: call combine_strings. 3776: 3777: Mon Sep 18 00:04:06 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3778: 3779: * expr.c (expand_call): If calling const function, don't defer 3780: pops for this call. 3781: 3782: * c-parse.y (yylex): When float constant ends in `f', 3783: actually truncate to a single-float. 3784: 3785: Sun Sep 17 01:36:43 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3786: 3787: * gcc.c (SWITCH_TAKES_ARG): -A takes an arg. 3788: (link_spec): Inhibit start files when -A. 3789: 3790: * convex.md (call, call_value): Supply dummy arg to RETURN_POPS_ARGS. 3791: 3792: * gnulib2.c (__fixunsdfdi): After removing top half, A can be neg. 3793: (__cmpdi2, __ucmpdi2): Was misusing macros HIGH and LOW-- 3794: use .s.high and .s.low to extract words from long_long. 3795: 3796: * Makefile (gnulib2): Run `./gcc'. 3797: 3798: * Makefile (float.h): Use `make', not `$(MAKE)'. 3799: (hard-params.o): Use `$(srcdir)' in deps as in commands. 3800: 3801: * out-tahoe.c (output_move_double): Handle constant operand 1. 3802: 3803: Sat Sep 16 01:15:24 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3804: 3805: * reload1.c (emit_reload_insns): Put death note for input reload reg 3806: even if reload was inherited. 3807: 3808: * out-i860.c (output_block_move): Typo loading size of block. 3809: 3810: * m68k.md (dbra patterns): Do CC_STATUS_INIT. 3811: 3812: * cse.c (fold_rtx): Check GET_MODE_CLASS before floating negate. 3813: 3814: Fri Sep 15 00:39:44 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3815: 3816: * combine.c (subst): Don't combine (subreg (mem)) 3817: if subreg's mode is wider than mem's mode. 3818: 3819: Thu Sep 14 04:33:51 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3820: 3821: * Makefile (clean): Delete temp files used in making gnulib. 3822: 3823: * tm-next.h (LINK_SPEC): Pass -Z and -seglinkedit options. 3824: 3825: Tue Sep 12 01:06:39 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3826: 3827: * stor-layout.c (layout_type): Ignore MAX_FIXED_MODE_SIZE for ints. 3828: 3829: * mips.md (cmpsi + bleu peephole): Should output unsigned insn. 3830: 3831: * expmed.c (store_bit_field, extract_bit_field): If loading mem 3832: into reg for bit field insn, don't use a larger mode than insn wants. 3833: 3834: * Makefile (stamp-gnulib2): Depend on gcc, cc1, cpp to avoid 3835: wrong order of making when parallel. 3836: 3837: * Makefile (float.h): Do use $(MAKE) to run recursive make. 3838: 3839: Mon Sep 11 00:49:11 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3840: 3841: * cccp.c (main): Test for missing arg after -o, etc. 3842: 3843: * tm-next.h: Nearly completely new. 3844: 3845: * gcc.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Move after config.h. 3846: 3847: * cccp.c: Cast some args to strcpy and strcat. 3848: 3849: * genoutput.c (error): Declare arg S. 3850: 3851: * tm-pyr.h, pyr.md, out-pyr.c, xm-pyr.h: New files. 3852: * config.gcc: New item for pyr. 3853: 3854: * gvarargs.h: If __pyr__, use va-pyr.h. 3855: 3856: Sun Sep 10 00:48:43 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3857: 3858: * reload1.c (inc_for_reload): Really return the first of the insns. 3859: 3860: * stor-layout.c (build_int): Memoize size nodes for sizes <= 32. 3861: 3862: * loop.c (check_dbra_loop): Don't reverse a biv that is used 3863: in between its update and the loop endtest insn. 3864: 3865: Sat Sep 9 02:10:49 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3866: 3867: * stor-layout.c (genop): Don't use `combine' for nonexplicit constants. 3868: Handle some identity elements, etc., directly. 3869: (layout_basetypes): Function deleted. 3870: (layout_record): Ignore any TYPE_DECLs in the fieldlist. 3871: Don't do PCC_BUTFIELD_TYPE_MATTERS hack on field with ERROR_MARK type. 3872: (layout_union): Delete error check for base types. 3873: Ignore any TYPE_DECLs in the fieldlist. 3874: (layout_type): Copy layout info directly into all variants of type. 3875: Delete unused local `x'. 3876: 3877: * mips.md (movdi): Handle constant source operand. 3878: (movsi): Some output code moved to output_load_immediate. 3879: * out-mips.c (output_load_immediate): New function. 3880: 3881: * config.gcc (iris): Use tm-iris.h and xm-iris.h. 3882: 3883: * integrate.c (copy_for_inline): Copy all nonconstant MEM addresses. 3884: 3885: * tm-3b1.h (ASM_OUTPUT_SPACE): New override defn, to output explicit 3886: bytes of 0 if in text segment. 3887: 3888: Fri Sep 8 19:15:08 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3889: 3890: * combine.c (try_combine): Don't do i3dest stuff if i3 isn't a SET. 3891: 3892: Thu Sep 7 00:16:32 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3893: 3894: * integrate.c (function_cannot_inline_p): Fn is "not even close" 3895: only if > 3 * max_insns. 3896: 3897: * toplev.c (fatal_insn_not_found): New fn. 3898: * genextract.c (main): Make insn_extract call that fn. 3899: 3900: * integrate.c (expand_inline_function): Don't abort about bad offset 3901: in a parm whose type is error_mark_node. 3902: Make another syntax level to hold parm destructors. 3903: 3904: * tm-mips.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): 3905: Increment push_loc after, not before, each reg save or restore. 3906: When storing reg 9 or 29, use offset tsize-4. 3907: Make tsize larger by 4 initially. 3908: (STARTING_FRAME_OFFSET): -8, not -4. 3909: 3910: * gcc.c (choose_temp_base): Make use of TMPDIR and P_tmpdir 3911: if they exist. 3912: 3913: * toplev.c, gcc.c, cccp.c, gen*.c (fancy_abort): 3914: New function which can be used to replace `abort'. 3915: 3916: * toplev.c (main): Save argv, argc in save_argv, save_argc. 3917: 3918: * jump.c (delete_insn): Always advance NEXT across deleted insns, 3919: in case not optimizing. Fixes setting current_function_returns_null. 3920: 3921: * symout.c: Include stddef.h with <...>. 3922: 3923: Wed Sep 6 00:39:35 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3924: 3925: * gcc.c (find_exec_file): Was using `argbuf[0]' where wanted `prog'. 3926: 3927: * combine.c (combine_instructions): Dont call record_dead_and_set_regs 3928: if insn has become a NOTE. 3929: 3930: * reload.c (combine_reloads): Update reload_when_needed. 3931: 3932: * jump.c (delete_insn): If delete label on ADDR_VEC, delete table too. 3933: (jump_optimize): If ADDR_DIFF_VEC label has 1 ref, delete it and table. 3934: 3935: * gunlib2.c (__fixunsdfdi, __floatdfdi): Make the long long, 3936: and/or its two halves, unsigned. 3937: 3938: * reload1.c (reload): When setting double_reg_address_ok, 3939: require it to be offsettable. 3940: * out-sparc.c (output_fp_move_double): Now safe to use std 3941: for all reg+reg addresses. 3942: 3943: * vax.md: Add another simplified-casesi pattern for operand 0 constant. 3944: 3945: * cse.c (fold_rtx): Don't truncate VAL at end if WIDTH is 0. 3946: Don't alter WIDTH for that purpose based on the operands. 3947: 3948: * stmt.c (warn_if_unused_value): && or || is ok if 2nd op has effect. 3949: 3950: * c-parse.y (ALIGNOF unary_expr): Find a larger value if possible. 3951: 3952: * reload.c (combine_reloads): Don't combine an output address reload. 3953: (find_reloads): Call combine_reloads after setting reload_when_needed. 3954: (find_reloads_address): Update OPERAND if copy the operand. 3955: 3956: * cccp.c (macroexpand): Missing arg no error in 1-arg macro if -trad. 3957: 3958: Tue Sep 5 14:12:23 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3959: 3960: * reload.c (find_dummy_reload): Don't use the output reg if it is 3961: a fixed reg which can overlap with other regs. 3962: 3963: * cse.c (exp_equiv_p): Two vectors must have same length. 3964: 3965: * tree.def (WITH_CLEANUP_EXPR): Print-name string was wrong. 3966: 3967: * optabs.c (expand_fix): Undo previous change (unsigned conversion). 3968: It doesn't work. 3969: 3970: * gcc.c: Pass -i option to cpp. It takes an arg. 3971: 3972: * cccp.c (cplusplus_include_defaults) [VMS]: Typo in array indices. 3973: 3974: * Makefile (gnulib): Create it in tmpgnulib, then rename at the end. 3975: 3976: * i860.md (movdi from constant pattern): Fix `st' opcode typos. 3977: 3978: * Makefile (hard-params*): Use CCLIBFLAGS, not CFLAGS. 3979: 3980: Fri Sep 1 03:43:50 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3981: 3982: * tm-i386gas.h (ASM_OUTPUT_ALIGN): .align arg isn't a log, in gas. 3983: (ASM_OUTPUT_ALIGN_CODE): Align labels, etc. to 4-byte boundary. 3984: 3985: * integrate.c (save_for_inline): Delete NOTE_INSN_DELETED notes. 3986: 3987: * Makefile (clean): Delete dbr and jump2 dumps. 3988: 3989: * Makefile (gnulib, gnulib2): Compile in main dir, not libtemp subdir. 3990: This avoids trouble with -I options, etc. 3991: 3992: Thu Aug 31 15:07:19 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 3993: 3994: * reload1.c (emit_reload_insns): 3995: Be specific moving REG_DEAD notes to an output reload. 3996: Sometimes move them to output-operand-address reloads. 3997: 3998: * out-sparc.c (output_fp_move_double): Very cautious about std. 3999: Use it only for something visibly aligned, or for an array element. 4000: 4001: * cccp.c (main) [VMS]: Remove dirs and extension from PROGNAME. 4002: (pfatal_with_name) [VMS]: Return VMS system call error code as status. 4003: (cplusplus_include_defaults) [VMS]: Add GNU_GXX_INCLUDE. 4004: 4005: * xm-vms.h (FATAL_EXIT_CODE): Now (44 | 0x10000000). 4006: 4007: * expr.c (do_store_flag): Allow more values of STORE_FLAG_VALUE. 4008: 4009: * gnulib2.c (__fixunsdfdi): Explicitly cast doubles to `long int' 4010: to avoid infinite recursion. 4011: 4012: Wed Aug 30 13:28:54 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4013: 4014: * loop.c (skip_consec_insns): Skip NOTEs. 4015: 4016: * loop.c (general_induction_var): If G or V is a nonreplaceable giv, 4017: give up. If G is allocated here, consider it replaceable. 4018: 4019: * stupid.c: Make uid_suid, reg_where_born and reg_where_dead 4020: vectors of ints, not short. 4021: 4022: Tue Aug 29 00:21:13 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4023: 4024: * tm-iris.h: Fix typo in formfeed char. 4025: 4026: * out-i860.c (singlemove_string): Add missing `.l' to `st', `ld'. 4027: 4028: * loop.c (general_induction_var): Don't set G from 2nd op. of MINUS, 4029: since that would negate the result. 4030: 4031: Mon Aug 28 00:16:36 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4032: 4033: * dbxout.c (dbxout_symbol): When we need a pointer type, don't 4034: record it in TYPE_POINTER_TO, lest it not live as long as its target. 4035: 4036: * tm-hp9k320.h (CPP_PREDEFINES): Delete __hp9000s300 and _HPUX_SOURCE. 4037: 4038: * Makefile (gnulib): Deleted stamp-gnulib2 in wrong dir. 4039: (hard-params.o): Copy it into current dir before compiling. 4040: (STAGESTUFF): Include the stamp-*.[ch] files. 4041: 4042: Sun Aug 27 13:59:39 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4043: 4044: * out-i860.c (output_size_for_block_move): Typo in CC_KNOW_HI_R31. 4045: 4046: * integrate.c (expand_inline_function): Ignore insns to set value reg 4047: if we don't want the value. 4048: 4049: * varasm.c (make_function_rtl, make_decl_rtl): Use DECL_ASSEMBLER_NAME. 4050: 4051: * Makefile (stamp-gnulib2): Don't explicitly delete old members, 4052: just replace them. 4053: 4054: * m68k.md, alliant.md (trunchiqi): Use movew if moving from memory 4055: or from a const_int. 4056: 4057: * integrate.c (expand_inline_function): Set first_parm_offset 4058: later on, after computing the args, in case those args 4059: contain inline function calls. 4060: 4061: * alliant.md (movqi): Like recent change in m68k.md. 4062: 4063: Sat Aug 26 00:26:03 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4064: 4065: * tm-hp9k320.h (CPP_PREDEFINES): Take out m68k and mc68000. 4066: * tm-news.h (CPP_PREDEFINES): Add mc68000. 4067: 4068: Fri Aug 25 15:37:35 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4069: 4070: * optabs.c (expand_fix): Can convert to unsigned int 4071: by subtracting 2**(N-1), converting to signed, and adding 2**(N-1). 4072: 4073: * reload.c (find_reloads_address): For out-of-range stack slot, 4074: reload the displacement into a reg. 4075: (find_reloads_toplev): For subreg of a reg with a reg_equiv_address, 4076: turn the whole thing into a memref. 4077: 4078: Thu Aug 24 14:07:03 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4079: 4080: * c-decl.c (grokdeclarator): If function is declared `extern inline', 4081: set current_extern_inline. 4082: (start_function): In that case, set TREE_EXTERN in function decl. 4083: * toplev.c (rest_of_compilation): In that case, don't really compile. 4084: (compile_file): Don't output such functions at the end either. 4085: 4086: * c-typeck.c (build_function_call): Do set NAME if we have one. 4087: 4088: * Prevent any variability in results of qsort. 4089: * stupid.c (stupid_reg_compare): Compare by regno as last resort. 4090: * global-alloc.c (allocno_compare): Same idea. 4091: * local-alloc.c (qty_compare_1): Same idea. 4092: * reload1.c (hard_reg_use_compare, reload_reg_class_lower): Same idea. 4093: 4094: * cccp.c (macroexpand): If read one arg, but it's whitespace, 4095: consider that 0 args for checking number of args. 4096: Improve plurals in error messages. 4097: 4098: * expr.h (inhibit_defer_pop): New name for current_args_size, 4099: now declared here. 4100: (NO_DEFER_POP, OK_DEFER_POP): Moved here. 4101: * expr.c: Names related to current_args_size renamed. 4102: (clear_current_args_size): Deleted. 4103: * stmt.c (expand_function_start): Init inhibit_defer_pop here. 4104: 4105: * stmt.c (expand_start_stmt_expr): Do NO_DEFER_POP. 4106: (expand_end_stmt_expr): Do OK_DEFER_POP, and don't do deferred pops. 4107: 4108: * Makefile (c-parse.tab.c): Pass -o option to Bison. 4109: 4110: Wed Aug 23 23:14:06 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4111: 4112: * expmed.c (store_bit_field, extract_bit_field): 4113: Use GET_MODE_WIDER_MODE to scan possible modes for bestmode. 4114: 4115: * Makefile (stamp-gnulib2): Discard error messages from `ar d'. 4116: 4117: Tue Aug 22 00:31:51 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4118: 4119: * final.c (output_source_line): In COFF, don't output `.ln 0'. 4120: 4121: * Makefile (stamp-gnulib2): Depend on gnulib. For parallel make. 4122: 4123: * stmt.c (uninitialized_vars_warning): Don't crash if DECL_RTL is 0. 4124: 4125: * i386.md (truncdfsf2): Pay attention whether stack top is dead. 4126: 4127: Mon Aug 21 22:02:40 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4128: 4129: * reload1.c (choose_reload_regs): Don't use regno uninitialized, 4130: in the code that does find_equiv_reg. 4131: 4132: Sun Aug 20 00:06:47 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4133: 4134: * m68k.md (movqi): Was outputting bad code for areg->mem and mem->areg. 4135: 4136: * explow.c (memory_address): Handle a hard reg in wrong reg class. 4137: 4138: * stmt.c (expand_function_end): Set REG_FUNCTION_VALUE_P in return 4139: reg when returning address of structure value block. 4140: 4141: * integrate.c (save_for_inline): Preserve integrated bit on insns. 4142: 4143: Sat Aug 19 14:20:07 1989 Richard Stallman (rms at apple-gunkies.ai.mit.edu) 4144: 4145: * combine.c (subst): Don't change (subreg:M (mem:N ...)) to 4146: (mem:M ...) if address is mode-dependent. 4147: 4148: * config.gcc: Copy and alter Makefile for any srcdir except `.'. 4149: In that case, make a .gdbinit as well. 4150: 4151: * sparc.md (andcbsi3, iorcbsi3, xorcbsi3): These are not commutative. 4152: 4153: * vax.md (cmpv and cmpzv patterns): Use COMPARE, not MINUS. 4154: 4155: Fri Aug 18 12:24:52 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4156: 4157: * alliant.md (movqi): Change move to mov in assembler code. 4158: 4159: * integrate.c (expand_inline_function): 4160: Handle args passed in regs and copied to slots reached via arg ptr. 4161: 4162: * out-sparc.c (output_delayed_branch): 4163: Do alter_subreg on operands of delay insn. 4164: 4165: * reload1.c (choose_reload_regs): Look for a reg to share 4166: before one that we won't share. 4167: 4168: * expr.h: Define OPTAB_MUST_WIDEN. 4169: * optabs.c (expand_binop): Handle that case. 4170: * expmed.c (expand_shift): Use that when widening lshift to ashift. 4171: 4172: * optabs.c (emit_cmp_insn): Use CONST0_RTX, not individual vars. 4173: 4174: * gnulib2.c (lsh*di3, ash*di3): Return right away if count is zero. 4175: Otherwise tried to shift by 32. 4176: Also replace constant 32 by something symbolic. 4177: 4178: * final.c (output_source_line): Output line number in COFF 4179: even if wrong file. 4180: 4181: Thu Aug 17 15:16:34 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4182: 4183: * Makefile (version.o): Make this a target; specify source file. 4184: (obstack.o): Likewise. 4185: 4186: * config.gcc (i860): New alternative. 4187: 4188: * i860.md (movstrsi): Record the alignment as operand 3. 4189: Renumber following (internal) operands. 4190: * out-i860.c (output_block_move): Rewrite as in out-sparc.c. 4191: (output_size_for_block_move): Likewise. And don't 4192: subtract alignment from the size. 4193: 4194: Wed Aug 16 13:27:12 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4195: 4196: * loop.c (combine_movables): Don't combine zero-extend 4197: registers that live outside the loop. 4198: 4199: * integrate.c (expand_inline_function): Use copy_to_mode_reg 4200: to set up this_struct_value_rtx, to handle sums right. 4201: 4202: * Makefile: Use $(srcdir) in bison output files used as deps. 4203: Supply some missing deps. 4204: (*.info, doc): *.info files go in srcdir. 4205: 4206: Tue Aug 15 00:11:12 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4207: 4208: * i860.md, tm-i860.h, out-i860.c: New files. 4209: 4210: * c-decl.c (duplicate_decls): Fix bug determining whether NEWDECL 4211: is a definition or just a decl. 4212: Combine code to preserve various things from old definition 4213: through a declaration. 4214: 4215: * config.gcc: Scan all args at beginning, setting variables. 4216: Arg of form -srcdir=... sets srcdir explicitly. 4217: srcdir now doesn't contain a slash, and is used with a slash. 4218: 4219: * Makefile (install): Copy header files and gcc.1 from srcdir. 4220: But copy float.h from current dir. (Remove that from USER_H.) 4221: (various): Use new variable INCLUDES to get the -I options. 4222: Add -I. at the beginning of these. 4223: (gnulib, gnulib2): Likewise, use SUBDIR_INCLUDES. 4224: Also, get source file from srcdir. 4225: Also, depend on $(CONFIG_H). 4226: (alloca.o): Get alloca.c from srcdir. 4227: 4228: * reload1.c (emit_reload_insns): Bug in last change: 4229: don't fail to set this_reload_insn. 4230: 4231: * Makefile (Bison rules): Specify $(srcdir) for target and source. 4232: (Explicit C rules): Specify $(srcdir)/ for source in commands. 4233: Use sed to eliminate `./' in normal case. 4234: (insn-*.c): Use $(srcdir) to run move-if-change. 4235: 4236: * config.gcc: Check . and .. for the sources. 4237: If in .., use that when making links. 4238: Also, copy Makefile, alter srcdir in it, and add a VPATH. 4239: 4240: * stmt.c (expand_end_case): When converting CONST_INT index 4241: to an INTEGER_CST, sign-extend if signed type. 4242: 4243: Mon Aug 14 13:51:08 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4244: 4245: * c-decl.c (duplicate_decls): Warn for qualifier mismatch 4246: only if pedantic; don't consider it a type mismatch. 4247: Merge the qualifiers of the two decls if the types match. 4248: 4249: * expmed.c (store_bit_field): For insv, memref displacement 4250: always counts in bytes, regardless of unit fetched. 4251: When checking predicate of op0, accept any mode. 4252: 4253: * optabs.c (expand_float): One call to can_float_p had args backwards. 4254: 4255: * loop.c (check_dbra_loop): Set the JUMP_LABEL of the new jump insn. 4256: Increment label's use count rather than storing 2. 4257: 4258: * Makefile: Instead of $<, which fails in certain makes, 4259: use $@ and then substitute in the name with sed. 4260: 4261: * out-sparc.c (output_scc_insn): Handle CC_REVERSED for ordered tests. 4262: Use orcc insns to store the result and set cc's for it. 4263: 4264: * sparc.md (scc combination patterns): 4265: Use operands[0] as basis for recorded cc value. 4266: 4267: * gnulib2.c (floatdidf, fixdfdi, fixunsdfdi): New functions. 4268: 4269: * gnulib.c (floatdidf, fixdfdi, fixunsdfdi): Deleted. 4270: (union longlong, union double_di): Deleted. 4271: (HIGH, LOW): Deleted. 4272: These were deleted because most did not handle full range of DI 4273: and they didn't use the right calling convention for DI. 4274: 4275: Sun Aug 13 13:06:45 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4276: 4277: * c-typeck.c (comptypes): Qualifiers must match. 4278: (Was already true for scalars.) 4279: Also, array elt qualifiers must match. 4280: 4281: * tm-apollo68.h (STRUCT_VALUE): Make it 0. 4282: (This was done before and lost.) 4283: * out-i386.c (function_epilogue): Use ret $4 to pop structure address. 4284: (This was done before and lost.) 4285: 4286: * out-i386.c (call_top_dead_p): Don't fail to check 4287: the rtx code of the insns themselves. 4288: (This was done before and lost.) 4289: 4290: * out-sparc.c (output_block_move): If align is 8, make it 4. 4291: 4292: * typeclass.h: New file. 4293: * expr.c: Include it. 4294: (expand_builtin): Use those codes in __builtin_classify_type. 4295: 4296: * Makefile (all, lang-c): Reinstall gnulib2. 4297: 4298: * Makefile (gnulib2): Don't give up if `ar d' fails. 4299: 4300: * expr.c (emit_library_call): New 2nd arg NO_QUEUE. 4301: All callers changed to pass it. 4302: * optabs.c (expand_binop, expand_unop): Don't call emit_queue. 4303: Instead, pass 1 for NO_QUEUE to emit_library_call. 4304: 4305: Sat Aug 12 12:05:22 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4306: 4307: * reload1.c (emit_reload_insns): Decision for where to put input 4308: reload insn is now common to ordinary case and auto-increment. 4309: Likewise, updating these positions afterward. 4310: 4311: * stmt.c (assign_parms): Treat last named arg as nameless. 4312: * expr.c (expand_call): Likewise. 4313: 4314: * explow.c (copy_to_mode_reg): Use force_operand for PLUS or MULT. 4315: (copy_addr_to_reg): Use copy_to_mode_reg. 4316: 4317: * expmed.c (store_bit_field): Handle case where insv rejects memrefs. 4318: 4319: * tm-convex.h (ASM_OUTPUT_ALIGN): Magic to handle the fact 4320: that this is not called when LOG is 0. 4321: 4322: Fri Aug 11 16:39:51 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4323: 4324: * emit-rtl.c (get_lowpart): For multi-word, in error check, 4325: test the unit size of the containing mode. 4326: 4327: * cccp.c (macroexpand, dump_all_macros): Return void. 4328: (macroexpand): Cast sprintf arg to char*. 4329: (error, warning, error_with_line): Declare first arg char*. 4330: 4331: Thu Aug 10 21:42:13 1989 Richard Stallman (rms at hobbes.ai.mit.edu) 4332: 4333: * expr.c (expand_call): 4334: Use force_operand to copy arithmetic to register. 4335: 4336: * dbxout.c (dbxout_symbol): Go back to N_FUN for const variable. 4337: 4338: * integrate.c (expand_inline_function): Use proper machine mode 4339: for a structure value in memory at address passed by caller. 4340: 4341: Wed Aug 9 15:21:36 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4342: 4343: * config.gcc: Delete unnecessary variable assignments in case stmt. 4344: (isi68-nfp): New alternative. 4345: 4346: * combine.c (try_combine): Don't substitute for a register 4347: which is being explicitly clobbered. 4348: 4349: * This change was requested for C++. 4350: * varasm.c (decode_reg_name, make_decl_rtl): Arg ASMSPEC now char *. 4351: * toplev.c (rest_of_decl_compilation): Likewise. 4352: * c-decl.c (finish_decl): Change call to rest_of_decl_compilation. 4353: 4354: * tree.h (struct tree_decl): Pack machine_mode into 8 bits. 4355: 4356: * explow.c (memory_address, copy_to_reg): 4357: Use force_operand to copy arithmetic to register. 4358: 4359: * tm-isi68-nfp.h: New file. 4360: * tm-isi68.h: Allow overriding TARGET_DEFAULT, and let that 4361: change CPP_SPEC and LINK_SPEC. 4362: (ASM_FILE_START): No `.globl fltused' if soft-float. 4363: 4364: Tue Aug 8 21:50:52 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4365: 4366: * varasm.c (const_hash): For constructor, mask TREE_TYPE to HASHBITS 4367: bits and take modulo, so we don't get negative numbers. 4368: 4369: * varasm.c (record_constant_1, compare_constant_1): 4370: Record and compare the width of an integer. 4371: 4372: * varasm.c (assemble_function, assemble_variable, get_or_assign_label): 4373: (force_const_mem): Don't call ASM_OUTPUT_ALIGN if boundary is 1. 4374: 4375: * c-decl.c (duplicate_decls): Consider const and volatile as part of 4376: type when checking for match and when installing new type into OLDDECL. 4377: 4378: * expr.c (do_store_flag): Make sure target fits operand predicate. 4379: Also, omit the AND insn when true-value is 1 4380: and the mode we get is wider than the one we want. 4381: 4382: * genrecog.c (main): Make insn-recog.c include real.h. 4383: 4384: Mon Aug 7 16:58:56 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4385: 4386: * genemit.c (main): Define `operands' as `emit_operands', 4387: not `recog_operands'. 4388: 4389: * reload1.c (emit_reload_insns): Don't copy back a dead output reg. 4390: 4391: Sun Aug 6 13:56:53 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4392: 4393: * sdbout.c (plain_type_1, sdbout_one_type): Use the main variant. 4394: (sdbout_type_fields): No need to check TREE_ASM_WRITTEN here, 4395: since sdbout_one_type does that. 4396: 4397: * expr.c (do_store_flag): Ensure the CLOBBER doesn't clobber an input. 4398: 4399: * fold-const.c (fold_convert): Attempt to avoid overflow 4400: when converting real to integer. Use unsigned conversion for 4401: low part; always convert as positive and then change sign; 4402: subtract high part before converting low part. 4403: Also, check for real values out of range for chosen int type; 4404: warn and do not convert. 4405: 4406: * tm-hp9k320.h (CPP_SPEC) [not HPUX_ASM]: Don't define mc68000 here. 4407: (CPP_PREDEFINES): Remove mc68k, add m68k and mc68000. 4408: [HPUX_ASM]: Define CPP_SPEC here as in the other case, 4409: but add __HPUX_ASM__ to each alternative. 4410: 4411: * tm-m68k.h (FUNCTION_EPILOGUE): Call new hook FUNCTION_EXTRA_EPILOGUE. 4412: * tm-altos3068.h (FUNCTION_EXTRA_EPILOGUE): Define it. 4413: 4414: * Makefile: Use $< wherever appropriate. 4415: Also put definitions of customization vars before the comments 4416: saying how to override them. 4417: 4418: Sat Aug 5 14:15:39 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4419: 4420: * i386.md (sne): Typo in opcode name. 4421: 4422: * tree.h (struct tree_identifier): Delete redundant/unused error_locus. 4423: 4424: Fri Aug 4 00:04:10 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4425: 4426: * varasm.c (const_hash, compare_constant_1, record_constant_1): 4427: Compare types only for record constructors, not for array constructors. 4428: 4429: * dbxout.c (dbxout_parms): When outputing parm from home in local slot, 4430: with address from the RTL, don't do big-endian correction on it. 4431: 4432: * c-typeck.c (build_unary_op): Do default conversion for unary +. 4433: 4434: * cccp.c (rescan): Accept comments between macro and its args. 4435: 4436: * c-decl.c (lang_decode_option): -traditional implies writable strings. 4437: 4438: * cccp.c (trigraph_pcp): Make warning msg more accurate. 4439: 4440: * c-typeck.c (c_expand_asm_operands): Delete the default promotion 4441: which was inserted mysteriously since 1.35. 4442: 4443: * global-alloc.c (global_conflicts): Allocate regs_set only once. 4444: Make it twice as big since clobbers are stored twice. 4445: 4446: * sparc.md (block move patterns): Record and use alignment operand. 4447: * out-sparc.c (output_block_move): Get alignment from there. 4448: (output_size_for_block_move): Greatly simplified. 4449: 4450: * tm-i386v.h (PCC_BITFIELD_TYPE_MATTERS): Define it. 4451: 4452: * stor-layout.c (layout_record): Anonymous bitfields don't affect 4453: overall structure alignment, in PCC_BITFIELD_TYPE_MATTERS case. 4454: 4455: * loop.c (strength_reduce): Prevent hard reg from becoming biv or giv. 4456: 4457: * combine.c (subst): Simplify (eq (neg ...) (const_int 0)). 4458: 4459: Thu Aug 3 13:08:05 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4460: 4461: * cse.c (fold_rtx): For (op var const) special cases, also check 4462: for constant as first argument. 4463: 4464: * c-decl.c (pushtag): For global_binding_level, make permanent nodes. 4465: 4466: * expr.c (do_store_flag): Put the CLOBBER before the comparison. 4467: 4468: * expr.c (emit_push_insn): Conditionalize recent changes 4469: on no FIRST_PARM_CALLER_OFFSET, so they don't happen on sparc. 4470: 4471: * out-sparc.c (gen_scc_insn): 4472: Don't be confused by CLOBBER emitted by do_store_flag. 4473: Skip past such insns looking for last_insn. 4474: Don't alter last_insn; instead, patch it to a NOTE and emit new insn. 4475: 4476: * varasm.c (const_hash, compare_constant_1, record_constant_1): 4477: For a CONSTRUCTOR, hash/compare/record type as well as elts. 4478: 4479: * cse.c (cse_insn): July 18 change was wrong. 4480: Now, invalidate at the beginning any regs explicitly clobbered 4481: so they will not be substituted for if they appear as inputs. 4482: * sparc.md (movstrsi): Copy addresses to temp regs, then use them. 4483: 4484: * loop.c (record_giv): When comparing life spans for setting 4485: ->forces, use luids consistently, not uids. 4486: 4487: * sparc.md (ashlsi3, ashrsi3, lshrsi3): Truncate constants mod 32. 4488: 4489: Wed Aug 2 17:50:30 1989 Richard Stallman (rms at sugar-bombs) 4490: 4491: * mips.md (patterns to move a subreg): Deleted. 4492: 4493: Sun Jul 30 19:23:13 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4494: 4495: * gcc.c (process_command): Skip `-b' like `-B', in 2nd scan. 4496: 4497: * xm-sunos4.h: Deleted. 4498: * tm-sparc.h, tm-sun3.h: Define LINK_SPEC here instead. 4499: * tm-sun4os3.h: Undef it here. 4500: * tm-sun3os3.h, tm-sun3os3nf.h: New files to undef LINK_SPEC. 4501: * config.gcc: Use those new files where needed. 4502: 4503: * config.gcc: Delete sun3-fpa and sun3-os4-fpa. 4504: * tm-sun3-fpa.h: Deleted. 4505: 4506: * cccp.c (do_include): Mention even non-ex files for -M. 4507: 4508: * out-mips.c (addr_compensate): Handle HImode. 4509: * mips.md (Set HI from subreg of SI rule): 4510: Allow operand in memory. 4511: 4512: * mips.md (cmpqi, cmphi): Patterns deleted. 4513: (cmpsi, cmpsf, cmpdf): Change predicates to register_operand. 4514: 4515: * cexp.y (rule for ?:): Result is unsigned if either operand is. 4516: 4517: * expr.c (emit_push_insn): If PARTIAL > 0, load the partial regs 4518: at the end, in case the rest of the push does a function call. 4519: 4520: * reload1.c (alter_frame_pointer_addresses): 4521: After altering a PLUS, re-fetch CODE before scanning subexps. 4522: 4523: * stmt.c (assign_parms): Don't copy the arg pointer value 4524: if it is also the frame pointer. If we do copy it, 4525: inhibit REG_EQUIV notes for parms copied into pseudo regs 4526: 4527: * integrate.c (copy_for_inline, copy_rtx_and_substitute): 4528: Set up filename and lineno fields of copy of ASM_OPERANDS. 4529: 4530: Sat Jul 29 18:58:49 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4531: 4532: * integrate.c (expand_inline_function): Handle struct-value-addr 4533: passed in memory just like that passed in reg: 4534: in either case, translate the pseudo-reg made in 4535: expand_function_start. 4536: (function_cannot_inline_p): Permit inlining in that case. 4537: But reject it if using pcc-style return convention. 4538: 4539: * stor-layout.c (layout_type): Consider STRICT_ALIGNMENT 4540: for ARRAY_TYPE just as for RECORD_TYPE. 4541: 4542: Wed Jul 26 12:54:59 1989 Richard M. Stallman (rms at mipos3) 4543: 4544: * cse.c (fold_rtx): If WIDTH is zero for binary operator, 4545: look at the modes of the original operands. 4546: 4547: * cse.c (cse_insn): Set prev_insn_explicit_cc0, for (set (cc0) INT). 4548: (predecide_loop_entry): Likewise. 4549: (fold_rtx): Look at it, for (if_then_else (cc0) ...). 4550: 4551: * expr.c (expand_builtin): Pass back return value from 4552: __builtin_saveregs. 4553: 4554: * stmt.c (assign_parms): Allow arg pointer reg not to be fixed. 4555: If it is not, copy it to a pseudo reg and use that later on. 4556: 4557: Tue Jul 25 15:42:04 1989 Richard M. Stallman (rms at mipos3) 4558: 4559: * expr.c (expand_builtin): New builtin __builtin_classify_type. 4560: * tree.h, c-decl.c: Additional support. 4561: 4562: * flow.c (mark_used_regs): Treat arg pointer like stack pointer. 4563: 4564: * expr.c (emit_library_call): 4565: Pass (tree)0 as TYPE arg to FUNCTION_ARG, etc. 4566: 4567: Mon Jul 24 11:18:10 1989 Richard M. Stallman (rms at mipos3) 4568: 4569: * loop.c (regs_match_p): Fix braino. 4570: 4571: * integrate.c (copy_for_inline, copy_rtx_and_substitute): 4572: Make ASM_OPERANDS constraint vector be shared like operand vector. 4573: 4574: * xm-iris.h: New file. 4575: 4576: * Makefile (stage4): New target. 4577: 4578: * gnulib2.c (badd, bsub, bmul, bdiv): If want long value from 4579: arithmetic, widen the operands first. 4580: (__div_internal aka bdiv): Rename to __bdiv. 4581: 4582: * sparc.md (seq combination patterns): Fully initialize cc_status. 4583: 4584: * expr.c (emit_push_insn): Like July 19 change, for BLKmode. 4585: 4586: * stmt.c (expand_function_end): Stack-restore for alloca 4587: is now done after the return_label. 4588: 4589: * loop.c (scan_loop): Set MAYBE_NEVER for conditional jump to loopbeg. 4590: 4591: * integrate.c (copy_rtx_and_substitute): Allow mapping of hard regs. 4592: (expand_inline_function): Always create parm_map. 4593: Handle structure value that way if nec. even if no parms. 4594: Otherwise, find the pseudo used in the function to hold the 4595: structure address, and map it to a new pseudo. 4596: 4597: * expr.c (expand_call): 4598: Use mark_addressable to make FNDECL addressable. 4599: * c-typeck.c (mark_addressable): No longer static. 4600: 4601: * cse.c (cse_insn): Modify last change: don't canon_reg 4602: for hard regs inside clobbers. 4603: 4604: * expr.c (expand_assignment): ALIGN arg to store_field comes from 4605: the structure, not from the value stored. 4606: 4607: Fri Jul 21 16:23:45 1989 Richard M. Stallman (rms at mipos3) 4608: 4609: * stmt.c (warn_if_unused_value): Don't warn for a cast 4610: around a MODIFY_EXPR. 4611: 4612: * tm-hp9k320.h (PCC_STATIC_STRUCT_RETURN): Undefine it. 4613: (CPP_PREDEFINES): Add some. 4614: 4615: * combine.c (simplify_and_const_int): 4616: Simplify (and (ashiftrt (zero_extend FOO) N) M). 4617: 4618: * optabs.c (expand_binop): When widening, 4619: for some operations we need not actually extend. 4620: 4621: Thu Jul 20 16:16:35 1989 Richard M. Stallman (rms at mipos3) 4622: 4623: * Makefile (insn-emit.o): Depend on insn-codes.h. 4624: 4625: * stmt.c (check_for_full_enumeration_handling): 4626: Handle all cases for TYPE_NAME of enum type. 4627: 4628: Wed Jul 19 17:00:39 1989 Richard M. Stallman (rms at mipos3) 4629: 4630: * fold-const.c (fold_convert): Don't fail to force_fit_type. 4631: 4632: * expr.c (emit_push_insn): When pushing only part of scalar on stack, 4633: adjust stack offset not to count the words not pushed. 4634: 4635: * stmt.c (expand_function_end): Always put return structure address 4636: in return register. 4637: 4638: * c-typeck.c (process_init_constructor): Assume 0 for nameless field. 4639: 4640: * recog.c (general_operand, memory_operand): 4641: Check validity of mem address using the mode of the MEM. 4642: 4643: * fixincludes: When calling egrep, use redirect, not -s. 4644: 4645: Tue Jul 18 11:18:55 1989 Richard M. Stallman (rms at mipos3) 4646: 4647: * Makefile (bootstrap*): Pass value of libdir down. 4648: 4649: * cse.c (cse_insn): Do canon_reg on any CLOBBERs and USEs. 4650: 4651: * cse.c (cse_insn): Don't use no_labels_between_p to check 4652: for jump to following label; find following label and compare. 4653: 4654: * combine.c (try_combine): Don't substitute into subreg(x)=y 4655: if modes of x and y are not tieable. 4656: 4657: * out-i386.c (call_top_dead_p): Don't fail to check 4658: the rtx code of the insns themselves. 4659: 4660: * i386.md (tstsf, tstdf): Don't discard TOS if not dead. 4661: 4662: * stupid.c: Don't use regs with PRESERVE_DEATH_INFO_REGNO_P 4663: for pseudos which live across jumps or labels. 4664: (stupid_life_analysis): Update last_jump_suid, last_label_suid. 4665: (stupid_mark_refs): Use those to set reg_crosses_blocks. 4666: (stupid_find_reg): Check that data, passed from stupid_life_analysis. 4667: 4668: * toplev.c (main): Avoid using caddr_t. 4669: 4670: * mips.md (inverted bgeu peephole): Typo in opcode. 4671: 4672: Mon Jul 17 12:29:45 1989 Richard M. Stallman (rms at mipos3) 4673: 4674: * i386.md (mulb patterns): Turned off due to assembler bug. 4675: 4676: * rtl.c (read_name): Use 0, not NULL, for character. 4677: 4678: * alliant.md (movqi): Typos in mov opcodes. 4679: 4680: * tm-sparc.h, tm-spur.h (CONST_DOUBLE_OK_FOR_LETTER_P): 4681: Use CONST_DOUBLE_LOW, etc. 4682: 4683: * stmt.c (expand_function_end): Check value of EXIT_IGNORE_STACK, 4684: not just whether defined. 4685: 4686: * i386.md (seq, etc.): New patterns. 4687: * expr.c (do_store_flags): If result is wrong mode, 4688: ensure rest of bits are cleared. 4689: Before storing low part of TARGET, emit a CLOBBER for it. 4690: 4691: * i386.md (load address): Use an immediate add if possible. 4692: 4693: * i386.md (ashlsi3): Don't generate leal; shift is faster. 4694: 4695: * Now struct_value_rtx is 0 to treat it as a parm. 4696: * expr.c (expand_call): Implement that. 4697: * integrate.c (expand_inline_function): Don't freak out. 4698: * tm-apollo68.h (STRUCT_VALUE): Make it 0. 4699: 4700: * On 386, called function must pop the structure value address. 4701: * tm-i386.h (STRUCT_VALUE): Don't change this. 4702: Address is now pushed but not counted as a parm. 4703: * out-i386.c (function_epilogue): Use ret $4 to pop that address. 4704: * output.h: Declare the current_function_... variables. 4705: * final.c: Include output.h. 4706: 4707: * varasm.c (make_decl_rtl): Insert missing `else', validating reg decl. 4708: 4709: Fri Jul 14 14:12:17 1989 Richard M. Stallman (rms at mipos3) 4710: 4711: * out-sparc.c, out-spur.c (output_move_double): 4712: Fixed typo, addreg0 => addreg1. 4713: 4714: * c-decl.c (lang_decode_option): Handle -fshort-enums. 4715: (finish_enum): In that case, give enum minimum number of bytes. 4716: * toplev.c (main): Default flag_short_enums. 4717: * toplev.c, flags.h (flag_short_enums, flag_signed_char): 4718: Define those flags here, not in c-decl.c and c-tree.h. 4719: 4720: * i386.md (mulqi3, umulqi3): New patterns. 4721: 4722: * c-convert.c (convert_to_integer): Tighter restrictions on 4723: distributing truncation through max, min, and multiplication. 4724: If operands were extended from unsigned, make the operation 4725: unsigned. 4726: 4727: * cccp.c (main): Fix bug where #include <...>, when -I- was used, 4728: failed to search standard dirs and/or searched some dirs 4729: intended only for #include "...". 4730: 4731: * tm-mips.h (FUNCTION_PROLOGUE,FUNCTION_EPILOGUE): 4732: Increment push_loc after store or load, not before. 4733: 4734: Thu Jul 13 11:24:30 1989 Richard M. Stallman (rms at mipos3) 4735: 4736: * emit-rtl.c (add_insn_after): Don't update last_insn 4737: if insn is in a sequence. Instead, update end of sequence. 4738: 4739: * stmt.c (fixup_var_refs): Update end of stacked sequence. 4740: 4741: * stmt.c (expand_function_start): Set result rtl before assign_parms. 4742: 4743: * optabs.c (emit_unop_insn): Set PREV_INSN after preliminaries. 4744: 4745: * stmt.c (warn_if_unused_value): Do CONVERT_EXPR like NOP_EXPR. 4746: 4747: * stmt.c (expand_function_start): Make sure parm_birth_insn 4748: is a NOTE. 4749: 4750: * Makefile (clean): Delete tmp-insn-*. 4751: 4752: Wed Jul 12 14:24:12 1989 Richard M. Stallman (rms at mipos3) 4753: 4754: * i386.md (mulqi3): Restrict operand 2 to `q' reg. 4755: 4756: * reload1.c (choose_reload_regs): Check HARD_REGNO_MODE_OK 4757: for regs to be inherited. 4758: Also check HARD_REGNO_MODE_OK at end for modes of both 4759: reload_in and reload_out as well as reload_mode. 4760: 4761: * Makefile (maketest): Update for config subdir. 4762: 4763: Tue Jul 11 16:29:57 1989 Richard M. Stallman (rms at mipos3) 4764: 4765: * integrate.c (copy_decl_tree): Copy TREE_USED of each LET_STMT. 4766: 4767: * make-cc1.com: Changes by Angel Li. 4768: Define variables CC, CFLAGS, LDFLAGS, LIBS. 4769: Use LIBR library, not LIB. Specify a /INC in CFLAGS. 4770: Use MCR to run the gen* files. Add some comments. 4771: * make-cccp.com: Similar. 4772: * config-gcc.com: New file. 4773: 4774: * stmt.c (assign_parms): Compute parm alignment from passed type. 4775: 4776: * c-typeck.c (actualparameterlist): Instead of truncating 4777: and then promoting for PROMOTE_PROTOTYPES, go straight to int. 4778: 4779: * c-parse.y (setspecs): Save old current_declspecs on a stack. 4780: (decl, component_decl): Restore from that stack. 4781: 4782: Wed Jul 5 15:01:00 1989 Richard Stallman (tiemann at yahi) 4783: 4784: * tm-aix386.h, xm-aix386.h: New files. 4785: 4786: * loop.c (check_dbra_loop): Handle either test or compare 4787: for insn two before loop end; detect and reject anything else. 4788: 4789: * expr.c (expand_call, expand_builtin): If alloca is done, 4790: set current_function_calls_alloca. 4791: * stmt.c (expand_function_end): If so, generate code to save and 4792: restore the stack pointer, if not EXIT_IGNORE_STACK. 4793: 4794: * ns32k.md (movsi): Fixes for moving from fp or sp. 4795: 4796: * tm-mips.h (ASM_OUTPUT_ASCII): Start new .ascii every 256 chars. 4797: 4798: Tue Jul 4 11:01:00 1989 Richard Stallman (tiemann at yahi) 4799: 4800: * reload1.c (choose_reload_targets): Don't depend on 4801: reload_spill_index when cancelling invalid inheritance. 4802: Also, abort if trying to preserve death info 4803: on a spill reg used in operand addressing. 4804: 4805: * fold-const.c (fold): Don't fold "foo"[n] here. 4806: * expr.c (expand_expr): Do it here. 4807: Handle wide strings correctly. 4808: 4809: * i386.md (movsf,movdf): Disallow mem-mem moves. 4810: Enable mem-to-reg moves. 4811: 4812: * c-decl.c (finish_{struct,enum}): Warn if inside parm decls. 4813: (in_parm_level_p, declare_parm_level): Record when inside. 4814: * c-parse.y (parmlist, parmlist_or_identifiers): Call 4815: declare_parm_level. 4816: 4817: * c-decl.c (parmlist_tags_warning): Revise warning message text. 4818: 4819: * tm-hp9k320.h (ASM_SPEC): Pass -V switch to assembler. 4820: 4821: * tm-sun386.h (ASM_START_FILE): Truncate filename to 14 chars. 4822: 4823: * c-typeck.c (decl_constant_value): Use only literal values. 4824: 4825: Sat Jul 1 17:29:54 1989 Richard Stallman (tiemann at yahi) 4826: 4827: * integrate.c (copy_rtx_and_substitute): Don't make nested SUBREGs. 4828: 4829: * stmt.c (expand_function_start): Set new global 4830: current_function_returns_pointer. 4831: 4832: * stmt.c (get_frame_size): Return the size, not the offset. 4833: * integrate.c (expand_inline_function): When setting FP_DELTA, 4834: compensate for this change. 4835: * tm-alliant.h,tm-mips.h,tm-sparc.h,tm-tahoe.h 4836: (FUNCTION_PROLOGUE,FUNCTION_EPILOGUE): Compensate. 4837: 4838: * out-mips.c (function_arg): Return 0 for BLKmode. 4839: 4840: * tm-mips.h (FUNCTION_INCOMING_ARG): Delete; no register windows. 4841: * out-mips.c (function_inarg): Delete; no longer used. 4842: 4843: * mips.md (addsi3): Use register_operand for operands 0,1. 4844: (load address): New pattern, following movsi. 4845: (fix_trunc*): Use trunc insn, not cvt. 4846: (cmpfs + bgt peephole): Operands were backwards in template. 4847: 4848: * gcc.c (main): Record in explicit_link_files which input files go 4849: straight to linker. If linker is not run, complain about them. 4850: (execute): Increment execution_count, to show we were called. 4851: 4852: * gcc.c (validate_all_switches): Check ASM_SPEC, CC1_SPEC, etc., 4853: so we find all switches that could be valid. 4854: 4855: * varasm.c (output_constructor): Position fields according to 4856: DECL_OFFSET; don't try to compute alignment here. 4857: 4858: * tm-sparc.h (PCC_BITFIELD_TYPE_MATTERS): Define this. 4859: 4860: * reload1.c (emit_reload_insns): Fix stupid error in last change. 4861: 4862: * c-decl.c (duplicate_decls): If redeclaring builtin, give error is 4863: type mismatched; otherwise warn only if -W. 4864: 4865: * jump.c (jump_back_p): Verify that PREV is not null. 4866: 4867: Mon Jun 26 13:50:28 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4868: 4869: * reload1.c (choose_reload_regs): If number of reloads needing 4870: spill regs exceeds n_spills, don't inherit any reloads. 4871: 4872: * sdbout.c (sdbout_record_type_name): Dumb error in last change. 4873: 4874: * reload1.c (emit_reload_insns): Extend last change: don't use 4875: equiv reg if reg is in use at same stage of insn, either. 4876: 4877: Sun Jun 25 00:00:56 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4878: 4879: * reload1.c (emit_reload_insns): Don't use an equivalent register 4880: to reload from, if that register was used for reloading 4881: earlier in this insn. 4882: 4883: * sdbout.c (sdbout_record_type_name): Handle a TYPE_DECL as the 4884: type name. Get rid of TYPE_TAG_NAME as separate macro. 4885: 4886: * optabs.c (emit_cmp_insn): Args to memcmp are addresses, not blocks. 4887: 4888: * reload1.c (choose_reload_regs): Typo, clearing reload_override_in. 4889: 4890: * tm-i386.h: Add register classes SIREG and DIREG. 4891: (enum reg_class, REG_CLASS_NAMES): Define class names. 4892: (REGNO_REG_CLASS, REG_CLASS_CONTENTS): Define their contents. 4893: (REG_CLASS_FROM_LETTER): Define letters `S' and `D'. 4894: 4895: Sat Jun 24 00:17:16 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4896: 4897: * c-decl.c (keep_next_level): New function. 4898: (struct binding): New slot `keep' says make a LET_STMT for this level. 4899: (pushlevel, poplevel): Implement that. 4900: * c-parse.y (stmt exprs): Call keep_next_level. 4901: 4902: * sdbout.c (plain_type_1): Handle REFERENCE_TYPE, METHOD_TYPE. 4903: Correct for size less than 0. 4904: (plain_type): Correct for size less than 0. 4905: 4906: * global-alloc.c (mark_reg_set): For CLOBBERs, call mark_reg_clobber. 4907: 4908: * reload1.c (order_regs_for_reload): Among regs explicitly used, 4909: prefer those used less often. 4910: 4911: * reload1.c (choose_reload_regs): If we find alternate place 4912: to reload from, verify it after all reloads assigned. 4913: New variable reload_override_in used for this. 4914: 4915: * combine.c (record_dead_and_set_regs): Look inside SIGN_EXTEND and 4916: STRICT_LOW_PART for place being set. 4917: (subst): When using reg_last_set to find what a register contains, 4918: verify the entire register was set. 4919: 4920: * toplev.c (rest_of_decl_compilation): Report invalid register name. 4921: 4922: Fri Jun 23 13:19:41 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4923: 4924: * tm-hp9k3bsd.h: New file. 4925: * config.gcc: New target hp9k320-bsd. 4926: 4927: * gcc.c (record_temp_file): Don't add a name twice to one queue. 4928: 4929: * stmt.c (expand_expr_stmt): Call warn_if_unused_value. 4930: (warn_if_unused_value): Code extracted from expand_expr_stmt. 4931: Recurse to handle COMPOUND_EXPR. Don't warn about COND_EXPR. 4932: 4933: * tm-encore.h (DBX_REGISTER_NUMBER): Override tm-ns32k.h; 4934: return operand unchanged. 4935: 4936: * reload1.c (emit_reload_insns): Don't use recog_memoized 4937: on an asm. 4938: 4939: * jump.c (delete_insn): Update last_insn. 4940: * emit-rtl.c (set_last_insn): New function. 4941: 4942: * reload1.c (reload): Put a note at end of insn chain. 4943: 4944: * gcc.c: Put cpp output of .S file into a .s file. 4945: 4946: Thu Jun 22 22:14:35 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4947: 4948: * optabs.c (expand_binop, expand_unop): Emit queue before library call. 4949: It is done within emit_library_call, and cse screws up if there is a 4950: queued insn in the middle of a cse-able sequence. 4951: 4952: Wed Jun 21 11:57:22 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4953: 4954: * tm-mips.h (CPP_PREDEFINES): Define -Dunix. 4955: 4956: * reload.c (combine_reloads): Combined reload needed for entire insn. 4957: 4958: * c-parse.y (yylex): Braino checking for out-of-range escape seq. 4959: 4960: * stor-layout.c (layout_union): Handle PCC_BITFIELD_TYPE_MATTERS. 4961: (layout_struct): Don't let a bitfield cross the storage unit 4962: of its type, if PCC_BITFIELD_TYPE_MATTERS. 4963: 4964: Tue Jun 20 00:03:48 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 4965: 4966: * varasm.c (get_or_assign_label): Let CONSTANT_ALIGNMENT specify 4967: alignment of the constant. 4968: CONSTANT_ALIGNMENT is a new optional macro. 4969: 4970: * varasm.c (force_const_mem, get_or_assign_label): 4971: Make buffer bigger. 4972: 4973: * toplev.c (print_target_switch_defaults): New fn called for -version. 4974: 4975: * toplev.c (compile_file): Detect error closing output file. 4976: 4977: * stor-layout.c (fixup_unsigned_type): Don't shift by 32. 4978: 4979: * stmt.c (emit_case_nodes): Pass UNSIGNEDP along to emit_cmp_insn. 4980: 4981: * stmt.c (expand_end_case): If index is narrow and cannot be 4982: directly compared, widen it just once. 4983: 4984: * c-parse.y (yylex): Support multi-character constants. 4985: Thorough rewrite of char constant parsing. 4986: 4987: * c-decl.c (pushdecl): Replace local extern function decl with 4988: previous global decl if latter is inline, or builtin, or has 4989: more arg type info. 4990: 4991: * hard-params.c (xmalloc): Define it, for alloca.c. 4992: 4993: * tm-hp9k320.h (STANDARD_STARTFILE_PREFIX): Override -D in Makefile. 4994: 4995: * expmed.c (store_fixed_bit_field): Avoid shift by 32. 4996: 4997: * stmt.c (expand_function_start): Emit a NOTE_INSN_FUNCTION_BEG. 4998: * final.c (final_scan_insn): For SDB output, do the 4999: sdbout_begin_function at that note. 5000: 5001: * reload1.c (choose_reload_regs): If a reload reg inherits 5002: from a previous reload, verify safety after all reloads are assigned. 5003: 5004: * c-decl.c (build_enumerator): Remove no-op casts. 5005: 5006: * reload.c (find_reloads): If an earlyclobber operand matches 5007: an input operand it is constrained to match, that's not a problem. 5008: If an earlyclobber operand loses due to earlyclobber, its matching 5009: input operand also loses. 5010: 5011: * reload1.c (choose_reload_regs): Don't use result of find_equiv_reg 5012: if that reg is used for reloading in an earlier part of the insn. 5013: 5014: * cse.c (fold_rtx): If WIDTH is 0, don't try sign-extending ARG0, ARG1. 5015: 5016: * Makefile (hard-params*): Use $(OLDCC). 5017: 5018: * c-typeck.c (c_alignof): No warning for -pedantic. 5019: 5020: * c-parse.y (readescape): Don't have both error and warning 5021: on one hex escape. 5022: 5023: * c-parse.y (yylex): Treat vertical tab as white space. 5024: (skip_white_space): Likewise. 5025: 5026: * c-parse.y (datadef): If pedantic, warn for stray semicolon. 5027: 5028: * expr.c (expand_increment): Pass accurate unsignedp arg 5029: to expand_binary_op. 5030: 5031: Mon Jun 19 13:36:20 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5032: 5033: * config.gcc (news, news-gas): Use xm-m68k.h. 5034: 5035: * final.c (output_asm_label, output_addr_const): Make buf bigger. 5036: 5037: * cexp.y (main): Handle EOF on input. 5038: (lookup, warning): Provide as a dummy. 5039: (is_idchar, is_idstart): Declare as unsigned char. 5040: 5041: * cexp.y (parse_escape): Use TARGET_NEWLINE, etc., as values. 5042: Support hex escapes. Warn if octal or hex escape doesn't fit in char. 5043: 5044: * cexp.y (yylex): Sign-extend char constants if appropriate. 5045: 5046: * genemit.c: Make insn-emit.c include insn-flags.h. 5047: 5048: * gcc.c: Move record_temp_file past page which declares vflag. 5049: 5050: * integrate.c (expand_inline_function): If copying an insn with 5051: a REG_EQUIV note, make a similar note. 5052: 5053: * Allow reload regs to be reused for parts of an insn. 5054: * reload.c (find_reloads): Classify each reload for which part 5055: of the insn it is needed in. 5056: (find_reloads_address, etc.): Pass down the overall operand 5057: that this is part of, to record it on address reloads. 5058: (push_reload): Record that for each reload. 5059: * reload1.c (reload): Compute maximum needs of any part of the insn. 5060: (choose_reload_regs): Part of old choose_reload_targets. 5061: Hairier criteria for inheriting reloads and for which ones are 5062: available for the next insn to inherit. 5063: (emit_reload_insns): The rest of old choose_reload_targets. 5064: Emit reload insns in proper order according to where they are needed. 5065: * Record `reload_reg_in_use' separately for each part of the insn. 5066: (mark_reload_reg_in_use): New function. 5067: (reload_reg_free_p, reload_reg_free_before_p): New functions. 5068: (reload_reg_reaches_end_p): New function. 5069: 5070: * expr.c (expand_expr): Emit queue in X+=(Y?Z:A) optimization. 5071: 5072: * rtlanal.c (rtx_equal_p): Check vectors have same length. 5073: 5074: Sun Jun 18 12:16:14 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5075: 5076: * stmt.c (expand_expr_stmt): Maybe warn if top-level operator 5077: makes an unused result. 5078: 5079: * gcc.c (delete_temp_files, delete_failure_queue): 5080: If -v, report failures in unlink. 5081: 5082: * Makefile (includes): New target to run fixincludes. 5083: (install): Swap arms of if-statement. 5084: 5085: Sat Jun 17 12:41:53 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5086: 5087: * stor-layout.c (layout_union): Arg to error_with_decl was missing. 5088: 5089: * ns32k.md (movsf): Use CONST_DOUBLE_LOW to extract from CONST_DOUBLE. 5090: 5091: * loop.c (consec_sets_giv): Change type of force, force2. 5092: 5093: * combine.c (dump*): Declare arg as FILE*. 5094: 5095: * Makefile (clean): Delete hard-params. 5096: 5097: * flow.c (life_analysis): Use a special obstack for the temporary 5098: regsets. 5099: 5100: * m68k.md (clr pattern): On 68000, use moveq to clear data reg. 5101: 5102: * gvarargs.h: File varargs.h renamed. 5103: The old name conflicted with <varargs.h>, now that -I. is used. 5104: * tree.c, expr.c, emit-rtl.c: Change #include commands. 5105: * Makefile (install): Install gvarargs.h under name varargs.h. 5106: * gcc.c: Include gvarargs.h, not system's varargs.h. 5107: 5108: * Makefile: Use -I$(srcdir) before -I$(srcdir)/config. 5109: * config/tm.h: Deleted; didn't work if config was a symlink. 5110: 5111: * cse.c (cse_insn): Record location of inner_dest 5112: so it can be replaced properly if a new MEM rtx is made. 5113: 5114: Fri Jun 16 14:17:20 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5115: 5116: * make-cc1.com: Compile and link rtlanal.c. 5117: 5118: * c-typeck.c (build_array_ref): Call fold on the array ref. 5119: * fold-const.c (fold): Simplify array ref of string constant. 5120: 5121: * stmt.c (expand_asm_operands): Fix error message. 5122: 5123: * Makefile (gnulib2): Remove old members before compiling new. 5124: Fix stupid errors. 5125: * gnulib2.c (__cmpdi2, __ucmpdi2): Typos in names of interface unions. 5126: 5127: * genconfig.c (main): Don't write MAX_CLOBBERS_PER_INSN; obsolete. 5128: Add 3 to MAX_RECOG_OPERANDS. 5129: 5130: * cse.c (fold_cc0): Extra arg specifies machine mode. 5131: Callers changed. 5132: (cse_insn): Record original mode of each src for this purpose. 5133: 5134: Thu Jun 15 12:35:18 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5135: 5136: * gnulib2.c (_cmpdi2, _ucmpdi2): Moved here from gnulib.c. 5137: Use long long for argument type. 5138: 5139: * rtlanal.c (may_trap_p): Moved here from loop.c. 5140: Return 1 for division by explicit zero. 5141: 5142: * reload1.c (eliminate_frame_pointer, alter_frame_pointer_addresses): 5143: Rerecognize insns which are changed by this. 5144: 5145: * i386.md (call_value): Don't return prematurely. 5146: 5147: * alliant.md (movqi): Handle moving Aregs to mem and vice versa. 5148: (bftst -> btst): Restrict to bitpos less than 8 5149: so operand may be non-offsettable. 5150: (nop): New pattern. 5151: (return): Was disabled; now deleted. 5152: * tm-alliant.h (PRINT_OPERAND_PUNCT_VALID_P): Define it. 5153: * out-alliant.c (output_btst): Same change as in out-m68k.c 5154: 5155: * alliant.md, out-alliant.c: Offsetable -> offsettable. 5156: 5157: * c-parse.y (rule for stmt_exprs): Make the LET_STMT volatile. 5158: 5159: * c-decl.c (duplicate_decls): Don't save inline function data 5160: from previous definition if a new *definition* is seen. 5161: 5162: * integrate.c (access_parm_map): Handle subregs and constants. 5163: 5164: * stmt.c (expand_return): Don't crash if DECL_RTL (DECL_RESULT()) is 0. 5165: 5166: * tm-tahoe.h (LONGJMP_RESTORE_FROM_STACK): Define it. 5167: 5168: * tm-mips.h (CONSTANT_P): Deleted; duplicates rtl.h. 5169: 5170: Fri Jun 9 01:39:30 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5171: 5172: * Makefile (float.h): Avoid using $(MAKE). 5173: 5174: * Don't cram two things into STMT_BODY of a LET_STMT. 5175: * tree.h (struct bind_stmt): New field, subblocks. 5176: (STMT_SUBBLOCKS): New macro to access it. 5177: * print-tree.c (walk): Print new field. 5178: * tree.c (build_let_stmt): Store the old BODY arg into subblocks field. 5179: * c-parse.y (stmt expr rule): Put rtl expr alone into body field. 5180: * dbxout.c (dbxout_block): Recurse on subblocks, not body. 5181: * sdbout.c, symout.c: Likewise. 5182: * integrate.c (copy_decl_tree): Likewise. 5183: * stmt.c (setjmp_protect, uninitialized_vars_warning): Likewise. 5184: * expr.c (expand_expr): For LET_STMT, simply use its body. 5185: 5186: * machmode.def: Add sixth arg to each entry. 5187: * tree.h, rtl.h, rtl.c: Add arg to DEF_MACHMODE. 5188: * rtl.h (GET_WIDER_MODE): New macro; table in rtl.c. 5189: * expr.c (expand_expr): Use that for widening multiply. 5190: 5191: * stmt.c (fixup_var_refs_1): When converting MEM to QImode for 5192: bit field, adjust the address if possible to make bitpos 5193: less than 8. 5194: * m68k.md (bftst -> btst): Restrict to bitpos less than 8 5195: so operand may be non-offsettable. 5196: 5197: * cccp.c (do_line): Accept and pass on 3rd arg for enter or leave file. 5198: 5199: * out-m68k.c (output_btst): Handle COUNT bigger than size of unit. 5200: 5201: * cccp.c (CHECK_DEPTH): Macro to detect instack overflow. 5202: (finclude, macroexpand, expand_to_temp_buffer): Use that. 5203: 5204: * cccp.c (rescan): Don't check for disabled macro if traditional. 5205: (macroexpand): Don't disable macro if traditional. 5206: 5207: * sdbout.c (sdbout_one_type): Take out last change; assembler barfs. 5208: 5209: * c-parse.y (maybe_attribute): Eliminate #-syntaxes. 5210: Make ATTRIBUTE the name for __attribute. 5211: 5212: * c-parse.gperf: Add __attribute{,__} and __signed{,__}. 5213: * c-parse.y: Install results of that change. 5214: 5215: * Fix bug in sizeof ({...}). 5216: * c-decl.c (poplevel): Set TREE_USED. Return the LET_STMT. 5217: * c-parse.y (stmt-expr rule): Put the RTL_EXPR in the LET_STMT, 5218: clear its TREE_USED, and use it as the result. 5219: * expr.c (expand_expr): Allow LET_STMT as an expr. 5220: Set its TREE_USED and expand the TREE_VALUE of its body. 5221: * dbxout.c (dbxout_block): Ignore LET_STMT if TREE_USED not set. 5222: * sdbout.c, symout.c: Likewise. 5223: 5224: Thu Jun 8 00:06:36 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5225: 5226: * c-parse.y (yylex): Extend ERANGE-inhibitor for 0.0 5227: to 0.0e0 as well. 5228: 5229: * flow.c (life_analysis): Prevent allocation of regs live at setjmp 5230: on certain machines. Controlled by LONGJMP_RESTORE_FROM_STACK. 5231: Sets reg_live_length to -1. 5232: * local-alloc.c (block_alloc): Be prepared for that. 5233: * tm-vax.h (LONGJMP_RESTORE_FROM_STACK): Define it. 5234: 5235: * gnulib2.c (all interfaces): Declare args and values as long long, 5236: and split them using unions. 5237: 5238: * loop.c (check_dbra_loop): Don't reverse loop if there are two 5239: refs to varying addresses. Consider foo[i] = foo[i-1]. 5240: (count_nonfixed_refs): Subroutine to count them. 5241: 5242: * cexp.y: Distinguish signed and unsigned. 5243: An integer value is now represented by a struct. 5244: All rules for arithmetic changed. 5245: (yylex): Adapt to change in yylval data type. 5246: 5247: * limits.h (LONG_MIN): Make sure it's a signed long. 5248: 5249: * sdbout.c (sdbout_one_type): Output types of fields first, 5250: if they are structs. Don't go through pointers. 5251: (sdbout_field_types): Subroutine for that 5252: 5253: Wed Jun 7 13:00:44 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5254: 5255: * fixincludes: Switch to /usr/include before doing vuid_event.h. 5256: Use $2 as output directory for sed. 5257: 5258: * tm-i386.h (FUNCTION_PROFILER): Put counter address in %edx. 5259: * tm-i386v.h (LIB_SPEC): Use -L/usr/lib/libp if profiling. 5260: 5261: * expr.c (expand_increment): Typo testing for BImode component. 5262: 5263: * convex changes from csmith: 5264: * tm-convex.h: use EXTRA_SECTIONS to do .bss. 5265: out-convex.c: set_section, align_section are now unused. 5266: * convex.md: add pattern to pick an A-reg destination for sums 5267: whose source involves a dedicated A reg (frame or arg pointer) 5268: * convex.md: immediate and, or, xor instructions store a 32-bit 5269: result. Fix instructions that assumed it was 64. 5270: 5271: * mips.md (probe): New pattern to create stack space. 5272: 5273: * Makefile (float.h): Ignore errors from hard-params. 5274: Specify ./ to run it. 5275: 5276: Tue Jun 6 15:45:27 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5277: 5278: * out-tahoe.c: Rename `offsetable' to `offsettable'. 5279: 5280: * tahoe.md (nop): New pattern. 5281: 5282: * i386.md (umul...): Constrain operand 1 as `0', not `a'. 5283: `a' sometimes wanted two a-regs for operands 0 and 1. 5284: 5285: * cccp.c: Forward-declare some structs. 5286: 5287: * c-decl.c: Rearrange fcn fwd decls and struct decls. 5288: 5289: * expr.c: Move some fcn fwd decls after structs their args use. 5290: * genpeep.c, genextract.c: Likewise. 5291: 5292: * loop.c: Forward-declare some structs. 5293: 5294: * stmt.c: Move decls of structs before those of static functions. 5295: 5296: * loop.c (strength_reduce): Delete extra arg to check_eliminate_biv. 5297: 5298: * integrate.c (expand_inline_function): Supply missing arg 5299: to convert_to_mode. 5300: 5301: * gcc.c (handle_braces): Supply missing arg to do_spec_1. 5302: 5303: * explow.c (lookup_static_chain): Accept a context arg. 5304: 5305: * expmed.c (store_split_bit_field): Pass ALIGN arg 5306: to extract_fixed_bit_field. 5307: 5308: * expr.c (expand_assignment): Convert TYPE_ALIGN to bytes. 5309: (store_constructor, expand_expr): Likewise. 5310: 5311: * m68k.h: NO_ADDSUB_Q conditionals turn off all addq, subq insns. 5312: (Fully supported only with MOTOROLA and HPUX_ASM flags.) 5313: 5314: * jump.c (do_cross_jump): Don't die if LABEL is 0. 5315: 5316: * tm-mips.h (PRINT_OPERAND_PUNCT_VALID_P): New macro. 5317: * tm-iris.h: New file. Unsplit lines accidentally split. 5318: 5319: Mon Jun 5 15:39:30 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5320: 5321: * integrate.c (output_inline_function): Call init_function_start, 5322: not expand_function_start. 5323: * emit-rtl.c (restore_reg_data): No need to init reg_rtx_no. 5324: 5325: * stmt.c (init_function_start): Set current_function_returns_struct. 5326: 5327: * rtlanal.c (reg_set_between_p): New fn analogous to reg_used_between_p 5328: * loop.c (strength_reduce): Reject biv initial value which is altered 5329: subsequently before actual loop start. 5330: 5331: * rtlanal.c: New file split out from rtl.c. 5332: Has things not used in the gen files. 5333: 5334: * loop.c (strength_reduce): Reject biv initial value in a hard reg 5335: clobbered by an intervening function call. 5336: 5337: * tree.c (get_identifier): New flag needed to enable id-clash warnings. 5338: (start_identifier_warnings): Set that flag. 5339: * c-decl.c (init_decl_processing): Call that, after making built-ins. 5340: 5341: Sat Jun 3 14:41:34 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5342: 5343: * final.c (final_scan_insn): No basic block profiling at jump tables. 5344: 5345: * stmt.c (expand_decl): Probe the stack to make pages exist. 5346: * expr.c (expand_builtin): Likewise, for alloca. 5347: 5348: * move-if-change: Specify /bin/sh. 5349: 5350: * tm-ns32k.h (INDIRECTABLE_2_ADDRESS_P): Don't accept PLUS 5351: with constant operands but not inside CONST. 5352: 5353: * integrate.c (output_inline_function, save_for_inline): 5354: Save stack_slot_list, and restore it for actual output. 5355: * emit-rtl.c (gen_inline_header_rtx): New arg for this. 5356: 5357: * emit-rtl.c (restore_reg_data): Initialize reg_rtx_no. 5358: (restore_reg_data_1): Handle reg_rtx_no jumping past 5359: reg_pointer_flag_length. 5360: 5361: * reload1.c (alter_reg): Do nothing if regno_reg_rtx has 0. 5362: 5363: * integrate.c (copy_rtx_and_substitute): Typos for stack parm 5364: addresses in PLUS case. 5365: 5366: * genoutput.c (gen_insn, gen_peephole): Make output_n fns static. 5367: (output_prologue): Use new macro DEFAULT_MACHINE_INFO if defined. 5368: 5369: * tree.h (enum machine_mode): Define MAX_MACHINE_MODE as in rtl.h. 5370: 5371: Fri Jun 2 15:40:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5372: 5373: * cccp.c (do_include): A file included via a system header file 5374: counts as a system header file for -M. 5375: 5376: * gnulib2.c: Support boolean ops and shifts. 5377: 5378: * loop.c (emit_iv_inc): Use emit_iv_init_code. 5379: 5380: * rtl.h (CONST0_RTX): Don't try to cast abort. 5381: 5382: * tm-news.h (PRINT_OPERAND_ADDRESS): Fix typo `reg_name'. 5383: Delete two garbage lines. 5384: 5385: * loop.c (eliminate_biv): Use emit_iv_init_code to compute comparison 5386: value. If value is constant, recognize the insn, and if that fails, 5387: put the value in a register. 5388: 5389: Thu Jun 1 16:56:39 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5390: 5391: * print-tree.c (dump): Don't die if rtx components are null. 5392: 5393: * expmed.c (expand_mult_add): New fn to do A * X + B. 5394: (make_tree): New subroutine. 5395: * loop.c (emit_iv_init_code): Use that. Much simpler now. 5396: 5397: Tue May 30 17:20:40 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5398: 5399: * fold-const.c (fold): Use TREE_SET_CODE to store in tree codes. 5400: 5401: * tree.h (struct tree_common): Make `code' an unsigned int. 5402: (TREE_CODE, TREE_SET_CODE): Put in casts. 5403: 5404: * optabs.c (emit_cmp_insn): Supply all the args in recursive calls. 5405: 5406: * toplev.c (report_error_function): Fix typo; METHOD_TYPE missing. 5407: 5408: * fixincludes: Add code to make internal non-directory links. 5409: 5410: Mon May 29 21:36:28 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5411: 5412: * gcc.c (find_exec_file): Try both with and without machine_suffix. 5413: (find_file): Use machine_suffix here too. 5414: 5415: Sat May 27 00:02:26 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5416: 5417: * reload.c (decompose): OFFSET wasn't initialized. 5418: 5419: * cse.c (cse_main): Assign monotonic cuids. 5420: (make_regs_eqv, CHEAPER): Use cuids, not uids. 5421: (cse_end_of_basic_block): Return a cuid, not a uid. 5422: 5423: * expr.c (expand_builtin): For BUILTIN_SAVEREGS, range of regs 5424: moved included one extra previous insn. 5425: 5426: * emit-rtl.c (emit_line_note): Don't check -g here. 5427: (emit_note): For line number when no -g, increment cur_insn_uid anyway. 5428: * stmt.c (expand_start_case): Always output a NOTE_INSN_DELETED. 5429: 5430: * loop.c (loop_optimize): Don't count line-number NOTEs for luids. 5431: Prevents -g from affecting optimization decisions. 5432: 5433: Fri May 26 17:31:15 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5434: 5435: * local-alloc.c (block_alloc): Don't count notes in insn_number. 5436: Prevents -g from affecting order of allocation. 5437: 5438: Thu May 25 14:12:19 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5439: 5440: * local-alloc.c (block_alloc): Clear full length of regs_live_at. 5441: 5442: * ns32k.md (cmpsi): Make this the first cmp pattern. 5443: 5444: * jump.c (do_cross_jump): Skip NOTEs while checking for existing label. 5445: 5446: * cse.c (cse_insn): When no-oping a jump, decrement use count of label. 5447: (cse_basic_block): If label use count is 0, go past it. 5448: 5449: * integrate.c (access_parm_map): New fn, broken out of 5450: copy_rtx_and_substitute, handles case of mem ref to stack arg. 5451: (copy_rtx_and_substitute): Call it. 5452: Also use it for address of a stack arg. 5453: 5454: * gen*.c (fatal): Declare 1st arg as string. 5455: 5456: Wed May 24 00:13:36 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5457: 5458: * optabs.c (init_optabs): Handle movdi and movdf insns. 5459: 5460: * final.c (end_final): Realign locn ctr after outputting string. 5461: 5462: * tm-sparc.h (LINK_SPEC): Link bb_link.o before standard lib. 5463: 5464: * tm-sun386i.h (LINK_SPEC): Accept and ignore -sun386. 5465: 5466: * gcc.c (find_exec_file): Use machine_suffix. 5467: (process_command): Set that for -b option. 5468: 5469: * integrate.c (function_cannot_inline_p): No size limit 5470: for functions declared inline. 5471: 5472: * loop.c (skip_consec_insns): New fn, skip several insns or libcalls. 5473: (force_movables): New fn, part of scan_loop broken out. 5474: (ignore_some_movables): New fn, ignore a movable whose insn 5475: is within another movable's libcall. 5476: (scan_loop): Call those three. 5477: Don't handle m->consec for zero-extend movables, since always 0. 5478: 5479: Tue May 23 12:58:24 1989 Joe Weening (weening at gang-of-four.stanford.edu) 5480: 5481: * config/alliant.md: 5482: Removed operand classes 'x', 'y', 'G', 'H'. 5483: Added "%." to many opcodes to simplify comparison with m68k.md. 5484: Changed TARGET_68881 to TARGET_CE. 5485: Changed floating-point insns to better describe the Alliant CE. 5486: Most args to floating-point insns are now nonimmediate_operand. 5487: Removed special insns for pushing doublewords onto stack. 5488: Added non-CE versions of movsf and movdf to avoid using FP 5489: registers in this case. 5490: (float*i*f2): Don't allow immediate ops. 5491: (sne): Fix typo, fsne => fsneq. 5492: (call, call_value): Changed to always pop args from stack 5493: upon return; this gives better code than before and conforms 5494: to Alliant calling standard. 5495: Incorporated some recent changes to m68k.md. 5496: 5497: * config/out-alliant.c: 5498: (regno_reg_class): Removed FPA reg classes. 5499: (output_move_const_double): Function not needed, removed. 5500: 5501: * config/tm-alliant.h: 5502: Removed FPA registers and reg classes. 5503: Target flags: changed TARGET_68881 to TARGET_CE, removed 5504: TARGET_RTD, TARGET_REGPARM, TARGET_FPA. 5505: Removed TARGET_CE test in several places since we need to 5506: use FP regs even for non-CE programs. 5507: (TARGET_VERSION, CPP_SPEC): Define for Alliant. 5508: (CONDITIONAL_REGISTER_USAGE): Removed, not needed. 5509: (FRAME_POINTER_REQUIRED): Defined. 5510: (RETURN_POPS_ARGS): Defined. 5511: (FUNCTION_VALUE, LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): 5512: Use fp0 to return floating-point values. 5513: (FUNCTION_ARG): Remove TARGET_REGPARM code. 5514: (FUNCTION_ARG_PARTIAL_NREGS): Always 0. 5515: (FUNCTION_PROFILER): Define for Alliant. 5516: (FUNCTION_EPILOGUE): Remove use of rtd instruction. 5517: Renamed CC_IN_68881 to CC_IN_FP. 5518: (NOTICE_UPDATE_CC): Incorporate changes that were made 5519: in tm-m68k.h. 5520: 5521: * config/xm-alliant.h (LINK_SPEC): Pass -X to linker. 5522: 5523: Tue May 23 12:58:24 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5524: 5525: * sdbout.c: Don't include c-tree.h. 5526: 5527: * tree.c (build_index_type): Use sizetype for min and max values. 5528: Convert maxval rather than clobbering it. 5529: 5530: * tm-hp9k320.h: Finish unterminated comment. 5531: 5532: * sdbout.c (sdbout_parms): Use gen_fake_label for anonymous parm. 5533: 5534: Sun May 21 12:58:06 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5535: 5536: * stmt.c (aggregate_value_p): New fn says whether expression is a type 5537: that functions cannot return as a scalar. 5538: (assign_parms, expand_function_start): Use that. 5539: * expr.c (expand_call): Likewise. 5540: 5541: * gcc.c (delete_failure_queue): New subroutine. 5542: (delete_temp_files): No longer delete the failure queue. 5543: (main): Delete failure queue after each failing compilation. 5544: 5545: Sat May 20 13:16:23 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5546: 5547: * varasm.c (force_const_mem): New optional macro SELECT_RTX_SECTION. 5548: 5549: * mips.md: Change %u0 to %:. 5550: (movsi): Add constraint alternative accepting address arg. 5551: 5552: * fold-const.c (mul_double): Special case for 2nd arg 2, 4, 8. 5553: (combine): Special case shortcuts for plus, minus, mult, div. 5554: 5555: * stmt.c (expand_function_start): Simplify hairy statement for 3B1. 5556: * expr.c (expand_call): Likewise. 5557: 5558: * math-68881.h: New file. 5559: 5560: * m68k.md (movqi): Handle moving aregs to mem and vice versa. 5561: 5562: * dbxout.c (dbxout_type): Don't test use_gdb_dbx_extensions 5563: in cases that occur in C. 5564: 5565: * stmt.c (expand_function_{start,end}): Make DECL_RESULT's rtl 0 5566: when function returns no value. 5567: 5568: * tree.c (build_decl): Initialize DECL_PRINT_NAME, DECL_ASSEMBLER_NAME. 5569: 5570: * c-decl.c (store_parm_decls): Call init_function_start. 5571: 5572: Thu May 18 00:41:37 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5573: 5574: * stmt.c (expand_null_return_1): New arg USE_GOTO says jump to 5575: return_label even if could otherwise use a return insn. 5576: Make a return_label if we need one and don't have one already. 5577: If have parm cleanups, always jump to cleanup_label. 5578: (expand_null_return): Pass 1 for USE_GOTO if cleanups pending. 5579: (expand_return): Set LAST_INSN if have local cleanups or parm cleanups. 5580: Use that if jumping to tail-recursion label. 5581: Optimization for returning a comparison is safe for local cleanups 5582: but don't do it if there are parm cleanups. 5583: Calling expand_null_return_1, pass 1 for USE_GOTO if local cleanups. 5584: (this_contour_has_cleanups_p): New function. 5585: 5586: * stmt.c (init_function_start): New function, beginning of 5587: expand_function_start broken out. 5588: Use DECL_PRINT_NAME to get function's name. 5589: (expand_function_start): Now two args, function and PARMS_HAVE_CLEANUPS 5590: Compute RETURN_LABEL sooner; make one if parm cleanups. 5591: If parms have cleanups, put scalar return value in pseudo-reg. 5592: Don't mark that pseudo with REG_FUNCTION_VALUE_P. 5593: (expand_function_end): Simplify decisions about output of return_label 5594: and return insn. 5595: If DECL_RESULT is pseudo-reg, copy it to real return reg. 5596: 5597: * stmt.c (expand_function_end): Handle ordinary struct values 5598: like pcc, but only if unoptimized. 5599: (expand_function_start): Make a return_label for ordinary struct value. 5600: 5601: * stor-layout.c (layout_type): Handle METHOD_TYPE like FUNCTION_TYPE. 5602: (layout_decl): Allow TYPE_DECL. 5603: 5604: * stor-layout.c (layout_basetypes): Code for basetypes broken 5605: out of layout_record. Sets the type size tentatively. 5606: (layout_record): Start with that tentative size. 5607: Also, don't do anything with CONST_DECL members. 5608: 5609: * stor-layout.c (layout_union): Simpler error report for static memb. 5610: 5611: * reload1.c (eliminate_frame_pointer): Reduce PUSH_ROUNDING 5612: conditional to apply only to push instructions. 5613: 5614: * expr.c (expand_call): Fix stupid errors handling MAX_PARM_BOUNDARY. 5615: * stmt.c (assign_parms): Likewise. 5616: 5617: * toplev.c (announce_function, report_error_function): 5618: (error_with_decl, warning_with_decl): Use DECL_PRINT_NAME. 5619: 5620: * toplev.c (compile_file): Subtract integration_time from parse_time. 5621: 5622: * toplev.c (compile_file): Don't output read-only static variables 5623: at end of compilation if address was not used. 5624: 5625: * toplev.c (rest_of_compilation): Handle flag_syntax_only. 5626: 5627: * toplev.c (main): Handle -g0 and -G0 options. 5628: For -g and -G, set use_gdb_dbx_extensions. 5629: 5630: * toplev.c (main): Set `progname'. 5631: (pfatal_with_name, fatal_io_error, {error,warning}_with_file_and_line): 5632: (sorry): Print value of `progname', not "cc1". 5633: 5634: * tree.def: Delete FRIEND_DECL. Add PUSH_EXPR and POP_EXPR. 5635: 5636: * tree.c (simple_cst_equal): Handle INDIRECT_REF. 5637: 5638: * tree.c (lvalue_p): Handle METHOD_TYPE. Handle NEW_EXPR. 5639: 5640: * tree.c (copy_list): New function. 5641: 5642: * tree.h (struct tree_decl): New fields print_name and assembler_name. 5643: (DECL_PRINT_NAME, DECL_ASSEMBLER_NAME): New accessors. 5644: 5645: * c-decl.c (LONG_DOUBLE_TYPE_SIZE): New compilation parameter. 5646: 5647: Wed May 17 22:07:17 1989 Randall Smith (randy at apple-gunkies.ai.mit.edu) 5648: 5649: * dbranch.c (emit_delay_sequence): Reset insn code to -1 when 5650: turning insn into a sequence so that it won't think that it matches 5651: something in the md file. 5652: 5653: * dbranch.c (insn_eligible_p): Call refers_to_regno_p with a 5654: non-zero range. 5655: 5656: * dbranch.c (pnote): Modified to make sure instruction clobbered 5657: register is a set, rather than, say, a clobber. 5658: 5659: Wed May 17 14:01:20 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5660: 5661: * sdbout.c (sdbout_parms): Handle parm with no name. 5662: 5663: * loop.c (combine_movables): Test for overlap of zero-extend regs 5664: was screwed up. 5665: 5666: * c-typeck.c (c_sizeof{,_nowarn}): Convert from bytes to chars, 5667: since c defines sizeof (char) as 1. 5668: (pointer_int_sum, pointer_diff): Use c_sizeof{,_nowarn}. 5669: 5670: Tue May 16 16:27:32 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5671: 5672: * reload1.c (choose_reload_targets): Don't reuse regs 5673: mentioned in reload_reg_rtx. 5674: 5675: * tm-tahoe.h, tahoe.md, out-tahoe.c, xm-tahoe.h: New files. 5676: 5677: Mon May 15 16:25:12 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5678: 5679: * fixincludes: Exit with explicit status 0 at end. 5680: cd to /usr/include before cd to subtree root in case of relative link. 5681: Create dir $LIB earlier. 5682: When checking for a link, treat .. like an absolute target. 5683: 5684: * symout.c (symout_block_symbols): Give every local decl a typespec. 5685: * cexp.y (parse_number): 5686: * flow.c (life_analysis, dump_flow_info): 5687: 5688: * loop.c (consec_sets_invariant_p): Logic error accepted consec sets 5689: of which only one was invariant. 5690: 5691: * expr.c (expand_expr): Use no subtargets inside loops. 5692: * stmt.c (inside_loop): New function. 5693: 5694: Sun May 14 00:11:07 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5695: 5696: * tree.h: Declare long long types. 5697: 5698: * c-parse.y (combine_strings): Make string contents saveable. 5699: 5700: * tree.c (savealloc): New function. 5701: 5702: * m68k.md (movdi): % missing in fmove%.d. 5703: 5704: * c-parse.y (yylex): Detect overflow past 64-bits. 5705: Detect specially numbers not fitting in signed long long. 5706: 5707: Sat May 13 13:16:05 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5708: 5709: * reload1.c (alter_frame_pointer_addresses): Preserve volatility. 5710: 5711: * varasm.c (output_constructor): Die if BITS_PER_UNIT is too big 5712: for this function to work. 5713: 5714: * genpeep.c (match_rtx): For match_operator, match the operands, too. 5715: 5716: * varasm.c (output_constant): Use ASM_OUTPUT_DOUBLE_INT for DImode. 5717: 5718: * stor-layout.c (make_signed_type, make_unsigned_type): 5719: (fixup_unsigned_type): Use HOST_BITS_PER_INT. 5720: 5721: * stor-layout.c (layout_type): Use TFmode if appro. 5722: 5723: * optabs.c (emit_cmp_insn): Use mode sizes to check cmpstrqi, cmpstrhi. 5724: 5725: * c-typeck.c (get_floating_type): Compare MODE against modes of types. 5726: (signed_type, unsigned_type, signed_or_unsigned_type, type_for_size): 5727: Handle long long types. 5728: (digest_init): Don't assume width of `char' is BITS_PER_UNIT. 5729: 5730: * c-parse.y (yylex): For truncating chars, use width of `char' type. 5731: Allow `ll' in int constants and make long long. 5732: Also make long long if constant won't fit in an int. 5733: 5734: * c-decl.c (SHORT_TYPE_SIZE): Round up when dividing. 5735: 5736: Fri May 12 22:36:21 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5737: 5738: * real.h: Allow multiple inclusion. 5739: 5740: * tm-sun386i.h (DBX_REGISTER_NUMBER): Bizarre renumbering. 5741: 5742: Thu May 11 00:36:21 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5743: 5744: * fixincludes: Fix non-ansi declaration of sprintf in X11/Xmu.h 5745: 5746: * c-parse.y (stmt from expr): Do default conversion if useful 5747: for sake of ({...}). 5748: 5749: * sparc.md (andcc recognizer): Operand missing in subreg. 5750: 5751: Wed May 10 17:20:38 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5752: 5753: * rtl.c (read_name): Error if name is missing. 5754: (dump_and_abort): Don't print char args if -1. 5755: 5756: * i386.md (umulqihi3): Operand numbers were missing. 5757: 5758: * reload1.c (choose_reload_targets): Allow spill reg in find_equiv_reg 5759: if it's free and correct class. 5760: 5761: * cse.c (canon_hash): Handle empty strings. 5762: 5763: * cccp.c (macroexpand): Newline newline treated like real white space 5764: when stringifying. 5765: 5766: * Rename *offsetable* to *offsettable*. 5767: 5768: Tue May 9 22:54:58 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5769: 5770: * c-decl.c (finish_type): Layout any variants of the type. 5771: 5772: Tue May 9 12:30:28 1989 Randall Smith (randy at apple-gunkies.ai.mit.edu) 5773: 5774: * final.c (final_scan_insn, final): Added an argument to 5775: final_scan_insn to disallow peephole processing (to turn it off 5776: during delayed branch scheduling). 5777: 5778: * final.c (final_scan_insn): Made insn not matching any MD rtl a 5779: criteria for delayed branch case. Moved delayed branch case to just 5780: before real insn recognition to reduce the number of insns on which 5781: recog_memoized is called. 5782: 5783: Mon May 8 15:02:42 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5784: 5785: * fixincludes (LIB): Allow overriding. 5786: 5787: * cccp.c: Don't search /usr/include/CC by default. 5788: 5789: Mon May 8 13:09:21 1989 Randall Smith (randy at apple-gunkies.ai.mit.edu) 5790: 5791: * print-tree.c (dump): Fixed typo; IDENTIFIER ==> IDENTIFIER_NODE. 5792: 5793: Sun May 7 12:44:53 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5794: 5795: * print-tree.c (dump): TYPE_NAME may be IDENTIFIER or TYPE_DECL. 5796: 5797: Sat May 6 00:13:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5798: 5799: * tree.def: Define EXACT_DIV_EXPR, for when remainder known as 0. 5800: * fold-const.c (combine, fold, div_and_round_double): Handle new code. 5801: * expr.c (expand_expr): Likewise. 5802: * c-typeck.c (pointer_diff): Use EXACT_DIV_EXPR. 5803: 5804: * integrate.c (expand_inline_function): Use size of passed type 5805: for allocating stack slot with that type. 5806: 5807: * c-parse.y (maybe_attribute, attribute*): New syntax for Apollos. 5808: These tokens currently not generated. 5809: 5810: Fri May 5 18:43:01 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5811: 5812: * toplev.c [USG]: Undefine FLOAT for sake of sys/param.h on hpux. 5813: 5814: * optabs.c (expand_binop): If backtracking, don't delete insns made 5815: for -fforce-mem. 5816: 5817: Thu May 4 01:57:23 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5818: 5819: * reload.c (find_reloads): Don't compare an earlyclobber operand 5820: with itself. 5821: 5822: * reload.c (immune_p): Constants and stack slots don't overlap. 5823: 5824: * Put no-ops in front of loops and labels, 5825: to prevent confusion in the debugger. 5826: * c-parse.y (loops and labels): Call emit_nop. 5827: * stmt.c (emit_nop): New function--sometimes emit a no-op. 5828: * *.md (nop): New insn. 5829: 5830: * expr.c (expand_call): Typo in arg to FIRST_PARM_CALLER_OFFSET. 5831: 5832: Wed May 3 01:34:58 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5833: 5834: * loop.c (scan_loop): Scanning around end of loop 5835: should not set maybe_never. 5836: 5837: * Rename SELECT_VARIABLE_SECTION to SELECT_SECTION. 5838: * varasm.c (get_or_assign_label): Use SELECT_SECTION if defined. 5839: * varasm.c: Use EXTRA_SECTION_FUNCTIONS if defined (new macro). 5840: 5841: * mips.md: Change %u to %u0 to avoid error check. 5842: 5843: * tm-mips.h (TARGET_VERSNUM): Inc. to 1 08. 5844: (TARGET_VERSION): Change strings. 5845: (AL_DEBUG): Don't define it. 5846: (HARD_REGNO_MODE_OK): Add some casts to int. 5847: (STACK_ARGS_ADJUST): Name was misspelled. 5848: (PRINT_OPERAND_ADDRESS): Just abort for MEM, POST_INC, etc. 5849: (EXTRA_SECTIONS, SELECT_VARIABLE_SECTION, SELECTORS_EXTRA_SECTIONS, 5850: SELECT_VARIABLE_CONST_SECTION): New macros. 5851: (ASM_FILE_END): Change function name. 5852: * out-mips.c (function_arg_advance): Delete debugging printfs. 5853: (function_inarg, function_arg): Likewise. 5854: (compare_collect, compare_restore): Add some. 5855: 5856: * reload1.c (reload): Fix handling of caller_save_needed. 5857: 5858: * stmt.c (expand_function_start): Clear caller_save_needed. 5859: 5860: * stmt.c (emit_case_nodes): Some compiler has trouble with calling 5861: a function pointer. 5862: * gnulib.c: likewise. 5863: 5864: Tue May 2 15:32:25 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5865: 5866: * loop.c (combine_movables): For zero extend, 5867: do each from-mode separately. 5868: 5869: Mon May 1 00:18:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5870: 5871: * tm-apollo68.h: New file. 5872: 5873: * c-parse.y (is_reserved_word, hash): Add keywords `__asm__', etc. 5874: * c-parse.gperf: Corresponding changes. 5875: 5876: * c-parse.y (check_newline): Set main_input_filename before 5877: considering optional arguments. 5878: 5879: * final.c (final_scan_function): Return next insn to process. 5880: Usually that's the following insn; occasionally, previous compare. 5881: 5882: * c-decl.c (DOUBLE_TYPE_SIZE): Wrong value. 5883: 5884: * reload.c (decompose): Failed to return value. 5885: 5886: * Support local specified-register variables. 5887: * varasm.c (decode_reg_name): New function, cvt asmspec to regnum. 5888: (make_decl_rtl): Call that. 5889: * toplev.c (rest_of_decl_compilation): Handle local specified-register 5890: declarations. 5891: 5892: * i386.md (tstqi, trunc*qi): Constrain to `q' regs. 5893: 5894: * loop.c (scan_loop, move_movables): ->global for zero-extend register 5895: now means register is used outside range from where it is set 5896: to the following label. Non-global zero-extend regs 5897: may be entirely cleared. 5898: 5899: * loop.c (combine_movables): Loop that combines matching movables 5900: broken out from scan_loop. 5901: Now also combine non-global zero-extend registers with each other 5902: if their lifespans don't overlap. 5903: 5904: * c-typeck.c (build_unary_op, ADDR_EXPR of a COMPONENT_REF): 5905: Always convert to desired result type. 5906: 5907: Sun Apr 30 12:58:58 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5908: 5909: * c-decl.c (init_decl_processing): New macros parameterize int types. 5910: CHAR_TYPE_SIZE, SHORT_TYPE_SIZE, LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE, 5911: FLOAT_TYPE_SIZE, DOUBLE_TYPE_SIZE. 5912: 5913: * fixincludes: Use sed instead of ex. No problem with split lines. 5914: 5915: * print-tree.c (dump): Print type's name, if any. 5916: 5917: * c-parse.y: Use __inline, not plain inline. 5918: 5919: * toplev.c: New option -fdelayed-branch. 5920: (compile_file): Open and close dbranch dump file. 5921: Collect and print dbranch time. 5922: (rest_of_compilation): Optionally do dbranch scheduling, 5923: only if HAVE_DELAYED_BRANCH. 5924: (main): Handle -dd. 5925: 5926: * rtl.c (copy_rtx): Handle null pointers as code `e'. 5927: 5928: * final.c (dbr_sequence_length): New function. 5929: (final_scan_insn): Most of `final' broken out. 5930: Add support for SEQUENCE insns. 5931: last_ignored_compare and new_block now top-level static. 5932: 5933: * c-parse.y (MAX_WORD_LENGTH): Long enough for __volatile. 5934: 5935: Sat Apr 29 13:03:20 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5936: 5937: * c-parse.y (asm statements): Output line numbers. 5938: 5939: * loop.c (emit_iv_init_code, emit_iv_inc, eliminate_biv): Copy 5940: additive term rtx's to prevent sharing between insns. 5941: 5942: * c-parse.y (check_newline): Increment input_file_stack_tick. 5943: * toplev.c (report_error_function): Describe input stack only if 5944: changed. 5945: 5946: * c-decl.c (finish_struct): Reject zero width for named field. 5947: 5948: * tm-sun3.h (CC1_SPEC): Prevent error on `-sun3'. 5949: * tm-sparc.h (CC1_SPEC): Prevent error on `-sun4'. 5950: 5951: * Makefile (cleanconfig): cleanlinks renamed; also delete gnulib. 5952: (gnulib): Delete stamp-gnulib2 since gnulib2 should be redone after. 5953: 5954: Fri Apr 28 00:38:32 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5955: 5956: * config.gcc (genix): Correct xm file name. 5957: 5958: * tm-genix.h: Undefine ASM_SPEC inherited from tm-encore.h. 5959: 5960: * Makefile: Make float.h using hard-params. 5961: (clean): Delete float.h. 5962: 5963: * hard-params.c: New program. 5964: 5965: * varasm.c (assemble_variable): Use SELECT_VARIABLE_SECTION if defined. 5966: (in_section): Use EXTRA_SECTIONS if defined. 5967: 5968: * toplev.c (compile_file): Call ASM_FILE_END if defined. 5969: 5970: * gcc.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Let config override. 5971: 5972: * loop.c (emit_iv_init_code): Force A to a reg if it isn't. 5973: 5974: Thu Apr 27 12:51:14 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 5975: 5976: * tm-mips.h (ASM_START_FILES): Don't call print_options. 5977: Don't call the funny abort-functions. 5978: * out-mips.c: Delete funny debugging functions and aborts. 5979: (print_options): #if 0. 5980: (compare_restore): Test for COMPARE, not MINUS. 5981: (mips_section_get, mips_output_external, mips_asm_final): New fns. 5982: 5983: * input.h: New file with *input_filename, lineno and input_file_stack. 5984: Included in toplev.c and c-parse.y. 5985: * c-decl.c (finish_function): LINENO is now arg. 5986: * c-parse.y: Calls changed. 5987: 5988: * c-parse.y (check_newline): Handle `1' or `2' from cpp 5989: by pushing or popping input_file_stack. 5990: * toplev.c (compile_file): Push main input file on input_file_stack. 5991: (report_error_function): If in include file, print the chain 5992: of include-locations. 5993: 5994: * cccp.c (output_line_command): New arg says whether entering or 5995: leaving a file. Output `1' or `2' on #-line if so. Callers changed. 5996: 5997: * gnulib2.c: Little-endian fixes from [email protected]. 5998: 5999: * fixincludes: Wrong quoting in `echo' command. 6000: 6001: * tm-mips.h (REG_P): Duplicate defn deleted. 6002: (PRINT_OPERAND): `\' was missing. 6003: 1.1.1.15 root 6004: Wed Apr 26 02:44:59 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6005: 1.1.1.16 root 6006: * cccp.c (handle_directive): Preprocess even #pragma, but copy 6007: to output file afterward. 6008: (do_pragma): Use standard calling convention. 6009: (install_builtins, special_symbol): Define __INCLUDE_LEVEL__. 6010: 6011: * cccp.c (do_include): Don't forget to close file. 6012: 6013: * final.c (output_asm_insn): Use PRINT_OPERAND_PUNCT_VALID_P 6014: to validate punctuation after percent. 6015: * tm-m68k.h, tm-alliant.h, tm-ns32k.h, tm-vax.h, tm-i386.h: 6016: Define PRINT_OPERAND_PUNCT_VALID_P. 6017: 1.1.1.15 root 6018: * Version 1.35 released. 6019: 6020: * c-decl.c (grokdeclarator): Use INT_CST_LT only on int constants. 6021: 6022: Tue Apr 25 15:47:11 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6023: 6024: * reload.c (find_reloads_address_1): Always return a value. 6025: 6026: * flow.c (mark_set_1): Look inside zero_extract, sign_extract. 6027: 6028: * expr.c (emit_library_call) [STACK_ARGS_ADJUST]: 6029: Fix typo for `struct args_size'. 6030: 6031: Mon Apr 24 00:12:18 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6032: 6033: * flow.c (mark_set_1): Look inside strict_low_part. 6034: 6035: * c-typeck.c (decl_constant_value): Don't use var's init if volatile. 6036: 6037: * print-tree.c (dump): Don't call walk on rtx's. 6038: 6039: * integrate.c (expand_inline_function): Convert expanded arg from 6040: passed mode to nominal mode. 6041: 6042: Sun Apr 23 13:14:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6043: 6044: * fixincludes: fix _IO macros if split across two lines. 6045: Fix typo: EOF was indented. 6046: 6047: * gnulib2.c: New file with DImode library routines. 6048: * Makefile (gnulib2): Put them into gnulib. 6049: Must be explicitly requested. 6050: 6051: Fri Apr 21 13:45:45 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6052: 6053: * cccp.c (main): Don't turn on trigraphs for -Wtrigraphs or -Wall; 6054: use -trigraphs for that. 6055: 6056: * cccp.c (main): Use -trigraphs to enable trigraphs. 6057: * gcc.c: Pass -trigraphs to cpp; don't pass -T. 6058: 6059: * Makefile: Variable srcdir relates location of sources 6060: to current directory. Default is `.'. 6061: 6062: * integrate.c (expand_inline_function): When copying expanded arg, 6063: use mode it's passed in, not arg's nominal mode. 6064: 6065: * dbxout.c (dbxout_block): Print generated name with assemble_name. 6066: 6067: Thu Apr 20 12:36:09 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6068: 6069: * stdarg.h: check __sparc__ instead of sparc. 6070: 6071: Tue Apr 18 18:58:03 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6072: 6073: * tm-next.h (STARTFILE_SPEC): Define it. 6074: 6075: Mon Apr 17 19:56:05 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6076: 6077: * dbxout.c (dbxout_block): Use ASM_GENERATE_INTERNAL_LABEL to format 6078: the labels LBB... and LBE... 6079: 6080: Sun Apr 16 23:57:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6081: 6082: * mips.md: Change MINUS to COMPARE where appropriate. 6083: 6084: Sat Apr 15 16:11:49 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6085: 6086: * c-decl.c (finish_struct, redeclaration_error_message): 6087: Rename variables named OLD and NEW. 6088: 6089: * sparc.md (cse'd mult pattern): Handle memory operands. 6090: Optimize small integer operands. 6091: 6092: * stmt.c (expand_decl): On sparc, ensure dynamic arrays of doubles 6093: are properly aligned, despite unaligned STACK_POINTER_OFFSET. 6094: 6095: Fri Apr 14 10:59:56 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6096: 6097: * expr.c (expand_call): Bugs treating struct value address as param: 6098: do so only if it's supposed to be pushed; 6099: decode value of FUNCTION_ARG properly. 6100: 6101: * tm-altos3068.h (CPP_SPEC): Some braces were dropped. 6102: 6103: * gcc.c (pexecute): Print message when exec fails. 6104: (perror_exec): New fn. 6105: (perror_with_name,pfatal_with_name): Change message syntax. 6106: 6107: * tm-hp9k320.h (ASM_IDENTIFY_GCC): Define as no-op. 6108: 6109: Wed Apr 12 00:20:31 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6110: 6111: * cse.c (cse_insn): Can record constant value being stored in 6112: a bit field, if we can tell that truncation won't change it. 6113: 6114: * m68k.md (bfset, bfclr, bfchg insns): Do CC_STATUS_INIT 6115: since the cc's are set from the old contents. 6116: 6117: * gcc.c (compilers): Running `as', put -o option before input file. 6118: 6119: * gcc.c: Delete output file only if that file's compilation fails. 6120: * gcc.c (record_temp_file): Changed args: always_delete, fail_delete. 6121: (store_arg): Likewise. Callers changed. 6122: (clear_failure_queue): Called after each compilation. 6123: 6124: Tue Apr 11 01:18:53 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6125: 6126: * combine.c (subst): (SET (ZERO_EXTRACT) (OR (ZERO_EXTRACT) const)) 6127: optimization was sometimes invalid. 6128: 6129: * tm-m68k.h (NOTICE_UPDATE_CC): A doubleword move that requires 2 insns 6130: does not set the cc's usefully. 6131: 6132: * Makefile (cleanlinks): Just do `clean', not `realclean'. 6133: (realclean): Delete config links also. 6134: 6135: * expr.c (expand_call): Handle case where return value is in memory 6136: but TARGET is a register. 6137: 6138: * c-typeck.c (build_binary_op_nodefault): New arg ERROR_CODE 6139: is passed to binary_op_error instead of CODE. 6140: All callers changed. 6141: (binary_op_error): CODE = NOP_EXPR is new special case. 6142: (truthvalue_conversion): Call build_binary_op_nodefault directly 6143: and specify NOP_EXPR for the error code. 6144: 6145: * c-decl.c (xref_tag): If pedantic, warn on fwd ref to enum. 6146: 6147: Mon Apr 10 19:44:48 1989 Chris Smith (csmith at mozart) 6148: 6149: * tm-convex.h (PCC_BITFIELD_TYPE_MATTERS): It doesn't, 6150: but set it anyway. It makes for better code on this 6151: word machine. 6152: 6153: * convex.md (one_compl*): add not:QI and not:HI, which 6154: do get used after all. 6155: 6156: * tm-convex.h (A_REG_P, S_REG_P): define new macros 6157: convex.md: use them 6158: 6159: * convex.md (addsi3): tidy up constraints. 6160: 6161: * tm-convex.h (REG_OK_FOR_INDEX_P): stack pointer is not ok. 6162: 6163: * convex.md: add a pattern to push REG+CONST so we can 6164: prefer an A reg. 6165: 6166: * tm-convex.h (tstqi): should sign extend, not zero extend. 6167: 6168: * expr.c (convert_move): Extending narrow to DI via SI, 6169: operand of extendsidi2 was wrong. 6170: 6171: * emit-rtl.c (gen_lowpart): Handle CONST_DOUBLE. 6172: 6173: Mon Apr 10 05:19:39 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6174: 6175: * recog.c (nonmemory_operand): Test constant operands 6176: as general_operand does. 6177: 6178: * tm-m68k.h (PRINT_OPERAND): Limit effect of code `d' 6179: to constant addresses. 6180: 6181: * loop.c (can_eliminate_biv_p, eliminate_biv): Don't rely on givs with 6182: nonconstant coefficients, since the coeffs could be zero. 6183: 6184: * loop.c (can_eliminate_biv_p): Check each giv for ! ignore 6185: before assuming it can be used. 6186: (check_eliminate_biv): New fn, a piece of strength_reduce broken out. 6187: 6188: * cccp.c (error_from_errno): New fn, like error and perror_with_name. 6189: (do_include): Call that if open fails. 6190: (finclude): Print I/O error msg before closing desc. 6191: 6192: * c-decl.c (shadow_tag): If more than one tag or structure, 6193: or anything other than a tag, warning. 6194: 6195: * c-parse.y (components): Just warn if memb decl has no member, 6196: and only if pedantic. 6197: 6198: * loop.c (strength_reduce): Print uids, not luids, for dump. 6199: (record_giv): giv_count field counts only DEST_REG givs. 6200: (check_dbra_loop): src_two_before_end was set wrong. 6201: 6202: * loop.c (record_giv): New arg LOOP_END; all callers changed. 6203: Don't mark giv replaceable if used past LOOP_END. 6204: (find_mem_givs): New arg LOOP_END; all callers changed. 6205: 6206: * out-i386.c (FP_CALL): Make this a `return' stmt. 6207: 6208: Fri Apr 7 11:56:58 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6209: 6210: * expr.c (expand_expr, case ..._DECL): Preserve mode thru 6211: calling change_address. 6212: 6213: * expr.c (emit_library_call): Typo: ARGNUM => COUNT. 6214: 6215: * expr.c (preexpand_calls, expand_call): Take note of RETURN_IN_MEMORY. 6216: * stmt.c (assign_parms): Likewise. 6217: * integrate.c (function_cannot_inline_p): Likewise. 6218: 6219: * STACK_ARGS_ADJUST: Arg is now a `struct arg_data' and it should 6220: be updated in place. 6221: * tm-mips.h: Define it. 6222: * expr.c (expand_call): Adapt to this. Assume padding comes after args 6223: so turn off the feature of changing the args' offsets. 6224: (emit_library_call): Adapt to this. 6225: 6226: * tm-mips.h (PRINT_OPERAND): Use CONST_DOUBLE_{LOW,HIGH}. 6227: Truncate SFmode constants to single precision. 6228: 6229: * c-typeck.c (mark_addressable): Fix test for local vs global reg var. 6230: 6231: * config.gcc: Change `:-' to `-' in var refs. 6232: Shell on convex doesn't handle `:-'. 6233: 6234: Thu Apr 6 00:09:01 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6235: 6236: * integrate.c (expand_inline_function): Compare actual's mode 6237: against formal's DECL_ARG_TYPE's mode, not TREE_TYPE's mode. 6238: 6239: * c-decl.c (implicitly_declare): Make the decl permanent if 6240: in global binding level. (Can happen for certain invalid input.) 6241: 6242: * c-typeck.c (build_modify_expr): Block path that made a MODIFY_EXPR 6243: containing an ERROR_MARK. 6244: 6245: * config/tm.h: New file. 6246: 6247: * loop.c (only_reg_use_p): Fix bugs in recursion, add some fast 6248: special cases. Comment on return value was backwards. 6249: (strength_reduce): Negate the value of only_reg_use_p. 6250: 6251: * genoutput.c (output_prologue): Output `#include hard-reg-set.h'. 6252: * Makefile: insn-output.o depends on that. 6253: 6254: * toplev.c (main): Typo recognizing -Wswitch. 6255: 6256: * config.gcc (mips): New alternative. 6257: * tm-mips.h, out-mips.c, mips.md, va-mips.h: New files. 6258: * varargs.h: Include va-mips.h if on mips. 6259: 6260: Wed Apr 5 16:58:04 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6261: 6262: * c-decl.c (duplicate_decls): Rename OLD, NEW to OLDDECL, NEWDECL. 6263: 6264: * stmt.c (expand_function_start): Ref subr instead of 6265: current_function_decl; should make no difference. 6266: 6267: * stmt.c (assign_parms): Do extra padding for some parms, 6268: controlled by MAX_PARM_BOUNDARY. 6269: * expr.c (expand_call): Same thing for caller side. 6270: Note this is implemented only for machines that lack push insns. 6271: Also, in both cases, it doesn't handle variable-size args. 6272: 6273: Tue Apr 4 12:22:06 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6274: 6275: * gcc.c (find_file): Try STANDARD_EXEC_PREFIX for startfiles too. 6276: 6277: * varasm.c (make_decl_rtl): Delete never-executed clause. 6278: 6279: * spur.md (movqi, loadhi, extend*, zero_extendhisi): 6280: Make subregs with C code, not RTL patterns, so we can 6281: avoid generating subreg of subreg. 6282: 6283: * optabs.c (emit_cmp_insn): Not all clauses always succeed, 6284: so stop using `else' structure. 6285: 6286: * stmt.c (expand_return): Avoid moving void to void, in cleanups case. 6287: 6288: Mon Apr 3 18:04:33 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6289: 6290: * m68k.md (cmphi): Don't allow a-reg vs a-reg, since that sign-extends. 6291: If there is one a-reg, make sure it is not last. 6292: 6293: Sun Apr 2 13:02:26 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6294: 6295: * stor-layout.c (agg_mode): Use highest mode that has desired size. 6296: Allow all integer modes, but reject sizes > MAX_FIXED_MODE_SIZE. 6297: (That defaults to the size of DImode.) 6298: 6299: * machmode.def: Add PSI, PDI and XF, CXF modes. 6300: 6301: Sat Apr 1 00:50:11 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6302: 6303: * ns32k.md (ashd, lshd): Delete patterns that logand the count with 31. 6304: The shift count is not truncated on this machine. 6305: 6306: * combine.c (subst): Simplify nested or's, nested xor's. 6307: (try_distrib): XOR doesn't distribute through anything. 6308: 6309: * rtl.c (rtx_equal_p): Don't die on null pointers. 6310: 6311: * loop.c (eliminate_biv): Use COMPARE, not MINUS, in generated compare. 6312: 6313: * loop.c (invariant_p): Mem refs in constant pool are invariant. 6314: 6315: * c-decl.c (redeclaration_error_message): If -traditional, allow 6316: redeclarations of typedef provided they agree. 6317: 6318: * c-decl.c (start_decl): Do expand_decl on the decl that pushdecl 6319: returns. If there was a prev. decl with a different type, 6320: we have changed its type and cleared its old rtl, so it need new rtl. 6321: 6322: Sat Apr 1 00:50:11 1989 Matthew Self (rms at sugar-bombs.ai.mit.edu) 6323: 6324: * expr.c (convert_move): Modified to use mode classes 6325: instead of refering to specific machine modes. 6326: 6327: * expr.c (do_jump): Converted to use CONST0_RTX macro. 6328: do_jmp no longer refers to any machine modes directly except 6329: for VOIDmode! 6330: 6331: * expr.c (compare, compare1): Modified to use CONST0_RTX 6332: macro. No longer refers to any machine modes directly 6333: except VOIDmode and BLKmode! 6334: 6335: * machmode.def: Documented assumptions made about the order 6336: of machine modes during mode widening. 6337: 6338: * optabs.c (expand_binop, expand_twoval_binop, expand_unop, 6339: emit_cmp_insn): Added mode widening which is independent of 6340: specific machine modes. It assumes that we may widen to any 6341: higher numbered mode of the same mode class. 6342: NOTE: the checks for VOIDmode ops which were present in 6343: QI and HI to SI widening are now present in all widening. 6344: I assume this is correct. Also, widening is now possible 6345: from QI to HI. This may or may not be a good thing.... 6346: 6347: * rtl.h (CONST0_RTX): Added definition of new macro 6348: CONST0_RTX (mode). 6349: 6350: * rtl.h (GET_NOTE_INSN_NAME, GET_REG_NOTE_NAME): New macros. 6351: * rtl.c (note_insn_name, reg_note_name): New tables. 6352: * rtl.def (NOTE): Change last field from `i' to `n'. 6353: * rtl.c (print_rtx): Print mode of INSN_LIST or EXPR_LIST as reg-note. 6354: Print operand code `n' as name of kind of note. 6355: (read_rtx): treat `n' like `i'. 6356: 6357: * loop.c (struct induction): Add `mode' field. 6358: (strength_reduce, record_giv): Set the `mode' field in V. 6359: (can_eliminate_biv_p, eliminate_biv): Use that field. 6360: 6361: * loop.c (struct iv_class): `init_insn' records what inits the biv. 6362: Replaces `init_val_set' flag. 6363: (strength_reduce): Update and test `init_insn' instead. 6364: Use of a biv between its init and the start of the loop 6365: does not preclude its elimination from the loop. 6366: Setting a giv is ok for eliminating a biv, even if giv is "ignore", 6367: since that just means giv will be combined with another. 6368: Handle some DEST_ADDR givs for that purpose. 6369: Test for giv-setting before check can_eliminate_biv_p. 6370: New error check for replaceable giv whose value needed after loop. 6371: (only_reg_use_p): New fn. 6372: 6373: * expr.c (expand_expr): PLUS, MINUS with EXPAND_SUM: 6374: Associate even harder. 6375: 6376: * loop.c (strength_reduce): Treat all constant biv init vals like ints. 6377: 6378: * loop.c (strength_reduce): Clear all_reduced when v->ignore is set; 6379: the code to check this later didn't always do the job. 6380: 6381: * loop.c (verify_loop): Set loop_continue. 6382: (scan_loop): mention its value. 6383: * rtl.h: Define NOTE_INSN_LOOP_CONT. 6384: * stmt.c (expand_loop_continue_here): Output one. 6385: 6386: Fri Mar 31 10:08:29 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6387: 6388: * c-typeck.c (pointer_int_sum, pointer_diff): Treat const void * like 6389: void *. 6390: 6391: * rtl.c (rtx_addr_varies_p): Don't die on null exp. 6392: * cse.c (refers_to_mem_p, refers_to_p): Likewise. 6393: 6394: * gcc.c (validate_switches, validate_all_switches): New fns. 6395: Mark a switch as valid if any compiler spec or the linker spec 6396: matches it, even for languages not being used. 6397: 6398: Thu Mar 30 00:22:14 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6399: 6400: * loop.c (loop_optimize, move_movables): when moving a `clr' insn used 6401: in zero-extension, sometimes change it to an `and' so that the 6402: significant low bits are not clobbered. 6403: 6404: * cccp.c: Implement __BASE_FILE__ and #once. 6405: (savestring): New fn. 6406: (struct file_name_list): new name for struct directory_stack. 6407: (enum node_type): Add T_ONCE, T_BASE_FILE. 6408: (directive_table): Add #pragma once. 6409: (initialize_builtins): Add __BASE_FILE__. 6410: (special_symbol): Handle __BASE_FILE__, together with __FILE__. 6411: (do_include): Ignore the file if it's on the #pragma once list. 6412: (do_once): New fn; add current file to #pragma once list. 6413: 6414: * cccp.c (do_include): Don't add non-ex files to list of deps. 6415: 6416: * config.gcc: Use {...:-...}, not {...=...}. 6417: 6418: * c-parse.y: Add precedence for IF/ELSE, and for parens; 6419: avoids some conflicts. 6420: 6421: * tm-newsgas.h: Include tm-news.h and define USE_GAS. 6422: 6423: * tm-news.h: New name for tm-news800.h. 6424: If not USE_GAS, define SONY_ASM. 6425: Don't define USE_GAS by default. 6426: (CPP_PREDEFINES): Various alternatives depending on processor type. 6427: (ASM_FORMAT_PRIVATE_NAME): Override this. 6428: (ASM_IDENTIFY_GCC): Override; output nothing. 6429: (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Round fsize up to % 4. 6430: Max for halfword link insn is 32k, not 64k. 6431: (FUNCTION_EPILOGUE): Don't output move.l if no regs to restore. 6432: (PRINT_OPERAND_ADDRESS): Change handling of tableref pc-rel addresses. 6433: * m68k.md (movhi): Add SONY_ASM conditional. 6434: 6435: * cse.c (cse_insn): If replacing a dest address, preserve MEM_IN_STRUCT 6436: 6437: * gcc.c (error, fatal): alternate varargs defns if HAVE_VPRINTF. 6438: 6439: Wed Mar 29 09:54:13 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6440: 6441: * gcc.c (process_command): Check WORD_SWITCH_TAKES_ARG, so that 6442: -Tdata can be handled right. 6443: 6444: * stmt.c (check_for_full_enumeration_handling): new fn, for warn_switch 6445: (expand_end_case): Call it, if orig index was enum. 6446: * toplev.c (main): Handle -Wswitch. 6447: * c-parse.y (SWITCH stmt): Pass orig switch expr to expand_end_case. 6448: 6449: * tm-*.h, out-*.c: Uniformly use reg_names, not reg_name, and don't 6450: define any duplicates. 6451: * final.c: Delete reg_name. 6452: 6453: * c-parse.y (is_reserved_word): Add keywords __asm and __inline; 6454: also __const and __volatile. 6455: (yylex): Keywords that start with `__' are recognized regardless of 6456: -traditional or -ansi. 6457: 6458: * c-parse.y (check_newline): Always recognize #ident. 6459: Macro IDENT_DIRECTIVE is no more. 6460: If ASM_OUTPUT_IDENT is undefined, don't output anything for #ident. 6461: * tm-3b1.h: Don't define IDENT_DIRECTIVE or ASM_OUTPUT_IDENT. 6462: * tm-encore.h, tm-i386gas.h, tm-i368v.h, tm-sun386i.h, tm-vaxv.h: 6463: Don't define IDENT_DIRECTIVE; define ASM_OUTPUT_IDENT to output in 6464: default way. 6465: 6466: * expr.h (RETURN_IN_MEMORY): New macro, default defn here. 6467: * expr.c (expand_call): Use it to control where to return value. 6468: * stmt.c (expand_function_start): Likewise. 6469: 6470: * out-sparc.c (find_addr_reg): Abort if none found. 6471: Eliminate confusion; do only one change between tests for PLUSness. 6472: (output_move_double): Arg to find_addr_reg is address, not mem ref. 6473: * out-m68k.c, out-spur.c, out-i386.c, out-alliant.c: Likewise. 6474: 6475: * jump.c (find_cross_jump): Don't let either E1 or E2 be included 6476: in the range of matching insns preceding the other (E2 or E1). 6477: 6478: * c-parse.y (check_newline): No error for `#pragma\n'. 6479: 6480: * Makefile (gcc.o): Control STANDARD_STARTFILE_PREFIX here. 6481: 6482: * stmt.c (walk_fixup_memory_subreg): handle null. 6483: 6484: * tm-sparc.h (FUNCTION_BLOCK_PROFILER): Change LPBnn to LPYnn, 6485: to avoid conflict with final.c. 6486: 6487: Tue Mar 28 15:23:17 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6488: 6489: * cccp.c (do_include): If fail, print system error message. 6490: (perror_with_name): Use more standard error format. Inc. `errors'. 6491: 6492: * dbxout.c (dbxout_function): Output any temporary types 6493: that were made by dbxout itself. 6494: 6495: * stmt.c: always use an epilogue if pcc-struct-return. 6496: (expand_function_start): Compute return_label after testing that. 6497: (expand_function_end): Output a return insn after pcc-struct-return 6498: processing, if there is a return insn. 6499: (expand_null_return): Don't output a return insn, in that case. 6500: Simplify the conditions--depends entirely on HAVE_return. 6501: 6502: * tm-m68k.h (FUNCTION_BLOCK_PROFILER): Use jsr, not call. 6503: 6504: * reload.c (find_reloads): Certain mem addresses will be offsetable 6505: after reloading; in particular, those where reg_equiv_address applies. 6506: 6507: * loop.c (check_dbra_loop): Change MINUS to COMPARE. 6508: 6509: * c-typeck.c (convert_for_assignment): Return THE standard error_mark. 6510: 6511: Thu Mar 23 09:39:02 1989 Richard M. Stallman (rms at watson) 6512: 6513: * c-parse.y (components): Error if empty. 6514: 6515: * dbxout.c (dbxout_symbol): Output const variables as N_STSYM. 6516: 6517: * varasm.c (force_const_mem): Use ASM_OUTPUT_DOUBLE_INT if defnd. 6518: 6519: * c-decl.c (grokdeclarator): Warn about `long long long'. 6520: 6521: * reload1.c (reload): When changing REG to MEM, clear REG_USERVAR_P. 6522: * final.c (alter_subreg): Preserve volatile bit of MEM. 6523: 6524: * m68k.md (cmpsi, cmphi): Permit cmpm. 6525: 6526: * gcc.c (find_file): Use standard_startfile_prefix_2. 6527: Now search /usr/local/lib/, /lib/ and /usr/lib/. 6528: 6529: * tm-m68k.h (PRINT_OPERAND): Support code `d'. 6530: * m68k.md (cmpsi, cmphi, cmpqi): Use it for all mem addresses. 6531: 6532: * final.c (output_asm_insn): Don't allow %LETTER without an 6533: operand number. 6534: * tm-m68k.h, m68k.md, tm-hp9k320.h, tm-news*.h: Use %@ instead of %s. 6535: * tm-alliant.h, alliant.md: Likewise. 6536: * i386.md, out-i386.h: Put `0' after each %L, %W, %B, %S, %Q, %R. 6537: 6538: * stmt.c (expand_end_stmt_expr): Pop pending stack args. 6539: 6540: * varasm.c (assemble_variable): For 0-size common variable, 6541: allocate at least 1 byte. 6542: 6543: * tm-encore.h (ASM_OUTPUT_DOUBLE, PRINT_OPERAND): Use 0f, not 0l, 6544: for doubles. 6545: 6546: Mon Mar 13 10:24:56 1989 Richard M. Stallman (rms at ccvi) 6547: 6548: * out-i386.h (function_prologue, function_epilogue): 6549: Use call_used_regs, not a copy, so -f options work. 6550: Save regs in the opposite order. 6551: Save regs even starting from 0 if they happen to be call-saved. 6552: 6553: * Bug fixes from Rob McMahon. 6554: 6555: * loop.c (strength_reduce): When inserting insn to set 6556: nonreplaceable giv, put it after all the consecutive insns 6557: that compute it. 6558: 6559: * reload.c (find_reloads): When forcing const to mem, 6560: use the insn's operand mode, not the const's mode. 6561: 6562: * reload1.c (choose_reload_targets): Use wider of inmode and outmode 6563: when determining have_groups. 6564: 6565: * reload1.c (choose_reload_targets): typo checked wrong insn with 6566: constraint_accepts_reg_p. 6567: 6568: * reload1.c (choose_reload_targets): Enable #if-0'd code for 6569: forgetting old reloads in case of output reload from a non-spill-reg. 6570: 6571: Sun Mar 12 00:04:49 1989 Richard M. Stallman (rms at ccvi) 6572: 6573: * c-parse.y (yyerror): Add forward-decl here. 6574: * c-tree.h: Delete decl here. 6575: 6576: * New macro USE_C_ALLOCA. 6577: * cse.c (cse_main): Do alloca (0) to clear out C alloca. 6578: * flow.c (life_analysis): 6579: * local-alloc.c (local_alloc): 6580: * reload1.c (reload_as_needed): likewise. 6581: 6582: * loop.c (emit_iv_init_code, eliminate_biv): 6583: Always put constant in a PLUS last. 6584: 6585: * gcc.c (make_switch): Unused function deleted. 6586: 6587: *gcc.c (switches): Each switch has a `used' field. 6588: (process_command): Init it to 0 when making `switches'. 6589: (do_spec_1, handle_braces, give_switch): Set to 1 when switch is used. 6590: (main): If it remains 0 at the end, print error message. 6591: 6592: * expr.c (convert_move, convert_to_mode): Don't truncate a MEM in 6593: place if it is volatile. 6594: 6595: * loop.c (strength_reduce): When reducing a giv, if the biv is 6596: incremented between the giv's creation and its use, increment 6597: the reduced giv var *after* its use. 6598: 6599: * c-decl.c (duplicate_decls): Warn about proto vs nonproto 6600: only if no other errors apply. 6601: 6602: * jump.c (invert_exp): Don't crash if arg is null. 6603: 6604: * alliant.md (float*i*f2): Don't allow immediate ops. 6605: (sne): Fix typo, fsne => fsneq. 6606: 6607: * expr.c (store_one_arg, expand_call): When size doesn't matter, 6608: pass const0_rtx, not (rtx) 0. 6609: 6610: * expr.c (do_jump): Args to invert_exp were missing. 6611: 6612: * gcc.c (store_arg): Now 2 separate args for delete-on-success 6613: and delete-on-failure. All calls changed. 6614: (do_spec_1): DELETE_THIS_FILE is meaningful for output files. 6615: 6616: * config/xm-alliant.h (LINK_SPEC): Pass -X to linker. 6617: 6618: Sat Mar 11 10:30:41 1989 Richard M. Stallman (rms at ccvi) 6619: 6620: * tm-*.h, xm-*.h, *.md: Moved to subdir `config'. 6621: * output-*.c: Moved to `config/out-*.c'. 6622: * Makefile (.c.o): Define rule to use -Iconfig when compiling. 6623: (various): Delete the commands from some compilation rules. 6624: Put -Iconfig in other compilation commands. 6625: Also some reordering of variable defs and comments for cleanliness. 6626: (realclean): Change a shell comment to a Make comment. 6627: 6628: * fold-const.c (fold): Simplify and extend TRUTH_... operators 6629: knowing that args must be ints and values will be 0 or 1. 6630: 6631: * gcc.hlp: New file (for VMS). 6632: 6633: * reload1.c (reload): Don't let two 2-groups overlap. 6634: 6635: * reload.c (push_reloads): When a plain reg matches a reload 6636: for an increment, don't change the reload_in to a plain reg. 6637: Leave the increment there. 6638: 6639: * integrate.c (expand_inline_function): Don't try to inline 6640: unless the parm machine modes really match what's expected. 6641: 6642: * stmt.c (emit_case_nodes): default_label is an rtx, not tree. 6643: 6644: * tm-next.h (DOLLARS_IN_IDENTIFIERS): Define it as 1. 6645: 6646: * output-sparc.c (output_move_double): Don't trust random structs 6647: to be double-word aligned. 6648: 6649: * gcc.c: Pass -Wcomments to cpp. 6650: 6651: * rtl.def (ASM_OPERANDS): New operands, source file and line. 6652: * rtl.h (ASM_OPERANDS_*): New macros for components of ASM_OPERANDS. 6653: * stmt.c (expand_asm_operands): Use new fields, not REG_ASM_* notes. 6654: * toplev.c (error_for_asm): likewise. 6655: * rtl.h (enum reg_note): Delete REG_ASM_FILE, REG_ASM_LINE. 6656: 6657: * combine.c (try_combine): Check explicitly for volatility in I2, I1. 6658: 6659: Fri Mar 10 19:30:10 1989 Richard M. Stallman (rms at ccvi) 6660: 6661: * c-parse.y (GOTO stmt): Set TREE_USED for the label. 6662: * c-decl.c (poplevel): Warn about unused label. 6663: 6664: * c-decl.c (warn_pointer_arith, warn_strict_prototypes): New vars. 6665: (lang_decode_options): Options to set them. 6666: * c-typeck.c (pointer_int_sum, c_sizeof): Maybe warn if bad target. 6667: * c-decl.c (grokparms): Maybe warn if nonprototype fn decl. 6668: 6669: * flags.h, toplev.c (warn_shadow): New flag. 6670: * toplev.c (main): Decode it. 6671: * c-decl.c (pushdecl): Maybe warn about any shadowing. 6672: Existing parm-shadowing warning now disabled if shadowing decl 6673: is also a parm. 6674: 6675: * flags.h, toplev.c (warn_id_clash, id_clash_len): New flags. 6676: * toplev.c (main): Decode -Wid-clash-LEN. 6677: * tree.c (get_identifier): Implement warning if two idents match. 6678: 6679: * toplev.c (compile_file): Warn about statics defined and unused. 6680: 6681: * rtl.h (CONST0_RTX): New macro. 6682: 6683: * recog.c (offsetable_address_p): New 1st arg says whether to demand 6684: a strictly valid address. 6685: (offsetable_memref_p): Pass nonzero. 6686: * stmt.c (optimize_bit_field): Pass zero. 6687: 6688: * cccp.c (main): Allow -Wcomment like -Wcomments. 6689: * c-decl.c (lang_decode_options): Likewise. 6690: 6691: Sun Mar 5 15:02:59 1989 Randall Smith (randy at apple-gunkies.ai.mit.edu) 6692: 6693: * m68k.md [tstdf, cmp[sd]f, truncdfsf2, floatsi[sd]f2, add[sd]f3, 6694: sub[sd]f3, mul[sd]f3, div[sd]f3, neg[sd]f2, abs[sd]f2]: Made sure 6695: that the test function's in the match_operands of the define_expand 6696: and define_insn's matched, and made that test function 6697: "register_operand" when both define_insn's really needed registers 6698: in that spot. 6699: 6700: Sat Mar 4 00:25:37 1989 Richard M. Stallman (rms at c2v) 6701: 6702: * expr.c (emit_push_insn): Don't ever bypass the big-endian 6703: padding at the end. 6704: 6705: * cccp.c (deps_output): Break line if would otherwise exceed 75 chars. 6706: Make a name for that value 75. 6707: 6708: * combine.c (subst): Handle general case of (subreg (sign_extend X)). 6709: 6710: * tm-sun386i.h (CPP_PREDEFINES): Define `sun'. 6711: 6712: * fixincludes: change `find' calls to find dirs thru symlinks. 6713: 6714: * flow.c (mark_set_1): (set (subreg (reg N))...) 6715: does make reg N significant for this basic block. 6716: 6717: Fri Mar 3 13:55:25 1989 Richard M. Stallman (rms at c2v) 6718: 6719: * c-decl.c (parmlist_tags_warning): Print an explanation 6720: for the first such warning. 6721: 6722: * i386.md (extendsfdf): Let op 1 match op0 if that is an fp reg. 6723: 6724: * expr.c (expand_call): Fix stupid errors copying pcc struct value. 6725: 6726: * varasm.c (output_constructor): Discard NOP_EXPRs from build_c_cast. 6727: 1.1.1.14 root 6728: Thu Feb 23 05:55:57 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6729: 6730: * Version 1.34 released. 6731: 6732: * c-typeck.c (build_c_cast): If EXPR is an error mark, return that. 6733: 6734: * fold-const.c (div_and_round_double): Abort if divisor is 0. 6735: (combine): Likewise, for real constants. 6736: (real_zerop): New subroutine. 6737: (fold): Don't try to fold division if divisor is 0. 6738: Don't try to fold reals if can't do arithmetic on them. 6739: Don't try to compare reals for TRUTH_..._EXPR if can't do arith. 6740: Use real_zerop to test reals for zeroness. 6741: For TRUTH_ANDIF_EXPR and TRUTH_ORIF_EXPR, can simplify based on 6742: first operand alone. 6743: 6744: * c-typeck.c (store_init_value): Fix error msg text. 6745: 6746: * tm-sparc.h (FUNCTION_PROFILER): Use `mcount'. 6747: * tm-sun4os3.h (FUNCTION_PROFILER): Override it; use `.mcount'. 6748: 6749: Wed Feb 22 04:33:22 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6750: 6751: * tm-hp9k320.h (CPP_SPEC, CPP_PREDEFINES): Make handling of 6752: -Dmc68000 depend on TARGET_DEFAULT. 6753: 6754: * tm-sparc.h (FUNCTION_PROFILER): Missing newline in fprintf. 6755: 6756: * integrate.c (expand_inline_function): Don't map struct-value-address 6757: in memory if fn does not use it. 6758: 6759: * c-parse.y (check_newline): At skipline, detect eof. 6760: 6761: * stmt.c (uninitialized_vars_warning): Change text of warning. 6762: 6763: Tue Feb 21 03:58:50 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6764: 6765: * output-sparc.c (output_mul_insn): Handle case of both args 6766: in reg 8, or both in reg 9. 6767: 6768: * tm-sparc.h (ASM_SPEC): Define, to handle -pipe. 6769: 6770: * tm-sparc.h (FUNCTION_PROFILER): Add omitted fprintf args. 6771: (BLOCK_PROFILER): Likewise. Use tempvar. 6772: 6773: * m68k.md (QImode btst): Allow nonoffsetable mem refs. 6774: 6775: Mon Feb 20 00:32:42 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6776: 6777: * flow.c (mark_used_regs): Don't record about global reg vars. 6778: 6779: * config.gcc (convex-*): tm file names are tm-convex1.h, tm-convex2.h. 6780: 6781: * tm-vax.h, tm-ns32k.h, tm-alliant.h: Define PCC_STATIC_STRUCT_RETURN. 6782: 6783: * gcc.c (compilers): Pass `-a' to cc1. 6784: * tm-sun3.h, tm-sparc.h (LIB_SPEC): Define, to handle `-a'. 6785: 6786: * expr.c (emit_push_insn): Copy stack addresses to be passed to bcopy; 6787: old method of preadjustment is broken by changes in emit_library_call. 6788: 6789: * c-decl.c (finish_decl): New temp `temporary'; don't get confused 6790: about whether allocation was temporary. 6791: 6792: Sun Feb 19 17:03:35 1989 Chris Smith (csmith at mozart) 6793: 6794: * tm-convex.h: define PCC_STATIC_STRUCT_RETURN 6795: 6796: * convex.md: 6797: remove pshea patterns, movsi does it better. 6798: add ashift:DI abs:DF abs:SF 6799: (tstdi): use a clobbered register instead of a bogus DImode zero. 6800: (trunchiqi2): delete noninstruction cvth.b 6801: (udivsi3, udivhi3, udivqi3): deleted, expand_divmod does it now. 6802: (call, call_value): delete stupid call/ret -> jump optimization. 6803: (call, call_value): flush call_ap_check, use reg_mentioned_p instead. 6804: 6805: * convex.md: (movxx): swap constraint alternatives so that the 6806: leftmost alternative is (set =g r). This makes (set mem const) 6807: get combinable input reloads of const instead of uncombinable 6808: output reloads to mem. They still do not combine, but wtf, 6809: I'll inch up on it. 6810: 6811: * output-convex.c: (const_double_{high,low}_int): new routines 6812: to pick apart const_doubles for assembler. 6813: 6814: Sun Feb 19 01:40:17 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6815: 6816: * sparc.md (shift memory right 24 bits): Another `a1' typo. 6817: 6818: * config.gcc (convex-*): Delete troublesome whitespace. 6819: 6820: * c-decl.c (grokparms): Delete redundant `parm != 0' tests. 6821: 6822: * stmt.c (fixup_memory_subreg): Slight simplification. 6823: 6824: * tm-sparc.h (FUNCTION_PROFILER): Fill delay slot. 6825: (FUNCTION_BLOCK_PROFILER): Use sethi. 6826: (BLOCK_PROFILER): Use %g2, not %g0. Use sethi. 6827: 6828: Sat Feb 18 02:11:25 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6829: 6830: * expr.c (expand_expr): Ignore const array's initial value 6831: if it's an error_mark. 6832: * c-decl.c (finish_decl): Set DECL_INITIAL to an error_mark 6833: if the decl is a permanent node. 6834: 6835: * cccp.c (rescan): If traditional, if macro ends inside string, 6836: keep scanning for the end of the string. 6837: (handle_directive): A line of just `#' becomes blank. 6838: (collect_expansion): \ in strings traditionally doesn't hide macro arg. 6839: 6840: * m68k.md, alliant.md (addsi3): New alternative a=r+a, in addition 6841: to old a=a+r, needed since reload-insns are not commuted. 6842: 6843: Fri Feb 17 03:15:23 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6844: 6845: * tm-m68k.h (PCC_STATIC_STRUCT_RETURN): Define it. 6846: * toplev.c, flags.h: New var flag_pcc_struct_return. 6847: * stmt.c (expand_function_start): Obey new flag and new variable. 6848: * expr.c (expand_call): Obey new flag and new variable. 6849: * varasm.c (assemble_static_space): New function. 6850: 6851: * stmt.c (expand_return): If we need cleanups, compute retval first 6852: into pseudo reg, then do the cleanups, then copy it to return reg. 6853: 6854: Thu Feb 16 02:59:52 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6855: 6856: * regclass.c (init_reg_sets_1): Win if STATIC_CHAIN_REGNUM undefined. 6857: 6858: * expr.c (expand_call): Handle conflict between two precomputed 6859: args that are both function calls returning structures. 6860: 6861: * loop.c (move_movables): Bkwds test of m->partial, for a matching reg. 6862: 6863: * expr.c (emit_library_call, expand_call): Handle STACK_ARGS_ADJUST. 6864: 6865: Wed Feb 15 01:59:15 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6866: 6867: * toplev.c (flag_caller_saves): New var, for -fcaller-saves. 6868: DEFAULT_CALLER_SAVES controls initial value. 6869: * global-alloc.c (find_reg): Do caller saves only if flag set. 6870: * local-alloc.c (find_free_reg): Do caller saves only if flag set. 6871: * tm-alliant.h, tm-convex.h: Define DEFAULT_CALLER_SAVES. 6872: 6873: Wed Feb 15 01:59:15 1989 Chris Smith (rms at sugar-bombs.ai.mit.edu) 6874: 6875: * caller-save.c: New file. 6876: * regs.h (CALLER_SAVE_PROFITABLE): New macro. 6877: (reg_n_calls_crossed): new int-vector replaces reg_crosses_calls. 6878: * flow.c (allocate_for_life_analysis, propagate_block, dump_flow_info): 6879: Use reg_n_calls_crossed. 6880: * stupid.c (stupid_mark_refs, stupid_life_analysis): Likewise. 6881: * global-alloc.c (find_reg): Sometimes allocate call-clobbered regs 6882: for call-crossing pseudos. 6883: New arg ACCEPT_CALL_CLOBBERED; callers changed. 6884: * local-alloc.c (find_free_reg): Similar changes. 6885: (qty_n_calls_crossed): New int-vector replaces qty_crosses_calls. 6886: (alloc_qty, local_alloc, combine_regs, find_free_reg): change that var. 6887: * regclass.c (call_fixed_regs, call_fixed_reg_set): new vars. 6888: (init_reg_sets_1): Initialize them. 6889: * reload1.c (reload): Call caller-saves processing if needed. 6890: 6891: Wed Feb 15 01:59:15 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6892: 6893: * expr.c (expand_expr): INTEGER_CST for DImode: don't handle 6894: endianness here. So CONST_DOUBLE_LOW is always the low word. 6895: * varasm.c (force_const_mem): Handle it here. 6896: 6897: * expr.c (convert_move): widening followed by extendsidi2 had braino. 6898: 6899: * integrate.c: Don't include ctype.h; not needed and kills Sun cpp. 6900: 6901: * m68k.md (cmpsf, cmpdf and their recognizers): 6902: Replace MINUS with COMPARE. 6903: Also, use VOIDmode for COMPAREs, not SF or DF. 6904: 6905: * optabs.c (sign_expand_binop): Handle ops such as division where 6906: an unsigned char could be widened and handled with signed int insns. 6907: * expmed.c (expand_divmod): Use that. 6908: 6909: * c-typeck.c (digest_init): Allow for type variants in validating 6910: initialization from a string constant. 6911: 6912: * c-typeck.c (decl_constant_value): Disable opt. if pedantic or 6913: outside functions, so that validity of program is never affected. 6914: 6915: * fold-const.c (fold): Signedness-test for ABS_EXPR was backwards. 6916: 6917: Tue Feb 14 01:30:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6918: 6919: * cccp.c (main): Don't omit normal output, if we want deps on 6920: a separate stream. 6921: 6922: * c-decl.c (grokdeclarator): Don't record any arg types for functions 6923: if -traditional. 6924: 6925: * print-tree.c (prtypeinfo): Mention permanent attribute. 6926: 6927: * tm-next.h: New file. 6928: 6929: * c-typeck.c (decl_constant_value): The DECL_INITIAL may be ERROR_MARK. 6930: 6931: * c-decl.c (duplicate_decls): For fns, new static decl overrides 6932: old non-static one. 6933: 6934: * emit-rtl.c (gen_lowpar, gen_highpart): Use change_address, so we 6935: preserve volatility, etc. 6936: 6937: * stmt.c (expand_expr_stmt): Use emit_filename, emit_lineno 6938: as file and line for any warning. 6939: * emit-rtl.c (emit_line_note): Set those vars. 6940: 6941: * c-decl.c (store_parm_decls): If -Wimplicit, warn of arg with no decl. 6942: 6943: * recog.c (offsetable_address_p): Use strict_memory_address_p, 6944: since called from reload.c. 6945: 6946: Mon Feb 13 03:11:50 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6947: 6948: * sparc.md (compare-to-reg patterns): Some still had MINUS. 6949: 6950: * toplev.c (main): Warn if `-a' on system that can't handle it. 6951: 6952: * stmt.c (expand_asm_operands): Delete unused local `val'. 6953: (pushcase_range): Likewise for `value'. 6954: (fixup_var_refs): Likewise for `insn'. 6955: * emit-rtl.c (start_sequence): Likewise for `save'. 6956: * loop.c (scan_loop): Likewise for `before_start'. 6957: * expr.c (expand_expr): Delete label `binop1'. 6958: 6959: * reload1.c (constraint_accepts_reg_p): Handle SUBREGs of REGs. 6960: 6961: Sun Feb 12 05:37:46 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6962: 6963: * gnulib.c (__bb_init_func): New function 6964: 6965: * tm-m68k.h (BLOCK_PROFILER, FUNCTION_BLOCK_PROFILER): Defined. 6966: 6967: Sat Feb 11 00:05:55 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6968: 6969: * tm-sparc.h (FUNCTION_PROFILER): Make it really work. 6970: (BLOCK_PROFILER, FUNCTION_BLOCK_PROFILER): New macros. 6971: 6972: * final.c (final): Use BLOCK_PROFILER at start of each basic block. 6973: (final_start_function): Use FUNCTION_BLOCK_PROFILER if -a. 6974: (end_final): New fn to output the block-profiling tables. 6975: * toplev.c (profile_block_flag): Set if -a. 6976: (compile_file): Call end_final. 6977: 6978: * combine.c (try_combine): Avoid combining in most cases if I3 6979: has an inc or dec and I1 or I2 uses the same register. 6980: 6981: * tree.c (size_in_bytes, int_size_in_bytes): Use type's main variant. 6982: 6983: * c-typeck.c (actualparameterlist): Error if parm type is incomplete. 6984: 6985: * expr.c (expand_call): Ignore args that have incomplete type. 6986: 6987: Fri Feb 10 02:26:02 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6988: 6989: * c-parse.y (case stmts): strip dummy NOP_EXPRs. 6990: 6991: * reload1.c (reload_as_needed): Clear reg_{has,is}_output_reload here, 6992: (choose_reload_targets): not here. 6993: 6994: Thu Feb 9 01:35:55 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 6995: 6996: * output-sparc.c (output_mul_by_constant): Forget cc status. 6997: 6998: * stmt.c (assign_parms): Don't put volatile parms in regs. 6999: 7000: * vax.md (jlbs/jlbc recognizers): Move them before jbc/jbs recognizers. 7001: 7002: * cse.c (fold_rtx): Handle (EQ (COMPARE ...) (CONST_INT 0)). 7003: 7004: * c-typeck.c (default_conversion, digest_init): For static const 7005: nonvolatile scalar variable, use its initial value if known. 7006: 7007: * expr.c (expand_expr: case COMPONENT_REF): If containing structure 7008: comes out volatile, leave the component MEM volatile too. 7009: 7010: * hard-reg-set.h: Fix multi-word case macros to swallow semicolon. 7011: 7012: * c-typeck.c (default_conversion): In array=>ptr, volatility 7013: of target type comes from TREE_THIS_VOLATILE, not TREE_VOLATILE. 7014: 7015: * reload1.c (forget_old_reload_1, choose_reload_targets): 7016: New array reg_is_output_reload is converse of reg_has_output_reload. 7017: forget_old_reload_1 needs both. 7018: 7019: Wed Feb 8 01:26:24 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7020: 7021: * reload1.c (forget_old_reloads_1): New fn, guts of forget_old_reloads. 7022: Do process a spill reg if it isn't used for reloading in this insn. 7023: (forget_old_reloads): Deleted, replaced with note_stores. 7024: (reload_as_needed): Undo Feb 1 change. 7025: Call forget_old_reloads_1 on pseudos autoincremented and not reloaded. 7026: 7027: * c-typeck.c (convert_for_assignment): Handle variant types. 7028: 7029: * c-decl.c (lang_decode_option): -Wall implies -Wunused. 7030: 7031: Tue Feb 7 01:32:28 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7032: 7033: * combine.c (try_combine): Don't try adding outputs to an asm_operands. 7034: 7035: * cse.c (CHEAPER): Don't ever let a hard reg get ahead of a pseudo. 7036: 7037: * stmt.c (fixup_gotos): Don't crash on undef label if THISBLOCK is 0. 7038: 7039: * c-decl.c (parmlist_tags_warning): New fn. 7040: * c-parse.y (parmlist, parmlist_or_identifiers): Call it, 7041: to warn about any tags defined inside the parmlist. 7042: * c-decl.c (grokparms): Don't warn about ptr to incomplete type. 7043: The new warning is better. 7044: 7045: Mon Feb 6 01:11:36 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7046: 7047: * expr.c (store_constructor): Incorrect ALIGN arg in store_field calls. 7048: 7049: * c-parse.y (%union): Delete unused alternative. 7050: 7051: * c-decl.c (grokparms): Use main variant to test for ptr to incomplete. 7052: 7053: * c-decl.c (finish_enum): Delete superfluous init for `pair'. 7054: 7055: * cse.c (fold_rtx): Optimize X+0, X-0 in floating point. 7056: Fix typo in PLUS case; omitted value to compare GET_MODE_CLASS against. 7057: (equiv_constant): Allow CONST_DOUBLE. 7058: 7059: * cse.c: Optimize past if-statements that are known to fail. 7060: (cse_insn): If condjump becomes uncond to end of this block, 7061: set cse_skip_to_next_block. 7062: (cse_basic_block): If that happens, ignore rest of block, and maybe 7063: treat next block as part of this one (if tables have room). 7064: Resume insn that starts next basic block to be scanned. 7065: (cse_main): Make room for at least 500 qtys. 7066: (cse_end_of_basic_block): Subroutine broken out of cse_main. 7067: 7068: * c-parse.y (hash, is_reserved_word): Rewrite: new hash technique. 7069: 7070: * c-decl.c (duplicate_decls): Be smart about proto vs nonproto mismatch 7071: involving a function definition. 7072: 7073: Sun Feb 5 17:31:12 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7074: 7075: * alliant.md (movdi): Typo in `fmoved'. 7076: (ftruncsf2): Handle moving into fp reg. 7077: 7078: * jump.c (jump_optimize): Typo in testing PRESERVE_DEATH_INFO_REGNO_P. 7079: 7080: * reload1.c (choose_reload_targets): Move all death notes to the 7081: output reload insn. 7082: 7083: * m68k.md (fix_truncsfsi2,fix_truncdfsi2): Use accurate rtl pattern. 7084: 7085: * loop.c (delete_insn_forces): Use presence of REG_RETVAL to check 7086: for value-of-library-call insn. 7087: 7088: Sat Feb 4 18:17:56 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7089: 7090: * integrate.c (expand_inline_function): Make addresses of stack 7091: slots valid somehow. 7092: 7093: * tm-3b1.h (DIVSI3_LIBCALL, etc.): Define these macros; avoid gnulib. 7094: 7095: * expmed.c (store_bit_field): Avoid (subreg (mem)) when converting 7096: VALUE1 to SImode. 7097: 7098: * jump.c (jump_optimize): Do delete USE and CLOBBER insns. 7099: This is needed for proper jump optimization. 7100: 7101: * rtl.def (COMPARE): New code. 7102: * *.md (compare and related patterns): Use COMPARE, not MINUS:VOID. 7103: * loop.c (eliminate_biv, can_eliminate_biv_p): Likewise. 7104: * cse.c (fold_rtx, fold_cc0, cse_insn): 7105: * output-m88k.c (output_{f,}compare, output_store): 7106: * output-sparc.c (strict_single_insn_op_p, single_insn_src_p, safe_insn_src_p): 7107: * combine.c (subst): 7108: * jump.c (jump_back_p): 7109: 7110: Fri Feb 3 18:34:27 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7111: 7112: * output-i386.c (notice_update_cc): If arith insn sets the cc's, 7113: discard all remnants of previous cc value and flags. 7114: 7115: * sparc.md (ashiftrt mem by 24): Fix typo `a1'. 7116: 7117: Thu Feb 2 14:55:44 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7118: 7119: * output-sparc.c (output_mul_insn): Clear the CC status. 7120: 1.1.1.13 root 7121: Wed Feb 1 20:01:54 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7122: 7123: * Version 1.33 released. 7124: 7125: * reload1.c (reload_as_needed): On entering new basic block, 7126: if it didn't need reload regs, forget all inherited contents of those. 7127: 7128: * tm-alliant.h (NOTICE_UPDATE_CC): Floating moves don't set the cc's. 7129: Also delete the clauses and tests for FPA regs. 7130: 7131: Tue Jan 31 21:51:05 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7132: 7133: * config.gcc: Handle convex-c1, convex-c2. 7134: * tm-convex1.h, tm-convex2.h: New files that include tm-convex.h. 7135: * tm-convex.h: Define switches -mnoc1, -mnoc2. 7136: 7137: * config.gcc: rename `nofp' to `nfp', to match the file names. 7138: 7139: Mon Jan 30 22:12:15 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7140: 7141: * output-sparc.c (output_delay_insn): Extract the operands, 7142: call alter_subreg, constrain_operands and NOTICE_UPDATE_CC. 7143: So callers other than output_eager_then_insn don't lose. 7144: (output_eager_then_insn): No need to do that stuff. 7145: 7146: * symout.c (symout_block_symbols): Handle (MEM (REG)) for 7147: variable-sized arrays. 7148: 7149: * tm-encore.h (ASM_SPEC): Always pass -j; avoid jump-range lossage. 7150: 7151: Sun Jan 29 17:06:26 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7152: 7153: * alliant.md: Fix refs to CONST_DOUBLEs to use CONST_DOUBLE_{HIGH,LOW}. 7154: 7155: * combine.c (subst): (minus (zero_extend ...) (const_int ...)) opt. 7156: now limited to within the context of (set (cc0) ...). 7157: 7158: Sat Jan 28 14:26:08 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7159: 7160: * cse.c (fold_cc0): Missing `&' extracting CONST_DOUBLEs. 7161: (fold_rtx): Don't put CONST_DOUBLEs together into a (CONST (PLUS...)). 7162: 7163: * output-convex.c (gen_cmp): Recognize CONST_DOUBLE as a constant. 7164: 7165: * tree.c (build_real_from_int_cst): Typo in REAL_ARITHMETIC case. 7166: 7167: * Makefile (bootstrap2): Don't use bootstrap3 as subroutine. 7168: 7169: * varasm.c (force_const_mem): Put the CONST_DOUBLE on the chain 7170: if its MEM is stored in it; so it can be cleared at end of function. 7171: 7172: * stmt.c (emit_case_nodes): Put a compare before each cond-jump. 7173: Two cond-jumps after one cond is invalid and makes cse produce garbage. 7174: 7175: Fri Jan 27 01:05:01 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7176: 7177: * tm-sun2.h (CPP_SPEC): Define __HAVE_68881__ only if -m68881. 7178: 7179: * c-decl.c (start_decl): Don't expand_decl if DECL already has rtl. 7180: (grokparms): If just declaring fcn, incomplete parm type is just 7181: a warning, and don't discard the specified type. 7182: 7183: * expmed.c (expand_divmod): Be smarter about not clobbering args 7184: with intermediate results; one mem can clobber another, and a reg 7185: can clobber a mem. 7186: 7187: * tm-i386.h (FUNCTION_PROFILER): Use LPREFIX. May actually work now. 7188: * tm-i386gas.h: Include tm-bsd386.h, not tm-att386.h. 7189: This means changing asm syntax. 7190: #undef DBX_NO_XREFS and DBX_CONTIN_LENGTH. 7191: 7192: * sparc.md (eager branch peepholes): Don't forget 2nd arg to 7193: safe_insn_src_p. 7194: Don't print warnings. 7195: * output-sparc.c: (strict_single_insn_op_p): Return 0 for floating 7196: REG or MEM, since copying that may take 2 insns. 7197: (operands_satisfy_eager_branch_peephole): require delay insn to 7198: be strict_single_insn_op_p as well as safe_insn_src_p. 7199: (operand_clobbered_before_used_after): Don't print warnings. 7200: 7201: * varasm.c (decode_rtx_const): Clear entire structure incl. gaps. 7202: Avoids spurious hash mismatches. 7203: (force_const_mem): If CONST_DOUBLE, store its CONST_DOUBLE_MEM field. 7204: Also look in that field rather than hashing, to save time. 7205: 7206: * c-typeck.c (build_c_cast): If value is literal, mark NOP_EXPR as so. 7207: (store_init_value): Change error msg. 7208: 7209: * c-decl.c (duplicate_decls): Classify prototype vs nonprototype 7210: mismatches better. 7211: 7212: * tm-3b1.h: Fix comment. 7213: 7214: Wed Jan 25 12:46:50 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7215: 7216: * Makefile (cleanlinks): Use -f. 7217: 7218: Tue Jan 24 17:54:16 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7219: 7220: * cse.c (canon_hash): Fix paren error in last change. 7221: 7222: * varasm.c (immed_real_const_1): Missing arg to bcmp. 7223: 7224: Mon Jan 23 02:43:45 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7225: 7226: * stor-layout.c (layout_type): BLKmode elts force array to be BLKmode. 7227: 7228: * genpeep.c, genoutput.c, genemit.c: Put `#include "real.h"' in output. 7229: 7230: * stmt.c (expand_expr_stmt): No "no effect" warning for error-mark. 7231: 7232: * varargs.h: Rename implicit arg name to __builtin_va_alist 7233: which triggers code in assign_parms. Does this really matter? 7234: 7235: * sparc.md (sne): New define_expand. 7236: (seq recognizers): Handle sne as well. 7237: * output-sparc.c ({strict_,}single_insn_src_p): 7238: Some NEG and MINUS insns are actually 2 asm insns. 7239: (safe_insn_src_p): No floating arith is safe; they can trap. 7240: (eq_or_neq): New fn, for seq/sne recognizers. 7241: 7242: * c-decl.c (grokdeclarator, size of array type): 7243: Strip from SIZE any NOP_EXPRs that don't change anything. 7244: 7245: * reload.c, recog.c: Include real.h so constraint macros can examine 7246: CONST_DOUBLEs. 7247: 7248: Sun Jan 22 04:12:54 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7249: 7250: * c-decl.c (init_decl_processing): Define __builtin_saveregs. 7251: * tree.h: likewise. 7252: * expr.c (expand_builtin): Handle it. 7253: 7254: * tm-sparc.h: Define TARGET_EAGER and -meager. 7255: * sparc.md (eager branch peepholes): Reenable, but test TARGET_EAGER. 7256: Change fb insns to use %F. Delete `,a' from some of them. 7257: * jump.c (jump_optimize): Don't delete USE and CLOBBER insns. 7258: 7259: * xm-vms.h (const): Define it as empty. 7260: 7261: * make-cccp.com: Move the rename of cexp_tab.c. 7262: Compile cccp.c with no macro definitions. 7263: 7264: * cccp.c (main): VMS conditional for setting max_include_len. 7265: 7266: Sat Jan 21 12:53:00 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7267: 7268: * varargs.h (va_start): On sparc, call __builtin_saveregs. 7269: Delete the old conditional that used va-sparc.h. 7270: Rename macros and locals to start with two underscores. 7271: * va-sparc.h: File deleted. 7272: 7273: * c-decl.c (store_parm_decls): Initialize OTHERS. 7274: 7275: * stmt.c (assign_parms): Obey layout_decl. 7276: 7277: Fri Jan 20 02:19:32 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7278: 7279: * cse.c (fold_rtx): For SYMBOL_REF and LABEL_REF, mask address 7280: to 16 bits. 7281: 7282: * tree.h (NUM_TREE_CODES): NUM_TREE_CODE renamed. 7283: 7284: Thu Jan 19 13:53:24 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7285: 7286: * c-typeck.c (mark_addressable): For global reg var, report error. 7287: Now returns an int; value of 0 means caller should fail. 7288: All calls (in this file) changed. 7289: 7290: * stor-layout.c (layout_decl): Don't let an more than 1 word 7291: of any aggregate go in any 1 register. (Needed for machines whose 7292: integer regs are 64 bits). 7293: 7294: * tm-convex.h, xm-convex.h, convex.md, output-convex.c: new files. 7295: 7296: * expr.c (convert_move): Use extendqidi2, etc. for converting 7297: small ints to double ints. Use zero_extendsidi2 rather than 7298: clearing the high half. 7299: 7300: Wed Jan 18 01:20:52 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7301: 7302: * varasm.c (make_decl_rtl): If global `register' decl is invalid, 7303: make ordinary non-register rtl. 7304: 7305: * output-sparc.c (operand_clobbered_before_used_after): new fn. 7306: (reg_clobbered_p, safe_insn_src_p): New fns. 7307: (single_insn_src_p): Treat constants all as ok, even though not 7308: always literally so. Also accept some SIGN_EXTENDs and ZERO_EXTENDs. 7309: (strict_single_insn_src_p): New fn, like above but is strict 7310: about constants and constant memory addresses. 7311: (relop): New fn. 7312: (output_move_double): Don't make a MEM, and don't use %m. 7313: (output_delayed_branch): New name for output_delay_insn. 7314: Now handle non-small constant operands. 7315: Avoid duplicate loads of g1 for constant addresses. 7316: Use recog_operand directly for output of the delay insn. 7317: (output_delay_insn): Now a completely new fn. 7318: (output_eager_then_insn, next_real_insn_no_labels): New fns. 7319: (operands_satisfy_eager_branch_peephole): New fn. 7320: 7321: * sparc.md: New peepholes for testing a recently used operand. 7322: New peepholes for delayed branches, incl. conditional ones. 7323: ** Some of them commented out because they seem not to work. 7324: (andcc recognizer): Fix typo, missing %. 7325: (bgt): Change bgt to bg in output. 7326: (reversed jumps): Replace with one pattern using match_operand. 7327: It uses %F to output the condition. 7328: (movsi): For round-valued immed const, use just a sethi. 7329: For other immed, use explicit sethi and or. 7330: (movhi, movqi): use `move' for reg source or small int source. 7331: For other immed, use explicit sethi and or. 7332: (movsi, etc.): Handle all constant addresses like SYMBOL_REFs. 7333: (movsf): Delete never-used duplicate code for constant addresses. 7334: (addsi3, subsi3, cse'd multiply): Use sethi and or, rather than set. 7335: (andsi3, iorsi3, xorsi3): Likewise. 7336: (jump): Make an annulled branch. 7337: 7338: * tm-sparc.h (PROMOTE_PROTOTYPES): Define this. 7339: (GO_IF_LEGITIMATE_ADDRESS): Now accept all constant addresses; 7340: also cleaned up. 7341: (NOTICE_UPDATE_CC): Don't change the G1 status when storing in memory. 7342: Assume all PARALLEL insns are peepholes. 7343: (PRINT_OPERAND): New codes C and N for outputting conditions, 7344: either forward or reversed. Also F for reversed floating. 7345: 7346: * jump.c (delete_for_peephole): New function to delete range of insns. 7347: * genpeep.c (gen_peephole): Output code to use this. 7348: 7349: * Makefile (install): Fix typo, had $${name} for $${file}. 7350: 7351: Tue Jan 17 00:00:12 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7352: 7353: * i386.md (ashlsi3): Use addl or leal for special cases. 7354: 7355: * c-decl.c (grokdeclarator): Make a non-global VAR_DECL public 7356: if it is external. 7357: 7358: * masm386.c: Clean up formatting. 7359: 7360: * cse.c (fold_rtx): Typo simplifying x|0 or x^0 7361: when the 0 comes second. 7362: 7363: * expmed.c (store_fixed_bit_field): For halfwords, verify that 7364: the field fits in an *aligned* halfword. 7365: (extract_fixed_bit_field): likewise. 7366: 7367: * expmed.c (store_split_bit_field): New arg align, passed in from 7368: store_fixed_bit_field and passed back to it. 7369: (extract_split_bit_field): likewise. 7370: 7371: * expr.c: Reinsert changes from Jan 2, mysteriously deleted Jan 3. 7372: Also changes from Dec 23, Dec 28 and Dec 29. 7373: 7374: * tm-i386.h: Likewise for changes from Dec 30. 7375: 7376: * c-typeck.c (build_component_ref): If field's type is error-mark, 7377: return an error-mark. 7378: 7379: Mon Jan 16 14:16:54 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7380: 7381: * genpeep.c (main): Output code to exit early if insn is followed 7382: by a barrier. 7383: (gen_peephole): Reject barriers just like labels. 7384: 7385: * stmt.c (do_jump_if_equal): New arg UNSIGNEDP, for emit_cmp_insn. 7386: Caller changed. Now static. 7387: 7388: * final.c (final): Set INSN_DELETED_P in insns when output. 7389: 7390: * final.c (final): Re-set BODY if peephole does anything. 7391: 7392: * c-decl.c (grokparms): Ignore anything but PARM_DECLs in the list. 7393: (store_parm_decls): If we had a prototype, separate out anything other 7394: than a PARM_DECL declared in it, and pushdecl those at the end, 7395: after DECL_ARGUMENTS is set. 7396: 7397: * stmt.c (expand_end_case): Do stack adjusts after computing index. 7398: 7399: * expr.c (store_one_arg): Handle padding for case of BLKmode 7400: for which space was preallocated. 7401: 7402: * integrate.c (copy_rtx_and_substitute): When copying asm insn, 7403: preserve sharing of the input-operand vectors. 7404: (expand_inline_function): Clear {orig,copy}_asm_operands_vector 7405: to make that mechanism work. 7406: (save_for_inline, copy_for_inline): Likewise. 7407: 7408: * stmt.c (expand_asm_operands): Reject `+' in constraints. 7409: Every output constraint requires `='; inputs reject it. 7410: 7411: * stmt.c (expand_function_end): Arg to fixup_gotos was missing. 7412: 7413: Sun Jan 15 00:28:23 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7414: 7415: * cccp.c, gcc.c (main): Handle SIGPIPE. 7416: (pipe_closed): New fn; report suitable fatal error. 7417: 7418: * loop.c (loop_optimize): Initialize moved_once. 7419: 7420: * gcc.c (do_spec): Don't call `execute' if value != 0. 7421: Delete redundant second call to do_spec_1. 7422: 7423: * toplev.c (compile_file): Make declared-but-not-defined warnings 7424: only if -Wunused. 7425: 7426: * stmt.c (emit_case_nodes): Fix typo setting gen_ble_pat. 7427: 7428: * tm-sparc.h ({U,}MODSI3_LIBCALL): Name was wrong. 7429: 7430: * gcc.c (env_exec_prefix refs): Don't try to open via it if it's null. 7431: 7432: * output-sparc.c (output_store, output_load_{fixed,floating}): 7433: Fixed confusions between the mem ref and its address. 7434: 7435: * cse.c (canon_hash): global_regs has entries only for hard regs. 7436: * flow.c (insn_dead_p, mark_set_p, mark_used_regs): Likewise. 7437: 7438: * cse.c (fold_rtx): More simplifications for MULT, IOR, AND, XOR 7439: DIV and shifts with one arg 0 or 1. 7440: 7441: Sat Jan 14 11:41:11 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7442: 7443: * c-typeck.c (build_array_ref): If pedantic, check for regdecl arrays. 7444: 7445: * fixincludes: Make all subdirs in advance, so no need for `dirname'. 7446: 7447: * genpeep.c (gen_peephole): Delete code to increment LABEL_NUSES; 7448: instead, clear JUMP_LABEL for any jumps being deleted. 7449: No need to test INSN1 for being a label, since not called then. 7450: [If any of the matched insns is a JUMP_INSN, set want_jump, 7451: and in that case make the matched peephole a JUMP_INSN itself.] 7452: That's in an #if 0 now; it's good in jump, but not in final. 7453: 7454: * jump.c (jump_optimize): Don't do peepholes here. 7455: * final.c (final): Do them here. 7456: 7457: * jump.c (jump_optimize): In optimizing `if (foo) bar; else break;', 7458: don't try to invert anything but a standard-looking conditional jump. 7459: 7460: * jump.c (jump_optimize): Do peepholes on ALL BUT the first pass. 7461: 7462: * gcc.c (env_exec_prefix): New var used like user_exec_prefix 7463: but set from envvar GCC_EXEC_PREFIX. 7464: 7465: Fri Jan 13 13:21:59 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7466: 7467: * genpeep.c (gen_peephole): Test INSN1 for a label at the very start, 7468: then test following insns at the end of the loop. 7469: 7470: * sparc.md (call recognizers): do CC_STATUS_INIT, for %g1. 7471: 7472: Thu Jan 12 02:13:49 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7473: 7474: * varasm.c (make_decl_rtl): Recognize more error cases for reg vars: 7475: BLKmode, or initializer given. 7476: Distinguisn missing asm from invalid name. 7477: 7478: * expr.c (expand_call): Never return 0; return const0_rtx instead. 7479: This makes expand_expr more uniform. 7480: 7481: * c-decl.c (grokparms): For ptr to incomplete type, just warn; 7482: don't change the parm's type. 7483: 7484: * stmt.c (expand_return): Set RETVAL_RHS so as to recognize 7485: tail-recursive fcn returning void. 7486: Unconditionally test value of expand_expr for being a REG. 7487: 7488: * reload.c (find_reloads): Don't process insns that have 7489: no constraint alternatives. No more need for have_constraints. 7490: 7491: * recog.c (constrain_operands): New local var nalternatives. 7492: Don't bother checking the insn if nalternatives is 0. 7493: 7494: Wed Jan 11 01:27:48 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7495: 7496: * Implement global register decls. 7497: 7498: * varasm.c (make_decl_rtl): Handle global register vars. 7499: (make_function_rtl): Set function_defined: after 1st function dfn. 7500: (assemble_variable): Ignore global register vars. 7501: 7502: * c-decl.c (grokdeclarator): Don't reject global register decls. 7503: (builtin_function): Use make_decl_rtl, not make_function_rtl, 7504: to avoid setting function_defined. 7505: 7506: * regclass.c (init_reg_class{,_1}): Init and process global_regs. 7507: They are fixed, and call-clobbered. 7508: 7509: * flow.c (insn_dead_p): Storing one of global_regs is never dead. 7510: (mark_used_regs, mark_set_1): A global reg is never dead. 7511: 7512: * cse.c (canon_hash): Consider global regs volatile. 7513: 7514: 7515: * expr.c (do_jump): Know how to invert jumps which are sequences. 7516: 7517: * dbxout.c, symout.c, final.c: On USG, use our own stab.h. 7518: 7519: * tm-i386gas.h: New file for GAS on sysV (with DBX debugging info). 7520: 7521: * m68k.md (bfchg and bfins patterns): Make # alternatives uniform. 7522: * alliant.md: Likewise; also in movdf patterns. 7523: 7524: * genoutput.c (output_epilogue): Spurious `break' disabled 7525: error check for mismatched # of alternatives. 7526: (output_epilogue, scan_operands): Errors in input are not fatal. 7527: 7528: * flow.c (regno_uninitialized): Avoid crash if no basic blocks. 7529: 7530: * sparc.md (move insns): Delete special patterns that handled 7531: symbolic constant addresses. The main move patterns now do this. 7532: * output-sparc.c (output_store, output_load_{fixed,floating}): 7533: Subroutines to do the work for this; has the code from those 7534: special patterns. Also fixed bugs in testing against cc_status.mdep. 7535: 7536: * output-sparc.c (output_delay_insn): Clear the CC status. 7537: This is necessary for %g1 in the case of a call insn. 7538: 7539: * tm-i386.h (REG_CLASS_CONTENTS): INDEX_REGS is now all but ESP. 7540: (REGNO_REG_CLASS): Corresponding change. 7541: (REG_CLASS_FROM_LETTER): Eliminate `x' letter since not used. 7542: 7543: * optabs.c (emit_cmp_insn): New arg ALIGN, used for BLKmode. 7544: All callers changed. 7545: Pass alignment (as rtx) as 4th arg to cmpstr gen functions. 7546: Use cmpstrhi if available. 7547: * expr.c (compare): Only this call passes a nonzero ALIGN. 7548: 7549: * expr.c (emit_push_insn, emit_block_move): Pass alignment (as rtx) 7550: as 4th arg to movstr gen functions. 7551: 7552: Tue Jan 10 23:43:05 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7553: 7554: * stor-layout.c (layout_type): Use BLKmode, if a struct isn't 7555: aligned well enough for a scalar mode. 7556: 7557: * expr.c (expand_expr): For static CONSTRUCTOR, ensure memory 7558: address is made valid. 7559: 7560: * genpeep.c (match_rtx): For MATCH_OPERATOR, set max_opno, n_operands. 7561: 7562: Mon Jan 9 17:07:56 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7563: 7564: * varasm.c (output_constant): Split strings every 2000 chars. 7565: 7566: * stmt.c (expand_end_case): Test bkwds, handling constant switch arg. 7567: 7568: Fri Jan 6 09:11:20 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7569: 7570: * output-sparc.c (output_delay_insn): Add parens to first if test. 7571: (output_move_double): Turn addr for `sethi' into MEM for %m. 7572: 7573: * c-typeck.c (convert_for_assignment): move test for ERROR_MARK. 7574: 7575: * c-parse.y (unary_expr): Allow cast_expr as arg of unary op. 7576: 7577: * stmt.c (expand_decl): Don't abort if FUNCTION_DECL lacks rtl; 7578: assemble_variable is called after this. 7579: 7580: * c-parse.y (primary -> identifier): Separate case for undeclared 7581: identifier outside of functions; avoids confusing error msgs. 7582: 7583: Thu Jan 5 01:24:47 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7584: 7585: * Makefile (install): Ignore errors in all `if' commands. 7586: Create $(libdir) if nec. 7587: 7588: * Makefile (insn-*.[ch]): Put in empty commands. May help Ultrix Make. 7589: 7590: * stmt.c (emit_case_nodes): New arg UNSIGNEDP says do unsigned jumps. 7591: Arg INDEX is an rtx, not a tree. 7592: (expand_end_case): Pass that arg. 7593: (node_has_{low,high}_bound): check for overflow, avoid confusion. 7594: 7595: Wed Jan 4 02:24:21 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7596: 7597: * sparc.md (movdi, movdf): Use `&' constraint when loading reg from; 7598: otherwise can lose on (set (reg X) (mem (plus (reg X) (reg X+1)))). 7599: 7600: * expr.c (emit_push_insn): For memory scalar partially going in regs, 7601: copy each word to reg before pushing. Avoids memory-to-memory move. 7602: Make the displaced address valid. 7603: Also delete unfinished STACK_OFFSET variable. 7604: 7605: * c-parse.y (check_newline): Read just one #-directive and return. 7606: This prevents lossage when toplev.c calls it to get the main input file 7607: name, and it gets a following #ident as well. 7608: 7609: * c-decl.c (lang_decode_option): Set warn_cast_qual for -Wcast-qual. 7610: * c-typeck.c (build_c_cast): Issue some warnings if set. 7611: 7612: * tm-3b1.h (ASM_OUTPUT_CASE_LABEL): Missing `;'. 7613: 7614: Tue Jan 3 18:07:31 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7615: 7616: * expr.c (emit_library_call): Do force_operand on each operand 7617: if it isn't a REG, MEM or constant. 7618: Do this, or mode conversions, earlier, before loading any hard regs. 7619: 7620: * m68k.md (addsi3) [SGS]: Put a zero displacement in the `lea'. 7621: 7622: * c-typeck.c (default_conversion): Don't lose `const' or `volatile' 7623: when converting array type to pointer. 7624: 7625: Mon Jan 2 01:18:01 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7626: 7627: * expmed.c (store_bit_field, store_fixed_bit_field): New arg, 7628: alignment in bytes the structure is known to have. 7629: (store_fixed_bit_field): Handle working in halfwords, 7630: in case the pointer isn't known to have fullword alignment. 7631: * expmed.c (extract_bit_field, extract_fixed_bit_field): likewise. 7632: (extract_bit_field): fix unsignedp arg to extract_fixed_bit_field. 7633: * expr.c (store_field): New arg, passed to {store,extract}_bit_field 7634: (expand_assignment, store_constructor): Pass that arg. 7635: (expand_expr): Pass new arg to extract_bit_field. 7636: 7637: * m68k.md (casesi_2 recognizer): Offset always 6 for 3b1. 7638: 7639: * c-typeck.c (convert_for_assignment): Strip from rhs no-op NOP_EXPRs 7640: put on by build_c_cast (to make the result not an lvalue). 7641: (build_modify_expr, build_compound_expr): likewise. 7642: (build_conditional_expr): likewise. 7643: (actualparameterlist, build_function_call): likewise. 7644: (default_conversion, truthvalue_conversion): likewise. 7645: 7646: * loop.c (move_movables): If reg has moved out of one loop, 7647: divide `savings' by 2. 7648: 7649: Sun Jan 1 03:00:07 1989 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7650: 7651: * c-typeck.c (truthvalue_conversion): Distribute the conversion 7652: into the arms of a COND_EXPR. 7653: 7654: * cse.c (fold_rtx): Don't fold a MINUS with VOIDmode 7655: into a symbolic constant--it's incorrect. 7656: 7657: * cse.c (cse_insn): If SRC is a subreg with known value, simplify it. 7658: 7659: * integrate.c (copy_rtx_and_substitute): Allow a ref to a part of 7660: MEM parm whose actual parm is a reg, provided it refs 7661: the low part of the MEM. 7662: (function_cannot_inline_p): Don't inline functions which have 7663: aggregate parameters and take their addresses. This could produce 7664: refs to non-low-parts, which copy_rtx_and_substitute can't handle. 7665: 7666: * c-typeck.c (build_modify_expr): If lhs is COND_EXPR, 7667: make a COMPOUND_EXPR to ensure the rhs is computed before the branch. 7668: 7669: * Implement -pipe. 7670: * gcc.c (do_spec_1): `|' is now a special delimiter 7671: which goes in the argbuf. 7672: When a newline is preceded by a `|', delete it if no -pipe. 7673: Otherwise, don't execute yet, and keep scanning. 7674: (do_spec): At end, if we have stuff with no newline, execute it. 7675: (handle_braces): Implement %{|foo:...}. 7676: (execute): If argbuf contains some `|'s, run several processes 7677: and pipe them together. 7678: (pexecute): new subroutine to make one of the processes. 7679: (find_exec_file): new fn to search for program to execute. 7680: (record_temp_file): new arg FAIL_ONLY. 7681: (store_arg): 2nd arg == 3 means delete file on failure. 7682: This is used for output files. 7683: (delete_temp_files): delete certain files only if fail. 7684: 7685: * cccp.c (include_defaults): /usr/include before /usr/local/include. 7686: 7687: * recog.c (asm_noperands): 1-off in loop checking CLOBBERS 7688: when no output operands and PARALLEL. 7689: 7690: * expmed.c (negate_rtx): Sign-extend the high bits rather than clear. 7691: 7692: * cse.c (fold_rtx): fold negation of real values. 7693: (fold_cc0): fold comparisons on real values. 7694: 7695: * Makefile (install): Use $(INSTALL) for gcc.1 and files in USER_H. 7696: 7697: * Handle floating-point problems for cross-compilation. 7698: 7699: * real.h (CONST_DOUBLE_LOW, etc.): new macros to access CONST_DOUBLE. 7700: * varasm.c (immed_double_const, decode_rtx_const): Use these. 7701: ({force,clear}_const_double_mem): Likewise. 7702: * output-*.c (output_move_double): Use these. 7703: * output-m68k.c (standard_{68881,sun_fpa}_constant_p): Likewise. 7704: * tm-*.h (PRINT_OPERAND): Use these. 7705: * output-i386.c (print_operand): Use these. 7706: * final.c (output_addr_const): Likewise. 7707: * emit-rtl.c (gen_rtx): Delete special code for CONST_DOUBLE. 7708: 7709: * real.h (union real_extract): Portable type for storing real as ints. 7710: * varasm.c (immed_double_const, decode_rtx_const): Use these. 7711: 7712: * varasm.c (immed_real_const_1, decode_rtx_const): 7713: Don't assume REAL_VALUE_TYPE is 2 ints long. 7714: * emit-rtl.c (init_emit_once): Likewise. 7715: 7716: * real.h (REAL_VALUE_TYPE): Define as `double' if not defined. 7717: (REAL_IS_NOT_DOUBLE): Define this if default REAL_VALUE_TYPE not used. 7718: (REAL_VALUES_EQUAL, REAL_VALUES_LESS): Define, if not already defined. 7719: (REAL_VALUE_LDEXP, REAL_VALUE_ATOF): Likewise. 7720: * tree.h (struct tree_real_cst): Use REAL_VALUE_TYPE for the value. 7721: 7722: * rtl.c (init_rtl): Increase length of CONST_DOUBLE if REAL_VALUE_TYPE 7723: needs more space. Change the rtx_format element to match. 7724: * varasm.c (immed_real_const_1): 1st arg now has REAL_VALUE_TYPE. 7725: (force_const_mem): Assume a CONST_DOUBLE contains REAL_VALUE_TYPE. 7726: * emit-rtl.c (init_emit_once): Likewise. 7727: And use REAL_VALUE_ATOF to get a floating zero. 7728: * optabs.c (expand_float): Use REAL_VALUE_TYPE, REAL_VALUE_LDEXP. 7729: * c-parse.y (yylex): Likewise, and use REAL_VALUE_ATOF. 7730: * fold-const.c (split_tree): Don't accept REAL_CSTs. 7731: (combine, fold_convert, fold): Use REAL_ARITHMETIC if defined; 7732: else don't fold reals if they are not doubles. 7733: * tree.c (build_real_from_int_cst): Likewise. 7734: * print-tree.c (dump) [REAL_IS_NOT_DOUBLE]: output float value 7735: in hex, since we don't know how to do it right. 7736: 7737: Sat Dec 31 14:15:13 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7738: 7739: * optabs.c (init_optabs): Handle new macros {U,}MULSI3_LIBCALL, 7740: DIVSI3_LIBCALL, MODSI3_LIBCALL. 7741: * tm-sparc.h: Define {,U}{MUL,DIV,MOD}SI3 to call Sun's library direct. 7742: 7743: * tm-sun3-nfp.h, tm-sun3-fpa.h: New files. 7744: 7745: Fri Dec 30 00:14:36 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7746: 7747: * cccp.c (main): Certain envvars specify a file to write deps info to. 7748: 7749: * toplev.c (compile_file): Warn about undefined fns declared static. 7750: 7751: * m68k.md (casesi_2 recognizer) [SGS] RTX_INTEGRATED_P test backwards. 7752: * tm-3b1.h (ASM_OUTPUT_CASE_LABEL): Likewise. Also missing `\'. 7753: 7754: * reload1.c (count_occurrences): New function. 7755: (choose_reload_targets): Don't delete a reload if the same reg 7756: is used elsewhere in the current insn. 7757: (delete_output_reload): code split out from choose_reload_targets. 7758: 7759: * c-typeck.c (build_c_cast): Always put on some operator, 7760: so the cast is never an lvalue for strict ANSI. 7761: 7762: * c-typeck.c (initializer_constant_valid_p): Don't depend on 7763: distinction between NOP_EXPR and CONVERT_EXPR. 7764: 7765: * c-convert.c: Fns reordered; new comments. 7766: 7767: * fold-const.c (fold): If simplifying a NOP_EXPR within a BIT_AND_EXPR, 7768: return a NOP_EXPR. 7769: New var TYPE holds type of expr. 7770: 7771: * c-parse.y (expr_no_commas): Split off cast_expr and unary_expr, 7772: to reject `sizeof (int) foo'. 7773: 7774: * toplev.c (main): Treat plain `-' as input filename. 7775: 7776: * final.c (final): If an insn's output routine returns 0, 7777: it means to output the deleted compare insn immediately preceding. 7778: 7779: * m68k.md (branch insns): Use 0 as 3rd arg for OUTPUT_JUMP 7780: rather than explicitly clearing the overflow flag. 7781: 7782: * tm-i386.h (OUTPUT_JUMP): Really use NO_OV; don't abort. 7783: * i386.md (branch insns): Put real data (sometimes 0) in 3rd arg 7784: of OUTPUT_JUMP. 0 means preceding test may not be deleted. 7785: (lea pattern): Clear the cc's. 7786: * output-i386.c (notice_update_cc): various arith insns set the cc's. 7787: 7788: Thu Dec 29 13:22:01 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7789: 7790: * stmt.c (expand_decl_init): Do nothing for static decls. 7791: 7792: * reload.c (find_reloads_address{,_1}): Return 1 iff entire arg 7793: was reloaded as a whole, else 0. 7794: (find_reload): If find_reloads_address returns 1, don't let that MEM 7795: satisfy a `>' or `<' constraint. 7796: 7797: * m68k.md (cmpmb): Delete special pattern, make cmpqi handle it. 7798: The special pattern couldn't handle reloading the incremented register. 7799: 7800: * integrate.c (copy_rtx_and_substitute): Test BYTES_BIG_ENDIAN, 7801: not BITS... 7802: 7803: * combine.c (subst): Consider big-endian correction 7804: when simplifying (subreg (mem ...) ...). 7805: 7806: * reload.c (find_reloads): Don't crash if matching operands in `asm' 7807: are both read or both write. 7808: 7809: * expr.c (emit_push_insn): Address for movstr must be XINNER, not X. 7810: 7811: * toplev.c (main): Typo parsing `-fno...'. 7812: 7813: Wed Dec 28 13:07:21 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7814: 7815: * toplev.c (rest_of_compilation): `volatile' fns need jump_optimize 7816: for warnings, as if -Wreturn-type. 7817: * c-typeck.c (c_expand_return): Warn about `return' in a `volatile' fn. 7818: * c-decl.c (finish_function): Warn if `volatile' fn can drop thru end. 7819: 7820: * cse.c (canon_reg): Handle nulls as subexpressions. 7821: (fold_rtx, canon_hash, mention_regs, exp_equiv_p): Likewise. 7822: * loop.c (invariant_p, replace_regs, replace_call_address, may_trap_p, 7823: {basic,general}_induction_var): Likewise. 7824: 7825: * expr.c (expand_call): Handle `const' functions: 7826: Local IS_CONST is 1 if function is const. 7827: Attach REG_RETVAL and REG_LIBCALL notes around the call. 7828: Copy fn address to register outside of those notes. 7829: Likewise precompute all parms outside them. 7830: 7831: * expr.c (expand_call): If fn is volatile, emit barrier after the call. 7832: 7833: * c-decl.c (grokdeclarator): Allow function declared const or volatile. 7834: 7835: Sat Dec 24 18:40:12 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7836: 7837: * integrate.c (function_cannot_inline_p): If STRUCT_VALUE_INCOMING 7838: or STRUCT_VALUE is defined, can't inline functions returning BLKmode. 7839: 7840: Fri Dec 23 13:26:26 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7841: 7842: * expr.c (store_constructor): Compute array's size 7843: with int_size_in_bytes. 7844: 7845: * varasm.c (assemble_variable): If shared data, go to data section 7846: before outputting an uninitialized symbol. 7847: 7848: * tm-sequent.h (ASM_OUTPUT_ALIGN_CODE): Missing backslash. 7849: (SHARED_SECTION_ASM_OP): Macro defined. 7850: * tm-seq386.h (SHARED_SECTION_ASM_OP): Macro defined. 7851: 7852: * c-typeck.c (c_expand_asm_operands): Warn if output op is `const'. 7853: 7854: * Fix problem where a stmt expr in an initialization 7855: refers to the variable it is initializing. 7856: * stmt.c (expand_decl_init): New fn split out from `expand_decl'. 7857: * c-decl.c (finish_decl): Call that. 7858: Don't call expand_decl if already done. 7859: (start_decl): Call expand_decl if type is complete already. 7860: 7861: * Makefile (install): Typo in ranlib command. 7862: 7863: Thu Dec 22 15:57:12 1988 Richard Stallman (rms at sugar-bombs.ai.mit.edu) 7864: 7865: * tree.h (tree_identifier): New field. 7866: (IDENTIFIER_ERROR_LOCUS): Accessor for it. 7867: * c-parse.y (primary => IDENTIFIER): 7868: Undeclared variable gets one err msg per function it appears in. 7869: 7870: * ns32k.md (andsi3): Delete extra brace. 7871: 7872: * alliant.md, xm-alliant.h, tm-alliant.h, output-alliant.c: New files. 7873: 7874: * combine.c (SUBST, SUBST_INT): Store new field `is_int'. 7875: (copy_substitutions): Don't copy an int as an rtx. 7876: 7877: * Makefile (INSTALL): Install gcc.1 properly. 7878: 7879: * tm-ns32k.h (FUNCTION_PROLOGUE, ASM_OUTPUT_ALIGN_CODE): 7880: Add missing backslashes. 7881: 1.1.1.9 root 7882: See file OChangeLog. 1.1 root 7883: 7884: Local Variables: 7885: mode: indented-text 7886: left-margin: 8 7887: fill-column: 76 7888: version-control: never 7889: End:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.