OpenCores
URL https://opencores.org/ocsvn/or1k_old/or1k_old/trunk

Subversion Repositories or1k_old

[/] [or1k_old/] [trunk/] [rc203soc/] [sw/] [uClinux/] [include/] [linux/] [symtab_begin.h] - Blame information for rev 1782

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1633 jcastillo
#include <linux/linkage.h>
2
 
3
#ifdef MODVERSIONS
4
# undef _set_ver
5
# undef X
6
/*
7
 * These two macros _will_ get enough arguments from the X* macros
8
 * since "sym" expands to "symaddr, symstr" from the #define in *.ver
9
 */
10
# define _basic_version(symaddr,symstr)  symaddr, symstr
11
# define _alias_version(really,symaddr,symstr)  (void *) & really , symstr
12
 
13
# ifndef __GENKSYMS__
14
#  ifdef MODULE
15
#    define _set_ver(sym,ver) \
16
        (void *) & sym ## _R ## ver, SYMBOL_NAME_STR(sym) "_R" #ver
17
#  else /* !MODULE */
18
#    define _set_ver(sym,ver) \
19
        (void *) & sym, SYMBOL_NAME_STR(sym) "_R" #ver
20
#  endif /* !MODULE */
21
#  define X(sym) { _basic_version(sym) }
22
/*
23
 * For _really_ stacked modules:
24
 *
25
 * Use "Xalias(local_symbol, symbol_from_other_module)"
26
 * to make subsequent modules really use "local_symbol"
27
 * when they think that they are using "symbol_from_other_module"
28
 *
29
 * The "aliasing" module can still use "symbol_from_other_module",
30
 * but can now replace and/or modify the behaviour of that symbol.
31
 */
32
#  define Xalias(really,sym) { _alias_version(really,sym) }
33
# endif /* !__GENKSYMS__ */
34
#else /* !MODVERSIONS */
35
# define X(sym) { (void *) & sym, SYMBOL_NAME_STR(sym)}
36
# define Xalias(really,sym) { (void *) & really, SYMBOL_NAME_STR(sym)}
37
#endif /* MODVERSIONS */
38
/*
39
 * Some symbols always need to be unversioned.  This includes
40
 * compiler generated calls to functions.
41
 */
42
#define XNOVERS(sym) { (void *) & sym, SYMBOL_NAME_STR(sym)}
43
 
44
#define EMPTY {0,0}
45
        0, 0, 0, {

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.