📄 changelog.10
字号:
* pa.c (compute_frame_size): Allocate enough space to avoid holes in the callee register saves. Remove some special handling of %r3. (hppa_expand_prologue): Don't do an out of line prologue/epilogue if it would take more insns than an inline prologue/epilogue. Don't leave holes in the callee register save set. (hppa_expand_prologue): Corresponding changes. Pass stack size to out of line epilogue code. * pa.h (FRAME_POINTER_REQUIRED): Revert last change. * pa.md (outline_prologue_call): Handle outline prologues which don't need frame pointers. (outline_epilogue_call): Similarly. * t-pro: Reenable multilib code. Build a set of libraries that optimize for space.Wed Mar 6 14:28:14 1996 Jim Wilson <wilson@chestnut.cygnus.com> * Makefile.in (USER_H): Add ginclude/va-sh.h. * ginclude/stdarg.h, ginclude/varargs.h: Use va-sh.h. * ginclude/va-sh.h: New file. * sh.h (PASS_IN_REG_P): Fix typo in last change.Wed Mar 6 11:42:06 1996 David Edelsohn <edelsohn@mhpcc.edu> * rs6000.h (enum processor_type): Remove PROCESSOR_PPC602. (RTX_COSTS): Remove PROCESSOR_PPC602. PPC603 MULT cost depends on constant and domain. * rs6000.c (processor_target_table): 602 uses PROCESSOR_PPC603. (get_issue_rate): Remove CPU_PPC602. * rs6000.md (function units): Remove PPC602. Add store and fpstore type attribute values. Update patterns.Tue Mar 5 18:43:43 1996 Richard Henderson <rth@tamu.edu> * m68k/coff.h (ASM_OUTPUT_SECTION_NAME): New define. * m68k/{aux-crt1.c,aux-crt[2n].asm}: New files. * m68k/{aux-exit.c,aux-low.gld,aux-mcount.c}: More new files. * m68k/{aux.h,auxgnu.h,auxstd.h}: Even more new files. * m68k/{t-aux,xm-aux.h}: The rest of the new files. * m68k/sgs.h (ASM_OUTPUT_CASE_END): Add missing semicolon. (switch_table_difference_label_flag): Make extern. * fixincludes (sys/param.h): Fix c89 __asm statements. * configure (m68k-apple-aux*): New target.Tue Mar 5 17:38:19 1996 Doug Evans <dje@cygnus.com> * sparc.md (*mov{qi,hi,si}_insn): Simplify length attribute. (*movsi_insn): Use fpload/fpstore attributes for fp loads/stores. %r1 -> %1 for fpstore alternative. (*movsf_insn,*movsf_no_f_insn): %r1 -> %1.Tue Mar 5 17:19:17 1996 Jason Merrill <jason@yorick.cygnus.com> * expr.c (expand_expr, case *_DECL): If we make a non-local reference from a function with DECL_NO_STATIC_CHAIN set, abort. (expand_expr, case ADDR_EXPR): We don't need a trampoline for a function with DECL_NO_STATIC_CHAIN set. * function.c (lookup_static_chain): If we're checking on a function that doesn't need a static chain, return 0. (init_function_start): We don't need context if DECL_NO_STATIC_CHAIN is set. * tree.c (staticp): Check DECL_NO_STATIC_CHAIN on nested functions.Tue Mar 5 15:04:29 1996 Jim Wilson <wilson@chestnut.cygnus.com> * sh.md (push_e, pop_e): Add TARGET_SH3E to condition. * sh.h (JUMP_TABLES_IN_TEXT_SECTION): Define. * sh.c (find_barrier): Set si_limit to 1018 instead of 1020, and hi_limit to 510 instead of 512.Tue Mar 5 13:39:44 1996 Doug Evans <dje@cygnus.com> * loop.c (init_loop): Use pseudo reg in add_cost computation so cost doesn't vary depending on whether reg 0 happens to be fixed or not.Tue Mar 5 09:32:24 1996 J"orn Rennecke (amylaar@meolyon.hanse.de) * reg-stack.c (record_label_references): Check for undefined label.Tue Mar 5 09:22:20 1996 Scott Christley (scottc@net-community.com) * objc/objc-api.h, objc/runtime.h: Include objc/thread.h. * objc/class.c (__objc_init_class_tables): Surround sarray access with mutex lock/unlock. (__objc_add_class_to_hash, objc_lookup_class): Likewise. (objc_get_class, objc_get_next_class): Likewise. (__objc_resolve_class_links, class_pose_as): Likewise. * objc/init.c (__objc_runtime_mutux, __objc_runtime_thread_alive): New variables. (objc_init_statics, __objc_init_protocols): Surround sarray access with mutex lock/unlock (__objc_exec_class): Likewise. Initialization for thread-safe global variables. Declarations for thread-safe functions and global variables * objc/sendmsg.c (get_imp, __objc_responds_to): Surround sarray access with mutex lock/unlock. (__objc_init_install_dtable): Likewise. (__objc_update_dispatch_table_for_class): Likewise. (__objc_print_dtable_stats): Likewise. * objc/selector.c (sel_get_typed_uid, sel_get_any_typed_uid): Likewise. (sel_get_any_uid, sel_get_name, sel_register_name): Likewise. (sel_register_typed_name): Likewise. * objc/sarray.h (union sversion): New. (struct sarray): Maintain multiple versions. (sarray_remove_garbage): Add prototype. * objc/sarray.c (sarray_{remove,free}_garbage): New functions. (sarray_at_put, sarray_new, sarray_lazy_copy): Modify/copy sarray structure/data in a thread-safe manner (sarray_{realloc,free}): Reallocate/free sarray structure/data in a thread-safe manner. * objc/THREADS, objc/thread.c, objc/thread.h: New files. * objc/thread-{decosf1,irix,solaris,win32,single}.c: New files. * objc/objc-list.h: Renamed from objc/list.h. * objc/Makefile: Changes to compile new files and name renaming. * objc/makefile.dos: Likewise.Tue Mar 5 07:51:31 1996 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * bc-emit.c, bc-optab.c (free): Delete declaration of library function. * c-decl.c (duplicate_decl): If making decl non-external, copy context from old to new.Tue Mar 5 02:27:35 1996 Jeffrey A. Law <law@cygnus.com * lib2funcs.asm (__outline_prologue): New "function". (__outline_epilogue): New "function". * pa.h (TARGET_SPACE): Define. (target_flags): Add -mspace and -mno-space. Enable/disable space saving optimizations. (FRAME_POINTER_REQUIRED): Frame pointers are always required when generating out of line prologues and epilogues. * pa.c (compute_frame_size): Handle out of line prologues/epilogues. (hppa_expand_prologue): If optimizing for space, emit an out of line prologue. (hppa_expand_epilogue): Similarly. (override_options): Optimizing for space is not compatable with either profiling or PIC code generation. * pa.md (outline_prologue_call): New pattern. (outline_epilogue_call): Likewise.Tue Mar 5 02:17:32 1996 Doug Evans <dje@cygnus.com> * sparc.md (*cmp{si,di}_insn): %r0 -> %0. (DFmode move define_split): Ensure registers not extended v9 fp regs. (*mov{sf,df,tf}_cc_reg_sp64): %r3 -> %3.Mon Mar 4 18:46:37 1996 Manfred Hollstein <manfred@lts.sel.alcatel.de> * Makefile.in (CRT0STUFF_T_CFLAGS): New macro. (stamp-crt0, crt0.o, mcrt0.o): New goals. (STAGESTUFF): stamp-crt0 added. * collect2.c (main): Check new define DEFAULT_A_OUT_NAME. * m68k.c (print_operand): Emit .l as scale factor #ifdef MOTOROLA. * m68k/mot3300-crt0.S, m68k/mot3300Mcrt0.S: New files. * m68k/mot3300g.h: Deleted. * m68k/mot3300.h (FUNCTION_PROFILER): Emit label references corresponding to those generated by ASM_OUTPUT_INTERNAL_LABEL. (MOTOROLA, MOTOROLA_BSR, ...): Define #ifndef USE_GAS. (ASM_SPEC): Define properly #ifdef USE_GAS. (LIB_SPEC): -L/usr/lib/libp deleted. (STARTFILE_SPEC): -L/usr/lib/libp added. (DEFAULT_A_OUT_NAME): Define. (LINK_SPEC): Pass -v if GNU ld is used. (LOCAL_LABEL_PREFIX): Local labels start with .L using GAS, else L%. (USER_LABEL_PREFIX): Undefine. (FUNCTION_PROFILER): Call asm_fprintf instead of normal fprintf. (ASM_APP_ON, ASM_FILE_START): GAS supports it. (CTORS_.../DTORS_...): Define if GNU ld is used. (ASM_FILE_START): Define properly for Motorola and GNU as syntax. (TARGET_VERSION): Re-define only #ifndef USE_GAS. (CALL_USED_REGISTERS): Deleted. (GLOBAL_ASM_OP): Re-define only #ifndef USE_GAS. (ASM_{LONG,SHORT,CHAR,BYTE,BYTE_OP}): New macros. (ASM_OUTPUT_{DOUBLE,LONG_DOUBLE,FLOAT,INT,SHORT}): Use them. (ASM_OUTPUT_{CHAR,BYTE,ASCII,FLOAT_OPERAND,DOUBLE_OPERAND}): Likewise. (ALIGN_ASM_OP, SKIP_ASM_OP): New macros. (ASM_OUTPUT_{ALIGN,SKIP}): Use them. (ASM_OUTPUT_SOURCE_FILENAME): Define only if not using GNU as. (ASM_{GENERATE,OUTPUT}_INTERAL_LABEL): Provide proper definitions for Motorola and GNU as syntax. (ASM_OUTPUT_ADDR_{VEC,DIFF}_ELT): Changed for portability between Motorola and GNU as syntax. (ASM_OUTPUT_{CASE_LABEL,OPCODE}): Define only if not using GNU as. (ASM_OUTPUT_CASE_FETCH, ASM_RETURN_CASE_JUMP): New macros. (ASM_OUTPUT_{COMMON,LOCAL}): Proper defns for Motorola and gas syntax. (SDB_...): Define only for Motorola as. (ALT_LIBM): New define to tell g++.c about an alternative name for `-lm'. (MATH_LIBRARY, NEED_ATEXIT, HAVE_ATEXIT, EXIT_BODY): New macros. * m68k/t-mot3300, m68k/t-mot3300-{gald,gas,gld}: New files. * m68k/x-mot3300-gas: New file. * m68k/xm-mot3300.h (USG): Set to 1. * configure (m68k-motorola-sysv*): Keep track of new different combinations (--with-gnu-...), and provide proper definitions for tm_file, xmake_file, tmake_file, use_collect2, and extra_parts. * gbl-ctors.h (HAVE_ATEXIT): Define if NEED_ATEXIT is defined. (atexit): Use `int atexit' prototype also if NEED_ATEXIT is defined. (on_exit): According to man on_exit on the Sun it returns int not void. * libgcc2.c (L_bb/atexit, onexit): Declarations replaced by #include'ing "gbl-ctors.h". (L_exit/atexit): New function. (L_exit/exit): Call any registered functions.Mon Mar 4 18:03:38 1996 Bryan Ford (baford@cs.utah.edu) * configure (i[3456]86-moss-msdos*): New target. * i386/moss.h: New file.Mon Mar 4 17:38:50 1996 Jim Wilson <wilson@cygnus.com> * sh.h (PASS_IN_REG_P): Don't reject BLKmode for SH3e. For SH3e, do reject parameter that won't fit entirely in registers. * sh.md (mulhisi3-2, mulhisi3-1, mulsidi3_i, umulsidi3_i, smulsi3_highpart, umulsi3_highpart): Renames operands 1/2 to 0/1. (mulsidi3, umulsidi3): Add support for TARGET_LITTLE_ENDIAN. * sh.c (machine_dependent_reorg): In TARGET_RELAX code, when scan forward from LINK, fail if pass a CODE_LABEL before finding INSN. Fail if SCAN not INSN is a JUMP_INSN.Mon Mar 4 11:27:10 1996 Michael Meissner <meissner@tiktok.cygnus.com> * rs6000.h (CALL_LONG): Change CALL_xx values from an enumeration to bitmasks. Add CALL_LONG to support longcall attributes. (rs6000_args): Call_cookie field is now an int. (rs6000_longcall_ref): Add declaration. * rs6000.c (init_cumulative_args): Add support for longcall attributes to always call through a pointer. (function_arg): Ditto. (rs6000_valid_type_attribute_p): Ditto. (rs6000_longcall_ref): New function for long calls. * rs6000.md (call insns): Add support for longcall attributes.Mon Mar 4 08:42:14 1996 J"orn Rennecke (amylaar@meolyon.hanse.de) * real.c (significand_size): Don't test the modes, but their sizes. * dwarfout.c (xstrdup): Moved from here. * toplev.c (xstrdup): New function. * tree.h (xstrdup): Declare. * bc-emit.c (bc_xstrdup): Delete. * expr.c (bc_strdup): Delete. (bc_load_externaddr_id): Use xstrdup instead of bc_xstrdup. * function.c (bc_expand_function_start): Likewise. * 1750a.c (strdup): Delete. (float_label): Use xstrdup instead of strdup. * 1750a.h (xstrdup): Declare instead of instead of strdup. (ASM_OUTPUT_LABEL): Use xstrdup instead of strdup. (FIX_FRAME_POINTER_ADDRESS): Don't use DEPTH in string.Mon Mar 4 08:23:23 1996 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * xm-we32k.h (NO_WAIT_H): Deleted. * collect2.c: Never include wait.h.Sat Mar 2 22:43:07 1996 Torbjorn Granlund <tege@spiff.gnu.ai.mit.edu> * configure (code for making links): Work around sh bug on FreeBSD.Sat Mar 2 13:40:29 1996 Jeffrey A. Law <law@cygnus.com> * h8300.h (BIGGEST_FIELD_ALIGNMENT): Replace uses of TARGET_ALIGN_STRUCT_300 with TARGET_ALIGN_300. (BIGGEST_ALIGNMENT): Likewise.Sat Mar 2 08:04:50 1996 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * calls.c (expand_call): If passing by invisible ref, not const. * sparc.c (SKIP_CALLERS_UNIMP_P): Make agree with test used in call. * expr.c (do_jump, case COMPOUND_EXPR): Call preserve_temp_slots. * fold-const.c (fold, case *_DIV_EXPR): Ignore SAVE_EXPR if has RTL.Fri Mar 1 17:59:17 1996 Jeffrey A. Law <law@cygnus.com> * optabs.c (emit_cmp_insn): Immediately copy the return value from the library call into a pseudo register. (emit_float_lib_cmp): Likewise.Fri Mar 1 14:37:40 1996 Michael Meissner <meissner@tiktok.cygnus.com> * rs6000/sysv4.h (BSS_SECTION_ASM_OP): Define. (*_SECTION_ASM_OP): Change tab after .section into a space. (ASM_OUTPUT_INT): Ditto. (ASM_OUTPUT_ALIGNED_LOCAL): Rewrite to use bss_section. (ASM_OUTPUT_ALIGNED_BSS): Define to use ASM_GLOBALIZE_LABEL and ASM_OUTPUT_ALIGNED_LOCAL. * rs6000/win-nt.h (BSS_SECTION_ASM_OP): Define. (ASM_OUTPUT_ALIGNED_LOCAL): Define. (ASM_OUTPUT_LOCAL): Don't define any more. (ASM_OUTPUT_ALIGNED_BSS): Define to use ASM_GLOBALIZE_LABEL and ASM_OUTPUT_ALIGNED_LOCAL.Thu Feb 29 17:33:12 1996 Jim Wilson <wilson@chestnut.cygnus.com> * c-typeck.c (push_init_level): When output padding to align structure field, set constructor_unfilled_fields. * dbxout.c (dbxout_type, case METHOD_TYPE): Add CHARS (1) call after emitting second '#' character.Thu Feb 29 13:59:27 1996 Doug Evans <dje@charmed.cygnus.com> * h8300.h (ASM_OUTPUT_BSS): Define. * m68k/coff.h (BSS_SECTION_ASM_OP): Define. (ASM_OUTPUT_ALIGNED_BSS): Define. * m68k/m68k-aout.h (BSS_SECTION_ASM_OP): Define. (ASM_OUTPUT_BSS): Define.Thu Feb 29 13:39:39 1996 Per Bothner <bothner@cygnus.com> * varasm.c (compare_constant_1): For a SET_TYPE CONSTRUCTOR, first extract and compare the set length. * varasm.c (record_constant_1): For SET_TYPE CONSTRUCTOR, permanent_obstack.next_free is *end* of available space.Thu Feb 29 13:14:14 1996 Jeffrey A. Law <law@cygnus.com> * pa.h (TARGET_SWITCHES): Add new flags "-mlong-load-store" and "-mno-long-load-store".
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -