gcc.git
11 years agoMake gcc::context be GC-managed
David Malcolm [Tue, 20 Aug 2013 00:48:14 +0000 (00:48 +0000)]
Make gcc::context be GC-managed

* Makefile.in (GTFILES): Add context.h.
* context.c (gcc::context::operator new): New.
(gcc::context::gt_ggc_mx): New.
(gcc::context::gt_pch_nx): New.
(gcc::context::gt_pch_nx): New.
* context.h (gcc::context): Add GTY((user)) marking.
(gcc::context::operator new): New.
(gcc::context::gt_ggc_mx): New.
(gcc::context::gt_pch_nx): New.
(gcc::context::gt_pch_nx): New.
(g): Add GTY marking.
(gt_ggc_mx (gcc::context *)): New.
(gt_pch_nx (gcc::context *)): New.
(gt_pch_nx (gcc::context *ctxt, gt_pointer_operator op,
void *cookie)): New.
* gengtype.c (open_base_files) <ifiles>: Add context.h.

From-SVN: r201864

11 years agoDaily bump.
GCC Administrator [Tue, 20 Aug 2013 00:16:58 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201863

11 years agore PR target/57865 (Broken _save64gpr and _rest64gpr usage)
Alan Modra [Mon, 19 Aug 2013 23:39:05 +0000 (09:09 +0930)]
re PR target/57865 (Broken _save64gpr and _rest64gpr usage)

PR target/57865
* config/rs6000/rs6000.c (rs6000_emit_prologue): Correct ool_adjust.
(rs6000_emit_epilogue): Likewise.

From-SVN: r201860

11 years agovalue-prof.c (gimple_ic): Fix the bug of adding EH edge.
Dehao Chen [Mon, 19 Aug 2013 22:14:00 +0000 (22:14 +0000)]
value-prof.c (gimple_ic): Fix the bug of adding EH edge.

2013-08-19  Dehao Chen (dehao@google.com)

        * value-prof.c (gimple_ic): Fix the bug of adding EH edge.

From-SVN: r201859

11 years agodwarf2.def (DW_AT_GNU_discriminator): New attribute.
Dehao Chen [Mon, 19 Aug 2013 20:11:09 +0000 (20:11 +0000)]
dwarf2.def (DW_AT_GNU_discriminator): New attribute.

2013-08-19  Dehao Chen  <dehao@google.com>

* dwarf2.def (DW_AT_GNU_discriminator): New attribute.

From-SVN: r201855

11 years agobuiltins.def (BUILT_IN_FABSD32): New DFP ABS builtin.
Peter Bergner [Mon, 19 Aug 2013 17:49:33 +0000 (12:49 -0500)]
builtins.def (BUILT_IN_FABSD32): New DFP ABS builtin.

gcc/
* builtins.def (BUILT_IN_FABSD32): New DFP ABS builtin.
(BUILT_IN_FABSD64): Likewise.
(BUILT_IN_FABSD128): Likewise.
* builtins.c (expand_builtin): Add support for new DFP ABS builtins.
(fold_builtin_1): Likewise.
* config/rs6000/dfp.md (*negtd2_fpr): Handle non-overlapping destination
and source operands.
(*abstd2_fpr): Likewise.
(*nabstd2_fpr): Likewise.

gcc/testsuite/
* gcc.target/powerpc/dfp-dd-2.c: New test.
* gcc.target/powerpc/dfp-td-2.c: Likewise.
* gcc.target/powerpc/dfp-td-3.c: Likewise.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r201849

11 years agomulsize-1.c: Check for SLL as well as SUBU.
Richard Sandiford [Mon, 19 Aug 2013 17:35:57 +0000 (17:35 +0000)]
mulsize-1.c: Check for SLL as well as SUBU.

gcc/testsuite/
* gcc.target/mips/mulsize-1.c: Check for SLL as well as SUBU.
* gcc.target/mips/mulsize-2.c: Check for ADDU rather than SUBU.
Check for SLL too.

From-SVN: r201848

11 years agomips.c (mips_adjust_insn_length): Add checks for JUMP_P and INSN_P.
Richard Sandiford [Mon, 19 Aug 2013 17:29:59 +0000 (17:29 +0000)]
mips.c (mips_adjust_insn_length): Add checks for JUMP_P and INSN_P.

gcc/
* config/mips/mips.c (mips_adjust_insn_length): Add checks for
JUMP_P and INSN_P.

From-SVN: r201847

11 years agoinvoke.texi (-fcilkplus): Clarify that implementation is incomplete.
Aldy Hernandez [Mon, 19 Aug 2013 17:19:38 +0000 (17:19 +0000)]
invoke.texi (-fcilkplus): Clarify that implementation is incomplete.

* doc/invoke.texi (-fcilkplus): Clarify that implementation is
incomplete.

From-SVN: r201846

11 years ago* gcc.dg/tree-ssa/vrp87.c [avr-*-*] (dg-additional-options): New.
Joern Rennecke [Mon, 19 Aug 2013 17:01:23 +0000 (17:01 +0000)]
* gcc.dg/tree-ssa/vrp87.c [avr-*-*] (dg-additional-options): New.

From-SVN: r201845

11 years agore PR testsuite/52641 (Test cases fail for 16-bit int targets)
Joern Rennecke [Mon, 19 Aug 2013 15:16:45 +0000 (15:16 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)

        PR testsuite/52641
        * gcc.dg/tree-ssa/pr31261.c [int16]: Change expected unsigned type.
        * gcc.dg/tree-ssa/ssa-pre-21.c [! size32plus]: Mark as xfail.
        * gcc.dg/tree-ssa/vector-4.c (SItype): New typedef.
        (v4si): Use it.
        * gcc.dg/tree-ssa/ssa-pre-30.c: Test requires int32.
        * gcc.dg/tree-ssa/vrp58.c: Adjust scan expression for int16.

From-SVN: r201844

11 years agovrp55.c: Use keeps_null_pointer_checks to determine correct test response.
Joern Rennecke [Mon, 19 Aug 2013 15:13:33 +0000 (15:13 +0000)]
vrp55.c: Use keeps_null_pointer_checks to determine correct test response.

        * gcc.dg/tree-ssa/vrp55.c: Use keeps_null_pointer_checks to determine
        correct test response.

From-SVN: r201843

11 years agossa-dom-thread-4.c [avr-*-*]: Expect 6 times "Threaded".
Joern Rennecke [Mon, 19 Aug 2013 15:11:55 +0000 (15:11 +0000)]
ssa-dom-thread-4.c [avr-*-*]: Expect 6 times "Threaded".

        * gcc.dg/tree-ssa/ssa-dom-thread-4.c [avr-*-*]: Expect 6 times
        "Threaded".

From-SVN: r201842

11 years agoparser.c (cp_parser_lambda_introducer, [...]): Use cp_parser_lookup_name_simple.
Paolo Carlini [Mon, 19 Aug 2013 14:23:37 +0000 (14:23 +0000)]
parser.c (cp_parser_lambda_introducer, [...]): Use cp_parser_lookup_name_simple.

2013-08-19  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_lambda_introducer, cp_parser_decltype_expr):
Use cp_parser_lookup_name_simple.

2013-08-19  Paolo Carlini  <paolo.carlini@oracle.com>

* name-lookup.h (pop_bindings_and_leave_scope): Declare.
* name-lookup.c (pop_bindings_and_leave_scope): Define.
* parser.c (cp_parser_lambda_declarator_opt,
cp_parser_direct_declarator, cp_parser_cache_defarg): Use it.

From-SVN: r201839

11 years agotarget.def (TARGET_LIBC_HAS_FUNCTION): New target hook.
Alexander Ivchenko [Mon, 19 Aug 2013 12:21:26 +0000 (12:21 +0000)]
target.def (TARGET_LIBC_HAS_FUNCTION): New target hook.

* target.def (TARGET_LIBC_HAS_FUNCTION): New target hook.
* builtins.c (default_libc_has_function): New.
(gnu_libc_has_function): Ditto.
(no_c99_libc_has_function): Ditto.
(expand_builtin_cexpi): Using new target hook TARGET_LIBC_HAS_FUNCTION
instead of TARGET_HAS_SINCOS and TARGET_C99_FUNCTIONS.
(fold_builtin_sincos): Likewise.
(fold_builtin_cexp): Likewise.
* builtins.def (DEF_C94_BUILTIN): Likewise.
(DEF_C99_BUILTIN): Likewise.
(DEF_C99_C90RES_BUILTIN): Likewise.
(DEF_C99_COMPL_BUILTIN): New define. Change all complex c99 builtin
definitions to using this define.
* config/darwin-protos.h (darwin_libc_has_function): New.
* config/darwin.c: (darwin_libc_has_function: Ditto.
* config/alpha/linux.h: Remove TARGET_C99_FUNCTIONS and
TARGET_HAS_SINCOS. Redefine TARGET_LIBC_HAS_FUNCTION.
* config/darwin.h: Ditto.
* config/elfos.h: Ditto.
* config/freebsd.h: Ditto.
* config/i386/cygming.h: Ditto.
* config/i386/djgpp.h: Ditto.
* config/i386/i386-interix.h: Ditto.
* config/microblaze/microblaze.h: Ditto.
* config/mmix/mmix.h: Ditto.
* config/gnu-user.h: Ditto.
* config/ia64/hpux.h: Ditto.
* config/pa/pa-hpux.h: Ditto.
* config/pdp11/pdp11.h: Ditto.
* config/picochip/picochip.h: Ditto.
* config/linux.h: Ditto.
* config/netbsd.h: Ditto.
* config/openbsd.h: Ditto.
* config/rs6000/aix43.h: Ditto.
* config/rs6000/aix51.h: Ditto.
* config/rs6000/aix52.h: Ditto.
* config/rs6000/aix53.h: Ditto.
* config/rs6000/aix61.h: Ditto.
* config/rs6000/darwin.h: Ditto.
* config/rs6000/linux.h: Ditto.
* config/rs6000/linux64.h: Ditto.
* config/s390/tpf.h: Ditto.
* config/sol2-10.h: Ditto.
* config/sol2.h: Ditto.
* config/vms/vms.h: Ditto.
* config/vxworks.h: Ditto.
* config/linux-android.c (linux_android_libc_has_function):
New linux-specific implementation of TARGET_LIBC_HAS_FUNCTION.
* config/linux-protos.h (linux_android_libc_has_function):
New declaration.
* config/i386/i386.c (ix86_libc_has_function): New.
* config/i386/i386-protos.h
(ix86_libc_has_function): New declaration.
* config/i386/i386.md
("isinfxf2"): Change condition for TARGET_LIBC_HAS_FUNCTION.
("isinf<mode>2): Likewise.
* convert.c (convert_to_integer): Using new target hook
TARGET_LIBC_HAS_FUNCTION istead of TARGET_HAS_SINCOS and
TARGET_C99_FUNCTIONS.
* fortran/f95-lang.c (gfc_init_builtin_functions): Ditto.
* tree-ssa-math-opts.c (execute_cse_sincos): Ditto.
* coretypes.h (function_class): New enum for different
classes of functions.
* defaults.h: Remove TARGET_C99_FUNCTIONS and TARGET_HAS_SINCOS.
* doc/tm.texi.in (TARGET_C99_FUNCTIONS): Remove documentation.
(TARGET_HAS_SINCOS): Likewise.
(TARGET_LIBC_HAS_FUNCTION): New.
* doc/tm.texi: Regenerated.
* targhooks.h (default_libc_has_function): New declaration.
(no_c99_libc_has_function): Ditto.
(gnu_libc_has_function): Ditto.
* system.h: Add the poisoning of TARGET_C99_FUNCTIONS
and TARGET_HAS_SINCOS.

From-SVN: r201838

11 years ago* gcc.target/avr/progmem-error-1.cpp: Update linenumber of error.
Joern Rennecke [Mon, 19 Aug 2013 11:59:39 +0000 (11:59 +0000)]
* gcc.target/avr/progmem-error-1.cpp: Update linenumber of error.

From-SVN: r201837

11 years agoMakeifle-in (ipa-devirt.o): New.
Jan Hubicka [Mon, 19 Aug 2013 10:14:06 +0000 (12:14 +0200)]
Makeifle-in (ipa-devirt.o): New.

* Makeifle-in (ipa-devirt.o): New.
(GTFILES): Add ipa-utils.h and ipa-devirt.c
* cgraphunit.c (decide_is_symbol_needed): Do not care about virtuals.
(analyze_functions): Look into possible targets of polymorphic call.
* dumpfile.c (dump_files): Add type-inheritance dump.
* dumpfile.h (TDI_inheritance): New.
* ipa-devirt.c: New file.
* ipa-utils.h (odr_type_d): Forward declare.
(odr_type): New type.
(build_type_inheritance_graph): Declare.
(possible_polymorphic_call_targets): Declare and introduce inline
variant when only edge is pased.
(dump_possible_polymorphic_call_targets): Likewise.
* timevar.def (TV_IPA_INHERITANCE, TV_IPA_VIRTUAL_CALL): New.
* tree.c (type_in_anonymous_namespace_p): Break out from ...
(types_same_for_odr): ... here.
* tree.h (type_in_anonymous_namespace_p): Declare.

* g++.dg/ipa/type-inheritance-1.C: New testcase.

From-SVN: r201836

11 years agore PR fortran/46271 ([F03] OpenMP default(none) and procedure pointers)
Janus Weil [Mon, 19 Aug 2013 09:03:20 +0000 (11:03 +0200)]
re PR fortran/46271 ([F03] OpenMP default(none) and procedure pointers)

2013-08-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/46271
* openmp.c (resolve_omp_clauses): Bugfix for procedure pointers.

2013-08-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/46271
* gfortran.dg/gomp/proc_ptr_1.f90: New.

From-SVN: r201835

11 years agoDaily bump.
GCC Administrator [Mon, 19 Aug 2013 00:16:48 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201832

11 years agore PR gcov-profile/58127 (37 failures in gcc.dg/tree-prof/ for x86_64-apple-darwin10)
Iain Sandoe [Sun, 18 Aug 2013 15:50:17 +0000 (15:50 +0000)]
re PR gcov-profile/58127 (37 failures in gcc.dg/tree-prof/ for x86_64-apple-darwin10)

libgcc:

PR gcov-profile/58127
* libgcov.c (__gcov_indirect_call_callee): Don't make this a
__thread var for emulated TLS.
(__gcov_indirect_call_counters): Likewise.

From-SVN: r201829

11 years agore PR tree-optimization/58006 (ICE compiling VegaStrike with -ffast-math -ftree-paral...
Jakub Jelinek [Sun, 18 Aug 2013 15:23:24 +0000 (17:23 +0200)]
re PR tree-optimization/58006 (ICE compiling VegaStrike with -ffast-math -ftree-parallelize-loops=2)

PR tree-optimization/58006
* tree-parloops.c (take_address_of): Don't ICE if get_name
returns NULL.
(eliminate_local_variables_stmt): Remove clobber stmts.

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

From-SVN: r201827

11 years agocgraphunit.c (handle_alias_pairs): Reset the alias flag after the error message is...
Eric Botcazou [Sun, 18 Aug 2013 14:58:58 +0000 (14:58 +0000)]
cgraphunit.c (handle_alias_pairs): Reset the alias flag after the error message is issued for an alias to...

* cgraphunit.c (handle_alias_pairs): Reset the alias flag after the
error message is issued for an alias to undefined symbol.

From-SVN: r201826

11 years agoregex_automaton.h: _S_opcode_backref.
Tim Shen [Sun, 18 Aug 2013 13:55:48 +0000 (13:55 +0000)]
regex_automaton.h: _S_opcode_backref.

2013-08-18  Tim Shen  <timshen91@gmail.com>

* include/bits/regex_automaton.h: _S_opcode_backref.
* include/bits/regex_automaton.tcc: Backref automaton support.
* include/bits/regex_compiler.tcc: Parsing support.
* include/bits/regex_executor.h: Add _M_traits for _DFSExecutor.
* include/bits/regex_executor.tcc: Add _S_opcode_backref support.
* testsuite/28_regex/algorithms/regex_match/ecma/string_backref.cc: New.

From-SVN: r201825

11 years agocgraph.c (cgraph_create_indirect_edge): Discover polymorphic calls and record basic...
Jan Hubicka [Sun, 18 Aug 2013 09:22:42 +0000 (11:22 +0200)]
cgraph.c (cgraph_create_indirect_edge): Discover polymorphic calls and record basic info into indirect_info.

* cgraph.c (cgraph_create_indirect_edge): Discover
polymorphic calls and record basic info into indirect_info.
* gimple-fold.c (gimple_fold_call): When doing BINFO based
devirtualization, ignore objc function calls.
* ipa-cp.c (initialize_node_lattices): Be ready for polymorphic
call with no parm index info.
* ipa-prop.c (ipa_analyze_call_uses): Likewise.
* tree.c (virtual_method_call_p): New function.
* tree.h (virtual_method_call_p): Declare.

From-SVN: r201824

11 years agore PR c++/58083 (ICE with lambda as default parameter of a template function)
Jason Merrill [Sun, 18 Aug 2013 01:06:49 +0000 (21:06 -0400)]
re PR c++/58083 (ICE with lambda as default parameter of a template function)

PR c++/58083
* name-lookup.c (push_class_level_binding_1): It's OK to push a
lambda type after the enclosing type is complete.

From-SVN: r201822

11 years agoDaily bump.
GCC Administrator [Sun, 18 Aug 2013 00:16:26 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201821

11 years agoerror.c (dump_scope): Add a cxx_pretty_printer parameter.
Gabriel Dos Reis [Sat, 17 Aug 2013 20:31:02 +0000 (20:31 +0000)]
error.c (dump_scope): Add a cxx_pretty_printer parameter.

* error.c (dump_scope): Add a cxx_pretty_printer parameter.
Adjust callers.
(dump_template_argument): Likewise.
(dump_template_argument_list): Likewise.
(dump_template_parameter): Likewise.
(dump_template_bindings): Likewise.
(dump_alias_template_specialization): Likewise.
(dump_type): Likewise.
(dump_typename): Likewise.
(dump_aggr_type): Likewise.
(dump_type_prefix): Likewise.
(dump_type_suffix): Likewise.
(dump_global_iord): Likewise.
(dump_simple_decl): Likewise.
(dump_decl): Likewise.
(dump_template_decl): Likewise.
(dump_function_decl): Likewise.
(dump_parameters): Likewise.
(dump_ref_qualifier): Likewise.
(dump_exception_spec): Likewise.
(dump_function_name): Likewise.
(dump_template_parms): Likewise.
(dump_call_expr_args): Likewise.
(dump_aggr_init_expr_args): Likewise.
(dump_expr_list): Likewise.
(dump_expr_init_vec): Likewise.
(dump_expr): Likewise.
(dump_binary_op): Likewise.
(dump_unary_op): Likewise.

From-SVN: r201818

11 years agore PR middle-end/58179 (obj_type_ref ICE building libobjc)
Jan Hubicka [Sat, 17 Aug 2013 18:14:18 +0000 (20:14 +0200)]
re PR middle-end/58179 (obj_type_ref ICE building libobjc)

PR middle-end/58179
* tree.c (obj_type_ref_class): Do not ICE on non-method calls.

From-SVN: r201817

11 years agocompiler: Don't generate value reference in range clause if receiver is a sink.
Ian Lance Taylor [Sat, 17 Aug 2013 18:04:35 +0000 (18:04 +0000)]
compiler: Don't generate value reference in range clause if receiver is a sink.

The panic in test/fixedbugs/bug454.go was caused by the generation of an unnecessary var reference when writing a range value into a sink. If the receiving variable is a sink, there's no need to dereference a possible NULL pointer.

Fixes Issue 24.

From-SVN: r201815

11 years agors6000.md (rs6000_get_timebase_ppc32): Add length attribute.
David Edelsohn [Sat, 17 Aug 2013 00:43:38 +0000 (00:43 +0000)]
rs6000.md (rs6000_get_timebase_ppc32): Add length attribute.

        * config/rs6000/rs6000.md (rs6000_get_timebase_ppc32): Add length
        attribute.

From-SVN: r201812

11 years agoDaily bump.
GCC Administrator [Sat, 17 Aug 2013 00:16:32 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201811

11 years agomips16.S (CE_STARTFN, CE_ENDFN): New macros.
Maciej W. Rozycki [Fri, 16 Aug 2013 22:23:29 +0000 (22:23 +0000)]
mips16.S (CE_STARTFN, CE_ENDFN): New macros.

* config/mips/mips16.S (CE_STARTFN, CE_ENDFN): New macros.
(RET_FUNCTION): Use them in place of STARTFN and ENDFN.
(CALL_STUB_NO_RET): Likewise.
(CALL_STUB_RET): Likewise.
* config/mips/libgcc-mips16.ver: Remove __mips16_call_stub and
__mips16_ret call/return stub symbols.
* config.host <mips*-*-linux>: For non-R5900 add t-slibgcc-libgcc
to tmake_file.

Co-Authored-By: Catherine Moore <clm@codesourcery.com>
Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>
From-SVN: r201805

11 years agoSupport "gcc" namespace in gengtype
David Malcolm [Fri, 16 Aug 2013 19:46:12 +0000 (19:46 +0000)]
Support "gcc" namespace in gengtype

gcc/
* gengtype.c (type_for_name): Add special-case support for
locating types within the "gcc::" namespace.
(open_base_files): Emit a "using namespace gcc" directive.

From-SVN: r201800

11 years agore PR target/58160 (Power8 fusion support has a bug that shows up in running spec...
Michael Meissner [Fri, 16 Aug 2013 15:28:13 +0000 (15:28 +0000)]
re PR target/58160 (Power8 fusion support has a bug that shows up in running spec 2006)

2013-08-14  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/58160
* config/rs6000/predicates.md (fusion_gpr_mem_load): Allow the
memory rtx to contain ZERO_EXTEND and SIGN_EXTEND.

* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): Pass operands
array instead of each individual operand as a separate argument.
(emit_fusion_gpr_load): Likewise.
(expand_fusion_gpr_load): Add new function declaration.

* config/rs6000/rs6000.c (fusion_gpr_load_p): Change the calling
signature to have the operands passed as an array, instead of as
separate arguments.  Allow ZERO_EXTEND to be in the memory
address, and also SIGN_EXTEND if -mpower8-fusion-sign.  Do not
depend on the register live/dead flags when peepholes are run.
(expand_fusion_gpr_load): New function to be called from the
peephole2 pass, to change the register that addis sets to be the
target register.
(emit_fusion_gpr_load): Change the calling signature to have the
operands passed as an array, instead of as separate arguments.
Allow ZERO_EXTEND to be in the memory address, and also
SIGN_EXTEND if -mpower8-fusion-sign.

* config/rs6000/rs6000.md (UNSPEC_FUSION_GPR): Delete unused
unspec enumeration.
(power8 fusion peephole/peephole2): Rework the fusion peepholes to
adjust the register addis loads up in the peephole2 pass.  Do not
depend on the register live/dead state when the peephole pass is
done.

From-SVN: r201792

11 years agoFix bad interaction between GTY((user)) and incomplete declarations
David Malcolm [Fri, 16 Aug 2013 14:59:02 +0000 (14:59 +0000)]
Fix bad interaction between GTY((user)) and incomplete declarations

gcc/
* gengtype.c (create_user_defined_type): Ensure that the kind
is set to TYPE_USER_STRUCT, fixing a bug seen when an incomplete
declaration is seen before the GTY((user)) marking.

From-SVN: r201791

11 years agore PR target/58105 (wrong code generation for multiversioned functions)
Bernd Edlinger [Fri, 16 Aug 2013 13:22:36 +0000 (15:22 +0200)]
re PR target/58105 (wrong code generation for multiversioned functions)

PR target/58105
* config/i386/i386.c (make_resolver_func): Set DECL_UNINLINABLE.

From-SVN: r201790

11 years agogimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new arugment expected_type.
Jan Hubicka [Fri, 16 Aug 2013 12:38:04 +0000 (14:38 +0200)]
gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new arugment expected_type.

* gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new
arugment expected_type.
(gimple_fold_call): Use it.
* gimple.h (gimple_extract_devirt_binfo_from_cst): Update prototype.
* ipa-cp.c (ipa_get_indirect_edge_target_1): Update.
* ipa-prop.c (ipa_analyze_virtual_call_uses): Use
obj_type_ref_class.
(try_make_edge_direct_virtual_call): Likewise.
* tree.c (obj_type_ref_class): New.
* tree.h (obj_type_ref_class): Use it.

From-SVN: r201789

11 years agosched-vis.c (rtl_slim_pp_initialized): Remove.
Gabriel Dos Reis [Fri, 16 Aug 2013 10:42:49 +0000 (10:42 +0000)]
sched-vis.c (rtl_slim_pp_initialized): Remove.

* sched-vis.c (rtl_slim_pp_initialized): Remove.
(rtl_slim_pp): Likewise.
(init_rtl_slim_pretty_print): Likewise.
(dump_value_slim):  Don't call it.  Use local pretty printer.
(dump_insn_slim): Likewise.
(dump_rtl_slim): Likewise.
(str_pattern_slim): Likewise.
* tree-mudflap.c (mf_varname_tree): Use local pretty printer.
Simplify.

From-SVN: r201785

11 years agoregex.h (regex_traits<>::transform_primary): Avoid past-the-end dereferences.
Tim Shen [Fri, 16 Aug 2013 09:06:31 +0000 (09:06 +0000)]
regex.h (regex_traits<>::transform_primary): Avoid past-the-end dereferences.

2013-08-16  Tim Shen  <timshen91@gmail.com>

* include/bits/regex.h (regex_traits<>::transform_primary):
Avoid past-the-end dereferences.

From-SVN: r201783

11 years agore PR tree-optimization/58164 (internal compiler error: in make_decl_rtl, at varasm...
Jakub Jelinek [Fri, 16 Aug 2013 09:05:52 +0000 (11:05 +0200)]
re PR tree-optimization/58164 (internal compiler error: in make_decl_rtl, at varasm.c:1147)

PR tree-optimization/58164
* gimple.c (walk_stmt_load_store_addr_ops): For visit_addr
walk gimple_goto_dest of GIMPLE_GOTO.

* gcc.c-torture/compile/pr58164.c: New test.

From-SVN: r201782

11 years agore PR regression/58165 (internal compiler error: verify_flow_info)
Jakub Jelinek [Fri, 16 Aug 2013 08:57:29 +0000 (10:57 +0200)]
re PR regression/58165 (internal compiler error: verify_flow_info)

PR tree-optimization/58165
* tree-call-cdce.c (shrink_wrap_one_built_in_call): If
bi_call must be the last stmt in a bb, don't split_block, instead
use fallthru edge from it and give up if there is none.
Release conds vector when returning early.

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

From-SVN: r201780

11 years agoDaily bump.
GCC Administrator [Fri, 16 Aug 2013 00:16:41 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201779

11 years agoDaily bump.
GCC Administrator [Thu, 15 Aug 2013 00:16:38 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201758

11 years agore PR libstdc++/58163 ([C++11] Pedantic assert on str[str.size()] is wrong in C++11)
Paolo Carlini [Thu, 15 Aug 2013 00:15:12 +0000 (00:15 +0000)]
re PR libstdc++/58163 ([C++11] Pedantic assert on str[str.size()] is wrong in C++11)

2013-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/58163
* include/bits/basic_string.h (basic_string<>::operator[]): Fix
_GLIBCXX_DEBUG_PEDASSERT check vs C++11.
* include/ext/vstring.h: Likewise.
* testsuite/21_strings/basic_string/element_access/char/58163.cc:
New.
* testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
Likewise.
* testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
* testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.

From-SVN: r201755

11 years agore PR c++/51912 ([C++11] G++ accepts floating point case labels)
Paolo Carlini [Wed, 14 Aug 2013 21:42:54 +0000 (21:42 +0000)]
re PR c++/51912 ([C++11] G++ accepts floating point case labels)

/cp
2013-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51912
* cp-tree.h (LOOKUP_NO_NON_INTEGRAL): Add.
* decl.c (case_conversion): Use it.
* call.c (standard_conversion): Likewise.
(implicit_conversion): Adjust.

/testsuite
2013-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51912
* g++.dg/cpp0x/enum28.C: New.
* g++.dg/cpp0x/enum15.C: Adjust.

From-SVN: r201754

11 years agorevert: configure.tgt: Add -msoft-float to XCFLAGS.
Andreas Krebbel [Wed, 14 Aug 2013 21:04:07 +0000 (21:04 +0000)]
revert: configure.tgt: Add -msoft-float to XCFLAGS.

2013-08-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
Revert:
2013-08-02  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* configure.tgt: Add -msoft-float to XCFLAGS.

From-SVN: r201753

11 years agoRemove unused variable and field
Xinliang David Li [Wed, 14 Aug 2013 20:57:52 +0000 (20:57 +0000)]
Remove unused variable and field

From-SVN: r201752

11 years agore PR target/57949 ([powerpc64] Structure parameter alignment issue with vector exten...
Bill Schmidt [Wed, 14 Aug 2013 20:38:33 +0000 (20:38 +0000)]
re PR target/57949 ([powerpc64] Structure parameter alignment issue with vector extensions)

gcc:

2013-08-14  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR target/57949
* doc/invoke.texi: Add documentation of mcompat-align-parm
option.
* config/rs6000/rs6000.opt: Add mcompat-align-parm option.
* config/rs6000/rs6000.c (rs6000_function_arg_boundary): For AIX
and Linux, correct BLKmode alignment when 128-bit alignment is
required and compatibility flag is not set.
(rs6000_gimplify_va_arg): For AIX and Linux, honor specified
alignment for zero-size arguments when compatibility flag is not
set.

gcc/testsuite:

2013-08-14  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR target/57949
* gcc.target/powerpc/pr57949-1.c: New.
* gcc.target/powerpc/pr57949-2.c: New.

From-SVN: r201750

11 years agore PR middle-end/58145 (volatileness of write is discarded, perhaps in "lim1" related...
Jakub Jelinek [Wed, 14 Aug 2013 20:34:56 +0000 (22:34 +0200)]
re PR middle-end/58145 (volatileness of write is discarded, perhaps in "lim1" related to loop optimizations)

PR tree-optimization/58145
* tree-sra.c (build_ref_for_offset): If prev_base has
TREE_THIS_VOLATILE or TREE_SIDE_EFFECTS, propagate it to MEM_REF.

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

From-SVN: r201748

11 years agoglobal-used-types.c: Request dwarf output.
Joern Rennecke [Wed, 14 Aug 2013 20:19:12 +0000 (20:19 +0000)]
global-used-types.c: Request dwarf output.

        * gcc.dg/debug/dwarf2/global-used-types.c: Request dwarf output.
        * gcc.dg/debug/dwarf2/inline2.c: Likewise.
        * gcc.dg/debug/dwarf2/inline3.c: Likewise.
        * gcc.dg/debug/dwarf2/pr37726.c: Likewise.
        * gcc.dg/debug/dwarf2/pr41445-1.c: Likewise.
        * gcc.dg/debug/dwarf2/pr41445-2.c: Likewise.
        * gcc.dg/debug/dwarf2/pr41445-3.c: Likewise.
        * gcc.dg/debug/dwarf2/pr41445-4.c: Likewise.
        * gcc.dg/debug/dwarf2/pr41445-5.c: Likewise.
        * gcc.dg/debug/dwarf2/pr41445-6.c: Likewise.
        * gcc.dg/debug/dwarf2/pr41543.c: Likewise.
        * gcc.dg/debug/dwarf2/pr41695.c: Likewise.
        * gcc.dg/debug/dwarf2/pr43237.c: Likewise.
        * gcc.dg/debug/dwarf2/pr47939-1.c: Likewise.
        * gcc.dg/debug/dwarf2/pr47939-2.c: Likewise.
        * gcc.dg/debug/dwarf2/pr47939-3.c: Likewise.
        * gcc.dg/debug/dwarf2/pr47939-4.c: Likewise.
        * gcc.dg/debug/dwarf2/pr53948.c: Likewise.
        * gcc.dg/debug/dwarf2/struct-loc1.c: Likewise.

From-SVN: r201747

11 years agopr42585.c: Add avr-*-* to list of targets to exclude from scan test.
Joern Rennecke [Wed, 14 Aug 2013 18:44:51 +0000 (18:44 +0000)]
pr42585.c: Add avr-*-* to list of targets to exclude from scan test.

* gcc.dg/tree-ssa/pr42585.c: Add avr-*-* to list of targets to
exclude from scan test.

From-SVN: r201744

11 years agore PR testsuite/52641 (Test cases fail for 16-bit int targets)
Joern Rennecke [Wed, 14 Aug 2013 18:39:59 +0000 (18:39 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)

        PR testsuite/52641
        * c-c++-common/simulate-thread/bitfields-2.c: Run test only for
        target { ! int16 }.
        * gcc.dg/tree-ssa/pr54245.c: Do slsr scan only for target { ! int16 }.
        * gcc.dg/tree-ssa/slsr-1.c: Adjust multiplicators to scan for for
        target { int16 }.  Restrict existing tests to target { int32 }
        where appropriate.
        * gcc.dg/tree-ssa/slsr-2.c, gcc.dg/tree-ssa/slsr-27.c: Likewise.
        * gcc.dg/tree-ssa/slsr-28.c, gcc.dg/tree-ssa/slsr-29.c: Likewise.
        * gcc.dg/tree-ssa/slsr-3.c, gcc.dg/tree-ssa/ssa-ccp-23.c: Likewise.
        * lib/target-supports.exp (check_effective_target_int32): New proc.

From-SVN: r201743

11 years agore PR testsuite/52641 (Test cases fail for 16-bit int targets)
Joern Rennecke [Wed, 14 Aug 2013 18:36:52 +0000 (18:36 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)

        PR testsuite/52641
        * c-c++-common/scal-to-vec1.c: Add !int16 and large_double conditions
        to tests that assume int/double are larger than short/float.

From-SVN: r201742

11 years agostrlenopt-10.c [avr-*-*]: Reduce number of expected memcpy by one.
Joern Rennecke [Wed, 14 Aug 2013 18:32:57 +0000 (18:32 +0000)]
strlenopt-10.c [avr-*-*]: Reduce number of expected memcpy by one.

* gcc.dg/strlenopt-10.c [avr-*-*]: Reduce number of expected
memcpy by one.
* gcc.dg/strlenopt-11.c [avr-*-*]: Likewise.
Expect l to be optimized away.
* gcc.dg/strlenopt-13.c [avr-*-*]: Likewise.

From-SVN: r201741

11 years ago* gcc.dg/pr46647.c: xfail for avr-*-*.
Joern Rennecke [Wed, 14 Aug 2013 18:28:30 +0000 (18:28 +0000)]
* gcc.dg/pr46647.c: xfail for avr-*-*.

From-SVN: r201740

11 years agopr44214-1.c (v2df): Define size using sizeof (double).
Joern Rennecke [Wed, 14 Aug 2013 18:24:06 +0000 (18:24 +0000)]
pr44214-1.c (v2df): Define size using sizeof (double).

* gcc.dg/pr44214-1.c (v2df): Define size using sizeof (double).
* gcc.dg/pr44214-3.c (v2df): Likewise.

From-SVN: r201739

11 years ago* gcc.dg/c99-stdint-1.c [avr-*-*]: Update line number for dg-bogus.
Joern Rennecke [Wed, 14 Aug 2013 18:21:25 +0000 (18:21 +0000)]
* gcc.dg/c99-stdint-1.c [avr-*-*]: Update line number for dg-bogus.

From-SVN: r201738

11 years ago* gcc.dg/c99-stdint-1.c [avr-*-*]: Update line number for dg-bogus.
Joern Rennecke [Wed, 14 Aug 2013 18:17:28 +0000 (18:17 +0000)]
* gcc.dg/c99-stdint-1.c [avr-*-*]: Update line number for dg-bogus.

From-SVN: r201737

11 years agore PR testsuite/52641 (Test cases fail for 16-bit int targets)
Joern Rennecke [Wed, 14 Aug 2013 18:13:38 +0000 (18:13 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)

        PR testsuite/52641
        * gcc.c-torture/execute/pr56799.x: New file.

From-SVN: r201736

11 years agoFix unitialized var
Xinliang David Li [Wed, 14 Aug 2013 18:12:20 +0000 (18:12 +0000)]
Fix unitialized var

From-SVN: r201735

11 years agodwarf2.exp: Replace -gdwarf-2 with -gdwarf.
Joern Rennecke [Wed, 14 Aug 2013 18:08:22 +0000 (18:08 +0000)]
dwarf2.exp: Replace -gdwarf-2 with -gdwarf.

        * gcc.dg/debug/dwarf2/dwarf2.exp: Replace -gdwarf-2 with -gdwarf.
        * gcc.dg/debug/dwarf2/dwarf-die7.c: Likewise.
        * gcc.dg/debug/dwarf2/static1.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-dfp.c: Likewise.
        * gcc.dg/debug/dwarf2/fesd-any.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-uninit.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-die1.c: Likewise.
        * gcc.dg/debug/dwarf2/var1.c: Likewise.
        * gcc.dg/debug/dwarf2/pr29609-2.c: Likewise.
        * gcc.dg/debug/dwarf2/aranges-fnsec-1.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-die3.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-merge.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-char1.c: Likewise.
        * gcc.dg/debug/dwarf2/discriminator.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-char2.c: Likewise.
        * gcc.dg/debug/dwarf2/fesd-baseonly.c: Likewise.
        * gcc.dg/debug/dwarf2/pr36690-3.c: Likewise.
        * gcc.dg/debug/dwarf2/const-2.c: Likewise.
        * gcc.dg/debug/dwarf2/ipa-cp1.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-char3.c: Likewise.
        * gcc.dg/debug/dwarf2/var2.c: Likewise.
        * gcc.dg/debug/dwarf2/pr36690-2.c: Likewise.
        * gcc.dg/debug/dwarf2/pr31230.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-float.c: Likewise.
        * gcc.dg/debug/dwarf2/short-circuit.c: Likewise.
        * gcc.dg/debug/dwarf2/pr36690-1.c: Likewise.
        * gcc.dg/debug/dwarf2/fesd-reduced.c: Likewise.
        * gcc.dg/debug/dwarf2/pr37616.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-die2.c: Likewise.
        * gcc.dg/debug/dwarf2/inline1.c: Likewise.
        * gcc.dg/debug/dwarf2/fesd-sys.c: Likewise.
        * gcc.dg/debug/dwarf2/pr29609-1.c: Likewise.
        * gcc.dg/debug/dwarf2/asm-line1.c: Likewise.
        * gcc.dg/debug/dwarf2/c99-typedef1.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf2-macro.c: Likewise.
        * gcc.dg/debug/dwarf2/fesd-none.c: Likewise.
        * gcc.dg/debug/dwarf2/pr51410.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-file1.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-die6.c: Likewise.
        * gcc.dg/debug/dwarf2/const-2b.c: Likewise.
        * gcc.dg/debug/dwarf2/dwarf-die5.c: Likewise.

From-SVN: r201734

11 years agoImplement -mno-default, option documentation and code refactoring
Xinliang David Li [Wed, 14 Aug 2013 17:41:02 +0000 (17:41 +0000)]
Implement -mno-default, option documentation and code refactoring

From-SVN: r201732

11 years ago* gcc.target/arm/pr19599.c: Skip for -mthumb.
Janis Johnson [Wed, 14 Aug 2013 16:53:27 +0000 (16:53 +0000)]
* gcc.target/arm/pr19599.c: Skip for -mthumb.

From-SVN: r201731

11 years agoatomic-comp-swap-release-acquire.c: Move dg-do to be the first test directive.
Janis Johnson [Wed, 14 Aug 2013 16:52:40 +0000 (16:52 +0000)]
atomic-comp-swap-release-acquire.c: Move dg-do to be the first test directive.

* gcc.target/arm/atomic-comp-swap-release-acquire.c: Move dg-do
to be the first test directive.
* gcc.target/arm/atomic-op-acq_rel.c: Likewise.
* gcc.target/arm/atomic-op-acquire.c: Likewise.
* gcc.target/arm/atomic-op-char.c: Likewise.
* gcc.target/arm/atomic-op-consume.c: Likewise.
* gcc.target/arm/atomic-op-int.c: Likewise.
* gcc.target/arm/atomic-op-relaxed.c: Likewise.
* gcc.target/arm/atomic-op-release.c: Likewise.
* gcc.target/arm/atomic-op-seq_cst.c: Likewise.
* gcc.target/arm/atomic-op-short.c: Likewise.

From-SVN: r201730

11 years agocompatibility.cc (_ZTIe): Use reinterpret_cast<const cast *> to avoid -Wcast-qual...
Uros Bizjak [Wed, 14 Aug 2013 14:59:46 +0000 (16:59 +0200)]
compatibility.cc (_ZTIe): Use reinterpret_cast<const cast *> to avoid -Wcast-qual warnings.

* src/c++98/compatibility.cc (_ZTIe): Use
reinterpret_cast<const cast *> to avoid -Wcast-qual warnings.
(_ZTIPe): Ditto.
(ZTIPKe): Ditto.

From-SVN: r201729

11 years agore PR rtl-optimization/57662 (ICE: SIGSEGV in code_motion_process_successors with...
Andrey Belevantsev [Wed, 14 Aug 2013 14:31:26 +0000 (18:31 +0400)]
re PR rtl-optimization/57662 (ICE: SIGSEGV in code_motion_process_successors with -fschedule-insns2 -fselective-scheduling2)

PR rtl-optimization/57662

gcc/
* sel-sched.c (code_motion_process_successors): When the current insn
is removed after the recursive traversal, break from the loop.
Add comments and debug printouts.

testsuite/

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

From-SVN: r201728

11 years agocompatibility.cc (_ZTIe): Use (const cast *) to avoid -Wcast-qual warnings.
Uros Bizjak [Wed, 14 Aug 2013 14:22:56 +0000 (16:22 +0200)]
compatibility.cc (_ZTIe): Use (const cast *) to avoid -Wcast-qual warnings.

* src/c++98/compatibility.cc (_ZTIe): Use (const cast *)
to avoid -Wcast-qual warnings.
(_ZTIPe): Ditto.
(ZTIPKe): Ditto.

From-SVN: r201727

11 years agocompatibility.cc (_ZTIe): Use const_cast to avoid warning.
Uros Bizjak [Wed, 14 Aug 2013 11:27:56 +0000 (13:27 +0200)]
compatibility.cc (_ZTIe): Use const_cast to avoid warning.

* src/c++98/compatibility.cc (_ZTIe): Use const_cast to avoid warning.
(_ZTIPe): Ditto.
(ZTIPKe): Ditto.

From-SVN: r201723

11 years agore PR target/58067 (ICE in GFortran recog.c:2158)
Jakub Jelinek [Wed, 14 Aug 2013 09:09:58 +0000 (11:09 +0200)]
re PR target/58067 (ICE in GFortran recog.c:2158)

PR target/58067
* config/i386/i386.c (ix86_delegitimize_address): For CM_MEDIUM_PIC
and CM_LARGE_PIC ix86_cmodel fall thru into the -m32 code, handle
there also UNSPEC_PLTOFF.

Co-Authored-By: Alexandre Oliva <aoliva@redhat.com>
From-SVN: r201720

11 years agoipa-inline-analysis.c (add_clause): Avoid shifting integer NUM_CONDITIONS bit positions.
Marek Polacek [Wed, 14 Aug 2013 04:44:37 +0000 (04:44 +0000)]
ipa-inline-analysis.c (add_clause): Avoid shifting integer NUM_CONDITIONS bit positions.

* ipa-inline-analysis.c (add_clause): Avoid shifting integer
NUM_CONDITIONS bit positions.

From-SVN: r201719

11 years agoDaily bump.
GCC Administrator [Wed, 14 Aug 2013 00:16:49 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201717

11 years agodwarf2out.c (CHECKSUM_BLOCK): New macro.
Cary Coutant [Tue, 13 Aug 2013 23:39:54 +0000 (23:39 +0000)]
dwarf2out.c (CHECKSUM_BLOCK): New macro.

gcc/
* dwarf2out.c (CHECKSUM_BLOCK): New macro.
(attr_checksum): Hash vector contents instead of pointer.
(attr_checksum_ordered): Likewise.

From-SVN: r201712

11 years agonan-legacy.c: Accept 4294967295 as an alternative to -1.
Maciej W. Rozycki [Tue, 13 Aug 2013 21:39:26 +0000 (21:39 +0000)]
nan-legacy.c: Accept 4294967295 as an alternative to -1.

* gcc.target/mips/nan-legacy.c: Accept 4294967295 as an
alternative to -1.
* gcc.target/mips/nans-legacy.c: Likewise.

From-SVN: r201711

11 years agofabs-2008.c: Correct scan-assembler pattern escapes.
Maciej W. Rozycki [Tue, 13 Aug 2013 21:36:47 +0000 (21:36 +0000)]
fabs-2008.c: Correct scan-assembler pattern escapes.

* gcc.target/mips/fabs-2008.c: Correct scan-assembler pattern
escapes.
* gcc.target/mips/fabs-legacy.c: Likewise.
* gcc.target/mips/fabsf-2008.c: Likewise.
* gcc.target/mips/fabsf-legacy.c: Likewise.
* gcc.target/mips/fneg-2008.c: Likewise.
* gcc.target/mips/fneg-legacy.c: Likewise.
* gcc.target/mips/fnegf-2008.c: Likewise.
* gcc.target/mips/fnegf-legacy.c: Likewise.
* gcc.target/mips/nan-2008.c: Likewise.
* gcc.target/mips/nan-legacy.c: Likewise.
* gcc.target/mips/nanf-2008.c: Likewise.
* gcc.target/mips/nanf-legacy.c: Likewise.
* gcc.target/mips/nans-2008.c: Likewise.
* gcc.target/mips/nans-legacy.c: Likewise.
* gcc.target/mips/nansf-2008.c: Likewise.
* gcc.target/mips/nansf-legacy.c: Likewise.

From-SVN: r201710

11 years agosse.md (*sse2_maskmovdqu): Emit addr32 prefix when Pmode != word_mode.
Uros Bizjak [Tue, 13 Aug 2013 20:45:27 +0000 (22:45 +0200)]
sse.md (*sse2_maskmovdqu): Emit addr32 prefix when Pmode != word_mode.

* config/i386/sse.md (*sse2_maskmovdqu): Emit addr32 prefix
when Pmode != word_mode.  Add length_address attribute.
(sse3_monitor_<mode>): Merge from sse3_monitor and
sse3_monitor64_<mode> insn patterns.  Emit addr32 prefix when
Pmode != word_mode.  Update insn length attribute.
* config/i386/i386.c (ix86_option_override_internal): Update
ix86_gen_monitor selection for merged sse3_monitor insn.

From-SVN: r201708

11 years agodecl.c (gnat_to_gnu_entity): Do not bother about alias sets of derived types in ASIS...
Eric Botcazou [Tue, 13 Aug 2013 19:58:24 +0000 (19:58 +0000)]
decl.c (gnat_to_gnu_entity): Do not bother about alias sets of derived types in ASIS mode.

* gcc-interface/decl.c (gnat_to_gnu_entity): Do not bother about alias
sets of derived types in ASIS mode.

From-SVN: r201705

11 years agodecl.c (gnat_to_gnu_entity): Replace True with true.
Eric Botcazou [Tue, 13 Aug 2013 19:53:37 +0000 (19:53 +0000)]
decl.c (gnat_to_gnu_entity): Replace True with true.

* gcc-interface/decl.c (gnat_to_gnu_entity): Replace True with true.
(is_cplusplus_method): Likewise, and False with false.
(components_need_strict_alignment): Likewise.
* gcc-interface/misc.c (gnat_init_gcc_fp): Likewise.
* gcc-interface/trans.c (Loop_Statement_to_gnu): Likewise.
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
(add_cleanup): Likewise.
(Sloc_to_locus1): Likewise.
(Sloc_to_locus): Likewise.
(set_expr_location_from_node): Likewise.
* gcc-interface/utils.c (potential_alignment_gap): Likewise.

From-SVN: r201704

11 years agotrans.c (set_end_locus_from_node): Clear column info for the end_locus of a block...
Thomas Quinot [Tue, 13 Aug 2013 19:49:21 +0000 (19:49 +0000)]
trans.c (set_end_locus_from_node): Clear column info for the end_locus of a block if...

* gcc-interface/trans.c (set_end_locus_from_node): Clear column info
for the end_locus of a block if it does not come from an End_Label.

From-SVN: r201703

11 years agotrans.c (Handled_Sequence_Of_Statements_to_gnu): If there is no End_Label...
Thomas Quinot [Tue, 13 Aug 2013 19:43:47 +0000 (19:43 +0000)]
trans.c (Handled_Sequence_Of_Statements_to_gnu): If there is no End_Label...

* gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu): If
there is no End_Label, attach cleanup actions to the sloc of the HSS
node instead.
(Exception_Handler_to_gnu_zcx): Associate cleanup actions with the sloc
of the handler itself.
(add_cleanup): Clear column information in sloc of cleanup actions.
(Sloc_to_locus1): New static function.
(Sloc_to_locus): Call it.
(set_expr_location_from_node1): New static function.
(set_expr_location_from_node): Call it.

From-SVN: r201702

11 years agors6000.c (rs6000_legitimize_reload_address): Don't perform invalid legitimization...
Julian Brown [Tue, 13 Aug 2013 17:33:09 +0000 (17:33 +0000)]
rs6000.c (rs6000_legitimize_reload_address): Don't perform invalid legitimization on greater-than-word-size modes for...

* config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't
perform invalid legitimization on greater-than-word-size modes for
TARGET_E500_DOUBLE.

From-SVN: r201701

11 years agotrans.c (Call_to_gnu): Deal with specific conditional expressions for misaligned...
Eric Botcazou [Tue, 13 Aug 2013 17:13:47 +0000 (17:13 +0000)]
trans.c (Call_to_gnu): Deal with specific conditional expressions for misaligned actual parameters.

* gcc-interface/trans.c (Call_to_gnu): Deal with specific conditional
expressions for misaligned actual parameters.

From-SVN: r201700

11 years agoira.c (setup_class_translate_array): Use aclass instead of cl for classes not fully...
Vladimir Makarov [Tue, 13 Aug 2013 17:10:07 +0000 (17:10 +0000)]
ira.c (setup_class_translate_array): Use aclass instead of cl for classes not fully covered by allocno classes.

2013-08-13  Vladimir Makarov  <vmakarov@redhat.com>

* ira.c (setup_class_translate_array): Use aclass instead of cl
for classes not fully covered by allocno classes.

From-SVN: r201699

11 years agore PR middle-end/57661 (ICE: SIGSEGV in verify_ssa)
Jakub Jelinek [Tue, 13 Aug 2013 17:06:13 +0000 (19:06 +0200)]
re PR middle-end/57661 (ICE: SIGSEGV in verify_ssa)

PR tree-optimization/57661
* tree-inline.h (struct copy_body_data): Add blocks_to_copy field.
* tree-inline.c (tree_function_versioning): Initialize it.
(remap_gimple_stmt): Return GIMPLE_NOP for MEM_REF lhs clobber stmts
if id->blocks_to_copy and MEM_REF's SSA_NAME is defined in a block
that is not being copied.

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

From-SVN: r201698

11 years agore PR middle-end/56417 (internal compiler error: verify_gimple failed)
Jakub Jelinek [Tue, 13 Aug 2013 16:58:46 +0000 (18:58 +0200)]
re PR middle-end/56417 (internal compiler error: verify_gimple failed)

PR sanitizer/56417
* asan.c (instrument_strlen_call): Fix typo in comment.
Use char * type even for the lhs of POINTER_PLUS_EXPR.

* gcc.dg/asan/pr56417.c: New test.

From-SVN: r201696

11 years agotrans.c (can_equal_min_or_max_val_p): Be prepared for values outside of the range...
Eric Botcazou [Tue, 13 Aug 2013 15:52:26 +0000 (15:52 +0000)]
trans.c (can_equal_min_or_max_val_p): Be prepared for values outside of the range of the type.

* gcc-interface/trans.c (can_equal_min_or_max_val_p): Be prepared for
values outside of the range of the type.

From-SVN: r201692

11 years agomips.md (prefetch): Use lw instead of ld on loongson in 32bit mode.
Steve Ellcey [Tue, 13 Aug 2013 15:49:39 +0000 (15:49 +0000)]
mips.md (prefetch): Use lw instead of ld on loongson in 32bit mode.

2013-08-13  Steve Ellcey  <sellcey@mips.com>

* config/mips/mips.md (prefetch): Use lw instead of ld on
loongson in 32bit mode.

From-SVN: r201691

11 years ago* config.gcc: (avr-linux): Allow for tmake_file not being empty.
Nick Clifton [Tue, 13 Aug 2013 15:42:17 +0000 (15:42 +0000)]
* config.gcc: (avr-linux): Allow for tmake_file not being empty.

From-SVN: r201690

11 years ago* config.host <mips*-*-linux*>: Remove a stray comment.
Maciej W. Rozycki [Tue, 13 Aug 2013 14:26:49 +0000 (14:26 +0000)]
* config.host <mips*-*-linux*>: Remove a stray comment.

From-SVN: r201689

11 years ago* gcc.dg/pr57980.c: Use vector of two elements, not just one.
Marek Polacek [Tue, 13 Aug 2013 13:23:55 +0000 (13:23 +0000)]
* gcc.dg/pr57980.c: Use vector of two elements, not just one.

From-SVN: r201686

11 years agocgraph.c (cgraph_turn_edge_to_speculative): Return newly introduced edge; fix typo...
Jan Hubicka [Tue, 13 Aug 2013 12:21:16 +0000 (14:21 +0200)]
cgraph.c (cgraph_turn_edge_to_speculative): Return newly introduced edge; fix typo in sanity check.

* cgraph.c (cgraph_turn_edge_to_speculative): Return newly
introduced edge; fix typo in sanity check.
(cgraph_resolve_speculation): Export; improve diagnostic.
(cgraph_redirect_edge_call_stmt_to_callee): Better diagnostic; cancel
speculation at type mismatch.
* cgraph.h (cgraph_turn_edge_to_speculative): Update.
(cgraph_resolve_speculation): Declare.
(symtab_can_be_discarded): New function.
* value-prof.c (gimple_ic_transform): Remove actual transform code.
* ipa-inline-transform.c (speculation_removed): New global var.
(clone_inlined_nodes): See if speculation can be removed.
(inline_call): If speculations was removed, we growths may not match.
* ipa-inline.c (can_inline_edge_p): Add DISREGARD_LIMITS parameter.
(speculation_useful_p): New function.
(resolve_noninline_speculation): New function.
(inline_small_functions): Resolve useless speculations.
* ipa-inline.h (speculation_useful_p): Declare
* ipa.c (can_replace_by_local_alias): Simplify.
(ipa_profile): Produce speculative calls in non-lto, too;
add simple cost model; produce local aliases.

From-SVN: r201683

11 years agoutils2.c (build_atomic_load): Do a mere view-conversion to the original type before...
Eric Botcazou [Tue, 13 Aug 2013 10:26:40 +0000 (10:26 +0000)]
utils2.c (build_atomic_load): Do a mere view-conversion to the original type before converting to the result type.

* gcc-interface/utils2.c (build_atomic_load): Do a mere view-conversion
to the original type before converting to the result type.
(build_atomic_store): First do a conversion to the original type before
view-converting to the effective type, but deal with a padded type
specially.

From-SVN: r201682

11 years agoExample of converting global state to per-pass state.
David Malcolm [Tue, 13 Aug 2013 00:45:27 +0000 (00:45 +0000)]
Example of converting global state to per-pass state.

gcc/testsuite

2013-08-13  David Malcolm  <dmalcolm@redhat.com>

Example of converting global state to per-pass state.

* gcc.dg/plugin/one_time_plugin.c (one_pass::execute): Convert
global state "static int counter" to...
(one_pass::counter): ...this instance data.

From-SVN: r201681

11 years agoone_time_plugin.c: (one_pass_gate): Convert to member function...
David Malcolm [Tue, 13 Aug 2013 00:41:39 +0000 (00:41 +0000)]
one_time_plugin.c: (one_pass_gate): Convert to member function...

gcc/testsuite

2013-08-13  David Malcolm  <dmalcolm@redhat.com>

* gcc.dg/plugin/one_time_plugin.c: (one_pass_gate): Convert
to member function...
(one_pass::gate): ...this.
(one_pass_exec): Convert to member function...
(one_pass::impl_execute): ...this.

From-SVN: r201680

11 years agot-i386 (i386.o): Rename stray PIPELINE_H to PASS_MANAGER_H
David Malcolm [Tue, 13 Aug 2013 00:29:39 +0000 (00:29 +0000)]
t-i386 (i386.o): Rename stray PIPELINE_H to PASS_MANAGER_H

2013-08-13  David Malcolm  <dmalcolm@redhat.com>

* config/i386/t-i386 (i386.o): Rename stray PIPELINE_H to
PASS_MANAGER_H

From-SVN: r201679

11 years agoDaily bump.
GCC Administrator [Tue, 13 Aug 2013 00:16:31 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201678

11 years ago* pt.c: Grammar fix in comments ("it's" to "its").
Adam Butcher [Mon, 12 Aug 2013 23:26:18 +0000 (00:26 +0100)]
* pt.c: Grammar fix in comments ("it's" to "its").

From-SVN: r201674

11 years ago* MAINTAINERS (Write After Approval): Add myself.
Adam Butcher [Mon, 12 Aug 2013 23:26:09 +0000 (00:26 +0100)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r201673

11 years agore PR c++/57416 (internal compiler error: in gimple_expand_cfg, at cfgexpand.c:4575)
Paolo Carlini [Mon, 12 Aug 2013 22:54:13 +0000 (22:54 +0000)]
re PR c++/57416 (internal compiler error: in gimple_expand_cfg, at cfgexpand.c:4575)

2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57416
* g++.dg/cpp0x/pr57416.C: New.

From-SVN: r201672

11 years agoi386.c (ix86_function_versions): Use error + inform.
Paolo Carlini [Mon, 12 Aug 2013 22:37:20 +0000 (22:37 +0000)]
i386.c (ix86_function_versions): Use error + inform.

2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

* config/i386/i386.c (ix86_function_versions): Use error + inform.

/cp
2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (warn_extern_redeclared_static, duplicate_decls,
check_elaborated_type_specifier): Use error + inform.
* friend.c (make_friend_class): Likewise.
* semantics.c (finish_id_expression): Likewise.

/testsuite
2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/constexpr-function2.C: Adjust for error -> inform
changes.
* g++.dg/cpp0x/constexpr-neg1.C: Likewise.
* g++.dg/cpp0x/defaulted2.C: Likewise.
* g++.dg/cpp0x/defaulted31.C: Likewise.
* g++.dg/cpp0x/error6.C: Likewise.
* g++.dg/cpp0x/gen-attrs-32.C: Likewise.
* g++.dg/cpp0x/override2.C: Likewise.
* g++.dg/cpp0x/parse1.C: Likewise.
* g++.dg/cpp0x/scoped_enum.C: Likewise.
* g++.dg/cpp0x/temp_default4.C: Likewise.
* g++.dg/ext/attrib32.C: Likewise.
* g++.dg/ext/gnu-inline-global-reject.C: Likewise.
* g++.dg/ext/mv13.C: Likewise.
* g++.dg/ext/mv7.C: Likewise.
* g++.dg/ext/mv9.C: Likewise.
* g++.dg/ext/pr57362.C: Likewise.
* g++.dg/ext/typeof10.C: Likewise.
* g++.dg/lookup/anon6.C: Likewise.
* g++.dg/lookup/crash6.C: Likewise.
* g++.dg/lookup/name-clash5.C: Likewise.
* g++.dg/lookup/name-clash6.C: Likewise.
* g++.dg/other/anon4.C: Likewise.
* g++.dg/other/error15.C: Likewise.
* g++.dg/other/error8.C: Likewise.
* g++.dg/other/redecl2.C: Likewise.
* g++.dg/parse/crash16.C: Likewise.
* g++.dg/parse/crash21.C: Likewise.
* g++.dg/parse/crash38.C: Likewise.
* g++.dg/parse/redef2.C: Likewise.
* g++.dg/parse/struct-as-enum1.C: Likewise.
* g++.dg/template/crash39.C: Likewise.
* g++.dg/template/redecl3.C: Likewise.
* g++.dg/tls/diag-3.C: Likewise.
* g++.dg/warn/Wredundant-decls-spec.C: Likewise.
* g++.old-deja/g++.benjamin/typedef01.C: Likewise.
* g++.old-deja/g++.benjamin/warn02.C: Likewise.
* g++.old-deja/g++.brendan/crash16.C: Likewise.
* g++.old-deja/g++.brendan/crash18.C: Likewise.
* g++.old-deja/g++.brendan/err-msg4.C: Likewise.
* g++.old-deja/g++.brendan/redecl1.C: Likewise.
* g++.old-deja/g++.brendan/static3.C: Likewise.
* g++.old-deja/g++.bugs/900127_02.C: Likewise.
* g++.old-deja/g++.jason/binding.C: Likewise.
* g++.old-deja/g++.jason/crash4.C: Likewise.
* g++.old-deja/g++.jason/crash7.C: Likewise.
* g++.old-deja/g++.jason/lineno.C: Likewise.
* g++.old-deja/g++.jason/scoping7.C: Likewise.
* g++.old-deja/g++.mike/misc3.C: Likewise.
* g++.old-deja/g++.mike/net44.C: Likewise.
* g++.old-deja/g++.mike/ns3.C: Likewise.
* g++.old-deja/g++.ns/alias4.C: Likewise.
* g++.old-deja/g++.ns/ns11.C: Likewise.
* g++.old-deja/g++.other/crash23.C: Likewise.
* g++.old-deja/g++.other/decl8.C: Likewise.
* g++.old-deja/g++.other/linkage3.C: Likewise.
* g++.old-deja/g++.other/typeck1.C: Likewise.
* g++.old-deja/g++.other/typedef5.C: Likewise.
* g++.old-deja/g++.pt/explicit34.C: Likewise.
* g++.old-deja/g++.pt/friend36.C: Likewise.
* obj-c++.dg/method-8.mm: Likewise.
* obj-c++.dg/tls/diag-3.mm: Likewise.

From-SVN: r201671

11 years agoUpdating my information in MAINTAINERS.
Caroline Tice [Mon, 12 Aug 2013 20:25:29 +0000 (13:25 -0700)]
Updating my information in MAINTAINERS.

From-SVN: r201669