summaryrefslogtreecommitdiff
path: root/include/asm-generic/export.h
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2018-08-15 18:04:33 +1000
committerStephen Rothwell <sfr@canb.auug.org.au>2018-08-15 18:04:35 +1000
commitbd8c3a9995f70b2dbd577778f95d10c79927bc7a (patch)
tree8ae96ad2247d3d1bac2e14668c99328e1aee4a0f /include/asm-generic/export.h
parent21ee6251550c8eca6c5e7fb536cdb6a46d9ad42f (diff)
parentf900cbae36e93504e3f9ff327f067357e120dff3 (diff)
downloadlinux-next-bd8c3a9995f70b2dbd577778f95d10c79927bc7a.tar.gz
Merge branch 'akpm-current/current'
Diffstat (limited to 'include/asm-generic/export.h')
-rw-r--r--include/asm-generic/export.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/include/asm-generic/export.h b/include/asm-generic/export.h
index 68efb950a918..4d73e6e3c66c 100644
--- a/include/asm-generic/export.h
+++ b/include/asm-generic/export.h
@@ -5,12 +5,10 @@
#define KSYM_FUNC(x) x
#endif
#ifdef CONFIG_64BIT
-#define __put .quad
#ifndef KSYM_ALIGN
#define KSYM_ALIGN 8
#endif
#else
-#define __put .long
#ifndef KSYM_ALIGN
#define KSYM_ALIGN 4
#endif
@@ -19,6 +17,16 @@
#define KCRC_ALIGN 4
#endif
+.macro __put, val, name
+#ifdef CONFIG_HAVE_ARCH_PREL32_RELOCATIONS
+ .long \val - ., \name - .
+#elif defined(CONFIG_64BIT)
+ .quad \val, \name
+#else
+ .long \val, \name
+#endif
+.endm
+
/*
* note on .section use: @progbits vs %progbits nastiness doesn't matter,
* since we immediately emit into those sections anyway.