⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog.10

📁 GCC编译器源代码
💻 10
📖 第 1 页 / 共 5 页
字号:
	* combine.c (simplify_if_then_else): Allow for case that	condition might no longer be a condition.Mon Mar 18 19:14:42 1996  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)	* c-typeck.c (build_conditional_expr): If OP1 is null, set	both OP1 and ORIG_OP1 to IFEXP.	* c-iterate.c (iterator_loop_epilogue): Don't clear DECL_RTL	for a static decl.Mon Mar 18 08:02:25 1996  Stephen L Moshier <moshier@world.std.com>	* alpha.c (summarize_insn, case SUBREG, CONST_*): New cases.Sun Mar 17 16:55:00 1996  Doug Evans  <dje@cygnus.com>	* combine.c (find_split_point): Handle NULL return from	make_extraction.	(make_field_assignment): Likewise.Sat Mar 16 18:56:47 1996  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)	* tree.c (substitute_in_expr, case COMPONENT_REF): Ignore	if inner PLACEHOLDER_EXPR has not yet been initialized.	* i386.c (standard_80386_constant_p): -0.0 is not 0.0.	* i386.md (insv): Restore missing end of comment.	* combine.c (make_extraction): Correct typo in force_to_mode	call in previous change.	Return 0 if pos+len out of range of want desired mode.Sat Mar 16 16:20:43 1996  David Mosberger-Tang  <davidm@azstarnet.com>	* alpha.md (trap): New attribute.	Modify patterns for all floating-point trap generating instructions.	* alpha.h (CPP_SPEC): Added -mieee and -mieee-with-inexact.	(alpha_trap_precision, alpha_fp_rounding_mode, alpha_fp_trap_mode):	New enum types.	(target_flags, alpha_tp, alpha_fprm, alpha_fptm): New external vars.	(alpha_fprm_string, alpha_fptm_string, alpha_tp_string): Likewise.	(TARGET_IEEE{,_WITH_INEXACT,_CONFORMANT}): New macros.	(MASK_IEEE{,_WITH_INEXACT,_CONFORMANT}): Likewise.	(MASK_FP, MASK_FPREGS,	(TARGET_SWITCHES): Added "ieee-conformant", "ieee", and	"ieee-with-inexact"; use MASK symbols.	(TARGET_OPTIONS): New macro.	(OVERRIDE_OPTIONS, FINAL_PRESCAN_{INSN,LABEL}): New macros.	(PRINT_OPERAND_PUNCT_VALID_P): Allow operand codes for FP insns.	(CC1_SPEC): New macro.	* alpha.c (alpha_tp, alpha_fprm, alpha_fptm): New variables.	(alpha_tp_string, alpha_fprm_string, alpha_fptm_string	(trap_pending): Likewise.	(override_options, summarize_insn, final_prescan_insn): New functions.	(print_operand): Handle cases '&', '\'', ')', and '+'.	(output_prolog): Emit ".eflag 48" if TARGET_IEEE_CONFORMANT.	(output_epilog): Call final_prescan_insn before emitting epilog.	* final.c (final_scan_insn, case CODE_LABEL): Invoke	FINAL_PRESCAN_INSN if FINAL_SCAN_LABEL is defined.	* alpha/{linux.h,x-linux,xm-linux.h}: New files.	* configure (alpha-*-linux*): New case.	* alpha.c (output_prolog): Set alpha_function_needs_gp if profiling	and TARGET_PROFILING_NEEDS_GP defined.Thu Mar 14 22:28:20 1996  David Edelsohn  <edelsohn@mhpcc.edu>	* rs6000.h (LEGITIMATE_OFFSET_ADDRESS_P): Fix last change.	* aix41.h (LINK_SPEC): add -bnoentry if shared and no explicit entry.Thu Mar 14 12:47:33 1996  Jim Wilson  <wilson@cygnus.com>	* mips.h (ASM_OUTPUT_DOUBLE_INT): Use 'X' if CONST_INT and	HOST_BITS_PER_WIDE_INT == 64.	* mips.c (mips_expand_prologue): Change TYPE_NEEDS_CONSTRUCTING to	TREE_ADDRESSABLE;Thu Mar 14 11:21:37 1996  Michael Meissner  <meissner@tiktok.cygnus.com>	* rs6000.h (LEGITIMATE_OFFSET_ADDRESS_P): For 32-bit mode,	allow TImode variables with int offsets, so that structures	greater than 8 bytes and less than or equal to 16 bytes can be	instantiated correctly.	* rs6000.c (rs6000_valid_type_attribute_p): Add exception	attribute for Windows NT.	* win-nt.h (ASM_OUTPUT_FUNCTION_PREFIX): Delete, merge into	ASM_DECLARE_FUNCTION_NAME.	(ASM_DECLARE_FUNCTION_NAME): Add support for exception attribute	setting fields 3 & 4 of the structured exception handling table.Thu Mar 14 01:53:19 1996  Jeffrey A. Law  <law@cygnus.com>	* pa.h (ASM_DECLARE_FUNCTION_NAME): Change TYPE_NEEDS_CONSTRUCTING	to TREE_ADDRESSABLE.  From Jim Wilson.Wed Mar 13 13:40:32 1996  Jim Wilson  <wilson@chestnut.cygnus.com>	* c-tree.h (warn_sign_compare): Add extern to declaration.Wed Mar 13 13:37:00 1996  Doug Evans  <dje@cygnus.com>	* configure: Use cross-make and build-make if building	cross compiler with cross compiler.Wed Mar 13 12:00:34 1996  Michael Meissner  <meissner@tiktok.cygnus.com>	* i386/cygwin32.h (ASM_OUTPUT_ALIGN): Correct defination.	* rs6000/{win-nt,cygwin32}.h (STARTFILE_SPEC): Add crti.o before	all objects.	(ENDFILE_SPEC): Add crtn.o after all objects.	* configure (powerpcle-*-cygwin32): Use t-winnt, not t-cygin32	* rs6000/t-cygwin32: Delete, no longer used.	* rs6000/t-winnt ({,INSTALL_}LIBGCC): Build and install crti.o and	crtn.o.	* rs6000/win-nt.h (EXTRA_SECTION_FUNCTIONS): Add ctors_section and	dtors_section.	(INVOKE__main): Define, so that __main is called.	(ASM_OUTPUT_{CONSTRUCTOR,DESTRUCTOR}): Define to put pointers to	the constructor/destructor in the appropriate section.	* nt-c{i,n}.asm: New files to be linked before/after all of the users'	objects.Wed Mar 13 00:42:17 1996  Per Bothner  <bothner@cygnus.com>	* dbxout.c (dbxout_type):  Better "variant" handling to ignore	const/volatile but not typedef names.  Improves Feb 12 change.Tue Mar 12 17:25:14 1996  David Mosberger-Tang  <davidm@azstarnet.com>	* glimits.h (__LONG_MAX__): On Alpha, use 64 bit value.Tue Mar 12 15:07:49 1996  Torbjorn Granlund  <tege@tmg.se>	* m68k.c (valid_dbcc_comparison_p): Don't test cc_prev_status here.	(flags_in_68881): New function.	* m68k.md (dbra peepholes): Use flags_in_68881.Tue Mar 12 13:54:15 1996  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)	* sparc.md (nonlocal_goto): Emit barrier after jump.	(setjmp{,_64,_32}): New patterns.Tue Mar 12 12:43:27 1996  Jim Wilson  <wilson@cygnus.com>	* i960.h (ROUND_TYPE_SIZE): Return round_up result instead of	COMPUTED.	* expr.c (expand_expr, case COMPONENT_REF): For unaligned object in	an aligned union, delete check for EXPAND_SUM.	* expr.h (clear_storage): Add comment terminator.Mon Mar 11 19:07:50 1996  Jeffrey A. Law  <law@cygnus.com>	* recog.c (constrain_operands, case 'V'): Don't call	offsettable_memref_p before reload has completed.Mon Mar 11 16:06:13 1996  Doug Evans  <dje@cygnus.com>	* h8300.h (SP_AND_G_REGS): Renamed from SP_AND_G_REG.	(CC_DONE_CBIT): Delete.	(CC_OVERFLOW_0,CC_OVERFLOW_UNUSABLE,CC_NO_CARRY): Define.	* h8300.c (cond_string): Delete CC_DONE_CBIT handling.	(notice_update_cc): Delete CC_CBIT, CC_WHOOPS.  Add CC_SET_ZN_C0.	(restore_compare_p): New function.	(shift_one): Use shll instead of shal so overflow bit is usable.	Set cc_valid bits to cc_status.flags values.	(emit_a_shift): Set cc_status.flags.	* h8300.md (attr cc): Delete whoops,cbit.  Add set_zn_c0.	(all patterns) Update cc attr setting.	(tstqi,tsthi,tstsi): Delete CC_DONE_CBIT handling.	(addhi3,subhi3): Change define_expand to define_insn.	(branch_true,branch_false): Check if compare needs to be restored.Mon Mar 11 13:55:23 1996  Michael Meissner  <meissner@cygnus.com>	* rs6000.h (CONST_DOUBLE_OK_FOR_LETTER_P): Add 'H' for movdi	patterns in 32 bit that generate 3 instructions.	(num_insns_constant): Add declaration.	* rs6000.c (num_insns_constant{,_wide}) Functions to determine the	number of insns it takes to generate an integer constant.	(easy_fp_constant): Allow DImode in easy constants.  Use	num_insns_constant_wide.	(input_operand): Allow any CONST_{INT,DOUBLE}'s for {SI,DI}mode.	* rs6000.md (movdi): Generate a normal movdi using a CONST_DOUBLE	for 32 bit mode rather than using SUBREG's.  For 64 bit mode,	break large integer constants into smaller pieces.  Add various	define_splits to handle loading the various DImode constants.Mon Mar 11 06:54:19 1996  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)	* combine.c (make_extraction): Use proper mode for INNER in all cases.	(simplify_comparison, case ZERO_EXTRACT): For bits big endian and	no extzv, use BITS_PER_WORD.	* fx80.md, gmicro.md, i386.md, m68k.md, tahoe.md, vax.md:	Use proper modes and predicates for {sign,zero}_extract.Sun Mar 10 06:23:52 1996  J"orn Rennecke (amylaar@meolyon.hanse.de)	* emit-rtl.c (free_insn): New variable.	(init_emit, restore_emit_status): Clear it.	(gen_sequence): Store insn in free_insn when sequence length is 1.	(make_insn_raw): Use free_insn if available and still in the	rtl generation phase.Fri Mar  8 15:37:31 1996  Mike Stump  <mrs@cygnus.com>	* expr.c (expand_expr, case TARGET_EXPR): Delay putting the cleanup	on the cleanup chain until after the subexpression has been expanded.Fri Mar  8 16:14:51 1996  J"orn Rennecke (amylaar@meolyon.hanse.de)        * i386.c (ix86_binary_operator_ok): One memory operand is OK.        This is independent of commutativity.Fri Mar  8 14:07:43 1996  Jim Wilson  <wilson@cygnus.com>	* expr.c (store_constructor_field): Call store_field if bitpos is	nonzero and target is not a MEM.	* jump.c (jump_optimize): When handle a USE insn before an	unconditional jump, disable the optimization if the USE is the	only insn in the loop.	* sh.c (reg_unused_after): Return 0 if see a JUMP_INSN.Fri Mar  8 12:08:36 1996  Doug Evans  <dje@cygnus.com>	* sparc/lynx.h (CPP_SPEC): Use %(cpp_cpu).	* sparc/sparc.md (move_pic_label_si,move_label_di): Rewrite length	attr calcs to be more conservative.Thu Mar  7 19:14:21 1996  Doug Evans  <dje@cygnus.com>	* sparc/t-splet: New file.	* sparc/splet.h: New file.	* configure (sparclet-*-aout*): Use them.	* sparc.h (MASK_LIVE_G0,TARGET_LIVE_G0): Define.	(FIRST_PSEUDO_REGISTER): Add 1 for %icc (now 101).	(FIXED_REGISTERS,CALL_USED_REGISTERS): Update.	(FIXED_REGISTERS): %g0 is fixed by default.	(SPARC_{FIRST,LAST}_V9_FCC_REG): Define.	(SPARC_{ICC,FCC}_REG): Define.	(CONDITIONAL_REGISTER_USAGE): Don't fix %fcc0 if v8.	(REG_CLASS_CONTENTS): Reg 0 is an int reg, reg 100 is %icc.	(REGNO_REG_CLASS): Rewrite to use global `sparc_regno_reg_class'.	(REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER,LEAF_REGISTERS): Add %icc.	(REG_CLASS_FROM_LETTER): Handle 'c' for FPCC_REGS in non-v9 case.	(REGNO_OK_FOR_{BASE,INDEX}_P): Treat %g0 as a normal reg.	(REG_OK_FOR_{BASE,INDEX}_P,EXTRA_CONSTRAINT): Likewise.	(REGISTER_NAMES): Add %icc.	(ADDITIONAL_REGISTER_NAMES): Use SPARC_ICC_REG.	* sparc.c (leaf_reg_remap): Add %icc=100.	(reg_or_0_operand): Don't allow 0 if TARGET_LIVE_G0.	(fcc_reg_operand): Renamed from ccfp_reg_operand.	Use SPARC_FCC_REG.  Don't treat reg 0 as an fcc reg.  Don't match	modes if `mode' argument is VOIDmode.	(icc_or_fcc_reg_operand): New function.	(gen_compare_reg): Use SPARC_FCC_REG for v8 fp compares.	Use SPARC_ICC_REG for int compares.	(eligible_for_epilogue_delay): Don't allow anything if TARGET_LIVE_G0.	Delete unnecessary test for %g0.	(emit_move_sequence): Don't emit (set (mem) (const_int 0)) if	TARGET_LIVE_G0.	(output_scc_insn): Label moved to operand 3.  Condition code reg	moved to operand 2.	(sparc_mode_class): Enum C_MODE renamed to CC_MODE.	(hard_32bit_mode_classes): Set reg 0 to S_MODES.  Add entry for %icc.	(hard_64bit_mode_classes): Set reg 0 to D_MODES.  Add entry for %icc.	(sparc_regno_reg_class): New global.	(sparc_init_modes): Initialize it.	(output_cbranch): Delete fp_cond_reg argument.	(print_operand, MEM op): Don't print "%g0+" if TARGET_LIVE_G0.	(sparc_flat_eligible_for_epilogue_delay): Don't allow anything if	TARGET_LIVE_G0.	* sparc.md (live_g0): New attribute.	(*): Integer condition code register is now reg 100.	Use SPARC_ICC_REG instead of hardcoding reg 100 where possible.	Non-v9 floating point condition code register is now reg 96.	(*cmp{sf,df,tf}_{fpe,fp}_sp{32,64}): Combine v9/non-v9 cases.	(*{normal,inverted}_{,fp,fpe}_branch): Update call to output_cbranch.	(*mov{qi,hi,si}_insn): Don't use if TARGET_LIVE_G0.	(*mov{qi,hi,si}_insn_liveg0): New patterns.	(*mov{si,di,sf,df,tf}_ccfp{,e}_sp64): ccfp_reg_operand renamed to	fcc_reg_operand.	(*negdi2_sp32,negsi2,one_cmplsi2,ffssi2): Ensure %%g0 is 0 if	TARGET_LIVE_G0.	(*one_cmpldi2_sp32): Move operand 1 to rs1 and use 0 as rs2.	(patterns that use %g0 in rs2): Use 0 immediate value instead.	(patterns that read %g0): Don't use if TARGET_LIVE_G0.Thu Mar  7 15:39:16 1996  Jim Wilson  <wilson@chestnut.cygnus.com>	* sh.h (PASS_IN_REG_P): Change < to <=.	* va-sh.h (va_start): Change __SH3E___ to __SH3E__.	(va_arg): Add little-endian SH3E support.  Fix big-endian version	to work for arguments smaller than the word size.Thu Mar  7 10:37:37 1996  Jeffrey A. Law  <law@cygnus.com>	* lib2funcs.asm: Remove entry/exit routines.  Move them into...	* ee.asm: New file.  Entry/exit code.	* ee_fp.asm: New file.  Entry/exit code with frame pointer.	* t-pa: Corresponding changes.	* t-pro: Corresponding changes.	* pa.c: Fix misc small typos/thinkos in recent changes.Wed Mar  6 17:36:03 1996  Jason Merrill  <jason@yorick.cygnus.com>	* cplus-dem.c (demangle_template): Fix for address-of-extern arguments.Wed Mar  6 15:12:55 1996  Jeffrey A. Law  <law@cygnus.com>	* t-pro (dp-bit rule): Fix typo.	* lib2funcs.asm (__outline_prologue): Remove frame pointer	support.	(__outline_prologue_fp): Out of line prologue with frame pointer.	(__outline_epilogue, outline_epilogue_fp): Similarly.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -