From: Jeremy Fitzhardinge <jeremy@goop.org>
To: the arch/x86 maintainers <x86@kernel.org>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: [PATCH] x86: make asm/asm.h work for asm code.
Date: Mon, 16 Jun 2008 15:06:11 -0700 [thread overview]
Message-ID: <4856E3D3.2010207@goop.org> (raw)
This is useful for unifying some pieces of asm code.
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
---
include/asm-x86/asm.h | 56 +++++++++++++++++++++++++++++++++++--------------
1 file changed, 40 insertions(+), 16 deletions(-)
===================================================================
--- a/include/asm-x86/asm.h
+++ b/include/asm-x86/asm.h
@@ -1,33 +1,57 @@
#ifndef _ASM_X86_ASM_H
#define _ASM_X86_ASM_H
+
+#include <linux/stringify.h>
#ifdef CONFIG_X86_32
/* 32 bits */
-# define _ASM_PTR " .long "
-# define _ASM_ALIGN " .balign 4 "
-# define _ASM_MOV_UL " movl "
+# define __ASM_PTR .long
+# define __ASM_ALIGN .balign 4
+# define __ASM_MOV_UL movl
-# define _ASM_INC " incl "
-# define _ASM_DEC " decl "
-# define _ASM_ADD " addl "
-# define _ASM_SUB " subl "
-# define _ASM_XADD " xaddl "
+# define __ASM_INC incl
+# define __ASM_DEC decl
+# define __ASM_ADD addl
+# define __ASM_SUB subl
+# define __ASM_XADD xaddl
#else
/* 64 bits */
-# define _ASM_PTR " .quad "
-# define _ASM_ALIGN " .balign 8 "
-# define _ASM_MOV_UL " movq "
+# define __ASM_PTR .quad
+# define __ASM_ALIGN .balign 8
+# define __ASM_MOV_UL movq
-# define _ASM_INC " incq "
-# define _ASM_DEC " decq "
-# define _ASM_ADD " addq "
-# define _ASM_SUB " subq "
-# define _ASM_XADD " xaddq "
+# define __ASM_INC incq
+# define __ASM_DEC decq
+# define __ASM_ADD addq
+# define __ASM_SUB subq
+# define __ASM_XADD xaddq
#endif /* CONFIG_X86_32 */
+
+#ifdef __ASSEMBLER__
+#define _ASM_PTR __ASM_PTR
+#define _ASM_ALIGN __ASM_ALIGN
+#define _ASM_MOV_UL __ASM_MOV_UL
+
+#define _ASM_INC __ASM_INC
+#define _ASM_DEC __ASM_DEC
+#define _ASM_ADD __ASM_ADD
+#define _ASM_SUB __ASM_SUB
+#define _ASM_XADD __ASM_XADD
+#else /* !ASSEMBLER */
+#define _ASM_PTR " " __stringify(__ASM_PTR) " "
+#define _ASM_ALIGN " " __stringify(__ASM_ALIGN) " "
+#define _ASM_MOV_UL " " __stringify(__ASM_MOV_UL) " "
+
+#define _ASM_INC " " __stringify(__ASM_INC) " "
+#define _ASM_DEC " " __stringify(__ASM_DEC) " "
+#define _ASM_ADD " " __stringify(__ASM_ADD) " "
+#define _ASM_SUB " " __stringify(__ASM_SUB) " "
+#define _ASM_XADD " " __stringify(__ASM_XADD) " "
+#endif /* __ASSEMBLER__ */
/* Exception table entry */
# define _ASM_EXTABLE(from,to) \
next reply other threads:[~2008-06-16 22:07 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-16 22:06 Jeremy Fitzhardinge [this message]
2008-06-16 22:44 ` [PATCH] x86: make asm/asm.h work for asm code H. Peter Anvin
2008-06-16 22:48 ` H. Peter Anvin
2008-06-16 23:08 ` Jeremy Fitzhardinge
2008-06-16 23:13 ` H. Peter Anvin
2008-06-17 20:45 ` H. Peter Anvin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4856E3D3.2010207@goop.org \
--to=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox