Commit Graph

136279 Commits

Author SHA1 Message Date
Caroline Tice
8be349eea9 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
2015-01-29 08:47:25 -08:00
David Malcolm
231d020bfb 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
2015-01-29 16:25:14 +00:00
Jason Merrill
3dbb84276a 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
2015-01-29 11:10:08 -05:00
Jason Merrill
e1ef8aa939 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
2015-01-29 11:09:56 -05:00
Jeff Law
52d285303c 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
2015-01-29 07:30:45 -07:00
Yuri Rumyantsev
b8aa7083ec 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
2015-01-29 13:52:28 +00:00
Richard Biener
d94e3e750d 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
2015-01-29 13:50:37 +00:00
Kyrylo Tkachov
16277100d3 [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
2015-01-29 13:36:22 +00:00
Uros Bizjak
f84b87aa9f i386.c (ix86_mode_after): Make static.
* config/i386/i386.c (ix86_mode_after): Make static.

From-SVN: r220245
2015-01-29 14:16:35 +01:00
Richard Biener
62c004451a 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
2015-01-29 12:53:39 +00:00
Jonathan Wakely
85d44192f6 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
2015-01-29 12:47:20 +00:00
Ilya Enkovich
d290bb1d72 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
2015-01-29 12:24:06 +00:00
Yuri Rumyantsev
e11627e99a 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
2015-01-29 12:20:55 +00:00
Ilya Enkovich
c291690eb5 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
2015-01-29 11:03:02 +00:00
Rainer Orth
2b6969cd7f Run guality tests on Solaris
* gcc.dg/guality/guality.h (main): Add argv[0] to
	guality_gdb_command.

From-SVN: r220237
2015-01-29 10:12:14 +00:00
Marek Polacek
2d48baf0f1 * doc/standards.texi: Reflect that the default for C is gnu11.
From-SVN: r220236
2015-01-29 10:01:38 +00:00
Kaz Kojima
4897b529e2 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
2015-01-29 08:36:38 +00:00
Caroline Tice
f7f049fa46 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
2015-01-29 00:03:56 -08:00
Jan Hubicka
10881cffc2 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
2015-01-29 07:43:14 +00:00
Jan Hubicka
bea30e0dea 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
2015-01-29 05:05:48 +00:00
Bernd Edlinger
5fa25adb31 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
2015-01-29 00:34:03 +00:00
GCC Administrator
a5b8f50957 Daily bump.
From-SVN: r220227
2015-01-29 00:17:29 +00:00
H.J. Lu
380c25ea45 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
2015-01-28 15:59:55 -08:00
Richard Henderson
1dd63990a2 Mark prs in changelog entry
From-SVN: r220223
2015-01-28 15:27:52 -08:00
Richard Henderson
ed4bf691b5 Merge with upstream libffi db1b34b7e1f5e473d17557e454a29933dfecd1af
Includes build fixes for Solaris and FreeBSD.

From-SVN: r220222
2015-01-28 15:23:55 -08:00
Jack Howarth
2dde0c3197 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
2015-01-28 21:25:19 +00:00
Oleg Endo
183153c9c6 gcc/testsuite/
Remove gcc/testsuite/ prefix in ChangeLog entry.

From-SVN: r220219
2015-01-28 21:23:33 +00:00
Jack Howarth
b5f7a6ca5c 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
2015-01-28 21:23:14 +00:00
Oleg Endo
c761dca15e 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
2015-01-28 21:11:37 +00:00
Jakub Jelinek
13a48f3780 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
2015-01-28 21:30:30 +01:00
Bruce Korb
11c3a68e35 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
2015-01-28 20:21:34 +00:00
Jan Hubicka
040968a88a * lto-symtab.c (lto_varpool_replace_node): Merge TLS models.
From-SVN: r220214
2015-01-28 19:57:35 +00:00
Jan Hubicka
b1474d30f9 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
2015-01-28 19:55:13 +00:00
H.J. Lu
1e081edaad 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
2015-01-28 11:39:42 -08:00
Thomas Schwinge
1f83528e3e 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
2015-01-28 18:03:44 +01:00
Alex Velenko
26586d771d 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
2015-01-28 15:11:58 +00:00
Jonathan Wakely
739cdc9041 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
2015-01-28 15:02:28 +00:00
Kyrylo Tkachov
f6d04238e0 [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
2015-01-28 13:53:45 +00:00
Yuri Rumyantsev
090238ee1f 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
2015-01-28 11:46:44 +00:00
Ilya Enkovich
fa8e505188 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
2015-01-28 11:41:40 +00:00
Thomas Preud'homme
8447859b3e 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
2015-01-28 10:20:19 +00:00
James Greenhalgh
285398d2db [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
2015-01-28 10:08:57 +00:00
Richard Biener
8aa33fadbe 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
2015-01-28 09:53:39 +00:00
Robert Suchanek
de5bcff3bc 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
2015-01-28 09:44:39 +00:00
Robert Suchanek
6b18ab83aa 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
2015-01-28 09:22:20 +00:00
Jakub Jelinek
813ba01399 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
2015-01-28 08:45:56 +01:00
Terry Guo
5ea22cfc70 * config/arm/thumb1.md (*thumb1_movpc_insn): New insn pattern.
From-SVN: r220197
2015-01-28 06:18:37 +00:00
GCC Administrator
e23fbe9133 Daily bump.
From-SVN: r220196
2015-01-28 00:17:07 +00:00
Jason Merrill
2cc7f90b6e 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
2015-01-27 16:40:45 -05:00
David Malcolm
53c04ec92a 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
2015-01-27 20:19:36 +00:00