]> granicus.if.org Git - libjpeg-turbo/commitdiff
Make SIMD symbols private for MIPS ELF builds
authormayeut <mayeut@users.noreply.github.com>
Fri, 23 Feb 2018 23:02:27 +0000 (00:02 +0100)
committerDRC <information@libjpeg-turbo.org>
Sat, 24 Feb 2018 00:49:08 +0000 (18:49 -0600)
Closes #210

ChangeLog.md
simd/mips/jsimd_dspr2_asm.h

index 93c3e89347b9b0db195ecc5738e0ae793f82707e..7bac416ccbbfb275b7352873c4eb422fec40e7f8 100644 (file)
@@ -107,6 +107,10 @@ actual security issues, should they arise in the future.
 algorithm that caused incorrect dithering in the output image.  This algorithm
 now produces bitwise-identical results to the unmerged algorithms.
 
+12. The SIMD function symbols for x86[-64]/ELF, MIPS/ELF, and iOS/ARM[64]
+builds are now private.  This prevents those symbols from being exposed in
+applications or shared libraries that link statically with libjpeg-turbo.
+
 
 1.5.3
 =====
index 499e34b7b6ba42b315fa276ebdee876d0eb6b7f9..8bff9d9fc80a938fa29aabb213015df02d03bd39 100644 (file)
@@ -2,6 +2,7 @@
  * MIPS DSPr2 optimizations for libjpeg-turbo
  *
  * Copyright (C) 2013, MIPS Technologies, Inc., California.
+ * Copyright (C) 2018, Matthieu Darbois.
  * All Rights Reserved.
  * Authors:  Teodora Novkovic (teodora.novkovic@imgtec.com)
  *           Darko Laus       (darko.laus@imgtec.com)
 #define f30  $f30
 #define f31  $f31
 
+#ifdef __ELF__
+#define HIDDEN_SYMBOL(symbol) .hidden symbol;
+#else
+#define HIDDEN_SYMBOL(symbol)
+#endif
+
 /*
  * LEAF_MIPS32R2 - declare leaf routine for MIPS32r2
  */
 #define LEAF_MIPS32R2(symbol)                           \
                 .globl  symbol;                         \
+                HIDDEN_SYMBOL(symbol)                   \
                 .align  2;                              \
                 .type   symbol, @function;              \
                 .ent    symbol, 0;                      \