📄 changelog.3
字号:
Tue Jul 9 22:21:22 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * loop.c (find_and_verify_loops): RETURN insns aren't listed in loop_number_exit_labels, so don't try to remove JUMP_LABEL of a RETURN from that list. * rtlanal.c (reg_referenced_between_p): New function. * jump.c (jump_optimize): Use it instead of reg_used_between_p when checking for "if (...) x = a; else x = b;" case.Tue Jul 9 13:03:53 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * expr.c (move_block_to_reg): Don't force_const_mem on non-constant.Tue Jul 9 09:13:32 1991 Tom Wood (wood at dg-rtp.dg.com) * c-decl.c (finish_struct): Record tagged types as a TYPE_DECL with a NULL DECL_NAME. (finish_enum): Ditto. * cplus-decl.c (finish_enum): Ditto. * cplus-class.c (finish_struct): Ditto. * dbxout.c (dbxout_symbol): Ignore TYPE_DECLs for tagged types. * cplus-dbxout.c (dbxout_symbol): Ditto. * sdbout.c (sdbout_symbol): Ditto. * toplev.c (compile_file): DECL_NAME may be null. * dwarfout.c (output_symbol): Use output_dies_for_tagged_type for TYPE_DECLs of tagged types. (dwarfout_output_tagged_type): Deleted. (output_dies_for_tagged_type): Mark TREE_ASM_WRITTEN early.Mon Jul 8 19:36:44 1991 Tom Wood (wood at dg-rtp.dg.com) * jump.c (jump_optimize): Check for extra labels when detecting "if (...) x = a; else x = b;". Include the insn for "x = a;" when testing for data conflict.Mon Jul 8 19:34:14 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * integrate.c (copy_for_inline, case MEM): Must copy a MEM even if it has a constant address if that address involves a LABEL_REF. * rtlanal.c (reg_set_p): Only check for REG_INC notes and a CALL_INSN if we are passed an insn. * local-alloc.c (optimize_reg_copy): Remove tests now done in reg_set_p.Mon Jul 8 16:38:49 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * c-parse.y (yylex): Pedantic warning here for `asm'. No warning for `__asm__'. (maybe_type_qual, maybeasm, extdef): No warning here. * objc-actions.c: Rename OBJC_SELS_R_INTS to OBJC_INT_SELECTORS. Rename OBJC_UNIQUE_SELS to OBJ_NONUNIQUE_SELECTORS, reversing sense. Eliminate OBJC_SELS_R_STRUCT_PTRS.Mon Jul 8 06:37:00 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * rtlanal.c (reg_{used,set}_between_p): Allow FROM_INSN == TO_INSN; return 0 in that case. * jump.c (mark_jump_label): Fix typo in use of GET_RTX_LENGTH. * reload.c (reload_strict_low): Change comment to say that this is always zero; we don't use it any more.Sun Jul 7 22:14:13 1991 Michael Meissner (meissner@churchy.gnu.ai.mit.edu) * tm-mips.h (FRAME_POINTER_REQUIRED): Fix typo that required a frame if alloca was not called, instead of the reverse.Sun Jul 7 17:14:17 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * cccp.c (struct file_buf): New field system_header_p. Everything that pushes on instack now initializes this field. (finclude): New arg to set that field. Callers changed. (do_include): Pass that arg as 1 for <...>, else 0. * cccp.c (do_include): Warn for first use of #import except in system header files. (handle_directive): Support #import if compiling for Next. * cccp.c (do_pragma): For #pragma once, warn it is obsolete.Sun Jul 7 14:29:04 1991 James Van Artsdalen (james at bigtex.cactus.org) * tm-att386.h (NO_DOLLAR_IN_LABEL): Define this here, * tm-i386sco.h (NO_DOLLAR_IN_LABEL): not here.Sun Jul 7 06:20:03 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * rtlanal.c (reg_set_p): Return 1 if REG is found in a REG_INC note or if INSN is a CALL_INSN and REG is a hard reg. (reg_set_last): Only return a register or constant; if returning a register, ensure it isn't modified between the SET we found and INSN. * jump.c (jump_optimize): If SMALL_REGISTER_CLASSES, don't make a store-flag insn if any register involved is a hard reg.Sat Jul 6 14:51:15 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * expr.c (expand_assignment): Don't abort for volatile structure field even if the structure is in a register. NOTE: This leaves the problem of implementing whatever meaning a volatile field should actually have. * fold-const.c (div_and_round_double): Make lnum and lden unsigned. Use the small-denominator algorithm only for denom < 2**24. Fix backward conditionals in ?: operators in general case. Change i + j to i - 1 + j when indexing num.Fri Jul 5 21:36:57 1991 Ken Raeburn (raeburn at watch.com) * genpeep.c (match_rtx, case MATCH_OP_DUP): Output semicolon after "goto" statement.Fri Jul 5 09:45:56 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * rs6000.md (andsi3): Bias alternatives so we always prefer constants. (define_splits of DImode, SFmode, and DFmode): Don't split unless after reload. (ashldi3, lshrdi3): Fix bugs in instruction order; use & in output constraint so can't conflict with operand 2; use '0' constraint to allow operands 0 and 1 to be the same register. * regclass.c (reg_n_sets): Move definition before use. * reorg.c (fill_simple_delay_slots): Candidate for delay slot cannot set anything set between it and the delay insn. * jump.c (jump_optimize): In "if (...) x = a; else x = b;", correctly specify range to check if X is used or set. Use rtx_equal_p to check for matching X.Thu Jul 4 15:55:45 1991 Tom Wood (wood at geech.gnu.ai.mit.edu) * cccp.c (default_include): Add /usr/mach/include for MACH systems. * configure (m88k-luna): Needs make-m88kluna. * make-m88kluna: New file. * dwarf.h: New file derived from the UNIX International Programming Languages Special Interest Group DWARF specification. * dwarfout.c (includes): Include "dwarf.h". (subscript_data_attribute): Use FMT_CODE to encode array subscripts. (languagribute): LANG type no longer provided by dwarf.h. (output_source_file_die): Determine proper language attribute.Thu Jul 4 12:14:16 1991 James Van Artsdalen (james at bigtex.cactus.org) * cplus-xref.c: define rindex if USGThu Jul 4 12:36:55 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * gcc.c (process_command): Correctly split -L from its arg. * SWITCHES_NEED_SPACES: New host machine option. This really ought to be defined now for certain hosts, but I don't know which ones they are.Wed Jul 3 23:31:00 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * tm-m68k.h (ASM_OUTPUT_FLOAT): Check CROSS_COMPILE (there was a typo).Wed Jul 3 22:05:55 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * cse.c (simplify_binary_operation, case MINUS): Fix typo in op number. * cse.c (cse_basic_block): Correctly handle the case where TO was a label with zero uses at the end of the function. * combine.c (significant_valid): New variable. (combine_instructions): Turn significant_valid off until after we finished computing reg_significant. (significant_bits): Ignore reg_significant when significant_valid is zero. * rtlanal.c (reg_set_last): Go past CALL_INSN as long as we are not looking for a hard register.Wed Jul 3 21:07:18 1991 Jim Wilson (wilson at wookumz.gnu.ai.mit.edu) * sched.c (schedule_block): When computing what registers are dead at the end of the current block, correctly handle REG_DEAD notes that refer to multi-word hard registers. * loop.c (mark_loop_jump): When invalidating loops with multiple entries, must invalidate every nested loop containing the target of a loop entry jump, except for those that also contain the jump itself. * loop.c (record_giv): When computing whether a giv is replaceable, check whether the biv update has a valid luid, and mark it as not replaceable if not. * combine.c (gen_rtx_combine): Call rtx_alloc instead of gen_rtx, because it is much faster, especially on some RISC machines. * fixincludes: Add optional argument which indicates where to put the fixed include files. Echo the directory name where the include files will be put. * cccp.c (struct default_include): Don't examine STANDARD_INCLUDE_DIR or /usr/local/include when NO_STANDARD_INCLUDE_DIR is defined. This is useful when building cross compilers. (main): Only send SIGPIPE signal if the SIGPIPE signal exists on the host. (rescan, handle_directive, skip_if_group, validate_else, skip_to_end_of_comment, macarg1, discard_comments): Accept '//' as a comment in Objective-C as well as C++. The Objective C language specifies that '//' starts a comment. * .gdbinit (ptn): Define new macro to print out the name of a type node. * stab.def: Correct errors in table for values of DSLINE and BSLINE. Document the conflict between BROWS and BSLINE. Document the value of the BROWS field.Tue Jul 2 23:26:20 1991 Michael Meissner (meissner at pogo.gnu.ai.mit.edu) * mips-tfile.c (toplevel): Add a comment explaining the MIPS ECOFF file format at the start of the file.Tue Jul 2 14:00:39 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * c-typeck.c (build_array_ref): Report error here if the "array" is not an array or pointer. Don't leave this for the PLUS_EXPR. * cccp.c: Inlcude containing file names/lines in error messages. (print_containing_files): New function. (error*, warning): Call it. (finclude): Increment input_file_stack_tick when file changes. * cccp.c: Include descrip.h.Tue Jul 2 07:44:19 1991 Tom Wood (wood at geech.gnu.ai.mit.edu) * tm-m88k.h (ASM_OUTPUT_SOURCE_LINE): Define only for SDB. * tm-m88kdgux.h (AS_BUG_*): Support these for now. * c-decl.c (finish_struct): Invoke dwarfout_output_tagged_type only when producing DWARF debugging info. * cplus-class.c (finish_struct): Ditto.Mon Jul 1 23:03:34 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * toplev.c (compile_file): Close stack_reg_dump_file iff STACK_REGS.Mon Jul 1 15:17:57 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * combine.c (set_significant): Ignore CLOBBERs. (simplify_and_const_int, case SUBREG): Only ignore paradoxical SUBREGs if BYTE_LOADS_ZERO_EXTEND. (record_value_for_reg): Fix typo; had I for REGNO.Mon Jul 1 08:28:09 1991 Tom Wood (wood at dg-rtp.dg.com) * final.c (output_source_line): Output DWARF line numbers. * dwarfout.c (dwarfout_output_tagged_type): New function. * c-decl.c (finish_struct): Call it. * cplus-class.c (finish_struct): Call it. * dwarfout.c (includes): Need insn-config.h and reload.h. (location_attribute): Use eliminate_regs for correct expression. (output_bound_representation): Use SAVE_EXPR_RTL to get rtl and then use eliminate_regs. * reload1.c (reload): When finished, indicate reg_equiv_constant and reg_equiv_memory_loc are no longer valid. (eliminate_regs): Don't attempt use of reg_equiv_constant or reg_equiv_memory_loc if they aren't valid. No longer static. * reload.h: Declare eliminate_regs. * toplev.c (compile_file): Only call dwarfout_file_scope_symbol for VAR_DECLs. Sun Jun 30 15:49:39 1991 Ken Raeburn (raeburn at watch.com) * expr.c (expand_builtin, case BUILT_IN_MEMCPY): If alignment test fails, and function was really BUILT_IN_STRCPY, zero out length parameter before expanding call.Sun Jun 30 18:27:14 1991 Richard Kenner (kenner at vlsi1.ultra.nyu) * jump.c (jump_optimize): In "if (...) x = a; else x = b;", don't move the "x = b;" if the test modifies X or if X is a hard register and SMALL_REGISTER_CLASSES is defined. Turn "if (...) x = 1; else {...} if (x) ..." code on when we have cc0.Sun Jun 30 13:49:03 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * gnulib2.c (__builtin_saveregs): For i860, make data structure fit in with va-i860.h. * tree.c (gcc_obstack_init): Support OBSTACK_CHUNK_ALLOC and OBSTACK_CHUNK_FREE. * calls.c (prepare_call_address): 3rd arg now address of chain var. (expand_call): Call changed. * expr.c (emit_library_call): Call changed. * function.c (fix_lexical_addr): In recursive call, pass slot address. * Makefile.in (cse.o): Added deps. * Makefile.in (GNULIB2_CFLAGS): Use -O2. * gnulib1.c, gnulib2.c (abort): Undefine only if defined. * genattr.c (main): Fix typo in comment end.Sat Jun 29 21:57:28 1991 Torbjorn Granlund (tege at zevs.sics.se) * longlong.h (__sparc8__ umul_ppmm): Insert 3 nop:s for wr delay. * longlong.h (___IBMR2__): Define umul_ppmm, add_ssaaaa, sub_ddmmss.. * longlong.h (__sparc__): Don't call .umul; expand asm instead. Don't define __umulsidi3 (i.e. use default definition).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -