gcc.git
9 years agosem_disp.adb (Is_Dynamically_Tagged): when applied to an entity or a function call...
Ed Schonberg [Fri, 30 Jan 2015 09:29:51 +0000 (09:29 +0000)]
sem_disp.adb (Is_Dynamically_Tagged): when applied to an entity or a function call, return True if type is class-wide.

2015-01-30  Ed Schonberg  <schonberg@adacore.com>

* sem_disp.adb (Is_Dynamically_Tagged): when applied to an entity
or a function call, return True if type is class-wide.
* sem_res.adb (Resolve_Case_Expression, Resolve_If_Expression);
Apply RM 4.5.7 (17/3): all or none of the dependent expression
of a conditional expression must be dynamically tagged.

From-SVN: r220276

9 years agore PR tree-optimization/64829 ([ARM] ICE at -O3 in vect_get_vec_def_for_stmt_copy)
Richard Biener [Fri, 30 Jan 2015 09:22:17 +0000 (09:22 +0000)]
re PR tree-optimization/64829 ([ARM] ICE at -O3 in vect_get_vec_def_for_stmt_copy)

2015-01-30  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64829
* tree-vect-patterns.c (vect_handle_widen_op_by_const): Do
not add a widening conversion pattern but hand off extra
widenings to callers.
(vect_recog_widen_mult_pattern): Handle extra widening produced
by vect_handle_widen_op_by_const.
(vect_recog_widen_shift_pattern): Likewise.
(vect_pattern_recog_1): Remove excess vertical space in dumping.
* tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): Likewise.
(vect_init_vector_1): Likewise.
(vect_get_vec_def_for_operand): Likewise.
(vect_finish_stmt_generation): Likewise.
(vectorizable_load): Likewise.
(vect_analyze_stmt): Likewise.
(vect_is_simple_use): Likewise.

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

From-SVN: r220275

9 years ago[multiple changes]
Arnaud Charlet [Fri, 30 Jan 2015 09:00:10 +0000 (10:00 +0100)]
[multiple changes]

2015-01-30  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Function_Return): In an extended return
statement, apply accessibility check to result object when there
is no initializing expression (Ada 2012 RM 6.5 (5.4/3))

2015-01-30  Robert Dewar  <dewar@adacore.com>

* sem_ch4.adb (Analyze_If_Expression): Allow for non-standard
Boolean for case where ELSE is omitted.
* sem_res.adb: Minor reformatting.

From-SVN: r220274

9 years ago* combine.c (try_combine): Fix typo in comment.
Jeff Law [Fri, 30 Jan 2015 05:50:33 +0000 (22:50 -0700)]
* combine.c (try_combine): Fix typo in comment.

From-SVN: r220273

9 years agore PR target/64580 (very high rs6000_stack_info() usage during LTO Firefox build...
Segher Boessenkool [Fri, 30 Jan 2015 05:35:52 +0000 (06:35 +0100)]
re PR target/64580 (very high rs6000_stack_info() usage during LTO Firefox build on ppc64)

PR target/64580
* config.rs6000/rs6000.c (compute_vrsave_mask): Reverse loop order.
(rs6000_stack_info): Add assert.
(rs6000_output_savres_externs): New function, split off from...
(rs6000_output_function_prologue): ... here.  Do not call it for
thunks.

From-SVN: r220272

9 years agocompiler: Fix -fgo-prefix handling.
Ian Lance Taylor [Fri, 30 Jan 2015 00:35:44 +0000 (00:35 +0000)]
compiler: Fix -fgo-prefix handling.

There was bug in the fix for PR 61880: it only worked fully
correctly for code compiled with -fgo-pkgpath.  For code that
used -fgo-prefix, or that used neither option, the '.'
separating the prefix and the package name was converted to an
underscore, which did not happen before.  This broke SWIG and
any other code that expected specific symbol names.
Fortunately all code compiled in libgo and all code compiled
by the go tool uses -fgo-pkgpath, so this probably did not
affect very many people.

This is an incomplete fix that does not modify the package
file format, for use on both mainline and the GCC 4.9 branch.
A follow on patch will fully fix the problem.

From-SVN: r220268

9 years agoDaily bump.
GCC Administrator [Fri, 30 Jan 2015 00:18:08 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r220267

9 years agore PR libffi/64855 (FAIL: libffi.call/* -W -Wall -Wno-psabi -O0 -DABI_NUM=* -DABI_AT...
Jack Howarth [Thu, 29 Jan 2015 22:09:16 +0000 (22:09 +0000)]
re PR libffi/64855 (FAIL: libffi.call/*  -W -Wall -Wno-psabi -O0 -DABI_NUM=* -DABI_ATTR=* execution test on x86_64-apple-darwin*)

2015-01-29  Jack Howarth  <howarth.at.gcc@gmail.com>

PR libffi/64855
* testsuite/lib/libffi.exp: Don't set targetabis on darwin.

From-SVN: r220264

9 years agore PR c/64709 (Bogus -Wmissing-field-initializers warning)
Marek Polacek [Thu, 29 Jan 2015 21:02:21 +0000 (21:02 +0000)]
re PR c/64709 (Bogus -Wmissing-field-initializers warning)

PR c/64709
* c-typeck.c (pop_init_level): If constructor_elements has
exactly one element with integer_zerop value, set constructor_zeroinit
to 1.  Remove braces around warning_init call.

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

From-SVN: r220263

9 years agore PR sanitizer/64717 (-fsanitize=vptr leads to warning: ‘<anonymous>’ may be used...
Jakub Jelinek [Thu, 29 Jan 2015 20:40:07 +0000 (21:40 +0100)]
re PR sanitizer/64717 (-fsanitize=vptr leads to warning: ‘<anonymous>’ may be used uninitialized in this function [-Wmaybe-uninitialized])

PR c++/64717
* cp-ubsan.c (cp_ubsan_instrument_vptr): Don't wrap vptr
into SAVE_EXPR.

* g++.dg/ubsan/pr64717-1.C: New test.
* g++.dg/ubsan/pr64717-2.C: New test.

From-SVN: r220262

9 years agointrinsic.texi (CO_BROADCAST): Correct argument description.
Tobias Burnus [Thu, 29 Jan 2015 20:24:46 +0000 (21:24 +0100)]
intrinsic.texi (CO_BROADCAST): Correct argument description.

2015-01-29  Tobias Burnus  <burnus@net-b.de>

        * intrinsic.texi (CO_BROADCAST): Correct argument description.

From-SVN: r220261

9 years agopr64801.c: Fix scan-tree-dump-not directive.
Uros Bizjak [Thu, 29 Jan 2015 19:55:57 +0000 (20:55 +0100)]
pr64801.c: Fix scan-tree-dump-not directive.

* gcc.dg/tree-ssa/pr64801.c: Fix scan-tree-dump-not directive.

From-SVN: r220260

9 years agoacinclude.m4 (VTV_CYGMIN): Use x$vtv_cygmin = xyes instead of $vtv_cygmin = yes.
Jakub Jelinek [Thu, 29 Jan 2015 18:36:03 +0000 (19:36 +0100)]
acinclude.m4 (VTV_CYGMIN): Use x$vtv_cygmin = xyes instead of $vtv_cygmin = yes.

* acinclude.m4 (VTV_CYGMIN): Use x$vtv_cygmin = xyes instead of
$vtv_cygmin = yes.  Initialize vtv_cygmin=no unconditionally first.
* configure: Regenerated.

From-SVN: r220259

9 years agoDefine VTV_CYGMIN after vtv_cygmin is set
H.J. Lu [Thu, 29 Jan 2015 18:21:33 +0000 (18:21 +0000)]
Define VTV_CYGMIN after vtv_cygmin is set

* acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
after vtv_cygmin is set.
* configure: Regenerated.

From-SVN: r220258

9 years agoacinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN unconditionally.
Matthias Klose [Thu, 29 Jan 2015 18:12:29 +0000 (18:12 +0000)]
acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN unconditionally.

2015-01-29  Matthias Klose  <doko@ubuntu.com>

        * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
        unconditionally.
        * configure: Regenerate.

From-SVN: r220257

9 years agoCommitting generated configure & Makefile.in pieces of VTV Cygwin patch (from Patrick...
Caroline Tice [Thu, 29 Jan 2015 16:47:25 +0000 (08:47 -0800)]
Committing generated configure & Makefile.in pieces of VTV Cygwin patch (from Patrick Wollgast).

Committing generated configure & Makefile.in pieces of
VTV Cygwin patch (from Patrick Wollgast).  Forgot to
commit these with the rest of the patch.

From-SVN: r220254

9 years agoPR jit/64780: configure: --enable-host-shared and the jit
David Malcolm [Thu, 29 Jan 2015 16:25:14 +0000 (16:25 +0000)]
PR jit/64780: configure: --enable-host-shared and the jit

ChangeLog:
PR jit/64780
* configure.ac: Require the user to explicitly specify
--enable-host-shared if the jit is enabled.
* configure: Regenerate.

From-SVN: r220253

9 years agore PR c++/49508 (Bogus "control reaches end of non-void function" warning)
Jason Merrill [Thu, 29 Jan 2015 16:10:08 +0000 (11:10 -0500)]
re PR c++/49508 (Bogus "control reaches end of non-void function" warning)

PR c++/49508
* semantics.c (finish_return_stmt): Suppress -Wreturn-type on
erroneous return statement.

From-SVN: r220252

9 years agore PR c++/64521 (ICE with -frepo)
Jason Merrill [Thu, 29 Jan 2015 16:09:56 +0000 (11:09 -0500)]
re PR c++/64521 (ICE with -frepo)

PR c++/64521
* repo.c (repo_emit_p): It's OK for a clone to be extern at this
point.

From-SVN: r220251

9 years agore PR target/15184 (Direct access to byte inside word not working with -march=pentiumpro)
Jeff Law [Thu, 29 Jan 2015 14:30:45 +0000 (07:30 -0700)]
re PR target/15184 (Direct access to byte inside word not working with -march=pentiumpro)

PR target/15184
* combine.c (try_combine): If I0 is a memory load and I3 a store
to a related address, increase the "goodness" of doing a 4-insn
combination with I0-I3.
(make_field_assignment): Handle SUBREGs in the ior+and case.

PR target/15184
* gcc.target/i386/pr15184-1.c: New test.
* gcc.target/i386/pr15184-2.c: New test.

From-SVN: r220249

9 years agore PR tree-optimization/64746 (Loop with nested load/stores is not vectorized using...
Yuri Rumyantsev [Thu, 29 Jan 2015 13:52:28 +0000 (13:52 +0000)]
re PR tree-optimization/64746 (Loop with nested load/stores is not vectorized using aggressive if-conversion.)

gcc/

PR tree-optimization/64746
* tree-if-conv.c (mask_exists): New function.
(predicate_mem_writes): Save created mask with given size for further
use.
(stmt_is_root_of_bool_pattern): Remove argument VAR and store to it.
(ifcvt_repair_bool_pattern): Collect all statements that are root
of bool pattern and use iterative algorithm to remove multiple uses
of predicates, display number of required iterations.

gcc/testsuite/

PR tree-optimization/64746
* gcc.target/i386/avx2-vect-aggressive-1.c: New test.

From-SVN: r220248

9 years agore PR tree-optimization/64853 (wrong code at -Os and above on x86_64-linux-gnu)
Richard Biener [Thu, 29 Jan 2015 13:50:37 +0000 (13:50 +0000)]
re PR tree-optimization/64853 (wrong code at -Os and above on x86_64-linux-gnu)

2015-01-29  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64853
* tree-vrp.c (vrp_valueize_1): Do not return anything if the
stmt will get simulated again.
* tree-ssa-ccp.c (valueize_op_1): Likewise.

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

From-SVN: r220247

9 years ago[ARM][cleanup] Simplify some expressions in some epilogue-related functions
Kyrylo Tkachov [Thu, 29 Jan 2015 13:36:22 +0000 (13:36 +0000)]
[ARM][cleanup] Simplify some expressions in some epilogue-related functions

* config/arm/arm.c (arm_emit_multi_reg_pop): Simplify definition of
return_in_pc.  Remove redundant assignments.
(thumb2_emit_ldrd_pop): Simplify definition of return_in_pc.
(arm_expand_epilogue): Don't compare boolean with true in if condition.

From-SVN: r220246

9 years agoi386.c (ix86_mode_after): Make static.
Uros Bizjak [Thu, 29 Jan 2015 13:16:35 +0000 (14:16 +0100)]
i386.c (ix86_mode_after): Make static.

* config/i386/i386.c (ix86_mode_after): Make static.

From-SVN: r220245

9 years agore PR target/64844 (Vectorization inhibited in gcc5 when loop starts with elem[1...
Richard Biener [Thu, 29 Jan 2015 12:53:39 +0000 (12:53 +0000)]
re PR target/64844 (Vectorization inhibited in gcc5 when loop starts with elem[1], aarch64 perf regression from 4.9.1)

2015-01-29  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64844
* tree-vect-loop.c (vect_estimate_min_profitable_iters): Always
dump cost model analysis.
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment):
Do not register adjusted load/store costs here.

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

From-SVN: r220244

9 years agoatomic_base.h: Use __always_inline__ instead of always_inline.
Jonathan Wakely [Thu, 29 Jan 2015 12:47:20 +0000 (12:47 +0000)]
atomic_base.h: Use __always_inline__ instead of always_inline.

* include/bits/atomic_base.h: Use __always_inline__ instead of
always_inline.
* include/bits/atomic_futex.h: Likewise.
* include/bits/c++config: Use __abi_tag__ instead of abi_tag.
* include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Use
__packed__ instead of packed.
* include/std/shared_mutex: Use __unused__ instead of unused.
* testsuite/17_intro/headers/c++1998/all_attributes.cc: New.
* testsuite/17_intro/headers/c++200x/all_attributes.cc: New.
* testsuite/17_intro/headers/c++2014/all_attributes.cc: New.

From-SVN: r220243

9 years agoi386-protos.h (ix86_use_pseudo_pic_reg): New.
Ilya Enkovich [Thu, 29 Jan 2015 12:24:06 +0000 (12:24 +0000)]
i386-protos.h (ix86_use_pseudo_pic_reg): New.

* config/i386/i386-protos.h (ix86_use_pseudo_pic_reg): New.
* config/i386/i386.h (PIC_OFFSET_TABLE_REGNUM): Simplify by
using x86_use_pseudo_pic_reg.
* config/i386/i386.c (ix86_conditional_register_usage): Remove
support for fixed PIC register.
(ix86_use_pseudo_pic_reg): Not static any more.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r220242

9 years agore PR middle-end/64809 (ICE at -O3 with -g enabled on x86_64-linux-gnu (in 32-bit...
Yuri Rumyantsev [Thu, 29 Jan 2015 12:20:55 +0000 (12:20 +0000)]
re PR middle-end/64809 (ICE at -O3 with -g enabled on x86_64-linux-gnu (in 32-bit mode))

gcc/testsuite/

PR middle-end/64809
* gcc.dg/pr64809.c: Delete.

From-SVN: r220241

9 years agore PR middle-end/64805 (Specific use of __attribute ((always_inline)) breaks MPX...
Ilya Enkovich [Thu, 29 Jan 2015 11:03:02 +0000 (11:03 +0000)]
re PR middle-end/64805 (Specific use of __attribute ((always_inline)) breaks MPX functionality with -fcheck-pointer-bounds -mmpx)

gcc/

PR middle-end/64805
* ipa-inline.c (early_inliner): Rebuild IPA_REF_CHKP reference
to avoid error in cgraph node verification.

gcc/testsuite/

PR middle-end/64805
* gcc.target/i386/pr64805.c: New.

From-SVN: r220240

9 years agoRun guality tests on Solaris
Rainer Orth [Thu, 29 Jan 2015 10:12:14 +0000 (10:12 +0000)]
Run guality tests on Solaris

* gcc.dg/guality/guality.h (main): Add argv[0] to
guality_gdb_command.

From-SVN: r220237

9 years ago* doc/standards.texi: Reflect that the default for C is gnu11.
Marek Polacek [Thu, 29 Jan 2015 10:01:38 +0000 (10:01 +0000)]
* doc/standards.texi: Reflect that the default for C is gnu11.

From-SVN: r220236

9 years agoreorg.c (relax_delay_slots): Take account of NOTE_INSN_SWITCH_TEXT_SECTIONS and targe...
Kaz Kojima [Thu, 29 Jan 2015 08:36:38 +0000 (08:36 +0000)]
reorg.c (relax_delay_slots): Take account of NOTE_INSN_SWITCH_TEXT_SECTIONS and targetm.can_follow_jump.

* reorg.c (relax_delay_slots): Take account of NOTE_INSN_SWITCH_TEXT_SECTIONS
  and targetm.can_follow_jump.

From-SVN: r220235

9 years agoCommitting VTV Cygwin patch for Patrick Wollgast
Caroline Tice [Thu, 29 Jan 2015 08:03:56 +0000 (00:03 -0800)]
Committing VTV Cygwin patch for Patrick Wollgast

* gcc/config/i386/cygwin.h (STARTFILE_SPEC): Add vtv_start.o,
    if -fvtable-verify=preinit/std is used.
* gcc/config/i386/mingw-w64.h (STARTFILE_SPEC): Likewise.
* gcc/config/i386/mingw32.h (STARTFILE_SPEC): Likewise.
* gcc/config/i386/cygwin.h (ENDFILE_SPEC): Add vtv_end.o,
    if -fvtable-verify=preinit/std is used.
* gcc/config/i386/mingw32.h (ENDFILE_SPEC): Likewise.
* gcc/config/i386/cygwin.h (LIB_SPEC): Pass -lvtv and -lpsapi,
    if -fvtable-verify=preinit/std is used.
* gcc/config/i386/mingw-w64.h (LIB_SPEC): Likewise.
* gcc/config/i386/mingw32.h (LIB_SPEC): Likewise.

* gcc/cp/vtable-class-hierarchy.c (vtv_generate_init_routine): Add
    check for not TARGET_PECOFF at the VTV_PREINIT_PRIORITY checks.

* gcc/varasm.c (assemble_variable): Add code to properly set the comdat
    section and name for the .vtable_map_vars section in case the
    target is PE or COFF.

* libgcc/Makefile.in: Move rules to build vtv_*.o out of the check
    for CUSTOM_CRTSTUFF.
* libgcc/config.host (i[34567]86-*-cygwin*, x86_64-*-cygwin*, i[34567]86-*-mingw*)
    (x86_64-*-mingw*): Only add vtv_*.o to extra_parts if enable_vtable_verify.

* libstdc++-v3/acinclude.m4: Define VTV_CYGMIN.
* libstdc++-v3/configure: Regenerate.

* libstdc++-v3/libsupc++/Makefile.am: Add vtv_sources only to
    libsupc___la_SOURCES and libsupc__convenience_la_SOURCES if VTV_CYGMIN is
    not set.
* libstdc++-v3/libsupc++/Makefile.in: Regenerated.
* libstdc++-v3/libsupc++/vtv_stubs.cc: Add none weak declaration of every
    function for Cygwin and MinGW.

* libstdc++-v3/src/Makefile.am: Add libvtv.la to toolexeclib_LTLIBRARIES,
    if VTV_CYGMIN is set. Define libvtv_la_SOURCES, libvtv_la_LDFLAGS,
    libvtv_la_AM_CXXFLAGS and libvtv_la_LINK if VTV_CYGMIN is set.
* libstdc++-v3/src/Makefile.in: Regenerate.

* libvtv/Makefile.am : Add libvtv.la to toolexeclib_LTLIBRARIES, if VTV_CYGMIN
    is set. Define libvtv_la_LIBADD, libvtv_la_LDFLAGS, libvtv_stubs_la_LDFLAGS
    and libvtv_stubs_la_SOURCES if VTV_CYGMIN is set. Add obstac.c to
    libvtv_la_SOURCES if VTV_CYGMIN is set.
* libvtv/Makefile.in : Regenerate.
* libvtv/aclocal.m4 : Regenerate.
* libvtv/configure : Regenerate.
* libvtv/configure.ac : Add ACX_LT_HOST_FLAGS. Define VTV_CYGMIN.
* libvtv/configure.tgt : (x86_64-*-cygwin*, i?86-*-cygwin*, x86_64-*-mingw*)
    (i?86-*-mingw*): Add to supported targets.
* libvtv/vtv_fail.cc : Skip inclusion of execinfo.h on Cygwin and MinGW.
(log_error_message): Skip calls to backtrace and backtrace_symbols_fd on Cygwin
    and MinGW.
* libvtv/vtv_malloc.cc : Include windows.h and skip sys/mman.h inclusion on
    Cygwin and MinGW. Add sysconf port on Cygwin and MinGW.
(obstack_chunk_alloc): Exchange call to mmap with call to VirtualAlloc on Cygwin
    and MinGW.
(__vtv_malloc_init): Exchange call to sysconf with call to port of sysconf on
    Cygwin and MinGW.
* libvtv/vtv_malloc.h : Declare mprotect and define PROT_READ and PROT_WRITE on
    Cygwin and MinGW.
* libvtv/map.h : Include stdint.h on MinGW.
* libvtv/rts.cc : Include windows.h, winternl.h and psapi.h, skip include of
    execinfo.h, sys/mman.h and link.h on Cygwin and MinGW.
    Add port of __fortify_fail on Cygwin and MinGW.
    Change ElfW (Addr) to uintptr_t on Cygwin and MinGW.
(read_section_offset_and_length): Add port for Cygwin and MinGW
(iterate_modules): New function.
(vtv_unprotect_vtable_vars): Use iterate_modules instead of dl_iterate_phdr on
    Cygwin and MinGW.
(vtv_protect_vtable_vars): Likewise.
(count_all_pages): Likewise.
(dl_iterate_phdr_count_pages): Don't build on Cygwin and MinGW.
* libvtv/utils.cc : Include windows.h and skip execinfo.h inclusion on
    Cygwin and MinGW.
(__vtv_open_log): Exchange call to getuid and getpid with GetCurrentProcessId and
    adjust call to snprintf accordingly on Cygwin and MinGW.
    Adjust calls to mkdir on MinGW.
    Adjust call to open on Cygwin and MinGW.
(__vtv_add_to_log): Adjust call to snprintf on Cygwin and MinGW.
(__vtv_log_verification_failure): Don't generate a backtrace on Cygwin and MinGW.

From-SVN: r220232

9 years agore PR ipa/64801 (kernel build failure due to ICF)
Jan Hubicka [Thu, 29 Jan 2015 07:43:14 +0000 (08:43 +0100)]
re PR ipa/64801 (kernel build failure due to ICF)

PR ipa/64801
* gcc.dg/tree-ssa/pr64801.c: New testcase.
* cgraphunit.c (init_lowered_empty_function): Add CoUNT parameter;
make sane BB profile.
(cgraph_node::expand_thunk): Make sane BB profile.
(cgraph_node::create_wrapper): Do not set call_stmt_cannot_inline_p.
* cgraph.h (init_lowered_empty_function): Update prototype.
* config/i386/i386.c (make_resolver_func): Update call.
* predict.c (gate): Disable branch prediction pass if
profile is already there.

From-SVN: r220230

9 years agooptc-save-gen.awk: flag_fp_contract_mode is no longer speical.
Jan Hubicka [Thu, 29 Jan 2015 05:05:48 +0000 (06:05 +0100)]
optc-save-gen.awk: flag_fp_contract_mode is no longer speical.

* optc-save-gen.awk: flag_fp_contract_mode is no longer speical.
* opth-gen.awk: Likewise.
* common.opt: Mark flag_fp_contract_mode as Optimization.

From-SVN: r220229

9 years agocygwin.h (LIBGCJ_SONAME): Set libgcj version to -16.
Bernd Edlinger [Thu, 29 Jan 2015 00:34:03 +0000 (00:34 +0000)]
cygwin.h (LIBGCJ_SONAME): Set libgcj version to -16.

2015-01-29  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * config/i386/cygwin.h (LIBGCJ_SONAME): Set libgcj version to -16.
        * config/i386/mingw32.h (LIBGCJ_SONAME): Set libgcj version to -16.

libjava/
2015-01-29  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * libtool-version: Add a comment about cygwin.

From-SVN: r220228

9 years agoDaily bump.
GCC Administrator [Thu, 29 Jan 2015 00:17:29 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r220227

9 years agoCall release_input_file only if not NULL
H.J. Lu [Wed, 28 Jan 2015 23:59:55 +0000 (23:59 +0000)]
Call release_input_file only if not NULL

* lto-plugin.c (claim_file_handler): Call release_input_file only
if it is not NULL.

From-SVN: r220224

9 years agoMark prs in changelog entry
Richard Henderson [Wed, 28 Jan 2015 23:27:52 +0000 (15:27 -0800)]
Mark prs in changelog entry

From-SVN: r220223

9 years agoMerge with upstream libffi db1b34b7e1f5e473d17557e454a29933dfecd1af
Richard Henderson [Wed, 28 Jan 2015 23:23:55 +0000 (15:23 -0800)]
Merge ... upstream libffi db1b34b7e1f5e473d17557e454a29933dfecd1af

Includes build fixes for Solaris and FreeBSD.

From-SVN: r220222

9 years agore PR libgomp/64635 (darwin produces libgomp-plugin-host_nonshm.1.dylib but tries...
Jack Howarth [Wed, 28 Jan 2015 21:25:19 +0000 (21:25 +0000)]
re PR libgomp/64635 (darwin produces libgomp-plugin-host_nonshm.1.dylib but tries to load libgomp-plugin-host_nonshm.so.1)

2015-01-28  Jack Howarth  <howarth.at.gcc@gmail.com>

PR libgomp/64635
* configure.tgt (*-*-aix*): Use config_path "aix posix".
(*-*-darwin*): Use config_path "bsd darwin posix".
(*-*-hpux*): Use config_path "hpux posix".
* target.c: Add include of plugin-suffix.h and use
SONAME_SUFFIX macro.
* config/aix/plugin-suffix.h: New file.
* config/darwin/plugin-suffix.h: New file.
* config/hpux/plugin-suffix.h: New file.
* config/posix/plugin-suffix.h: New file.

From-SVN: r220220

9 years agogcc/testsuite/
Oleg Endo [Wed, 28 Jan 2015 21:23:33 +0000 (21:23 +0000)]
gcc/testsuite/
Remove gcc/testsuite/ prefix in ChangeLog entry.

From-SVN: r220219

9 years agore PR libgomp/64635 (darwin produces libgomp-plugin-host_nonshm.1.dylib but tries...
Jack Howarth [Wed, 28 Jan 2015 21:23:14 +0000 (21:23 +0000)]
re PR libgomp/64635 (darwin produces libgomp-plugin-host_nonshm.1.dylib but tries to load libgomp-plugin-host_nonshm.so.1)

2015-01-28  Jack Howarth  <howarth.at.gcc@gmail.com>

PR libgomp/64635
* configure.tgt (*-*-aix*): Use config_path "aix posix".
(*-*-darwin*): Use config_path "bsd darwin posix".
(*-*-hpux*): Use config_path "hpux posix".
* target.c: Add include of plugin-suffix.h and use
SONAME_SUFFIX macro.
* config/aix/plugin-suffix.h: New file.
* config/darwin/plugin-suffix.h: New file.
* config/hpux/plugin-suffix.h: New file.
* config/posix/plugin-suffix.h: New file.

From-SVN: r220218

9 years agore PR target/64659 ([SH] Immedate values not used for atomic ops)
Oleg Endo [Wed, 28 Jan 2015 21:11:37 +0000 (21:11 +0000)]
re PR target/64659 ([SH] Immedate values not used for atomic ops)

gcc/
PR target/64659
* config/sh/predicates.md (atomic_arith_operand,
atomic_logical_operand): Remove.
* config/sh/sync.md (fetchop_predicate, fetchop_constraint): Remove.
(atomic_arith_operand_0): New predicate.
(atomic_compare_and_swap<mode>): Use arith_reg_dest for output values.
Use atomic_arith_operand_0 for input values.
(atomic_compare_and_swapsi_hard, atomic_compare_and_swap<mode>_hard,
atomic_compare_and_swap<mode>_soft_gusa,
atomic_compare_and_swap<mode>_soft_tcb,
atomic_compare_and_swap<mode>_soft_imask): Use arith_reg_dest and
arith_reg_operand instead of register_operand.
(atomic_exchange<mode>): Use arith_reg_dest for output value.  Use
atomic_arith_operand_0 for newval input.
(atomic_exchangesi_hard, atomic_exchange<mode>_hard,
atomic_exchange<mode>_soft_gusa, atomic_exchange<mode>_soft_tcb,
atomic_exchange<mode>_soft_imask): Use arith_reg_dest and
arith_reg_operand instead of register_operand.
(atomic_arith_operand_1, atomic_logical_operand_1): New predicates.
fetchop_predicate_1, fetchop_constraint_1_llcs,
fetchop_constraint_1_gusa, fetchop_constraint_1_tcb,
fetchop_constraint_1_imask): New code iterator attributes.
(atomic_fetch_<fetchop_name><mode>): Use arith_reg_dest instead of
register_operand.  Use fetchop_predicate_1.
(atomic_fetch_<fetchop_name>si_hard,
atomic_fetch_<fetchop_name><mode>_hard): Use arith_reg_dest instead of
register_operand.  Use fetchop_predicate_1, fetchop_constraint_1_llcs.
(atomic_fetch_<fetchop_name><mode>_soft_gusa): Use arith_reg_dest
and arith_reg_operand instead of register_operand.  Use
fetchop_predicate_1, fetchop_constraint_1_gusa.
(atomic_fetch_<fetchop_name><mode>_soft_tcb): Use arith_reg_dest
and arith_reg_operand instead of register_operand.  Use
fetchop_predicate_1, fetchop_constraint_1_tcb.  Adjust asm sequence
to allow R0 usage.
(atomic_fetch_<fetchop_name><mode>_soft_imask): Use arith_reg_dest
and arith_reg_operand instead of register_operand.  Use
fetchop_predicate_1, fetchop_constraint_1_imask.  Adjust asm sequence
to allow R0 usage.
(atomic_fetch_nand<mode>): Use arith_reg_dest instead of
register_operand.  Use atomic_logical_operand_1.
(atomic_fetch_nandsi_hard, atomic_fetch_nand<mode>_hard,
atomic_fetch_nand<mode>_soft_gusa): Use arith_reg_dest and
arith_reg_operand instead of register_operand.
(atomic_fetch_nand<mode>_soft_tcb, atomic_fetch_nand<mode>_soft_imask):
Use arith_reg_dest and arith_reg_operand instead of register_operand.
Use logical_operand and rK08.  Adjust asm sequence to allow R0 usage.
(atomic_<fetchop_name>_fetch<mode>): Use arith_reg_dest instead of
register_operand.  Use fetchop_predicate_1.
(atomic_<fetchop_name>_fetchsi_hard,
atomic_<fetchop_name>_fetch<mode>_hard): Use arith_reg_dest and
arith_reg_operand instead of register_operand.  Use fetchop_predicate_1,
fetchop_constraint_1_llcs.
(atomic_<fetchop_name>_fetch<mode>_soft_gusa): Use arith_reg_dest and
arith_reg_operand instead of register_operand.  Use fetchop_predicate_1,
fetchop_constraint_1_gusa.
(atomic_<fetchop_name>_fetch<mode>_soft_tcb): Use arith_reg_dest and
arith_reg_operand instead of register_operand.  Use fetchop_predicate_1,
fetchop_constraint_1_tcb.  Adjust asm sequence to allow R0 usage.
(atomic_<fetchop_name>_fetch<mode>_soft_imask): Use arith_reg_dest and
arith_reg_operand instead of register_operand.  Use fetchop_predicate_1,
fetchop_constraint_1_imask.  Adjust asm sequence to allow R0 usage.
(atomic_nand_fetch<mode>): Use arith_reg_dest instead of
register_operand.  Use atomic_logical_operand_1.
(atomic_nand_fetchsi_hard, atomic_nand_fetch<mode>_hard,
atomic_nand_fetch<mode>_soft_gusa): Use arith_reg_dest and
arith_reg_operand instead of register_operand.
(atomic_nand_fetch<mode>_soft_tcb): Use arith_reg_dest and
arith_reg_operand instead of register_operand.  Use logical_operand
and K08.  Adjust asm sequence to allow R0 usage.
(atomic_nand_fetch<mode>_soft_imask): Use arith_reg_dest and
arith_reg_operand instead of register_operand.  Use logical_operand
and K08.

gcc/testsuite/
PR target/64659
* gcc.target/sh/sh.exp
(check_effective_target_atomic_model_soft_gusa_available,
check_effective_target_atomic_model_soft_tcb_available,
check_effective_target_atomic_model_soft_imask_available,
check_effective_target_atomic_model_hard_llcs_available): New.
* gcc.target/sh/pr64659-0.h: New.
* gcc.target/sh/pr64659-1.c: New.
* gcc.target/sh/pr64659-2.c: New.
* gcc.target/sh/pr64659-3.c: New.
* gcc.target/sh/pr64659-4.c: New.

From-SVN: r220217

9 years agore PR other/63504 (Issues found by --enable-checking=valgrind)
Jakub Jelinek [Wed, 28 Jan 2015 20:30:30 +0000 (21:30 +0100)]
re PR other/63504 (Issues found by --enable-checking=valgrind)

PR other/63504
* dwarf2out.c (add_AT_wide, mem_loc_descriptor, loc_descriptor):
Use ggc_alloc<wide_int> instead of ggc_cleared_alloc<wide_int>.
(attr_checksum, attr_checksum_ordered, hash_loc_operands): Checksum
only get_full_len HOST_WIDE_INTs from get_val () array rather than
all bits in *val_wide.

From-SVN: r220216

9 years agochecksums and test-text
Bruce Korb [Wed, 28 Jan 2015 20:21:34 +0000 (20:21 +0000)]
checksums and test-text

* fixincl.tpl: add a check sum acceptance test
* fixlib.h: enumerate it
* fixincl.c: handle it
* README: document it and document the handling of test_text

From-SVN: r220215

9 years ago* lto-symtab.c (lto_varpool_replace_node): Merge TLS models.
Jan Hubicka [Wed, 28 Jan 2015 19:57:35 +0000 (20:57 +0100)]
* lto-symtab.c (lto_varpool_replace_node): Merge TLS models.

From-SVN: r220214

9 years agovarpool.c (tls_model_names): Fix names.
Jan Hubicka [Wed, 28 Jan 2015 19:55:13 +0000 (20:55 +0100)]
varpool.c (tls_model_names): Fix names.

* varpool.c (tls_model_names): Fix names.
(varpool_node::dump): Dump tls- prefix for tls models.

From-SVN: r220213

9 years agoCall release_input_file in claim_file_handler
H.J. Lu [Wed, 28 Jan 2015 19:39:42 +0000 (19:39 +0000)]
Call release_input_file in claim_file_handler

PR lto/64837
* lto-plugin.c (release_input_file): New.
(claim_file_handler): Call release_input_file.
(onload): Set release_input_file.

From-SVN: r220212

9 years agonvptx mkoffload.
Thomas Schwinge [Wed, 28 Jan 2015 17:03:44 +0000 (18:03 +0100)]
nvptx mkoffload.

gcc/
* config/nvptx/mkoffload.c: New file.
* config/nvptx/t-nvptx: Add build rules for it.
* config.gcc <nvptx-*> [$enable_as_accelerator = yes]
(extra_programs): Add mkoffload.
* config/nvptx/nvptx.c (nvptx_record_offload_symbol): New
function.
(TARGET_RECORD_OFFLOAD_SYMBOL): Define macro to use it.

Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com>
Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com>
From-SVN: r220209

9 years agoatomic-op-consume.c (scan-assember-times): Adjust scan-assembler-times pattern.
Alex Velenko [Wed, 28 Jan 2015 15:11:58 +0000 (15:11 +0000)]
atomic-op-consume.c (scan-assember-times): Adjust scan-assembler-times pattern.

2015-01-28  Alex Velenko  <Alex.Velenko@arm.com>

gcc/testsuite/

* gcc.target/arm/atomic-op-consume.c (scan-assember-times): Adjust
scan-assembler-times pattern.

From-SVN: r220208

9 years agore PR libstdc++/64828 (libstdc++-v3/libsupc++/del_opvs.cc:30:1: warning: ‘void operat...
Jonathan Wakely [Wed, 28 Jan 2015 15:02:28 +0000 (15:02 +0000)]
re PR libstdc++/64828 (libstdc++-v3/libsupc++/del_opvs.cc:30:1: warning: ‘void operator delete [](void*, std::size_t)’ is a usual (non-placement) deallocation function in C++14 (or with -fsized-deallocation) [-Wc++14-compat])

PR libstdc++/64828
* libsupc++/Makefile.am: Compile del_opvs.cc as C++14.
* libsupc++/Makefile.in: Regenerate.
* src/c++11/Makefile.in: Regenerate.

From-SVN: r220207

9 years ago[libstdc++][testsuite][reverted] Remove check for truncation overflow
Kyrylo Tkachov [Wed, 28 Jan 2015 13:53:45 +0000 (13:53 +0000)]
[libstdc++][testsuite][reverted] Remove check for truncation overflow

    * testsuite/lib/libstdc++.exp (v3_target_compile): Remove
    check for unsupported.
    (v3_target_compile_as_c): Likewise.

From-SVN: r220206

9 years agore PR middle-end/64809 (ICE at -O3 with -g enabled on x86_64-linux-gnu (in 32-bit...
Yuri Rumyantsev [Wed, 28 Jan 2015 11:46:44 +0000 (11:46 +0000)]
re PR middle-end/64809 (ICE at -O3 with -g enabled on x86_64-linux-gnu (in 32-bit mode))

gcc/

PR middle-end/64809
* cfgexpand.c (reorder_operands): Skip debug gimples.

gcc/testsuite/

PR middle-end/64809
* gcc.dg/pr64809.c: New test.

From-SVN: r220205

9 years agore PR tree-optimization/64277 (Incorrect warning "array subscript is above array...
Ilya Enkovich [Wed, 28 Jan 2015 11:41:40 +0000 (11:41 +0000)]
re PR tree-optimization/64277 (Incorrect warning "array subscript is above array bounds")

gcc/

PR tree-optimization/64277
* tree-ssa-loop-niter.c (record_nonwrapping_iv): Use base
range info when possible to refine estimation.

gcc/testsuite/

PR tree-optimization/64277
* gcc.dg/pr64277.c: New.

From-SVN: r220204

9 years agore PR tree-optimization/64718 (Bad 16-bit bswap replacement)
Thomas Preud'homme [Wed, 28 Jan 2015 10:20:19 +0000 (10:20 +0000)]
re PR tree-optimization/64718 (Bad 16-bit bswap replacement)

2015-01-28  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/64718
    * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Make bswap_type
    be a 16bit unsigned integer when n->range is 16.
    (bswap_replace): Convert src to that type if necessary for all bswap
    sizes.  Fix rotation right notation in nearby comment.  Use bswap_type
    set in pass_optimize_bswap::execute ().

    gcc/testsuite/
    PR tree-optimization/64718
    * gcc.c-torture/execute/pr64718.c: New test.

From-SVN: r220203

9 years ago[Patch AArch64] Make integer vabs intrinsics UNSPECs
James Greenhalgh [Wed, 28 Jan 2015 10:08:57 +0000 (10:08 +0000)]
[Patch AArch64] Make integer vabs intrinsics UNSPECs

gcc/

* config/aarch64/aarch64-simd.md (aarch64_abs<mode>): New.
* config/aarch64/aarch64-simd-builtins.def (abs): Split by
integer and floating point variants.
* config/aarch64/iterators.md (unspec): Add UNSPEC_ABS.

gcc/testsuite/

* gcc.target/aarch64/abs_2.c: New.

From-SVN: r220202

9 years agore PR libstdc++/64798 (g++.old-deja/g++.eh/badalloc1.C FAILs)
Richard Biener [Wed, 28 Jan 2015 09:53:39 +0000 (09:53 +0000)]
re PR libstdc++/64798 (g++.old-deja/g++.eh/badalloc1.C FAILs)

2015-01-28  Richard Biener  <rguenther@suse.de>

PR libstdc++/64798
* libsupc++/eh_alloc.cc (struct allocated_entry): Align
data member.
(pool::allocate): Adjust allocation size and alignment to
that change.
(pool::free): Adjust pointer offsetting.

From-SVN: r220201

9 years agoProhibit vector modes in accumulators.
Robert Suchanek [Wed, 28 Jan 2015 09:44:39 +0000 (09:44 +0000)]
Prohibit vector modes in accumulators.

gcc/
* config/mips/mips.c (mips_hard_regno_mode_ok_p): Prohibit accumulators
for all vector modes.

From-SVN: r220200

9 years agoRegression cleanup for MIPS nan2008 toolchain.
Robert Suchanek [Wed, 28 Jan 2015 09:22:20 +0000 (09:22 +0000)]
Regression cleanup for MIPS nan2008 toolchain.

gcc/testsuite/
* lib/target-supports.exp (check_effective_target_mips_nanlegacy): New.
* gcc.target/mips/loongson-simd.c: Require legacy NaN support.
* gcc.target/mips/mips.exp (mips-dg-options): Imply -mnan=legacy for
ISA rev < 2.

From-SVN: r220199

9 years agore PR bootstrap/64612 (profiledbootstrap failures)
Jakub Jelinek [Wed, 28 Jan 2015 07:45:56 +0000 (08:45 +0100)]
re PR bootstrap/64612 (profiledbootstrap failures)

PR bootstrap/64612
* lib/target-supports.exp (check_effective_target_comdat_group): New.
* g++.dg/ipa/pr64612.C: Guard scan-assembler test with
{ target comdat_group }.

* doc/sourcebuild.texi (comdat_group): Document.

From-SVN: r220198

9 years ago* config/arm/thumb1.md (*thumb1_movpc_insn): New insn pattern.
Terry Guo [Wed, 28 Jan 2015 06:18:37 +0000 (06:18 +0000)]
* config/arm/thumb1.md (*thumb1_movpc_insn): New insn pattern.

From-SVN: r220197

9 years agoDaily bump.
GCC Administrator [Wed, 28 Jan 2015 00:17:07 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r220196

9 years agore PR c++/58597 (ICE with lambda in default argument of template function)
Jason Merrill [Tue, 27 Jan 2015 21:40:45 +0000 (16:40 -0500)]
re PR c++/58597 (ICE with lambda in default argument of template function)

PR c++/58597
* lambda.c (maybe_add_lambda_conv_op): Check cfun rather than
current_function_decl.

From-SVN: r220192

9 years agotoplev: gcc version information for jit
David Malcolm [Tue, 27 Jan 2015 20:19:36 +0000 (20:19 +0000)]
toplev: gcc version information for jit

gcc/ChangeLog:
* toplev.c (print_version): Add param "show_global_state", and
only print GGC and plugin information if it is true.
(init_asm_output): Pass in "true" for the new param when calling
print_version.
(process_options): Likewise.
(toplev::main): Likewise.
* toplev.h (print_version): Add new param to decl.

gcc/jit/ChangeLog:
* docs/internals/test-hello-world.exe.log.txt: Add example version
lines.
* jit-common.h (gcc::jit::dump::get_file): New accessor.
* jit-logging.c: Include toplev.h.
(gcc::jit::logger::logger): Log the GCC version.
* jit-recording.c: Include toplev.h.
(gcc:jit::recording::context::dump_reproducer_to_file): Log the
GCC version.

From-SVN: r220190

9 years agore PR fortran/63861 (OpenACC coarray ICE (also with OpenMP?))
Tobias Burnus [Tue, 27 Jan 2015 19:57:55 +0000 (20:57 +0100)]
re PR fortran/63861 (OpenACC coarray ICE  (also with OpenMP?))

2015-01-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/63861
gcc/fortran/
        * trans-openmp.c (gfc_has_alloc_comps, gfc_trans_omp_clauses):
        Fix handling for scalar coarrays.
        * trans-types.c (gfc_get_element_type): Add comment.
gcc/testsuite/
        * gfortran.dg/goacc/coarray_2.f90: New.

From-SVN: r220189

9 years agore PR ipa/60871 (internal compiler error: in possible_polymorphic_call_targets, at...
Jan Hubicka [Tue, 27 Jan 2015 19:39:37 +0000 (20:39 +0100)]
re PR ipa/60871 (internal compiler error: in possible_polymorphic_call_targets, at ipa-devirt.c:1510)

PR ipa/60871
PR ipa/64139
* tree.c (lookup_binfo_at_offset): New function.
(get_binfo_at_offset): Use it.

* g++.dg/torture/pr64139.C: New testcase.
* g++.dg/torture/pr60871.C: Likewise.

From-SVN: r220185

9 years agore PR c++/63889 (Ice with redundant static in class scope constexpr variable template.)
Jason Merrill [Tue, 27 Jan 2015 19:16:51 +0000 (14:16 -0500)]
re PR c++/63889 (Ice with redundant static in class scope constexpr variable template.)

PR c++/63889
* pt.c (finish_template_variable): Move from semantics.c.
Handle multiple template arg levels.  Handle coercion here.
(lookup_template_variable): Not here.

From-SVN: r220183

9 years agore PR fortran/64771 (ICE(segfault) when passing coarrays around; ICE in gfc_zero_size...
Rainer Orth [Tue, 27 Jan 2015 18:44:35 +0000 (18:44 +0000)]
re PR fortran/64771 (ICE(segfault) when passing coarrays around; ICE in gfc_zero_size_array in arith.c:1637)

2015-01-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

        PR fortran/64771
        * interface.c: Remove <algorithm>.
        (check_dummy_characteristics): Use MAX instead of std::max.

From-SVN: r220182

9 years agore PR fortran/64230 (Invalid memory reference in a compiler-generated finalizer for...
Janus Weil [Tue, 27 Jan 2015 18:36:52 +0000 (19:36 +0100)]
re PR fortran/64230 (Invalid memory reference in a compiler-generated finalizer for allocatable component)

2015-01-27  Janus Weil  <janus@gcc.gnu.org>

PR fortran/64230
* gfortran.dg/class_allocate_18.f90: Remove -fsanitize option to
prevent linking errors.

From-SVN: r220181

9 years agoFix build under cygwin/64.
Bernd Edlinger [Tue, 27 Jan 2015 17:20:27 +0000 (17:20 +0000)]
Fix build under cygwin/64.

2015-01-27  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix build under cygwin/64.
        * adaint.h: Add check for __CYGWIN__.
        * mingw32.h: Prevent windows.h from including x86intrin.h in GCC.

From-SVN: r220180

9 years agore PR ipa/64282 (ICE in gimple_get_virt_method_for_vtable, at gimple-fold.c:5635)
Jan Hubicka [Tue, 27 Jan 2015 16:59:31 +0000 (17:59 +0100)]
re PR ipa/64282 (ICE in gimple_get_virt_method_for_vtable, at gimple-fold.c:5635)

PR ipa/64282
* gimple-fold.c (gimple_get_virt_method_for_vtable): Remove assert
on vtable being vtable.
* g++.dg/torture/pr64282.C: New testcase.

From-SVN: r220177

9 years ago[AArch64][test] Fix FAIL: gcc.target/aarch64/store-pair-1.c scan-assembler stp\tw...
Kyrylo Tkachov [Tue, 27 Jan 2015 16:45:29 +0000 (16:45 +0000)]
[AArch64][test] Fix FAIL: gcc.target/aarch64/store-pair-1.c scan-assembler stp\tw[0-9]+, w[0-9]+

* gcc.target/aarch64/store-pair-1.c: Update scan-assembler to check
for wzr reg.

From-SVN: r220176

9 years agosendmsg.c: Add prototypes for __objc_get_forward_imp and get_imp.
Matthias Klose [Tue, 27 Jan 2015 16:28:35 +0000 (16:28 +0000)]
sendmsg.c: Add prototypes for __objc_get_forward_imp and get_imp.

2015-01-27  Matthias Klose  <doko@ubuntu.com>

        * sendmsg.c: Add prototypes for __objc_get_forward_imp and get_imp.

From-SVN: r220175

9 years agoAdd myself to maintaners.
Robert Suchanek [Tue, 27 Jan 2015 15:31:14 +0000 (15:31 +0000)]
Add myself to maintaners.

/
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r220172

9 years agoextend.texi: s/390: Update documentation of hotpatch attribute.
Dominik Vogt [Tue, 27 Jan 2015 15:26:16 +0000 (15:26 +0000)]
extend.texi: s/390: Update documentation of hotpatch attribute.

2015-01-27  Dominik Vogt  <vogt@linux.vnet.ibm.com>

        * doc/extend.texi: s/390: Update documentation of hotpatch attribute.
        * doc/invoke.texi (-mhotpatch): s/390: Update documentation of
        -mhotpatch= option.
        * config/s390/s390.opt (mhotpatch): s/390: Remove -mhotpatch and
        -mno-hotpatch options.  Change syntax of -mhotpatch= option.
        * config/s390/s390.c (s390_hotpatch_trampoline_halfwords_default):
        Renamed.
        (s390_hotpatch_trampoline_halfwords_max): Renamed.
        (s390_hotpatch_hw_max): New name.
        (s390_hotpatch_trampoline_halfwords): Renamed.
        (s390_hotpatch_hw_before_label): New name.
        (get_hotpatch_attribute): Removed.
        (s390_hotpatch_hw_after_label): New name.
        (s390_handle_hotpatch_attribute): Add second parameter to hotpatch
        attribute.
        (s390_attribute_table): Ditto.
        (s390_function_num_hotpatch_trampoline_halfwords): Renamed.
        (s390_function_num_hotpatch_hw): New name.
        Remove special handling of inline functions and hotpatching.
        Return number of nops before and after the function label.
        (s390_can_inline_p): Removed.
        (s390_asm_output_function_label): Emit a configurable number of nops
        after the function label.
        (s390_option_override): Update -mhotpatch= syntax and remove -mhotpatch.
        (TARGET_CAN_INLINE_P) Removed.
        (TARGET_FUNCTION_ATTRIBUTE_INLINABLE_P): New.

2015-01-27  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* gcc/testsuite/gcc.target/s390/hotpatch-13.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-14.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-15.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-16.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-17.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-18.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-19.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-20.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-10.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-11.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-12.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-13.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-14.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-15.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-16.c: New testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-9.c: New
testcase.
* gcc/testsuite/gcc.target/s390/hotpatch-1.c: Testcase adjusted to
new -mhotpatch.
* gcc/testsuite/gcc.target/s390/hotpatch-10.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-11.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-12.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-2.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-3.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-4.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-5.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-6.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-7.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-8.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-9.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-1.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-2.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-3.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-4.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-5.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-6.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-7.c: Likewise.
* gcc/testsuite/gcc.target/s390/hotpatch-compile-8.c: Likewise.

From-SVN: r220171

9 years ago[AArch64] Improve bit-test-branch pattern to avoid unnecessary register clobber
Jiong Wang [Tue, 27 Jan 2015 15:20:14 +0000 (15:20 +0000)]
[AArch64] Improve bit-test-branch pattern to avoid unnecessary register clobber

2015-01-27  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
            Jiong Wang  <jiong.wang@arm.com>

  gcc/
    * config/aarch64/aarch64.md (tb<optab><mode>1): Clobber CC reg instead of
    scratch reg.
    (cb<optab><mode>1): Likewise.
    * config/aarch64/iterators.md (bcond): New define_code_attr.

  gcc/testsuite/
    * gcc.dg/long_branch.c: New testcase.

From-SVN: r220170

9 years agos390.c (s390_memory_move_cost): Increase costs for memory accesses.
Andreas Krebbel [Tue, 27 Jan 2015 15:01:46 +0000 (15:01 +0000)]
s390.c (s390_memory_move_cost): Increase costs for memory accesses.

2015-01-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_memory_move_cost): Increase costs for
memory accesses.

From-SVN: r220169

9 years agos390.c (s390_register_move_cost): Increase costs for FPR->GPR moves.
Andreas Krebbel [Tue, 27 Jan 2015 14:59:48 +0000 (14:59 +0000)]
s390.c (s390_register_move_cost): Increase costs for FPR->GPR moves.

2015-01-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_register_move_cost): Increase costs for
FPR->GPR moves.

From-SVN: r220168

9 years agoconfigure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
Matthias Klose [Tue, 27 Jan 2015 12:50:46 +0000 (12:50 +0000)]
configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.

2015-01-26  Matthias Klose  <doko@ubuntu.com>

        * configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
        * configure: Regenerate.

From-SVN: r220165

9 years agotree-vrp.c (update_value_range): Intersect the range with old recorded SSA name range...
Richard Biener [Tue, 27 Jan 2015 12:11:37 +0000 (12:11 +0000)]
tree-vrp.c (update_value_range): Intersect the range with old recorded SSA name range information.

2015-01-27  Richard Biener  <rguenther@suse.de>

* tree-vrp.c (update_value_range): Intersect the range with
old recorded SSA name range information.

From-SVN: r220164

9 years agorl78.c (rl78_expand_prologue): In G10 mode push the BC, DE and HL registers directly...
Nick Clifton [Tue, 27 Jan 2015 11:37:08 +0000 (11:37 +0000)]
rl78.c (rl78_expand_prologue): In G10 mode push the BC, DE and HL registers directly, not via AX.

* config/rl78/rl78.c (rl78_expand_prologue): In G10 mode push the
BC, DE and HL registers directly, not via AX.
When decrementing the stack pointer by a large amount, transfer SP
into AX and perform the subtraction there.
(rl78_expand_epilogue): Perform the inverse of the above
enhancements.

From-SVN: r220163

9 years agocmpsi2.S: Use function start and end macros.
Nick Clifton [Tue, 27 Jan 2015 11:36:01 +0000 (11:36 +0000)]
cmpsi2.S: Use function start and end macros.

* config/rl78/cmpsi2.S: Use function start and end macros.
(__gcc_bcmp): New function.
* config/rl78/lshrsi3.S: Use function start and end macros.
* config/rl78/mulsi3.S: Add support for G10.
(__mulqi3): New function for G10.
* config/rl78/signbit.S: Use function start and end macros.
* config/rl78/t-rl78 (LIB2ADD): Add bit-count.S, fpbit-sf.S and
fpmath-sf.S.
(LIB2FUNCS_EXCLUDE): Define.
(LIB2FUNCS_ST): Define.
* config/rl78/trampoline.S: Use function start and end macros.
* config/rl78/vregs.h (START_FUNC): New macro.
(START_ANOTHER_FUNC): New macro.
(END_FUNC): New macro.
(END_ANOTHER_FUNC): New macro.
* config/rl78/bit-count.S: New file.  Contains assembler
implementations of the bit counting functions: ___clzhi2,
__clzsi2, ctzhi2, ctzsi2, ffshi2, ffssi2, __partityhi2,
__paritysi2, __popcounthi2 and __popcountsi2.
* config/rl78/fpbit-sf.S: New file.  Contains assembler
implementationas of the math functions: __negsf2, __cmpsf2,
__eqsf2, __nesf2, __lesf2, __ltsf2, __gesf2, gtsf2, __unordsf2,
__fixsfsi,  __fixunssfsi, __floatsisf and __floatunssisf.
* config/rl78/fpmath-sf.S: New file.  Contains assembler
implementations of the math functions: __subsf3, __addsf3,
__mulsf3 and __divsf3

From-SVN: r220162

9 years agore PR target/64368 (Several libstdc++ test failures on non-linux platforms after...
Jonathan Wakely [Tue, 27 Jan 2015 11:12:04 +0000 (11:12 +0000)]
re PR target/64368 (Several libstdc++ test failures on non-linux platforms after r218964.)

PR libstdc++/64368
* include/std/shared_mutex (shared_timed_mutex::try_lock_for,
shared_timed_mutex::try_lock_until): Only define when POSIX thread
timeouts option is supported.
(shared_timed_mutex::try_shared_lock_for,
shared_timed_mutex::try_shared_lock_until): Likewise.

From-SVN: r220161

9 years agoMove Solaris/x86 CRT_GET_RFIB_DATA definition to libgcc
Rainer Orth [Tue, 27 Jan 2015 10:02:26 +0000 (10:02 +0000)]
Move Solaris/x86 CRT_GET_RFIB_DATA definition to libgcc

gcc:
* config/i386/sysv4.h (CRT_GET_RFIB_DATA): Remove.

libgcc:
* config.host (i[34567]86-*-solaris2*, x86_64-*-solaris2.1[0-9]*):
Add i386/elf-lib.h to tm_file.
* config/i386/elf-lib.h: Fix comment.
* unwind-dw2-fde-dip.c (_Unwind_IteratePhdrCallback) [__x86_64__
&& __sun__ && __svr4__]: Remove workaround.

From-SVN: r220160

9 years agore PR sanitizer/64741 (Incorrect size of UBSan type descriptors)
Jakub Jelinek [Tue, 27 Jan 2015 09:58:00 +0000 (10:58 +0100)]
re PR sanitizer/64741 (Incorrect size of UBSan type descriptors)

2015-01-27  Jakub Jelinek  <jakub@redhat.com>
    Yury Gribov  <y.gribov@samsung.com>

PR ubsan/64741
* ubsan.c (ubsan_source_location): Refactor code.
(ubsan_type_descriptor): Update type size. Refactor code.

Co-Authored-By: Yury Gribov <y.gribov@samsung.com>
From-SVN: r220159

9 years agoCorrectly check for 32-bit x86
Rainer Orth [Tue, 27 Jan 2015 09:57:57 +0000 (09:57 +0000)]
Correctly check for 32-bit x86

* testsuite/lib/libffi.exp: Load target-supports.exp.
(run-many-tests): Only set targetabis for ia32.

From-SVN: r220158

9 years agore PR tree-optimization/56273 (Bogus -Warray-bounds warning)
Richard Biener [Tue, 27 Jan 2015 09:49:29 +0000 (09:49 +0000)]
re PR tree-optimization/56273 (Bogus -Warray-bounds warning)

2015-01-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56273
PR tree-optimization/59124
PR tree-optimization/64277
* tree-vrp.c (vrp_finalize): Emit array-bound warnings only
from the first VRP pass.

* g++.dg/warn/Warray-bounds-6.C: New testcase.
* gcc.dg/Warray-bounds-12.c: Likewise.
* gcc.dg/Warray-bounds-13.c: Likewise.

From-SVN: r220157

9 years agore PR ipa/64776 (FAIL: gcc.dg/ipa/pr64307.c (internal compiler error) on x86_64-apple...
Jakub Jelinek [Tue, 27 Jan 2015 09:21:26 +0000 (10:21 +0100)]
re PR ipa/64776 (FAIL: gcc.dg/ipa/pr64307.c (internal compiler error) on x86_64-apple-darwin14)

PR ipa/64776
* cgraphunit.c (cgraph_node::expand_thunk): If not this_adjusting,
handle the first argument in the same loop as all the other arguments.

From-SVN: r220156

9 years agore PR rtl-optimization/61058 (ICE: RTL check: expected elt 3 type 'B', have '0' ...
Jakub Jelinek [Tue, 27 Jan 2015 09:19:30 +0000 (10:19 +0100)]
re PR rtl-optimization/61058 (ICE: RTL check: expected elt 3 type 'B', have '0' (rtx barrier) in distance_agu_use_in_bb, at config/i386/i386.c:16740 with __builtin_unreachable())

PR rtl-optimization/61058
* jump.c (cleanup_barriers): Update basic block boundaries
if BLOCK_FOR_INSN is non-NULL on PREV.

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

From-SVN: r220155

9 years agotree-chkp.c (chkp_call_returns_bounds_p): Fix handling of bounds narrowing...
Ilya Enkovich [Tue, 27 Jan 2015 09:09:28 +0000 (09:09 +0000)]
tree-chkp.c (chkp_call_returns_bounds_p): Fix handling of bounds narrowing...

gcc/

* tree-chkp.c (chkp_call_returns_bounds_p): Fix handling of
bounds narrowing, already instrumented calls and calls to
not instrumentable functions.

gcc/testsuite/

* gcc.target/i386/chkp-narrow-bounds.c: New.

From-SVN: r220154

9 years agore PR tree-optimization/64807 (Wrong-code because of wide-int division)
Jakub Jelinek [Tue, 27 Jan 2015 08:26:13 +0000 (09:26 +0100)]
re PR tree-optimization/64807 (Wrong-code because of wide-int division)

PR tree-optimization/64807
* wide-int.cc (wi::divmod_internal): Clear
b_dividend[dividend_blocks_needed].

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

From-SVN: r220153

9 years agore PR middle-end/64766 (internal compiler error: tree check: expected block, have...
Jakub Jelinek [Tue, 27 Jan 2015 08:13:45 +0000 (09:13 +0100)]
re PR middle-end/64766 (internal compiler error: tree check: expected block, have error_mark in lower_function_body, at gimple-low.c:122)

PR c/64766
* c-typeck.c (store_init_value): Don't overwrite DECL_INITIAL
of FUNCTION_DECLs with error_mark_node.

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

From-SVN: r220152

9 years agorl78.c (move_elim_pass): Don't optimize away volatile memory references.
DJ Delorie [Tue, 27 Jan 2015 04:07:54 +0000 (23:07 -0500)]
rl78.c (move_elim_pass): Don't optimize away volatile memory references.

* config/rl78/rl78.c (move_elim_pass): Don't optimize away
volatile memory references.

From-SVN: r220151

9 years agoAdd PR jit/64257 to previous ChangeLog entry
David Malcolm [Tue, 27 Jan 2015 00:28:45 +0000 (00:28 +0000)]
Add PR jit/64257 to previous ChangeLog entry

From-SVN: r220150

9 years agoupdate_web_docs_svn: support the JIT documentation
David Malcolm [Tue, 27 Jan 2015 00:17:56 +0000 (00:17 +0000)]
update_web_docs_svn: support the JIT documentation

maintainer-scripts/ChangeLog:
* update_web_docs_svn: Don't delete gcc/jit/docs or
gcc/jit/jit-common.h, gcc/jit/notes.txt. Special case the
building of the JIT docs (using sphinx-build).  Special case
copying them up.

From-SVN: r220149

9 years agoDaily bump.
GCC Administrator [Tue, 27 Jan 2015 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r220148

9 years agoFix gcc_jit_context_get_last_error docs
David Malcolm [Tue, 27 Jan 2015 00:11:21 +0000 (00:11 +0000)]
Fix gcc_jit_context_get_last_error docs

gcc/jit/ChangeLog:
* docs/topics/compilation.rst (gcc_jit_result_get_code): Fix typo.
* docs/topics/contexts.rst (gcc_jit_context_get_last_error): The
error buffer is only valid until the next call to the context.
* libgccjit.h (gcc_jit_context_get_first_error): Reword the
comment to omit mention of compiling.
(gcc_jit_context_get_last_error): The error buffer is only valid
until the next call to the context.

From-SVN: r220145

9 years agore PR target/49263 (SH Target: underutilized "TST #imm, R0" instruction)
Oleg Endo [Mon, 26 Jan 2015 23:56:05 +0000 (23:56 +0000)]
re PR target/49263 (SH Target: underutilized "TST #imm, R0" instruction)

gcc/
PR target/49263
* config/sh/sh.c (sh_split_treg_set_expr): Invoke emit_insn before
remove_insn.
* config/sh/sh.md (tstsi_t): Don't try to optimize constant with right
shifts if it already fits into K08.

gcc/testsuite/
PR target/49263
* gcc.target/sh/pr49263-4.c: New.

From-SVN: r220144

9 years agore PR target/64368 (Several libstdc++ test failures on non-linux platforms after...
Jonathan Wakely [Mon, 26 Jan 2015 23:42:39 +0000 (23:42 +0000)]
re PR target/64368 (Several libstdc++ test failures on non-linux platforms after r218964.)

PR libstdc++/64368
* config/locale/gnu/numeric_members.cc (numpunct<char>::~numpunct(),
numpunct<wchar_t>::~numpunct()): Do not set _M_data->_M_grouping.
* src/c++11/cxx11-shim_facets.cc (numpunct_shim): Remove _M_grouping
and use cache's _M_grouping field.
(__numpunct_fill_cache): Likewise.
(__moneypunct_fill_cache): Improve comments.

From-SVN: r220143