mirror of
https://github.com/pmret/gcc-papermario.git
synced 2024-11-09 20:32:32 +01:00
10377 lines
381 KiB
Groff
10377 lines
381 KiB
Groff
|
Sun Jun 20 13:37:00 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Version 2.4.5 released.
|
||
|
|
||
|
* c-common.c (decl_attributes): If first_arg_num is 0, no error for it.
|
||
|
|
||
|
* Makefile.in (extraclean): Delete *.gz, and other diff and tar files.
|
||
|
|
||
|
Sun Jun 20 18:09:50 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* calls.c (expand_call): In last change, preserve the temp slot.
|
||
|
|
||
|
Sat Jun 19 19:55:43 PDT 1993 Ron Guilmette (rfg@netcom.com)
|
||
|
|
||
|
* dwarfout.c (type_main_variant): New function.
|
||
|
Use it in place of TYPE_MAIN_VARIANT everywhere in dwarfout.c.
|
||
|
|
||
|
* c-decl.c (grokdeclarator): Avoid the use of macros for ..._TYPE
|
||
|
nodes in cases where a parameter's type is error_mark_node.
|
||
|
|
||
|
Sat Jun 19 03:57:57 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Version 2.4.4 released.
|
||
|
|
||
|
* toplev.c (compile_file): For static decl never defined,
|
||
|
use just warning, not pedwarn.
|
||
|
|
||
|
* dbxout.c (dbxout_type): Reinstall #if 0 around code for
|
||
|
outputting structure types, that confused GDB.
|
||
|
|
||
|
Fri Jun 18 20:06:35 1993 Pat Rankin (rankin@eql.caltech.edu)
|
||
|
|
||
|
* vms.h (MAYBE_VMS_FUNCTION_PROLOGUE): adjust stack pointer by 4 prior
|
||
|
to calling C$MAIN_ARGS, otherwise POSIX edition of that routine dies.
|
||
|
|
||
|
Fri Jun 18 14:21:14 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (clean): Delete objc-headers subdir.
|
||
|
|
||
|
* config/m68k/m68k.h (TARGET_SWITCHES): For -m68020, -m68000 and
|
||
|
-msoft-float, turn off 01400 bits.
|
||
|
|
||
|
* Makefile.in (gcc.xtar.gz): Renamed from gcc.tar.z.
|
||
|
(dist): Change the dependency.
|
||
|
(mostlyclean): Delete tmp-gcc.xtar.gz.
|
||
|
|
||
|
* c-iterate.c (save_exprs): New variable.
|
||
|
(collect_iterators): Don't process a SAVE_EXPR twice.
|
||
|
(iterator_expand): Clear save_exprs.
|
||
|
|
||
|
* Makefile.in (gcc.info, cpp.info): Actually cd to srcdir.
|
||
|
|
||
|
* configure (clipper-intergraph-clix*): Use install-headers-cpio.
|
||
|
|
||
|
Fri Jun 18 13:37:16 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.c (output_block_move): Don't abort if one of the input
|
||
|
registers is allocated as a scratch register, just use fewer
|
||
|
scratch registers.
|
||
|
|
||
|
Fri Jun 18 00:25:16 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i386/i386.c (call_insn_operand): Require constant address
|
||
|
be a general_operand.
|
||
|
(expander_call_insn_operand): New fn (what call_insn_operand was).
|
||
|
* config/i386/i386.md (call_pop, call, call_value_pop, call_value)
|
||
|
(untyped_call): Use expander_call_insn_operand.
|
||
|
|
||
|
Thu Jun 17 17:58:11 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/pa/pa.md (decrement_and_branch_until_zero):
|
||
|
Pattern disabled.
|
||
|
|
||
|
Thu Jun 17 13:34:20 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* unroll.c (calculate_giv_inc): Add new variables increment_total
|
||
|
and tries, and new label retry, to handle case where increment is
|
||
|
two add instructions.
|
||
|
|
||
|
Thu Jun 17 12:13:53 1993 Minh Tran-Le (mtranle@paris)
|
||
|
|
||
|
* config/i386/aix386ng.h: Changes for non-GAS gcc.
|
||
|
(ASM_FILE_START_1): Always output .noopt because /bin/as is buggy.
|
||
|
Added #undef to {INIT,FINI,CTORS,DTORS}_SECTION_ASM_OP, ... when
|
||
|
not using GAS.
|
||
|
(CONST_SECTION_FUNCTION): Override svr3 default.
|
||
|
(EXTRA_SECTION_FUNCTIONS): Override svr3 default.
|
||
|
(OBJECT_FORMAT_COFF): Added define for collect2.
|
||
|
(MY_ISCOFF): For collect2 to handle aix and svr3 object file.
|
||
|
|
||
|
* config/i386/aix386.h (USE_GAS): New define.
|
||
|
|
||
|
Thu Jun 17 00:26:38 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* reg-stack.c (stack_result_p): New function.
|
||
|
(stack_reg_life_analysis): Use that.
|
||
|
|
||
|
* final.c (output_addr_const): Don't insert a leading space
|
||
|
in the CONST_DOUBLE_HIGH != 0 case.
|
||
|
|
||
|
Thu Jun 17 00:09:19 1993 Jeff Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.h (LEGITIMATE_CONSTANT_P): Reject function addresses for now.
|
||
|
|
||
|
Wed Jun 16 20:14:10 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (build_unary_op): Make sure it's the global fn `main'
|
||
|
before complaining about taking the address of it.
|
||
|
|
||
|
Wed Jun 16 16:24:31 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i386/xm-sysv4.h (SMALL_ARG_MAX): Defined.
|
||
|
|
||
|
* c-typeck.c (check_format): Don't crash if cur_type is an error_mark.
|
||
|
Handle identifier_node as the TYPE_NAME.
|
||
|
|
||
|
Mon Jun 14 16:09:24 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* calls.c (expand_call): If PCC_STATIC_STRUCT_RETURN and TARGET
|
||
|
is zero, copy result from static location.
|
||
|
|
||
|
* cse.c (invalidate_skipped_set): Promote "nonscalar" to "all".
|
||
|
|
||
|
Mon Jun 14 16:01:34 1993 Karl Berry (karl@cs.umb.edu)
|
||
|
|
||
|
* fixincludes (stdio.h math.h ctype.h sys/{limits.h,fcntl.h,dirent.h}):
|
||
|
Fix STDC/POSIX and other things for Interactive Unix 2.2 or later.
|
||
|
|
||
|
Mon Jun 14 04:41:38 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* reload.c (make_memloc): Don't reuse a memloc.
|
||
|
|
||
|
Sun Jun 13 16:01:37 1993 Jeff Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.md (iorsi3): Explicitly set length to 1.
|
||
|
(andsi3, lshrsi3, rotrsi3, rotlsi3): Likewise.
|
||
|
(ashift and ashiftrt by const_int_operand): Likewise.
|
||
|
((and (ashift)) optimizer): Likewise.
|
||
|
|
||
|
Sun Jun 13 20:23:04 1993 Stephen Moshier (moshier@world.std.com)
|
||
|
|
||
|
* real.c (ltoe, ultoe, eifrac, euifrac): Handle 64-bit longs.
|
||
|
(SFMODE_NAN, DFMODE_NAN, XFMODE_NAN, TFMODE_NAN): New macros
|
||
|
permit definitions of NaN patterns to be overridden in tm.h.
|
||
|
|
||
|
Sun Jun 13 12:55:22 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (start_function): Avoid a null-reference on CTYPE.
|
||
|
|
||
|
Sun Jun 13 08:22:30 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expr.c (expand_expr, case COND_EXPR): Fix typo; const1_rtx should
|
||
|
be const0_rtx when ignoring expression.
|
||
|
|
||
|
Sun Jun 13 00:15:00 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* genopinit.c (optabs): For strlen_optab, don't look for `2' in name.
|
||
|
|
||
|
Sat Jun 12 20:23:04 1993 Stephen Moshier (moshier@world.std.com)
|
||
|
|
||
|
* real.c (ereal_from_float, ereal_from_double): New functions.
|
||
|
* real.h (REAL_VALUE_FROM_TARGET_SINGLE): New macro.
|
||
|
(REAL_VALUE_FROM_TARGET_DOUBLE): Likewise.
|
||
|
* emit-rtl.c (gen_lowpart_common): Use those macros if REAL_ARITHMETIC.
|
||
|
|
||
|
Sat Jun 12 13:44:00 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sched.c (add_dependence): Reject CODE_LABELs when searching for
|
||
|
last insn of a sched group.
|
||
|
|
||
|
Sat Jun 12 08:06:25 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* m68k.md (movqi): Handle copying an address register to or
|
||
|
from memory when the address uses the address register.
|
||
|
|
||
|
Sat Jun 12 00:17:06 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cse.c (record_jump_cond): Look up op1 again after inserting op0.
|
||
|
|
||
|
Fri Jun 11 21:50:16 1993 John F Carr (jfc@Athena.mit.edu)
|
||
|
|
||
|
* rs6000.md (movsf, movdf): Handle a move from an integer register
|
||
|
before reload. This can happen if the user uses asm to put a floating
|
||
|
point variable in an integer register.
|
||
|
|
||
|
Fri Jun 11 20:04:43 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rs6000.c (rs6000_gen_section_name): Only replace last period
|
||
|
in filename with section name and correct calculation of
|
||
|
string length.
|
||
|
|
||
|
* recog.c (constrain_operands): Correctly ignore MATCH_OPERATOR
|
||
|
operands.
|
||
|
|
||
|
* reload1.c (eliminate_regs_in_insn): Don't use a later elimination
|
||
|
than eliminate_regs would use.
|
||
|
|
||
|
* c-decl.c (finish_decl): Don't modify DECL_INITIAL of a PARM_DECL.
|
||
|
|
||
|
Thu Jun 10 23:48:01 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* genextract.c (main): Use __volatile__, not volatile.
|
||
|
|
||
|
Thu Jun 10 16:21:08 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* i386/osfrose.h (SUBTARGET_SWITCHES): Add -m{,no-}ident.
|
||
|
(ASM_SPEC): Pass -v to assembler if used.
|
||
|
(OVERRIDE_OPTIONS): Don't allow -fpic if using the OSF/rose object
|
||
|
format.
|
||
|
(ASM_DECLARE_OBJECT_NAME, ASM_DECLARE_FUNCTION_NAME): If using ELF,
|
||
|
emit a .type pseudo op that says the label is either an object or
|
||
|
a function.
|
||
|
(ASM_DECLARE_FUNCTION_SIZE): Copy from svr4.h.
|
||
|
(SCCS_DIRECTIVE): Define.
|
||
|
(ASM_FILE_END): Unless -mno-ident, emit a .ident directive that
|
||
|
identifies GCC and whether several switches are used.
|
||
|
|
||
|
* i386/osfelf.h (ASM_SPEC): Pass -v to assembler if used.
|
||
|
(OBJECT_FORMAT_ROSE): Undefine.
|
||
|
|
||
|
Thu Jun 10 16:20:24 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* expmed.c (MAX_BITS_PER_WORD): Define earlier.
|
||
|
(shift_cost, shiftadd_cost, shiftsub_cost): Use MAX_BITS_PER_WORD.
|
||
|
|
||
|
Thu Jun 10 12:56:18 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sched.c (sched_analyze_2): Don't ignore USE insns when creating
|
||
|
dependencies.
|
||
|
(sched_analyze): Likewise.
|
||
|
|
||
|
Wed Jun 9 12:58:51 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* configure (i386-*-osfelf): Add new configuration for OSF/1 using
|
||
|
the ELF object file format.
|
||
|
|
||
|
* i386/osfelf.h (new file): New config file for OSF/1 with ELF.
|
||
|
Include osfrose.h and redefine things as needed.
|
||
|
|
||
|
* i386/osfrose.h (SUBTARGET_SWITCHES): Add -melf, -mrose, and
|
||
|
-mno-rose switches.
|
||
|
(HANDLE_SYSV_PRAGMA): Define.
|
||
|
(IDENTIFIER_PREFIX, IDENTIFIER_SUFFIX): Remove unused macros.
|
||
|
(CPP_PREDEFINES): Add -Acpu(i386) -Amachine(i386) -Asystem(unix).
|
||
|
(CPP_SPEC): Define __ROSE__ if compiling for OSF/rose and __ELF__
|
||
|
if compiling for the ELF object format.
|
||
|
(CC1_SPEC): Pass -mrose if no object format switch.
|
||
|
(DWARF_DBX_REGISTER_NUMBER): Map registers according to the
|
||
|
debugging format.
|
||
|
|
||
|
Wed Jun 9 13:21:03 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Mon Jun 7 18:01:31 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (is_subobject_of_p, lookup_field, lookup_fnfields):
|
||
|
Because virtual bases don't necessarily share the same binfo, use
|
||
|
the binfo hierarchy of TYPE_BINFO of any virtual bases, when
|
||
|
performing hiding checks. Fixes problem introduced on Thu Mar 25
|
||
|
23:09:27 1993. The symptom is the compiler reports non ambiguous
|
||
|
members as being ambiguous.
|
||
|
|
||
|
Wed Jun 2 11:53:24 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (lookup_fnfields_here): Use TYPE_MAIN_VARIANT on
|
||
|
context types before comparing. Fixes const member functions not
|
||
|
being found in templates.
|
||
|
|
||
|
Tue Jun 8 19:44:23 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (finish_function): Move setting of the DECL_RESULT's
|
||
|
context and calling setjmp_protect after poplevel, so we have a
|
||
|
valid DECL_INITIAL for the fndecl (not an error_mark_node).
|
||
|
|
||
|
Tue Jun 8 13:14:27 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* configure: Added gas support for m88k-* targets.
|
||
|
|
||
|
* t-luna-gas t-dgux-gas t-m88k-gas: New files in config/m88k.
|
||
|
|
||
|
Tue Jun 8 14:51:44 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* loop.c (move_movables): Delete REG_EQUAL notes that describe a
|
||
|
non loop invariant value.
|
||
|
|
||
|
* sparc.c (call_operand, call_operand_address): Accept any address
|
||
|
not just REG rtx.
|
||
|
|
||
|
Tue Jun 8 18:47:39 1993 Torbjorn Granlund (tege@nada.kth.se)
|
||
|
|
||
|
* sparc.h: (RTX_COSTS): Make cost of MULT depend on TARGET_V8.
|
||
|
|
||
|
* pa.h (CPP_SPEC): Fix typo: define __hp9000s700.
|
||
|
|
||
|
Tue Jun 8 06:16:30 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* m88k.h (HARD_REGNO_REGS, HARD_RENO_MODE_OK, MODES_TIEABLE_P):
|
||
|
Restrict use of 88110 extended registers to floating point.
|
||
|
|
||
|
Mon Jun 7 15:42:10 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* math-68881.h (atan2): For x <= 0, lump y == 0 with y > 0
|
||
|
to get the right result in 0, -1 case.
|
||
|
|
||
|
Mon Jun 7 17:50:25 1993 Jeff Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.h (RTX_COSTS): Cost of MULT also depends on
|
||
|
TARGET_DISABLE_FPREGS.
|
||
|
|
||
|
* pa.h (ASM_OUTPUT_INT): Always emit special "plabel" relocation for
|
||
|
function labels.
|
||
|
|
||
|
Sun Jun 6 16:31:59 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gcc.c (translate_options): Don't assume option_map[j].arg_info != 0.
|
||
|
|
||
|
* config/vax/vax.h (PRINT_OPERAND): Prefix constant by `$'.
|
||
|
|
||
|
Sun Jun 6 00:44:48 1993 Torbjorn Granlund (tege@nada.kth.se)
|
||
|
|
||
|
* m88k.md (fix_truncdfsi2): Destination is general register, source
|
||
|
general or extended register.
|
||
|
(fix_truncsfsi2): Likewise.
|
||
|
|
||
|
Sun Jun 6 00:20:25 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc-act.c (encode_type): Add cases for DImode, encoded
|
||
|
as 'q' and 'Q' respectively.
|
||
|
|
||
|
Sat Jun 5 14:02:36 1993 James Van Artsdalen (james@bigtex.cactus.org)
|
||
|
|
||
|
* c-decl.c (pushdecl): Copy DECL_FRAME_SIZE for inline function decls.
|
||
|
|
||
|
* stmt.c (check_for_full_enumeration_handling): Don't create a
|
||
|
default label if all enumeration literals are covered by cases.
|
||
|
|
||
|
Sat Jun 5 04:49:19 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* function.c (uninitialized_vars_warning): Change warning text.
|
||
|
(setjmp_args_warning): Likewise.
|
||
|
|
||
|
* c-typeck.c (convert_for_assignment): Allow conversion to union type
|
||
|
for pointer if the pointer could convert to the union member.
|
||
|
|
||
|
Fri Jun 4 18:09:47 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* integrate.c (expand_inline_function): Always copy a SUBREG as an
|
||
|
argument into a REG.
|
||
|
|
||
|
Fri Jun 4 05:52:28 1993 Torbjorn Granlund (tege@nada.kth.se)
|
||
|
|
||
|
* pa.h (RTX_COSTS): Make cost of MULT depend on TARGET_SNAKE.
|
||
|
|
||
|
* expmed.c (synth_mult): Move code to add or subtract at
|
||
|
leftmost 1-bit to before factoring code to decrease the allowed cost
|
||
|
quickly. Restrict it to handle only odd numbers.
|
||
|
(init_expmed): Limit mult_cost to make synth_mult run faster.
|
||
|
|
||
|
Fri Jun 4 23:18:35 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc/sendmsg.c (objc_msg_sendv): Pass a dummy va_list, not 0,
|
||
|
to objc_error.
|
||
|
|
||
|
Fri Jun 4 16:12:43 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* byteorder.h: Use new-style function definitions, so that this
|
||
|
file is both valid C and C++.
|
||
|
|
||
|
Fri Jun 4 00:59:31 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/mips/svr4-5.h (CPP_PREDEFINES):
|
||
|
Add _MIPS_SZINT _MIPS_SZLONG _MIPS_SZPTR.
|
||
|
|
||
|
Thu Jun 3 23:48:39 1993 Jeff Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.c (output_function_epilogue): If the last insn in the
|
||
|
current function is a (volatile) call, then emit an extra
|
||
|
nop after the call so that RP will point to a valid instruction.
|
||
|
|
||
|
Thu Jun 3 18:52:24 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/nextstep.h (INCLUDE_DEFAULTS): Use same order as cccp.c.
|
||
|
Add CCC_INCLUDE_DIR with /ansi and /bsd concatenated.
|
||
|
|
||
|
* varasm.c (immed_real_const_1): Check explicitly for NaNs.
|
||
|
|
||
|
Thu Jun 3 14:37:25 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* combine.c (num_sign_bit_copies): At end, return 1 is nonzero has
|
||
|
the high bit set.
|
||
|
|
||
|
Wed Jun 2 17:27:31 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* loop.c (record_initial): Reject insns that store into subregs.
|
||
|
|
||
|
Tue Jun 1 12:46:48 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Version 2.4.3 released.
|
||
|
|
||
|
* just-fixinc: New file.
|
||
|
|
||
|
* config/convex/convex.h [_IEEE_FLOAT_] (LINK_SPEC):
|
||
|
Use ___gcc_cleanup, not __gcc_cleanup.
|
||
|
|
||
|
Tue Jun 1 07:41:26 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rs6000.md (ffs): Delete pattern containing nonexistant instruction.
|
||
|
|
||
|
* alpha.md (extendsidi2): Correctly do operation when in FP
|
||
|
registers and, since expensive, don't have FP regs as a preference.
|
||
|
|
||
|
Tue Jun 1 00:09:46 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixincludes (signal.h): Fix typo in last change.
|
||
|
|
||
|
* configure: Add missing dash in patterns for mips-*-riscos...
|
||
|
In riscos 5 patterns, use fixinc.mips.
|
||
|
|
||
|
* fixinc.mips: New file.
|
||
|
|
||
|
* config.sub: Handle 386bsd.
|
||
|
|
||
|
Mon May 31 23:47:00 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/vax/vax.md (untyped_call, blockage): New patterns,
|
||
|
basically copied from m68k.md.
|
||
|
|
||
|
Mon May 31 21:46:08 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* romp.c (output_epilog): Don't crash if TYPE_SIZE of an arg is
|
||
|
not set.
|
||
|
|
||
|
Mon May 31 00:15:20 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/mips/x-sony (OLDCC): Fix typo.
|
||
|
|
||
|
* config/mips/bsd-4.h, bsd-5.h, svr3-4.h, svr3-5.h, svr4-4.h, svr4-5.h:
|
||
|
(STANDARD_INCLUDE_DIR): Renamed from SYSTEM_INCLUDE_DIR.
|
||
|
* config/mips/bsd-5.h, svr3-5.h, svr4-5.h (LINK_SPEC):
|
||
|
Delete excess close brace.
|
||
|
|
||
|
* pa.md (decrement_and_branch_until_zero):
|
||
|
Reverse all conditions in reload cases.
|
||
|
|
||
|
* Version 2.4.2 released.
|
||
|
|
||
|
Sun May 30 21:14:42 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* integrate.c (expand_inline_function): Increment map->const_age
|
||
|
before copying REG_NOTES.
|
||
|
|
||
|
* sparc.c (sparc_builtin_saveregs): Don't set first_reg to zero
|
||
|
for varargs.
|
||
|
|
||
|
Sun May 30 23:58:52 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/Makefile (copy-headers): chmod the headers, not the dir.
|
||
|
|
||
|
* Makefile.in (objc-headers): Don't dep on force.
|
||
|
Touch objc-headers so copy is not repeated at install time.
|
||
|
|
||
|
* final.c (shorten_branches): Conditionalize last change
|
||
|
on SHORTEN_WITH_ADJUST_INSN_LENGTH.
|
||
|
|
||
|
* pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Defined.
|
||
|
|
||
|
Sun May 30 13:53:30 1993 Jeff Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* final.c (shorten_branches): Call ADJUST_INSN_LENGTH during the
|
||
|
shortening phase.
|
||
|
|
||
|
* pa.c (output_cbranch): In forward/long branch case, only
|
||
|
nullify if the delay slot was empty or if the delay slot
|
||
|
was explicitly nullified.
|
||
|
(output_bb): Likewise.
|
||
|
|
||
|
* pa.h (ADJUST_INSN_LENGTH): Call pa_insn_adjust_length.
|
||
|
|
||
|
* pa.h (INSN_SETS_ARE_DELAYED): Do not call get_attr_type with a
|
||
|
CLOBBER insn.
|
||
|
(INSN_REFERENCES_ARE_DELAYED): Likewise.
|
||
|
|
||
|
* pa.md (call insns and expanders): Do not explicitly clobber %r31.
|
||
|
|
||
|
* pa.c (pa_insn_adjust_length): Rework. Add code to handle
|
||
|
millicode calls with unfilled delay slots and inline block moves.
|
||
|
(compute_movstrsi_length): New function to compute the length of
|
||
|
a movstrsi pattern.
|
||
|
(output_cbranch): Long branches with unfilled delay slots can
|
||
|
always nullify the following instruction if their delay slot
|
||
|
was not filled.
|
||
|
|
||
|
Sun May 30 18:58:22 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* mips.c (function_arg_partial_nregs): For BLKmode values, fits in
|
||
|
remaining register if total size <= MAX_ARGS_IN_REGISTERS, not <.
|
||
|
|
||
|
Sun May 30 17:45:06 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* emit-rtl.c (operand_subword): Shift by (HOST_BITS_PER_WIDE_INT / 2),
|
||
|
not by 32.
|
||
|
|
||
|
* reload1.c (reload): If only non-group need is unfilled, see if
|
||
|
regs spilled for earlier classes can satisfy it.
|
||
|
|
||
|
* config/mips/iris4loser.h (ASM_SPEC): Add unconditional -O0.
|
||
|
|
||
|
Sat May 29 15:19:57 1993 Jeff Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.md (movdf for const_double): Handle loading
|
||
|
a CONST_DOUBLE into general registers.
|
||
|
(movsf for const_double): Likewise.
|
||
|
|
||
|
* pa.c (singlemove_string): Handle SFmode CONST_DOUBLE
|
||
|
as a source operand.
|
||
|
|
||
|
Sat May 29 14:14:30 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* emit-rtl.c (operand_subword): Correctly handle case when
|
||
|
REAL_VALUE_TO_TARGET_DOUBLE is used on a 64-bit machine.
|
||
|
|
||
|
Sat May 29 12:15:43 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixincludes (signal.h): Don't mung #endif if nonwhite stuff precedes.
|
||
|
|
||
|
* rtl.h: Undef PC.
|
||
|
|
||
|
Fri May 28 19:01:39 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* configure (i[34]86-*-isc*): If gas and not stabs, use isccoff.h.
|
||
|
|
||
|
* final.c (shorten_branches): Do not call insn_current_length
|
||
|
with an insn which has a non-varying length. Use insn_lengths
|
||
|
instead.
|
||
|
|
||
|
* c-typeck.c (process_init_constructor): Never set current_index
|
||
|
itself--always store into current_index_node.
|
||
|
|
||
|
* dbxout.c (dbxout_type): Add missing `;' for array with no domain.
|
||
|
|
||
|
Fri May 28 16:47:54 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* cse.c (fold_rtx): Correct check for associating shifts and
|
||
|
ending up with a shift count too large; convert to the
|
||
|
largest valid for ASHIFTRT and don't fold all others.
|
||
|
|
||
|
* combine.c (make_compound_operation, case ASHIFTRT): Fix typo.
|
||
|
Was using C1 where C2 is needed.
|
||
|
|
||
|
Fri May 28 17:50:38 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* integrate.c (expand_inline_function): When copy REG_NOTES, must
|
||
|
also call subst_constants.
|
||
|
|
||
|
* gcc.c (process_command): When GCC_EXEC_PREFIX is defined and
|
||
|
tooldir is relative, add it to search path in addition to standard
|
||
|
directory rather than instead of.
|
||
|
|
||
|
Fri May 28 00:50:53 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/arm/arm.h (GO_IF_LEGITIMATE_INDEX): Check explicitly for
|
||
|
upper and lower bounds of valid INDEX.
|
||
|
|
||
|
* genopinit.c (insn_name_ptr): Declare as variable.
|
||
|
(optabs): Fix typo in floatuns case.
|
||
|
|
||
|
Thu May 27 12:13:55 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (simplify_and_const_int, case IOR, XOR, NOT): Don't
|
||
|
create constant wider than mode of VAROP.
|
||
|
|
||
|
Thu May 27 20:41:18 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* configure (i[34]86-ibm-aix*): Set fixincludes.
|
||
|
(i[34]86-*-sco*): Don't test --with-gas, just --with-stabs.
|
||
|
|
||
|
Wed May 26 16:05:05 1993 Michael Collison (collison@osf.org)
|
||
|
|
||
|
* jump.c (jump_optimize): Insert missing GET_MODE call.
|
||
|
|
||
|
Wed May 26 18:40:09 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* i960.md (ashlsi3): Use shlo instead of shli.
|
||
|
|
||
|
Wed May 26 00:34:33 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/nextstep.h (INCLUDE_DEFAULTS): Undo previous change.
|
||
|
|
||
|
* Makefile.in (gcc.xtar.z): Renamed from gcc.xtar.Z. Use gzip.
|
||
|
(dist): Depend on gcc.xtar.z.
|
||
|
(mostlyclean): Delete temp-gcc.xtar.z.
|
||
|
|
||
|
* Version 2.4.1 released.
|
||
|
|
||
|
* c-lex.c (readescape): Don't complain for \% unless pedantic.
|
||
|
|
||
|
* config/mips/mips.h (ASM_SPEC): If -noasmopt, pass -O0.
|
||
|
* config/mips/iris3.h: Likewise.
|
||
|
|
||
|
* config/mips/iris4loser.h: New file.
|
||
|
* config/mips/iris4gl.h: New file.
|
||
|
* configure (mips-sgi-iris4loser): New alternative.
|
||
|
|
||
|
Tue May 25 18:05:50 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* dbxout.c (dbxout_block) [DBX_BLOCKS_FUNCTION_RELATIVE]:
|
||
|
Get function name from DECL_RTL not from DECL_ASSEMBLER_NAME.
|
||
|
* config/sparc/sol2.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
|
||
|
|
||
|
* m68k/sun3.h (FUNCTION_VALUE, FUNCTION_VALUEX): Ifdef out.
|
||
|
|
||
|
* c-typeck.c (convert_for_assignment): When allowing mixing of
|
||
|
signed and unsigned pointers, compare unsigned types not type sizes.
|
||
|
|
||
|
Tue May 25 00:08:42 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* nextstep.h (INCLUDE_DEFAULTS): Delete /NextDeveloper/Headers/ansi
|
||
|
and /NextDeveloper/Headers/bsd.
|
||
|
|
||
|
* regclass.c (regclass): Fix paren error.
|
||
|
|
||
|
* c-decl.c (finish_decl): If type is laid out, but decl is not,
|
||
|
call layout_decl.
|
||
|
|
||
|
* protoize.c (include_defaults): Update to match cccp.c.
|
||
|
* Makefile.in (stamp-proto):
|
||
|
Pass LOCAL_INCLUDE_DIR based on local_prefix.
|
||
|
|
||
|
* stmt.c (expand_asm_operands): Detect constants as outputs.
|
||
|
|
||
|
Mon May 24 18:25:23 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* collect2.c (main): Use TARGET-gcc, not gcc-TARGET.
|
||
|
|
||
|
* reload1.c (delete_output_reload): Don't delete output reload
|
||
|
if cannot_omit_stores is set for that pseudo.
|
||
|
(reload): Init and clear cannot_omit_stores.
|
||
|
(eliminate_regs): Set cannot_omit_stores.
|
||
|
|
||
|
* configure (i[34]86-*-sco3.2v4*): Test --with-stabs, not --with-gas.
|
||
|
|
||
|
Mon May 24 14:10:59 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* integrate.c (expand_inline_function): Set MEM_IN_STRUCT_P for
|
||
|
return value if needed.
|
||
|
|
||
|
Mon May 24 13:10:07 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-call.c (convert_harshness): Don't dereference a null parm.
|
||
|
|
||
|
* cp-method.c (dump_init): Don't try to print out the first operand
|
||
|
of a TARGET_EXPR if it's not there.
|
||
|
|
||
|
Mon May 24 10:13:26 1993 Mike Stump (mrs@poseidon.cygnus.com)
|
||
|
|
||
|
* expr.c (expand_expr): Finish Tue Aug 18 23:07:33 1992 change. It
|
||
|
didn't handle the target != 0 case, now it does.
|
||
|
|
||
|
Mon May 24 00:30:50 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (expand_expr, TARGET_EXPR case):
|
||
|
Handle case where DECL_RTL is nonzero.
|
||
|
|
||
|
* configure (i[34]86-*-isc*): Use install-headers-cpio.
|
||
|
|
||
|
* genopinit.c (optabs): Add backslashes to prevent SCCS confusion.
|
||
|
* config/m68k/tower-as.h (CONSTRUCTOR_NAME_FORMAT): Likewise.
|
||
|
|
||
|
* combine.c (subst): For subreg-of-constant, don't gen_lowpart
|
||
|
if it's a big-endian machine and constant is multi-word.
|
||
|
|
||
|
* gstddef.h (size_t) [__GNUG__]: Don't typedef it if it's
|
||
|
already defined as a macro.
|
||
|
|
||
|
* config/i386/x-aix (CLIB): Defined.
|
||
|
* config/i386/aix386.h (STARTFILE_SPEC, LINK_SPEC): New overrides.
|
||
|
* config/i386/xm-aix.h: Undef TRUE and FALSE before #include.
|
||
|
* config/i386/aix386ng.h (STARTFILE_SPEC, LINK_SPEC): Don't use
|
||
|
crtbegin.o, crtend.o, crtn.o, libp.a. Use gcrt0.0, not gcrt1.o.
|
||
|
(ENDFILE_SPEC): Use crtn.o.
|
||
|
(CPP_PREDEFINES): Delete _AIX, AIX, and _I386. Add ps2, unix.
|
||
|
(CPP_SPEC): Add _AIX, _I386, _MBCS. Handle -posix.
|
||
|
(ASM_SPEC): Turned off.
|
||
|
* config/i386/t-aix: New file.
|
||
|
* configure (i[34]86-ibm-aix*): Use t-aix if using gas.
|
||
|
|
||
|
* config/i386/sco4.h (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE):
|
||
|
New override definitions.
|
||
|
|
||
|
* toplev.c (compile_file): Undo previous changes (that were to call
|
||
|
assemble_zeros whenever DBX_DEBUGGING_INFO is defined).
|
||
|
|
||
|
Sun May 23 16:31:38 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/nextstep.h (INCLUDE_DEFAULTS): Fix missing comma.
|
||
|
|
||
|
* config/i386/x-aix (FIXINCLUDES): Defined.
|
||
|
* fixinc.ps2: New file.
|
||
|
|
||
|
Sun May 23 14:51:06 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc/objc.h (objc_protocol): New field `class_pointer'.
|
||
|
|
||
|
* objc/init.c (__objc_init_protocols): Call recursively
|
||
|
on super protocols. Make local var `proto_class' static.
|
||
|
|
||
|
Sun May 23 00:49:17 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (BISONFLAGS): Remove -v since output file names are long.
|
||
|
|
||
|
* reload1.c (choose_reload_regs): If inheriting a spill reg,
|
||
|
and reload_out has a wider mode, just copy from that spill reg,
|
||
|
don't use it for the reload.
|
||
|
|
||
|
* reload.c (push_reload): Fix NULL arg in last change.
|
||
|
|
||
|
* config/m88k/x-tekXD88 (AR_FLAGS): Defined.
|
||
|
|
||
|
Sat May 22 14:49:59 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/mips/mips.h (ASM_SPEC): If -noasmopt, don't pass -O2.
|
||
|
* config/mips/iris3.h: Likewise.
|
||
|
|
||
|
* config/nextstep.h (INCLUDE_DEFAULTS): Put /usr/include/bsd last.
|
||
|
|
||
|
* config/alpha/alpha.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT):
|
||
|
Use hex if infinite, nan, or minus zero.
|
||
|
|
||
|
* real.c (target_isnan): Use GET_REAL macro to get argument.
|
||
|
(ereal_to_int): Fix potentially wrong-endian argument passed to eisnan.
|
||
|
|
||
|
Fri May 21 14:24:01 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/nextstep.h (INCLUDE_DEFAULTS): Add /usr/include/bsd.
|
||
|
|
||
|
* cccp.c (default_include): Put TOOL_INCLUDE_DIR after
|
||
|
LOCAL_INCLUDE_DIR in non-cross case.
|
||
|
|
||
|
* real.c (emdnorm): Fix typo affecting roundoff behavior in XFmode.
|
||
|
|
||
|
* config/m68k/amix.h (CPP_PREDEFINES): Add -D__svr4__.
|
||
|
(ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL):
|
||
|
New override definitions.
|
||
|
|
||
|
* collect2.c (main) [CROSS_COMPILE]: Use TARGET-TOOL for full_...
|
||
|
|
||
|
* collect2.c (main): For -debug, if ..._file_name is a null pointer,
|
||
|
say so instead of crashing.
|
||
|
|
||
|
* m68k.md (cmpxf2 recognizer): Test SGS_CMP_ORDER, not HPUX_ASM.
|
||
|
|
||
|
* c-common.c (constant_expression_warning)
|
||
|
(overflow_warning, convert_and_check): Change pedwarn to warning.
|
||
|
|
||
|
* reload.c (push_reload): When IN is a subreg of a multiword reg
|
||
|
that uses a funny number of registers, and SUBREG_WORD is nonzero,
|
||
|
and IN must match an output, reload both the reg and the subreg.
|
||
|
|
||
|
* protoize.c (add_symbol, unexpand_if_needed, abspath):
|
||
|
Supply missing arg to savestring.
|
||
|
|
||
|
* Makefile.in (info, dvi): New targets.
|
||
|
|
||
|
Fri May 21 10:28:41 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-pt.c (subst): Don't use a method's arguments unless it has some.
|
||
|
|
||
|
Fri May 21 11:51:20 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc/sarray.h (sarray_get): Add #ifdef case for
|
||
|
!defined(PRECOMPUTE_SELECTORS) and OBJC_SPARSE2.
|
||
|
* objc/sarray.c (sarray_at_put): Likewise.
|
||
|
|
||
|
Fri May 21 00:51:10 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* configure (mips-*-ultrix*): Renamed from mips-dec-ultrix*.
|
||
|
|
||
|
Thu May 20 23:16:43 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* reload1.c (choose_reload_regs): Handle earlyclobbers
|
||
|
when inheriting from reg_last_reload_reg.
|
||
|
|
||
|
Thu May 20 13:59:16 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* Makefile.in (install-dir): Fix syntax, make tooldir before assertdir.
|
||
|
|
||
|
Thu May 20 08:52:30 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gstddef.h [_ANSI_H_]: Handle __need_size_t and __need_wchar_t.
|
||
|
|
||
|
* fixincludes (Fixing CTRL): Reject CTRL or _CTRL following digit.
|
||
|
|
||
|
* enquire.c (F_check): Check NO_LONG_DOUBLE_IO.
|
||
|
|
||
|
Wed May 19 23:18:55 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i386/x-isc3 (X_CFLAGS): Delete -DPOSIX_JC.
|
||
|
|
||
|
* real.c (e24toe, e53toe, e64toe): Fix sign in conversions
|
||
|
of -infinity. Do eclear before einfin.
|
||
|
|
||
|
Wed May 19 15:37:20 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* va-sparc.h (va_dcl): Restore accidentally deleted __builtin_va_alist
|
||
|
declaration.
|
||
|
|
||
|
* objc-act.c (handle_class_ref): Call assemble_constant_align
|
||
|
before output_constant.
|
||
|
* varasm.c (assemble_constant_align): New function.
|
||
|
|
||
|
Wed May 19 13:40:01 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i860/x-sysv4 (X_CFLAGS): Deleted.
|
||
|
|
||
|
* configure (i[34]86-*-isc*): If version is 3, use x-isc3.
|
||
|
* config/i386/x-isc3: New file.
|
||
|
|
||
|
Mon May 19 21:47:49 1993 Jeff Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* Fix calling convention for indirect calls on the PA.
|
||
|
* calls.c (expand_call): Declare and set current_call_is_indirect.
|
||
|
(emit_library_call, emit_library_call_value): Likewise.
|
||
|
* function.c (assign_parms): Likewise.
|
||
|
* pa.h (TARGET_SHARED_LIBS): Define as 1.
|
||
|
(FUNCTION_ARG): If this is a call through a function pointer, then
|
||
|
the caller passes all arguments in general registers.
|
||
|
|
||
|
* pa.h (FUNCTION_ARG_REGNO_P): Account for registers which may
|
||
|
be unavailable on particular cpu models. Fix indentation.
|
||
|
|
||
|
Wed May 19 13:13:42 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* loop.c (scan_loop): Treat pseudo duplicated for exit tests just
|
||
|
like we treat user vars in seeing if we can move a SET.
|
||
|
|
||
|
* combine.c (set_nonzero_bits_and_sign_copies, nonzero_bits):
|
||
|
If we have a positive constant that is negative in the mode
|
||
|
it is being used in, treat it as negative.
|
||
|
* rs6000.h, alpha.h (SHORT_IMMEDIATES_SIGN_EXTEND): Define.
|
||
|
|
||
|
* emit-rtl.c (operand_subword): Reject cases when BITS_PER_WORD
|
||
|
is greater than HOST_BITS_PER_INT unless OP is const0_rtx.
|
||
|
|
||
|
Tue May 18 16:31:06 1993 Torbjorn Granlund (tege@nada.kth.se)
|
||
|
|
||
|
* pa.h (INITIALIZE_TRAMPOLINE): Make 2:nd flush, end_addr,
|
||
|
at the last real insn in the trampoline.
|
||
|
|
||
|
Tue May 18 13:35:43 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (assertdir): use $(tooldir)/include for this.
|
||
|
(install-dir): Always create assertdir and tooldir.
|
||
|
|
||
|
* config/arm/arm.md (add/asl recognizer): Use space, not #, after asl.
|
||
|
Shuffle operands differently.
|
||
|
|
||
|
* objc-act.c (synth_module_prologue): Set TREE_PUBLIC in umsg_decl.
|
||
|
|
||
|
* Makefile.in (infodir): New variable.
|
||
|
(install-dir): Create that dir.
|
||
|
(install-info): New rule.
|
||
|
(install-normal): Depend on install-info.
|
||
|
|
||
|
* fixincludes: Use $file. rather than $file.sed
|
||
|
when $file is or might be more than 10 characters long.
|
||
|
|
||
|
* config/i386/isc.h (LIB_SPEC): Handle -posix before -shlib.
|
||
|
|
||
|
* config/mips/x-sony: New file.
|
||
|
* configure (mips-sony-bsd*): Use x-sony.
|
||
|
|
||
|
* Makefile.in (local_prefix): Do not default from $(prefix).
|
||
|
|
||
|
Tue May 18 09:28:02 1993 Chris Smith (csmith@convex.com)
|
||
|
|
||
|
* convex.c (replace_pushes, emit_ap_optimizations): Delete.
|
||
|
|
||
|
Mon May 17 18:07:53 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixinc.svr4 (ieeefp.h): Delete definitions of __mips and __m68k.
|
||
|
|
||
|
Mon May 17 17:00:00 1993 DJ Delorie (dj@ctron.com)
|
||
|
|
||
|
* configure.bat: Fix sed for version.c to handle both with
|
||
|
and without spaces correctly (MS-DOS).
|
||
|
|
||
|
Mon May 17 12:26:55 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* rtl.c (init_rtl): Correct number of 'w's in CONST_DOUBLE format.
|
||
|
|
||
|
Mon May 17 00:07:50 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Version 2.4.0 released.
|
||
|
|
||
|
* Makefile.in (extraclean): Remove junk from objc subdir.
|
||
|
|
||
|
* fixinc.svr4 (ieeefp.h): Delete definitions of __i860 and __m88k.
|
||
|
|
||
|
* mips/iris4.h (ASM_OUTPUT_ASCII): New overriding definition.
|
||
|
|
||
|
* pa.h (INITIALIZE_TRAMPOLINE): Pass both the starting and ending
|
||
|
addresses of the trampoline to the cacheflush pattern.
|
||
|
* pa.md (cacheflush): Flush the cache entries associated with
|
||
|
both the starting and ending addresses of the trampoline.
|
||
|
|
||
|
* gvarargs.h, gstdarg.h [__svr4__ __i860__]:
|
||
|
Define _VA_LIST only if not defined already.
|
||
|
|
||
|
Mon May 17 00:40:36 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386/sysv4.h (BIGGEST_FIELD_ALIGNMENT, PCC_BITFIELD_TYPE_MATTERS):
|
||
|
Deleted. Now handled by HANDLE_SYSV_PRAGMA.
|
||
|
(HANDLE_SYSV_PRAGMA): Deleted: already defined by svr4.h.
|
||
|
|
||
|
Sun May 16 19:25:38 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* unroll.c (initial_reg_note_copy, final_reg_note_copy): New functions.
|
||
|
(copy_loop_body): Use new function to copy REG_NOTES.
|
||
|
|
||
|
Sun May 16 13:03:58 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (extraclean): Delete junk in subdirs of config.
|
||
|
(distclean): Delete {c,cplus,objc}-parse.output.
|
||
|
|
||
|
* reorg.c (find_end_label): Update insn after calling emit_jump_insn.
|
||
|
|
||
|
* fixinc.svr4 (ieeefp.h): Delete `#define __sparc' also.
|
||
|
|
||
|
Sun May 15 01:37:19 PDT 1993 Ron Guilmette (rfg@netcom.com)
|
||
|
|
||
|
* fixinc.svr4 (ieeefp.h): Delete `#define __i386' line.
|
||
|
|
||
|
Sat May 15 10:11:01 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* math-68881.h: Add conditional against multiple inclusion.
|
||
|
|
||
|
* gvarargs.h [__svr4__ __i860__] (_VA_LIST): Do define.
|
||
|
* gstdarg.h: Likewise.
|
||
|
|
||
|
* toplev.c (compile_file): If support dbx output,
|
||
|
always output 0 at start of text section.
|
||
|
|
||
|
* cp-tree.h (error_not_base_type): Fix typo in decl.
|
||
|
|
||
|
Sat May 15 09:08:23 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expr.c (expand_assignment): Fix error in last change.
|
||
|
|
||
|
* rs6000.md (movqi, movhi, movsi): Make sure that address returned
|
||
|
from force_const_mem is valid.
|
||
|
|
||
|
* i860.h (INITIALIZE_TRAMPOLINE): Don't make improper SUBREGs
|
||
|
and ensure that CXT and FNADDR are in registers.
|
||
|
|
||
|
* convex.c (insert_ap_loads): Initialize AP_IS_LIVE to 0 at
|
||
|
start of both loops, not just first one.
|
||
|
|
||
|
* convex.h (REGNO_REG_CLASS): Don't call abort; it will cause
|
||
|
a compilation error as written and isn't done elsewhere.
|
||
|
|
||
|
* combine.c (set_nonzero_bits_and_sign_copies): Don't record
|
||
|
data for a a pseudo that is undefined on entry to a function.
|
||
|
When a pseudo is clobbered, show we don't know anything about it.
|
||
|
|
||
|
* expr.c (expand_assignment): Always return a result that has
|
||
|
the mode of TO.
|
||
|
|
||
|
* rs6000.c (rs6000_makes_calls): If profiling, say we make calls.
|
||
|
|
||
|
Sat May 15 00:38:22 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* va-mips.h (va_arg) [__MIPSEB__]:
|
||
|
After incrementing, subtract the rounded size, not the size proper.
|
||
|
|
||
|
* config/i860/x-sysv4 (X_CFLAGS): Defined.
|
||
|
(GCC_CFLAGS): Definition deleted.
|
||
|
|
||
|
* final.c (output_addr_const): Don't printing leading zeros.
|
||
|
|
||
|
Sat May 15 06:18:43 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* reload1.c (reload): Don't start 2-group unless it could be finished.
|
||
|
|
||
|
Sat May 15 12:23:58 1993 Torbjorn Granlund (tege@nada.kth.se)
|
||
|
|
||
|
* alpha.c (output_prolog): Change (sp) to ($30).
|
||
|
|
||
|
* pa.h (TRAMPOLINE_TEMPLATE): Change .long to .word; split into
|
||
|
two lines.
|
||
|
|
||
|
Fri May 14 18:09:31 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gcc.c (option_map): Renamed --version to --use-version.
|
||
|
|
||
|
Fri May 14 17:20:21 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* xcoffout.c (N_DSLINE, N_BSLINE): Delete definitions.
|
||
|
(stab_to_sclass): Use ifdefs to test for presence of N_MAIN,
|
||
|
N_BSLINE, N_DSLINE, N_BINCL, N_EINCL, N_EXCL, N_M2C, N_SCOPE.
|
||
|
|
||
|
* sched.c (split_hard_reg_notes): Handle 0th sub register, and
|
||
|
multiple register kills.
|
||
|
(update_flow_info): For multi-word hard regs, use
|
||
|
split_hard_reg_notes to add all REG_DEAD notes, instead of just
|
||
|
the additional ones due to splitting.
|
||
|
|
||
|
Fri May 14 16:12:28 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* configure (hppa1.1-*-hpux*): Use CPIO for headers, just like
|
||
|
other HPUX configs.
|
||
|
(hppa1.1-*-hpux8.02*): Likewise.
|
||
|
|
||
|
Fri May 14 16:35:22 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* reorg.c (fill_slots_from_thread): If try_split split new_thread,
|
||
|
update it to the new value.
|
||
|
|
||
|
Fri May 14 13:42:39 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* configure (hp700-hpux8.02): New target.
|
||
|
* pa1-oldas.h: New target for 1.1 machines running HPUX 8.02.
|
||
|
|
||
|
Fri May 14 13:23:51 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* integrate.c (expand_inline_function): Set map->integrating.
|
||
|
(copy_rtx_and_substitute, case MEM): Don't copy RTX_UNCHANGING_P
|
||
|
when doing function inlining.
|
||
|
* integrate.h (struct inline_remap): Add integrating field.
|
||
|
* unroll.c (unroll_loop): Clear map->integrating.
|
||
|
* stmt.c (expand_decl): Don't set RTX_UNCHANGING_P.
|
||
|
|
||
|
Fri May 14 12:28:51 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (default_conversion):
|
||
|
Don't replace iterator with its initial value.
|
||
|
|
||
|
* config/i386/svr3gas.h: Added two pages at end, with macros
|
||
|
copied from config/svr3.h and i386/sysv3.h.
|
||
|
|
||
|
* config/m68k/tower-as.h (PRINT_OPERAND): Handle CODE == '/'.
|
||
|
* hp320.h, mot3300.h, news.h, crds.h: Likewise.
|
||
|
|
||
|
Fri May 14 15:44:45 1993 Kresten Krab Thorup (krab@xiv.iesd.auc.dk)
|
||
|
|
||
|
* objc/init.c (__objc_init_protocols): Don't complain if a
|
||
|
protocol object is attempted resolved twice.
|
||
|
|
||
|
Fri May 14 00:51:38 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.h (CPP_SPEC): Correct specs so that _PA_RISC1_1 is only
|
||
|
defined when generating code for 1.1 machines regardless of the
|
||
|
default target.
|
||
|
|
||
|
Thu May 13 21:47:55 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rs6000.md (fix_truncdfsi2, fixuns_truncdfsi2, trunc_call): Fix
|
||
|
typo in mode of FIX and UNSIGNED_FIX rtl.
|
||
|
|
||
|
* reorg.c (reorg_redirect_jump): New function.
|
||
|
Call it in most places instead of redirect_jump.
|
||
|
|
||
|
Thu May 13 17:01:05 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* caller-save.c (restore_referenced_regs): New variable saveregs
|
||
|
which is number of regs to save at a time, instead of numregs,
|
||
|
which is total number of registers to save.
|
||
|
|
||
|
Thu May 13 08:28:22 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (OBJC, OBJECTIVE-C): Don't depend on objc-runtime.
|
||
|
|
||
|
* dbxout.c (dbxout_parms): Don't output a parm if it's a mem
|
||
|
that has a constant address.
|
||
|
|
||
|
* config/pa/x-pa (TAROUTOPTS): Overridden.
|
||
|
* 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.
|
||
|
(PRINT_OPERAND, _ADDRESS): Call convex.c.
|
||
|
(EXIT_BODY): Define for libgcc2. Call atexit handler if present.
|
||
|
|
||
|
convex.md: Add scheduling info.
|
||
|
(movxx): One of the operands must be a register.
|
||
|
(movdf, movdi): Add anonymous patterns that can load an arbitrary
|
||
|
const_double by doing two immediate loads. This is not superior
|
||
|
to loading it from memory, and can be worse, so LEGITIMATE_CONSTANT_P
|
||
|
still rejects these constants, but the patterns are still useful
|
||
|
so rtx folding can produce arbitrary results.
|
||
|
(floatunsdidf, floatunsdisf): Add patterns that avoid double rounding.
|
||
|
(floatunssidf, floatunssisf): Add patterns that mimic gcc's default
|
||
|
method, to keep SI cvts from promoting to the above DI cvts.
|
||
|
(fix_truncdfsi2): Use cvtd.l even if cvtd.w is available -- on c34
|
||
|
cvtd.w is microcoded and slower.
|
||
|
(addqi3, subqi3, mulqi3): can do immediate with word insn.
|
||
|
(subsi3): use sub/neg to get reverse subtract (reduces reg shuffling).
|
||
|
(udivsi3): give up on having sign_expand_binop do this; people keep
|
||
|
breaking it. Manually extend unsigned SI to signed DI, then divide.
|
||
|
(xshfxx3): The options rank differently on different machines, so
|
||
|
spell them all out and enable the appropriate ones under TARGET_Cxx.
|
||
|
(sqrtxx2): Put under flag_fast_math.
|
||
|
(sinxx2, cosxx2): I don't know why these exist, but they do, so supply
|
||
|
them. The other microcoded intrinsics are in convex math.h.
|
||
|
(txtxx): Remove, no longer necessary.
|
||
|
(cmpdi): Add alternative to fake "eq.l #0,sk" with "neg.l sk,scratch".
|
||
|
(cmpqi): Omit, seems to produce marginally better cse than the old way.
|
||
|
(cmpsf): Avoid compare against 0.0 in ieee mode, since -0.0 is
|
||
|
possible and would confuse old ucode.
|
||
|
(movstrsi): Add.
|
||
|
(anon): Add patterns to pick up on dbra optimizations and implement the
|
||
|
sub/test part. (This optimizes out the compare against 0.)
|
||
|
(call, call_value): Use _pop form instead, and let convex.c replace
|
||
|
the pushes with fp stores.
|
||
|
(end): Put local variable list back.
|
||
|
|
||
|
convex.c (init_convex): New. Fill in tables used by convex.h.
|
||
|
(psw_disable_float): New. Turn off float exception enables to
|
||
|
make the environment more ieee-like.
|
||
|
(set_cmp): Change name to output_cmp.
|
||
|
(gen_cmp): Change name to output_condjmp. Add handling for
|
||
|
`neg.x' as a fake `eq.x #0' and for optimized-out compares
|
||
|
that read the carry of a preceding decrement.
|
||
|
(simplify_for_convex): New. Replace addr-(-const) with
|
||
|
addr+const so /bin/as will like the notation.
|
||
|
(expand_movstr): New. Generate pipelined load/store sequence.
|
||
|
(asm_declare_function_name): New. Output arg count for debuggers.
|
||
|
(print_operand): Moved from convex.h. Add %u and %v to fetch
|
||
|
subwords of a CONST_DOUBLE, %z to use in replacing shift by mul.
|
||
|
(print_operand_address): Moved from convex.h.
|
||
|
(outfloat): New, call REAL_VALUE_TO_DECIMAL.
|
||
|
(replace_arg_pushes): New. Replace sp by fp if possible; this does
|
||
|
not allow us to get rid of sp but stores are faster than pushes on
|
||
|
new machines.
|
||
|
(emit_ap_optimizations): New. Do simple live analysis of arg pointer
|
||
|
register and eliminate dead reloads.
|
||
|
|
||
|
math-convex.h: removed.
|
||
|
fixinc.convex: new file.
|
||
|
|
||
|
Thu May 6 22:54:43 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/we32k/we32k.h (ASM_OUTPUT_ASCII):
|
||
|
Cast PTR to unsigned char *.
|
||
|
* config/clipper/clix.h (ASM_OUTPUT_ASCII): Likewise.
|
||
|
|
||
|
Thu May 6 20:20:41 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (build_enumerator): Strip any no-op casts off the
|
||
|
value before we try to do anything with it.
|
||
|
|
||
|
* cp-call.c (convert_harshness): Take volatility, in addition to
|
||
|
constness, into account when figuring out the penalty for the
|
||
|
type under question.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Undo unneeded change of Apr 6 when we
|
||
|
returned the type of the local typedef, instead of the typedef itself.
|
||
|
|
||
|
Thu May 6 19:21:34 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* reload1.c (eliminate_regs, case {PRE,POST}_{INC,DEC}): Account
|
||
|
for PUSH_ROUNDING.
|
||
|
|
||
|
Thu May 6 18:17:19 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i386/sequent.h (DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC):
|
||
|
Override the usual definitions.
|
||
|
|
||
|
* objc/hash.h, objc/objc.h, objc/runtime.h, objc/sarray.h:
|
||
|
Use gstddef.h, with doublequotes.
|
||
|
|
||
|
Thu May 6 15:58:18 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* fixincludes: More fixes for IRIX 4.0.1. Rather than replacing
|
||
|
[^A-Z]CTRL, replace [^A-Z_]CTRL and [^A-Z]_CTRL. Also patch
|
||
|
"//" in elf_abi.h which the sed script breaks.
|
||
|
|
||
|
Thu May 6 13:58:39 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* clix.h: Include "clipper/clipper.h" instead of "clipper.h".
|
||
|
* config.sub (os): Add -clix*.
|
||
|
* configure (clipper-intergraph-clix): Add clipper/ filename prefixes.
|
||
|
|
||
|
* c-typeck.c (pointer_diff): Error if op1 is pointer to incomplete
|
||
|
type.
|
||
|
|
||
|
* fixinc.svr4 (sys/varargs.h): Replace.
|
||
|
|
||
|
Thu May 6 11:58:28 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* reload1.c (forget_old_reloads_1): Accept and ignore 2nd arg.
|
||
|
(reload_as_needed): Pass that second arg.
|
||
|
|
||
|
* c-parse.in: For Objc, expect just 20 conflicts.
|
||
|
|
||
|
* objc-act.c (OBJC_GEN_METHOD_LABEL): Do use CAT_NAME.
|
||
|
|
||
|
* config/i386/i386.md (extendsidi2): Use cdq or cltd, not cwtl.
|
||
|
|
||
|
* configure (i[34]86-*-bsd): Don't use collect2.
|
||
|
|
||
|
* c-typeck.c (convert_for_assignment): Don't use convert_and_check
|
||
|
when handling arithmetic types here.
|
||
|
|
||
|
* c-common.c (truthvalue_conversion): Turn off Apr 29 change.
|
||
|
|
||
|
Thu May 6 05:44:23 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reload.c (find_equiv_reg): Don't look inside a CONST_DOUBLE;
|
||
|
use operand_subword instead.
|
||
|
|
||
|
* varasm.c (record_constant): Properly make the header of
|
||
|
a struct constant_descriptor.
|
||
|
|
||
|
* function.c (walk_fixup_memory_subreg): Add new arg UNCRITICAL.
|
||
|
(fixup_var_refs_insn): Call with UNCRITICAL of 1 when processing
|
||
|
REG_NOTES.
|
||
|
|
||
|
* integrate.c (expand_inline_function): Don't call convert_to_mode
|
||
|
unless we need to; some converstions of VOIDmode objects can
|
||
|
mess them up.
|
||
|
|
||
|
* expmed.c (store_split_bit_field): Properly handle VALUE when
|
||
|
it is a CONST_DOUBLE.
|
||
|
|
||
|
* fold-const.c (decode_field_reference): Don't do anything for
|
||
|
non-integral fields.
|
||
|
|
||
|
* cse.c (simplify_binary_operation, simplify_relational_operation):
|
||
|
Check for MODE_CC modes, not just CCmode.
|
||
|
|
||
|
Thu May 6 00:54:40 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc/class.c, objc/hash.c: Change calloc to __objc_xcalloc.
|
||
|
* objc/objects.c (class_create_instance): bzero new instances
|
||
|
|
||
|
* objc/sendmsg.c (__objc_send_initialize, class_add_method_list):
|
||
|
Allow multiple +initialize methods per class.
|
||
|
|
||
|
Wed May 5 21:40:04 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i386/sequent.h (LINK_LIBGCC_SPECIAL): #if 0.
|
||
|
|
||
|
* toplev.c (main): Improve error message in previous change.
|
||
|
|
||
|
Wed May 5 19:36:15 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* combine.c (combinable_i3pat): Do not make REG_DEAD notes for
|
||
|
the stack pointer, frame pointer, or arg pointer.
|
||
|
|
||
|
Wed May 5 17:57:30 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i386/sequent.h (LINK_LIBGCC_SPECIAL): Defined.
|
||
|
|
||
|
Wed May 5 00:01:57 PDT 1993 Ron Guilmette (segfault!rfg@netcom.com)
|
||
|
|
||
|
* expr.h: Fix comment typos. emit_block_move decl was hidden.
|
||
|
|
||
|
* toplev.c (main): If C++ for Dwarf requested, warn and turn it off.
|
||
|
|
||
|
Wed May 5 21:48:24 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc-act.c (check_methods_accessible): Handle interface types.
|
||
|
|
||
|
Wed May 5 14:37:42 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* fold-const.c: (optimize_bit_field_compare): Add missing arg
|
||
|
to const_binop.
|
||
|
|
||
|
* reg-stack.c (record_asm_reg_life): Don't abort for asm that
|
||
|
doesn't match its constraints.
|
||
|
|
||
|
* combine.c (num_sign_bit_copies, case SUBREG): Properly compute
|
||
|
the number of sign bit copies of SUBREGs of promoted objects.
|
||
|
|
||
|
* optabs.c (add_equal_note, expand_binop, expand_unop): Make
|
||
|
copy of operands for REG_EQUAL note to avoid sharing RTL if
|
||
|
called later than RTL generation.
|
||
|
(emit_libcall_block, expand_fix): Likewise.
|
||
|
* expr.c (convert_move): Likewise, though probably not
|
||
|
called after RTL generation.
|
||
|
|
||
|
Wed May 5 14:11:12 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* fixincludes: Only quote argument to _IO[A-Z]*, not first item in
|
||
|
parentheses. Added patches for IRIX 4.0.1 header files to undo
|
||
|
some inappropriate changes.
|
||
|
|
||
|
Wed May 5 11:34:59 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* toplev.c (flag_defer_pop): Initialize to 0.
|
||
|
(main): Set it to 1 if optimizing.
|
||
|
|
||
|
Wed May 5 06:38:47 1993 Tom Wood (wood@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* configure (i[34]86-next-*, m68k-next-*): collect2 isn't needed.
|
||
|
|
||
|
Tue May 4 14:21:11 1993 Kresten Krab Thorup (krab@xiv.iesd.auc.dk)
|
||
|
|
||
|
* objc/objc.h, objc/runtime.h: Remove inclusion of memory.h
|
||
|
* objc/objc.h, objc/hash.h, objc/runtime.h: Remove inclusion of
|
||
|
gstddef.h
|
||
|
|
||
|
* objc/Makefile (OBJC_H): Add typedstream.h
|
||
|
|
||
|
* objc/Object.h: Add includes objc/objc.h and objc/typedstreams.h
|
||
|
objc/Object.h: Removed `minimal' definitions. Includes objc.h
|
||
|
instead.
|
||
|
* objc/archive.c: Add include "typedstream.h"
|
||
|
|
||
|
* objc/typedstream.h: New file. Contents moved from
|
||
|
objc/objc-api.h.
|
||
|
|
||
|
* objc/objc.h (IvarList, Ivar, SymTab, Module, Method,
|
||
|
Category, Super, objc_method_description, objc_protocol_list):
|
||
|
Data definitions moved to objc/objc-api.h
|
||
|
|
||
|
* objc/archive.c: Change malloc into __objc_xmalloc
|
||
|
|
||
|
* objc/objc.h, objc/sendmsg.c: Remove any code for hash lookup
|
||
|
* objc/cache.h: File removed
|
||
|
|
||
|
* objc/objc-api.h (class_create_instance, object_copy,
|
||
|
object_dispose): Definitions moved to objc/objects.c
|
||
|
|
||
|
* objc/objc.h: Remove declarations for library functions.
|
||
|
* objc/Object.m (-conformsTo:): Bugfix: Also ask superclasses.
|
||
|
|
||
|
Tue May 4 23:46:37 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (start_decl): Give an error, not a sorry, when they try
|
||
|
to declare a template on a VAR_DECL or a TYPE_DECL.
|
||
|
|
||
|
* cp-type2.c (process_init_constructor): If we have a VAR_DECL
|
||
|
that's static in the class, don't try to use it when we're working
|
||
|
on an initializer-list; it has no business being there.
|
||
|
|
||
|
* cp-cvt.c (convert_pointer_to): Only call get_base_distance et al.
|
||
|
on RECORD_TYPEs, not on UNION_TYPEs.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Don't try to divine the name of the
|
||
|
incomplete type for a field decl.
|
||
|
|
||
|
Tue May 4 19:55:29 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* combine.c (distribute_notes, REG_DEAD case): Handle hard
|
||
|
registers which partially overlap the destination of the insn.
|
||
|
|
||
|
Tue May 4 17:59:10 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.md (casesi0): Remove incorrect fix from April 23.
|
||
|
* pa.h (CASE_DROPS_THROUGH): Define.
|
||
|
|
||
|
Tue May 4 13:22:21 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* t-dgux: Fixed name of link script.
|
||
|
|
||
|
Tue May 4 11:15:40 1993 Steve Chamberlain (sac@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sh.md (arith patterns): Rework constraints.
|
||
|
* sh.h (ASM_OUTPUT_CASE_LABEL): Ensure jump table is aligned.
|
||
|
* sh.c (arith_reg_operand): New constraint. (dump_constants):
|
||
|
Force out a constant table if necessary.
|
||
|
|
||
|
Mon May 3 20:41:00 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* tree.c (build_array_type): The main variant of an array type
|
||
|
should always be an array whose element type is the main variant.
|
||
|
|
||
|
Mon May 3 19:27:04 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* lite.h (CPP_PREDEFINES): Delete -Dsun and -Dunix.
|
||
|
|
||
|
* combine.c (make_extraction): Move BYTES_BIG_ENDIAN !=
|
||
|
BITS_BIG_ENDIAN offset correction after the offset calculation.
|
||
|
* elxsi.h, mips.h (BITS_BIG_ENDIAN): Define to zero.
|
||
|
|
||
|
* c-decl.c (grokdeclarator, ARRAY_REF case): Build array type, and
|
||
|
then build the variant array type.
|
||
|
|
||
|
* sparc.md (floatsitf2): Output fitoq not fitox.
|
||
|
|
||
|
* i960.md (scc pattterns): Add missing mode to conditional operators.
|
||
|
* i960.c (output_function_profiler): Add missing newlines in strings.
|
||
|
|
||
|
* c-common.c (truthvalue_conversion): Don't optimize subtract of
|
||
|
reals when target uses IEEE arithmetic.
|
||
|
|
||
|
* c-parse.in: Delete cond.awk reference.
|
||
|
* cond.awk: Delete file.
|
||
|
|
||
|
Mon May 3 16:58:55 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (digest_init): Check size properly for wide-string.
|
||
|
|
||
|
* Makefile.in (TEXI2DVI): New variable.
|
||
|
(cpp.dvi, gcc.dvi): Use it.
|
||
|
|
||
|
Mon May 3 16:29:38 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-search.c (lookup_nested_field): Pass complain down as the value
|
||
|
for lookup_field's `protect' argument. This will help avoid
|
||
|
incorrect visibility errors when we're parsing things.
|
||
|
|
||
|
Mon May 3 21:02:22 1993 H.J. Lu (hlu@yardbird.eecs.wsu.edu)
|
||
|
|
||
|
* config/i386/linux.h (FUNCTION_PROFILER, ASM_OUTPUT_ADDR_DIFF_ELT):
|
||
|
Remove PIC stuff. We wait for the ELF support in gas and binutils.
|
||
|
(LINK_SPEC): Defined for -v.
|
||
|
|
||
|
Mon May 3 06:41:56 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/Makefile (copy-headers): Put `-' on mkdir command.
|
||
|
|
||
|
Sun May 2 09:28:43 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (macroexpand): Treat `foo ( )' as 0 args if foo wants 0 args.
|
||
|
|
||
|
Sun May 2 07:37:45 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reload1.c (eliminate_regs, case SUBREG): Leave the SUBREG when
|
||
|
the inner object is a pseudo on machines that extend byte
|
||
|
loads (to be consistent with reload.c).
|
||
|
* reload.c (push_reload): Allow non-paradoxical SUBREGs of MEM
|
||
|
on machines that extend byte loads.
|
||
|
|
||
|
Sun May 2 08:57:33 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* real.c (EDOM, ERANGE): Do not define since errno.h was
|
||
|
previously included.
|
||
|
|
||
|
Sun May 2 08:28:15 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cse.c (record_jump_cond): Use mode of op0 or op1, not MODE,
|
||
|
when testing for narrowing or widening subregs.
|
||
|
|
||
|
Sat May 1 10:10:44 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/nextstep.h (WORD_SWITCH_TAKES_ARG): Fix typo.
|
||
|
|
||
|
* cse.c (simplify_binary_operation): Reject CCmode in A & (~A) -> 0.
|
||
|
|
||
|
* cccp.c (macroexpand): If just whitespace between parens,
|
||
|
treat it as one argument.
|
||
|
|
||
|
Sat May 1 11:02:22 1993 H.J. Lu (hlu@yardbird.eecs.wsu.edu)
|
||
|
|
||
|
* Makefile.in (libobjc.a): Depend on $(USE_COLLECT2)
|
||
|
|
||
|
* objc/Makefile (xforward): Add `else true;' for Ultrix 4.2 make.
|
||
|
|
||
|
Sat May 1 06:49:51 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* objc-act.c (build_ivar_reference): Warn when a class method
|
||
|
refers to an instance variable.
|
||
|
|
||
|
Fri Apr 30 22:37:56 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-lex.c (yylex): Avoid invalid shift for erroneous empty char const.
|
||
|
|
||
|
* combine.c (subst, case COMPARE): Use SELECT_CC_MODE even if HAVE_CC0.
|
||
|
|
||
|
Fri Apr 30 12:40:23 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* configure, install.texi: Updated -local configuration option.
|
||
|
|
||
|
Fri Apr 30 15:20:10 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sparc.h (LONG_DOUBLE_TYPE_SIZE): Ifdef out.
|
||
|
|
||
|
Fri Apr 30 14:53:43 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* config.sub: Fix syntax error.
|
||
|
|
||
|
Fri Apr 30 12:00:24 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* fixincludes: Fix #endif comments for Ultrix 4.2.
|
||
|
|
||
|
Fri Apr 30 10:45:53 1993 Steve Chamberlain (sac@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sh.c, sh.h, sh.md, t-sh, xm-sh.h: New files for Hitachi SH.
|
||
|
* configure (sh-hitachi-hms): New configuration.
|
||
|
* config.sub: Accept sh, hms.
|
||
|
|
||
|
Thu Apr 29 22:20:20 1993 Jeff Law (law@kahlua.cs.utah.edu)
|
||
|
|
||
|
* cse.c (cse_insn): Reset the INSN_CODE for conditional
|
||
|
or computed jumps which have been converted into simplejumps.
|
||
|
|
||
|
Thu Apr 29 14:30:25 PDT 1993 Ron Guilmette (rfg@netcom.com)
|
||
|
|
||
|
* c-common.c (truthvalue_conversion): Specific error message when the
|
||
|
"truthvalue" of a struct, union, or array type operand is needed.
|
||
|
|
||
|
Thu Apr 29 21:42:26 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Thu Apr 29 12:27:59 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): When complaining about a field having
|
||
|
an incomplete type, tell them what type it was, and what template
|
||
|
instantiation was involved, if we can.
|
||
|
|
||
|
Wed Apr 28 11:50:28 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokfndecl): New argument `publicp', to say if we
|
||
|
should set TREE_PUBLIC on the node for the caller.
|
||
|
(grokfndecl): Pass the new arg down appropriately.
|
||
|
|
||
|
* cp-pt.c (instantiate_template): If it's a static member fn, revert
|
||
|
it into a FUNCTION_TYPE and chop off the this pointer.
|
||
|
* cp-decl.c (revert_static_member_fn): Make non-static.
|
||
|
* cp-tree.h (revert_static_member_fn): Add prototype.
|
||
|
|
||
|
* cp-lex.c (reinit_parse_for_block): Bump the size of BUF for the
|
||
|
pre-parsed line directive to 16, so we can hold the max # of digits
|
||
|
in a signed int (10).
|
||
|
|
||
|
Thu Apr 29 19:26:21 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/mips/mips.h (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR):
|
||
|
Definitions put into #if 0.
|
||
|
|
||
|
* c-typeck.c (build_conditional_expr): Do default_conversion
|
||
|
before testing for ERROR_MARK.
|
||
|
|
||
|
* cse.c (simplify_binary_operation): Don't return const0_rtx
|
||
|
or constm1_rtx for IOR, AND, XOR in CCmode.
|
||
|
(simplify_relational_operation): Don't do anything if op0 has CCmode.
|
||
|
|
||
|
* Makefile.in (install-normal): Move install-libgcc
|
||
|
after $(INSTALL_HEADERS).
|
||
|
|
||
|
Thu Apr 29 17:09:59 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* gcc.c (is_directory): Renamed from is_linker_dir and added
|
||
|
linker argument. If not checking linker directory, check whether
|
||
|
directory exists only if SMALL_ARG_MAX not defined.
|
||
|
(putenv_from_prefixes): Don't add directories for which
|
||
|
is_directory returns 0.
|
||
|
* config/i386/xm-sco.h (SMALL_ARG_MAX): Define.
|
||
|
|
||
|
Thu Apr 29 15:30:09 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.md (shadd for reload): Fix constraint to match the output
|
||
|
pattern.
|
||
|
|
||
|
Thu Apr 29 15:05:05 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* we32k.md (float_extend:DF recognizer): Add missing arg to
|
||
|
output_asm_insn.
|
||
|
(float_truncate:SF recognizer): Likewise.
|
||
|
|
||
|
Thu Apr 29 10:18:36 1993 Kresten Krab Thorup (krab@wombat.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/xforward.c: File renamed from objc/_forward.c.
|
||
|
* objc/Makefile: Updated accordingly.
|
||
|
|
||
|
Thu Apr 29 12:10:49 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* real.c: Deleted casts to void.
|
||
|
|
||
|
* real.c (emdnorm, eifrac, euifrac, mtherr): Replace
|
||
|
unconditional `pedwarn' by `warning' conditional on `extra_warnings'.
|
||
|
(toe24, todec): Use ERANGE to flag overflow on (non-IEEE)
|
||
|
machines that do not have infinity.
|
||
|
(etoasc): Check explicitly for overflow of leading decimal digit.
|
||
|
(asctoeg): Test for, and immediately reject, out-of-bounds
|
||
|
decimal exponent inputs.
|
||
|
(at top level): Include errno.h; reference errno,
|
||
|
warning, extra_warnings.
|
||
|
|
||
|
* Makefile.in (tooldir): Use exec_prefix, not prefix.
|
||
|
(gcc.o): Likewise for TOOLDIR_BASE_PREFIX.
|
||
|
|
||
|
* config/convex/convex.c (output_call):
|
||
|
Add missing arg to output_asm_insn.
|
||
|
|
||
|
* gcc.c (default_compilers): Inhibit -D__OPTIMIZE__ if -O0.
|
||
|
|
||
|
* config/m68k/m68k.md (movxf): Add pattern for soft-float moves.
|
||
|
|
||
|
* config/m68k/m68k.c (output_move_double): Support XFmode moves.
|
||
|
|
||
|
Thu Apr 29 00:09:34 1993 Kresten Krab Thorup (krab@wombat.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/init.c (__objc_exec_class): Added check for selectors = 0
|
||
|
|
||
|
Undid the following changes:
|
||
|
|
||
|
* objc/_forward.c: File removed
|
||
|
* objc/argframe.h, objc/af-sparc.h: New files
|
||
|
* objc/Makefile (ARGFRAME_H): New macro
|
||
|
* objc/Makefile (_forward, fflags): Targets removed
|
||
|
* objc/msgsend.c (objc_msg_sendv): Changed to use argframe macros
|
||
|
* objc/Object.[hm], objc/runtime.h, objc/objc-api.h,
|
||
|
objc/msgsend.c: Changed type name arglist_t to af_frame.
|
||
|
|
||
|
Thu Apr 29 00:04:11 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.h (CONDITIONAL_REGISTER_USAGE): %r19 is fixed
|
||
|
if flag_pic is true.
|
||
|
* pa.c (emit_move_sequence): After legitimizing a PIC
|
||
|
address make sure to copy it from the temporary register
|
||
|
into the final destination.
|
||
|
|
||
|
Wed Apr 28 18:15:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
||
|
|
||
|
* pa.h (HARD_REGNO_MODE_OK): Allow 1.0 FP registers to hold modes
|
||
|
which are smaller than 4 bytes.
|
||
|
|
||
|
Wed Apr 28 16:40:38 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (distdir): Copy subdirectories of config/ too, except RCS
|
||
|
|
||
|
Wed Apr 28 16:19:18 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (extraclean): Delete *.z as well.
|
||
|
|
||
|
Wed Apr 28 15:10:33 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips/mips.h (MIPS_VERSION): Set Meissner version # to 40.
|
||
|
(OPTIMIZATION_OPTIONS): Set -mgpopt if -O other than -O0.
|
||
|
(CC1_SPEC): Don't pass -mgpopt here.
|
||
|
|
||
|
* mips/osfrose.h (CC1_SPEC): Don't pass -mgpopt here.
|
||
|
|
||
|
* mips/osfrose.h, i386/osfrose.h (ASM_IDENTIFY_LANGUAGE): If the
|
||
|
language is C, do not put anything out, to not confuse kernel
|
||
|
debuggers and the like.
|
||
|
|
||
|
Wed Apr 28 07:31:20 1993 Kresten Krab Thorup (krab@wombat.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/argframe.h (__AF_ARG_ADDR): Removed .curr_off from
|
||
|
definition. (__AF_ARG_ADVANCE): Removed __AF_CUM_OFF around CUM.
|
||
|
|
||
|
* objc/runtime.h (_objc_error): Declaration added.
|
||
|
|
||
|
Wed Apr 28 06:17:02 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* c-lex.c, cp-lex.c (yylex): Don't use unsigned comparison
|
||
|
to also check for < 0; do it explicitly.
|
||
|
* combine.c (force_to_mode, simplify_comparison): Cast to
|
||
|
unsiged HOST_WIDE_INT instead of unsigned int.
|
||
|
* cse.c (simplify_binary_operation, case SMAX): Likewise.
|
||
|
* expr.c (emit_block_move): Likewise.
|
||
|
|
||
|
* convert.c (convert_to_integer): When we want to return zero,
|
||
|
be sure we honor any side-effects in our operand.
|
||
|
|
||
|
Tue Apr 27 22:25:29 1993 Kresten Krab Thorup (krab@xiv.iesd.auc.dk)
|
||
|
|
||
|
* objc/_forward.c: File removed
|
||
|
* objc/argframe.h, objc/af-sparc.h: New files
|
||
|
* objc/Makefile (ARGFRAME_H): New macro
|
||
|
* objc/Makefile (_forward, fflags): Targets removed
|
||
|
* objc/msgsend.c (objc_msg_sendv): Changed to use argframe macros
|
||
|
* objc/Object.[hm], objc/runtime.h, objc/objc-api.h,
|
||
|
* objc/msgsend.c: Changed type name arglist_t to af_frame.
|
||
|
|
||
|
Tue Apr 27 16:29:45 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* nextstep.h (NeXT_OBJC, STANDARD_EXEC_PREFIX): Delete.
|
||
|
* i386/next.h: Use gas.h instead of bsd.h.
|
||
|
(ASM_GENERATE_INTERNAL_LABEL): Define.
|
||
|
|
||
|
Tue Apr 27 12:20:08 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* reorg.c (dbr_schedule): Do not run the delay slot scheduling
|
||
|
pass if the current function has no insns other than the prologue
|
||
|
and epilogue.
|
||
|
|
||
|
* pa.c (hppa_expand_epilogue): Emit a "blockage" insn
|
||
|
to keep the stack and frame pointer adjustments at the
|
||
|
end of the epilogue.
|
||
|
* pa.md (blockage): New pattern.
|
||
|
|
||
|
Tue Apr 27 10:59:33 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* gcc.c (DEFAULT_WORD_SWITCH_TAKES_ARG): New macro. Like old
|
||
|
WORD_SWITCH_TAKES_ARG, but added idirafter, iprefix, iwithprefix.
|
||
|
(WORD_SWITCH_TAKES_ARG): Use DEFAULT_WORD_SWITCH_TAKES_ARG.
|
||
|
* config/i386/osfrose.h, config/m68k/sun2.h, config/m68k/sun3.h,
|
||
|
config/mips/osfrose.h, config/sparc/sparc.h, config/svr4.h,
|
||
|
config/nextstep.h (WORD_SWITCH_TAKES_ARG): Rewrote to use
|
||
|
DEFAULT_WORD_SWITCH_TAKES_ARG.
|
||
|
|
||
|
Tue Apr 27 07:38:47 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu
|
||
|
|
||
|
* Makefile.in (stmp-int-hdrs): No longer depends on gsyslimits.h.
|
||
|
Don't make include/syslimits.h here since we want to test the
|
||
|
limits.h made by fixincludes, not by the later part of this rule.
|
||
|
(stmp-fixinc): Depends on gsyslimits.h.
|
||
|
Make include/syslimits.h here.
|
||
|
|
||
|
* alpha.c (alpha_emit_set_const, output_{pro,epi}log): Generate
|
||
|
insns to load constants into a register using a method that works
|
||
|
on a 32-bit machine as well.
|
||
|
|
||
|
Tue Apr 27 09:26:04 1993 CET Kresten Krab Thorup (krab@xiv.iesd.auc.dk)
|
||
|
|
||
|
* objc/Makefile (fflags): -x test changed to -s test
|
||
|
|
||
|
* objc/Makefile: CFLAGS changed to GCC_CFLAGS
|
||
|
|
||
|
* objc/Object.h: No longer includes objc.h Instead, a minimal set
|
||
|
of definitions is provided here.
|
||
|
|
||
|
* objc/Object.h, Object.m, cache.h, class.c, init.c, misc.c,
|
||
|
objc-api.h, objc.h, objects.c, sendmasg.c: Usage of Class_t and
|
||
|
MetaClass_t eliminated. Now using Class* and MetaClass* only.
|
||
|
|
||
|
* objc/objc.h: Does no longer include stdio.h and stdarg.h. Minimal
|
||
|
set of definition, which is provided by Object.h is placed in
|
||
|
preprocessor conditionals __object_INCLUDE_GNU. Definitions of
|
||
|
MetaClass_t and Class_t removed. Class and MetaClass are no
|
||
|
longer defines, but typedefs.
|
||
|
|
||
|
Tue Apr 27 01:40:50 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Mon Apr 26 20:45:07 1993 Mike Stump (mrs@poseidon.cygnus.com)
|
||
|
|
||
|
* cp-init.c (expand_recursive_init_1): Make sure we use the binfo's
|
||
|
version of a binfo, rather than someone elses, as the second
|
||
|
parameter to build_virtual_init must be the exact binfo we want so
|
||
|
that it may get the right vtable.
|
||
|
|
||
|
Mon Apr 26 12:58:23 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-type2.c (my_friendly_abort): Rephrase to try to help encourage
|
||
|
people to send bug reports in, and not just say, "Hey, the compiler
|
||
|
told me to report an internal error. Bye!".
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Forbid declaring an array of references.
|
||
|
|
||
|
* cp-parse.y (unary_expr): Forbid doing sizeof on a function.
|
||
|
|
||
|
* cp-typeck.c (build_unary_op): Pedwarn if they try to do pre/post
|
||
|
increment/decrement on an enum.
|
||
|
|
||
|
* cp-method.c (build_opfncall): Reorganize things to properly look
|
||
|
for a postfix operator ++/--, without taking the fastest way out of
|
||
|
the search, which could lose.
|
||
|
|
||
|
* cp-search.c (compute_visibility): Check for a member fn
|
||
|
manipulating its own members before checking the basetype_path.
|
||
|
|
||
|
* cp-pt.c (lookup_template_class): Instead of dying in the case
|
||
|
where D1 has a local value but no global or class value, return an
|
||
|
error_mark_node.
|
||
|
|
||
|
* cp-pt.c (lookup_template_class): Don't assert if IN_DECL is null,
|
||
|
since we pass it down that way from the parser.
|
||
|
(coerce_template_parms): Likewise.
|
||
|
* cp-parse.y (template_type): Let template_type_seen_before_scope be
|
||
|
an error_mark if necessary, so we can intelligently handle things
|
||
|
later rather than give useless syntax errors.
|
||
|
|
||
|
Sat Apr 24 17:12:17 1993 Mike Stump (mrs@poseidon.cygnus.com)
|
||
|
|
||
|
* cp-pt.c (tsubst): When we go back for a second pass, make sure we
|
||
|
start over with the list of methods. Fixes problem introduce on
|
||
|
Sat Mar 20 12:29:37 1993.
|
||
|
|
||
|
Mon Apr 26 18:48:18 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* fold-const.c (fold): Signedness matters for comparisons and
|
||
|
right shifts.
|
||
|
|
||
|
* xm-alpha.h (ONLY_INT_FIELD): Define again; this time say why.
|
||
|
|
||
|
* tree.h (INTEGRAL_TYPE_P, FLOAT_TYPE_P): New macros.
|
||
|
* fold-const.c: Use INTEGRAL_TYPE_P and FLOAT_TYPE_P.
|
||
|
|
||
|
* protoize.c (other_variable_style_function): Properly test for
|
||
|
the presence of the string "...".
|
||
|
|
||
|
* c-decl.c (pushdecl): Don't make a copy of type of error_mark_node.
|
||
|
|
||
|
Mon Apr 26 18:15:03 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa-hpux.h (LINK_LIBGCC_SPECIAL): Delete.
|
||
|
(RELATIVE_PREFIX_NOT_LINKDIR): Delete.
|
||
|
* pa-ghpux.h, pa-hpux7.h, pa-gux7.h: Likewise.
|
||
|
|
||
|
Mon Apr 26 16:57:03 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips-tdump.c (CODE_MASK): Define if running on an alpha instead
|
||
|
of a MIPS.
|
||
|
(MIPS_IS_STAB): Ditto.
|
||
|
(MIPS_MARK_STAB): Ditto.
|
||
|
(MIPS_UNMARK_STAB): Ditto.
|
||
|
(tfile): New global, holds result of -t option, to skip global
|
||
|
header.
|
||
|
(malloc, calloc, realloc, free): Don't declare on alpha.
|
||
|
(print_sym_hdr): Make sure all arguments are properly cast to int
|
||
|
or long, depending on whether the format is %ld or %d.
|
||
|
(read_tfile): Don't look at magic number, instead use -t option to
|
||
|
determine whether to skip the global header or not.
|
||
|
(main): Process -t option.
|
||
|
|
||
|
Mon Apr 26 17:47:10 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* Objective C portability cleanup
|
||
|
* objc/Object.c (-hash, -error): Cast changed to size_t
|
||
|
* objc/archive.c, objc/misc.c, objc/sendmsg: Argument to strlen
|
||
|
casted to char* everywhere.
|
||
|
* objc/class.c (__objc_resolve_class_links): Unused variable
|
||
|
class1 removed.
|
||
|
* objc/class.c (class_pose_as): Unused variable node removed.
|
||
|
* objc/hash.c, objc/init.c: extra parenthesis around assignment
|
||
|
conditionals.
|
||
|
* objc/Makefile, objc/hash.h, objc/runtime, objc/sarray.h: IN_OBJC
|
||
|
changed to IN_GCC.
|
||
|
* objc/init.c: Unused local variable object_class removed. Cast of
|
||
|
pointer to int changed to size_t.
|
||
|
* objc/list.h (list_free): No longer declared inline.
|
||
|
* objc/objc-api.h, objc-runtime.h: Now includes memory.h.
|
||
|
* objc/objc.h: Added declarations for malloc and friends, IN_OBJC
|
||
|
changed to IN_GCC. Type of info member of objc_class changed to
|
||
|
unsigned long.
|
||
|
* objc/objects.c, objc/api.h, objc/sarray.h: Changed usage of
|
||
|
bcopy to memcpy.
|
||
|
* objc/sendmsg (__objc_print_dtable_stats): Returntype changed to
|
||
|
void.
|
||
|
|
||
|
Mon Apr 26 07:55:03 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* sparc.h (ASM_OUTPUT_LONG_DOUBLE): New macro.
|
||
|
* sysv4.h (ASM_OUTPUT_LONG_DOUBLE): Likewise.
|
||
|
|
||
|
Mon Apr 26 08:45:18 1993 Kresten Krab Thorup (krab at xiv.iesd.auc.dk)
|
||
|
|
||
|
* objc/hash.h, objc/init.c, objc/objc.h, objc/sarray.c,
|
||
|
objc/sarray.h, objc/selector.c, objc/sendmsg.c: Change unsigned
|
||
|
int to size_t when casting pointer type to integer.
|
||
|
* objc/sarray.h (struct soffset): Changed to add up to sizeof
|
||
|
(size_t) in stead of sizeof (unsigned int).
|
||
|
* objc/hash.h: Include stddef.h
|
||
|
* objc/_forward.h: int changed to size_t.
|
||
|
|
||
|
* objc/Object.m, objc/archive.c, objc-api.h: Take out archiving
|
||
|
support for alpha.
|
||
|
|
||
|
* objc/Makefile: (IN_OBJC): new #define used to control inclusion
|
||
|
of gstdarg or stdarg for the runtime. objc/objc.h,
|
||
|
objc/runtime.h, objc/sarray.h: Updated to use the above.
|
||
|
|
||
|
Sun Apr 25 21:50:16 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-lex.c (yylex): Re-incorporate changes to redo converting
|
||
|
float values to desired type.
|
||
|
|
||
|
Sun Apr 25 18:11:24 1993 Ron Guilmette (rfg@netcom.com)
|
||
|
|
||
|
* rtl.h (NOTE_INSN_FUNCTION_BEG): Make non-zero.
|
||
|
* rtl.c (note_insn_name): Re-order for above.
|
||
|
|
||
|
* dwarfout.c (output_decl): Check for DECL_INITIAL == NULL_TREE
|
||
|
rather than DECL_EXTERNAL != 0 when trying to see if we have a
|
||
|
mere function declaration rather than a function definition.
|
||
|
(dwarfout_file_scope_decl): Likewise. Also, don't bother checking
|
||
|
TREE_USED for file-scope functions, since it isn't 100% accurate
|
||
|
until the end of compilation anyway.
|
||
|
|
||
|
Sun Apr 25 17:07:44 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sparc.c (mem_aligned_8): Delete ifdefed out code. Add support
|
||
|
for TARGET_UNALIGNED_DOUBLES.
|
||
|
* sparc.h (TARGET_HOPE_ALIGN, TARGET_FORCE_ALIGN): Delete.
|
||
|
(TARGET_UNALIGNED_DOUBLES): Define.
|
||
|
(TARGET_SWITCHES): Delete hope-align, force-align. Add
|
||
|
unaligned-doubles and no-unaligned-doubles.
|
||
|
(ROUND_REG): Delete.
|
||
|
(FIRST_PARM_OFFSET, FUNCTION_ARG_ADVANCE, FUNCTION_ARG,
|
||
|
FUNCTION_INCOMING_ARG, FUNCTION_ARG_PARTIAL_NREGS,
|
||
|
FUNCTION_ARG_BOUNDARY): Delete force-align support.
|
||
|
(LONG_DOUBLE_TYPE_SIZE): Define to 128.
|
||
|
|
||
|
* sched.c (create_reg_dead_note): Rewrite so as to conserve
|
||
|
registers killed not number of REG_DEAD notes.
|
||
|
(schedule_block): Change comments about dead_notes variable.
|
||
|
|
||
|
* sparc.h (REG_ALLOC_ORDER, REG_LEAF_ALLOC_ORDER): Make %f0/%f1
|
||
|
the last float registers allocated.
|
||
|
|
||
|
* sparc.c (output_load_address, output_size_for_block_move,
|
||
|
output_block_move): Ifdef out.
|
||
|
* sparc.md (movstrsi): Comment out.
|
||
|
|
||
|
* sparc.c (output_function_epilogue): Emit 'nop' instead of
|
||
|
'sub %sp,-0,%sp' when the frame is empty.
|
||
|
* sparc.md (movdf): Add a define split.
|
||
|
|
||
|
* expmed.c (extract_fixed_bit_field): Adjust BITPOS so that it
|
||
|
fits inside MODE before adjusting OFFSET to get an aligned address.
|
||
|
|
||
|
Sun Apr 25 06:28:56 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* varasm.c (make_decl_rtl): If a variable has an asm operand that
|
||
|
refers to, e.g., fp, make a distinct RTL for it.
|
||
|
|
||
|
* c-decl.c (init_decl_processing): Last arg to __builtin_apply
|
||
|
is size_t, not int.
|
||
|
|
||
|
* c-lex.c (yylex): Don't warn about floating point out of
|
||
|
range if target floating-point format is IEEE.
|
||
|
|
||
|
* romp.h (SIZE_TYPE): Deleted.
|
||
|
|
||
|
Sat Apr 24 16:46:41 1993 Stephen L. Moshier (moshier@world.std.com)
|
||
|
|
||
|
* c-lex.c (forget_protocol_qualifiers): Cast enums to ints before
|
||
|
comparing.
|
||
|
|
||
|
Sat Apr 24 13:08:56 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (INITIALIZE_TRAMPOLINE): Pass a register operand, not
|
||
|
a memory operand to "cacheflush".
|
||
|
* pa.md (cacheflush): Rework pattern and output template to avoid
|
||
|
using REG+D addressing.
|
||
|
|
||
|
Sat Apr 24 11:15:02 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* flow.c (mark_used_regs): Use proper type for {all,some}_needed.
|
||
|
* cse.c (invalidate): Likewise for in_table.
|
||
|
|
||
|
* tree.h (build_binary_op, build_indirect_ref, build_unary_op):
|
||
|
Delete declarations; these are part of the front ends.
|
||
|
|
||
|
* objc-act.c (HASHFUNCTION): Cast pointers to widest int type.
|
||
|
|
||
|
Sat Apr 24 02:48:37 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Cygnus<->FSF merge.
|
||
|
|
||
|
Fri Apr 23 11:08:25 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-call.c, cp-class.c, cp-decl.c, cp-except.c, cp-init.c,
|
||
|
cp-parse.y, cp-pt.c, cp-search.c, cp-type2.c, cp-typeck.c,
|
||
|
cp-xref.c: Fix many bugs in types of fn args & such.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): When dealing with a class-local
|
||
|
typedef, only call poplevel when the current_binding_level isn't
|
||
|
what we marked as being the local_binding_level.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Call pushdecl_class_level, not
|
||
|
pushtag, to put a class-local typedef into its proper scope.
|
||
|
Also disable the warning about a typedef hiding the previous
|
||
|
one, since the cp-class.c change now diagnoses that problem.
|
||
|
* cp-class.c (delete_duplicate_fields_1): Also check for duplicated
|
||
|
type names.
|
||
|
|
||
|
* cp-lex.c (yyerror): Delete extern decl of input_redirected.
|
||
|
|
||
|
* cp-parse.y (primary): If the global value for a scoped identifier
|
||
|
ends up being an ADDR_EXPR, call assemble_extern on its argument,
|
||
|
not on the ADDR_EXPR itself. Fixes the IMPORT problem on the PA.
|
||
|
|
||
|
* cp-typeck.c (build_modify_expr_1): Put in missing `else'.
|
||
|
|
||
|
Wed Oct 7 16:00:29 1992 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
Change propagated from the C front-end.
|
||
|
* cp-decl.c (shadow_tag): Use pedwarn for useless keyword.
|
||
|
|
||
|
Wed Oct 7 17:51:36 PDT 1992 Ron Guilmette (rfg at netcom.com)
|
||
|
|
||
|
* cp-type2.c (digest_init): Handle union initializers which are
|
||
|
"raw" constructors.
|
||
|
(process_init_constructor): Renamed `erred' to `erroneous' (as in
|
||
|
the C front end).
|
||
|
(process_init_constructor): Added code to handle union initializers.
|
||
|
|
||
|
Fri Oct 23 16:29:45 1992 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
Change propagated from the C front-end.
|
||
|
* c-typeck.c (process_init_constructor): When initializing a union,
|
||
|
handle the case of an empty init list.
|
||
|
|
||
|
Tue Dec 1 21:35:36 1992 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-call.c (convert_harshness): Add support for ellipsis matching
|
||
|
when dealing with function pointers (or references) in argument
|
||
|
lists.
|
||
|
(rank_for_overload): Ditto.
|
||
|
(compute_conversion_costs): Ditto.
|
||
|
(*_HARSHNESS): Ditto
|
||
|
* cp-class.h (struct candidate): Ditto.
|
||
|
|
||
|
Mon Jan 4 11:46:19 1993 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
Changes propagated from the C front-end.
|
||
|
* cp-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
|
||
|
Call force_fit_type with end result.
|
||
|
|
||
|
Sat Jan 30 01:23:22 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-class.c (finish_struct): See to that static members whose
|
||
|
type is the class they're declared in gets a correct mode. This
|
||
|
is a completion of the Jan 23rd change.
|
||
|
|
||
|
Mon Feb 1 09:40:11 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-search.c (compute_visibility): Add support for anonymous
|
||
|
unions nested in classes.
|
||
|
|
||
|
Tue Feb 2 16:06:10 1993 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
Eliminate signed integer overflow in specbits:
|
||
|
* cp-lex.h (RID_BIT_TYPE): New typedef for RID_... bits.
|
||
|
(RIDBIT): New convenience macro for RID_... bits.
|
||
|
* cp-decl.c (grokvardecl, grokdeclarator): Declare specbits
|
||
|
to be RID_BIT_TYPE. Use RIDBIT instead of "1<<RID_...".
|
||
|
|
||
|
Mon Feb 15 10:45:12 1993 Niklas Hallqvist (niklas@della.appli.se)
|
||
|
|
||
|
* cp-method.c (build_typename_overload): Identifiers built by this
|
||
|
function needs the IDENTIFIER_OPNAME_P slot set.
|
||
|
|
||
|
Wed Apr 21 11:25:15 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (lookup_nested_type): When dealing with types that are
|
||
|
local to a nested class's member fn, make sure to hand back a TYPE_DECL
|
||
|
instead of a RECORD_TYPE.
|
||
|
|
||
|
Tue Apr 20 20:17:42 1993 Mike Stump (mrs@poseidon.cygnus.com)
|
||
|
|
||
|
* cp-spew.c (yylex): Add `typespec (ID::*ID)[' and `typespec
|
||
|
(ID::*ID)(' to list of things that parse as declarators.
|
||
|
|
||
|
Mon Apr 19 15:05:21 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (report_ambiguous_mi_virtuals): If is never an error
|
||
|
to have same named class members at declaration time, ambiguities
|
||
|
are now caught at use sights.
|
||
|
|
||
|
Fri Apr 16 13:59:28 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-method.c (build_opfncall): If they didn't declare a postfix
|
||
|
operator ++ or --, then fall back and use the prefix one.
|
||
|
* cp-decl.c (grokfndecl): Forbid an operator ++/-- with its second
|
||
|
argument as anything other than an int.
|
||
|
|
||
|
* cp-lex.c (set_yydebug): Add extern decl of yydebug.
|
||
|
|
||
|
Fix enums in nested classes.
|
||
|
* cp-search.c (lookup_nested_field): New argument `complain', to
|
||
|
control if we should emit an error about assignment to a member of
|
||
|
an enclosing class or not. Also, if ID ends up being an error_mark,
|
||
|
set it to a NULL so we don't try to do nasty things later---better
|
||
|
to assume we didn't find anything at all.
|
||
|
* cp-tree.h (lookup_nested_field): Add new arg to prototype.
|
||
|
* cp-decl.c (lookup_name): Pass if prefer_type is -2 into
|
||
|
lookup_nested_field, since there are cases (e.g., nested enums) when
|
||
|
we still need to look here.
|
||
|
* cp-lex.c (do_identifier): Pass complain arg as 1 into
|
||
|
lookup_nested_field.
|
||
|
|
||
|
Thu Apr 15 11:23:18 1993 Mike Stump (mrs@poseidon.cygnus.com)
|
||
|
|
||
|
* cp-search.c (report_ambiguous_mi_virtuals): Pass pointers to
|
||
|
arrays, not pointers to first elements in the array in call to
|
||
|
rank_mi_virtuals.
|
||
|
|
||
|
* cp-lex.c (do_identifier), cp-parse.y: move
|
||
|
undeclared_variable_notice to where it is really used.
|
||
|
|
||
|
* cp-lex.c (do_identifier): Improve error message.
|
||
|
|
||
|
Tue Apr 13 17:04:12 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (default_conversion): OFFSET_REFs may not always have
|
||
|
a TREE_CODE (TREE_TYPE (x)) of OFFSET_TYPE, but they always will
|
||
|
have a TREE_CODE (x) of OFFSET_REF.
|
||
|
|
||
|
Fri Apr 9 20:26:32 1993 Mike Stump (mrs@rtl.cygnus.com)
|
||
|
|
||
|
* cp-lex.c (real_yylex): Use MAP_CHARACTER translate incoming
|
||
|
character set. See c-lex.c ChangeLog entry for more details.
|
||
|
|
||
|
Thu Apr 8 15:30:58 1993 Mike Stump (mrs@rtl.cygnus.com)
|
||
|
|
||
|
* cp-search.c (lookup_field): When looking something up, if
|
||
|
want_type is set, and what we find is ambiguous make sure we set
|
||
|
errstr to 0, even when rval is already NULL_TREE.
|
||
|
|
||
|
Thu Apr 8 11:40:16 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-tree.h (lookup_name_current_level): Add prototype.
|
||
|
|
||
|
Tue Apr 6 13:36:00 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): When we see `typedef enum ...' inside
|
||
|
a class, properly grok the tag instead of giving two bogus errors.
|
||
|
(lookup_name_current_level): Don't make it static, and delete its
|
||
|
prototype.
|
||
|
|
||
|
* cp-lex.h (enum rid): Move RID_UNUSED1 to the end, so that RID_AUTO
|
||
|
will be 30, not 31. We're at the limit, the next time a new rid is
|
||
|
added to this, we have to re-implement it to avoid integer overflows.
|
||
|
|
||
|
Sat Apr 3 12:16:23 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-init.c (emit_base_init): init can be NULL_TREE when dealing
|
||
|
with arrays, guard against it.
|
||
|
|
||
|
Fri Apr 23 19:33:58 1993 Tor Egge (tegge@pvv.unit.no)
|
||
|
|
||
|
* reorg.c (relax_delay_slots): Make sure target_label is set.
|
||
|
|
||
|
Fri Apr 23 19:19:06 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (shadow_tag_warned): Let warned have three values, so that
|
||
|
a mere warning doesn't prevent a pedwarn. Don't skip the error call
|
||
|
at the end on accounted of warned.
|
||
|
|
||
|
* c-decl.c (push_parm_decl): Turn off warning when parameter
|
||
|
shadows typedef.
|
||
|
|
||
|
Fri Apr 23 16:41:54 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (casesi0): Indicate that the PC is set to the
|
||
|
out-of-range label if the index is not valid.
|
||
|
|
||
|
Fri Apr 23 14:00:48 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
|
||
|
|
||
|
* i386/svr3dbx.h, i386/svr3gas.h: Reflect new directory structure.
|
||
|
* i386/t-svr3dbx: New file to install the required ld ifiles
|
||
|
automatically.
|
||
|
* configure (i[34]86-...): Use t-svr3dbx if configured --with-stabs.
|
||
|
|
||
|
Fri Apr 23 13:53:31 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* reload1.c (emit_reload_insns): Advance following_insn if it is a
|
||
|
clobber, not if the next insn is a clobber.
|
||
|
|
||
|
Fri Apr 23 13:44:12 1993 Joey Pruett (joey@tessi.com)
|
||
|
|
||
|
* protoize.c (scan_for_missed_items): Add keywords: else, do, case.
|
||
|
|
||
|
Fri Apr 23 06:52:25 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* fold-const.c (fold, case REALPART_EXPR, IMAGPART_EXPR): Avoid using
|
||
|
build_{unary,binary}_op since the calling sequences depend on
|
||
|
the front-end.
|
||
|
* expr.c (expand_expr, case OFFSET_REF): Likewise.
|
||
|
* convert.c (convert_to_integer, convert_to_complex): Likewise.
|
||
|
|
||
|
* c-typeck.c (readonly_warning): Correctly check for assignments
|
||
|
to iterators.
|
||
|
|
||
|
Thu Apr 22 07:44:40 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* c-lang.c, objc-act.c (maybe_objc_comptypes): Undo the previous
|
||
|
change and make the undecided return value from 2 to -1 to avoid
|
||
|
confusion with the values used by comptypes.
|
||
|
(objc_comptypes): Ditto. When two record types are being
|
||
|
compared, and none of the typed object cases applies, return -1 to
|
||
|
indicate no decision.
|
||
|
* c-typeck.c (comptypes): Only pass along a known return value
|
||
|
from maybe_objc_comptype.
|
||
|
(comp_target_types): If maybe_objc_comptypes computed a known
|
||
|
answer, return it. Don't recurse for Objective-C.
|
||
|
|
||
|
* nextstep.h (ASM_FILE_START): Don't output a .file directive.
|
||
|
That's used by the assembler for error reporting.
|
||
|
|
||
|
Wed Apr 21 17:45:50 1993 Ron Guilmette (rfg at netcom.com)
|
||
|
|
||
|
* dwarfout.c (location_or_const_value_attribute): Fixed to use
|
||
|
DECL_INCOMING_RTL for PARM_DECLs only when DECL_RTL isn't usable,
|
||
|
and even then, only when it actually points to the right place.
|
||
|
|
||
|
* integrate.c (integrate_parm_decls): Copy the DECL_ARG_TYPE value
|
||
|
from the PARM_DECL being cloned into the DECL_ARG_TYPE field of the
|
||
|
clone.
|
||
|
|
||
|
* dwarf.h (AT_lo_user, AT_hi_user): Fix defined values to be correct
|
||
|
according to final DWARF V1 spec.
|
||
|
|
||
|
Tue Apr 20 20:32:57 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* function.c (assign_parms): Use mode of type, not BLKmode.
|
||
|
|
||
|
Tue Apr 20 18:37:12 1993 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* configure (rs6000-ibm-aix*): Put cases in proper order.
|
||
|
|
||
|
Mon Apr 19 15:27:16 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* calls.c (expand_call): New FUNCTION_ARG_CALLEE_COPIES macro.
|
||
|
* function.c (assign_parms): Ditto.
|
||
|
|
||
|
Sat Apr 17 17:44:59 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expr.h (FUNCTION_ARG_PADDING): Add parens to make clearer.
|
||
|
(MUST_PASS_IN_STACK): Don't allow machine to override (none
|
||
|
currently do).
|
||
|
Don't force in stack if wrong padding when padding isn't needed.
|
||
|
|
||
|
* basic-block.h (reg_basic_block): Now int *, not short *.
|
||
|
* flow.c (uid_block_number): Likewise.
|
||
|
(flow_analysis): Allocate uid_block_number and reg_basic_block
|
||
|
as array of ints.
|
||
|
* combine.c (reg_last_set_label, reg_last_set_table_tick, label_tick):
|
||
|
Use int, not short, for counting labels.
|
||
|
(combine_instructions): Allocate these vars as arrays of ints.
|
||
|
* jump.c (same_regs): Now arrays of ints.
|
||
|
(thread_jumps): all_reset also array of ints, and allocate as ints.
|
||
|
* reg-stack.c (block_number, BLOCK_NUM, reg_to_stack): Use ints,
|
||
|
not shorts to count blocks.
|
||
|
|
||
|
Sat Apr 17 03:27:48 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-parse.in (unary_expr): Delete the alternate REALPART and IMAGPART
|
||
|
rules with explicit parens. Make the simple REALPART and IMAGPART
|
||
|
rules contain cast_expr.
|
||
|
|
||
|
* c-decl.c (finish_struct): Promote unsigned bitfield to signed int
|
||
|
if the field isn't as wide as an int.
|
||
|
|
||
|
Fri Apr 16 21:42:49 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* calls.c (expand_call): Check warn_inline before complaining about
|
||
|
not being able to inline a fn declared inline.
|
||
|
* flags.h (warn_inline): Add extern decl.
|
||
|
|
||
|
Fri Apr 16 20:27:57 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* alpha.md (blockage): Use unspec_volatile #1; #0 is IMB.
|
||
|
|
||
|
* local-alloc.c (qty_n_refs): Make int, like reg_n_refs.
|
||
|
(qty_first_reg, reg_next_in_qty): Make int, not short.
|
||
|
(local_alloc): Allocate these as arrays of ints.
|
||
|
(block_alloc, qty_compare_1): qty_order is now array of ints.
|
||
|
|
||
|
Fri Apr 16 20:27:16 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* a29k.h (FUNCTION_VALUE_REGNO_P): True only for the first register
|
||
|
in the group.
|
||
|
|
||
|
* alpha.md, romp.md, rs6000.md (untyped_call, blockage): New patterns.
|
||
|
|
||
|
Fri Apr 16 17:53:21 1993 Ron Guilmette (rfg at netcom.com)
|
||
|
|
||
|
* reload1.c (last_spill_reg): Add missing "int".
|
||
|
|
||
|
Fri Apr 16 16:55:16 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (objc-headers): Ensure objc dir exists.
|
||
|
|
||
|
Fri Apr 16 16:40:49 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips/mips.h (MIPS_VERSION): Set Meissner revision number to 39.
|
||
|
(SELECT_SECTION): Do not put items with relocation into .rdata.
|
||
|
(INITIALIZE_TRAMPOLINE, TRANSFER_FROM_TRAMPOLINE): Allow these
|
||
|
macros to be overidden.
|
||
|
|
||
|
* mips/iris3.h (INITIALIZE_TRAMPOLINE, TRANSFER_FROM_TRAMPOLINE):
|
||
|
Provide versions of these that does not rely on using mprotect.
|
||
|
|
||
|
* mips/t-mips, mips/t-osfrose, mips/t-ultrix, i386/t-osfrose:
|
||
|
Delete extra dependencies.
|
||
|
|
||
|
* i386/osfrose.h (SELECT_SECTION): Do not put items with
|
||
|
relocation into .text if -pic-lib.
|
||
|
|
||
|
Fri Apr 16 01:09:53 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i386/xm-isc.h (REAL_VALUE_ATOF): Define only if
|
||
|
not REAL_ARITHMETIC.
|
||
|
|
||
|
Thu Apr 15 07:25:00 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* objc-act.c (IS_ID, IS_PROTOCOL_QUALIFIED_ID, IS_SUPER): New type
|
||
|
checking macros.
|
||
|
(objc_comptypes, build_message_expr, gen_declspecs): Use them.
|
||
|
|
||
|
* objc-act.c (gen_declarator): Don't use strcpy's return value.
|
||
|
|
||
|
* objc-act.c (build_message_expr): Allow any type that matches
|
||
|
objc_class_type.
|
||
|
|
||
|
* objc-act.c (get_class_reference): We already have a name.
|
||
|
|
||
|
* objc-act.c (receiver_is_class_object): Use STRIP_NOPS. Search
|
||
|
cls_ref_chain.
|
||
|
|
||
|
Thu Apr 15 07:25:00 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* objc-act.c (build_objc_string): Use TREE_SET_CODE instead of
|
||
|
assigning to TREE_CODE.
|
||
|
(build_objc_string_object): Ditto.
|
||
|
|
||
|
Wed Apr 14 17:51:50 1993 Holger Teutsch (holger@hotbso.rhein-main.de)
|
||
|
|
||
|
* clipper.h (FRAME_POINTER_REQUIRED, FRAME_POINTER_OFFSET):
|
||
|
Frame pointer is no longer required for leaf functions.
|
||
|
(OPTIMIZATION_OPTIONS): Define.
|
||
|
|
||
|
* clipper.c (clipper_frame_size): New function.
|
||
|
(output_function_pro/epilogue): Support omitting frame pointer.
|
||
|
|
||
|
* clipper.md (cmpsi): Use `cmpq' for small immediate values.
|
||
|
(addsi3): Use `loada' for `reg1 = reg2 + immed'.
|
||
|
|
||
|
Wed Apr 14 15:23:24 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* print-tree.c (print_node): Use (struct rtx_def *), not (rtx).
|
||
|
|
||
|
Wed Apr 14 13:46:36 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i860/i860.md (floatsidf2): Add missing arg to REAL_VALUE_ATOF.
|
||
|
|
||
|
* c-parse.in: Improve error message for sym undeclared at top level.
|
||
|
|
||
|
Wed Apr 14 12:06:08 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* c-lang.c, objc-act.c (maybe_objc_comptypes): Return 0
|
||
|
(incompatible) rather than 2 (similar enough) as the default.
|
||
|
This was an inadvertent change in the Objective-C merge.
|
||
|
|
||
|
* objc-act.c (get_class_reference): Call add_class_reference for
|
||
|
the GNU runtimes.
|
||
|
|
||
|
Wed Apr 14 03:49:21 CDT 1993 Paul Burchard (burchard@geom.umn.edu)
|
||
|
|
||
|
* objc/Object.h, objc/Object.m, (-awake);
|
||
|
objc/archive.c (__objc_finish_read_root_object):
|
||
|
Corrected name of method -awake: to -awake for compatibility.
|
||
|
|
||
|
Wed Apr 14 10:58:29 1993 Kresten Krab Thorup (krab@xiv)
|
||
|
|
||
|
* objc/Object.m, objc/Object.h (+streamVersion:): New method.
|
||
|
* objc/archive.c (objc_get_stream_class_version): New function.
|
||
|
|
||
|
Tue Apr 13 17:23:22 1993 Ron Guilmette (rfg at netcom.com)
|
||
|
|
||
|
* c-decl.c (pop_label_level, combine_parm_decls): Correct args
|
||
|
in error calls.
|
||
|
* c-typeck.c (error_init, pedwarn_init): Cast alloca result to char *.
|
||
|
* calls.c (expand_call): Last arg of emit_stack_save is NULL_RTX.
|
||
|
(store_one_arg): Fourth arg to emit_push_insn is NULL_RTX.
|
||
|
* collect2.c (main, scan_prog_file): Don't call signal on signal
|
||
|
names that aren't defined.
|
||
|
* dbxout.c (dbxout_symbol): Last arg to eliminate_regs is NULL_RTX.
|
||
|
* fold-const.c (size_int): NUMBER is unsigned so don't test
|
||
|
for negative.
|
||
|
(optimize_bit_field_compare, all_ones_mask_p): Add missing
|
||
|
last arg to force_fit_type call.
|
||
|
* gcc.c (putenv): Make result type void.
|
||
|
(main): Don't call signal for undefined signal names.
|
||
|
* genextract.c (main): Remove extra arg to printf call.
|
||
|
* print-tree.c (print_node_brief, print_node): Properly cast
|
||
|
arg when printing ints or rtx.
|
||
|
* rtl.h, tree.h (xmalloc): Don't use prototype for now.
|
||
|
* sched.c (sched_analyze_1): Extra arg in anti_dependence call.
|
||
|
* toplev.c (main): Don't call signal for undefined signal names.
|
||
|
* varasm.c (make_var_volatile): Return type is void.
|
||
|
(assemble_string): First arg is not pointer to unsigned.
|
||
|
* sparc.h (LEGITIMIZE_ADDRESS): Last arg to force_operand is NULL_RTX.
|
||
|
* sparc.md (movXX): Third arg to emit_move_sequence is NULL_RTX.
|
||
|
(movsi): Add missing return after abort.
|
||
|
|
||
|
Tue Apr 13 14:09:00 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (digest_init): Don't call default_conversion before
|
||
|
convert_for_assignment.
|
||
|
(parser_build_binary_op): Make NOP_EXPR, not NON_LVALUE_EXPR.
|
||
|
|
||
|
* dbxout.c (dbxout_type): Re-enable debugging output for anonymous
|
||
|
structures in C++.
|
||
|
|
||
|
Tue Apr 13 08:44:55 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc-act.c, toplev.c (-Wprotocol): added
|
||
|
* objc-act.c (flag_warn_protocol): New variable
|
||
|
(check_methods_accessible): New function
|
||
|
(check_protocol): Use check_methods or check_methods_accessible
|
||
|
depending on flag_warn_protocol to check protocol conformance.
|
||
|
|
||
|
* objc-act.c (start_class): For class implementations Assign
|
||
|
SUPER_CLASS_NAME from interface specification if not present.
|
||
|
|
||
|
Tue Apr 13 06:48:20 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* alpha.md (sminsf, smindf, smaxsf, smaxdf): Should be minsf, etc.
|
||
|
|
||
|
* genattrtab.c (clear_struct_flag): Add void return type defn.
|
||
|
(count_subs_rtx): Add int return type and add definition.
|
||
|
(simplify_test_exp): Delete debugging junk.
|
||
|
(do_nothing): Delete.
|
||
|
|
||
|
* tree.def (QUAL_UNION_TYPE): New tree code.
|
||
|
* tree.h (DECL_QUALIFIER): New access macro for decl.initial.
|
||
|
* calls.c, dbxout.c, dwarfout.c, expr.c, function.c, print-tree.c:
|
||
|
Treat QUAL_UNION_TYPE like UNION_TYPE when seeing if aggregate.
|
||
|
* sdbout.c, stmt.c, varasm.c: Likewise.
|
||
|
* expr.c (get_inner_reference): Don't blow up if a FIELD_DECL
|
||
|
hasn't been filled in.
|
||
|
(expand_expr, case COMPONENT_REF): Likewise.
|
||
|
* stor-layout.c (layout_union): Handle QUAL_UNION_TYPE.
|
||
|
(layout_type): Call layout_union for QUAL_UNION_TYPE and
|
||
|
treat it like UNION_TYPE elsewhere.
|
||
|
|
||
|
Tue Apr 13 06:08:16 1993 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* fold-const.c (div_and_round_double): Don't mix HOST_WIDE_INT * and
|
||
|
unsigned HOST_WIDE_INT * parameters; some compilers complain.
|
||
|
|
||
|
Mon Apr 12 22:14:03 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc/list.h, objc/runtime.h: Removed declarations of library
|
||
|
functions. objc/list.h, objc/objc.h, objc/objc-api.h,
|
||
|
objc/runtime.h, Object.m, Protocol.m: Changed to double quote
|
||
|
includes. Removed includes of stddef.h, objc-archive.h and
|
||
|
stdlib.h.
|
||
|
|
||
|
* objc/objc-archive.h: File deleted. Contents embedded in objc-api.h
|
||
|
* objc/objc-archive.c: File renamed to archive.c
|
||
|
* objc/objc-class.c: File renamed to class.c
|
||
|
* objc/objc-init.c: File renamed to init.c
|
||
|
* objc/objc-misc.c: File renamed to misc.c
|
||
|
* objc/objc-msg.c: File renamed to sendmsg.c
|
||
|
* objc/objc-object.c: File renamed to objects.c
|
||
|
* objc/objc-sel.c: File renamed to selector.c
|
||
|
* objc/Makefile (OBJC_H, OBJC_O): Updated accordingly
|
||
|
|
||
|
Mon Apr 12 22:05:58 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* Makefile.in (objc-act.o): Add dependencies.
|
||
|
|
||
|
Mon Apr 12 20:52:00 1993 Kresten Krab Thorup (krab@spiff.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc-act.c (_OBJC_SELECTOR_REFERENCES_decl): Variable renamed to
|
||
|
_OBJC_SELECTOR_TABLE_decl. Name of selector table renamed from
|
||
|
"_OBJC_SELECTOR_REFERENCES" to "_OBJC_SELECTOR_TABLE" to avoid
|
||
|
conflict with NeXTSTEP linker.
|
||
|
|
||
|
* Makefile.in (stmp-int-hdrs): Added dependency objc-headers.
|
||
|
(objc-headers): New target.
|
||
|
|
||
|
* objc/Makefile (_forward, fflags): Made targets error prone.
|
||
|
(objc-msg.o, _forward): Use explicit path instead of $<.
|
||
|
|
||
|
Mon Apr 12 19:49:55 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* objc-act.h (CLASS_PROTOCOL_LIST, PROTOCOL_LIST,
|
||
|
PROTOCOL_FORWARD_DECL, TYPE_PROTOCOL_LIST): Rearrange use of type
|
||
|
members to avoid use of noncopied_parts.
|
||
|
* objc-act.c (get_static_reference, get_objcect_reference,
|
||
|
start_protocol): Make a tree vector for new protocol types.
|
||
|
(start_class): The tree vector for class types is longer.
|
||
|
|
||
|
* m68k/next.h (ASM_OUTPUT_FLOAT_OPERAND): Use CODE.
|
||
|
|
||
|
|
||
|
Mon Apr 12 15:46:21 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (install-common): Delete $(bindir)/$(target)-gcc
|
||
|
before trying to install it.
|
||
|
|
||
|
* i960.h (CONSTANT_ALIGNMENT): Only increase alignment of string
|
||
|
constants.
|
||
|
|
||
|
* gcc.c (library_prefix): Delete variable.
|
||
|
(process_command): Delete uses of library_prefix.
|
||
|
(do_spec_1, D case): Delete use of library_prefix.
|
||
|
|
||
|
* explow.c (emit_stack_save): At end, call validize_mem when
|
||
|
inside sequence.
|
||
|
|
||
|
* c-typeck.c (internal_build_compound_expr): When pedantic, don't
|
||
|
simplify a COMPOUND_EXPR, so that it won't be mistaken for an
|
||
|
lvalue or an integer constant expression.
|
||
|
* fold-const.c (fold, COMPOUND_EXPR case): Likewise.
|
||
|
|
||
|
Mon Apr 12 15:24:05 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rs6000.c (print_operand): Sort all cases in alphabetical order.
|
||
|
(print_operand, case 'G'): New case.
|
||
|
(output_epilog): Know that "GNU Obj-C" is the language string
|
||
|
for Objective-C.
|
||
|
* rs6000.md (adddi3/subdi3): Allow immediate constants.
|
||
|
|
||
|
* configure (rs6000-ibm-aix*): Make AIX 3.2 the default.
|
||
|
|
||
|
* README.RS6000: Replaced file to discuss assembler for AIX 3.2 and
|
||
|
problems with NLS support.
|
||
|
|
||
|
* combine.c (record_value_for_reg): Properly set SUBST_LOW_CUID
|
||
|
for last change; otherwise won't get best value.
|
||
|
|
||
|
Mon Apr 12 13:23:59 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* jump.c (jump_optimize, clause for `x=a; if (...) x=b;'):
|
||
|
Do this regardless of BRANCH_COST if HAVE_conditional_move
|
||
|
defined.
|
||
|
|
||
|
Mon Apr 12 17:15:43 1993 Kresten Krab Thorup (krab at xiv)
|
||
|
|
||
|
* objc/hash.h: Deleted #include "mutext.h"
|
||
|
* objc/Object.m, objc/Object.h (-read:, -write:): added.
|
||
|
* objc/Object.m, objc-api.h: Stripped anything added by
|
||
|
kane@cc.purdue.edu which is not considered "minor changes".
|
||
|
* objc/objc.h: now "#include"s objc-archive.h
|
||
|
* objc/objc-msg.c (__objc_init_install_dtable,
|
||
|
__objc_install_dtable_for_class): Call to
|
||
|
__objc_resolve_class_links moved to the latter.
|
||
|
* objc/objc-msg.c (__objc_responds_to): Function added
|
||
|
* objc/objc-archive.c (objc_write_reference): added
|
||
|
|
||
|
Sat Apr 10 18:07:46 1993 Kresten Krab Thorup (krab@iesd.auc.dk)
|
||
|
|
||
|
* objc/Makefile: Cleaned up for inclusion in gcc distribution.
|
||
|
Target copy-headers added.
|
||
|
|
||
|
Sun Apr 11 06:40:16 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* toplev.c (strip_off_ending): Add .atr for Ada.
|
||
|
|
||
|
* reorg.c (add_to_delay_list): Clear any cached block information
|
||
|
for INSN.
|
||
|
|
||
|
* stor-layout.c (layout_record): After copying the offsets of a
|
||
|
field that is an anonymous union to the offsets of the fields
|
||
|
of that union, zero the offset of the anonymous field in case
|
||
|
it is used to access the inner fields.
|
||
|
|
||
|
* combine.c (make_compound_operation, case xSHIFTRT):
|
||
|
Clean up code so more readable and don't restrict to case
|
||
|
where C2 >= C1.
|
||
|
Pass correct (inner) code to recursive call.
|
||
|
(make_compound_operation, case SUBREG): Pass the code of our
|
||
|
operand to recursive call, not SUBREG, and make another recursive
|
||
|
call after calling force_to_mode.
|
||
|
|
||
|
Sun Apr 11 11:16:48 1993 John F Carr (jfc@Athena.mit.edu)
|
||
|
|
||
|
* combine.c (can_combine_p): Don't move an UNSPEC_VOLATILE.
|
||
|
|
||
|
Sun Apr 11 01:32:39 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* expmed.c (expand_divmod): When adjusting op0 for trunc_div or
|
||
|
trunc_mod, using shifts (not branches), make a new pseudo for the
|
||
|
result. Don't use target for adjusted_op0.
|
||
|
|
||
|
Sat Apr 10 10:57:09 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* xm-alpha.h (ONLY_INT_FIELDS): No longer needed.
|
||
|
|
||
|
* alpha.c (alpha_sa_size): Need to save $26 if it is used or
|
||
|
if any other register is saved, but not just because a stack
|
||
|
space is needed.
|
||
|
(output_prolog): Add code to probe the stack if we allocate more
|
||
|
than 4096 bytes; required by chapter 7 (for threads).
|
||
|
Know when to save $26.
|
||
|
(output_epilog): Know when to restore $26.
|
||
|
* alpha.md (add/sub): Correct predicates and constraints for
|
||
|
sNaddX and addX insns; we can use sNsubX and subX to add small
|
||
|
negative constants.
|
||
|
Don't split addition to SP since we want to update it just once.
|
||
|
(beq, bne): Use subtract, not compare for ints; it's more efficient.
|
||
|
(define_split for comparisons): Always prefer add/sub if it will work.
|
||
|
(probe_stack, allocate_stack): New patterns.
|
||
|
|
||
|
Fri Apr 9 20:03:38 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (free_tree_list): New variable.
|
||
|
(digest_init): Set free_tree_list.
|
||
|
(process_init_constructor): Use add_double to do arithmetic with
|
||
|
double integers instead of using fold/build to to arithmetic in
|
||
|
type of array index. Use free_tree_list when available instead of
|
||
|
generating a new tree_list.
|
||
|
|
||
|
Fri Apr 9 19:05:31 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* c-lex.h (RID_IN, RID_OUT, RID_INOUT, RID_BYCOPY, RID_ONEWAY,
|
||
|
RID_ID): New Objective-C keywords.
|
||
|
* c-parse.gperf: Incorporate the Objective-C keywords from
|
||
|
objc-parse.gperf and add the new keywords.
|
||
|
* objc.gperf: Deleted.
|
||
|
* c-lex.c: Use -N when running gperf so the keyword table can be
|
||
|
accessed. Ran gperf and replaced that section.
|
||
|
(forget_protocol_qualifiers, remember_protocol_qualifiers): New
|
||
|
functions to modify the keyword table so that `in', `out', `inout',
|
||
|
`bycopy', and `oneway' are keywords only in protocol declarations.
|
||
|
(init_lex): Initialize the new keywords. Forget the protocol
|
||
|
qualifiers, and only make `id' a keyword when compiling an
|
||
|
Objective-C module.
|
||
|
(yylex): Treat @ as the start of an identifier (keyword), but
|
||
|
recognize Objective-C string constants (@"...").
|
||
|
* c-parse.in: Add support for Objective-C protocols, classes, and
|
||
|
strings.
|
||
|
(initlist): Don't include labeled array elements in the
|
||
|
Objective-C grammer. These look like messages and preclude the
|
||
|
use of messages in initializers.
|
||
|
(recognize_objc_keyword): Deleted. The keywords are now in
|
||
|
c-parse.gperf.
|
||
|
* c-tree.h: Add declarations for functions in objc-act.c.
|
||
|
(doing_objc_thang): Declare here.
|
||
|
* c-decl.c (grokfield): Check for statically allocated objects.
|
||
|
* c-lang.c (is_class_name, maybe_objc_method_name,
|
||
|
build_objc_string): New functions.
|
||
|
(maybe_objc_comptypes): Add REFLEXIVE parameter.
|
||
|
* c-typeck.c (comptypes, convert_for_assignment): Check for
|
||
|
Objective-C protocols (non-reflexive use of maybe_objc_comptypes).
|
||
|
(comp_target_types): Rewrite so that maybe_objc_comptypes checks
|
||
|
protocols when processing an Objective-C module. For C modules,
|
||
|
the code path is unchanged.
|
||
|
(convert_for_assignment): Improve the error message for
|
||
|
incompatible message arguments.
|
||
|
* objc-act.h, objc-act.c: Add support for protocols, classes, and
|
||
|
strings. Update the runtime targets for the new GNU runtimes as
|
||
|
well as existing NeXT runtimes.
|
||
|
* toplev.c (lang_options): Add -fgnu-runtime and -fnext-runtime.
|
||
|
|
||
|
* configure (i[34]86-next-*): New configuration.
|
||
|
* config.sub: Default to bsd if vendor is next.
|
||
|
* i386/next.h, i386/next.c, i386/x-next, i386/t-next,
|
||
|
i386/xm-next: New files.
|
||
|
* m68k/next.h, m68k/next.c: Move machine independent portions to
|
||
|
nextstep.h and nextstep.c. Update to NeXTSTEP 3.0 and 3.1.
|
||
|
* nextstep.h, nextstep.c: New files.
|
||
|
|
||
|
Dumped Kresten's latest objc-runtime into the objc directory.
|
||
|
This needs work.
|
||
|
|
||
|
* objc/core.c, objc/objc-proto.h, objc/object.h, objc/object.m,
|
||
|
objc/record.h: Deleted.
|
||
|
|
||
|
Thu Apr 1 11:02:49 1993 Kresten Krab Thorup (krab at xiv)
|
||
|
|
||
|
* objc/list.h (list_remove_head): added case for one element list.
|
||
|
* objc-init.c (__objc_exec_class): changed objc_get_class to
|
||
|
objc_lookup_class. (thanks to mccallum@cs.rochester.edu)
|
||
|
|
||
|
Thu Mar 30 11:04:11 1993 Kresten Krab Thorup (krab at xiv)
|
||
|
|
||
|
* Protocol.m, objc/Protocol.h: added
|
||
|
* objc.h (struct objc_protocol): added
|
||
|
* objc-init.c (__objc_init_protocols): added
|
||
|
(__objc_exec_class): added code for initializing protocols
|
||
|
* objc-class.c (__objc_class_add_protocols): added
|
||
|
|
||
|
Thu Mar 25 17:09:40 1993 Kresten Krab Thorup (krab at xiv)
|
||
|
|
||
|
* configure, Makefile.in: added
|
||
|
* Makefile.in (install): added
|
||
|
|
||
|
Wed Mar 24 14:32:14 1993 Kresten Krab Thorup (krab at xiv)
|
||
|
|
||
|
* objc/objc.h: Define objc_msg_lookup inline if optimization is
|
||
|
turned on. objc-actions.c changed accordingly.
|
||
|
|
||
|
Tue Mar 23 18:02:04 1993 Kresten Krab Thorup (krab at eos)
|
||
|
|
||
|
* sarray.c, objc/sarray.h: Structure of `sarray' changed
|
||
|
eliminating one indirection. This affects most functions.
|
||
|
|
||
|
Mon Mar 29 1993 Christopher J. Kane (kane@rock-opera)
|
||
|
|
||
|
* objc-object.c (_objc_object_alloc, _objc_object_dispose,
|
||
|
_objc_object_copy): moved to objc-misc.c, init to 0.
|
||
|
: deleted file.
|
||
|
|
||
|
* Object.m (-perform:, -perform:with:, -perform:with:with:): check
|
||
|
return value of objc_msg_looup before using it.
|
||
|
(-name, -doesNotRecognize:, -error:): changed class_get_class_name
|
||
|
to object_get_class_name.
|
||
|
(+readFrom:): added check for class name length.
|
||
|
|
||
|
* objc-api.m (class_create_instance, object_copy, object_dispose):
|
||
|
moved from objc-object.c, inline'd
|
||
|
|
||
|
Sun Mar 28 1993 Christopher J. Kane (kane@prelude)
|
||
|
|
||
|
* objc-api.h (several inline functions): rewritten to
|
||
|
use new CLS_ISCLASS and CLS_ISMETA macros.
|
||
|
(object_is_metaclass): added.
|
||
|
|
||
|
* objc.h (_objc_alloc, _objc_dealloc, _objc_realloc,
|
||
|
_objc_copy, objc_trace): removed (not used).
|
||
|
(class_get_class_number, class_set_class_number): removed.
|
||
|
(CLS_ISCLASS, CLS_ISMETA): check for nil parameter.
|
||
|
|
||
|
Sat Mar 27 1993 Christopher J. Kane (kane@toccata)
|
||
|
|
||
|
* Object.m: method comments added.
|
||
|
(-transmuteClassTo:): removed error message.
|
||
|
(+error:): removed.
|
||
|
(-error:): added +error: functionality.
|
||
|
(+readFrom:): changed objc_get_class to objc_lookup_class.
|
||
|
(+readFrom:): added class_set_version.
|
||
|
|
||
|
* objc-api.h (object_get_class, object_get_super_class,
|
||
|
object_get_meta_class, object_is_class,
|
||
|
object_is_instance, _objc_error): added.
|
||
|
|
||
|
* objc.h (_objc_error): moved to objc-api.h.
|
||
|
|
||
|
Fri Mar 26 1993 Christopher J. Kane (kane@toccata)
|
||
|
|
||
|
* objc-api.h: function comments added.
|
||
|
(class_set_class_number, class_get_class_number, METHOD_NULL,
|
||
|
class_add_method_list, objc_msg_lookup_super): moved to
|
||
|
objc.h.
|
||
|
(objc_msg_sendv): removed.
|
||
|
|
||
|
* Object.h, Object.m (-isMetaClass): added.
|
||
|
(+free, +name, +respondsTo:, +respondsTo:): removed.
|
||
|
(+class, +superClass, +metaClass): removed.
|
||
|
|
||
|
* Object.m (-storeOn:): added variable class_encoding.
|
||
|
(+readFrom:): replaced constant '#' with _C_CLASS.
|
||
|
(-descriptionForMethod): changed descriptionForInstanceMethod: message
|
||
|
to class_get_instance_method.
|
||
|
(-class): now calls object_get_class.
|
||
|
(-superClass): now calls object_get_super_class.
|
||
|
(-metaClass): now calls object_get_meta_class.
|
||
|
|
||
|
Wed Mar 24 1993 Christopher J. Kane (kane@rock-opera)
|
||
|
|
||
|
* objc-api.h (METHOD_NULL): new define.
|
||
|
(method_get_argsize, method_get_imp, class_get_super_class,
|
||
|
class_get_meta_class, class_get_instance_size): new
|
||
|
functions.
|
||
|
|
||
|
* Object.m (-isStructuredLike:, CLASS, IMP2): removed.
|
||
|
(#include <objc/objc.h>): removed.
|
||
|
(includes <stdio.h>, <stdarg.h>, <errno.h>): replaced w/ extern decls.
|
||
|
(+poseAs:): implemented.
|
||
|
(-transmuteClassTo:): now returns previous class.
|
||
|
(-performv::): changed constant 96 to method_get_argsize.
|
||
|
(-perform:, -perform:with:, -perform:with:with:): removed casts.
|
||
|
(-storeOn:, +readFrom:): replaced "strlen("#")" with "1".
|
||
|
(-isKindOfClassNamed:, -isMemberOfClassNamed:, -error:,
|
||
|
+error:): check for NULL.
|
||
|
(many methods): changed pointer indirections to function calls.
|
||
|
(+instancesRespondTo:, -respondsTo:, -methodFor:
|
||
|
+instanceMethodFor:): simplified.
|
||
|
|
||
|
* Object.h, Object.m (-changeClass:): renamed to -transmuteClassTo:.
|
||
|
(+initialize, -isClass, -isInstance): added.
|
||
|
|
||
|
* Object.h: redundant #defines, typedefs removed; comments modified.
|
||
|
(+readFrom:, -readFrom:, -storeOn:) added.
|
||
|
(-perform:with:): duplicate declaration removed.
|
||
|
|
||
|
Fri Apr 9 17:42:11 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config.sub: Accept i370, mvs.
|
||
|
For i370-ibm*, assume mvs by default.
|
||
|
Later, likewise, for i370-*.
|
||
|
For -mvs*, assume ibm as default vendor.
|
||
|
|
||
|
* c-lex.c (yylex): Use MAP_CHARACTER if it's defined.
|
||
|
|
||
|
* cccp.c (no_precomp): Make it 1 by default.
|
||
|
|
||
|
Fri Apr 9 17:15:00 DJ Delorie (dj@ctron.com)
|
||
|
|
||
|
* configure.bat: Updated to handle current Makefile
|
||
|
and new config/i386/go32.h.
|
||
|
|
||
|
* config/i386/go32.h: New file.
|
||
|
|
||
|
* config/i386/xm-dos.h: Define MKTEMP_EACH_FILE and
|
||
|
NO_PRECOMPILES.
|
||
|
|
||
|
Fri Apr 9 15:11:25 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* Makefile.in: Install as $(target)-gcc, not gcc-$(target).
|
||
|
|
||
|
* fixincludes: Avoid inserting #ifndefs in limits.h if they are
|
||
|
already there (solves HP/UX problem).
|
||
|
|
||
|
Thu Apr 8 21:36:11 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c: Include hard-reg-set.h.
|
||
|
(reg_nonzero_bits): Should be unsigned.
|
||
|
(reg_last_set_{mode,nonzero_bits,sign_bit_copies}): New variables.
|
||
|
(combine_instructions): Allocate and initialized them.
|
||
|
(nonzero_bits, num_sign_bit_copies, case REG): Use new variables
|
||
|
to get information on regs we've seen before.
|
||
|
(record_value_for_reg): Set new variables for register being modified.
|
||
|
(record_dead_and_set_regs): Invalidate regs clobbered by CALL_INSN.
|
||
|
* Makefile.in (combine.o): Includes hard-reg-set.h.
|
||
|
|
||
|
* expr.c (do_store_flag, case GT_EXPR, LE_EXPR): Don't
|
||
|
confuse highest unsigned value with -1.
|
||
|
|
||
|
* combine.c (force_to_mode, case xSHIFT): Don't narrow the
|
||
|
mode unless we can be sure that the shift count is smaller
|
||
|
than the size of the mode.
|
||
|
|
||
|
* ns32k.h (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS):
|
||
|
Add new register class GEN_AND_FLOAT_REGS.
|
||
|
|
||
|
Thu Apr 8 18:42:27 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (c-parse.y, objc-parse.y): Use sed, not awk.
|
||
|
|
||
|
* c-decl.c (finish_enum): Store layout results into variant types.
|
||
|
|
||
|
* flow.c (mark_set_1): Clear reg_next_use at the proper place.
|
||
|
|
||
|
Thu Apr 8 10:50:00 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* Makefile.in (LIBGCC2_INCLUDES, LIBGCC2_DEPS): New variables,
|
||
|
with empty values, to be overriden by t-* files.
|
||
|
(LIBGCC2_CFLAGS): Use LIBGCC2_INCLUDES.
|
||
|
(libgcc2.ready): Depend on LIBGCC2_DEPS.
|
||
|
(stmp-int-hdrs): New target, all of old stmp-headers except
|
||
|
float.h.
|
||
|
(stmp-headers): Depend on stmp-int-hdrs, and just install float.h.
|
||
|
|
||
|
Thu Apr 8 06:58:27 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* c-tree.h (require_complete_type, lookup_name_current_level): Add
|
||
|
prototypes.
|
||
|
|
||
|
* tree.h (require_complete_type, lookup_name_current_level): Remove
|
||
|
prototypes, these are defined in c-typeck.c and c-decl.c, and
|
||
|
lookup_name_current_level is declared static in cp-decl.c.
|
||
|
|
||
|
Wed Apr 7 14:37:41 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* flow.c (mark_set_1): Clear reg_next_use for all kinds of regs.
|
||
|
|
||
|
Wed Apr 7 09:18:20 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* i386/osfrose.h (GO_IF_LEGITIMATE_ADDRESS): Allow -fpic again to
|
||
|
mean System V.4 semantics.
|
||
|
(CC1_SPEC): -fpic and -fPIC turn off OSF/rose shared library
|
||
|
support.
|
||
|
|
||
|
Tue Apr 6 18:07:20 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (start_function):
|
||
|
Inhibit missing prototype warning for `main'.
|
||
|
|
||
|
Tue Apr 6 17:23:34 1993 Bill Cox (bill@cygnus.com)
|
||
|
|
||
|
* tree.h (require_complete_type, lookup_name_current_level): Add
|
||
|
prototypes.
|
||
|
|
||
|
Tue Apr 6 15:09:42 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* va-sparc.h (va_arg): Cast argument pointer to (char *).
|
||
|
|
||
|
* unroll.c (loop_iterations): When computing comparison_value, use
|
||
|
reg_set_p to identify instructions that modify it.
|
||
|
|
||
|
* sparc.md (lshldi3, lshrdi3): Define.
|
||
|
|
||
|
* Makefile.in (STAGESTUFF): Add insn-opinit.c, stamp-opinit, and
|
||
|
genopinit.
|
||
|
|
||
|
* cccp.c (do_include): For missing header file, if -M, don't
|
||
|
output dependencies, and warning not error if no dependency is
|
||
|
needed.
|
||
|
|
||
|
* c-common.c (decl_attributes, format case): Error if num_arg does
|
||
|
not point to a string type argument, or if first_arg_num not the
|
||
|
anonymous argument.
|
||
|
|
||
|
* function.c (init_function_start): Always set
|
||
|
current_funtion_returns_pcc_struct if PCC_STATIC_STRUCT_RETURN defined.
|
||
|
|
||
|
* sparc.md (movdi): End by returning the last template; otherwise
|
||
|
we return junk for a template.
|
||
|
|
||
|
* README.ALTOS: Comment as possibly obsolete.
|
||
|
* README.ENCAP: Delete.
|
||
|
* install.texi: Delete references to COFF encapsulation.
|
||
|
|
||
|
* tree.h: Add more prototypes.
|
||
|
|
||
|
Tue Apr 6 12:01:17 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Bump Meissner version number to 38.
|
||
|
(PUT_SDB_*): If -mgas, don't put # in front of directives.
|
||
|
(MIPS_DEFAULT_GVALUE): If not define, define as 8, which is the
|
||
|
default -G xx value to use.
|
||
|
|
||
|
* mips.c (override_options): Set mips_section_threshold to
|
||
|
MIPS_DEFAULT_GVLAUE if -G xx not used.
|
||
|
|
||
|
* mips/osfrose.h (DWARF_DEBUGGING_INFO): Define.
|
||
|
(MIPS_DEFAULT_GVALUE): If mips assembler, the value is 8,
|
||
|
otherwise it is 0.
|
||
|
|
||
|
* i386/osfrose.h (DWARF_DEBUGGING_INFO): Define.
|
||
|
(PREFERRED_DEBUGGING_TYPE): Define as DBX_DEBUG.
|
||
|
|
||
|
Mon Apr 5 20:47:44 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* Represent prologue and epilogue as RTL on the PA
|
||
|
* pa.md (prologue, epilogue): New define_expands.
|
||
|
(return_internal, call_profiler): New define_insns.
|
||
|
* pa.h (FIXED_REGISTERS): %r4 is no longer fixed.
|
||
|
(CALL_USED_REGISTERS): %r4 is no longer CALL_USED either.
|
||
|
(REG_ALLOC_ORDER): Move %r4 up in the allocation order.
|
||
|
(DELAY_SLOTS_FOR_EPILOGUE): Delete.
|
||
|
(ELIGIBLE_FOR_EPILOGUE_DELAY): Delete.
|
||
|
* pa.c (print_stw, print_ldw): Delete.
|
||
|
(eligible_for_epilogue_delay): Delete.
|
||
|
(hppa_epilogue_delay_slots): Delete.
|
||
|
(store_reg, load_reg, set_reg_plus_d): New helper functions.
|
||
|
(output_function_prologue): Only emit assembler pseudo-ops
|
||
|
to denote the start of a function. Place the correct
|
||
|
value into hp_profile_label_name if profiling.
|
||
|
(output_function_epilogue): Only emit assembler pseudo-ops
|
||
|
to deonte the end of a function.
|
||
|
(hppa_expand_prologue): New function to emit all prologue
|
||
|
code as RTL.
|
||
|
(hppa_expand_epilogue): Likewise for the epilogue.
|
||
|
(compute_frame_size): Update to account for using %r4 as an
|
||
|
allocatable register if the frame pointer was eliminated.
|
||
|
|
||
|
Mon Apr 5 06:57:35 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expr.c (expand_expr, case SAVE_EXPR): Pass promoted type to
|
||
|
store_expr.
|
||
|
|
||
|
Mon Apr 5 03:26:06 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* reload1.c (emit_reload_insns): Cast enum array index to int.
|
||
|
|
||
|
* expr.c (store_constructor): Properly compute size of array
|
||
|
when clearing the whole array.
|
||
|
|
||
|
Mon Apr 5 02:54:54 1993 Per Bothner (bothner@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (lookup_name_current_level): Make non-static.
|
||
|
|
||
|
Sun Apr 4 20:09:19 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (HARD_REGNO_MODE_OK): Do not accept integer modes
|
||
|
greater than 32 bits in 1.0 FP registers.
|
||
|
* pa.md (movdi patterns): Do not accept 1.0 FP registers.
|
||
|
(floatunsdisf, floatunsdidf expanders): Disable unless TARGET_SNAKE.
|
||
|
(floatdisf2, floatdidf2 patterns): Likewise.
|
||
|
(fix_truncdisf2, fix_truncdidf2): Likewise.
|
||
|
|
||
|
* pa.md (dbra pattern): Extend to allow any 5 bit increment,
|
||
|
any comparison operator for the compare against zero, and
|
||
|
no longer require the REG_NONNEG note.
|
||
|
|
||
|
* pa.h (EXTRA_CONSTRAINT): Refine 'T' constraint to not accept
|
||
|
pseudos which did not get hard registers and to not use
|
||
|
short_memory_operand.
|
||
|
* pa.c (short_memory_operand): Delete.
|
||
|
(emit_move_sequence): Do not use short_memory_operand when testing
|
||
|
for secondary reloads for FP loads/stores.
|
||
|
* pa.md (movsi for FP regs): Delete special case patterns.
|
||
|
(movdi for FP regs): Likewise.
|
||
|
(movsi main recognizer): Allow fp<->memory copies.
|
||
|
(movdi main recognizer): Likewise.
|
||
|
|
||
|
Sun Apr 4 18:56:25 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.h (FUNCTION_OUTGOING_VALUE): Remove.
|
||
|
(FUNCTION_VALUE_REGNO_P): Return regs depend on TARGET_SNAKE.
|
||
|
|
||
|
Sun Apr 4 17:47:43 1993 John F Carr (jfc@Athena.mit.edu)
|
||
|
|
||
|
* reorg.c (get_jump_flags): Check for LABEL == 0 before using
|
||
|
LABEL.
|
||
|
|
||
|
Sun Apr 4 16:38:04 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* mips-tfile.c: Change "illegal" to "invalid" in error messages.
|
||
|
(parse_stabs_common): Allow nonzero ignored fields in .stabs/.stabn.
|
||
|
|
||
|
* calls.c (expand_call) [PCC_STATIC_STRUCT_RETURN]:
|
||
|
Always set pcc_struct_value if aggregate_value_p returns 1.
|
||
|
|
||
|
* Makefile.in (alloca.o): Delete -Demacs from command.
|
||
|
|
||
|
Sun Apr 4 11:19:07 PDT 1993 Ron Guilmette (rfg at netcom.com)
|
||
|
|
||
|
* dwarfout.c (type_attribute): Use the TYPE_MAIN_VARIANT of the
|
||
|
given type when calling `user_def_type_attribute'.
|
||
|
|
||
|
Sun Apr 4 07:57:18 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* optabs.c: Include reload.h.
|
||
|
* Makefile.in (optabs.o): Show includes reload.h.
|
||
|
|
||
|
* alpha.c (output_prolog): Need LDGP even for static procedure.
|
||
|
|
||
|
* alpha.c (alpha_builtin_saveregs): Adjust for fact that
|
||
|
virtual_incoming_args_rtx includes pretend size.
|
||
|
* alpha.h (SETUP_INCOMING_VARARGS): Likewise.
|
||
|
|
||
|
* alpha.h (LINK_SPEC): Don't pass -O2 to ld; it seems to be broken.
|
||
|
|
||
|
* reorg.c (rare_destination): New function.
|
||
|
(mostly_true_jump): Refine to use more info about destination
|
||
|
and fallthrough; now returns -1 for very unlikely branches.
|
||
|
(fill_eager_delay_slots, relax_delay_slots): Allow -1 return
|
||
|
from mostly_true_jump.
|
||
|
|
||
|
Sun Apr 4 03:09:23 1993 Richard Stallman (rms@churchy.gnu.ai.mit.edu)
|
||
|
|
||
|
* gstdarg.h [__svr4__]: Test only _VA_LIST_ to avoid dup typedef.
|
||
|
(This used to be if __SVR4_2__.)
|
||
|
|
||
|
* config/m68k/m68k.c (floating_exact_log2): Initialize r1.
|
||
|
|
||
|
Sat Apr 3 20:01:05 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.c (hppa_legitimize_address): Use Pmode consistently.
|
||
|
|
||
|
Sat Apr 3 17:35:11 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reload1.c (emit_reload_insns): Don't update the status of a
|
||
|
register from an input reload if it also has an output reload.
|
||
|
|
||
|
* expr.c (store_expr): Call size_binop instead of doing the
|
||
|
same thing with fold and build.
|
||
|
|
||
|
* combine.c (simplify_comparison, case PLUS): Generalize
|
||
|
simplification of (eq (plus A B) C).
|
||
|
(simplify_comparison, case MINUS): Add corresponding cases.
|
||
|
|
||
|
Fri Apr 2 19:11:46 1993 Richard Stallman (rms@geech.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-parse.in (expr_no_commas, from ASSIGN op):
|
||
|
Store ERROR_MARK as the original code.
|
||
|
|
||
|
Fri Apr 2 07:49:03 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reload1.c (reload_reg_used_for_inherit): New variable.
|
||
|
(clear_reload_reg_in_use): New function.
|
||
|
(allocate_reload_reg): Don't consider an inherited register as
|
||
|
one that we should share in the first pass.
|
||
|
Don't mark a register in use until we are sure it will fit.
|
||
|
(choose_reload_regs): Mark spill regs used for inheriting.
|
||
|
When we decide we can no longer use a register, show it isn't
|
||
|
being used.
|
||
|
|
||
|
* genopinit (optabs): Fix typo in name for "fix" pattern.
|
||
|
|
||
|
Thu Apr 1 21:24:04 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Cygnus<->FSF merge.
|
||
|
|
||
|
Thu Apr 1 17:20:05 1993 Mike Stump (mrs@sphagnum.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (start_method): Never allow circularities in
|
||
|
TREE_CHAINs, as otherwise the compiler will core dump. This happens
|
||
|
when a method is redeclared improperly at leat.
|
||
|
|
||
|
Thu Apr 1 12:06:03 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (convert_for_assignment): Check if `rhs' is an
|
||
|
error_mark_node before looking to see if it's of OFFSET_TYPE.
|
||
|
|
||
|
* cp-decl.c (grokvardecl): Don't use declarator unless it's non-null
|
||
|
when looking for a redefinition.
|
||
|
|
||
|
* cp-typeck.c (convert_for_initialization): Check if `rhs' is a
|
||
|
TREE_LIST before looking for its value.
|
||
|
|
||
|
* cp-init.c (expand_default_init): Don't clear DECL_REGISTER.
|
||
|
|
||
|
Wed Mar 31 17:57:50 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-spew.c (yylex, case IDENTIFIER): If identifier_typedecl_value
|
||
|
returns a NULL_TREE, then set `lastiddecl' to be `trrr'.
|
||
|
* cp-lex.c (identifier_typedecl_value): Instead of internal error 62
|
||
|
when we don't have a match for `type', return a NULL_TREE since our
|
||
|
callers will know what to do in that case.
|
||
|
|
||
|
* cp-tree.h (IDENTIFIER_TYPEDECL_VALUE): Deleted.
|
||
|
(identifier_typedecl_value): Deleted first prototype, kept second.
|
||
|
* cp-tree.c (list_hash_lookup_or_cons): Call the function for
|
||
|
identifier_typedecl_value, don't use the macro.
|
||
|
* cp-spew.c (yylex): Likewise.
|
||
|
|
||
|
Wed Mar 31 14:43:50 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-cvt.c (convert_from_reference): Make sure we set
|
||
|
TREE_SIDE_EFFECTS if we need to. Cures duplicate evaluations in
|
||
|
things like: foo.mem(g++) = class_c; where foo.mem returns a
|
||
|
reference to a class object.
|
||
|
|
||
|
Wed Mar 31 13:32:38 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-method.c (report_type_mismatch): Arguments are numbered
|
||
|
starting from 1 now.
|
||
|
|
||
|
Tue Mar 30 17:21:18 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokfndecl): When re-using an old decl in place of a
|
||
|
new decl, make sure to wipe out the DECL_CHAIN slot, as otherwise
|
||
|
this creates a circularity, causing an infinite loop in the compiler
|
||
|
later.
|
||
|
|
||
|
Tue Mar 30 14:14:53 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl2.c (check_classfn): Say which class when giving an error
|
||
|
about arglist mismatches or missing members.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): For class-local typedefs, call pushtag
|
||
|
to make sure the identifier is in scope properly.
|
||
|
|
||
|
Mon Mar 29 18:05:22 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
lookup_fnfields hacking... Corrects some problems found with Thu
|
||
|
Mar 25 23:09:27 1993 vtable fixes.
|
||
|
|
||
|
* cp-init.c (build_offset_ref): When looking for the component,
|
||
|
have lookup_fnfields do the ambiguity checking, as we know it works
|
||
|
much better than anything here.
|
||
|
* cp-method.c (hack_identifier): If a name is ambiguous, go ahead
|
||
|
and report the error.
|
||
|
* cp-search.c (lookup_fnfields): Refine semantics and document
|
||
|
semantics with respect to ambiguities and returning error_mark_node.
|
||
|
Also, extend to be able to find all virtual functions.
|
||
|
* cp-search.c (get_virtuals_named_this): Remove unused second
|
||
|
argument. Arrange for call to lookup_fnfields to find all virtual
|
||
|
functions, even if they are hidden.
|
||
|
* cp-search.c (get_first_matching_virtual): Removed unused second
|
||
|
argument to get_virtuals_named_this.
|
||
|
|
||
|
Mon Mar 29 16:42:58 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-method.c (dump_init): If the init value is an enum, then use
|
||
|
its tag in the error message, instead of its value.
|
||
|
|
||
|
* cp-typeck.c (build_binary_op_nodefault): Delete spurious warning
|
||
|
about comparision between signed/unsigned (matches C front-end).
|
||
|
|
||
|
Fri Mar 26 16:30:57 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-parse.y (GCC_ASM_KEYWORD): New token.
|
||
|
(asm_keyword): New rule.
|
||
|
(extdef, maybeasm, simple_stmt): Use the rule instead of ASM_KEYWORD.
|
||
|
(maybe_type_qual): Don't warn about use of asm.
|
||
|
* gplus.gperf (__asm, __asm__): Token is GCC_ASM_KEYWORD.
|
||
|
* cp-spew.c (init_spew): Add GCC_ASM_KEYWORD.
|
||
|
|
||
|
* cp-typeck.c (build_unary_op): Fix a bug so errors about ++/-- on
|
||
|
invalid pointer types actually get emitted. Don't restrict it to
|
||
|
when PEDANTIC is set, and use type_as_string to say what type is
|
||
|
being operated on.
|
||
|
|
||
|
Fri Mar 26 01:21:43 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Don't set TREE_PUBLIC for friends.
|
||
|
|
||
|
Fri Mar 26 01:09:34 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (pushdecl): Give a pedwarn, not a regular warning, when
|
||
|
we shadow a formal parameter.
|
||
|
|
||
|
* cp-init.c (expand_default_init): Get rid of spurious abort call.
|
||
|
|
||
|
Thu Mar 25 23:09:27 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Major vtable re-vamp.
|
||
|
|
||
|
* cp-call.c (build_method_call): Reword and improve error messages.
|
||
|
* cp-class.c (modify_vtable_entries), cp-class.c (finish_struct),
|
||
|
cp-init.c (init_vfields), cp-tree.c (virtual_member, virtual_offset),
|
||
|
cp-tree.h: Remove third argument to binfo_value, as it is unneeded.
|
||
|
* cp-class.c (finish_base_struct): Unshare base class binfos.
|
||
|
* cp-decl.c (finish_function): Fixup second argument to
|
||
|
build_virtual_init, so as to make it unambiguous.
|
||
|
* cp-init.c (build_virtual_init): Use second argument to get the
|
||
|
vtable, not the first, as the second is more specific.
|
||
|
* cp-search.c (is_subobject_of_p, hides, lookup_fnfields_here): New
|
||
|
routines.
|
||
|
* cp-seach.c (lookup_field, lookup_fnfields_1): Re-implement. The
|
||
|
new implementation allows for better ambiguity checking (10.1.1),
|
||
|
and implements most hiding (10p4).
|
||
|
* cp-tree.c (binfo_value): Re-implement.
|
||
|
* cp-typeck.c (build_component_ref): Propagate error_mark_nodes up.
|
||
|
|
||
|
Thu Apr 1 19:38:53 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* reorg.c (redundant_insn_p): Stop searching for a redundant
|
||
|
insn if an INSN or JUMP_INSN with delayed effects is
|
||
|
encountered.
|
||
|
|
||
|
Thu Apr 1 12:00:01 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* real.c (toplevel): Add 'extern' keyword in forward declaration
|
||
|
of arrays without bounds to silence warnings from the MIPS
|
||
|
compiler.
|
||
|
|
||
|
* i386/osfrose.h (LONG_DOUBLE_TYPE_SIZE): Undef this to protect
|
||
|
against long double going to 80 bits until the OSF libraries are
|
||
|
ready to handle it.
|
||
|
|
||
|
* mips/mips.md (untyped_call): Rewrite code so that the MIPS
|
||
|
compiler will not issue statement not reached warning messages.
|
||
|
|
||
|
Thu Apr 1 07:28:11 1993 James Van Artsdalen (james@bigtex.cactus.org)
|
||
|
|
||
|
* expr.c (emit_push_insn, expand_assignment): Fix typo in last change.
|
||
|
|
||
|
Thu Apr 1 02:31:16 1993 Per Bothner (bothner@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* emit-rtl.c (init_emit): Clear sequence_stack. Otherwise,
|
||
|
if we're in a sequence when starting a nested function
|
||
|
expand_function_end () will end all the sequences.
|
||
|
|
||
|
Thu Apr 1 02:11:10 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (LIB2FUNCS): Add _fixunsxfdi, _fixxfdi, _floatdixf,
|
||
|
_fixunsxfsi.
|
||
|
|
||
|
* libgcc2.c (XFtype): Do define it, if LONG_DOUBLE_TYPE_SIZE == 96.
|
||
|
(__fixunsxfdi): New function, if LONG_DOUBLE_TYPE_SIZE == 96.
|
||
|
(__fixxfdi, __floatdixf, __fixunsxfsi): Likewise.
|
||
|
|
||
|
Wed Mar 31 20:05:19 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (CLASS_UNITS): Fix typo in previous change, patch from
|
||
|
ian@cygnus.com.
|
||
|
|
||
|
Wed Mar 31 17:18:27 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* toplev.c (compile_file): Call incomplete_decl_finalize_hook
|
||
|
only if nonzero.
|
||
|
|
||
|
Wed Mar 31 00:59:50 1993 Gerald Baumgarnter (gb@cs.purdue.edu)
|
||
|
|
||
|
* toplev.c (compile_file): Only call `*incomplete_decl_finalize_hook'
|
||
|
if the `decl' in question is a VAR_DECL.
|
||
|
|
||
|
Wed Mar 31 15:27:41 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (CONSTANT_ADDRESS_P): Fix typo in last change.
|
||
|
|
||
|
Wed Mar 31 15:11:12 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* clipper/clipper.h, convex/convex.h, elxsi/elxsi.h, fx80/fx80.h,
|
||
|
gmicro/gmicro.h, h8300/h8300.h, i386/i386.h, i386/osfrose.h,
|
||
|
i860/i860.h, i960/i960.h, m68k/m68k.h, m88k/m88k.h, mips/mips.h,
|
||
|
pa/pa.h, pyr/pyr.h, romp/romp.h, rs6000/rs6000.h, sparc/sparc.h,
|
||
|
spur/spur.h, tahoe/tahoe.h, vax/vax.h, we32k/we32k.h
|
||
|
(CONSTANT_ADDRESS_P): Define with body of `CONSTANT_P', but leave
|
||
|
out CONST_DOUBLE.
|
||
|
|
||
|
Wed Mar 31 11:28:21 1993 James Van Artsdalen (james@bigtex.cactus.org)
|
||
|
|
||
|
* reg-stack.c (emit_swap_insn): Don't link cc0 insns: emit swap
|
||
|
after cc0 user.
|
||
|
|
||
|
Wed Mar 31 07:00:45 1993 Richard Kenner (kenner@apple-gunkies.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (expand_expr, case ADDR_EXPR): Allow taking the
|
||
|
address of any object; used in call-by-reference situations.
|
||
|
|
||
|
* tree.c (next_type_uid): Move definition to reasonable place.
|
||
|
(copy_node): Make new DECL_UID and TYPE_UID as comments say.
|
||
|
|
||
|
* expr.c (emit_block_move, emit_push_insn, expand_assignment):
|
||
|
Size passed to memcpy/bcopy is SIZETYPE, not Pmode.
|
||
|
|
||
|
* cse.c (simplify_binary_operation, case MULT): When testing for
|
||
|
floating-point equality, make sure we do so inside a region
|
||
|
protected from traps.
|
||
|
* i386.c (standard_80387_constant_p): Likewise.
|
||
|
|
||
|
* alpha.h (INITIAL_ELIMINATION_OFFSET): Subtract
|
||
|
current_function_pretend_args_size from OFFSET for AP.
|
||
|
|
||
|
* alpha.h (LINK_SPEC): New definition.
|
||
|
|
||
|
* cse.c (insert_regs): If a REG already is in a class but not
|
||
|
in the mode we want, don't do anything to the classes.
|
||
|
|
||
|
Wed Mar 31 02:02:29 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gvarargs.h [__svr4__]: Test only _VA_LIST_ to avoid dup typedef.
|
||
|
(This used to be if __SVR4_2__.)
|
||
|
|
||
|
* local-alloc.c (optimize_reg_copy_1): Don't increment n_calls
|
||
|
specially if P is a call_insn.
|
||
|
|
||
|
* convert.c (convert_to_real): Pass mode arg to REAL_VALUE_ATOF.
|
||
|
|
||
|
Tue Mar 30 17:07:33 1993 Stephen L. Moshier (moshier@world.std.com)
|
||
|
|
||
|
* real.c: This is a new C file to implement floating point
|
||
|
REAL_ARITHMETIC, target machine bit patterns for cross-compilation,
|
||
|
and REAL_VALUE_ATOF for decimal input constants in long double
|
||
|
XFmode as well as lower precisions.
|
||
|
|
||
|
* real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE, REAL_VALUE_TO_TARGET_DOUBLE)
|
||
|
(REAL_VALUE_TO_TARGET_SINGLE): New macros.
|
||
|
|
||
|
* real.h: If REAL_ARITHMETIC is defined or if LONG_DOUBLE_TYPE_SIZE
|
||
|
is 96, then define REAL_VALUE_ macros to invoke functions in real.c.
|
||
|
|
||
|
* real.h (REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT):
|
||
|
New macros truncate toward zero to integer value but
|
||
|
return REAL_VALUE_TYPE.
|
||
|
|
||
|
* real.h (REAL_VALUE_TO_DECIMAL): New macro defaults to
|
||
|
fprintf if no REAL_ARITHMETIC, otherwise uses real.c for
|
||
|
binary to decimal conversion. Use in ASM_OUTPUT_ macros.
|
||
|
|
||
|
* Makefile.in (real.o): New target.
|
||
|
(OBJS): Add real.o.
|
||
|
|
||
|
* c-lex.c (yylex): Convert real decimal constants directly
|
||
|
to the precision specified by the letter at the end of the number.
|
||
|
Pass mode arg to REAL_VALUE_ATOF to specify precision.
|
||
|
Move the "out of range of double" error check.
|
||
|
|
||
|
* cp-lex.c (yylex): Redo converting float values to desired type.
|
||
|
|
||
|
* final.c (split_double) : Use REAL_VALUE macros to extract ints
|
||
|
from float mode CONST_DOUBLEs.
|
||
|
|
||
|
* emit-rtl.c (operand_subword): Use REAL_VALUE_TO_TARGET_SINGLE
|
||
|
to convert to target float.
|
||
|
If REAL_ARITHMETIC is defined, let real.c handle incompatible host
|
||
|
and target floating point bit patterns.
|
||
|
(init_emit_once): Add machine_mode argument to REAL_VALUE_ATOF.
|
||
|
|
||
|
* fold-const.c (real_value_truncate): If REAL_ARITHMETIC, replace
|
||
|
by routine of same name in real.c.
|
||
|
target_isinf, target_isnan, target_negative): Likewise.
|
||
|
(const_binop): Delete `register' from decls using REAL_VALUE_TYPE.
|
||
|
(fold_convert): Use REAL_VALUE_TO_INT.
|
||
|
|
||
|
* rtl.c: Include real.h to get the definition of REAL_VALUE_TYPE.
|
||
|
|
||
|
* varasm.c (assemble_real): Case TFmode and XFmode invoke
|
||
|
ASM_OUTPUT_LONG_DOUBLE.
|
||
|
|
||
|
* optabs.c (expand_fix): Initialized REAL_VALUE_TYPE
|
||
|
confuses some compilers.
|
||
|
|
||
|
* cse.c (simplify_binary_operation): real_value_truncate
|
||
|
returns REAL_VALUE_TYPE.
|
||
|
Convert rtx_code into tree_code for argument to REAL_ARITHMETIC.
|
||
|
|
||
|
* cse.c (simplify_unary_operation): Use new ..._RNDZINT macros
|
||
|
instead of casting value of REAL_VALUE_FIX_TRUNCATE
|
||
|
and REAL_VALUE_UNSIGNED_FIX_TRUNCATE.
|
||
|
|
||
|
* explow.c (rtx_to_tree_code): New function.
|
||
|
|
||
|
* rtl.h (rtx_to_tree_code): Declare.
|
||
|
|
||
|
* m68k/m68k.c (standard_68881_constant_p): Initialize REAL_VALUE_TYPE
|
||
|
binary constants from decimal values. Use REAL_VALUE_... macros.
|
||
|
(standard_sun_fpa_constant_p): Likewise.
|
||
|
(print_operand, floating_exact_log2): Use REAL_VALUE_... macros.
|
||
|
(init_68881_table): New function.
|
||
|
|
||
|
* m68k/m68k.h (LONG_DOUBLE_TYPE_SIZE): Set to 96, for XFmode support.
|
||
|
(ASM_OUTPUT_LONG_DOUBLE_OPERAND) New macro.
|
||
|
(ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE): Use REAL_VALUE_... macros.
|
||
|
(ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
|
||
|
(ASM_OUTPUT_FLOAT_OPERAND): Likewise. Also, new argument CODE.
|
||
|
(ASM_OUTPUT_FLOAT): Delete special def for CROSS_COMPILE.
|
||
|
(ASM_OUTPUT_LONG_DOUBLE): New macro.
|
||
|
(PRINT_OPERAND_EXTRACT_FLOAT): Definitions deleted.
|
||
|
(PRINT_OPERAND_PRINT_FLOAT): Definitions deleted.
|
||
|
|
||
|
* m68k/m68k.md (movxf, tstxf, extendsfxf2, extenddfxf2): New patterns.
|
||
|
(truncxfdf2, truncxfsf2, floatsixf2, floathixf2, floatqixf2): Likewise.
|
||
|
(ftruncxf2, fixxfqi2, fixxfhi2, fixxfsi2): Likewise.
|
||
|
(addxf3, subxf3, mulxf3, divxf3, negxf2, absxf2, sqrtxf2): Likewise.
|
||
|
|
||
|
* m68k/sun3.h (FUNCTION_VALUE): Use FUNCTION_VALUEX.
|
||
|
(FUNCTION_VALUEX): New macro.
|
||
|
* m68k/mot3300.h, m68k/news.h (LIBCALL_VALUE): Handle XFmode.
|
||
|
|
||
|
* m68k/mot3300.h, m68k/tower-as.h:
|
||
|
(ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE): Use REAL_VALUE... macros.
|
||
|
(PRINT_OPERAND): Likewise.
|
||
|
(ASM_OUTPUT_LONG_DOUBLE): New definition.
|
||
|
* m68k/news.h (PRINT_OPERAND, ASM_OUTPUT_DOUBLE):
|
||
|
Use REAL_VALUE... macros.
|
||
|
* m68k/next.h, m68k/sun2o4.h, m68k/sun3.h, m68k/altos3068.h:
|
||
|
(ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE)
|
||
|
(ASM_OUTPUT_FLOAT_OPERAND, ASM_OUTPUT_DOUBLE_OPERAND):
|
||
|
Use REAL_VALUE... macros.
|
||
|
* m68k/sgs.h (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE)
|
||
|
(ASM_OUTPUT_DOUBLE_OPERAND): Use REAL_VALUE... macros.
|
||
|
(ASM_OUTPUT_LONG_DOUBLE): New definition.
|
||
|
(ASM_OUTPUT_FLOAT_OPERAND): New macro.
|
||
|
(PRINT_OPERAND_PRINT_FLOAT): Deleted.
|
||
|
|
||
|
* m68k/3b1.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT):
|
||
|
Use new REAL_VALUE... macros.
|
||
|
(ASM_OUTPUT_LONG_DOUBLE): New definition.
|
||
|
|
||
|
* m68k/hp320.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT)
|
||
|
(PRINT_OPERAND_FLOAT, PRINT_OPERAND): Use new REAL_VALUE... macros.
|
||
|
(ASM_OUTPUT_LONG_DOUBLE): New macro.
|
||
|
|
||
|
* m68k/crds.h (ASM_OUTPUT_DOUBLE, PRINT_OPERAND):
|
||
|
Use new REAL_VALUE... macros.
|
||
|
|
||
|
* vax.h (PRINT_OPERAND, ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE):
|
||
|
Use new REAL_VALUE... macros.
|
||
|
(CHECK_FLOAT_VALUE): Call check_float_value.
|
||
|
* vax.c (check_float_value): New function.
|
||
|
|
||
|
* vaxv.h (ASM_OUTPUT_DOUBLE): Use new REAL_VALUE... macros.
|
||
|
|
||
|
* alpha.h (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE):
|
||
|
Use new REAL_VALUE... macros.
|
||
|
(REAL_ARITHMETIC): Defined.
|
||
|
|
||
|
Tue Mar 30 17:07:33 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
For Tege:
|
||
|
* pa.md (sminsi3, smaxsi3): Fix bugs in last addition.
|
||
|
|
||
|
Tue Mar 30 16:52:15 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Bump Meissner version to 37.
|
||
|
(CLASS_MAX_NREGS): Make floats in gp registers only use one
|
||
|
register, and only allocate one float register instead of a
|
||
|
register pair if -mfloat64 is used.
|
||
|
|
||
|
Tue Mar 30 05:40:26 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (record_dead_and_set_regs): Record death of all
|
||
|
hard regs when a multi-reg object in hard regs dies.
|
||
|
(move_deaths): Handle the case when we only have to move
|
||
|
part of a multi-register death note.
|
||
|
* rtlanal.c (find_regno_note): Find note that overlaps REGNO,
|
||
|
not just one that mentions REGNO explicitly.
|
||
|
|
||
|
* reload.c (form_sum): Use mode of inputs when making new PLUS.
|
||
|
|
||
|
* genopinit.c: New file.
|
||
|
* expr.h (extendtab, fixtab, fixtrunctab, floattab, movstr_optab):
|
||
|
New definitions.
|
||
|
* expr.c (movstr_optab): No longer static.
|
||
|
(init_expr_once): Don't initialize movstr_optab.
|
||
|
* optabs.c (extendtab, fixtab, fixtrunctab, floattab): Not static.
|
||
|
(init_extends, init_fixtab, init_floattab): Deleted.
|
||
|
(init_optabs): Move active stuff from above functions in.
|
||
|
Delete filling of optabs.
|
||
|
Call init_all_optabs.
|
||
|
* reload1.c (init_reload): Don't initialize optabs here.
|
||
|
* Makefile.in (OBJS): Add insn-opinit.o.
|
||
|
(insn-opinit.o, insn-opinit.c, stamp-opinit): New rules.
|
||
|
(genopinit, genopinit.o): Likewise.
|
||
|
|
||
|
* reload1.c (emit_reload_insns): Properly track what was reloaded
|
||
|
into what register when what we reloaded was a hard register group.
|
||
|
|
||
|
Mon Mar 29 17:35:04 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sparc.md (movsi+2): Add f/f constraint case.
|
||
|
|
||
|
* sched.c (schedule_block): Reset n_ready if schedule_select
|
||
|
removes all insns from ready list.
|
||
|
|
||
|
* i960.h (FUNCTION_PROFILER): Call output_function_profiler.
|
||
|
(CALL_USED_REGISTERS): Add more comments about register usage.
|
||
|
* i960.c (i960_function_prologue): When profiling, don't use those
|
||
|
registers clobbered around an mcount call.
|
||
|
(output_function_profiler): New function.
|
||
|
|
||
|
Mon Mar 29 13:57:28 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-iterate.c (collect_iterators): Cast tree code to int for indexing.
|
||
|
|
||
|
Mon Mar 29 06:28:57 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (num_sign_bit_copies, case PLUS, case MULT):
|
||
|
Replace occurrences of HOST_BITS_PER_INT with HOST_BITS_PER_WIDE_INT.
|
||
|
|
||
|
* reload.c (secondary_memlocs_elim): Now one per mode per operand.
|
||
|
(get_secondary_mem, combine_reloads): Reflect changed var above.
|
||
|
(clear_secondary_mem): Use bzero.
|
||
|
|
||
|
* genrecog.c: Add prototypes for all functions defined in file.
|
||
|
Change a few occurrences of RTX_CODE to enum rtx_code for consistency.
|
||
|
(merge_trees): Add casts of args to mybcopy.
|
||
|
(write_tree_1): Now static.
|
||
|
(fatal): Always called with one arg, so define that way.
|
||
|
|
||
|
* reload.h: Add missing declarations for external functions
|
||
|
in reload.c, reload1.c, and caller-save.c.
|
||
|
(reload_strict_low, reload_needed_for_multiple, reload_needed_for):
|
||
|
Deleted.
|
||
|
(reload_opnum): New array.
|
||
|
(enum reload_type): Renamed from reload_when_needed and expanded
|
||
|
to include more reload types.
|
||
|
(reload_n_operands): New variable.
|
||
|
* reload.c: Add prototypes for all static functions and clean up
|
||
|
some definitions.
|
||
|
(struct decompose): Move to before function declarations.
|
||
|
(secondary_memlocs_elim): One per operand, not per mode.
|
||
|
(get_secondary_mem): Accept and use reload description (opnum
|
||
|
and type).
|
||
|
(push_reload): Accept and use new reload description instead of
|
||
|
old NEEDED_FOR.
|
||
|
Define two new macros: MERGEABLE_RELOADS and MERGE_TO_OTHER.
|
||
|
Use these macros to see if reloads can be merged and how to do it.
|
||
|
(transfer_replacements): New function.
|
||
|
(combine_reloads): Refine when we can combine reloads.
|
||
|
(find_reloads): Use new method of tracking what a reload is for.
|
||
|
When we make a CLOBBER insn, do so with DImode.
|
||
|
Merge cases of making optional reloads, avoid making output-only
|
||
|
optional reloads, refine when we may not make in-out optional reloads,
|
||
|
and make an optional reload for a pair of matching operands.
|
||
|
(find_reloads_toplev, find_reloads_address{,_1, part}): Accept and
|
||
|
use reload description.
|
||
|
(forget_volatility): Delete long-obsolete function.
|
||
|
* reload1.c: Add prototypes for static functions.
|
||
|
(REGISTER_MOVE_COST, MEMORY_MOVE_COST): Include default definitions.
|
||
|
(reload): Count number of registers needed for insn using new
|
||
|
reload type information.
|
||
|
If mode of insn is DImode, don't change it.
|
||
|
Refine the way we handle conflict with the return value register.
|
||
|
Don't try to account for needs already covered by previously
|
||
|
spilled registers; instead, put them back in the front of
|
||
|
potential_reload_regs and let them be allocated again.
|
||
|
(order_regs_for_reload): Don't restrict regs explicitly used if
|
||
|
we have SMALL_REGISTER_CLASSES defined.
|
||
|
(reload_as_needed): Don't need to deactivate optional reloads
|
||
|
ever; if they inherit, it must have been safe.
|
||
|
Call merge_assigned_reloads if SMALL_REGISTER_CLASSES.
|
||
|
(reload_reg_used_*): Refine our tracking of reload reg usage
|
||
|
by defining more of these HARD_REG_SETs.
|
||
|
(mark_reload_reg_in_use, reload_reg_free_p): Rework to use new
|
||
|
method of describing where a reload register is used.
|
||
|
(reload_reg_free_before_p, reload_reg_reaches_end_p): Likewise.
|
||
|
(allocate_reload_reg): Pass new reload descriptions.
|
||
|
(choose_reload_regs): Likewise.
|
||
|
Save and restore the new HARD_REG_SETs.
|
||
|
Remove now-redundant code to prevent conflicts.
|
||
|
(merge_assigned_reloads): New function.
|
||
|
(emit_reload_insns): Output each reload type into its own
|
||
|
sequence, then output the sequences in the proper order.
|
||
|
Put our output reloads after a CLOBBER made by find_reloads.
|
||
|
Pass ALL_REGS to find_equiv_regs; nothing special about
|
||
|
GENERAL_REGS.
|
||
|
Don't use an old equivalence if doing so would be more expensive.
|
||
|
Clean up tracking of values still in reload regs using reload
|
||
|
description info to see if the reload reaches the end of the insn.
|
||
|
(gen_input_reload): Pass reload description and emit insns to end of
|
||
|
current sequence.
|
||
|
(inc_for_reload): Return void; no longer need INSN as operand.
|
||
|
Emit insns to end of current sequence.
|
||
|
|
||
|
Mon Mar 29 02:59:27 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (expand_expr, case MAX_EXPR/MIN_EXPR): If mode is
|
||
|
multiword int, use do_jump_by_parts_greater_rtx to compare efficiently.
|
||
|
(do_jump_by_parts_greater_rtx): New function.
|
||
|
|
||
|
Sun Mar 28 20:26:11 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* calls.c (expand_call): Always allocate TARGET in mode of
|
||
|
result expression; VALREG might have been promoted.
|
||
|
Ensure TARGET is a REG when checking for promotion and verify
|
||
|
that we get back the mode we expect.
|
||
|
|
||
|
Sun Mar 28 18:49:12 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (store_parm_decls): Use pedwarn for "promoted arg doesn't
|
||
|
match prototype" warning.
|
||
|
|
||
|
* expr.c (expand_expr): For COMPONENT_REF, don't force_reg op0
|
||
|
if it is BLKmode.
|
||
|
|
||
|
Sun Mar 28 16:25:59 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (smin, umin, smax, umax): New patterns.
|
||
|
|
||
|
* Support nullification of conditional branch delay slots on
|
||
|
the PA.
|
||
|
|
||
|
* pa.md (cbranch define_delay): Enable nullification of
|
||
|
conditional branch delay slots (based upon branch direction).
|
||
|
(conditional branch patterns): Call output_cbranch to get the
|
||
|
correct output template. Long conditional branches with an
|
||
|
annulled delay slot have a length of 3.
|
||
|
(branch on bit patterns): Call output_bb to get the correct
|
||
|
output template. Long branches with an annulled delay slot have
|
||
|
a length of 3.
|
||
|
(decrement and branch pattern): Handle nullification of long
|
||
|
backward branches. Such branches have lengths of either 3 or 6.
|
||
|
|
||
|
* pa.c (output_cbranch): New function. Given the operands of the
|
||
|
branch, possible nullification, length of the branch, possible branch
|
||
|
negation, and the branch insn itself, return the output template for
|
||
|
the desired conditional branch.
|
||
|
(output_bb): Likewise, but for branch on bit.
|
||
|
|
||
|
* pa.h (toplevel): Declare output_bb.
|
||
|
|
||
|
* genattr.c (main): Output ATTR_FLAG masks.
|
||
|
|
||
|
* rtl.def (ATTR_FLAG): New RTL code.
|
||
|
|
||
|
* genattrtab.c (write_eligible_delay): Add new variable
|
||
|
"flags" to the generated functions. All callers changed.
|
||
|
(check_attr_test): Handle ATTR_FLAG.
|
||
|
(clear_struct_flag): Likewise.
|
||
|
(count_sub_rtxs): Likewise.
|
||
|
(write_test_expr): Likewise.
|
||
|
|
||
|
* reorg.c (ANNUL_IFTRUE_SLOTS, ANNUL_IFFALSE_SLOTS): Add new
|
||
|
flags variable to these dummy macros.
|
||
|
(get_jump_flags): New function.
|
||
|
(optimize_skip): Get jump flags information from the delay insn.
|
||
|
(steal_delay_list_from_target): Get jump flags information from the
|
||
|
delay insn and the label of the trial jump.
|
||
|
(steal_delay_list_from_fallthrough): Get jump flags information
|
||
|
from the delay insn.
|
||
|
(try_merge_delay_insns): Likewise.
|
||
|
(fill_simple_delay_slots): Likewise.
|
||
|
(fill_slots_from_thread): Likewise.
|
||
|
(make_return_insn): Likewise.
|
||
|
|
||
|
Sun Mar 28 00:36:04 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixincludes: Move comments about big sed command outside the
|
||
|
command itself.
|
||
|
|
||
|
* toplev.c (lang_options): Add -W{no-,}missing-braces.
|
||
|
|
||
|
* c-typeck.c (process_init_constructor, digest_init):
|
||
|
Check and set new static var partial_bracket_mentioned.
|
||
|
|
||
|
* c-lex.c: Updated for recent change in c-parse.gperf.
|
||
|
|
||
|
Sat Mar 27 13:43:27 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* Trampoline support from Jukka Virtanen.
|
||
|
* pa.md (cacheflush): New pattern.
|
||
|
* pa.h (TRAMPOLINE_TEMPLATE): Define for the PA.
|
||
|
(TRAMPOLINE_SIZE): Define for the PA.
|
||
|
(INITIALIZE_TRAMPOLINE): Define for the PA.
|
||
|
|
||
|
Sat Mar 27 08:22:25 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* function.c (expand_function_start): When evaluating sizes of
|
||
|
variable types, do so just for side-effects (the SAVE_EXPRs).
|
||
|
* stor-layout.c (variable_size): Likewise.
|
||
|
|
||
|
* va-alpha.h: Major rework to agree with new calling sequence.
|
||
|
Should have been installed with Feb 10th changes.
|
||
|
|
||
|
* rs6000.md (mov[qhs]i): Allow moving a special reg to itself.
|
||
|
|
||
|
Sat Mar 27 03:13:46 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/sparc/sparc.c (S_MODES, D_MODES, T_MODES):
|
||
|
Accept only those complex modes that are small enough.
|
||
|
Rewrite to make the expressions simpler.
|
||
|
|
||
|
Fri Mar 26 17:07:31 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* c-tree.h, output.h: Use STDIO_PROTO for prototypes with FILE.
|
||
|
|
||
|
* input.h: Add standard copyright notice.
|
||
|
|
||
|
* caller-save.c: Add prototypes for static functions.
|
||
|
(choose_hard_reg_mode): Add missing parameters declaration.
|
||
|
|
||
|
* a29k.md (multiply/multiplu/mulm/mulmu insns): These clobber Q.
|
||
|
|
||
|
Fri Mar 26 06:23:31 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* i960.h (FUNCTION_VALUE_REGNO_P): Change to agree with
|
||
|
FUNCTION_VALUE.
|
||
|
* pyr.h, spur.h (INCOMING_REGNO, OUTGOING_REGNO): Define.
|
||
|
* arm.md (untyped_call, blockage): New patterns.
|
||
|
|
||
|
Fri Mar 26 02:09:02 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* configure (sparc-tti-*, m68k-tti-*): Don't set use_collect2.
|
||
|
|
||
|
Fri Mar 26 01:05:43 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Cygnus<->FSF merge.
|
||
|
|
||
|
Thu Mar 25 18:19:19 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-cvt.c (convert_to_reference), cp-init.c (expand_aggr_init_1):
|
||
|
Don't try to do more than one level of user defined conversions,
|
||
|
avoids an infinite loop. Uses LOOKUP_NO_CONVERSION.
|
||
|
|
||
|
Wed Mar 24 16:28:17 1993 Per Bothner (bothner@rtl.cygnus.com)
|
||
|
|
||
|
* cp-call.c (build_method_call): Fix handling of foo->~Class().
|
||
|
|
||
|
Sat Mar 20 12:29:37 1993 Michael Tiemann (tiemann@rtl.cygnus.com)
|
||
|
|
||
|
* cp-pt.c (tsubst): Don't get faked out by the fact that ctors and
|
||
|
dtors have the same method name and can have the same signature.
|
||
|
|
||
|
Fri Mar 19 15:58:34 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-pt.c (tsubst): Call build_decl_overload for the new
|
||
|
instantiation.
|
||
|
|
||
|
Thu Mar 18 19:09:39 1993 Ken Raeburn (raeburn@cygnus.com)
|
||
|
|
||
|
* cp-decl2.c (flag_implement_inlines): New variable.
|
||
|
(lang_f_options): Recognize "implement-inlines".
|
||
|
* toplev.c (lang_options): Recognize -f[no-]implement-inlines.
|
||
|
* cp-decl.c (flag_implement_inlines): Declare it.
|
||
|
(start_function): If it's clear, functions declared inline are
|
||
|
external under `#pragma implementation'.
|
||
|
|
||
|
Tue Mar 2 16:24:39 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (c_expand_return): If operand 0 is a TREE_LIST, then
|
||
|
make sure to use its value.
|
||
|
|
||
|
Mon Mar 1 14:22:12 1993 Bill Cox (bill@rtl.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (push_level_decl): Add cast to correct push_stack_level
|
||
|
parameter.
|
||
|
|
||
|
Mon Mar 1 10:19:38 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-lex.c (do_identifier): Improve wording on error message.
|
||
|
|
||
|
Wed Feb 24 19:54:46 1993 Mike Stump (mrs@rtl.cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (commonparms, convert_for_assignment): Number
|
||
|
arguments starting at 1 in error messages to match the C front-end.
|
||
|
|
||
|
Wed Feb 24 14:55:54 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (saw_first_vbase): Deleted.
|
||
|
cp-search.c (dfs_walk): When walking the class lattice, use the last
|
||
|
virtual base class seen, not the first. Fixes major problem
|
||
|
introduced on Tue Oct 6 17:54:09 1992 that prevents multi-level
|
||
|
virtual base classes from working.
|
||
|
|
||
|
Mon Feb 22 18:07:23 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (get_base_distance_recursive): When searching, if the
|
||
|
object refers to the same object as before, but just found along a
|
||
|
different path, the object is not ambiguous. Fixes problem
|
||
|
introduced on Feb 16 22:47:29 1993.
|
||
|
|
||
|
Wed Feb 17 15:12:12 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl2.c (grok_function_init): Pure virtual descructor must be
|
||
|
defined, and calls to them generated. Now conforms with ANSI C++
|
||
|
working paper dated September 17, 1992 12.4.5.
|
||
|
|
||
|
Tue Feb 16 22:47:29 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Implement a new searching scheme for base classes and use it to
|
||
|
ensure only related virtual function slots are filled in by
|
||
|
modify_vtable_entries. Affects get_base_distance and get_binfo
|
||
|
answers. Cures InterViews doc problem. Solves the problem of
|
||
|
calling the wrong virtual function in the presence of multiple
|
||
|
inheritance.
|
||
|
|
||
|
* cp-search.c (get_binfo_recursive, get_base_distance_recursive):
|
||
|
New routines that use a depth first search strategy instead of
|
||
|
breadth first.
|
||
|
* cp-search.c (get_binfo): Re-implement, and use
|
||
|
get_binfo_recursive.
|
||
|
* cp-search.c (get_base_distance): Re-implement, and use
|
||
|
get_base_distance_recursive.
|
||
|
|
||
|
* cp-class.c (related_vslot): New routine to ensure that only
|
||
|
vfields that are related to the given base_fndecl are modified.
|
||
|
Relies upon new searching scheme for base classes.
|
||
|
* cp-class.c (modify_vtable_entries): Use related_vslot to ensure
|
||
|
that only slots related to the base virtual function are filled in.
|
||
|
|
||
|
* cp-class.c (build_vtable, prepare_fresh_vtable, finish_struct),
|
||
|
cp-tree.h: Remove DECL_VPARENT.
|
||
|
|
||
|
* cp-class.c (get_vtable_entry): Use unsigned when dealing with
|
||
|
DECL_VINDEXes.
|
||
|
* cp-class.c (finish_struct): Use get_vtable_entry instead of open
|
||
|
coding that routine here.
|
||
|
|
||
|
Fri Feb 12 10:24:52 1993 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (sigsegv): Check if SIGIOT is defined first. Also check
|
||
|
for SIGILL and SIGABRT.
|
||
|
(init_decl_processing): Likewise; set up handlers for SIGILL and
|
||
|
SIGABRT.
|
||
|
|
||
|
Thu Feb 11 10:30:59 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-type2.c (readonly_error): New arg `SOFT', to pedwarn instead of
|
||
|
error.
|
||
|
* cp-typeck.c, cp-cvt.c, cp-tree.h: Modify callers appropriately.
|
||
|
|
||
|
Tue Feb 9 10:02:58 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-lex.c (real_yylex): When parsing an exponent, check for 'e' and
|
||
|
'E' explicitly.
|
||
|
|
||
|
* cp-typeck.c (build_unary_op): Disallow taking the address of
|
||
|
the `main' fn.
|
||
|
* cp-decl.c (grokdeclarator): Check for the length of ORIGINAL_NAME
|
||
|
being 4, and that it starts with 'm', before calling strcmp.
|
||
|
|
||
|
* cp-type2.c (readonly_warning_or_error): Rename to readonly_error,
|
||
|
make it now ARM compliant by emitting a hard error, instead of a
|
||
|
pedwarn.
|
||
|
* cp-cvt.c, cp-typeck.c: Change all callers.
|
||
|
* cp-tree.h (readonly_error): Rename prototype.
|
||
|
|
||
|
Sun Jan 31 09:58:16 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-typeck.c (build_modify_expr): Accept taking the address of a
|
||
|
temporary generated by an explicit constructor call, but generate
|
||
|
a warning.
|
||
|
|
||
|
Mon Feb 8 10:45:56 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Demangle DECLARATOR if it's an operator.
|
||
|
|
||
|
Thu Mar 25 11:38:02 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (do_include):
|
||
|
For "..." case, leave fend pointing at terminating 0.
|
||
|
Distinct error msgs for empty file name and for bad syntax.
|
||
|
|
||
|
* Makefile.in (USER_H): Add va-clipper.h.
|
||
|
|
||
|
Thu Mar 25 07:01:14 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* calls.c (store_one_arg): Fix typo in previous change.
|
||
|
|
||
|
Thu Mar 25 03:37:51 1993 Mike Stump (mrs@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-lang.c (lang_identify), cp-lex.c (lang_identify), objc-act.c
|
||
|
(lang_identify), tree.h (lang_identify): New routine.
|
||
|
* defaults.h (ASM_IDENTIFY_LANGUAGE) New macro used to identify
|
||
|
which front-end produced the object file. Ports that do not
|
||
|
define ASM_IDENTIFY_GCC will automatically get a reasonable
|
||
|
definition for ASM_IDENTIFY_LANGUAGE, ports that do define
|
||
|
ASM_IDENTIFY_GCC for any reason may want to define
|
||
|
ASM_IDENTIFY_LANGUAGE as done here.
|
||
|
* toplev.c (output_lang_identify): New routine to identify which
|
||
|
front-end produced the object file.
|
||
|
* toplev.c (compile_file): Use ASM_IDENTIFY_LANGUAGE if it exists.
|
||
|
|
||
|
Wed Mar 24 17:53:11 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-parse.gperf: Change __cimag__ to __imag__, __creal__ to __real__,
|
||
|
to void rejection by gperf.
|
||
|
|
||
|
Tue Mar 23 18:43:14 1993 Holger Teutsch (holger@hotbso.rhein-main.de)
|
||
|
|
||
|
* clipper.md: Assign "fp" attribute to fp insns. Add DImode
|
||
|
insns for widening mul, shift and rotate. Remove 'decrement, test
|
||
|
and branch' combination patterns. They are not reloadable.
|
||
|
|
||
|
* clipper.h (HARD_REGNO_MODE_OK): DImode regs must start on even
|
||
|
registers.
|
||
|
|
||
|
* gstdarg.h, gvarargs.h: Use va-clipper.h.
|
||
|
|
||
|
* config.sub: Default to clipper-intergraph if system is clix.
|
||
|
* configure (clipper-intergraph-clix*): New configuration.
|
||
|
* clipper.h, clipper.c, clipper.md: New files.
|
||
|
* x-clix, t-clix, xm-clix.h, clix.h: New files.
|
||
|
|
||
|
Wed Mar 24 1993 18:54:51 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* fixincludes (memory.h):
|
||
|
Use proper ANSI syntax in `#endif __memory_h__'.
|
||
|
|
||
|
Wed Mar 24 12:52:40 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (sh[123]add): Collapse into a single pattern.
|
||
|
(sh[123]add for reload): Likewise.
|
||
|
* pa.c (shadd_operand): New function.
|
||
|
(print_operand): Handle '%O' for shadd patterns.
|
||
|
|
||
|
Wed Mar 24 08:03:31 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rs6000.h (EXTRA_SECTION_FUNCTIONS, ASM_DECLARE_FUNCTION_NAME):
|
||
|
Don't output tab before .csect pseudo-op.
|
||
|
|
||
|
Wed Mar 24 02:01:14 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/pyr/pyr.h (NO_DOT_IN_LABEL): Defined.
|
||
|
|
||
|
* tree.c (stabilize_reference_1): For division and remainder,
|
||
|
make a save_expr.
|
||
|
|
||
|
Tue Mar 23 14:51:07 1993 Jim Wilson (wilson@geech.gnu.ai.mit.edu)
|
||
|
|
||
|
* alpha.h, i386/sysv4.h, mips.h, rs6000.h (RETURN_IN_MEMORY):
|
||
|
Delete struct and union references.
|
||
|
* sparc.h (RETURN_IN_MEMORY): Update comment.
|
||
|
* h8300.h, 386bsd.h, linux.h, i386/mach.h, i386/osfrose.h,
|
||
|
i860/mach.h, i960.h, hp2bsd.h, hp3bsd.h, hp3bsd44.h, next.h,
|
||
|
sun3mach.h, m88k.h, ns32k/pc532-mach.h, pa-utahmach.h, pa1-utahmach.h,
|
||
|
rs6000/mach.h (DEFAULT_PCC_STRUCT_RETURN): Define to 0.
|
||
|
* toplev.c (DEFAULT_PCC_STRUCT_RETURN): Add default definition of 1.
|
||
|
(flag_pcc_struct_return): Default to DEFAULT_PCC_STRUCT_RETURN.
|
||
|
(f_options): Add -freg-struct-return flag.
|
||
|
|
||
|
Tue Mar 23 07:43:18 1993 Tom Wood (wood@next.com)
|
||
|
|
||
|
* emit-rtl.c (push_topmost_sequence, pop_topmost_sequence): New
|
||
|
functions.
|
||
|
* expr.c (expand_builtin, BUILT_IN_SAVEREGS): Use these to put the
|
||
|
code at the start of the function, even when inside a sequence.
|
||
|
|
||
|
* tree.h (enum built_in_function): Add BUILT_IN_APPLY_ARGS,
|
||
|
BUILT_IN_APPLY, and BUILT_IN_RETURN.
|
||
|
* c-decl.c (init_decl_processing): Declare __builtin_apply_args,
|
||
|
__builtin_apply, and __builtin_return.
|
||
|
* function.h (struct function): Add apply_args_value field.
|
||
|
* expr.c (apply_args_value): New variable.
|
||
|
(init_expr, save_expr_status, restore_expr_status): Initialize,
|
||
|
save, and restore apply_args_value.
|
||
|
(expand_builtin): Implement new built-in functions.
|
||
|
(apply_args_mode, apply_result_mode): New variables.
|
||
|
(apply_args_size, apply_result_size, result_vector,
|
||
|
expand_builtin_apply_args, expand_builtin_apply,
|
||
|
expand_builtin_return): New functions.
|
||
|
(INCOMING_REGNO, OUTGOING_REGNO): Supply default definitions.
|
||
|
* sparc.h (INCOMING_REGNO, OUTGOING_REGNO): Define.
|
||
|
* sparc.md (untyped_call, untyped_return): New patterns.
|
||
|
* i386.h (APPLY_RESULT_SIZE): Define.
|
||
|
* i386.md (untyped_call, untyped_return): New patterns.
|
||
|
* m68k/isi.h, m68k/m68k.h, m68k/m68kv4.h, m68k/mot3300.h
|
||
|
(NEEDS_UNTYPED_CALL): Define.
|
||
|
* m68k.md, fx80.md, gmicro.md, i860,md, ns32k.md
|
||
|
(untyped_call, blockage): New patterns.
|
||
|
* mips.md (untyped_call): New pattern.
|
||
|
|
||
|
Tue Mar 23 06:38:36 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* calls.c (store_one_arg): Use int_size_in_bytes and
|
||
|
expr_size when appropriate instead of size_in_bytes.
|
||
|
|
||
|
* regclass.c (record_reg_classes): When an alternative requires
|
||
|
a match, but we do it with a copy into a register, that alternative
|
||
|
wins.
|
||
|
|
||
|
* cse.c (CHEAP_REG): Add missing parens.
|
||
|
|
||
|
* expr.h: Don't declare fns that use "tree" if tree.h not included.
|
||
|
(emit_call_1): Remove decl.
|
||
|
(promoted_input_arg): Add prototype.
|
||
|
(fix_lexical_addr): Remove duplicate decl.
|
||
|
(copy_function_value, expand_stmt_expr): Delete; no such functions.
|
||
|
* calls.c: Include gvarargs.h.
|
||
|
Add prototypes to forward declarations and declare static functions.
|
||
|
(emit_call_1): Now static.
|
||
|
(emit_library_call, emit_library_call_value): Move to here.
|
||
|
* expr.c: Don't include gvarargs.h.
|
||
|
(emit_library_call, emit_library_call_value): Delete from here.
|
||
|
* Makefile.in (expr.o): Doesn't include gvarargs.h.
|
||
|
(calls.o): Now includes gvarargs.h.
|
||
|
|
||
|
* dbxout.c (dbxout_type): Use int_size_in_bytes instead of
|
||
|
size_in_bytes for consistency with other code.
|
||
|
|
||
|
* calls.c (expand_call): Use expr_size instead of doing it ourself.
|
||
|
|
||
|
Mon Mar 22 19:15:17 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* function.c (fixup_var_refs_insns): Don't delete an insn copying
|
||
|
var to itself, if it's the end of a libcall group.
|
||
|
|
||
|
Mon Mar 22 15:28:48 1993 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* fixincludes: Use `set x $y; shift', not `set - $y', to avoid
|
||
|
altering sh options. Fix `#endif foo' constructions. Clean up
|
||
|
all DONE files.
|
||
|
|
||
|
Mon Mar 22 17:02:58 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* expr.h (MUST_PASS_IN_STACK): Make machine parameter.
|
||
|
|
||
|
Mon Mar 22 01:38:41 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* reload1.c (eliminate_regs): Eliminate regs within a CLOBBER.
|
||
|
|
||
|
* emit-rtl.c (init_emit): Use INIT_EXPANDERS.
|
||
|
|
||
|
* i386.c (output_fix_trunc): Use MEMs in insn as stack temps.
|
||
|
No need to allocate & deallocate stack space on the fly.
|
||
|
|
||
|
(clear_386_stack_locals): New function.
|
||
|
(assign_386_stack_local): New function.
|
||
|
|
||
|
* i386.h (PREFERRED_RELOAD_CLASS): Only narrow MODE_FLOAT reloads
|
||
|
from ALL_REGS to GENERAL_REGS.
|
||
|
(PREFERRED_OUTPUT_RELOAD_CLASS): Deleted.
|
||
|
|
||
|
(INIT_EXPANDERS): New macro.
|
||
|
|
||
|
* i386.md (movsf,movdf): Use an input reload for MEM-MEM moves.
|
||
|
(extendsfdf2): Don't allow GENERAL_REGS in any operand.
|
||
|
|
||
|
(truncdfsf2): Allocate a stack temp in expander.
|
||
|
Use that in the output function.
|
||
|
(fix_truncMN2,fixuns_truncMN2): Likewise.
|
||
|
Allocate scratch reg from Q_REGS.
|
||
|
|
||
|
Sun Mar 21 17:24:09 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* toplev.c (compile_file): If warning about a function
|
||
|
declared static but not defined, make the function extern.
|
||
|
|
||
|
* cccp.c (collect_expansion): Don't make # special in argless macro.
|
||
|
|
||
|
* toplev.c (incomplete_decl_finalize_hook): New variable.
|
||
|
(compile_file): Call incomplete_decl_finalize_hook.
|
||
|
* c-decl.c (init_decl_processing): Set that var.
|
||
|
(finish_incomplete_decl): New function.
|
||
|
(complete_array_type): Use 0 as default maxindex.
|
||
|
* tree.h (incomplete_decl_finalize_hook): Declared.
|
||
|
|
||
|
Sun Mar 21 16:30:22 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* t-osfrose (CONFIG2_H): Change include file name to osfrose.h.
|
||
|
|
||
|
* halfpic.h (prototype support): Fix recent changes for
|
||
|
prototypes, so it compiles again.
|
||
|
|
||
|
* configure (ns32k-encore-osf): Delete, last ns32k OSF/rose
|
||
|
machine turned off.
|
||
|
|
||
|
* encrose.h, x-encrose, t-encrose: Delete, no longer used.
|
||
|
|
||
|
Sun Mar 21 16:20:04 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* integrate.c (copy_rtx_and_substitute, case USE):
|
||
|
Don't remove a subreg if ORIG had one.
|
||
|
|
||
|
Sun Mar 21 01:50:07 1993 Pat Rankin (rankin@eql.caltech.edu)
|
||
|
|
||
|
* c-common.c: #include "obstack.h".
|
||
|
* config/vax/xm-vms.h [VAXC]: Work around stdio.h's FILE_TYPE.
|
||
|
* vmsconfig.com: When making tm.h from config/vax/vms.h, change
|
||
|
any #include "vax/*.h" directives to use native VMS file syntax.
|
||
|
|
||
|
Sat Mar 20 22:46:31 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (INSN_SETS_ARE_DELAYED): Define for the PA. Sets and
|
||
|
clobbers that occur in millicode insns are delayed effects.
|
||
|
(INSN_REFERENCES_ARE_DELAYED): Likewise, but for operand references
|
||
|
occuring in millicode insns.
|
||
|
* reorg.c (mark_referenced_resources): Parameter
|
||
|
include_called_routine changed to include_delayed_effects. All
|
||
|
references changed.
|
||
|
(mark_set_resources): Likewise.
|
||
|
(insn_references_resource_p): Likewise.
|
||
|
(insn_sets_resource_p): Likewise.
|
||
|
(mark_referenced_resources, case INSN): Do not mark any resources
|
||
|
as referenced if we are not including delayed effects, and the
|
||
|
given insn has delayed effects.
|
||
|
(mark_set_resources): Likewise for resources which are set/clobbered.
|
||
|
(fill_simple_delay_slots): Include delayed effects for the delay insn
|
||
|
if we are searching after the delay insn for candiates.
|
||
|
(dbr_schedule): When initializing `end_of_function_needs' include
|
||
|
delayed effects.
|
||
|
|
||
|
Sat Mar 20 18:54:46 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (TARGET_SWITCHES): Or in TARGET_CPU_DEFAULT for default
|
||
|
case.
|
||
|
(TARGET_CPU_DEFAULT): Default to 0.
|
||
|
|
||
|
Sat Mar 20 14:52:26 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (singlemove_string): Declare.
|
||
|
|
||
|
* configure: Add support for 4.4BSD on hp300s.
|
||
|
* hp3bsd44.h, x-hp3bsd44.h: New files for 4.4BSD on hp300s
|
||
|
|
||
|
* pa.md (conditional branch patterns): Clean up constraints.
|
||
|
|
||
|
* pa.md (shadd reload patterns): Clean up output templates.
|
||
|
|
||
|
Sat Mar 20 11:23:15 1993 Torbjorn Granlund (tege@gnu.ai.mit.edu)
|
||
|
|
||
|
* expmed.c (init_expmed): Fix typo in last change.
|
||
|
|
||
|
Sat Mar 20 07:11:54 1993 Richard Kenner (kenner@apple-gunkies.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (get_inner_reference): Simplify code by initializing OFFSET
|
||
|
to integer_zero_node.
|
||
|
Do general index computation for ARRAY_REF and include lower bound
|
||
|
of domain in calculation.
|
||
|
(expand_expr, case ARRAY_REF): Include lower-bound in index
|
||
|
computation.
|
||
|
|
||
|
* fold-const.c (fold, case PLUS_EXPR): Don't associate apart
|
||
|
a constant operand.
|
||
|
|
||
|
* combine.c (make_compound_operation): Call recursively in the
|
||
|
cases where we find a simplification.
|
||
|
(make_compound_operation, case SUBREG): If the recursive call
|
||
|
changes the rtx code and this is an appropriate SUBREG, use
|
||
|
force_to_mode.
|
||
|
|
||
|
Sat Mar 20 03:16:52 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* print-tree.c (print_node): Print the chain of a STRING_CST.
|
||
|
|
||
|
* c-lex.c (yylex): Copy the string value we get from __FUNCTION__.
|
||
|
|
||
|
Fri Mar 19 21:06:41 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.h: Correct partly nested comment.
|
||
|
|
||
|
From Bill Cox (bill@cygnus.com):
|
||
|
* cp-decl.c (push_level_decl): Add cast to correct push_stack_level
|
||
|
parameter.
|
||
|
* cse.c (cse_process_notes): Replace NULL_RTX with just zero.
|
||
|
* function.h, halfpic.h, integrate.h, loop.h, machmode.h, output.h,
|
||
|
recog.h, reload.h, stack.h: Add prototypes.
|
||
|
* genattr.c (gen_attr): Generate prototypes in header file.
|
||
|
|
||
|
* xcoffout.h (DEBUG_SYMS_TEXT): Define.
|
||
|
* xcoffout.c (xcoffout_declare_function): Call dbxout_source_file
|
||
|
before emitting .function psuedo-op.
|
||
|
|
||
|
Fri Mar 19 17:45:13 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Bump Meissner version to 36.
|
||
|
(TARGET macros): Move this section to be earlier than
|
||
|
ASM_FINAL_SPEC.
|
||
|
(ASM_FINAL_SPEC): If configured with --with-gnu-as or as a cross
|
||
|
compiler, do not run mips-tfile unless -mmips-as is used.
|
||
|
|
||
|
* configure (target_cpu_default): Set to 16 when configuring a
|
||
|
MIPS using the GNU assembler.
|
||
|
|
||
|
Fri Mar 19 06:27:34 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expmed.c (synth_mult): Don't try to make recursive call if
|
||
|
we would be shifting by a negative number.
|
||
|
(expand_mult): Don't negate VAL if it is negative.
|
||
|
|
||
|
* cse.c (simplify_plus_minus): Count CONSTs coming in and going
|
||
|
out; we have simplified things if we have more CONSTs going out
|
||
|
even if we have the same number of total terms.
|
||
|
|
||
|
* expmed.c (zero_cost): New variable.
|
||
|
(init_expmed): Always pass some insn to recog.
|
||
|
Set shift_cost[0], shiftadd_cost[0] and shiftsub_cost[0] to
|
||
|
something reasonable.
|
||
|
Compute zero_cost.
|
||
|
(enum alg_code): Remove alg_none; add alg_zero and alg_m.
|
||
|
(struct algorithm): Rename field COEFF to LOG.
|
||
|
(synth_mult): Use new ops alg_zero and alg_m for multiplication by
|
||
|
zero and one, respectively.
|
||
|
Use MIN when helpful.
|
||
|
Be consistent and don't test cost before recursive call.
|
||
|
Don't special-case shift counts of zero; already handled elsewhere.
|
||
|
(expand_mult): First operation is always alg_zero or alg_m;
|
||
|
remaining operations can't be one of those.
|
||
|
Use proper subtargets for computations.
|
||
|
Remove special-cases for shift counts of zero.
|
||
|
Track value computed so far and make REG_EQUAL notes.
|
||
|
|
||
|
Fri Mar 19 01:37:54 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (digest_init): Typo in last change.
|
||
|
(initializer_constant_valid_p): Handle COMPLEX_CST.
|
||
|
|
||
|
* expr.c (expand_assignment): Pass to_rtx's mode to expand_expr
|
||
|
when assigning a result_decl.
|
||
|
(expand_expr): For ERROR_MARK, give back 0 in TMODE if possible.
|
||
|
|
||
|
* calls.c (emit_call_1): Don't defer pops in const call.
|
||
|
|
||
|
Thu Mar 18 17:02:24 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (current_function_prototype_file,
|
||
|
current_function_prototype_line): New variables.
|
||
|
(start_function): Set them.
|
||
|
(store_parm_decls): Use them for error and warning messages.
|
||
|
|
||
|
Thu Mar 18 21:28:43 1993 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* optabs.c (expand_float): When converting an unsigned type U
|
||
|
to a smaller or equal-sized floating type F where there's no
|
||
|
hardware support for unsigned-to-float conversion, use a temporary
|
||
|
floating type larger than F if possible, since this avoids
|
||
|
rounding problems that are worst when U is just greater than
|
||
|
the maximum signed integer of the same size.
|
||
|
|
||
|
Thu Mar 18 16:16:21 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (digest_init): Handle COMPLEX_TYPE like other scalars.
|
||
|
|
||
|
* c-parse.in (REALPART, IMAGPART): New token types.
|
||
|
(unary_expr): Handle REALPART, IMAGPART.
|
||
|
|
||
|
* expr.c (expand_expr): Don't ensure ref to a volatile value
|
||
|
if it is a function.
|
||
|
|
||
|
* c-parse.gperf: Add __cimag, __cimag__, __creal, __creal__.
|
||
|
|
||
|
* collect2.c (output_file): New static var.
|
||
|
(main): Set output_file.
|
||
|
(my_exit): Delete output_file on failure.
|
||
|
|
||
|
Thu Mar 18 12:39:06 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* function.c (assign_parms): Minor cleanup.
|
||
|
* calls.c (expand_call): Fix bug (don't clobber bitpos).
|
||
|
|
||
|
Thu Mar 18 00:08:40 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/vax/vms.h (PCC_STATIC_STRUCT_RETURN): Add #undef.
|
||
|
|
||
|
Wed Mar 17 17:28:17 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (pre_ldwm, pre_stwm): Name these patterns to make
|
||
|
generating them easier.
|
||
|
(post_ldwm, post_stwm): New patterns.
|
||
|
(add_high_const): New pattern.
|
||
|
(return): New pattern.
|
||
|
* pa.c (post_cint_operand): New function.
|
||
|
(hppa_can_use_return_insn_p): New function.
|
||
|
|
||
|
Wed Mar 17 17:24:29 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Bump Meissner version to 35.
|
||
|
(TARGET_SWITCHES): Add -mlong-calls, delete -mwc* switches.
|
||
|
|
||
|
* mips.md (call insns & expanders): If -mlong-calls, require
|
||
|
function address to be in a register.
|
||
|
|
||
|
* x-iris (OLDCC): Iris now needs -Wf,-XNh1500 as well.
|
||
|
|
||
|
Wed Mar 17 16:00:29 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (IS_RELOADING_PSEUDO_P): New subroutine for
|
||
|
EXTRA_CONSTRAINT.
|
||
|
(EXTRA_CONSTRAINT): Use IS_RELOADING_PSEUDO_P. Accept any MEM for
|
||
|
`Q' constraint during the reload pass.
|
||
|
|
||
|
* pa.h (SECONDARY_MEMORY_NEEDED): Define.
|
||
|
(SECONDARY_MEMORY_NEEDED_RTX): Define.
|
||
|
* pa.c (output_fp_move_double): Remove code to support GR<->FP
|
||
|
copies.
|
||
|
* pa.md (movqi, movhi, movsi, movdi, movsf, movdf): Remove support
|
||
|
for GR<->FP copies.
|
||
|
(fix_truncsfsi2, fix_truncdfsi2): Likewise.
|
||
|
|
||
|
Wed Mar 17 14:58:49 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/vax/vms.h (STRUCT_VALUE): Defined.
|
||
|
(STRUCT_VALUE_REGNUM): Add #undef.
|
||
|
|
||
|
Wed Mar 17 14:23:25 1993 Torbjorn Granlund (tege@gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.md (branch-on-bit): New patterns.
|
||
|
* pa.c (pc_or_label_operand): New predicate.
|
||
|
|
||
|
Wed Mar 17 02:46:58 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/m68k/m68k.md (movqi): In address reg case, if d0
|
||
|
appears in the address, use d1 instead as intermediate reg.
|
||
|
|
||
|
Tue Mar 16 17:42:14 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* cse.c (FIXED_REGNO_P): Remove previous change; all callers but
|
||
|
one already check.
|
||
|
(CHEAP_REG): Only call FIXED_REGNO_P for hard regs.
|
||
|
(fold_rtx): Clarify comments.
|
||
|
|
||
|
Tue Mar 16 14:55:40 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* x-apollo68 (CFLAGS, LIBGCC2_CFLAGS): Delete overrides and
|
||
|
comment why they were wrong.
|
||
|
|
||
|
* c-decl.c (grokdeclarator, ARRARY_REF): If exern, then end
|
||
|
temporary allocation before building type.
|
||
|
|
||
|
* sparc.h (SECONDARY_MEMORY_NEEDED_RTX): Define.
|
||
|
* reload.c (get_secondary_mem): Use macro SECONDARY_MEMORY_NEEDED_RTX.
|
||
|
|
||
|
Tue Mar 16 03:49:13 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* cse.c (FIXED_REGNO_P): Pseudos can't be fixed regs.
|
||
|
|
||
|
Tue Mar 16 04:33:41 1993 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* cccp.c (main): Report errors in output to pcp_outfile.
|
||
|
|
||
|
Mon Mar 15 21:30:32 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (write_output): Test value of `write'; report errors.
|
||
|
(write_output): Use pfatal_with_name for errors.
|
||
|
(out_fname): Var now file-scope.
|
||
|
|
||
|
Mon Mar 15 20:52:17 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (EXTRA_CONSTRAINT, case 'S'): Do not accept CONSTANT_P if
|
||
|
TARGET_LONG_CALLS.
|
||
|
|
||
|
* pa.h (EXTRA_CONSTRAINT): Merge strict and non-strict variants.
|
||
|
Delete 'R' constraint.
|
||
|
|
||
|
Mon Mar 15 18:38:22 1993 Torbjorn Granlund (tege@sics.se)
|
||
|
|
||
|
* expmed.c (lea_max_mul): Delete.
|
||
|
(init_expmed): Delete unused variable I.
|
||
|
(enum alg_code): New tag alg_shift. Document it.
|
||
|
(synth_mult): Delete unused variable N. Handle new trivial case
|
||
|
first, for T <= 1. Generalize shifting code to shift whenever a
|
||
|
number is even; use alg_shift for this. Set best_alg->ops only in
|
||
|
trivial case. Clean up cost calculation code for the `simple
|
||
|
case' at the end; use shiftadd_cost when appropriate. Combine
|
||
|
declarations of Q and move to top of function. Eliminate use of Q
|
||
|
in factoring cases. If we are getting too long a sequence for
|
||
|
`struct algorithm' to record, fail.
|
||
|
(expand_mult): Handle alg_shift instead of alg_add_t_m2 as first
|
||
|
operation. In RLT emit loop, handle alg_shift; special case
|
||
|
LOG == 0 for alg_add_t_m2 and alg_sub_t_m2.
|
||
|
|
||
|
Mon Mar 15 16:44:08 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* function.c (assign_parms): Remove unnecessary #ifdef.
|
||
|
|
||
|
Mon Mar 15 14:33:52 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sched.c (reg_known_equiv_p): New variable.
|
||
|
(init_alias_analysis): Allocate and compute reg_known_equiv_p.
|
||
|
(sched_analyze_1): Reenable code for REG_EQUIV notes, using
|
||
|
reg_known_equiv_p so that it is only used on REG_EQUIV notes.
|
||
|
(sched_analyze_2): Likewise. Only pass memory addresses to the
|
||
|
sched_analyze_2 call.
|
||
|
|
||
|
* xm-sol2.h (NO_SYS_SIGLIST): Define.
|
||
|
|
||
|
* i960.c (print_operand_address): For MULT, set ireg not breg.
|
||
|
|
||
|
* sparc.md (zero_extendqisi2+4,+5): Add new patterns for combining
|
||
|
a SI->QI mode truncate with an insn that sets the condition codes.
|
||
|
|
||
|
* config.sub (sparclite, sparclite-*): New configuration.
|
||
|
* configure (sparclite-*-*): Likewise.
|
||
|
* sparc/lite.h: New file.
|
||
|
|
||
|
* sched.c (adjust_priority): Comment unreachable code.
|
||
|
(memrefs_conflict_p): Add comment about Fortran aliasing.
|
||
|
|
||
|
Mon Mar 15 13:54:06 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* cse.c (simplify_plus_minus): Remove last change. Instead,
|
||
|
count initial operands and test against that count to see if we
|
||
|
did anything.
|
||
|
|
||
|
* alpha.h (ASM_OUTPUT_{INT,SHORT,CHAR,BYTE}): Truncate constant
|
||
|
to maximum range permitted in order to avoid assembler error.
|
||
|
|
||
|
Mon Mar 15 13:37:35 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (sh[123]add patterns): Use register_operand, not
|
||
|
shadd_operand.
|
||
|
(sh[123]add patterns for reload): Special patterns to avoid
|
||
|
lossage due to reload problems.
|
||
|
* pa.c (shadd_operand): Delete.
|
||
|
|
||
|
Mon Mar 15 00:31:20 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* configure (rs6000-ibm-aix3.2): Renamed from rs6000-ibm-aix32.
|
||
|
|
||
|
Sun Mar 14 22:54:10 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* reorg.c (find_end_label): Update unfilled_slots if the return
|
||
|
insn we make has a delay slot.
|
||
|
|
||
|
Sun Mar 14 21:27:48 1993 Torbjorn Granlund (tege@sics.se)
|
||
|
|
||
|
* expmed.c (shift_cost): Now a vector.
|
||
|
(shiftadd_cost): New vector for cost of (N * a + b) instructions.
|
||
|
(shiftsub_cost): New vector for cost of (N * a - b) instructions.
|
||
|
(lea_cost): Removed.
|
||
|
(init_expmed): Initialize new vectors. Use ASHIFT, not LSHIFT.
|
||
|
Remove code initializing lea_cost.
|
||
|
(enum alg_code): New definition.
|
||
|
(synth_mult): Rewrite for better algorithms and faster operation.
|
||
|
(expand_mult): Rewrite code for constant multiplication.
|
||
|
|
||
|
Sun Mar 14 06:34:28 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* objc-act.c (build_objc_symtab_template): Correctly build index
|
||
|
type for 0-length array.
|
||
|
(build_objc_method_call, get_class_reference, get_super_receiver):
|
||
|
Call assemble_external on anything we are about to generate a call to.
|
||
|
(handle_class_ref): Put constant in readonly-data section, not text.
|
||
|
|
||
|
* cse.c (simplify_plus_minus): Reject "simplifications" that are
|
||
|
too complex in form.
|
||
|
Correct sign error in expanding NOT.
|
||
|
|
||
|
Sun Mar 14 00:02:12 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* reload1.c (choose_reload_regs): Verify reload_out[j] != 0
|
||
|
before comparing with reload_earlyclobber elements.
|
||
|
|
||
|
Sat Mar 13 21:05:12 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* calls.c (emit_call_1): Restore inhibit_defer_pop before popping args
|
||
|
so that pops really do get deferred if appropriate.
|
||
|
|
||
|
Sat Mar 13 18:13:30 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* cse.c (simplify_plus_minus): When seeing if we have reduced the
|
||
|
number of operands, ensure we count a CONST result as two operands.
|
||
|
|
||
|
* calls.c, expr.c: Correctly define PUSH_ARGS_REVERSED.
|
||
|
|
||
|
Sat Mar 13 16:49:10 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.c (eligible_for_epilogue_delay): Insns which access %r2 can
|
||
|
not be used to fill the epilogue's delay slot.
|
||
|
|
||
|
Sat Mar 13 15:31:02 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* reg-stack.c (emit_swap_insn): If emitting after a cc0 setter,
|
||
|
link the cc0 insns.
|
||
|
|
||
|
Fri Mar 12 17:45:36 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/m68k/xm-mot3300.h (USE_C_ALLOCA): Define if not __GNUC__.
|
||
|
* config/m68k/x-alloca-c: New file.
|
||
|
* configure (m68k-motorola-sysv*): Use it.
|
||
|
|
||
|
* expr.c (emit_push_insn): Handle failure of gen_movstr...
|
||
|
|
||
|
* stor-layout.c (variable_size): Better error for div by 0 in size.
|
||
|
* c-decl.c (grokdeclarator): Error for div by 0 in array size.
|
||
|
|
||
|
Fri Mar 12 17:25:35 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expr.c: Add prototypes for static functions.
|
||
|
(struct move_by_pieces): Move definition before function
|
||
|
forward decls.
|
||
|
|
||
|
* rs6000.h, a29k.h (PROMOTE_MODE): Fix typo.
|
||
|
|
||
|
* cse.c (refers_to_mem_p): Use rtx_equal_p to see if bases
|
||
|
are equal.
|
||
|
|
||
|
* cse.c (set_nonvarying_address_components): Fix type mismatch with
|
||
|
caller.
|
||
|
(refers_to_mem_p): Call properly in second call.
|
||
|
|
||
|
* jump.c (jump_optimize): Fix bug in last change.
|
||
|
|
||
|
Fri Mar 12 07:25:43 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* optabs.c (expand_binop): For doubleword int addition,
|
||
|
clobber the whole register at the start.
|
||
|
|
||
|
Fri Mar 12 03:19:26 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* reg-stack.c (get_true_reg): Don't ignore FLOAT_TRUNCATE.
|
||
|
(subst_stack_regs_pat): Substitute in FLOAT_TRUNCATE insns.
|
||
|
|
||
|
(compare_for_stack_reg): Reset insn code after swapping operands.
|
||
|
|
||
|
* i386.h (FLOAT_CLASS_P): New macro.
|
||
|
(REGISTER_MOVE_COST): Use it instead of comparing to FLOAT_REGS.
|
||
|
(PREFERRED_RELOAD_CLASS): Likewise.
|
||
|
(SECONDARY_MEMORY_NEEDED): Likewise.
|
||
|
(CLASS_MAX_NREGS): Likewise.
|
||
|
|
||
|
(SELECT_CC_MODE): Use VOIDmode for non-FP-equality comparisons.
|
||
|
|
||
|
* i386.md (truncdfsf2): Rewrite to allow FLOAT_REGS in constraints
|
||
|
for better register preferences.
|
||
|
|
||
|
(movM): If REG_WAS_0, make sure the reg hasn't changed since then.
|
||
|
|
||
|
(cmpM expanders): Don't allow both operands to be MEM.
|
||
|
Use VOIDmode for the COMPARE rtx instead of CCmode.
|
||
|
(cmpM recognizers): Likewise.
|
||
|
Remove constraints for constants from operand 0.
|
||
|
|
||
|
(cmpdf,cmpsf recognizers): When using VOIDmode as mode of the
|
||
|
COMPARE rtx, require that the mode be exactly VOIDmode.
|
||
|
|
||
|
* i386.c (VOIDmode_compare_op): New operand predicate function.
|
||
|
|
||
|
* vax.md (movM): If REG_WAS_0, make sure the reg hasn't changed
|
||
|
since then.
|
||
|
* tahoe.md (movM): Likewise.
|
||
|
|
||
|
Thu Mar 11 19:23:51 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* function.c (aggregate_value_p): RETURN_IN_MEMORY now handles
|
||
|
BLKmode values.
|
||
|
* expr.h (RETURN_IN_MEMORY): Handle BLKmode values.
|
||
|
* i386/sysv4.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* m88k/m88k.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* i960/i960.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* m68k/apollo68.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* mips/mips.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* sparc/sparc.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* alpha/alpha.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* romp/romp.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* rs6000/rs6000.h (RETURN_IN_MEMORY): Ditto.
|
||
|
* h8300/h8300.h (RETURN_IN_MEMORY): Ditto.
|
||
|
|
||
|
Thu Mar 11 19:02:55 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* alpha.h (RTX_COST, case MULT): Handle s8addx and s4addx.
|
||
|
(RTX_COST, case MULT): Correctly assign cost to multiplies by a
|
||
|
power of two.
|
||
|
(RTX_COST, case ASHIFT, ASHIFTRT, LSHIFTRT, IF_THEN_ELSE): New cases.
|
||
|
|
||
|
* cse.c (CHEAP_REG): New macro; makes virtual regs cheap too.
|
||
|
(COST): Use CHEAP_REG.
|
||
|
(rtx_cost, case REG): Use CHEAP_REG to return zero for some REGs.
|
||
|
|
||
|
Thu Mar 11 07:47:09 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (FP sCC insn): Delete.
|
||
|
(sCC define_expands): FAIL instead of generating FP sCC insns.
|
||
|
* pa.c (gen_scond_fp): Delete.
|
||
|
* pa.h (toplevel): Delete declaration of gen_scond_fp.
|
||
|
|
||
|
* cse.c (set_nonvarying_address_components): New function.
|
||
|
(invalidate): Use set_nonvarying_address_components instead of
|
||
|
computing them.
|
||
|
(refers_to_mem_p): Likewise. Simplify checks for conflicting
|
||
|
memory accesses. Make static.
|
||
|
* loop.c (addr_overlap_p): Delete.
|
||
|
|
||
|
Wed Mar 10 23:52:40 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixincludes: Delete ${LIB}/DONE just before exit.
|
||
|
|
||
|
Wed Mar 10 12:27:51 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.c (reg_or_cint_move_operand): Use cint_ok_for_move.
|
||
|
|
||
|
* pa.md (add reg and large int): New define splits for the combiner.
|
||
|
* pa.c (cint_ok_for_move): New function. Returns 1 iff the given
|
||
|
CONST_INT can be loaded into a register in a single instruction.
|
||
|
(move_operand): Use cint_ok_for_move.
|
||
|
|
||
|
* jump.c (jump_optimize, clause for `if (foo) b++'):
|
||
|
Do this regardless of BRANCH_COST if HAVE_incscc or
|
||
|
HAVE_decscc is defined.
|
||
|
|
||
|
Wed Mar 10 11:50:06 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.md (conditional move): Use %B for output when appropriate.
|
||
|
(conditional move with second operand == 0): New pattern.
|
||
|
* pa.c (reg_or_cint_move_operand): New function.
|
||
|
(move_operand): Add header comment.
|
||
|
|
||
|
Wed Mar 10 01:43:43 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc-act.c (OBJC_GEN_METHOD_LABEL): Convert colons to _'s.
|
||
|
Don't use the category name or the number.
|
||
|
|
||
|
* gcc.c (link_command_spec): New option -nostartfiles.
|
||
|
|
||
|
Tue Mar 9 18:55:43 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* convert.c (convert_to_complex): Avoid using comptypes.
|
||
|
|
||
|
Tue Mar 9 11:33:32 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* objc-act.c (#ifdef NEXT_OBJC_RUNTIME): Close #ifdef properly.
|
||
|
|
||
|
Tue Mar 9 00:03:03 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* flags.h (flag_volatile_global): Declared.
|
||
|
|
||
|
* c-decl.c (define_label): Use current line number in error msg.
|
||
|
|
||
|
Mon Mar 8 16:11:18 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/i386/i386.h (HARD_REGNO_MODE_OK): Add some casts.
|
||
|
|
||
|
* reg-stack.c (record_asm_reg_life): Cast class to int for indexing.
|
||
|
|
||
|
* sdbout.c (PUSH_DERIVED_LEVEL): Cast enumm constants to int.
|
||
|
|
||
|
* toplev.c (flag_volatile_global): New variable.
|
||
|
(f_options): Add option for it.
|
||
|
* varasm.c (make_decl_rtl): Handle that option.
|
||
|
|
||
|
* objc-act.c (really_start_method): Always use OBJC_GEN_METHOD_LABEL.
|
||
|
Pass method_slot as additional arg.
|
||
|
(OBJC_GEN_METHOD_LABEL): Add default definition.
|
||
|
* config/m68k/next.h (OBJC_GEN_METHOD_LABEL): Accept additional arg.
|
||
|
|
||
|
Mon Mar 8 12:01:49 1993 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* fold-const.c (const_binop): When evaluating a shift, ignore
|
||
|
overflows generated by force_fit_type.
|
||
|
|
||
|
Mon Mar 8 07:24:30 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* cse.c (cse_gen_binary, simplify_plus_minus): New functions.
|
||
|
(find_best_addr): Use cse_gen_binary.
|
||
|
(simplify_binary_operation, fold_rtx): Likewise.
|
||
|
Remove most special-cases for PLUS and MINUS and call
|
||
|
simplify_plus_minus instead.
|
||
|
Clean up some tests for FP.
|
||
|
|
||
|
* cse.c: Add prototypes for static functions.
|
||
|
(struct cse_basic_block_data): Move to front of file since it
|
||
|
constains struct used in a prototype.
|
||
|
(refers_to_p, find_best_addr): Now static.
|
||
|
|
||
|
* expr.h: Clean up prototypes for functions in expr.c and
|
||
|
optabs.c and add some missing ones.
|
||
|
|
||
|
* optabs.c: Add prototypes for static functions.
|
||
|
(init_libfuncs): Put args in proper order.
|
||
|
|
||
|
Sun Mar 7 07:59:34 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reorg.c: Add prototypes for static functions.
|
||
|
(fill_simple_delay_slots): Add missing declaration of arg.
|
||
|
|
||
|
Sat Mar 6 15:08:59 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gcc.c: Handle long options by translation to old-style ones.
|
||
|
(translate_options): New function.
|
||
|
(option_map): New table.
|
||
|
|
||
|
* config/i386/t-iscscodbx: New file.
|
||
|
* configure (i[34]86-*-isc*, i[34]86-*-sco...): Use that if stabs.
|
||
|
|
||
|
* reload1.c (choose_reload_regs): Handle SUBREG in reload_earlyclobber
|
||
|
when matching output reloads for setting reload_when_needed.
|
||
|
|
||
|
Sat Mar 6 08:43:09 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* genattrtab.c (write_test_expr): Use INSN_CODE == -2, not 0, for
|
||
|
constant attributes.
|
||
|
|
||
|
* genattrtab.c: Add prototypes in forward declarations.
|
||
|
Add some missing parameters to a few calls.
|
||
|
|
||
|
Sat Mar 6 07:41:36 1993 Doug Evans (dje@cygnus.com)
|
||
|
|
||
|
* calls.c (expand_call): Fix typo in unaligned code.
|
||
|
|
||
|
Fri Mar 5 20:32:28 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
|
||
|
|
||
|
* i386/svr3gas.h, i386/svr3dbx.h, i386/iscdbx.h, i386/scodbx.h,
|
||
|
i386/sco4dbx.h, svr3.ifile, svr3z.ifile: New files.
|
||
|
* configure (i[34]86-...): Use them if configured --with-stabs.
|
||
|
* i386/isccoff.h: Renamed from i386/i386isc.h.
|
||
|
* i386/iscgas.h: Renamed from i386/i386iscgas.h.
|
||
|
|
||
|
Fri Mar 5 19:41:50 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (expand_assignment): Special handling for storing in
|
||
|
RESULT_DECL.
|
||
|
|
||
|
Fri Mar 5 17:48:41 1993 Chris Smith (csmith@mozart.convex.com)
|
||
|
|
||
|
* cse.c (simplify_binary_operation): Move integer CONST_DOUBLE
|
||
|
folding out of REAL_IS_NOT_DOUBLE conditional.
|
||
|
(simplify_relational_operation): Put float CONST_DOUBLE folding
|
||
|
under a REAL_IS_NOT_DOUBLE conditional.
|
||
|
Add folding for integer CONST_DOUBLE comparisons.
|
||
|
|
||
|
Fri Mar 5 17:37:20 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* alpha.md: Add new define_split for doing sign-extended adds
|
||
|
of some large constants using sNaddl.
|
||
|
|
||
|
* function.c (fixup_var_refs_insns): If SMALL_REGISTER_CLASSES,
|
||
|
ensure we don't put any insns between the setting of the function
|
||
|
return register and it's use.
|
||
|
|
||
|
Fri Mar 5 15:11:41 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (FIXED_REGISTERS): %r2 is no longer fixed.
|
||
|
(REG_ALLOC_ORDER): Treat %r2 as a caller-saved allocatable
|
||
|
register. %r30 is fixed and therefore a "special" register.
|
||
|
%fr22-%fr31 are caller-saved, so allocate them before the
|
||
|
callee-saved 1.1 fp registers. Allocate fp registers before
|
||
|
general registers. Fix typo for register 79.
|
||
|
|
||
|
* pa.c (output_function_epilogue): Perform an early %r2 restore
|
||
|
even if actual_fsize is zero. This can happen if %r2 is used
|
||
|
as a temporary in a leaf function.
|
||
|
|
||
|
* pa.h (FIRST_PSEUDO_REGISTER): Update to take into account
|
||
|
registers which are no longer known to the compiler.
|
||
|
(FIXED_REGISTERS): Likewise.
|
||
|
(CALL_USED_REGISTERS): Likewise.
|
||
|
(HARD_REGNO_NREGS): Likewise.
|
||
|
(HARD_REGNO_MODE_OK): Likewise.
|
||
|
(REGNO_REG_CLASS): Likewise.
|
||
|
(FUNCTION_VALUE): Likewise.
|
||
|
(LIBCALL_VALUE): Likewise.
|
||
|
(FUNCTION_VALUE_REGNO_P): Likewise.
|
||
|
(FUNCTION_ARG_REGNO_P): Likewise.
|
||
|
(FUNCTION_ARG): Likewise.
|
||
|
(REGNO_OK_FOR_FP_P): Likewise.
|
||
|
(REGISTER_NAMES): Likewise.
|
||
|
(REG_CLASS_CONTENTS): Likewise. Add %r1 to GENERAL_OR_FP_REGS
|
||
|
and GENERAL_OR_SNAKE_FP_REGS.
|
||
|
(REG_ALLOC_ORDER): Likewise. Document and make allocation order
|
||
|
"regular" across 1.0 and 1.1 cpus.
|
||
|
|
||
|
* pa.c (compute_frame_size): Update to take into account
|
||
|
register which are no longer known to the compiler.
|
||
|
(output_function_prologue): Likewise.
|
||
|
(output_function_epilogue): Likewise.
|
||
|
(output_arg_descriptor): Likewise.
|
||
|
|
||
|
|
||
|
Fri Mar 5 12:45:51 1993 Jim Wilson (wilson@geech.gnu.ai.mit.edu)
|
||
|
|
||
|
* sparc.c (output_function_prologue, output_function_epilogue):
|
||
|
Add comments for frame_base_name usage in leaf_functions.
|
||
|
|
||
|
* gcc.c (main): Put argv[0] in collect_obstack instead of programname.
|
||
|
|
||
|
* cse.c (note_mem_written): QImode varying structure memory
|
||
|
accesses can alias scalars.
|
||
|
|
||
|
Thu Mar 4 10:05:52 1993 Juergen Keil (jk@leo.tools.de)
|
||
|
|
||
|
* c-decl.c (store_parm_decls,combine_parm_decls): Call layout_decl
|
||
|
for a parm declared float when it is changed to double under a
|
||
|
traditional compilation.
|
||
|
|
||
|
Thu Mar 4 17:52:52 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (ASM_OUTPUT_INT): If TARGET_SHARED_LIBS, then references to
|
||
|
functions which do not occur in the text space must have a PLABEL
|
||
|
("P%") prefix to make the assembler and linker happy.
|
||
|
|
||
|
Thu Mar 4 17:18:57 1993 Steve Chamberlain (sac@geech.gnu.ai.mit.edu)
|
||
|
|
||
|
* emit-rtl.c (init_emit_once): Initialize const_tiny_rtx for
|
||
|
partial ints too.
|
||
|
|
||
|
* convert.c (convert_to_pointer): Fix typo comparing size of
|
||
|
integer and pointers.
|
||
|
* varasm.c (immed_double_const): Cope with MODE_PARTIAL_INT.
|
||
|
(output_constant_pool): Likewise.
|
||
|
|
||
|
Thu Mar 4 15:18:15 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-common.c (truthvalue_conversion): Fix handling of COMPLEX_EXPR.
|
||
|
Handle all complex values specially.
|
||
|
|
||
|
Thu Mar 4 13:48:38 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.md (recognizer for general uaddcm): New pattern.
|
||
|
|
||
|
* pa.md (iorsi3): New DEFINE_EXPAND.
|
||
|
(iorsi3 recognizer for [reg reg]): Now unnamed.
|
||
|
Put output template here, don't call output_ior.
|
||
|
* pa.c (output_ior): Don't handle reg operands.
|
||
|
|
||
|
Thu Mar 4 13:14:13 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fold-const.c (fold): Handle complex constants as "winning".
|
||
|
Handle REALPART_EXPR and IMAGPART_EXPR.
|
||
|
|
||
|
Thu Mar 4 13:08:53 1993 Steve Chamberlain (sac@geech.gnu.ai.mit.edu)
|
||
|
|
||
|
* config.sub (h8300hds): Change hds to hms.
|
||
|
* configure (h8300-*-*): Added.
|
||
|
* h8300.c, h8300.h, h8300.md, t-h8300, xm-h8300.h: New files.
|
||
|
|
||
|
Thu Mar 4 10:31:17 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* gcc.c (link_command_spec): Add missing \ before newline inside
|
||
|
character string.
|
||
|
|
||
|
* c-parse.in (all_iter_stmt_simple): Add missing comma so that
|
||
|
Objective C compiles.
|
||
|
|
||
|
Thu Mar 4 02:43:43 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* optabs.c (emit_no_conflict_block): Don't move target to itself
|
||
|
if that takes multiple insns.
|
||
|
(expand_binop): For complex mult and div, avoid fetching operand
|
||
|
components more than once from memory.
|
||
|
|
||
|
* dbxout.c (dbxout_type): Handle complex integer types.
|
||
|
|
||
|
Wed Mar 3 16:01:11 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (common_type): Handle complex types.
|
||
|
|
||
|
* machmode.def: Add complex integer modes.
|
||
|
|
||
|
* c-common.c (truthvalue_conversion): Handle COMPLEX_EXPR.
|
||
|
|
||
|
* c-typeck.c (lvalue_p): Handle REALPART_EXPR, IMAGPART_EXPR.
|
||
|
(build_binary_op, build_unary_op): Handle complex types.
|
||
|
|
||
|
* c-parse.gperf: Add `__complex', `__complex__'.
|
||
|
Add `__iterator'. Delete `iterator'.
|
||
|
|
||
|
* tree.c (build_complex): Set the TREE_TYPE based on real part.
|
||
|
|
||
|
* c-lex.h (RID_COMPLEX): New constant.
|
||
|
* c-lex.c (init_lex): Initialize rid pointers for complex.
|
||
|
(yylex): Handle i or j in numeric constant.
|
||
|
|
||
|
* c-decl.c (init_decl_processing): Create complex types.
|
||
|
(grokdeclarator): Handle complex keyword.
|
||
|
Distinguish int-by-default from int keyword.
|
||
|
* c-tree.h: Declare vars to hold complex types.
|
||
|
|
||
|
* c-convert.c (convert): Handle conversion to complex type.
|
||
|
* convert.c (convert_to_real): Convert complex to real.
|
||
|
(convert_to_integer): Likewise.
|
||
|
(convert_to_complex): New function.
|
||
|
* convert.h (convert_to_complex): Declared.
|
||
|
|
||
|
Wed Mar 3 15:34:36 1993 Per Bothner (bothner@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* tree.c (build_range_type): New function.
|
||
|
* tree.c (build_index_2_type): Re-implement using build_range_type.
|
||
|
|
||
|
Wed Mar 3 08:34:43 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.c (lhs_lshift_operand): New function.
|
||
|
(lhs_lshift_cint_operand): New function.
|
||
|
* pa.md (ashlsi3): Use lhs_lshift_operand for operand 1.
|
||
|
Call gen_zvdep_imm when operand 1 is a CONST_INT.
|
||
|
(zvdep_imm): New pattern.
|
||
|
|
||
|
* pa.c (print_operand): Handle L and P for bit field instructions.
|
||
|
* pa.md (ashift recognizer for [reg const_int]): Use %P and %L
|
||
|
output modifiers.
|
||
|
(ashiftrt recognizer for [reg const_int]): Likewise.
|
||
|
(lshrsi3): Likewise.
|
||
|
(rotrsi3): Reduce integer argument to 5 bits.
|
||
|
|
||
|
* pa.md: Remove some empty lines.
|
||
|
|
||
|
* pa.c (pa_adjust_cost): Replace, the function of Mar 2 was an old
|
||
|
version.
|
||
|
(output_fp_move_double): Use %r syntax for registers.
|
||
|
|
||
|
Wed Mar 3 01:42:42 1993 Per Bothner (bothner@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* tree.def (INTEGER_TYPE): Clarify comment to make clear that
|
||
|
INTEGER_TYPEs are used for arbitrary range types (i.e.
|
||
|
sub-ranges of enums) in languages that need them.
|
||
|
* dbxout.c (dbxout_type_range): New function: Common code
|
||
|
needed for both range types and array index types.
|
||
|
Fixes some problems common in both places: Now handles
|
||
|
non-zero lower bound, variable bounds (sort of), and ranges
|
||
|
of non-integer (e.g. enum) types.
|
||
|
* dbxout.c (dbxout_type): Use dbxout_type_range.
|
||
|
|
||
|
Tue Mar 2 23:34:45 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* collect2.c (main): Use strlen, not sizeof, for our_file_name.
|
||
|
|
||
|
* c-common.c (convert_and_check): No warning for converting
|
||
|
signed integer to unsigned of same width.
|
||
|
|
||
|
Tue Mar 2 18:59:39 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu.edu)
|
||
|
|
||
|
* c-iterate.c (collect_iterators): Handle simple expressions quickly.
|
||
|
Don't try to interpret operands that are RTL as if they were trees.
|
||
|
|
||
|
* regclass.c (regclass): Don't set REGNO_POINTER_FLAG here.
|
||
|
(reg_scan_mark_refs): Set it here.
|
||
|
Accept INSN, not UID as arg.
|
||
|
(reg_scan): Call reg_scan_mark_refs with INSN, not UID.
|
||
|
|
||
|
Tue Mar 2 18:03:25 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc-act.c (handle_class_ref): Call assemble_external.
|
||
|
|
||
|
Tue Mar 2 15:56:17 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* genattrtab.c (write_const_num_delay_slots): Output 'rtx insn' not
|
||
|
'rtx *insn' for const_num_delay_slot argument.
|
||
|
|
||
|
* gcc.c (main): Truncate programname to what is after last slash.
|
||
|
|
||
|
* cccp.c (do_include): Warn if find unreadable header file.
|
||
|
(errno.h): Move outside VMS specific section.
|
||
|
|
||
|
* sparc.c (print_operand): Use output_operand_lossage, not abort.
|
||
|
|
||
|
* sparc.h (SETUP_FRAME_ADDRESS, DYNAMIC_CHAIN_ADDRESS,
|
||
|
RETURN_ADDR_IN_PREVIOUS_FRAME, RETURN_ADDR_RTX): Define.
|
||
|
* sparc.md (flush_register_windows, goto_handler_and_restore):
|
||
|
Give names to these patterns so they are easier to use.
|
||
|
* expr.c (expand_builtin, BUILT_IN_FRAME_ADDRESS case): Use new
|
||
|
macros SETUP_FRAME_ADDRESSES and RETURN_ADDR_IN_PREVIOUS_FRAME.
|
||
|
|
||
|
* reorg.c (relax_delay_slots): Delete jump around insn identical
|
||
|
to the insn in its delay slot.
|
||
|
|
||
|
* i960.c (i960_output_call_insn): Delete scratch_reg arg. Use r3
|
||
|
instead.
|
||
|
* i960.md (call_internal*): Use hard register 19 (r3) in clobber
|
||
|
instead of match_scratch.
|
||
|
|
||
|
* i960.md (mov*): Only accept store zero to memory insn if
|
||
|
rtx_equal_function_value_matters is zero.
|
||
|
* i960.h (rtx_equal_function_value_matters): Declare.
|
||
|
|
||
|
* emit-rtl.c (gen_sequence): Add push_obstacks_nochange and
|
||
|
pop_obstacks calls around rtl_in_saveable_obstack call.
|
||
|
* varasm.c (immed_double_const, immed_real_const_1): Likewise.
|
||
|
* tree.c (rtl_in_saveable_obstack): Always switch to saveable_obstack.
|
||
|
Return type now void instead of int.
|
||
|
|
||
|
Tue Mar 2 14:57:06 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gcc.c (link_command_spec): Do nothing if -fsyntax-only.
|
||
|
|
||
|
Tue Mar 2 14:17:47 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.h (ADJUST_COST): Add new definition.
|
||
|
* pa.c (pa_adjust_cost): New procudure.
|
||
|
|
||
|
Tue Mar 2 02:12:13 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* optabs.c (gen_move_insn): Big `if' applies only for MODE_CC class.
|
||
|
|
||
|
* config/m68k/next.c (handle_pragma): New arg get_line_function.
|
||
|
* config/m68k/next.h (HANDLE_PRAGMA): Pass suitable arg.
|
||
|
* c-lex.h (get_directive_line): Declared.
|
||
|
|
||
|
Tue Mar 2 10:48:46 1993 Wilson Tien (wtien at urbana.mcd.mot.com)
|
||
|
|
||
|
* m68k.md (truncdfsf2+2): Use f%$move instead of fsmove.
|
||
|
|
||
|
* m68k.md (fix_truncdfsi2, fix_truncdfhi2, fix_truncdfqi2):
|
||
|
Use %# instead of #.
|
||
|
|
||
|
* m68k.md (call, call_value): Set SYMBOL_REF_FLAG for the called
|
||
|
function symbol_ref rtx. In PIC mode, output `bsr FUNC@PLTPC'
|
||
|
when the operand is symbol_ref.
|
||
|
|
||
|
* m68kv4.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Use SIZE instead
|
||
|
of ROUNDED.
|
||
|
|
||
|
* m68kv4.h (ASM_OUTPUT_CASE_LABEL): Always use `swbeg' syntax to
|
||
|
output switch table (m68k.md depends on this to happen).
|
||
|
|
||
|
* m68kv4.h (LEGITIMATE_PIC_OPERAND_P): Treat a symbol_ref rtx with
|
||
|
SYMBOL_REF_FLAG set a valid PIC operand.
|
||
|
|
||
|
* m68kv4.h (OVERRIDE_OPTIONS): Turn off function cse when doing pic.
|
||
|
|
||
|
* m68k.c (output_function_prologue): Use m68k svr4 PIC format to
|
||
|
load the address of _GLOBAL_OFFSET_TABLE_ into PIC_OFFSET_TABLE_REG
|
||
|
in function prologue when doing PIC.
|
||
|
|
||
|
* m68k.c (print_operand_address): Always add "@GOT" suffix for the
|
||
|
global object operand when doing PIC.
|
||
|
|
||
|
Mon Mar 1 19:00:38 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-lex.h (RID_ITERATOR): New alternative.
|
||
|
* c-tree.h (ITERATOR_P, ITERATOR_BOUND_P): New macros.
|
||
|
|
||
|
* c-typeck.c (build_unary_op): Warn if increment `struct unknown *'.
|
||
|
|
||
|
* c-lex.c (init_lex): Set up ridpointers for `iterator'.
|
||
|
But maybe turn it off again.
|
||
|
|
||
|
* c-parse.gperf: Add `iterator' and `__iterator__'.
|
||
|
|
||
|
* c-decl.c (grokdeclarator): Handle iterator storage class.
|
||
|
(finish_decl): For iterator, require initial value, make a save_expr.
|
||
|
(init_decl_processing): Call init_iterators.
|
||
|
|
||
|
* c-parse.in (stmt): Allow all_iter_stmt.
|
||
|
(primary -> statement expression): Push and pop iterator stack.
|
||
|
(stmt -> expr): Use iterator_expand.
|
||
|
(all_iter_stmt): New rule.
|
||
|
|
||
|
* c-typeck.c (readonly_warning): Warn about assignment to iterator.
|
||
|
|
||
|
* c-iterate.c: New file.
|
||
|
* Makefile.in (c-iterate.o): New target.
|
||
|
(C_OBJS, OBJC_OBJS): Add c-iterate.o.
|
||
|
|
||
|
* Makefile.in (gcc.o): Delete dep obstack.h.
|
||
|
|
||
|
Mon Mar 1 07:29:51 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* integrate.c (subst_constants): Use proper mode when getting
|
||
|
equivalent constant for paradoxical SUBREG in SET_DEST.
|
||
|
(mark_stores): Clean up and tighten to properly handle hard regs.
|
||
|
|
||
|
* combine.c (subst, case NOT): If STORE_FLAG_VALUE==-1, treat
|
||
|
an ASHIFTRT of just the sign bit as if it were an LT.
|
||
|
(subst, case XOR): Likewise for STORE_FLAG_VALUE==1 and an LSHIFTRT.
|
||
|
(simplify_and_const_int, case LSHIFTRT): If shifting a sign bit
|
||
|
copy, start shift at the sign bit.
|
||
|
(simplify_shift_const): Likewise for ASHIFTRT.
|
||
|
|
||
|
* combine.c (BYTE_LOADS_EXTEND): Fix typo when defining.
|
||
|
(setup_incoming_promotions): Set modes properly.
|
||
|
|
||
|
* alpha.md: Add three special-cases of CMP insns against zero.
|
||
|
|
||
|
Mon Mar 1 06:17:02 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (CONSTANT_ADDRESS_P): Do not accept symbolic
|
||
|
addresses.
|
||
|
(LEGITIMIZE_ADDRESS): Just a stub now. Call
|
||
|
hppa_legitimize_address to do the real work.
|
||
|
|
||
|
* pa.c (symbolic_expression_p): New function.
|
||
|
(hppa_legitimize_address): Old LEGITIMIZE_ADDRESS moved
|
||
|
here. Handle symbol_ref + displacement addresses.
|
||
|
Use rounding instead of masking off lower bits.
|
||
|
Avoid creating useless pseudos and strip off CONST in
|
||
|
(const (...)) expressions to make processing easier.
|
||
|
|
||
|
* pa.md (define_split for symbol_ref+int): New define_split for
|
||
|
the combiner.
|
||
|
|
||
|
Sat Feb 27 01:57:34 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (convert_for_assignment): New arg FUNDECL. Calls changed.
|
||
|
(convert_arguments): New arg FUNDECL.
|
||
|
(build_function_call): Pass function to convert_arguments, if a decl.
|
||
|
|
||
|
* config.sub: Error if company name is more than one word.
|
||
|
If $os is `sunos...', don't change it to manufacturer's name.
|
||
|
|
||
|
* enquire.c (fake_f_rep): Clear all of u, initially.
|
||
|
Make the ints in u unsigned.
|
||
|
(f_define): Use ordinary constants for long double
|
||
|
if it's same width as double.
|
||
|
Make __convert_long_double_i unsigned.
|
||
|
|
||
|
* va-i860.h (struct __gnuc_va_list): Test __svr4__ like __SVR4__.
|
||
|
|
||
|
* config/ns32k/ns32k.h (TARGET_SWITCHES): Reverse defn of 32332.
|
||
|
|
||
|
* expr.c (convert_move): Truncate via word_mode
|
||
|
only if to_mode fits in one word.
|
||
|
Truncate by referring in TO_MODE for any FROM,
|
||
|
but force_reg if nec.
|
||
|
|
||
|
* c-decl.c (pushdecl): Nested fn decl gets DECL_CONTEXT iff not extern.
|
||
|
|
||
|
* c-lex.c (check_newline): #line updates input_file_stack->name.
|
||
|
|
||
|
* c-typeck.c (convert_for_assignment): Automatically convert
|
||
|
to a union from its members' types.
|
||
|
|
||
|
* config/ns32k/ns32k.h (ASM_OUTPUT_ALIGN_CODE):
|
||
|
Pad with no-op insns.
|
||
|
|
||
|
* c-decl.c (grokdeclarator): Make `long long' work even with
|
||
|
-pedantic, despite the warning.
|
||
|
|
||
|
Fri Feb 26 22:01:32 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* cccp.c (USER_LABEL_PREFIX, REGISTER_PREFIX): If not defined by
|
||
|
tm.h, set to empty strings.
|
||
|
(enum node_type, special_symbol): Added T_USER_LABEL_PREFIX_TYPE
|
||
|
and T_REGISTER_PREFIX_TYPE, which expand to USER_LABEL_PREFIX and
|
||
|
REGISTER_PREFIX.
|
||
|
(initialize_builtins): New builtin definitions
|
||
|
__USER_LABEL_PREFIX__ and __REGISTER_PREFIX__.
|
||
|
|
||
|
Fri Feb 26 18:08:58 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (distdir): Depend on cp-parse.y,
|
||
|
and the .c files for the .y files.
|
||
|
|
||
|
* c-decl.c (declare_parm_level): Unconditionally store 1.
|
||
|
(pushdecl): Criterion for no warning is, next level up
|
||
|
is a parm level.
|
||
|
|
||
|
* Makefile.in (all.cross): Depend on enquire.
|
||
|
|
||
|
* libgcc2.c (inhibit_libc): Renamed from inhibit_eprintf.
|
||
|
(L_new_handler): Don't include stdio.h if inhibit_libc.
|
||
|
|
||
|
* c-typeck.c (process_init_constructor): Error msg change.
|
||
|
|
||
|
* gstdarg.h (_VA_LIST_T_H): Test and define this.
|
||
|
* gvarargs.h (_VA_LIST_T_H): Test and define this.
|
||
|
|
||
|
* gstddef.h (_SYS_SIZE_T_H): Test this and define this.
|
||
|
|
||
|
* xm-pbd.h (USE_C_ALLOCA): Define here.
|
||
|
* pbd.h (USE_C_ALLOCA): Not here.
|
||
|
|
||
|
* tree.c (simple_cst_equal): New default case handles most
|
||
|
tree codes based on TREE_CODE_CLASS. Delete newly redundant cases
|
||
|
for specific tree codes.
|
||
|
|
||
|
* dbxout.c (dbxout_type): Enable output of subrange types
|
||
|
if use_gnu_debug_info_extensions.
|
||
|
(dbxout_finish_symbol): Enable output of symbols line number.
|
||
|
|
||
|
* c-typeck.c (initializer_constant_valid_p):
|
||
|
Allow cast of ptr to wider integer.
|
||
|
|
||
|
Fri Feb 26 19:04:36 1992 Karl Berry (karl@cs.umb.edu)
|
||
|
|
||
|
* optabs.c (init_libfuncs): Use int instead of enum for
|
||
|
first_mode, last_mode, and mode.
|
||
|
|
||
|
Fri Feb 26 14:29:22 PST 1992 Ron Guilmette (rfg@netcom.com)
|
||
|
|
||
|
* c-parse.in (ivar_decls): Give a pedwarn (instead of a warning) for
|
||
|
excess semicolons.
|
||
|
|
||
|
* cccp.c (do_include): Correctly report the directive name
|
||
|
when any kind of include directive has no argument or null argument.
|
||
|
|
||
|
Fri Feb 26 11:27:35 1992 Tom Wood (wood@NeXT.com)
|
||
|
|
||
|
* toplev.c (compile_file): Use pedwarn_with_decl to warn about
|
||
|
functions declared static but not defined.
|
||
|
* c-decl.c (store_parm_decls): Use pedwarn.
|
||
|
|
||
|
Fri Feb 26 10:34:33 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* Makefile.in (uninstall): Also remove the g++ manual page.
|
||
|
|
||
|
Fri Feb 26 01:29:53 1992 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* cexp.y (parse_escape): Don't treat ^ as special after \.
|
||
|
|
||
|
Fri Feb 26 21:37:29 1993 John F Carr (jfc at Athena.MIT.EDU)
|
||
|
|
||
|
* varasm.c (make_decl_rtl): Print an error for explicit register
|
||
|
variable whose type cannot be stored in that register.
|
||
|
|
||
|
Fri Feb 26 17:07:25 1993 Doug Evans (dje@canuck.cygnus.com)
|
||
|
|
||
|
* machmode.def: Added 32-byte int OImode.
|
||
|
|
||
|
Fri Feb 26 13:59:23 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* explow.c (memory_address): Use CONSTANT_ADDRESS_P instead of
|
||
|
LEGITIMATE_CONSTANT_P.
|
||
|
(break_out_memrefs): Likewise.
|
||
|
|
||
|
Fri Feb 26 06:18:40 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expr.c (expand_expr, case IN_EXPR): Fix numerous small bugs and
|
||
|
make some cleanups.
|
||
|
|
||
|
* recog.c (constrain_operands, case 'r'): If STRICT, a REG isn't
|
||
|
valid if it is a pseudo even if GENERAL_REGS == ALL_REGS.
|
||
|
|
||
|
* alpha.h (LEGITIMIZE_ADDRESS): Add missing args to calls to
|
||
|
expand_binop.
|
||
|
|
||
|
Thu Feb 25 17:24:45 1993 Bill Cox (bill@rtl.cygnus.com)
|
||
|
|
||
|
* expr.h: Add prototypes for most expr-related functions.
|
||
|
* jump.c (jump_optimize): Add missing parameter in expand_binop call.
|
||
|
|
||
|
Thu Feb 25 17:50:55 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* toplev.c: No need to #undef ABS; done in rtl.h.
|
||
|
|
||
|
* reorg.c (redundant_insn_p): Fix typo in testing for types of
|
||
|
insns by using GET_RTX_CLASS.
|
||
|
|
||
|
* expmed.c (emit_store_flag): Fix typo in testing BRANCH_COST.
|
||
|
|
||
|
Thu Feb 25 14:32:31 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* combine.c (set_nonzero_bits_and_sign_copies): Fix typo in
|
||
|
paradoxical set dest handling.
|
||
|
|
||
|
* convert.c (convert_to_integer): Delete Feb 19 change.
|
||
|
|
||
|
* fold-const.c (decode_field_reference): Fix force_fit_type call.
|
||
|
|
||
|
Thu Feb 25 07:38:36 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* fixinc.sco: Use pwd if PWDCMD is not defined.
|
||
|
|
||
|
Wed Feb 24 18:28:06 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/vax/vms.h (ASM_OUTPUT_EXTERNAL): Use vms_check_external.
|
||
|
(ASM_GLOBALIZE_LABEL): New definition; use vms_check_external.
|
||
|
* config/vax/vax.c (vms_check_external): New function.
|
||
|
|
||
|
* config/m68k/xm-mot3300.h (NO_SYS_SIGLIST): Defined.
|
||
|
|
||
|
Wed Feb 24 16:01:42 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* loop.c (consec_sets_invariant_p): Correct REG_EQUAL note checks
|
||
|
to distinguish libcall case from ordinary insn case.
|
||
|
|
||
|
* loop.c (add_label_notes): Don't add notes for references to
|
||
|
dispatch tables because jump doesn't.
|
||
|
(find_and_verify_loops): Invalidate loops that contain labels
|
||
|
whose address has been taken.
|
||
|
|
||
|
* fixinc.svr4 (string.h): Delete 'g' from sed command.
|
||
|
|
||
|
* sparc.md (zero_extendqi*i2): Delete never matched constraints.
|
||
|
|
||
|
* i960.c (umulsidi3+1): Delete extra parenthesis.
|
||
|
|
||
|
Tue Feb 23 15:09:50 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* Makefile.in (install-headers): Create relative paths for
|
||
|
symbolic links within installed include directory.
|
||
|
|
||
|
Tue Feb 23 14:43:46 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* stmt.c (check_for_full_enumeration_handling): Handle nameless type.
|
||
|
|
||
|
* tree.h (CONSTRUCTOR_NAME_FORMAT): Handle NO_DOT_IN_LABEL.
|
||
|
|
||
|
* config/m68k/mot3300.h (NO_DOLLAR_IN_LABEL, NO_DOT_IN_LABEL): Defined.
|
||
|
|
||
|
* collect2.c (is_ctor_dtor): Handle NO_DOT_IN_LABEL.
|
||
|
|
||
|
Mon Feb 22 18:06:06 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* m88k.c (output_call): Don't use the delay slot of a bsr.n
|
||
|
to modify the return address, unless -O2 specified.
|
||
|
|
||
|
Mon Feb 22 17:36:52 1993 Kresten Krab Thorup (krab at xiv)
|
||
|
|
||
|
* objc/core.c (initialize_class): Take Class_t instead of
|
||
|
char* as argument. Callers changed to pass the class.
|
||
|
|
||
|
* objc/core.c (initialize_class): Mark the class
|
||
|
initialized *before* the actual call of "+initialize". This is
|
||
|
needed in case of certain circular dependances between classes.
|
||
|
|
||
|
* objc/object.m (doesNotRecognize): Call sel_getName to get
|
||
|
the name of the selector, and print that.
|
||
|
(subclassResponsibility, notImplemented): Likewise.
|
||
|
|
||
|
Mon Feb 22 00:23:47 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (emit_library_call_value): Fix bug in prev change.
|
||
|
|
||
|
* Makefile.in (install-include-dir): Depend on install-dir.
|
||
|
|
||
|
* convert.c (convert_to_integer): #if 0 the truncated integer warning.
|
||
|
|
||
|
Mon Feb 22 15:15:40 1993 James Van Artsdalen (james@bigtex.cactus.org)
|
||
|
|
||
|
* fold-const.c (all_ones_mask_p): Really use tmask.
|
||
|
|
||
|
Mon Feb 22 11:59:09 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* fold-const.c (all_ones_mask_p): Declare tmask to be `tree'.
|
||
|
(optimize_bit_field_compare) Add missing semicolon.
|
||
|
|
||
|
Sun Feb 21 20:20:13 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (emit_library_call_value): Really pass mem value address
|
||
|
to the library function.
|
||
|
|
||
|
Sun Feb 21 15:15:40 1993 James Van Artsdalen (james@bigtex.cactus.org)
|
||
|
|
||
|
* fold-const.c (decode_field_reference): Use force_fit_type
|
||
|
instead of convert to avoid truncated integer warning.
|
||
|
(all_ones_mask_p): Likewise.
|
||
|
|
||
|
Sun Feb 21 13:06:00 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (load high pattern): Rework constraints to reduce %r1
|
||
|
spillage.
|
||
|
|
||
|
* pa.md (const_double -> FP pattern): Remove cases which can never
|
||
|
happen anymore.
|
||
|
|
||
|
* pa.c (print_operand, case 'Y'): Output comparison operators
|
||
|
which will give the right results when one or more operands is a NaN.
|
||
|
|
||
|
Sun Feb 21 01:38:19 1993 Richard Stallman (rms@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (emit_move_insn_1): New subroutine cut from emit_move_insn.
|
||
|
(emit_move_insn): Use that.
|
||
|
* optabs.c (gen_move_insn): Use emit_move_insn_1.
|
||
|
* expr.h (emit_move_insn_1): Declared.
|
||
|
|
||
|
Sat Feb 20 20:33:51 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c: Add declaration for pedwarn_with_line.
|
||
|
|
||
|
Sat Feb 20 14:46:25 1993 James Van Artsdalen (james@bigtex.cactus.org)
|
||
|
|
||
|
* fixincludes (SRCDIR): Make absolute from ORIGDIR.
|
||
|
(sys/types.h): Quote variables that might expand with spaces.
|
||
|
Strip quotes from expansion of SIZE_TYPE.
|
||
|
(stdio.h): Fix typo deleting line.
|
||
|
|
||
|
Sat Feb 20 18:41:05 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (warning_with_line, pedwarn_with_line): New functions.
|
||
|
(rescan): For pedantic, no error if string constant has newline,
|
||
|
just a pedwarn. And don't end the string constant there.
|
||
|
|
||
|
Sat Feb 20 17:25:16 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* fold-const.c (decode_field_reference): Use force_fit_type
|
||
|
instead of convert to avoid truncated integer warning.
|
||
|
|
||
|
Sat Feb 20 07:31:32 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* fixincludes: Change "va_list)" to "__gnuc_va_list)".
|
||
|
|
||
|
Sat Feb 20 03:19:44 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixincludes: Save temp file in ${LIB}.
|
||
|
Use -I${ORIGDIR} when compiling types.c.
|
||
|
|
||
|
Fri Feb 19 00:45:41 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* convert.c (convert_to_integer): Warn if integer is truncated
|
||
|
and that changes the value.
|
||
|
|
||
|
Thu Feb 18 20:15:20 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* aix386.h: Include aix386ng.h instead of duplicating it.
|
||
|
* 3b1.h (ASM_OUTPUT_CASE_END): Add missing semicolon.
|
||
|
|
||
|
* sparc.c (output_function_prologue): Don't save %f31 to stack.
|
||
|
* sparc.h (STARTING_FRAME_OFFSET): Set to -8.
|
||
|
|
||
|
* pbd.h, sol2.h, sparc.h, sysv4.h (CPP_PREDEFINES): Add
|
||
|
-D__GCC_NEW_VARARGS__.
|
||
|
* va-sparc.h (va_start): If __GCC_NEW_VARARGS__ not defined, use
|
||
|
old definition.
|
||
|
|
||
|
* final.c (end_final): Don't call assemble_zeros with an size
|
||
|
argument of zero.
|
||
|
|
||
|
* move-if-change: Use cmp -s instead of redirecting output to
|
||
|
/dev/null.
|
||
|
|
||
|
* calls.c (expand_call): When MAYBE_REG_PARM_STACK_SPACE defined,
|
||
|
if reg_parm_stack_space is zero, set args_size.constant to zero.
|
||
|
|
||
|
Thu Feb 18 17:43:30 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/core.c (__objc_execClass):
|
||
|
Don't assign superclass pointer more than once.
|
||
|
|
||
|
* objc/record.h (record_store_at, record_get):
|
||
|
Test record_capacity, not record_entries, in assertion.
|
||
|
|
||
|
* flow.c (regno_uninitialized): Test global_regs only for hard regs.
|
||
|
|
||
|
* c-lex.c (yylex): Undo Feb 7 change.
|
||
|
* c-parse.in (program): After extdefs, pop any unpopped binding lvls.
|
||
|
|
||
|
* Makefile.in (BISONFLAGS): Add -v.
|
||
|
|
||
|
Wed Feb 17 18:51:51 1993 Karl Berry (karl@owl.hq.ileaf.com)
|
||
|
|
||
|
* toplev.c (ABS): #undef after including sys/resource.h.
|
||
|
|
||
|
Wed Feb 17 22:02:09 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* m88k.c (emit_ldst): For large offsets use register index
|
||
|
instead of immediate.
|
||
|
|
||
|
Wed Feb 17 18:02:26 EST 1993 John Wehle (john@feith.com)
|
||
|
|
||
|
* we32k.h (CONST_COSTS): Updated to better reflect
|
||
|
the actual constant costs on a we32k.
|
||
|
|
||
|
* we32k.md (truncdfsf2, extendsfdf2): Changed from
|
||
|
define_insn to expand_insn so the optimizer can do
|
||
|
a better job.
|
||
|
|
||
|
* we32k.h (GO_IF_LEGITIMATE_ADDRESS): Added support for
|
||
|
deferred addressing.
|
||
|
|
||
|
* we32k.md: Eliminated a jmp pattern and the peephole
|
||
|
patterns which are no longer needed now that deferred
|
||
|
addressing is supported.
|
||
|
|
||
|
Wed Feb 17 17:55:34 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixincludes (sys/types.h): Replace definition of size_t
|
||
|
based on SIZE_TYPE.
|
||
|
|
||
|
Wed Feb 17 06:54:42 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* config/m88k/m88k.h (CONST_OK_FOR_LETTER_P): Added 'K'.
|
||
|
* config/m88k/m88k.md: Use 'K' constraint with arith5_operand
|
||
|
predicate.
|
||
|
|
||
|
Wed Feb 17 03:04:49 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (stmp-fixinc): Renamed from stmp-fixincludes.
|
||
|
|
||
|
Tue Feb 16 14:34:19 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/sparc/sparc.h (ASM_OUTPUT_IDENT, IDENT_ASM_OP): Defined.
|
||
|
|
||
|
Tue Feb 16 02:48:58 EST 1992 John Wehle (john@feith.com)
|
||
|
|
||
|
* reload.c (find_reloads_address): Use strict_memory_address_p
|
||
|
to check for valid indirect address.
|
||
|
|
||
|
* xm-we32k.h: Include xm-svr3.h. Move tm.h include earlier.
|
||
|
(HOST_BITS_PER_LONGLONG, HOST_WORDS_BIG_ENDIAN): Defined.
|
||
|
(USG, bcopy, bzero, bcmp): Deleted.
|
||
|
(alloca): Definition moved before tm.h.
|
||
|
|
||
|
Tue Feb 16 01:28:52 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (build_indirect_ref): Avoid *& short-cut if -fvolatile.
|
||
|
|
||
|
Mon Feb 15 22:22:08 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips/osfrose.h (CPP_SPEC): When preprocessing .S files, pass
|
||
|
-traditional if neither -ansi nor -traditional was passed, to
|
||
|
allow the macros which form labels to not give gas heartburn.
|
||
|
|
||
|
* i386/osfrose (CPP_SPEC): Ditto.
|
||
|
|
||
|
Mon Feb 15 02:17:47 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc-act.c (HASHFUNCTION): insure nonnegative hash even if
|
||
|
addresses are negative.
|
||
|
|
||
|
Sat Feb 13 04:16:29 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (c_decode_option): Handle -Wmissing-braces.
|
||
|
* c-typeck.c (process_init_constructor): Test warn_missing_braces.
|
||
|
* c-tree.h (warn_missing_braces): Declared.
|
||
|
|
||
|
Fri Feb 12 19:40:38 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* combine.c (setup_incoming_promotions): Make static.
|
||
|
|
||
|
Fri Feb 12 16:02:52 1993 Per Bothner (bothner@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* tree.def: Fix typo in comment (TREE_VALUES -> TYPE_VALUES).
|
||
|
|
||
|
Fri Feb 12 11:26:28 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.md (rotlsi3): Fix typo, rotate was rotatert in rtl template.
|
||
|
|
||
|
Fri Feb 12 07:47:11 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* function.c (reposition_prologue_and_epilogue_notes): Allow
|
||
|
for zero length prologue and epilogue list.
|
||
|
|
||
|
Thu Feb 11 05:55:33 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* collect2.c (find_a_file): Always reject "./ld".
|
||
|
(main): Pass short name of program as first arg to fork_execute;
|
||
|
ensure argv[0] always gets filename.
|
||
|
(fork_execute): Print name for diagnostic from PROG; filename
|
||
|
comes from argv[0].
|
||
|
|
||
|
* fixincludes: Don't assume that macros defining IO and CTRL
|
||
|
ioctl codes always use `x'; some use `c' or `g'.
|
||
|
|
||
|
* collect2.c (putenv): New function, copied from gcc.c.
|
||
|
(last_file_name): New variable.
|
||
|
(find_a_file): Ignore name in last_file_name too.
|
||
|
(main): Look at name in COLLECT_NAME and set it to the name we were
|
||
|
called with.
|
||
|
Pass filename used for ld to ld as argv[0].
|
||
|
|
||
|
Thu Feb 11 03:55:39 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (expand_builtin): Move memory_address calls
|
||
|
out of arglist of emit_block_move.
|
||
|
|
||
|
Wed Feb 10 16:14:09 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* Update Alpha support to latest calling sequence.
|
||
|
* alpha.c (version_string): Declare.
|
||
|
(current_file_function_operand): New function, replaces
|
||
|
current_function_operand.
|
||
|
(print_operand, case 'F'): Case deleted.
|
||
|
(alpha_builtin_saveregs): Reworked to use homed arglists, as
|
||
|
recommended in the calling standard.
|
||
|
(alpha_need_gp): Deleted, code moved into output_prolog.
|
||
|
(alpha_gp_dead_after): Deleted; optimization is not safe.
|
||
|
(alpha_write_verstamp): New function.
|
||
|
(output_prolog, output_epilog): Major rework to update to
|
||
|
current calling standard.
|
||
|
* alpha.h (ASM_OUTPUT_LOOP_ALIGN): Enable, now that assembler fixed.
|
||
|
(SLOW_UNALIGNED_ACCESS): Define as 1.
|
||
|
(ARG_POINTER_REGNUM): Use register number 31 as an arg pointer.
|
||
|
(FRAME_GROWS_DOWNWARD): Do not define.
|
||
|
(STARTING_FRAME_OFFSET): Now is outgoing args size.
|
||
|
(FIRST_PARM_OFFSET): Now 0.
|
||
|
(ELIMINABLE_REGS, etc.): Cannot eliminate gp, but do
|
||
|
eliminate AP in favor of either SP or FP.
|
||
|
(RETURN_IN_MEMORY): All structs or integers larger than 64
|
||
|
bits get returned via memory.
|
||
|
(SETUP_INCOMING_VARARGS): Use homed arglist mechanism.
|
||
|
(ASM_DECLARE_FUNCTION_NAME): Use proper second arg to .ent.
|
||
|
(ASM_FILE_START): Call alpha_write_verstamp.
|
||
|
(ENCODE_SECTION_INFO): Record when a decl is for a function
|
||
|
in the current file.
|
||
|
* alpha.md (call insns): Always reload gp after a full call.
|
||
|
Use current_file_function_operand to see when we can use BSR.
|
||
|
|
||
|
Wed Feb 10 09:53:00 1993 John Hassey (hassey@wombat.gnu.ai.mit.edu)
|
||
|
|
||
|
* config.sub: removed m88kbcs, changed delta88 and harris to
|
||
|
use sysv3.
|
||
|
|
||
|
Wed Feb 10 03:29:11 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (duplicate_decls): Silently accept harmless mismatch
|
||
|
in type of 1st arg of builtin function.
|
||
|
|
||
|
* c-typeck.c (build_indirect_ref): If arg is void *, just warn.
|
||
|
|
||
|
Tue Feb 9 22:15:08 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* alpha.md (fix_truncdfdi2, fix_truncsfdi2): Use `cvttqc', not
|
||
|
`cvttq', to avoid rounding up.
|
||
|
|
||
|
Tue Feb 9 18:45:57 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* function.c (promoted_input_arg): New function.
|
||
|
* expr.h: Declare it.
|
||
|
* combine.c (setup_incoming_promotions): New function.
|
||
|
(combine_instructions): Add calls to setup_incoming_promotions.
|
||
|
|
||
|
Tue Feb 9 14:04:22 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* fixincludes: Fix logic about when to duplicate entries under the
|
||
|
`FILE' link.
|
||
|
|
||
|
Tue Feb 9 13:22:28 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (main): Fix lineno of "does not end in newline" message.
|
||
|
(finclude): Likewise.
|
||
|
|
||
|
Tue Feb 9 12:03:37 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips/mips.c (function_epilogue): Avoid integer overflows in
|
||
|
checking whether $31 is the only register saved.
|
||
|
(mips_epilogue_delay_slots): Ditto.
|
||
|
|
||
|
Tue Feb 9 05:46:17 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rtl.h: Undefine ABS; some POSIX systems define it as 1.
|
||
|
|
||
|
* combine.c (combine_instructions): When calling
|
||
|
set_nonzero_bits_and_sign_copies, set things up so that we
|
||
|
can call get_last value; call record_dead_and_set_regs in loop.
|
||
|
(set_nonzero_bits_and_sign_copies): Handle paradoxical SET.
|
||
|
|
||
|
Tue Feb 9 01:13:18 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-lex.c (yylex): For wide char constant, use wchar_type_node.
|
||
|
Swallow any preprocessing number as a (possibly erroneous) number.
|
||
|
|
||
|
* tree.c (size_in_bytes): Add 2nd arg to force_fit_type.
|
||
|
|
||
|
Mon Feb 8 07:52:23 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* configure (*-*-hpux*): Use install-headers-cpio.
|
||
|
|
||
|
Mon Feb 8 07:13:49 1993 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* toplev.c (compile_file): Don't flag global register variables
|
||
|
as unused.
|
||
|
|
||
|
Mon Feb 8 06:06:58 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386.md (extendsidi2): Use correct mnemonic for cwtl opcode.
|
||
|
|
||
|
Mon Feb 8 05:52:08 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expr.c (emit_push_insn): If REG is zero, don't set regs here.
|
||
|
* expr.h (MUST_PASS_IN_STACK_BAD_ALIGN): Deleted.
|
||
|
(MUST_PASS_IN_STACK): No problem anymore with nonaligned structs.
|
||
|
* calls.c: Allow passing nonaligned BLKmode structs in regs.
|
||
|
(struct arg_data): New fields aligned_regs and n_aligned_regs.
|
||
|
(expand_call): Set and use these fields when required.
|
||
|
(store_one_arg): Don't pass reg to emit_push_insn if we have
|
||
|
previously formed aligned registers.
|
||
|
|
||
|
Sun Feb 7 23:34:16 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* expmed.c (emit_store_flag): Add missing arg to convert_move.
|
||
|
|
||
|
Sun Feb 7 16:13:05 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu.edu)
|
||
|
|
||
|
* calls.c (struct arg_data): New field MODE.
|
||
|
(expand_call, store_one_arg): Use it to ensure that all args get
|
||
|
promoted if requested, not just those passed in registers.
|
||
|
|
||
|
Sun Feb 7 13:12:23 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-lex.c (yylex): At eof, if binding levels not popped,
|
||
|
imagine some close-braces to pop them.
|
||
|
|
||
|
Sun Feb 7 10:54:42 1993 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
* fold-const.c (fold): Call force_fit_type with two parameters.
|
||
|
|
||
|
* fold-const.c (force_fit_type): Don't examine the tree until
|
||
|
it is known to an INTEGER_CST. If it isn't, just return.
|
||
|
|
||
|
Sat Feb 6 20:26:09 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* byteorder.h (386 htonl,htons): Avoid hard-coded register usage.
|
||
|
|
||
|
Sat Feb 6 20:23:02 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/m68k/m68k.md (movqi): For special case of moving byte
|
||
|
to stack, push into low byte and then copy to high byte.
|
||
|
For case of moving to/from address reg, exchange it with d0.
|
||
|
|
||
|
Fri Feb 5 19:58:26 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* stmt.c (expand_expr_stmt): Bypass fetching a volatile value
|
||
|
if it is VOIDmode.
|
||
|
|
||
|
Fri Feb 5 18:27:27 1993 Jim Wilson (wilson@geech.gnu.ai.mit.edu)
|
||
|
|
||
|
From Fred Fish (fnf@fishpond.cygnus.com)
|
||
|
* config.sub (i[34]86sol2): New abbrev for i[34]86-unknown-solaris2.
|
||
|
* configure (i[34]86-*-solaris2): New config for Solaris 2, x86.
|
||
|
* crtstuff.c (__do_global_ctors_aux): Use FORCE_INIT_SECTION_ALIGN
|
||
|
to avoid Solaris 2, x86 linker bug.
|
||
|
* config/i386/{sol2-c1.asm, sol2-ci.asm, sol2-cn.asm}: New runtime
|
||
|
support files for Solaris 2, x86.
|
||
|
* config/i386/{sol2.h, t-sol2}: New config files for Solaris 2, x86.
|
||
|
|
||
|
* sparc.h (EXTRA_CONSTAINTS): Delete 'R' support.
|
||
|
(CONST_OK_FOR_LETTER_P): Correct 'K' comment.
|
||
|
|
||
|
* caller-save.c (CEIL): Delete.
|
||
|
(restore_referenced_regs): New var NUMREGS. Pass NUMREGS to
|
||
|
insert_save_restore instead of using using CEIL.
|
||
|
|
||
|
* sched.c (true_dependence, anti_dependence, output_dependence):
|
||
|
Assume that MEM_IN_STRUCT_P QImode varying addresses can overlap a
|
||
|
non-MEM_IN_STRUCT_P fixed address.
|
||
|
|
||
|
* i960.c (legitimate_address_p): Accept either REG or SUBREG where
|
||
|
a register is valid in an address.
|
||
|
|
||
|
* configure (*-*-sco*): Set install_headers_dir to cpio instead of tar.
|
||
|
|
||
|
* cccp.c (finclude): Error if try to include a directory.
|
||
|
(S_ISDIR): Add a default definition.
|
||
|
|
||
|
Fri Feb 5 10:24:35 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* toplev.c (lang_options): Remove `-fSOS' and `-fno-SOS'.
|
||
|
|
||
|
Wed Feb 3 16:34:58 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (init_decl_processing): Add __builtin_args_info.
|
||
|
|
||
|
Wed Feb 3 12:47:02 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-class.c (finish_struct_methods): Avoid creating a circularity
|
||
|
when putting ctors and dtors at the front of the list.
|
||
|
|
||
|
* cp-init.c (build_new): Call c_sizeof_nowarn, not c_sizeof.
|
||
|
(build_delete): Likewise.
|
||
|
|
||
|
Tue Feb 2 09:57:29 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-lex.c (yyprint): Make non-static.
|
||
|
|
||
|
Mon Feb 1 17:09:19 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-lex.c (real_yylex): Use pedwarn for exceeding the range of a
|
||
|
double.
|
||
|
|
||
|
Sat Jan 30 13:09:35 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-method.c (hack_identifier): Also check for VALUE being a
|
||
|
RESULT_DECL before looking for the DECL_REFERENCE_SLOT.
|
||
|
|
||
|
* cp-decl2.c (bad_specifiers): Pass OBJECT into error.
|
||
|
|
||
|
Fri Jan 29 11:46:46 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-class.c (alter_visibility): Forbid reducing the visibility of a
|
||
|
public member of the derived class.
|
||
|
|
||
|
* cp-typeck.c (comp_target_parms): Give a contravariance warning
|
||
|
with P2, not P1, since P1 is the established value, not the argument
|
||
|
that's coming in for a match.
|
||
|
|
||
|
* cp-decl.c (start_method): When printing out the class name for a
|
||
|
duplicate definition, be sure to avoid a null context with the
|
||
|
second definition.
|
||
|
|
||
|
Tue Jan 26 15:39:54 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-pt.c (lookup_template_class): Try to use the class value if
|
||
|
there's no global value.
|
||
|
|
||
|
Mon Jan 25 15:59:21 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-call.c (build_method_call): Remove TYPE_NEEDS_WRAPPER cruft.
|
||
|
|
||
|
Sat Jan 23 12:13:24 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-class.c (finish_struct): See to that static members whose type
|
||
|
is the class they're declared in gets a correct mode.
|
||
|
|
||
|
Mon Jan 25 11:04:23 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-decl.c (define_label): Don't report crossings of any internal
|
||
|
entity initializations. Don't dereference NULL.
|
||
|
|
||
|
Wed May 13 21:44:05 1992 Niklas Hallqvist (niklas@appli.se)
|
||
|
|
||
|
* cp-decl2.c: Support for NO_DOT_IN_LABEL.
|
||
|
* cp-tree.h: Likewise.
|
||
|
* cp-method.c: Likewise.
|
||
|
|
||
|
* cp-except.c: Support for no JOINER setups (i.e. NO_DOT_IN_LABEL)
|
||
|
* cp-lex.c: Likewise.
|
||
|
* cp-search.c: Likewise.
|
||
|
|
||
|
Fri Jan 22 08:52:58 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-call.c (resolve_scope_to_name): Try to find nested types not
|
||
|
just in the current class and at global scope but at all
|
||
|
intermediate classes as well.
|
||
|
|
||
|
Mon Jan 25 11:04:23 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-decl.c (xref_tag): Enable test of incomplete basetypes.
|
||
|
* cp-tree.c (layout_basetypes): Disabled it here.
|
||
|
|
||
|
Mon Jan 25 11:04:23 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-init.c (build_new): Move error check of array size before use.
|
||
|
|
||
|
Sun Jan 24 21:41:09 1993 John Carr (jfc@Athena.MIT.EDU)
|
||
|
|
||
|
* cp-typeck.c (build_binary_op_nodefault): Add support for
|
||
|
FLOOR_MOD_EXPR, merged in from the c front-end.
|
||
|
|
||
|
Wed Feb 3 18:23:07 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc-act.c (init_objc): Use xrealloc, not realloc.
|
||
|
|
||
|
* expr.c (emit_library_call, emit_library_call_value):
|
||
|
Handle STACK_BOUNDARY when using push insns.
|
||
|
|
||
|
Tue Feb 2 16:37:49 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* varasm.c (assemble_zeros): Output nothing rather than empty skip.
|
||
|
|
||
|
* c-typeck.c (build_conditional_expr): Always convert and check
|
||
|
both result operands even if condition is constant.
|
||
|
(build_c_cast): Bypass default_conversion when casting to void.
|
||
|
|
||
|
* c-decl.c: Add some braces for clarity.
|
||
|
|
||
|
* configure (i[34]86-*-linux*): Set fixincludes to Makefile.in
|
||
|
Don't set tmake_file.
|
||
|
* Makefile.in (stmp-fixincludes): Don't run FIXINCLUDES
|
||
|
if it is Makefile.in.
|
||
|
* t-linux: File deleted.
|
||
|
|
||
|
* Makefile.in (install-headers-cpio): Delete spurious parens
|
||
|
from around the whole command.
|
||
|
(install-headers-tar): Delete parens around the "source" tar cmd.
|
||
|
|
||
|
Tue Feb 2 15:20:52 1993 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
* c-decl.c (pushdecl): DECL_EXTERNAL implies TREE_PUBLIC,
|
||
|
so don't bother to check for both.
|
||
|
|
||
|
* regclass.c (int_reg_class_contents): Make unsigned to avoid
|
||
|
signed integer overflow.
|
||
|
(init_reg_sets): Avoid signed integer overflow.
|
||
|
|
||
|
* cexp.y (parse_escape): Support \E and \e like cc1:
|
||
|
they mean \033, and they generate a warning if pedantic.
|
||
|
|
||
|
Tue Feb 2 15:17:38 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* t-sol2 (INSTALL_TARGET): Delete.
|
||
|
|
||
|
Tue Feb 2 14:18:59 1993 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* Makefile.in (gcc.o): Depend upon config.status, so any changes
|
||
|
in prefix will be communicated to the build process.
|
||
|
(cccp.o): Likewise.
|
||
|
|
||
|
Tue Feb 2 07:09:36 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.md (cmov): Use @ for output.
|
||
|
|
||
|
Mon Feb 1 01:50:54 1993 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* c-decl.c (finish_decl, grokdeclarator, finish_struct): Report
|
||
|
overflows in storage sizes.
|
||
|
(build_enumerator): Report overflows in enumerators.
|
||
|
* fold-const.c (same_sign): Remove.
|
||
|
(lshift_double): Don't report arithmetic overflow, since the
|
||
|
C standard doesn't seem to require it here.
|
||
|
(force_fit_type): Accept new parameter specifying whether a signed
|
||
|
overflow has already occurred. Yield overflow indication.
|
||
|
All callers changed.
|
||
|
(neg_double): Don't report overflow when -0 yields 0.
|
||
|
(const_binop): Propagate operand overflow for warnings.
|
||
|
Don't report overflow when -1 + 1 yields 0.
|
||
|
|
||
|
* c-parse.in (unary_expr): Warn about overflows in parser-built
|
||
|
unary expressions.
|
||
|
* c-typeck.c (parser_build_binary_op): Warn about overflows and
|
||
|
conversions of out-of-range constants in parser-built binary
|
||
|
expressions.
|
||
|
(build_conditional_expr): Check conversions in if-then-else
|
||
|
expressions.
|
||
|
(build_c_cast): Ignore any integer overflow caused by a cast.
|
||
|
(convert_for_assignment): Warn if source had overflow in folding.
|
||
|
(process_init_constructor): Report overflows in array initializer
|
||
|
indexes.
|
||
|
* c-common.c (constant_expression_warning): Suppress duplicate
|
||
|
warnings.
|
||
|
(convert_and_check, overflow_warning, unsigned_conversion_warning):
|
||
|
New functions. Prototypes added to c-tree.h.
|
||
|
|
||
|
* expr.c (expand_builtin): Report overflow if __builtin_args_info
|
||
|
arg exceeds one word.
|
||
|
Fix punctuation of error messages.
|
||
|
|
||
|
Sun Jan 31 17:45:11 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (simplify_and_const_int): Never consider bits outside
|
||
|
of MODE.
|
||
|
|
||
|
Sun Jan 31 15:24:46 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc-act.c (build_module_descriptor): Fix call to start_function.
|
||
|
|
||
|
Sun Jan 31 13:08:05 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.md (zvdep32): Handle 5 bit immediates for operand 1.
|
||
|
(ashlsi3): Likewise.
|
||
|
(and + ashift): New combine pattern.
|
||
|
|
||
|
Sun Jan 31 12:40:00 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* protoize.c: Include gvarargs.h before system headers.
|
||
|
|
||
|
Sat Jan 30 18:51:46 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (build_compound_expr): insert missing return
|
||
|
|
||
|
Sat Jan 30 16:10:56 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.c (reg_or_0_operand): Use CONST0_RTX instead of
|
||
|
const0_rtx.
|
||
|
(reg_or_0_or_nonsymb_mem_operand): New function.
|
||
|
(emit_move_sequence): Copying CONST0_RTX into any
|
||
|
register can be done directly. Use CONST0_RTX instead
|
||
|
of const0_rtx.
|
||
|
(output_fp_move_double): Handle copying a CONST0_RTX
|
||
|
into FP or integer registers.
|
||
|
(print_operand): Handle "%r0" for DFmode and SFmode
|
||
|
values too.
|
||
|
|
||
|
* pa.h (CONST_DOUBLE_OK_FOR_LETTER_P): Generalize.
|
||
|
(LEGITIMATE_CONSTANT_P): Allow 0.0.
|
||
|
(CONST_COSTS, case CONST_DOUBLE): fp0.0 is free when
|
||
|
not used in a SET expression.
|
||
|
|
||
|
* pa.md (cmpXf expands): Allow 0.0 for either operand
|
||
|
of the comparison.
|
||
|
(cmpXf insns): Allow 0.0 for either operand of the
|
||
|
comparison. Update output template to handle 0.0 as one
|
||
|
of the operands.
|
||
|
(movsi insn, fp->fp case): Update constraints and template to
|
||
|
allow store of zero into an FP register.
|
||
|
(movhi insn, fp->fp case): Likewise.
|
||
|
(movqi insn, fp->fp case): Likewise.
|
||
|
(movdi insn, fp->fp case): Likewise.
|
||
|
(movDF const_double pattern): Do not apply this pattern
|
||
|
if the const_double is zero.
|
||
|
(movdf insn, fp->fp and gr->gr cases): Update constraints
|
||
|
and output template to allow store of zero into a FP or GR.
|
||
|
Update condition string to allow zero as operand 1.
|
||
|
(movsf insn, fp->fp and gr->gr cases): Likewise. Also allow
|
||
|
store of zero into a memory location.
|
||
|
|
||
|
Sat Jan 30 14:57:44 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-tree.h: Add many prototypes from bill@cygnus.com
|
||
|
|
||
|
Sat Jan 30 01:06:52 1993 Niklas Hallqvist (niklas@spiff.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-common.c (c_build_type_variant): Moved here from c-decl.c.
|
||
|
Redirected the TYPE_MAIN_VARIANT to the "real" main variant.
|
||
|
Build the possibly new array type on the permanent obstack if
|
||
|
the original type was permanent.
|
||
|
(permanent_obstack): Added extern declaration.
|
||
|
* c-decl.c (c_build_type_variant): Moved to c-common.c.
|
||
|
|
||
|
Fri Jan 29 18:16:47 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/m68k/m68k.md (iorsi3): Add CC_STATUS_INIT if use bset.
|
||
|
|
||
|
* fold-const.c (force_fit_type): Abort if T not INTEGER_CST.
|
||
|
* tree.c (size_in_bytes): Only call force_fit_type for an INTEGER_CST.
|
||
|
|
||
|
* config/i386/t-linux (FIXINCLUDES): New file.
|
||
|
* configure (i[34]86-*-linux*): Use t-linux.
|
||
|
|
||
|
Fri Jan 29 12:08:04 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* reload.c (find_reloads_toplev): When handling a (subreg (reg))
|
||
|
where (reg) will be replaced by a memory reference, if the memory
|
||
|
address is invalid for the mode of the subreg, then search the
|
||
|
memory address for reloads.
|
||
|
|
||
|
* pa.h (FIXED_REGISTERS): %r31 is not fixed.
|
||
|
|
||
|
Thu Jan 28 23:49:25 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* reg-stack.c (compare_for_stack_reg): Properly swap operands of a
|
||
|
COMPARE.
|
||
|
|
||
|
Thu Jan 28 13:47:53 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (iorsi3): Split into two patterns, a named "iorsi3" which
|
||
|
only accepts registers, and a combiner pattern which accepts a
|
||
|
restricted set of constant integers for one term.
|
||
|
* pa.c (ior_operand): Do not accept registers.
|
||
|
|
||
|
* pa.h (LEGITIMIZE_ADDRESS): Delete cases which can never happen.
|
||
|
|
||
|
* pa.h (CPP_SPEC for OLD_CC): Delete.
|
||
|
(CC1_SPEC for OLD_CC): Likewise.
|
||
|
(MODES_TIEABLE_P): Simplify.
|
||
|
(ASM_OUTPUT_ADDR_VEC_ELT): Fix comment.
|
||
|
(leaf_function): Delete unused variable.
|
||
|
(HARD_REGNO_MODE_OK): Delete old useless version.
|
||
|
(FIRST_PARM_OFFSET): Likewise.
|
||
|
(FIRST_PARM_CALLER_OFFSET): Likewise.
|
||
|
(EXPAND_BUILTIN_SAVEREGS): Likewise.
|
||
|
(ASM_OUTPUT_REG_PUSH): Likewise.
|
||
|
(ASM_OUTPUT_REG_POP): Likewise
|
||
|
|
||
|
Thu Jan 28 07:51:47 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* config/m68k/m68k.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '/'.
|
||
|
* config/m68k/m68k.c (print_operand): Print %/ as REGISTER_PREFIX.
|
||
|
* longlong.h (umul_ppmm for 68000): Use %/ before all register
|
||
|
names.
|
||
|
|
||
|
* configure (install_headers_dir): New variable for each
|
||
|
configuration, used to set INSTALL_HEADERS_DIR in Makefile.
|
||
|
(*-*-sysv4*, *-*-sysv*): Set install_headers_dir to
|
||
|
install-headers-cpio.
|
||
|
|
||
|
Thu Jan 28 07:30:25 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* a29k.md: Remove 29050-specific variants of patterns generating
|
||
|
loadm that have earlyclobber. This was put in for some very old
|
||
|
version of the '050, which isn't used anymore, that had a bug.
|
||
|
|
||
|
Thu Jan 28 06:56:04 1993 Pat Rankin (rankin@eql.caltech.edu)
|
||
|
|
||
|
* vmsconfig.com: change instances of [.config] to [.config.vax].
|
||
|
* make-cc1.com, make-cccp.com, make-l2.com: change /include and -I
|
||
|
values from [.config] to [.config.] (this trailing period works with
|
||
|
GNU C's preprocessor but not with VAX C's).
|
||
|
|
||
|
Thu Jan 28 06:48:57 1993 Michael Collison (collison@osf.org)
|
||
|
|
||
|
* optabs.c (init_fixtab, init_optabs): Fix typos in QFmode and HFmode
|
||
|
initialization.
|
||
|
|
||
|
Wed Jan 27 13:11:26 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (includedir): Use local_prefix.
|
||
|
|
||
|
Wed Jan 27 12:08:05 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.c (check_fp_mov): Delete unused function
|
||
|
(register_or_short_operand): Likewise.
|
||
|
(eq_or_neq): Likewise.
|
||
|
(gen_compare_reg): Likewise.
|
||
|
(reverse_relop): Likewise.
|
||
|
(frame_base)name): Delete unused variable.
|
||
|
|
||
|
* pa-ghpux.h (HAVE_ATEXIT): Delete. This is defined in pa.h
|
||
|
* pa-gux7.h (HAVE_ATEXIT): Likewise.
|
||
|
* pa-hpux.h (HAVE_ATEXIT): Likewise.
|
||
|
* pa-hpux7.h (HAVE_ATEXIT): Likewise.
|
||
|
|
||
|
Wed Jan 27 06:46:50 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* cse.c (simplify_relation_operation): We can compute the result
|
||
|
of a comparison of CONST_INTs no matter what mode the computation
|
||
|
is to be done in.
|
||
|
|
||
|
* expmed.c (emit_store_flag): Swap operands if first is a
|
||
|
constant and second is not.
|
||
|
Abort if compare_from_rtx didn't return an rtx with the code we
|
||
|
expect.
|
||
|
* expr.c (compare_from_rtx): Only swap operand if first is a
|
||
|
constant and second is not.
|
||
|
|
||
|
* c-common (declare_function_name): If char_array_type_node isn't
|
||
|
large enough for the name, make a larger type.
|
||
|
* c-decl.c (init_decl_processing): Make the arrays 200 long instead
|
||
|
of 10 to leave more room for most names.
|
||
|
|
||
|
* function.c (put_var_into_stack, fixup_var_refs_insns): Minor
|
||
|
cleanups.
|
||
|
(fixup_var_refs_1, case SET): Correctly check for simple insns
|
||
|
that don't need fixups.
|
||
|
|
||
|
* collect2.c: Delete ISCOFF macro which was in #ifdef _AIX.
|
||
|
* rs6000.h, a29k/unix.h (MY_ISCOFF): New macro.
|
||
|
|
||
|
Tue Jan 26 19:31:31 1993 Tom Wood (Tom_Wood@NeXT.com)
|
||
|
|
||
|
* combine.c (combine_instructions): Initialize undobuf in the
|
||
|
event `gen_rtx_combine' is called before `try_combine'.
|
||
|
|
||
|
Tue Jan 26 18:20:04 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* i960.md (umulsidi3+1): Add variant which accepts constants.
|
||
|
|
||
|
* fixinc.svr4: Change all uses of EX to SED.
|
||
|
* fixincludes (sys/types.h): Don't match on ssize_t.
|
||
|
(stdio.h): Change _VA_LIST_ to __gnuc_va_list for 386BSD.
|
||
|
|
||
|
Tue Jan 26 13:46:04 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* xm-alpha.h (ONLY_INT_FIELDS): Define if not __GNUC__.
|
||
|
|
||
|
* collect2.c (write_list_with_asm): Use `__asm__' instead of
|
||
|
`asm', to avoid problems with `-fno-asm'.
|
||
|
|
||
|
* Makefile.in (insn-*.[ch], protoize.o, unprotoize.o, install): When
|
||
|
using a trailing semicolon to force a rule to not do anything,
|
||
|
explicitly run the command `true', to avoid warnings or other
|
||
|
problems with versions of make which don't like null commands.
|
||
|
|
||
|
Tue Jan 26 07:14:29 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* cse.c (simplify_binary_operation, case SMAX): Correctly
|
||
|
compute largest possible signed integer.
|
||
|
|
||
|
* Makefile.in: (rest.cross, gfloat.h, stmp-headers, mostlyclean):
|
||
|
Build and install gfloat.h instead of float.h.
|
||
|
|
||
|
* a29k/x-unix (CLIB): Add -lld.
|
||
|
|
||
|
* integrate.c (copy_rtx_and_substitute, case REG): Call
|
||
|
gen_lowpart instead of making an explicit SUBREG.
|
||
|
|
||
|
* stmt.c (expand_value_return): Call convert_move instead of the
|
||
|
erroneous convert_to_mode.
|
||
|
|
||
|
Tue Jan 26 00:58:53 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* collect2.c (find_a_file): First `access' test was backwards.
|
||
|
(main): Set full_real_ld_suffix right.
|
||
|
|
||
|
* c-decl.c (init_decl_processing): Use 10 as size
|
||
|
of ..._array_type_node.
|
||
|
|
||
|
* cccp.c (handle_directive): Init already_output
|
||
|
after old_linenum label.
|
||
|
(finclude): Remove final backslash-newline *before* trigraph_pcp.
|
||
|
(write_output): Free line_command at end.
|
||
|
|
||
|
Mon Jan 25 19:31:32 1993 Doug Evans (dje@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* print-rtl.c (debug_rtx_list, debug_rtx_find): New functions.
|
||
|
* .gdbinit (prl): New command.
|
||
|
|
||
|
Mon Jan 25 14:49:45 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sparc.c (init_arg_profiler, output_arc_profiler): Delete unused
|
||
|
functions.
|
||
|
* sparc.h (ARC_PROFILER): Delete unused macro.
|
||
|
|
||
|
* sparc.c (sparc_builtin_saveregs): New function.
|
||
|
* sparc.h (CPP_SPEC): Delete __sparc_frw__ define.
|
||
|
(TARGET_FRW_COMPAT): New macro.
|
||
|
(TARGET_DEFAULTS): Comment out -mfrw option. Add new commented
|
||
|
out option -mfrw-compat.
|
||
|
(EXPAND_BUILTIN_SAVEREGS): Call sparc_builtin_saveregs to emit rtl
|
||
|
inline instead of calling builtin_saveregs in libgcc.a.
|
||
|
* va-sparc.h (va_start): Rewrite to account for above changes.
|
||
|
|
||
|
* sparc.h (PRINT_OPERAND_PUNCT_VALID_P): Delete '@' case.
|
||
|
* sparc.c (print_operand): Likewise.
|
||
|
(output_fp_move_double): Delete FP_REG to GENERAL_REG and vice
|
||
|
versa copy support.
|
||
|
(output_fp_move_quad): Likewise.
|
||
|
* sparc.md (movsi, movtf, movdf, movdi, movsf): Delete f/r and r/f
|
||
|
constraint pairs.
|
||
|
|
||
|
* i960.c (secondary_reload_class): Correct test against
|
||
|
FIRST_PSEUDO_REGISTER.
|
||
|
|
||
|
* sparc.c (registers_ok_for_ldd_peep): Delete test for pseudos.
|
||
|
|
||
|
* optabs.c (emit_indirect_jump): Use Pmode instead of VOIDmode and
|
||
|
insn_operand_mode.
|
||
|
|
||
|
* calls.c (calls_alloca): Change name to calls_function. Add new
|
||
|
parameter WHICH to control old or new behaviour.
|
||
|
(expand_call): When stack space is preallocated and parameters
|
||
|
must be passed on the stack, precompute parameters that involve
|
||
|
function calls.
|
||
|
|
||
|
* c-decl.c (language_string): Delete from here.
|
||
|
* c-parse.in (language_string): Define here for C and Obj-C.
|
||
|
|
||
|
Mon Jan 25 13:54:16 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* c-decl.c (finish_struct): Disable "structure/union defined
|
||
|
inside parms" if compiling with -traditional.
|
||
|
|
||
|
Mon Jan 25 05:24:12 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* i386.md (extendsidi2): Fix typo in regno.
|
||
|
|
||
|
Mon Jan 25 00:07:18 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (lookup_label): Return 0 if not within a function.
|
||
|
|
||
|
* c-parse.in (unary_expr => ANDAND identifier):
|
||
|
Handle lookup_label returning 0.
|
||
|
|
||
|
* Makefile.in (install-float-h-cross):
|
||
|
Don't ignore error when running enquire.
|
||
|
|
||
|
Sun Jan 24 22:41:00 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* c-typeck.c (build_compound_expr): Move the code into
|
||
|
internal_build_compound_expr, and pass second argument TRUE
|
||
|
indicating that this is the first call. For recursive calls, pass
|
||
|
FALSE. Do not make 0 a non_lvalue constant if this is the first
|
||
|
call, to allow return 0; from a pointer returning function to not
|
||
|
get a warning.
|
||
|
|
||
|
Sun Jan 24 18:40:44 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/vax/vax.md (move/push address patterns):
|
||
|
Don't use alternative number to distinguish pushes from moves.
|
||
|
Use just one alternative `g' in output constraint.
|
||
|
|
||
|
Sun Jan 24 07:19:03 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* final.c (final_scan_insn): Call alter_subreg on duplicate
|
||
|
operands (in case we need to split the insn).
|
||
|
|
||
|
* local-alloc.c (CLASS_LIKELY_SPILLED_P): Add default definition.
|
||
|
(alloc_qty_for_scratch, local_alloc): Use CLASS_LIKELY_SPILLED_P.
|
||
|
|
||
|
Sat Jan 23 19:41:21 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* combine.c (apply_distributive_law): Don't mess with float arith.
|
||
|
|
||
|
* c-parse.in: Use new name objc-act.h.
|
||
|
|
||
|
Sat Jan 21 13:12:49 1993 Serge Adda (adda@soft01)
|
||
|
|
||
|
* expmed.c (emit_store_flag): Reset ICODE using returned COMPARISON.
|
||
|
|
||
|
Sat Jan 23 18:27:35 1993 Niklas Hallqvist (niklas@spiff.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/m68k/tower.h (LIB_SPEC): Use %s instead of absolute path.
|
||
|
(STARTFILE_SPEC): Moved here from tower-as.h. Use %s instead of
|
||
|
absolute path.
|
||
|
* config/m68k/tower-as.h (STARTFILE_SPEC): Moved to tower.h.
|
||
|
|
||
|
Sat Jan 23 16:28:48 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (change_newlines): Renamed from delete_newlines.
|
||
|
Insert a space in place of a newline. Caller changed.
|
||
|
|
||
|
* config/m68k/hp320.h (ASM_OUTPUT_DOUBLE_OPERAND): Delete space
|
||
|
before arglist.
|
||
|
|
||
|
Sat Jan 23 09:20:41 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* Makefile.in (cross-test): Depend on GCC_PARTS.
|
||
|
|
||
|
Sat Jan 23 07:15:10 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reload1.c (reload): After calling count_possible_groups, see
|
||
|
if we have to proceed with allocating a group.
|
||
|
(count_possible_groups): Use HARD_REG_SET, not a char array, for
|
||
|
consistency.
|
||
|
|
||
|
* rs6000.h (ADJUST_COST): Add new definition.
|
||
|
|
||
|
Fri Jan 22 18:55:00 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* fixinc.svr4: Use pwd if PWDCMD is undefined. Add missing echo
|
||
|
command.
|
||
|
|
||
|
Fri Jan 22 18:08:47 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Cygnus<-->FSF merge.
|
||
|
|
||
|
Thu Jan 21 15:26:59 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* Makefile.in (convert.o): Add dependencies.
|
||
|
|
||
|
* cp-gc.c (NULL): Undef before defining.
|
||
|
* cp-init.c (NULL): Likewise.
|
||
|
* cp-expr.c (NULL): Likewise.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Relegate error about operator= to a
|
||
|
warning for now, an error later.
|
||
|
|
||
|
Tue Jan 19 16:40:19 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-type2.c (my_friendly_assert): Don't set errorcount or
|
||
|
sorrycount to zero, as we no longer say "please fix above errors".
|
||
|
|
||
|
Mon Jan 18 19:44:53 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-type2.c (my_friendly_abort): Exit quietly in cases of random
|
||
|
seg faults in the front-end in the presences of other errors. This
|
||
|
makes the handling of these things more uniform.
|
||
|
|
||
|
Mon Jan 18 16:23:11 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (build_unary_op): Improve error message for
|
||
|
{pre,post}-{increment,decrement}.
|
||
|
|
||
|
Mon Jan 18 13:58:14 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (build_binary_op): Improve error message.
|
||
|
|
||
|
Fri Jan 15 17:53:33 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Fri Jan 15 00:35:22 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-decl.c (start_function): Removed the comp_target_parms test
|
||
|
when checking for implementations of "C" linkage functions, allows
|
||
|
for more overloading of extern "C" functions.
|
||
|
|
||
|
Fri Jan 15 17:32:56 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Fri Jan 15 00:35:22 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-decl.c (grokvardecl): Implement the "one definition rule".
|
||
|
|
||
|
Fri Jan 15 17:17:05 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (get_base_distance): Compute results from calls to
|
||
|
recursive_bounded_basetype_p into a temp variable, as otherwise we
|
||
|
can clobber rval with a zero.
|
||
|
|
||
|
Fri Jan 15 17:10:59 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Thu Jan 14 16:02:27 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-decl.c (start_function): Don't try to match static member
|
||
|
functions with "C"-linkage declared global functions.
|
||
|
|
||
|
Thu Jan 14 17:58:15 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-method.c, cp-type2.c, cp-typeck.c: Make sure the fourth
|
||
|
argument to build_overload_call is (struct candidate *)0 not just
|
||
|
a plain 0.
|
||
|
|
||
|
Thu Jan 14 17:15:40 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Don't warn on an initialized var
|
||
|
that's extern if it's a const.
|
||
|
|
||
|
Thu Jan 14 17:03:40 1993 Michael Tiemann (tiemann@rtl.cygnus.com)
|
||
|
|
||
|
* cp-pt.c (coerce_template_parms): Add new parameter IN_DECL.
|
||
|
Update error messages to give location information of the _DECL
|
||
|
when an instantiation fails.
|
||
|
(lookup_template_class): Ditto.
|
||
|
(tsubst): Ditto.
|
||
|
All callers changed.
|
||
|
* cp-tree.h (lookup_template_class): Update prototype.
|
||
|
* cp-parse.y (template_type_name): Update calls to
|
||
|
lookup_template_class.
|
||
|
|
||
|
Thu Jan 14 02:09:17 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl2.c (grokfield): Arrange for the type to be set on class
|
||
|
typedefs, cures one type of internal compiler error 62. Now calls
|
||
|
set_identifier_type_value just before pushdecl_class_level.
|
||
|
|
||
|
Wed Jan 13 22:43:58 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (get_base_distance): Allow checking of UNION_TYPEs,
|
||
|
as some of the init code calls us.
|
||
|
|
||
|
Wed Jan 13 21:12:22 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Mon Jan 11 20:11:17 1993 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-parse.y (implicitly_scoped_stmt, simple_stmt): New rules to
|
||
|
handle the changed semantics of selection & iteration statements
|
||
|
in ANSI C++ (check out 6.4-5 in the draft as opposed to the ARM).
|
||
|
(simple_if, stmt, compstmt): Changed to use the new rules.
|
||
|
(stmt_decl_msg): Removed this static (together with all its uses)
|
||
|
because it's now unnecessary.
|
||
|
(cond_stmt_keyword): New static string to use in the error message
|
||
|
of paren_expr_or_null.
|
||
|
(paren_expr_or_null): Use cond_stmt_keyword instead of stmt_decl_msg.
|
||
|
|
||
|
Tue Jan 12 18:53:44 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (lookup_name): If PREFER_TYPE is -2, don't call
|
||
|
lookup_nested_field.
|
||
|
* cp-spew.c (yylex) [IDENTIFIER case]: Call lookup_name with -2
|
||
|
instead of -1.
|
||
|
|
||
|
* cp-decl2.c (grokclassfn): If there's no IDENTIFIER_TYPE_VALUE (it
|
||
|
could have gotten blown away by poplevel_class), use ctype to build
|
||
|
the overload name.
|
||
|
|
||
|
* cp-call.c (convert_harshness): Avoid dereferencing a null PARM,
|
||
|
which can be passed in by convert_harshness itself.
|
||
|
|
||
|
Mon Jan 11 12:25:51 1993 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-tree.h (VTABLE_NAME_P, VBASE_NAME_P): Reverse order, so they'll
|
||
|
go for [1..3], to avoid referencing beyond the bounds of a name.
|
||
|
|
||
|
* cp-xref.c (fctname): Delete extern decl of `declname'.
|
||
|
|
||
|
* cp-type2.c (build_scoped_ref): Pass the nodes themselves down into
|
||
|
error_not_base_type, not the strings, since it'll peel off the decl
|
||
|
name and type name of them itself.
|
||
|
|
||
|
* cp-class.c (build_vbase_path): flag_assume_nonnull_objects is an
|
||
|
int, not a tree.
|
||
|
|
||
|
* dbxout.c (dbxout_type_methods): Only emit warning about dbx info
|
||
|
for templates when WARN_TEMPLATE_DEBUGGING is set. Only reference
|
||
|
the var WARN_TEMPLATE_DEBUGGING if we've got HAVE_TEMPLATES defined.
|
||
|
* cp-tree.h (HAVE_TEMPLATES): Define.
|
||
|
* cp-decl2.c (lang_decode_option): Set WARN_TEMPLATE_DEBUGGING when
|
||
|
given -Wall.
|
||
|
* flags.h (warn_template_debugging): Add extern decl.
|
||
|
* toplev.c (lang_options): Add -Wtemplate-debugging.
|
||
|
|
||
|
* cp-decl.c (make_temporary_for_reference): Call make_decl_rtl with
|
||
|
a NULL_PTR, not 0.
|
||
|
(finish_decl): Likewise.
|
||
|
(grokfndecl): With a NULL_PTR, not a NULL_TREE.
|
||
|
|
||
|
Fri Jan 8 19:43:52 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-search.c (get_binfo): Use obstack_ptr_grow instead of
|
||
|
obstack_int_grow, casting the int to a void*. When retrieving it,
|
||
|
cast the result of dereferencing SEARCH_STACK->FIRST as an int.
|
||
|
(get_base_distance): Likewise.
|
||
|
(breadth_first_search): Likewise.
|
||
|
|
||
|
Fri Jan 22 15:09:42 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pyr.h (SIZE_TYPE): Define.
|
||
|
(NO_DOLLAR_IN_LABEL): Define.
|
||
|
|
||
|
Fri Jan 22 12:19:47 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.c (secondary_reload_class): Simplify.
|
||
|
|
||
|
Fri Jan 22 07:57:57 1993 Richard Kenner (kenner@vlsi1.ultra.nyu)
|
||
|
|
||
|
* collect2.c (our_file_name): New variable.
|
||
|
(find_a_file): Ignore filename equal to that in our_file_name.
|
||
|
(main): Initialize our_file_name.
|
||
|
|
||
|
* expr.c (emit_library_call): Correct mis-applied patch.
|
||
|
|
||
|
Thu Jan 21 11:36:04 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (REG_CLASSES): Delete GENERAL_OR_FP_OR_SNAKE_FP register
|
||
|
class, it's not needed anymore. Delete all references. 'Z'
|
||
|
register class is now "ALL_REGS".
|
||
|
* pa.c (emit_move_sequence): Handle secondary reloads for SAR.
|
||
|
|
||
|
Tue Jan 19 20:08:01 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
From Torbjorn Granlund (tege@sics.se):
|
||
|
* i960.c (cmplpower2_operand): New function.
|
||
|
* i960.md (addsi3): Clean up condition for when to use subo.
|
||
|
(umulsidi3): New pattern.
|
||
|
(non-canonical nand, nor): Remove paterns.
|
||
|
(clrbit, notbit static bit): New patterns.
|
||
|
(setbit, clrbit, notbit dynamic bit): New patterns.
|
||
|
(setbit static bit non-canonical): Remove pattern.
|
||
|
(muldf3, mulsf3, multf3): Add % to operand1.
|
||
|
(test recognizers): Use TAB efter mnemonic.
|
||
|
|
||
|
* reorg.c (update_reg_dead_notes): New function.
|
||
|
(fill_simple_delay_slots): Call new function when moving
|
||
|
instruction forward into a delay slot.
|
||
|
|
||
|
* sched.c (sched_analyze_1, sched_analyze_2): Ifdef out code added
|
||
|
for handling psuedo register equivalents that was added Dec 31 1992.
|
||
|
|
||
|
From Steve Chamberlain (sac@cygnus.com):
|
||
|
* libgcc1.c (__eqdf2, __nedf2, __gtdf2, __gedf2, __ltdf2, __ledf2,
|
||
|
__eqsf2, __nesf2, __gtsf2, __gesf2, __ltsf2, __lesf2): comparison
|
||
|
result type is now word_mode.
|
||
|
* libgcc2.c (cmpdi2, ucmpdi2): comparison result type is now
|
||
|
word_mode.
|
||
|
* optabs.c (emit_cmp_insn, emit_float_lib_cmp): libcall comparisons
|
||
|
return word_mode.
|
||
|
|
||
|
Tue Jan 19 15:28:59 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* function.c (fixup_var_refs_1): Set INSN_CODE to -1 before seeing
|
||
|
if new insn form is recognized.
|
||
|
|
||
|
* reg-stack.c (all functions): Use NULL_RTX instead of 0 for rtx
|
||
|
comparisons.
|
||
|
|
||
|
(emit_pop_insn): Emit insn with mode QImode: insn contains
|
||
|
stack-regs.
|
||
|
|
||
|
(emit_hard_swap_insn): Delete.
|
||
|
(emit_swap_insn): Merge with emit_hard_swap_insn.
|
||
|
Delete WHEN arg and change all callers.
|
||
|
If previous insn was a push from REG, omit swap.
|
||
|
If previous insn wrote reg-stack top to REG, omit swap.
|
||
|
Emit swap insn with mode QImode: insn contains stack-regs.
|
||
|
Emit swap insn after previous float insn, instead of before this
|
||
|
one.
|
||
|
|
||
|
(swap_rtx_condition): New function.
|
||
|
(compare_for_stack_reg): If op 0 of COMPARE is not a stack reg,
|
||
|
exchange ops 0 and 1 and swap cc0 user condition.
|
||
|
|
||
|
* i386.h (PREFERRED_RELOAD_CLASS): Narrow ALL_REGS to
|
||
|
GENERAL_REGS.
|
||
|
(PREFERRED_OUTPUT_RELOAD_CLASS): New macro. Narrow ALL_REGS to
|
||
|
GENERAL_REGS.
|
||
|
(SECONDARY_MEMORY_NEEDED): New macro.
|
||
|
|
||
|
* i386.md (cmpdf_cc,cmpsf_cc): Allow first operand to be a MEM.
|
||
|
Don't allow both operands to be MEM.
|
||
|
(float addM3,subM3,divM3,mulM3 recognizers): Don't allow either
|
||
|
operand to be a constant.
|
||
|
|
||
|
(all float patterns, FLOAT_EXTEND operands): Don't allow
|
||
|
GENERAL_REGS for float_extended operand.
|
||
|
(all float patterns, FLOAT operands): Change constraints to get
|
||
|
better register classification.
|
||
|
(fix_truncMN2 patterns): Likewise.
|
||
|
(floatMN2 patterns): Likewise.
|
||
|
|
||
|
Tue Jan 19 15:51:16 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.md (define_function_unit for memory): Memory is pipelined.
|
||
|
|
||
|
* pa.md (sCC patterns): Use %char notation instead of nested
|
||
|
if stmts.
|
||
|
(branch matchers): Likewise.
|
||
|
(incscc, negscc): Likewise. Add ? constraint for 3-insn
|
||
|
alternative.
|
||
|
(incscc): Split into `incscc' and `decscc' to make this really
|
||
|
match.
|
||
|
(incscc/decscc special cases): New patterns using carry bit.
|
||
|
* pa.c (print_operand): Handle 'S' and 'B' for conditions.
|
||
|
Handle 'I' for printing 'i' when CONST_INT.
|
||
|
Handle 'k' for ones-complement of CONST_INT.
|
||
|
(incscc_operator): Remove.
|
||
|
|
||
|
* pa.md (many patterns): Use canonical address format. Use %r
|
||
|
register notation. Use GEN_INT.
|
||
|
|
||
|
* pa.md (main move SF recognizer): Allow 0 for copying to
|
||
|
general register.
|
||
|
|
||
|
* pa.md (zero_extendhisi2): Remove DEFINE_EXPAND.
|
||
|
(zero_extendqihi2): Likewise.
|
||
|
(zero_extendqisi2): Likewise.
|
||
|
(comment before sign extension): Remove the lie.
|
||
|
|
||
|
* pa.h (REG_CLASS_FROM_LETTER): Remove partly incorrect PA
|
||
|
documentation.
|
||
|
|
||
|
Tue Jan 19 09:22:06 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fold-const.c (non_lvalue): Result must not be null ptr constant.
|
||
|
(omit_one_operand): Use non_lvalue.
|
||
|
(fold, case COMPOUND_EXPR): Use non_lvalue if value is 0.
|
||
|
* c-typeck.c (build_compound_expr): Use non_lvalue if value is 0.
|
||
|
|
||
|
Tue Jan 19 08:29:16 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rs6000.c (print_operand, case 'k'): New case.
|
||
|
* rs6000.md (plus of gtu patterns): Add case to handle immediates.
|
||
|
|
||
|
* rs6000.c (output_epilog): Only restore the cr's that we actually
|
||
|
used; previously, we saved and restored all of them.
|
||
|
|
||
|
* combine.c (combine_instructions): Clear reg_last_set_label.
|
||
|
|
||
|
Tue Jan 19 01:16:45 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* flow.c (find_basic_blocks): Don't mark labels in nonlocal_label_list
|
||
|
that were deleted due to having no references.
|
||
|
|
||
|
Mon Jan 18 21:02:22 1993 H.J. Lu (hlu@yardbird.eecs.wsu.edu)
|
||
|
|
||
|
* configure (--local-prefix=DIR): new flag sets $local_prefix.
|
||
|
The default is /usr/local. Put it into Makefile.
|
||
|
|
||
|
* Makefile.in (local_prefix): new prefix, the default is /usr/local.
|
||
|
(cccp.o): change LOCAL_INCLUDE_DIR to $(local_prefix)/include.
|
||
|
|
||
|
Mon Jan 18 15:29:46 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc-act.c, objc-act.h: Renamed from objc-actions.*.
|
||
|
* objc-act.c: Include objc-act.h.
|
||
|
* Makefile.in: Targets and deps changed.
|
||
|
|
||
|
* objc-actions.c (encode_method_def): Null-terminate encoding.
|
||
|
(build_ivar_list_initializer): Null-terminate type encoding.
|
||
|
|
||
|
* cccp.c (include_defaults): Do use GCC_INCLUDE_DIR for cross compiler.
|
||
|
Move TOOL_INCLUDE_DIR later if cross.
|
||
|
|
||
|
Mon Jan 18 13:39:32 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* expr.c (emit_library_call): Handle OUTGOING_REG_PARM_STACK_SPACE.
|
||
|
Use NULL_TREE instead of (tree) 0.
|
||
|
|
||
|
* expr.c (emit_move_insn, expand_expr): Fix typos in comments.
|
||
|
|
||
|
* cccp.c (initialize_builtins): Add uses of new macros
|
||
|
NO_BUILTIN_SIZE_TYPE and NO_BUILTIN_PTRDIFF_TYPE.
|
||
|
|
||
|
* i960.h (ROUND): Change macro name to ROUND_PARM.
|
||
|
* i960.c (i960_function_arg_advance, i960_function_arg): Likewise.
|
||
|
|
||
|
* stor-layout.c (make_signed_type): Consistently use
|
||
|
HOST_BITS_PER_WIDE_INT. Correct minor formatting problems.
|
||
|
(fixup_signed_type): Use HOST_BITS_PER_WIDE_INT and HOST_WIDE_INT
|
||
|
like make_signed_type does.
|
||
|
(fixup_unsigned_type): Correct minor formatting problem.
|
||
|
|
||
|
* x-linus (LANGUAGES): Delete.
|
||
|
|
||
|
Mon Jan 18 08:13:34 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* Makefile.in (stmp-headers): Delete target files before copying
|
||
|
to them.
|
||
|
|
||
|
Mon Jan 18 06:23:35 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* collect2.c (choose_temp_base, main): Fix "off by one" errors in
|
||
|
sizes of allocated strings.
|
||
|
|
||
|
Mon Jan 18 00:32:20 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gcc.c (process_command): Fix typo in last change.
|
||
|
|
||
|
Sun Jan 17 13:09:03 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (FP_REG_CLASS_P): New macro.
|
||
|
(REGISTER_MOVE_COST): Use FP_REG_CLASS_P to simplify. Make moves
|
||
|
from SAR to expensive that they should never happen.
|
||
|
|
||
|
Sun Jan 17 10:38:38 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.c (emit_move_sequence): Fix spacing.
|
||
|
(compute_zdepi_operands): Fix header comment.
|
||
|
(many functions): Use %%r register syntax. Use canonical (0,%rN)
|
||
|
address format.
|
||
|
(output_function_prologue): No need to test frame_pointer_needed
|
||
|
in else clause of `if (frame_pointer_needed)'.
|
||
|
(output_function_prologue): Test boolean merge_sp_adjust_with_store
|
||
|
for zeroness, not for equality with 1.
|
||
|
(fmpyaddoperands): Use new variable mode for mode of operands[0].
|
||
|
(fmpysuboperands): Likewise.
|
||
|
|
||
|
Fri Jan 15 16:42:30 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (LEGITIMIZE_ADDRESS): Handle (plus (mult (X) (Y)) (Z))
|
||
|
when Y is 2, 4, or 8 specially.
|
||
|
* pa.c (shadd_constant_p): New function.
|
||
|
|
||
|
* integrate.c (FIXED_BASE_PLUS_P): Fix typo.
|
||
|
|
||
|
* loop.c (move_movables): Clear INSN_CODE for each insn as
|
||
|
we perform register replacements.
|
||
|
(strength_reduce): Likewise.
|
||
|
|
||
|
Fri Jan 15 16:02:07 1993 Brendan Kehoe (brendan@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* final.c (alter_cond): Undo previous change.
|
||
|
|
||
|
Thu Jan 14 22:09:40 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* Makefile.in (stmp-headers): Avoid problems with relative
|
||
|
$(srcdir) when installing syslimits.h.
|
||
|
|
||
|
Thu Jan 14 19:20:01 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* c-decl.c (c_decode_option): Set WARN_UNINITIALIZED to 2 with
|
||
|
-Wall, being careful to preserve it if it's already set.
|
||
|
* cp-decl2.c (lang_decode_option): Likewise.
|
||
|
* toplev.c (main): Warn about using -Wuninitialized without -O.
|
||
|
|
||
|
* cccp.c (main): Trim down to the basename of what's to go in
|
||
|
PROGNAME.
|
||
|
|
||
|
* gcc.c (process_command): Only accept input files which exist and
|
||
|
can be read; prevent link phase if an input file was rejected. Be
|
||
|
careful not to check for `-l' directives.
|
||
|
(error_count): Make into a static global variable.
|
||
|
|
||
|
Thu Jan 14 18:19:35 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* t-mips, t-ultrix, t-osfrose: Change `config/' to `config/mips/'.
|
||
|
|
||
|
Thu Jan 14 16:55:11 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (CONDITIONAL_REGISTER_USAGE): Do not make %r27 a global_reg.
|
||
|
|
||
|
* pa.c (output_function_prologue): Combine stack adjustment and
|
||
|
first GR save when reasonable to do so.
|
||
|
(output_function_epilogue): Combine stack adjustment and first
|
||
|
GR restore when reasonable to do so. Avoid load/use stall for
|
||
|
RP restore in common cases.
|
||
|
|
||
|
* pa.h (LEGITIMIZE_ADDRESS): Rework to create REG and REG+D
|
||
|
addresses instead of REG+REG addresses.
|
||
|
|
||
|
Thu Jan 14 15:45:50 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/core.c (initialize_dispatch_tables): Create an entry in RECORD
|
||
|
for each class used in a given file, not just one.
|
||
|
|
||
|
Thu Jan 14 12:00:35 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* Makefile.in (INSTALL_HEADERS_DIR, FLOAT_H, CROSS_FLOAT_H): New
|
||
|
variables.
|
||
|
(INSTALLED_H): Removed.
|
||
|
(float.h): Copy from $(FLOAT_H).
|
||
|
(float.h-nat, float.h-cross): New targets.
|
||
|
(stmp-headers, stmp-fixincludes): New targets to build fixed
|
||
|
include files in build directory.
|
||
|
(all.cross, rest.encap): Depend on stmp-headers.
|
||
|
(clean): Remove the include directory and stmp-*.
|
||
|
(install-normal): Renamed from install-native.
|
||
|
(install-cross): Removed.
|
||
|
(INSTALL_TARGET): Changed to install-normal from install-native.
|
||
|
(install-headers): Install from build directory.
|
||
|
(install-include-dir, install-headers-tar,install-headers-cpio,
|
||
|
install-assert-h): New targets.
|
||
|
(install-float-h, install-limits-h, install-common-headers,
|
||
|
install-fixincludes): Removed.
|
||
|
* cross-make (INSTALL_TARGET): Don't override.
|
||
|
(FLOAT_H): New override, set to $(CROSS_FLOAT_H).
|
||
|
|
||
|
Thu Jan 14 14:17:05 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* libgcc2.c: Correct typo in comment.
|
||
|
|
||
|
* fixinc.sco, fixinc.svr4 (egrep and sed loop): Don't print
|
||
|
messages about files that need no change.
|
||
|
|
||
|
* sparc.md (muldf+1, muldf+2): Add patterns for fsmuld and fdmulq.
|
||
|
|
||
|
* sparc.c: Clarify numerous *_operand comments.
|
||
|
(SPARC_STACK_ALIGN): Delete.
|
||
|
(sparc_frw_output_function_epilogue): Delete unused variable
|
||
|
load_only_r15.
|
||
|
(sparc_frw_epilogue_delay_slots): Delete r15/fmask test.
|
||
|
* sparc.md: Document sparclite integer multiply cycle times.
|
||
|
(movdf, !TARGET_FPU): Remove tests for floating point registers.
|
||
|
(divsi3, udivsi3): Correct length attribute.
|
||
|
(ffssi2): Define for sparclite.
|
||
|
* sparc.h (CPP_SPEC): Add -mfrw support.
|
||
|
(OVERRIDE_OPTIONS): Define. Can't omit frame pointer or do pic
|
||
|
when profiling.
|
||
|
(REG_USED_SO_FAR): Delete.
|
||
|
(CONST_COSTS): Give SMALL_INT constants cost of 0. Make UDIV,
|
||
|
DIV, MOD, UMOD more expensive. Make FIX same cost as FLOAT.
|
||
|
(TARGET_FRW): Define.
|
||
|
(TARGET_DEFAULTS): Add -mfrw flag.
|
||
|
(INITIAL_FRAME_POINTER_OFFSET): Add -mfrw support.
|
||
|
(BASE_OUTGOING_VALUE_REG, BASE_INCOMING_ARG_REG): Likewise.
|
||
|
(FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise.
|
||
|
(DELAY_SLOTS_FOR_EPILOGUE, ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise.
|
||
|
(EXPAND_BUILTIN_SAVEREGS): Likewise.
|
||
|
|
||
|
* expr.c (do_tablejump): Pass 1 for unsigned flag to emit_cmp_insn.
|
||
|
|
||
|
Thu Jan 14 14:43:15 1993 Torbjorn Granlund (tege@sics.se)
|
||
|
|
||
|
* pa.c (move_operand): Allow all CONST_INTs that can be moved to
|
||
|
general registers with one insn.
|
||
|
* pa.c (pre_cint_operand): New predicate for predecrementing
|
||
|
ldwm/stwm insns.
|
||
|
* pa.c (zdepi_cint_p): New function.
|
||
|
* pa.c (depi_cint_operand): Remove.
|
||
|
* pa.c (and_mask_p): New name for consec_zeros_p. All callers
|
||
|
changed.
|
||
|
* pa.c (srcsi_operand): Removed.
|
||
|
* pa.c: Use INT_14_BITS instead of synonym SMALL_INT.
|
||
|
* pa.c (emit_move_sequence): Clean up CONST_INT case.
|
||
|
* pa.c (compute_zdepi_operands): New name for
|
||
|
compute_xdepi_operands_from_integer. Change second parm to return
|
||
|
plain integers, was RTXes.
|
||
|
* pa.c (print_operand): Handle 'Z' for 'zdepi' source used to move
|
||
|
CONST_INT.
|
||
|
|
||
|
* pa.h (CONST_OK_FOR_LETTER_P): Change meaning of 'K'. Add new
|
||
|
alternative 'N'. Use VAL_*_BITS_P macros when possible.
|
||
|
* pa.h (LEGITIMATE_CONSTANT_P) Fix comment.
|
||
|
* pa.h (FITS_14_BITS): Remove.
|
||
|
* pa.h (SMALL_INT): Remove.
|
||
|
|
||
|
* pa.md (move patterns): Reorganize pattern order. Cleanup. Merge
|
||
|
CONST_INT patterns into main patterns for SImode, HImode, QImode.
|
||
|
Add patterns to recognize predecrement cases in SImode, HImode,
|
||
|
QImode. Remove 'y' constraint from SImode recognizer.
|
||
|
(main HImode, QImode recognizers): Handle SAR move from greg.
|
||
|
Change constraints to match the SImode pattern.
|
||
|
* pa.md (cmov): Move near other conditional patterns.
|
||
|
* pa.md: Replace all occurences of srcsi_operand with move_operand.
|
||
|
Replace `ldo X(0),d' with `ldi X,d'.
|
||
|
* pa.md (rotlsi3): Remove SET_ATTRs.
|
||
|
* pa.md (rotrsi3): Likewise.
|
||
|
|
||
|
Thu Jan 14 13:33:55 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* rtl.c (copy_rtx): A MEM with constant address is not sharable.
|
||
|
Undo Dec 27 change.
|
||
|
|
||
|
Thu Jan 14 06:45:51 1993 James Van Artsdalen (jrv@goldman.gnu.ai.mit.edu)
|
||
|
|
||
|
* i386.md (cmpstr patterns): Fix mode mismatch in SET.
|
||
|
|
||
|
Wed Jan 13 16:05:07 1993 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* configure: Precompute version in generated Makefile.
|
||
|
|
||
|
* Makefile.in: (CROSS_GCC_CFLAGS, CROSS_TOOLS, REAL_LD_NAME,
|
||
|
install-cross-tools): Removed.
|
||
|
* cross-make (CROSS_GCC_CFLAGS, CROSS_TOOLS): Removed.
|
||
|
(SYSTEM_HEADER_DIR): Set to $(tooldir)/include.
|
||
|
* gcc.c: Use TOOLDIR_BASE_PREFIX, not TOOLDIR_PREFIX.
|
||
|
|
||
|
Wed Jan 13 12:04:21 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* libgcc2.c (_ffsdi2): Use the correct names for structure
|
||
|
elements of type DIunion. Return the correctly typed value.
|
||
|
|
||
|
* mips-tdump.c (print_file_desc): Correctly scale the rfd pointer.
|
||
|
Patch from ian@cygnus.com.
|
||
|
|
||
|
Wed Jan 13 10:04:26 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (ASM_OUTPUT_INTERNAL_LABEL): Fix typo.
|
||
|
|
||
|
Wed Jan 13 03:05:08 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixinc.svr4 (rpc/types.h): Change const extern to extern const.
|
||
|
|
||
|
* expr.c (expand_increment): Handle all preincrements by building
|
||
|
arithmetic and calling expand_assignment.
|
||
|
|
||
|
* stmt.c (expand_asm_operands): For clobbering memory,
|
||
|
generate (MEM (SCRATCH)) inside the CLOBBER.
|
||
|
|
||
|
* cccp.c (include_defaults):
|
||
|
Put GCC_INCLUDE_DIR just before the system dirs whose files are fixed.
|
||
|
|
||
|
* Makefile.in (risky-stage1, etc): Use $(GCC_PARTS) as what to mv.
|
||
|
|
||
|
Tue Jan 12 23:24:30 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* stor-layout.c (variable_size): Change back to NULL_PTR.
|
||
|
|
||
|
Tue Jan 12 18:59:01 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* reload1.c (reload): Clear reload_in_progress even if reloading
|
||
|
fails.
|
||
|
|
||
|
Tue Jan 12 18:32:01 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* calls.c (emit_call_1): Pass a NULL_RTX into emit_call_insn for
|
||
|
missing last arg.
|
||
|
|
||
|
* stor-layout.c (variable_size): Call expand_expr with a NULL_RTX,
|
||
|
not a NULL_PTR.
|
||
|
|
||
|
* integrate.c (const_equiv): Delete decl, since it's never defined.
|
||
|
(fold_out_const_cc0): Likewise.
|
||
|
* loop.c (delete_insn_forces): Likewise.
|
||
|
* final.c (alter_cond): Delete decl, since it's never defined.
|
||
|
|
||
|
* fold-const.c (fold): Only call force_fit_type with one arg.
|
||
|
|
||
|
* expr.c (group_insns): Make void, since it never returns an rtx.
|
||
|
|
||
|
* emit-rtl.c (emit_jump_insn_before): Call make_jump_insn_raw with
|
||
|
only one argument.
|
||
|
(emit_jump_insn_after): Likewise.
|
||
|
(emit_jump_insn): Likewise.
|
||
|
|
||
|
* dbxout.c (dbxout_type) [case FILE_TYPE, SET_TYPE]: Call with
|
||
|
missing third arg as 0.
|
||
|
|
||
|
* cse.c (fold_rtx): Call itself with missing arg INSN as NULL_RTX.
|
||
|
|
||
|
Tue Jan 12 17:53:13 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
From Fred Fish:
|
||
|
* fixinc.svr4 (stat.h): Don't depend upon specific formal
|
||
|
parameter names when locating static functions to convert
|
||
|
to prototype form. Also be more selective about what
|
||
|
strings to prepend underbars to during renaming of formal
|
||
|
parameters and local variables in static functions.
|
||
|
|
||
|
* cccp.c (main): Set signal handler for SIGPIPE.
|
||
|
(pipe_closed): New function, to handle SIGPIPE.
|
||
|
|
||
|
Tue Jan 12 17:48:13 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expr.c (compare_from_rtx): Allow simplify_relational_operation to
|
||
|
fail.
|
||
|
|
||
|
Tue Jan 12 02:52:50 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* optabs.c (init_optabs): Use plain `ffs' for SImode ffs_optab libcall.
|
||
|
|
||
|
* Makefile.in (LIB2FUNCS): Add _ffsdi2.
|
||
|
* libgcc2.c (__ffsdi2): New function.
|
||
|
|
||
|
* c-decl.c (init_decl_processing): Declare ffs as builtin.
|
||
|
|
||
|
* fixincludes (egrep and sed loop): Don't print messages about
|
||
|
files that need no change.
|
||
|
|
||
|
Mon Jan 11 17:22:16 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sparc.c (eligible_for_epilogue_delay): Delete unused variable
|
||
|
`this_function_name'.
|
||
|
(output_fp_move_double): Delete unused var `addr'.
|
||
|
(output_fp_move_quad): Likewise.
|
||
|
(fregs_ever_live): Delete unused static var.
|
||
|
(output_function_epilogue): Delete `n_fregs' and `i'.
|
||
|
(sparc_frw_output_function_prologue): Delete `regno'.
|
||
|
(sparc_frw_output_function_epilogue): Delete `load_nop'.
|
||
|
|
||
|
* reload1.c (reload): Delete unused variable inc_groups.
|
||
|
|
||
|
* sparc.h (TARGET_SWITCHES): Add no-fpu and hard-float.
|
||
|
(CONDITIONAL_REGISTER_USAGE): Define for ! TARGET_FPU.
|
||
|
(BASE_RETURN_VALUE_REG): Use reg 8 when ! TARGET_FPU.
|
||
|
(BASE_OUTGOING_VALUE_REG): Use reg 24 when ! TARGET_FPU.
|
||
|
* sparc.md (*): Make all fp patterns conditional on TARGET_FPU.
|
||
|
(movtf, movdf, movsf): Add !TARGET_FPU versions.
|
||
|
(sfmode return): Add pattern for when !TARGET_FPU.
|
||
|
(movsi+2, movsf+1): Use %@ instead of %%fp.
|
||
|
(mulsidi3, umulsidi3): Rewrite, to avoid extending constants.
|
||
|
|
||
|
* fixincludes: Do not consider //* to be a C++ comment which needs
|
||
|
to be fixed.
|
||
|
|
||
|
Mon Jan 11 15:03:41 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P): Fix typos.
|
||
|
|
||
|
Mon Jan 11 12:41:06 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/xm-svr4.h (sys_siglist): New macro.
|
||
|
|
||
|
Sun Jan 10 18:16:49 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386.md (extendsidi2,zero_extendsidi2): New patterns.
|
||
|
(adddi3,subdi3): Don't emit code for low part if known to be zero.
|
||
|
|
||
|
* i386/xm-sysv4.h (alloca): Delete - already defined in xm-i386.h.
|
||
|
|
||
|
* i386/xm-aix.h,i386/xm-sun.h: Include i386/xm-i386.h.
|
||
|
Remove redundant defines.
|
||
|
|
||
|
Sun Jan 10 18:00:17 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (GENERAL_OR_FP_OR_SNAKE_FP_REGS): New register class.
|
||
|
(LEGITIMIZE_ADDRESS): No longer show DP relocation. Simplify.
|
||
|
* pa.md (reload_insi, reload_outsi): Use new "Z" constraint instead
|
||
|
of "z" constraint.
|
||
|
(load HIGH patterns): Rewrite to not show DP relocation.
|
||
|
* pa.c (output_global_address): Handle (high (const (plus ...))).
|
||
|
(secondary_reload_class): If TARGET_KERNEL, then loading a
|
||
|
symbolic address, or the high part of a symbolic address requires
|
||
|
%r1 as a secondary reload register.
|
||
|
(emit_move_sequence, SYMBOL_REF case): If TARGET_KERNEL, then handle
|
||
|
secondary reload created for a symbolic (high (const (plus ...))).
|
||
|
No longer show DP relocation; read_only and normal operands emit the
|
||
|
same RTL now.
|
||
|
Emit the same RTL before and after reload, only change how the
|
||
|
scratch/temporary register is chosen.
|
||
|
|
||
|
Sun Jan 10 11:42:12 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (make_extraction): Don't use POS < 0 as a flag
|
||
|
that POS_RTX is to be used; instead use POS_RTX unless it is
|
||
|
nonzero. If POS_RTX is a constant, set POS and clear POS_RTX.
|
||
|
(make_compound_operation, make_field_assignment): Pass 0 for POS
|
||
|
instead of -1 when POS_RTX is nonzero.
|
||
|
|
||
|
Sat Jan 9 01:34:27 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* reload1.c (reload_as_needed): Test for whether to call
|
||
|
forget_old_reloads_1 for a REG_INC note was backwards.
|
||
|
|
||
|
* config/i386/xm-i386.h (alloca): Undef before defining.
|
||
|
|
||
|
* config/i860/sysv3.h (ASM_OUTPUT_LOCAL): New override.
|
||
|
|
||
|
* gcc.c (lookup_compiler): Fix special code for `-' suffix.
|
||
|
|
||
|
* c-lex.c (yylex): Change warning msg when decimal const is unsigned.
|
||
|
|
||
|
* Makefile.in (bootstrap*): Pass BOOT_LDFLAGS down as LDFLAGS.
|
||
|
|
||
|
* Makefile.in (install-dir): Don't create gcc-lib/include.
|
||
|
|
||
|
* objc-actions.c (init_module_descriptor):
|
||
|
Use size_in_bytes to get size of `struct objc_module'.
|
||
|
|
||
|
* c-decl.c (init_decl_processing): Use unsigned_intQI_type_node,
|
||
|
not unsigned_char_..., as index type for ..._array_type_node.
|
||
|
|
||
|
* toplev.c (really_sorry): Use progname in error message, not c++.
|
||
|
|
||
|
* optabs.c (expand_binop): For complex mult, compute res
|
||
|
in each alternative, not before.
|
||
|
|
||
|
* Makefile.in (bootstrap): Pass along CC and libdir in first compile.
|
||
|
|
||
|
* c-decl.c (pushdecl): Avoid multiple extern decl mismatch warnings
|
||
|
when previous decl is built-in.
|
||
|
|
||
|
* cccp.c (macroexpand): Before concatenated empty rest arg,
|
||
|
do copy constant chars, but delete last run of nonwhitespace chars.
|
||
|
(rescan): Handle Newline-Hyphen in expand_to_temp_buffer
|
||
|
as well as when scanning a macro body.
|
||
|
|
||
|
Sat Jan 9 09:11:25 1993 Michael Tiemann (tiemann@rtl.cygnus.com)
|
||
|
|
||
|
* varasm.c (output_constant): Handle CHAR_TYPE and BOOLEAN_TYPE like
|
||
|
INTEGER_TYPE.
|
||
|
|
||
|
Sat Jan 9 08:06:42 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* cccp.c (main): If we are creating a new dependency file with -MD
|
||
|
or -MMD, use "w" fopen mode instead of "a".
|
||
|
|
||
|
Fri Jan 8 20:58:12 1993 Brendan Kehoe (brendan@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
Cygnus<->FSF merge.
|
||
|
Thu Jan 7 18:16:05 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-parse.y (template_type): Avoid dereferencing an error_mark.
|
||
|
|
||
|
Wed Jan 6 17:43:23 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (init_decl_processing): Make flag_no_builtin avoid
|
||
|
definitions of builtin fns memcpy, memcmp, strcmp, strcpy, strlen,
|
||
|
sin, and cos. (Add sin and cos.)
|
||
|
(flag_no_builtin): Add extern decl.
|
||
|
|
||
|
* cp-decl.c (current_local_enum): New variable.
|
||
|
(start_enum): Set TREE_ADDRESSABLE on the tag here, and clear
|
||
|
current_local_enum.
|
||
|
(build_enumerator): Build the field decl here, rather than in
|
||
|
grok_enum_decls; set its TREE_CHAIN to the current_local_enum.
|
||
|
(grok_enum_decls): Chain down, setting the type.
|
||
|
|
||
|
Tue Jan 5 22:09:18 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-pt.c (tsubst): Properly demangle a method's name if it's for an
|
||
|
operator.
|
||
|
|
||
|
Tue Jan 5 15:29:40 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-method.c (build_opfncall): Make postfix/prefix ++/-- work by
|
||
|
setting the second arg to 0 when using postfix ++/--.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Forbid declaring operator= from being
|
||
|
declared as a non-member (or friend) function.
|
||
|
|
||
|
Tue Jan 5 14:26:38 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Jan 5 14:09:08 1993 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* cp-lex.c (): Propagate a change from c-lex.c.
|
||
|
|
||
|
Tue Jan 5 13:27:05 1993 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Sep 14 17:48:27 1992 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* cp-lex.c (real_yylex): For floats, use REAL_VALUES_LESS to
|
||
|
distinguish underflow from overflow. Delete special case for 0.0.
|
||
|
|
||
|
Mon Jan 4 15:26:47 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (build_array_ref): Convert the index from a reference
|
||
|
before doing any appropriate type conversions.
|
||
|
|
||
|
Wed Dec 30 15:36:18 1992 Per Bothner (bothner@cygnus.com)
|
||
|
|
||
|
* convert.c: New file. Contains the common utility routines
|
||
|
from c-convert.c and cp-cvt.c (such as convert_to_integer).
|
||
|
* convert.h: New file: declarations exported from convert.c.
|
||
|
* c-convert.c, cp-cvt.c: Correspondingly reduced.
|
||
|
* cp-cvt.c (cp_convert_to_pointer): New function, with the
|
||
|
extra hair beyond that provided by the C convert_to_pointer.
|
||
|
* Makefile.in (OBJS): Add convert.o.
|
||
|
* cp-typeck.c (build_binary_op), cp-tree.h: Add extra convert_p
|
||
|
parameter, for consistency with the C version (so we can make
|
||
|
convert_to_integer independent of C or C++).
|
||
|
* cp-cvt.c, cp-decl.c, cp-decl2.c, cp-except.c, cp-init.c,
|
||
|
cp-typeck.c, cp-parse.y: Fix calls to build_binary_op to pass
|
||
|
the new convert_p parameter (i.e. 1).
|
||
|
|
||
|
Fri Dec 18 19:19:28 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-method.c (build_overload_nested_name): Use DECL_NAME instead of
|
||
|
DECL_ASSEMBLER_NAME, since pushtag now mangles together
|
||
|
DECL_ASSEMBLER_NAME. This will make us emit `Q21D1B', not `Q221D1B'.
|
||
|
|
||
|
* cp-decl2.c (grokclassfn): Try using the local value for a nested
|
||
|
type if the IDENTIFIER_TYPE_VALUE isn't there.
|
||
|
|
||
|
Wed Dec 16 18:18:43 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (build_unary_op): Set TREE_CONSTANT on the address of
|
||
|
a function if it's static or external (i.e., staticp likes it).
|
||
|
|
||
|
Wed Dec 16 16:09:37 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (sigsegv, init_decl_processing): Give users the line
|
||
|
number and source filename on code that makes the back-end call
|
||
|
abort.
|
||
|
|
||
|
Tue Dec 15 16:50:45 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-tree.h (CLASSTYPE_NAMES): Deleted.
|
||
|
|
||
|
* cp-init.c (build_offset_ref): When getting ready to give an error
|
||
|
about something not being a member or operator, only call
|
||
|
operator_name_string when it is indeed an operator.
|
||
|
|
||
|
* cp-decl2.c (bad_specifiers): New function.
|
||
|
* cp-tree.h (bad_specifiers): Add prototype.
|
||
|
* cp-decl.c (grokdeclarator): Use it in places where we had
|
||
|
replicated code.
|
||
|
|
||
|
Tue Dec 15 04:05:54 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-lex.c (UNSET_RESERVED_WORD): Update from c-lex.c.
|
||
|
|
||
|
Tue Dec 15 01:21:44 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-lex.c (real_yylex): Convert invisible initialized char array
|
||
|
vars to string constants.
|
||
|
|
||
|
Mon Dec 14 11:38:10 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* Makefile.in: Fix a lot of dependencies on cp-lex.h and other
|
||
|
headers for cp-*.o targets.
|
||
|
|
||
|
* cp-search.c (get_first_matching_virtual): Use warning_with_decl,
|
||
|
not error_with_decl, inside code that's only ever reached with
|
||
|
-Woverloaded-virtual.
|
||
|
|
||
|
* cp-typeck.c (c_expand_return): When building the INIT_EXPR, clear
|
||
|
out the context if it's an ERROR_MARK so the back-end won't die later.
|
||
|
|
||
|
* cp-type2.c (my_friendly_abort): Don't say anything like "please
|
||
|
fix above errors", just exit quietly.
|
||
|
|
||
|
* cp-lex.h (enum rid): Reordered for improved speed in grokdeclarator
|
||
|
when it does its linear search. RID_WCHAR is no longer in the
|
||
|
search path, since it's found by hand (as are RID_INT and RID_CHAR).
|
||
|
(RID_FIRST_MODIFIER): Start at RID_EXTERN now.
|
||
|
|
||
|
* cp-parse.y (overloaddef): Warn that using `overload' is an
|
||
|
anachronism.
|
||
|
|
||
|
Wed Dec 9 08:27:13 1992 Niklas Hallqvist (niklas at della.appli.se)
|
||
|
|
||
|
* cp-decl.c (init_decl_processing): Make sure the "unknown type"
|
||
|
typedecl gets ignored by the debuginfo generators.
|
||
|
|
||
|
Sun Dec 13 02:38:43 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-search.c (lookup_nested_field): Check for assignment to members
|
||
|
of an enclosing class only when looking at a member, not at other
|
||
|
things (like nested types).
|
||
|
|
||
|
* cp-pt.c (type_unification): Only check that ARGS is a TREE_LIST if
|
||
|
it's non-null.
|
||
|
|
||
|
These four are from Niklas Hallqvist:
|
||
|
|
||
|
* cp-search.c (compute_visibility): Use the main variant when
|
||
|
testing if a member function belongs in the current class.
|
||
|
|
||
|
* cp-call.c (build_method_call): Don't look for constructors
|
||
|
called by initialization inside class methods in the classes'
|
||
|
bases (as opposed to inherited methods).
|
||
|
|
||
|
* cp-typeck.c (convert_for_initialization): In the case of
|
||
|
templates, make sure build_method_call knows which instantiation
|
||
|
of the class template we're initializing an object of.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Instead of an assert, return a
|
||
|
NULL_TREE if the return_type's not return_ctor.
|
||
|
|
||
|
Sat Dec 12 23:52:25 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-dem.c (cplus_demangle): Recognize 'S' for signed char.
|
||
|
(do_cuv_prefix): Print out "signed" for it.
|
||
|
|
||
|
Fri Dec 11 19:36:36 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-cvt.c (convert_to_reference): Fix a typo about when to return
|
||
|
the result of a type conversion.
|
||
|
|
||
|
Tue Dec 8 20:05:25 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-cvt.c (convert_to_reference): If a conversion can be found via
|
||
|
a constructor, then use it.
|
||
|
|
||
|
Fri Dec 4 13:53:01 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-lex.c (init_lex): Delete inits for CARD_EXPR and SET_LE_EXPR,
|
||
|
since we never actually use them.
|
||
|
|
||
|
Thu Dec 3 19:20:14 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c: Include sys/types.h for systems that need things for
|
||
|
signal.h.
|
||
|
|
||
|
Wed Dec 2 15:51:34 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-call.c (build_method_call): Don't call abort for pure virtual
|
||
|
methods, instead, call the user-defined method. Addresses of pure
|
||
|
virtual methods are probably still wrong.
|
||
|
|
||
|
Wed Dec 2 14:44:41 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-call.c (convert_harshness): If parm's null for a reference (as
|
||
|
can be passed in), return 0.
|
||
|
|
||
|
Tue Dec 1 18:05:20 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Make member initialization be a
|
||
|
warning, not an error. Only issue it if not -pedantic, since
|
||
|
grokfield will issue an error when pedantic. Only warn about
|
||
|
constant members being initialized if `-ansi' is being used.
|
||
|
(finish_decl): Only complain about uninitialized const's that aren't
|
||
|
members when acting -pedantic, since we'll have already issued the
|
||
|
error about initializing a field.
|
||
|
|
||
|
* cp-type2.c (build_functional_cast): Revert change of Nov 2,
|
||
|
concerning clearing the TREE_VALUE of a default parameter.
|
||
|
|
||
|
Tue Dec 1 11:09:50 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-call.c (build_method_call): When looking for a default arg
|
||
|
initialized by a ctor, be careful of a null ref w/ operand 1.
|
||
|
|
||
|
* cp-method.c (icat): Handle an argument of `1' first, since it's
|
||
|
the most common case.
|
||
|
|
||
|
Tue Dec 1 02:36:28 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (get_first_matching_virtual): Only set the
|
||
|
DECL_CONTEXT if the new context is a an unambiguous parent of the
|
||
|
previous context.
|
||
|
|
||
|
Tue Dec 1 02:20:32 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Wed Nov 25 18:25:06 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (pushdecl): Clear DECL_CONTEXT for local declarations.
|
||
|
|
||
|
Mon Nov 30 15:36:43 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (finish_decl): Only complain about uninitialized consts
|
||
|
in the case where we haven't seen a previous decl/init of it.
|
||
|
|
||
|
Thu Nov 26 11:22:12 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* c++: Put a newline after for arg and before do, as ``for arg do''
|
||
|
is not accepted by all shells.
|
||
|
|
||
|
Mon Nov 23 13:21:43 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* c++ (-lm): Also recognize -lmath as a math library.
|
||
|
|
||
|
* c++ (first): Only shift if $first is no, on the chance we got no
|
||
|
arguments at all. If we didn't get anything, say so (since -lg++
|
||
|
will fake out the gcc driver into thinking we want to do something).
|
||
|
|
||
|
* cp-parse.y (paren_expr_or_null): New rule to emit an error when an
|
||
|
empty condition is used when it shouldn't.
|
||
|
(simple_if, stmt): Use it for `if', `while', and `do'.
|
||
|
|
||
|
* cp-decl.c (start_decl): If grokdeclarator returns a
|
||
|
void_type_node, return a NULL_TREE.
|
||
|
|
||
|
* cp-typeck.c (build_modify_expr_1): When calling build_opfncall for
|
||
|
`operator=', use make_node to create a plain NOP_EXPR for it to use,
|
||
|
rather than trying to pass NOP_EXPR down hoping it gets there intact.
|
||
|
(build_modify_expr): Ditto.
|
||
|
* cp-method.c (build_opfncall): Use TREE_CODE on ARG3 for a
|
||
|
MODIFY_EXPR, since it'll be coming in properly as a tree now.
|
||
|
|
||
|
Sat Nov 21 02:33:28 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-init.c (expand_default_init): Clear DECL_REGISTER if we're
|
||
|
going to call a ctor, otherwise we may end up generating bogus and
|
||
|
confusing error messages about taking the addr of something declared
|
||
|
to be `register'.
|
||
|
|
||
|
* cp-typeck.c (build_x_function_call): Recognize a ptr-to-method
|
||
|
that is being passed in as a function argument or as part of
|
||
|
a COMPONENT_REF.
|
||
|
(build_indirect_ref): If ERRORSTRING is NULL (it's passed in that
|
||
|
way in many places), then don't try to use it.
|
||
|
|
||
|
Sat Nov 21 01:49:34 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
Work towards 64-bit support, and still more housecleaning.
|
||
|
|
||
|
* cp-*.[cy]: For all functions and variables, pass/initialize/compare
|
||
|
NULL_TREE, not 0, where appropriate. Cast comparisons against 0
|
||
|
with the proper pointer types, where appropriate. Fix all passing
|
||
|
of NULLs where there should be NULL_TREEs. Don't include
|
||
|
cp-class.h anywhere. In many places, pass the missing fifth arg
|
||
|
to build_opfncall as NULL_TREE.
|
||
|
* cp-tree.h: Add decls with prototypes for prettymuch every function
|
||
|
in the C++ front-end. Include cp-class.h here.
|
||
|
* cp-call.c: (build_function_call_maybe, unary_complex_lvalue,
|
||
|
convert_harshness): Don't declare.
|
||
|
(explained): Initialize to 0.
|
||
|
(build_field_call): Give build_opfncall its fifth arg (NULL_TREE).
|
||
|
(build_method_call, build_overload_call_real): Don't declare
|
||
|
rank_for_overload.
|
||
|
* cp-class.c (lookup_tag_current_binding_level,
|
||
|
do_inline_function_hair): Don't declare.
|
||
|
(get_vfield_name): Add prototype for static fn.
|
||
|
(leftmost_baseclasses): Disable, never used.
|
||
|
(constructor_name): Don't declare.
|
||
|
(finish_struct): Delete arg EMPTY, never used. Change all callers.
|
||
|
Disable set of leftmost_baseclasses, since it's never used anywhere.
|
||
|
(pushclass): Don't declare declare_uninstantiated_type_level.
|
||
|
* cp-cvt.c (NULL): Undef first.
|
||
|
(build_up_references): Cast return of error_not_base_type to `tree'.
|
||
|
(convert_to_reference): Delete useless variable rval1.
|
||
|
(convert_to_integer): Don't declare build_binary_op_nodefault or
|
||
|
build_unary_op.
|
||
|
(build_type_conversion): Don't declare default_conversion.
|
||
|
* cp-decl.c (many extern funs): Don't declare.
|
||
|
(grokparms, lookup_name_current_level, lookup_nested_type,
|
||
|
redeclaration_error_message, parmlist_is_random,
|
||
|
grok_op_properties, expand_static_int, deactivate_exception_cleanups,
|
||
|
revert_static_member_fn): Declare static fns w/ prototypes.
|
||
|
(pushlevel): Cast passing of NEWLEVEL to an int.
|
||
|
(poplevel, poplevel_class, finish_method): Cast first two args of
|
||
|
GNU_xref_end_scope to HOST_WIDE_INT.
|
||
|
(duplicate_decls): Pass third arg to compexcepttypes (0).
|
||
|
(grokvardecl): Delete arg CTYPE, never used. Change all callers.
|
||
|
Delete unused local var block_previously_created.
|
||
|
* cp-decl2.c (substitute_nice_name): Don't declare decl_as_string.
|
||
|
(grokclassfn): Delete unused local var name.
|
||
|
(check_classfn): Delete unused arg FLAGS. Change all callers.
|
||
|
(grokfield): Pass digest_init only 3 args, not 6 (that's in the C
|
||
|
front end, dammit).
|
||
|
(coerce_new_type, coerce_delete_type): Delete first arg CTYPE, it's
|
||
|
never used. Change all callers.
|
||
|
* cp-dem.c (cplus_demangle): Delete unused var non_empty.
|
||
|
(NULL): Undef first.
|
||
|
* cp-except.c: (call_to_unhandled_exception): Add decl of
|
||
|
combine_strings.
|
||
|
(init_exception_processing): Add decls of build_function_type and
|
||
|
define_function.
|
||
|
* cp-gc.c (define_function): Add extern decl.
|
||
|
* cp-init.c (is_aggr_typedef): Delete extern decl. Add type for
|
||
|
argument OR_ELSE.
|
||
|
(build_new): Don't declare require_complete_type.
|
||
|
(build_vec_delete): Only pass 6 args, not 7.
|
||
|
* cp-lex.c (init_lex): Don't declare init_parse or
|
||
|
lang_printable_name.
|
||
|
(cons_up_default_function): Don't declare constructor_name.
|
||
|
(compiler_error): Declare args V and V2 to be HOST_WIDE_INT.
|
||
|
* cp-method.c (index, rindex): Don't declare.
|
||
|
* cp-parse.y (unary_expr): Cast first arg to build_x_unary_op to
|
||
|
be of enum tree_code type. For every call to build_new, pass its
|
||
|
fourth arg as a comparison of $$ against NULL_TREE, instead of
|
||
|
just passing it in.
|
||
|
(combine_strings, truthvalue_conversion): Add extern decls.
|
||
|
(structsp): Pass lookup_name its missing second arg (0).
|
||
|
(component_decl): Pass 5, not 6, args to grokfield.
|
||
|
(ansi_except_stmts): Delete decls of ansi_expand_start_match and
|
||
|
cplus_exception_name.
|
||
|
* cp-pt.c (mangle_class_name_for_template): Delete decl of
|
||
|
type_as_string.
|
||
|
* cp-search.c (get_binfo): Declare third arg PROTECT as int.
|
||
|
(get_binfo2, get_binfo2_recursive): Make static.
|
||
|
(get_base_distance): Cast DEPTH and IS_PRIVATE to ints, not
|
||
|
HOST_WIDE_INTs.
|
||
|
(get_baselinks): Delete decl of hash_tree_cons.
|
||
|
* cp-spew.c (probe_obstack): Make static. Compare NLEVELS != 0,
|
||
|
not > 0, since it's unsigned.
|
||
|
* cp-tree.c (list_hash_lookup_or_cons): Don't declare constructor_name.
|
||
|
* cp-type2.c (digest_init, incomplete_type_error,
|
||
|
readonly_warning_or_error, convert_for_initialization): Don't delete.
|
||
|
(error_with_aggr_type): Declare third arg ARG to be HOST_WIDE_INT.
|
||
|
(build_scoped_ref): Delete unused var orig_ref.
|
||
|
(build_x_arrow): Even worse, give build_opfncall its missing last
|
||
|
two arguments (as NULL_TREEs).
|
||
|
* cp-typeck.c (build_component_ref): Call build_indirect_ref with
|
||
|
its missing second arg (as a NULL).
|
||
|
(build_x_indirect_ref): Again, build_opfncall with its missing
|
||
|
last two args.
|
||
|
(build_x_function_call): Delete decl of build_overload_call_maybe.
|
||
|
(convert_for_assignment): Cast return of error_not_base_type to tree.
|
||
|
* cp-xref.c (getpwd): Declare as extern.
|
||
|
(Integer, String): Delete typedefs, rename all uses to their real
|
||
|
meanings (`int' and `char *').
|
||
|
|
||
|
Thu Nov 19 01:41:58 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-dem.c (do_builtin_type): Recognize `w', a wide character, since
|
||
|
it's now a type according to the ANSI X3J16 working paper; output
|
||
|
"wchar_t" for it.
|
||
|
(cplus_demangle): Accept `w' as an integral type.
|
||
|
|
||
|
* cp-lex.c (init_lex): Delete duplicate setting of `__pl'.
|
||
|
|
||
|
Wed Nov 18 21:29:14 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-class.c (finish_struct): Re-enable code to cut down on the size
|
||
|
of symbol output, the positives outweigh the negatives.
|
||
|
|
||
|
Wed Nov 18 19:51:59 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (dfs_walk): Move setting of
|
||
|
vbase_decl_ptr_intermediate out of #ifdef code.
|
||
|
|
||
|
Wed Nov 18 18:49:13 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Make wording on error message
|
||
|
stronger.
|
||
|
|
||
|
Tue Nov 17 17:46:11 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-search.c (CHECK_convert_pointer_to_single_level): Don't define.
|
||
|
|
||
|
Mon Oct 5 03:10:14 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
|
||
|
|
||
|
* c++ (numargs): $# was used after set was called; instead, save
|
||
|
$# in $numargs and use that value instead.
|
||
|
|
||
|
Fri Jan 8 18:11:55 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (rescan): Prevent token pasting before macro call.
|
||
|
(macroexpand): Prevent token pasting around an arg unless it's raw.
|
||
|
|
||
|
* c-lex.c (yylex): Don't allow @ in identifier outside of Objective C.
|
||
|
|
||
|
Fri Jan 8 15:03:52 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.c (plus_xor_ior_operator): New predicate.
|
||
|
|
||
|
Fri Jan 8 13:09:47 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (BYTE_LOADS_EXTEND, LOAD_EXTEND): New macros.
|
||
|
(subst, simplify_and_const_int, nonzero_bits, num_sign_bit_copies):
|
||
|
Use them.
|
||
|
(subst, case SET): Make a SIGN_EXTEND instead of paradoxical SUBREG
|
||
|
if BYTE_LOADS_SIGN_EXTEND; previously only made ZERO_EXTEND.
|
||
|
|
||
|
* function.c (assign_parm): Fix typo introduced by previous change.
|
||
|
|
||
|
* configure (486 targets): Set cpu_type to i386.
|
||
|
|
||
|
Fri Jan 8 03:48:27 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386/perform.h: New file. perform_* macros for i386.
|
||
|
* i386/386bsd.h,i386/osfrose.h,i386/mach.h (perform_*): Move
|
||
|
perform_* macros to new file.
|
||
|
|
||
|
Thu Jan 7 19:03:56 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (target_switches): Add "-mtrailing-colon"
|
||
|
(ASM_OUTPUT_LABEL): If TARGET_TRAILING_COLON then emit
|
||
|
a colon after the label.
|
||
|
(ASM_OUTPUT_INTERNAL_LABEL): Likewise.
|
||
|
(ASM_OUTPUT_COMMON): Likewise.
|
||
|
(ASM_OUTPUT_LOCAL): Likewise.
|
||
|
|
||
|
Thu Jan 7 18:21:52 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* configure: Now that all files moved, always include CPU_TYPE in
|
||
|
default file names; do not check both config and config/$cpu_type.
|
||
|
Fix a few missing directory names and remove a few redundant specs.
|
||
|
|
||
|
* config/vax, config/convex: New directories; all files moved.
|
||
|
* configure (vax-*, convex-*): Files now in subdirectories.
|
||
|
|
||
|
Thu Jan 7 17:31:36 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (specs): Use GCC_FOR_TARGET.
|
||
|
|
||
|
* Makefile.in (install-common): Install c++ and g++ only if cc1plus
|
||
|
built.
|
||
|
|
||
|
* fixincludes: fix the rename prototype on the rs6000 <stdio.h>,
|
||
|
which conflicted with c++ use of new
|
||
|
|
||
|
* c-decl.c (start_decl): Correct order of parameter declarations.
|
||
|
|
||
|
Thu Jan 7 16:52:01 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/romp/x-romp (CC): Add -U__STDC__.
|
||
|
|
||
|
Thu Jan 7 05:30:10 1993 Torbjorn Granlund (tege@sics.se)
|
||
|
|
||
|
* libgcc2.c (__udiv_w_sdiv): Replace hard-coded constants 31 with
|
||
|
(SI_TYPE_SIZE - 1).
|
||
|
|
||
|
* pa.md: Add floating point ld/st indexed patterns.
|
||
|
|
||
|
* pa.md (reg 112:SI recognizers): Remove.
|
||
|
(main move:SI recognizer): Add alternative for greg -> reg 112.
|
||
|
|
||
|
* pa.md (floatsisf2 patterns): Put output template here, don't
|
||
|
call output_floatsiXf2.
|
||
|
(floatsidf2 patterns): Likewise.
|
||
|
* pa.c (output_floatsisf2, output_floatsidf2): Remove.
|
||
|
|
||
|
* pa.md (floatunssidf2, floatunssisf2): New patterns.
|
||
|
(floatdisf2, floatdidf2): New patterns.
|
||
|
(fix_truncsfdi2, fix_truncdfdi2): New patterns.
|
||
|
(rotrsi3, rotlsi3): New patterns.
|
||
|
(shd optimizers): 2 new patterns.
|
||
|
|
||
|
* pa.md (ashlsi3, ashrsi3, lshrsi3): Rewrite not to mention SAR.
|
||
|
(zvdep32, vextrs32): New named recognizers.
|
||
|
* pa.h (FIXED_REGISTERS): Make register 112 (SAR) not fixed.
|
||
|
|
||
|
Thu Jan 7 00:38:02 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/object.m (+ error:, - error:): Use _objc_error.
|
||
|
|
||
|
* reload1.c (reload) [SMALL_REGISTER_CLASSES]: When adding an extra
|
||
|
need if the insn uses the function value return register,
|
||
|
likewise add an extra single-reg need for each class in which
|
||
|
the insn needs a group.
|
||
|
|
||
|
Wed Jan 6 20:38:20 1993 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* alpha.h (ASM_FILE_START): Change .verstamp ident for BL10.
|
||
|
* alpha.md (div/mod): Change calling sequence to agree with BL10.
|
||
|
|
||
|
Wed Jan 6 19:54:05 1993 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/arm: New directory.
|
||
|
* configure (arm-*-*): Update location of tm_file.
|
||
|
* config/pyr: New directory.
|
||
|
* configure (pyramid-*-*): Set xmake_file.
|
||
|
Update location of tm_file.
|
||
|
|
||
|
Wed Jan 6 19:03:18 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config/sparc/sol2.h (CPP_SPEC, LIB_SPEC, LINK_SPEC):
|
||
|
Add -compat-bsd conditionals.
|
||
|
|
||
|
* cccp.c (main): Implement -iwithprefix.
|
||
|
|
||
|
Wed Jan 6 18:13:13 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.c (print_operand): Always use "<>" instead of "!=".
|
||
|
|
||
|
* pa.h (target_switches): Add "-mdisable-fpregs" and
|
||
|
"-mdisable-indexing.
|
||
|
(CONDITIONAL_REGISTER_USAGE): If TARGET_DISABLE_FPREGS, then mark
|
||
|
all FP registers as fixed.
|
||
|
* pa.md (indexed loads): Disable if TARGET_DISABLE_INDEXING.
|
||
|
(mulsi3, xmpyu): Disable xmpyu if TARGET_DISABLE_FPREGS.
|
||
|
* configure: Add hppa1.X-hp-utahmach target.
|
||
|
* pa-utahmach.h, pa1-utahmach.h: New files.
|
||
|
|
||
|
Wed Jan 6 11:20:59 1993 Michael Collison (collison at osf.org)
|
||
|
|
||
|
* expr.c (convert_move): Support new modes QFmode and HFmode.
|
||
|
|
||
|
* optabs.c (init_optabs): Add optab entries for QFmode and HFmode.
|
||
|
|
||
|
* reload1.c (init_reload): Add entries in 'reload_in_optab'
|
||
|
for QFmode and HFmode.
|
||
|
|
||
|
* varasm.c (assemble_real): Use `ASM_OUTPUT_BYTE_FLOAT' and
|
||
|
`ASM_OUTPUT_SHORT_FLOAT' for QFmode and HFmode respectively.
|
||
|
|
||
|
* machmode.def: Added new modes QFmode and HFmode.
|
||
|
|
||
|
Wed Jan 6 11:29:46 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.c (fmpyaddoperands, fmpysuboperands): Cleanups suggested by
|
||
|
Tege.
|
||
|
* pa.md (fmpyadd peepholes): Cleanups suggested by Tege.
|
||
|
|
||
|
* pa.md (movqi, movhi, movsi, movdi, movsf, movdf): Discourage
|
||
|
regclass from preferring anything which involves a FP<->GR copy.
|
||
|
|
||
|
* pa.md (millicode expands): Change operand 3 in the expand
|
||
|
pattern from a clobber of a match_scratch to a clobber of a
|
||
|
match_operand with a register predicate. Make appropriate
|
||
|
change in the generated RTL.
|
||
|
(millicode insns): Clobber a match_operand with a register
|
||
|
predicate instead of a match_scratch expression.
|
||
|
* pa.c (emit_hpdiv_const): Likewise.
|
||
|
|
||
|
* pa.md (movsi, movhi, movqi, movdi): Use reg_or_0_operand
|
||
|
consistently.
|
||
|
|
||
|
Wed Jan 6 02:23:48 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cexp.y (yylex): Make tokstart an unsigned char *.
|
||
|
|
||
|
Wed Jan 6 10:46:19 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
|
||
|
|
||
|
* fixincludes (limits.h): Add #ifndef/#endif around macros that
|
||
|
are supposed to be defined in float.h.
|
||
|
|
||
|
* fixincludes, fixinc.svr4, fixinc.sco: Don't "make LIB absolute"
|
||
|
if already absolute, to avoid problems with the automounter.
|
||
|
|
||
|
Wed Jan 6 02:35:23 1993 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* cccp.c (check_preconditions, do_error, do_warning, do_xifdef):
|
||
|
Don't use signed chars to index into arrays; they might be negative.
|
||
|
|
||
|
Tue Jan 5 21:20:29 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386/386.h (DEBUG_PRINT_REG): Print regno along with printable
|
||
|
name.
|
||
|
(CONST_COSTS): Handle integer CONST_DOUBLE correctly.
|
||
|
(PREFERRED_RELOAD_CLASS): Allow integer CONST_DOUBLE into int
|
||
|
regs.
|
||
|
|
||
|
* config/fx80: New directory.
|
||
|
* configure (fx80): fx80 configuration files moved there.
|
||
|
|
||
|
* config/i960: New directory.
|
||
|
* configure (i960): i960 configuration files moved there.
|
||
|
|
||
|
* config/sparc: New directory.
|
||
|
* configure (sparc): sparc configuration files moved there.
|
||
|
* sparc/sol2.h: Renamed from spc-sol2.h.
|
||
|
* sparc/xm-sol2.h: Renamed from xm-spc-sol2.h.
|
||
|
* sparc/xm-sysv4.h: Renamed from xm-spcv4.h.
|
||
|
* sparc/sysv4.h: Renamed from sparcv4.h.
|
||
|
* sparc/x-sysv4: Renamed from x-sparcv4.
|
||
|
* sparc/*.h: Use new file names for included sparc files.
|
||
|
|
||
|
* config/i860: New directory.
|
||
|
* configure (i860): i860 configuration files moved there.
|
||
|
* i860/bsd.h: Renamed from i860b.h.
|
||
|
* i860/bsd-gas.h: Renamed from i860bg.h.
|
||
|
* i860/mach.h: Renamed from i860mach.h.
|
||
|
* i860/sysv3.h: Renamed from i860v3.h.
|
||
|
* i860/sysv4.h: Renamed from i860v4.h.
|
||
|
* i860/xm-sysv3.h: Renamed from xm-i86v3.h.
|
||
|
* i860/xm-sysv4.h: Renamed from xm-i86v4.h.
|
||
|
* i860/x-sysv3: Renamed from x-i860v3.
|
||
|
* i860/x-sysv4: Renamed from x-i860v4.
|
||
|
* i860/*.h: Use new file names for included i860 files.
|
||
|
|
||
|
* m68k/tti68k.h: Deleted.
|
||
|
* i386/x-xenix: Deleted.
|
||
|
* i860/i860g3.h: Deleted.
|
||
|
|
||
|
Tue Jan 5 23:54:36 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* config/pa: New directory.
|
||
|
* config/pa/*.h: Handle PA configuration files in new
|
||
|
subdirectory.
|
||
|
* configure (pa): Likewise.
|
||
|
|
||
|
Tue Jan 5 23:31:34 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* elxsi, gmicro, tahoe, we32k, spur: New subdirs; files moved.
|
||
|
|
||
|
* config/harris.h: Include tahoe.h from tahoe/ subdir.
|
||
|
|
||
|
Tue Jan 5 21:45:56 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixincludes (Xmu.h): Add missing ${LIB}/.
|
||
|
|
||
|
* calls.c (expand_call): Pass NULL_RTX to INIT_CUMULATIVE_ARGS.
|
||
|
* function.c (assign_parms): Pass NULL_RTX to INIT_CUMULATIVE_*.
|
||
|
* expr.c (emit_library_call): Pass NULL_TREE to INIT_CUMULATIVE_ARGS.
|
||
|
|
||
|
* Makefile.in (install-dir): Only make includedir once.
|
||
|
|
||
|
* cccp.c (do_line): Add pedantic warnings for out of range line
|
||
|
numbers, and non-space characters after the filename.
|
||
|
|
||
|
Tue Jan 5 15:09:29 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips/bsd-4-gdb.h: Renamed from mips-gbsd.h.
|
||
|
* mips/bsd-4.h: Renamed from mips-bsd.h.
|
||
|
* mips/bsd-5-gdb.h: Renamed from mips-5gbsd.h.
|
||
|
* mips/bsd-5.h: Renamed from mips-5bsd.h.
|
||
|
* mips/dec-gosf1.h: Renamed from dec-gosf1.h.
|
||
|
* mips/dec-osf1.h: Renamed from dec-osf1.h.
|
||
|
* mips/iris3-gdb.h: Renamed from irisgdb.h.
|
||
|
* mips/iris3.h: Renamed from iris.h.
|
||
|
* mips/iris4-gdb.h: Renamed from iris4g.h.
|
||
|
* mips/iris4.h: Renamed from iris4.h.
|
||
|
* mips/mips-4-gdb.h: Renamed from mips-gdb.h.
|
||
|
* mips/mips-5-gdb.h: Renamed from mips-5gdb.h.
|
||
|
* mips/mips-5-gdb.h: Renamed from mips-g5.h.
|
||
|
* mips/mips-5.h: Renamed from mips-5.h.
|
||
|
* mips/mips.c: Renamed from mips.c.
|
||
|
* mips/mips.h: Renamed from mips.h.
|
||
|
* mips/mips.md: Renamed from mips.md.
|
||
|
* mips/news4-gdb.h: Renamed from mips-gnews.h.
|
||
|
* mips/news4.h: Renamed from mips-news.h.
|
||
|
* mips/news5-gdb.h: Renamed from mips-gn5.h.
|
||
|
* mips/news5.h: Renamed from mips-n5.h.
|
||
|
* mips/nws3250v4.h: Renamed from nws3250v4.h.
|
||
|
* mips/osfrose.h: Renamed from decrose.h.
|
||
|
* mips/svr3-4-gdb.h: Renamed from mips-gsysv.h.
|
||
|
* mips/svr3-4.h: Renamed from mips-sysv.h.
|
||
|
* mips/svr3-5-gdb.h: Renamed from mips-5gsysv.h.
|
||
|
* mips/svr3-5.h: Renamed from mips-5sysv.h.
|
||
|
* mips/svr4-4-gdb.h: Renamed from mips-gsvr4.h.
|
||
|
* mips/svr4-4.h: Renamed from mips-svr4.h.
|
||
|
* mips/svr4-5-gdb.h: Renamed from mips-5g4.h.
|
||
|
* mips/svr4-5.h: Renamed from mips-5svr4.h.
|
||
|
* mips/t-mips: Renamed from t-mips.
|
||
|
* mips/t-osfrose: Renamed from t-decrose.
|
||
|
* mips/t-ultrix: Renamed from t-decstatn.
|
||
|
* mips/ultrix-gdb.h: Renamed from decstabs.h.
|
||
|
* mips/ultrix.h: Renamed from decstatn.h.
|
||
|
* mips/x-dec-osf1: Renamed from x-dec-osf1.
|
||
|
* mips/x-mips: Renamed from x-mips.
|
||
|
* mips/x-nws3250v4: Renamed from x-nws3250v4.
|
||
|
* mips/x-osfrose: Renamed from x-decrose.
|
||
|
* mips/x-sysv: Renamed from x-mipsv.
|
||
|
* mips/x-ultrix: Renamed from x-decstatn.
|
||
|
* mips/xm-iris3.h: Renamed from xm-iris.h.
|
||
|
* mips/xm-iris4.h: Renamed from xm-irix4.h.
|
||
|
* mips/xm-mips.h: Renamed from xm-mips.h.
|
||
|
* mips/xm-news.h: Renamed from xm-mipsnews.h.
|
||
|
* mips/xm-sysv.h: Renamed from xm-umips.h.
|
||
|
|
||
|
* mips/* Modify include files as needed for the MIPS files being
|
||
|
in the config/mips subdirectory.
|
||
|
|
||
|
* halfpic.h, halfpic.c: Eliminate unknown symbol errors when
|
||
|
linking the gen* programs for {i386,dec} OSF/rose, by using BSS
|
||
|
variables instead of extern.
|
||
|
|
||
|
Tue Jan 5 00:29:45 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-typeck.c (c_sizeof): Call force_fit_type only for INTEGER_CST.
|
||
|
|
||
|
* objc/core.c (_objc_alloc): Renamed from _alloc.
|
||
|
(_objc_dealloc, _objc_realloc, _objc_copy, _objc_error): Likewise.
|
||
|
* objc/objc.h: Decls renamed also.
|
||
|
* objc/objc-proto.h: Uses renamed also.
|
||
|
|
||
|
* config.sub ($os alternatives for sco and isc):
|
||
|
Preserve the specified os version if any.
|
||
|
Each alternative handles both 386 and 486, preserving distinction.
|
||
|
($basic_machine alternatives for sco and isc): Deleted.
|
||
|
(i[34]86v32, i[34]86v, i[34]86v4):
|
||
|
Handle both cpus together, preserving distinction.
|
||
|
|
||
|
Mon Jan 4 20:59:37 1993 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* config/ns32k: New directory.
|
||
|
* configure (ns32k): ns32k configuration files moved there.
|
||
|
|
||
|
* ns32k/*.h: Use new file names for included ns32k files.
|
||
|
|
||
|
* config/m68k: New directory.
|
||
|
* configure (m68k): m68k configuration files moved there.
|
||
|
|
||
|
* m68k/sgs.h: Renamed from m68ksgs.h.
|
||
|
|
||
|
* m68k/*.h: Use new file names for included m68k files.
|
||
|
|
||
|
Mon Jan 4 18:06:31 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* configure (i386-osfrose): Rename i386 OSF/rose files to
|
||
|
osfrose.h, t-osfrose.h, and x-osfrose.h.
|
||
|
|
||
|
* i386/osfrose.h: Renamed from i386/rose.h.
|
||
|
* i386/t-osfrose: Renamed from i386/t-rose.
|
||
|
* i386/x-osfrose: Renamed from i386/x-rose.
|
||
|
|
||
|
Mon Jan 4 11:03:11 1993 Torbjorn Granlund (tege@gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (install-common-headers): Pipe grep output to /dev/null.
|
||
|
|
||
|
Mon Jan 4 01:12:48 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* i386/bsd.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL):
|
||
|
Alternate definitions if NO_UNDERSCORES.
|
||
|
|
||
|
* c-parse.in (component_declarator):
|
||
|
Allow attribute after nameless field.
|
||
|
|
||
|
* fixincludes (making dirs and links): If we already made subdirs
|
||
|
for a dir foo and foo turns out to be a symlink outside /usr/include,
|
||
|
after we have made a dir for it in ./root/, make similar subdirs there.
|
||
|
|
||
|
Sun Jan 3 07:28:32 1992 Karl Berry (karl@red.cs.umb.edu)
|
||
|
|
||
|
* x-romp (CC): Add -w.
|
||
|
|
||
|
Sun Jan 3 21:19:50 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (JUMP_TABLES_IN_TEXT_SECTION): Define.
|
||
|
|
||
|
* jump.c (jump_optimize, clause for `if (foo) b++'):
|
||
|
Do this regardless of BRANCH_COST if HAVE_incscc is defined.
|
||
|
* pa.md (scc insn): Name this pattern "scc".
|
||
|
(negscc, incscc, cmov): New patterns.
|
||
|
* pa.c (incscc_operator): New function.
|
||
|
|
||
|
* pa.h (actual_fsize, apparent_fsize): Delete unused variables.
|
||
|
|
||
|
Sun Jan 3 20:37:55 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (main): Recognize and remove .cxx as filename suffix.
|
||
|
|
||
|
Sun Jan 3 19:39:18 1993 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Bump Meissner version number to 34.
|
||
|
|
||
|
* mips.c (save_restore_insns): Don't give an error if saving an FP
|
||
|
register at stack offset 0, which occurs when the function is a
|
||
|
leaf function that uses lots of FP registers, and saves no GP
|
||
|
registers.
|
||
|
|
||
|
Sun Jan 3 19:00:29 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* local-alloc.c (block_alloc): Generalize tying so we can tie
|
||
|
any operand with the output unless some operand must be in the
|
||
|
same register as the output, in which case only try tying that
|
||
|
operand.
|
||
|
|
||
|
* rtl.c (rtx_alloc): Clear common area of rtx in a portable manner.
|
||
|
|
||
|
Sun Jan 3 13:57:33 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (CONST_COSTS): Make CONST_DOUBLES very expensive.
|
||
|
Give HIGH expressions a small cost with CONST, SYMBOL_REF,
|
||
|
and LABEL_REF being twice as expensive as HIGH.
|
||
|
|
||
|
* pa.md (fmpyadd peepholes): New peepholes to issue independent
|
||
|
floating point multiply and add instructions at the same time.
|
||
|
(fmpysub peepholes): Likewise for multiply and subtract instructions.
|
||
|
* pa.c (fmpyaddoperands): Verifys given registers are suitable for
|
||
|
use in fmpyadd instructions.
|
||
|
(fmpysuboperands): Likewise, but for fmpysub instructions.
|
||
|
|
||
|
Wed Oct 28 12:07:54 1992 Tim Moore (moore at defmacro.cs.utah.edu)
|
||
|
* pa.md (call, call_value): If flag_pic, emit restore of PIC table
|
||
|
register.
|
||
|
(call_interal, call_value_internal): Name matching insns.
|
||
|
(movsi, movhi, movqi, movdi, movsf, movdf patterns): Don't
|
||
|
match memory to memory moves.
|
||
|
|
||
|
* pa.h (FIXED_REGISTERS, CALL_USED_REGISTERS): r3 isn't fixed!
|
||
|
(REG_ALLOC_ORDER): Move r3 up in the allocation order.
|
||
|
(HAVE_ATEXIT): Define.
|
||
|
(INITIAL_FRAME_POINTER_OFFSET): compute_frame_size ()
|
||
|
now does the whole calculation, including rounding.
|
||
|
(FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Don't pass leaf_function
|
||
|
to output_function_{prologue,epilogue}.
|
||
|
(DELAY_SLOTS_FOR_EPILOGUE): Call hppa_epilogue_delay_slots ().
|
||
|
|
||
|
* pa.c (hppa_save_pic_table_rtx): New variable.
|
||
|
(finalize_pic): Setup hppa_save_pic_table_rtx..
|
||
|
(apparent_fsize): Delete variable.
|
||
|
(compute_frame_size): Many changes. Return the total frame size,
|
||
|
including space for "magic" stuff at the top of the stack and any
|
||
|
rounding for the Snake.
|
||
|
(output_function_prologue): Don't take a leaf_function argument;
|
||
|
Decide that based on frame size and frame_pointer_needed.
|
||
|
Don't emit any frame diddling code if actual_fsize is 0.
|
||
|
(output_function_epilogue): Don't take leaf_function argument.
|
||
|
Don't do anything if no frame.
|
||
|
Keep stack pointer aligned to 64 bytes before loading from old
|
||
|
frame pointer.
|
||
|
(hppa_epilogue_delay_slots): Only if there is no frame will we
|
||
|
have an empty delay slot to fill.
|
||
|
(eligible_for_epilogue_delay): Don't check "leaf_function" anymore.
|
||
|
|
||
|
Sun Jan 3 07:28:29 1993 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* gcc.c (putenv_from_prefixes): Use PATH_SEPARATOR.
|
||
|
Properly use JUST_MACHINE_SUFFIX when desired; always make path
|
||
|
the same as find_a_file will use.
|
||
|
|
||
|
Sat Jan 2 16:35:55 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config.sub: Translate sunos5 to solaris2, and solaris1 to sunos4.
|
||
|
|
||
|
* tree.c, tree.h (int_size_in_bytes): Change ret type back to int.
|
||
|
|
||
|
* calls.c (expand_call): Don't use int_size_in_bytes
|
||
|
for a variable-size object.
|
||
|
|
||
|
Sat Jan 2 15:16:24 1993 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-parse.in (label): Use expr_no_commas instead of expr for case
|
||
|
labels.
|
||
|
|
||
|
Sat Jan 2 03:30:10 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (gcc.o): Define TOOLDIR_BASE_PREFIX.
|
||
|
|
||
|
* gcc.c (TOOLDIR_PREFIX): Define if not defined.
|
||
|
(tooldir_prefix, tooldir_base_prefix): New variables.
|
||
|
(main): Set tooldir_prefix.
|
||
|
Add it (plus `bin' or `lib') to search paths.
|
||
|
|
||
|
* cccp.c (default_include): Look directly in TOOL_INCLUDE_DIR.
|
||
|
* protoize.c (default_include): Likewise.
|
||
|
|
||
|
* collect2.c (main): Look for `real-ld' after `gld', before `ld'.
|
||
|
In debug printout, fix typo in prev change.
|
||
|
|
||
|
Fri Jan 1 13:32:36 1992 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* Makefile.in (cccp.o, protoize.o, unprotoize.o):
|
||
|
Define TOOL_INCLUDE_DIR as $(tooldir)/include.
|
||
|
(test-protoize-simple): Define TOOL_INCLUDE_DIR as 0.
|
||
|
|
||
|
* config/i386/linux.h (STARTFILE_SPEC): Removed -L"TOOLDIR"/lib.
|
||
|
|
||
|
Fri Jan 1 06:26:11 1993 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* collect2.c: Look for tools using paths rather than a single prefix.
|
||
|
(struct prefix_list, struct path_prefix): New structures.
|
||
|
(cpath, path): New variables.
|
||
|
(find_a_file, add_prefix): New functions; simplified versions of
|
||
|
functions from gcc.c.
|
||
|
(prefix_from_env): New function.
|
||
|
(main): Get path to search for binaries from COMPILER_PATH
|
||
|
environment variable always set by gcc.c and from PATH.
|
||
|
Qualify names with target machine in cross-environment unless
|
||
|
using compiler directories.
|
||
|
Use find_a_file to find our binaries.
|
||
|
Remove use of single prefix.
|
||
|
If -debug, print strip_file_name.
|
||
|
(fork_execute): Print program we are trying to execute if -debug and
|
||
|
we can't find the file.
|
||
|
(scan_prog_file): Complain if can't find NM.
|
||
|
* Makefile.in (REAL_LD_NAME): New variable.
|
||
|
(collect2.o): Don't need STANDARD_STARTFILE_PREFIX, etc.
|
||
|
(install-cross-tools): Use REAL_LD_NAME instead of `ld' when linking
|
||
|
files from tooldir to libsubdir.
|
||
|
|
||
|
Fri Jan 1 17:51:05 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* dbxout.c (dbxout_symbol, TYPE_DECL case): Don't output tag which
|
||
|
references incomplete type.
|
||
|
|
||
|
* fixincludes (sunwindow/{win_cursor.h,win_lock.h}): Change invalid
|
||
|
#ifdef identifier `ecd.cursor' to `ecd_cursor'.
|
||
|
|
||
|
* c-typeck.c (build_binary_op): Add 'right' and 'left' to shift
|
||
|
count warnings to distinguish them from each other.
|
||
|
|
||
|
* function.c (fixup_var_refs_insn): Update last_parm_insn when
|
||
|
insns are output after it to fix it up.
|
||
|
|
||
|
* sdbout.c (plain_type_1): Distinguish some C integer types by name.
|
||
|
|
||
|
* Makefile.in (MAKEINFO): New variable, defined to `makeinfo'.
|
||
|
|
||
|
* rs6000.h (ASM_FILE_START): Switch to text section at end.
|
||
|
Output declaration for .mcount when profiling.
|
||
|
|
||
|
Fri Jan 1 12:15:42 1993 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (movqi, movhi, movsi, movdi, movsf, movdf): Fix attributes
|
||
|
which involve fp<->gr copies to match current reality.
|
||
|
(indexed loads): These should have "load" attributes, not "move".
|
||
|
|
||
|
* pa.c (output_floatsisf, output_floatsidf): Abort if presented
|
||
|
with a general register.
|
||
|
* pa.md (movdf const_couble): Fix lengths.
|
||
|
(floatsisf patterns): Likewise.
|
||
|
(floatsidf patterns): Likewise.
|
||
|
|
||
|
* pa.h (REGISTER_MOVE_COST): Make moving between FP and non-FP
|
||
|
registers more expensive.
|
||
|
|
||
|
* pa.h (TARGET_NO_BSS): Delete target switch. Delete all references.
|
||
|
|
||
|
Fri Jan 1 07:40:58 1993 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* config/m88k: New directory.
|
||
|
* configure (m88k*): Files are now in config/m88k.
|
||
|
* m88k/dgux.h, m88k/dolph.h, m88k/luna.h, m88k/sysv3.h,
|
||
|
m88k/sysv4.h, m88k/xm-sysv3.h: Include files in m88k.
|
||
|
* m88k/t-dgux, m88k/t-m88k, m88k/t-m88k, m88k/t-sysv4: Use
|
||
|
m88k/m88k-move.sh.
|
||
|
|
||
|
Thu Dec 31 17:38:43 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gcc.c (do_spec_1): Propagate failure from recursive calls.
|
||
|
|
||
|
* i386/386bsd.h (perform_*): Rename macro args to arg0, arg1.
|
||
|
|
||
|
Thu Dec 31 15:42:35 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sched.c (sched_analyze_1, sched_analyze_2): If before reloading,
|
||
|
record dependences that may be introduced by reload substituting
|
||
|
equivalents for pseudo registers.
|
||
|
|
||
|
* sched.c (sched_analyze_2): Use REG_NOTE_KIND not GET_MODE in
|
||
|
add_dependence call.
|
||
|
(sched_analyze_insn): Likewise.
|
||
|
|
||
|
* sparc.h (LIB_SPEC): When -a, include bb_link.o.
|
||
|
|
||
|
* t-sol2 (gmon.o, crt*.o): Change config to $(srcdir)/config.
|
||
|
|
||
|
* reload.c (operands_match_p): For WORDS_BIG_ENDIAN machines,
|
||
|
make multiple register operands equivalent if the last register of
|
||
|
the groups are the same.
|
||
|
(subst_reloads): Use gen_lowpart_common to change mode of
|
||
|
reloadreg.
|
||
|
* reload1.c (emit_reload_insns): Likewise.
|
||
|
|
||
|
* reload1.c (gen_input_reload): Also handle PLUS of a MEM and
|
||
|
CONSTANT specially.
|
||
|
|
||
|
* i960.h (CPP_SPEC, CC1_SPEC, ASM_SPEC, LINK_SPEC,
|
||
|
TARGET_SWITCHES): Delete support for non-existent CPU variations.
|
||
|
(ASM_SPEC, LINK_SPEC, TARGET_SWITCHES): Add support for -mlink-relax.
|
||
|
(SELECT_CC_MODE): Correct typo.
|
||
|
|
||
|
* sparc.c (print_operand): For invalid operands, call
|
||
|
output_operand_lossage instead of aborting.
|
||
|
|
||
|
* i960.md (call_internal, call_value_internal): Use 'l' for
|
||
|
match_scratch constraint not 'd'.
|
||
|
|
||
|
* function.c (assign_parms): Emit conversions into a sequence, and
|
||
|
then output the sequence after all parameters have been moved.
|
||
|
|
||
|
* optabs.c (expand_binop): Correct indentation of doubleword
|
||
|
multiply picture.
|
||
|
|
||
|
* sparc.h (TARGET_SWITCHES): Have -msparclite also clear TARGET_FPU.
|
||
|
|
||
|
* va-i960.h: Define away __extension__ if compiled by GCC v1.
|
||
|
|
||
|
* libgcc2.c (L_builtin_new): Change to L_op_new. Use new style
|
||
|
definition for __builtin_new.
|
||
|
(L_caps_New): Change to L_new_handler. Delete unused function
|
||
|
builtin_vec_new.
|
||
|
(L_builtin_del): Change to L_op_delete. Delete vfp declaration.
|
||
|
Use new style definition for __builtin_delete. Delete unused
|
||
|
function __builtin_vec_delete.
|
||
|
* Makefile.in (LIB2FUNCS): Change _builtin_new to _op_new. Change
|
||
|
_caps_New to _new_handler. Change _buildin_del to _op_delete.
|
||
|
|
||
|
* m68k.h (TARGET_SWITCHES): -m68030 does not imply -m68881.
|
||
|
|
||
|
* gcc.c (input_from_pipe): New variable.
|
||
|
(do_spec): Set/clear input_from_pipe as appropriate. Translate %|
|
||
|
to "-" if input_from_pipe is true.
|
||
|
* sparc.h (ASM_SPEC): Use %|.
|
||
|
|
||
|
* m68k.c (strict_low_part_peephole_ok): New function.
|
||
|
* m68k.md: Add peephole to eliminate unecessary clear instructions
|
||
|
in strict_low_part insn sequences.
|
||
|
|
||
|
* configure (elxsi): Move it out of the middle of the sparc section.
|
||
|
|
||
|
* unroll.c (copy_loop_body, JUMP_INSN case): Do map the body of
|
||
|
the loop branch back, then rewrite it to jump past the end of the
|
||
|
unrolled loop.
|
||
|
|
||
|
* c-decl.c (pushdecl): Check TREE_PUBLIC in addition to
|
||
|
DECL_EXTERNAL decls when looking for duplicate external declarations.
|
||
|
|
||
|
* cccp.c (multiline_string_line): New file scope static variable.
|
||
|
(rescan): Delete multiline_string_line variable definition.
|
||
|
(skip_quoted_string): Print start line number of unterminated
|
||
|
string and character constants. When see a newline: warn if
|
||
|
pedantic; delete unreachable duplicate code for traditional case;
|
||
|
set multiline_string_line.
|
||
|
|
||
|
Thu Dec 31 11:11:30 1992 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa-hpux.h (LIB_SPEC): Fix so that one can link in profiled
|
||
|
libraries under HPUX.
|
||
|
* pa-ghpux.h, pa-hpux7.h, pa-gux7.h (LIB_SPEC): Likewise.
|
||
|
|
||
|
Thu Dec 31 08:50:42 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* a29k.h (OBJECT_FORMAT_COFF): Add definition.
|
||
|
|
||
|
* rs6000/xm-rs6000.h (REAL_NM_FILE_NAME): Delete from here.
|
||
|
* rs6000/rs6000.h (REAL_NM_FILE_NAME): Put it here.
|
||
|
|
||
|
Thu Dec 31 01:53:13 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* tree.c (build_index_type): Leave TYPE_MAX_VALUE as -1 if it was;
|
||
|
don't truncate the high bits.
|
||
|
|
||
|
* Makefile.in (distdir): New target broken out from gcc.xtar.
|
||
|
Depend on $(srcdir)/INSTALL.
|
||
|
(gcc.xtar): Depend on distdir.
|
||
|
(doc): Delete dep $(srcdir)/INSTALL.
|
||
|
|
||
|
Wed Dec 30 12:54:53 1992 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386/i386.c (output_fp_cc0_set): Abort if cc0 user not found.
|
||
|
|
||
|
* i386/i386.md (movsf,movdf): Change constraints to use integer regs
|
||
|
for mem-mem copies.
|
||
|
|
||
|
* i386/i386.h (PREFERRED_RELOAD_CLASS): Don't reload CONST_DOUBLE into
|
||
|
integer regs.
|
||
|
|
||
|
* jump.c (delete_computation): reg_referenced_p wants body, not insn.
|
||
|
|
||
|
Wed Dec 30 07:03:49 1992 John F Carr (jfc at Athena.MIT.EDU)
|
||
|
|
||
|
* caller-save.c (setup_save_areas): Don't assign save area for a
|
||
|
group if some register in the group has already been assigned an
|
||
|
area.
|
||
|
|
||
|
Wed Dec 30 06:05:07 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* tree.def (TRUTH_XOR_EXPR): New tree code.
|
||
|
* expr.c (expand_expr, case TRUTH_XOR_EXPR): New case.
|
||
|
* fold-const.c (invert_truthvalue, case TRUTH_XOR_EXPR): New case.
|
||
|
(fold, case TRUTH_XOR_EXPR): New case.
|
||
|
(fold, case TRUTH_OR_EXPR, TRUTH_AND_EXPR): Check for second
|
||
|
operand of appropriate value to determine result whether or
|
||
|
not first operand is a constant.
|
||
|
* c-common.c (truthvalue_conversion): Handle TRUTH_XOR_EXPR.
|
||
|
* c-convert.c, cp-cvt.c (convert_to_integer): Likewise.
|
||
|
* c-typeck.c (build_binary_op): Likewise.
|
||
|
* cp-typeck.c (build_binary_op_nodefault): Likewise.
|
||
|
* cp-class.c (instantiate_type): Likewise.
|
||
|
* stmt.c (expand_return): Likewise.
|
||
|
|
||
|
Wed Dec 30 01:48:38 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixincludes: Chmod each copied file a+r.
|
||
|
* fixinc.svr4, fixinc.sco: Likewise.
|
||
|
|
||
|
* Makefile.in (extraclean): Quote the sharps.
|
||
|
|
||
|
* expr.c (expand_expr): In NOP_EXPR case, truncate and
|
||
|
reextend integer constants.
|
||
|
|
||
|
Tue Dec 29 18:21:06 1992 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386/i386.md (bit complement): Constrain inputs and outputs to
|
||
|
match, instead of using match_dup.
|
||
|
(zero_extract test): Reenable with separate patterns to match
|
||
|
QImode and SImode zero_extract.
|
||
|
|
||
|
* i386/sysv3.h: Renamed from i386/svr3.h.
|
||
|
* i386/sysv4.h: Renamed from i386/svr4.h.
|
||
|
* i386/x-sysv3: Renamed from i386/x-svr3.
|
||
|
* i386/xm-sysv3.h: Renamed from i386/xm-svr3.h.
|
||
|
* i386/xm-sysv4.h: Renamed from i386/xm-svr4.h.
|
||
|
|
||
|
* configure (i386): Use new file names for 386 files.
|
||
|
* i386/*.h: Likewise for included files.
|
||
|
|
||
|
Tue Dec 29 18:04:13 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Avoid truncation of object sizes when bit size won't fit in a word.
|
||
|
* fold-const.c (const_binop): New arg NOTRUNC. All calls changed.
|
||
|
(size_binop): Pass 1 for NOTRUNC.
|
||
|
(force_fit_type): No longer static.
|
||
|
* tree.c (size_in_bytes): Call force_fit_type with end result.
|
||
|
(int_size_in_bytes): Avoid overflow as long as result fits.
|
||
|
Return type is now unsigned int.
|
||
|
* c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
|
||
|
Call force_fit_type with end result.
|
||
|
|
||
|
* stor-layout.c (layout_record): Avoid overflow in const_size
|
||
|
by adding into var_size instead.
|
||
|
|
||
|
Tue Dec 29 09:01:33 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* configure (m88k-dgux): Use t-m88kdgux.
|
||
|
|
||
|
Tue Dec 29 06:56:41 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* genemit.c (gen_split): Initialize _val in generated function.
|
||
|
|
||
|
Tue Dec 29 02:27:51 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (make_definition): Pass NULL as 3rd arg to do_define.
|
||
|
|
||
|
Mon Dec 28 14:56:55 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-parse.in (stmt, FOR case): Do call position_after_white_space
|
||
|
after recording the current lineno for the increment.
|
||
|
|
||
|
* config.sub: Default to bsd for *-sequent.
|
||
|
|
||
|
Mon Dec 28 06:05:12 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c: Add a few missing HOST_WIDE_INT casts.
|
||
|
Rename references to `significant' bits to be `nonzero' bits;
|
||
|
specifically the following, but also local vars and comments:
|
||
|
(reg_nonzero_bits): Renamed from reg_significant.
|
||
|
(nonzero_bits): Renamed from significant_bits.
|
||
|
(nonzero_sign_valid): Renamed from significant_valid.
|
||
|
(set_nonzero_bits_and_sign_copies): Renamed from set_significant.
|
||
|
|
||
|
* fold-const.c (fold, case BIT_IOR_EXPR): Convert the IOR of a pair
|
||
|
of shifts into a rotate when it is equivalent.
|
||
|
|
||
|
* expmed.c (expand_shift): If rotating by a constant, try both
|
||
|
directions of rotate.
|
||
|
If can't open-code a rotate, do it as a pair of shifts followed by
|
||
|
an IOR.
|
||
|
|
||
|
* combine.c (simplify_comparison, case NEG): Replace large block of
|
||
|
code with equivalent call to num_sign_bit_copies.
|
||
|
|
||
|
* expr.c (get_inner_reference): Don't look at flag_volatile.
|
||
|
(expand_expr, case INDIRECT_REF, OFFSET_REF): Likewise.
|
||
|
* c-typeck.c, cp-typeck.c (build_indirect_ref): Set volatility from
|
||
|
flag_volatile.
|
||
|
|
||
|
* i386/rose.h (OPTIMIZATION_OPTIONS): Delete; we don't want to set
|
||
|
-finline-functions for -O3 and this does nothing else useful.
|
||
|
* mips.h (OPTIMIZATION_OPTIONS): Likewise.
|
||
|
* i960.h (OPTIMIZATION_OPTIONS): Don't set -finline-functions for -O3.
|
||
|
|
||
|
Sun Dec 27 18:33:38 1992 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* config/i386: New directory.
|
||
|
* configure.bat: 386 configuration files moved to new directory.
|
||
|
* configure (i386): Likewise.
|
||
|
Delete lines that duplicate default actions of configure.
|
||
|
|
||
|
* i386/386bsd.h: Renamed from i386bsd.h.
|
||
|
* i386/att.h: Renamed from att386.h.
|
||
|
* i386/bsd.h: Renamed from bsd386.h.
|
||
|
* i386/gas.h: Renamed from i386gas.h.
|
||
|
* i386/gstabs.h: Renamed from i386gstabs.h.
|
||
|
* i386/linux.h: Renamed from i386linux.h.
|
||
|
* i386/mach.h: Renamed from i386mach.h.
|
||
|
* i386/rose.h: Renamed from i386rose.h.
|
||
|
* i386/sco.h: Renamed from i386sco.h.
|
||
|
* i386/sco4.h: Renamed from i386sco4.h.
|
||
|
* i386/seq-gas.h: Renamed from seq386gas.h.
|
||
|
* i386/sequent.h: Renamed from seq386.h.
|
||
|
* i386/sun.h: Renamed from i386sun.h.
|
||
|
* i386/svr3.h: Renamed from i386v.h.
|
||
|
* i386/svr4.h: Renamed from i386v4.h.
|
||
|
* i386/t-isc: Renamed from t-i386isc.
|
||
|
* i386/t-rose: Renamed from t-i386rose.
|
||
|
* i386/t-sco: Renamed from t-i386sco.
|
||
|
* i386/unix.h: Renamed from unx386.h.
|
||
|
* i386/x-aix: Renamed from x-aix386.
|
||
|
* i386/x-isc: Renamed from x-i386isc.
|
||
|
* i386/x-rose: Renamed from x-i386rose.
|
||
|
* i386/x-sco: Renamed from x-i386sco.
|
||
|
* i386/x-sco4: Renamed from x-i386s4.
|
||
|
* i386/x-svr3: Renamed from x-i386v.
|
||
|
* i386/xm-aix.h: Renamed from xm-aix386.h.
|
||
|
* i386/xm-dos.h: Renamed from xm-i386dos.h.
|
||
|
* i386/xm-isc.h: Renamed from xm-i386isc.h.
|
||
|
* i386/xm-sco.h: Renamed from xm-i386sco.h.
|
||
|
* i386/xm-sun.h: Renamed from xm-i386sun.h.
|
||
|
* i386/xm-svr3.h: Renamed from xm-i386v.h.
|
||
|
* i386/xm-svr4.h: Renamed from xm-i38v4.h.
|
||
|
|
||
|
* i386/*.h: Use new file names for included 386 files.
|
||
|
|
||
|
Sun Dec 27 22:02:09 1992 H.J. Lu (hlu@yardbird.eecs.wsu.edu)
|
||
|
|
||
|
* i386linux.h (CPP_SPEC): Define -D__i486__ if compile for i486.
|
||
|
(ASM_OUTPUT_ADDR_DIFF_ELT, JUMP_TABLES_IN_TEXT_SECTION):
|
||
|
Copy definitions from i386v4.h to get PIC code correct.
|
||
|
(FUNCTION_PROFILER): Copy definition from i386bsd.h.
|
||
|
(COMMENT_BEGIN, ASM_APP_ON, ASM_APP_OFF): Copy from i386bsd.h
|
||
|
to prepare for new GAS.
|
||
|
|
||
|
* Makefile.in: (gcc.o): Add $(MAYBE_TARGET_DEFAULT).
|
||
|
|
||
|
Sun Dec 27 16:33:13 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* m88k.c (block_move_loop, block_move_no_loop, block_move_sequence):
|
||
|
Always set MEM_IN_STRUCT_P. If it wasn't previously set, use BLKmode.
|
||
|
* m88k.md (BLKmode load/store patterns): New.
|
||
|
(call_block_move, call_movstrsi_loop): Allow any mode for the preload.
|
||
|
|
||
|
* m88k.c (output_file_start): Emit `requires_88110' when -m88110
|
||
|
is used with -mversion-04.00.
|
||
|
* m88k.h (OVERRIDE_OPTIONS): Allow version 04.00 default.
|
||
|
(VERSION_0400_SYNTAX, REQUIRES_88110_ASM_OP): New definitions.
|
||
|
* m88kdgux.h (ASM_FIRST_LINE): Print the version string.
|
||
|
|
||
|
* m88k.md (length attribute): Branches may be expanded to two
|
||
|
instructions by the assembler.
|
||
|
(DFmode bcnd pattern): Don't try to fill the delay slot.
|
||
|
(CCmode bbx patterns): Reverse the 1/0, not the condition.
|
||
|
|
||
|
* m88kdgux.h (ASM_SPEC): Pass -KVstring given -mversion-string.
|
||
|
|
||
|
* m88kdgux.ld, t-m88kdgux: New file.
|
||
|
* m88kdgux.h (LIB_SPEC): Add crtend.o.
|
||
|
(STARTFILE_SPEC): Add crtbegin.o, and m88kdgux.ld for COFF.
|
||
|
(CTOR_LIST_END, DTOR_LIST_END): Define as -1.
|
||
|
(DO_GLOBAL_{C,D}ORS_BODY): Ignore null entries and look for -1
|
||
|
bounds.
|
||
|
|
||
|
Sun Dec 27 16:08:04 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* hp320.h (ASM_OUTPUT_DOUBLE_OPERAND): Delete spurious space after \.
|
||
|
|
||
|
* gstddef.h [__sequent__]: #undef _PTRDIFF_T_ at beginning, if defined.
|
||
|
|
||
|
* reload1.c (emit_reload_insns): Error instead of abort
|
||
|
if an asm has a VOIDmode output operand.
|
||
|
|
||
|
* reload.c (push_reload): Move the NO_REGS abort after the
|
||
|
error check for asms, to avoid crashing for asms.
|
||
|
Fix inmode and outmode too, if they are VOID for an asm.
|
||
|
|
||
|
Sun Dec 27 10:48:10 1992 Jeffrey A Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* reorg.c (mostly_true_jump): When trying to determine
|
||
|
if the current insn is essentially a conditional return,
|
||
|
look inside of SEQUENCE insns for jumps.
|
||
|
Predict jumps to the exit test for loops as likely to be taken.
|
||
|
|
||
|
Sun Dec 27 06:53:39 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reorg.c (relax_delay_slots): Only look at JUMP_LABEL for a
|
||
|
condjump_p.
|
||
|
|
||
|
* jump.c (delete_jump): Use single_set to see if INSN just sets PC.
|
||
|
Remove code to delete previous cc0-setting insn.
|
||
|
(delete_compution): No longer conditional on #ifndef HAVE_cc0.
|
||
|
If insn uses CC0, delete previous insn that just sets CC0 for us;
|
||
|
do deletion via recursive call.
|
||
|
|
||
|
* combine.c (subst, case SET): Call recog_for_combine with OTHER_INSN,
|
||
|
not UNDOBUF.OTHER_INSN.
|
||
|
|
||
|
* genoutput.c (have_error): New variable.
|
||
|
(error): Set it.
|
||
|
(main): Test it and return FATAL_EXIT_CODE if it is set.
|
||
|
|
||
|
* emit-rtl.c (copy_rtx_if_shared): A CONST can be shared if it
|
||
|
contains a SYMBOL_REF.
|
||
|
* rtl.c (copy_rtx): Likewise.
|
||
|
A SCRATCH must be shared.
|
||
|
A MEM may be shared if it is at a constant address.
|
||
|
|
||
|
Sun Dec 27 02:48:27 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (macroexpand): Expand each macroarg first time we find a need
|
||
|
to substitute its expansion.
|
||
|
(macarg): Don't expand them here.
|
||
|
|
||
|
* expr.c (expand_expr, constructor case): If we made a stack slot,
|
||
|
set MEM_IN_STRUCT_P if the type warrants it.
|
||
|
|
||
|
* configure: When testing existence of a config file, specify $srcdir.
|
||
|
|
||
|
Sat Dec 26 18:12:08 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* tree.c (make_node, case 'c'): For INTEGER_CST, use size of
|
||
|
struct containing constant, just like for reals. Also, clean
|
||
|
up code to avoid confusing fallthrough.
|
||
|
|
||
|
* a29k/unix.h, rs6000/aix32.h, rs6000/mach.h, rs6000/xm-mach.h:
|
||
|
Include main file from subdirectory.
|
||
|
|
||
|
* config/a29k, config/alpha, config/romp, config/rs6000: New
|
||
|
directories.
|
||
|
* configure: If a file isn't in config, try in config/$cpu_type.
|
||
|
(a29k, alpha, romp, rs6000): Files moved to new machine subdirectories.
|
||
|
Delete lines that duplicate default actions of configure.
|
||
|
|
||
|
* combine.c (gen_lowpart_for_combine): Allow MODE to be wider
|
||
|
than a word in restricted circumstances.
|
||
|
|
||
|
* c-typeck.c (check_format): Using both a precision and the `0' flag
|
||
|
is only a problem on `d', `i', `o', `u', `x', and `X' conversions.
|
||
|
|
||
|
Sat Dec 26 17:05:24 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* object.h: Don't include objc.h or stdio.h.
|
||
|
Change Class_t to Class everywhere.
|
||
|
(id, nil, Nil, Class, STR, SEL, IMP, BOOL, YES, NO): Define,
|
||
|
but not if objc.h was already included.
|
||
|
[__objc_INCLUDE_GNU] (Class): Alias this to Class_t.
|
||
|
|
||
|
* object.m: Include objc.h and stdio.h before object.h.
|
||
|
|
||
|
Sat Dec 26 05:12:05 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Version 2.3.3 released.
|
||
|
|
||
|
Fri Dec 25 06:53:49 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expmed.c (store_bit_field): If VALUE needs to be narrowed, do
|
||
|
it with gen_lowpart, not an explicit SUBREG.
|
||
|
|
||
|
* a29k.md (divsf3): Fix typo in mode of DIV.
|
||
|
|
||
|
Fri Dec 25 00:03:26 1992 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* Makefile.in (install-dir): Add missing semicolon.
|
||
|
|
||
|
* i386sco4.h (_KR, _SVID, _NO_PROTOTYPE): Define if -traditional.
|
||
|
|
||
|
Thu Dec 24 15:02:29 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixinc.svr4: Don't change bitfield types to int.
|
||
|
|
||
|
* seq386.h (TARGET_DEFAULT): Override.
|
||
|
|
||
|
Wed Dec 23 20:19:17 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* i386sco4.h (CPP_SPEC): Avoid repeated def of _M_SYSV.
|
||
|
|
||
|
Tue Dec 22 15:40:08 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (store_parm_decls): Use TYPE_MAIN_VARIANT to compare types
|
||
|
when merging info from previous prototype.
|
||
|
|
||
|
* fixinc.svr4: Add special fixes for netinet/in.h and sys/endian.h.
|
||
|
|
||
|
Mon Dec 21 02:58:27 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* m68kv4.h (ASM_OUTPUT_CASE_END):
|
||
|
Use switch_table_difference_label_flag.
|
||
|
|
||
|
* configure (m68k-motorola-sysv*): Set use_collect2.
|
||
|
|
||
|
Sat Dec 19 20:19:44 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* a29k.c (secondary_reload_class): Return CR_REGS for larger than
|
||
|
word memory, and BP_REGS for part-word mem with no DW.
|
||
|
|
||
|
* a29k.md: Consistently use `&' in constraint of MATCH_SCRATCH.
|
||
|
Always use a reg as 4th arg of dmac/fmac even if ignored by insn.
|
||
|
Uses of `b' as a constraint in multi-word reload patterns should
|
||
|
be `c'.
|
||
|
|
||
|
Sat Dec 19 01:32:13 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (all.cross): Add `specs' as dep.
|
||
|
|
||
|
* build-make (CC): Delete the -V option.
|
||
|
|
||
|
* getpwd.c (getpwd): Don't get upset if ERANGE is not defined.
|
||
|
|
||
|
Fri Dec 18 20:56:59 1992 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* objc-actions.c (build_encode_expr):
|
||
|
Terminate the encode string with a null.
|
||
|
(encode_aggregate): Distinguish pointer to record from a
|
||
|
record. Output fields for record. Fix unions.
|
||
|
|
||
|
Fri Dec 18 17:17:39 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Set Meissner version # to 33.
|
||
|
(struct mips_args): Add support for passing QI/HI mode structures
|
||
|
the way the MIPS compiler passes them.
|
||
|
(SIZE_TYPE, PTRDIFF_TYPE): Define as unsigned int, and int if not
|
||
|
defined already.
|
||
|
|
||
|
* mips.c (init_cumulative_args): Use a static structure to
|
||
|
initialize the CUMULATIVE_ARGS structure.
|
||
|
(function_arg_advance): Add a newline at the end of debug output.
|
||
|
(function_arg): If a structure is passed as a QImode or HImode
|
||
|
value in a register, record the fact for the call define_expands
|
||
|
and prologue expander to move the structure into the high part of
|
||
|
the register, and back again. If debugging, print if the argument
|
||
|
is a structure.
|
||
|
(mips_expand_prologue): Shift any QI/HI structures passed back, so
|
||
|
they can be used as normal QI/HI values.
|
||
|
|
||
|
* mips.md (call): If there were any tiny structures passes as
|
||
|
QI/HI modes in registers, shift the register, so that the
|
||
|
structure value is in the high part of the register.
|
||
|
(call_value): Ditto.
|
||
|
(call_internal): Delete creating $31 rtx, since we can get it from
|
||
|
the normal insn patterns.
|
||
|
(call_value_internal): Ditto.
|
||
|
|
||
|
Fri Dec 18 05:14:14 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Make abstract virtual functions work.
|
||
|
* cp-call.c (compute_conversion_costs): Undo change of Sept 1 about
|
||
|
setting HARSHNESS to 0 re: the conversion of the first argument.
|
||
|
(build_method_call): Delete the code that redid the RTL for calling
|
||
|
the right fn, since we will now behave correctly. (Even with this,
|
||
|
we ended up calling the wrong fn---the base class, rather than the
|
||
|
derived one.)
|
||
|
|
||
|
* cp-decl2.c (grokclassfn): Try using the local value for a nested
|
||
|
type if the IDENTIFIER_TYPE_VALUE isn't there.
|
||
|
|
||
|
* cp-method.c (build_overload_nested_name): Use DECL_NAME instead of
|
||
|
DECL_ASSEMBLER_NAME, since pushtag now mangles together
|
||
|
DECL_ASSEMBLER_NAME. This will make us emit `Q21D1B', not `Q221D1B'.
|
||
|
|
||
|
Thu Dec 17 17:51:16 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (install-dir): Added missing then and semicolon.
|
||
|
|
||
|
Thu Dec 17 15:19:36 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* x-i386s4 (CC): New assignment.
|
||
|
|
||
|
Wed Dec 16 15:49:11 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc-actions.c (finish_objc) [OBJC_SELECTORS_WITHOUT_LABELS]:
|
||
|
Always call build_selector_translation_table.
|
||
|
|
||
|
* Makefile.in (install-dir):
|
||
|
If cross-compiler, create $(tooldir) and $(assertdir).
|
||
|
|
||
|
Wed Dec 16 14:19:08 1992 Richard Kenner (kenner at vlsi1.ultra.nyu)
|
||
|
|
||
|
* rs6000.h (INITIALIZE_TRAMPOLINE): Get function address and toc
|
||
|
pointer from correct place relative to FNADDR.
|
||
|
|
||
|
* varasm.c (assemble_trampoline_template): If TRAMPOLINE_SECTION
|
||
|
is defined, put the trampoline template into that section.
|
||
|
|
||
|
* alpha.h (TRAMPOLINE_SECTION): New macro.
|
||
|
|
||
|
Wed Dec 16 14:19:41 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* reload.c (get_secondary_mem): Don't save address if it isn't valid.
|
||
|
|
||
|
Wed Dec 16 13:59:17 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* varasm.c (assemble_trampoline_template):
|
||
|
Use readonly_data_section, not text_section.
|
||
|
|
||
|
Wed Dec 16 11:32:11 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Set Meissner version # to 32.
|
||
|
(compute_frame_size): Change function return type to long.
|
||
|
(epilogue_reg_mentioned_p): New function decl.
|
||
|
(mips_frame_info): Change unsigned longs to longs.
|
||
|
(ELIGIBLE_FOR_EPILOGUE_DELAY): Call epilogue_reg_mentioned_p.
|
||
|
|
||
|
* mips.c (epilogue_reg_mentioned_p): New function to return true
|
||
|
if any register used in the epilogue sequence is referenced. If
|
||
|
the stack size is greater than 32k bytes, return true for
|
||
|
registers $8 and $9, since they are used to hold temps.
|
||
|
(compute_frame_size): Change return type & variables to long.
|
||
|
(compute_frame_size): Use 1L in shifts to create GP save mask.
|
||
|
(save_restore): Merge function into save_restore_insns.
|
||
|
(save_restore_insns): Add FILE * argument, to write to the .s
|
||
|
file if non-NULL -- otherwise produce insns. Add arguments to
|
||
|
pass in that the prologue/epilogue has loaded the stack size into
|
||
|
$8 if large stack frame. Completely rewrite large stack frame
|
||
|
support, so that it doesn't abort if large stack frame, saved GP
|
||
|
registers, and no saved FP registers. If large stack frame, use
|
||
|
stack size stored in $8 if we can.
|
||
|
(function_prologue): Make tsize long.
|
||
|
(function_epilogue): Ditto.
|
||
|
(mips_expand_prologue): Ditto.
|
||
|
(mips_expand_epilogue): Ditto.
|
||
|
(mips_expand_prologue): Change call to save_restore_insns.
|
||
|
(mips_expand_epilogue): Ditto.
|
||
|
(function_epilogue): Call save_restore_insns instead of
|
||
|
save_restore.
|
||
|
|
||
|
Wed Dec 16 07:33:08 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* stmt.c (expand_goto): Set LABEL_REF_NONLOCAL_P in the LABEL_REF
|
||
|
we make in the non-local case.
|
||
|
|
||
|
* varasm.c (assemble_trampoline_template): Always put template in
|
||
|
text section.
|
||
|
|
||
|
Wed Dec 16 05:04:06 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* combine.c (try_combine): Allow for the case where I3 becomes an
|
||
|
unconditional jump when it is the last nonnote insn.
|
||
|
|
||
|
Tue Dec 15 20:30:06 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (do_pragma): Use index, not strchr.
|
||
|
|
||
|
* seq386.h (FUNCTION_PROFILER): Add missing . to label name.
|
||
|
|
||
|
* reload1.c (eliminate_regs_in_insn): Test old_body, not new_body,
|
||
|
since people have tested it that way.
|
||
|
|
||
|
* reload1.c (eliminate_regs_in_insn): Don't recopy new_body
|
||
|
if it is an asm_operands insn.
|
||
|
|
||
|
Tue Dec 15 19:42:58 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sparc.md (return peepholes): Add QImode and HImode move/return
|
||
|
patterns.
|
||
|
|
||
|
Tue Dec 15 17:42:07 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* alpha.h (ASM_SPEC): New macro.
|
||
|
|
||
|
* alpha.h (TRAMPOLINE_{TEMPLATE,SIZE}, INITIALIZE_TRAMPOLINE):
|
||
|
Make major changes to fix numerous bugs.
|
||
|
(TRANSFER_FROM_TRAMPOLINE): New macro.
|
||
|
* alpha.md: Add new UNSPEC_VOLATILE 0 to flush instruction cache.
|
||
|
|
||
|
Mon Dec 14 13:16:14 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rs6000.c (output_epilog): Support LANGUAGE_STRING values for F77,
|
||
|
Ada, and Pascal.
|
||
|
|
||
|
Sun Dec 13 16:42:26 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixinc.sco: Complete rewrite by ian@cygnus.com.
|
||
|
|
||
|
Sat Dec 12 17:51:43 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* va-alpha.h: Correctly form multi-word object.
|
||
|
|
||
|
* alpha.c (alpha_builtin_savregs): Correctly compute ARGSIZE and NREGS.
|
||
|
|
||
|
* alpha.h (FUNCTION_ARG_PASS_BY_REFERENCE): Deleted.
|
||
|
|
||
|
Sat Dec 12 08:42:43 1992 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa-hpux.h (TARGET_DEFAULT): Do not enable TARGET_SHARED_LIBS
|
||
|
by default in 2.3.3 since it doesn't really work.
|
||
|
* pa-ghpux.h, pa1-hpux.h, pa1-ghpux.h: Likewise.
|
||
|
|
||
|
* pa.md (floatsisf, floatsidf): Do not accept general registers.
|
||
|
|
||
|
Fri Dec 11 00:13:52 1992 Ian Lance Taylor (ian@cygnus.com)
|
||
|
|
||
|
* configure (i[34]86-*-sco3.2v4*): Use fixinc.sco.
|
||
|
* fixinc.sco: New file.
|
||
|
Like fixinc.svr4 but turn !__STDC__ into !__STRICT_ANSI__. Don't
|
||
|
require space after getcwd argument in stdlib.h.
|
||
|
* x-i386s4: Don't use rcc:
|
||
|
(CC, OLDCC, RCCFLAGS, CCLIBFLAGS): Vars deleted.
|
||
|
* xm-i386sco.h (ONLY_INT_FIELDS): Define if not __GNUC__.
|
||
|
(CODE_FIELD_BUG): Likewise.
|
||
|
* rtl.h (struct rtx_def) [ONLY_INT_FIELDS]: Handle CODE_FIELD_BUG.
|
||
|
|
||
|
Fri Dec 11 17:56:53 1992 Brendan Kehoe (brendan@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cp-search.c (lookup_nested_field): Check for assignment to members
|
||
|
of an enclosing class only when looking at a member, not at other
|
||
|
things (like nested types).
|
||
|
|
||
|
* cp-cvt.c (convert_to_reference): If a conversion can be found via
|
||
|
a constructor, then use it. Also fix a typo about when to
|
||
|
return the result of a type conversion.
|
||
|
|
||
|
Fri Dec 11 08:15:53 1992 James Van Artsdalen (james@bigtex.cactus.org)
|
||
|
|
||
|
* reload1.c (choose_reload_regs): Don't inherit a reload if the
|
||
|
previous reload wasn't at least as wide as the current reload.
|
||
|
|
||
|
Fri Dec 11 07:19:11 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* alpha.c (output_epilog): Remove garbage from one decl of EXTRA.
|
||
|
Subtract, not add, size from frame pointer.
|
||
|
|
||
|
* a29kunix.h (LINK_SPEC): Use -T, not -c, for new gld and change file
|
||
|
name to default.gld from default.ld.
|
||
|
|
||
|
* function.c (assign_outer_stack_local): Align proper frame offset.
|
||
|
|
||
|
* loop.c (get_condition): Check for overflow when canonicalizing
|
||
|
comparison.
|
||
|
|
||
|
Thu Dec 10 15:53:41 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* enquire.c (i_define, u_define, f_define): Add #undef before #define.
|
||
|
* fixinc.svr4 (limits.h): Add #ifndef/#endif around macros that
|
||
|
are supposed to be defined in float.h.
|
||
|
|
||
|
* combine.c (try_combine): Only use I2DEST as a scratch reg for
|
||
|
a split if it does not overlap any inputs of NEWPAT.
|
||
|
|
||
|
Thu Dec 10 10:23:28 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (get_last_value): Never use value from later insn, even
|
||
|
if reg is only set once.
|
||
|
|
||
|
* c-tree.h (IDENTIFIER_LIMBO_VALUE): Delete duplicate definition.
|
||
|
|
||
|
Thu Dec 10 08:54:03 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* i386sco4.h (CPP_PREDEFINES): Define i386 and unix here.
|
||
|
(CPP_SPEC): Not here.
|
||
|
|
||
|
Wed Dec 9 19:03:55 1992 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.h (ASM_DECLARE_FUNCTION_NAME): Correctly get the return type
|
||
|
of DECL.
|
||
|
|
||
|
* x-pa (CC): Set to "/usr/local/bin/gcc" instead of
|
||
|
"/usr/local/gcc".
|
||
|
|
||
|
Tue Dec 8 17:50:26 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Bump Meissner version number to 31.
|
||
|
(LEGITIMIZE_ADDDRESS): Split large offsets, even when not
|
||
|
optimizing. Otherwise, illegal stack offsets can be generated.
|
||
|
|
||
|
Tue Dec 8 11:55:52 1992 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (sh[123]add): Use "shadd_operand" as the predicate for
|
||
|
operand one.
|
||
|
* pa.c (shadd_operand): New function.
|
||
|
|
||
|
Tue Dec 8 08:30:13 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* hp320.h (AS_BUG_FLOATING_CONSTANT, AS_BUG_TRAILING_LABEL): New.
|
||
|
(TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Output align 1 to
|
||
|
accomodate the "trailing label" bug.
|
||
|
(ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_FLOAT_OPERAND): Define to
|
||
|
output values in hex to accomodate the "floating constant" bug.
|
||
|
(PRINT_OPERAND_FLOAT, PRINT_OPERAND): Ditto.
|
||
|
|
||
|
* gcc.c (temp_names): New variable.
|
||
|
(do_spec_1): Rewrite MKTEMP_EACH_FILE for %g/%u/%U.
|
||
|
(choose_temp_base): Abort if mktemp yields a null string.
|
||
|
|
||
|
Tue Dec 8 08:30:13 1992 Niklas Hallqvist (niklas@della.appli.se)
|
||
|
|
||
|
* integrate.c (expand_inline_function): Don't output line notes
|
||
|
for implicit formals.
|
||
|
|
||
|
Tue Dec 8 06:21:44 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* cse.c (max_uid): New variable.
|
||
|
(cse_end_of_basic_block): Use it to ignore insns made by CSE.
|
||
|
(cse_main): Set it.
|
||
|
|
||
|
Mon Dec 7 21:22:29 1992 Brendan Kehoe (brendan@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cp-init.c (do_friend): Revert change of Sept 1; it seems to have
|
||
|
broken properly emitting friends.
|
||
|
|
||
|
Mon Dec 7 19:09:25 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reload1.c (eliminate_regs_in_insn): Make another copy of all the
|
||
|
RTL if we changed something and we aren't permanently replacing.
|
||
|
|
||
|
* romp.md (reload_out{q,h}i): Write as proper PARALLEL.
|
||
|
|
||
|
Sun Dec 6 16:27:14 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* alpha.md (add-mult): Add missing `&' in constraints of kludge
|
||
|
plus/plus/mult pattern.
|
||
|
|
||
|
Sun Dec 6 16:26:42 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* optabs.c (expand_binop): Correct sign of complex quotient imagpart.
|
||
|
|
||
|
Sun Dec 6 07:59:16 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Set Meissner version # to 30.
|
||
|
(LEGITIMIZE_ADDRESS): For <reg>+<large int> addresses, rewrite so
|
||
|
that <reg> + (<large int> & ~0x7fff) is put into a pseudo reg.
|
||
|
This is to allow CSE to generate better code for repeated
|
||
|
references in the same general vicinity, such as when large stack
|
||
|
frames are used.
|
||
|
|
||
|
* config/dec-osf1.h (LINK_SPEC): Pass -call_shared, -no_archive,
|
||
|
and -exact_version to the linker. If -call_shared, do not pass
|
||
|
-non_shared to the linker.
|
||
|
* mips-5.h (LINK_SPEC): Ditto.
|
||
|
* mips-5bsd.h (LINK_SPEC): Ditto.
|
||
|
* mips-svr4.h (LINK_SPEC): Ditto.
|
||
|
* mips-sysv.h (LINK_SPEC): Ditto.
|
||
|
|
||
|
Fri Dec 4 19:50:29 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
||
|
|
||
|
* fixincludes: fix _cplusplus typo in SCO's tinfo.h
|
||
|
|
||
|
Fri Dec 4 19:22:35 1992 Randy S. Welch (randy@kcin.alphacdc.com)
|
||
|
|
||
|
* xm-plexus.h: New file.
|
||
|
* configure (m68k-plexus-sysv*): Use it.
|
||
|
|
||
|
Fri Dec 4 19:21:44 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* c-decl.c (start_function): Use TYPE_MAIN_VARIANT when comparing
|
||
|
return type with previous prototype declaration.
|
||
|
|
||
|
* cccp.c (output_line_command): Use alloca for line_cmd_buf.
|
||
|
|
||
|
Fri Dec 4 19:20:34 1992 Richard Kenner (kenner@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cse.c (cse_insn): Always pass result of canon_reg through
|
||
|
validate_change before using it in insn.
|
||
|
|
||
|
* c-decl.c, cp-decl.c (init_decl_processing): Don't use hardwired
|
||
|
sizes for the modes when making int{Q,H,S,D}I_type_mode and the
|
||
|
unsigned versions of them; the actual size depends on BITS_PER_UNIT.
|
||
|
|
||
|
Fri Dec 4 19:13:35 1992 Jonas Olsson (ljo@po.cwru.edu)
|
||
|
|
||
|
* i386bsd.h (ASM_OUTPUT_ADDR_DIFF_ELT, JUMP_TABLES_IN_TEXT_SECTION):
|
||
|
Copy definitions from i386v4.h to get PIC code correct.
|
||
|
|
||
|
Thu Dec 3 19:20:14 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c: Include sys/types.h for systems that need things for
|
||
|
signal.h.
|
||
|
|
||
|
Thu Dec 3 01:40:42 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* sparc.c (finalize_pic): Remove "*_" from GLOBAL_OFFSET_TABLE name.
|
||
|
* spc-sol2.h (ASM_SPEC): Pass "-K PIC" to assembler when pic.
|
||
|
(JUMP_TABLES_IN_TEXT_SECTION): Define.
|
||
|
(SELECT_RTX_SECTION): Define.
|
||
|
|
||
|
* fixincludes (sys/types.h): Check for [ \t]size_t not size_t.
|
||
|
|
||
|
Wed Dec 2 15:40:36 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* configure (rs6000-ibm-aix32): New target.
|
||
|
* rs6000-aix32.h: New file.
|
||
|
|
||
|
Tue Dec 1 18:05:20 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-type2.c (build_functional_cast): Revert change of Nov 2,
|
||
|
concerning clearing the TREE_VALUE of a default parameter.
|
||
|
|
||
|
Tue Dec 1 13:33:25 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* local-alloc.c (optimize_reg_copy_2): Correct reg_n_refs updates.
|
||
|
|
||
|
* Makefile.in (INSTALLED_H): Add syslimits.h.
|
||
|
|
||
|
Tue Dec 1 11:09:50 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-call.c (build_method_call): When looking for a default arg
|
||
|
initialized by a ctor, be careful of a null ref w/ operand 1.
|
||
|
|
||
|
Tue Dec 1 10:43:13 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (num_sign_bit_copies): Return 1 on failure, not 0.
|
||
|
Fix typo in last change; return 1 on failure, not BITWIDTH.
|
||
|
|
||
|
Tue Dec 1 09:39:47 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.c (function_prologue): Do not emit a .loc before the
|
||
|
function if debug level is 1. This confuses gdb.
|
||
|
|
||
|
Tue Dec 1 02:48:29 1992 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* isc.h (TARGET_DEFAULT): New macro - don't make TARGET_IEEE_FP
|
||
|
default for ISC.
|
||
|
|
||
|
Fri Nov 27 01:30:41 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Version 2.3.2 released.
|
||
|
|
||
|
* objc/core.c (searchForMethodInHierarchy):
|
||
|
If SEL or NAME is 0, return 0.
|
||
|
|
||
|
* gcc.c (LINK_LIBGCC_SPECIAL_1): New parameter.
|
||
|
* rs6000.h (LINK_LIBGCC_SPECIAL_1): Defined.
|
||
|
|
||
|
* t-hp320g (RANLIB, RANLIB_TEST, AR, AR_FLAGS):
|
||
|
Just copy value of ..._FOR_TARGET.
|
||
|
(LIBCONVERT): Use TARGET_TOOLPREFIX.
|
||
|
|
||
|
* reload.c (find_reloads) [SMALL_REGISTER_CLASSES]:
|
||
|
Don't use preferred_class for a multiword register.
|
||
|
|
||
|
* cccp.c (do_include): Initialize searchptr to 0.
|
||
|
|
||
|
Fri Nov 27 07:40:54 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (subst, make_field_assignment, num_sign_bit_copies):
|
||
|
Protect calls to significant_bits; unless we only care if the
|
||
|
result is a power of two, don't call if mode size is wider
|
||
|
than HOST_BITS_PER_WIDE_INT.
|
||
|
(extended_count, simplify_shift_const, simplify_comparison): Likewise.
|
||
|
|
||
|
Thu Nov 26 10:31:48 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gstdarg.h (va_end): #undef before the declaration.
|
||
|
|
||
|
* gstdarg.h (va_arg): Alternative definition for big-endian machines.
|
||
|
* gvarargs.h (va_arg): Copy both definitions from gstdarg.h.
|
||
|
|
||
|
* limitx.h, limit.y: Test and define _GCC_LIMITS_H_, not _LIMITS_H_.
|
||
|
|
||
|
* mips.c (mips_debugger_offset): Don't crash for unknown cases.
|
||
|
|
||
|
* c-typeck.c (build_unary_op): Call pedantic_lvalue_warning
|
||
|
for *all* cases of incrementing a cast.
|
||
|
|
||
|
* libgcc2.c (__udiv_w_sdiv): Cast 1 before shifting by 31.
|
||
|
|
||
|
* fixincludes (PWDCMD): New variable, set specially for Apollos.
|
||
|
Use it to get the working dir.
|
||
|
|
||
|
* combine.c (num_sign_bit_copies): Fix 1-off error in PLUS case.
|
||
|
|
||
|
* c++: Put newline into `for arg do'.
|
||
|
|
||
|
Thu Nov 26 08:32:20 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* expmed.c (struct algorithm): Make coeff a HOST_WIDE_INT.
|
||
|
|
||
|
* romp.c (output_epilog): Always call output_fpops.
|
||
|
|
||
|
Wed Nov 25 16:24:43 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (install-fixincludes): Use SYSTEM_HEADER_DIR.
|
||
|
|
||
|
* m68ksgs.h (ASM_OUTPUT_DOUBLE_OPERAND): Really use the operand VALUE.
|
||
|
|
||
|
* tree.h (CONSTRUCTOR_NAME_FORMAT): Let config.h override this.
|
||
|
* tower-as.h (CONSTRUCTOR_NAME_FORMAT): Defined.
|
||
|
|
||
|
* c++: Replace `for arg do' which ash can't handle.
|
||
|
|
||
|
* t-next (OTHER_FIXINCLUDES_DIRS): Delete /NextDeveloper/Headers.
|
||
|
|
||
|
* apollo68.h (HAVE_ATEXIT): Commented out.
|
||
|
|
||
|
* regclass.c: Fix typo in use of SECONDARY_INPUT_RELOAD_CLASS.
|
||
|
(copy_cost): Fix typo in use of SECONDARY_OUTPUT_RELOAD_CLASS.
|
||
|
|
||
|
Wed Nov 25 14:15:50 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* fixinc.svr4 (regexp.h): Don't add a getrnge declaration if a
|
||
|
conflicting declaration is already present.
|
||
|
|
||
|
Wed Nov 25 06:47:18 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* rs6000.h (LINK_LIBGCC_SPECIAL): No longer define.
|
||
|
|
||
|
* stmt.c (expand_value_return): Don't emit move between differing
|
||
|
modes when PROMOTE_FUNCTION_RETURN is defined; convert instead.
|
||
|
|
||
|
* integrate.c (expand_inline_function): Ensure a REG used as
|
||
|
COPY has REG_USERVAR_P set if LOC does.
|
||
|
|
||
|
* optabs.c (expand_binop, expand_twoval_binop): If we are going
|
||
|
to fail, remove any load from MEM we did due to -fforce-mem;
|
||
|
if the MEM was volatile, this will cause an extra load.
|
||
|
(expand_complex_abs): Likewise.
|
||
|
Correct use of variable LAST so it doesn't include the load
|
||
|
from MEM (to fix unrelated bug).
|
||
|
|
||
|
Tue Nov 24 00:23:39 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* i386bsd.h (FUNCTION_PROFILER): Use mcount, not _mcount.
|
||
|
|
||
|
* t-next (OTHER_FIXINCLUDES_DIRS): Leave just /LocalDeveloper/Headers
|
||
|
and /NextDeveloper/Headers.
|
||
|
|
||
|
Mon Nov 23 22:06:31 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* ns32k.md (movsi): Split alt 1 to deprecate xy classes in operand 1.
|
||
|
|
||
|
* combine.c (make_extraction): When making a low part subreg of a reg,
|
||
|
use inner_mode, not is_mode.
|
||
|
|
||
|
Mon Nov 23 21:11:13 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* romp.h (ASM_FILE_START): Stop at first blank in VERSION_STRING.
|
||
|
|
||
|
Mon Nov 23 21:09:20 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* fold-const.c (range_test): Convert the constants to the unsigned
|
||
|
type before expanding the range test.
|
||
|
|
||
|
Mon Nov 23 20:54:45 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
Mon Nov 23 13:21:43 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* c++ (first): Only shift if $first is no, on the chance we got no
|
||
|
arguments at all. If we didn't get anything, say so (since -lg++
|
||
|
will fake out the gcc driver into thinking we want to do something).
|
||
|
|
||
|
* cp-decl.c (start_decl): If grokdeclarator returns a
|
||
|
void_type_node, return a NULL_TREE.
|
||
|
|
||
|
* cp-typeck.c (build_modify_expr_1): When calling build_opfncall for
|
||
|
`operator=', use make_node to create a plain NOP_EXPR for it to use,
|
||
|
rather than trying to pass NOP_EXPR down hoping it gets there intact.
|
||
|
(build_modify_expr): Ditto.
|
||
|
* cp-parse.y (expr_no_commas): Ditto.
|
||
|
* cp-method.c (build_opfncall): Use TREE_CODE on ARG3 for a
|
||
|
MODIFY_EXPR, since it'll be coming in properly as a tree now.
|
||
|
|
||
|
Sat Nov 21 02:33:28 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-init.c (expand_default_init): Clear DECL_REGISTER if we're
|
||
|
going to call a ctor, otherwise we may end up generating bogus and
|
||
|
confusing error messages about taking the addr of something declared
|
||
|
to be `register'.
|
||
|
|
||
|
* cp-typeck.c (build_x_function_call): Recognize a ptr-to-method
|
||
|
that is being passed in as a function argument or as part of
|
||
|
a COMPONENT_REF.
|
||
|
(build_indirect_ref): If ERRORSTRING is NULL (it's passed in that
|
||
|
way in many places), then don't try to use it.
|
||
|
|
||
|
Thu Nov 19 01:41:58 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-dem.c (do_builtin_type): Recognize `w', a wide character, since
|
||
|
it's now a type according to the ANSI X3J16 working paper; output
|
||
|
"wchar_t" for it.
|
||
|
(cplus_demangle): Accept `w' as an integral type.
|
||
|
|
||
|
Wed Nov 18 21:29:14 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-class.c (finish_struct): Re-enable code to cut down on the size
|
||
|
of symbol output, the positives outweigh the negatives.
|
||
|
|
||
|
Wed Nov 18 19:51:59 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-search.c (dfs_walk): Move setting of
|
||
|
vbase_decl_ptr_intermediate out of #ifdef code.
|
||
|
|
||
|
Wed Nov 18 18:49:13 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Make wording on error message
|
||
|
stronger.
|
||
|
|
||
|
Tue Nov 17 17:46:11 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-search.c (CHECK_convert_pointer_to_single_level): Don't define.
|
||
|
|
||
|
Mon Nov 23 19:44:38 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* mot3300.h (switch_table_difference_label_flag): Define it.
|
||
|
|
||
|
* ns32k.md (addsi3): Add & for alternative 1 in operand 0.
|
||
|
|
||
|
Mon Nov 23 18:29:27 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* genattrtab.c (obstack.h): Include after sys/time.h.
|
||
|
|
||
|
* c-decl.c (duplicate_decls): For builtins, create new function
|
||
|
type instead of trying to modify old one.
|
||
|
|
||
|
Mon Nov 23 16:28:36 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* i386bsd.h (COMMENT_BEGIN): Redefine as #.
|
||
|
(ASM_APP_ON, ASM_APP_OFF): Redefine to use #.
|
||
|
|
||
|
* combine.c (num_sign_bit_copies): Inhibit x-1 special case
|
||
|
when x is a paradoxical subreg.
|
||
|
|
||
|
* xm-linux.h (malloc, calloc): Definitions deleted.
|
||
|
|
||
|
Mon Nov 23 11:52:41 1992 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa.md (sh[123]add): Use "nonmemory_operand" instead of
|
||
|
"register_operand" as the predicate for the first operand.
|
||
|
|
||
|
Mon Nov 23 00:29:27 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* gcc.c (default_compilers): Pass -i* after -U*.
|
||
|
|
||
|
Sun Nov 22 17:03:48 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* hp320.h (FUNCTION_PROFILER): Complete replacement.
|
||
|
|
||
|
* xm-hp320.h (index, rindex): Defined.
|
||
|
|
||
|
* gstddef.h: Fix prev change; test of _STDDEF_H was backwards.
|
||
|
|
||
|
Sun Nov 22 16:12:38 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* toplev.c (W_options): Delete -Wreturn-type, as it is in lang_options.
|
||
|
* c-decl.c (c_decode_option): Decode -Wreturn-type.
|
||
|
|
||
|
* c-decl.c, cp-decl.c (pushdecl): Don't inherit DECL_INITIAL when
|
||
|
redeclaring the current function.
|
||
|
|
||
|
* integrate.c (expand_inline_function): Use the original
|
||
|
declaration of the inlined function rather than a redeclaration as
|
||
|
the BLOCK_ABSTRACT_ORIGIN of the body.
|
||
|
|
||
|
Sat Nov 21 19:54:57 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* cccp.c (main): Do -D's and -A's and -U's in order specified.
|
||
|
|
||
|
* gcc.c (default_compilers): When running cpp,
|
||
|
move %{D*} and %{U*} (in that order) just before %i.
|
||
|
|
||
|
Sat Nov 21 18:24:55 1992 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
|
||
|
|
||
|
* xm-pa.h: Remove #ifdef hpux stuff.
|
||
|
(S_ISDIR): Remove.
|
||
|
* xm-pahpux.h: New file, developed from old xm-pa.h. Define
|
||
|
rindex/index.
|
||
|
* pa-hpux7.h, pa-gux7.h: New files.
|
||
|
|
||
|
* configure (hppa1.0-*-hpux*, hppa1.0-*-hpux*): Use xm-pahpux.h.
|
||
|
(hppa1.0-*-hpux7*): New alternative.
|
||
|
|
||
|
Sat Nov 21 14:10:57 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* spc-sol2.h (SWITCH_TAKES_ARG, LINK_SPEC): New override definitions.
|
||
|
|
||
|
* xm-mot3300.h (index, rindex): Defined.
|
||
|
|
||
|
Sat Nov 21 07:54:53 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h (MIPS_VERSION): Set Meissner version number to 29.
|
||
|
|
||
|
* mips.c (mips_expand_prologue): If profiling, emit an insn to
|
||
|
block other insns from being scheduled before the end of the
|
||
|
prologue.
|
||
|
|
||
|
* mips.md (blockage): New unspec_volatile insn to prevent other
|
||
|
insns from being scheduled before it.
|
||
|
|
||
|
Sat Nov 21 06:03:38 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* sdbout.c (template_name_p): New function.
|
||
|
(sdbout_record_type_name): Use it to possibly use the
|
||
|
DECL_ASSEMBLER_NAME instead of DECL_NAME if looking at a template.
|
||
|
(sdbout_symbol): Ditto.
|
||
|
|
||
|
Fri Nov 20 15:31:05 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* dbxout.c (dbxout_type): Handle need for name of a RECORD_TYPE
|
||
|
when it has none.
|
||
|
|
||
|
* configure (sparc-*-solaris2): Set broken_install.
|
||
|
|
||
|
* integrate.c (subst_constants): Inhibit special treatment of subreg
|
||
|
when the stuff inside is not a reg.
|
||
|
|
||
|
* config/plexus.h (SIZE_TYPE): Fix syntax.
|
||
|
|
||
|
* gcc.c (do_spec_1): Handle MKTEMP_EACH_FILE.
|
||
|
|
||
|
Fri Nov 20 15:10:20 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
||
|
|
||
|
* fixincludes (math.h): Get rid of inconsistent inline definitions
|
||
|
for abs that are present in HP-UX 8.0.
|
||
|
|
||
|
Fri Nov 20 10:07:48 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* collect2.c (FREAD, FWRITE): Undef these macros if they were
|
||
|
defined before including ldfcn.h.
|
||
|
|
||
|
Fri Nov 20 15:38:47 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* integrate.c (expand_inline_function): Mark all notes as integrated.
|
||
|
|
||
|
* final.c (final): When producing SDB debugging info, delete line
|
||
|
number notes from inlined functions in other files as well as
|
||
|
duplicate line number notes.
|
||
|
|
||
|
Fri Nov 20 05:24:16 1992 Jim Blandy (jimb@totoro.cs.oberlin.edu)
|
||
|
|
||
|
* config.sub: Added machines and operating systems for Emacs
|
||
|
ports, since Emacs now uses config.sub for its configuration.
|
||
|
New manufacturers recognized not to be operating systems: High
|
||
|
Level Hardware (highlevel, defaults to using BSD), Gould
|
||
|
(gould, defaults to System V), Commodore (cbm, defaults to
|
||
|
amigados), National Semiconductor (ns, defaults to Genix), and
|
||
|
Masscomp (masscomp, defaults to RTU).
|
||
|
Recognize the NS1600 (ns16k) and the Clipper (clipper) as
|
||
|
processors.
|
||
|
Recognize these processors with default manufacturers: the
|
||
|
Cydra (cydra) from Cydrome (cydrome), the XPS100 (xps100) from
|
||
|
Honeywell (honeywell), and the Orion (orion) and Orion 1/05
|
||
|
(orion105) from High Level Hardware (highlevel).
|
||
|
If the ISC operating system is given with a version number,
|
||
|
don't kill it and set it to 2.2; just have it default to 2.2
|
||
|
if omitted.
|
||
|
Make Irix SGI's default operating system, not SYSV.
|
||
|
Make BSD Encore's default, so it applies for all Encore
|
||
|
machines, not just the umax and mmax abbreviations.
|
||
|
All of Encore's machines use BSD, not just the ns32k-based
|
||
|
ones. Make it the manufacturer's default.
|
||
|
Make it possible to specify an operating system for a Gould
|
||
|
machine. Make sysv the manufacturer's default, so it applies
|
||
|
when we specify the manufacturer as well as when we omit it.
|
||
|
Add Uniplus (uniplus), Iris (iris), Xenix (xenix), and RTU
|
||
|
(rtu) as recognized operating system names.
|
||
|
|
||
|
Wed Nov 18 17:58:18 1992 Karl Berry (karl@cs.umb.edu)
|
||
|
|
||
|
* i386iscgas.h (SDB_DEBUGGING_INFO): #undef.
|
||
|
(DBX_DEBUGGING_INFO): #define.
|
||
|
(DBX_OUTPUT_MAIN_SOURCE_{DIRECTORY,FILENAME}): Override dbxout.c.
|
||
|
|
||
|
* bsd386.h (LPREFIX) [NO_UNDERSCORES]: Define as `.L'.
|
||
|
|
||
|
Wed Nov 18 13:50:43 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.c (compute_frame_size): Make sure the {gp,fp}+offset fields
|
||
|
are always initialized, even if there were no gp/fp registers
|
||
|
saved.
|
||
|
|
||
|
Wed Nov 18 09:58:50 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* a29k.md (insv): Remove constraints from operand matching
|
||
|
const_0_operand.
|
||
|
|
||
|
* regclass.c (regclass): Add missing cast from enum to int.
|
||
|
|
||
|
Wed Nov 18 09:40:01 1992 John Hassey (hassey@dg-rtp.dg.com)
|
||
|
|
||
|
* core.c (initialize_class): The class may not have an initialize
|
||
|
method.
|
||
|
|
||
|
Wed Nov 18 09:40:01 1992 Wilson Tien (wtien@urbana.mcd.mot.com)
|
||
|
|
||
|
* xm-m68kv.h (rindex, index): use strrchr and strchr instead.
|
||
|
|
||
|
Wed Nov 18 01:27:37 1992 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
|
||
|
|
||
|
* config.sub: Added Xenix operating system.
|
||
|
|
||
|
Tue Nov 17 18:32:01 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* reload.c (combine_reloads): Don't combine with a reload needed
|
||
|
for multiple things.
|
||
|
|
||
|
Mon Nov 16 08:52:52 1992 Jeffrey A. Law (law@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.c (output_move_double): Handle indirect stores to memory
|
||
|
via an auto-incremented/auto-decremented register in the same
|
||
|
manner in which loads are handled.
|
||
|
|
||
|
Thu Nov 12 21:02:59 1992 Brendan Kehoe (brendan@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
Cygnus<-->FSF merge.
|
||
|
|
||
|
Thu Nov 12 15:02:53 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* tree.h (value_member, purpose_member, binfo_member,
|
||
|
tree_int_cst_equal, tree_int_cst_lt, index_type_equal,
|
||
|
expand_decl_init): Add decls with prototypes.
|
||
|
|
||
|
* cp-decl.c (finish_decl): Don't try to use TYPE if it's an
|
||
|
error_mark_node.
|
||
|
|
||
|
* cp-decl.c (sigsegv): Set to the default handler before calling
|
||
|
anything, so we can avoid possible infinite loops. Call
|
||
|
my_friendly_abort instead of just error().
|
||
|
* cp-type2.c (my_friendly_abort): If I is 0, it's coming from sigsegv.
|
||
|
|
||
|
* cp-type2.c (my_friendly_assert): New function.
|
||
|
* cp-call.c, cp-class.c, cp-class.h, cp-cvt.c, cp-decl.c, cp-decl.h,
|
||
|
cp-decl2.c, cp-dem.c, cp-edsel.c, cp-except.c, cp-expr.c, cp-gc.c,
|
||
|
cp-hash.h, cp-init.c, cp-input.c, cp-lex.c, cp-lex.h, cp-method.c,
|
||
|
cp-pt.c, cp-search.c, cp-spew.c, cp-tree.c, cp-tree.h, cp-type2.c,
|
||
|
cp-typeck.c, cp-xref.c, cp-parse.y: Don't include assert.h, and use
|
||
|
the new function `my_friendly_assert' instead of the `assert' macro.
|
||
|
|
||
|
Wed Nov 11 22:14:51 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* tree.h (perm_calloc): Add decl.
|
||
|
* cp-parse.y (except_stmts): Declare return type of get_insns,
|
||
|
since we don't (can't) include rtl.h.
|
||
|
* cp-tree.c (TYPE_HASH): Use HOST_WIDE_INT instead of int when
|
||
|
casting pointers to integers.
|
||
|
(ld_cmp): Likewise.
|
||
|
* cp-call.c (build_method_call): Likewise.
|
||
|
* cp-class.c (finish_struct_methods): Likewise.
|
||
|
* cp-method.c (build_overload_value): Add decl of index.
|
||
|
(build_opfncall): Cast to HOST_WIDE_INT, not int.
|
||
|
* cp-search.c (get_binfo): Likewise.
|
||
|
(get_base_distance): Likewise.
|
||
|
(breadth_first_search): Likewise. Also declare to return
|
||
|
HOST_WIDE_INT, not int.
|
||
|
|
||
|
Wed Nov 11 14:34:25 1992 Mike Stump (mrs@rtl.cygnus.com)
|
||
|
|
||
|
Thu Nov 5 15:58:38 1992 Tim Moore (moore at defmacro.cs.utah.edu)
|
||
|
|
||
|
* cp-decl.c (duplicate_decls): Round to obstack alignment when
|
||
|
testing if newdecl is at the top of the permanent obstack.
|
||
|
|
||
|
Wed Nov 11 13:56:18 1992 Mike Stump (mrs@rtl.cygnus.com)
|
||
|
|
||
|
* cp-search.c (build_vbase_vtables_init): Make sure external virtual
|
||
|
tables are declared on machines that need the declaration by calling
|
||
|
assemble_external.
|
||
|
|
||
|
Wed Nov 11 12:51:44 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl2.c (grokfield): If the init field is really a list with
|
||
|
just an error_mark_node, then it wasn't a real initialization, so
|
||
|
don't treat it like one.
|
||
|
|
||
|
Tue Nov 10 16:21:20 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-init.c (build_new): If arg 1 of an array reference is an
|
||
|
error_mark, then just pretend that there were 0 elements.
|
||
|
|
||
|
Tue Nov 10 13:23:30 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (build_x_function_call): If the type of FUNCTION is an
|
||
|
error_mark, don't bother checking its lang-specific info.
|
||
|
|
||
|
Tue Nov 10 12:38:36 1992 Mike Stump (mrs@rtl.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (decls_match): Avoid core dumping when TREE_TYPE is
|
||
|
NULL_TREE, as is the case when olddecl is a TEMPLATE_DECL.
|
||
|
|
||
|
Tue Nov 10 11:03:36 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (pushdecl_top_level): Disable assert for now; it's
|
||
|
always acted correctly.
|
||
|
|
||
|
Mon Nov 9 12:04:27 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-parse.y (try_for_typename): Deleted rule.
|
||
|
(scoped_id): Don't use it.
|
||
|
|
||
|
Fri Nov 6 18:07:37 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-init.c (expand_aggr_init): If INIT is 0, don't bother trying to
|
||
|
play with its type.
|
||
|
|
||
|
Thu Nov 5 16:52:37 1992 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
* cp-decl.c (finish_decl): Set TREE_STATIC, TREE_PUBLIC and
|
||
|
DECL_EXTERNAL correctly for use with #pragma interface.
|
||
|
|
||
|
Fri Nov 6 10:07:01 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-class.c (finish_struct): Don't try to work with a field that
|
||
|
got a bogus type.
|
||
|
|
||
|
* cp-method.c (build_overload_value): Don't call debug_tree!
|
||
|
|
||
|
* cp-call.c (build_method_call): If processing a default argument
|
||
|
that calls a ctor for its default value, use INSTANCE_PTR for the
|
||
|
parm list, discarding what we knew before.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): If initializing a const member and
|
||
|
acting pedantic, then do make it an error.
|
||
|
|
||
|
* cp-decl2.c (warn_traditional): New variable.
|
||
|
(lang_decode_option): Use it for -Wtraditional and -Wno-traditional.
|
||
|
* cp-tree.h (warn_traditional): Add decl.
|
||
|
* cp-lex.c (readescape): For x, avoid overflow when shifting in if.
|
||
|
Warn for \a and \x if warn_traditional; pass through
|
||
|
the escaped x and a if -traditional. Support \e like \E; for both,
|
||
|
pedwarn about ANSI C.
|
||
|
|
||
|
* cp-call.c (find_scoped_type): Delete arg TAGS; instead, compute it
|
||
|
inside from TYPE. If TAGS is null, don't return immediately, since
|
||
|
we need to look for TYPE_DECLs.
|
||
|
(resolve_scope_to_name): Call find_scoped_type without replicating
|
||
|
the tags.
|
||
|
|
||
|
Thu Nov 5 17:53:32 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Constant class members can be
|
||
|
initialized.
|
||
|
|
||
|
Thu Nov 5 17:11:30 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Thu Nov 5 19:48:17 1992 Niklas Hallqvist (niklas@appli.se)
|
||
|
|
||
|
* cp-pt.c (instantiate_class_template): Types are used in later
|
||
|
processing, so they must go into the permanent obstack.
|
||
|
|
||
|
Thu Nov 5 13:02:56 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Don't allow members to be initialized
|
||
|
in the class declaration.
|
||
|
|
||
|
* cp-decl2.c (finish_file): Set the DECL_CLASS_CONTEXT on a function
|
||
|
that's a file-scope set of ctors/dtors for global variables, so
|
||
|
is_friend will see things the way they should be seen.
|
||
|
|
||
|
* cp-call.c (find_scoped_type): New function.
|
||
|
(resolve_scope_to_name): Use it to check for names that might be in
|
||
|
base classes.
|
||
|
|
||
|
Wed Nov 4 00:43:15 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-parse.y (db_yyerror): Deleted fn.
|
||
|
(yyprint, yyerror, init_parse, yyhook, reduce_cmp, token_cmp,
|
||
|
print_parse_statistics,set_yydebug, debug_yytranslate): Moved to
|
||
|
cp-lex.c.
|
||
|
(reduce_count, token_count): Ditto.
|
||
|
(current_declspecs): Made static.
|
||
|
|
||
|
* cp-typeck.c (build_c_cast): Warn if casting between a pointer and
|
||
|
an integer whose sizes differ.
|
||
|
|
||
|
* cp-parse.y (unary_expr): Finish making new with placement work;
|
||
|
use the rule `new' instead of the token `NEW' when parsing it.
|
||
|
|
||
|
Tue Nov 3 02:16:47 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-typeck.c (c_expand_return): Avoid referencing DECL_NAME if it's
|
||
|
null when checking for a ref to or the addr of a local variable.
|
||
|
|
||
|
* cp-search.c (dfs_pushdecls): Don't try to use the context of a
|
||
|
field which has none at the time.
|
||
|
|
||
|
* cp-decl.c (redeclaration_error_message): Don't complain about
|
||
|
redefinition of a function if it's a definition of an abstract
|
||
|
virtual function.
|
||
|
(duplicate_decls): For an abstract virtual, don't use the old RTL
|
||
|
from abort when creating the RTL for the newdecl.
|
||
|
|
||
|
Tue Nov 3 00:15:44 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): For `inline', `unsigned', and `signed',
|
||
|
see them as types, not as storage class specs, when looking for more
|
||
|
than one storage class.
|
||
|
|
||
|
* cp-lex.c (readescape): New arg ignore_ptr.
|
||
|
(real_yylex): Pass new arg, handle result that comes back.
|
||
|
|
||
|
* cp-decl.c (WCHAR_TYPE_SIZE): Deleted; never used.
|
||
|
|
||
|
Mon Nov 2 10:23:52 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-lex.c (real_yylex): Let skip_white_space handle \r.
|
||
|
|
||
|
* cp-parse.y (parmlist): Warn on a decl `foo (...)', without a first
|
||
|
argument.
|
||
|
|
||
|
* cp-type2.c (build_functional_cast): If expr_as_ctor's argument is
|
||
|
a SAVE_EXPR, don't wipe out the argument.
|
||
|
|
||
|
* cp-call.c (build_method_call): Only complain about not having an
|
||
|
object for a called method if the method is non-static.
|
||
|
|
||
|
Sun Nov 1 16:50:14 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl2.c (warn_char_subscripts): Declare.
|
||
|
(lang_decode_option): Handle -Wchar-subscripts.
|
||
|
* cp-typeck.c (build_array_ref): If the type of either the array or
|
||
|
its index is an error_mark_node, then return one. Add code to see
|
||
|
if the index is a character (add warning), then do the default
|
||
|
promotions. Don't warn if it's a register array. Make a ref
|
||
|
volatile if the array is volatile.
|
||
|
* cp-tree.h (warn_char_subscripts): Add decl.
|
||
|
|
||
|
* cp-typeck.c (common_type): If either type is nonsense (an
|
||
|
error_mark), use the other type.
|
||
|
|
||
|
Thu Oct 29 18:39:50 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Fix problem introduce by me on Oct 22
|
||
|
17:41:13. Put back call to build_offset_type that I took out, as it
|
||
|
is not wrong, as the comment for build_offset_type had led me to
|
||
|
believe.
|
||
|
|
||
|
Thu Oct 29 17:30:12 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-cvt.c: Delete block-level extern decls; include flags.h instead.
|
||
|
* cp-tree.h (flag_int_enum_equivalence): Declare here.
|
||
|
* cp-call.c: Not here.
|
||
|
|
||
|
* Makefile.in (stamp-cp-parse): There are now only 29 shift/reduce
|
||
|
conflicts, because of the removed wrapper stuff.
|
||
|
|
||
|
* cp-lex.c (lastiddecl, ridpointers): Define here.
|
||
|
(NORID): Don't define here.
|
||
|
* cp-lex.h (NORID): Define here instead.
|
||
|
(ridpointers, lastiddecl, token_buffer, looking_for_typename): Ditto.
|
||
|
(make_pointer_declarator, make_reference_declarator,
|
||
|
reinit_parse_for_function, reinit_parse_for_method, yylex): Likewise.
|
||
|
* cp-parse.y: Don't define any of them in here.
|
||
|
|
||
|
* cp-typeck.c (commonparms): Call tree_cons with NULL_TREEs, not 0s.
|
||
|
(convert_arguments): Likewise.
|
||
|
Throughout the file, say `ANSI C++ forbids', not `ANSI C forbids'.
|
||
|
* cp-lex.c, cp-type2.c: Likewise.
|
||
|
|
||
|
Remove wrapper functionality from the compiler.
|
||
|
* cp-call.c (build_method_call): Delete wrap and wrap_type.
|
||
|
Delete code that used them. Don't set err_name to "wrapper", since
|
||
|
wrapper_name doesn't exist anymore.
|
||
|
* cp-class.c (finish_base_struct): Don't worry about TYPE_WRAP_TYPE.
|
||
|
* cp-decl.c (grokfndecl): Delete code for WRAPPER_EXPR and
|
||
|
ANTI_WRAPPER_EXPR.
|
||
|
(grokdeclarator): Likewise. Don't set TREE_HAS_WRAPPER_PRED.
|
||
|
* cp-decl2.c (grokclassfn): Likewise.
|
||
|
(check_classfn): Likewise.
|
||
|
* cp-init.c (get_member_function): Don't check TYPE_NEEDS_WRAPPER.
|
||
|
* cp-lex.c (real_yylex): Don't check WRAPPER_OR_ANTI_WRAPPER_NAME_P.
|
||
|
* cp-method.c (wrapper_name, wrapper_pred_name, anti_wrapper_name):
|
||
|
Deleted variables.
|
||
|
(init_method): Don't do any setup for *WRAPPER_*.
|
||
|
(hack_wrapper): Deleted function.
|
||
|
* cp-parse.y (wrapper): Deleted rule.
|
||
|
(identifier_or_opname): Deleted all wrapper predicates.
|
||
|
(notype_declarator): Deleted predicates LEFT_RIGHT for wrappers.
|
||
|
* cp-ptree.c (print_lang_type): Deleted message for printing "wrapper".
|
||
|
* cp-search.c (get_wrapper): Deleted fn.
|
||
|
* cp-tree.h (struct lang_type): Deleted has_wrapper_pred and
|
||
|
wrap_type members.
|
||
|
(build_wrapper, hack_wrapper, get_wrapper): Deleted decls.
|
||
|
(wrapper_name, wrapper_pred_name, anti_wrapper_name): Deleted decls.
|
||
|
(TYPE_WRAP_TYPE, TYPE_HAS_WRAPPER, TYPE_NEEDS_WRAPPER,
|
||
|
TYPE_HAS_WRAPPER_PRED, WRAPPER_DECL_FORMAT, WRAPPER_PRED_DECL_FORMAT,
|
||
|
ANTI_WRAPPER_DECL_FORMAT, WRAPPER_NAME_FORMAT,
|
||
|
WRAPPER_PRED_NAME_FORMAT, ANTI_WRAPPER_NAME_FORMAT,
|
||
|
WRAPPER_NAME_P, WRAPPER_PRED_NAME_P, ANTI_WRAPPER_NAME_P,
|
||
|
WRAPPER_OR_ANTI_WRAPPER_NAME_P): Deleted.
|
||
|
(enum overload_flags): Deleted WRAPPER_FLAG, WRAPPER_PRED_FLAG,
|
||
|
and ANTI_WRAPPER_FLAG tags.
|
||
|
* cp-typeck.c (build_function_call_real): Delete wrapper code.
|
||
|
(unary_complex_lvalue): Don't check TYPE_NEEDS_WRAPPER.
|
||
|
* stmt.c (warn_if_unused_value): Don't check *WRAPPER_EXPR.
|
||
|
* tree.def (WRAPPER_EXPR, ANTI_WRAPPER_EXPR): Deleted.
|
||
|
|
||
|
Wed Oct 28 15:38:44 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-cvt.c (convert_to_reference): New arguments FNDECL, PARMNUM,
|
||
|
and ERRTYPE. Use them to give warnings about const and volatile
|
||
|
references being used incorrectly. Call itself with dummy arguments
|
||
|
where appropriate.
|
||
|
(convert): Call convert_to_reference with dummy args.
|
||
|
(convert_force): Likewise.
|
||
|
* cp-typeck.c (warn_for_assignment): Remove static declaration,
|
||
|
cp-cvt.c needs to see it now.
|
||
|
(convert_for_initialization): Call convert_to_reference with fndecl,
|
||
|
parmnum, and errtype.
|
||
|
|
||
|
Tue Oct 27 17:38:18 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Fix problem introduce by me on Oct 22
|
||
|
17:41:13. Only output error or warning message about extra
|
||
|
qualifiers when we are inside a class declaration.
|
||
|
|
||
|
Tue Oct 27 16:21:41 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-tree.h (THIS_NAME_P): Fix to reflect September 1 change in
|
||
|
THIS_NAME.
|
||
|
|
||
|
Tue Oct 27 12:35:59 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-parse.y (operator_name): Remove check for top-level operator
|
||
|
<typename> decl.
|
||
|
* cp-decl.c (grokdeclarator): Complain here about type conversion
|
||
|
operators that aren't declared as members of classes.
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Only call do_friend on a friend if
|
||
|
decl's non-zero.
|
||
|
|
||
|
Tue Oct 27 09:31:08 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-lex.c (do_identifier): Add missing fourth argument to
|
||
|
lookup_field.
|
||
|
|
||
|
Mon Oct 26 15:15:39 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-cvt.c (convert_to_reference): Check for ambiguities
|
||
|
between constructor and conversion operators a bit harder.
|
||
|
|
||
|
Sat Oct 24 19:34:39 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
Mon Sep 14 14:36:53 1992 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
cp-decl.c (poplevel): If apparently nested inline function has
|
||
|
DECL_ABSTRACT_ORIGIN, don't output it; propagate TREE_ADDRESSABLE.
|
||
|
(pushdecl): When copying inline details into an extern decl,
|
||
|
copy DECL_RESULT, TREE_ASM_WRITTEN. Set DECL_ABSTRACT_ORIGIN.
|
||
|
|
||
|
Fri Oct 23 18:52:19 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (poplevel): Use error_with_decl on an unused label, so
|
||
|
its line number comes out correct.
|
||
|
|
||
|
Thu Oct 22 18:31:50 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-parse.y (operator_name): If a type conversion operator is
|
||
|
defined at the top level, don't crash, complain.
|
||
|
|
||
|
Thu Oct 22 17:41:13 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Return void_type_node instead of
|
||
|
NULL_TREE on errors, to forestall another error message. Check for
|
||
|
redundant or illegal qualification on class members.
|
||
|
|
||
|
Thu Oct 22 13:15:57 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-tree.h (ANON_AGGRNAME_P): Check the second charater as well, as
|
||
|
it could be $vtbl_ptr_type, and not an ANON_AGGRNAME.
|
||
|
|
||
|
Wed Oct 21 19:31:36 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* cp-call.c (build_method_call): Initialize b_or_d to 0.
|
||
|
|
||
|
* cp-typeck.c (compparms): Delete dead code for returning if either
|
||
|
TREE_PURPOSE is true when t1 and t2 are both 0.
|
||
|
|
||
|
* cp-parse.y (object): Only pass one argument into build_x_arrow.
|
||
|
|
||
|
* cp-parse.y (unary_expr): Add code to parse `&&label'.
|
||
|
(stmt): Expand computed gotos.
|
||
|
|
||
|
* cp-method.c (fndecl_as_string): Say it's static before giving its
|
||
|
type, it looks better (and matches how you'd declare it).
|
||
|
|
||
|
Wed Oct 21 16:22:43 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (start_decl): return NULL_TREE, not error_mark_node to
|
||
|
signify error.
|
||
|
* cp-decl2.c (cplus_decl_attributes): New function. Don't call
|
||
|
decl_attributes if the first argument is NULL_TREE.
|
||
|
* cp-tree.h (cplus_decl_attributes): Declare new function.
|
||
|
* cp-parse.y: Changed all calls to decl_attributes into calls to
|
||
|
cplus_decl_attributes, as all calls may pass NULL_TREE in the first
|
||
|
argument.
|
||
|
|
||
|
Wed Oct 21 11:40:35 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-call.c (build_method_call): Avoid an abort on parse errors by
|
||
|
changing an assert into a conditional my_friendly_abort.
|
||
|
|
||
|
Tue Oct 20 16:52:32 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-tree.h (TYPE_ASSEMBLER_NAME_STRING,
|
||
|
TYPE_ASSEMBLER_NAME_LENGTH): New macros.
|
||
|
* cp-search.c (build_type_pathname): Use new macros.
|
||
|
* cp-decl.c (pushtag): Set DECL_ASSEMBLER_NAME for TYPE_DECLs with
|
||
|
build_overload_name so that assembler names for template type things
|
||
|
are like __vt$t1X1Zi$1T.4 and not __vt$X<int>$T.4.
|
||
|
* cp-decl.c (pushdecl): Since the rest of the compiler wants to use
|
||
|
DECL_NAME for TYPE_DECLs, use that instead of DECL_ASSEMBLER_NAME.
|
||
|
|
||
|
Tue Oct 20 11:29:50 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Wed Oct 7 16:01:55 1992 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
[ changes propagated from 921005 snapshot ]
|
||
|
* cp-lex.c (readescape): No warning if digits in \x are all 0's.
|
||
|
|
||
|
Fri Oct 9 15:18:19 1992 Brendan Kehoe (brendan@cygnus.com)
|
||
|
|
||
|
* cp-decl.c (duplicate_decls): Only find out if olddecl is a
|
||
|
friend after we know it's not a TREE_LIST.
|
||
|
|
||
|
Wed Oct 7 16:04:34 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Wed Oct 7 12:26:07 PDT 1992 Ron Guilmette (rfg at netcom.com)
|
||
|
|
||
|
* cp-lex.c (readescape): Permit \? as an escape sequence.
|
||
|
|
||
|
Tue Oct 6 17:54:09 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Major MI revamp.
|
||
|
|
||
|
* cp-search.c (get_binfo, find_base_distance): Fix comments.
|
||
|
Disable incorrect code that would incorrectly find ambiguities where
|
||
|
none existed. Add some code to find all ambiguities.
|
||
|
* cp-search.c (get_binfo2_recursive, get_binfo2): Added to find
|
||
|
ambiguities.
|
||
|
|
||
|
* cp-search.c (convert_pointer_to_single_level): Added so that one
|
||
|
can convert pointer unambiguously to an immediate base class
|
||
|
pointer.
|
||
|
|
||
|
* cp-search.c (dfs_walk): Added comments. Fixed to keep track of
|
||
|
how it walks the inheritance hierarchy so that when we get down to
|
||
|
the bottom, we have a pointer to what we want.
|
||
|
* cp-search.c (dfs_find_vbases): Changed to use new intermediate
|
||
|
pointer instead of incorrectly trying to convert at the bottom.
|
||
|
* cp-search.c (init_vbase_pointers): Changed to set up new
|
||
|
intermediate pointer.
|
||
|
|
||
|
* cp-*.c: Rename child -> base_binfo, child_child ->
|
||
|
base_base_binfo, child_binfos -> base_binfos, .*_child ->
|
||
|
.*_base_binfo. Rename DERIVED_FROM_P to UNIQUELY_DERIVED_FROM_P.
|
||
|
|
||
|
Tue Oct 6 14:51:13 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
|
||
|
|
||
|
* cp-spew.c (yylex_ctr): Make unsigned.
|
||
|
* cp-decl2.c (spew_debug): Add extern reference.
|
||
|
(lang_decode_option): New option `-spew-debug', so masochists can
|
||
|
use it when they need to.
|
||
|
|
||
|
Mon Oct 5 15:47:35 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
|
||
|
|
||
|
Implement protected baseclasses.
|
||
|
* cp-class.c (finish_base_struct): Set TREE_VIA_PROTECTED.
|
||
|
(finish_struct_methods): Check for either public or protected
|
||
|
members to kick out of the "all members are private" test.
|
||
|
* cp-decl.c (xref_tag): Set TREE_VIA_PROTECTED appropriately.
|
||
|
* cp-parse.y (base_class_visibility_list): Remove code about
|
||
|
`protected' visibility not being implemented.
|
||
|
* cp-pt.c (tsubst): Set via_protected and call hash_tree_cons
|
||
|
with it as necessary.
|
||
|
* cp-search.c (compute_visibility): Set visibility if protected.
|
||
|
Return the appropriate visibility when resolving a field.
|
||
|
(lookup_field): Set TREE_VIA_PROTECTED for btypes from its child.
|
||
|
When complaining about a member being protected, differentiate when
|
||
|
it's from a protected base class (could be a public member in the
|
||
|
base).
|
||
|
(lookup_fnfields): Set TREE_VIA_PROTECTED.
|
||
|
(get_baselinks): Pass TREE_VIA_PROTECTED into hash_tree_cons.
|
||
|
Also pass a 0 when necessary.
|
||
|
* cp-tree.c (propagate_binfo_offsets): Set TREE_VIA_PROTECTED.
|
||
|
(layout_vbasetypes): Ditto.
|
||
|
(layout_basetypes): Ditto.
|
||
|
(list_hash_lookup): Check TREE_VIA_PROTECTED when looking at an
|
||
|
incomplete basetype.
|
||
|
(hash_tree_cons): New argument `via_protected'. Set TREE_VIA_PROTECTED
|
||
|
when necessary.
|
||
|
(list_hash_lookup_or_cons): Check TREE_VIA_PROTECTED when making
|
||
|
sure a hash list is sane.
|
||
|
(make_binfo): Set TREE_VIA_PROTECTED for the new child.
|
||
|
|
||
|
Mon Oct 5 13:27:44 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-init.c (maybe_adjust_addr_for_delete): Make sure we don't
|
||
|
evaluate the addr twice if it has side effects.
|
||
|
|
||
|
Mon Oct 5 13:05:37 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-init.c (build_vec_delete): Make sure we don't evaluate the base
|
||
|
expression twice if it has side effects.
|
||
|
|
||
|
Mon Oct 5 12:38:35 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (grokdeclarator): Issue a warning or error if we're
|
||
|
being ANSI-careful when they do `extern inline'.
|
||
|
(flag_ansi): Add extern decl.
|
||
|
|
||
|
Mon Oct 5 12:34:32 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
* cp-class.c (finish_struct): Don't give an error if an enumeration
|
||
|
type is stuck in a bit-field, as it is legal c++.
|
||
|
|
||
|
Mon Oct 5 11:43:09 1992 Mike Stump (mrs@cygnus.com)
|
||
|
|
||
|
Mon Sep 14 16:39:10 1992 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
* cp-cvt.c (convert_to_integer): Don't pass truncation thru lshift
|
||
|
if shift count >= width of narrower type. Instead, just use 0.
|
||
|
|
||
|
Fri Oct 2 13:21:40 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
|
||
|
|
||
|
* cp-decl.c (start_function): Reinstate error check for missing
|
||
|
semicolon erroneously removed.
|
||
|
|
||
|
Thu Nov 12 17:37:23 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.md (movdf_internal): Split movdf insn into two -- one for
|
||
|
normal use, and one for -msoft-float, and don't prefer FPU
|
||
|
registers in the -msoft-float case.
|
||
|
(movsf_internal): Ditto for movsf.
|
||
|
|
||
|
Thu Nov 12 07:30:17 1992 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386.h (HARD_REGNO_MODE_OK): Restrict MODE_INT from FP regs only.
|
||
|
|
||
|
* i386.md (floatMN2 recognizers): Don't omit mode on a
|
||
|
match_operand that might be reloaded. Split into separate
|
||
|
patterns for each mode.
|
||
|
(zero_extract test): Disable for now.
|
||
|
|
||
|
* i386.c (float_op): Delete - no longer used.
|
||
|
|
||
|
Wed Nov 11 11:55:22 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* combine.c (simplify_comparison, case ASHIFTRT): mode_for_size
|
||
|
returns BLKmode on error, not VOIDmode.
|
||
|
|
||
|
* romp.md (reload_outdi): Write as proper PARALLEL.
|
||
|
|
||
|
Wed Nov 11 01:06:33 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* toplev.c (lang_options): Change +e... to -+e...
|
||
|
|
||
|
* xm-tower.h: Include xm-svr3.h.
|
||
|
(bcopy, bzero, bcmp, USG): Macros deleted.
|
||
|
|
||
|
Tue Nov 10 12:26:23 1992 Steve Chamberlain (sac@cygnus.com)
|
||
|
|
||
|
* sdbout.c (plain_type_1): Handle LONG_TYPE_SIZE like INT_TYPE_SIZE.
|
||
|
|
||
|
Tue Nov 10 14:20:27 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.md (ffssi2): Add =& constraints to the two match_scratch
|
||
|
clobbered registers. Fix from John F Carr.
|
||
|
|
||
|
* mips-tdump.c (toplevel): Move #undef index and rindex before
|
||
|
including sym.h.
|
||
|
|
||
|
Tue Nov 10 10:37:50 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (install-common): Delete deps $(srcdir)/g++ $(srcdir)/c++
|
||
|
|
||
|
* expr.c (init_expr_once): Try indexing mem by fp as well as sp.
|
||
|
|
||
|
Tue Nov 10 10:28:59 1992 Chris Smith (csmith@convex.com)
|
||
|
|
||
|
* genattrtab.c (main): Unlimit stack size.
|
||
|
|
||
|
Tue Nov 10 10:17:51 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* print-rtl.c (print_rtx): Use sizeof spaces - 1 to get the length
|
||
|
of the spaces string.
|
||
|
|
||
|
Tue Nov 10 09:56:32 1992 Jeffrey A. Law (law@schirf.cs.utah.edu)
|
||
|
|
||
|
* pa-hpux.h (LINK_SPEC): Disable linking against shared libraries.
|
||
|
* pa-ghpux.h (LINK_SPEC): Likewise.
|
||
|
|
||
|
Tue Nov 10 08:39:01 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* elxsi.h (GO_IF_LEGITIMATE_ADDRESS): Verify that register is valid
|
||
|
for use as base register (un-allocated pseudos aren't when strict).
|
||
|
|
||
|
Mon Nov 9 22:17:23 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* xm-3b1.h (index, rindex): Define as macros.
|
||
|
|
||
|
* i386bsd.h: Complete rewrite.
|
||
|
|
||
|
Mon Nov 9 14:22:38 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* mips.h, decrose.h: Move LINK_LIBGCC_SPECIAL to decrose.h.
|
||
|
|
||
|
Mon Nov 9 12:39:03 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* unroll.c (final_biv_value): Make a note after loop_end
|
||
|
if we need to use NEXT_INSN (loop_end).
|
||
|
|
||
|
* objc-actions.c (build_message_expr): Don't crash if super_type is 0.
|
||
|
|
||
|
Mon Nov 9 07:42:30 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* caller-save.c (save_call_clobbered_regs): Ensure any insns we add
|
||
|
are in the same basic block as the insn we added them for.
|
||
|
|
||
|
Mon Nov 9 12:35:57 1992 Torbjorn Granlund (tege@jupiter.sics.se)
|
||
|
|
||
|
* pa.h (TARGET_*): Move it to the beginning of the file.
|
||
|
(CPP_SPEC): Handle -mnosnake.
|
||
|
* pa-ghpux.h pa-hpux.h pa1-ghpux.h pa1-hpux.h pa1.h pa.h: Move
|
||
|
definition of TARGET_DEFAULT to before inclusion of other pa*h files.
|
||
|
Only define TARGET_DEFAULT if not already defined.
|
||
|
Get rid of hpux8 conditionals.
|
||
|
|
||
|
Sun Nov 8 20:38:19 1992 James Van Artsdalen (james at bigtex.cactus.org)
|
||
|
|
||
|
* i386.md (movstrsi): mask move count after signed shift.
|
||
|
|
||
|
Sun Nov 8 00:24:30 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* fixinc.svr4: Avoid use of | in sed regexp; use multiple s commands.
|
||
|
|
||
|
* i386mach.h: Include i386gstabs.h, not i386gas.h.
|
||
|
|
||
|
* gsyslimits.h: Renamed from syslimits.h.
|
||
|
* Makefile.in (USER_H): syslimits.h deleted.
|
||
|
(install-common-headers): Install gsyslimits.h as syslimits.h.
|
||
|
Depend on gsyslimits.h and assert.h.
|
||
|
|
||
|
* cccp.c (rescan): Accept # as command inside macro args, etc.
|
||
|
If an actual newline at the same level precedes.
|
||
|
|
||
|
* fixincludes (EXINIT): Set it to `set', not null.
|
||
|
|
||
|
* toplev.c (main): Use strncmp when testing for gstabs+ vs gstabs.
|
||
|
|
||
|
Sat Nov 7 17:46:35 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* optabs.c (expand_unop):
|
||
|
For complex negation, do get_insns, not gen_sequence.
|
||
|
|
||
|
* c-decl.c (finish_decl): Don't clear DECL_INITIAL in inline fn decls.
|
||
|
|
||
|
* c-typeck.c (process_init_constructor): Strip NOP_EXPR from indices.
|
||
|
Clear end_index if there's an error in a range.
|
||
|
|
||
|
* mips-5sysv.h, mips-5svr4.h, mips-5bsd.h (CPP_PREDEFINES):
|
||
|
Add single-underscore variants of all the predefined symbols.
|
||
|
|
||
|
* gstddef.h [_ANSI_H_]: When undefing at the end, test _STDDEF_H,
|
||
|
not __need_ptrdiff_t.
|
||
|
|
||
|
* mips.c (gen_int_relational): Handle overflow when incrementing cmp1.
|
||
|
|
||
|
Fri Nov 6 23:03:14 1992 Brendan Kehoe (brendan@lisa.cygnus.com)
|
||
|
|
||
|
* elxsi.c: Include config.h.
|
||
|
|
||
|
Fri Nov 6 18:53:21 1992 Chip Salzenberg (chip@tct.com)
|
||
|
|
||
|
* i386sco.h (STARTFILE_SPEC): Fix line wrap.
|
||
|
(SIGNED_CHAR_SPEC): Defined to set _CHAR_UNSIGNED.
|
||
|
|
||
|
Fri Nov 6 19:06:56 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* dbxout.c (dbxout_symbol): Give name ` ' to unnamed enums.
|
||
|
|
||
|
Fri Nov 6 15:26:30 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* optabs.c (init_libfuncs): Add casts when comparing/incrementing enum.
|
||
|
|
||
|
Fri Nov 6 15:41:00 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* toplev.c (main): Really accept -gstabs+.
|
||
|
|
||
|
Fri Nov 6 06:46:22 1992 Tom Wood (wood@dg-rtp.dg.com)
|
||
|
|
||
|
* m88k.md (tcnd_divide_by_zero, divsi3, udivsi3): Allow the
|
||
|
explicit trap for divide by zero to resume execution along the
|
||
|
expected path.
|
||
|
|
||
|
* t-m88kv4 (FIXINCLUDES): Delete.
|
||
|
|
||
|
Fri Nov 6 03:08:13 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* i386.md (andsi3): Mask immed op to 0xff in QI-reg ff00-byte case.
|
||
|
|
||
|
* gstddef.h: Find ansi.h in machine subdir.
|
||
|
[__need_ptrdiff_t]: Don't undef _SIZE_T_ or _WCHAR_T_.
|
||
|
* gvarargs.h, gstdarg.h: Don't test, define or undef _VA_LIST_
|
||
|
on NET 2 systems. Don't include ansi.h.
|
||
|
|
||
|
* c-lex.c (readescape): Support \e like \E. Warn only if -pedantic.
|
||
|
|
||
|
Fri Nov 6 08:34:17 1992 Tim Moore (moore at defmacro.cs.utah.edu)
|
||
|
|
||
|
* integrate.c (copy_rtx_and_substitute)[ARGS_GROW_DOWNWARD]: Map
|
||
|
virtual args pointer to the top of the argument block.
|
||
|
* calls.c (expand_call)[ARGS_GROW_DOWNWARD] Fix fencepost error in
|
||
|
calculating high_to_save and low_to_save. Use - high_to_save to
|
||
|
address stack_area.
|
||
|
|
||
|
Fri Nov 6 00:41:53 1992 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* sparc.h (TARGET_EDOM, GEN_ERRNO_RTX): Deleted.
|
||
|
|
||
|
Thu Nov 5 18:55:44 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* alpha.c (output_prologue): Fix typo: `add' should be `addq'.
|
||
|
|
||
|
Thu Nov 5 18:35:43 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Makefile.in (install-fixincludes): Add semicolon in new for-loop.
|
||
|
|
||
|
Thu Nov 5 15:24:14 1992 Michael Meissner (meissner@osf.org)
|
||
|
|
||
|
* i386rose.h, decrose.h (REAL_LD_FILE_NAME): Define to be the
|
||
|
correct location on OSF/1 -- /usr/bin/ld points to
|
||
|
/usr/ccs/gcc/ld, which is collect.
|
||
|
(REAL_NM_FILE_NAME): Ditto for nm.
|
||
|
(REAL_STRIP_FILE_NAME): Ditto for strip.
|
||
|
|
||
|
Wed Nov 4 13:36:10 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* optabs.c (expand_binop): When trying to expand a multiple word
|
||
|
add into multiple single word adds, don't overwrite OP0 and OP1 in
|
||
|
case we must backtrack. We use instead new variables XOP0 and XOP1.
|
||
|
|
||
|
Wed Nov 4 16:45:53 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* config.sub: Don't discard SCO version number if it's 3.2v4.
|
||
|
|
||
|
* xm-vax-vms.h (HOST_FLOAT_FORMAT): Defined.
|
||
|
|
||
|
* varasm.c: Fix typos in last change.
|
||
|
|
||
|
Wed Nov 4 10:11:28 1992 Torbjorn Granlund (tege@jupiter.sics.se)
|
||
|
|
||
|
* va-pa.h (va_end): Do it like in other va-*.h files.
|
||
|
|
||
|
Wed Nov 4 07:23:46 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* local-alloc.c (optimize_reg_copy_1): If P is a CALL_INSN, count
|
||
|
it as being crossed by SRC since SRC used to die there.
|
||
|
|
||
|
Wed Nov 4 00:13:51 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* x-next (libgcc2.a, stdarg.h): New rules.
|
||
|
|
||
|
* varasm.c (immed_real_const_1, immed_double_const):
|
||
|
Don't push on const_double_chain in nested function.
|
||
|
|
||
|
* expr.c (emit_move_insn): Do return a value, in complex case.
|
||
|
|
||
|
Tue Nov 3 10:45:09 1992 H.J. Lu (hlu@yardbird.eecs.wsu.edu)
|
||
|
|
||
|
* i386linux.h (STARTFILE_SPEC): -static is added to ld if
|
||
|
-pg, -g or -p is passed down by gcc.
|
||
|
|
||
|
Tue Nov 3 15:14:48 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* pa.c (output_ior): Handle "ior" against zero.
|
||
|
|
||
|
* i386mach.h (YES_UNDERSCORES): Define it.
|
||
|
|
||
|
* sun3.h (ASM_OUTPUT_FLOAT_OPERAND): Use REAL_VALUE_MINUS_ZERO.
|
||
|
(ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
|
||
|
|
||
|
Tue Nov 3 08:25:35 1992 Chris Smith (csmith@convex.com)
|
||
|
|
||
|
* convex.h (REG_CLASS_FROM_LETTER): Add 'A', index regs.
|
||
|
(movsi alternative): Use it to make psh.w sp (push the
|
||
|
stack pointer) a noninstruction.
|
||
|
|
||
|
Tue Nov 3 08:05:10 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* jump.c (jump_optimize): Ensure operand of REG_NOTES is an INSN;
|
||
|
otherwise, we might try to read outside allocated memory.
|
||
|
|
||
|
* va-alpha.h (va_end): Don't define enum if va_end already defined.
|
||
|
|
||
|
Tue Nov 3 02:56:22 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* objc/Makefile: Use $(srcdir), not `..'.
|
||
|
|
||
|
* objc-actions.c (build_message_expr): Use save_expr for receiver.
|
||
|
|
||
|
* va-i860.h (va_end, anonymous enum): Don't declare if
|
||
|
va_end already defined as macro.
|
||
|
* va-mips.h, va-i960.h (va_end): If already a macro, don't declare.
|
||
|
|
||
|
Mon Nov 2 21:17:40 1992 Paul Eggert (eggert@twinsun.com)
|
||
|
|
||
|
* va-sparc.h (va_end): If already def as macro, don't declare.
|
||
|
|
||
|
Mon Nov 2 16:04:51 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* i386linux.h: Include i386gstabs.h, not i386gas.h.
|
||
|
|
||
|
Mon Nov 2 14:46:31 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
|
||
|
|
||
|
* Makefile.in (install-cross-tools): Delete old symlink before
|
||
|
making new one; else symlink will fail and we will use
|
||
|
backed strategy.
|
||
|
|
||
|
Sun Nov 1 17:55:56 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
||
|
|
||
|
* varasm.c (decode_rtx_const): Handle PC same as LABEL_REF.
|
||
|
|
||
|
Sun Nov 1 03:19:39 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
|
||
|
|
||
|
* Version 2.3.1 released.
|
||
|
|
||
|
* x-i386s4: Renamed from x-i386sco4.
|
||
|
* configure (i[34]86-*-sco*): Use new name.
|
||
|
|
||
|
* sol2-c1.asm, sol2-ci.asm, sol2-cn.asm: Renamed from sol2-crt...
|
||
|
* t-sol2: User new names.
|
||
|
|
||
|
See ChangeLog.6 for earlier changes.
|