diff options
author | Andreas Jaeger <aj@suse.de> | 2012-03-27 21:35:36 +0200 |
---|---|---|
committer | Andreas Jaeger <aj@suse.de> | 2012-03-27 21:35:36 +0200 |
commit | 1e3cdfda7486316198ec0587a8aa96f50e88b3bc (patch) | |
tree | 4badfb248f3392b95be5b86d747c98331409dca7 /sysdeps/generic/ifunc-sel.h | |
parent | c876e002a2484d53c797140c005f3630e6abec72 (diff) | |
parent | d6373f9ce3972a1891e4d09479a98e0dbc7e3d73 (diff) | |
download | glibc-1e3cdfda7486316198ec0587a8aa96f50e88b3bc.tar.gz glibc-1e3cdfda7486316198ec0587a8aa96f50e88b3bc.tar.xz glibc-1e3cdfda7486316198ec0587a8aa96f50e88b3bc.zip |
Merge branch 'elf-move'
Conflicts: debug/backtracesymsfd.c sysdeps/generic/elf/backtracesymsfd.c sysdeps/i386/configure.in
Diffstat (limited to 'sysdeps/generic/ifunc-sel.h')
-rw-r--r-- | sysdeps/generic/ifunc-sel.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/sysdeps/generic/ifunc-sel.h b/sysdeps/generic/ifunc-sel.h new file mode 100644 index 0000000000..6a27b69c5b --- /dev/null +++ b/sysdeps/generic/ifunc-sel.h @@ -0,0 +1,26 @@ +/* Used by the elf ifunc tests. */ +#ifndef ELF_IFUNC_SEL_H +#define ELF_IFUNC_SEL_H 1 + +extern int global; + +static inline void * +ifunc_sel (int (*f1) (void), int (*f2) (void), int (*f3) (void)) +{ + switch (global) + { + case 1: + return f1; + case -1: + return f2; + default: + return f3; + } +} + +static inline void * +ifunc_one (int (*f1) (void)) +{ + return f1; +} +#endif |