]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/unix/sysv/linux/powerpc/init-first.c
Update copyright notices with scripts/update-copyrights
[thirdparty/glibc.git] / sysdeps / unix / sysv / linux / powerpc / init-first.c
CommitLineData
93c65d43 1/* Initialization code run first thing by the ELF startup code. Linux/PowerPC.
d4697bc9 2 Copyright (C) 2007-2014 Free Software Foundation, Inc.
8c2e201b
UD
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
59ba27a6
PE
16 License along with the GNU C Library; if not, see
17 <http://www.gnu.org/licenses/>. */
8c2e201b 18
75fb247e
UD
19#ifdef SHARED
20# include <dl-vdso.h>
fb84593c
UD
21# undef __gettimeofday
22# undef __clock_gettime
23# undef __clock_getres
75fb247e 24# include <bits/libc-vdso.h>
8c2e201b 25
fb84593c
UD
26void *__vdso_gettimeofday attribute_hidden;
27void *__vdso_clock_gettime;
28void *__vdso_clock_getres;
29void *__vdso_get_tbfreq;
d5e0b9bd 30void *__vdso_getcpu;
83e7640f 31void *__vdso_time;
d400dcac
AZ
32#if defined(__PPC64__) || defined(__powerpc64__)
33void *__vdso_sigtramp_rt64;
34#else
35void *__vdso_sigtramp32;
36void *__vdso_sigtramp_rt32;
37#endif
75fb247e
UD
38
39static inline void
40_libc_vdso_platform_setup (void)
41{
fb84593c
UD
42 PREPARE_VERSION (linux2615, "LINUX_2.6.15", 123718565);
43
44 __vdso_gettimeofday = _dl_vdso_vsym ("__kernel_gettimeofday", &linux2615);
45
46 __vdso_clock_gettime = _dl_vdso_vsym ("__kernel_clock_gettime", &linux2615);
47
48 __vdso_clock_getres = _dl_vdso_vsym ("__kernel_clock_getres", &linux2615);
49
471a1672 50 __vdso_get_tbfreq = _dl_vdso_vsym ("__kernel_get_tbfreq", &linux2615);
d5e0b9bd
AB
51
52 __vdso_getcpu = _dl_vdso_vsym ("__kernel_getcpu", &linux2615);
83e7640f
AZ
53
54 __vdso_time = _dl_vdso_vsym ("__kernel_time", &linux2615);
d400dcac
AZ
55
56 /* PPC64 uses only one signal trampoline symbol, while PPC32 will use
57 two depending if SA_SIGINFO is used (__kernel_sigtramp_rt32) or not
58 (__kernel_sigtramp32). */
59#if defined(__PPC64__) || defined(__powerpc64__)
60 __vdso_sigtramp_rt64 = _dl_vdso_vsym ("__kernel_sigtramp_rt64", &linux2615);
61#else
62 __vdso_sigtramp32 = _dl_vdso_vsym ("__kernel_sigtramp32", &linux2615);
63 __vdso_sigtramp_rt32 = _dl_vdso_vsym ("__kernel_sigtramp_rt32", &linux2615);
64#endif
75fb247e
UD
65}
66
67# define VDSO_SETUP _libc_vdso_platform_setup
68#endif
69
93c65d43 70#include <csu/init-first.c>