📄 changelog.8
字号:
Tue Jan 25 08:30:11 1994 Chip Salzenberg (chip@fin.uucp) * cse.c (HASHBITS): Removed. (HASH, struct set, canon_hash, safe_hash, remove_from_table): Generate and use unsigned hash values, to avoid potential trouble with signed shift/overflow. Also name variables consistently: "hash", not "hash_code". (lookup, lookup_for_remove, insert, merge_equiv_classes): Likewise. (invalidate, rehash_using_reg, invalidate_for_call): Likewise. (find_best_addr, record_jump_cond, cse_insn): Likewise.Mon Jan 24 18:59:59 1994 Jim Wilson (wilson@cygnus.com) * expmed.c (store_split_bit_field): For BYTES_BIG_ENDIAN, only pad on left if value not in memory. Reject gen_lowpart_common output if it returns the input value. * unroll.c (copy_loop_body): When delete simplified condjump, protect the label, so that it doesn't get deleted also. * toplev.c (compile_file): If yyparse returns an error, pop all pending binding levels.Mon Jan 24 18:30:53 1994 Doug Evans (dje@cygnus.com) * objc/Object.h (streamVersion, read, write): #ifndef out for the alpha since TypedStream not supported there yet. * objc/Object.m (streamVersion, read, write): Ditto.Mon Jan 24 17:40:56 1994 Jim Wilson (wilson@cygnus.com) * sparc.c (sparc_address_cost): Delete. * sparc.h (ADDRESS_COST): Define to 1. * bsd-5.h, mips-5.h, svr3-5.h, svr4-5.h (ASM_OUTPUT_NEWLINE): Define new macro. * mips.h (ASM_OUTPUT_NEWLINE): New default for new macro. (ASM_OUTPUT_ASCII): Use ASM_OUTPUT_NEWLINE. * sparc.h (ASM_OUTPUT_COMMON): Don't output .global. Use SIZE not ROUNDED. (ASM_OUTPUT_LOCAL): Delete. (ASM_OUTPUT_ALIGNED_LOCAL): Define.Sun Jan 23 18:57:01 1994 Richard Earnshaw (rwe11@cl.cam.ac.uk) * expr.c (do_jump_for_compare): Initialize JUMP_LABEL for the branch insn before trying to invert it.Sun Jan 23 18:40:23 1994 Samuel A. Figueroa (figueroa@cs.nyu.edu) * i386/os2.h (PATH_SEPARATOR): New macro. * i386/gas.h (ASM_FILE_START): Delete; identical to one in bsd.h, which is included.Sun Jan 23 18:21:23 1994 Randy S. Welch (randy@tss.com) * m68k/plexus.h: Assume GAS 2.x used and add support for debugging.Sun Jan 23 06:19:28 1994 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * reload.c (find_reloads): Properly test for output operand when changing RELOAD_FOR_OUTPUT_ADDRESS to RELOAD_FOR_INPUT_ADDRESS. * combine.c (subst, case SUBREG): Handle paradoxical SUBREG of constant. (IF_THEN_ELSE): Add missing "else" and check for comparison before calling reversible_comparison_p. * c-typeck.c (output_init_elements): Use FIELD instead of constructor_fields when doing alignment and sizing. (output_pending_init_elements): Don't blow up when writing other than first field put haven't written anything yet. Update constructor_bit_index when we emit a skip. * toplev.c (rest_of_compilation): Defer compilation of function that were specified as inline, whether or not they actually were inlined. * alpha.h (OBJECT_FORMAT_COFF, EXTENDED_COFF, NM_FLAGS): Define. * x-alpha: New file. * combine.c (simplify_comparison): Can remove NOT on both operands if we swap comparison code. * rs6000.md: Insert some missing blank lines. * alpha.c (output_{pro,epi}log): Use assemble_name to output alpha_function_name. * combine.c (simplify_comparison): Fix typos in last change.Sun Jan 23 05:59:31 1994 Per Bothner (bothner@cygnus.com) * c-typeck.c (really_start_incremental_init): Save current elements instead of clearing them.Sat Jan 22 15:50:29 1994 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * c-typeck.c (c_expand_return): Issue a warning if returning address of non-static local object. * combine.c (if_then_else_cond): Don't do anything with COMPARE. (simplify_comparison): Strip SIGN_EXTEND, NOT, or NEG when both operands have it. * combine.c (num_sign_bit_copies): Ifndef WORD_REGISTER_OPERATIONS, ensure we don't do the wrong thing if X is narrower than MODE.Thu Jan 20 01:06:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu) * pa.h (ASM_OUTPUT_SOURCE_LINE): Make the first source line stab for each procedure special to avoid the need for nasty hacks in GAS. * pa.md (iorscc): Fix typo.Wed Jan 19 19:35:37 1994 Torbjorn Granlund (tege@adder.cygnus.com) * pa.h (ASM_GLOBALIZE_LABEL): Don't globalize function labels here.Mon Jan 17 16:38:16 1994 Jim Wilson (wilson@mole.gnu.ai.mit.edu) * xcoffout.c (xcoffout_begin_block): Don't emit a .bb for the function level scope. (xcoffout_end_block): Don't emit a .eb for the function level scope.Sun Jan 16 14:29:31 1994 Richard Stallman (rms@mole.gnu.ai.mit.edu) * config.sub: Alphabetize the list of machine-name aliases. Add nh3000 and nh[45]000. Delete duplicate clauses for hp9k2... and hp9k31...Sat Jan 15 18:06:45 1994 Torbjorn Granlund (tege@blues.cygnus.com) * config/sparc/sparc.md (smulsi3_highpart): New pattern. (umulsi3_highpart): New pattern. * config/mips/mips.md (smulsi3_highpart): New pattern. (umulsi3_highpart): New pattern.Thu Jan 13 18:54:27 1994 Jim Wilson (wilson@cygnus.com) * iris3.h (CPP_SPEC): Define __SIZE_TYPE__, __PTRDIFF_TYPE__, and __mips. (SIZE_TYPE, PTRDIFF_TYPE): Delete. * mips.c (dfhigh, dflow, sfhigh, sflow): New variables. (mips_sw_reg_names): Consistently use $ as name prefix. (large_int): Handle 64 bit constants. (reg_or_0_operand, mips_const_double_ok): Don't examine CONST_DOUBLE internals. (mips_const_double_ok): Use REAL_VALUE_* macros. (simple_memory_operand): Add 64 bit support. Only test TARGET_GP_OPT to determine if doing gp optimizations. Pass address not MEM to eliminate_constant_term. Use SMALL_INT. (mips_fill_delay_slot): Add 64 bit support. (mips_move_1word): Add 64 bit support. Don't examine CONST_DOUBLE internals. (mips_move_2words): Likewise. (mips_address_cost): Pass address not MEM to eliminate_constant_term. Use SMALL_INT. (gen_int_relational): New variable mode. Add 64 bit support. (gen_conditional_branch): Add 64 bit support. (block_move_load_store, block_move_loop, block_move_call, expand_block_move, output_block_move, function_arg_advance, function_arg, function_arg_partial_nregs): Likewise. (override_options): Clear MASK_GPOPT if threshold is zero or negative. Set MASK_GPOPT if optimizing. Set mips_isa from -misa= option, else from MIPS_ISA_DEFAULT if defined, else to 1. Make default cpu depend on isa. Add cpus r4400, r4600, orion. Rewrite TARGET_NAME_REGS support. Initialize dfhigh, dflow, sfhigh, sflow. Add 64 bit support. (print_operand): Use REAL_VALUE_* macros. (mips_output_external): Don't depend on mips_section_threshold. (make_temp_file): Define P_tmpdir when __MSDOS__. Malloc filename string. Don't unlink temp file when __MSDOS__. (mips_asm_file_start): Delete TARGET_NAME_REGS support. (mips_asm_file_end): Unlike temp file when __MSDOS__. (mips_declare_object): Don't test mips_sections_threshold. (compute_frame_size, save_restore_insns, function_prologue, mips_expand_prologue, function_epilogue, mips_expand_epilogue): Add 64 bit support. (function_epilogue): Correctly output `#' before .set volatile. * mips.h (enum cmp_type): Add 64 bit support. (enum processor_type): Add PROCESSOR_R4600. (MASK_64BIT, TARGET_64BIT): New mask bit, to indicate 64 bit mode. (HAVE_64BIT_P, OPTIMIZATION_OPTIONS): Delete. (CPP_SPEC): Don't abort if not defined. (CC1_SPEC): -mips1 and -mips2 imply -mfp32. -mips3 implies -mfp64. (CPP_SPEC): Define __SIZE_TYPE__, __PTRDIFF_TYPE__, and __mips. (BITS_PER_WORD, UNITS_PER_WORD, INT_SIZE_TYPE, LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE, POINTER_SIZE, POINTER_BOUNDARY, PARM_BOUNDARY, EMPTY_FIELD_BOUNDARY, HARD_REGNO_NREGS, CONST_OK_FOR_LETTER_P, STACK_ARGS_ADJUST, FUNCTION_PROFILER, TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE, TRAMPOLINE_ALIGNMENT, INITIALIZE_TRAMPOLINE, CASE_VECTOR_MODE, MOVE_MAX, TRULY_NOOP_TRUNCATION, Pmode, FUNCTION_MODE, ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Add 64 bit support. (MAX_BITS_PER_WORD, MAX_UNITS_PER_WORD, UNITS_PER_FPREG, MAX_INT_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE, MAX_LONG_TYPE_SIZE, MAX_MOVE_MAX): Define. (INDEX_REG_CLASS): NO_REGS not GR_REGS. (CONST_DOUBLE_OK_FOR_LETTER_P): Don't examine CONST_DOUBLE internals. (PREFERRED_RELOAD_CLASS): Return CLASS if it isn't ALL_REGS. (TRANSFER_FROM_TRAMPOLINE, ASM_OUTPUT_CASE_LABEL): Delete. (REGNO_OK_FOR_INDEX_P, REG_OK_FOR_INDEX_P): Redefine to 0. (GO_IF_LEGITIMATE_ADDRESS): Delete redundant code0 == REG test. (ENCODE_SECTION_INFO): Don't test mips_section_threshold. (CONST_COSTS): CONST_INT have cost 0 not CONSTS_N_INSNS (0). Pass address not MEM to eliminate_constant_term. Add 64 bit support. (MEMORY_MOVE_COST, ASM_OUTPUT_DOUBLE_INT): Define. (EXTRA_SECTIONS): Delete in_last_p1. (SELECT_RTX_SECTION): Delete division by BITS_PER_UNIT. (NO_BUILTIN_SIZE_TYPE, NO_BUILTIN_PTRDIFF_TYPE): Define. (SIZE_TYPE, PTRDIFF_TYPE): Add 64 bit support. * mips.md (cpu): Add r4600. (define_function_unit): Correct numerous errors. Add r4600. (adddi3*, subdi3*, mulsidi3, umulsidi3, negdi2*, one_cmpdl2*, nordi2*, anddi2*, iordi3*, xordi3*, movdi*, ashldi3*, ashrdi3*, lshrdi3*, seq, sne, sgt, sge, slt, sle, sgtu, sgeu, sltu, sleu, indirect_jump, tablejump, call*, call_value*): Add 64 bit support. (adddi3_internal_3, addsi3_internal_2, subdi3_internal_3, subsi3_internal_2, muldi3, muldi3_internal, divmoddi4, udivmoddi4, divdi3, moddi3, udivdi3, umoddi3, absdi3, ffsdi2, negdi2_internal_2, anddi3_internal1, xordi3_immed, truncdisi2, truncdihi2, truncdiqi2, zero_extendsidi2, zero_extendsidi2_interal, zero_extendhidi2, zero_extendqidi2, extendsidi2, extendhidi2, extendhidi2_internal, extendqidi2, extendqidi2_insn, fix_truncdfdi2, fix_truncsfdi2, floatdidf2, floatdisf2, fixuns_truncdfdi2, fixuns_truncdfsi2, ashldi3_internal4, ashrdi3_internal_4, lshrdi3_internal4, cmpdi, tstdi, branch_zero_di, branch_equality_di, seq_di_zero, seq_di, sne_di_zero, sne_di, sgt_di, sge_di, slt_di, sle_di_const, sle_di_reg, sgtu_di, sgeu_di, sltu_di, sleu_di_const, sleu_di_reg, indirect_jump_internal1, indirect_jump_internal2, tablejump_internal1, tablejump_internal2): New patterns. (mulsi3): Add missing mips_move_1word parameter. (mulsi3+1): Don't split on r4000. (divmodsi4, udivmodsi4, udivsi3, umodsi3): Correct lengths. (divsi3, modsi3, udivsi3, umodsi3): Allow constant operands. (sqrtdf2, sqrtsf2): Correct type attribute. (abssi2): Add mips2 support. (movsi_unaligned, movsi_ulw, movsi_usw): Comment out. (movsf, movdf): Use F not E. (cmpdf, cmpsf, branch_fp*, s{eq,ne,lt,le,gt,ge}_[ds]f): Depend on TARGET_HARD_FLOAT. * va-mips.h: Add 64 bit support.Thu Jan 13 06:14:17 1994 Paul Eggert (eggert@twinsun.com) * c-parse.in (maybe_attribute): Allow multiple __attribute__ clauses on a declaration.Thu Jan 13 06:01:09 1994 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * a29k.h (REG_CLASS_CONTENTS): Fix problems with last word of register set in some classes. * a29k.h (MEMORY_MOVE_COST): New macro.Thu Jan 13 05:42:30 1994 Torbjorn Granlund (tege@adder.cygnus.com) * config.sub: Fix typo in -hiux* case.Wed Jan 12 13:25:12 1994 Per Bothner (bothner@kalessin.cygnus.com) * dbxout.c (dbxout_range_type): If the range has a base type (TREE_TYPE), emit it, even if that is some other integer type.Wed Jan 12 06:02:23 1994 David Edelsohn (edelsohn@npac.syr.edu) * rs6000.h (MASK and TARGET): Change POWERPCSQR to PPCFPX to describe both fsqrt and fsel. (TARGET_SWITCHES): powerpc64 implies ppcfpx. * rs6000.c (rs6000_override_options): Change POWERPCSQR to PPCFPX. * rs6000.md (sqrtsf2, sqrtdf2): Change POWERPCSQR to PPCFPX. (maxsf3, minsf3, maxdf3, mindf3): New patterns using fsel instruction.Tue Jan 11 19:14:31 1994 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * a29k.c (output_prolog): Update debug reg map when we have -mkernel-registers. * fold-const.c (fold, truth_andor): Don't apply distributive law when it would change evaluation order. Clean up code a bit to improve flow.Mon Jan 10 19:37:27 1994 David Robinson (drtr@mail.ast.cam.ac.uk) * expr.c (emit_move_insn_1): Call gen_realpart and gen_imagpart instead of gen_lowpart and gen_highpart. * function.c (assign_parms): Likewise. * optabs.c: Remove redundant prototype for gen_highpart.Mon Jan 10 19:14:07 1994 Richard Earnshaw (rwe11@cl.cam.ac.uk) * jump.c (comparison_dominates_p): NE is dominated by LT, GT, LTU and GTU.Mon Jan 10 19:06:57 1994 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * emit-rtl.c (gen_{real,imag}part): Extract value from CONCAT directly. (gen_lowpart_common, gen_highpart): Don't do it here. * cse.c (simplify_relational_operation): Don't do anything with CC0 in addition to MODE_CC values. * expr.c (protect_from_queue): If (MEM (QUEUED ...)), modify a new MEM instead of the one we were passed. * i386/linux.h: Update banner, reformat comments. (STARTFILE_SPEC, GPLUSPLUS_INCLUDE_DIR): No longer conditional on CROSS_COMPILER. * Makefile.in (gcc.o, cccp.o): No longer define TOOLDIR. * regclass.c (globalize_reg): New function. (init_reg_sets_1): Don't handle global regs here. * varasm.c (make_decl_rtl): Call globalize_reg, not init_reg_sets_1. * a29k.c (print_operand, case 'F'): If we have to do the last prolog insn, give that priority for an unfilled delay slot. * function.c (preserve_rtl_expr_result): New function. * expr.c (exand_expr, case RTL_EXPR): Call it.Mon Jan 10 13:43:04 1994 Jim Wilson (wilson@cygnus.com) * sched.c (new_insn_dead_notes): Compare registers with rtx_equal_p. * Makefile.in (Makefile, stmp-fixinc, deduced.h, stmp-fixproto): Execute shell scripts with $(SHELL). * config/x-lynx (SHELL): Define to /bin/bash.Sun Jan 9 22:31:00 1994 Jeffrey A. Law (law@snake.cs.utah.edu) * pa.md (special indexed fpstores): Fix assorted typos.Sun Jan 9 04:34:17 1994 James Van Artsdalen (james at bigtex.cactus.org) * jump.c (follow_jumps): Don't follow tablejumps. * Makefile.in (install-headers-cpio): Run cpio in include-dir.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -