platform/upstream/linaro-gcc.git
11 years ago2012-12-28 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 28 Dec 2012 11:22:14 +0000 (11:22 +0000)]
2012-12-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55763
        * check.c (gfc_check_move_alloc): Handle unlimited polymorphic.
        * trans-intrinsic.c (conv_intrinsic_move_alloc): Ditto.

2012-12-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55763
        * gfortran.dg/unlimited_polymorphic_5.f90

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194743 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Fri, 28 Dec 2012 00:18:00 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194742 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Thu, 27 Dec 2012 20:13:35 +0000 (20:13 +0000)]
2012-12-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/48960
* gfortran.dg/newunit_3.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194738 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Thu, 27 Dec 2012 19:24:44 +0000 (19:24 +0000)]
2012-12-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/48976
* gfortran.dg/inquire_15.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194736 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Thu, 27 Dec 2012 18:09:13 +0000 (18:09 +0000)]
2012-12-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/48976
* gfortran.h (gfc_inquire struct): Add pointer for inquire stream.
* io.c (io_tag): Add tag for inquire stream. (match_inquire_element):
Add matcher for new tag. (gfc_resolve_inquire): Resolve new tag.
* ioparm.def: Add new parameter for inquire stream.
* trans-io.c (gfc_trans_inquire): Add tranlste code for inquire
stream.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194734 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Thu, 27 Dec 2012 18:07:33 +0000 (18:07 +0000)]
2012-12-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/48976
* io/inquire.c (inquire_via_unit): Set user stream inquiry variable to
appropriate value based on unit access method. (inquire_via_filename):
Since filename is not associated with an open unit, set stream inquiry
to UNKNOWN.
* io/io.h: Define inquire stream parameters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194733 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/rs6000/rs6000.c (rs6000_deligitimze_address): Do not
dje [Thu, 27 Dec 2012 17:53:17 +0000 (17:53 +0000)]
    * config/rs6000/rs6000.c (rs6000_deligitimze_address): Do not
        delegitimize TLS addresses on AIX.
        (rs6000_legitimize_tls_address_aix): Append TLS symbol qualifier.
        Set SYMBOL_FLAG_LOCAL on module symbol.
        (output_toc): Do not append TLS symbol qualifier here.
        * config/rs6000/rs6000.md (tls_get_addr_internal): Add GPR 4 to
        clobbers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194732 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago* target.def (supports_function_versions): Fix typo.
schwab [Thu, 27 Dec 2012 10:04:51 +0000 (10:04 +0000)]
* target.def (supports_function_versions): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194731 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoBefore this patch, function multiversioning determines that two functions
tmsriram [Thu, 27 Dec 2012 01:58:06 +0000 (01:58 +0000)]
Before this patch, function multiversioning determines that two functions
are different by comparing the arch type and isa flags that are set
after the target string is processed. This leads to cases where  the
versions become identical when the command-line target options are
altered.

This patch modifies the function version determination to
just compare the target string.

2012-12-27  Sriraman Tallam  <tmsriram@google.com>

* doc/tm.texi.in (TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Document
new target hook.
* doc/tm.texi: Regenerate.
* c-family/c-common.c (handle_target_attribute): Retain target attribute
for targets that support versioning.
* target.def (supports_function_versions): New hook.
* cp/class.c (add_method): Remove calls
to DECL_FUNCTION_SPECIFIC_TARGET.
* config/i386/i386.c (ix86_function_versions): Use target string
to check for function versions instead of target flags.
* (ix86_supports_function_versions): New function.
* (is_function_default_version): Check target string.
* TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS: New macro.

2012-12-27  Sriraman Tallam  <tmsriram@google.com>

* testsuite/g++.dg/mv1.C: Remove target options.
* testsuite/g++.dg/mv2.C: Ditto.
* testsuite/g++.dg/mv3.C: Ditto.
* testsuite/g++.dg/mv4.C: Ditto.
* testsuite/g++.dg/mv5.C: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194730 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Thu, 27 Dec 2012 00:18:22 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194729 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * cgraph.c (verify_cgraph_node): Don't allocate/free visited_nodes set.
steven [Thu, 27 Dec 2012 00:10:14 +0000 (00:10 +0000)]
* cgraph.c (verify_cgraph_node): Don't allocate/free visited_nodes set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194726 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Wed, 26 Dec 2012 18:11:42 +0000 (18:11 +0000)]
2012-12-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/48960
* io/open.c (st_parameter_open):  Assign newunit number to user
variable only if the the associated open statement is successful.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194724 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agolibffi merge
green [Wed, 26 Dec 2012 16:28:02 +0000 (16:28 +0000)]
libffi merge

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194722 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Wed, 26 Dec 2012 00:18:54 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194721 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoPR fortran/55539 Fix regression in -fno-sign-zero.
jb [Tue, 25 Dec 2012 22:11:16 +0000 (22:11 +0000)]
PR fortran/55539 Fix regression in -fno-sign-zero.

libgfortran ChangeLog:

2012-12-26  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/55539
* io/write_float.def (output_float): Take into account decimal dot.

testsuite ChangeLog:

2012-12-26  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/55539
* gfortran.dg/nosigned_zero_3.f90: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194717 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR target/53789
danglin [Tue, 25 Dec 2012 17:57:35 +0000 (17:57 +0000)]
PR target/53789
* config/pa/pa.md (movsi): Reject expansion of TLS symbol references
after reload starts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194714 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Tue, 25 Dec 2012 00:18:43 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194712 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Mon, 24 Dec 2012 00:18:32 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194709 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-23 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 23 Dec 2012 18:43:32 +0000 (18:43 +0000)]
2012-12-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54884
        * module.c (write_symbol1_recursion): Set attr.public_use.
        * interface.c (check_sym_interfaces, check_uop_interfaces,
        gfc_check_interfaces): Remove attr.public_use code.
        * resolve.c (resolve_function, resolve_variable,
        resolve_typebound_procedure): Ditto.

2012-12-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54884
        * gfortran.dg/public_private_module_8.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194706 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/testsuite/
rsandifo [Sun, 23 Dec 2012 10:01:40 +0000 (10:01 +0000)]
gcc/testsuite/
* gcc.target/mips/r10k-cache-barrier-10.c: Make a branch-likely
instruction more likely.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194705 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/testsuite/
rsandifo [Sun, 23 Dec 2012 09:47:31 +0000 (09:47 +0000)]
gcc/testsuite/
* gcc.target/mips/pr55315.c: Cast to long rather than int.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194704 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Sun, 23 Dec 2012 00:18:18 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194703 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR lto/54728
hubicka [Sat, 22 Dec 2012 23:27:49 +0000 (23:27 +0000)]
PR lto/54728
* cgraph.h (symtab_real_symbol_p): Drop code looking for external functions.
* lto-streamer-out.c (output_symbol_p): New function.
(produce_symtab) Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194700 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 22 Dec 2012 17:27:03 +0000 (17:27 +0000)]
2012-12-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55763
        * module.c (mio_component): Don't skip _hash's initializer.
        * resolve.c (resolve_select_type): Add an assert.
        * trans-expr.c (gfc_conv_procedure_call): Handle
        INTENT(OUT) for UNLIMIT_POLY.

2012-12-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55763
        * gfortran.dg/unlimited_polymorphic_6.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194696 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agolibgo: Update to revision 15193:6fdc1974457c of master library.
ian [Sat, 22 Dec 2012 01:15:33 +0000 (01:15 +0000)]
libgo: Update to revision 15193:6fdc1974457c of master library.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194692 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Sat, 22 Dec 2012 00:18:52 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194691 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR ada/53737
ebotcazou [Fri, 21 Dec 2012 22:31:42 +0000 (22:31 +0000)]
PR ada/53737
* sem_ch12.adb (Analyze_Associations): Do not check the legality of
actuals for RACW types if this is an internal instantiation for a formal
package with defaulted parameters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194687 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agocompiler: Error if name defined in both package and file blocks.
ian [Fri, 21 Dec 2012 22:23:23 +0000 (22:23 +0000)]
compiler: Error if name defined in both package and file blocks.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194685 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix copyright notices.
ebotcazou [Fri, 21 Dec 2012 22:13:34 +0000 (22:13 +0000)]
Fix copyright notices.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194683 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 21 Dec 2012 22:06:38 +0000 (22:06 +0000)]
2012-12-21  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/55355
* tree-sra.c (type_internals_preclude_sra_p): Also check that
bit_position is small enough to fit a single HOST_WIDE_INT.

* testsuite/g++.dg/torture/pr55355.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194682 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * rtlanal.c (volatile_insn_p): Delete commented out code.
ebotcazou [Fri, 21 Dec 2012 21:38:11 +0000 (21:38 +0000)]
* rtlanal.c (volatile_insn_p): Delete commented out code.
(side_effects_p): Likewise.
(may_trap_p_1) <UNSPEC_VOLATILE>: Return 1 again.
* target.def (unspec_may_trap_p): Adjust comment.
* targhooks.c (default_unspec_may_trap_p): Don't handle UNSPEC_VOLATILE.
* config/ia64/ia64.c (ia64_unspec_may_trap_p): Adjust to above change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194681 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Fri, 21 Dec 2012 21:20:48 +0000 (21:20 +0000)]
2012-12-21  Vladimir Makarov  <vmakarov@redhat.com>

PR middle-end/55775
* lra-assigns.c (improve_inheritance): Do nothing after
LRA_MAX_INHERITANCE_PASSES pass.
* lra-constraints.c (MAX_CONSTRAINT_ITERATION_NUMBER): Rename to
LRA_MAX_CONSTRAINT_ITERATION_NUMBER.  Move to lra-int.h.
(MAX_INHERITANCE_PASSES): Rename to LRA_MAX_INHERITANCE_PASSES.
Move to lra-int.h.
* lra-int.h (LRA_MAX_CONSTRAINT_ITERATION_NUMBER): Move from
lra-constraints.c.
(LRA_MAX_INHERITANCE_PASSES): Ditto.

2012-12-21  Vladimir Makarov  <vmakarov@redhat.com>

PR middle-end/55775
* gcc.target/i386/pr55775.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194680 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Fri, 21 Dec 2012 20:50:48 +0000 (20:50 +0000)]
2012-12-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/30162
* io/unix.c (raw_tell):  If the lseek is done on a
non-seekable file, return 0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194679 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Steve Ellcey <sellcey@mips.com>
sje [Fri, 21 Dec 2012 18:54:00 +0000 (18:54 +0000)]
2012-12-21  Steve Ellcey  <sellcey@mips.com>

PR bootstrap/54128
* ira.c (build_insn_chain): Check only NONDEBUG instructions for
register usage.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194676 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * varasm.c (bss_initializer_p): Remove static.
dje [Fri, 21 Dec 2012 17:25:57 +0000 (17:25 +0000)]
    * varasm.c (bss_initializer_p): Remove static.
        * output.h (bss_initializer_p): Declare.
        * xcoffout.c (xcoff_tbss_section_name): Define.
        * xcoffout.h (xcoff_tbss_section_name): Declare.
        * config/rs6000/xcoff.h (TARGET_ENCODE_SECTION_INFO): Define.
        (ASM_OUTPUT_TLS_COMMON): Merge strings.
        * config/rs6000/rs6000.c (tls_private_data_section): New.
        (output_toc): Only output CSECT decoration for TLS.
        Output appropriate CSECT for data or bss.
        (rs6000_xcoff_asm_init_sections) Define tls_private_data_section.
        (rs6000_xcoff_select_section): Handle TLS bss and private data.
        (rs6000_xcoff_file_start): Generate xcoff_tbss_section_name.
        (rs6000_xcoff_encode_section_info): Strip SYMBOL_FLAG_HAS_BLOCK_INFO
        from native TLS symbols.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194675 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * c-c++-common/pr43942.c: Remove XFAIL for AIX.
dje [Fri, 21 Dec 2012 16:30:24 +0000 (16:30 +0000)]
    * c-c++-common/pr43942.c: Remove XFAIL for AIX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194672 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc.c-torture/compile/pr44707.c: Do not try to assemble on AIX.
dje [Fri, 21 Dec 2012 16:25:55 +0000 (16:25 +0000)]
    * gcc.c-torture/compile/pr44707.c: Do not try to assemble on AIX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194671 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * lib/target-supports.exp (add_options_for_tls): Add -pthread for
dje [Fri, 21 Dec 2012 16:21:53 +0000 (16:21 +0000)]
    * lib/target-supports.exp (add_options_for_tls): Add -pthread for
        AIX as well.
        (check_effective_target_powerpc_vsx_ok): Only test VSX on AIX 7.1
        and above.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194670 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR bootstrap/54659
ian [Fri, 21 Dec 2012 15:59:27 +0000 (15:59 +0000)]
PR bootstrap/54659

compiler: Don't include <gmp.h>, now included by go-system.h.

* go-system.h: Don't include <cstdio>.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194669 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc.dg/pthread-init-2.c (dg-options): Define _XOPEN_SOURCE=500
dje [Fri, 21 Dec 2012 15:55:52 +0000 (15:55 +0000)]
    * gcc.dg/pthread-init-2.c (dg-options): Define _XOPEN_SOURCE=500
        on AIX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194668 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Richard Biener <rguenther@suse.de>
rguenth [Fri, 21 Dec 2012 14:33:59 +0000 (14:33 +0000)]
2012-12-21  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/52996
* cprop.c (bypass_block): When loops are to be preserved
do not bypass loop headers.  Revert earlier kludge to remove
loops when doing that.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194666 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Richard Biener <rguenther@suse.de>
rguenth [Fri, 21 Dec 2012 14:33:13 +0000 (14:33 +0000)]
2012-12-21  Richard Biener  <rguenther@suse.de>

PR bootstrap/54659
* system.h: Include gmp.h.
* tree-ssa-loop-niter.c: Do not include gmp.h here.
* double-int.h: Likewise.
* realmpfr.h: Likewise.

fortran/
* gfortran.h: Do not include gmp.h here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194665 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Paul Thomas <pault@gcc.gnu.org>
pault [Fri, 21 Dec 2012 14:29:34 +0000 (14:29 +0000)]
2012-12-21  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/55763
* match.c (select_type_set_tmp): Return is a derived type or
class typespec has no derived type.
* resolve.c (resolve_fl_var_and_proc): Exclude select type
temporaries from 'pointer'.
(resolve_symbol): Exclude select type temporaries from tests
for assumed size and assumed rank.

2012-12-21  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/55763
* gfortran.dg/unlimited_polymorphic_4.f03: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194663 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * adaint.c: Move directive around.
ebotcazou [Fri, 21 Dec 2012 12:32:31 +0000 (12:32 +0000)]
* adaint.c: Move directive around.
* argv.c: Likewise.
* cio.c: Likewise.
* cstreams.c: Likewise.
* env.c: Likewise.
* exit.c: Likewise.
* init.c: Likewise.
* initialize.c: Likewise.
* raise.c: Likewise.
* seh_init.c: Likewise.
* targext.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194660 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-21 Richard Biener <rguenther@suse.de>
rguenth [Fri, 21 Dec 2012 10:32:43 +0000 (10:32 +0000)]
2012-12-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/52996
* gcc.dg/torture/pr52996.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194659 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/os/mingw32/os_defines.h (_GLIBCXX_LLP64): Define if llp64
ktietz [Fri, 21 Dec 2012 10:12:48 +0000 (10:12 +0000)]
* config/os/mingw32/os_defines.h (_GLIBCXX_LLP64): Define if llp64
abi is used.
* config/os/mingw32-w64/os_defines.h: Likewise.
* libsupc++/cxxabi.h (__base_class_type_info): Adjust
type of __offset_flags for llp64.
* libsupc++/eh_alloc.cc (EMERGENCY_OBJ_SIZE): Define proper
for llp64 abi.
(EMERGENCY_OBJ_COUNT): Likewise.
(bitmask_type): Likewise.
* libsupc++/hash_bytes.cc (_Hash_bytes): Handle llp64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194658 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
gretay [Fri, 21 Dec 2012 09:49:58 +0000 (09:49 +0000)]
gcc/

2012-12-21  Greta Yorsh  <Greta.Yorsh@arm.com>

        * config/arm/cortex-a7.md: New file.
        * config/arm/t-arm (MD_INCLUDES): Add cortex-a7.md.
        * config/arm/arm.md: Include cortex-a7.md.
        (generic_sched): Don't use generic scheduler for Cortex-A7.
        (generic_vfp): Likewise.
        * config/arm/arm.c: (TARGET_SCHED_REORDER): Use arm_sched_reorder.
        (arm_sched_reorder,cortexa7_sched_reorder): New function.
        (cortexa7_older_only,cortexa7_younger): Likewise.
        (arm_issue_rate): Add Cortex-A7.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194656 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Fri, 21 Dec 2012 00:18:30 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194655 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gthr.h (__gthread_cond_timedwait_recursive): Do not require.
redi [Thu, 20 Dec 2012 22:19:57 +0000 (22:19 +0000)]
* gthr.h (__gthread_cond_timedwait_recursive): Do not require.
* gthr-posix.h (__gthread_cond_timedwait_recursive): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194652 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * include/std/functional (_Require): Move to ...
redi [Thu, 20 Dec 2012 21:02:33 +0000 (21:02 +0000)]
* include/std/functional (_Require): Move to ...
* include/std/type_traits (_Require): ... here.
* include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
Handle unique_ptr for arrays or with custom pointer types.
(__shared_ptr::__shared_ptr(unique_ptr<_Tp1, _Del>&&): Likewise.
* include/bits/unique_ptr.h (unique_ptr<_Tp[], _Dp>): Use
_Dp::pointer if defined. Implement proposed resolution of LWG 2118.
* testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: New.
* testsuite/20_util/unique_ptr/assign/cv_qual.cc: New.
* testsuite/20_util/unique_ptr/cons/array_convertible_neg.cc: New.
* testsuite/20_util/unique_ptr/cons/convertible_neg.cc: New.
* testsuite/20_util/unique_ptr/cons/cv_qual.cc: New.
* testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: New.
* testsuite/20_util/unique_ptr/requirements/pointer_type_array.cc: New.
* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Adjust comments.
* testsuite/20_util/unique_ptr/cons/pointer_array_convertible_neg.cc:
Likewise.
* testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Likewise.
* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line number.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
* testsuite/20_util/default_delete/48631_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust
dg-error text.
* testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Use
different instantiations so static_assert fails for each.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194651 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-20 Matthias Klose <doko@ubuntu.com>
doko [Thu, 20 Dec 2012 19:17:53 +0000 (19:17 +0000)]
2012-12-20  Matthias Klose  <doko@ubuntu.com>

        * Makefile.def (install-target-libgfortran): Depend on
        install-target-libquadmath, install-target-libgcc.
        (install-target-libsanitizer): Depend on install-target-libgcc.
        (install-target-libjava): Depend on install-target-libgcc.
        (install-target-libitm): Depend on install-target-libgcc.
        (install-target-libobjc): Depend on install-target-libgcc.
        (install-target-libstdc++-v3): Depend on install-target-libgcc.
        * Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194650 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoMake zero_extends explicit for common AArch64 SI mode patterns
ibolton [Thu, 20 Dec 2012 19:13:21 +0000 (19:13 +0000)]
Make zero_extends explicit for common AArch64 SI mode patterns

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194649 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-20 Janus Weil <janus@gcc.gnu.org>
janus [Thu, 20 Dec 2012 18:15:13 +0000 (18:15 +0000)]
2012-12-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/36044
* gfortran.h (gfc_isym_id): Add GFC_ISYM_BACKTRACE.
* intrinsic.c (add_subroutines): Add "backtrace".
* intrinsic.texi (BACKTRACE): Document BACKTRACE intrinsic.

2012-12-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/36044
* gfortran.map: Add _gfortran_backtrace.
* libgfortran.h: Rename 'show_backtrace' and export.
* runtime/backtrace.c (show_backtrace): Rename to 'backtrace'.
Don't show message. Close file descriptor. Export.
* runtime/compile_options.c (backtrace_handler): Renamed
'show_backtrace'. Move message outside.
* runtime/error.c (sys_abort): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194648 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR middle-end/55750
jakub [Thu, 20 Dec 2012 18:13:56 +0000 (18:13 +0000)]
PR middle-end/55750
* gimplify.c (gimplify_self_mod_expr): Don't force lvalue to
pass is_gimple_min_lval.

* gcc.c-torture/execute/pr55750.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194647 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agos390: Generate rnsbg
rth [Thu, 20 Dec 2012 18:05:26 +0000 (18:05 +0000)]
s390: Generate rnsbg

        * config/s390/s390.md (*insv_rnsbg_noshift, *insv_rnsbg_srl): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194646 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agos390: Generate rxsbg, and shifted forms of rosbg
rth [Thu, 20 Dec 2012 18:05:19 +0000 (18:05 +0000)]
s390: Generate rxsbg, and shifted forms of rosbg

        * config/s390/s390.md (IXOR): New code iterator.
        (*r<IXOR>sbg_<GPR>_noshift): Rename from *insv<GPR>_or_z10_noshift;
        macro-ize to handle XOR too.
        (*r<IXOR>sbg_di_rotl, *r<IXOR>sbg_<GPR>_srl, *r<IXOR>sbg_<GPR>_sll):
        New patterns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194645 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agos390: Implement extzv for z10
rth [Thu, 20 Dec 2012 18:05:11 +0000 (18:05 +0000)]
s390: Implement extzv for z10

        * config/s390/predicates.md (nonzero_shift_count_operand): New.
        * config/s390/s390-protos.h (s390_extzv_shift_ok): Declare.
        * config/s390/s390.c (s390_extzv_shift_ok): New function.
        * config/s390/s390.md (extzv): New expander.
        (*extzv<GPR>_zEC12, *extzv<GPR>_z10): New insns.
        (*pre_z10_extzv<GPR>): Rename from *extzv<GPR>; simplify with
        nonzero_shift_count_operand.
        (*extzv_<mode>_srl, *extzv_<mode>_sll): New insns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194644 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agos390: Add mode attribute for mode bitsize
rth [Thu, 20 Dec 2012 18:05:03 +0000 (18:05 +0000)]
s390: Add mode attribute for mode bitsize

        * config/s390/s390.md (bitsize): New mode attr.
        (*extzv<GPR>, *extzv<GPR>, *insv<GPR>_zEC12, *insv<GPR>_z10): Use it.
        (extend<HQI><DSI>2, zero_extend<HQI>si2): Likewise.
        (zero_extend<HQI>di2, fixuns_trunc<BFP><GPR>2): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194643 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agos390: Use risbgz for AND
rth [Thu, 20 Dec 2012 18:04:56 +0000 (18:04 +0000)]
s390: Use risbgz for AND

        * config/s390/s390.md (*anddi3_cc): Add risbg alternative.
        (*anddi3_cconly, *anddi3): Likewise.
        (*andsi3, *andsi3_cconly, *andsi3_zarch): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194642 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agos390: Only use lhs zero_extract in word_mode
rth [Thu, 20 Dec 2012 18:04:49 +0000 (18:04 +0000)]
s390: Only use lhs zero_extract in word_mode

        * config/s390/s390.md (*insv_l_di_reg_extimm): Un-macroize from :P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194641 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agos390: Constraints, predicates, and op letters for contiguous bitmasks
rth [Thu, 20 Dec 2012 18:04:41 +0000 (18:04 +0000)]
s390: Constraints, predicates, and op letters for contiguous bitmasks

        * config/s390/constraints.md (NxxDq, NxxSq): New.
        * config/s390/predicates.md (contiguous_bitmask_operand): New.
        * config/s390/s390.c (print_operand) ['e', 'f', 's', 't']: New
        operand letters.
        * config/s390/s390.md (bfstart, bfend): New mode attrs.
        (*insv<GPR>_zEC12_noshift): Use them.
        (*insv<GPR>_z10_noshift): Likewise.
        (*insv<GPR>_or_z10_noshift): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194640 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-20 Paul Thomas <pault@gcc.gnu.org>
pault [Thu, 20 Dec 2012 18:03:37 +0000 (18:03 +0000)]
2012-12-20  Paul Thomas  <pault@gcc.gnu.org>

* gfortran.dg/same_type_as_1.f03: Correct for improved message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194639 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR bootstrap/55202
tschwinge [Thu, 20 Dec 2012 15:57:18 +0000 (15:57 +0000)]
PR bootstrap/55202
* configure.ac <PLUGIN_LD_SUFFIX>: Use POSIX shell syntax.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194637 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Thu, 20 Dec 2012 15:20:06 +0000 (15:20 +0000)]
2012-12-20  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

PR target/55754
* config/arm/arm.c (arm_canonicalize_comparison): Remove
op0_preserve_value check for zero_extend to and transformation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194636 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR libstdc++/55741
redi [Thu, 20 Dec 2012 14:36:56 +0000 (14:36 +0000)]
PR libstdc++/55741
* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Check for Sleep.
* config.h.in: Regenerate.
* configure: Regenerate.
* src/c++11/thread.cc (__sleep_for): Use Sleep if available.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194635 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix PR gcov-profile/55734 by using methods from hwint.c instead of
tejohnson [Thu, 20 Dec 2012 14:31:09 +0000 (14:31 +0000)]
Fix PR gcov-profile/55734 by using methods from hwint.c instead of
builtins, to handle non-GCC and older versions of GCC. When building
libgcov.a, however, hwint.c is not available, but we are always using
the bootstrapped compiler and can therefore use the builtins.

Use __builtin_popcount instead of __builtin_popcountll, since we
are operating on an int.

Use floor_log2 directly, instead of clz_hwi for the non-libgcov case,
and handle situations where the size of the gcov_type is bigger than
HOST_WIDE_INT. Verified that the various cases compiled by forcing
different HOST_BITS_PER_WIDE_INT values.

2012-12-20  Teresa Johnson  <tejohnson@google.com>
            Jakub Jelinek  <jakub@redhat.com>

        PR gcov-profile/55734
* gcov-io.c (gcov_read_summary): Use __builtin_popcount instead
        of __builtin_popcountll when building libgcov.a, otherwise use
        popcount_hwi.
(gcov_histo_index): When not building libgcov.a, use floor_log2
        instead of __builtin_clzll.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194634 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-20 Richard Biener <rguenther@suse.de>
rguenth [Thu, 20 Dec 2012 12:45:48 +0000 (12:45 +0000)]
2012-12-20  Richard Biener  <rguenther@suse.de>

PR middle-end/55740
* cfghooks.c (merge_blocks): Properly handle merging of
two loop headers.

* g++.dg/torture/pr55740.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194633 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/55619
jakub [Thu, 20 Dec 2012 10:41:47 +0000 (10:41 +0000)]
PR c++/55619
* c-parser.c (c_parser_asm_operands): Remove CONVERT_P
argument, don't call default_function_array_conversion
nor c_fully_fold here.
(c_parser_asm_statement): Adjust callers.
* c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
and outputs here, and call default_function_array_conversion
on inputs that don't need to be addressable.

* c-c++-common/pr55619.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194631 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c/39464
jakub [Thu, 20 Dec 2012 10:40:26 +0000 (10:40 +0000)]
PR c/39464
* c-typeck.c (convert_for_assignment): For -Wpointer-sign
warning require that both c_common_unsigned_type as well as
c_common_signed_type is the same for both mvl and mvr types.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194630 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-20 Roland Stigge <stigge@debian.org>
doko [Thu, 20 Dec 2012 09:57:34 +0000 (09:57 +0000)]
2012-12-20  Roland Stigge  <stigge@debian.org>
            Matthias Klose  <doko@ubuntu.com>

        * config/rs6000/t-spe (MULTIARCH_DIRNAME): Remove.
        * config/rs6000/t-linux (MULTIARCH_DIRNAME): Define name for
        powerpc-linux-gnuspe.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194629 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-20 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 20 Dec 2012 08:13:21 +0000 (08:13 +0000)]
2012-12-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54818
        * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Ensure that
        the string length is of type gfc_charlen_type_node.

2012-12-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54818
        * gfortran.dg/transfer_intrinsic_4.f: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194628 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Paul Thomas <pault@gcc.gnu.org>
pault [Thu, 20 Dec 2012 00:23:40 +0000 (00:23 +0000)]
2012-12-19  Paul Thomas  <pault@gcc.gnu.org>

* gfortran.dg/unlimited_polymorphic_2.f03: Remove bad test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194626 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Thu, 20 Dec 2012 00:18:51 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194625 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Paul Thomas <pault@gcc.gnu.org>
pault [Thu, 20 Dec 2012 00:15:00 +0000 (00:15 +0000)]
2012-12-19  Paul Thomas  <pault@gcc.gnu.org>

* array.c (resolve_array_list): Apply C4106.
* check.c (gfc_check_same_type_as): Exclude polymorphic
entities from check for extensible types. Improved error
for disallowed argument types to name the offending type.
* class.c : Update copyright date.
(gfc_class_null_initializer): Add argument for initialization
expression and deal with unlimited polymorphic typespecs.
(get_unique_type_string): Give unlimited polymorphic
entities a type string.
(gfc_intrinsic_hash_value): New function.
(gfc_build_class_symbol): Incorporate unlimited polymorphic
entities.
(gfc_find_derived_vtab): Deal with unlimited polymorphic
entities.
(gfc_find_intrinsic_vtab): New function.
* decl.c (gfc_match_decl_type_spec): Match typespec for
unlimited polymorphic type.
(gfc_match_data_decl): Skip to 'ok' if unlimited polymorphic.
expr.c (gfc_check_pointer_assign): Apply C717.  If unlimited
polymorphic lvalue, find rvalue vtable for all typespecs,
except unlimited polymorphic expressions.
(gfc_check_vardef_context): Handle unlimited polymorphic
entities.
* gfortran.h : Add unlimited polymorphic attribute. Add
second arg to gfc_class_null_initializer primitive and
primitive for gfc_find_intrinsic_vtab.  Add UNLIMITED_POLY
to detect unlimited polymorphic expressions.
* interface.c (gfc_compare_types): If expr1 is unlimited
polymorphic, always return 1. If expr2 is unlimited polymorphic
enforce C717.
(gfc_compare_interfaces): Skip past conditions that do not
apply for unlimited polymorphic entities.
(compare_parameter): Make sure that an unlimited polymorphic,
allocatable or pointer, formal argument is matched by an
unlimited polymorphic actual argument.
(compare_actual_formal): Ensure that an intrinsic vtable exists
to match an unlimited polymorphic formal argument.
* match.c (gfc_match_allocate): Type kind parameter does not
need to match an unlimited polymorphic allocate-object.
(alloc_opt_list): An unlimited polymorphic allocate-object
requires a typespec or a SOURCE tag.
(select_intrinsic_set_tmp): New function.
(select_type_set_tmp): Call new function.  If it returns NULL,
build a derived type or class temporary instead.
(gfc_match_type_is): Remove restriction to derived types only.
Bind(C) or sequence derived types not permitted.
* misc (gfc_typename):  Printed CLASS(*) for unlimited
polymorphism.
* module.c : Add AB_UNLIMITED_POLY to pass unlimited
polymorphic attribute to and from modules.
* resolve.c (resolve_common_vars): Unlimited polymorphic
entities cannot appear in common blocks.
(resolve_deallocate_expr): Deallocate unlimited polymorphic
enities.
(resolve_allocate_expr): Likewise for allocation.  Make sure
vtable exists.
(gfc_type_is_extensible): Unlimited polymorphic entities are
not extensible.
(resolve_select_type): Handle unlimited polymorphic selectors.
Ensure that length type parameters are assumed and that names
for intrinsic types are generated.
(resolve_fl_var_and_proc): Exclude select type temporaries
from test of extensibility of type.
(resolve_fl_variable): Likewise for test that assumed character
length must be a dummy or a parameter.
(resolve_fl_derived0): Return SUCCESS unconditionally for
unlimited polymorphic entities. Also, allow unlimited
polymorphic components.
(resolve_fl_derived): Return SUCCESS unconditionally for
unlimited polymorphic entities.
(resolve_symbol): Return early with unlimited polymorphic
entities.
* simplifiy.c : Update copyright year.
(gfc_simplify_extends_type_of): No simplification possible
for unlimited polymorphic arguments.
* symbol.c (gfc_use_derived): Nothing to do for unlimited
polymorphic "derived type".
(gfc_type_compatible): Return unity if ts1 is unlimited
polymorphic.
* trans-decl.c (create_function_arglist) Formal arguments
without a character length should be treated in the same way
as passed lengths.
(gfc_trans_deferred_vars): Nullify the vptr of unlimited
polymorphic pointers. Avoid unlimited polymorphic entities
triggering gcc_unreachable.
* trans-expr.c (gfc_conv_intrinsic_to_class): New function.
(gfc_trans_class_init_assign): Make indirect reference of
src.expr.
(gfc_trans_class_assign): Expression NULL of unknown type
should set NULL vptr on lhs. Treat C717 cases where lhs is
a derived type and the rhs is unlimited polymorphic.
(gfc_conv_procedure_call): Handle the conversion of a non-class
actual argument to match an unlimited polymorphic formal
argument.  Suppress the passing of a character string length
in this case.  Make sure that calls to the character __copy
function have two character string length arguments.
(gfc_conv_initializer): Pass the initialization expression to
gfc_class_null_initializer.
(gfc_trans_subcomponent_assign): Ditto.
(gfc_conv_structure): Move handling of _size component.
trans-intrinsic.c: (gfc_conv_same_type_as): Handle conditions
where unlimited polymorphic arguments have null vptr.
* trans-stmt.c (trans_associate_var): Correctly treat array
temporaries associated with unlimited polymorphic selectors.
Recover the overwritten dtype for the descriptor. Use the _size
field of the vptr for character string lengths.
(gfc_trans_allocate): Cope with unlimited polymorphic allocate
objects; especially with character source tags.
(reset_vptr): New function.
(gfc_trans_deallocate): Call it.
* trans-types.c (gfc_get_derived_type): Detect unlimited
polymorphic types and deal with cases where the derived type of
components is null.
* trans.c : Update copyright year.
(trans_code): Call gfc_trans_class_assign for C717 cases where
the lhs is not unlimited polymorphic.

2012-12-19  Paul Thomas  <pault@gcc.gnu.org>

* intrinsics/extends_type_of.c : Return correct results for
null vptrs.

2012-12-19  Paul Thomas  <pault@gcc.gnu.org>

* gfortran.dg/unlimited_polymorphic_1.f03: New test.
* gfortran.dg/unlimited_polymorphic_2.f03: New test.
* gfortran.dg/unlimited_polymorphic_3.f03: New test.
* gfortran.dg/same_type_as.f03: Correct for improved message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194622 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 19 Dec 2012 23:05:49 +0000 (23:05 +0000)]
2012-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55733
        * trans-decl.c (gfc_create_string_length): Avoid setting
        TREE_STATIC for automatic variables with -fno-automatic.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194621 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/55724
jason [Wed, 19 Dec 2012 22:22:36 +0000 (22:22 +0000)]
PR c++/55724
* pt.c (type_unification_real): Re-combine post-deduction loops.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194620 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Matthias Klose <doko@ubuntu.com>
doko [Wed, 19 Dec 2012 17:03:15 +0000 (17:03 +0000)]
2012-12-19  Matthias Klose  <doko@ubuntu.com>

        Import GNU Classpath (20121202).

        * Regenerate class and header files.
        * Regenerate auto* files.
        * sources.am, gcj/javaprims.h: Regenerate.
        * gnu/java/nio/FileLockImpl.java (close): New override.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194618 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Matthias Klose <doko@ubuntu.com>
doko [Wed, 19 Dec 2012 16:39:23 +0000 (16:39 +0000)]
2012-12-19  Matthias Klose  <doko@ubuntu.com>

        * config/i386/t-kfreebsd (MULTIARCH_DIRNAME): Add comma to
        separate arguments in make function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194617 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Matthias Klose <doko@ubuntu.com>
doko [Wed, 19 Dec 2012 16:18:37 +0000 (16:18 +0000)]
2012-12-19  Matthias Klose  <doko@ubuntu.com>

        * Makefile.def (install-target-libgo): Depend on
        install-target-libatomic.
        * Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194616 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/i386.h (enum ix86_tune_indices): Add
uros [Wed, 19 Dec 2012 16:04:11 +0000 (16:04 +0000)]
* config/i386/i386.h (enum ix86_tune_indices): Add
X86_TUNE_AVOID_MEM_OPND_FOR_CMOVE.
(TARGET_AVOID_MEM_OPND_FOR_CMOVE): New define.
* config/i386/i386.c (initial_ix86_tune_features)
<X86TUNE_AVOID_MEM_OPND_FOR_CMOVE>: Initialize.
* config/i386/i386.md (splitters to avoid cmove memory operands): New.
(peephole2s to avoid cmove memory operands): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194614 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 19 Dec 2012 15:53:01 +0000 (15:53 +0000)]
2012-12-19  Tobias Burnus  <burnus@net-b.de>

        * testsuite/libgomp.fortran/fortran.exp: Set
        -fintrinsic-modules-path.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194613 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
ktkachov [Wed, 19 Dec 2012 15:51:24 +0000 (15:51 +0000)]
gcc/

2012-12-19  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.md (f_minmaxs, f_minmaxd): New types.
* config/arm/vfp.md (smax<mode>3): New pattern.
(smin<mode>3): Likewise.

gcc/testsuite/

2012-12-19  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* gcc.target/arm/vmaxnmdf.c: New test.
* gcc.target/arm/vmaxnmsf.c: Likewise.
* gcc.target/arm/vminnmsf.c: Likewise.
* gcc.target/arm/vminnmdf.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194612 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agolibgomp/
burnus [Wed, 19 Dec 2012 15:02:50 +0000 (15:02 +0000)]
libgomp/
2012-12-19  Tobias Burnus  <burnus@net-b.de>

        * testsuite/libgomp.fortran/use_intrinsic_1.f90: New; moved
        from gcc/testsuite/gfortran.dg/gomp/use_intrinsic_1.f90.

gcc/testsuite/
2012-12-19  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/gomp/use_intrinsic_1.f90: Moved
        to libgomp/testsuite/libgomp.fortran/use_intrinsic_1.f90.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194611 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Richard Biener <rguenther@suse.de>
rguenth [Wed, 19 Dec 2012 14:38:10 +0000 (14:38 +0000)]
2012-12-19  Richard Biener  <rguenther@suse.de>

* targhooks.h (default_canonicalize_comparison): Fix prototype.
* targhooks.c (default_canonicalize_comparison): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194610 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Richard Biener <rguenther@suse.de>
rguenth [Wed, 19 Dec 2012 13:53:18 +0000 (13:53 +0000)]
2012-12-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/55736
PR tree-optimization/55703
* gimplify.c (prune_expr_location): New function.
(unshare_expr_without_location): Likewise.
* tree.h (unshare_expr_without_location): Declare.
* ipa-prop.c (prune_expression_for_jf): Remove.
(prune_expression_for_jf_1): Likewise.
(ipa_set_jf_constant): Use unshare_expr_without_location.
(ipa_set_jf_arith_pass_through): Likewise.
(determine_known_aggregate_parts): Likewise.
* tree-switch-conversion.c (build_constructors): Use
unshare_expr_without_location on all constructor elements.

* gcc.dg/lto/pr55703_0.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194609 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Wed, 19 Dec 2012 12:39:17 +0000 (12:39 +0000)]
2012-12-19  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* target.def: Define canonicalize_comparison hook.
* targhooks.h (default_canonicalize_comparison): New prototype.
* targhooks.c (default_canonicalize_comparison): New function.
* doc/tm.texi: Add documentation for the new target hook.
* doc/tm.texi.in: Likewise.
* combine.c (try_combine): Adjust to use the target hook.
* config/alpha/alpha.h (CANONICALIZE_COMPARISON): Remove macro
definition.
* config/alpha/alpha.c (alpha_canonicalize_comparison): New
function.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/arm/arm-protos.h (arm_canonicalize_comparison): Remove
prototype.
* config/arm/arm.c (arm_canonicalize_comparison): Add new
parameter.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/arm/arm.h (CANONICALIZE_COMPARISON): Remove macro
definition.
* config/s390/s390-protos.h (s390_canonicalize_comparison): Remove
prototype.
* config/s390/s390.c (s390_canonicalize_comparison): Add new
parameter.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/s390/s390.h (CANONICALIZE_COMPARISON): Remove macro
definition.
* config/sh/sh-protos.h (sh_canonicalize_comparison): Remove
prototype.
* config/sh/sh.c (sh_canonicalize_comparison): Add new prototype.  New
function overloading the old one.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/sh/sh.h (CANONICALIZE_COMPARISON): Remove macro
definition.
* config/spu/spu.c (spu_canonicalize_comparison): New function.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/spu/spu.h (CANONICALIZE_COMPARISON): Remove macro
definition.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194608 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR debug/55730
jakub [Wed, 19 Dec 2012 12:16:56 +0000 (12:16 +0000)]
PR debug/55730
* dwarf2out.c (mem_loc_descriptor): Ignore CLOBBER.
* valtrack.c (gen_lowpart_for_debug): New function.
(propagate_for_debug): Temporarily set rtl_hooks.gen_lowpart_no_emit
to gen_lowpart_for_debug.

* gcc.dg/debug/pr55730.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194607 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR tree-optimization/55683
hubicka [Wed, 19 Dec 2012 11:42:30 +0000 (11:42 +0000)]
PR tree-optimization/55683
* g++.dg/ipa/devirt-9.C: New testcase.

* ipa-prop.c (try_make_edge_direct_virtual_call): Look into constants for binfo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194606 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/ChangeLog:
xguo [Wed, 19 Dec 2012 11:40:52 +0000 (11:40 +0000)]
gcc/ChangeLog:

2012-12-19  Terry Guo  <terry.guo@arm.com>

        * config/arm/arm.c (thumb_find_work_register): Check argument
        register number based on current PCS.

gcc/testsuite/ChangeLog:

2012-12-19  Terry Guo  <terry.guo@arm.com>

        * gcc.target/arm/thumb-find-work-register.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194605 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-19 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 19 Dec 2012 09:21:17 +0000 (09:21 +0000)]
2012-12-19  Tobias Burnus  <burnus@net-b.de>
            Jakub Jelinek  <jakub@redhat.com>
            Janus Weil  <janus@gcc.gnu.org>

        PR fortran/55636
        PR fortran/55733
        * gfortran.h (GFC_PREFIX): Define.
        * trans-decl.c (gfc_create_string_length): For VAR_DECLs that
        will be TREE_STATIC, use GFC_PREFIX to mangle the names. Handle
        -fno-automatic
        (gfc_trans_deferred_vars): Don't free variables SAVEd via
        -fno-automatic.

2012-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55733
        * gfortran.dg/save_5.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194604 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Wed, 19 Dec 2012 00:18:34 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194597 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c/39464
jakub [Tue, 18 Dec 2012 22:48:04 +0000 (22:48 +0000)]
PR c/39464
* c-typeck.c (convert_for_assignment): For -Wpointer-sign
warning require that both c_common_unsigned_type as well as
c_common_signed_type is the same for both mvl and mvr types.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194594 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agolibgo: Link against libatomic_convenience.la.
ian [Tue, 18 Dec 2012 22:07:38 +0000 (22:07 +0000)]
libgo: Link against libatomic_convenience.la.

gcc/go:
PR go/55201
* gospec.c: Revert last patch.

gcc/testsuite:
PR go/55201
* lib/go.exp: Revert last patch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194593 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR go/55201
ian [Tue, 18 Dec 2012 22:04:08 +0000 (22:04 +0000)]
PR go/55201
* Makefile.am (noinst_LTLIBRARIES): Define new make variable.
(libatomic_convenience_la_SOURCES): Likewise.
(libatomic_convenience_la_LIBADD): Likewise.
* Makefile.in: Rebuild.
* testsuite/Makefile.in: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194592 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR target/55562
jakub [Tue, 18 Dec 2012 21:40:29 +0000 (21:40 +0000)]
PR target/55562
* sbitmap.c (bitmap_and, bitmap_xor, bitmap_ior): Return whether
dst sbitmap changed even if it doesn't have popcount.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194591 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago[AArch64] Fix warning in aarch64.md
jgreenhalgh [Tue, 18 Dec 2012 17:46:48 +0000 (17:46 +0000)]
[AArch64] Fix warning in aarch64.md

gcc/
* config/aarch64/aarch64.md (insv_imm<mode>): Add modes
for source operands.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194589 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago[AArch64] Fix some warnings about unused variables.
jgreenhalgh [Tue, 18 Dec 2012 17:43:25 +0000 (17:43 +0000)]
[AArch64] Fix some warnings about unused variables.

gcc/
* config/aarch64/aarch64.c (aarch64_simd_attr_length_move):
Remove unused variables.
(aarch64_split_compare_and_swap): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194588 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-12-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
ktkachov [Tue, 18 Dec 2012 16:43:22 +0000 (16:43 +0000)]
2012-12-18  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/driver-arm.c (arm_cpu_table):
Add Cortex-A7.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194587 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR other/54324
aldyh [Tue, 18 Dec 2012 16:21:57 +0000 (16:21 +0000)]
PR other/54324
* doc/install.texi (Tools/packages necessary for building GCC):
Suggest --disable-stage1-checking for older GCC's.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194586 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR other/54324
aldyh [Tue, 18 Dec 2012 15:26:27 +0000 (15:26 +0000)]
PR other/54324
* tree-ssa-coalesce.c (struct ssa_name_var_hash): Remove "union"
from template parameter.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194584 138bc75d-0d04-0410-961f-82ee72b054a4