Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Oct 2021 18:20:33 GMT
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 4b9725184e31 - main - Fix clang's internal assembler adding unwanted prefix to VIA xstore
Message-ID:  <202110231820.19NIKXSM016582@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by dim:

URL: https://cgit.FreeBSD.org/src/commit/?id=4b9725184e315596aa401cecb230033c6d6d5f29

commit 4b9725184e315596aa401cecb230033c6d6d5f29
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2021-10-23 18:19:26 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2021-10-23 18:20:00 +0000

    Fix clang's internal assembler adding unwanted prefix to VIA xstore
    
    Merge commit 2d8c18fbbdd1 from llvm git (by Jessica Clarke):
    
      [X86] Don't add implicit REP prefix to VIA PadLock xstore
    
      Commit 8fa3e8fa1492 added an implicit REP prefix to all VIA PadLock
      instructions, but GNU as doesn't add one to xstore, only all the others.
      This resulted in a kernel panic regression in FreeBSD upon updating to
      LLVM 11 (https://bugs.freebsd.org/259218) which includes the commit in
      question. This partially reverts that commit.
    
      Reviewed By: craig.topper
    
      Differential Revision: https://reviews.llvm.org/D112355
    
    MFC after:      3 days
---
 contrib/llvm-project/llvm/lib/Target/X86/X86InstrSystem.td | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/contrib/llvm-project/llvm/lib/Target/X86/X86InstrSystem.td b/contrib/llvm-project/llvm/lib/Target/X86/X86InstrSystem.td
index eb8740896e5d..89b6dbdab5dc 100644
--- a/contrib/llvm-project/llvm/lib/Target/X86/X86InstrSystem.td
+++ b/contrib/llvm-project/llvm/lib/Target/X86/X86InstrSystem.td
@@ -585,7 +585,7 @@ def XRSTORS64 : RI<0xC7, MRM3m, (outs), (ins opaquemem:$dst),
 //===----------------------------------------------------------------------===//
 // VIA PadLock crypto instructions
 let Defs = [RAX, RDI], Uses = [RDX, RDI], SchedRW = [WriteSystem] in
-  def XSTORE : I<0xa7, MRM_C0, (outs), (ins), "xstore", []>, TB, REP;
+  def XSTORE : I<0xa7, MRM_C0, (outs), (ins), "xstore", []>, TB;
 
 def : InstAlias<"xstorerng", (XSTORE)>;
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202110231820.19NIKXSM016582>