1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-18 15:30:21 +00:00
freebsd/contrib
Dimitry Andric 12752a4a78 Pull in r224884 from upstream llvm trunk (by Keno Fischer):
[FastIsel][X86] Fix invalid register replacement for bool args

  Summary:
  Consider the following IR:

   %3 = load i8* undef
   %4 = trunc i8 %3 to i1
   %5 = call %jl_value_t.0* @foo(..., i1 %4, ...)
   ret %jl_value_t.0* %5

  Bools (that are the result of direct truncs) are lowered as whatever
  the argument to the trunc was and a "and 1", causing the part of the
  MBB responsible for this argument to look something like this:

   %vreg8<def,tied1> = AND8ri %vreg7<kill,tied0>, 1, %EFLAGS<imp-def>; GR8:%vreg8,%vreg7

  Later, when the load is lowered, it will insert

   %vreg15<def> = MOV8rm %vreg14, 1, %noreg, 0, %noreg; mem:LD1[undef] GR8:%vreg15 GR64:%vreg14

  but remember to (at the end of isel) replace vreg7 by vreg15. Now for
  the bug. In fast isel lowering, we mistakenly mark vreg8 as the result
  of the load instead of the trunc. This adds a fixup to have
  vreg8 replaced by whatever the result of the load is as well, so
  we end up with

   %vreg15<def,tied1> = AND8ri %vreg15<kill,tied0>, 1, %EFLAGS<imp-def>; GR8:%vreg15

  which is an SSA violation and causes problems later down the road.

  This fixes PR21557.

  Test Plan: Test test case from PR21557 is added to the test suite.

  Reviewers: ributzka

  Reviewed By: ributzka

  Subscribers: llvm-commits

  Differential Revision: http://reviews.llvm.org/D6245

This fixes a possible assertion failure when compiling toolbox.cxx from
LibreOffice 4.3.5.

Reported by:	kwm
2015-02-07 12:50:33 +00:00
..
amd MFV r277870 2015-01-29 15:35:55 +00:00
apr
apr-util Merge apr-util 1.5.3 -> 1.5.4. A minor bug fix update. 2014-09-24 18:38:51 +00:00
atf MFV: Import atf-0.21. 2014-11-01 11:17:54 +00:00
binutils Add pregenerated documentation for as(1) and ld(1) 2015-01-04 00:58:30 +00:00
bmake
bsnmp Fix the function signatures when MK_CRYPT == no for snmp_get_local_keys and 2014-12-27 20:58:01 +00:00
byacc Regen test cases for yacc(1) after r274460. YYINT is int now. 2014-11-13 17:54:17 +00:00
bzip2 Remove unknown macro 2014-12-26 07:36:42 +00:00
com_err
compiler-rt Remove the <netinet/ip_compat.h> include from one of the newly added 2015-01-14 22:37:11 +00:00
dialog
diff
dma
dtc
ee Fix minor syntax and grammar errors in the markup of the ee(1) man page 2015-01-18 17:25:41 +00:00
elftoolchain Preserve hard & symbolic links when modifying source file 2015-01-28 18:37:09 +00:00
expat
file MFV r276568: 2015-01-02 21:20:02 +00:00
flex
gcc FreeBSD expects _Unwind_GetGR, _Unwind_SetGR, and _Unwind_SetIP to be 2015-02-01 09:50:33 +00:00
gcclibs
gdb MFV r277658: 2015-01-24 21:05:18 +00:00
gdtoa
gperf
groff
hyperv/tools Test errno against EEXIST as well. 2014-11-11 16:49:33 +00:00
ipfilter #552 destination port not zero after parsing nat rule 2014-09-22 16:35:48 +00:00
jemalloc Fix known issues which blow up the process after dlopen("libthr.so") 2015-01-03 18:38:46 +00:00
ldns
ldns-host
less
libarchive Fix the following -Werror warning from clang 3.5.0, while building 2014-11-22 12:10:09 +00:00
libbegemot
libc-pwcache
libc-vis Merge from NetBSD: 2014-09-08 19:26:21 +00:00
libc++ Import libc++ trunk r224926. This fixes a number of bugs, completes 2015-01-15 21:17:36 +00:00
libcxxrt Import libcxxrt master 1cb607e89f6135bbc10f3d3b6fba1f983e258dcc. 2015-01-31 23:31:45 +00:00
libexecinfo
libgnuregex
libpcap MFV r276759: libpcap 1.6.2. 2015-01-06 22:29:12 +00:00
libreadline
libstdc++
libucl Update libucl to latest version 2014-11-29 00:45:09 +00:00
libxo Upgrade libxo to 0.2.0. 2015-01-19 02:22:03 +00:00
llvm Pull in r224884 from upstream llvm trunk (by Keno Fischer): 2015-02-07 12:50:33 +00:00
mdocml Add a new device control utility for new-bus devices called devctl. This 2015-02-06 16:09:01 +00:00
mknod
mtree Import in latest mtree from NetBSD to fix a bug in parsing group files 2014-10-28 17:52:26 +00:00
ncurses
netbsd-tests ttyname_r(): Return actual error, not always [ENOTTY]. 2015-02-01 22:50:33 +00:00
netcat MFV r273617: netcat from OpenBSD 5.6. 2014-10-25 00:37:35 +00:00
ngatm
ntp ntpd tries to bind to IPv6 interfaces in 'tentative' state and fails as IPv6 is 2015-01-14 23:34:00 +00:00
nvi
ofed Don't call abort on usage errors; print out the usage message instead 2015-01-16 21:12:36 +00:00
one-true-awk awk: Use random(3) instead of rand(3) 2014-09-19 18:24:02 +00:00
openbsm Fix descriptors leak. 2014-09-14 09:26:33 +00:00
openpam Staticize the test plans. 2014-11-05 20:13:18 +00:00
openresolv
opie
pam_modules/pam_passwdqc
pf
pjdfstest Increase the memory disk size in the following testcases to avoid mount 2014-09-24 22:51:16 +00:00
pnpinfo
sendmail Remove build specific details from sendmail.cf/submit.cf in support of 2015-01-27 04:06:47 +00:00
serf
smbfs Make it possible to use empty user name ("-U ''") for mount_smbfs(8). 2014-09-08 11:01:57 +00:00
sqlite3 Update sqlite3 to 3.8.7.2 2014-11-22 19:18:08 +00:00
subversion Sync the svn template with the one from ports 2014-12-02 00:23:26 +00:00
tcp_wrappers tcpd.h: add prototype for hosts_ctl 2014-10-11 18:54:37 +00:00
tcpdump MFV r277981: 2015-01-31 16:34:39 +00:00
tcsh
telnet Add baud rate support to telnet(1) 2014-11-11 04:06:05 +00:00
tnftp [SA-14:25] Fix kernel stack disclosure in setlogin(2) / getlogin(2). 2014-11-04 23:29:29 +00:00
top
traceroute
tzcode Revert WiP to contrib/tzcode accidentally committed with r274364 2014-11-11 04:07:41 +00:00
tzdata MFV of 274557,tzdata{2014j} 2014-11-16 01:00:39 +00:00
unbound MFV (r277045): merge upstream version of the local socket patch. 2015-01-12 09:46:49 +00:00
unvis
vis Import NetBSD vis(1) mandoc fixes 2015-01-03 23:16:13 +00:00
wpa
xz Install the liblzma pkg-config file 2015-01-10 00:11:10 +00:00