1b0ddf227b25388ad836e560c00f0aec84026b0e5Alexey Samsonov//===-- asan_globals_test.cc ----------------------------------------------===// 21e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// 31e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// The LLVM Compiler Infrastructure 41e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// 51e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// This file is distributed under the University of Illinois Open Source 61e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// License. See LICENSE.TXT for details. 71e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// 81e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany//===----------------------------------------------------------------------===// 91e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// 101e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// This file is a part of AddressSanitizer, an address sanity checker. 111e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// 121e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany// Some globals in a separate file. 131e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany//===----------------------------------------------------------------------===// 14a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryany#include "asan_test_utils.h" 15a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryany 16a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob1[1]; 17a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob2[2]; 18a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob3[3]; 19a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob4[4]; 20a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob5[5]; 21a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob6[6]; 22a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob7[7]; 23a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob8[8]; 24a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob9[9]; 25a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob10[10]; 26a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob11[11]; 27a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob12[12]; 28a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob13[13]; 29a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob14[14]; 30a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob15[15]; 31a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob16[16]; 32a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660Kostya Serebryanychar glob17[17]; 33af5bd2ee59a9f7bea74f43fccc6ea48979b7a4b0Kostya Serebryanychar glob1000[1000]; 34af5bd2ee59a9f7bea74f43fccc6ea48979b7a4b0Kostya Serebryanychar glob10000[10000]; 35af5bd2ee59a9f7bea74f43fccc6ea48979b7a4b0Kostya Serebryanychar glob100000[100000]; 361e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany 371e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryanystatic char static10[10]; 381e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany 391e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryanyint GlobalsTest(int zero) { 401e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany static char func_static15[15]; 411e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany glob5[zero] = 0; 421e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany static10[zero] = 0; 431e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany func_static15[zero] = 0; 441e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany return glob5[1] + func_static15[2]; 451e172b4bdec57329bf904f063a29f99cddf2d85fKostya Serebryany} 46