platform/upstream/linaro-gcc.git
25 years ago(operator>>): Cast new character to char before adding to string.
drepper [Mon, 23 Nov 1998 09:21:12 +0000 (09:21 +0000)]
(operator>>): Cast new character to char before adding to string.
(getline): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23786 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago * cccp.c (S_ISREG, S_ISDIR): Delete defines.
law [Mon, 23 Nov 1998 09:20:35 +0000 (09:20 +0000)]
    * cccp.c (S_ISREG, S_ISDIR): Delete defines.
        * cpplib.c, gcc.c: Likewise.
        * system.h (S_ISREG, S_ISDIR): Define if not already defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23785 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago(
law [Mon, 23 Nov 1998 08:57:40 +0000 (08:57 +0000)]
(
        * local-alloc.c (local_alloc): Use malloc not alloca for
        reg_qty, reg_offset, ref_next_in_qty.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23783 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago
law [Mon, 23 Nov 1998 08:57:38 +0000 (08:57 +0000)]

        * local-alloc.c (local_alloc): Use malloc not alloca for
        reg_qty, reg_offset, ref_next_in_qty.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23782 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago Add SH4 support:
amylaar [Mon, 23 Nov 1998 08:50:42 +0000 (08:50 +0000)]
Add SH4 support:
* config/sh/lib1funcs.asm (___movstr_i4_even, ___movstr_i4_odd): Define.
(___movstrSI12_i4, ___sdivsi3_i4, ___udivsi3_i4): Define.
* sh.c (reg_class_from_letter, regno_reg_class): Add DF_REGS.
(fp_reg_names, assembler_dialect): New variables.
(print_operand_address): Handle SUBREGs.
(print_operand): Added 'o' case.
Don't use adj_offsettable_operand on PRE_DEC / POST_INC.
Name of FP registers depends on mode.
(expand_block_move): Emit different code for SH4 hardware.
(prepare_scc_operands): Use emit_sf_insn / emit_df_insn as appropriate.
(from_compare): Likewise.
(add_constant): New argument last_value.  Changed all callers.
(find_barrier): Don't try HImode load for FPUL_REG.
(machine_dependent_reorg): Likewise.
(sfunc_uses_reg): A CLOBBER cannot be the address register use.
(gen_far_branch): Emit a barrier after the new jump.
(barrier_align): Don't trust instruction lengths before
fixing up pcloads.
(machine_dependent_reorg): Add support for FIRST_XD_REG .. LAST_XD_REG.
Use auto-inc addressing for fp registers if doubles need to
be loaded in two steps.
Set sh_flag_remove_dead_before_cse.
(push): Support for TARGET_FMOVD.  Use gen_push_fpul for fpul.
(pop): Support for TARGET_FMOVD.  Use gen_pop_fpul for fpul.
(calc_live_regs): Support for TARGET_FMOVD.  Don't save FPSCR.
Support for FIRST_XD_REG .. LAST_XD_REG.
(sh_expand_prologue): Support for FIRST_XD_REG .. LAST_XD_REG.
(sh_expand_epilogue): Likewise.
(sh_builtin_saveregs): Use DFmode moves for fp regs on SH4.
(initial_elimination_offset): Take TARGET_ALIGN_DOUBLE into account.
(arith_reg_operand): FPUL_REG is OK for SH4.
(fp_arith_reg_operand, fp_extended_operand) New functions.
(tertiary_reload_operand, fpscr_operand): Likewise.
(commutative_float_operator, noncommutative_float_operator): Likewise.
(binary_float_operator, get_fpscr_rtx, emit_sf_insn): Likewise.
(emit_df_insn, expand_sf_unop, expand_sf_binop): Likewise.
(expand_df_unop, expand_df_binop, expand_fp_branch): Likewise.
(emit_fpscr_use, mark_use, remove_dead_before_cse): Likewise.
* sh.h (CPP_SPEC): Add support for -m4, m4-single, m4-single-only.
(CONDITIONAL_REGISTER_USAGE): Likewise.
(HARD_SH4_BIT, FPU_SINGLE_BIT, SH4_BIT, FMOVD_BIT): Define.
(TARGET_CACHE32, TARGET_SUPERSCALAR, TARGET_HARWARD): Define.
(TARGET_HARD_SH4, TARGET_FPU_SINGLE, TARGET_SH4, TARGET_FMOVD): Define.
(target_flag): Add -m4, m4-single, m4-single-only, -mfmovd.
(OPTIMIZATION_OPTIONS): If optimizing, set flag_omit_frame_pointer
to -1 and sh_flag_remove_dead_before_cse to 1.
(ASSEMBLER_DIALECT): Define to assembler_dialect.
(assembler_dialect, fp_reg_names): Declare.
(OVERRIDE_OPTIONS): Add code for TARGET_SH4.
Hide names of registers that are not accessible.
(CACHE_LOG): Take TARGET_CACHE32 into account.
(LOOP_ALIGN): Take TARGET_HARWARD into account.
(FIRST_XD_REG, LAST_XD_REG, FPSCR_REG): Define.
(FIRST_PSEUDO_REGISTER: Now 49.
(FIXED_REGISTERS, CALL_USED_REGISTERS): Include values for registers.
(HARD_REGNO_NREGS): Special treatment of FIRST_XD_REG .. LAST_XD_REG.
(HARD_REGNO_MODE_OK): Update.
(enum reg_class): Add DF_REGS and FPSCR_REGS.
(REG_CLASS_NAMES, REG_CLASS_CONTENTS, REG_ALLOC_ORDER): Likewise.
(SECONDARY_OUTPUT_RELOAD_CLASS, SECONDARY_INPUT_RELOAD_CLASS): Update.
(CLASS_CANNOT_CHANGE_SIZE, DEBUG_REGISTER_NAMES): Define.
(NPARM_REGS): Eight floating point parameter registers on SH4.
(BASE_RETURN_VALUE_REG): SH4 also passes double values
in floating point registers.
(GET_SH_ARG_CLASS) Likewise.
Complex float types are also returned in float registers.
(BASE_ARG_REG): Complex float types are also passes in float registers.
(FUNCTION_VALUE): Change mode like PROMOTE_MODE does.
(LIBCALL_VALUE): Remove trailing semicolon.
(ROUND_REG): Round when double precision value is passed in floating
point register(s).
(FUNCTION_ARG_ADVANCE): No change wanted for SH4 when things are
passed on the stack.
(FUNCTION_ARG): Little endian adjustment for SH4 SFmode.
(FUNCTION_ARG_PARTIAL_NREGS): Zero for SH4.
(TRAMPOLINE_ALIGNMENT): Take TARGET_HARWARD into account.
(INITIALIZE_TRAMPOLINE): Emit ic_invalidate_line for TARGET_HARWARD.
(MODE_DISP_OK_8): Not for SH4 DFmode.
(GO_IF_LEGITIMATE_ADDRESS): No base reg + index reg for SH4 DFmode.
Allow indexed addressing for PSImode after reload.
(LEGITIMIZE_ADDRESS): Not for SH4 DFmode.
(LEGITIMIZE_RELOAD_ADDRESS): Handle SH3E SFmode.
Don't change SH4 DFmode nor PSImode RELOAD_FOR_INPUT_ADDRESS.
(DOUBLE_TYPE_SIZE): 64 for SH4.
(RTX_COSTS): Add PLUS case.
Increae cost of ASHIFT, ASHIFTRT, LSHIFTRT case.
(REGISTER_MOVE_COST): Add handling of R0_REGS, FPUL_REGS, T_REGS,
MAC_REGS, PR_REGS, DF_REGS.
(REGISTER_NAMES): Use fp_reg_names.
(enum processor_type): Add PROCESSOR_SH4.
(sh_flag_remove_dead_before_cse): Declare.
(rtx_equal_function_value_matters, fpscr_rtx, get_fpscr_rtx): Declare.
(PREDICATE_CODES): Add binary_float_operator,
commutative_float_operator, fp_arith_reg_operand, fp_extended_operand,
fpscr_operand, noncommutative_float_operator.
(ADJUST_COST): Use different scale for TARGET_SUPERSCALAR.
(SH_DYNAMIC_SHIFT_COST): Cheaper for SH4.
* sh.md (attribute cpu): Add value sh4.
(attrbutes fmovd, issues): Define.
(attribute type): Add values dfp_arith, dfp_cmp, dfp_conv, dfdiv.
(function units memory, int, mpy, fp): Make dependent on issue rate.
(function units issue, single_issue, load_si, load): Define.
(function units load_store, fdiv, gp_fpul): Define.
(attribute hit_stack): Provide proper default.
(use_sfunc_addr+1, udivsi3): Predicated on ! TARGET_SH4.
(udivsi3_i4, udivsi3_i4_single, divsi3_i4, divsi3_i4_single): New insns.
(udivsi3, divsi3): Emit special patterns for SH4 hardware,
(mulsi3_call): Now uses match_operand for function address.
(mulsi3): Also emit code for SH1 case.  Wrap result in REG_LIBCALL /
REG_RETVAL notes.
(push, pop, push_e, pop_e): Now define_expands.
(push_fpul, push_4, pop_fpul, pop_4, ic_invalidate_line): New expanders.
(movsi_ie): Added y/i alternative.
(ic_invalidate_line_i, movdf_i4): New insns.
(movdf_i4+[123], reload_outdf+[12345], movsi_y+[12]): New splitters.
(reload_indf, reload_outdf, reload_outsf, reload_insi): New expanders.
(movdf): Add special code for SH4.
(movsf_ie, movsf_ie+1, reload_insf, calli): Make use of fpscr visible.
(call_valuei, calli, call_value): Likewise.
(movsf): Emit no-op move.
(mov_nop, movsi_y): New insns.
(blt, sge): generalize to handle DFmode.
(return predicate): Call emit_fpscr_use and remove_dead_before_cse.
(block_move_real, block_lump_real): Predicate on ! TARGET_HARD_SH4.
(block_move_real_i4, block_lump_real_i4, fpu_switch): New insns.
(fpu_switch0, fpu_switch1, movpsi): New expanders.
(fpu_switch+[12], fix_truncsfsi2_i4_2+1): New splitters.
(toggle_sz): New insn.
(addsf3, subsf3, mulsf3, divsf3): Now define_expands.
(addsf3_i, subsf3_i, mulsf3_i4, mulsf3_ie, divsf3_i): New insns.
(macsf3): Make use of fpscr visible.  Disable for SH4.
(floatsisf2): Make use of fpscr visible.
(floatsisf2_i4): New insn.
(floatsisf2_ie, fixsfsi, cmpgtsf_t, cmpeqsf_t): Disable for SH4.
(ieee_ccmpeqsf_t): Likewise.
(fix_truncsfsi2): Emit different code for SH4.
(fix_truncsfsi2_i4, fix_truncsfsi2_i4_2, cmpgtsf_t_i4): New insns.
(cmpeqsf_t_i4, ieee_ccmpeqsf_t_4): New insns.
(negsf2, sqrtsf2, abssf2): Now expanders.
(adddf3, subdf3i, muldf2, divdf3, floatsidf2): New expanders.
(negsf2_i, sqrtsf2_i, abssf2_i, adddf3_i, subdf3_i): New insns.
(muldf3_i, divdf3_i, floatsidf2_i, fix_truncdfsi2_i): New insns.
(fix_truncdfsi2, cmpdf, negdf2, sqrtdf2, absdf2): New expanders.
(fix_truncdfsi2_i4, cmpgtdf_t, cmpeqdf_t, ieee_ccmpeqdf_t): New insns.
(fix_truncdfsi2_i4_2+1): New splitters.
(negdf2_i, sqrtdf2_i, absdf2_i, extendsfdf2_i4): New insns.
(extendsfdf2, truncdfsf2): New expanders.
(truncdfsf2_i4): New insn.
* t-sh (LIB1ASMFUNCS): Add _movstr_i4, _sdivsi3_i4, _udivsi3_i4.
(MULTILIB_OPTIONS): Add m4-single-only/m4-single/m4.
* float-sh.h: When testing for __SH3E__, also test for
__SH4_SINGLE_ONLY__ .
* va-sh.h (__va_freg): Define to float.
(__va_greg, __fa_freg, __gnuc_va_list, va_start):
        Define for __SH4_SINGLE_ONLY__ like for __SH3E__ .
        (__PASS_AS_FLOAT, __TARGET_SH4_P): Likewise.
(__PASS_AS_FLOAT): Use different definition for __SH4__ and
 __SH4_SINGLE__.
(TARGET_SH4_P): Define.
(va_arg): Use it.
* sh.md (movdf_k, movsf_i): Tweak the condition so that
init_expr_once is satisfied about the existence of load / store insns.
* sh.md (movsi_i, movsi_ie, movsi_i_lowpart, movsf_i, movsf_ie):
        change m constraint in source operand to mr / mf .
* va-sh.h (__va_arg_sh1): Use __asm instead of asm.
* (__VA_REEF): Define.
(__va_arg_sh1): Use it.
* va-sh.h (va_start, va_arg, va_copy): Add parenteses.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23777 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago * parse.y (named_class_head): Update CLASSTYPE_DECLARED_CLASS.
jason [Mon, 23 Nov 1998 03:16:06 +0000 (03:16 +0000)]
* parse.y (named_class_head): Update CLASSTYPE_DECLARED_CLASS.
Fixes Sec14/5/P14139.C

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23765 138bc75d-0d04-0410-961f-82ee72b054a4

25 years agoupdate copyrights
jason [Mon, 23 Nov 1998 03:12:41 +0000 (03:12 +0000)]
update copyrights

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23764 138bc75d-0d04-0410-961f-82ee72b054a4

25 years agonew
jason [Mon, 23 Nov 1998 02:42:28 +0000 (02:42 +0000)]
new

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23763 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago * class.c (finish_struct_1): Set things up for 0-width bitfields
jason [Mon, 23 Nov 1998 01:14:55 +0000 (01:14 +0000)]
* class.c (finish_struct_1): Set things up for 0-width bitfields
like we do for others.
* decl.c (check_tag_decl): New fn.
(shadow_tag): Split out from here.
* decl2.c (grok_x_components): Call it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23762 138bc75d-0d04-0410-961f-82ee72b054a4

25 years agoDaily bump.
law [Mon, 23 Nov 1998 00:45:03 +0000 (00:45 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23761 138bc75d-0d04-0410-961f-82ee72b054a4

25 years agofix implicit int
jason [Sun, 22 Nov 1998 23:23:45 +0000 (23:23 +0000)]
fix implicit int

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23760 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago * decl.c: Lose warn_about_return_type.
jason [Sun, 22 Nov 1998 23:21:44 +0000 (23:21 +0000)]
* decl.c: Lose warn_about_return_type.
(grokdeclarator): Always complain about implicit int, except for
`main () { ... }'.
Fixes Sec7/1_5/C07352.cm.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23759 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago * decl.c (tag_name): New fn.
jason [Sun, 22 Nov 1998 21:34:27 +0000 (21:34 +0000)]
* decl.c (tag_name): New fn.
(xref_tag): Complain about using typedef-name after class-key.
Fixes Sec7/1_3/C07351.cm.
* init.c (expand_vec_init): Also keep going if from_array.
Fixes g++.other/copy1.C.
* tree.c (is_overloaded_fn): Also handle the output of
build_offset_ref.
Fixes Sec5/3_3/S05162.C.
* decl.c (grokdeclarator): Use constructor_name when comparing
field name against enclosing class.
* class.c (finish_struct_anon): Likewise.
Fixes Sec9/2/C09268.cm.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23758 138bc75d-0d04-0410-961f-82ee72b054a4

25 years agoupdate
jason [Sun, 22 Nov 1998 21:27:47 +0000 (21:27 +0000)]
update

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23757 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago * i386/dgux.c (struct option): Add new "description field".
law [Sun, 22 Nov 1998 20:36:55 +0000 (20:36 +0000)]
    * i386/dgux.c (struct option): Add new "description field".
        * m88k/m88k.c (struct option): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23756 138bc75d-0d04-0410-961f-82ee72b054a4

25 years ago * decl.c (poplevel): Remove code to handle KEEP == 2.
mmitchel [Sun, 22 Nov 1998 17:50:33 +0000 (17:50 +0000)]
* decl.c (poplevel): Remove code to handle KEEP == 2.
(finish_function): Don't confuse BLOCK-order when
processing a destructor.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23755 138bc75d-0d04-0410-961f-82ee72b054a4

25 years agonew
jason [Sun, 22 Nov 1998 17:43:18 +0000 (17:43 +0000)]
new

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23754 138bc75d-0d04-0410-961f-82ee72b054a4

25 years agoBump for snapshot
law [Sun, 22 Nov 1998 16:08:02 +0000 (16:08 +0000)]
Bump for snapshot

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23752 138bc75d-0d04-0410-961f-82ee72b054a4

25 years agoComment on fix.
fx [Sun, 22 Nov 1998 14:02:22 +0000 (14:02 +0000)]
Comment on fix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23751 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * regmove.c (regmove_profitable_p): Use return value of find_matches
crux [Sun, 22 Nov 1998 05:59:02 +0000 (05:59 +0000)]
* regmove.c (regmove_profitable_p): Use return value of find_matches
properly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23750 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoBump for snapshot
law [Sun, 22 Nov 1998 02:47:41 +0000 (02:47 +0000)]
Bump for snapshot

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23749 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * reload1.c (eliminate_regs): Do not lose if eliminate_regs is called
law [Sun, 22 Nov 1998 02:46:22 +0000 (02:46 +0000)]
    * reload1.c (eliminate_regs): Do not lose if eliminate_regs is called
        without reload having been called earlier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23748 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * v850.c (ep_memory_operand): Offsets < 0 are not valid for EP
law [Sun, 22 Nov 1998 02:09:49 +0000 (02:09 +0000)]
    * v850.c (ep_memory_operand): Offsets < 0 are not valid for EP
        addressing modes.
        (v850_reorg): Similarly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23747 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoDaily bump.
law [Sun, 22 Nov 1998 00:45:32 +0000 (00:45 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23746 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago
law [Sat, 21 Nov 1998 21:14:46 +0000 (21:14 +0000)]

        * loop.c (check_dbra_loop): Avoid using gen_add2_insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23745 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago
law [Sat, 21 Nov 1998 20:42:05 +0000 (20:42 +0000)]

        * gcc.c-torture/execute/980526-1.c: Do nothing if NO_LABEL_VALUES
        is defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23744 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * decl.c (require_complete_types_for_parms): Call layout_decl
jason [Sat, 21 Nov 1998 16:20:55 +0000 (16:20 +0000)]
* decl.c (require_complete_types_for_parms): Call layout_decl
after we've completed the type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23743 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * decl2.c (validate_nonmember_using_decl): Allow using templates
loewis [Sat, 21 Nov 1998 13:42:29 +0000 (13:42 +0000)]
* decl2.c (validate_nonmember_using_decl): Allow using templates
from the global namespace.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23742 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoNew test case.
loewis [Sat, 21 Nov 1998 13:40:51 +0000 (13:40 +0000)]
New test case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23741 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago Handle specifying template args to member function templates.
jason [Sat, 21 Nov 1998 05:42:20 +0000 (05:42 +0000)]
Handle specifying template args to member function templates.
* tree.c (build_overload): Always create an OVERLOAD for a template.
* search.c (add_conversions): Handle finding an OVERLOAD.
* decl2.c (check_classfn): Likewise.
* lex.c (identifier_type): See through a baselink.
* parse.y (do_id): Don't call do_identifier if we got a baselink.
* class.c (instantiate_type, case TREE_LIST): Recurse.
* decl.c (grokdeclarator): Allow a boolean constant for array
bounds, odd as that sounds.
* pt.c (unify): Be more strict about non-type parms, except for
array bounds.
(UNIFY_ALLOW_INTEGER): New macro.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23740 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoDaily bump.
law [Sat, 21 Nov 1998 00:45:03 +0000 (00:45 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23739 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * loop.c (move_movables): Start of libcall might be new loop start.
amylaar [Fri, 20 Nov 1998 18:19:50 +0000 (18:19 +0000)]
* loop.c (move_movables): Start of libcall might be new loop start.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23738 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoAdded missing file/function to ChangeLog entry.
amylaar [Fri, 20 Nov 1998 11:36:50 +0000 (11:36 +0000)]
Added missing file/function to ChangeLog entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23737 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * basicio.c (PATH_MAX): Define only to _POSIX_PATH_MAX if that is
amylaar [Fri, 20 Nov 1998 10:49:53 +0000 (10:49 +0000)]
* basicio.c (PATH_MAX): Define only to _POSIX_PATH_MAX if that is
defined.  Otherwise, try MAXPATHLEN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23736 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * hash.c (hash_table_init_n): Wrap prototype arguments in PARAMS().
ghazi [Fri, 20 Nov 1998 09:18:42 +0000 (09:18 +0000)]
    * hash.c (hash_table_init_n): Wrap prototype arguments in PARAMS().

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23735 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoRegenerated.
fx [Fri, 20 Nov 1998 09:00:31 +0000 (09:00 +0000)]
Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23734 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago1998-11-20 Dave Love <d.love@dl.ac.uk>
fx [Fri, 20 Nov 1998 08:58:02 +0000 (08:58 +0000)]
1998-11-20  Dave Love  <d.love@dl.ac.uk>
* g77.texi: Assorted minor changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23733 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * function.c (nonlocal_goto_handler_slots): Renamed from
law [Fri, 20 Nov 1998 07:37:42 +0000 (07:37 +0000)]
    * function.c (nonlocal_goto_handler_slots): Renamed from
        nonlocal_goto_handler_slot; now an EXPR_LIST chain.
        (push_function_context_to): Adjust for this change.
        (pop_function_context_from): Likewise.
        (init_function_start): Likewise.
        (expand_function_end): Likewise.
        * function.h (struct function): Likewise.
        * calls.c (expand_call): Likewise.
        * explow.c (allocate_dynamic_stack_space): Likewise.
        * expr.h (nonlocal_goto_handler_slots): Rename its declaration.
        * stmt.c (declare_nonlocal_label): Make a new handler slot for each
        label.
        (expand_goto): When doing a nonlocal goto, find corresponding handler
        slot for it.  Don't put the label address in the static chain register.
        (expand_end_bindings): Break out nonlocal goto handling code into
        three new functions.
        (expand_nl_handler_label, expand_nl_goto_receiver,
        expand_nl_goto_receivers): New static functions, broken out of
        expand_end_bindings and adapted to create one handler per nonlocal
        label.
        * function.c (delete_handlers): Delete insn if it references any of
        the nonlocal goto handler slots.
        * i960.md (nonlocal_goto): Comment out code that modifies
        static_chain_rtx.
        * sparc.md (nonlocal_goto): Likewise.
        (goto_handler_and_restore_v9): Comment out.
        (goto_handler_and_restore_v9_sp64): Comment out.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23732 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoDaily bump.
law [Fri, 20 Nov 1998 00:46:03 +0000 (00:46 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23731 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * expr.c (STACK_BYTES): Delete unused macro.
law [Thu, 19 Nov 1998 22:47:55 +0000 (22:47 +0000)]
* expr.c (STACK_BYTES): Delete unused macro.
* calls.c: Provide default for PREFERRED_STACK_BOUNDARY.
(STACK_BYTES): Use PREFERRED_STACK_BOUNDARY, not STACK_BOUNDARY.
(expand_call): Likewise.
(emit_library_call): Likewise.
(emit_library_call_value): Likewise.
* function.c: Provide default for PREFERRED_STACK_BOUNDARY.
(STACK_BYTES): Use PREFERRED_STACK_BOUNDARY, not STACK_BOUNDARY.
* explow.c: Provide default for PREFERRED_STACK_BOUNDARY.
(round_push): Use PREFERRED_STACK_BOUNDARY, not STACK_BOUNDARY.
(allocate_dynamic_stack_space): Likewise.
* tm.texi (PREFERRED_STACK_BOUNDARY): Document new macro.
(STACK_BOUNDARY): Update description to reflect the new situation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23730 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * reorg.c (relax_delay_slots): When optimizing for code size, if a
law [Thu, 19 Nov 1998 22:45:14 +0000 (22:45 +0000)]
    * reorg.c (relax_delay_slots): When optimizing for code size, if a
        return with a filled delay slot is followed by a return with an
        unfilled delay slot, delete the first return and reemit the insn
        that was previously in its delay slot.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23729 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * makeinfo/Makefile.am (noinst_PROGRAMS): Renamed from bin_PROGRAMS
manfred [Thu, 19 Nov 1998 22:39:55 +0000 (22:39 +0000)]
  * makeinfo/Makefile.am (noinst_PROGRAMS): Renamed from bin_PROGRAMS
to avoid installing makeinfo.
  * makeinfo/Makefile.in: Regenerate using automake-1.3.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23728 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * i860.c (single_insn_src_p): Add missing parens.
law [Thu, 19 Nov 1998 21:23:27 +0000 (21:23 +0000)]
    * i860.c (single_insn_src_p): Add missing parens.
        * ginclude/math-3300.h: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23727 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * mpw.c (mpw_access): Add missing parens.
law [Thu, 19 Nov 1998 21:17:54 +0000 (21:17 +0000)]
    * mpw.c (mpw_access): Add missing parens.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23726 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * configure.in: detect cygwin* instead of cygwin32*
law [Thu, 19 Nov 1998 21:16:49 +0000 (21:16 +0000)]
   * configure.in: detect cygwin* instead of cygwin32*
   * configure: regenerate
   * configure.in: in comment, call AC_EXEEXT instead of AM_EXEEXT

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23725 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * regclass.c (init_reg_sets_1): Add prototype.
law [Thu, 19 Nov 1998 19:58:23 +0000 (19:58 +0000)]
    * regclass.c (init_reg_sets_1): Add prototype.
        (init_reg_modes): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23724 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * c-common.c: Change warning messages to say `comparison is
law [Thu, 19 Nov 1998 19:40:56 +0000 (19:40 +0000)]
    * c-common.c: Change warning messages to say `comparison is
        always true' or `comparison is always false' instead of the
        confusing `is always 0', `is always 1'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23723 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * Makefile.in (runtime-info.h): Avoid GNU make extensions.
law [Thu, 19 Nov 1998 19:36:30 +0000 (19:36 +0000)]
    * Makefile.in (runtime-info.h): Avoid GNU make extensions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23722 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * i386.h (LEGITIMATE_CONSTANT_P): Reject CONST_DOUBLEs that are not
law [Thu, 19 Nov 1998 19:27:26 +0000 (19:27 +0000)]
    * i386.h (LEGITIMATE_CONSTANT_P): Reject CONST_DOUBLEs that are not
        standard 387 constants.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23721 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago
bothner [Thu, 19 Nov 1998 19:06:35 +0000 (19:06 +0000)]

* print-tree.c (print_node):  After printing BLOCK or BIND_EXPR,
break instead of return (which loses closing '>').

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23720 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago0
bothner [Thu, 19 Nov 1998 19:06:33 +0000 (19:06 +0000)]
0
* print-tree.c (print_node):  After printing BLOCK or BIND_EXPR,
break instead of return (which loses closing '>').

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23719 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * i386.md (jump): Explicitly set "memory" attribute.
law [Thu, 19 Nov 1998 18:38:27 +0000 (18:38 +0000)]
    * i386.md (jump): Explicitly set "memory" attribute.
        (indirect_jump, prologue_set_stack_ptr): Likewise.
        (prologue_get_pc_and_set_got, pop): Likewise.
        (allocate_stack_worder, blockage, return_internal): Likewise.
        (return_pop_internal, nop): Likewise.
        (epilogue_set_stack_ptr, leave): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23718 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoSet USER_LABEL_PREFIX to "_"
nickc [Thu, 19 Nov 1998 15:44:19 +0000 (15:44 +0000)]
Set USER_LABEL_PREFIX to "_"

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23717 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * Early auto_inc reloads don't conflict with outputs.
amylaar [Thu, 19 Nov 1998 15:22:25 +0000 (15:22 +0000)]
* Early auto_inc reloads don't conflict with outputs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23716 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoThu Nov 19 11:16:55 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
apbianco [Thu, 19 Nov 1998 12:13:39 +0000 (12:13 +0000)]
Thu Nov 19 11:16:55 1998  Alexandre Petit-Bianco  <apbianco@cygnus.com>
* jcf-parse.c (jcf_parse_source): Function returned type is
  void. Added prototype.
(jcf_parse): Function returned type is void.
(yyparse): Remove call to fclose on the last parsed file.
* java-tree.h (jcf_parse): Changed jcf_parse prototype.
Wed Nov 18 14:21:48 1998  Anthony Green  <green@cygnus.com>
* jcf-parse.c (yyparse): Open class file in binary mode.
Fixes a show-stopper and includes a missing patch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23715 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago1998-11-19 Dave Love <d.love@dl.ac.uk>
fx [Thu, 19 Nov 1998 10:43:34 +0000 (10:43 +0000)]
1998-11-19  Dave Love  <d.love@dl.ac.uk>
* bugs.texi: Formatting changes from Craig.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23714 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoFormatting changes from Craig.
fx [Thu, 19 Nov 1998 10:41:20 +0000 (10:41 +0000)]
Formatting changes from Craig.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23713 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * configure.in: Don't do AC_CHECK_HEADERS(wait.h sys/wait.h).
ghazi [Thu, 19 Nov 1998 10:13:46 +0000 (10:13 +0000)]
    * configure.in: Don't do AC_CHECK_HEADERS(wait.h sys/wait.h).
        Instead call AC_HEADER_SYS_WAIT.
        * collect2.c: Don't provide defaults for sys/wait.h macros.
        * gcc.c: Likewise.
        * protoize.c: Likewise.  Also, don't include sys/wait.h.
        * system.h: Include sys/wait.h and provide macro defaults.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23712 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * configure.in: Call AC_HEADER_SYS_WAIT.
ghazi [Thu, 19 Nov 1998 10:05:03 +0000 (10:05 +0000)]
    * configure.in: Call AC_HEADER_SYS_WAIT.
        * pexecute.c: Include sys/wait.h when !IN_GCC.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23711 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoRegenerated.
fx [Thu, 19 Nov 1998 09:01:52 +0000 (09:01 +0000)]
Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23710 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago1998-11-19 Dave Love <d.love@dl.ac.uk>
fx [Thu, 19 Nov 1998 07:31:13 +0000 (07:31 +0000)]
1998-11-19  Dave Love  <d.love@dl.ac.uk>
* intdoc.in: Terminate some @xrefs with `,'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23709 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agogcc/ChangeLog:
manfred [Thu, 19 Nov 1998 06:49:46 +0000 (06:49 +0000)]
gcc/ChangeLog:
1998-10-24  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
* Makefile.in (mandir): Set to @mandir@.
(man1dir): New variable to hold the former value of $(mandir).
Replace all uses of $(mandir) by $(man1dir).
gcc/cp/ChangeLog:
1998-11-14  Manfred Hollstein  <manfred@s-direktnet.de>
* Make-lang.in (mandir): Replace all uses of $(mandir) by $(man1dir).
gcc/f/ChangeLog:
1998-11-14  Manfred Hollstein  <manfred@s-direktnet.de>
* Make-lang.in (mandir): Replace all uses of $(mandir) by $(man1dir).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23708 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoAdd missing ChangeLog entry.
law [Thu, 19 Nov 1998 04:28:56 +0000 (04:28 +0000)]
Add missing ChangeLog entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23707 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agonew
jason [Thu, 19 Nov 1998 02:36:36 +0000 (02:36 +0000)]
new

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23706 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * semantics.c (begin_class_definition): Call
jason [Thu, 19 Nov 1998 02:35:15 +0000 (02:35 +0000)]
* semantics.c (begin_class_definition): Call
maybe_process_partial_specialization before push_template_decl.
Don't call push_template_decl for a specialization.
* search.c (lookup_field): Do return a member template class.
* decl2.c (handle_class_head): Handle member template classes.
* decl.c (grokdeclarator): A parm type need not be complete.
* pt.c (convert_nontype_argument): Fix thinko.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23705 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoWed Nov 18 23:54:53 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
apbianco [Thu, 19 Nov 1998 01:54:44 +0000 (01:54 +0000)]
Wed Nov 18 23:54:53 1998  Alexandre Petit-Bianco  <apbianco@cygnus.com>
* class.c (unmangle_classname): Set QUALIFIED_P when appropriate.
(layout_class): Cope with methods featuring WFL in decl names.
* decl.c (unqualified_object_id_node): New global variable,
  initialized.
(build_decl_no_layout): Removed.
* expr.c (build_primtype_type_ref): Handle Double.
(java_lang_expand_expr): Fixed indentations.
* java-tree.h (CLASS_METHOD_CHECKED_P): Flag deleted.
(flag_wall, flag_redundant, flag_not_overriding,
  flag_static_local_jdk1_1, unqualified_object_id_node): Global
  variable declarations.
(build_decl_no_layout): Removed prototype.
(java_get_real_method_name): Added prototype.
(IS_UNCHECKED_EXPRESSION_P): Renamed IS_UNCHECKED_EXCEPTION_P.
(java_parse_abort_on_error): Macro now just returns.
* jcf-parse.c (jcf_parse_source): Check fclose returned
  value. Call emit_register_classes if java_report_errors returns
  zero.
* lanc.c (flag_wall, flag_redundant, flag_not_overriding,
  flag_static_local_jdk1_1): New integer flags.
(lang_decode_option): New flags set here.
* parse.h (GET_REAL_TYPE, GET_METHOD_NAME): New macros.
(OBSOLETE_MODIFIER_WARNING): Issue error message conditionally to
  the flag_redundant variable.
(SET_TYPE_FOR_RESOLUTION): Consider Object being java.lang.Object
  when parsing java.lang.Object class.
(BUILD_MONITOR_ENTER, BUILD_MONITOR_EXIT): Added terminal
  NULL_TREE to build.
(resolve_qualified_expression_name): Fixed indentation.
(patch_array_ref): Changed prototype.
(not_initialized_as_it_should_p): Prototype removed.
(java_report_errors): Added function prototype.
* parse.y (formal_parameter:): Changed error message for not yet
  supported final parameters.
(class_type_list:): Set both PURPOSE and VALUE of created
  TREE_LIST to be class_type.
(primary_no_new_array:): Handle class literals on primitive types.
(parse_warning_context): Reinstalled correct force_error and
  do_warning flags setups.
(java_report_errors): Changed prototype. Return java_error_count
  value.
(variable_redefinition_error): Consider treating variable type as
  a fake pointer.
(create_interface): Warn about redundant abstract modifier if
  flag_redundant is set. Changed error message.
(lookup_field_wrapper): Save/restore globals before/after looking
  up field.
(duplicate_declaration_error_p): Consider treating declaration
  type as a fake pointer.
(register_fields): Extract real type from dependency node. Check
  for duplicate field declaration after type adjustment. Use
  DECL_INITIAL to store static final initialized values.
(method_header): Extract real function type from dependency node.
(check_abstract_method_header): Use GET_METHOD_NAME.
(obtain_incomplete_type): Layout fake pointer type.
(safe_layout_class): Don't try to check for methods before layout.
(java_complete_class): Don't check for correct throws clause
  elements inheritance here.
(resolve_and_layout): Broadened name parameter meaning.
(reset_method_name): Use GET_METHOD_NAME.
(java_get_real_method_name): New function.
(java_check_regular_methods): Don't check methods in
  java.lang.Object.  Verify lineage of throws clause elements. Use
  flag_no_overriding in warning report.
(check_throws_clauses): Don't check if class was from
  bytecode. Use IS_UNCHECKED_EXCEPTION_P macro.
(java_check_methods): Don't set CLASS_METHOD_CHECKED_P flag.
(declare_local_variables): Use flag_static_local_jdk1_1 to report
  warning on unsupported final local variables. Use build_decl
  instead of build_decl_no_layout. Get real local variable type from
  dependency node.
(source_start_java_method): Get real parameter type from
  dependency node. Call build_decl instead of build_decl_no_layout.
(java_layout_classes): Reverse tree and layout type and class as
  required. Mark class as loaded when done.
(resolve_field_access): Fixed indentation. Restricted condition
  leading to static field access code generation. Set field_type
  decl's TREE_TYPE if QUAL_DECL_TYPE not available.
(resolve_qualified_expression_name): Initialize type_found to
  null. Handle static field resolved during qualification. Fixed
  layout on non primitive field decl types.
(not_accessible_p): Fixed typo in comment.
(patch_method_invocation): Resolve and layout class to search from
  type.
(lookup_method_invoke): Keep integer constant 0 as is. Resolve and
  layout non primitive type, if necessary. Make method node only to
  report errors.
(find_applicable_accessible_methods_list): Consider WFL'ed method
  decl names. Fixed indentation.
(argument_types_convertible): Resolve and layout target type if
  necessary.
(java_complete_tree): Fixed indentation problems. Rewrote
  CALL_EXPR thrown exceptions check. Re-installed further processing
  of the assignment in certain cases.
(patch_assignment): Call maybe_build_primttype_type_ref to perform
  inlining on class literals.
(valid_builtin_assignconv_identity_widening_p): Cope with constant
  0 literal.
(valid_method_invocation_conversion_p): Likewise.
(patch_string): Temporary disable forbidden use of `this' in
  explicit constructor invocations when doing string concatenation
  within their scope.
(patch_unaryop): Added comment. Reinstalled code to disable
  further check on assignment operation with cast expression RHS.
(patch_switch_statement): Fixed indentation.
(build_try_statement): Call build_decl instead of
  build_decl_no_layout.
(patch_synchronized_statement): Likewise.
(patch_throw_statement): Use IS_UNCHECKED_EXCEPTION_P instead of
  IS_UNCHECKED_EXPRESSION_P.
(check_thrown_exceptions_do): Changed leading comment. Resolve and
  layout argument exception type.
(purge_unchecked_exceptions): Use IS_UNCHECKED_EXCEPTION_P instead
  of IS_UNCHECKED_EXPRESSION_P.
Fixed problems found when compiling a mixture of .class and .java
files in the same package. Some support for the compilation of libjava.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23704 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoDaily bump.
law [Thu, 19 Nov 1998 00:45:03 +0000 (00:45 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23703 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoRegenerate config.in (accidentally omitted from last patch.)
ghazi [Wed, 18 Nov 1998 19:49:11 +0000 (19:49 +0000)]
Regenerate config.in (accidentally omitted from last patch.)

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23700 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * cp-tree.h (PTRMEM_CST_CLASS): Fix typo.
mmitchel [Wed, 18 Nov 1998 17:58:33 +0000 (17:58 +0000)]
* cp-tree.h (PTRMEM_CST_CLASS): Fix typo.
(global_delete_fndecl): New variable.
* decl.c (global_delete_fndecl): Define it.
(init_decl_processing): Set it.
* init.c (build_builtin_delete_call): Use it.
* tree.c (mapcar): Recursively call mapcar for the type of EXPR
nodes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23699 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoFix memory corruption probelem in reload.
wilson [Wed, 18 Nov 1998 17:52:45 +0000 (17:52 +0000)]
Fix memory corruption probelem in reload.
* reload.c (find_reloads_address_part): If have a CONST_INT, create
a new one before passing it to force_const_mem.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23698 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoFix reload problem found by thumb port.
wilson [Wed, 18 Nov 1998 16:32:19 +0000 (16:32 +0000)]
Fix reload problem found by thumb port.
* reload.c (find_reloads_toplev): Pass &x instead of NULL_PTR in
find_reloads_address call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23697 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * expr.c (store_expr): Don't generate load-store pair
amylaar [Wed, 18 Nov 1998 14:15:03 +0000 (14:15 +0000)]
* expr.c (store_expr): Don't generate load-store pair
if TEMP is identical (according to ==) with TARGET.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23696 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * decl.c (cplus_expand_expr_stmt): Always complain about unresolved
jason [Wed, 18 Nov 1998 12:27:30 +0000 (12:27 +0000)]
* decl.c (cplus_expand_expr_stmt): Always complain about unresolved
type.
Fixes Sec13/4/E13417.C
* tree.c (lvalue_p_1): An INDIRECT_REF to a function is an lvalue.
* call.c (build_object_call): Also support references to functions.
* typeck.c (convert_for_initialization): Don't decay a function
if the target is a reference to function.
Fixes Sec13/2_1_1_2/P13120.C
* search.c (add_conversions): Get all the overloads from a class.
Fixes Sec13/2/P13101.C
* decl.c (grok_ctor_properties): Complain about any constructor
that will take a single arg of the class type by value.
Fixes Sec12/8/S12072.C
* typeck2.c (build_functional_cast): Can't create objects of
abstract classes this way.
* cvt.c (ocp_convert): Likewise.
Fixes Sec10/4/S10018.C
* decl.c (grokfndecl): Member functions of local classes are not
public.
Fixes Sec10/3/P10092.C

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23695 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * Make-lang.in (cc1plus): Add dependency on hash.o.
mmitchel [Wed, 18 Nov 1998 08:33:11 +0000 (08:33 +0000)]
* Make-lang.in (cc1plus): Add dependency on hash.o.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23694 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoup
jason [Wed, 18 Nov 1998 02:25:18 +0000 (02:25 +0000)]
up

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23693 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agonew
jason [Wed, 18 Nov 1998 02:24:18 +0000 (02:24 +0000)]
new

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23692 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * search.c (get_abstract_virtuals): Complain about virtuals with
jason [Wed, 18 Nov 1998 02:21:54 +0000 (02:21 +0000)]
* search.c (get_abstract_virtuals): Complain about virtuals with
no final overrider.
* typeck2.c (abstract_virtuals_error): Remove handling for virtuals
with no final overrider.
* class.c (override_one_vtable): Don't set DECL_ABSTRACT_VIRTUAL_P
on virtuals with no final overrider.
Fixes Sec10/3/E10120.C
* lex.c (reinit_parse_for_block): Add a space after the initial ':'.
Fixes Sec9/7/R09434.r0
* class.c (finish_struct_1): Don't remove zero-width bit-fields until
after layout_type.
Fixes Sec9/6/P09024.C
* friend.c (do_friend): Don't set_mangled_name_for_decl.
Fixes Sec9/2/P09075.C
* class.c (finish_struct_anon): Complain about non-fields.
* decl2.c (build_anon_union_vars): Likewise.
* decl.c (grokdeclarator): Normal data members can't have the same
name as the class, either.
* class.c (finish_struct_anon): Neither can members of an
anonymous union.
Fixes Sec9/2/C09268.cm

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23691 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago1998-11-18 Dave Love <d.love@dl.ac.uk>
fx [Wed, 18 Nov 1998 02:11:38 +0000 (02:11 +0000)]
1998-11-18  Dave Love  <d.love@dl.ac.uk>
* g77.f-torture/compile/981117-1.f: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23690 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoNew test.
fx [Wed, 18 Nov 1998 02:11:07 +0000 (02:11 +0000)]
New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23689 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoDaily bump.
law [Wed, 18 Nov 1998 00:45:02 +0000 (00:45 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23688 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * reload1.c (reload_reg_free_for_value_p): When considered reload
amylaar [Tue, 17 Nov 1998 14:26:40 +0000 (14:26 +0000)]
* reload1.c (reload_reg_free_for_value_p): When considered reload
has an output, matching inputs are not sufficient to avoid conflict.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23687 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * cp-tree.h (TYPE_ALIAS_SET): Document language-dependent uses.
mmitchel [Tue, 17 Nov 1998 12:51:20 +0000 (12:51 +0000)]
* cp-tree.h (TYPE_ALIAS_SET): Document language-dependent uses.
(TYPE_BINFO): Likewise.
(IS_AGGR_TYPE): Tweak.
(SET_IS_AGGR_TYPE): New macro.
(CLASS_TYPE_P): Tweak.
(lang_type): Group mark bitfields together.  Remove linenum.
(CLASSTYPE_SOURCE_LINE): Remove macro.
(CLASSTYPE_MARKED_N): New macro.
(SET_CLASSTYPE_MARKED_N): Likewise.
(CLEAR_CLASSTYPE_MARKED_N): Likewise.
(CLASS_TYPE_MARKED_*): Use them.
(SET_CLASSTYPE_MARKED_*): Likewise.
(CLEAR_CLASSTYPE_MARKED_*): Likewise.
(TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO): Likewise.
(TYPE_TEMPLATE_INFO): Handle TEMPLATE_TEMPLATE_PARMs as well.
(TYPENAME_TYPE_FULLNAME): Use TYPE_BINFO rather than CLASSTYPE_SIZE.
* class.c (class_cache_obstack): New variable.
(class_cache_firstobj): Likewise.
(finish_struct): Don't set CLASSTYPE_SOURCE_LINE.
(pushclass): Free the cache, when appropriate.
(popclass): Tidy.
(maybe_push_cache_obstack): Use class_cache_obstack.
* decl.c (include hash.h).
(typename_hash): New function.
(typename_compare): Likewise.
(build_typename_type): Check the hash table to avoid creating
duplicates.
(build_ptrmemfunc_type): Use SET_IS_AGGR_TYPE.
(grokdeclarator): Use CLASS_TYPE_P.
(xref_basetypes): Likewise.
(start_function): Likewise.  Don't put current_class_ref on the
permanent obstack.
* error.c (dump_type_real): Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO
and TYPE_TI_ARGS.
* lex.c (note_got_semicolon): Use CLASS_TYPE_P.
(make_lang_type): Don't create TYPE_LANG_SPECIFIC and associated
fields for types other than class types.  Do clear TYPE_ALIAS_SET
for types other than class types, though.
* method.c (build_overload_identifier): Use CLASS_TYPE_P and
TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO.
* pt.c (process_template_parm): Don't set
CLASSTYPE_GOT_SEMICOLON.
(lookup_template_class) Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO.
Coerce arguments on the momentary obstack.
(for_each_template_parm): Use TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO.
(instantiate_class_template): Calculate template arguments on the
momentary obstack.  Tidy.
(tsubst_template_arg_vector): Use make_temp_vec.
(tsubst_aggr_type): Put template arguments on the momentary
obstack.
(tsubst_decl): Likewise.
(tsubst): Copy the array bounds index to the permanent obstack
before building index types.  Use new macros.
(unify): Use new macros.
(do_type_instantiation): Likewise.
* search.c (lookup_fnfields_1): Use new macros.
(dfs_pushdecls): Build envelopes on the cache obstack.
(dfs_compress_decls): Use new macros.
(push_class_decls): Build on the cache obstack.
* semantics.c (finish_typeof): Don't set CLASSTYPE_GOT_SEMICOLON.
* sign.c (build_signature_pointer_or_reference_type): Use
SET_IS_AGGR_TYPE.
* tree.c (make_binfo): Check CLASS_TYPE_P.
(copy_template_template_parm): Adjust.
(make_temp_vec): Use push_expresion_obstack.
* typeck.c (complete_type): Use new macros.
(comptypes): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23686 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoupdate
jason [Tue, 17 Nov 1998 12:41:47 +0000 (12:41 +0000)]
update

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23685 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * pt.c (tsubst): Add diagnostics for invalid array, reference
jason [Tue, 17 Nov 1998 12:36:00 +0000 (12:36 +0000)]
* pt.c (tsubst): Add diagnostics for invalid array, reference
and pointer to member types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23684 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * hash.h (hash_table_key): New type.
mmitchel [Tue, 17 Nov 1998 11:50:24 +0000 (11:50 +0000)]
* hash.h (hash_table_key): New type.
(hash_entry): Change `string' field to generic `key'.
(hash_table): Add `comp' and `hash' functions.
(hash_table_init): Take them as input.
(hash_table_init_n): Likewise.
(hash_lookup): Modify for generic keys.
(hash_newfunc): Likewise.
(hash_traverse): Likewise.
(string_hash): New function.
(string_compare): Likewise.
(string_copy): Likewise.
* hash.c (hash_table_init_n): Modify for generic keys.
(hash_table_init): Likewise.
(hash_lookup): Likewise.
(hash_newfunc): Likewise.
(hash_traverse): Likewise.
(string_hash): Split out from hash_lookup.
(string_compare): New function.
(string_copy): Split out from hash_lookup.
* tlink.c (symbol_hash_newfunc): Modify for new interfaces to hash
tables.
(symbol_hash_lookup): Likewise.
(file_hash_newfunc): Likewise.
(file_hash_lookup): Likewise.
(demangled_hash_newfunc): Likewise.
(demangled_hash_lookup): Likewise.
(tlink_int): Likewise.
(read_repo_file): Likewise.
(recompile_files): Likewise.
(demangle_new_symbols): Likewise.
(scan_linker_output): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23683 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * flow.c (insn_dead_p): New argument NOTES. Changed all callers.
amylaar [Tue, 17 Nov 1998 09:14:33 +0000 (09:14 +0000)]
* flow.c (insn_dead_p): New argument NOTES.  Changed all callers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23680 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoDaily bump.
law [Tue, 17 Nov 1998 00:45:33 +0000 (00:45 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23679 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * typeck2.c (my_friendly_abort): Don't fatal twice in a row.
jason [Mon, 16 Nov 1998 20:45:16 +0000 (20:45 +0000)]
* typeck2.c (my_friendly_abort): Don't fatal twice in a row.
* typeck.c (c_expand_start_case): Use build_expr_type_conversion.
Simplify.
Fixes Sec6/4_2/G06164.gr
* parse.y (structsp): Fix cut-and-paste error.
Fixes Sec6/4_2/C06166.cm
* init.c (build_new): Complain about non-integral size.
Fixes Sec5/3_4/E05276.C
* parse.y (unary_expr): Complain about defining types in sizeof.
Fixes Sec5/3_3/S05178.C
* typeck.c (expr_sizeof): Complain about sizeof an overloaded fn.
Fixes Sec5/3_3/S05161.C
* rtti.c (build_x_typeid): Complain about typeid without
including <typeinfo>.
(get_typeid): Likewise.  Complain about typeid of incomplete type.
(get_tinfo_fn_dynamic): Likewise.
(get_typeid_1): Not static anymore.
* except.c (build_eh_type_type): Use get_typeid_1.
Fixes Sec5/2_8/C05517.cm
* rtti.c (build_dynamic_cast_1): Give errors for dynamic_cast to
ambiguous or private bases.  Fix warning for reference cast.
Fixes Sec5/2_7/C05516.cm

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23678 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * rs6000.c (output_mi_thunk): Improve test for local branch.
dje [Mon, 16 Nov 1998 15:00:10 +0000 (15:00 +0000)]
* rs6000.c (output_mi_thunk): Improve test for local branch.
* rs6000.c (output_mi_thunk): Correct test for aggregate values.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23676 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * reload1.c (reload_reg_free_before_p): Delete.
amylaar [Mon, 16 Nov 1998 13:04:01 +0000 (13:04 +0000)]
* reload1.c (reload_reg_free_before_p): Delete.
Changed all callers to use reload_reg_free_for_value_p instead.
(reload_reg_free_for_value_p): Handle more reload types.
A RELOAD_FOR_INPUT doesn't conflict with its
RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_INPADDR_ADDRESS.
Add special case for OUT == const0_rtx.
Added ignore_address_reloads argument.  Changed all callers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23675 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * cp-tree.h (DECL_TEMPLATE_INSTANTIATED): New macro.
mmitchel [Mon, 16 Nov 1998 08:34:38 +0000 (08:34 +0000)]
* cp-tree.h (DECL_TEMPLATE_INSTANTIATED): New macro.
* decl.c (duplicate_decls): Remove special-case code to deal with
template friends, and just do the obvious thing.
* pt.c (register_specialization): Tweak for clarity, and also to
clear DECL_INITIAL for an instantiation before it is merged with a
specialization.
(check_explicit_specialization): Fix indentation.
(tsubst_friend_function): Handle both definitions in friend
declaration and outside friend declarations.
(tsubst_decl): Don't clear DECL_INITIAL for an instantiation.
(regenerate_decl_from_template): Tweak accordingly.
(instantiate_decl): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23674 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * decl.c (cplus_expand_expr_stmt): Promote warning about naked
jason [Mon, 16 Nov 1998 05:05:20 +0000 (05:05 +0000)]
* decl.c (cplus_expand_expr_stmt): Promote warning about naked
member function reference to error.
* cvt.c (ocp_convert): Complain about converting an overloaded
function to void.
* init.c (build_offset_ref): Just return a lone static member
function.
* decl.c (cp_finish_decl): Only complain about real CONSTRUCTORs,
not internal ones.
* typeck.c (build_binary_op_nodefault): Improve error handling.
* decl.c (grokfndecl): Complain about making 'main' a template.
* typeck.c (string_conv_p): Don't convert from wchar_t[] to char*.
* call.c (build_method_call): Handle a BIT_NOT_EXPR around a
TYPE_DECL in a template.
* typeck2.c (my_friendly_abort): Add URL in the other case, too.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23673 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * toplev.c (compile_file): Don't pedwarn about undefined static
jason [Mon, 16 Nov 1998 02:25:57 +0000 (02:25 +0000)]
* toplev.c (compile_file): Don't pedwarn about undefined static
functions just because we passed -Wunused.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23672 138bc75d-0d04-0410-961f-82ee72b054a4

26 years agoDaily bump.
law [Mon, 16 Nov 1998 00:45:03 +0000 (00:45 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23671 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * function.c (purge_addressof_1): Unshare rtl created by
amylaar [Sun, 15 Nov 1998 20:43:19 +0000 (20:43 +0000)]
* function.c (purge_addressof_1): Unshare rtl created by
store_bit_field.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23670 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * regmove.c (regmove_optimize): Don't do anything but
amylaar [Sun, 15 Nov 1998 20:24:19 +0000 (20:24 +0000)]
* regmove.c (regmove_optimize): Don't do anything but
optimize_reg_copy[123] when flag_regmove is not set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23669 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * decl.c (struct cp_function): Add named_label_uses.
jason [Sun, 15 Nov 1998 19:24:43 +0000 (19:24 +0000)]
* decl.c (struct cp_function): Add named_label_uses.
(push_cp_function_context): Save it.
(pop_cp_function_context): Restore it.
(define_label): Also complain about jumping into the scope of
non-POD objects that don't have constructors.
* tree.c (pod_type_p): New fn.
Fixes g++.other/init9.C
* pt.c (instantiate_class_template): Clear TYPE_BEING_DEFINED sooner.
* rtti.c (synthesize_tinfo_fn): Call import_export_decl here.
(get_tinfo_fn): Not here.
* repo.c (repo_get_id): Abort if we get called for an incomplete
type.
Fixes g++.pt/instantiate4.C

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23667 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * g++.old-deja/g++.eh/throw2.C: New test. CV-qualifiers are not
oliva [Sun, 15 Nov 1998 19:00:45 +0000 (19:00 +0000)]
* g++.old-deja/g++.eh/throw2.C: New test.  CV-qualifiers are not
  properly discarded.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23666 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago * jvgenmain.c: Need to #include "gansidecl.h" (to get PROTO).
bothner [Sun, 15 Nov 1998 17:16:06 +0000 (17:16 +0000)]
* jvgenmain.c:  Need to #include "gansidecl.h" (to get PROTO).
* jcf-write.c (perform_relocations):  Move check out one loop.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23665 138bc75d-0d04-0410-961f-82ee72b054a4

26 years ago8
bothner [Sun, 15 Nov 1998 17:16:05 +0000 (17:16 +0000)]
8
* jvgenmain.c:  Need to #include "gansidecl.h" (to get PROTO).
* jcf-write.c (perform_relocations):  Move check out one loop.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23664 138bc75d-0d04-0410-961f-82ee72b054a4