freebsd-dev/contrib
Justin Hibbits 7b6b882fe4 [PowerPC] enable atomic.c in compiler_rt and do not check and forces
lock/lock_free decisions in compiled time

Summary:
Enables atomic.c in compiler_rt and forces clang to not emit a call for runtime
decision about lock/lock_free.  At compiling time, if clang can't decide if
atomic operation can be lock free, it emits calls to external functions  like
`__atomic_is_lock_free`, `__c11_atomic_is_lock_free` and
`__atomic_always_lock_free`, postponing decision to a runtime check.  According
to LLVM code documentation, the mechanism exists due to differences between
x86_64 processors that can't be decided at runtime.

On PowerPC and PowerPCSPE (32 bits), we already know in advance it can't be lock
free, so we force the decision at compile time and avoid having to implement it
in an external library.

This patch was made after 32 bit users testing the PowePC32 bit ISO reported
llvm could not be compiled with in-base llvm due to `__atomic_load8` not
implemented.

Submitted by:	alfredo.junior_eldorado.org.br
Reviewed by:	jhibbits, dim

Differential Revision:	https://reviews.freebsd.org/D22549
2019-12-26 23:06:28 +00:00
..
amd amd: add deprecation warning on program startup 2019-11-22 15:06:07 +00:00
apr
apr-util
atf
bearssl Add libbearssl 2019-02-26 05:59:22 +00:00
binutils binutils: Fix bugs found by -Wpointer-compare 2019-10-24 22:34:48 +00:00
blacklist blacklistd.conf.5: pluralization correction 2019-11-06 17:01:35 +00:00
bmake Merge bmake-20181221 2018-12-23 01:05:52 +00:00
bsnmp bsnmpd(1): Replace dubious srandomdev+random(3) with arc4random(3) 2019-12-13 05:13:25 +00:00
byacc
bzip2 Upgrade to Bzip2 version 1.0.8. 2019-08-11 06:26:03 +00:00
capsicum-test Integrate capsicum-test into the FreeBSD test suite 2019-04-01 21:24:50 +00:00
com_err
cortex-strings
dialog Update libdialog to 1.3-20180621 2018-10-20 20:49:46 +00:00
diff
dma Make dma(8) buildable. 2018-09-19 06:42:05 +00:00
dtc
ee
elftoolchain Update ELF Tool Chain to upstream r3769 2019-12-05 13:20:15 +00:00
expat MFV r355071: libbsdxml (expat) 2.2.9. 2019-11-25 07:48:16 +00:00
file MFV r354798: 2019-11-18 04:22:04 +00:00
flex Terminate filter_create_ext() args with NULL, not 0. 2018-08-08 22:45:30 +00:00
gcc powerpc: Transition to Secure-PLT, like most other OSs 2019-06-25 00:40:44 +00:00
gcclibs
gdb [PPC64] Fix GDB sigtramp detection 2019-11-01 11:28:43 +00:00
gdtoa
googletest googletest: pick from upstream: Don't allow signed/unsigned wchar_t in gcc 9 and later 2019-12-21 02:44:50 +00:00
gperf
hyperv/tools
ipfilter Fix a typo (upto --> up to) and reword to improve word flow. 2019-12-02 20:39:40 +00:00
jemalloc jemalloc: pick from upstream: Fix GCC-9.1 warning with macro GET_ARG_NUMERIC 2019-12-21 02:44:38 +00:00
ldns Regenerate: remove GOST, enable DANE-TA now that we have OpenSSL 1.1.1. 2018-10-11 08:14:31 +00:00
ldns-host
less MFV r349535: less v551. 2019-06-29 18:41:40 +00:00
libarchive MFV r352731: 2019-09-26 01:50:20 +00:00
libbegemot
libc-pwcache
libc-vis
libcxxrt Include <stdint.h> in unwind-arm.h, since it uses uint32_t and uint64_t 2019-09-13 21:00:19 +00:00
libdivsufsort
libedit Fix arm and aarch64 builds of libedit after r352275 2019-09-14 21:49:42 +00:00
libevent libevent: eliminate in-tree usage of arc4random_addrandom 2018-09-25 17:41:48 +00:00
libexecinfo Sync up with NetBSD libexecinfo changes 2014-2019 2019-10-26 06:59:59 +00:00
libgnuregex
libpcap MFV r355890: 2019-12-21 21:05:53 +00:00
libstdc++ libstdc++: remove gets 2019-09-01 16:41:24 +00:00
libucl
libxo Import libxo-1.3.1: 2019-11-07 18:06:44 +00:00
llvm-project [PowerPC] enable atomic.c in compiler_rt and do not check and forces 2019-12-26 23:06:28 +00:00
lua MFV r337586: lua: Update to 5.3.5 2018-08-14 18:58:01 +00:00
mandoc Update mandoc to cvs snapshot 2019-07-23 2019-07-26 10:00:33 +00:00
mknod
mtree mtree -O: Fix not descending on hash collisions 2019-09-12 20:46:46 +00:00
ncurses
netbsd-tests Re-apply fixed r354847 2019-11-20 19:43:34 +00:00
netcat Add -M option to nc(1), which makes it print the TCP connection 2019-12-14 10:53:52 +00:00
ngatm
ntp Disable ntpd stack gap. When ASLR with STACK GAP != 0 ntpd suffers SIGSEGV. 2019-11-15 16:34:35 +00:00
nvi vi.1: Fix a typo 2019-12-09 17:58:22 +00:00
ofed Add ConnectX-6 DX HCA ID to libmlx5. 2019-05-08 11:04:09 +00:00
one-true-awk Another partial revert of r301289. 2019-06-03 05:25:22 +00:00
openbsm auditd(8): fix long-standing uninitialized memory use bug 2019-11-28 00:46:03 +00:00
opencsd/decoder Remove a stale file left after merging. 2019-10-10 13:44:12 +00:00
openpam Upgrade to OpenPAM Tabebuia. 2019-02-25 18:41:16 +00:00
openresolv MFV 354917, 354918, 354919 2019-11-20 23:56:20 +00:00
opie
pam_modules/pam_passwdqc
pf Fix escaping, otherwise Dx gets translated as the macro for DragonFly. 2018-08-11 00:08:59 +00:00
pjdfstest
pnpinfo
processor-trace Update Intel Processor Trace decoder library. 2019-10-10 12:46:34 +00:00
sendmail Fix various -Wpointer-compare warnings 2019-10-08 21:14:09 +00:00
serf MFV r339226 (peter): Record merge of serf-1.3.9. 2018-10-08 15:16:04 +00:00
smbfs smbutil(1): Improve mdoc formatting. 2018-11-14 15:15:07 +00:00
sqlite3 MFV r354257: 2019-11-03 01:25:46 +00:00
subversion
tcp_wrappers Remove a duplicate global (rfc931_timeout). 2019-07-17 23:43:14 +00:00
tcpdump MFV r353143 (phillip): 2019-12-21 21:02:50 +00:00
tcsh Update tcsh to git revision 83c5be0 bringing in a number of bug fixes. 2019-10-21 21:21:34 +00:00
telnet libtelnet: Replace bogus use of srandomdev + random to generate "public key pair" 2019-12-13 05:42:57 +00:00
tnftp Switch the default pager for most commands to less 2018-08-08 19:24:20 +00:00
traceroute The variable names in the description of the port number usage is 2019-06-20 12:38:41 +00:00
tzcode Remove no longer relevant comment, as suggested by imp@. 2018-10-30 15:44:16 +00:00
tzdata Import tzdata 2019c 2019-09-12 00:19:16 +00:00
unbound Upgrade Unbound to 1.9.2. 2019-07-04 08:40:10 +00:00
unvis
vis
wpa MFV r346563: 2019-08-22 18:52:30 +00:00
xz Clamp tuklib_physmem() return value to SIZE_T_MAX. 2019-01-06 23:59:04 +00:00