OSDN Git Service

UPSTREAM: crypto, x86: aesni - fix token pasting for clang
authorMichael Davidson <md@google.com>
Wed, 15 Mar 2017 22:36:00 +0000 (15:36 -0700)
committerGreg Hackmann <ghackmann@google.com>
Mon, 9 Oct 2017 21:00:13 +0000 (14:00 -0700)
commit2a3a3862527dbdba157c5973cbd231a20b20d253
tree18977aacec75aa55afa425d93f97c79b85153e31
parent3717411e828d8af7428987070f14819d9d809636
UPSTREAM: crypto, x86: aesni - fix token pasting for clang

aes_ctrby8_avx-x86_64.S uses the C preprocessor for token pasting
of character sequences that are not valid preprocessor tokens.
While this is allowed when preprocessing assembler files it exposes
an incompatibilty between the clang and gcc preprocessors where
clang does not strip leading white space from macro parameters,
leading to the CONCAT(%xmm, i) macro expansion on line 96 resulting
in a token with a space character embedded in it.

While this could be resolved by deleting the offending space character,
the assembler is perfectly capable of doing the token pasting correctly
for itself so we can just get rid of the preprocessor macros.

Signed-off-by: Michael Davidson <md@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit fdb2726f4e61c5e3abc052f547d5a5f6c0dc5504)
Signed-off-by: Greg Hackmann <ghackmann@google.com>
Change-Id: I087414d3575ea7b8703f39d429ccbf0361b314ae
arch/x86/crypto/aes_ctrby8_avx-x86_64.S