Commit Graph

36311 Commits

Author SHA1 Message Date
Richard Henderson
91a18fe0e6 c-typeck.c (build_binary_op): Do not shorten unsigned right shift after sign extension.
* c-typeck.c (build_binary_op): Do not shorten unsigned
        right shift after sign extension.

From-SVN: r44080
2001-07-17 12:01:54 -07:00
Benjamin Kosnik
4fe706d8e0 README: Add notes on naming test cases.
2001-07-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/README: Add notes on naming test cases.
	* testsuite/22_locale/members.cc: Mark as xfail.
	* testsuite/22_locale/numpunct_char_members.cc: Same.

From-SVN: r44076
2001-07-17 18:47:34 +00:00
Benjamin Kosnik
2965361b9e README: Add notes on naming test cases.
2001-07-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/README: Add notes on naming test cases.
	* testsuite/22_locale/members.cc: Mark as xfail.
	* testsuite/22_locale/numpunct_char_members.cc: Same.

From-SVN: r44074
2001-07-17 18:43:28 +00:00
Jan Hubicka
4ba5f92543 combine.c (combine_simplify_rtx): Attempt to simplify a*(b/c) as (a*b)/c for floats in unsafe_math mode.
* combine.c (combine_simplify_rtx): Attempt to simplify
	a*(b/c) as (a*b)/c for floats in unsafe_math mode.

	* simplify-rtx.c (avoid_constatn_pool_reference): New static function.
	(simplify_binary_operation, simplify_unary_operation,
	 simplify_relational_operation): Use it.

	* combine.c (combine_simplify_rtx): Don't do associative law
	on divisions; allow associative law on floats.

From-SVN: r44073
2001-07-17 15:11:56 +00:00
H.J. Lu
3aa8ab7bfa c-pragma.h (HANDLE_PRAGMA_WEAK): Define iff ASM_WEAKEN_LABEL and ASM_OUTPUT_WEAK_ALIAS are defined.
* c-pragma.h (HANDLE_PRAGMA_WEAK): Define iff ASM_WEAKEN_LABEL and
	ASM_OUTPUT_WEAK_ALIAS are defined.
	* defaults.h (ASM_OUTPUT_WEAK_ALIAS): Define if possible.
	* config/mips/iris6.h (ASM_OUTPUT_WEAK_ALIAS, ASM_WEAKEN_LABEL):
	Moved ...
	* config/mips/iris5.h: ... here.
	(HANDLE_SYSV_PRAGMA): Defined as 1.
	* varasm.c (weak_finish): Use ASM_OUTPUT_WEAK_ALIAS.
	* doc/tm.texi (ASM_OUTPUT_WEAK_ALIAS): Support the undefined weak
	symbol.

Co-Authored-By: Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>

From-SVN: r44072
2001-07-17 12:55:19 +00:00
Joseph Myers
4b01f8d817 c-parse.in (all_prefix_attributes): New variable.
* c-parse.in (all_prefix_attributes): New variable.
	(PUSH_DECLSPEC_STACK, POP_DECLSPEC_STACK): New macros.
	(maybe_resetattrs): New production.
	(c_parse_init, datadef, fndef, datadecl, setspecs, setattrs, decl,
	maybe_type_quals_setattrs, initdecls, notype_initdecls, initdcl,
	notype_initdcl, nested_function, notype_nested_function,
	component_decl, components, components_notype,
	component_declarator, component_notype_declarator,
	absdcl_maybe_attribute, parm, firstparm, setspecs_fp, ivar_decl,
	ivars, mydecl, myparm): Update.  Avoid prefix attributes just
	after a comma being applied to more than one declarator.
	* doc/extend.texi (Attribute Syntax): Update.  Remove
	documentation of bugs that are no longer present.

testsuite:
	* gcc.c-torture/compile/20010714-1.c, gcc.dg/format/attr-4.c: New
	tests.

From-SVN: r44070
2001-07-17 12:58:54 +01:00
Toon Moene
eae4bce3a4 com.c (lang_print_error_function): Argument context is unused.
2001-07-17  Toon Moene  <toon@moene.indiv.nluug.nl>

	* com.c (lang_print_error_function): Argument context
	is unused.

From-SVN: r44069
2001-07-17 10:42:57 +00:00
Eric Christopher
7a38df19fd mips.h: Change TUNE_MIPS* options to use mips_tune.
2001-07-16  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips.h: Change TUNE_MIPS* options to use
	mips_tune.
	(EXTRA_SPECS): Add cc1_cpu_spec.
	* config/mips/mips.md (muldf3): Fix typo.

From-SVN: r44068
2001-07-17 10:29:18 +00:00
GCC Administrator
e0bcb41cec Daily bump.
From-SVN: r44066
2001-07-17 07:16:17 +00:00
Richard Henderson
6d5f49b2f4 m68k.c: Include expr.h and reload.h.
* config/m68k/m68k.c: Include expr.h and reload.h.
        (print_operand_address) [16 bit int]: Cast INTVAL to int for %d.
        [general int]: Use HOST_WIDE_INT_PRINT_DEC.

From-SVN: r44065
2001-07-16 23:54:45 -07:00
Daniel Berlin
0021de69a6 cse.c (set_live_p): Take INSN argument for cc0; update callers.
* cse.c (set_live_p): Take INSN argument for cc0; update callers.
        (insn_live_p): Fix fall off end of function.
        (dead_libcall_p): Remove COUNTS argument; update callers.
        (delete_trivially_dead_insns): Remove unused variables.

Co-Authored-By: Richard Henderson <rth@redhat.com>

From-SVN: r44064
2001-07-16 23:44:57 -07:00
Andreas Jaeger
5158963212 Fix typo in my last entry.
From-SVN: r44063
2001-07-17 07:09:29 +02:00
Andreas Jaeger
b3bb645674 unix.h (ASM_OUTPUT_MI_THUNK): Fix output format for x86-64 pic support.
* config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Fix output format for
        x86-64 pic support.

        * lcm.c (optimize_mode_switching): Avoid warning for unused
        variable if !NORMAL_MODE

        * flow.c (try_crossjump_to_edge): Remove unused variable.

From-SVN: r44062
2001-07-17 06:55:25 +02:00
Bruce Korb
b8d0bbf763 regenerate
From-SVN: r44061
2001-07-17 04:00:12 +00:00
Bruce Korb
583a70777d update the sample output
From-SVN: r44060
2001-07-17 03:59:18 +00:00
Peter Schmid
b5ca1dc724 * g++.old-deja/g++.robertl/eb130.C: Include the correct header file.
From-SVN: r44059
2001-07-17 03:26:34 +00:00
Bruce Korb
551051563c HPUX-es vsnprintf and Ultrix-es atexit declaration
From-SVN: r44058
2001-07-17 03:02:52 +00:00
Bryce McKinlay
f79ced717f LinkedList.java (clone): Clear the copy list with clear(), not by setting its size field.
* java/util/LinkedList.java (clone): Clear the copy list with clear(),
	not by setting its size field.

From-SVN: r44057
2001-07-17 02:56:38 +01:00
Jan Hubicka
4793dca158 basic-block.h (CLEANUP_PRE_SIBCALL): New constant.
* basic-block.h (CLEANUP_PRE_SIBCALL): New constant.
	* except.c (finish_eh_generation): Update call of cleanup_cfg;
	do rebuild_jump_labels instead of jump_optimize
	* sibcall.c (optimize_sibling_and_tail_recursive_call): Likewise.
	* toplev.c (rest_of_compulation): Likewise for -Wreturn_type.
	* flow.c (try_optimize_cfg): Remove unneeded code_labels.

	* flow.c: Include timevar.h
	(find_basic_block): Push/pop timevar;
	(cleanup_cfg): Likewise.
	* timevar.def (TV_CFG, TV_CLEANUP_CFG): New.
	* Makefile: Add dependencies on timevar.h

	* integrate.c (save_for_inline): Kill all BASIC_BLOCK notes.
	(copy_insn_list): Avoid killing of BASIC_BLOCK notes.

	* rtl.h (delete_trivially_dead_insns): Add new parameter.
	* toplev.c (rest_of_compilation): Update calls.
	* cse.c (set_live_p, insn_live_p, dead_libcall_p): Break out from ...
	(delete_trivially_dead_insns): ... here; accept new argument
	preserve_basic_blocks; preserve basic blocks if set.

	* reg-stack.c (stack_regs_mentioned): Return 0 if
	stack_regs_mentioned_data is not initialized.
	(reg_to_stack): Make stack_regs_mentioned survive after the
	reg-stack is completted; do not call cleanup_cfg.
	* toplev.c (rest_of_compilation): Do cleanup_cfg before bb-reorder;
	make cleanup_cfg after bb-reorder to output to debug file.

From-SVN: r44056
2001-07-16 20:54:44 +00:00
Daniel Berlin
ccef9ef510 gcse.c: Update comment at top.
* gcse.c: Update comment at top.
        Update comment on mem handling.
        mem_last_set, mem_first_set, mem_set_in_block: gone.
        Declaration of reg_set_info: gone.
        (oprs_unchanged_p): Don't use mem_*set_* anymore. They are
        pointless with load_killed_in_block_p (they are *more*
        conservative then it, not less, and less accurate).
        (oprs_not_set_p): Ditto.
        (alloc_gcse_mem): Don't allocate mem_set_in_block
        (free_gcse_mem): Don't free it, either.
        (record_last_mem_set_info): Update comment in front, remove
        mem_*set_* stuff. Note the reason we don't handle stores directly
        here.
        (compute_hash_table): Update comments to reflect reality. Remove
        mem_*set_* references.
        (reset_opr_set_tables): Remove mem_*set_* references.
        (mark_call): Ditto.
        (mark_set): Ditto.  Also remove double sets of bitmaps for REG's.
        (mark_clobber): Ditto (on both parts, we double set here too).
        (expr_killed_p): Remove mem_set_in_block test.
        (compute_transp): Remove mem_set_in_block test.

From-SVN: r44055
2001-07-16 14:02:08 -06:00
Richard Henderson
b85946fc65 regclass.c (init_reg_sets): Use only 32 bits per initializer from int_reg_class_contents.
* regclass.c (init_reg_sets): Use only 32 bits per initializer
        from int_reg_class_contents.

From-SVN: r44054
2001-07-16 10:57:11 -07:00
Richard Henderson
4e2db58460 hard-reg-set.h (regs_invalidated_by_call): Declare.
* hard-reg-set.h (regs_invalidated_by_call): Declare.
        * regclass.c (regs_invalidated_by_call): Move from cse.c.
        (init_reg_sets_1): Move initialization from cse_main.
        * cse.c (regs_invalidated_by_call): Move to regclass.c.
        (cse_main): Move its initialization also.
        * df.c (df_insn_refs_record): Use regs_invalidated_by_call.
        * flow.c (propagate_one_insn): Likewise.
        * gcse.c (compute_hash_table): Likewise.
        (compute_kill_rd, compute_store_table): Likewise.
        * sched-deps.c (sched_analyze_1): Likewise.

From-SVN: r44053
2001-07-16 10:54:34 -07:00
Stephen M. Webb
fb124b992c acinclude.m4 (GLIBCPP_ENABLE_CHEADERS): Use glibcpp_srcdir when setting C_INCLUDE_DIR.
2001-07-16  Stephen M. Webb  <stephen@bregmasoft.com>

	* acinclude.m4 (GLIBCPP_ENABLE_CHEADERS):  Use glibcpp_srcdir when
	setting C_INCLUDE_DIR.
	* configure.in:  Revert yesterday's LN_S change.
	* aclocal.m4:  Regenerate.
	* configure:  Regenerate.

From-SVN: r44052
2001-07-16 17:43:54 +00:00
Rainer Orth
3d719162d0 20001229-1.c: Include <sys/proc.h> for UAC_SIGBUS, UAC_NOPRINT definitions.
* gcc.c-torture/execute/20001229-1.c: Include <sys/proc.h> for
	UAC_SIGBUS, UAC_NOPRINT definitions.

From-SVN: r44051
2001-07-16 17:20:58 +00:00
J"orn Rennecke
cccf0ae876 gcse.c (pre_insert_copy_insn): Use gen_move_insn instead of gen_rtx_SET.
* gcse.c (pre_insert_copy_insn): Use gen_move_insn instead of
	gen_rtx_SET.

From-SVN: r44048
2001-07-16 18:18:48 +01:00
Rainer Orth
03a8de49b8 sysv.S: Avoid gas-only .balign directive.
* src/x86/sysv.S: Avoid gas-only .balign directive.
	Use C style comments.

From-SVN: r44046
2001-07-16 17:12:14 +00:00
Rainer Orth
92a0e6c6c8 re PR bootstrap/3563 (Error building libffi)
* src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
	Fixes PR bootstrap/3563.

From-SVN: r44045
2001-07-16 16:53:43 +00:00
Steve Ellcey
94fc7deae2 dominance.c (calc_dfs_tree_nonrec): Reverse order of tests in if statement so we don't access undefined memory.
* dominance.c (calc_dfs_tree_nonrec): Reverse order of tests
        in if statement so we don't access undefined memory.

From-SVN: r44043
2001-07-16 10:48:31 -06:00
Daniel Berlin
978cf2fcf5 ssa-ccp.c: (optimize_unexecutable_edges): Add note about removal of edge...
* ssa-ccp.c: (optimize_unexecutable_edges): Add note about removal
        of edge, and removal of phi alternative to dump file.
        (ssa_ccp_substitute_constants): Add note about register now being
        constant, and which uses were replaced in what insns to dump file.

From-SVN: r44042
2001-07-16 10:23:40 -06:00
Nicola Pero
55680aef7f Added two new objc tests
From-SVN: r44041
2001-07-16 11:38:13 +00:00
Nicola Pero
0a7a4face2 New tests
From-SVN: r44040
2001-07-16 11:37:23 +00:00
Nicola Pero
42d28de5b2 Fixed object_is_class and object_is_metaclass
From-SVN: r44039
2001-07-16 11:36:24 +00:00
Aldy Hernandez
0ae854922a config.sub: Fix mips64vr5000el typo in CPU-COMPANY.
2001-07-16  Aldy Hernandez  <aldyh@redhat.com>

        * config.sub: Fix mips64vr5000el typo in CPU-COMPANY.

From-SVN: r44034
2001-07-16 10:02:53 +00:00
Andreas Jaeger
23190837c6 gcov.c (output_data): Use HOST_WIDEST_INT_PRINT_DEC to output variables of type HOST_WIDEST_INT.
* gcov.c (output_data): Use HOST_WIDEST_INT_PRINT_DEC to output
	variables of type HOST_WIDEST_INT.

	* libgcc2.c (__bb_exit_func): Handle gcov_type as long long.
	(__bb_exit_func): Correct type of count_max to avoid overflow.
	(num_digits): Handle long long argument.

	* combine.c (gen_lowpart_for_combine): Remove unused variable.

From-SVN: r44033
2001-07-16 11:16:04 +02:00
GCC Administrator
cc385017aa Daily bump.
From-SVN: r44031
2001-07-16 07:16:10 +00:00
Neil Booth
f4dc8d96d4 output.h (sdb_begin_function_line): Restore as an extern variable.
* output.h (sdb_begin_function_line): Restore as an extern
	variable.
	* sdbout.c (sdb_begin_function_line): Make extern.

From-SVN: r44030
2001-07-16 06:01:40 +00:00
Richard Henderson
9e9f3eded6 machmode.def (Pmode): Redefine if GENERATOR_FILE.
* machmode.def (Pmode): Redefine if GENERATOR_FILE.
        * genrecog.c (maybe_both_true_mode): New.
        (maybe_both_true_2): Use it.
        (write_switch): Don't put Pmode in a switch.
        * rtl.c (mode arrays): Don't explicitly size them.

From-SVN: r44029
2001-07-15 17:28:20 -07:00
Phil Edwards
25dfa34d50 configure.in: Temporarily force LN_S to copy instead of symlink.
2001-07-15  Phil Edwards  <pme@sources.redhat.com>

	* configure.in:  Temporarily force LN_S to copy instead of symlink.
	* configure:  Regenerate.

From-SVN: r44028
2001-07-15 22:17:43 +00:00
Jan Hubicka
22fb740dcc toplev.c (rest_of_compilation): Fix register_life_up_to_date handling...
* toplev.c (rest_of_compilation): Fix register_life_up_to_date
	handling; move unconditional splitting before mode switching.

	* i386.md (type): Add fistp type.
	(i387, length_attr, scheduling definitions): Handle this type.
	(fix_trunc?f?i2): Revamp to use mode switching.
	(fix_trunct?f?i_nonmemory, fix_trunc?f?i_memory): New patterns.
	* i386.h (fp_cw_mode): New enum
	(OPTIMIZE_MODE_SWITCHING, NUM_MODES_FOR_MODE_SWITCHING, MODE_NEEDED,
	MODE_PRIORITY_TO_MODE, ENUM_MODE_SET): New macros.

From-SVN: r44027
2001-07-15 16:59:06 +00:00
Richard Kenner
135d50f10f Makefile.in (integrate.o): Add debug.h.
* Makefile.in (integrate.o): Add debug.h.
	* integrate.c (debug.h): Add.
	(output_inline_function): Save, reset, and restore debug_hooks.

From-SVN: r44026
2001-07-15 12:50:41 -04:00
Richard Henderson
b762a0ef44 alpha.c (alpha_emit_xfloating_compare): Use CCmode instead of COMPARE for the EQUIV expression.
* config/alpha/alpha.c (alpha_emit_xfloating_compare): Use CCmode
        instead of COMPARE for the EQUIV expression.

From-SVN: r44024
2001-07-15 08:56:46 -07:00
Richard Henderson
c319629b9a flow.c (redirect_edge_and_branch_force): Initialize global_live_at_start and global_live_at_end.
* flow.c (redirect_edge_and_branch_force): Initialize
        global_live_at_start and global_live_at_end.
        (allocate_bb_life_data): Export.
        * basic-block.h (allocate_bb_life_data): Declare it.
        * toplev.c (rest_of_compilation): Call it.

From-SVN: r44023
2001-07-15 08:47:05 -07:00
Richard Henderson
25e21aed56 alpha.c (alpha_tablejump_addr_vec): New.
* config/alpha/alpha.c (alpha_tablejump_addr_vec): New.
        (alpha_tablejump_best_label): New.
        * config/alpha/alpha-protos.h: Declare them.
        * config/alpha/alpha.md: Use braced strings for code blocks.
        (tablejump_osf): Break out add with r29.
        (tablejump_osf_internal): Remove.
        (tablejump_osf_nt_internal): Rename from tablejump_nt_internal,
        use alpha_tablejump_addr_vec and alpha_tablejump_best_label.

From-SVN: r44022
2001-07-15 08:38:52 -07:00
Toon Moene
09b495e503 f90-intrinsic-numeric.f: Fix pasto.
2001-01-15  Toon Moene  <toon@moene.indiv.nluug.nl>

	* g77.f-torture/execute/f90-intrinsic-numeric.f: Fix pasto.
	* g77.f-torture/execute/f90-intrinsic-mathematical.f: Fix pasto.

From-SVN: r44021
2001-07-15 15:30:04 +00:00
David Billinghurst
147424bf75 f90-intrinsic-numeric.f: New test.
2001-01-15  David Billinghurst <David.Billinghurst@riotinto.com>

	* g77.f-torture/execute/f90-intrinsic-numeric.f: New test.
	* g77.f-torture/execute/f90-intrinsic-mathematical.f: New test.

From-SVN: r44020
2001-07-15 12:50:14 +00:00
Jan Hubicka
03598deac8 loop.c (scan_loop): Add USEs inside PARALLELs into dependencies of the movable.
* loop.c (scan_loop): Add USEs inside PARALLELs into dependencies
	of the movable.

	* toplev.c (rest_of_compilation): Allow new pseudoes for mode switching.

	* i386-protos.h (ix86_split_fp_branch): Update prototype.
	(ix86_fp_jump_nontrivial_p): New.
	* i386.md (fp_jcc_?): Update call of split_fp_branch;
	use ix86_fp_jump_nontrivial_p.
	* i386.c (ix86_fp_jump_nontrivial_p): New.
	(ix86_split_fp_branch): Accept code instead of rtx.
	(ix86_expand_compare): Expand comparison early in case
	doing so is resonably cheap.

From-SVN: r44019
2001-07-15 12:00:34 +00:00
Nick Clifton
b8313db6c0 Assert 'endian' not 'machine' in endian specs
From-SVN: r44018
2001-07-15 10:22:51 +00:00
Neil Booth
e2a12aca42 dbxout.c (dbxout_source_line): Make static, update prototype.
* dbxout.c (dbxout_source_line): Make static, update prototype.
	(dbx_debug_hooks, xcoff_debug_hooks): Add new hooks.
	(dbxout_init, dbxout_finish, dbxout_source_line,
	dbxout_begin_block, dbxout_end_block): Update for new prototypes.
	* dbxout.h (dbxout_source_line): Delete.
	* debug.c (debug_nothing_file, debug_nothing_file_int,
	debug_nothing_file_charstar_rtx): New.
	(do_nothing_debug_hooks): Update.
	(debug_nothing_void, debug_nothing_charstar_rtx,
	dwarf2out_end_epilogue): New.
	(debug_nothing_file_charstar, debug_nothing_file_int_int): Rename.
	* debug.h (struct rtx_def): Declare.
	(gcc_debug_hooks): New hooks source_line, end_epilogue
	and end_function.
	(debug_nothing_void, debug_nothing_charstar_rtx,
	dwarf2out_end_epilogue): New.
	(debug_nothing_file_charstar, debug_nothing_file_int_int): Rename.
	* dwarf2out.c (dwarf2out_source_line): Make static, update prototype.
	(dwarf2_debug_hooks): Update.
	(dwarf2out_init, dwarf2out_finish, dwarf2out_source_line,
	dwarf2out_begin_block, dwarf2out_end_block): Update for new prototypes.
	* dwarf2out.h (dwarf2out_source_line): Remove.
	* dwarfout.c (dwarfout_end_epilogue, dwarfout_end_function):
	Make static, update prototype.
	(dwarfout_init, dwarfout_finish, dwarfout_source_line,
	dwarfout_begin_block, dwarfout_end_block): Update for new prototypes.
	(dwarf_debug_hooks): Update.
	* dwarfout.h (dwarfout_end_epilogue, dwarfout_source_line,
	dwarfout_end_function): Remove.
	* final.c (profile_function): Use debug hooks for ending functions
	and epilogues.
	(output_source_line, final_end_function): Update prototype,
	use debug hooks.
	(final_start_function, final_scan_insn): Update.
	* output.h (sdb_begin_function_line): Remove.
	(final_end_function): Update prototype.
	* sdbout.c (sdb_begin_function_line): Make static.
	(PUT_SDB_EPILOGUE_END): Move to sdbout_end_epilogue.
	(sdbout_source_line): New.
	(sdbout_end_epilogue, sdbout_end_function): Make static, update
	prototypes.
	(sdb_debug_hooks): Update.
	(sdbout_init, sdbout_source_line,
	sdbout_begin_block, sdbout_end_block): Update for new prototypes.
	* sdbout.h (sdbout_end_epilogue, sdbout_end_function): Remove.
	* toplev.c (compile_file, rest_of_compilation): Update.
	* tree.h (dwarf2out_end_epilogue): Move to debug.h.
	* xcoffout.c (xcoffout_source_line, xcoffout_begin_block,
	xcoffout_end_block, xcoffout_end_epilogue, xcoffout_end_function):
	Update for prototype changes.
	* xcoffout.h (xcoffout_source_line, xcoffout_begin_block,
	xcoffout_end_block, xcoffout_end_epilogue): Update prototypes.

From-SVN: r44017
2001-07-15 08:34:46 +00:00
Richard Henderson
be7b80f427 alpha.h (TARGET_ABI_OSF): New.
* config/alpha/alpha.h (TARGET_ABI_OSF): New.
        (TARGET_ABI_WINDOWS_NT, TARGET_ABI_OPEN_VMS): Rename; update users.
        * config/alpha/alpha-protos.h: Update TARGET_ABI_* users.
        * config/alpha/alpha.c: Likewise.
        * config/alpha/alpha.md: Likewise.
        * config/alpha/alpha32.h: Likewise.
        * config/alpha/vms.h: Likewise.
        (OPEN_VMS): Remove.

From-SVN: r44016
2001-07-15 00:17:29 -07:00
GCC Administrator
4a82c9509d Daily bump.
From-SVN: r44015
2001-07-15 07:16:50 +00:00