OSDN Git Service

added workaround for ppc64.
authorTakashi Iwai <tiwai@suse.de>
Wed, 13 Aug 2003 13:18:36 +0000 (13:18 +0000)
committerTakashi Iwai <tiwai@suse.de>
Wed, 13 Aug 2003 13:18:36 +0000 (13:18 +0000)
include/alsa-symbols.h

index 43d9cab..f70c154 100644 (file)
 #define INTERNAL_CONCAT2_2(Pre, Post) Pre##Post
 #define INTERNAL(Name) INTERNAL_CONCAT2_2(__, Name)
 
-#define symbol_version(real, name, version) \
+#ifdef __powerpc64__
+# define symbol_version(real, name, version)                   \
+       __asm__ (".symver " #real "," #name "@" #version);      \
+       __asm__ (".symver ." #real ",." #name "@" #version)
+# define default_symbol_version(real, name, version)           \
+       __asm__ (".symver " #real "," #name "@@" #version);     \
+       __asm__ (".symver ." #real ",." #name "@@" #version)
+#else
+# define symbol_version(real, name, version) \
        __asm__ (".symver " #real "," #name "@" #version)
-#define default_symbol_version(real, name, version) \
+# define default_symbol_version(real, name, version) \
        __asm__ (".symver " #real "," #name "@@" #version)
+#endif
 
 #ifdef USE_VERSIONED_SYMBOLS
 #define use_symbol_version(real, name, version) \
                default_symbol_version(real, name, version)
 #else
 #define use_symbol_version(real, name, version) /* nothing */
+#ifdef __powerpc64__
+#define use_default_symbol_version(real, name, version) \
+       __asm__ (".weak " #name);                       \
+       __asm__ (".weak ." #name);                      \
+       __asm__ (".set " #name "," #real);              \
+       __asm__ (".set ." #name ",." #real)
+#else
 #define use_default_symbol_version(real, name, version) \
        __asm__ (".weak " #name); \
        __asm__ (".set " #name "," #real)
 #endif
+#endif
 
 #endif /* __ALSA_SYMBOLS_H */