x86: fix clang .macro retention check

There were two problems here: The first closing parentheses got parsed
by make to end the $(call invocation, and the escaping of the quotes
wasn't right either, as there's nowhere they would get un-escaped.

Furthermore there appears to be a puzzling problem with \n getting
expanded to an actual newline too early in some environments. Convert
these to semicolons at the same time.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Tested-by: Roger Pau Monné <roger.pau@citrix.com> [On FreeBSD and Debian 9.5]
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
This commit is contained in:
Jan Beulich committed 2019-11-29 17:10:00 +01:00
1 parent 0ef3ad9712
commit d0d72e60f5
2 files changed
+3 -1

No files matched your search

+2
View File
@@ -6,6 +6,8 @@ endif
# Convenient variables
comma := ,
open := (
close := )
squote := '
#' Balancing squote, to help syntax highlighting
empty :=
+1 -1
View File
@@ -81,6 +81,6 @@ $(call as-option-add,CFLAGS,CC,".include \"asm/indirect_thunk_asm.h\"",,\
# Check whether clang keeps .macro-s between asm()-s:
# https://bugs.llvm.org/show_bug.cgi?id=36110
$(call as-option-add,CFLAGS,CC,\
".macro FOO\n.endm\"); asm volatile (\".macro FOO\n.endm",\
".macro FOO;.endm"$$(close); asm volatile $$(open)".macro FOO;.endm",\
-no-integrated-as)
endif
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.