Commit Graph

84422 Commits

Author SHA1 Message Date
Janis Johnson
d6a64b9df9 invoke.texi (Optimize Options): Under -fcse-follow-jumps, show that CSE means common subexpression elimination.
* doc/invoke.texi (Optimize Options): Under -fcse-follow-jumps,
	show that CSE means common subexpression elimination.  Change wording
	for -fsee and define LCM.  Remove capitalization of optimizations
	for -ftree-reassoc, -ftree-pre, and -ftree-fre.

From-SVN: r129824
2007-11-01 16:34:48 +00:00
Janis Johnson
fdaea7e286 re PR testsuite/25352 (xfail within dg-do command has no effect)
gcc/
	PR testsuite/25352
	* doc/sourcebuild.texi (Test Directives): Document that xfail
	has no effect for dg-do except when dg-do-what is "run".

libstdc++-v3/
	PR testsuite/25352
	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
	Remove xfail from dg-do and add dg-skip-if.

gcc/testsuite/
	PR testsuite/25352
	* gcc.c-torture/compile/20000804-1.c: Remove xfail from dg-do and
	add dg-skip-if.
	* gcc.c-torture/compile/20001205-1.c: Ditto.
	* gcc.c-torture/compile/20001226-1.c: Ditto.
	* gcc.c-torture/compile/20020312-1.c: Ditto.
	* gcc.c-torture/compile/20020604-1.c: Ditto.
	* gcc.c-torture/compile/920501-12.c: Ditto.
	* gcc.c-torture/compile/920501-4.c: Ditto.
	* gcc.c-torture/compile/920520-1.c: Ditto.
	* gcc.c-torture/compile/980506-1.c: Ditto.
	* gcc.c-torture/compile/990617-1.c: Ditto.
	* gcc.dg/compare6.c: Ditto.
	* g++.old-deja/g++.brendan/crash43.C: Ditto.
	* g++.old-deja/g++.brendan/synth1.C: Ditto.
	* g++.old-deja/g++.oliva/dwarf2.C: Ditto.
	* g++.old-deja/g++.oliva/dwarf3.C: Ditto.
	* g++.old-deja/g++.pt/static6.C: Ditto.
	* g++.old-deja/g++.pt/crash16.C: Ditto.
	* g++.old-deja/g++.mike/p10416.C: Ditto.
	* g++.old-deja/g++.mike/ns15.C: Ditto.
	* g++.old-deja/g++.mike/eh46.C: Ditto.

From-SVN: r129823
2007-11-01 16:22:36 +00:00
Tom Tromey
5af28c7452 c-decl.c (grokdeclarator): Set decl source locations.
gcc
	* c-decl.c (grokdeclarator): Set decl source locations.
	* c-parser.c (c_parser_enum_specifier): Set location.
	(c_parser_struct_or_union_specifier): Likewise.
gcc/testsuite
	* gcc.dg/redecl-1.c: Update.
	* gcc.dg/pr20368-3.c: Update.
	* gcc.dg/inline-14.c: Update.
	* gcc.dg/builtins-30.c: Update.
	* gcc.dg/dremf-type-compat-4.c: Update.
	* gcc.dg/pr20368-2.c: Update.

From-SVN: r129822
2007-11-01 15:31:12 +00:00
Tom Tromey
18aa09d195 * print-tree.c (print_node): Print column number.
From-SVN: r129821
2007-11-01 15:06:11 +00:00
Jakub Jelinek
611cd333cd re PR debug/33537 (C++ arguments passed by invisible reference have wrong type)
PR debug/33537
	* dwarf2out.c (gen_formal_parameter_die, gen_variable_die,
	gen_decl_die): Use TREE_TYPE (TREE_TYPE (decl)) as type
	rather than TREE_TYPE (decl) if DECL_BY_REFERENCE (decl).

From-SVN: r129820
2007-11-01 11:17:42 +01:00
Jakub Jelinek
d0a55efc84 re PR rtl-optimization/33673 (ICE in verify_flow_info, missing barrier, when multiple tree opts disabled)
PR rtl-optimization/33673
	* gcse.c (cprop_jump): If a conditional jump has been optimized
	into unconditional jump, make the remaining normal edge fallthru
	and delete the jump insn.

	* gcc.dg/pr33673.c: New test.

From-SVN: r129819
2007-11-01 09:48:05 +01:00
Ben Elliston
895a813643 emit-rtl.c (set_reg_attrs_from_mem): Clarify function comment.
* emit-rtl.c (set_reg_attrs_from_mem): Clarify function comment.
	(set_mem_attrs_from_reg): Likewise.

From-SVN: r129818
2007-11-01 16:57:02 +11:00
Michael Matz
e08f02f0bb re PR tree-optimization/33961 (gcc 4.3 causes crash valid code to crash)
PR tree-optimization/33961
        * tree-ssa-phiopt.c (struct name_to_bb.store): New member.
        (name_to_bb_hash, name_to_bb_eq): Consider and check it.
        (add_or_mark_expr): New argument 'store', using it to search
        the hash table.
        (nt_init_block): Adjust calls to add_or_mark_expr.

        * gcc.dg/pr33961.c: New test.

From-SVN: r129817
2007-11-01 03:06:38 +00:00
Paolo Carlini
42e2a99953 re PR c++/33494 (Broken diagnostic: 'modop_expr' not supported by dump_expr)
/cp
2007-10-31  Paolo Carlini  <pcarlini@suse.de>

	PR c++/33494
	* cxx-pretty-print.c (pp_cxx_typeid_expression,
	pp_cxx_delete_expression): Change to static linkage.
	* cxx-pretty-print.h: Adjust declarations.
	* error.c (dump_expr, case EXPR_PACK_EXPANSION, TYPEID_EXPR,
	MEMBER_REF, DOTSTAR_EXPR, DELETE_EXPR, VEC_DELETE_EXPR,
	MODOP_EXPR): Forward to pp_expression.

	* cxx-pretty-print.c (pp_cxx_expression, case NON_DEPENDENT_EXPR):
	Fix typo.

/testsuite
2007-10-31  Paolo Carlini  <pcarlini@suse.de>

	PR c++/33494
	* g++.dg/template/error35.C: New.

From-SVN: r129816
2007-11-01 02:18:44 +00:00
Paolo Carlini
066f956c80 re PR c++/33494 (Broken diagnostic: 'modop_expr' not supported by dump_expr)
/cp
2007-10-31  Paolo Carlini  <pcarlini@suse.de>

	PR c++/33494
	* cxx-pretty-print.c (pp_cxx_typeid_expression,
	pp_cxx_delete_expression): Change to static linkage.
	* cxx-pretty-print.h: Adjust declarations.
	* error.c (dump_expr, case EXPR_PACK_EXPANSION, TYPEID_EXPR,
	MEMBER_REF, DOTSTAR_EXPR, DELETE_EXPR, VEC_DELETE_EXPR,
	MODOP_EXPR): Forward to pp_expression.

	* cxx-pretty-print.c (pp_cxx_expression, case NON_DEPENDENT_EXPR):
	Fix typo.

/testsuite
2007-10-31  Paolo Carlini  <pcarlini@suse.de>

	PR c++/33494
	* g++.dg/template/error35.C: New.

From-SVN: r129815
2007-11-01 02:17:02 +00:00
Paolo Carlini
c54171fee6 stl_queue.h (queue<>::push(value_type&&)): Replace with "emplace" version per DR 756.
2007-10-31  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_queue.h (queue<>::push(value_type&&)): Replace
	with "emplace" version per DR 756.
	(priority_queue<>::push(value_type&&)): Likewise.
	* include/bits/stl_stack.h (stack<>::push(value_type&&)): Likewise.

From-SVN: r129814
2007-11-01 01:40:56 +00:00
GCC Administrator
e52e300091 Daily bump.
From-SVN: r129811
2007-11-01 00:17:19 +00:00
Jakub Jelinek
a7efdc8427 re PR target/31507 (libffi regression, many.c, closure_fn2/fn3.c with -Os)
PR target/31507
	* config/i386/i386.md (pushsf_rex64): Use X instead of < constraints
	for the first push_operand.

	* gcc.dg/pr31507-1.c: New test.
	* gcc.dg/pr31507-2.c: New test.

From-SVN: r129807
2007-10-31 23:35:01 +01:00
Thiago Jung Bauermann
b1237e1315 configure.ac: Add ADDITIONAL_OBJS variable.
2007-10-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* configure.ac: Add ADDITIONAL_OBJS variable.
	* Makefile.in (bid_OBS): New.
	(libdecnumber_a_OBJS): Add ADDITIONAL_OBJS, remove condition
	on enable_decimal_float.
	* configure: Regenerate.

From-SVN: r129804
2007-10-31 17:54:43 +00:00
Revital Eres
e2e95f45a8 Enable auto-vectorization for PowerPC 750CL paired-single instructions
From-SVN: r129803
2007-10-31 17:04:42 +00:00
Tobias Burnus
1e4c40729a [multiple changes]
2007-10-31  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33941
        * modules.c (intrinsics): Use only alphabetic names for
        intrinsic operators.


2007-10-31  Dominique d'Humieres  <dominiq@lps.ens.fr>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/33941
        * gfortran.dg/module_read_1.f90: New.

From-SVN: r129801
2007-10-31 16:10:12 +01:00
Tom Tromey
5b9a40df4e re PR preprocessor/30786 (ICE on _Pragma at end of file)
gcc/testsuite
	PR preprocessor/30786:
	* gcc.dg/cpp/pr30786.c: New file.
libcpp
	PR preprocessor/30786:
	* macro.c (builtin_macro): Return result of _cpp_do__Pragma.
	* directives.c (_cpp_do__Pragma): Return error status.
	* internal.h (_cpp_do__Pragma): Update.
	* directives.c (get__Pragma_string): Back up if EOF seen.

From-SVN: r129800
2007-10-31 14:50:13 +00:00
Jerry DeLisle
69d10e15fb re PR fortran/33162 (INTRINSIC functions as ACTUAL argument)
2007-10-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/33162
	* gfortran.dg/interface_19.f90: New.
	* gfortran.dg/interface_20.f90: New.
	* gfortran.dg/interface_21.f90: New.

From-SVN: r129799
2007-10-31 14:30:48 +00:00
Jerry DeLisle
26033479fb re PR fortran/33162 (INTRINSIC functions as ACTUAL argument)
2007-10-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/33162
	* interface.c (compare_intr_interfaces): New function to check intrinsic
	function arguments against formal arguments. (compare_interfaces): Fix
	logic in comparison of function and subroutine attributes.
	(compare_parameter): Use new function for intrinsic as argument.
	* resolve.c (resolve_actual_arglist): Allow an intrinsic without
	function attribute to be checked further.  Set function attribute if
	intrinsic symbol is found, return FAILURE if not.

From-SVN: r129798
2007-10-31 14:26:57 +00:00
Sebastian Pop
2c26cbfd23 re PR tree-optimization/32377 (can't determine dependence (source/destination overlap without more than size))
2007-10-31  Sebastian Pop  <sebastian.pop@amd.com>

	PR tree-optimization/32377
	* tree-data-ref.c (compute_overlap_steps_for_affine_univar): Make it
	work also for unknown number of iterations.
	(analyze_subscript_affine_affine): Clean up.  Don't fail when the 
	number of iterations is not known.

	* gfortran.dg/vect/pr32377.f90: New.

From-SVN: r129797
2007-10-31 13:53:03 +00:00
Richard Guenther
ac029795f3 re PR middle-end/33779 (folds unsigned multiplication == 0 to true)
2007-10-31  Richard Guenther  <rguenther@suse.de>

	PR middle-end/33779
	* fold-const.c (extract_muldiv_1): Make sure to not introduce
	new undefined integer overflow.
	(fold_binary): Avoid useless conversion.

	* gcc.c-torture/execute/pr33779-1.c: New testcase.
	* gcc.c-torture/execute/pr33779-2.c: Likewise.

From-SVN: r129796
2007-10-31 12:33:05 +00:00
Paul Thomas
182393f4f7 re PR fortran/33897 (Incorrect host association in module)
2007-10-31  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/33897
        * decl.c (gfc_match_entry): Do not make ENTRY name
        global for contained procedures.
        * parse.c (gfc_fixup_sibling_symbols): Fix code for
        determining whether a procedure is external.

2007-10-31  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/33897
        * gfortran.dg/contained_3.f90: New.

From-SVN: r129795
2007-10-31 10:59:16 +01:00
Richard Sandiford
a3d977243d re PR target/33948 (Bootstrap broken on mips-sgi-irix6.5)
gcc/
	PR target/33948
	* config/mips/mips.c (mips_fpr_return_fields): Fix SCALAR_TYPE_P
	check.

From-SVN: r129794
2007-10-31 08:23:30 +00:00
Andreas Krebbel
47d94c1a50 rs6000.opt: Rename -mdfp option to -mhard-dfp.
2007-10-31  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/rs6000/rs6000.opt: Rename -mdfp option to -mhard-dfp.

	* config/s390/s390.c: (override_options): Replace -mhard-dfp/-msoft-dfp
	with -mhard-dfp/-mno-hard-dfp.
	* config/s390/s390.opt: Likewise.
	* config/s390/s390.h: Add MASK_HARD_DFP to the TARGET_DEFAULT
	definition.

From-SVN: r129793
2007-10-31 07:56:01 +00:00
Christian Bruel
0e95aec103 fix PR c++/19531: NRV is performed on volatile temporary
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>

From-SVN: r129792
2007-10-31 08:55:46 +01:00
GCC Administrator
4ac4ec1822 Daily bump.
From-SVN: r129790
2007-10-31 00:17:17 +00:00
Janis Johnson
ba927a8b4c * tree-ssa.c (execute_update_addresses_taken): Initialize update_vops.
From-SVN: r129787
2007-10-30 22:47:38 +00:00
Janis Johnson
0c166d0f1c invoke.texi (Option Summary): Add -fdce and -fdse to list of optimization options.
* doc/invoke.texi (Option Summary): Add -fdce and -fdse to list of
	optimization options.
	(Optimize Options): Add -fdce and -fdse to the list of optimizations
	enabled by -O.  Document -fdce and -fdse.

From-SVN: r129786
2007-10-30 22:45:00 +00:00
Jakub Jelinek
33a49c17e8 re PR c++/33709 (Type verification failure with new expression)
PR c++/33709
	* fold-const.c (fold_binary): If one argument is COMPOUND_EXPR,
	convert second operand of COMPOUND_EXPR to the original type of
	that argument.

	* g++.dg/opt/compound1.C: New test.

From-SVN: r129785
2007-10-30 23:40:13 +01:00
Jakub Jelinek
4c38e99eb4 re PR c++/33616 ("lvalue required as unary '&' operand" with template pmf)
PR c++/33616
	* decl2.c (build_offset_ref_call_from_tree): Call
	build_non_dependent_expr on object prior to building ADDR_EXPR from it
	if FN is DOTSTAR_EXPR.

	* g++.dg/template/ptrmem18.C: New test.

From-SVN: r129784
2007-10-30 23:37:53 +01:00
Francois-Xavier Coudert
e1332188a4 re PR fortran/33596 (ICE with simplified ISNAN)
PR fortran/33596

	* trans-intrinsic.c (gfc_conv_intrinsic_isnan): Strip NOP_EXPR
	from the result of build_call_expr.

	* gfortran.dg/isnan_2.f90: New test.

From-SVN: r129782
2007-10-30 21:48:23 +00:00
Ed Schouten
7e79298c1d re PR tree-optimization/32500 (Loop optimization limits range to size of array used inside loop)
PR tree-optimization/32500
	* gcc.c-torture/execute/pr32500.c: Fix buffer overflow in testcase.

From-SVN: r129781
2007-10-30 20:30:47 +00:00
H.J. Lu
26796ffd3b Remove ">>>>>>> .r129772".
From-SVN: r129777
2007-10-30 10:54:29 -07:00
Doug Gregor
9c6fc6c6e5 Revert accidental change to crash36.C
From-SVN: r129774
2007-10-30 13:38:10 +00:00
Doug Gregor
88b823145e re PR c++/31993 (ICE with template class in variadic template class)
2007-10-30  Douglas Gregor  <doug.gregor@gmail.com>

	PR c++/31993
	PR c++/32252
	* pt.c (find_parameter_packs_r): Fix typo in comment.
	(convert_template_argument): Look at the pattern of a pack
	expansion to determine what kind of entity we're converting.
	(coerce_template_parameter_pack): When we have coerced a non-type
	template parameter pack, substitute into the type of that pack.
	(tsubst_pack_expansion): When our substitution of a parameter pack
	is a "trivial" substitution of itself, just substitute into the
	pack expansion rather than actually expanding.

2007-10-30  Douglas Gregor  <doug.gregor@gmail.com>

	PR c++/31993
	PR c++/32252
	* g++.dg/cpp0x/pr31993.C: New
	* g++.dg/cpp0x/pr32252.C: New

From-SVN: r129773
2007-10-30 13:36:34 +00:00
Jakub Jelinek
310750d8ec re PR tree-optimization/33723 (Inefficient code with compound literals)
PR tree-optimization/33723
	* gcc.dg/tree-ssa/pr33723.c (T): Decrease size of field s.

From-SVN: r129772
2007-10-30 14:29:57 +01:00
Richard Guenther
e0734f6239 tree-ssa-operands.c (add_vars_for_offset): Fix exit test of loop adding SFTs as virtual operands.
2007-10-30  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-operands.c (add_vars_for_offset): Fix exit test
	of loop adding SFTs as virtual operands.

	* gcc.c-torture/execute/20071030-1.c: New testcase copied from
	gcc.target/i386/loop-3.c.

From-SVN: r129770
2007-10-30 13:22:36 +00:00
Paolo Carlini
ebb82e2751 re PR libstdc++/33815 (tr1::uniform_int isn't uniform)
2007-10-19  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/33815
	* include/tr1_impl/random
	(uniform_int<>::_M_call(_UniformRandomNumberGenerator&, result_type,
	result_type, true_type)): Avoid the modulo (which uses the low-order
	bits).

From-SVN: r129769
2007-10-30 13:05:26 +00:00
Richard Guenther
19d8eb46e3 Makefile.in (dse.o): Add $(OPTABS_H) and $(RECOG_H)
2007-10-30  Richard Guenther  <rguenther@suse.de>

        * Makefile.in (dse.o): Add $(OPTABS_H) and $(RECOG_H)
        * dependencies.

From-SVN: r129768
2007-10-30 09:05:44 +00:00
Revital Eres
56ac967158 Fix vectorizer testcase
From-SVN: r129767
2007-10-30 08:26:14 +00:00
Revital Eres
1631b7dee2 Fix vectorizer testcases
From-SVN: r129766
2007-10-30 07:03:49 +00:00
Benjamin Kosnik
43c772540e Correct filename.
2007-10-30  Benjamin Kosnik  <bkoz@redhat.com>

	*docs/html/ext/pb_ds/multimap_text_insert_timing_test_small.html:
	Correct filename.	
	*docs/html/ext/pb_ds/multimap_text_find_timing_test_large.html: Same.
	*docs/html/ext/pb_ds/
	multimap_text_insert_mem_usage_test_small.html: Same.
	*docs/html/ext/pb_ds/multimap_text_insert_timing_test_large.html: Same.
	*docs/html/ext/pb_ds/
	multimap_text_insert_mem_usage_test_large.html: Same.
	*docs/html/ext/pb_ds/multimap_text_find_timing_test_small.html: Same.

2007-10-30  Benjamin Kosnik  <bkoz@redhat.com>
	
	*include/Makefile.am (PCHFLAGS): Remove -Wno-deprecated.
	*include/Makefile.in: Regenerate.
	
	*include/std/memory: Remove extraneous include.

From-SVN: r129765
2007-10-30 05:25:33 +00:00
Dorit Nuzman
a96681aaee re PR target/32893 (zlib segfault in inflate_table() compiled w/ -O -msse2 ftree-vectorize)
PR tree-optimization/32893
        * tree-vectorize.c (vect_can_force_dr_alignment_p): Check
        STACK_BOUNDARY instead of PREFERRED_STACK_BOUNDARY.

From-SVN: r129764
2007-10-30 05:25:10 +00:00
GCC Administrator
43970902e4 Daily bump.
From-SVN: r129759
2007-10-30 00:17:29 +00:00
Rask Ingemann Lambertsen
9fe2319ede longlong.h (add_ssaaaa): Support Intel asm syntax in i386 and x86_64 versions.
* longlong.h (add_ssaaaa): Support Intel asm syntax in i386 and
	x86_64 versions.
	(sub_ddmmss): Likewise.
	(umul_ppmm): Likewise.
	(udiv_qrnnd): Likewise.

From-SVN: r129756
2007-10-29 23:54:54 +00:00
Janis Johnson
9f143763f0 re PR testsuite/24841 (dg-require compilation-test trigged on test with additional-sources barfs)
PR testsuite/24841
	* doc/sourcebuild.texi (Test Directives): Document that dg-require
	directives must come before dg-additional-sources.

From-SVN: r129744
2007-10-29 22:33:53 +00:00
Jakub Jelinek
489f2598af re PR tree-optimization/33723 (Inefficient code with compound literals)
PR tree-optimization/33723
	* c-gimplify.c (c_gimplify_expr): Optimize INIT_EXPR or
	MODIFY_EXPR with non-addressable COMPOUND_LITERAL_EXPR as source.

	* gcc.c-torture/execute/20071029-1.c: New test.
	* gcc.dg/tree-ssa/pr33723.c: New test.

From-SVN: r129743
2007-10-29 23:26:59 +01:00
Richard Sandiford
9f1da821e6 re PR tree-optimization/33614 (ICE on semi-constant vector CONSTRUCTORs)
gcc/
	PR tree-optimization/33614
	* gimplify.c (gimplify_init_constructor): Gimplify vector constructors
	if they can't be reduced to VECTOR_CSTs and aren't legitimate
	initializer constants.

gcc/testsuite/
	PR tree-optimization/33614
	* gcc.c-torture/compile/pr33614.c: New test.

From-SVN: r129739
2007-10-29 22:01:24 +00:00
Richard Guenther
5a347f2b40 re PR tree-optimization/33870 (miscompiles sqlite)
2007-10-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/33870
	* tree-ssa-operands.c (add_vars_for_offset): Remove mpt_vars parameter.
	(add_virtual_operand): Do not recurse into MPTs looking for pointed-to
	SFTs.

	* gcc.c-torture/execute/pr33870.x: XFAIL testcase for -O2 and -Os.

From-SVN: r129738
2007-10-29 21:47:05 +00:00
Jakub Jelinek
9c67102d11 re PR tree-optimization/33757 (Revision 126149 fails gcc.dg/tree-ssa/ssa-fre-4.c)
PR tree-optimization/33757
	* gcc.dg/tree-ssa/ssa-fre-4.c: Run on selected TARGET_PROMOTE_PROTOTYPES
	true architectures instead of having a big dg-skip-if.

From-SVN: r129737
2007-10-29 22:42:51 +01:00