gcc.git
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

9 years agoconfigure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
Matthias Klose [Mon, 26 Jan 2015 22:54:31 +0000 (22:54 +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: r220141

9 years agore PR fortran/62044 (ICE in USE statement with RENAME for extended derived type)
Paul Thomas [Mon, 26 Jan 2015 21:58:42 +0000 (21:58 +0000)]
re PR fortran/62044 (ICE in USE statement with RENAME for extended derived type)

2015-01-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/62044
* resolve.c (resolve_allocate_expr): If the default initializer
is NULL, keep the original MOLD expression so that the correct
typespec is available.

2015-01-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/62044
* gfortran.dg/allocate_with_mold_1.f90: New test

From-SVN: r220140

9 years agore PR ipa/64730 (g++.dg/ipa/pr64049-1.C ICE: SEGV when printing NULL)
Jakub Jelinek [Mon, 26 Jan 2015 21:33:11 +0000 (22:33 +0100)]
re PR ipa/64730 (g++.dg/ipa/pr64049-1.C ICE: SEGV when printing NULL)

PR ipa/64730
* ipa-inline.c (inline_small_functions): Print "unknown" even
if edge->call_stmt is non-NULL, but has builtins or unknown
location.

From-SVN: r220139

9 years agore PR c/64778 (ICE on invalid code on x86_64-linux-gnu: tree check: expected class...
Jakub Jelinek [Mon, 26 Jan 2015 21:32:09 +0000 (22:32 +0100)]
re PR c/64778 (ICE on invalid code on x86_64-linux-gnu: tree check: expected class ‘type’, have ‘exceptional’ (error_mark) in create_tmp_from_val, at gimplify.c:491)

PR c/64778
* c-typeck.c (convert_arguments): Return -1 if there are
error_args, even if we've diagnosed too many arguments.

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

From-SVN: r220138

9 years agore PR middle-end/64421 (Incorrect vector function name generated for log)
Jakub Jelinek [Mon, 26 Jan 2015 21:28:57 +0000 (22:28 +0100)]
re PR middle-end/64421 (Incorrect vector function name generated for log)

PR middle-end/64421
* omp-low.c (simd_clone_mangle): If DECL_ASSEMBLER_NAME starts
with asterisk, skip the first character.

* gcc.dg/vect/pr64421.c: New test.

From-SVN: r220137

9 years agore PR fortran/64771 (ICE(segfault) when passing coarrays around; ICE in gfc_zero_size...
Tobias Burnus [Mon, 26 Jan 2015 21:12:19 +0000 (22:12 +0100)]
re PR fortran/64771 (ICE(segfault) when passing coarrays around; ICE in gfc_zero_size_array in arith.c:1637)

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

        PR fortran/64771
gcc/fortran/
        * interface.c (check_dummy_characteristics): Fix coarray
        * handling.

testsuite/
        * gfortran.dg/coarray_36.f: New.
        * gfortran.dg/coarray_37.f90: New.

From-SVN: r220136

9 years agoio.c (gfc_match_inquire): Replace "-1" by a defined constant.
Tobias Burnus [Mon, 26 Jan 2015 21:05:39 +0000 (22:05 +0100)]
io.c (gfc_match_inquire): Replace "-1" by a defined constant.

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

        * io.c (gfc_match_inquire): Replace "-1" by a defined constant.

From-SVN: r220135

9 years agoPR jit/64708: remove libgccjit.so from COMPILERS
David Malcolm [Mon, 26 Jan 2015 20:30:12 +0000 (20:30 +0000)]
PR jit/64708: remove libgccjit.so from COMPILERS

gcc/jit/ChangeLog:
PR jit/64708
* config-lang.in (compilers): Drop "libgccjit.so".

From-SVN: r220133

9 years agoRevert the last P_POPCNT order change
H.J. Lu [Mon, 26 Jan 2015 19:31:55 +0000 (19:31 +0000)]
Revert the last P_POPCNT order change

PR target/64806
* config/i386/i386 (feature_priority): Revert the last P_POPCNT
order change.

From-SVN: r220131

9 years agore PR target/64795 (too many memory references for `lea')
Uros Bizjak [Mon, 26 Jan 2015 18:49:21 +0000 (19:49 +0100)]
re PR target/64795 (too many memory references for `lea')

        PR target/64795
* config/i386/i386.md (*movdi_internal): Also check operand 0
to determine TYPE_LEA operand.
(*movsi_internal): Ditto.

From-SVN: r220128

9 years agoFix incorrect ChangeLog formatting.
Christophe Lyon [Mon, 26 Jan 2015 16:00:53 +0000 (17:00 +0100)]
Fix incorrect ChangeLog formatting.

From-SVN: r220126

9 years agore PR fortran/64230 (Invalid memory reference in a compiler-generated finalizer for...
Janus Weil [Mon, 26 Jan 2015 15:56:03 +0000 (16:56 +0100)]
re PR fortran/64230 (Invalid memory reference in a compiler-generated finalizer for allocatable component)

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

PR fortran/64230
* class.c (finalize_component): New argument 'sub_ns'. Insert code to
check if 'expr' is associated.
(generate_finalization_wrapper): Rename 'ptr' symbols to 'ptr1' and
'ptr2'. Pass 'sub_ns' to finalize_component.

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

PR fortran/64230
* gfortran.dg/class_allocate_18.f90: New.

From-SVN: r220125

9 years ago[ARM/AArch64][testsuite] Add vpaddl tests.
Christophe Lyon [Mon, 26 Jan 2015 15:54:22 +0000 (15:54 +0000)]
[ARM/AArch64][testsuite] Add vpaddl tests.

2015-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vpaddl.c: New file.

From-SVN: r220124

9 years ago[ARM/AArch64][testsuite] Add vpadal tests.
Christophe Lyon [Mon, 26 Jan 2015 15:52:32 +0000 (15:52 +0000)]
[ARM/AArch64][testsuite] Add vpadal tests.

2015-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vpadal.c: New file.

From-SVN: r220123

9 years ago[ARM/AArch64][testsuite] Add vmnv tests.
Christophe Lyon [Mon, 26 Jan 2015 15:51:06 +0000 (15:51 +0000)]
[ARM/AArch64][testsuite] Add vmnv tests.

2015-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vmvn.c: New file.

From-SVN: r220122

9 years ago[ARM/AArch64][testsuite] Add vmovl tests.
Christophe Lyon [Mon, 26 Jan 2015 15:48:57 +0000 (15:48 +0000)]
[ARM/AArch64][testsuite] Add vmovl tests.

2015-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

    * gcc.target/aarch64/advsimd-intrinsics/vmovl.c: New file.

From-SVN: r220121

9 years agors6000-cpus.def (POWERPC_MASKS): Add OPTION_MASK_QUAD_MEMORY_ATOMIC.
Jakub Jelinek [Mon, 26 Jan 2015 15:47:12 +0000 (16:47 +0100)]
rs6000-cpus.def (POWERPC_MASKS): Add OPTION_MASK_QUAD_MEMORY_ATOMIC.

* config/rs6000/rs6000-cpus.def (POWERPC_MASKS): Add
OPTION_MASK_QUAD_MEMORY_ATOMIC.

From-SVN: r220120

9 years ago[ARM/AArch64][testsuite] Add vpadd, vpmax and vpmin tests.
Christophe Lyon [Mon, 26 Jan 2015 15:47:05 +0000 (15:47 +0000)]
[ARM/AArch64][testsuite] Add vpadd, vpmax and vpmin tests.

2015-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vpXXX.inc: New file.
* gcc.target/aarch64/advsimd-intrinsics/vpadd.c: New file.
* gcc.target/aarch64/advsimd-intrinsics/vpmax.c: New file.
* gcc.target/aarch64/advsimd-intrinsics/vpmin.c: New file.

From-SVN: r220119

9 years ago[ARM/AArch64][testsuite] Add vmla_n and vmls_n tests.
Christophe Lyon [Mon, 26 Jan 2015 15:45:00 +0000 (15:45 +0000)]
[ARM/AArch64][testsuite] Add vmla_n and vmls_n tests.

2015-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vmlX_n.inc: New file.
* gcc.target/aarch64/advsimd-intrinsics/vmla_n.c: New file.
* gcc.target/aarch64/advsimd-intrinsics/vmls_n.c: New file.

From-SVN: r220118

9 years ago[ARM/AArch64][testsuite] Add vsubhn, vraddhn and vrsubhn tests. Split vaddhn.c into...
Christophe Lyon [Mon, 26 Jan 2015 15:42:50 +0000 (15:42 +0000)]
[ARM/AArch64][testsuite] Add vsubhn, vraddhn and vrsubhn tests. Split vaddhn.c into vXXXhn.inc and vaddhn.c to share code with other new tests.

2015-01-26  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vXXXhn.inc: New file.
* gcc.target/aarch64/advsimd-intrinsics/vraddhn.c: New file.
* gcc.target/aarch64/advsimd-intrinsics/vrsubhn.c: New file.
* gcc.target/aarch64/advsimd-intrinsics/vsubhn.c: New file.
* gcc.target/aarch64/advsimd-intrinsics/vaddhn.c: Use code from
vXXXhn.inc.

From-SVN: r220117

9 years ago[AARCH64]Fix TLS local exec model addressing code generation inconsistency.
Renlin Li [Mon, 26 Jan 2015 15:42:15 +0000 (15:42 +0000)]
[AARCH64]Fix TLS local exec model addressing code generation inconsistency.

gcc/

* config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Correct
the comment.
* config/aarch64/aarch64.md * (tlsle_small_<mode>): Add left shift
12-bit for higher part.

From-SVN: r220116

9 years agoconfigure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
Matthias Klose [Mon, 26 Jan 2015 14:57:41 +0000 (14:57 +0000)]
configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.

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

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

From-SVN: r220113