platform/upstream/linaro-gcc.git
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

11 years ago PR other/54324
aldyh [Tue, 18 Dec 2012 15:19:43 +0000 (15:19 +0000)]
PR other/54324
* ansidecl.h (ATTRIBUTE_UNUSED): Do not set __attribute__ for GCC
< 3.4.

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

11 years ago2012-12-18 Richard Biener <rguenther@suse.de>
rguenth [Tue, 18 Dec 2012 14:39:49 +0000 (14:39 +0000)]
2012-12-18  Richard Biener  <rguenther@suse.de>

PR middle-end/54838
* cfgloopmanip.c (fix_loop_structure): Re-discover latch
edges first and mark loops for removal if no latch edges remain.
Properly re-create LOOPS_HAVE_FALLTHRU_PREHEADERS.
* loop-init.c (loop_optimizer_finalize): Set
LOOPS_MAY_HAVE_MULTIPLE_LATCHES.

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

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

11 years agolibgo: Link against libatomic.
ian [Tue, 18 Dec 2012 14:28:24 +0000 (14:28 +0000)]
libgo: Link against libatomic.

./:
PR go/55201
* Makefile.def (all-target-libgo): Depend on all-target-libatomic.
* Makefile.in: Regenerate.
gcc/go:
PR go/55201
* gospec.c (LIBATOMIC): Define.
(LIBATOMIC_PROFILE): Define.
(lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
gcc/testsuite:
* lib/go.exp (go_link_flags): Add libatomic location to flags and
ld_library_path.

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

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

* gcc.dg/tree-ssa/reassoc-19.c: Adjust.

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

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

PR tree-optimization/55555
* tree-ssa-loop-niter.c (idx_infer_loop_bounds): Properly
analyze evolution of the index for the loop it is used in.
* tree-scalar-evolution.c (instantiate_scev_name): Take
inner loop we will be creating a chrec for.  Generalize
fix for PR40281 and prune invalid SCEVs.
(instantiate_scev_poly): Likewise - pass down inner loop
we will be creating a chrec for.
(instantiate_scev_binary): Take and pass through inner loop.
(instantiate_array_ref): Likewise.
(instantiate_scev_convert): Likewise.
(instantiate_scev_not): Likewise.
(instantiate_scev_3): Likewise.
(instantiate_scev_2): Likewise.
(instantiate_scev_1): Likewise.
(instantiate_scev_r): Likewise.
(resolve_mixers): Adjust.
(instantiate_scev): Likewise.

* gcc.dg/torture/pr55555.c: New testcase.
* gcc.dg/vect/vect-iv-11.c: Adjust.

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

11 years ago * doc/xml/manual/abi.xml: Update URLs for C++ ABI.
redi [Tue, 18 Dec 2012 11:08:33 +0000 (11:08 +0000)]
* doc/xml/manual/abi.xml: Update URLs for C++ ABI.
* doc/xml/manual/policy_data_structures_biblio.xml: Add xmlns
attribute.
* doc/xml/manual/debug_mode.xml: Give filenames to chunks.
* doc/xml/manual/diagnostics.xml: Likewise.
* doc/xml/manual/extensions.xml: Likewise.
* doc/xml/manual/bitmap_allocator.xml: Likewise.
* doc/xml/manual/mt_allocator.xml: Likewise.
* doc/xml/manual/policy_data_structures.xml: Likewise.
* doc/xml/manual/parallel_mode.xml: Likewise.
* doc/xml/manual/profile_mode.xml: Likewise.
* doc/xml/manual/spine.xml: Likewise. Update copyright years.
* doc/html/*: Regenerate.

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

11 years ago PR debug/55717
jakub [Tue, 18 Dec 2012 10:50:47 +0000 (10:50 +0000)]
PR debug/55717
* rtlhooks-def.h (RTL_HOOKS_GEN_LOWPART_NO_EMIT): Define to
gen_lowpart_if_possible.
(gen_lowpart_no_emit_general): Remove prototype.
* rtlhooks.c (gen_lowpart_no_emit_general): Removed.
* simplify-rtx.c (simplify_unary_operation_1,
simplify_binary_operation_1): Continue simplifying if
rtl_hooks.gen_lowpart_no_emit returns NULL_RTX.
* dwarf2out.c (mem_loc_descriptor) <case TRUNCATE>: Handle
truncation like lowpart SUBREG.

* testsuite/g++.dg/opt/pr55717.C: New test.

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

11 years agoPR gcc/55716 [4.8 Regression] gjavah throws an exception
aph [Tue, 18 Dec 2012 10:00:18 +0000 (10:00 +0000)]
PR gcc/55716  [4.8 Regression] gjavah throws an exception

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

11 years ago2012-12-17 Andrew Haley <aph@redhat.com>
aph [Tue, 18 Dec 2012 09:57:48 +0000 (09:57 +0000)]
2012-12-17  Andrew Haley  <aph@redhat.com>

* tools/gnu/classpath/tools/javah/Main.java (parseClasses): Don't
scan inner classes if our item is a file.

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

11 years ago * doc/contrib.texi (Contributors): Update Kaveh Ghazi's entry;
gerald [Tue, 18 Dec 2012 05:37:26 +0000 (05:37 +0000)]
* doc/contrib.texi (Contributors): Update Kaveh Ghazi's entry;
remove broken link to Rutgers University.

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

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

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

11 years ago * include/std/future (__async_sfinae_helper): Remove.
redi [Mon, 17 Dec 2012 21:30:51 +0000 (21:30 +0000)]
* include/std/future (__async_sfinae_helper): Remove.

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

11 years agolog/syslog: Solaris portability patches.
ian [Mon, 17 Dec 2012 21:07:27 +0000 (21:07 +0000)]
log/syslog: Solaris portability patches.

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

11 years agoFix whitespace in gcc/ChangeLog.
jbglaw [Mon, 17 Dec 2012 17:39:53 +0000 (17:39 +0000)]
Fix whitespace in gcc/ChangeLog.

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

11 years ago * varasm.c (pending_assemble_externals_processed): Guard
jbglaw [Mon, 17 Dec 2012 17:37:47 +0000 (17:37 +0000)]
* varasm.c (pending_assemble_externals_processed): Guard
with ASM_OUTPUT_EXTERNAL.

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

11 years ago2012-12-17 Andrew Stubbs <ams@codesourcery.com>
uweigand [Mon, 17 Dec 2012 16:39:19 +0000 (16:39 +0000)]
2012-12-17  Andrew Stubbs  <ams@codesourcery.com>
    Ulrich Weigand  <ulrich.weigand@linaro.org>

gcc/
* config/arm/arm.md (zero_extend<mode>di2): Add extra alternatives
for NEON registers.
Add alternative for one-instruction extend-in-place.
(extend<mode>di2): Likewise.
Add constraints for Thumb-mode memory loads.
Prevent extend splitters doing NEON alternatives.
* config/arm/iterators.md (qhs_extenddi_cstr, qhs_zextenddi_cstr):
Adjust constraints to add new alternatives.
* config/arm/neon.md: Add splitters for zero- and sign-extend.

gcc/testsuite/
* gcc.target/arm/neon-extend-1.c: New file.
* gcc.target/arm/neon-extend-2.c: New file.

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

11 years agogcc/
gretay [Mon, 17 Dec 2012 15:49:24 +0000 (15:49 +0000)]
gcc/

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

        * config/arm/arm.md (type): Add "simple_alu_shift" to attribute "type".
        (core_cycles): Update for simple_alu_shift.
        (thumb1_zero_extendhisi2,arm_zero_extendhisi2_v6): Use simple_alu_shift
        instead of a CPU-speicific condition for "type" attribute.
        (thumb1_zero_extendqisi2_v6,arm_zero_extendqisi2_v6): Likewise.
        (thumb1_extendhisi2,arm_extendhisi2_v6,arm_extendqisi_v6): Likewise.
        (thumb1_extendqisi2): Likewise.
        * config/arm/thumb2.md (thumb2_extendqisi_v6): Likewise.
        (thumb2_zero_extendhisi2_v6,thumb2_zero_extendqisi2_v6) Likewise.
        * config/arm/arm1020e.md (alu_shift_op): Use simple_alu_shift.
        * config/arm/arm1026ejs.md (alu_shift_op): Likewise.
        * config/arm/arm1136jfs.md (11_alu_shift_op): Likewise.
        * config/arm/arm926ejs.md (9_alu_op): Likewise.
        * config/arm/cortex-a15.md (cortex_a15_alu_shift): Likewise.
        * config/arm/cortex-a5.md (cortex_a5_alu_shift): Likewise.
        * config/arm/cortex-a8.md (cortex_a8_alu_shift,cortex_a8_mov): Likewise.
        * config/arm/cortex-a9.md (cortex_a9_dp,cortex_a9_dp_shift): Likewise.
        * config/arm/cortex-m4.md (cortex_m4_alu): Likewise.
        * config/arm/cortex-r4.md (cortex_r4_alu_shift): Likewise.
        * config/arm/fa526.md (526_alu_shift_op): Likewise.
        * config/arm/fa606te.md (fa606te_core): Likewise.
        * config/arm/fa626te.md (626te_alu_shift_op): Likewise.
        * config/arm/fa726te.md (726te_alu_shift_op): Likewise.
        * config/arm/fmp626.md (mp626_alu_shift_op): Likewise.

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