Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Dec 2017 12:49:24 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r327340 - projects/clang600-import/sys/crypto/via
Message-ID:  <201712291249.vBTCnOfc010153@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Fri Dec 29 12:49:24 2017
New Revision: 327340
URL: https://svnweb.freebsd.org/changeset/base/327340

Log:
  Work around a clang 6.0.0 issue with rep prefixes followed by .byte
  directives (as reported in https://bugs.llvm.org/show_bug.cgi?id=35749),
  by defining the rep prefix with yet another .byte directive.
  
  This is a temporary fix, to be reverted before merging back to head,
  until upstream has a proper fix for this.

Modified:
  projects/clang600-import/sys/crypto/via/padlock_cipher.c

Modified: projects/clang600-import/sys/crypto/via/padlock_cipher.c
==============================================================================
--- projects/clang600-import/sys/crypto/via/padlock_cipher.c	Fri Dec 29 12:48:19 2017	(r327339)
+++ projects/clang600-import/sys/crypto/via/padlock_cipher.c	Fri Dec 29 12:49:24 2017	(r327340)
@@ -88,7 +88,7 @@ padlock_cbc(void *in, void *out, size_t count, void *k
 	__asm __volatile(
 		"pushf				\n\t"
 		"popf				\n\t"
-		"rep				\n\t"
+		".byte	0xf3			\n\t"
 		".byte	0x0f, 0xa7, 0xd0"
 			: "+a" (iv), "+c" (count), "+D" (out), "+S" (in)
 			: "b" (key), "d" (cw)



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