Commit Graph

108824 Commits

Author SHA1 Message Date
Uros Bizjak
dfb737fcca i386.md (floating point move splitters): Fix usage of standard_80387_constant_p.
* config/i386/i386.md (floating point move splitters): Fix
	usage of standard_80387_constant_p.
	(ix86_preferred_reload_class): Ditto.

From-SVN: r173775
2011-05-15 21:31:32 +02:00
Paolo Carlini
4d4cf1444d c++config (_GLIBCXX_NOEXCEPT, [...]): Add.
2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
	Add.
	* include/std/limits: Use the latter everywhere.
	(numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
	macro usages, the specializations exist only in C++0x mode.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
	line number.

From-SVN: r173774
2011-05-15 18:21:03 +00:00
Uros Bizjak
8caa1de002 i386.md (*movdf_internal): Simplify insn condition.
* config/i386/i386.md (*movdf_internal): Simplify insn condition.

From-SVN: r173773
2011-05-15 19:44:03 +02:00
Tobias Burnus
4ca9939b79 re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        actual argument is not an array; rank mismatch is diagnosted later.
        * trans-decl.c (gfc_get_symbol_decl, gfc_trans_deferred_vars):
        * Handle
        scalar coarrays.
        * trans-types.c (gfc_get_array_type_bounds): Ditto.

2011-05-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray/image_index_2.f90: New.

From-SVN: r173772
2011-05-15 18:20:18 +02:00
Joern Rennecke
29eabd788f re PR middle-end/46500 (target.h includes tm.h)
PR middle-end/46500
gcc/fortran:
	* trans-types.c: Include "tm.h".
	[0] (c_size_t_size): Remove.

From-SVN: r173771
2011-05-15 13:50:57 +01:00
Janne Blomqvist
817f24d98e PR 48915 Clarify _gfortran_set_options documentation
From-SVN: r173770
2011-05-15 13:23:53 +03:00
GCC Administrator
e36d28bd11 Daily bump.
From-SVN: r173768
2011-05-15 00:18:21 +00:00
Eric Botcazou
8a5190956b tree-ssa-loop-im.c (SET_ALWAYS_EXECUTED_IN): New macro.
* tree-ssa-loop-im.c (SET_ALWAYS_EXECUTED_IN): New macro.
	(fill_always_executed_in): Use [SET_]ALWAYS_EXECUTED_IN.
	(tree_ssa_lim_finalize): Likewise.

From-SVN: r173762
2011-05-14 19:45:28 +00:00
Ville Voutilainen
486d481b39 Implement final on class.
* class.c (check_bases): Diagnose derivation from a final class.
	* cp-tree.h (lang_type_class): Add is_final and adjust dummy.
	(CLASSTYPE_FINAL): New.
	* parser.c (cp_parser_class_head): Parse class-virt-specifier, set
	CLASSTYPE_FINAL.
	* pt.c (instantiate_class_template_1): Copy CLASSTYPE_FINAL.

From-SVN: r173761
2011-05-14 14:13:23 -04:00
Tobias Burnus
ade2e40389 lang.opt (fdump-core): Re-add as ignored option for backward compatibility.
2011-05-14  Tobias Burnus  <burnus@net-b.de>

        * lang.opt (fdump-core): Re-add as ignored option
        for backward compatibility.

2011-05-14  Tobias Burnus  <burnus@net-b.de>

        * runtime/stop.c (error_stop_string, error_stop_numeric):
        Do not backtrace for ERROR STOP.

From-SVN: r173760
2011-05-14 18:02:07 +02:00
Joseph Myers
858afbce4e * zh_CN.po: Update.
From-SVN: r173758
2011-05-14 17:00:34 +01:00
Uros Bizjak
479fecd31e constraint.md (Yd, Yx): New register constraints.
* config/i386/constraint.md (Yd, Yx): New register constraints.
	* config/i386/i386.md (*pushdf): Merge with *pushdf_nointeger.  Use
	Yd conditional register constraint.
	(*movtf_internal): Use standard_sse_constant_opcode.
	(*movxf_internal): Merge with *movxf_internal_nointeger.  Use
	Yx conditional register constraint.
	(*movdf_internal): Merge with *movdf_internal_nointeger.  Use
	Yd conditional register constraint.  Use standard_sse_constant_p to
	check for valid SSE constants and call standard_sse_constant_opcode to
	output SSE insn.
	(*movsf_internal): Use standard_sse_constant_p to check for valid SSE
	constants and call standard_sse_constant_opcode to output SSE insn.
	* config/i386/i386.c (ix86_option_ovverride_internal): Set
	TARGET_INTEGER_DFMODE_MOVES for 64bit targets.  Clear it when
	optimize_size is set.
	(standard_sse_constant_opcode): Output conditional AVX insn templates.

From-SVN: r173757
2011-05-14 17:33:02 +02:00
Eric Botcazou
748f7574e8 Remove conflict marker
From-SVN: r173756
2011-05-14 10:38:45 +00:00
Tobias Burnus
e6242bc79e re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * interface.c (compare_parameter): Skip diagnostic if
        actual argument is not an array; rank mismatch is diagnosted later.

2011-05-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.de/coarray_20.f90: New.

From-SVN: r173755
2011-05-14 12:34:44 +02:00
Janne Blomqvist
4e4c4f4161 PR 48915 Update mixed-language programming documentation
From-SVN: r173754
2011-05-14 13:24:18 +03:00
Janne Blomqvist
7daa7b1da3 PR 48915 Update mixed-language programming documentation
From-SVN: r173753
2011-05-14 13:20:56 +03:00
Thomas Koenig
222c2a6395 re PR fortran/22572 (Double occurrence of matmul intrinsic not optimised)
2011-05-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/22572
	* frontend-passes.c (cfe_register_funcs):  Also register functions
	for potential elimination if the rank is > 0, the shape is unknown
	and reallocate on assignment is active.
	(create_var):  For rank > 0 functions with unknown shape, create
	an allocatable temporary.

2011-05-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/22572
	* function_optimize_7.f90:  New test case.

From-SVN: r173752
2011-05-14 09:48:08 +00:00
Tobias Burnus
2d8c9ad5c9 invoke.texi (-Ofast): Also enables -fstack-arrays.
2011-05-14  Tobias Burnus  <burnus@net-b.de>

        * doc/invoke.texi (-Ofast): Also enables -fstack-arrays.

2011-05-14  Tobias Burnus  <burnus@net-b.de>

        * options.c (gfc_init_options, gfc_post_options): Enable
        -fstack-arrays by default if -Ofast is used.
        * invoke.texi (-fstack-arrays): Document this.

From-SVN: r173751
2011-05-14 11:39:38 +02:00
Janne Blomqvist
de8bd1420e PR 48915 Abort handling
From-SVN: r173750
2011-05-14 11:44:09 +03:00
Janne Blomqvist
1028b2bded Error printing thread safety, remove GFORTRAN_USE_STDERR
From-SVN: r173749
2011-05-14 10:55:51 +03:00
Tobias Burnus
b4224aec54 re PR libfortran/48961 (EXECUTE_COMMAND_LINE(WAIT=.false.) fails on MinGW)
2011-05-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48961
        * intrinsics/execute_command_line.c (set_cmdstat): Don't abort if
        synchronously executing with WAIT=.false.
        (execute_command_line): Fix setting of cmdstat and exitstat.

From-SVN: r173748
2011-05-14 08:35:18 +02:00
GCC Administrator
2d9d4585c6 Daily bump.
From-SVN: r173747
2011-05-14 00:19:21 +00:00
Ian Lance Taylor
26793fb5fd Fix bug with multiple results returning structs with invalid sizes.
* go-gcc.cc (Gcc_backend::function_type): When building a struct
	for multiple results, check that all fields types have a size.
	(Gcc_backend::placeholder_pointer_type): Permit name to be empty.

From-SVN: r173742
2011-05-13 22:34:56 +00:00
Jason Merrill
b8f2ad7cc5 re PR c++/48969 (ICE with -std=c++0x)
PR c++/48969
	* pt.c (deduction_tsubst_fntype): New.
	(fn_type_unification): Use it.

From-SVN: r173741
2011-05-13 18:25:12 -04:00
Jason Merrill
4877e471e3 call.c (build_op_call): Use timevar_cond_start/stop.
* call.c (build_op_call): Use timevar_cond_start/stop.
	(build_user_type_conversion): Likewise.

From-SVN: r173740
2011-05-13 18:25:01 -04:00
Martin Jambor
411a20d66c ipa-prop.c (ipa_cst_from_jfunc): New function.
2011-05-13  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.c (ipa_cst_from_jfunc): New function.
	* ipa-prop.h (ipa_cst_from_jfunc): Declare.
	* ipa-inline-analysis.c (evaluate_conditions_for_edge): Use it.
	(evaluate_conditions_for_ipcp_clone): Removed.
	(estimate_ipcp_clone_size_and_time): Accept vector of known constants.
	* ipa-cp.c (ipcp_estimate_growth): Build vector of known constants.
	* ipa-inline.h (estimate_ipcp_clone_size_and_time): Update.

From-SVN: r173739
2011-05-14 00:01:59 +02:00
Tobias Burnus
d61d771f3b re PR fortran/48972 (OPEN with Unicode file name)
2011-05-13  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48972
        PR fortran/48991
        * gfortran.dg/assign_8.f90: Update dg-error.

From-SVN: r173738
2011-05-13 22:59:07 +02:00
Eric Botcazou
dc764d10fa cfgrtl.c (cfg_layout_redirect_edge_and_branch): Adjust dump message.
* cfgrtl.c (cfg_layout_redirect_edge_and_branch): Adjust dump message.
	* regcprop.c (copyprop_hardreg_forward): Test MAY_HAVE_DEBUG_INSNS in
	lieu of MAY_HAVE_DEBUG_STMTS.
	* tree-cfgcleanup.c (remove_forwarder_block): Do not attempt to move
	debug statements if !MAY_HAVE_DEBUG_STMTS.

From-SVN: r173737
2011-05-13 20:02:42 +00:00
Tobias Burnus
75933b07b7 re PR fortran/48972 (OPEN with Unicode file name)
2011-05-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48972
        * io.c (resolve_tag_format, resolve_tag): Make sure
        that the string is of default kind.
        (gfc_resolve_inquire): Also resolve decimal tag.

2011-05-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48972
        * gfortran.dg/io_constraints_8.f90: New.
        * gfortran.dg/io_constraints_9.f90: New.

From-SVN: r173736
2011-05-13 20:16:37 +02:00
Martin Thuresson
9f47a24e79 re PR gcov-profile/47793 (Relative path in fprofile-use turns into absolute path)
2011-05-13  Martin Thuresson  <martint@google.com>

	PR gcov-profile/47793
	* libgcov.c (gcov_exit): Support relative profile paths.
	* doc/invoke.texi (-fprofile-dir): Update for above change.

2011-05-13  Martin Thuresson  <martint@google.com>

	PR gcov-profile/47793
	* gcc.dg/pr47793.c: New.

From-SVN: r173735
2011-05-13 15:57:20 +00:00
Richard Guenther
b8a71aedd8 gimple.c (gimple_canonical_types_compatible_p): Do not use type-pair caching, do not compare hashes.
2011-05-13  Richard Guenther  <rguenther@suse.de>

	* gimple.c (gimple_canonical_types_compatible_p): Do not use
	type-pair caching, do not compare hashes.

From-SVN: r173734
2011-05-13 14:02:42 +00:00
Nathan Froyd
eb9f925985 Change edge_to_cases_cleanup to return true.
2011-05-13  Nathan Froyd  <froydnj@codesourcery.com>

	PR middle-end/48965
	* tree-cfg.c (edge_to_cases_cleanup): Return true.
	(verify_expr) [CASE_LABEL_EXPR]: Add checking.

From-SVN: r173733
2011-05-13 06:44:04 -07:00
Kai Tietz
3c6cbf7ad1 gimplify.c (gimplify_expr): Make sure operand is boolified.
2011-05-13  Kai Tietz  <ktietz@redhat.com>

        * gimplify.c (gimplify_expr): Make sure operand is boolified.
        * tree-cfg.c (verify_gimple_assign_unary): Check for boolean
        compatible type for TRUTH_NOT_EXPR.

From-SVN: r173732
2011-05-13 15:37:16 +02:00
H.J. Lu
2e7f5dc0e4 Change ix86_save_reg/ix86_hard_regno_mode_ok to return bool.
2011-05-13  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (ix86_save_reg): Change return type to
	bool.
	(ix86_hard_regno_mode_ok): Change return value to bool.  Use
	can_create_pseudo_p ().

From-SVN: r173731
2011-05-13 06:30:18 -07:00
Richard Guenther
e834e95c36 re PR lto/48978 (excessive hash table allocation for large lto build)
2011-05-13  Richard Guenther  <rguenther@suse.de>

	PR lto/48978
	* gimple.c (iterative_hash_gimple_type): Revert change in
	pointer target and function result and argument hashing.

From-SVN: r173730
2011-05-13 11:02:28 +00:00
Uros Bizjak
3420348330 i386.md (*movxf_internal): Use !can_create_pseudo ().
* config/i386/i386.md (*movxf_internal): Use !can_create_pseudo ().
	(*movxf_internal_nointeger): Ditto.
	(*movdf_internal_rex64): Ditto.
	(*movdf_internal): Ditto.
	(*movdf_internal_nointeger): Ditto.
	(*movsf_internal): Ditto.
	(sincos splitters): Use can_create_pseudo ().

From-SVN: r173729
2011-05-13 12:16:43 +02:00
Joseph Myers
7eb68c06bc i386-opts.h: New.
* config/i386/i386-opts.h: New.
	* gcc/config/i386/i386.c (stringop_alg, ix86_cmodel,
	ix86_asm_dialect, ix86_regparm, ix86_abi, ix86_branch_cost,
	ix86_section_threshold): Remove.
	(ix86_handle_option): Move MAX_CODE_ALIGN define here.  Handle
	OPT_malign_loops_, OPT_malign_jumps_, OPT_malign_functions_ and
	OPT_mbranch_cost_.
	(ix86_option_override_internal): Don't decode strings for options
	other than -march=, -mtune= and -mfpmath=.  Don't allow for
	__attribute__ uses in remaining diagnostics for options with
	string arguments.  Don't check for integer arguments being
	negative.
	* gcc/config/i386/i386.h (enum stringop_alg, enum calling_abi,
	enum tls_dialect, enum cmodel, enum asm_dialect): Move to
	i386-opts.h.
	(ix86_abi, ix86_tls_dialect, ix86_cmodel, ix86_asm_dialect,
	ix86_branch_cost, ix86_section_threshold): Remove.
	* gcc/config/i386/i386.opt (config/i386/i386-opts.h): New
	HeaderInclude.
	(malign-functions=, malign-jumps=, malign-loops=): Use UInteger
	but not Var.
	(masm=): Use Enum and Init.
	(asm_dialect): New Enum and EnumValue entries.
	(mbranch-cost=): Use UInteger.
	(mlarge-data-threshold=): Use UInteger and Init.
	(mcmodel=): Use Enum and Init.
	(cmodel): New Enum and EnumValue entries.
	(mpc): Replace with separate mpc32, mpc64 and mpc80 entries.
	(mpreferred-stack-boundary=, mincoming-stack-boundary=,
	mregparm=): Use UInteger.
	(mstringop-strategy=): Use Enum and Init.
	(stringop_alg): New Enum and EnumValue entries.
	(mtls-dialect=): Use Enum and Init.
	(tls_dialect): New Enum and EnumValue entries.
	(mabi=): Use Enum and Init.
	(calling_abi): New Enum and EnumValue entries.
	(mveclibabi=): Use Enum and Init.
	(ix86_veclibabi): New Enum and EnumValue entries.

From-SVN: r173728
2011-05-13 10:59:13 +01:00
Nick Clifton
f67e203c1f rx.md (mov expander): Fix use of rx_legitimate_constant_p.
* config/rx/rx.md (mov expander): Fix use of
	rx_legitimate_constant_p.
	* config/rx/rx-protos.h (rx_legitimate_constant_p): Rename
	prototype.

From-SVN: r173727
2011-05-13 09:35:28 +00:00
Kai Tietz
221df0b62d re PR middle-end/48984 (Many testsuite failures)
2011-05-13  Kai Tietz  <ktietz@redhat.com>

        PR middle-end/48984
        * gimplify.c (gimplify_expr): Check for boolean_type_node instead
        for BOOLEAN_TYPE for TRUTH-NOT/AND/OR/XOR.
        (gimple_boolify): Check for cast for boolean_type_node instead for
        BOOLEAN_TYPE.

From-SVN: r173726
2011-05-13 11:21:36 +02:00
Richard Guenther
208cb8cbad re PR tree-optimization/48172 (incorrect vectorization of loop in GCC 4.5.* with -O3)
2011-05-13  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/48172
	* tree-vect-loop-manip.c (vect_vfa_segment_size): Avoid
	multiplying by number of iterations for equal step.
	(vect_create_cond_for_alias_checks): Likewise.

From-SVN: r173725
2011-05-13 08:31:18 +00:00
Andreas Schwab
b88ecf553e configure.ac: Use AS_HELP_STRING throughout.
* configure.ac: Use AS_HELP_STRING throughout.
* configure: Regenerate.

From-SVN: r173724
2011-05-13 08:09:25 +00:00
Toon Moene
e6e9475b4b objc-next-runtime-abi-02.c (newabi_append_ro): Add const qualifier to constant variable pointer declaration.
2011-05-13  Toon Moene  <toon@moene.org>

	* objc-next-runtime-abi-02.c (newabi_append_ro):
	Add const qualifier to constant variable pointer declaration.

From-SVN: r173723
2011-05-13 07:47:42 +00:00
GCC Administrator
a2eba9136c Daily bump.
From-SVN: r173722
2011-05-13 00:19:31 +00:00
H.J. Lu
569b527e6f Change maybe_eh_return to bool.
2011-05-12  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (ix86_save_reg): Change maybe_eh_return
	to bool.
	(ix86_emit_restore_regs_using_mov): Likewise.
	(ix86_emit_restore_sse_regs_using_mov): Likewise.

From-SVN: r173716
2011-05-12 14:36:48 -07:00
DJ Delorie
d53903d64c Fix missing file name in changelog
From-SVN: r173715
2011-05-12 16:52:32 -04:00
Anatoly Sokolov
8b9a1428e5 sparc.h (REG_OK_FOR_INDEX_P, [...]): Remove.
* config/sparc/sparc.h (REG_OK_FOR_INDEX_P, REG_OK_FOR_BASE_P,
	SYMBOLIC_CONST, RTX_OK_FOR_BASE_P, RTX_OK_FOR_INDEX_P): Remove.
	(RTX_OK_FOR_OFFSET_P, RTX_OK_FOR_OLO10_P): Move to...
	* config/sparc/sparc.c (RTX_OK_FOR_OFFSET_P,
	RTX_OK_FOR_OLO10_P): ...here.
	(sparc_mode_dependent_address_p): Use symbolic_operand instead of
	SYMBOLIC_CONST.

From-SVN: r173714
2011-05-13 00:36:31 +04:00
Ian Lance Taylor
acf9814605 Fix bug with taking address of a variable when address does not escape.
* go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
	parameter.
	(Gcc_backend::parameter_variable): Likewise.

From-SVN: r173712
2011-05-12 18:35:05 +00:00
Kai Tietz
1d15f620aa gimplify.c (gimple_boolify): Re-boolify expression arguments even if expression type is of kind BOOLEAN_TYPE.
2011-05-12  Kai Tietz  <ktietz@redhat.com>

	* gimplify.c (gimple_boolify): Re-boolify expression
	arguments even if expression type is of kind BOOLEAN_TYPE.
	(gimplify_boolean_expr): Removed.
	(gimplify_expr): Boolify truth opcodes AND, ANDIF, OR, ORIF,
	and XOR. Additional take care that we keep expression's type.
	* tree-cfg.c (verify_gimple_assign_binary): Adjust check for type
	of TRUTH_AND|OR|XOR_EXPR.

From-SVN: r173711
2011-05-12 20:19:07 +02:00
Jakub Jelinek
c2b5fc8de6 re PR tree-optimization/48975 (ICE in execute_cse_reciprocals() with -fno-tree-slp-vectorize)
PR tree-optimization/48975
	* tree-if-conv.c (combine_blocks): Call free_bb_predicate
	on all bbs here and free and clear ifc_bbs at the end.

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

From-SVN: r173709
2011-05-12 19:44:23 +02:00
Tobias Burnus
13157033d4 re PR fortran/48972 (OPEN with Unicode file name)
2011-05-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48972
        * resolve.c (resolve_intrinsic): Don't resolve module
        intrinsics multiple times.

2011-05-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48972
        * gfortran.dg/iso_c_binding_compiler_3.f90: New.

From-SVN: r173708
2011-05-12 19:40:29 +02:00