📄 changelog.10
字号:
(TARGET_LONG_LOAD_STORE): Define. * pa.md (symbolic high part): Handle TARGET_LONG_LOAD_STORE.Thu Feb 29 11:39:30 1996 Stan Cox <coxs@dg-rtp.dg.com> * i386.md (cmpxf*): XF compare cannot have mem operands. (casesi expand): Put (minus:SI..) into subsi3 format. * i386.c (i386_return_pops_args): Cleanup extra argument used as address of a returned structure.Wed Feb 28 22:24:28 1996 Doug Evans <dje@cygnus.com> * varasm.c (enum in_section): Define in_bss if BSS_SECTION_ASM_OP is defined. (bss_section,asm_output_bss,asm_output_aligned_bss): New functions. (assemble_variable): Delete redundant test for too large an object. Rewrite test for uninitialized variables. Use new macros ASM_OUTPUT{,_ALIGNED}_BSS if defined to output global uninitialized but not common variables. * bytecode.h (BC_OUTPUT_BSS): Define. * lynx.h (EXTRA_SECTIONS): Delete in_bss. (EXTRA_SECTION_FUNCTIONS): Delete BSS_SECTION_FUNCTION. * svr3.h (EXTRA_SECTIONS): Likewise. (BSS_SECTION_FUNCTION): Delete. * convex.h (EXTRA_SECTIONS,EXTRA_SECTIONS_FUNCTIONS): Delete. * dsp16xx.h (EXTRA_SECTIONS): Delete in_bss. (EXTRA_SECTION_FUNCTIONS): Delete bss_section. * gmicro.h (EXTRA_SECTIONS,EXTRA_SECTIONS_FUNCTIONS): Delete. * i386/aix386ng.h (EXTRA_SECTION_FUNCTIONS): Delete BSS_SECTION_FUNCTION. * i386/att.h (BSS_SECTION_FUNCTION): Delete. * i386/sco5.h (EXTRA_SECTIONS): Delete in_bss. (EXTRA_SECTION_FUNCTIONS): Delete BSS_SECTION_FUNCTION. (BSS_SECTION_FUNCTION): Delete. * i386/seq-sysv3.h (BSS_SECTION_FUNCTION): Delete. * i386/svr3gas.h (EXTRA_SECTIONS): Delete in_bss. (EXTRA_SECTION_FUNCTIONS): Delete BSS_SECTION_FUNCTION. (BSS_SECTION_FUNCTION): Delete. * i860/paragon.h (EXTRA_SECTIONS,EXTRA_SECTIONS_FUNCTIONS): Undef. * m68k/crds.h (EXTRA_SECTIONS,EXTRA_SECTIONS_FUNCTIONS): Delete. (BSS_SECTION_ASM_OP): Define. * m68k/m68k.h (BC_OUTPUT_BSS): Define. * mips/iris6.h (EXTRA_SECTIONS): Delete in_bss. * pa.h (EXTRA_SECTIONS): Delete in_bss. (EXTRA_SECTION_FUNCTIONS): Delete bss_section. * sparc/litecoff.h (EXTRA_SECTIONS): Delete in_bss.Wed Feb 28 14:12:25 1996 Jim Wilson <wilson@chestnut.cygnus.com> * sh.h (FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P): Include FP registers only when TARGET_SH3E. (PASS_IN_REG_P): Exclude BLKmode only when ! TARGET_SH3E.Wed Feb 28 12:03:26 1996 Michael Meissner <meissner@tiktok.cygnus.com> * rs6000.c (rs6000_trampoline_{template,size}): Change Windows NT trampoline template so it doesn't require making stack executable. Add support for 64 bit systems. (rs6000_initialize_trampoline): Ditto.Tue Feb 27 16:42:00 1996 David Edelsohn <edelsohn@mhpcc.edu> * rs6000.c (print_operand): New code 'H'. * rs6000.md (insv, extzv): Add DImode patterns. Use 'h' consistently for masking SImode shifts. (rotldi3, ashldi3, lshrdi3, ashrdi3): Use 'H'. (movsf split): Generate CONST_INT instead of SUBREG.Tue Feb 27 15:02:17 1996 Doug Evans <dje@cygnus.com> * sh.h (HANDLE_PRAGMA): Delete `return'.Tue Feb 27 08:18:12 1996 Richard Earnshaw (rearnsha@armltd.co.uk) * arm.c (aof_text_section): Remove pseudo read-only hack. Doesn't take a parameter any more. * arm/aof.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove readonly data sections. (READONLYDATA_SECTION, READONLY_DATA_SECTION): Delete. * arm.h (enum arm_cond_code): New enum. (ARM_INVERSE_CONDITION_CODE): Moved here from arm.c. (SELECT_CC_MODE): Call arm_select_cc_mode to do the work. (PREDICATE_CODES): Add dominant_cc_register; delete reversible_cc_register. * arm.c (arm_current_cc): Now an enum. (ARM_INVERSE_CONDITION_CODE): Moved to arm.h (revsersible_cc_register): Delete. (dominant_cc_register): New function. (select_dominance_cc_mode): New function. (arm_select_cc_mode): New function. (output_return_instruction): New parameter REVERSE, used to reverse the condition of a conditional return. All callers changed. (arm_print_operand case 'D'): Only suppress condition printing if the operand is a NULL pointer. (get_arm_condition_code): Now a static function returning enum arm_cond_code. Handle dominance expressions. Return enum values rather than integers. * arm.md (*addsi3_compare0_scratch): New insn. (*movsi_compare0, *cmpsi_insn, *cmpsi_shiftsi): Make sure the compare has mode CC. (cmp{si,sf,df,xf} expands): Just provide sufficient information to allow the parameters to be matched properly. (*cmpsi_negsi): Delete (of dubious validity). (*cmpsi_shiftsi_swp): New pattern. (*condbranch_reversed): No longer needs to check REVERSIBLE_CC_MODE. (mov{si,sf,df}cc, *mov{si,sf,df}{,_hard,_soft}_insn): The mode of the IF_THEN_ELSE must be appropriate to the target (not void). (*and_scc): Match cc_register, not reversible_cc_register. (*ior_compare_compare): Delete. (split for ior_compare_compare + condjump): Delete. (*impossible_cond_compare): Delete. (*condition_compare_ior): Delete. (*cond_move): Mode for the IF_THEN_ELSE must be SImode. (*and_scc_scc): Delete. (split for and_scc_scc + condjump): Delete. (*impossible_cond_branch_and): Delete. (*cmp_ite0, *cmp_ite1): New patterns. (if_compare_not): Should be an anonymous pattern. (Peephole for move and compare): Compare mode must be mode CCmode. (Split pattern for comparing shifted reg then branch): Delete. (*loadqi_compare): Delete, replaced with a split pattern to do the same thing. (*cond_move_not): Match cc_register, not reversible_cc_register. * arm.c ({load,store}_multiple_sequence): New functions. (emit_{ldm,stm}_seq): New functions. * arm.md (load/store multiple peepholes): Rewrite using the above functions. (all patterns taking immediate_operand): If the code later assumes this is a CONST_INT, then match const_int_operand instead.Mon Feb 26 17:26:13 1996 Doug Evans <dje@cygnus.com> * sparc.md: Add sparclet scheduling parameters. (compare define_insn's): Move closer to compare define_expand's. (32 bit multiply patterns): Use for TARGET_SPARCLET. (*smacsi,*smacdi,*umacdi): Multiply/accumulate patterns for the sparclet.Sat Feb 24 19:13:29 1996 David Edelsohn <edelsohn@mhpcc.edu> * rs6000.md (movsf split): Fix typo in last patch.Sat Feb 24 10:02:55 1996 Michael Meissner <meissner@tiktok.cygnus.com> * toplev.c (fatal_insn): Flush stdout/stderr.Sat Feb 24 02:03:28 1996 Jeffrey A. Law <law@cygnus.com> * pa.md (abssi2): Rework to avoid matching constraints.Fri Feb 23 11:21:43 1996 Jeffrey A. Law <law@cygnus.com> * pa.c (override_options): Warn if both PIC code generation and profiling are requested.Fri Feb 23 08:47:38 1996 Richard Kenner (kenner at vlsi1) * expr.c (expand_builtin, case BUILT_IN_SETJMP): Set CONST_CALL_P on NOTE_INSN_SETJMP instead of emitting USE insns for call-saved regs. * reload1.c (reload): For special CONST_CALL_P NOTE_INSN_SETJMP, mark all call-saved regs as used. * sched.c (sched_analyze): Record NOTE_INSN_SETJMP if no CALL_INSN as prev; preserve CONST_CALL_P bit. (reemit_notes): Restore CONST_CALL_P.Thu Feb 22 17:45:12 1996 Doug Evans <dje@cygnus.com> * configure (sparclet-*-aout*): Set extra_headers. * ginclude/inl-sparc.h: New file.Wed Feb 21 20:39:53 1996 Doug Evans <dje@cygnus.com> * configure (sparc64-*-solaris2*): Merge with sparc-*-solaris2*. * sparc.h (enum processor_type): Declare. (sparc_cpu_attr): Define. (TARGET_OPTIONS): Add -mtune=. (sparc_select): Declare. (sparc_cpu_string): Delete. (FIRST_PSEUDO_REGISTER): Set to 100. ({FIXED,CALL_USED}_REGISTERS): Merge !v9/v9 cases. (CONDITIONAL_REGISTER_USAGE): Mark %g5 as fixed if !v9. Mark %g1 as fixed if v9. Fix v9-only regs if !v9. Mark fp{16..47} as call-saved if v9. (enum reg_class): Merge !v9/v9 cases. (REG_CLASS_NAMES,REG_CLASS_CONTENTS,REGNO_REG_CLASS): Likewise. (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER,LEAF_REGISTERS): Likewise. (FP_REG_CLASS_P,SPARC_REGISTER_NAMES): Likewise. (REG_CLASS_FROM_LETTER): Test TARGET_V9 at runtime. * sparc.c (sparc_cpu_string): Delete. (sparc_select): New global. (sparc_override_options): Handle -mtune=xxx. * sparc.md (cpu attr): Add sparc{lite,let} implementations. * sparc/sp64-sol2.h: Deleted. * arm.md (consttable_end): Delete call to text_section. (align_4): Delete call to readonly_data_section.Wed Feb 21 14:29:06 1996 Ian Lance Taylor <ian@cygnus.com> * cplus-dem.c (demangle_template): Initialize is_bool. Correctly handle 0 as a pointer value parameter.Wed Feb 21 14:13:29 1996 Jason Merrill <jason@yorick.cygnus.com> * tree.c (decl_function_context): Do decl_function_context right for function-local classes.Wed Feb 21 12:42:52 1996 Jeffrey A. Law <law@cygnus.com> * c-typeck.c (initializer_constant_valid_p): Don't dereference a null pointer on partial structure initialization.Wed Feb 21 11:49:58 1996 David Edelsohn <edelsohn@mhpcc.edu> * rs6000.h (ASM_OUTPUT_EXTERNAL): Append section info even when verbatim symbol prefix '*' present. * rs6000/aix3newas.h (ASM_OUTPUT_EXTERNAL): Same. * rs6000/aix41.h (ASM_OUTPUT_EXTERNAL): Same. * rs6000/powerpc.h (ASM_OUTPUT_EXTERNAL): Same. * rs6000/win-nt.h (ASM_OUTPUT_EXTERNAL): Same.Wed Feb 21 03:55:32 1996 Paul Eggert <eggert@twinsun.com> * cccp.c (validate_else): Don't loop given `#endif /'. Handle multiple adjacent backslash-newlines correctly. Accept a new parameter LIMIT to specify end of input; this prevents confusion when the input contains '\0' characters. (collect_expansion): Fix off-by-1 error when searching for `*/' at end of a comment used for traditional token concatenation. (macarg1): Fix off-by-1 error when skipping past `*/' at end of comment.Tue Feb 20 16:12:31 1996 Doug Evans <dje@cygnus.com> * hard-reg-set.h (twice unrolled GO_IF_HARD_REG_EQUAL): Add missing \.Tue Feb 20 14:21:16 1996 Jeffrey A. Law <law@cygnus.com> * pa.h (DBX_CONTIN_LENGTH): Define to 4000 characters. * pa.c (hppa_expand_epilogue): Always emit a blockage insn before cutting back the stack.Mon Feb 19 19:42:15 1996 Brendan Kehoe <brendan@lisa.cygnus.com> * sparc.h (TARGET_SWITCHES): Add -m{,no-}impure-text. (MASK_IMPURE_TEXT, TARGET_IMPURE_TEXT): Define. (LINK_SPEC): Only add `-assert pure-text' if -mimpure-text wasn't used.Mon Feb 19 19:20:15 1996 Doug Evans <dje@canuck.cygnus.com> * configure (sparc-aout): sparc-aout.h renamed to aout.h. (sparclet-aout): Likewise. (sparclite-*-aout*): Renamed from sparclite-*-*. Don't set use_collect2. (target_cpu_default): Set to TARGET_CPU_<cpu> for sparc. * sparc.h (TARGET_CPU_sparc{,let,lite,64}): Define. ({CPP,ASM}_DEFAULT_SPEC): Set from TARGET_CPU_foo. (SPARC_ARCH64 CPP_PREDEFINES): Define __arch64__. (CPP_SPEC): Add %(cpp_cpu). (CPP_CPU_SPEC): Define. (CC1_SPEC): Convert -m<cpu> to -mcpu=<cpu>. (ASM_SPEC): Add %(asm_cpu). (ASM_CPU_SPEC): Define. (EXTRA_SPECS,SUBTARGET_EXTRA_SPECS): Define. (OVERRIDE_OPTIONS): Call SUBTARGET_OVERRIDE_OPTIONS after sparc_override_options. ({MASK,TARGET}_SUPERSPARC): Delete. ({MASK,TARGET}_SPARCLET): Define. (MASK_ISA): Renamed from MASK_CPUS. (TARGET_SWITCHES): Delete no-{v8,sparclite}. (sparc_cpu,sparc_cpu_string): Declare. ({SUB,}TARGET_OPTIONS): Define. (FIXED_REGISTERS): Add definitions for sparc64 in 32 bit mode. (CONDITIONAL_REGISTER_USAGE): Don't set fixed_regs[234] if sparc64. Don't set call_used_regs[48..80] for sparc64 in 32 bit mode. Don't clobber fixed_regs[234] if -ffixed- was passed. (ADJUST_COST): Change test for supersparc. * sparc.c (sparc_cpu_string,sparc_cpu): New globals. (sparc_override_options): Set ISA and CPU from sparc_cpu_string. Delete tests for v9 only switches if not v9. Error if -mcpu=v9 and v9 support not compiled in. * sparc/sol2.h (CPP_SPEC): Use %(cpp_cpu). (ASM_SPEC): Likewise. (ASM_{DEFAULT,CPU}_SPEC): Use Solaris syntax for sparc64. * sparc/sysv4.h (ASM_SPEC): Add %(asm_cpu). * sparc/t-sparcbare (MULTILIB_*): -mv8 renamed to -mcpu=v8. * sparc/t-sparclite (MULTILIB_*): Delete msoft-float and mno-flat, they're the defaults. Add -mcpu=f934 as synonym for -mfpu. * va-sparc.h (__arch64__): Renamed from __sparc_v9__. * sparc/lite.h: #include aoutos.h. (TARGET_DEFAULT): Use MASK_FOO values. * sparc/sp64-aout.h: #include aoutos.h. (TARGET_DEFAULT): Add MASK_APP_REGS. (JUMP_TABLES_IN_TEXT_SECTION,READONLY_DATA_SECTION): Delete. * sparc/sp64-elf.h (TARGET_DEFAULT): Add MASK_APP_REGS. (CPP_PREDEFINES): Define __arch64__. * sparc/sp64-sol2.h (TARGET_DEFAULT, SUBTARGET_SWITCHES): Delete. (ASM_SPEC): Delete. * sparc.h ({MASK,TARGET}_FRW): Delete. (FRAME_POINTER_REQUIRED,INITIAL_FRAME_POINTER_OFFSET, BASE_{INCOMING_ARG,OUTGOING_VALUE}_REG,INCOMING_REGNO,OUTGOING_REGNO, FUNCTION_{PROLOGUE,EPILOGUE},DELAY_SLOTS_FOR_EPILOGUE): TARGET_FRW renamed to TARGET_FLAT. * sparc.md (cpu attr): Add all cpu variants. (negtf2,negdf2,abstf2,absdf2): Use isa attr, not arch attr, in determining insn lengths. * sparc/aout.h: Renamed from sparc-aout.h. (CPP_PREDEFINES): Delete __GCC_NEW_VARARGS__. Add -Acpu(sparc) -Amachine(sparc).Mon Feb 19 17:49:08 1996 David Edelsohn <edelsohn@mhpcc.edu> * rs6000.md (movsf split): Use SUBREG, not operand_subword. (movdf split): operand_subword TARGET_32BIT and new split using SUBREG for TARGET_64BIT. * rs6000.c (easy_fp_constant): Rewrite to not use operand_subword. (input_operand): Remove final add_operand test made irrelevant by Dec. 8 change. (output_toc): Handle DImode values.Mon Feb 19 13:38:00 1996 Lee Iverson <leei@Canada.AI.SRI.COM> * i386/sol2.h (SWITCH_TAKES_ARG): Restore -R. * sparc/sol2.h (SWITCH_TAKES_ARG): Likewise.Mon Feb 19 08:19:00 1996 Michael Meissner <meissner@tiktok.cygnus.com>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -