summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNiels Möller <nisse@lysator.liu.se>2013-04-24 22:43:40 +0200
committerNiels Möller <nisse@lysator.liu.se>2013-04-24 22:43:40 +0200
commit759bbb3e2736d5f0c87b08804d5025711fa2b2af (patch)
tree8d3e4ca7cedb9da7b33dd4bc006e8cd6e0eae0ca
parent6223175feb761f770109475f6f2880edea601529 (diff)
downloadnettle-759bbb3e2736d5f0c87b08804d5025711fa2b2af.tar.gz
Added nettle_ prefix to memxor symbols.
-rw-r--r--ChangeLog9
-rw-r--r--arm/memxor.asm8
-rw-r--r--memxor.h4
-rwxr-xr-xtestsuite/symbols-test2
-rw-r--r--x86_64/memxor.asm8
5 files changed, 22 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index d53197fd..cd6583a3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2013-04-24 Niels Möller <nisse@lysator.liu.se>
+ * x86_64/memxor.asm: Added nettle_ prefix to symbols.
+ * arm/memxor.asm: Likewise.
+
+ * testsuite/symbols-test: Don't allow memxor functions without
+ nettle prefix,
+
+ * memxor.h (memxor3): Added name mangling to add "nettle_" prefix
+ to memxor and memxor3 symbols.
+
* Makefile.in (nettle_OBJS): Deleted $(LIBOBJS), and also deleted
LIBOBJS substitution.
(nettle_SOURCES): Added memxor.c, to include it in the library
diff --git a/arm/memxor.asm b/arm/memxor.asm
index 33f672c6..b69e2f43 100644
--- a/arm/memxor.asm
+++ b/arm/memxor.asm
@@ -41,7 +41,7 @@ define(<TNC>, <r12>)
C memxor(uint8_t *dst, const uint8_t *src, size_t n)
.align 4
-PROLOGUE(memxor)
+PROLOGUE(nettle_memxor)
cmp N, #0
beq .Lmemxor_done
@@ -214,7 +214,7 @@ PROLOGUE(memxor)
beq .Lmemxor_done
b .Lmemxor_bytes
-EPILOGUE(memxor)
+EPILOGUE(nettle_memxor)
define(<DST>, <r0>)
define(<AP>, <r1>)
@@ -231,7 +231,7 @@ define(<BTNC>, <r12>)
C memxor3(uint8_t *dst, const uint8_t *a, const uint8_t *b, size_t n)
.align 2
-PROLOGUE(memxor3)
+PROLOGUE(nettle_memxor3)
cmp N, #0
beq .Lmemxor3_ret
@@ -485,4 +485,4 @@ PROLOGUE(memxor3)
add AP, AP, ACNT, lsr #3
add BP, BP, BCNT, lsr #3
b .Lmemxor3_bytes
-EPILOGUE(memxor3)
+EPILOGUE(nettle_memxor3)
diff --git a/memxor.h b/memxor.h
index c9e563d4..2a6545ce 100644
--- a/memxor.h
+++ b/memxor.h
@@ -12,6 +12,10 @@
extern "C" {
#endif
+/* Name mangling */
+#define memxor nettle_memxor
+#define memxor3 nettle_memxor3
+
uint8_t *memxor(uint8_t *dst, const uint8_t *src, size_t n);
uint8_t *memxor3(uint8_t *dst, const uint8_t *a, const uint8_t *b, size_t n);
diff --git a/testsuite/symbols-test b/testsuite/symbols-test
index ec8f4918..4a97c25e 100755
--- a/testsuite/symbols-test
+++ b/testsuite/symbols-test
@@ -17,7 +17,7 @@ fi
# code.
( $NM -g ../libnettle.a || $NM ../libnettle.a ) \
- | grep ' [DRT] ' | egrep -v '( |^)\.?_?(_?nettle_|memxor)|get_pc_thunk' \
+ | grep ' [DRT] ' | egrep -v '( |^)\.?_?(_?nettle_)|get_pc_thunk' \
| sort -k3 > test1.out
if [ -s test1.out ] ; then
diff --git a/x86_64/memxor.asm b/x86_64/memxor.asm
index b22a4721..2ac9df97 100644
--- a/x86_64/memxor.asm
+++ b/x86_64/memxor.asm
@@ -38,18 +38,18 @@ define(<USE_SSE2>, <no>)
C %rdi %rsi %rdx
ALIGN(16)
-PROLOGUE(memxor)
+PROLOGUE(nettle_memxor)
W64_ENTRY(3, 0)
mov %rdx, %r10
mov %rdi, %rdx
jmp .Lmemxor3_entry
-EPILOGUE(memxor)
+EPILOGUE(nettle_memxor)
C memxor3(uint8_t *dst, const uint8_t *a, const uint8_t *b, size_t n)
C %rdi %rsi %rdx %rcx
ALIGN(16)
-PROLOGUE(memxor3)
+PROLOGUE(nettle_memxor3)
W64_ENTRY(4, 0)
C %cl needed for shift count, so move away N
mov %rcx, N
@@ -258,4 +258,4 @@ ifelse(USE_SSE2, yes, <
>)
-EPILOGUE(memxor3)
+EPILOGUE(nettle_memxor3)