Date: Fri, 13 Feb 2015 21:19:04 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r278709 - in stable: 10/contrib/llvm/lib/Target/ARM 10/contrib/llvm/patches 9/contrib/llvm/lib/Target/ARM 9/contrib/llvm/patches Message-ID: <201502132119.t1DLJ4Vg098490@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim Date: Fri Feb 13 21:19:02 2015 New Revision: 278709 URL: https://svnweb.freebsd.org/changeset/base/278709 Log: MFC r271025, r271029, r271030 (by sbruno): MFV: Only emit movw on ARMv6T2 Building for the FreeBSD default target ARMv6 was emitting movw ASM on certain test cases (found building qmake4/5 for ARM). Don't do that, moreover, the AS in base doesn't understand this instruction for this target. One would need to use --integrated-as to get this to build if desired. http://llvm.org/viewvc/llvm-project?view=revision&revision=216989 Submitted by: ian Reviewed by: dim Obtained from: llvm.org Added: stable/10/contrib/llvm/patches/patch-r271024-llvm-r216989-fix-movm-armv6.diff - copied unchanged from r271029, head/contrib/llvm/patches/patch-r271024-llvm-r216989-fix-movm-armv6.diff Modified: stable/10/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Added: stable/9/contrib/llvm/patches/patch-r271024-llvm-r216989-fix-movm-armv6.diff - copied unchanged from r271029, head/contrib/llvm/patches/patch-r271024-llvm-r216989-fix-movm-armv6.diff Modified: stable/9/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td Directory Properties: stable/9/contrib/llvm/ (props changed) Modified: stable/10/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td ============================================================================== --- stable/10/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td Fri Feb 13 20:58:10 2015 (r278708) +++ stable/10/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td Fri Feb 13 21:19:02 2015 (r278709) @@ -3248,7 +3248,8 @@ def : ARMPat<(ARMaddc GPR:$src, imm0_655 def : ARMPat<(ARMadde GPR:$src, so_imm_not:$imm, CPSR), (SBCri GPR:$src, so_imm_not:$imm)>; def : ARMPat<(ARMadde GPR:$src, imm0_65535_neg:$imm, CPSR), - (SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>; + (SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>, + Requires<[IsARM, HasV6T2]>; // Note: These are implemented in C++ code, because they have to generate // ADD/SUBrs instructions, which use a complex pattern that a xform function Copied: stable/10/contrib/llvm/patches/patch-r271024-llvm-r216989-fix-movm-armv6.diff (from r271029, head/contrib/llvm/patches/patch-r271024-llvm-r216989-fix-movm-armv6.diff) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/10/contrib/llvm/patches/patch-r271024-llvm-r216989-fix-movm-armv6.diff Fri Feb 13 21:19:02 2015 (r278709, copy of r271029, head/contrib/llvm/patches/patch-r271024-llvm-r216989-fix-movm-armv6.diff) @@ -0,0 +1,14 @@ +Index: lib/Target/ARM/ARMInstrInfo.td +=================================================================== +--- lib/Target/ARM/ARMInstrInfo.td (revision 271024) ++++ lib/Target/ARM/ARMInstrInfo.td (revision 271026) +@@ -3248,7 +3248,8 @@ + def : ARMPat<(ARMadde GPR:$src, so_imm_not:$imm, CPSR), + (SBCri GPR:$src, so_imm_not:$imm)>; + def : ARMPat<(ARMadde GPR:$src, imm0_65535_neg:$imm, CPSR), +- (SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>; ++ (SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>, ++ Requires<[IsARM, HasV6T2]>; + + // Note: These are implemented in C++ code, because they have to generate + // ADD/SUBrs instructions, which use a complex pattern that a xform function
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201502132119.t1DLJ4Vg098490>