1*3cab2bb3Spatrick //===-- asan_globals_test.cpp ---------------------------------------------===//
2*3cab2bb3Spatrick //
3*3cab2bb3Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*3cab2bb3Spatrick // See https://llvm.org/LICENSE.txt for license information.
5*3cab2bb3Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*3cab2bb3Spatrick //
7*3cab2bb3Spatrick //===----------------------------------------------------------------------===//
8*3cab2bb3Spatrick //
9*3cab2bb3Spatrick // This file is a part of AddressSanitizer, an address sanity checker.
10*3cab2bb3Spatrick //
11*3cab2bb3Spatrick // Some globals in a separate file.
12*3cab2bb3Spatrick //===----------------------------------------------------------------------===//
13*3cab2bb3Spatrick #include "asan_test_utils.h"
14*3cab2bb3Spatrick 
15*3cab2bb3Spatrick char glob1[1];
16*3cab2bb3Spatrick char glob2[2];
17*3cab2bb3Spatrick char glob3[3];
18*3cab2bb3Spatrick char glob4[4];
19*3cab2bb3Spatrick char glob5[5];
20*3cab2bb3Spatrick char glob6[6];
21*3cab2bb3Spatrick char glob7[7];
22*3cab2bb3Spatrick char glob8[8];
23*3cab2bb3Spatrick char glob9[9];
24*3cab2bb3Spatrick char glob10[10];
25*3cab2bb3Spatrick char glob11[11];
26*3cab2bb3Spatrick char glob12[12];
27*3cab2bb3Spatrick char glob13[13];
28*3cab2bb3Spatrick char glob14[14];
29*3cab2bb3Spatrick char glob15[15];
30*3cab2bb3Spatrick char glob16[16];
31*3cab2bb3Spatrick char glob17[17];
32*3cab2bb3Spatrick char glob1000[1000];
33*3cab2bb3Spatrick char glob10000[10000];
34*3cab2bb3Spatrick char glob100000[100000];
35*3cab2bb3Spatrick 
36*3cab2bb3Spatrick static char static10[10];
37*3cab2bb3Spatrick 
GlobalsTest(int zero)38*3cab2bb3Spatrick int GlobalsTest(int zero) {
39*3cab2bb3Spatrick   static char func_static15[15];
40*3cab2bb3Spatrick   glob5[zero] = 0;
41*3cab2bb3Spatrick   static10[zero] = 0;
42*3cab2bb3Spatrick   func_static15[zero] = 0;
43*3cab2bb3Spatrick   return glob5[1] + func_static15[2];
44*3cab2bb3Spatrick }
45