From owner-svn-src-projects@freebsd.org Wed Sep 7 20:36:15 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3597BBD0A17 for ; Wed, 7 Sep 2016 20:36:15 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 061EB85E; Wed, 7 Sep 2016 20:36:14 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u87KaEC8063546; Wed, 7 Sep 2016 20:36:14 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u87KaEwl063545; Wed, 7 Sep 2016 20:36:14 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201609072036.u87KaEwl063545@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 7 Sep 2016 20:36:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r305564 - projects/clang390-import/contrib/llvm/lib/Target/X86 X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Sep 2016 20:36:15 -0000 Author: dim Date: Wed Sep 7 20:36:13 2016 New Revision: 305564 URL: https://svnweb.freebsd.org/changeset/base/305564 Log: Pull in r280837 from upstream llvm trunk (by Wei Mi): Don't reduce the width of vector mul if the target doesn't support SSE2. The patch is to fix PR30298, which is caused by rL272694. The solution is to bail out if the target has no SSE2. Differential Revision: https://reviews.llvm.org/D24288 This fixes building the multimedia/libx264 port on i386. Modified: projects/clang390-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp Modified: projects/clang390-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp ============================================================================== --- projects/clang390-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp Wed Sep 7 20:09:24 2016 (r305563) +++ projects/clang390-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp Wed Sep 7 20:36:13 2016 (r305564) @@ -27516,7 +27516,8 @@ static SDValue reduceVMULWidth(SDNode *N const X86Subtarget &Subtarget) { // pmulld is supported since SSE41. It is better to use pmulld // instead of pmullw+pmulhw. - if (Subtarget.hasSSE41()) + // pmullw/pmulhw are not supported by SSE. + if (Subtarget.hasSSE41() || !Subtarget.hasSSE2()) return SDValue(); ShrinkMode Mode;