ASM_INT() is defined in arch/[arm|x86]/include/asm/asm_defns.h in
exactly the same way. Instead of replicating this definition for riscv
and ppc, move it to include/xen/linkage.h, where other arch agnostic
definitions for assembler code are living already.
Adapt the generation of assembler sources via tools/binfile to include
the new home of ASM_INT().
Signed-off-by: Juergen Gross <jgross@suse.com>
---
xen/arch/arm/include/asm/asm_defns.h | 3 ---
xen/arch/x86/include/asm/asm_defns.h | 3 ---
xen/include/xen/linkage.h | 2 ++
xen/tools/binfile | 2 +-
4 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/xen/arch/arm/include/asm/asm_defns.h b/xen/arch/arm/include/asm/asm_defns.h
index c489547d29..47efdf5234 100644
--- a/xen/arch/arm/include/asm/asm_defns.h
+++ b/xen/arch/arm/include/asm/asm_defns.h
@@ -28,9 +28,6 @@
label: .asciz msg; \
.popsection
-#define ASM_INT(label, val) \
- DATA(label, 4) .long (val); END(label)
-
#endif /* __ARM_ASM_DEFNS_H__ */
/*
* Local variables:
diff --git a/xen/arch/x86/include/asm/asm_defns.h b/xen/arch/x86/include/asm/asm_defns.h
index a69fae78b1..0a3ff70566 100644
--- a/xen/arch/x86/include/asm/asm_defns.h
+++ b/xen/arch/x86/include/asm/asm_defns.h
@@ -351,9 +351,6 @@ static always_inline void stac(void)
4: .p2align 2 ; \
.popsection
-#define ASM_INT(label, val) \
- DATA(label, 4) .long (val); END(label)
-
#define ASM_CONSTANT(name, value) \
asm ( ".equ " #name ", %P0; .global " #name \
:: "i" ((value)) );
diff --git a/xen/include/xen/linkage.h b/xen/include/xen/linkage.h
index 478b1d7287..3d401b88c1 100644
--- a/xen/include/xen/linkage.h
+++ b/xen/include/xen/linkage.h
@@ -60,6 +60,8 @@
#define DATA_LOCAL(name, align...) \
SYM(name, DATA, LOCAL, LASTARG(DATA_ALIGN, ## align), DATA_FILL)
+#define ASM_INT(label, val) DATA(label, 4) .long (val); END(label)
+
#endif /* __ASSEMBLY__ */
#endif /* __LINKAGE_H__ */
diff --git a/xen/tools/binfile b/xen/tools/binfile
index 099d7eda9a..0299326ccc 100755
--- a/xen/tools/binfile
+++ b/xen/tools/binfile
@@ -25,7 +25,7 @@ binsource=$2
varname=$3
cat <<EOF >$target
-#include <asm/asm_defns.h>
+#include <xen/linkage.h>
.section $section.rodata, "a", %progbits
--
2.35.3
exactly the same way. Instead of replicating this definition for riscv
and ppc, move it to include/xen/linkage.h, where other arch agnostic
definitions for assembler code are living already.
Adapt the generation of assembler sources via tools/binfile to include
the new home of ASM_INT().
Signed-off-by: Juergen Gross <jgross@suse.com>
---
xen/arch/arm/include/asm/asm_defns.h | 3 ---
xen/arch/x86/include/asm/asm_defns.h | 3 ---
xen/include/xen/linkage.h | 2 ++
xen/tools/binfile | 2 +-
4 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/xen/arch/arm/include/asm/asm_defns.h b/xen/arch/arm/include/asm/asm_defns.h
index c489547d29..47efdf5234 100644
--- a/xen/arch/arm/include/asm/asm_defns.h
+++ b/xen/arch/arm/include/asm/asm_defns.h
@@ -28,9 +28,6 @@
label: .asciz msg; \
.popsection
-#define ASM_INT(label, val) \
- DATA(label, 4) .long (val); END(label)
-
#endif /* __ARM_ASM_DEFNS_H__ */
/*
* Local variables:
diff --git a/xen/arch/x86/include/asm/asm_defns.h b/xen/arch/x86/include/asm/asm_defns.h
index a69fae78b1..0a3ff70566 100644
--- a/xen/arch/x86/include/asm/asm_defns.h
+++ b/xen/arch/x86/include/asm/asm_defns.h
@@ -351,9 +351,6 @@ static always_inline void stac(void)
4: .p2align 2 ; \
.popsection
-#define ASM_INT(label, val) \
- DATA(label, 4) .long (val); END(label)
-
#define ASM_CONSTANT(name, value) \
asm ( ".equ " #name ", %P0; .global " #name \
:: "i" ((value)) );
diff --git a/xen/include/xen/linkage.h b/xen/include/xen/linkage.h
index 478b1d7287..3d401b88c1 100644
--- a/xen/include/xen/linkage.h
+++ b/xen/include/xen/linkage.h
@@ -60,6 +60,8 @@
#define DATA_LOCAL(name, align...) \
SYM(name, DATA, LOCAL, LASTARG(DATA_ALIGN, ## align), DATA_FILL)
+#define ASM_INT(label, val) DATA(label, 4) .long (val); END(label)
+
#endif /* __ASSEMBLY__ */
#endif /* __LINKAGE_H__ */
diff --git a/xen/tools/binfile b/xen/tools/binfile
index 099d7eda9a..0299326ccc 100755
--- a/xen/tools/binfile
+++ b/xen/tools/binfile
@@ -25,7 +25,7 @@ binsource=$2
varname=$3
cat <<EOF >$target
-#include <asm/asm_defns.h>
+#include <xen/linkage.h>
.section $section.rodata, "a", %progbits
--
2.35.3