gcc.git
13 years agoi386.md (floating point move splitters): Fix usage of standard_80387_constant_p.
Uros Bizjak [Sun, 15 May 2011 19:31:32 +0000 (21:31 +0200)]
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

13 years agoc++config (_GLIBCXX_NOEXCEPT, [...]): Add.
Paolo Carlini [Sun, 15 May 2011 18:21:03 +0000 (18:21 +0000)]
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

13 years agoi386.md (*movdf_internal): Simplify insn condition.
Uros Bizjak [Sun, 15 May 2011 17:44:03 +0000 (19:44 +0200)]
i386.md (*movdf_internal): Simplify insn condition.

* config/i386/i386.md (*movdf_internal): Simplify insn condition.

From-SVN: r173773

13 years agore PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
Tobias Burnus [Sun, 15 May 2011 16:20:18 +0000 (18:20 +0200)]
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

13 years agore PR middle-end/46500 (target.h includes tm.h)
Joern Rennecke [Sun, 15 May 2011 12:50:57 +0000 (12:50 +0000)]
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

13 years agoPR 48915 Clarify _gfortran_set_options documentation
Janne Blomqvist [Sun, 15 May 2011 10:23:53 +0000 (13:23 +0300)]
PR 48915 Clarify _gfortran_set_options documentation

From-SVN: r173770

13 years agoDaily bump.
GCC Administrator [Sun, 15 May 2011 00:18:21 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r173768

13 years agotree-ssa-loop-im.c (SET_ALWAYS_EXECUTED_IN): New macro.
Eric Botcazou [Sat, 14 May 2011 19:45:28 +0000 (19:45 +0000)]
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

13 years agoImplement final on class.
Ville Voutilainen [Sat, 14 May 2011 18:13:23 +0000 (21:13 +0300)]
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

13 years agolang.opt (fdump-core): Re-add as ignored option for backward compatibility.
Tobias Burnus [Sat, 14 May 2011 16:02:07 +0000 (18:02 +0200)]
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

13 years ago* zh_CN.po: Update.
Joseph Myers [Sat, 14 May 2011 16:00:34 +0000 (17:00 +0100)]
* zh_CN.po: Update.

From-SVN: r173758

13 years agoconstraint.md (Yd, Yx): New register constraints.
Uros Bizjak [Sat, 14 May 2011 15:33:02 +0000 (17:33 +0200)]
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

13 years agoRemove conflict marker
Eric Botcazou [Sat, 14 May 2011 10:38:45 +0000 (10:38 +0000)]
Remove conflict marker

From-SVN: r173756

13 years agore PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
Tobias Burnus [Sat, 14 May 2011 10:34:44 +0000 (12:34 +0200)]
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

13 years agoPR 48915 Update mixed-language programming documentation
Janne Blomqvist [Sat, 14 May 2011 10:24:18 +0000 (13:24 +0300)]
PR 48915 Update mixed-language programming documentation

From-SVN: r173754

13 years agoPR 48915 Update mixed-language programming documentation
Janne Blomqvist [Sat, 14 May 2011 10:20:56 +0000 (13:20 +0300)]
PR 48915 Update mixed-language programming documentation

From-SVN: r173753

13 years agore PR fortran/22572 (Double occurrence of matmul intrinsic not optimised)
Thomas Koenig [Sat, 14 May 2011 09:48:08 +0000 (09:48 +0000)]
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

13 years agoinvoke.texi (-Ofast): Also enables -fstack-arrays.
Tobias Burnus [Sat, 14 May 2011 09:39:38 +0000 (11:39 +0200)]
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

13 years agoPR 48915 Abort handling
Janne Blomqvist [Sat, 14 May 2011 08:44:09 +0000 (11:44 +0300)]
PR 48915 Abort handling

From-SVN: r173750

13 years agoError printing thread safety, remove GFORTRAN_USE_STDERR
Janne Blomqvist [Sat, 14 May 2011 07:55:51 +0000 (10:55 +0300)]
Error printing thread safety, remove GFORTRAN_USE_STDERR

From-SVN: r173749

13 years agore PR libfortran/48961 (EXECUTE_COMMAND_LINE(WAIT=.false.) fails on MinGW)
Tobias Burnus [Sat, 14 May 2011 06:35:18 +0000 (08:35 +0200)]
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

13 years agoDaily bump.
GCC Administrator [Sat, 14 May 2011 00:19:21 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r173747

13 years agoFix bug with multiple results returning structs with invalid sizes.
Ian Lance Taylor [Fri, 13 May 2011 22:34:56 +0000 (22:34 +0000)]
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

13 years agore PR c++/48969 (ICE with -std=c++0x)
Jason Merrill [Fri, 13 May 2011 22:25:12 +0000 (18:25 -0400)]
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

13 years agocall.c (build_op_call): Use timevar_cond_start/stop.
Jason Merrill [Fri, 13 May 2011 22:25:01 +0000 (18:25 -0400)]
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

13 years agoipa-prop.c (ipa_cst_from_jfunc): New function.
Martin Jambor [Fri, 13 May 2011 22:01:59 +0000 (00:01 +0200)]
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

13 years agore PR fortran/48972 (OPEN with Unicode file name)
Tobias Burnus [Fri, 13 May 2011 20:59:07 +0000 (22:59 +0200)]
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

13 years agocfgrtl.c (cfg_layout_redirect_edge_and_branch): Adjust dump message.
Eric Botcazou [Fri, 13 May 2011 20:02:42 +0000 (20:02 +0000)]
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

13 years agore PR fortran/48972 (OPEN with Unicode file name)
Tobias Burnus [Fri, 13 May 2011 18:16:37 +0000 (20:16 +0200)]
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

13 years agore PR gcov-profile/47793 (Relative path in fprofile-use turns into absolute path)
Martin Thuresson [Fri, 13 May 2011 15:57:20 +0000 (15:57 +0000)]
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

13 years agogimple.c (gimple_canonical_types_compatible_p): Do not use type-pair caching, do...
Richard Guenther [Fri, 13 May 2011 14:02:42 +0000 (14:02 +0000)]
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

13 years agoChange edge_to_cases_cleanup to return true.
Nathan Froyd [Fri, 13 May 2011 13:44:04 +0000 (13:44 +0000)]
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

13 years agogimplify.c (gimplify_expr): Make sure operand is boolified.
Kai Tietz [Fri, 13 May 2011 13:37:16 +0000 (15:37 +0200)]
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

13 years agoChange ix86_save_reg/ix86_hard_regno_mode_ok to return bool.
H.J. Lu [Fri, 13 May 2011 13:30:18 +0000 (13:30 +0000)]
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

13 years agore PR lto/48978 (excessive hash table allocation for large lto build)
Richard Guenther [Fri, 13 May 2011 11:02:28 +0000 (11:02 +0000)]
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

13 years agoi386.md (*movxf_internal): Use !can_create_pseudo ().
Uros Bizjak [Fri, 13 May 2011 10:16:43 +0000 (12:16 +0200)]
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

13 years agoi386-opts.h: New.
Joseph Myers [Fri, 13 May 2011 09:59:13 +0000 (10:59 +0100)]
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

13 years agorx.md (mov expander): Fix use of rx_legitimate_constant_p.
Nick Clifton [Fri, 13 May 2011 09:35:28 +0000 (09:35 +0000)]
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

13 years agore PR middle-end/48984 (Many testsuite failures)
Kai Tietz [Fri, 13 May 2011 09:21:36 +0000 (11:21 +0200)]
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

13 years agore PR tree-optimization/48172 (incorrect vectorization of loop in GCC 4.5.* with...
Richard Guenther [Fri, 13 May 2011 08:31:18 +0000 (08:31 +0000)]
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

13 years agoconfigure.ac: Use AS_HELP_STRING throughout.
Andreas Schwab [Fri, 13 May 2011 08:09:25 +0000 (08:09 +0000)]
configure.ac: Use AS_HELP_STRING throughout.

* configure.ac: Use AS_HELP_STRING throughout.
* configure: Regenerate.

From-SVN: r173724

13 years agoobjc-next-runtime-abi-02.c (newabi_append_ro): Add const qualifier to constant variab...
Toon Moene [Fri, 13 May 2011 07:47:42 +0000 (07:47 +0000)]
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

13 years agoDaily bump.
GCC Administrator [Fri, 13 May 2011 00:19:31 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r173722

13 years agoChange maybe_eh_return to bool.
H.J. Lu [Thu, 12 May 2011 21:36:48 +0000 (21:36 +0000)]
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

13 years agoFix missing file name in changelog
DJ Delorie [Thu, 12 May 2011 20:52:32 +0000 (16:52 -0400)]
Fix missing file name in changelog

From-SVN: r173715

13 years agosparc.h (REG_OK_FOR_INDEX_P, [...]): Remove.
Anatoly Sokolov [Thu, 12 May 2011 20:36:31 +0000 (00:36 +0400)]
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

13 years agoFix bug with taking address of a variable when address does not escape.
Ian Lance Taylor [Thu, 12 May 2011 18:35:05 +0000 (18:35 +0000)]
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

13 years agogimplify.c (gimple_boolify): Re-boolify expression arguments even if expression type...
Kai Tietz [Thu, 12 May 2011 18:19:07 +0000 (20:19 +0200)]
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

13 years agore PR tree-optimization/48975 (ICE in execute_cse_reciprocals() with -fno-tree-slp...
Jakub Jelinek [Thu, 12 May 2011 17:44:23 +0000 (19:44 +0200)]
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

13 years agore PR fortran/48972 (OPEN with Unicode file name)
Tobias Burnus [Thu, 12 May 2011 17:40:29 +0000 (19:40 +0200)]
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

13 years agocp-tree.h (DECL_DEFERRED_CONSTEXPR_CHECK): New.
Jason Merrill [Thu, 12 May 2011 17:33:53 +0000 (13:33 -0400)]
cp-tree.h (DECL_DEFERRED_CONSTEXPR_CHECK): New.

* cp-tree.h (DECL_DEFERRED_CONSTEXPR_CHECK): New.
* semantics.c (validate_constexpr_fundecl): Set it.
(check_deferred_constexpr_decls): Clear it.
(register_constexpr_fundef): Make sure it isn't set.
* decl.c (grok_special_member_properties): Check it.

From-SVN: r173707

13 years agotrans.c (call_to_gnu): In the by-reference case...
Eric Botcazou [Thu, 12 May 2011 14:54:09 +0000 (14:54 +0000)]
trans.c (call_to_gnu): In the by-reference case...

* gcc-interface/trans.c (call_to_gnu): In the by-reference case, if the
type of the parameter is an unconstrained array, convert the actual to
the type of the formal in the In Out and Out cases as well.

From-SVN: r173706

13 years agogimple.c (gtc_visit): Compare TREE_ADDRESSABLE, handle NULLPTR_TYPE similar to VOID_TYPE.
Richard Guenther [Thu, 12 May 2011 14:04:29 +0000 (14:04 +0000)]
gimple.c (gtc_visit): Compare TREE_ADDRESSABLE, handle NULLPTR_TYPE similar to VOID_TYPE.

2011-05-12  Richard Guenther  <rguenther@suse.de>

* gimple.c (gtc_visit): Compare TREE_ADDRESSABLE, handle
NULLPTR_TYPE similar to VOID_TYPE.  Defer type-leader lookup
until after simple checks.
(gimple_types_compatible_p): Likewise.
(iterative_hash_gimple_type): Always hash pointer targets
and function return and argument types.
(iterative_hash_canonical_type): Do not hash TYPE_QUALS,
hash TYPE_ALIGN.  Do not hash TYPE_MIN/MAX_VALUE.
(gimple_canonical_types_compatible_p): Compare TREE_ADDRESSABLE,
handle NULLPTR_TYPE similar to VOID_TYPE.  Handle non-aggregates
completely in the simple compare section.
(gimple_register_canonical_type): Query the cache again after
registering.

From-SVN: r173704

13 years agore PR tree-optimization/48172 (incorrect vectorization of loop in GCC 4.5.* with...
Richard Guenther [Thu, 12 May 2011 12:14:45 +0000 (12:14 +0000)]
re PR tree-optimization/48172 (incorrect vectorization of loop in GCC 4.5.* with -O3)

2011-05-12  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/48172
* tree-vect-loop-manip.c (vect_vfa_segment_size): Do not exclude
the number of iterations from the segment size calculation.
(vect_create_cond_for_alias_checks): Adjust.

* gcc.dg/vect/pr48172.c: New testcase.

From-SVN: r173703

13 years agore PR debug/48967 (ICE during use_narrower_mode)
Jakub Jelinek [Thu, 12 May 2011 11:54:33 +0000 (13:54 +0200)]
re PR debug/48967 (ICE during use_narrower_mode)

PR debug/48967
* var-tracking.c (use_narrower_mode_test) <case REG>: Return 1
if validate_subreg fails.

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

From-SVN: r173701

13 years agore PR lto/48952 (ICE in inline_merge_summary during linux kernel LTO build)
Jan Hubicka [Thu, 12 May 2011 11:30:42 +0000 (13:30 +0200)]
re PR lto/48952 (ICE in inline_merge_summary during linux kernel LTO build)

PR lto/48952
* lto.c (do_whole_program_analysis): Do not register cgraph hooks.

From-SVN: r173700

13 years agoira.c (clarify_prohibited_class_mode_regs): Prevent the function from accessing beyon...
Hariharan Sandanagobalane [Thu, 12 May 2011 11:12:12 +0000 (11:12 +0000)]
ira.c (clarify_prohibited_class_mode_regs): Prevent the function from accessing beyond the end of REGNO_REG_CLASS array by...

         * ira.c (clarify_prohibited_class_mode_regs): Prevent the function from
          accessing beyond the end of REGNO_REG_CLASS array by stopping the
          loop early.

From-SVN: r173699

13 years ago* zh_CN.po: Update.
Joseph Myers [Thu, 12 May 2011 11:02:23 +0000 (12:02 +0100)]
* zh_CN.po: Update.

From-SVN: r173697

13 years ago(rx_builtins): New arrays - holds builtin functions.
DJ Delorie [Thu, 12 May 2011 10:33:57 +0000 (06:33 -0400)]
(rx_builtins): New arrays - holds builtin functions.

(ADD_RX_BUILTIN1, ADD_RX_BUILTIN2, ADD_RX_BUILTIN3): Install
created builtin into rx_builtins array.
(rx_builtin_decl): New function.
(TARGET_BUITLIN_DECL): Define.
Include gt-rx.h.

Co-Authored-By: Nick Clifton <nickc@redhat.com>
From-SVN: r173696

13 years agorx.h (HAVE_PRE_DECREMENT): Fix typo.
DJ Delorie [Thu, 12 May 2011 10:30:28 +0000 (06:30 -0400)]
rx.h (HAVE_PRE_DECREMENT): Fix typo.

* config/rx/rx.h (HAVE_PRE_DECREMENT): Fix typo.
* config/rx/rx.c (CC_FLAG_FP): Fix comment.
(rx_is_legitimate_address): Add pre-decrement and post-increment
addressing in HImode and QImode.  Fix test for out of range
REG+INT addressing.
(rx_legitimate_constant_p): Rename ro rx_is_legitimate_constant.
(rx_align_for_label): Test label before extracting its usage
count.
(rx_adjust_insn_lengths): Fix selection of insn codes.
(TARGET_LEGITIMNATE_CONSTANT_P): Use renamed function.

Co-Authored-By: Nick Clifton <nickc@redhat.com>
From-SVN: r173695

13 years ago* tree.c (type_hash_canon): Use struct tree_type_non_common.
Jason Merrill [Thu, 12 May 2011 01:36:38 +0000 (21:36 -0400)]
* tree.c (type_hash_canon): Use struct tree_type_non_common.

From-SVN: r173692

13 years agoDaily bump.
GCC Administrator [Thu, 12 May 2011 00:18:47 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r173691

13 years agoNo gcc/ prefix in gcc/ChangeLog.
Paul Pluzhnikov [Wed, 11 May 2011 23:15:44 +0000 (16:15 -0700)]
No gcc/ prefix in gcc/ChangeLog.

From-SVN: r173686

13 years agocfgrtl.c (commit_one_edge_insertion): Remove always-true test and reindent the subseq...
Eric Botcazou [Wed, 11 May 2011 23:05:51 +0000 (23:05 +0000)]
cfgrtl.c (commit_one_edge_insertion): Remove always-true test and reindent the subsequent block.

* cfgrtl.c (commit_one_edge_insertion): Remove always-true test and
reindent the subsequent block.

From-SVN: r173685

13 years agooverloads_c++0x_neg.cc: Use dg-require-cmath.
Paolo Carlini [Wed, 11 May 2011 22:36:18 +0000 (22:36 +0000)]
overloads_c++0x_neg.cc: Use dg-require-cmath.

2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
dg-require-cmath.
* testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.

From-SVN: r173684

13 years agore PR c++/48948 ([C++0x] constexpr friend function cannot be defined in-class)
Jason Merrill [Wed, 11 May 2011 21:30:18 +0000 (17:30 -0400)]
re PR c++/48948 ([C++0x] constexpr friend function cannot be defined in-class)

PR c++/48948
* semantics.c (validate_constexpr_fundecl): Defer checking if
an argument type is being defined.
(is_valid_constexpr_fn): Add defer_ok parm.
(cxx_eval_call_expression): Adjust.
(check_deferred_constexpr_decls): New.
(literal_type_p): Make sure type isn't being defined.
(ensure_literal_type_for_constexpr_object): Handle type being defined.
* cp-tree.h: Declare check_deferred_constexpr_decls.
* decl.c (grokfndecl): Call validate_constexpr_fundecl here.
(start_preparsed_function, cp_finish_decl): Not here.
* class.c (finalize_literal_type_property): Don't call
validate_constexpr_fundecl.
(finish_struct): Call check_deferred_constexpr_decls.
* pt.c (tsubst_decl): Call validate_constexpr_fundecl.
(instantiate_class_template): Call check_deferred_constexpr_decls.

From-SVN: r173683

13 years agosemantics.c (validate_constexpr_fundecl): Check DECL_TEMPLATE_INFO rather than DECL_T...
Jason Merrill [Wed, 11 May 2011 21:30:10 +0000 (17:30 -0400)]
semantics.c (validate_constexpr_fundecl): Check DECL_TEMPLATE_INFO rather than DECL_TEMPLATE_INSTANTIATION.

* semantics.c (validate_constexpr_fundecl): Check DECL_TEMPLATE_INFO
rather than DECL_TEMPLATE_INSTANTIATION.
(cxx_eval_call_expression): Likewise.

From-SVN: r173682

13 years agosemantics.c (register_constexpr_fundef): Add to hash table here.
Jason Merrill [Wed, 11 May 2011 21:30:02 +0000 (17:30 -0400)]
semantics.c (register_constexpr_fundef): Add to hash table here.

* semantics.c (register_constexpr_fundef): Add to hash table here.
(validate_constexpr_fundecl): Not here.

From-SVN: r173681

13 years ago* decl.c (grokdeclarator): Only set DECL_DECLARED_CONSTEXPR_P once.
Jason Merrill [Wed, 11 May 2011 21:29:56 +0000 (17:29 -0400)]
* decl.c (grokdeclarator): Only set DECL_DECLARED_CONSTEXPR_P once.

From-SVN: r173680

13 years agopt.c (build_non_dependent_expr): Don't check null_ptr_cst_p, do call maybe_constant_v...
Jason Merrill [Wed, 11 May 2011 21:29:49 +0000 (17:29 -0400)]
pt.c (build_non_dependent_expr): Don't check null_ptr_cst_p, do call maybe_constant_value in C++0x mode.

* pt.c (build_non_dependent_expr): Don't check null_ptr_cst_p,
do call maybe_constant_value in C++0x mode.
* semantics.c (cxx_eval_constant_expression): Handle TEMPLATE_DECL.

From-SVN: r173679

13 years agore PR c++/48745 ([C++0x] Segmentation fault with list-initialization, void initialize...
Jason Merrill [Wed, 11 May 2011 21:29:35 +0000 (17:29 -0400)]
re PR c++/48745 ([C++0x] Segmentation fault with list-initialization, void initializers and variadics)

PR c++/48745
* pt.c (value_dependent_expr_p): Handle CONSTRUCTOR.

From-SVN: r173678

13 years agore PR fortran/48889 (f951: internal compiler error: in gfc_is_constant_expr, at fortr...
Tobias Burnus [Wed, 11 May 2011 20:08:54 +0000 (22:08 +0200)]
re PR fortran/48889 (f951: internal compiler error: in gfc_is_constant_expr, at fortran/expr.c:906)

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

        PR fortran/48889
        * expr.c (gfc_is_constant_expr): Use e->value.function.esym
        instead of e->symtree->n.sym, if available.

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

        PR fortran/48889
        * gfortran.dg/generic_24.f90: New.

From-SVN: r173674

13 years agoPermit new of a function type.
Ian Lance Taylor [Wed, 11 May 2011 19:56:39 +0000 (19:56 +0000)]
Permit new of a function type.

From-SVN: r173672

13 years agoDon't crash ranging over call to builtin function.
Ian Lance Taylor [Wed, 11 May 2011 19:39:21 +0000 (19:39 +0000)]
Don't crash ranging over call to builtin function.

From-SVN: r173671

13 years agohash_load_check_resize_trigger_imp.hpp (assert_valid): Replace _GLIBCXX_DEBUG_ASSERT...
François Dumont [Wed, 11 May 2011 19:29:02 +0000 (21:29 +0200)]
hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.

2011-05-11  François Dumont  <francois.cppdevs@free.fr>

        * include/ext/pb_ds/detail/resize_policy/
        hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
        _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
        * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
        find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
        constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
        (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
        * include/ext/pb_ds/detail/debug_map_base.hpp,
        splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
        cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
        leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
        bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
        rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
        PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
        macro definitions move...
        * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
        * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
        * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
        resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
        left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
        binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
        rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
        PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
        * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
        ...here.

From-SVN: r173670

13 years agoMAINTAINERS (Write After Approval): Add myself.
Paul Pluzhnikov [Wed, 11 May 2011 18:43:43 +0000 (11:43 -0700)]
MAINTAINERS (Write After Approval): Add myself.

2011-05-11  Paul Pluzhnikov  <ppluzhnikov@google.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r173669

13 years agoinstall.texi (Configuration): Document --with-linker-hash-style.
Satoru Takabayashi [Wed, 11 May 2011 18:28:14 +0000 (18:28 +0000)]
install.texi (Configuration): Document --with-linker-hash-style.

2011-05-11  Satoru Takabayashi  <satorux@google.com>
    Paul Pluzhnikov  <ppluzhnikov@google.com>

* gcc/doc/install.texi (Configuration): Document
--with-linker-hash-style.
* gcc/gcc.c (init_spec): Handle LINKER_HASH_STYLE.
* gcc/config.in: Add LINKER_HASH_STYLE.
* gcc/configure.ac: Add --with-linker-hash-style.
* gcc/configure: Regenerate.

Co-Authored-By: Paul Pluzhnikov <ppluzhnikov@google.com>
From-SVN: r173668

13 years agodon't use build_function_type in the Ada FE
Nathan Froyd [Wed, 11 May 2011 15:53:50 +0000 (15:53 +0000)]
don't use build_function_type in the Ada FE

don't use build_function_type in the Ada FE
* gcc-interface/utils.c (def_fn_type): Don't call build_function_type;
call build_function_type_array or build_varargs_function_type_array
instead.
(create_subprog_type): Don't call build_function_type; call
build_function_type_vec instead.

From-SVN: r173664

13 years agore PR bootstrap/48964 (LTO profiledbootstrap failure)
Richard Guenther [Wed, 11 May 2011 15:44:59 +0000 (15:44 +0000)]
re PR bootstrap/48964 (LTO profiledbootstrap failure)

2011-05-11  Richard Guenther  <rguenther@suse.de>

PR middle-end/48964
* gimple.c (iterative_hash_canonical_type): Fix typo.

From-SVN: r173663

13 years agoi386.c (legitimize_tls_address): Call gen_tls_dynamic_gnu2_{32,64} expanders directly...
Uros Bizjak [Wed, 11 May 2011 15:30:52 +0000 (17:30 +0200)]
i386.c (legitimize_tls_address): Call gen_tls_dynamic_gnu2_{32,64} expanders directly for TARGET_GNU2_TLS.

* config/i386/i386.c (legitimize_tls_address)
<TLS_MODEL_GLOBAL_DYNAMIC>: Call gen_tls_dynamic_gnu2_{32,64}
expanders directly for TARGET_GNU2_TLS.  Determine pic and
__tls_get_addr symbol reference here.  Update call to
gen_tls_global_dynamic_{32,64} for added arguments.
<TLS_MODEL_LOCAL_DYNAMIC>: Call gen_tls_dynamic_gnu2_{32,64}
expanders directly for TARGET_GNU2_TLS.  Determine
__tls_get_addr symbol reference here.  Update call to
gen_tls_local_dynamic_base_{32,64} for added arguments.  Attach
unique UNSPEC REG_EQUIV to libcall block.
(ix86_tls_get_addr): Declare static.
* config/i386/i386-protos.h (ix86_tls_get_addr): Remove declaration.
* config/i386/i386.md (tls_global_dynamic_32): Add operand 2 and 3.
Do not determine pic and __tls_get_addr symbol reference here. Do not
call gen_tls_dynamic_gnu2_32 for TARGET_GNU2_TLS.
(tls_local_dynamic_base_32): Ditto for operands 1 and 2.
(tls_global_dynamic_64): Add operand 2.  Do not determine
__tls_get_addr symbol reference here.  Do not call
gen_tls_dynamic_gnu2_64 for TARGET_GNU2_TLS here.
(tls_local_dynamic_base64): Ditto for operand 1.

From-SVN: r173662

13 years agofunction.c (expand_function_start): Initialize stack_check_probe_note only if the...
Eric Botcazou [Wed, 11 May 2011 15:15:26 +0000 (15:15 +0000)]
function.c (expand_function_start): Initialize stack_check_probe_note only if the generic stack checking mechanism...

* function.c (expand_function_start): Initialize stack_check_probe_note
only if the generic stack checking mechanism is used.

From-SVN: r173661

13 years agore PR tree-optimization/15256 ([tree-ssa] Optimize manual bitfield manipilation.)
Richard Guenther [Wed, 11 May 2011 14:13:38 +0000 (14:13 +0000)]
re PR tree-optimization/15256 ([tree-ssa] Optimize manual bitfield manipilation.)

2011-05-11  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/15256
* tree-ssa-forwprop.c (simplify_bitwise_binary): Canonicalize
(A & B) | C, combine (A op CST1) op CST2.
(tree_ssa_forward_propagate_single_use_vars): Only bother to
visit assigns that have uses.

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

From-SVN: r173659

13 years agosplit tree_type
Nathan Froyd [Wed, 11 May 2011 13:48:55 +0000 (13:48 +0000)]
split tree_type

split tree_type
gcc/ada/
* gcc-interface/ada-tree.h (TYPE_OBJECT_RECORD_TYPE): Use TYPE_MINVAL.
(TYPE_GCC_MIN_VALUE): Use TYPE_MINVAL.
(TYPE_GCC_MAX_VALUE): Use TYPE_MAXVAL.

gcc/cp/
* cp-tree.h (TYPENAME_TYPE_FULLNAME, TYPEOF_TYPE_EXPR): Use
TYPE_VALUES_RAW.
(UNDERLYING_TYPE_TYPE, DECLTYPE_TYPE_EXPR): Likewise.
(DECLTYPE_TYPE_ID_EXPR_OR_MEMBER_ACCESS_P): Likewise.
(TEMPLATE_TYPE_PARM_INDEX): Likewise.

gcc/
* ggc-page.c (extra_order_size_table): Use struct
tree_type_non_common.
* lto-streamer-in.c (unpack_ts_type_value_fields): Rename to...
(unpack_ts_type_common_value_fields): ...this.  Update comment.
(unpack_value_fields): Adjust for renaming.
(lto_input_ts_type_tree_pointers): Split into...
(lto_input_ts_type_common_tree_pointer): ...this and...
(lto_input_ts_type_non_common_tree_pointers): ...this.
(lto_input_tree_pointers): Adjust for above split.
* lto-streamer-out.c (pack_ts_type_value_fields): Rename to...
(pack_ts_type_common_value_fields): ...this.  Update comment.
(lto_output_ts_type_tree_pointers): Split into...
(lto_output_ts_type_common_tree_pointers): ...this and...
(lto_output_ts_type_non_common_tree_pointers): ...this.
(lto_output_tree_pointers): Adjust for above split.
* lto-streamer.c (check_handled_ts_structures): Mark TS_TYPE_COMMON,
TS_TYPE_WITH_LANG_SPECIFIC, and TS_TYPE_NON_COMMON as handled.
* stor-layout.c (vector_type_mode): Adjust location of mode field.
* tree.h (MARK_TS_TYPE_COMMON, MARK_TS_TYPE_WITH_LANG_SPECIFIC):
Define.
(struct tree_type): Split into...
(struct tree_type_common: ...this and...
(struct tree_type_with_lang_specific): ...this and...
(struct tree_type_non_common): ...this.  Adjust accessor macros
accordingly.
(TYPE_VALUES_RAW): Define.
(union tree_node): Update for above changes.
* tree.c (tree_node_structure_for_code) [tcc_type]: Return
TS_TYPE_NON_COMMON.
(initialize_tree_contains_struct) [TS_TYPE]: Use TS_TYPE_COMMON.
Add TS_TYPE_WITH_LANG_SPECIFIC and TS_TYPE_NON_COMMON.
(tree_code_size) [tcc_type]: Use struct tree_type_non_common.
* treestructu.def (TS_TYPE): Remove.
(TS_TYPE_COMMON, TS_TYPE_WITH_LANG_SPECIFIC, TS_TYPE_NON_COMMON):
Define.

gcc/java/
* java-tree.h (TYPE_ARGUMENT_SIGNATURE): Use TYPE_MINVAL.

gcc/lto/
* lto.c (lto_ft_type): Use TYPE_MINVAL and TYPE_MAXVAL.  Adjust
location of binfo field.
(lto_fixup_prevailing_decls): Likewise.

gcc/objc/
* objc-act.h (CLASS_NAME, CLASS_SUPER_NAME): Use proper accessors.
(CLASS_NST_METHODS, CLASS_CLS_METHODS): Likewise.
(PROTOCOL_NAME, PROTOCOL_NST_METHODS, PROTOCOL_CLS_METHODS): Likewise.

From-SVN: r173658

13 years agore PR debug/48159 (ICE: SIGSEGV in build2_stat (tree.c:3802) with -ftree-loop-distrib...
Jakub Jelinek [Wed, 11 May 2011 12:53:43 +0000 (14:53 +0200)]
re PR debug/48159 (ICE: SIGSEGV in build2_stat (tree.c:3802) with -ftree-loop-distribution -g)

PR debug/48159
* tree-ssa.c (reset_debug_uses): New function.
* tree-flow.h (reset_debug_uses): New prototype.
* tree-data-ref.c (stmts_from_loop): Ignore debug stmts.
* tree-loop-distribution.c (generate_loops_for_partition): Call
reset_debug_uses on the stmts that will be removed.  Keep around
all debug stmts, don't count them as bits in partition bitmap.
(generate_builtin): Don't count debug stmts or labels as bits in
partition bitmap.

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

From-SVN: r173656

13 years agogimple.c (gimple_type_hash_1): Merge with ...
Richard Guenther [Wed, 11 May 2011 12:45:00 +0000 (12:45 +0000)]
gimple.c (gimple_type_hash_1): Merge with ...

2011-05-11  Richard Guenther  <rguenther@suse.de>

* gimple.c (gimple_type_hash_1): Merge with ...
(gimple_type_hash): ... this.
(gtc_visit): Remove mode parameter and simplify accordingly.
(gimple_types_compatible_p_1): Likewise.
(gimple_types_compatible_p): Likewise.
(iterative_hash_gimple_type): Likewise.
(visit): Likewise.
(gimple_type_eq): Adjust.

From-SVN: r173655

13 years agoSupport closing_branch_deps
Revital Eres [Wed, 11 May 2011 12:38:12 +0000 (12:38 +0000)]
Support closing_branch_deps

From-SVN: r173654

13 years agore PR middle-end/48953 (ICE: verify_gimple failed: type mismatch in array reference...
Richard Guenther [Wed, 11 May 2011 12:23:12 +0000 (12:23 +0000)]
re PR middle-end/48953 (ICE: verify_gimple failed: type mismatch in array reference with -flto and struct with vararray)

2011-05-11  Richard Guenther  <rguenther@suse.de>

PR middle-end/48953
* tree-inline.c (remap_gimple_op_r): Also remap types of MEM_REFs.

* gcc.dg/torture/pr48953.c: New testcase.

From-SVN: r173653

13 years agoopts.c (finish_options): Move warning settings from process_options.
Joseph Myers [Wed, 11 May 2011 11:11:34 +0000 (12:11 +0100)]
opts.c (finish_options): Move warning settings from process_options.

* opts.c (finish_options): Move warning settings from
process_options.
* toplev.c (process_options): Move warning settings to
finish_options.

From-SVN: r173651

13 years agore PR middle-end/18041 (OR of two single-bit bitfields is inefficient)
Richard Guenther [Wed, 11 May 2011 10:52:57 +0000 (10:52 +0000)]
re PR middle-end/18041 (OR of two single-bit bitfields is inefficient)

2011-05-11  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/18041
* tree-ssa-forwprop.c (simplify_bitwise_and): Rename to ...
(simplify_bitwise_binary): ... this.  Handle operand conversions
by applying them to the result instead.
(tree_ssa_forward_propagate_single_use_vars): Adjust.  CSE tree code.

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

From-SVN: r173650

13 years agogimple.c (gimple_canonical_types_compatible_p): Split out from gimple_types_compatibl...
Richard Guenther [Wed, 11 May 2011 08:36:51 +0000 (08:36 +0000)]
gimple.c (gimple_canonical_types_compatible_p): Split out from gimple_types_compatible_p and friends.

2011-05-11  Richard Guenther  <rguenther@suse.de>

* gimple.c (gimple_canonical_types_compatible_p): Split out
from gimple_types_compatible_p and friends.  Do not recurse
to pointed-to types.
(gimple_canonical_type_eq): Use it.
(iterative_hash_canonical_type): Split out from
iterative_hash_gimple_type and friends.  Do not recurse
to pointed-to types.
(gimple_canonical_type_hash): Use it, allocate the hash here.

From-SVN: r173649

13 years agoSkip DEBUG_INSNs while recognizing doloop
Revital Eres [Wed, 11 May 2011 07:40:26 +0000 (07:40 +0000)]
Skip DEBUG_INSNs while recognizing doloop

From-SVN: r173647

13 years agoSkip DEBUG_INSN in loop-doloop.c
Revital Eres [Wed, 11 May 2011 07:12:14 +0000 (07:12 +0000)]
Skip DEBUG_INSN in loop-doloop.c

From-SVN: r173646

13 years agoDoloop pattern for ARM
Revital Eres [Wed, 11 May 2011 07:08:44 +0000 (07:08 +0000)]
Doloop pattern for ARM

From-SVN: r173645

13 years agore PR target/47755 (VSX code generates a TOC reference to clear memory)
Alan Modra [Wed, 11 May 2011 04:29:13 +0000 (13:59 +0930)]
re PR target/47755 (VSX code generates a TOC reference to clear memory)

PR target/47755
* gcc.target/powerpc/pr47755-2.c: Require vsx_hw.

From-SVN: r173643

13 years agoDaily bump.
GCC Administrator [Wed, 11 May 2011 00:18:23 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r173641

13 years agomake CASE_LABEL_EXPR not abuse TREE_CHAIN
Nathan Froyd [Tue, 10 May 2011 19:52:39 +0000 (19:52 +0000)]
make CASE_LABEL_EXPR not abuse TREE_CHAIN

make CASE_LABEL_EXPR not abuse TREE_CHAIN
* tree.def (CASE_LABEL_EXPR): Add an operand.
* tree.h (CASE_CHAIN): Use TREE_OPERAND instead of TREE_CHAIN.

From-SVN: r173633

13 years agoc-decl.c (c_override_global_bindings_to_false): Remove.
Joseph Myers [Tue, 10 May 2011 19:12:34 +0000 (20:12 +0100)]
c-decl.c (c_override_global_bindings_to_false): Remove.

* c-decl.c (c_override_global_bindings_to_false): Remove.
(global_bindings_p): Don't check
c_override_global_bindings_to_false.
* c-tree.h (c_override_global_bindings_to_false): Remove.
* c-typeck.c (composite_type): Don't set
c_override_global_bindings_to_false.

From-SVN: r173632

13 years agore PR c++/48930 ([C++0x] Invalid implicitly declared default c'tor)
Jason Merrill [Tue, 10 May 2011 17:58:46 +0000 (13:58 -0400)]
re PR c++/48930 ([C++0x] Invalid implicitly declared default c'tor)

PR c++/48930
* class.c (type_build_ctor_call): New.
* cp-tree.h: Declare it.
* decl.c (check_initializer): Use it instead of
TYPE_NEEDS_CONSTRUCTING.
* init.c (build_value_init, build_value_init_noctor): Likewise.
(perform_member_init, expand_aggr_init_1, build_new_1): Likewise.
(build_vec_init): Likewise.
* typeck2.c (process_init_constructor_array): Likewise.
(process_init_constructor_record): Likewise.

From-SVN: r173628

13 years agore PR c++/48736 ([C++0x] ICE during list-initialization with variadics)
Jason Merrill [Tue, 10 May 2011 17:58:38 +0000 (13:58 -0400)]
re PR c++/48736 ([C++0x] ICE during list-initialization with variadics)

PR c++/48736
* pt.c (tsubst_copy_and_build): Handle substitution of a pack
expansion producing another expansion.

From-SVN: r173627

13 years agoFixes for override/final.
Ville Voutilainen [Tue, 10 May 2011 17:58:30 +0000 (20:58 +0300)]
Fixes for override/final.

* class.c (check_for_override): Diagnose final on a nonvirtual
member function, diagnose override for a virtual with no matching
override. Don't fiddle around with DECL_VINDEX.

From-SVN: r173626