1 /* DSO used by tst-gnu2-tls1.
2    Copyright (C) 2016-2022 Free Software Foundation, Inc.
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
16    License along with the GNU C Library; if not, see
17    <https://www.gnu.org/licenses/>.  */
18 
19 static __thread int ld;
20 
21 int *
get_ld(void)22 get_ld (void)
23 {
24   return &ld;
25 }
26 
27 void
set_ld(int i)28 set_ld (int i)
29 {
30   ld = i;
31 }
32 
33 int
test_ld(int i)34 test_ld (int i)
35 {
36   return ld == i;
37 }
38 extern __thread int gd;
39 
40 int *
get_gd(void)41 get_gd (void)
42 {
43   return &gd;
44 }
45 
46 void
set_gd(int i)47 set_gd (int i)
48 {
49   gd = i;
50 }
51 
52 int
test_gd(int i)53 test_gd (int i)
54 {
55   return gd == i;
56 }
57