📄 changelog.7
字号:
* config/m68k/x-hp320,x-hp320g (TAROUTOPTS): Overridden. * Makefile.in (TAROUTOPTS): New variable. (install-headers-tar): Use TAROUTOPTS. * 3b1.h, 3b1g.h, altos3068.h, crds.h, hp2bsd.h, hp310.h: * isi-nfp.h, pbb.h, plexus.h, sun2.h, sun3n.h, tower.h: (LONG_DOUBLE_TYPE_SIZE): Redefine as 64. * objc/runtime.h: Include gstdarg.h before stdio.h. * Makefile.in (libobjc.a): Depend on EXTRA_PARTS.Wed May 13 18:33:26 1993 Torbjorn Granlund (tege@nada.kth.se) * arm.h: Declare output_arithmetic_with_immediate_multiply. * arm.md (combined mult/arithmetic recognizers): Switch on. Add special pattern for reload. * arm.md (restorehi): Use SImode for address. (storehi): Use SImode for address and address computation. (storeinthi): Likewise.Wed May 12 22:47:35 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * config/m68k/sun3.h, sun2os4.h (ASM_OUTPUT_FLOAT_OPERAND): Output as hex, unless CODE is 'f'. * altos3068.h, next.h (ASM_OUTPUT_FLOAT_OPERAND): Likewise.Wed May 12 14:18:36 1993 John Hassey (hassey@dg-rtp.dg.com) * m88k.h (REG_OK_FOR_BASE_P REG_OK_FOR_INDEX_P): Don't use extended registers for base or index.Wed May 12 14:48:00 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu) * unroll.c (copy_loop_body): Delete May 10 change.Tue May 11 20:20:41 1993 James Van Artsdalen (james at bigtex.cactus.org) * tree.c (real_value_from_int_cst): Use temporary variable `e' to work around bugs in 386 PCC.Tue May 11 16:50:54 1993 Michael Meissner (meissner@osf.org) * mips/iris3.h, mips/mips.h, mips/news4.h, mips/nws3250v4.h, mips/ultrix.h (ASM_SPEC): Pass appropriate -g<n> switch to the assembler for -gstabs<n>, -gstabs+<n>, -ggdb<n>, and -gcoff<n> switches. * local-alloc.c (block_alloc): Don't dereference a NULL pointer.Tue May 11 12:09:37 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * tree.c (build_array_type): Delete the code to set TYPE_MAIN_VARIANT. * c-decl.c (complete_array_type): Likewise.Tue May 11 11:40:14 1993 Jeffrey A. Law (law@snake.cs.utah.edu) * pa.c (emit_move_sequence): Handle secondary reloads for loads of FP registers from constant expressions. * pa.h (CONSTANT_ADDRESS_P): Accept symbolic addresses during and after reload.Tue May 11 07:26:06 1993 Richard Kenner (kenner@mole.gnu.ai.mit.edu) * reorg.c (mostly_true_jump): Jump is forward if TARGET_LABEL is zero; don't try to get INSN_CODE of zero.Tue May 11 00:44:09 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * tree.c (build_array_type): Don't change TYPE_MAIN_VARIANT if incomplete (domain not known). * real.c (enan): Add forward decl.Mon May 10 20:32:12 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu) * unroll.c (copy_loop_body): Copy REG_NOTES during main loop instead of afterwards.Mon May 10 17:36:31 1993 Richard Kenner (kenner@vlxisi1.ultra.nyu.edu) * alpha.c (output_epilog): Fix minor error in instructions used to restore stack pointer.Mon May 10 15:59:41 1993 Michael Meissner (meissner@osf.org) * mips-tfile.c (parse_def): Do not execute a division by 0 when processing a doubly dimensioned array whose outer bound was 0 or not specified.Mon May 10 12:14:07 1993 John Hassey (hassey@dg-rtp.dg.com) * m88k.h (TRAMPOLINE_TEMPLATE): Fixed invalid bsr insn.Mon May 10 11:55:18 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * protoize.c: Don't include string.h. (strcat, strcpy, strcmp, strncpy, strncmp): Decls deleted. (dupnstr): Don't use return value of strncpy. (dupstr): Function deleted; callers changed to use savestring. * tree.c (change_main_variant): New function. (build_array_type): Use that to set the TYPE_MAIN_VARIANT. * c-decl.c (complete_array_type): Call change_main_variant.Mon May 10 11:53:02 1993 Steve Chamberlain (sac@wookumz.gnu.ai.mit.edu) * sh.md (movstrsi): Take alignment into account. * sh.c (shift_value_ok): Can't shift by negative values.Mon May 10 11:49:48 1993 Michael Meissner (meissner@osf.org) * va-mips.h (va_arg): Use __alignof__ instead of __alignof. * cp-decl.c (finish function): Add missing ';'.Mon May 10 00:54:16 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * objc/runtime.h: Include gstdarg.h, not stdarg.h. * libgcc2.c (__floatdisf): Use DFtype for intermediate values. * tree.c (real_value_from_int_cst): If I is unsigned, use REAL_VALUE_FROM_UNSIGNED_INT. * config/m68k/m68k.c (output_move_double): Use operand 0 to get SIZE. * reload.c (find_equiv_reg): Set goal_mem_addr_varies for all but true constant addresses.Sun May 9 17:53:52 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * config/sparc/sparc.h (SIZE_TYPE): Deleted. * fixincludes: When finding SIZE_TYPE, cd to ${LIB} to run cc. (memory.h): Don't try to read it if it doesn't exist. * real.c (NAN): Define for support of Not-a-Number bit patterns. (make_nan): New function outputs a NaN in requested machine mode. (eisnan, eiisnan, enan, einan, eiisinf, eiinfin): New functions. (earith, etrunci, etruncui, ereal_negate, ereal_ldexp, real_value_truncate, esub, eadd, emul, ediv, eremain): Return NaN arg back to caller. (eroundi, eroundui, ereal_to_int): NaN to integer returns -1 and a warning. (target_isnan): Check for NaN. (eneg): No-op if NaN. (eisneg, eisinf): False if NaN. (emovi, emovo): Handle NaN conversions. (esub, eadd): Infinity minus infinity = NaN and INVALID warning. (ediv): 0/0, inf/inf = NaN and INVALID warning. (emul): 0 * inf = NaN and INVALID warning. (e24toe, e53toe, e64toe): Generate e-type NaN for NaN input. (etoe24, etoe53, etoe64): Output NaN in appropriate machine mode. (ecmp): Unordered compare returns -2. (etoasc): NaN produces ASCII string "NaN". (asctoe): Unrecognizable input produces e-type NaN. (eremain): x REM y = NaN if y = 0 or x = infinity. * real.c (mtherr): Don't put newlines in error message string. * real.h (REAL_VALUES_LESS): True if return value of ereal_cmp is -1.Sun May 9 17:34:06 1993 Brendan Kehoe (brendan@lisa.cygnus.com) * cp-decl.c (finish_function): Don't do anything if we haven't got a current_function_decl. * cp-pt.c (tsubst): Don't assert if IN_DECL is null. (coerce_template_parms): Likewise. * cp-type2.c (process_init_constructor): Fix argument passing to initializer_constant_valid_p.Sun May 9 10:47:05 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * c-decl.c (complete_array_type): Make maxindex -1 for empty constructor. * i860.c (call_insn_operand): New funcion. * i860.md (call, call_value): Copy fn address to safe reg if necessary. (call, call_value matchers): Use call_insn_operand as predicate. * config/mips/mips.c (call_insn_operand): New function. * config/mips/mips.md (call_internal1, call_value_internal1): Use call_insn_operand as predicate. (call, call_value): Copy fn address to safe reg if necessary. * config/m68k/m68k.md (mulhisi3, umulhisi3 matchers): Restrict range of constants allowed.Sun May 9 13:31:35 1993 CET Kresten Krab Thorup (krab@iesd.auc.dk) * objc/hash.h, objc/objc.h, objc/sarray.h (gstddef.h): Conditionally include gstddef.h or stddef.h by IN_GCC.Sun May 9 00:51:33 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * reload.h: Fix unterminated comment. * objc-act.c (string_section): Delete comma before close-brace.Sat May 8 23:49:50 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * config/i386/i386.c (call_insn_operand): New function. * i386.md (call matchers): Use call_insn_operand. (call expanders): If address uses a virtual reg or arg pointer reg, copy it.Sat May 8 23:19:11 1993 Kaveh R. Ghazi (ghazi@caip.rutgers.edu) * configure (m88k-tektronix-sysv3): New target. * config/m88k/tekXD88.h: New file. * config/m88k/tekXD88.ld: New file. * config/m88k/x-tekXD88: New file.Sat May 8 10:40:54 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * config/i386/i386.md (call insn matchers): Use %a to print a mem's non-constant address; don't try to print the address by itself. * config/i386/next.h (ASM_GENERATE_INTERNAL_LABEL) (ASM_OUTPUT_INTERNAL_LABEL): Don't include a `.' in the label name. (LPREFIX): Likewise. * m68k.c (print_operand): For CONST_DOUBLE, treat VOIDmode like DImode. * expmed.c (init_expmed): Supply missing arg to rtx_cost. * config/convex/convex.h (LINK_LIBGCC_SPECIAL_1): Define this instead of LINK_LIBGCC_SPECIAL.Sat May 8 14:43:27 1993 Torbjorn Granlund (tege@nada.kth.se) * m68k.md (umulsidi3 expand + two matchers): Rewrite. Old patterns misused subreg and matched wrong immediate values. Use const_int_operand and constraint `n' for the immediate arg. (mulsidi3 patterns): Likewise.Sat May 8 07:06:14 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * i386/sco.h (VALUE_REGNO, HARD_REGNO_MODE_OK): Add missing #undef. * i386/sco.h, i386/sequent.h (HARD_REGNO_MODE_OK): Properly check for floating-point registers. Register 16 is AP and not floating.Fri May 7 19:43:49 1993 Brendan Kehoe (brendan@lisa.cygnus.com) * cp-typeck.c (default_conversion): Disable change of Apr 13th for now, since it seems to behave incorrectly in some cases.Fri May 7 17:38:22 1993 Michael Meissner (meissner@osf.org) * configure (all MIPS options): If --with-gnu-as is used, don't build mips-tfile or mips-tdump. If --with-gnu-ld is used, don't say we need collect2. (config.sub run): Explicitly invoke /bin/sh to run script, in case config.sub had it's execute bits turned off. * mips/t-mips-gas: New target file, used when the GNU assembler is used instead of the MIPS assembler.Fri May 7 17:41:00 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (float.h-nat): Use tmp-float.h as intermediate file.Fri May 7 13:42:06 1993 Mike Stump (mrs@poseidon.cygnus.com) * cp-search.c (mi_ventry): Change into a struct to make code more readable and to shut up compilers about valid ANSI C code.Fri May 7 13:15:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu) * pa.h (reg_class): Add new NON_SHIFT_REGS class. (REG_CLASS_NAMES): Name new class "NON_SHIFT_REGS". (REG_CLASS_CONTENTS): Initialize NON_SHIFT_REGS. * loop.c (strength_reduce): Handle case where loop_end is the end of the current function.Fri May 7 05:50:39 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) * reload.c (push_reload): Don't use IN as the reload reg in in-out reload if it is set elsewhere in the insn.Fri May 7 04:48:25 1993 Chris Smith (csmith@convex.com) * x-convex (CCLIBFLAGS): Build libgcc1 with -tm c1 so it can't cause executables to become c2-only. * xm-convex.h: Remove workarounds for OS 8.0 no longer needed. (bcopy, bzero): Define to use memcpy and memset, to get them inlined. * convex[123*].h (CC1_SPEC, CPP_SPEC, LIB_SPEC): Move to convex.h. * convex.h (TARGET_FLAGS): Add -mvolatile-[no]cache. (TARGET_FLAGS, LONG_TYPE_SIZE): add -mlong{32,64}. (target_cpu): Define, enumeration for targets to use instead of flags. (TARGET_C34, TARGET_C38): Add. These don't schedule the same as C2. (OVERRIDE_OPTIONS): Call init routine in convex.c. (CPP_SPEC, ASM_SPEC, LINK_SPEC): If originally bootstrapped with an ieee compiler, produce an ieee gcc. (LINK_LIBGCC_SPECIAL): Define, to avoid searching old libgcc.a versions during bootstrap. (STACK_BOUNDARY): Change from 32 to 64 -- odd-word aligned longwords are slow on c34. (FUNCTION_PROLOGUE): Make frame size a multiple of 8, not 4. (FUNCTION_EPILOGUE): Output a 0 to terminate c34 icache prefetch. (INITIAL_FRAME_POINTER_OFFSET): Make a multiple of 8. (REG_ALLOC_ORDER): Define. Put S0 (the return register) last. (HARD_REGNO_MODE_OK): Rewrite to make clearer. (MODES_TIEABLE_P): Rewrite to make clearer. (PREFERRED_RELOAD_CLASS): Rewrite to make clearer. (S0_REGNUM, A0_REGNUM): Define. (*_REGNUM): Write in terms of [AS]0_REGNUM instead of absolute numbers. (enum reg_class, etc): Add SI_REGS == S_REGS + INDEX_REGS. (REGNO_REG_CLASS, REG_CLASS_FROM_LETTER, REGNO_OK_FOR_*_P): Use tables. (CONST_OK_FOR_LETTER_P): Change. New def passes any const_int, rejects any const_double. (CONST_DOUBLE_OK_FOR_LETTER_P): Change. New defs are 'G' == low word all zeros, 'H' == high word all signs. (EXTRA_CONSTRAINT): New. 'Q' == volatile memref. Used to generate cache-bypass instructions when -mvolatile-nocache is set. (RETURN_POPS_ARGS): Change, always true. (FUNCTION_ARG_ADVANCE): Count args, not # words of args. (FUNCTION_ARG): Return arg count to the final VOIDmode FUNCTION_ARG hack that supplies "next arg register" to be stored in call insn. (TRAMPOLINE_TEMPLATE): Use instruction notation rather than constants. (INITIALIZE_TRAMPOLINE): Use gen_call_pop. (LEGITIMATE_CONSTANT_P): Rewrite to make clearer. (GO_IF_LEGITIMATE_ADDRESS): Do not use indirect addressing -- with insn scheduling, two loads can be faster and can't be slower. (SLOW_BYTE_ACCESS): Define unless C2. Memory access to bytes is not actually slow, but faster processors don't forward partial word writes to word reads, and setting SLOW_BYTE_ACCESS makes the code consistently use word ops where possible. (CONST_COSTS): Const_DOUBLE cost is zero -- if it appears, it is immediate and therefore free. (RTX_COSTS): areg+const is free (via indexing). (RTX_COSTS): Provide target-dependent values for *,<<,>> (ADDRESS_COST): Zero. Indirect addresses are no longer used. (ADJUST_COST): Define. (TARGET_FLOAT_FORMAT): Define as VAX_FLOAT_FORMAT. Also accurately describes the semantics (not the bit pattern) of convex ieee mode. (REAL_VALUE_ATOF): Define, to prevent real.c from constructing vax dfloats. Apparently it doesn't do gfloat. (CHECK_FLOAT_VALUE): Call convex.c. (ASM_FILE_START): Output appropriate .fpmode pseudo op. (ASM_IDENTIFY_GCC): Ouput a zero after gcc2_compiled to keep it from hiding the real name from profilers and adb. (ASM_OUTPUT_DOUBLE, _FLOAT): Use hex to avoid /bin/as conversion errors. (ASM_DECLARE_FUNCTION_NAME): Define; call convex.c.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -