elfver.S revision 2d70e263c2b508bf4641273dd89a23149f6f6164
1# Compile with: 2# ARGS="-shared -nostdlib -Wl,--version-script=elfver.script" 3# clang $ARGS -m32 elfver.S -lc -o elf-versioning-test.i386 4# clang $ARGS -m64 elfver.S -lc -o elf-versioning-test.x86_64 5 6# Also, strip off non-dynamic symbols: 7# strip elf-versioning-test.i386 8# strip elf-versioning-test.x86_64 9 10#ifdef __i386__ 11.symver _puts, puts@GLIBC_2.0 12#else 13.symver _puts, puts@GLIBC_2.2.5 14#endif 15call _puts@PLT 16 17.symver foo1, foo@VER1 18.globl foo1 19.type foo1, @function 20foo1: 21 ret 22 23.symver foo2, foo@@VER2 24.globl foo2 25.type foo2, @function 26foo2: 27 ret 28 29.globl unversioned_define 30.type unversioned_define, @function 31unversioned_define: 32