platform/upstream/gcc.git
11 years agoconfig.gcc (arm*-*-*): Add aarch-common.o to extra_objs.
Sofiane Naci [Wed, 31 Jul 2013 14:32:39 +0000 (14:32 +0000)]
config.gcc (arm*-*-*): Add aarch-common.o to extra_objs.

* config.gcc (arm*-*-*): Add aarch-common.o to extra_objs.  Add
aarch-common-protos.h to extra_headers.
(arm*-*-*): Add arm/aarch-common-protos.h to tm_p_file.
* config/arm/arm.c (arm_early_load_addr_dep): Move from here to ...
(arm_early_store_addr_dep): Likewise.
(arm_no_early_alu_shift_dep: Likewise.
(arm_no_early_alu_shift_value_dep: Likewise.
(arm_no_early_mul_dep: Likewise.
(arm_no_early_store_addr_dep: Likewise.
(arm_mac_accumulator_is_mul_result: Likewise.
(arm_mac_accumulator_is_result: Likewise.
* config/arm/aarch-common.c: ... here.  New file.
* config/arm/arm-protos.h (arm_early_load_addr_dep): Move from here to ...
(arm_early_store_addr_dep): Likewise.
(arm_no_early_alu_shift_dep: Likewise.
(arm_no_early_alu_shift_value_dep: Likewise.
(arm_no_early_mul_dep: Likewise.
(arm_no_early_store_addr_dep: Likewise.
(arm_mac_accumulator_is_mul_result: Likewise.
(arm_mac_accumulator_is_result: Likewise.
* config/arm/aarch-common-protos.h: ... here.  New file.
* config/arm/t-arm (aarch-common.o): Define.

From-SVN: r201376

11 years agoarm.md: Include new file "types.md".
Sofiane Naci [Wed, 31 Jul 2013 14:29:54 +0000 (14:29 +0000)]
arm.md: Include new file "types.md".

* config/arm/arm.md: Include new file "types.md".
(define_attr "type"): Move from here to ...
(define_attr "mul32"): Likewise.
(define_attr "mul64"): Likewise.
* config/arm/types.md: ... here.  New file.

From-SVN: r201375

11 years agoconfig.gcc (*-*-rtems*): Use __cxa_atexit by default.
Sebastian Huber [Wed, 31 Jul 2013 12:58:35 +0000 (12:58 +0000)]
config.gcc (*-*-rtems*): Use __cxa_atexit by default.

2013-07-31  Sebastian Huber  <sebastian.huber@embedded-brains.de>

* config.gcc (*-*-rtems*): Use __cxa_atexit by default.
* config/rs6000/rtems.h (TARGET_LIBGCC_SDATA_SECTION): Define.

From-SVN: r201370

11 years agofunctexcept.cc: Do not include the whole <regex>.
Paolo Carlini [Wed, 31 Jul 2013 12:36:37 +0000 (12:36 +0000)]
functexcept.cc: Do not include the whole <regex>.

2013-07-31  Paolo Carlini  <paolo.carlini@oracle.com>

* src/c++11/functexcept.cc: Do not include the whole <regex>.
* src/c++11/regex.cc: Likewise.

From-SVN: r201369

11 years ago* ChangeLog: Fix my email address.
Jan-Benedict Glaw [Wed, 31 Jul 2013 09:54:43 +0000 (09:54 +0000)]
* ChangeLog: Fix my email address.

From-SVN: r201365

11 years agogen-pass-instances.awk: Fix offset of substr().
Jan-Benedict Glaw [Wed, 31 Jul 2013 09:34:04 +0000 (09:34 +0000)]
gen-pass-instances.awk: Fix offset of substr().

2013-07-31  Jan-Benedict Glaw  <jbglaw@owl.de>

* gen-pass-instances.awk: Fix offset of substr().

From-SVN: r201364

11 years agoRevert last commit.
Tim Shen [Wed, 31 Jul 2013 03:36:37 +0000 (03:36 +0000)]
Revert last commit.

From-SVN: r201360

11 years agoIntroduce gen-pass-instances.awk and pass-instances.def
David Malcolm [Wed, 31 Jul 2013 00:48:03 +0000 (00:48 +0000)]
Introduce gen-pass-instances.awk and pass-instances.def

Introduce a new gen-pass-instances.awk script, and use it at build time
to make a pass-instances.def from passes.def.

gcc/

* Makefile.in (pass-instances.def): New.
(passes.o): Replace dependency on passes.def with one on
pass-instances.def

* gen-pass-instances.awk: New.

* passes.c (pass_manager::pass_manager): Use pass-instances.def
rather than passes.def, updating local definition of NEXT_PASS
macro to add an extra NUM parameter (currently unused).

From-SVN: r201359

11 years agoThompson matcher refactored.
Tim Shen [Wed, 31 Jul 2013 00:20:06 +0000 (00:20 +0000)]
Thompson matcher refactored.

2013-07-31  Tim Shen  <timshen91@gmail.com>

Thompson matcher refactored. Fix grouping problem.
* include/bits/regex.h: Use a dispatcher _M_get_matcher().
* include/bits/regex_compiler.h: Tweak for auto switching.
* include/bits/regex_grep_matcher.h: Class structure.
* include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
matcher) refactoring.
* include/bits/regex_nfa.h: Change _Results's interfaces.
* include/std/regex: Includes <map> and <queue>.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/
string_dispatch_01.cc: New.

From-SVN: r201358

11 years agoDaily bump.
GCC Administrator [Wed, 31 Jul 2013 00:16:43 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201357

11 years agore PR c++/57673 (pack sizeof ... groups ellipsis with preceding expression)
Paolo Carlini [Tue, 30 Jul 2013 22:38:52 +0000 (22:38 +0000)]
re PR c++/57673 (pack sizeof ... groups ellipsis with preceding expression)

/cp
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57673
* parser.c (cp_parser_cache_defarg): In an NSDMI don't stop when
token->type == CPP_ELLIPSIS.

/testsuite
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57673
* g++.dg/cpp0x/nsdmi-sizeof.C: New.

From-SVN: r201354

11 years agocode-readable-1.c: Increase switch size.
Steve Ellcey [Tue, 30 Jul 2013 20:32:43 +0000 (20:32 +0000)]
code-readable-1.c: Increase switch size.

2013-07-30  Steve Ellcey  <sellcey@mips.com>

* gcc.target/mips/code-readable-1.c: Increase switch size.
* gcc.target/mips/code-readable-2.c: Ditto.
* gcc.target/mips/code-readable-3.c: Ditto.
* gcc.target/mips/code-readable-4.c: Ditto.

From-SVN: r201353

11 years agoIntroduce beginnings of a pass_manager class.
David Malcolm [Tue, 30 Jul 2013 18:52:03 +0000 (18:52 +0000)]
Introduce beginnings of a pass_manager class.

This patch introduces a gcc::pass_manager class and moves various non-GTY
globals relating to pass management into it.  The gcc::context gains its
first field: a pointer to the gcc::pass_manager instance.

gcc/
* Makefile.in (PASS_MANAGER_H): New.
(lto-cgraph.o): Depend on CONTEXT_H and PASS_MANAGER_H.
(passes.o): Likewise.
(statistics.o): Likewise.
(cgraphunit.o): Likewise.
(context.o): Depend on PASS_MANAGER_H.

* pass_manager.h: New.

* cgraphunit.c (cgraph_add_new_function): Update for moves
of globals to fields of pass_manager.
(analyze_function): Likewise.
(expand_function): Likewise.
(ipa_passes): Likewise.
(compile): Likewise.

* context.c (context::context): New.
* context.h  (context::context): New.
(context::get_passes): New.
(context::passes_): New.

* lto-cgraph.c (input_node): Update for moves of globals to
fields of pass_manager.

* passes.c (all_passes): Remove, in favor of a field of the
same name within the new class pass_manager.
(all_small_ipa_passes): Likewise.
(all_lowering_passes): Likewise.
(all_regular_ipa_passes): Likewise.
(all_late_ipa_passes): Likewise.
(all_lto_gen_passes): Likewise.
(passes_by_id): Likewise.
(passes_by_id_size): Likewise.
(gcc_pass_lists): Remove, in favor of "pass_lists" field within
the new class pass_manager.
(set_pass_for_id): Convert to...
(pass_manager::set_pass_for_id): ...method.
(get_pass_for_id): Convert to...
(pass_manager::get_pass_for_id): ...method.
(register_one_dump_file): Move body of implementation into...
(pass_manager::register_one_dump_file): ...here.
(register_dump_files_1): Convert to...
(pass_manager::register_dump_files_1): ...method.
(register_dump_files): Convert to...
(pass_manager::register_dump_files): ...method.
(create_pass_tab): Update for moves of globals to fields of
pass_manager.
(dump_passes): Move body of implementation into...
(pass_manager::dump_passes): ...here.
(register_pass): Move body of implementation into...
(pass_manager::register_pass): ...here.
(init_optimization_passes): Convert into...
(pass_manager::pass_manager): ...constructor for new
pass_manager class, and initialize the pass_lists array.
(check_profile_consistency): Update for moves of globals to
fields of pass_manager.
(dump_profile_report): Move body of implementation into...
(pass_manager::dump_profile_report): ...here.
(ipa_write_summaries_1): Update for moves of pass lists from
being globals to fields of pass_manager.
(ipa_write_optimization_summaries): Likewise.
(ipa_read_summaries):  Likewise.
(ipa_read_optimization_summaries): Likewise.
(execute_all_ipa_stmt_fixups): Likewise.

* statistics.c (statistics_fini): Update for moves of globals to
fields of pass_manager.

* toplev.c (general_init): Replace call to
init_optimization_passes with construction of the pass_manager
instance.

* tree-pass.h (all_passes): Remove, in favor of a field of the
same name within the new class pass_manager.
(all_small_ipa_passes): Likewise.
(all_lowering_passes): Likewise.
(all_regular_ipa_passes): Likewise.
(all_lto_gen_passes): Likewise.
(all_late_ipa_passes): Likewise.
(passes_by_id): Likewise.
(passes_by_id_size): Likewise.
(gcc_pass_lists): Remove, in favor of "pass_lists" field within
the new class pass_manager.
(get_pass_for_id): Remove.

gcc/lto/

* Make-lang.in (lto/lto.o:): Depend on CONTEXT_H and
PASS_MANAGER_H.

* lto.c (do_whole_program_analysis): Update for move of
all_regular_ipa_passes from a global to a field of class
pass_manager.

From-SVN: r201351

11 years agomips16.S (DELAYf): Alias to DELAYt for the MIPS IV ISA and up.
Maciej W. Rozycki [Tue, 30 Jul 2013 18:34:43 +0000 (18:34 +0000)]
mips16.S (DELAYf): Alias to DELAYt for the MIPS IV ISA and up.

* config/mips/mips16.S (DELAYf): Alias to DELAYt for the MIPS IV
ISA and up.

From-SVN: r201350

11 years ago2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Tue, 30 Jul 2013 18:16:33 +0000 (18:16 +0000)]
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

Revert last commit.

From-SVN: r201349

11 years ago2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Tue, 30 Jul 2013 18:13:15 +0000 (18:13 +0000)]
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

Revert last commit.

From-SVN: r201348

11 years agore PR c++/57947 (internal compiler error: Segmentation fault using extended initializ...
Paolo Carlini [Tue, 30 Jul 2013 16:48:52 +0000 (16:48 +0000)]
re PR c++/57947 (internal compiler error: Segmentation fault using extended initializer lists without -std=c++11 or -std=gnu++11)

/cp
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57947
* call.c (is_std_init_list): Return false if cxx_dialect == cxx98.

/testsuite
2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57947
* g++.dg/parse/crash63.C: New.

From-SVN: r201344

11 years agoconfig.gcc (arm): Require 64-bit host-wide-int for all ARM target configs.
Richard Earnshaw [Tue, 30 Jul 2013 15:58:32 +0000 (15:58 +0000)]
config.gcc (arm): Require 64-bit host-wide-int for all ARM target configs.

* config.gcc (arm): Require 64-bit host-wide-int for all ARM target
configs.

From-SVN: r201342

11 years ago* arm.md (mulhi3): New expand pattern.
Richard Earnshaw [Tue, 30 Jul 2013 15:54:30 +0000 (15:54 +0000)]
* arm.md (mulhi3): New expand pattern.

From-SVN: r201341

11 years agore PR c++/57901 (Cannot call-by-value such that class has non-trivial (constexpr...
Jason Merrill [Tue, 30 Jul 2013 13:28:31 +0000 (09:28 -0400)]
re PR c++/57901 (Cannot call-by-value such that class has non-trivial (constexpr) move constructor)

PR c++/57901
* semantics.c (build_data_member_initialization, constexpr_fn_retval):
Use break_out_target_exprs instead of unshare_expr.

From-SVN: r201338

11 years agore PR c++/58022 (Compiler rejects abstract class in template class with friend operat...
Jason Merrill [Tue, 30 Jul 2013 13:28:23 +0000 (09:28 -0400)]
re PR c++/58022 (Compiler rejects abstract class in template class with friend operator<<)

PR c++/58022
* g++.dg/template/abstract1.C: New.

From-SVN: r201337

11 years agoThompson matcher refactored.
Tim Shen [Tue, 30 Jul 2013 12:02:55 +0000 (12:02 +0000)]
Thompson matcher refactored.

2013-07-30  Tim Shen  <timshen91@gmail.com>

Thompson matcher refactored. Fix grouping problem.
* include/bits/regex.h: Use a dispatcher _M_get_matcher().
* include/bits/regex_compiler.h: Tweak for auto switching.
* include/bits/regex_grep_matcher.h: Class structure.
* include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
matcher) refactoring.
* include/bits/regex_nfa.h: Change _Results's interfaces.
* include/std/regex: Includes <map> and <queue>.
* testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
For both matchers.
* testsuite/28_regex/algorithms/regex_match/extended/string_dispatch_01.cc:
New.

From-SVN: r201334

11 years agoprofile.c (compute_value_histograms): Do not ICE when there is mismatch only on some...
Jan Hubicka [Tue, 30 Jul 2013 12:00:42 +0000 (14:00 +0200)]
profile.c (compute_value_histograms): Do not ICE when there is mismatch only on some counters.

* profile.c (compute_value_histograms): Do not ICE when
there is mismatch only on some counters.

Co-Authored-By: Martin Liska <marxin.liska@gmail.com>
From-SVN: r201333

11 years agore PR fortran/57530 ([OOP] Wrongly rejects type_pointer => class_target (which have...
Tobias Burnus [Tue, 30 Jul 2013 07:20:43 +0000 (09:20 +0200)]
re PR fortran/57530 ([OOP] Wrongly rejects  type_pointer => class_target (which have identical declared type))

2013-07-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57530
        * symbol.c (gfc_type_compatible): A type is type compatible with
        a class if both have the same declared type.
        * interface.c (compare_type): Reject CLASS/TYPE even if they
        are type compatible.

From-SVN: r201329

11 years agore PR fortran/57530 ([OOP] Wrongly rejects type_pointer => class_target (which have...
Tobias Burnus [Tue, 30 Jul 2013 07:18:54 +0000 (09:18 +0200)]
re PR fortran/57530 ([OOP] Wrongly rejects  type_pointer => class_target (which have identical declared type))

2013-07-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57530
        * trans-expr.c (gfc_trans_class_assign): Handle CLASS array
        functions.
        (gfc_trans_pointer_assign): Ditto and support pointer assignment
        of a polymorphic var to a nonpolymorphic var.

2013-07-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57530
        * gfortran.dg/pointer_assign_8.f90: New.
        * gfortran.dg/pointer_assign_9.f90: New.
        * gfortran.dg/pointer_assign_10.f90: New.
        * gfortran.dg/pointer_assign_11.f90: New.

From-SVN: r201328

11 years agore PR rtl-optimization/57637 (Miscompare on 178.galgel in SPEC2000 on arm)
Zhenqiang Chen [Tue, 30 Jul 2013 06:53:31 +0000 (06:53 +0000)]
re PR rtl-optimization/57637 (Miscompare on 178.galgel in SPEC2000 on arm)

gcc/
2013-07-30  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

PR rtl-optimization/57637
* function.c (move_insn_for_shrink_wrap): Also check the
GEN set of the LIVE problem for the liveness analysis
if it exists, otherwise give up.

gcc/testsuite/
2013-07-30  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

* gcc.target/arm/pr57637.c: New testcase.

From-SVN: r201326

11 years agore PR tree-optimization/57993 (ICE: verify_ssa failed (definition in block n does...
Bill Schmidt [Tue, 30 Jul 2013 01:01:35 +0000 (01:01 +0000)]
re PR tree-optimization/57993 (ICE: verify_ssa failed (definition in block n does not dominate use in block m))

gcc:

2013-07-29  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

PR tree-optimization/57993
* gimple-ssa-strength-reduction.c (replace_mult_candidate): Record
replaced statement in the candidate table.
(phi_add_costs): Return infinite cost when the hidden basis does
not dominate all phis on which the candidate is dependent.
(replace_one_candidate): Record replaced statement in the
candidate table.

gcc/testsuite:

2013-07-29  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

PR tree-optimization/57993
* gcc.dg/torture/pr57993.c: New test.

From-SVN: r201325

11 years agoDaily bump.
GCC Administrator [Tue, 30 Jul 2013 00:16:25 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201324

11 years agore PR rtl-optimization/58021 (MODE_EXIT switches at NOTE_INSN_DELETED)
Joern Rennecke [Mon, 29 Jul 2013 22:45:38 +0000 (22:45 +0000)]
re PR rtl-optimization/58021 (MODE_EXIT switches at NOTE_INSN_DELETED)

        PR rtl-optimization/58021
        * mode-switching.c (create_pre_exit): Always split off preceding
        insns if we are not at the basic block head.

From-SVN: r201321

11 years ago* gcc.dg/tree-ssa/pr44258.c: Disable scan test for Epiphany.
Joern Rennecke [Mon, 29 Jul 2013 20:46:29 +0000 (20:46 +0000)]
* gcc.dg/tree-ssa/pr44258.c: Disable scan test for Epiphany.

From-SVN: r201320

11 years agoepiphany.md (*isub_i+2): New peephole.
Joern Rennecke [Mon, 29 Jul 2013 20:34:29 +0000 (20:34 +0000)]
epiphany.md (*isub_i+2): New peephole.

* config/epiphany/epiphany.md (*isub_i+2): New peephole.
(ashlv2si3): New expander.
(*ashlv2si3_i): New define_insn_and_split.
* predicates.md (float_operation): Allow patterns with three
basic sub-patterns.

From-SVN: r201319

11 years agore PR c++/57948 (internal compiler error: in initialize_reference, at cp/call.c:9285)
Paolo Carlini [Mon, 29 Jul 2013 20:12:20 +0000 (20:12 +0000)]
re PR c++/57948 (internal compiler error: in initialize_reference, at cp/call.c:9285)

/cp
2013-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57948
* call.c (initialize_reference): Don't crash when reference_binding
returns a conv with conv->kind == ck_ambig.

/testsuite
2013-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57948
* g++.dg/conversion/ambig2.C: New.

From-SVN: r201318

11 years agomangle.c (write_name): Check for null context.
Jason Merrill [Mon, 29 Jul 2013 19:40:13 +0000 (15:40 -0400)]
mangle.c (write_name): Check for null context.

* mangle.c (write_name): Check for null context.
(write_unscoped_name): Allow PARM_DECL context.

From-SVN: r201317

11 years agomatch.c (gfc_match_call): Exit loop after setting i.
Po-Chun Chang [Mon, 29 Jul 2013 19:08:03 +0000 (13:08 -0600)]
match.c (gfc_match_call): Exit loop after setting i.

       * match.c (gfc_match_call): Exit loop after setting i.

        * resolve.c (resolve_variable): Exit loop after setting seen.

        * expr.c (gfc_check_pointer_assign): Exit loop after setting
        * warn.

        * trans-array.c (set_loop_bounds): Exit loop after setting
        nonoptional_arr.

        * trans-io.c (gfc_trans_transfer): Exit loop after setting
        * seen_vector.

From-SVN: r201316

11 years agoatomic (compare_exchange_weak, [...]): Add call to __cmpexch_failure_order.
Nathan Froyd [Mon, 29 Jul 2013 17:13:05 +0000 (17:13 +0000)]
atomic (compare_exchange_weak, [...]): Add call to __cmpexch_failure_order.

libstdc++-v3/
* include/std/atomic (compare_exchange_weak, compare_exchange_strong):
Add call to __cmpexch_failure_order.
* testsuite/util/testsuite_common_types.h
(compare_exchange_order_lowering): New generator.
* testsuite/29_atomics/atomic/requirements/compare_exchange_lowering.cc:
New test.

From-SVN: r201315

11 years agolinux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.
Maciej W. Rozycki [Mon, 29 Jul 2013 14:37:30 +0000 (14:37 +0000)]
linux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.

gcc/
* config/mips/linux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.
(UCLIBC_DYNAMIC_LINKER): New macro.
* config/mips/linux64.h (GLIBC_DYNAMIC_LINKER32): Handle
`-mnan=2008'.
(GLIBC_DYNAMIC_LINKER64, GLIBC_DYNAMIC_LINKERN32): Likewise.
(UCLIBC_DYNAMIC_LINKER32): Undefine macro first.  Handle
`-mnan=2008'.
(UCLIBC_DYNAMIC_LINKER64): Redefine macro.
(UCLIBC_DYNAMIC_LINKERN32): Likewise.
* config/mips/mips-modes.def: Remove RESET_FLOAT_FORMAT calls
for SF and DF modes.  Use ieee_quad_format for TF mode.
* config/mips/mips-opts.h (mips_ieee_754_setting): New enum.
* config/mips/mips.c (mips_file_start): Output a `.nan' directive.
(mips_option_override): Handle `-mnan=legacy'.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Handle
`-mabs=2008' and `-mnan=2008'.
(OPTION_DEFAULT_SPECS): Add "nan" default.
(ASM_SPEC): Handle `-mnan='.
[!HAVE_AS_NAN] (HAVE_AS_NAN): New macro.
* config/mips/mips.md (abs<mode>2): Handle `-mabs=2008', update
comment accordingly.
(neg<mode>2): Likewise.
* config/mips/mips.opt (mabs, mnan): New options.
* doc/install.texi (Configuration): Document `--with-nan=' option.
* doc/invoke.texi (Option Summary): List MIPS `-mabs=' and
`-mnan=' options.
(MIPS Options): Document them.
* config.gcc <mips*-*-*>: Handle `--with-nan='.
* configure.ac <mips*-*-*>: Check for GAS `-mnan=2008' support.
* configure: Regenerate.
* config.in: Regenerate.

gcc/testsuite/
* gcc.target/mips/fabs-2008.c: New test case.
* gcc.target/mips/fabs-legacy.c: New test case.
* gcc.target/mips/fabsf-2008.c: New test case.
* gcc.target/mips/fabsf-legacy.c: New test case.
* gcc.target/mips/fneg-2008.c: New test case.
* gcc.target/mips/fneg-legacy.c: New test case.
* gcc.target/mips/fneg-2008.c: New test case.
* gcc.target/mips/fneg-legacy.c: New test case.
* gcc.target/mips/nan-2008.c: New test case.
* gcc.target/mips/nan-legacy.c: New test case.
* gcc.target/mips/nanf-2008.c: New test case.
* gcc.target/mips/nanf-legacy.c: New test case.
* gcc.target/mips/nans-2008.c: New test case.
* gcc.target/mips/nans-legacy.c: New test case.
* gcc.target/mips/nansf-2008.c: New test case.
* gcc.target/mips/nansf-legacy.c: New test case.
* gcc.target/mips/mips.exp: Handle `-mabs=' and `-mnan='.

From-SVN: r201313

11 years agore PR target/57954 (AVX missing vxorps (zeroing) before vcvtsi2s %edx, slow down...
Uros Bizjak [Mon, 29 Jul 2013 11:17:51 +0000 (13:17 +0200)]
re PR target/57954 (AVX missing vxorps (zeroing) before vcvtsi2s %edx, slow down AVX code)

2013-07-29  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.md (float post-reload splitters): Do not check
for subregs of SSE registers.

2013-07-29  Uros Bizjak  <ubizjak@gmail.com>
    H.J. Lu  <hongjiu.lu@intel.com>

PR target/57954
PR target/57988
* config/i386/i386.md (post-reload splitter
to avoid partial SSE reg dependency stalls): New pattern.

From-SVN: r201308

11 years agoFix incorrect changelog entry.
Ramana Radhakrishnan [Mon, 29 Jul 2013 10:36:11 +0000 (10:36 +0000)]
Fix incorrect changelog entry.

From-SVN: r201307

11 years ago2013-07-29 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Andreas Krebbel [Mon, 29 Jul 2013 08:03:38 +0000 (08:03 +0000)]
2013-07-29  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/target.h (htm_begin, htm_commit, htm_abort)
(htm_transaction_active): Enable zEC12 instructions in the
assembler.
* configure.tgt: Remove -Wa,-march=zEC12 from XCFLAGS.

From-SVN: r201301

11 years agos390.md ("movcc"): Swap load and store instructions.
Dominik Vogt [Mon, 29 Jul 2013 08:02:21 +0000 (08:02 +0000)]
s390.md ("movcc"): Swap load and store instructions.

2013-07-29  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* config/s390/s390.md ("movcc"): Swap load and store instructions.

From-SVN: r201300

11 years agotarget-supports.exp (check_effective_target_non_bionic): New effective-target test.
Alexander Ivchenko [Mon, 29 Jul 2013 06:05:34 +0000 (06:05 +0000)]
target-supports.exp (check_effective_target_non_bionic): New effective-target test.

        * lib/target-supports.exp (check_effective_target_non_bionic): New
        effective-target test.
        * g++.dg/tls/thread_local4.C: Disable test for Bionic.
        * g++.dg/tls/thread_local4g.C: Ditto.

Co-Authored-By: Maxim Kuvyrkov <maxim@kugelworks.com>
From-SVN: r201298

11 years agoDaily bump.
GCC Administrator [Mon, 29 Jul 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201297

11 years agore PR fortran/58009 (Elements with same value in vector subscript in variable definit...
Thomas Koenig [Sun, 28 Jul 2013 21:10:23 +0000 (21:10 +0000)]
re PR fortran/58009 (Elements with same value in vector subscript in variable definition context)

2013-07-28  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/58009
* expr.c (gfc_check_vardef_context):  Check for same values in
vector expression subscripts.

2013-07-28  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/58009
* gfortran.dg/vector_subsript_7.f90:  New test.

From-SVN: r201294

11 years agoFix incorrect ChangeLog entry.
Tim Shen [Sun, 28 Jul 2013 10:23:43 +0000 (10:23 +0000)]
Fix incorrect ChangeLog entry.

From-SVN: r201292

11 years agoDaily bump.
GCC Administrator [Sun, 28 Jul 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201290

11 years agoepiphany.c (epiphany_compute_frame_size): Also reserve space for saving UNKNOWN_REGNU...
Joern Rennecke [Sat, 27 Jul 2013 18:41:49 +0000 (18:41 +0000)]
epiphany.c (epiphany_compute_frame_size): Also reserve space for saving UNKNOWN_REGNUM for leaf functions.

        * config/epiphany/epiphany.c (epiphany_compute_frame_size):
        Also reserve space for saving UNKNOWN_REGNUM for leaf functions.

From-SVN: r201287

11 years agore PR fortran/57991 (Enhance "Same actual argument associated" warning (-Waliasing))
Tobias Burnus [Sat, 27 Jul 2013 14:17:01 +0000 (16:17 +0200)]
re PR fortran/57991 (Enhance "Same actual argument associated" warning (-Waliasing))

2013-07-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57991
        * interface.c (check_some_aliasing): Also warn for intent
        * OUT/OUT.

2013-07-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57991
        * gfortran.dg/warn_alias.f90: New.

From-SVN: r201286

11 years agore PR fortran/57285 ([OOP] ICE on invalid: "gfc_array_dimen_size(): Bad dimension...
Janus Weil [Sat, 27 Jul 2013 12:55:59 +0000 (14:55 +0200)]
re PR fortran/57285 ([OOP] ICE on invalid: "gfc_array_dimen_size(): Bad dimension" due to SIZE intrinsic with invalid dim on CLASS dummy)

2013-07-27  Janus Weil  <janus@gcc.gnu.org>

PR fortran/57285
* check.c (dim_rank_check): Re-enable this check for CLASS arrays.

2013-07-27  Janus Weil  <janus@gcc.gnu.org>

PR fortran/57285
* gfortran.dg/class_array_19.f90: New.

From-SVN: r201284

11 years agopr57705.c: Adjust for a !vect_pack_trunc target.
Eric Botcazou [Sat, 27 Jul 2013 06:38:12 +0000 (06:38 +0000)]
pr57705.c: Adjust for a !vect_pack_trunc target.

* gcc.dg/vect/pr57705.c: Adjust for a !vect_pack_trunc target.
* gcc.dg/vect/pr57741-2.c: Require a vect_float target.
* gcc.dg/vect/pr57741-3.c: Likewise.
* gcc.dg/vect/bb-slp-32.c: XFAIL for a vect_no_align target.

From-SVN: r201282

11 years agoDaily bump.
GCC Administrator [Sat, 27 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201279

11 years agodwarf2out.c (die_checksum_ordered): Don't include template instantiations in signature.
Cary Coutant [Fri, 26 Jul 2013 20:14:43 +0000 (20:14 +0000)]
dwarf2out.c (die_checksum_ordered): Don't include template instantiations in signature.

gcc/
* dwarf2out.c (die_checksum_ordered): Don't include template
instantiations in signature.
(is_template_parameter): New function.
(is_template_instantiation): New function.
(generate_skeleton_bottom_up): Don't include template instantiations
in type unit DIE.
(generate_skeleton): Likewise.
(break_out_comdat_types): Move recursive call to break out nested
types earlier.
(prune_unused_types_mark_generic_parms_dies): Call
is_template_parameter.

From-SVN: r201275

11 years agoCorrect ChangeLog entry
William Schmidt [Fri, 26 Jul 2013 19:38:14 +0000 (19:38 +0000)]
Correct ChangeLog entry

From-SVN: r201274

11 years agopr37868.c: Disable for epiphany.
Joern Rennecke [Fri, 26 Jul 2013 18:35:29 +0000 (18:35 +0000)]
pr37868.c: Disable for epiphany.

* gcc.dg/torture/pr37868.c: Disable for epiphany.
* gcc.dg/sibcall-6.c: Enable for epiphany.

From-SVN: r201272

11 years agopr27095.c: For Epiphany, add -mshort-calls.
Joern Rennecke [Fri, 26 Jul 2013 18:28:27 +0000 (18:28 +0000)]
pr27095.c: For Epiphany, add -mshort-calls.

* gcc.dg/pr27095.c: For Epiphany, add -mshort-calls.
* gcc.dg/tree-ssa/loop-1.c: Likewise.

From-SVN: r201271

11 years ago* gcc.c-torture/execute/builtins/stpcpy-chk.x: New file.
Joern Rennecke [Fri, 26 Jul 2013 18:16:23 +0000 (18:16 +0000)]
* gcc.c-torture/execute/builtins/stpcpy-chk.x: New file.

From-SVN: r201270

11 years agoSkip tests that make assumptions about struct layout that don't hold on epiphany.
Joern Rennecke [Fri, 26 Jul 2013 15:22:43 +0000 (15:22 +0000)]
Skip tests that make assumptions about struct layout that don't hold on epiphany.

        Skip tests that make assumptions about struct layout that don't hold
        on epiphany.  These tests could be fixed by adding padded attributes,
        See:
        http://gcc.gnu.org/ml/gcc-patches/2011-08/msg00006.html
        http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01513.html
        http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01504.html

        * g++.dg/cpp0x/cast.C: Skip for epiphany-*-*.
        * g++.dg/cpp0x/iop.C: Likewise.
        * g++.dg/cpp0x/named_refs.C: Likewise.
        * g++.dg/cpp0x/rv1p.C: Likewise.
        * g++.dg/cpp0x/rv2p.C: Likewise.
        * g++.dg/cpp0x/rv3p.C: Likewise.
        * g++.dg/cpp0x/rv4p.C: Likewise.
        * g++.dg/cpp0x/rv5p.C: Likewise.
        * g++.dg/cpp0x/rv6p.C: Likewise.
        * g++.dg/cpp0x/rv7p.C: Likewise.
        * g++.dg/cpp0x/rv8p.C: Likewise.
        * g++.dg/ext/strncpy-chk1.C: Likewise.
        * gcc.dg/builtin-object-size-10.c: Likewise.
        * gcc.dg/builtin-object-size-11.c: Likewise.
        * gcc.dg/builtin-stringop-chk-1.c: Likewise.
        * gcc.dg/pr25805.c: Likewise.
        * gcc.c-torture/execute/builtins/memcpy-chk.x: New file.
        * gcc.c-torture/execute/builtins/memmove-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/mempcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/memset-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/snprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/sprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/stpcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strcat-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strncat-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strncpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/vsnprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/vsprintf-chk.x: Likewise.
        * gcc.c-torture/execute/zerolen-2.x: Likewise.

From-SVN: r201268

11 years agominmax_minus.c: Scan
Kyrylo Tkachov [Fri, 26 Jul 2013 14:54:06 +0000 (14:54 +0000)]
minmax_minus.c: Scan

gcc/testsuite/
* gcc.target/arm/minmax_minus.c: Scan

From-SVN: r201267

11 years ago* gcc.dg/guality/guality.exp: Skip on AIX.
David Edelsohn [Fri, 26 Jul 2013 11:50:39 +0000 (11:50 +0000)]
* gcc.dg/guality/guality.exp: Skip on AIX.

From-SVN: r201266

11 years agoppc-vector-memcpy.c: Test use of VMX for memcpy not initializers.
David Edelsohn [Fri, 26 Jul 2013 11:49:12 +0000 (11:49 +0000)]
ppc-vector-memcpy.c: Test use of VMX for memcpy not initializers.

* gcc.target/powerpc/ppc-vector-memcpy.c: Test use of VMX for memcpy
not initializers.

From-SVN: r201265

11 years agoAArch64 support for NEG in vector registers for DI and SI mode (part 2)
Ian Bolton [Fri, 26 Jul 2013 10:54:59 +0000 (10:54 +0000)]
AArch64 support for NEG in vector registers for DI and SI mode (part 2)

From-SVN: r201263

11 years agore PR c++/57101 (-fcompare-debug failure with <type error>)
Paolo Carlini [Fri, 26 Jul 2013 10:38:40 +0000 (10:38 +0000)]
re PR c++/57101 (-fcompare-debug failure with <type error>)

2013-07-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57101
* g++.dg/cpp0x/pr57101.C: New.

From-SVN: r201262

11 years agoAArch64 support for NEG in vector registers for DI and SI mode
Ian Bolton [Fri, 26 Jul 2013 10:30:20 +0000 (10:30 +0000)]
AArch64 support for NEG in vector registers for DI and SI mode

From-SVN: r201261

11 years agocombine.c (simplify_comparison): Re-canonicalize operands where appropriate.
Kyrylo Tkachov [Fri, 26 Jul 2013 08:22:25 +0000 (08:22 +0000)]
combine.c (simplify_comparison): Re-canonicalize operands where appropriate.

2013-07-26  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
            Richard Earnshaw  <richard.earnshaw@arm.com>

* combine.c (simplify_comparison): Re-canonicalize operands
where appropriate.
* config/arm/arm.md (movcond_addsi): New splitter.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r201260

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

From-SVN: r201259

11 years agodwarf2out.c (size_of_pubnames): Move code to...
Sterling Augustine [Thu, 25 Jul 2013 22:18:21 +0000 (22:18 +0000)]
dwarf2out.c (size_of_pubnames): Move code to...

2013-07-25  Sterling Augustine  <saugustine@google.com>

* dwarf2out.c (size_of_pubnames): Move code to...
(include_pubname_in_output): ...here.  New.
(want_pubnames): Rearrange.
(output_pubnames): Call include_pubname_in_output.  Move assertion.

From-SVN: r201255

11 years agore PR fortran/57966 ([OOP] Using a TBP to specify the shape of a dummy argument)
Janus Weil [Thu, 25 Jul 2013 21:41:22 +0000 (23:41 +0200)]
re PR fortran/57966 ([OOP] Using a TBP to specify the shape of a dummy argument)

2013-07-25  Janus Weil  <janus@gcc.gnu.org>

PR fortran/57966
* resolve.c (resolve_typebound_function): Make sure the declared type,
including its type-bound procedures, is resolved before resolving the
actual type-bound call.

2013-07-25  Janus Weil  <janus@gcc.gnu.org>

PR fortran/57966
* gfortran.dg/typebound_call_25.f90: New.

From-SVN: r201254

11 years agocomplex (pow(const complex<>&, int)): Enable in C++11 mode too.
Paolo Carlini [Thu, 25 Jul 2013 21:24:07 +0000 (21:24 +0000)]
complex (pow(const complex<>&, int)): Enable in C++11 mode too.

2013-07-25  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/complex (pow(const complex<>&, int)): Enable in
C++11 mode too.
* testsuite/26_numerics/complex/dr844.cc: Adjust.
* doc/xml/manual/intro.xml: Update.

From-SVN: r201253

11 years agore PR target/38836 (Documentation for x86 builtins is outdated)
Cameron McInally [Thu, 25 Jul 2013 20:47:16 +0000 (22:47 +0200)]
re PR target/38836 (Documentation for x86 builtins is outdated)

2013-07-25  Cameron McInally  <cameron.mcinally@nyu.edu>

* doc/extend.texi: Fix return types for __builtin_ia32_cmp*s builtins.

2013-07-25  Cameron McInally  <cameron.mcinally@nyu.edu>

PR target/38836
* doc/extend.texi: Remove obsolete builtins. Fix
typo for __builtin_ia32_loadss and __builtin_ia32_cmpnltss.

From-SVN: r201252

11 years agocgraph.c (release_function_body): Break out from ...
Jan Hubicka [Thu, 25 Jul 2013 17:10:21 +0000 (19:10 +0200)]
cgraph.c (release_function_body): Break out from ...

* cgraph.c (release_function_body): Break out from ...
(cgraph_release_function_body): ... this one; also release DECL_RESULT
and DECL_ARGUMENTS.
* ipa-cp.c (get_replacement_map): Add parm_num argument; do not set
old_tree in the map.
(create_specialized_node): Update.
* lto-cgraph.c (output_node_opt_summary): Do not translate old_tree
into index.
* cgraphclones.c (cgraph_create_virtual_clone): Do not copy DECL_ARGUMENTS,
DECL_INITIAL and DECL_RESULT.
* ipa-prop.c (ipa_populate_param_decls): Look for origin of clones.
* tree-inline.c (initialize_cfun): Initialize DECL_ARGUMENTS and
DECL_RESULT.

From-SVN: r201251

11 years agoarm.md (arm_addsi3, [...]): Correct output template.
Kyrylo Tkachov [Thu, 25 Jul 2013 16:33:27 +0000 (16:33 +0000)]
arm.md (arm_addsi3, [...]): Correct output template.

2013-07-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.md (arm_addsi3, addsi3_carryin_<optab>,
addsi3_carryin_alt2_<optab>): Correct output template.

From-SVN: r201250

11 years agoarm-fixed.md (ssmulsa3, usmulusa3): Adjust for arm_restrict_it.
Kyrylo Tkachov [Thu, 25 Jul 2013 16:31:51 +0000 (16:31 +0000)]
arm-fixed.md (ssmulsa3, usmulusa3): Adjust for arm_restrict_it.

2013-07-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm-fixed.md (ssmulsa3, usmulusa3):
Adjust for arm_restrict_it.
Remove trailing whitespace.

From-SVN: r201249

11 years agopa.c (pa_trampoline_init): Emit __enable_execute_stack libcall if HAVE_ENABLE_EXECUTE...
Mark Kettenis [Thu, 25 Jul 2013 15:53:51 +0000 (15:53 +0000)]
pa.c (pa_trampoline_init): Emit __enable_execute_stack libcall if HAVE_ENABLE_EXECUTE_STACK is defined.

* config/pa/pa.c (pa_trampoline_init): Emit __enable_execute_stack
libcall if HAVE_ENABLE_EXECUTE_STACK is defined.

From-SVN: r201248

11 years agoconfig.gcc (hppa-*-openbsd*): Don't set tmake_file.
Mark Kettenis [Thu, 25 Jul 2013 15:26:31 +0000 (15:26 +0000)]
config.gcc (hppa-*-openbsd*): Don't set tmake_file.

* config.gcc (hppa-*-openbsd*): Don't set tmake_file.

From-SVN: r201247

11 years agore PR c++/57981 (ICE in this code)
Paolo Carlini [Thu, 25 Jul 2013 15:04:03 +0000 (15:04 +0000)]
re PR c++/57981 (ICE in this code)

/cp
2013-07-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57981
* decl.c (check_default_argument): Take a tsubst_flags_t parameter.
(grokparms): Adjust.
* parser.c (cp_parser_late_parse_one_default_arg): Likewise.
* pt.c (tsubst_default_argument, tsubst_default_arguments): Take
a tsubst_flags_t parameter.
(tsubst_decl): Adjust.
* call.c (convert_default_arg): Likewise.
* cp-tree.h (check_default_argument, tsubst_default_argument):
Update declarations.

/testsuite
2013-07-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57981
* g++.dg/cpp0x/pr57981.C: New.

/cp
2013-07-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57880
* parser.c (cp_parser_operator, case CPP_WSTRING, CPP_STRING16,
CPP_STRING32, CPP_UTF8STRING, CPP_WSTRING_USERDEF,
CPP_STRING16_USERDEF, CPP_STRING32_USERDEF, CPP_UTF8STRING_USERDEF):
Fix string_len management, tidy.

/testsuite
2013-07-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57880
* g++.dg/cpp1y/udlit-empty-string-neg.C: New.

From-SVN: r201245

11 years agoAdd documents and comments.
Tim Shen [Thu, 25 Jul 2013 14:59:43 +0000 (14:59 +0000)]
Add documents and comments.

2013-07-25  Tim Shen  <timshen91@gmail.com>

Add documents and comments.
* include/bits/regex.h: Documents and comments.
* include/bits/regex_grep_matcher.h: Likewise.
* include/bits/regex_grep_matcher.tcc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/char/string_position_01.cc:
New.

From-SVN: r201244

11 years agore PR rtl-optimization/57960 (S/390: LRA ICE building glibc)
Vladimir Makarov [Thu, 25 Jul 2013 14:58:21 +0000 (14:58 +0000)]
re PR rtl-optimization/57960 (S/390: LRA ICE building glibc)

2013-07-25  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/57960
* lra-constraints.c (process_alt_operands): Use the right mode
when checking strict_low.

2013-07-25  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/57960
* gcc.target/s390/pr57960.c: New.

From-SVN: r201243

11 years agolto-symtab.c (lto_cgraph_replace_node): Release function body.
Jan Hubicka [Thu, 25 Jul 2013 13:24:58 +0000 (15:24 +0200)]
lto-symtab.c (lto_cgraph_replace_node): Release function body.

* lto-symtab.c (lto_cgraph_replace_node): Release function body.
* cgraph.c (cgraph_remove_node): Do not release function body
when in cgraph streaming.
* ipa.c (process_references, symtab_remove_unreachable_nodes): Objects
in other partitions are not considered reachable; fix handling of clones.

From-SVN: r201242

11 years agoRemove unnecessary space.
Ramana Radhakrishnan [Thu, 25 Jul 2013 12:50:14 +0000 (12:50 +0000)]
Remove unnecessary space.

From-SVN: r201241

11 years agoFix PR target/57731 PR target/57837
Ramana Radhakrishnan [Thu, 25 Jul 2013 09:40:11 +0000 (09:40 +0000)]
Fix PR target/57731 PR target/57837

2013-07-25  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/19599
PR target/57731
PR target/57837
* config/arm/arm.md ("*sibcall_value_insn): Replace use of
Ss with US. Adjust output for v5 and v4t.
(*sibcall_value_insn): Likewise and loosen predicate on
operand0.
* config/arm/constraints.md ("Ss"): Rename to US.

From-SVN: r201240

11 years agore PR fortran/57639 ([OOP] ICE with polymorphism (and illegal code))
Janus Weil [Thu, 25 Jul 2013 08:26:36 +0000 (10:26 +0200)]
re PR fortran/57639 ([OOP] ICE with polymorphism (and illegal code))

2013-07-25  Janus Weil  <janus@gcc.gnu.org>

PR fortran/57639
* interface.c (compare_parameter): Check for class_ok.
* simplify.c (gfc_simplify_same_type_as): Ditto.

2013-07-25  Janus Weil  <janus@gcc.gnu.org>

PR fortran/57639
* gfortran.dg/unlimited_polymorphic_9.f90: New.

From-SVN: r201239

11 years agoarm.c (thumb1_size_rtx_costs): Assign proper cost for shift_add/shift_sub0/shift_sub1...
Terry Guo [Thu, 25 Jul 2013 04:10:27 +0000 (04:10 +0000)]
arm.c (thumb1_size_rtx_costs): Assign proper cost for shift_add/shift_sub0/shift_sub1 RTXs.

gcc/ChangeLog:
2013-07-24  Terry Guo  <terry.guo@arm.com>

* config/arm/arm.c (thumb1_size_rtx_costs): Assign proper cost for
shift_add/shift_sub0/shift_sub1 RTXs.

gcc/testsuite/ChangeLog:
2013-07-24  Terry Guo  <terry.guo@arm.com>

* gcc.target/arm/thumb1-Os-mult.c: New test case.

From-SVN: r201237

11 years agoaltivec.md (altivec_vpkpx): Handle little endian.
Bill Schmidt [Thu, 25 Jul 2013 01:24:14 +0000 (01:24 +0000)]
altivec.md (altivec_vpkpx): Handle little endian.

2013-07-24  Bill Schmidt  <wschmidt@linux.ibm.com>
    Anton Blanchard <anton@au1.ibm.com>

* config/rs6000/altivec.md (altivec_vpkpx): Handle little endian.
(altivec_vpks<VI_char>ss): Likewise.
(altivec_vpks<VI_char>us): Likewise.
(altivec_vpku<VI_char>us): Likewise.
(altivec_vpku<VI_char>um): Likewise.

Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201235

11 years agore PR libstdc++/57976 (Missing time_get<>::get() functions)
Paolo Carlini [Thu, 25 Jul 2013 00:46:46 +0000 (00:46 +0000)]
re PR libstdc++/57976 (Missing time_get<>::get() functions)

2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/57976
* doc/xml/manual/status_cxx2011.xml: Note missing time_get::get and
time_get::do_get.

From-SVN: r201234

11 years agoDaily bump.
GCC Administrator [Thu, 25 Jul 2013 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201233

11 years agoIntroduce context class.
David Malcolm [Thu, 25 Jul 2013 00:14:01 +0000 (00:14 +0000)]
Introduce context class.

2013-07-24  David Malcolm  <dmalcolm@redhat.com>

Introduce context class.

* Makefile.in (CONTEXT_H): New.
(OBJS): Add context.o.
(toplev.o): Add CONTEXT_H to dependencies.
(context.o): New.

* toplev.c (general_init): Create the singleton gcc::context
instance.

* context.c: New.

* context.h: New.

From-SVN: r201230

11 years agoruntime: Handle allocating memory in cgo/SWIG function.
Ian Lance Taylor [Wed, 24 Jul 2013 22:30:25 +0000 (22:30 +0000)]
runtime: Handle allocating memory in cgo/SWIG function.

A function that returns an interface type and returns a value
that requires memory allocation will try to allocate while
appearing to be in a syscall.  This patch lets that work.

From-SVN: r201226

11 years agore PR rtl-optimization/57968 (MODE_EXIT switches inserted too early)
Joern Rennecke [Wed, 24 Jul 2013 20:12:49 +0000 (20:12 +0000)]
re PR rtl-optimization/57968 (MODE_EXIT switches inserted too early)

        PR rtl-optimization/57968
        * mode-switching.c (create_pre_exit): Allow instructions that
        don't set a return register to need a non-exit mode.

From-SVN: r201225

11 years agogo-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a fields...
Ian Lance Taylor [Wed, 24 Jul 2013 18:25:51 +0000 (18:25 +0000)]
go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a fields...

* go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
fields, recreate those fields with the first one with a non-zero
size.

From-SVN: r201222

11 years agoruntime: Check _end rather than end to find end of program.
Ian Lance Taylor [Wed, 24 Jul 2013 17:37:07 +0000 (17:37 +0000)]
runtime: Check _end rather than end to find end of program.

This fixes a problem on Solaris, where end is not defined in
the main program but comes from some shared library.  This
only matters for 32-bit targets.

From-SVN: r201220

11 years agonet: Only use GNU/Linux unix socket abstract paths on GNU/Linux.
Ian Lance Taylor [Wed, 24 Jul 2013 16:53:17 +0000 (16:53 +0000)]
net: Only use GNU/Linux unix socket abstract paths on GNU/Linux.

From-SVN: r201217

11 years agorandom.h (random_device): Avoid using the FILE type.
Paolo Carlini [Wed, 24 Jul 2013 15:42:06 +0000 (15:42 +0000)]
random.h (random_device): Avoid using the FILE type.

2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/random.h (random_device): Avoid using the FILE type.
* include/std/random: Do not include <cstdio>.
* src/c++11/random.cc: ... include it here.
(random_device::_M_init, random_device::_M_fini,
random_device::_M_getval): Cast back and forth void* and FILE*.

From-SVN: r201215

11 years agoReimplment matcher using Depth-first search(backtracking).
Tim Shen [Wed, 24 Jul 2013 14:39:54 +0000 (14:39 +0000)]
Reimplment matcher using Depth-first search(backtracking).

2013-07-24  Tim Shen  <timshen91@gmail.com>

Reimplment matcher using Depth-first search(backtracking).
PR libstdc++/53622
PR libstdc++/57173
* include/bits/regex.h: regex_match() and regex_search().
* include/bits/regex_cursor.h: Fix _M_set_pos().
* include/bits/regex_grep_matcher.h: add _M_dfs_match().
* include/bits/regex_grep_matcher.tcc: Implement it.
* testsuite/28_regex/algorithms/regex_match/extended/string_group_01.cc:
New.
* testsuite/28_regex/algorithms/regex_match/extended/string_group_02.cc:
New.
* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
Remove xfail.

From-SVN: r201213

11 years agoruntime: Move new 1.1.1 functions from thread-linux.c to runtime.c.
Ian Lance Taylor [Wed, 24 Jul 2013 13:18:45 +0000 (13:18 +0000)]
runtime: Move new 1.1.1 functions from thread-linux.c to runtime.c.

This way they are compiled on non-GNU/Linux systems.

From-SVN: r201209

11 years agovector.md (vec_realign_load_<mode>): Reorder input operands to vperm for little endian.
Bill Schmidt [Wed, 24 Jul 2013 13:17:31 +0000 (13:17 +0000)]
vector.md (vec_realign_load_<mode>): Reorder input operands to vperm for little endian.

2013-07-24  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>
    Anton Blanchard <anton@au1.ibm.com>

* vector.md (vec_realign_load_<mode>): Reorder input operands to
vperm for little endian.
* rs6000.c (rs6000_expand_builtin): Use lvsr instead of lvsl to
create the control mask for a vperm for little endian.

Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201208

11 years agonet/http: Don't try to trace sendfile64 on alpha.
Ian Lance Taylor [Wed, 24 Jul 2013 13:09:32 +0000 (13:09 +0000)]
net/http: Don't try to trace sendfile64 on alpha.

From Uros Bizjak.

From-SVN: r201206

11 years ago2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Wed, 24 Jul 2013 08:37:37 +0000 (08:37 +0000)]
2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>

Tweak last ChangeLog entry.

From-SVN: r201202

11 years agore PR c++/57942 (g++-4.8.1 tries to instantiate wrong constructor)
Paolo Carlini [Wed, 24 Jul 2013 08:35:54 +0000 (08:35 +0000)]
re PR c++/57942 (g++-4.8.1 tries to instantiate wrong constructor)

/cp
2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57942
* typeck.c (ptr_reasonably_similar): Use COMPARE_STRICT if one of
the target types is incomplete; return a bool, not an int.
* cp-tree.h (ptr_reasonably_similar): Adjust declaration.

/testsuite
2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57942
* g++.dg/inherit/pr57942.C: New.

From-SVN: r201201

11 years agoCorrect ChangeLog for 201185.
Michael Eager [Wed, 24 Jul 2013 00:19:58 +0000 (00:19 +0000)]
Correct ChangeLog for 201185.

From-SVN: r201200

11 years agoDaily bump.
GCC Administrator [Wed, 24 Jul 2013 00:16:46 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201199

11 years agors6000.c (altivec_expand_vec_perm_const): Reverse two operands for little-endian.
Bill Schmidt [Tue, 23 Jul 2013 22:36:04 +0000 (22:36 +0000)]
rs6000.c (altivec_expand_vec_perm_const): Reverse two operands for little-endian.

2013-07-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
    Anton Blanchard <anton@au1.ibm.com>

* config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Reverse
two operands for little-endian.

Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201195