📄 changelog
字号:
Thu Jan 3 13:31:41 1991 Richard Stallman (rms at mole.ai.mit.edu) * loop.c (move_movables): Do reg substitutions on REG_EQUAL, REG_EQUIV. * out-i386.c (fp_top_dead_p1): Follow one jump or label. * rtl.c (read_rtx): Cast type of NULL vector.Wed Jan 2 18:59:34 1991 Richard Stallman (rms at mole.ai.mit.edu) * out-i386.c (fp_call_internal): Use fp_top_dead_p1, not top_dead_p. * reload1.c (emit_reload_insns): Undo previous change.Tue Jan 1 12:01:43 1991 Richard Stallman (rms at mole.ai.mit.edu) * integrate.c (expand_inline_function): Handle parms passed in reg but stored in memory. * ecoff-cmp: Specify `c' in option to tail. * reload1.c (emit_reload_insns) [PRESERVE_DEATH_INFO_REGNO_P]: Move notes to output reload even if dest is reg. Check for notes matching by hard reg, even if different origin. Really scan all the output reload insns.Mon Dec 31 16:04:11 1990 Richard Stallman (rms at mole.ai.mit.edu) * stupid.c (stupid_find_reg): Don't use reg if OVERLAPPING_REGNO_P. * i386.md (push for SFmode): Operand of fst was missing. * out-i386.c (fp_call_internal): Discard result if unused.Sat Dec 29 16:37:10 1990 Richard Stallman (rms at mole.ai.mit.edu) * Makefile (install): Use basename on eachfile; BSD make adds dirs. * cccp.c (macroexpand): Test traditional when computing expansion size.Thu Dec 27 23:42:42 1990 Richard Stallman (rms at mole.ai.mit.edu) * reload.c (find_reloads_address_1): For auto-increment, save the reg before replacing it with something being reloaded.Fri Dec 21 18:31:38 1990 Richard Stallman (rms at mole.ai.mit.edu) * Version 1.38. * tm-i386vgas.h (STARTFILE_SPEC, LIB_SPEC): Deleted.Sun Dec 16 18:10:20 1990 Richard Stallman (rms at mole.ai.mit.edu) * tm-i386vgas.h (ASM_OUTPUT_LABELREF): Do prepend `_' again. * tm-sun3.h (ASM_OUTPUT_FLOAT*, ASM_OUTPUT_DOUBLE*): Use double_is_minus_zero to test for -0.0. * out-m68k.c (double_is_minus_zero): New function.Fri Dec 14 00:57:30 1990 Richard Stallman (rms at mole.ai.mit.edu) * tm-sun3.h (ASM_OUTPUT_FLOAT*, ASM_OUTPUT_DOUBLE*): Use `iszero' and `signbit' to check for -0.0. * recog.c (offsettable_address_p): Use OFFSETTABLE_ADDRESS_P. * tm-i860.h (OFFSETTABLE_ADDRESS_P): Define this.Wed Dec 12 16:11:05 1990 Richard Stallman (rms at mole.ai.mit.edu) * gvarargs.h: Avoid duplicate inclusion using _VARARGS_H. * c-decl.c (grokdeclarator): Always promote short even if -mshort.Tue Dec 11 23:12:51 1990 Richard Stallman (rms at mole.ai.mit.edu) * expr.c (convert_move): Do compare before slt. Handle destination not valid in slt.Mon Dec 10 00:27:04 1990 Richard Stallman (rms at mole.ai.mit.edu) * out-sparc.c (output_fp_move_double): Bugs in last change: Use adj_offsettable_operand when possible. Choose a reg other than fp to increment.Sun Dec 9 23:21:05 1990 Richard Stallman (rms at mole.ai.mit.edu) * cccp.c (collect_expansion): Don't check for /* */ concat here. (macroexpand): Always use raw arg if traditional.Wed Dec 5 13:52:16 1990 Richard Stallman (rms at mole.ai.mit.edu) * optabs.c (expand_binop): Handle insn_before == 0. * Makefile (includes): Export LIB.Tue Dec 4 21:27:00 1990 Richard Stallman (rms at mole.ai.mit.edu) * loop.c (consec_sets_giv): Give proper type to force, force2.Mon Dec 3 15:57:19 1990 Richard Stallman (rms at mole.ai.mit.edu) * cccp.c (special_symbol): Use time_t as type of t.Sun Dec 2 16:43:31 1990 Richard Stallman (rms at mole.ai.mit.edu) * config.gcc (tower): New alternative. * tm-tower.h, tm-tower-as.h, xm-tower.h: New files. * stddef.h (ptrdiff_t): Prevent redefinition, as with size_t. (size_t): Define all the macros used to prevent redefinition.Fri Nov 30 14:25:49 1990 Michael Meissner (meissner at osf.org) * out-mips.c (init_cumulative_args, function_arg_advance, function_arg, function_arg_partial_nregs): Type CUMULATIVE_ARGS is now a pointer to a structure instead of a structure. New field arg_words tracks number of words consumed so far and arg_number just tracks physical numbers of arguments. Make four single precision floating point arguments passed via prototypes use $f12, $f14, $6, and $7, just like mips cc. * tm-mips.h (INIT_CUMULATIVE_ARGS, FUNCTION_ARG_ADVANCE, FUNCTION_ARG, FUNCTION_ARG_PARTIAL_NREGS): Type CUMULATIVE_ARGS is now a pointer to a structure instead of a structure, and storage is allocated via alloca.Thu Nov 29 22:03:57 1990 Richard Stallman (rms at mole.ai.mit.edu) * tm-vax.h (BLOCK_PROFILER, FUNCTION_BLOCK_PROFILER): New macros.Tue Nov 27 12:03:36 1990 Richard Stallman (rms at mole.ai.mit.edu) * tm-hp9k320.h (STANDARD_STARTFILE_PREFIX): Don't alter if already set.Tue Nov 27 12:28:45 1990 Michael Meissner (meissner at osf.org) * out-mips.c (function_arg, function_arg_advance): Pass single precision floating point numbers to prototyped functions by assuming only one word is passed rather than two unless the argument is passed in a floating point register. This behavior matches the MIPS C compiler. * tm-mips.h (CPP_SPEC): Add -D_MIPSEB -D_SYSTYPE_SYSV -D_LANGUAGE_C to SGI's CPP_SPEC. (MIPS_DEBUGGING_INFO): New macro. (PUT_SDB_*): Write debug information to the temporary file that buffers the text section, instead of using the current output file. * tm-iris.h (CPP_PREDEFINES): Move -D_LANGUAGE_C from CPP_PREDEFINES to CPP_SPEC since it's in the compiler name space, -ansi should not disable it.Mon Nov 26 18:37:39 1990 Michael Meissner (meissner at osf.org) * mips.md (stack compressor peephole): Remove check against stack_args_preallocated, since nobody sets it. (anonymous add/subtract patterns): Explicitly use the assembler temporary register if adding/subtracting a constant that won't fit in 16 bits -- Silicon Graphics asm complains. (fix_truncdfsi2, fix_truncsfsi2) Rewrite so that optimization of repeated conversions of the same number do not generate an insn not found error message (the generated insn was optimized to a gp->gp register move inside of a parallel with a clobber of a hard fp register). The new insns describe the machine more faithfully, and allow things like clobbering the fp register containing the value, if it is the last use rather than using a specific hard register. (fixuns_truncsfsi2, fixuns_truncdfsi2): New patterns to automatically convert {single,double} precision to unsigned. (anonymous move df/sf patterns): Put the operands to mfc1 in the order the assembler likes them (always put gp reg first, even if moving from gp register to fp register). (wild_insn): Remove bogus insn which is commented out. (jump): Remove TARGET_PIC code for now. * out-mips.c (toplevel, function_epilogue, mips_asm_file_end, mips_output_external): If optimizing for the global pointer, emit all code after processing the entire program, rather than emitting the code at the end of the function. Also, properly sized .extern's are emitted for variables that are not defined in the current module. This is because the MIPS assembler uses single pass semantics, and will emit a 2 instruction sequence for externals it doesn't know anything about, and GCC emits data definitions at the end of the program. You can't just emit a properly sized .extern either, because the assembler will complain if it sees an .extern followed by a definition. The ADDRESSABLE bit in the identifier node for the external name is used to indicate whether a definition for the name exists or not. This replaces code which told the assembler to preprocess the source, and include the same source twice. (sym_lineno): Add a new variable to keep trace of labels emitted after each .loc for Silicon Graphics. (function_prologue, function_epilogue, toplevel): Explicitly use temporary registers for stack frames > 32K, since the Silicon Graphics system doesn't automatically use $at if the value overflows, also save an instruction or two for large stack frames. (init_cumulative_args): Fix to work with the method types G++ produces as well as normal function types. (compare_collect): In debug code, print the mode symbolically. (trace): Take two additional arguments which are passed to fprintf. (override_options): Remove unsupported -mpic code. * tm-decstatn.h (toplevel): Add a GNU copyright. * tm-iris.h (toplevel): Add a GNU copyright. (CPP_SPEC): If -ansi, define __EXTENSIONS__. (SGI_TARGET): Define this for other mips files. (LABEL_AFTER_LOC): New macro to put a label after .loc. (SET_FILE_NUMBER): New macro to force .file/.loc file # to be 1. (ADJUST_STACK_SIZE): Don't deal with variable arguments. * tm-mips.h (*_SPEC): Add #ifdef's so other files can define their own, without #undef. (LINK_SPEC, ASM_SPEC): Pass -EB/-EL to assembler, linker so cross compilers can be made from little endian mips to big endian mips and vica versa. Generate an error message if the wrong flag is used. Do not pass -EB/-EL to Silicon Graphics assembler/linker. (CPP_SPEC, MACHINE_NAME): Add Silicon Graphics defaults. (MIPS_TEMP?_REGNUM): New macros for temporary registers used in the prologue and epilogue if the stack frame is > 32K. (ASM_OUTPUT_LABEL): If optimizing the global pointer, set the addressable bit in the indentifier node, so that mips_asm_file_end and mips_output_external can figure out if a particular identifier really is external to the compiliation unit. (ASM_OUTPUT_COMMON): Same change as ASM_OUTPUT_LABEL. (ASM_OUTPUT_LOCAL): Same change as ASM_OUTPUT_LABEL. (MACHINE_TYPE): Key off of OSF_OS and SGI_TARGET macros. (TARGET_DEFAULT): For OSF/1 make -mgas and -G 0 default. (STACK_POINTER_OFFSET): Define as 0. (external variables): Declare flag_omit_frame_pointer, sdb_label_count, mips_section_threshold, and sym_lineno. (STACK_ARGS_ADJUST): Protect with an #ifndef. (FUNCTION_PROFILER): Talk to the MIPS profiling routines the same way the MIPS compiler does. (INDIRECTABLE_ADDRESS_P): Allow disp+reg in addition to reg+disp. (ASM_FILE_START): If optimizing for the global pointer, create a temporay stream to hold text until program ends. Put gcc_compiled. in the data section. (ASM_DECLARE_FUNCTION_NAME): Switch file streams used to the text stream if optimizing for the global pointer. (ASM_FILE_END): New macro to invoke mips_asm_file_end function. (ASM_OUTPUT_SOURCE_LINE): Invoke macro LABEL_AFTER_LOC after .loc, so that Silicon Graphics can put out a label after each .loc. (ASM_OUTPUT_SOURCE_FILENAME): Invoke macro SET_FILE_NUMBER to set the file number, so Silicon Graphics can hardwire this to 1. (LABEL_AFTER_LOC, SET_FILE_NUMBER): Provide defaults if not Silicon Graphics. (ASM_OUTPUT_ASCII): Assign parameter to local variable, and remove special \a, \v support. (ASM_OUTPUT_IDENT): Dump #ident directives into .data.Mon Nov 26 16:50:57 1990 Richard Stallman (rms at mole.ai.mit.edu) * cccp.c (main): Handle -w. (warning): Do nothing if -w. * gcc.c (compilers): Pass -w to cpp.Sun Nov 25 16:37:10 1990 Richard Stallman (rms at mole.ai.mit.edu) * expr.c (emit_push_insn): Don't pad at all if space already allocated and padding is upward. * gcc.c (do_spec_1): Handle %W{...}. (compilers): Use %W{...} when passing -o option.Sat Nov 24 16:50:11 1990 Richard Stallman (rms at mole.ai.mit.edu) * va-mips.h (va_list): Don't typedef if _VA_LIST_ is defined.Wed Nov 21 15:57:48 1990 Richard Stallman (rms at mole.ai.mit.edu) * expr.c (expand_expr, expand_assignment): Check for TREE_THIS_VOLATILE in ARRAY_REF. expand_assignment failed to handle volstruct at all.Tue Nov 20 17:47:22 1990 Richard Stallman (rms at mole.ai.mit.edu) * out-sparc.c (output_fp_move_double): Handle reg+reg address when moving each word separately. * ns32k.md (addsi3): Don't use `addr' for very large displacements. * recog.c (address_operand): Don't allow volatile mem as indirect.Mon Nov 19 14:55:44 1990 Richard Stallman (rms at mole.ai.mit.edu) * out-sparc.c (output_fp_move_double): Don't assume arrays are aligned.Sun Nov 18 19:21:10 1990 Richard Stallman (rms at mole.ai.mit.edu) * expr.c (emit_push_insn): set extra to 0 once the padding is done, to avoid padding twice.Thu Nov 15 21:56:07 1990 Richard Stallman (rms at mole.ai.mit.edu) * math-68881.h (HUGE_VAL): Add extra braces on Sun.Wed Nov 14 14:30:29 1990 Richard Stallman (rms at mole.ai.mit.edu) * c-decl.c (grokdeclarator): Don't ignore prototype if -traditional.Tue Nov 13 18:16:47 1990 Richard Stallman (rms at mole.ai.mit.edu) * out-i860.c (output_block_move): Move .Lm%3 down one insn.Wed Nov 7 00:01:18 1990 Richard Stallman (rms at mole.ai.mit.edu) * c-parse.y (component_decl_list): Allow missing semi at end.Tue Nov 6 20:49:57 1990 Richard Stallman (rms at mole.ai.mit.edu) * expr.c (expand_builtin): For ffs, use mode of operand. * xm-iris.h (alloca): Don't define it. * tm-iris.h (CPP_SPEC): Define variant symbols starting with _. Define __EXTENSIONS__. * config.gcc (editing .gdbinit): Search current dir, not just srcdir.Sun Nov 4 12:55:03 1990 Richard Stallman (rms at mole.ai.mit.edu) * i386.md (extend*): Take out last change. Unix assembler rejects movsx... * expr.c (expand_expr): Special case for ignored volatile failed to return.Fri Nov 2 15:30:48 1990 Richard Stallman (rms at mole.ai.mit.edu) * va-i860.h (_VA_LIST): New macro avoids duplicate typedefs. * gnulib2.c (__builtin_saveregs): Add version for i860. * out-i860.c (output_block_move): Rearrange the copy loop. Now uses two labels and a more complicated lead-in.Thu Nov 1 18:15:11 1990 Richard Stallman (rms at mole.ai.mit.edu) * config.gcc (sun3, etc.): Assume os4 as default for Sun 3 and Sun 4. * math-68881.h (HUGE_VAL): Alternate definition for Suns. * tm-i386v.h (STARTFILE_SPEC, LIB_SPEC): Handle -posix. (CPP_SPEC): New macro. (LIB_SPEC): Handle -shlib.Wed Oct 31 22:12:33 1990 Richard Stallman (rms at mole.ai.mit.edu) * config.gcc (ultrix): New alternative. * i386.md (extend*): Change opcode to movsx. Was movs.Tue Oct 30 17:03:46 1990 Richard Stallman (rms at mole.ai.mit.edu) * tm-aix386.h (ASM_FILE_START): Don't do .noopt or .optim. * cccp.c (make_definition): Convert newline to newline-newline.Mon Oct 29 11:43:46 1990 Richard Stallman (rms at mole.ai.mit.edu) * fixincludes: Fix missing semi in rusers.h.Sun Oct 28 17:23:50 1990 Richard Stallman (rms at mole.ai.mit.edu) * cccp.c (macarg1): Don't skip the char after */.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -