aboutsummaryrefslogtreecommitdiff
path: root/libgcc
AgeCommit message (Collapse)Author
2017-06-28Use ucontext_t not struct ucontext in linux-unwind.h files.jsm28
Current glibc no longer gives the ucontext_t type the tag struct ucontext, to conform with POSIX namespace rules. This requires various linux-unwind.h files in libgcc, that were previously using struct ucontext, to be fixed to use ucontext_t instead. This is similar to the removal of the struct siginfo tag from siginfo_t some years ago. This patch changes those files to use ucontext_t instead. As the standard name that should be unconditionally safe, so this is not restricted to architectures supported by glibc, or conditioned on the glibc version. Tested compilation together with current glibc with glibc's build-many-glibcs.py. * config/aarch64/linux-unwind.h (aarch64_fallback_frame_state), config/alpha/linux-unwind.h (alpha_fallback_frame_state), config/bfin/linux-unwind.h (bfin_fallback_frame_state), config/i386/linux-unwind.h (x86_64_fallback_frame_state, x86_fallback_frame_state), config/m68k/linux-unwind.h (struct uw_ucontext), config/nios2/linux-unwind.h (struct nios2_ucontext), config/pa/linux-unwind.h (pa32_fallback_frame_state), config/riscv/linux-unwind.h (riscv_fallback_frame_state), config/sh/linux-unwind.h (sh_fallback_frame_state), config/tilepro/linux-unwind.h (tile_fallback_frame_state), config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use ucontext_t instead of struct ucontext. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249731 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-272017-06-27 Jerome Lambourg <lambourg@adacore.com>hainque
gcc/ * config.gcc (i*86-wrs-vxworks7): Handle new acceptable triplet. (x86_64-wrs-vxworks7): Likewise. libgcc/ * config.host (i*86-wrs)vxworks7): Handle new acceptable triplet. (x86_64-wrs-vxworks7): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249689 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-272017-06-27 Olivier Hainque <hainque@adacore.com>hainque
* config/t-vxworks7: New file. * config.host (*-*-vxworks7): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249688 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-22gcc/uros
2017-06-22 Matt Turner <mattst88@gmail.com> * config/i386/driver-i386.c (host_detect_local_cpu): Add Kaby Lake models to skylake case. Assume skylake for unknown models with clflushopt. gcc/testsuite/ 2017-06-22 Matt Turner <mattst88@gmail.com> * gcc.target/i386/builtin_target.c: Add Kaby Lake models to skylake check. libgcc/ 2017-06-22 Matt Turner <mattst88@gmail.com> * config/i386/cpuinfo.c (get_intel_cpu): Add Kaby Lake models to skylake case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249574 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-212017-06-21 Richard Biener <rguenther@suse.de>rguenth
PR gcov-profile/81080 * configure.ac: Add AC_SYS_LARGEFILE. * libgcov.h: Include auto-target.h before tsystem.h to pick up _FILE_OFFSET_BITS which might differ for multilibs. * config.in: Regenerate. * configure: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249435 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-16[arm] Explicitly set .fpu in cmse_nonsecure_call.Srearnsha
This file is missing a .fpu directive and was relying on the compiler driver passing through a -mfpu= command line option. When the FPU is auto, that will not be passed through correctly, so set something suitable within the file itself. libgcc: * config/arm/cmse_nonsecure_call.S: Explicitly set the FPU. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249297 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-09Speed-up indirect-call instrumentationmarxin
2017-06-09 Martin Liska <mliska@suse.cz> * tree-profile.c (gimple_gen_ic_profiler): Update comment. (gimple_gen_ic_func_profiler): Emit direct comparison of __gcov_indirect_call_callee with NULL. (gimple_gen_time_profiler): Change probability from PROB_VERY_UNLIKELY to PROB_UNLIKELY. 2017-06-09 Martin Liska <mliska@suse.cz> * libgcov-profiler.c (__gcov_indirect_call_profiler_v2): Reset __gcov_indirect_call_callee to NULL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249058 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-082017-06-08 Olivier Hainque <hainque@adacore.com>hainque
* config/t-vxworks (LIBGCC2_INCLUDES): Add path to wrn/coreip to the set of -I options, support for direct inclusions of net/uio.h by VxWorks header files via ioLib.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249016 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-07Fix white space.dje
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248969 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-072017-06-07 Tony Reix <tony.reix@atos.net>dje
Matthieu Sarter <matthieu.sarter.external@atos.net> David Edelsohn <dje.gcc@gmail.com> * config/rs6000/aix-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Define unconditionally. (ucontext_for): Add 64-bit AIX 6.1, 7.1, 7.2 support. Add 32-bit AIX 7.2 support. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248968 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-02Add ChangeLog entry for revision 248838hainque
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248839 138bc75d-0d04-0410-961f-82ee72b054a4
2017-06-022017-06-02 Olivier Hainque <hainque@adacore.com>hainque
* config/vxlib.c (__gthread_once): Add missing value to nested return statement. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248838 138bc75d-0d04-0410-961f-82ee72b054a4
2017-05-302017-05-30 Olivier Hainque <hainque@adacore.com>hainque
libgcc/ * config/t-vxworks (LIBGCC2_INCLUDES): Remove extraneous dollar sign before $(MULTIDIR). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248684 138bc75d-0d04-0410-961f-82ee72b054a4
2017-05-26PR libgcc/80037rth
* config/alpha/t-alpha (CRTSTUFF_T_CFLAGS): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248522 138bc75d-0d04-0410-961f-82ee72b054a4
2017-05-172017-05-17 Andreas Tobler <andreast@gcc.gnu.org>andreast
* config/arm/unwind-arm.h: Make _Unwind_GetIP, _Unwind_GetIPInfo and _Unwind_SetIP available as functions for arm*-*-freebsd*. * config/arm/unwind-arm.c: Implement the above. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248173 138bc75d-0d04-0410-961f-82ee72b054a4
2017-05-15 * config/sparc/lb1spc.S [__ELF__ && __linux__]: Emit .note.GNU-stackebotcazou
section for a non-executable stack. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248043 138bc75d-0d04-0410-961f-82ee72b054a4
2017-05-14PR target/80600 - hidden symbol '__cpu_model' is referenced by DSOkristerw
gcc/ChangeLog: PR target/80600 * config/netbsd.h (NETBSD_LIBGCC_SPEC): Always add -lgcc. libgcc/ChangeLog: PR target/80600 * config.host (*-*-netbsd*): Add t-slibgcc-libgcc to tmake_file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248037 138bc75d-0d04-0410-961f-82ee72b054a4
2017-05-14gcc/ChangeLog:uros
* config/i386/i386.opt: Add option -mcall-ms2sysv-xlogues. * config/i386/i386.h (x86_64_ms_sysv_extra_clobbered_registers): Change type to unsigned. (NUM_X86_64_MS_CLOBBERED_REGS): New macro. (struct machine_function): Add new members call_ms2sysv, call_ms2sysv_pad_in, call_ms2sysv_pad_out and call_ms2sysv_extra_regs. (struct machine_frame_state): New fields sp_realigned and sp_realigned_offset. * config/i386/i386.c (enum xlogue_stub): New enum. (enum xlogue_stub_sets): New enum. (class xlogue_layout): New class. (struct ix86_frame): New fields stack_realign_allocate_offset, stack_realign_offset and outlined_save_offset. Modify comments to detail stack layout when using out-of-line stubs. (ix86_target_string): Add -mcall-ms2sysv-xlogues option. (ix86_option_override_internal): Add sorry() for TARGET_SEH and -mcall-ms2sysv-xlogues. (stub_managed_regs): New static variable. (ix86_save_reg): Add new parameter ignore_outlined to optionally omit registers managed by out-of-line stub. (disable_call_ms2sysv_xlogues): New function. (ix86_compute_frame_layout): Modify re-alignment calculations, disable m->call_ms2sysv when appropriate and compute frame layout for out-of-line stubs. (sp_valid_at, fp_valid_at): New inline functions. (choose_basereg): New function. (choose_baseaddr): Add align parameter, use choose_basereg and modify all callers. (ix86_emit_save_reg_using_mov, ix86_emit_restore_sse_regs_using_mov): Use align parameter of choose_baseaddr to generated aligned SSE movs when possible. (pro_epilogue_adjust_stack): Modify to track machine_frame_state::sp_realigned. (ix86_nsaved_regs): Modify to accommodate changes to ix86_save_reg. (ix86_nsaved_sseregs): Likewise. (ix86_emit_save_regs): Likewise. (ix86_emit_save_regs_using_mov): Likewise. (ix86_emit_save_sse_regs_using_mov): Likewise. (get_scratch_register_on_entry): Likewise. (gen_frame_set): New function. (gen_frame_load): Likewise. (gen_frame_store): Likewise. (emit_outlined_ms2sysv_save): Likewise. (emit_outlined_ms2sysv_restore): Likewise. (ix86_expand_prologue): Modify stack re-alignment code and call emit_outlined_ms2sysv_save when appropriate. (ix86_emit_leave): Clear machine_frame_state::sp_realigned. Add parameter rtx_insn *insn, which allows the function to be used to only generate the notes. (ix86_expand_epilogue): Modify validity checks of frame and stack pointers, and call emit_outlined_ms2sysv_restore when appropriate. (ix86_expand_call): Modify to enable m->call_ms2sysv when appropriate. * config/i386/predicates.md (save_multiple): New predicate. (restore_multiple): Likewise. * config/i386/sse.md (save_multiple<mode>): New pattern. (save_multiple_realign<mode>): Likewise. (restore_multiple<mode>): Likewise. (restore_multiple_and_return<mode>): Likewise. (restore_multiple_leave_return<mode>): Likewise. * Makefile.in: Export HOSTCXX and HOSTCXXFLAGS to site.exp gcc/testsuite/ChangeLog: * gcc.target/x86_64/abi/ms-sysv/do-test.S: New file. * gcc.target/x86_64/abi/ms-sysv/gen.cc: Likewise. * gcc.target/x86_64/abi/ms-sysv/ms-sysv.c: Likewise. * gcc.target/x86_64/abi/ms-sysv/ms-sysv.exp: Likewise. libgcc/ChangeLog: * config.host: Add i386/t-msabi to i386/t-linux file list. * config/i386/i386-asm.h: New file. * config/i386/resms64.S: New file. * config/i386/resms64f.S: New file. * config/i386/resms64fx.S: New file. * config/i386/resms64x.S: New file. * config/i386/savms64.S: New file. * config/i386/savms64f.S: New file. * config/i386/t-msabi: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248029 138bc75d-0d04-0410-961f-82ee72b054a4
2017-05-092017-05-09 Andreas Tobler <andreast@gcc.gnu.org>andreast
* config.host: Use the generic FreeBSD t-slibgcc-elf-ver for arm*-*-freebsd* instead of the t-slibgcc-libgcc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@247812 138bc75d-0d04-0410-961f-82ee72b054a4
2017-05-06Add fuchsia support to libgccjconner
* config/arm/unwind-arm.h (_Unwind_decode_typeinfo_ptr): Use pc-relative indirect handling for fuchsia. * config/t-slibgcc-fuchsia: New file. * config.host (*-*-fuchsia*, aarch64*-*-fuchsia*, arm*-*-fuchsia*, x86_64-*-fuchsia*): Add definitions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@247710 138bc75d-0d04-0410-961f-82ee72b054a4
2017-04-19Introduce gcov.h header file (PR gcov-profile/80435).marxin
2017-04-19 Martin Liska <mliska@suse.cz> PR gcov-profile/80435 * Makefile.in: Install gcov.h. * gcov.h: New file. * libgcov.h: Use the header and make __gcov_flush publicly visible. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246990 138bc75d-0d04-0410-961f-82ee72b054a4
2017-04-18Validate that destination gcov file does not exist for gcov-tool (PR ↵marxin
gcov-profile/78783). 2017-04-18 Martin Liska <mliska@suse.cz> PR gcov-profile/78783 * libgcov-driver.c (gcov_get_filename): New function. 2017-04-18 Martin Liska <mliska@suse.cz> PR gcov-profile/78783 * gcov-tool.c (gcov_output_files): Validate that destination file is either removed by the tool or by a user. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246961 138bc75d-0d04-0410-961f-82ee72b054a4
2017-04-07 * Makefile.in: Swap definition of LIBGCC_LINKS and inclusion oflaw
target makefile fragment. * config/sh/t-sh (unwind-dw2-Os-4-200.o): Depend on LIBGCC_LINKS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246766 138bc75d-0d04-0410-961f-82ee72b054a4
2017-04-07[RS6000] Out-of-line register save functions can't be used from crtend.oamodra
PR target/45053 * config/rs6000/t-crtstuff (CRTSTUFF_T_CFLAGS): Add -O2. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246749 138bc75d-0d04-0410-961f-82ee72b054a4
2017-04-03Fix numerous typos in commentsredi
gcc: * alias.c (base_alias_check): Fix typo in comment. * cgraph.h (class ipa_polymorphic_call_context): Likewise. * cgraphunit.c (symbol_table::compile): Likewise. * collect2.c (maybe_run_lto_and_relink): Likewise. * config/arm/arm.c (arm_thumb1_mi_thunk): Likewise. * config/avr/avr-arch.h (avr_arch_info_t): Likewise. * config/avr/avr.c (avr_map_op_t): Likewise. * config/cr16/cr16.h (DATA_ALIGNMENT): Likewise. * config/epiphany/epiphany.c (TARGET_ARG_PARTIAL_BYTES): Likewise. * config/epiphany/epiphany.md (movcc): Likewise. * config/i386/i386.c (legitimize_pe_coff_extern_decl): Likewise. * config/m68k/m68k.c (struct _sched_ib, m68k_sched_variable_issue): Likewise. * config/mips/mips.c (mips_save_restore_reg): Likewise. * config/rx/rx.c (rx_is_restricted_memory_address): Likewise. * config/s390/s390.c (Z10_EARLYLOAD_DISTANCE): Likewise. * config/sh/sh.c (sh_rtx_costs): Likewise. * fold-const.c (fold_truth_andor): Likewise. * genautomata.c (collapse_flag): Likewise. * gengtype.h (struct type::u::s): Likewise. * gensupport.c (has_subst_attribute, add_mnemonic_string): Likewise. * input.c (FORMAT_AMOUNT): Likewise. * ipa-cp.c (class ipcp_lattice, agg_replacements_to_vector) (known_aggs_to_agg_replacement_list): Likewise. * ipa-inline-analysis.c: Likewise. * ipa-inline.h (estimate_edge_time, estimate_edge_hints): Likewise. * ipa-polymorphic-call.c (ipa_polymorphic_call_context::restrict_to_inner_class): Likewise. * loop-unroll.c (analyze_insn_to_expand_var): Likewise. * lra.c (lra_optional_reload_pseudos, lra_subreg_reload_pseudos): Likewise. * modulo-sched.c (apply_reg_moves): Likewise. * omp-expand.c (build_omp_regions_1): Likewise. * trans-mem.c (struct tm_wrapper_hasher): Likewise. * tree-ssa-loop-ivopts.c (may_eliminate_iv): Likewise. * tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Likewise. * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Likewise. * value-prof.c: Likewise. * var-tracking.c (val_reset): Likewise. gcc/ada: * doc/gnat_ugn/gnat_and_program_execution.rst: Fix typo. * g-socket.adb (To_Host_Entry): Fix typo in comment. * gnat_ugn.texi: Fix typo. * raise.c (_gnat_builtin_longjmp): Fix capitalization in comment. * s-stposu.adb (Allocate_Any_Controlled): Fix typo in comment. * sem_ch3.adb (Build_Derived_Record_Type): Likewise. * sem_util.adb (Mark_Coextensions): Likewise. * sem_util.ads (Available_Full_View_Of_Component): Likewise. gcc/c: * c-array-notation.c: Fix typo in comment. gcc/c-family: * c-warn.c (do_warn_double_promotion): Fix typo in comment. gcc/cp: * class.c (update_vtable_entry_for_fn): Fix typo in comment. * decl2.c (one_static_initialization_or_destruction): Likewise. * name-lookup.c (store_bindings): Likewise. * parser.c (make_call_declarator): Likewise. * pt.c (check_explicit_specialization): Likewise. gcc/testsuite: * g++.old-deja/g++.benjamin/scope02.C: Fix typo in comment. * gcc.dg/20031012-1.c: Likewise. * gcc.dg/ipa/ipcp-1.c: Likewise. * gcc.dg/torture/matrix-3.c: Likewise. * gcc.target/powerpc/ppc-spe.c: Likewise. * gcc.target/rx/zero-width-bitfield.c: Likewise. libcpp: * include/line-map.h (LINEMAPS_MACRO_MAPS): Fix typo in comment. * lex.c (search_line_fast): Likewise. * pch.h (cpp_valid_state): Likewise. libdecnumber: * decCommon.c (decFloatFromPackedChecked): Fix typo in comment. * decNumber.c (decNumberPower, decMultiplyOp): Likewise. libgcc: * config/c6x/pr-support.c (__gnu_unwind_execute): Fix typo in comment. libitm: * libitm_i.h (sutrct gtm_thread): Fix typo in comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246664 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-27[ARC] Fix divdf3 emulation for arcem.claziss
libgcc/ 2017-02-27 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/ieee-754/divdf3.S (__divdf3): Use __ARCEM__. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246498 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-102017-03-10 John Marino <gnugcc@marino.st>andreast
* config/aarch64/freebsd-unwind.h: New file. * config.host: Add aarch64-*-freebsd unwinder. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246052 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-10Build crt*vr.S with AltiVec enabledsegher
These files won't build on targets that do not have AltiVec enabled, breaking the build, unless we tell GAS that Altivec insns are fine. The alternative is to not build these files in that case, which is much more complicated. libgcc/ * config/rs6000/crtrestvr.s: Use .machine altivec. * config/rs6000/crtsavevr.s: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246051 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-10rs6000: float128 on BE and 32-bitsegher
This fixes float128 on BE and on 32-bit. The configure tests need to use -mabi=altivec for 32-bit, since it is not the default there. That also enables the "vector" keyword, used by the tests. To do this it temporarily adds a few flags to the CFLAGS variable. It also fixes a syntax error in the libgcc_cv_powerpc_float128_hw test (the function name was missing in the function declaration). Regenerating config.in (via autoreconf) removed the duplicate definition of HAVE_SOLARIS_CRTS. Finally, this adds a "-mfloat128-hardware requires -m64" test to rs6000.c: all the current patterns need 64-bit registers. Maybe we'll want to add float128 hardware support to 32-bit some day, but certainly not today. * config/rs6000/rs6000.c (rs6000_option_override_internal): Disallow -mfloat128-hardware without -m64. libgcc/ * configure.ac (test for libgcc_cv_powerpc_float128): Temporarily modify CFLAGS. Add -mabi=altivec -mvsx -mfloat128. (test for libgcc_cv_powerpc_float128_hw): Add -mpower9-vector and -mfloat128-hardware to the CFLAGS. Fix syntax error in the C snippet. * configure: Regenerate. * config.in: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246043 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-02 * config/i386/gthr-win32.h: Define NOGDI beforejyong
windows.h include to prevent w32api CC_NONE macro clash with libgfortran. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@245835 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-02 * unwind-seh.c: Suppress warnings for RtlUnwindEx calls.jyong
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@245834 138bc75d-0d04-0410-961f-82ee72b054a4
2017-02-16 * config/aarch64/value-unwind.h: New file.sje
* config.host (aarch64*-*-*): Add aarch64/value-unwind.h to tm_file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@245508 138bc75d-0d04-0410-961f-82ee72b054a4
2017-02-06RISC-V Port: libgccpalmer
libgcc/ChangeLog: 2017-02-06 Palmer Dabbelt <palmer@dabbelt.com> * config.host: Add RISC-V tuples. * config/riscv/atomic.c: New file. * config/riscv/crti.S: Likewise. * config/riscv/crtn.S: Likewise. * config/riscv/div.S: Likewise. * config/riscv/linux-unwind.h: Likewise. * config/riscv/muldi3.S: Likewise. * config/riscv/multi3.S: Likewise. * config/riscv/save-restore.S: Likewise. * config/riscv/sfp-machine.h: Likewise. * config/riscv/t-elf: Likewise. * config/riscv/t-elf32: Likewise. * config/riscv/t-elf64: Likewise. * config/riscv/t-softfp32: Likewise. * config/riscv/t-softfp64: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@245226 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-24 * soft-fp/op-common.h (_FP_MUL, _FP_FMA, _FP_DIV): Addjakub
/* FALLTHRU */ comments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244884 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-21 * config/i386/cygming-crtbegin.c (LIBGCJ_SONAME): No longer #define.gerald
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244743 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-20[AArch64] Only build & test pauth code for LP64jiwang
gcc/ * config/aarch64/aarch64-builtins.c (aarch64_init_builtins): Register register pauth builtins for LP64 only. libgcc/ * config/aarch64/aarch64-unwind.h: Empty this file on ILP32. * unwind-dw2.c (execute_cfa_program): Only multiplexing DW_CFA_GNU_window_save for AArch64 and LP64. gcc/testsuite/ * testsuite/gcc.target/aarch64/return_address_sign_1.c: Enable on LP64 only. * testsuite/gcc.target/aarch64/return_address_sign_2.c: Likewise. * testsuite/gcc.target/aarch64/return_address_sign_3.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244732 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-20[AArch64] Always include linux-unwind.hjiwang
libgcc/ * config/aarch64/linux-unwind.h: Always include aarch64-unwind.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244710 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-20[AArch64, libgcc] Add missing file, forget "svn add"jiwang
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244674 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-20[AArch64][4/4] libgcc unwinder support for return address signingjiwang
libgcc/ * config/aarch64/aarch64-unwind.h: New file. (DWARF_REGNUM_AARCH64_RA_STATE): Define. (MD_POST_EXTRACT_ROOT_ADDR): New target marcro and define it on AArch64. (MD_POST_EXTRACT_FRAME_ADDR): Likewise. (MD_POST_FROB_EH_HANDLER_ADDR): Likewise. (MD_FROB_UPDATE_CONTEXT): Define it on AArch64. (aarch64_post_extract_frame_addr): New function. (aarch64_post_frob_eh_handler_addr): New function. (aarch64_frob_update_context): New function. * config/aarch64/linux-unwind.h: Include aarch64-unwind.h * config.host (aarch64*-*-elf, aarch64*-*-rtems*, aarch64*-*-freebsd*): Initialize md_unwind_header to include aarch64-unwind.h. * unwind-dw2.c (struct _Unwind_Context): Define "RA_A_SIGNED_BIT". (execute_cfa_program): Multiplex DW_CFA_GNU_window_save for __aarch64__. (uw_update_context): Honor MD_POST_EXTRACT_FRAME_ADDR. (uw_init_context_1): Honor MD_POST_EXTRACT_ROOT_ADDR. (uw_frob_return_addr): New function. (uw_install_context): Use uw_frob_return_addr. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244673 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-18 libgcc/dj
* config/msp430/t-msp430 (LIB2ADD): Remove mpy.c (mpy.o): New rule. (libmul_none.a): Add mpy.o gcc/testsuite/ * gcc.target/msp430/mul_f5_muldef.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244564 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-17 PR other/79046jakub
* configure: Regenerated. config/ * acx.m4 (GCC_BASE_VER): New m4 function. (ACX_TOOL_DIRS): Require GCC_BASE_VER, for --with-gcc-major-version-only use just major number from BASE-VER. gcc/ * configure.ac: Add GCC_BASE_VER. * Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. (CFLAGS-gcc.o): Add -DBASEVER=$(BASEVER_s). (gcc.o): Depend on $(BASEVER). * common.opt (dumpfullversion): New option. * gcc.c (driver_handle_option): Handle OPT_dumpfullversion. * doc/invoke.texi: Document -dumpfullversion. * doc/install.texi: Document --with-gcc-major-version-only. * configure: Regenerated. libatomic/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * testsuite/Makefile.in: Regenerated. * configure: Regenerated. * Makefile.in: Regenerated. libgomp/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * testsuite/Makefile.in: Regenerated. * configure: Regenerated. * Makefile.in: Regenerated. libgcc/ * configure.ac: Add GCC_BASE_VER. * Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. libssp/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. * Makefile.in: Regenerated. liboffloadmic/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * aclocal.m4: Include ../config/acx.m4. * configure: Regenerated. * Makefile.in: Regenerated. libquadmath/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. * Makefile.in: Regenerated. libmpx/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. * Makefile.in: Regenerated. libada/ * configure.ac: Add GCC_BASE_VER. * Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. lto-plugin/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. * Makefile.in: Regenerated. libitm/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * testsuite/Makefile.in: Regenerated. * configure: Regenerated. * Makefile.in: Regenerated. fixincludes/ * configure.ac: Add GCC_BASE_VER. * Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. libcilkrts/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * aclocal.m4: Include ../config/acx.m4. * configure: Regenerated. * Makefile.in: Regenerated. libcc1/ * configure.ac: Add GCC_BASE_VER. For --with-gcc-major-version-only use just major number from BASE-VER. * configure: Regenerated. * Makefile.in: Regenerated. libobjc/ * configure.ac: Add GCC_BASE_VER. * Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. libstdc++-v3/ * configure.ac: Add GCC_BASE_VER. * fragment.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * po/Makefile.in: Regenerated. * libsupc++/Makefile.in: Regenerated. * testsuite/Makefile.in: Regenerated. * src/Makefile.in: Regenerated. * configure: Regenerated. * Makefile.in: Regenerated. * include/Makefile.in: Regenerated. * doc/Makefile.in: Regenerated. * python/Makefile.in: Regenerated. * src/c++11/Makefile.in: Regenerated. * src/c++98/Makefile.in: Regenerated. * src/filesystem/Makefile.in: Regenerated. libvtv/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * testsuite/Makefile.in: Regenerated. * configure: Regenerated. * Makefile.in: Regenerated. libsanitizer/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * libbacktrace/Makefile.in: Regenerated. * interception/Makefile.in: Regenerated. * asan/Makefile.in: Regenerated. * ubsan/Makefile.in: Regenerated. * configure: Regenerated. * sanitizer_common/Makefile.in: Regenerated. * lsan/Makefile.in: Regenerated. * Makefile.in: Regenerated. * tsan/Makefile.in: Regenerated. libgfortran/ * configure.ac: Add GCC_BASE_VER. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to get version from BASE-VER file. * configure: Regenerated. * Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244521 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-132017-01-13 Joe Seymour <joe.s@somniumtech.com>dj
* config/msp430/t-msp430 (libmul_none.a, libmul_16.a, libmul_32.a, libmul_f5.a): Filter archived prerequisites. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244455 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-12 * gcc.target/i386/builtin_target.c (check_features): Check alluros
supported __builtin_cpu_supports options. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244375 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-10Enable AVX-512 VPOPCNTD/VPOPCNTQ instructions.kyukhin
gcc/ * common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512VPOPCNTDQ_SET, OPTION_MASK_ISA_AVX512VPOPCNTDQ_UNSET): New. * config.gcc: Add avx512vpopcntdqintrin.h. * config/i386/avx512vpopcntdqintrin.h: New. * config/i386/cpuid.h (bit_AVX512VPOPCNTDQ): New. * config/i386/i386-builtin-types.def: Add new types. * config/i386/i386-builtin.def (__builtin_ia32_vpopcountd_v16si, __builtin_ia32_vpopcountd_v16si_mask, __builtin_ia32_vpopcountq_v8di, __builtin_ia32_vpopcountq_v8di_mask): New. * config/i386/i386-c.c (ix86_target_macros_internal): Define __AVX512VPOPCNTDQ__. * config/i386/i386.c (ix86_target_string): Add -mavx512vpopcntdq. (PTA_AVX512VPOPCNTDQ): Define. * config/i386/i386.h (TARGET_AVX512VPOPCNTDQ, TARGET_AVX512VPOPCNTDQ_P): Define. * config/i386/i386.opt: Add mavx512vpopcntdq. * config/i386/immintrin.h: Include avx512vpopcntdqintrin.h. * config/i386/sse.md (define_insn "vpopcount<mode><mask_name>"): New. libgcc/ * config/i386/cpuinfo.h (processor_features): Add FEATURE_AVX512VPOPCNTDQ. * config/i386/cpuinfo.c (get_available_features): Habdle new feature. gcc/testsuite/ * g++.dg/other/i386-2.C: Add -mavx512vpopcntdq. * g++.dg/other/i386-3.C: Ditto. * gcc.target/i386/sse-12.c: Ditto. * gcc.target/i386/sse-13.c: Ditto. * gcc.target/i386/sse-22.c: Ditto. * gcc.target/i386/sse-23.c: Ditto. * gcc.target/i386/builtin_target.c: Handle new option. * gcc.target/i386/funcspec-56.inc: Test new attributes. * gcc.target/i386/avx512vpopcntdq-vpopcntd.c: New test. * gcc.target/i386/avx512vpopcntdq-vpopcntq.c: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244263 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-04Make MIPS soft-fp preserve NaN payloads for NAN2008.jsm28
The MIPS sfp-machine.h has an _FP_CHOOSENAN implementation which emulates hardware semantics of not preserving signaling NaN payloads for an operation with two NaN arguments (although that doesn't suffice to avoid sNaN payload preservation in any case with just one NaN argument). However, those are only hardware semantics in the legacy NaN case; in the NAN2008 case, the architecture documentation says hardware preserves payloads in such cases. Furthermore, this implementation assumes legacy NaN semantics, so in the NAN2008 case the implementation actually has the effect of preserving sNaN payloads but not preserving qNaN payloads, when both should be preserved. This patch fixes the code just to copy from the first argument (at the level of libgcc, it's not meaningful which argument is the first and which is the second). Tested for mips64-linux-gnu (soft float, NAN2008) with the glibc math/ tests. * config/mips/sfp-machine.h (_FP_CHOOSENAN): Always preserve NaN payload if [__mips_nan2008]. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244059 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-04Update configure deps, remove stray \xA0 in picflag.m4, regenerateamodra
Also fix a stray changelog entry. Some of the regen here is due to previous changes not being regenerated properly, in part due to the missing configure dependencies. * configure: Regenerate. config/ * picflag.m4: Remove stray \xA0 in comment. gcc/ * Makefile.in (aclocal_deps): Update and order as per aclocal.m4. * configure: Regenerate. * config.in: Regenerate. libada/ * Makefile.in (configure_deps): Update and order as per configure.ac sinclude. * configure: Regenerate. libgcc/ * Makefile.in (configure_deps): Update. * configure: Regenerate. libiberty/ * Makefile.in (configure_deps): Update. * configure: Regenerate. libitm/ * Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244049 138bc75d-0d04-0410-961f-82ee72b054a4
2017-01-01 Update copyright years.jakub
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@243994 138bc75d-0d04-0410-961f-82ee72b054a4
2016-12-192016-12-19 Krister Walfridsson <krister.walfridsson@gmail.com>kristerw
* config.host (*-*-netbsd*): Add t-eh-dw2-dip to tmake_file. * crtstuff.c (BSD_DL_ITERATE_PHDR_AVAILABLE): Define for NetBSD. * unwind-dw2-fde-dip.c (USE_PT_GNU_EH_FRAME, ElfW): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@243790 138bc75d-0d04-0410-961f-82ee72b054a4
2016-12-172016-12-17 Matthias Klose <doko@ubuntu.com>doko
* config/arc/gmon: Remove empty directory. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@243775 138bc75d-0d04-0410-961f-82ee72b054a4
2016-12-16[ARC] Rework code for profiling.claziss
gcc/ 2016-12-16 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.h (LINK_SPEC): Tidy up. (ENDFILE_SPEC): Likewise. (LIB_SPEC): Likewise. (STARTFILE_SPEC): Include gcrt0 when profiling. (FUNCTION_PROFILER): Use __mcount. * config/arc/arc.opt (mucb-mcount): Remove. * doc/invoke.texi (ARC): Remove mucb-mcount doc. * arc/arc-protos.h (arc_profile_call): Remove. * config/arc/arc.c (write_profile_sections): Likewise. (arc_profile_call): Likewise. (unspec_prof_hash): Likewise. (unspec_prof_htab_eq): Likewise. (arc_legitimate_constant_p): Remove UNSPEC_PROF. (arc_reorg): Remove call to write_profile_sections. * config/arc/arc.md (call): Remove call to arc_profile_call. (call_value): Likewise. (sibcall): Likewise. (sibcall_value): Likewise. (define_constants): Remove UNSPEC_PROF. libgcc/ * config.host (arc*-*-linux-uclibc*): Remove libgmon, crtg, and crtgend. (arc*-*-elf*): Likewise. * config/arc/t-arc: Remove old gmon lib targets. * config/arc/crtg.S: Remove. * config/arc/crtgend.S: Likewise. * config/arc/gmon/atomic.h: Likewise. * config/arc/gmon/auxreg.h: Likewise. * config/arc/gmon/dcache_linesz.S: Likewise. * config/arc/gmon/gmon.c: Likewise. * config/arc/gmon/machine-gmon.h: Likewise. * config/arc/gmon/mcount.c: Likewise. * config/arc/gmon/prof-freq-stub.S: Likewise. * config/arc/gmon/prof-freq.c: Likewise. * config/arc/gmon/profil.S: Likewise. * config/arc/gmon/sys/gmon.h: Likewise. * config/arc/gmon/sys/gmon_out.h: Likewise. * config/arc/t-arc-newlib: Likewise. * config/arc/t-arc700-uClibc: Renamed to t-arc-uClibc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@243742 138bc75d-0d04-0410-961f-82ee72b054a4