Commit Graph

47383 Commits

Author SHA1 Message Date
Alexandre Oliva
88e83acbf9 Makefile.in (FPBIT_FUNCS): Added _sf_to_tf.
* Makefile.in (FPBIT_FUNCS): Added _sf_to_tf.
(DBBIT_FUNCS): Added _df_to_tf.
(TPBIT_FUNCS): New.
(libgcc.mk): Pass TPBIT and TPBIT_FUNCS down.
(LIBGCC_DEPS): Added TPBIT.
* mklibgcc.in: Support TPBIT and TPBIT_FUNCS.

From-SVN: r61832
2003-01-26 09:17:13 +00:00
Alexandre Oliva
2cd622c310 optabs.c (expand_binop): Return xtarget if we haven't been able to move the result to target.
* optabs.c (expand_binop) <add, sub>: Return xtarget if we haven't
been able to move the result to target.

From-SVN: r61829
2003-01-26 09:11:31 +00:00
Alexandre Oliva
8ae91fc034 expr.c (emit_group_store): Initialize dst with CONST0_RTX for the appropriate mode.
* expr.c (emit_group_store): Initialize dst with CONST0_RTX
for the appropriate mode.

From-SVN: r61828
2003-01-26 09:09:23 +00:00
Alexandre Oliva
c329756171 calls.c (emit_library_call_value_1): Handle return values in a PARALLEL.
* calls.c (emit_library_call_value_1): Handle return values
in a PARALLEL.

From-SVN: r61826
2003-01-26 09:06:36 +00:00
Alexandre Oliva
187515f56a rtl.c (get_mode_alignment): Moved to...
* rtl.c (get_mode_alignment): Moved to...
* stor-layout.c: ... here.

From-SVN: r61824
2003-01-26 09:02:55 +00:00
Alexandre Oliva
6ebd2ef442 print-rtl.c (print_rtx): Don't print MEM details in GENERATOR_FILEs.
* print-rtl.c (print_rtx): Don't print MEM details in
GENERATOR_FILEs.

From-SVN: r61822
2003-01-26 08:59:54 +00:00
Daniel Jacobowitz
74828682c7 hashtab.h (htab_alloc_with_arg, [...]): Add new types.
include/
	* hashtab.h (htab_alloc_with_arg, htab_free_with_arg): Add new types.
	(struct htab): Add alloc_arg, alloc_with_arg_f, free_with_arg_f.
	(htab_create_alloc_ex): New prototype.
	(htab_set_functions_ex): New prototype.

libiberty/
	* hashtab.c (htab_create_alloc_ex): New function.
	(hatab_set_functions_ex): New function.
	(htab_delete, htab_expand): Support alternate allocation functions.

From-SVN: r61820
2003-01-26 07:09:41 +00:00
Michael Hayes
7890e8f320 df.h: Update comments, tidy formatting.
* df.h: Update comments, tidy formatting.
	(DF_FORWARD, DF_REVERSE, DF_UNION, DF_INTERSECTION): Rename from FORWARD,
	REVERSE, UNION, INTERSECTION.  All uses updated.
	(OLD_DF_INTERFACE): Remove.
	(struct insn_info): Remove commented out insn field.
	* df.c: Update comments, tidy formatting.
	(df_def_table_realloc): Remove.

From-SVN: r61819
2003-01-26 06:10:37 +00:00
Alan Modra
b820d2b870 calls.c (save_fixed_argument_area): Tidy.
* calls.c (save_fixed_argument_area): Tidy.
	(restore_fixed_argument_area): Tidy.  Set alignment of stack_area.
	(expand_call): Comment typo fixes.  Don't init low_to_save.  Start
	call chain loop at 1 if !try_tail_call.  Formatting.
	(emit_library_call_value_1): Don't init low_to_save or high_to_save.
	Use save_fixed_argument_area and restore_fixed_argument_area.

From-SVN: r61818
2003-01-26 12:37:48 +10:30
Michael Hayes
42510de4e1 * df.c (df_uses_record): Handle CC0.
From-SVN: r61817
2003-01-26 01:18:25 +00:00
GCC Administrator
af5d8fced5 Daily bump.
From-SVN: r61814
2003-01-26 00:17:04 +00:00
Ulrich Weigand
acf9fa5f14 reload.c (maybe_memory_address_p): New function.
gcc/
        * reload.c (maybe_memory_address_p): New function.
        (find_reloads_address): Use it instead of memory_address_p.

gcc/testsuite/
	* gcc.dg/20030123-1.c: New test.

From-SVN: r61805
2003-01-25 23:57:30 +00:00
Kaz Kojima
5a09edba1f final.c (shorten_branches): Align the address of code label when computing initial lengths and addresses.
* final.c (shorten_branches): Align the address of code label
        when computing initial lengths and addresses.

From-SVN: r61803
2003-01-25 23:32:20 +00:00
Kazu Hirata
f5818c0c87 * config/m68hc11/m68hc11.md: Fix a comment typo.
From-SVN: r61802
2003-01-25 22:51:19 +00:00
Andreas Jaeger
21ff35fb7e i386.c (x86_output_mi_thunk): Correct test for TARGET_MACHO.
* config/i386/i386.c (x86_output_mi_thunk): Correct test for
	TARGET_MACHO.

From-SVN: r61801
2003-01-25 23:40:32 +01:00
Roger Sayle
7821bfc741 gcse.c (bypass_last_basic_block): New global variable.
* gcse.c (bypass_last_basic_block): New global variable.
	(bypass_block):  Use redirect_edge_and_branch_force to redirect
	fall-through edges.  Use bypass_last_basic_block to determine
	which blocks have valid PRE information.
	(bypass_conditional_jumps): Initialize bypass_last_basic_block.

From-SVN: r61800
2003-01-25 21:49:52 +00:00
Jan Hubicka
5f0bea72c5 * gcse.c (local_cprop_pass): Update reg_sets table when needed.
From-SVN: r61799
2003-01-25 21:32:42 +00:00
Jan Hubicka
1649d92fb3 re PR rtl-optimization/8492 (GCC spins forever compiling loop)
PR opt/8492
	* gcse.c (one_cprop_pass): Delete unreachable blocks.

Co-Authored-By: Eric Botcazou <ebotcazou@libertysurf.fr>

From-SVN: r61798
2003-01-25 20:10:37 +00:00
Richard Henderson
6ca86a1a1e ia64.c (ia64_rwreloc_select_rtx_section): Rename from ia64_aix_select_rtx_section.
* config/ia64/ia64.c (ia64_rwreloc_select_rtx_section): Rename
        from ia64_aix_select_rtx_section.
        (ia64_rwreloc_select_section): Simlarly; use default*_1 function
        instead of saving and restoring flag_pic.
        (ia64_rwreloc_unique_section): Similarly.
        * config/ia64/aix.h (TARGET_ASM_SELECT_SECTION,
        TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): Update.
        * config/ia64/hpux.h (TARGET_ASM_SELECT_SECTION,
        TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): New.

From-SVN: r61797
2003-01-25 11:08:15 -08:00
Kazu Hirata
aa2fb4ddb0 h8300.c (h8300_shift_needs_scratch_p): Update a comment.
* config/h8300/h8300.c (h8300_shift_needs_scratch_p): Update a
	comment.

From-SVN: r61796
2003-01-25 18:59:24 +00:00
Richard Henderson
1125849a62 * config/m68k/m68k-none.h (ASM_SPEC): Adjust inter-option spacing.
From-SVN: r61795
2003-01-25 10:38:08 -08:00
Kelley Cook
3900a23b3b * ggc-simple.c (debug_ggc_tree): Add PTR cast.
From-SVN: r61794
2003-01-25 10:25:14 -08:00
Segher Boessenkool
72e42e26cb bitmap.h (BITMAP_WORD): New typedef: fundamental storage type for bitmaps.
* bitmap.h (BITMAP_WORD): New typedef: fundamental storage
        type for bitmaps.  Use unsigned long.
        (nBITMAP_WORD_BITS): New macro.
        (BITMAP_WORD_BITS): New macro.
        (rest of file): Use it.
        * bitmap.c: Use it.

From-SVN: r61793
2003-01-25 10:21:22 -08:00
Nathan Sidwell
bbaab9162a re PR c++/9403 (parse error on template keyword used for disambiguation)
cp:
	PR c++/9403
	* parser.c (cp_parser_class_or_namespace_name): Reject duplicate
	template keyword.
	(cp_parser_base_specifier): Look for and consume a
	TEMPLATE keyword. Replace switch with array index.

	PR c++/795
	* semantics.c (finish_non_static_data_member): Remember the
	field's type even in a template.

	PR c++/9415
	* pt.c (tsubst_copy_and_build, CALL_EXPR): BASELINK exprs are
	already scoped.

	PR c++/8545
	* parser.c (cp_parser_cast_expression): Be more tentative.
testsuite:
	PR c++/9403
	* g++.dg/parse/template3.C: New test.
	* g++.old-deja/g++.pt/memclass5.C: Add needed template keyword.

	PR c++/795
	* g++.dg/parse/template4.C: New test.

	PR c++/9415
	* g++.dg/template/qual2.C: New test.

	PR c++/8545
	* g++.old-deja/g++.brendan/parse3.C: Remove XFAIL.

	* g++.old-deja/g++.ns/bogus1.C: Change expected error.

From-SVN: r61791
2003-01-25 18:02:43 +00:00
Richard Henderson
8324663fcb t-sco5gas: (CRTSTUFF_T_CFLAGS_S): Delete -mcoff.
2002-02-19  Robert Lipe  <robertlipe@usa.net>
        * config/i386/t-sco5gas: (CRTSTUFF_T_CFLAGS_S): Delete -mcoff.

From-SVN: r61790
2003-01-25 09:49:22 -08:00
Roger Sayle
2adc9b0fc5 builtins.c (purge_builtin_constant_p): Scan insn stream sequentially rather than by basic block.
* builtins.c (purge_builtin_constant_p): Scan insn stream
	sequentially rather than by basic block.
	* function.c (purge_addressof): Simplify test with INSN_P.

From-SVN: r61789
2003-01-25 17:47:26 +00:00
Kazu Hirata
ad487c3816 combine.c (simplify_comparison, case AND): Remove a redundant test.
* combine.c (simplify_comparison, case AND): Remove a redundant
	test.

From-SVN: r61787
2003-01-25 17:45:16 +00:00
Roger Sayle
07d9b20d81 function.h (struct function): New field calls_constant_p.
* function.h (struct function): New field calls_constant_p.
	(current_function_calls_constant_p): New macro for above.
	* function.c (prepare_function_start): Initialize calls_eh_return
	and calls_constant_p.
	* builtins.c (expand_builtin_constant_p): Set calls_constant_p.
	* toplev.c (rest_of_compilation): Only call purge_builtin_constant_p
	when the current_function_calls_constant_p.
	* integrate.c (expand_inline_function): Set calls_constant_p if
	the function being inlined has calls_constant_p set.

From-SVN: r61786
2003-01-25 17:42:39 +00:00
Roger Sayle
415591122d cse.c (fold_rtx): Instantiate CONSTANT_P_RTX to 0 when not optimizing, even if flag_gcse is true.
* cse.c (fold_rtx): Instantiate CONSTANT_P_RTX to 0 when not
	optimizing, even if flag_gcse is true.
	* toplev.c (rest_of_compilation): purge_builtin_constant_p
	only needs to be called when "optimize > 0 && flag_gcse".

From-SVN: r61785
2003-01-25 17:37:42 +00:00
Roger Sayle
9bb231fd7a stmt.c (emit_case_bit_tests): New routine to implement suitable switch statements using the equivalent of "if...
* stmt.c (emit_case_bit_tests): New routine to implement suitable
	switch statements using the equivalent of "if ((1<<x) & cst) ... ".
	(case_bit_test_cmp): New comparison function for "qsort" to order
	case_bit_tests by decreasing number of destination nodes.
	(lshift_cheap_p): New function to determine if "1 << x" is cheap.
	(expand_end_case_type): Use emit_case_bit_tests to implement
	suitable switch statments.
	(CASE_USE_BIT_TESTS): New target macro to disable the above.
	* Makefile.in (stmt.o): Add dependency on optab.h.
	* doc/tm.texi (CASE_USE_BIT_TESTS): Document new target macro.

	* gcc.c-torture/execute/switch-1.c: New test case.

From-SVN: r61784
2003-01-25 17:30:29 +00:00
Andreas Schwab
a073323c19 crtend.asm [...]: Make __do_global_ctors_aux hidden global and don't put it in .init_array.
* config/ia64/crtend.asm [HAVE_INITFINI_ARRAY]: Make
	__do_global_ctors_aux hidden global and don't put it in
	.init_array.
	* config/ia64/crtbegin.asm [HAVE_INITFINI_ARRAY]: Put it here
	instead so that it comes first.

From-SVN: r61782
2003-01-25 17:26:55 +00:00
Kriang Lerdsuwanakij
fb8eab9658 cp-tree.h (flagged_type_tree_s): Remove.
* cp-tree.h (flagged_type_tree_s): Remove.
	(check_for_new_type): Likewise.
	* typeck2.c (check_for_new_type): Likewise.

From-SVN: r61779
2003-01-25 16:28:24 +00:00
Jan Hubicka
36ddc6b01b df.c (read_modify_subreg_p): When osize == UNITS_PER_WORD, subreg is read/modify.
* df.c (read_modify_subreg_p):  When osize == UNITS_PER_WORD,
	subreg is read/modify.

From-SVN: r61773
2003-01-25 15:12:17 +00:00
Jan Hubicka
26771da72f i386.c (ix86_expand_movstr, [...]): Consistently do libcall for large blocks.
* i386.c (ix86_expand_movstr, ix86_expand_clrstr): Consistently
	do libcall for large blocks.
	* i386.md (comi patterns): Set type to ssecomi.
	(sse2_unpck?pd): Fix mode of vec_select.

	* cse.c: Include except.h
	(cse_set_around_loop):  Do not create new basic blocks.
	* Makefile.in (cse.o): Add dependnecy on except.h

From-SVN: r61772
2003-01-25 15:00:51 +00:00
Jan Hubicka
c506155455 * gcc.c-torture/execute/20030125-1.[cx]: New test.
From-SVN: r61771
2003-01-25 14:54:09 +00:00
Paolo Carlini
32d9a5bd17 Tweaks for Bison-1.875.
2003-01-25  Paolo Carlini  <pcarlini@unitus.it>

	Tweaks for Bison-1.875. From the NEWS file:
 	"- `parse error' -> `syntax error'
	Bison now uniformly uses the term `syntax error'"
	* gcc.dg/cpp/19990413-1.c: Test for "(parse|syntax) error".
	* gcc.dg/cpp/digraph2.c: Likewise.
	* gcc.dg/cpp/direct2.c: Likewise.
	* gcc.dg/cpp/paste4.c: Likewise.
	* gcc.dg/c90-restrict-1.c: Likewise.
	* gcc.dg/c99-func-2.c: Likewise.
	* gcc.dg/noncompile/920721-2.c: Likewise.
	* gcc.dg/noncompile/930622-2.c: Likewise.
	* gcc.dg/noncompile/940112-1.c: Likewise.
	* gcc.dg/noncompile/950921-1.c: Likewise.
	* gcc.dg/noncompile/951123-1.c: Likewise.
	* gcc.dg/noncompile/971104-1.c: Likewise.
	* gcc.dg/noncompile/990416-1.c: Likewise.

From-SVN: r61768
2003-01-25 14:39:11 +00:00
Jan Hubicka
27a6aa72db builtins.c (fold_trunc_transparent_mathfn): New function.
* builtins.c (fold_trunc_transparent_mathfn): New function.
	(fold_builtin): Use it.
	* convert.c (convert_to_real): Re-enable code to convert
	math functions; add support for floor familly functions.

From-SVN: r61764
2003-01-25 11:08:38 +00:00
Zdenek Dvorak
cd68f4e4c2 Makefile.in (cfgloop.o, [...]): Add dependencies on coretypes.h and $(TM_H).
* Makefile.in (cfgloop.o, cfgloopanal.o, cfgloopmanip.o): Add
	dependencies on coretypes.h and $(TM_H).

From-SVN: r61762
2003-01-25 10:16:10 +00:00
Jan Hubicka
67945f2e18 * builtins.c (fold_trunc_transparent_mathfn): Undo accidental commit.
From-SVN: r61761
2003-01-25 10:11:05 +00:00
Kazu Hirata
08f0414bfd Fix a small breakage.
From-SVN: r61759
2003-01-25 04:12:17 +00:00
Tom Tromey
b493875095 Cleaned up ChangeLog snafu
From-SVN: r61756
2003-01-25 02:53:04 +00:00
Stuart Hastings
095fa59493 * config/i386/i386.c (x86_output_mi_thunk) Add Darwin/x86 support.
From-SVN: r61755
2003-01-25 01:35:50 +00:00
Michael Hayes
1e4c04e02a c4x.md (UNSPEC_BU): New constants.
* config/c4x/c4x.md (UNSPEC_BU): New constants.
	(UNSPEC_RPTS, UNSPEC_LSH, UNSPEC_CMPHI, UNSPEC_RCPF): Likewise.
	(UNSPEC_RND, UNSPEC_RPTB_FILL, UNSPEC_LOADHF_INT): Likewise.
	(UNSPEC_STOREHF_INT, UNSPEC_RSQRF, UNSPEC_LOADQF_INT): Likewise.
	(UNSPEC_STOREQF_INT, UNSPEC_LDIV, UNSPEC_PUSH_ST):  Likewise.
	(UNSPEC_POP_ST, UNSPEC_PUSH_DP, UNSPEC_POP_DP):  Likewise.
	(UNSPEC_POPQI, UNSPEC_POPQF, UNSPEC_ANDN_ST):  Likewise.
	(UNSPEC_RPTB_INIT, UNSPEC_TOIEEE, UNSPEC_FRIEEE):  Likewise.

From-SVN: r61754
2003-01-25 00:35:36 +00:00
GCC Administrator
e5c81eff2e Daily bump.
From-SVN: r61753
2003-01-25 00:17:05 +00:00
Gerald Pfeifer
6b99984e7f MAINTAINERS: Remove incorrect entry for Paul Eggert.
* MAINTAINERS: Remove incorrect entry for Paul Eggert.  Fix
	entry of HJ Lu.

From-SVN: r61746
2003-01-24 23:31:41 +00:00
Christopher Faylor
ece0e59fbc configure.in: Remove special pex-cygwin consideration.
* configure.in: Remove special pex-cygwin consideration.
* configure: Regenerate.
* pex-cygwin.c: Remove.
* Makefile.in: Remove pex-cygwin.[co] lines.

From-SVN: r61744
2003-01-24 18:23:18 -05:00
Paolo Carlini
f5128e889f undefined1.C: Add error message.
2003-01-24  Paolo Carlini  <pcarlini@unitus.it>

	* g++.dg/parse/undefined1.C: Add error message.

From-SVN: r61742
2003-01-24 23:14:28 +00:00
Jan Hubicka
a560d4d4d9 emit-rtl.c (reg_attrs_htab): New static variable.
* emit-rtl.c (reg_attrs_htab): New static variable.
	(reg_attrs_htab_hash, reg_attrs_htab_eq, get_reg_attrs): New static
	functions.
	(reg_rtx): Do not maintain regno_decl.
	(gen_rtx_REG_offset, set_reg_attrs_from_mem, set_delc_rtx,
	set_mem_attrs_from_reg): New global function.
	(init_emit): Do not initialize regno_decl.
	(init_emit_once): initialize reg_attrs_htab.
	* final.c (alter_subreg): Do not replace REG by SUBREG.
	(gen_mem_expr_from_op): Improve output.
	(output_asm_operands): Likewise.
	* function.c (assign_params): Do not set REGNO_DECL.
	* function.h (struct function): Kill regno_decl.
	(REGNO_DECL): Kill.
	* gengtype.c (adjust_field_rtx_def): Handle new field of reg.
	* print_rtl.c (print_rtx): Output REG information.
	* regclass.c (reg_scan_mark_refs): Update attrs.
	* reload1.c (alter_reg): Likewise.
	* simplify_rtx.c (simplify_subreg): Likewise.
	* stmt.c (expand_decl): Likewise.
	* rtl.def (REG): Add new field.
	* rtl.h (struct reg_attrs): New.
	(rtunion_def): At rtreg.
	(X0MEMATTR): Add checking.
	(X0REGATTR, REG_ATTRS, REG_EXPR, REG_OFFSET): New macro.
	(set_reg_attrs_from_mem, set_mem_attrs_from_reg, gen_rtx_REG_offset):
	Declare.
	* tree.h (SET_DECL_RTL): Call set_decl_rtl.

From-SVN: r61741
2003-01-24 22:45:58 +00:00
Bob Wilson
1d0ea52e2d xtensa.c: Remove unused include of machmode.h.
* config/xtensa/xtensa.c: Remove unused include of machmode.h.
        (xtensa_emit_call, print_operand): Fix printf format strings
        to avoid compile warnings.
        (xtensa_function_prologue, xtensa_function_epilogue): Change type
        of "size" argument to HOST_WIDE_INT to fix compile warnings.
        * config/xtensa/xtensa-protos.h
        (xtensa_function_prologue, xtensa_function_epilogue): Ditto.

From-SVN: r61739
2003-01-24 22:09:05 +00:00
Jan Hubicka
272f51a36f builtins.c (DEF_BUILTIN): Accept 10 arguments.
* builtins.c (DEF_BUILTIN): Accept 10 arguments.
	(implicit_built_in_decls): New global array.
	(mathfn_built_in): New global function.
	(fold_trunc_transparent_mathfn): New static function
	(expand_builtin_strstr, expand_bultin_strchr,
	expand_builtin_strpbrk, expand_builtin_strcpy,
	expand_builtin_strncpy, expand_bultin_strcmp,
	expand_bultin_strncat, expand_builtin_fputs): Use
	implicint_built_in_decls.
	(fold_builtin): Fold floor/trunc/round/ceil/nearbyint.
	* builtins.def: Fix comments.
	(DEF_GCC_BUILTIN, DEF_FALLBACK_BUILTIN, DEF_EXT_FALLBACK_BUILTIN,
	DEF_LIB_BUILTIN, DEF_LIB_ALWAYS_BUILTIN, DEF_EXT_LIB_BUILTIN,
	DEF_C99_BULTIN, DEF_FRONT_END_LIB_BUILTIN,
	DEF_EXT_FRONT_END_LIB_BUILTIN): Pass implicit as needed.
	(DEF_C99_C90RES_BULTIN): New.
	(*f, *l builtins): Update.
	* c-common.c (DEF_BUILTIN): Initialize implicit array.
	(c_expand_builtin_printf, c_expand_builtin_fprintf): Update.
	* convert.c (strip_float_extensions): New global function.
	* tree.h (DEF_BUILTIN): Accept 10 arguments.
	(implicit_built_in_decls, mathfn_built_in, strip_float_extension):
	Declare.
	* java/builtins.c (define_builtin): Handle implicit.
	(DEF_BUILTIN): Update.
	* tm.texi (TARGET_C99_FUNCTIONS): Document.
	* defaults.h (TARGET_C99_FUNCTIONS): Default to 0.
	* config/linux.h (TARGET_C99_FUNCTIONS): Default to 1
	when using glibc2.

From-SVN: r61738
2003-01-24 22:07:01 +00:00