Commit Graph

86576 Commits

Author SHA1 Message Date
Paolo Bonzini
d2784db4e5 c-objc-common.h (LANG_HOOKS_FUNCTION_ENTER_NESTED, [...]): Delete.
2008-04-03  Paolo Bonzini  <bonzini@gnu.org>

	* c-objc-common.h (LANG_HOOKS_FUNCTION_ENTER_NESTED,
	LANG_HOOKS_FUNCTION_LEAVE_NESTED): Delete.
	* c-tree.h (c_push_function_context, c_pop_function_context): Remove
	argument.
	* c-decl.c (c_push_function_context, c_pop_function_context): Remove
	argument, call {push,pop}_function_context from here.
	* c-parser.c: Use c_{push,pop}_function_context.

	* function.c (push_function_context_to): Move meat ...
	(push_function_context): ... here.  Simplify.
	* function.c (pop_function_context_from): Move meat ...
	(pop_function_context): ... here.  Simplify.
	* langhooks.h (struct lang_hooks_for_functions): Remove enter_nested,
	leave_nested).
	* langhooks-def.h (LANG_HOOKS_FUNCTION_ENTER_NESTED,
        LANG_HOOKS_FUNCTION_LEAVE_NESTED): Delete.
	(LANG_HOOKS_FUNCTION_INITIALIZER): Delete them from here.
	* tree.h (push_function_context_to, pop_function_context_from): Remove.

cp:
2008-04-03  Paolo Bonzini  <bonzini@gnu.org>

	* method.c (synthesize_method): Use {push,pop}_function_context.
	* name-lookup.c (push_to_top_level): Likewise.
	* parser.c (cp_parser_late_parsing_for_member): Likewise.

From-SVN: r133860
2008-04-03 05:38:32 +00:00
Paolo Bonzini
0a262d5466 re PR rtl-optimization/35281 (multiply with 0 generated for 64*32->64)
2008-04-03  Paolo Bonzini  <bonzini@gnu.org>

	PR rtl-optimization/35281
	* gcc.target/i386/pr35281.c: New test.

From-SVN: r133859
2008-04-03 05:36:26 +00:00
Ben Elliston
9e0aebcaee * expmed.c (extract_force_align_mem_bit_field): Remove.
From-SVN: r133858
2008-04-03 16:17:11 +11:00
Richard Guenther
55187c8a16 re PR middle-end/35800 (Revision 133835 failed to compile binutils)
PR middle-end/35800
	* expr.h (try_casesi): Adjust prototype.
	* expr.c (try_casesi): Take fallback label as extra parameter.
	Use that for gen_casesi if default_label is NULL.
	* stmt.c (expand_case): Pass fallback label to try_casesi,
	make sure to fill gaps with a fallback label if default_label
	is not present.

From-SVN: r133857
2008-04-03 02:09:20 +00:00
Richard Guenther
d2cf5f997f re PR middle-end/35800 (Revision 133835 failed to compile binutils)
PR middle-end/35800
	* gcc.c-torture/execute/pr35800.c: New test.

From-SVN: r133856
2008-04-03 02:08:13 +00:00
Dominique d'Humieres
d7087dd2ed re PR target/35801 (At revision 133817, bootstrap fails at libstdc++-v3/src/strstream.cc on powerpc-apple-darwin9)
2008-04-03  Dominique d'Humieres <dominiq@lps.ens.fr>

        PR target/35801
        * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Free cfun.

From-SVN: r133855
2008-04-02 20:33:05 -04:00
GCC Administrator
9fc8f665cb Daily bump.
From-SVN: r133853
2008-04-03 00:17:34 +00:00
Ben Elliston
609023fff0 expmed.c (extract_split_bit_field): Remove if (0) code.
* expmed.c (extract_split_bit_field): Remove if (0) code.
	* tree-ssa-structalias.c (do_sd_constraint): Likewise.
	(do_ds_constraint): Likewise.

From-SVN: r133848
2008-04-03 06:56:03 +11:00
Joseph Myers
93d45d9eda cppopts.texi (-dU): Document.
gcc:
	* doc/cppopts.texi (-dU): Document.
	* c-common.h (flag_dump_macros): Update comment.
	* c-opts.c (handle_OPT_d): Handle -dU.
	* c-ppoutput.c (macro_queue, define_queue, undef_queue,
	dump_queued_macros, cb_used_define, cb_used_undef): New.
	(init_pp_output): Handle -dU.
	(cb_line_change): Call dump_queued_macros.
	* toplev.c (decode_d_option): Accept -dU as preprocessor option.

gcc/testsuite:
	* gcc.dg/cpp/cmdlne-dU-1.c, gcc.dg/cpp/cmdlne-dU-2.c,
	gcc.dg/cpp/cmdlne-dU-3.c, gcc.dg/cpp/cmdlne-dU-4.c,
	gcc.dg/cpp/cmdlne-dU-5.c, gcc.dg/cpp/cmdlne-dU-6.c,
	gcc.dg/cpp/cmdlne-dU-7.c, gcc.dg/cpp/cmdlne-dU-8.c,
	gcc.dg/cpp/cmdlne-dU-9.c, gcc.dg/cpp/cmdlne-dU-10.c,
	gcc.dg/cpp/cmdlne-dU-11.c, gcc.dg/cpp/cmdlne-dU-12.c,
	gcc.dg/cpp/cmdlne-dU-13.c, gcc.dg/cpp/cmdlne-dU-14.c,
	gcc.dg/cpp/cmdlne-dU-15.c, gcc.dg/cpp/cmdlne-dU-16.c,
	gcc.dg/cpp/cmdlne-dU-17.c, gcc.dg/cpp/cmdlne-dU-18.c,
	gcc.dg/cpp/cmdlne-dU-19.c, gcc.dg/cpp/cmdlne-dU-20.c,
	gcc.dg/cpp/cmdlne-dU-21.c, gcc.dg/cpp/cmdlne-dU-22.c: New tests.

libcpp:
	* include/cpplib.h (struct cpp_callbacks): Add used_define,
	used_undef and before_define.
	(NODE_USED): Define.
	* directives.c (do_define, do_undef, undefine_macros, do_ifdef,
	do_ifndef, cpp_pop_definition): Handle new flag and use new
	callbacks.
	* expr.c (parse_defined): Handle new flag and use new callbacks.
	* macro.c (enter_macro_context, _cpp_free_definition): Handle new
	flag and use new callbacks.

From-SVN: r133847
2008-04-02 20:42:53 +01:00
Anatoly Sokolov
e6b69d0e56 predicates.md (io_address_operand): New predicate.
* config/avr/predicates.md (io_address_operand): New predicate. 
	* config/avr/avr-protos.h (avr_io_address_p): Remove declaration.
	* config/avr/avr.c (avr_io_address_p): Remove function.
	(out_movqi_r_mr): Use 'io_address_operand' predicate instead of 
	'avr_io_address_p' function.
	(out_movhi_r_mr): (Ditto.).
	(out_movqi_mr_r): (Ditto.).
	(out_movhi_mr_r): (Ditto.).
	(avr_address_cost): (Ditto.).

From-SVN: r133846
2008-04-02 23:21:01 +04:00
Uros Bizjak
7b1980026c i386.md (*float<SSEMODEI24:mode><X87MODEF:mode>2_1): Emit gen_floatdi<X87MODEF:mode>2_i387_with_xmm for DImode values in 32bit mode...
* config/i386/i386.md (*float<SSEMODEI24:mode><X87MODEF:mode>2_1):
        Emit gen_floatdi<X87MODEF:mode>2_i387_with_xmm for DImode values
        in 32bit mode when XMM registers are available to avoid store
        forwarding stalls.
        (floatdi<X87MODEF:mode>2_i387_with_xmm): New insn pattern and
        corresponding post-reload splitters.

From-SVN: r133845
2008-04-02 21:07:27 +02:00
Peter O'Gorman
ce52c73bed re PR bootstrap/35216 (Out of memory building java)
PR bootstrap/35216
* scripts/makemake.tcl: Replace org/omg build with build of all its subpackages.
* sources.am: Regenerate.
* Makefile.in: Regenerate.

From-SVN: r133842
2008-04-02 17:36:41 +00:00
H.J. Lu
abe08645a0 i386.c (bdesc_sse_3arg): Add __builtin_ia32_shufps and __builtin_ia32_shufpd.
2008-04-02  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (bdesc_sse_3arg): Add __builtin_ia32_shufps
	and __builtin_ia32_shufpd.  Provide __builtin_ia32_roundsd and
	__builtin_ia32_roundss.
	(ix86_init_mmx_sse_builtins): Remove __builtin_ia32_shufps,
	__builtin_ia32_shufpd, __builtin_ia32_roundsd and
	__builtin_ia32_roundss.
	(ix86_expand_builtin): Don't handle IX86_BUILTIN_SHUFPS and
	IX86_BUILTIN_SHUFPD here.

From-SVN: r133838
2008-04-02 07:32:02 -07:00
H.J. Lu
94237c92ef i386.md (plogic): New.
2008-04-02  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.md (plogic): New.
	(plogicprefix): Likewise.

	* config/i386/mmx.md (mmx_<code><mode>3): New.
	(mmx_and<mode>3): Removed.
	(mmx_ior<mode>3): Likewise.
	(mmx_xor<mode>3): Likewise.

	* config/i386/sse.md (<code><mode>3): New.
	(*<code><mode>3): Likewise.
	(*<code><mode>3): Likewise.
	(<code><mode>3): Likewise.
	(*sse_<code><mode>3): Likewise.
	(*sse2_<code><mode>3): Likewise.
	(<code>tf3): Likewise.
	(*<code>tf3): Likewise.
	(and<mode>3): Likewise.
	(*and<mode>3): Likewise.
	(ior<mode>3): Removed.
	(*ior<mode>3): Likewise.
	(xor<mode>3): Likewise.
	(*xor<mode>3): Likewise.
	(*and<mode>3): Likewise.
	(*ior<mode>3): Likewise.
	(*xor<mode>3): Likewise.
	(and<mode>3): Likewise.
	(*sse_and<mode>3): Likewise.
	(*sse2_and<mode>3): Likewise.
	(andtf3): Likewise.
	(*andtf3): Likewise.
	(ior<mode>3): Likewise.
	(*sse_ior<mode>3): Likewise.
	(*sse2_ior<mode>3): Likewise.
	(iortf3): Likewise.
	(*iortf3): Likewise.
	(xor<mode>3): Likewise.
	(*sse_xor<mode>3): Likewise.
	(*sse2_xor<mode>3): Likewise.
	(xortf3): Likewise.
	(*xortf3): Likewise.

From-SVN: r133837
2008-04-02 06:53:38 -07:00
Richard Guenther
b7814a183c re PR tree-optimization/14495 ([tree-ssa] Propagate range info into a switch statement)
2008-04-02  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/14495
	PR tree-optimization/34793
	* tree-vrp.c (struct switch_update): New structure.
	(to_remove_edges, to_update_switch_stmts): New VECs.
	(simplify_switch_using_ranges): New function.  Remove not taken
	case labels and edges.
	(simplify_stmt_using_ranges): Call it.
	(identify_jump_threads): Mark edges we have queued for removal
	so we don't thread them.
	(execute_vrp): Remove edges queued for removal, update SWITCH_STMT
	case label vector.
	* tree-cfg.c (group_case_labels): Deal with missing default label.
	(tree_verify_flow_info): Allow missing default label.
	* stmt.c (emit_case_bit_tests): Deal with NULL default_label.
	(emit_case_nodes): Likewise.
	(expand_case): Do not rely on the default label to be present.
	* expr.c (try_casesi): Deal with NULL default_label.
	(do_tablejump): Likewise.

	* gcc.dg/tree-ssa/vrp41.c: New testcase.
	* gcc.dg/tree-ssa/vrp42.c: Likewise.

From-SVN: r133835
2008-04-02 12:54:08 +00:00
Richard Guenther
8aea0bf081 re PR tree-optimization/14495 ([tree-ssa] Propagate range info into a switch statement)
2008-04-02  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/14495
	* tree-vrp.c (vrp_visit_cond_stmt): Do not handle
	SWITCH_EXPR here ...
	(vrp_visit_switch_stmt): ... but here (new function).
	(find_case_label_index): New helper function.
	(vrp_visit_stmt): Dispatch to vrp_visit_switch_stmt.

	* gcc.dg/tree-ssa/vrp40.c: New testcase.

From-SVN: r133834
2008-04-02 12:51:37 +00:00
Paolo Bonzini
3f1c227804 fwprop.c: Fix ISO-C99ism.
2008-04-02  Paolo Bonzini  <bonzini@gnu.org>

	* fwprop.c: Fix ISO-C99ism.

From-SVN: r133833
2008-04-02 12:16:54 +00:00
Paolo Bonzini
da0f638158 re PR bootstrap/35752 (Combined gcc + binutils source tree doesn't bootstrap with --enable-shared)
2008-04-02  Paolo Bonzini  <bonzini@gnu.org>

	PR bootstrap/35752
	* Makefile.in (objdir): Set it here.
	* configure.ac: Not here.  Find dynamic linker characteristics.
	* exec-tool.in: Use them.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r133832
2008-04-02 10:07:58 +00:00
Eric Botcazou
bf1e48d172 decl.c (gnat_to_gnu_entity): For a constant object whose type has self-referential size...
* decl.c (gnat_to_gnu_entity) <object>: For a constant object whose
	type has self-referential size, get the size from the initializing
	expression directly if it is also a constant whose nominal type
	has self-referential size.

From-SVN: r133831
2008-04-02 10:06:57 +00:00
Paolo Bonzini
4846b4355c expr.c (expand_var): Delete it.
2008-04-02  Paolo Bonzini  <bonzini@gnu.org>

	* expr.c (expand_var): Delete it.
	* expr.h (expand_var): Delete prototype.
	* function.c (expand_function_start): Use expand_decl instead.
	* cfgexpand.c (expand_one_static_var, expand_one_var): Don't call
	langhook.

From-SVN: r133830
2008-04-02 10:01:43 +00:00
Andy Hutchinson
4fefbcdbe5 re PR rtl-optimization/35542 (fwprop only propagates one operand)
2008-04-02  Andy Hutchinson <hutchinsonamdy@aim.com>

	PR rtl-optimization/35542
	* fwprop.c (forward_propagate_and_simplify): Replace
	loc_reg_mentioned_in_p with reg_mentioned_p.

From-SVN: r133829
2008-04-02 09:56:17 +00:00
Paolo Bonzini
460d667de9 fwprop.c (PR_CAN_APPEAR, [...]): New.
2008-04-02  Paolo Bonzini  <bonzini@gnu.org>

	* fwprop.c (PR_CAN_APPEAR, PR_HANDLE_MEM): New.
	(propagate_rtx_1): Handle PR_HANDLE_MEM.
	(propagate_rtx): Pass PR_HANDLE_MEM if appropriate.
	(varying_mem_p): Move above propagate_rtx.
	(all_uses_available_at): Do not check MEMs.

From-SVN: r133828
2008-04-02 09:53:34 +00:00
Rafael Avila de Espindola
a26a02d7a7 tree-vrp.c (extract_code_and_val_from_cond): Remove.
2008-04-02  Rafael Espindola  <espindola@google.com>

	* tree-vrp.c (extract_code_and_val_from_cond): Remove.
	(register_edge_assert_for_2): Split the cond argument.
	(register_edge_assert_for_1): Adjust for the change in
	register_edge_assert_for_2.
	(register_edge_assert_for): Split the cond argument.
	(find_switch_asserts): Adjust for the change in
	register_edge_assert_for.

From-SVN: r133827
2008-04-02 08:44:39 +00:00
Kai Tietz
d925aa70c1 MAINTAINERS (Write After Approval): Add myself.
2008-04-02  Kai Tietz  <kai.tietz@onvision.com>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r133826
2008-04-02 10:29:10 +02:00
Kai Tietz
893125e0d6 cygming.h (ASM_OUTPUT_DWARF_OFFSET): Add 8 byte offsets for 64-bit mingw.
2008-04-02  Kai Tietz  <kai.tietz@onevision.com>

	* gcc/config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Add 8 byte
	offsets for 64-bit mingw.
	* gcc/config/i386/i386.c (ix86_pass_by_reference): Correct calling
	abi for x86_64-pc-mingw.

From-SVN: r133825
2008-04-02 09:57:02 +02:00
Kai Tietz
e8930cc1e2 config.gcc: Add for x86_64-*-mingw* the t-crtfm to tbuild.
2008-04-02  Kai Tietz  <kai.tietz@onevision.com>

	* config.gcc: Add for x86_64-*-mingw* the t-crtfm to tbuild.

From-SVN: r133824
2008-04-02 09:48:07 +02:00
Seongbae Park
ad424a85bc Makefile.tpl (.NOTPARALLEL): Revert previous change.
2008-04-01  Seongbae Park <seongbae.park@gmail.com>

	* Makefile.tpl (.NOTPARALLEL): Revert previous change.
	* Makefile.in (.NOTPARALLEL): Ditto.

From-SVN: r133815
2008-04-02 02:29:33 +00:00
John David Anglin
51e5c7b5ad re PR ada/33688 (Ada package Gnat.Sockets missing constant for IP_PKTINFO (patch))
PR ada/33688
	* g-soccon-darwin.ads: Define new constant IP_PKTINFO.

From-SVN: r133814
2008-04-02 01:02:58 +00:00
GCC Administrator
b739176e59 Daily bump.
From-SVN: r133812
2008-04-02 00:17:30 +00:00
Richard Guenther
70b7b0376e re PR tree-optimization/35787 (Revision 133680 breaks 447.dealII)
2008-04-02  Richard Guenther  <rguenther@suse.de>

	* tree-vrp.c (extract_range_from_assert): Make sure to not
	produce range min/max with TREE_OVERFOW set.
	If merging a anti-range and a range keep the anti-range if
	the range covers all values of the type.
	(register_edge_assert_for_2): Only allow sign-changing
	conversions in detecting canonical range checks.  Also
	register an assert for the unsigned name if useful.

	PR tree-optimization/35787
	* tree-vrp.c (vrp_val_max): New function.
	(vrp_val_min): Likewise.
	(vrp_val_is_max): Move earlier, use vrp_val_{min,max}.
	(vrp_val_is_min): Likewise.
	(supports_overflow_infinity): Use vrp_val_{min,max}.
	(negative_overflow_infinity): Likewise.
	(positive_overflow_infinity): Likewise.
	(is_negative_overflow_infinity): Use vrp_val_is_{min,max}.
	(is_positive_overflow_infinity): Likewise.
	(is_overflow_infinity): Likewise.
	(avoid_overflow_infinity): Use vrp_val_{min,max} and
	vrp_val_is_{min,max}.
	(set_and_canonicalize_value_range): Canonicalize anti-ranges
	to ranges if possible.  Avoid empty ranges.

	* gcc.dg/tree-ssa/vrp38.c: New testcase.
	* gcc.dg/tree-ssa/vrp39.c: Likewise.

From-SVN: r133808
2008-04-01 22:59:21 +00:00
John David Anglin
a6a0635ec1 re PR ada/33857 (Cannot bootstrap Ada with host gnatmake-4.2)
PR ada/33857
	* env.c: Always include crt_externs.h if __APPLE__ is defined.
	(__gnat_setenv): Use setenv instead of putenv if __APPLE__ is defined.

From-SVN: r133806
2008-04-01 22:23:04 +00:00
John David Anglin
1074328047 re PR middle-end/35705 (Symbol address check eliminated by C frontend.)
PR middle-end/35705
	* fold-const.c (get_pointer_modulus_and_residue): Return modulus 1 if
	the expression is a function address.

From-SVN: r133804
2008-04-01 22:14:41 +00:00
George Helffrich
7151ffbe56 trans-common.c (create_common): Add decl to function chain to preserve identifier scope in debug output.
* fortran/trans-common.c (create_common):  Add decl to function
	chain to preserve identifier scope in debug output.

	* dbxout.c: Emit .stabs debug info for Fortran COMMON block
	variables as base symbol name + offset using N_BCOMM/N_ECOMM.
	(is_fortran, dbxout_common_name, dbxout_common_check): New functions.
	(dbxout_symbol_location): Transform N_LCSYM to N_GSYM for storage
	in common.
	(dbxout_syms): Check for COMMON-based symbol and wrap in
	N_BCOMM/N_ECOMM stab bracket, including as many symbols as possible
	in bracket for efficiency.

	* dwarf2out.c: Emit DWARF debug info for Fortran COMMON block
	using DW_TAG_common_block + member offset.
	(add_pubname_string): New function.
	(dw_expand_expr): New function to find block name and offset for
	COMMON var.
	(common_check): New function to check whether symbol in Fortran COMMON.
	(gen_variable_die): If COMMON, use DW_TAG_common_block.

	* testsuite/gcc.dg/debug/pr35154.c:  New test to check that non-Fortran
	use of common is unchanged.

	* testsuite/lib/gfortran-dg.exp:  New harness to compile Fortran progs
	with all combinations of debug options available on target.
	* testsuite/gfortran.dg/debug/debug.exp:  Ditto.
	* testsuite/gfortran.dg/debug/trivial.f:  Ditto.
	* testsuite/gfortran.dg/debug/pr35154-stabs.f:  New test case for
	.stabs functionality.
	* testsuite/gfortran.dg/debug/pr35154-dwarf2.f:  New test case for
	DWARF functionality.

From-SVN: r133801
2008-04-01 21:23:36 +00:00
Volker Reichelt
dc197ab91c re PR c/35436 (ICE with attribute "format")
PR c/35436
	* c-format.c (init_dynamic_gfc_info): Ignore invalid locus type.

	* gcc.dg/format/gcc_gfc-2.c: New test.

From-SVN: r133800
2008-04-01 20:33:37 +00:00
Ben Elliston
9e9b53411e v850.md (casesi): Remove if (0) code.
* config/v850/v850.md (casesi): Remove if (0) code.
	* config/i386/uwin.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
	* config/alpha/alpha.c (alpha_initialize_trampoline): Likewise.

From-SVN: r133799
2008-04-02 07:25:23 +11:00
Uros Bizjak
380edc9faf i386.md (rex64suffix): New mode attribute.
* config/i386/i386.md (rex64suffix): New mode attribute.
        (floathi<mode>2): Disable expander for SSE math.
        (*floathi<mode>2_1): New insn insn_and_split pattern.
        (*floathi<mode>2_i387_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floathi<mode>2_i387): New macroized insn pattern.
        (float<SSEMODEI24:mode><X87MODEF:mode>2): New macroized expander.
        (*float<SSEMODEI24:mode><X87MODEF:mode>2_1): New macroized
        insn_and_split pattern.
        (*floatsi<mode>2_vector_mixed_with_temp, *floatsi<mode>2_vector_mixed):
        New macroized instruction patterns and corresponding post-reload
        splitters.
        (*floatsi<mode>2_mixed_with_temp): New macroized instruction pattern
        and corresponding post-reload splitters.
        (*floatsi<mode>2_mixed_interunit, *floatsi<mode>2_mixed_nointerunit):
        New macroized instruction patterns.
        (*floatsi<mode>2_vector_sse_with_temp, *floatsi<mode>2_vector_sse): New
        macroized instruction patterns and corresponding post-reload splitters.
        (*floatsi<mode>2_sse_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floatsi<mode>2_sse_interunit, *floatsi<mode>2_mixed_nointerunit):
        New macroized instruction patterns.
        (*floatsi<mode>2_i387_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floatsi<mode>2_i387): New macroized instruction patterns.

From-SVN: r133798
2008-04-01 22:20:09 +02:00
H.J. Lu
78e8956be7 i386.md (smaxmin): New.
2008-04-01  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.md (smaxmin): New.
	(umaxmin): Likewise.
	(maxminiprefix): Likewise.
	(maxminfprefix): Likewise.
	(<code><mode>3): Likewise.
	(smin<mode>3): Removed.
	(smax<mode>3): Likewise.

	* config/i386/mmx.md (mmx_<code>v2sf3): New.
	(mmx_<code>v4hi3): Likewise.
	(mmx_<code>v8qi3): Likewise.
	(mmx_smaxv2sf3): Removed.
	(mmx_sminv2sf3): Likewise.
	(mmx_umaxv8qi3): Likewise.
	(mmx_smaxv4hi3): Likewise.
	(mmx_uminv8qi3): Likewise.
	(mmx_sminv4hi3): Likewise.

	* config/i386/sse.md (<addsub><mode>3): New.
	(*<addsub><mode>3): Likewise.
	(<sse>_vm<addsub><mode>3): Likewise.
	(<maxmin><mode>3): Likewise.
	(*<maxmin><mode>3_finite): Likewise.
	(*<maxmin><mode>3): Likewise.
	(<sse>_vm<maxmin><mode>3): Likewise.
	(sse3_h<addsub>v4sf3): Likewise.
	(sse3_h<addsub>v2df3): Likewise.
	(<maxmin>v16qi3): Likewise.
	(*<maxmin>v16qi3): Likewise.
	(<maxmin>v8hi3): Likewise.
	(*<maxmin>v8hi3): Likewise.
	(*sse4_1_<maxmin><mode>3): Likewise.
	(*sse4_1_<maxmin><mode>3): Likewise.
	(add<mode>3): Removed.
	(*add<mode>3): Likewise.
	(<sse>_vmadd<mode>3): Likewise.
	(sub<mode>3): Likewise.
	(*sub<mode>3): Likewise.
	(<sse>_vmsub<mode>3): Likewise.
	(smin<mode>3): Likewise.
	(*smin<mode>3_finite): Likewise.
	(*smin<mode>3): Likewise.
	(<sse>_vmsmin<mode>3): Likewise.
	(smax<mode>3): Likewise.
	(*smax<mode>3_finite): Likewise.
	(*smax<mode>3): Likewise.
	(<sse>_vmsmax<mode>3): Likewise.
	(sse3_haddv4sf3): Likewise.
	(sse3_haddv2df3): Likewise.
	(sse3_hsubv4sf3): Likewise.
	(sse3_hsubv2df3): Likewise.
	(umaxv16qi3): Likewise.
	(*umaxv16qi3): Likewise.
	(smaxv8hi3): Likewise.
	(*smaxv8hi3): Likewise.
	(*sse4_1_smax<mode>3): Likewise.
	(*sse4_1_umax<mode>3): Likewise.
	(uminv16qi3): Likewise.
	(*uminv16qi3): Likewise.
	(sminv8hi3): Likewise.
	(*sminv8hi3): Likewise.
	(*sse4_1_smin<mode>3): Likewise.
	(*sse4_1_umin<mode>3): Likewise.

From-SVN: r133797
2008-04-01 12:12:31 -07:00
Rafael Avila de Espindola
220f1c2948 tree-cfg.c (verify_expr): remove in_phi.
2008-04-01  Rafael Espindola  <espindola@google.com>

	* tree-cfg.c (verify_expr): remove in_phi.
        (verify_stmt): Don't call walk_tree with verify_expr. Use
	is_gimple_min_invariant instead of is_gimple_val.

From-SVN: r133795
2008-04-01 18:40:16 +00:00
Joseph Myers
7f9766e49a texi2pod.pl: Handle @samp and @url inside verbatim blocks.
contrib:
	* texi2pod.pl: Handle @samp and @url inside verbatim blocks.
	Handle @heading.  Handle enumerated lists with starting numbers
	and extra headings.

gcc:
	* doc/include/gpl_v3.texi: Update for manpage generation.
	* doc/gcc.texi, doc/gccint.texi: Include gpl_v3.texi instead of
	gpl.texi.
	* doc/sourcebuild.texi: Document gpl_v3.texi as well as gpl.texi.
	* Makefile.in (TEXI_GCC_FILES, TEXI_GCCINT_FILES): Include
	gpl_v3.texi instead of gpl.texi.
	(gpl.pod): New.

gcc/fortran:
	* gfortran.texi: Include gpl_v3.texi instead of gpl.texi
	* Make-lang.in (GFORTRAN_TEXI): Include gpl_v3.texi instead of
	gpl.texi.

gcc/java:
	* gcj.texi: Include gpl_v3.texi instead of gpl.texi
	* Make-lang.in (TEXI_JAVA_FILES): Include gpl_v3.texi instead of
	gpl.texi.

From-SVN: r133794
2008-04-01 17:38:56 +01:00
Peter O'Gorman
4412a50664 * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r133793
2008-04-01 15:53:22 +00:00
Andreas Jaeger
4d22f5b177 g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and IP_PKTINFO.
2008-04-01  Andreas Jaeger  <aj@suse.de>

        * g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and
        IP_PKTINFO.

From-SVN: r133792
2008-04-01 17:42:11 +02:00
Jakub Jelinek
d4c32e1d76 re PR pch/13675 (#including a precompiled header more than once in the same unit fails)
PR pch/13675
	* files.c (struct _cpp_file): Remove pch field.
	(pch_open_file): Don't set file->pch, just file->pchname.
	(should_stack_file): After pfile->cb.read_pch call
	free pchname and clear pchname, don't close file->fd.
	Test file->pchname instead of file->pch.  Don't close fd after cb.
	(_cpp_stack_include): Test file->pchname instead of file->pch.

	* c-pch.c (c_common_read_pch): On error close (fd) resp. fclose (f).

From-SVN: r133790
2008-04-01 12:58:02 +02:00
Rafael Avila de Espindola
764a79eda2 tree-vrp.c (extract_code_and_val_from_cond_with_ops): New.
2008-04-01  Rafael Espindola  <espindola@google.com>

	* tree-vrp.c (extract_code_and_val_from_cond_with_ops): New.
	(extract_code_and_val_from_cond): Use
	extract_code_and_val_from_cond_with_ops.

From-SVN: r133789
2008-04-01 09:11:11 +00:00
Jan Hubicka
113c63b8e3 function.c (free_after_compilation): Free epilogue_delay_list.
* function.c (free_after_compilation): Free epilogue_delay_list.
	(prepare_function_start): Assert that previous compilation was freed.

From-SVN: r133787
2008-04-01 08:51:25 +00:00
Jan Hubicka
ec24c3a3c9 re PR middle-end/35781 (Revision 133759 breaks ia64)
PR middle-end/35781
	* m32c/m32.c (m32c_leaf_function_p, m32c_function_needs_enter): Use
	rtl.emit instead cfun->emit.
	* sparc/sparc.h (INIT_EXPANDERS): Likewise.
	* ia64/ia64.h (INIT_EXPANDERS): Likewise.

Co-Authored-By: Andreas Tobler <andreast@gcc.gnu.org>
Co-Authored-By: James E Wilson <wilson@tuliptree.org>

From-SVN: r133786
2008-04-01 08:41:14 +00:00
Ben Elliston
1b82c3aabe * doc/c-tree.texi (Function Basics): Fix grammatical error.
From-SVN: r133785
2008-04-01 16:32:18 +11:00
James E Wilson
048ffb8f50 Fix IA-64 enable-checking glibc ICE.
* varasm.c (output_constant_pool_1): In LABEL_REF check, use tmp
consistently.

From-SVN: r133783
2008-03-31 20:04:15 -07:00
GCC Administrator
a7d6cabcad Daily bump.
From-SVN: r133779
2008-04-01 00:17:28 +00:00
Seongbae Park
2f908293e2 common.opt (fprofile-dir=, [...]): New options
gcc/ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

	* common.opt (fprofile-dir=, fprofile-use=, fprofile-generate=):
	New options
	(fprofile-use): Add var flag_profile_use
	* coverage.c (coverage_begin_output): Do not open a gcno file for output
	only if -ftest-coverage is set.
	Do not add getpwd() to gcda file path.
	(build_gcov_info): Check the new flag 
	flag_profile_datafile_relative_path.
	(coverage_init): Use profile_data_prefix.
	Read profile counter only if flag_profile_use is set.
	* opts.c (common_handle_option): New option fprofile-use=,
	fprofile-dir=, fprofile-generate=.
	* toplev.c (profile_data_prefix): New variable definition.
	* toplev.h (profile_data_prefix): New declaration.
	* doc/invoke.tex (Option Summary, Optimization Options):
	Add new options.

gcc/testsuite/ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

	* g++.db/bprob/bprob.exp: Do not check gcno files.
	Use -fprofile-use for profile use.
	* gcc.misc-tests/bprob.exp: Ditto.
	* g++.dg/tree-pro/tree-prof.exp: Do not check gcno files.
	* gcc.dg/matrix/matrix.exp: Ditto.
	* gcc.dg/struct/struct-reorg.exp: Ditto.
	* gcc.dg/tree-prof/tree-prof.exp: Ditto.
	* gcc.dg/profile-dir-1.c: New test.
	* gcc.dg/profile-dir-2.c: New test.
	* gcc.dg/profile-dir-3.c: New test.

ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

	* Makefile.tpl (.NOTPARALLEL): Serialize stageprofile libiberty.
	* Makefile.in (.NOTPARALLEL): Regenerate.

From-SVN: r133774
2008-03-31 21:52:10 +00:00
James E Wilson
1def9c3f7d re PR target/35695 (-funroll-loops breaks inline float divide)
PR target/35695
* config/ia64/div.md (recip_approx_rf): Use UNSPEC not DIV.
* config/ia64/ia64.c (rtx_needs_barrier): Handle
UNSPEC_FR_RECIP_APPROX_RES.
* config/ia64/ia64.md (UNSPEC_FR_RECIP_APPROX_RES): Define.

From-SVN: r133772
2008-03-31 12:51:50 -07:00