History log of /freebsd-9.3-release/contrib/compiler-rt/lib/int_lib.h
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 267654 19-Jun-2014 gjb

Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 263560 21-Mar-2014 dim

MFC 239138 (by andrew):

Import compiler-rt r160957.

This is mostly a no-op other than for ARM where it adds missing
__aeabi_mem* and __aeabi_*divmod functions. Even on ARM these will remain
unused until the rest of the ARM EABI code is merged.

MFC 245628 (by andrew):

Import compiler-rt r172839.

This brings in __aeabi_lcmp and __aeabi_ulcmp. It also fixes the spelling
of __aeabi_f2lz. Both changes originated on the arm_eabi project branch.

MFC 245641:

Add a newline at the end of the file to stop gcc from complaining

MFC 245642 (by andrew):

Don't use the pcs attribute on compilers that don't support it. We can
revert this when we stop supporting old versions of gcc.


# 236012 25-May-2012 marius

MFC: r230021

Add a workaround to prevent endless recursion in compiler-rt.

SPARC and MIPS CPUs don't have special instructions to count
leading/trailing zeroes. The compiler-rt library provides fallback
rountines for these. The 64-bit routines, __clzdi2 and __ctzdi2, are
implemented as simple wrappers around the compiler built-in
__builtin_clz(), assuming these will expand to either 32-bit
CPU instructions or calls to __clzsi2 and __ctzsi2.

Unfortunately, our GCC 4.2 probably thinks that because the operand is
stored in a 64-bit register, it might just be a better idea to invoke
its 64-bit equivalent, simply resulting into endless recursion. Fix this
by defining __builtin_clz and __builtin_ctz to __clzsi2 and __ctzsi2
explicitly.


# 236011 25-May-2012 marius

MFC: r222656

Upgrade libcompiler_rt from revision 117047 to 132478.

It seems there have only been a small amount to the compiler-rt source
code in the mean time. I'd rather have the code in sync as much as
possible by the time we release 9.0. Changes:

- The libcompiler_rt library is now dual licensed under both the
University of Illinois "BSD-Like" license and the MIT license.

- Our local modifications for using .hidden instead of .private_extern
have been upstreamed, meaning our changes to lib/assembly.h can now be
reverted.

- A possible endless recursion in __modsi3() has been fixed.

- Support for ARM EABI has been added, but it has no effect on FreeBSD
(yet).

- The functions __udivmodsi4 and __divmodsi4 have been added.

Requested by: many, including bf@ and Pedro Giffuni


# 225736 22-Sep-2011 kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by: re (implicit)


# 222656 03-Jun-2011 ed

Upgrade libcompiler_rt from revision 117047 to 132478.

It seems there have only been a small amount to the compiler-rt source
code in the mean time. I'd rather have the code in sync as much as
possible by the time we release 9.0. Changes:

- The libcompiler_rt library is now dual licensed under both the
University of Illinois "BSD-Like" license and the MIT license.

- Our local modifications for using .hidden instead of .private_extern
have been upstreamed, meaning our changes to lib/assembly.h can now be
reverted.

- A possible endless recursion in __modsi3() has been fixed.

- Support for ARM EABI has been added, but it has no effect on FreeBSD
(yet).

- The functions __udivmodsi4 and __divmodsi4 have been added.

Requested by: many, including bf@ and Pedro Giffuni


# 215125 11-Nov-2010 ed

Import libcompiler_rt into HEAD and add Makefiles.

Obtained from: user/ed/compiler-rt


# 214152 21-Oct-2010 ed

Import compiler-rt r117047.