📄 changelog.4
字号:
* cexp.y (yylex): Record the parsed characters when dealing with multibyte characters.Mon Dec 30 17:13:30 1991 James Van Artsdalen (james at bigtex.cactus.org) * i386.md (mulhi3,mulsi3): If a multiply by constant 128, use the two operand multiply instead of three operand form: the AT&T assemblers generate incorrect object code for the latter.Mon Dec 30 17:39:36 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * jump.c (jump_optimize): Complete last change: use expand_and result. * reload1.c (emit_reload_insns): Check if reload_in needs a secondary reload if we have an in-out reload, since it might have been the output the needed the secondary reload. * cse.c (simplify_unary_operation): Mode of integer CONST_DOUBLE is VOIDmode, not DImode. * fold-const.c (fold, case COND_EXPR): Make an ABS_EXPR when the comparison is LE_EXPR or LT_EXPR. * calls.c (calls_alloca): New function. (expand_call): Preexpand any argument that contains a call to alloca if this call will use the stack. * rs6000.h (DATA_SECTION_OP): Make result a string to avoid compilation error. * rs6000.h, sparc.h, sun2o4.h, sun3.h (WCHAR_TYPE_SIZE): Fix incorrect definition.Mon Dec 30 16:10:46 1991 Michael Meissner (meissner at osf.org) * mips.h (CC1_SPEC): Complete change deleting -mnogpopt and -mngpopt in favor of -mno-gpopt.Mon Dec 30 11:32:05 1991 Michael Tiemann (tiemann at cygnus.com) * cp-class.c (build_vtable): If we're doing #pragma interface and the interface is known, set TREE_PUBLIC, regardless of TREE_EXTERNAL settings. * cp-decl.c (make_temporary_for_reference): Don't call `convert_pointer_to', since the type may not be an aggr type. * cp-decl.c (finish_decl): Now takes 4th arg NEED_POP. All callers changed. * cp-class.c (permanent_obstack): Declare it. (add_method): push and pop obstacks before changing out of/into temporary allocation. * cp-decl.c (implicitly_declare): Add push_obstacks_nochange/pop_obstacks around changes out of/into temporary allocation. (shadow_tag,xref_tag,start_decl,finish_decl): Ditto. * cp-decl2.c (grokfield,get_temp_name): Ditto. * cp-except.c ({ansi_}lookup_exception_object): Ditto. * cp-lex.c (get_time_identifier): Ditto. * cp-tree.c (build_exception_variant): Ditto. * cp-typeck.c (mark_addressable): Ditto. * cp-decl.c (grokdeclarator,maybe_build_cleanup): Delete calls to preserve allocation status. Now handled by callers.Mon Dec 30 01:44:21 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * c-lex.c (yyprint): Function moved here. * c-parse.y, objc-parse.y: Moved from here. * Makefile.in (c-parse.c, objc-parse.c, cp-tab.c, cexp.c): cd to srcdir to run Bison. * c-lex.c (check_newline): Get rid of #ident pedantic warning. * cccp.c (do_ident): Put it here. Don't warn if in system header file. * cccp.c (main, finclude): Warn if file ends in backslash-newline. * next.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): New definitions. * global-alloc.c (find_reg): Kick out local regs if that helps. (global_alloc): Set up vars local_regs_live_length, local_regs_n_refs. * protoize.c (do_processing): Fix setting syscalls_absolute_filename. * configure (m68k-*-sysv4*, m68k-*-amix*): New alternatives. * config.sub (*-commodore): Default OS to Amigados. (-amix*): Allow this as input. (amiga): New abbreviation. * sparc.c (output_function_epilogue): Skip unimp differently in leaf. Use jmp insn rather than separate add. (output_return): Skip unimp here too. * sparc.md (return "peepholes"). Handle skipping the unimp. * fold-const.c (fold, optimizing 2*EXPR): Use save_expr. * varasm.c (make_decl_rtl): Permit initializer for local explicit reg. * c-decl.c (kept_level_p): Changed to also return TRUE for binding levels which contain only tagged type declarations. * calls.c (expand_call): Cleaned up prev change.Mon Dec 30 11:29:47 1991 Michael Tiemann (tiemann at mole.gnu.ai.mit.edu) * cp-lex.c (real_yylex): Call REAL_VALUE_TRUNCATE with 2 args. * calls.c (expand_call): Handle allocating ARGBLOCK in the case that ACCUMULATE_OUTGOING_ARGS is not defined.Mon Dec 30 10:27:11 1991 James Van Artsdalen (james at bigtex.cactus.org) * protoize.c: fix typo in <sys/wait.h> inclusion.Mon Dec 30 06:16:16 1991 Leonard Norrgard (vinsci at nic.funet.fi) * c-decl.c (grokdeclarator): Changed erroneus error message.Sun Dec 29 16:16:55 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * toplev.c (main): Last -On option wins. * Makefile.in (ENQUIRE_CFLAGS): Add -O0. * Makefile.in (cp-tab.c): Change "expect" message. * final.c (leaf_renumber_regs): Renumber just the PATTERN.Sun Dec 29 14:20:15 1991 Per Bothner (bothner at cygnus.com) * dbxout.c (dbxout_type): Tiemann's DECL_IGNORED_P optimization (Nov 20) was a little too drastic: If it succeded, no type info was emitted at all, which made for syntactically invalid stabs. Instead, just set 'full=0', * dbxout.c (dbxout_symbol): Re-write code for TYPE_DECL to be a little cleaner. It *seems* to work ...Sun Dec 29 07:04:22 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * expr.c (convert_move): Add truncates from DImode to smaller modes. (move_by_pieces, move_by_pieces_ninsns): Rework to remove explicit references to integer modes. Never need to align greater than BIGGEST_ALIGNMENT. * optabs.c (init_extends, init_fixtab, init_floattab, init_optabs): Add TImode operations. * reload.c (find_reloads): Prefer alternatives that reload SCRATCH instead of something else. * rs6000.md (movti): Adjust constraints and alternative order so we actually get to use the stsi insn. * rs6000.h (REG_ALLOC_ORDER): Put r9 in front of r11 so we don't try to put a TImode value in r11 as often. * caller-save.c (setup_save_areas): New parameter pchanged; set when memory is allocated. * reload1.c (reload): Pass pointer to something_changed to setup_save_areas. * loop.c (scan_loop): Don't suppress moving insns that can trap just because we have passed a call inside a libcall/retval block. * jump.c (get_label_before): Don't separate a CALL_INSN from any USE insns immediately preceeding it. (get_label_after): Likewise, for following CLOBBERs. * cse.c (fold_rtx, case '<'): When seeing if we have seen this comparison before, use a constant equivalence. Add test for things like "(a | 1) != 0". (fold_rtx, case '2'): Move code to handle associative operations to here; add support for MINUS, SMAX, SMIN, UMAX, and UMIN. (record_jump_equiv): See if OP1 is equivalent to a constant. * jump.c (jump_optimize): Don't pass a SUBREG as a target to expand_and. * combine.c (subst): Never associate floating-point, even if not IEEE. Associate MAX and MIN operations. * output.h (output_asm_insn, asm_fprintf): Add "extern" to decls. (alter_subreg): Add declaration. * rs6000.md (movsf, movdf): Don't declare alter_subreg here. (trunc_call_rtl): Don't declare trunc_used; use rs6000_trunc_used. * rs6000.c (rs6000_trunc_used): New name of trunc_used. * rs6000.h (rs6000_trunc_used): Add declaration.Sat Dec 28 18:14:21 1991 Michael Tiemann (tiemann at cygnus.com) * cp-method.c (build_overload_name): Don't call OB_FINISH unless END is nonzero.Sat Dec 28 17:46:05 1991 Jim Wilson (wilson at wookumz.gnu.ai.mit.edu) * gcc.c (default_compilers): Handle -ansi in the C++ entries exactly the same way as the C entries do. * rtl.c (add_dependence): Cast enums to int before doing an ordered comparison, since some compilers can't do this. * sparc.c (pic_address_needs_scratch): New function. Returns true if the pic address X needs a scratch register when loaded. (legitimize_pic_address): Clean up. New argument SCRATCH, which is a scratch register for those loads that need it. (emit_move_sequence): New argument SCRATCH_REG, which is a scratch register for those loads that need it. When loading a pic label, set %o7 instead of clobbering it so its value can be used later. (compute_frame_size): Leaf functions need to allocate space for register window in frame if size greater than 0. (print_operand): Delete obsolete %^ which added %o7 to addresses. All uses of %o7 are now explicit. * sparc.h: Fix callers of legitimize_pic_address. (REG_CLASS_FROM_LETTER): Add 'r' case. (SECONDARY_INPUT_RELOAD_CLASS): New macro, to force reload to allocate a scratch register for certain pic address reloads. (flag_pic): Define as extern so that it will be defined for insn-emit.c. * sparc.md: Fix all callers of legitimize_pic_address and emit_move_sequence. (reload_insi): New pattern. Used to force reload to allocate a scratch register for those pic address loads that need one. (reload_insi+2): When loading pic label, set %o7 instead of clobbering it. (movdf, movsf): Reject matches that would require reloading via use of a condition. (tablejump): Now a define_expand, so can generate different pattern when pic. (pic_tablejump): Explicitly mention in rtl that %o7 is used, instead of using %^. * m88k.h, sparc.h: Delete references to non-existent BLOCK_PROFILER_USED_REG_P macro.Sat Dec 28 14:31:36 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) * c-lex.c (check_newline): Set ignore_escape_flag for reading filename. (yylex): Handle ignore_escape_flag in string constant. * gnulib2.c (__do_global_dtors): Count elements properly. * m68k.md (tsthi): Don't allow address register.Sat Dec 28 11:49:06 1991 James Van Artsdalen (james at bigtex.cactus.org) * final.c (final): Initialize elements of line_note_exists. * protoize.c: Don't include <sys/wait.h> on USG unless SVR4.Sat Dec 28 11:09:36 1991 Fred Fish (fnf at fishpond) * Makefile.in (includes): Pre-remove the tmp dir; fix INSTALLED_H ref.Sat Dec 28 06:31:16 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * sparc.md (movstrsi): Fix typo testing for more than 32 subunits. * genrecog.c: Major rework. We now check to see if pairs of comparison nodes can have anything that they both match. If not, they can be reordered. An efficient ordering is established that groups all nodes with identical rtl codes inside groups with identical modes. This allows us to generate a comparison tree that is a list of nested switch statements. Also, genrecog.c is now indented properly so that debugging is eased. (add_to_sequence): Enforce mode on the first arg of COMPARE, comparison operation, SIGN_EXTEND, and ZERO_EXTEND. * a29k.h, romp.h, rs6000.h (PREDICATE_CODES): Add definition.Fri Dec 27 17:31:48 1991 Richard Kenner (kenner at vlsi1.ultra.nyu.edu) * a29k.h, decrose.h, encrose.h, m88kdgux.h (WCHAR_TYPE_SIZE): Add definition. * rs6000.h, sparc.h, sun2o4.h, sun3.h, svr3.h, svr4.h: Likewise. * expmed.c (expand_mult): For negative values, try multiplication by the original value as well as by negated value.Fri Dec 27 20:54:59 1991 Fred Fish (fnf at fishpond) * m68kv4.h: Include m68ksgs.h rather than m68k.h. * m68kv4.h: Define TARGET_DEFAULT to be 68020 + 68881. (CPP_SPEC): Define based on TARGET_DEFAULT * m68kv4.h (PCC_STATIC_STRUCT_RETURN): Undef this. (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Defs deleted. (ASCII_DATA_ASM_OP, ASM_OUTPUT_ASCII): Defs deleted. * m68kv4.h (ASM_OUTPUT_SKIP, FUNCTION_VALUE_REGNO_P): (FUNCTION_PROFILER, STRUCT_VALUE_REGNUM, BSS_ASM_OP): (FUNCTION_VALUE, FUNCTION_EXTRA_EPILOGUE, LIBCALL_VALUE): (STACK_BOUNDARY, EMPTY_FIELD_BOUNDARY, BIGGEST_ALIGNMENT): Redefined to match m68k/SVR4 conventions. * m68ksgs.h (ASM_OUTPUT_SKIP): Redefined to use `.space'. (ASM_NO_SKIP_IN_TEXT): Defined. * amix.h, xm-amix.h, x-amix: New files.Fri Dec 27 20:43:11 1991 Michael Tiemann (tiemann at cygnus.com) * cp-tree.h (build_overload_name): Declare this function. * cp-decl2.c, cp-method.c: Delete random `extern' declarations. * cp-lex.c (get_directive_line): Declare it extern. (lineno,yychar,yylval,lastiddecl,finput): Ditto. (ridpointers): Don't need to declare it here. (check_newline): Handle new #pragmas. * cp-class.c (add_method): Add a cast in call to `obstack_base'.Fri Dec 27 20:22:05 1991 Michael Tiemann (tiemann at cygnus.com) * cp-decl.c (push_overloaded_decl): Now returns a value. All callers changed. * cp-decl.c (duplicate_decls): Give better error message when user declaration conflicts with built-in one. Also, when we decide to keep a builtin function builtin, copy the DECL_RTL from OLDDECL to NEWDECL.Fri Dec 27 17:18:15 1991 Michael Meissner (meissner at osf.org) * mips.h (TRAMPOLINE_TEMPLATE): Define correctly for MIPS. (TRAMPOLINE_SIZE): Define to be 9 words. (INITIALIZE_TRAMPOLINE): Define correctly for MIPS. (TRANSFER_FROM_TRAMPOLINE): Define to do a mprotect of the trampoline, so that we can jump to it. I suspect the mprotect may fail on some MIPS based systems, because the trampoline is on the stack, and not in the data section. * mips.c (mips_output_filename): Don't warn about ECOFF not handling #line's within functions if we are using the OSF/rose object format.Fri Dec 27 15:35:38 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -