Commit Graph

26479 Commits

Author SHA1 Message Date
Zack Weinberg 3839069b02 simplify-rtx.c (SIGN_EXTEND): New macro.
* simplify-rtx.c (SIGN_EXTEND): New macro.
	(simplify_unary_operation, simplify_binary_operation,
	simplify_relational_operation): Use SIGN_EXTEND.  Make low
	halves of (low, high) pairs unsigned if they weren't already.
	(simplify_ternary_operation): Cast INTVAL to unsigned before
	comparing to a MODE_BITSIZE.

From-SVN: r34109
2000-05-23 18:06:22 +00:00
Kaveh R. Ghazi f31e826ba3 getopt.h (getopt): Also check HAVE_DECL_* when prototyping.
include:
	* getopt.h (getopt): Also check HAVE_DECL_* when prototyping.

	* libiberty.h (basename): Likewise.

gcc:
	* aclocal.m4 (gcc_AC_CHECK_DECL, gcc_AC_CHECK_DECLS): New macros
	rewritten from the internals of gcc_AC_NEED_DECLARATION{S}.

	* configure.in (gcc_AC_CHECK_DECLS): Call this instead of
	gcc_AC_NEED_DECLARATIONS.

	* dwarfout.c: Don't prototype time().

	* gcc.c: Check HAVE_DECL_* instead of NEED_DECLARATION_*.

	* system.h: Likewise.

	* toplev.c: Likewise.

From-SVN: r34108
2000-05-23 17:42:19 +00:00
Zack Weinberg 04de731462 * c-decl.c (pushdecl): Invert sense of test for non-global types.
From-SVN: r34107
2000-05-23 17:28:23 +00:00
J"orn Rennecke a3afe9205d * reload1.c (reload_cse_move2add): Honor TRULY_NOOP_TRUNCATION.
From-SVN: r34106
2000-05-23 18:13:36 +01:00
Jonathan Larmour ed7fd6c8d9 config/mips/elf64.h (CTOR_LISTS_DEFINED_EXTERNALLY): Define
From-SVN: r34105
2000-05-23 14:14:32 +00:00
Richard Kenner b81f53a13c alpha.c: Remove #ifdef HAIFA since now only scheduler.
* config/alpha/alpha.c: Remove #ifdef HAIFA since now only scheduler.
	(alpha_start_function): Never write ..ng label if VMS or NT.
	(alpha_align_insns): Remove GP_IN_USE arg.
	Alignment now unsigned.
	(alpha_reorg): Don't pass GP_IN_USE arg to alpha_align_insns.
	* config/alpha/alpha.md (prologue_ldgp): Split into one define_expand
	and two define_insn's.

From-SVN: r34104
2000-05-23 06:42:56 -04:00
Richard Henderson 3c094e2201 * combine.c (simplify_comparison): Use trunc_int_for_mode.
From-SVN: r34103
2000-05-23 01:41:38 -07:00
Jeff Law 81e73afa13 Daily bump.
From-SVN: r34102
2000-05-23 01:45:07 -06:00
Mark Mitchell 993894639c class.c (build_ctor_vtbl_group): Set inits.
* class.c (build_ctor_vtbl_group): Set inits.
	* optimize.c (maybe_clone_body): Set DECL_INLINE and
	DECL_THIS_INLINE appropriately for clones.

From-SVN: r34101
2000-05-23 06:31:16 +00:00
Richard Henderson 163d3408ea * stor-layout.c (place_field): Change rli->size to rli->offset.
From-SVN: r34100
2000-05-22 23:10:12 -07:00
Richard Henderson ca1117ccf7 function.c (thread_prologue_and_epilogue_insns): Make sure existing line number notes appear after the prologue.
* function.c (thread_prologue_and_epilogue_insns): Make sure
        existing line number notes appear after the prologue.

From-SVN: r34098
2000-05-22 20:40:53 -07:00
Richard Kenner 941cc05afd alpha.c (alpha_fnname): New static variable.
* config/alpha/alpha.c (alpha_fnname): New static variable.
	(print_operand, case '~'): New case.
	(alpha_expand_prologue): Emit prologue_ldgp insn if needed.
	(alpha_start_function): Set alpha_fnname.
	Write "ng" label if no ldgp; don't write ldgp insn.
	* config/alpha/alpha.h (PRINT_OPERAND_PUNCT_VALID_P): New case '~'.
	* config/alpha/alpha.md (prologue_ldgp): New define_insn.

From-SVN: r34097
2000-05-22 21:44:05 -04:00
Mark Mitchell 421844e720 cp-tree.h (IDENTIFIER_TYPENAME_P): Use a flag, not strncmp.
* cp-tree.h (IDENTIFIER_TYPENAME_P): Use a flag, not strncmp.
	(DECL_CONV_FN_P): Simplify.
	(DECL_OPERATOR): Remove.
	(language_to_string): Declare.
	* decl.c (duplicate_decls): Fix typo in comment.
	(grokdeclarator): Adjust use of IDENTIFIER_TYPENAME_P.
	(grok_op_properties): Use DECL_CONV_FN_P instead of
	IDENTIFIER_TYPENAME_P.
	* dump.c (dequeue_and_dump): Dump the language linkage of
	declarations.
	* error.c (language_to_string): Give it external linkage.
	* method.c (build_typename_overload): Set IDENTIFIER_TYPENAME_P.
	(implicitly_declare_fn): Set DECL_LANGUAGE.
	* pt.c (check_explicit_specialization): Use DECL_CONV_FN_P, not
	IDENTIFIER_TYPENAME_P.
	(tsubst_decl): Likewise.
	(tsubst_copy): Adjust use of IDENTIFIER_TYPENAME_P.
	* semantics.c (finish_member_declaration): Don't mark members of
	classes declared in an extern "C" region as extern "C".

From-SVN: r34095
2000-05-22 22:52:32 +00:00
Clinton Popetz 46972a3631 jump.c (jump_optimize_1): Don't increment LABEL_NUSES on deleted labels.
* jump.c (jump_optimize_1): Don't increment LABEL_NUSES
	on deleted labels.

From-SVN: r34094
2000-05-22 18:46:56 -04:00
Richard Kenner d171a5fbab Fix whitespace in comment
From-SVN: r34093
2000-05-22 18:40:02 -04:00
Alexandre Oliva 70919dee36 Use just -g instead of -gdwarf-2
From-SVN: r34090
2000-05-22 21:16:34 +00:00
Alexandre Oliva 38285a09a5 * gcc.dg/dwarf2-1.c: New test.
From-SVN: r34089
2000-05-22 21:07:15 +00:00
Richard Kenner 678164a58e optabs.c (can_extend_p): Allow unsignedp to have any nonzero value.
* optabs.c (can_extend_p): Allow unsignedp to have any nonzero value.
	(gen_extend_insn, can_fix_p, can_float_p): Likewise.

From-SVN: r34087
2000-05-22 16:47:40 -04:00
Zack Weinberg 5dd33f4be2 * varasm.c (eh_frame_section): Revert change to argument list.
From-SVN: r34085
2000-05-22 18:39:47 +00:00
Richard Kenner 2bc9f98c24 final.c (final_scan_insn, [...]): Remove dangling "else" that causes "break" to be conditional.
* final.c (final_scan_insn, case NOTE_INSN_FUNCTION_BEG): Remove
	dangling "else" that causes "break" to be conditional.
	Also remove unneeded code at start.

From-SVN: r34082
2000-05-22 13:05:15 -04:00
Philippe De Muyter 37941398e2 m68k.h (STORE_FLAG_VALUE): Macro set to (-1), not -1.
* m68k/m68k.h (STORE_FLAG_VALUE): Macro set to (-1), not -1.
	* fx80/fx80.h, i370/i370.h, m88k/m88k.h (STORE_FLAG_VALUE): Ditto.
	* gmicro/gmicro.h, we32k/we32k.h (STORE_FLAG_VALUE): Ditto.

From-SVN: r34081
2000-05-22 16:22:12 +00:00
Jakub Jelinek 1f046771fb sparc.md (movdf_insn_v9only_vis): fzero has just one argument.
* config/sparc/sparc.md (movdf_insn_v9only_vis): fzero has
	just one argument.

From-SVN: r34079
2000-05-22 14:05:34 +02:00
Richard Kenner a0c3333844 alias.c (record_component_aliases): New function.
* alias.c (record_component_aliases): New function.
	* tree.h: Clean up some declarations and comments.
	(record_component_aliases): New declaration.
	* tree.c (get_alias_set): If type and has alias set, use it.

From-SVN: r34078
2000-05-22 06:51:28 -04:00
Richard Henderson 0dab8f8aa3 * jump.c (can_reverse_comparison_p): Be prepared for insn null.
From-SVN: r34077
2000-05-22 01:33:34 -07:00
Richard Henderson a774e06ec7 simplify-rtx.c (simplify_ternary_operation): Try to simplify IF_THEN_ELSE to a setcc form.
* simplify-rtx.c (simplify_ternary_operation): Try to simplify
        IF_THEN_ELSE to a setcc form.

From-SVN: r34076
2000-05-22 01:20:47 -07:00
Jeff Law 2e33f7fbff Daily bump.
From-SVN: r34075
2000-05-22 01:45:07 -06:00
Martin v. Löwis b9d791a72d Repeated using-declaration do have effect on the visible names
From-SVN: r34074
2000-05-22 07:25:28 +00:00
Martin v. Löwis dd4fae800f decl2.c (qualified_lookup_using_namespace): Look through namespace aliases.
* decl2.c (qualified_lookup_using_namespace): Look through
        namespace aliases.

        * decl.c (push_using_decl): Return the old decl on namespace level.

From-SVN: r34073
2000-05-22 07:23:26 +00:00
Kaveh R. Ghazi 93a718f6b4 inclhack.def (sun_malloc): Handle `calloc'.
* fixinc/inclhack.def (sun_malloc): Handle `calloc'.
	(sun_malloc, sysz_stdtypes_for_sun): Add test_text.

From-SVN: r34071
2000-05-22 04:02:14 +00:00
Mark Mitchell 2365615885 cp-tree.h (SET_BINFO_NEW_VTABLE_MARKED): Add sanity checks.
* cp-tree.h (SET_BINFO_NEW_VTABLE_MARKED): Add sanity checks.
	(VTT_NAME_PREFIX): New macro.
	(CTOR_VTBL_NAME_PREFIX): Likewise.
	(get_ctor_vtbl_name): New function.
	* class.c (get_vtable_name): Simplify.
	(get_vtt_name): New function.
	(get_vtable_decl): Don't set IDENTIFIER_GLOBAL_VALUE.
	(dfs_mark_primary_bases): Update the CLASSTYPE_VBASECLASSES list
	when a virtual base becomes primary.
	(finish_struct_1): Set CLASSTYPE_VFIELDS a little earlier.  Build
	VTTs.
	(finish_vtbls): Adjust calls to accumulate_vtbl_inits to pass in
	additional parameters.
	(dfs_finish_vtbls): Don't clear BINFO_NEW_VTABLE_MARKED.
	(initialize_array): New function.
	(build_vtt): Likewise.
	(build_vtt_inits): Likewise.
	(dfs_build_vtt_inits): Likewise.
	(dfs_fixup_binfo_vtbls): Likewise.
	(build_ctor_vtbl_group): Likewise.
	(initialize_vtable): Use initialize_array.
	(accumulate_vtbl_inits): Reimplement to handle construction
	vtables.
	(dfs_accumulate_vtbl_inits): Likewise.
	(bulid_vtbl_initializer): Adjust parameter name.
	* method.c (build_typename_overload): Remove #if 0'd code.
	(get_ctor_vtbl_name): New function.
	* search.c (dfs_walk_real): Use BINFO_N_BASETYPES.
	(init_vbase_pointers): Don't mess with the TREE_CHAIN of a binfo.

From-SVN: r34069
2000-05-22 01:08:46 +00:00
Richard Kenner f85cf63648 combine.c (try_combine): Handle i3_subst_into_i2 case when I2 is not a PARALLEL.
* combine.c (try_combine): Handle i3_subst_into_i2 case when I2 is
	not a PARALLEL.

From-SVN: r34068
2000-05-21 17:50:47 -04:00
Mark Mitchell cf2e003bf1 cp-tree.h (struct lang_type): Remove search_slot.
* cp-tree.h (struct lang_type): Remove search_slot.
	(CLASSTYPE_SEARCH_SLOT): Remove.
	(emit_base_init): Change prototype.
	(initialize_vtbl_ptrs): Likewise.
	(expand_indirect_vtbls_init): Likewise.
	(clear_search_slots): Remove.
	* decl.c (lang_mark_tree): Don't mark search_slot.
	* init.c (initialize_vtbl_ptrs): Simplify.
	(emit_base_init): Likewise.
	* search.c (struct vbase_info): Document decl_ptr.
	(convert_pointer_to_single_level): Remove.
	(dfs_find_vbases): Remove.
	(dfs_init_base_pointers): Simplify.
	(dfs_clear_vbase_slots): Remove.
	(dfs_vtable_path_unmark): New function.
	(init_vbase_pointers): Simplify.
	(expand_upcast_fixups): Don't rely on CLASSTYPE_SEARCH_SLOT.
	(expand_indirect_vtbls_init): Simplify.  Don't call
	mark_all_temps_used.
	* semantics.c (setup_vtbl_ptr): Adjust calls to emit_base_init and
	initialize_vtbl_ptrs.

From-SVN: r34067
2000-05-21 17:01:22 +00:00
Jeff Law bf5df909a9 Daily bump.
From-SVN: r34066
2000-05-21 01:45:07 -06:00
Richard Henderson 1e13975584 * lib/f-torture.exp (TORTURE_OPTIONS): Add "-O3 -g" and "-O3 -fssa".
From-SVN: r34065
2000-05-20 17:18:24 -07:00
Alexandre Oliva dcfa721dcf Oops, checked in verify-flow.patch by mistake, reverting
From-SVN: r34063
2000-05-20 23:16:18 +00:00
Alexandre Oliva 212bc5fad9 mn10300.md (movdi, movdf): 64-bit clean-up.
* config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
* config/mn10300/mn10300.c (print_operand): Likewise.

From-SVN: r34062
2000-05-20 23:05:59 +00:00
Alexandre Oliva 7f251deef0 final.c (split_double): Right shift of negative values is not portable.
* final.c (split_double): Right shift of negative values is not
portable.

From-SVN: r34061
2000-05-20 23:01:00 +00:00
Alexandre Petit-Bianco 6b48deee6e parse.y (resolve_package): Correctly set `*next' (was off by one.)
2000-05-01  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (resolve_package): Correctly set `*next' (was off by
	one.)
	(resolve_qualified_expression_name): Fixed comment.

From-SVN: r34060
2000-05-20 22:38:05 +00:00
Bruce Korb cb8d51687d many applications of c_fix=format + tests
From-SVN: r34059
2000-05-20 21:32:42 +00:00
Alexandre Oliva 1346286284 * ifcvt.c (if_convert): Scan and kill dead code.
From-SVN: r34057
2000-05-20 20:26:18 +00:00
Alexandre Oliva 242b0ce653 * emit-rtl.c (unshare_all_rtl): Store the copied rtx.
From-SVN: r34056
2000-05-20 20:18:19 +00:00
Bruce Korb a8228686d6 yet more applications of c_fix=format + tests
From-SVN: r34055
2000-05-20 19:47:41 +00:00
Zack Weinberg fbd4035990 top level:
* diagnostic.c: Eliminate implicit int.
	* except.c, gcc.c: Add static prototypes.
	* final.c (final_end_function): Mark file arg ATTRIBUTE_UNUSED.
	* gensupport.c (process_rtx): Use XVEC to initialize vector
	slot of 'split'.

	* print-rtl.c: If DEBUG_REGISTER_NAMES, define static
	debug_reg_names instead of static reg_names.  If not, define
	global reg_names.
	* regclass.c: Don't define global reg_names unless
	DEBUG_REGISTER_NAMES is defined.

	* reload1.c (order_regs_for_reload): Remove unused variable.
	* varasm.c: Include output.h after defaults.h.  Define
	eh_frame_section as function of no args, not of unspecified args.

	* gcc.c: Constify argbuf; arguments to store_arg,
	process_command, main; elements of struct command and struct
	switchstr; local variables in execute, process_command, main.

cp:
	* except.c: Add static prototypes.

From-SVN: r34054
2000-05-20 19:45:36 +00:00
Bruce Korb cd64831fc2 more applications of c_fix=format + tests
From-SVN: r34053
2000-05-20 18:54:45 +00:00
Andreas Jaeger 019b761f38 20000519-1.c (main): Fixed return value of testcase.
2000-05-20  Andreas Jaeger  <aj@suse.de>

	* gcc.c-torture/execute/20000519-1.c (main): Fixed return
	value of testcase.

From-SVN: r34052
2000-05-20 19:04:41 +02:00
Richard Kenner ac3d966803 alias.c: Clarify some comments.
* alias.c: Clarify some comments.
	(record_base_value): REGNO is unsigned.
	* rtl.h (record_base_value): Likewise.

From-SVN: r34051
2000-05-20 12:03:41 -04:00
Richard Kenner dc1618bcad alias.c (aliases_everything_p): Don't special-case QImode here.
* alias.c (aliases_everything_p): Don't special-case QImode here.
	* c-common.c (c_get_alias_set): Do it here.
	Handle BIT_FIELD_REF by getting alias info for arg.
	Use POINTER_TYPE_P.

From-SVN: r34050
2000-05-20 09:28:13 -04:00
Alexandre Oliva de467fe702 * mklibgcc.in: Restore rule to create ${dir}.
From-SVN: r34049
2000-05-20 13:18:57 +00:00
H.J. Lu 3484098827 Makefile.in (libgcc.mk): Depend on xgcc$(exeext) for GCC_FOR_TARGET used by MULTILIBS.
* Makefile.in (libgcc.mk): Depend on xgcc$(exeext) for
GCC_FOR_TARGET used by MULTILIBS.
* mklibgcc.in: Make sure each .o file depends on the
directory it will be in.
Make the multilib directory depends libgcc.

From-SVN: r34048
2000-05-20 11:48:03 +00:00
H.J. Lu afa098295d * Make-lang.in (cplib2.ready): Also depend on cc1plus$(exeext).
From-SVN: r34047
2000-05-20 11:36:23 +00:00