aboutsummaryrefslogtreecommitdiff
path: root/libgcc
AgeCommit message (Collapse)AuthorFilesLines
2016-07-29_divkc3.c: Add copyright/license boilerplate.Bill Schmidt3-0/+55
2016-07-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/_divkc3.c: Add copyright/license boilerplate. * config/rs6000/_mulkc3.c: Likewise. From-SVN: r238894
2016-07-29lib1funcs.S (__muldi3): No need to clear zero_reg as previous call to ↵Georg-Johann Lay2-1/+5
__umulhisi3 already cleared it. * config/avr/lib1funcs.S (__muldi3) [have MUL]: No need to clear zero_reg as previous call to __umulhisi3 already cleared it. From-SVN: r238850
2016-07-21[ARM] Fix PR target/59833Aurelien Jarno2-3/+12
For Aurelien Jarno <aurelien@aurel32.net> On ARM soft-float, the float to double conversion doesn't convert a sNaN to qNaN as the IEEE Std 754 standard mandates: "Under default exception handling, any operation signaling an invalid operation exception and for which a floating-point result is to be delivered shall deliver a quiet NaN." Given the soft float ARM code ignores exceptions and always provides a result, a float to double conversion of a signaling NaN should return a quiet NaN. Fix this in extendsfdf2. gcc/ChangeLog: PR target/59833 * config/arm/ieee754-df.S (extendsfdf2): Convert sNaN to qNaN. gcc/testsuite/ChangeLog: * gcc.dg/pr59833.c: New testcase. From-SVN: r238584
2016-07-19config.host (m32r): Add m32r/t-m32r to tmake_file.Nick Clifton2-1/+7
* config.host (m32r): Add m32r/t-m32r to tmake_file. Add crtinit.o and crtfini.o to extra_parts. From-SVN: r238478
2016-07-12_divkc3.c: New.Bill Schmidt5-1/+151
[libgcc] 2016-07-12 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/_divkc3.c: New. * config/rs6000/_mulkc3.c: New. * config/rs6000/quad-float128.h: Define TFtype; declare _mulkc3 and _divkc3. * config/rs6000/t-float128: Add _mulkc3 and _divkc3 to fp128_ppc_funcs. [gcc/testsuite] 2016-07-12 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.target/powerpc/divkc3-1.c: New. * gcc.target/powerpc/mulkc3-1.c: New. From-SVN: r238253
2016-07-11lib1funcs.S: Add new wrapper.Hale Wang2-32/+223
2016-07-11 Hale Wang <hale.wang@arm.com> Andre Vieira <andre.simoesdiasvieira@arm.com> * config/arm/lib1funcs.S: Add new wrapper. Co-Authored-By: Andre Vieira <andre.simoesdiasvieira@arm.com> From-SVN: r238215
2016-07-07arm-arches.def (armv8-m.base): Define new architecture.Thomas Preud'homme2-1/+6
2016-07-07 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * config/arm/arm-arches.def (armv8-m.base): Define new architecture. (armv8-m.main): Likewise. (armv8-m.main+dsp): Likewise. * config/arm/arm-protos.h (FL_FOR_ARCH8M_BASE): Define. (FL_FOR_ARCH8M_MAIN): Likewise. * config/arm/arm-tables.opt: Regenerate. * config/arm/bpabi.h: Add armv8-m.base, armv8-m.main and armv8-m.main+dsp to BE8_LINK_SPEC. * config/arm/arm.h (TARGET_HAVE_LDACQ): Exclude ARMv8-M. (enum base_architecture): Add BASE_ARCH_8M_BASE and BASE_ARCH_8M_MAIN. * config/arm/arm.c (arm_arch_name): Increase size to work with ARMv8-M Baseline and Mainline. (arm_option_override_internal): Also disable arm_restrict_it when !arm_arch_notm. Update comment for -munaligned-access to also cover ARMv8-M Baseline. (arm_file_start): Increase buffer size for printing architecture name. * doc/invoke.texi: Document architectures armv8-m.base, armv8-m.main and armv8-m.main+dsp. (mno-unaligned-access): Clarify that this is disabled by default for ARMv8-M Baseline architectures as well. gcc/testsuite/ * lib/target-supports.exp: Generate add_options_for_arm_arch_FUNC and check_effective_target_arm_arch_FUNC_multilib for ARMv8-M Baseline and ARMv8-M Mainline architectures. libgcc/ * config/arm/lib1funcs.S (__ARM_ARCH__): Define to 8 for ARMv8-M. From-SVN: r238081
2016-07-07lib1funcs.S (HAVE_ARM_CLZ): Define for ARMv6* or later and ARMv5t* rather ↵Thomas Preud'homme2-3/+9
than for a fixed list of... 2016-07-07 Thomas Preud'homme <thomas.preudhomme@arm.com> libgcc/ * config/arm/lib1funcs.S (HAVE_ARM_CLZ): Define for ARMv6* or later and ARMv5t* rather than for a fixed list of architectures. From-SVN: r238080
2016-07-07elf.h: Use __ARM_ARCH_ISA_THUMB and __ARM_ARCH_ISA_ARM to decide whether to ↵Thomas Preud'homme5-19/+51
prevent... 2016-07-07 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * config/arm/elf.h: Use __ARM_ARCH_ISA_THUMB and __ARM_ARCH_ISA_ARM to decide whether to prevent some libgcc routines being included for some multilibs rather than __ARM_ARCH_6M__ and add comment to indicate the link between this condition and the one in libgcc/config/arm/lib1func.S. gcc/testsuite/ * lib/target-supports.exp (check_effective_target_arm_cortex_m): Use __ARM_ARCH_ISA_ARM to test for Cortex-M devices. libgcc/ * config/arm/bpabi-v6m.S: Clarify what architectures is the implementation suitable for. * config/arm/lib1funcs.S (__prefer_thumb__): Define among other cases for all Thumb-1 only targets. (NOT_ISA_TARGET_32BIT): Define for Thumb-1 only targets. (THUMB_LDIV0): Test for NOT_ISA_TARGET_32BIT rather than __ARM_ARCH_6M__. (EQUIV): Likewise. (ARM_FUNC_ALIAS): Likewise. (umodsi3): Add check to __ARM_ARCH_ISA_THUMB != 1 to guard the idiv version. (modsi3): Likewise. (clzsi2): Test for NOT_ISA_TARGET_32BIT rather than __ARM_ARCH_6M__. (clzdi2): Likewise. (ctzsi2): Likewise. (L_interwork_call_via_rX): Test for __ARM_ARCH_ISA_ARM rather than __ARM_ARCH_6M__ in guard for checking whether it is defined. (final includes): Test for NOT_ISA_TARGET_32BIT rather than __ARM_ARCH_6M__ and add comment to indicate the connection between this condition and the one in gcc/config/arm/elf.h. * config/arm/libunwind.S: Test for __ARM_ARCH_ISA_THUMB and __ARM_ARCH_ISA_ARM rather than __ARM_ARCH_6M__. * config/arm/t-softfp: Likewise. From-SVN: r238079
2016-07-06remove unused CTOR_LISTS_DEFINED_EXTERNALLY macroTrevor Saunders2-3/+7
The last target to use this was i386-interix, so since that is gone we don't need this anymore. libgcc/ChangeLog: 2016-07-06 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * libgcc2.c (SYMBOL__MAIN): Remove checks for CTOR_LISTS_DEFINED_EXTERNALLY. From-SVN: r238067
2016-06-28linux.h: Do not include arch/icache.hWalter Lee2-2/+13
gcc/ChangeLog * config/tilegx/linux.h: Do not include arch/icache.h (CLEAR_INSN_CACHE): Provide inlined definition directly. * config/tilepro/linux.h: Do not include arch/icache.h (CLEAR_INSN_CACHE): Provide inlined definition directly. libgcc/ChangeLog * config/tilepro/atomic.h: Do not include arch/spr_def.h and asm/unistd.h. (SPR_CMPEXCH_VALUE): Define for tilegx. (__NR_FAST_cmpxchg): Define for tilepro. (__NR_FAST_atomic_update): Define for tilepro. (__NR_FAST_cmpxchg64): Define for tilepro. From-SVN: r237824
2016-06-23config.host: Add suport for arm*-*-phoenix* targets.Jakub Sejdak2-0/+11
2016-06-23 Jakub Sejdak <jakub.sejdak@phoesys.com> * config.host: Add suport for arm*-*-phoenix* targets. From-SVN: r237729
2016-06-21remove mep-* supportTrevor Saunders6-389/+8
libgcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.host: Remove support for mep-*. * config/mep/lib1funcs.S: Remove. * config/mep/lib2funcs.c: Remove. * config/mep/t-mep: Remove. * config/mep/tramp.c: Remove. gcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * common/config/mep/mep-common.c: Remove. * config.gcc: Remove mep-* support. * config/mep/constraints.md: Remove. * config/mep/default.h: Remove. * config/mep/intrinsics.h: Remove. * config/mep/intrinsics.md: Remove. * config/mep/ivc2-template.h: Remove. * config/mep/mep-c5.cpu: Remove. * config/mep/mep-core.cpu: Remove. * config/mep/mep-default.cpu: Remove. * config/mep/mep-ext-cop.cpu: Remove. * config/mep/mep-intrin.h: Remove. * config/mep/mep-ivc2.cpu: Remove. * config/mep/mep-pragma.c: Remove. * config/mep/mep-protos.h: Remove. * config/mep/mep.c: Remove. * config/mep/mep.cpu: Remove. * config/mep/mep.h: Remove. * config/mep/mep.md: Remove. * config/mep/mep.opt: Remove. * config/mep/predicates.md: Remove. * config/mep/t-mep: Remove. * doc/install.texi: Remove mep-* documentation. * doc/md.texi: Likewise. gcc/testsuite/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * gcc.dg/tree-ssa/forwprop-28.c: Remove mep-* support. * gcc.dg/tree-ssa/reassoc-32.c: Likewise. * gcc.dg/tree-ssa/reassoc-33.c: Likewise. * gcc.dg/tree-ssa/reassoc-34.c: Likewise. * gcc.dg/tree-ssa/reassoc-35.c: Likewise. * gcc.dg/tree-ssa/reassoc-36.c: Likewise. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-1.c: Likewise. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-2.c: Likewise. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-3.c: Likewise. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-4.c: Likewise. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-5.c: Likewise. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-6.c: Likewise. * gcc.dg/tree-ssa/ssa-thread-11.c: Likewise. * gcc.dg/tree-ssa/vrp87.c: Likewise. * lib/target-supports.exp: Likewise. contrib/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config-list.mk: Stop testing mep-elf. libstdc++-v3/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * configure.host: Remove mep-* support. From-SVN: r237666
2016-06-21remove avr-rtems supportTrevor Saunders3-8/+5
contrib/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config-list.mk: Stop testing avr-rtems. libgcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.host: Remove support for avr-rtems. * config/avr/t-rtems: Remove. ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * configure: Regenerate. * configure.ac: Remove support for avr-rtems. gcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.gcc: Remove support for avr-rtems. * config/avr/gen-avr-mmcu-specs.c: Likewise. * config/avr/rtems.h: Remove. * config/avr/t-rtems: Remove. contrib/header-tools/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * README: Remove references to avr-rtems. * reduce-headers: Likewise. From-SVN: r237665
2016-06-21remove m32-rtems supportTrevor Saunders2-4/+4
libgcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.host: Remove m32r-rtems support. gcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.gcc: Remove m32r-rtems support. * config/m32r/rtems.h: Remove. contrib/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config-list.mk: Stop testing m32r-rtems. From-SVN: r237664
2016-06-21remove h8300-rtems supportTrevor Saunders2-5/+4
contrib/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config-list.mk: Remove h8300-rtems support. libgcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.host: Remove h8300-rtems support. gcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.gcc: Remove h8300-rtems support. * config/h8300/rtems.h: Remove. * config/h8300/t-rtems: Remove. From-SVN: r237663
2016-06-21remove knetbsd supportTrevor Saunders2-4/+7
gcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.gcc: Remove support for knetbsd. * configure.ac: Likewise. * config/i386/knetbsd-gnu.h: Remove. * config/i386/knetbsd-gnu64.h: Remove. * config/knetbsd-gnu.h: Remove. * configure: Regenerate. libgcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.host: Remove support for knetbsd. libstdc++-v3/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * configure: Regenerate. * configure.host: Remove support for knetbsd. * crossconfig.m4: Likewise. contrib/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config-list.mk: stop testing knetbsd. From-SVN: r237662
2016-06-21remove support for targeting openbsd 2 or 3Trevor Saunders2-2/+4
contrib/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config-list.mk: Stop testing openbsd3.0. libgcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.host: Remove support for openbsd 2 and 3. gcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.gcc: Remove support for openbsd 2 and 3. * config/openbsd-oldgas.h: Remove. From-SVN: r237661
2016-06-21remove support for the interix targetTrevor Saunders3-6/+5
contrib/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config-list.mk: Remove interix target. libgcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.host: Remove interix support. * config/i386/t-interix: Remove. config/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * elf.m4: Remove interix support. * picflag.m4: Likewise. fixincludes/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * mkfixinc.sh: Remove interix support. gcc/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * config.gcc: Remove interix support. * config/i386/i386-interix.h: Remove. * config/i386/interix.opt: Remove. * config/i386/t-interix: Remove. * configure: Regenerate. * configure.ac: Remove interix support. * doc/install.texi: Remove interix documentation. gcc/testsuite/ChangeLog: 2016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * gcc.dg/attr-ms_struct-1.c: Stop testing interix. * gcc.dg/attr-ms_struct-2.c: Likewise. * gcc.dg/attr-ms_struct-packed1.c: Likewise. * gcc.dg/bf-ms-attrib.c: Likewise. * gcc.dg/bf-ms-layout-2.c: Likewise. * gcc.dg/bf-ms-layout-3.c: Likewise. * gcc.dg/bf-ms-layout.c: Likewise. * gcc.dg/bf-no-ms-layout.c: Likewise. * gcc.target/i386/bitfield1.c: Likewise. * gcc.target/i386/bitfield2.c: Likewise. * gcc.target/i386/bitfield3.c: Likewise. From-SVN: r237660
2016-06-18fptr.c (__canonicalize_funcptr_for_compare): Don't set least-significant bit ↵John David Anglin2-1/+6
in function pointer for fixup. * config/pa/fptr.c (__canonicalize_funcptr_for_compare): Don't set least-significant bit in function pointer for fixup. From-SVN: r237574
2016-06-14* Partially revert my previous commit.Uros Bizjak10-85/+23
From-SVN: r237418
2016-06-13i386-builtin-types.def (INT_FTYPE_FLOAT128): New function type.Uros Bizjak9-11/+97
* config/i386/i386-builtin-types.def (INT_FTYPE_FLOAT128): New function type. * config/i386/i386.c (enum ix86_builtins) [IX86_BUILTIN_SIGNBITQ]: New. (ix86_init_builtins): Add __builtin_signbitq function. (ix86_expand_args_builtin): Handle INT_FTYPE_FLOAT128. (ix86_expand_builtin): Handle IX86_BUILTIN_SIGNBITQ. * config/i386/i386.md (signbittf2): New expander. * config/i386/sse.md (ptesttf2): New insn pattern. * doc/extend.texi (x86 Built-in Functions): Document __builtin_signbitq. libgcc/ChangeLog: * config.host (i[34567]86-*-* | x86_64-*-*): Always include i386/${host_address}/t-softfp in tmake_file. * config/i386/32/t-softfp: Update comment for __builtin_copysignq. * config/i386/32/tf-signs.c: Add __signbittf2 fallback function. * config/i386/64/t-softfp: New file. * config/i386/64/tf-signs.c: Ditto. * config/i386/libgcc-bsd.ver: Add __signbittf2. * config/i386/libgcc-glibc.ver: Ditto. * config/i386/libgcc-sol2.ver: Ditto. testsuite/ChangeLog: * gcc.target/i386/float128-3.c: New test. * gcc.target/i386/quad-sse4.c: Ditto. * gcc.target/i386/quad-sse.c: Use -msse instead of -msse2. Update scan strings. From-SVN: r237415
2016-06-06re PR bootstrap/71400 (profiledbootstrap failed)Aaron Conole2-14/+21
PR libgcc/71400 * libgcov-driver-system.c (__gcov_error_file): Disable if IN_GCOV_TOOL. (get_gcov_error_file): Check __gcov_error_file before trying to initialize it. (gcov_error): Always use get_gcov_error_file. Co-Authored-By: Nathan Sidwell <nathan@acm.org> From-SVN: r237135
2016-06-02On behalf of Aaron Conole <aconole@redhat.com>Aaron Conole3-3/+62
On behalf of Aaron Conole <aconole@redhat.com> * libgcov-driver-system.c (__gcov_error_file): New. (get_gcov_error_file): New. (gcov_error): Use and set __gcov_error_file. (gcov_error_exit): New. * libgcov-driver.c (gcov_exit): Call gcov_error_exit. From-SVN: r237033
2016-05-26free.asm: Delete.Nathan Sidwell5-159/+8
* config/nvptx/free.asm: Delete. * config/nvptx/malloc.asm: Delete. * config/nvptx/realloc.c: Delete. * t-nvptx: Update. From-SVN: r236773
2016-05-25crt0.s: Delete.Nathan Sidwell4-47/+45
libgcc/ * config/nvptx/crt0.s: Delete. * config/nvptx/crt0.c: New. * t-nvptx: Update. gcc/testsuite/ * gcc.c-torture/execute/921110-1.c: Fix abort decl. add missing 2016-05-20 Nathan Sidwell <nathan@acm.org> entry From-SVN: r236702
2016-05-19cygming.h (DWARF2_UNWIND_INFO): Allow --disable-sjlj-exceptions for ↵Sandra Loosemore2-0/+13
TARGET_BI_ARCH to select DWARF-2 EH for... 2016-05-19 Sandra Loosemore <sandra@codesourcery.com> gcc/ * config/i386/cygming.h (DWARF2_UNWIND_INFO): Allow --disable-sjlj-exceptions for TARGET_BI_ARCH to select DWARF-2 EH for 32-bit mode and SEH for 64-bit. * config/i386/mingw32.h (SHARED_LIBGCC_UNDEFS_SPEC): Handle TARGET_64BIT_DEFAULT. libgcc/ * config.host [x86_64-*-cygwin*]: Handle tmake_eh_file for mixed dw2/seh configuration. [x86_64-*-mingw*]: Likewise. From-SVN: r236490
2016-05-10[RTEMS] Fix moxie libgcc supportJoel Sherrill2-7/+9
libgcc/ PR libgcc/70720 * config.host (moxie-*-rtems*): Merge this stanza with other moxie targets so the same extra_parts are built. Also have tmake_file add on to its value rather than override. From-SVN: r236064
2016-04-30config.guess: Remove SH5 support.Oleg Endo3-17/+8
/ * config.guess: Remove SH5 support. * config.sub: Likewise. * configure: Likewise. * configure.ac: Likewise. config/ * picflag.m4: Remove SH5 support. gcc/ * config/sh/t-sh: Remove SH5 support. * config.gcc: Likewise. * configure: Likewise. contrib/ * compare-all-tests: Remove SH5 support. * config-list.mk: Likewise. libada/ * configure: Remove SH5 support. libgcc/ * config.host: Remove SH5 support. * configure: Likewise. libiberty/ * configure: Remove SH5 support. libjava/ * classpath/config.guess: Remove SH5 support. * classpath/config.sub: Likewise. From-SVN: r235676
2016-04-29crt1.S: Remove SH5 support.Oleg Endo9-2574/+21
libgcc/ * config/sh/crt1.S: Remove SH5 support. * config/sh/crti.S: Likewise. * config/sh/crtn.S: Likewise. * config/sh/lib1funcs-4-300.S: Likewise. * config/sh/lib1funcs-Os-4-200.S: Likewise. * config/sh/lib1funcs.S: Likewise. * config/sh/linux-unwind.h: Likewise. * config/sh/t-sh64: Delete. From-SVN: r235640
2016-04-29[ARC] Handle FPX NaN within optimized floating point library.Claudiu Zissulescu2-5/+14
gcc/ 2016-04-29 Claudiu Zissulescu <claziss@synopsys.com> * testsuite/gcc.target/arc/ieee_eq.c: New test. libgcc/ 2016-04-29 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/ieee-754/eqdf2.S: Handle FPX NaN. From-SVN: r235633
2016-04-28[ARC/LIBGCC] Add TLS support.Claudiu Zissulescu4-0/+79
libgcc/ 2016-04-28 Claudiu Zissulescu <claziss@synopsys.com> Joern Rennecke <joern.rennecke@embecosm.com> * config/arc/crttls.S: New file. * config/arc/t-arc: New rule. * config.host (arc*-*-elf*, arc*-*-linux*): Add crttls.o. Co-Authored-By: Joern Rennecke <joern.rennecke@embecosm.com> From-SVN: r235558
2016-04-25cmpd.c (__mspabi_cmpf): Add prototype.Nick Clifton7-6/+32
* config/msp430/cmpd.c (__mspabi_cmpf): Add prototype. (__mspabi_cmpd): Likewise. * config/msp430/floathidf.c (__floathidf): Likewise. * config/msp430/floathisf.c (__floathisf): Likewise * config/msp430/floatunhidf.c (__floatunssidf): Likewise. * config/msp430/floatunhisf.c (__floatunshisf): Likewise. * config/msp430/lib2shift.c (__ashlsi3): Take a signed char as the second parameter. (__ashrsi3): Likewise. From-SVN: r235409
2016-04-21* config/m68k/linux-atomic.c: Do not include unistd.hWaldemar Brodkorb2-1/+4
From-SVN: r235358
2016-04-20ieee754-df.S: Fix typos in comments.Martin Galvan2-12/+16
2016-04-20 Martin Galvan <martin.galvan@tallertechnologies.com> libgcc/ * config/arm/ieee754-df.S: Fix typos in comments. From-SVN: r235291
2016-04-11re PR target/70381 (On powerpc, -mfloat128 is on by default for all VSX systems)Michael Meissner3-16/+32
[gcc] 2016-04-11 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/70381 * config/rs6000/rs6000.c (rs6000_opt_masks): Disable using the target attribute and pragma from changing the -mfloat128 and -mfloat128-hardware options. * doc/extend.texi (Additional Floating Types): Document PowerPC __float128 restrictions. [libgcc] 2016-04-11 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/70381 * configure.ac (powerpc*-*-linux*): Rework tests to build __float128 emulation routines to not depend on using #pragma GCC target to enable -mfloat128. * configure: Regnerate. [gcc/testsuite] 2016-04-11 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/70381 * gcc.target/powerpc/float128-1.c: New tests to make sure the __float128 emulator is built and runs. * gcc.target/powerpc/float128-1.c: Likewise. * lib/target-supports.exp (check_ppc_float128_sw_available): Rework tests for __float128 software and hardware availability. Fix exit condition to return 0 on success. From-SVN: r234884
2016-04-04re PR target/67172 (i686-w64-mingw32 dwarf2 bootstrap fails with undefined ↵Eric Botcazou2-1/+12
reference to __EH_FRAME_BEGIN__) PR target/67172 * libgcc2.c (L__main): Undefine __LIBGCC_EH_FRAME_SECTION_NAME__ if __MINGW32__ is defined. From-SVN: r234727
2016-03-29ft32.opt (mnodiv): New.James Bowman3-10/+88
* config/ft32/ft32.opt (mnodiv): New. * config/ft32/ft32.md (*divsi3, *modsi3): Qualify with TARGET_NODIV. * doc/invoke.texi (FT32 Options -mnodiv): New. * libgcc/config/ft32/lib1funcs.S (*divsi3, *modsi3): New. From-SVN: r234516
2016-03-22re PR libgcc/70363 (PowerPC __float128 to long double doesn't link if built ↵Michael Meissner2-0/+11
with an assember without ISA 3.0 support) 2016-03-22 Michael Meissner <meissner@linux.vnet.ibm.com> PR libgcc/70363 * config/rs6000/extendkftf2-sw.c (__extendkftf2_sw): If libgcc was built with an assembler that does not support ISA 3.0 instructions, rename __extendkftf2_sw to __extendkftf2. From-SVN: r234408
2016-03-16Save call-clobbered registers in _mcount on 32-bit Solaris/x86 (PR target/38239)Rainer Orth2-24/+19
PR target/38239 * config/sol2/gmon.c [__i386__] (_mcount): Save and restore call-clobbered registers. (internal_mcount): Remove __i386__ handling. From-SVN: r234256
2016-02-26config.host: Add x86_64-*-rtems*.Joel Sherrill2-1/+5
2016-02-26 Joel Sherrill <joel@rtems.org> * config.host: Add x86_64-*-rtems*. From-SVN: r233762
2016-02-26config.host: Add aarch64-*-rtems*.Joel Sherrill2-1/+5
2016-02-26 Joel Sherrill <joel@rtems.org> * libgcc/config.host: Add aarch64-*-rtems*. From-SVN: r233759
2016-02-26sfp-machine.h (_FP_DECL_EX): Declare _fpsr as a union of u64 and double.Paul E. Murphy2-9/+23
2016-02-26 Paul E. Murphy <murphyp@linux.vnet.ibm.com> Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/sfp-machine.h (_FP_DECL_EX): Declare _fpsr as a union of u64 and double. (FP_TRAPPING_EXCEPTIONS): Return a bitmask of trapping exceptions. (FP_INIT_ROUNDMODE): Read the fpscr instead of writing a mystery value. (FP_ROUNDMODE): Update the usage of _fpscr. Co-Authored-By: Bill Schmidt <wschmidt@linux.vnet.ibm.com> From-SVN: r233756
2016-02-25re PR driver/68463 (Offloading fails when some objects are compiled with LTO ↵Ilya Verbin5-8/+26
and some without) gcc/ PR driver/68463 * config/gnu-user.h (CRTOFFLOADBEGIN): Define. Add crtoffloadbegin.o if offloading is enabled and -fopenacc or -fopenmp is specified. (CRTOFFLOADEND): Likewise. (GNU_USER_TARGET_STARTFILE_SPEC): Add CRTOFFLOADBEGIN. (GNU_USER_TARGET_ENDFILE_SPEC): Add CRTOFFLOADEND. * lto-wrapper.c (offloadbegin, offloadend): Remove static vars. (offload_objects_file_name): New static var. (tool_cleanup): Remove offload_objects_file_name file. (find_offloadbeginend): Replace with ... (find_crtoffloadtable): ... this. (run_gcc): Remove offload_argc and offload_argv. Get offload_objects_file_name from -foffload-objects=... option. Read names of object files with offload from this file, pass them to compile_images_for_offload_targets. Don't call find_offloadbeginend and don't pass offloadbegin and offloadend to the linker. Don't pass offload non-LTO files to the linker, because now they're not claimed. libgcc/ PR driver/68463 * Makefile.in (crtoffloadtable$(objext)): New rule. * configure.ac (extra_parts): Add crtoffloadtable$(objext) if enable_offload_targets is not empty. * configure: Regenerate. * offloadstuff.c: Move __OFFLOAD_TABLE__ from crtoffloadend to crtoffloadtable. libgomp/ PR driver/68463 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: Remove. lto-plugin/ PR driver/68463 * lto-plugin.c (struct plugin_offload_file): New. (offload_files): Change type. (offload_files_last, offload_files_last_obj): New. (offload_files_last_lto): New. (free_2): Adjust accordingly. (all_symbols_read_handler): Don't add offload files to lto_arg_ptr. Don't call free_1 for offload_files. Write names of object files with offloading to the temporary file. Add new option to lto_arg_ptr. (claim_file_handler): Don't claim file if it contains offload sections without LTO sections. If it contains offload sections, add to the list. From-SVN: r233712
2016-02-17xtensa: fix libgcc build with --text-section-literalsMax Filippov3-0/+11
Functions __muldf3_aux, __divdf3_aux, __mulsf3_aux and __divsf3_aux don't start with leaf_entry, so they need explicit .literal_position, otherwise libgcc build fails in the presence of --text-section-literals. 2016-02-17 Max Filippov <jcmvbkbc@gmail.com> libgcc/ * config/xtensa/ieee754-df.S (__muldf3_aux, __divdf3_aux): Add .literal_position before the function. * config/xtensa/ieee754-sf.S (__mulsf3_aux, __divsf3_aux): Likewise. From-SVN: r233505
2016-02-15S/390: Add -fsplit-stack supportMarcin Kościelnicki5-2/+626
libgcc/ChangeLog: * config.host: Use t-stack and t-stack-s390 for s390*-*-linux. * config/s390/morestack.S: New file. * config/s390/t-stack-s390: New file. * generic-morestack.c (__splitstack_find): Add s390-specific code. gcc/ChangeLog: * common/config/s390/s390-common.c (s390_supports_split_stack): New function. (TARGET_SUPPORTS_SPLIT_STACK): New macro. * config/s390/s390-protos.h: Add s390_expand_split_stack_prologue. * config/s390/s390.c (struct machine_function): New field split_stack_varargs_pointer. (s390_register_info): Mark r12 as clobbered if it'll be used as temp in s390_emit_prologue. (s390_emit_prologue): Use r12 as temp if r1 is taken by split-stack vararg pointer. (morestack_ref): New global. (SPLIT_STACK_AVAILABLE): New macro. (s390_expand_split_stack_prologue): New function. (s390_live_on_entry): New function. (s390_va_start): Use split-stack vararg pointer if appropriate. (s390_asm_file_end): Emit the split-stack note sections. (TARGET_EXTRA_LIVE_ON_ENTRY): New macro. * config/s390/s390.md (UNSPEC_STACK_CHECK): New unspec. (UNSPECV_SPLIT_STACK_CALL): New unspec. (UNSPECV_SPLIT_STACK_DATA): New unspec. (split_stack_prologue): New expand. (split_stack_space_check): New expand. (split_stack_data): New insn. (split_stack_call): New expand. (split_stack_call_*): New insn. (split_stack_cond_call): New expand. (split_stack_cond_call_*): New insn. From-SVN: r233421
2016-02-12config.host (tilegx*-*-linux*): remove ti from softfp_int_modes for 32-bit ↵Walter Lee2-1/+9
configs. libgcc/ChangeLog: * config.host (tilegx*-*-linux*): remove ti from softfp_int_modes for 32-bit configs. From-SVN: r233389
2016-02-10re PR go/68562 (morestack misaligns stack on x86_64)Ian Lance Taylor2-1/+10
PR go/68562 * config/i386/morestack.S (__stack_split_initialize): Align stack. From-SVN: r233273
2016-02-03re PR bootstrap/69611 (Bootstrap broken on PowerPC FreeBSD, IEEE 128-bit ↵Andreas Tobler2-2/+8
floating point support.) 2016-02-03 Andreas Tobler <andreast@gcc.gnu.org> PR bootstrap/69611 * config/rs6000/sfp-machine.h: Guard __sfp_exceptions with __FLOAT128__ to compile only for __float128 capable targets. From-SVN: r233111
2016-01-25re PR target/69444 (recent changes broke x64_64 -> powerpc crosscompiler build)Jakub Jelinek2-34/+40
PR target/69444 * config/rs6000/sfp-machine.h: Fix a typo in #ifndef - __NO_FPRS__ instead of ___NO_FPRS__. From-SVN: r232805