2b391694bf 
								
							 
						 
						
							
							
								
								Use ReadFromFile instead of internal_read in non-POSIX code  
							
							... 
							
							
							
							llvm-svn: 234485 
							
						 
						
							2015-04-09 13:38:14 +00:00  
				
					
						
							
							
								 
						
							
								5df4d0471f 
								
							 
						 
						
							
							
								
								Move more POSIX-specific functions to sanitizer_posix.h  
							
							... 
							
							
							
							llvm-svn: 234482 
							
						 
						
							2015-04-09 12:54:06 +00:00  
				
					
						
							
							
								 
						
							
								864308a78d 
								
							 
						 
						
							
							
								
								Introduce CloseFile to be used instead of internal_close on non-POSIX  
							
							... 
							
							
							
							llvm-svn: 234481 
							
						 
						
							2015-04-09 12:37:05 +00:00  
				
					
						
							
							
								 
						
							
								c2c9ea5525 
								
							 
						 
						
							
							
								
								[Sanitizer RT] Get rid of internal_isatty  
							
							... 
							
							
							
							llvm-svn: 234423 
							
						 
						
							2015-04-08 17:42:57 +00:00  
				
					
						
							
							
								 
						
							
								3745303c5b 
								
							 
						 
						
							
							
								
								Move some POSIX-specific functions from sanitizer_libc.h to a new sanitizer_posix.h  
							
							... 
							
							
							
							llvm-svn: 234418 
							
						 
						
							2015-04-08 17:08:24 +00:00  
				
					
						
							
							
								 
						
							
								daa9e2d4e8 
								
							 
						 
						
							
							
								
								[Sanitizers] Make OpenFile more portable  
							
							... 
							
							
							
							llvm-svn: 234410 
							
						 
						
							2015-04-08 16:03:22 +00:00  
				
					
						
							
							
								 
						
							
								1931b62632 
								
							 
						 
						
							
							
								
								Minor follow-up fix to r234150  
							
							... 
							
							
							
							llvm-svn: 234151 
							
						 
						
							2015-04-06 12:54:06 +00:00  
				
					
						
							
							
								 
						
							
								b97bcc4981 
								
							 
						 
						
							
							
								
								[ASan] Unify handling of loaded modules between POSIX and Windows  
							
							... 
							
							
							
							Reviewed at http://reviews.llvm.org/D8805 
llvm-svn: 234150 
							
						 
						
							2015-04-06 12:49:30 +00:00  
				
					
						
							
							
								 
						
							
								ad3ec82bb1 
								
							 
						 
						
							
							
								
								[ASan/Win] Minor improvements towards enabling coverage  
							
							... 
							
							
							
							llvm-svn: 233918 
							
						 
						
							2015-04-02 14:48:08 +00:00  
				
					
						
							
							
								 
						
							
								89608af26d 
								
							 
						 
						
							
							
								
								[ASan/Win] UnmapOrDie should not fail on zero address / size  
							
							... 
							
							
							
							llvm-svn: 233707 
							
						 
						
							2015-03-31 16:39:20 +00:00  
				
					
						
							
							
								 
						
							
								141e420a81 
								
							 
						 
						
							
							
								
								[ASan] Distinguish between read, write and read-write file access modes in OpenFile.  
							
							... 
							
							
							
							This is to fix mapping coverage files into memory on OSX.
llvm-svn: 232936 
							
						 
						
							2015-03-23 10:10:46 +00:00  
				
					
						
							
							
								 
						
							
								df01bdca70 
								
							 
						 
						
							
							
								
								asan: fix windows build after commit 230978  
							
							... 
							
							
							
							llvm-svn: 230980 
							
						 
						
							2015-03-02 17:45:18 +00:00  
				
					
						
							
							
								 
						
							
								2249049db2 
								
							 
						 
						
							
							
								
								[compiler-rt] Allow suppression file to be relative to the location of the executable  
							
							... 
							
							
							
							The ASanified executable could be launched from different locations. When we
cannot find the suppression file relative to the current directory, try to
see if the specified path is relative to the location of the executable.
llvm-svn: 230723 
							
						 
						
							2015-02-27 03:12:19 +00:00  
				
					
						
							
							
								 
						
							
								b3381fad11 
								
							 
						 
						
							
							
								
								tsan: exclude DumpProcessMap on windows  
							
							... 
							
							
							
							The function uses EnumProcessModules, which requires psapi.lib,
which is not linked with tsan on windows.
llvm-svn: 229390 
							
						 
						
							2015-02-16 13:51:17 +00:00  
				
					
						
							
							
								 
						
							
								8ce4a069e4 
								
							 
						 
						
							
							
								
								[ASan/Win] NFC, just minor simplification of the code  
							
							... 
							
							
							
							llvm-svn: 228702 
							
						 
						
							2015-02-10 16:29:05 +00:00  
				
					
						
							
							
								 
						
							
								8f848ff5ed 
								
							 
						 
						
							
							
								
								[ASan] Add use_madv_dontdump flag.  
							
							... 
							
							
							
							Differential Revision: http://reviews.llvm.org/D7294 
llvm-svn: 227959 
							
						 
						
							2015-02-03 10:15:15 +00:00  
				
					
						
							
							
								 
						
							
								e5935ef0c4 
								
							 
						 
						
							
							
								
								[ASan/Win] Add some diagnostics to help investigate Mprotect failures  
							
							... 
							
							
							
							llvm-svn: 227803 
							
						 
						
							2015-02-02 15:04:23 +00:00  
				
					
						
							
							
								 
						
							
								8eb8204e3f 
								
							 
						 
						
							
							
								
								[sanitizer] Fix windows build.  
							
							... 
							
							
							
							llvm-svn: 226825 
							
						 
						
							2015-01-22 13:47:12 +00:00  
				
					
						
							
							
								 
						
							
								c6338ac943 
								
							 
						 
						
							
							
								
								[asan] use MADV_NOHUGEPAGE for shadow to reduce the actual memory usage  
							
							... 
							
							
							
							llvm-svn: 226636 
							
						 
						
							2015-01-21 02:05:31 +00:00  
				
					
						
							
							
								 
						
							
								a023e06618 
								
							 
						 
						
							
							
								
								Follow-up to r224987: fix a lint warning  
							
							... 
							
							
							
							llvm-svn: 224988 
							
						 
						
							2014-12-30 15:30:19 +00:00  
				
					
						
							
							
								 
						
							
								64fc8e4a5a 
								
							 
						 
						
							
							
								
								[ASan/Win] Sort the list of modules when we fail to reserve the shadow memory range  
							
							... 
							
							
							
							llvm-svn: 224987 
							
						 
						
							2014-12-30 14:44:12 +00:00  
				
					
						
							
							
								 
						
							
								1e8eafd6c8 
								
							 
						 
						
							
							
								
								Escape ? to silence GCC warning about trigraphs.  
							
							... 
							
							
							
							llvm-svn: 224863 
							
						 
						
							2014-12-26 18:21:34 +00:00  
				
					
						
							
							
								 
						
							
								a04b33b9de 
								
							 
						 
						
							
							
								
								[ASan/Win] Add basic support for MemoryRangeIsAvailable and DumpProcessMap to make it easier to debug startup shadow mapping failures  
							
							... 
							
							
							
							llvm-svn: 224856 
							
						 
						
							2014-12-26 14:28:32 +00:00  
				
					
						
							
							
								 
						
							
								b8373bc119 
								
							 
						 
						
							
							
								
								[ASan/Win] Suppress error messaging when Abort() is called  
							
							... 
							
							
							
							This will prevent ASan bots from hanging / timing out
llvm-svn: 224852 
							
						 
						
							2014-12-26 12:25:54 +00:00  
				
					
						
							
							
								 
						
							
								7dd94570b0 
								
							 
						 
						
							
							
								
								Fix Win build after r224353: void function returning zero.  
							
							... 
							
							
							
							llvm-svn: 224366 
							
						 
						
							2014-12-16 20:46:05 +00:00  
				
					
						
							
							
								 
						
							
								43eb7735f2 
								
							 
						 
						
							
							
								
								[asan] new flag: hard_rss_limit_mb  
							
							... 
							
							
							
							llvm-svn: 224353 
							
						 
						
							2014-12-16 19:13:01 +00:00  
				
					
						
							
							
								 
						
							
								3a41ed1574 
								
							 
						 
						
							
							
								
								[Sanitizer] Fix report_path functionality:  
							
							... 
							
							
							
							Summary:
  - Make sure mmap() is never called inside RawWrite function.
  - Wrap a bunch of standalone globals in a ReportFile object.
  - Make sure accesses to these globals are thread-safe.
  - Fix report_path functionality on Windows, where
    __sanitizer_set_report_path() would break program.
I've started this yak shaving in order to make
"CommonFlags::mmap_limit_mb" immutable. Currently we drop this flag
to zero before printing an error message.
Test Plan: regression test suite
Reviewers: kcc, glider
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D6595 
llvm-svn: 224031 
							
						 
						
							2014-12-11 18:30:25 +00:00  
				
					
						
							
							
								 
						
							
								6c54a6b5dd 
								
							 
						 
						
							
							
								
								[asan] move GetRSS from tsan to sanitizer_common  
							
							... 
							
							
							
							llvm-svn: 223730 
							
						 
						
							2014-12-09 01:22:59 +00:00  
				
					
						
							
							
								 
						
							
								ecfa592671 
								
							 
						 
						
							
							
								
								Removed r221896, it seems to break build in various ways.  
							
							... 
							
							
							
							llvm-svn: 221912 
							
						 
						
							2014-11-13 19:37:30 +00:00  
				
					
						
							
							
								 
						
							
								17072ef348 
								
							 
						 
						
							
							
								
								[ASan] Add process basename to log name and error message to simplify analysis of sanitized systems logs.  
							
							... 
							
							
							
							Reviewed at http://reviews.llvm.org/D5724 
llvm-svn: 221896 
							
						 
						
							2014-11-13 16:01:23 +00:00  
				
					
						
							
							
								 
						
							
								f89a3f8623 
								
							 
						 
						
							
							
								
								Try to fix the Windows build after r220637  
							
							... 
							
							
							
							llvm-svn: 220643 
							
						 
						
							2014-10-26 19:27:02 +00:00  
				
					
						
							
							
								 
						
							
								9c85927012 
								
							 
						 
						
							
							
								
								[Sanitizer] Make StackTrace a lightweight reference to array of PCs, and  
							
							... 
							
							
							
							introduce a BufferedStackTrace class, which owns this array.
Summary:
This change splits __sanitizer::StackTrace class into a lightweight
__sanitizer::StackTrace, which doesn't own array of PCs, and BufferedStackTrace,
which owns it. This would allow us to simplify the interface of StackDepot,
and eventually merge __sanitizer::StackTrace with __tsan::StackTrace.
Test Plan: regression test suite.
Reviewers: kcc, dvyukov
Reviewed By: dvyukov
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5985 
llvm-svn: 220635 
							
						 
						
							2014-10-26 03:35:14 +00:00  
				
					
						
							
							
								 
						
							
								1947bf9921 
								
							 
						 
						
							
							
								
								PR20721: Don't let UBSan print inaccessible memory  
							
							... 
							
							
							
							Summary:
UBSan needs to check if memory snippet it's going to print resides
in addressable memory. Similar check might be helpful in ASan with
dump_instruction_bytes option (see http://reviews.llvm.org/D5167 ).
Instead of scanning /proc/self/maps manually, delegate this check to
the OS kernel: try to write this memory in a syscall and assume that
memory is inaccessible if the syscall failed (e.g. with EFAULT).
Fixes PR20721.
Test Plan: compiler-rt test suite
Reviewers: eugenis, glider
Reviewed By: glider
Subscribers: emaste, ygribov, llvm-commits, glider, rsmith
Differential Revision: http://reviews.llvm.org/D5253 
llvm-svn: 217971 
							
						 
						
							2014-09-17 17:56:15 +00:00  
				
					
						
							
							
								 
						
							
								aa8fa60ba8 
								
							 
						 
						
							
							
								
								tsan: unbreak windows build  
							
							... 
							
							
							
							Currently it fails with:
# Testing race detector.
race_windows_amd64.syso:gotsan.cc:(.text+0x4d89): undefined reference to `__imp_SymGetModuleBase64'
race_windows_amd64.syso:gotsan.cc:(.text+0x4d90): undefined reference to `__imp_SymFunctionTableAccess64'
race_windows_amd64.syso:gotsan.cc:(.text+0x4dd8): undefined reference to `__imp_StackWalk64'
x86_64-w64-mingw32/bin/ld.exe: race_windows_amd64.syso
: bad reloc address 0x10 in section `.data'
collect2.exe: error: ld returned 1 exit status
llvm-svn: 216875 
							
						 
						
							2014-09-01 11:44:59 +00:00  
				
					
						
							
							
								 
						
							
								34e2b280da 
								
							 
						 
						
							
							
								
								[TSan] Share the code the setup code calling getrlim/setrlim with sanitizer_common  
							
							... 
							
							
							
							llvm-svn: 215481 
							
						 
						
							2014-08-12 22:31:19 +00:00  
				
					
						
							
							
								 
						
							
								19853dd28c 
								
							 
						 
						
							
							
								
								[ASan/Win] Catch NULL derefs and page faults  
							
							... 
							
							
							
							Reviewed at http://reviews.llvm.org/D4471 
llvm-svn: 212807 
							
						 
						
							2014-07-11 11:57:41 +00:00  
				
					
						
							
							
								 
						
							
								a00ff194b7 
								
							 
						 
						
							
							
								
								[asan] Add a few stubs to fix windows build.  
							
							... 
							
							
							
							llvm-svn: 209717 
							
						 
						
							2014-05-28 08:26:24 +00:00  
				
					
						
							
							
								 
						
							
								6cb47a083b 
								
							 
						 
						
							
							
								
								[sanitizer] Support sandboxing in sanitizer coverage.  
							
							... 
							
							
							
							Summary:
Sandboxed code may now pass additional arguments to
__sanitizer_sandbox_on_notify() to force all coverage data to be dumped to a
single file (the default is one file per module). The user may supply a file or
socket to write to. The latter option can be used to broker out the file writing
functionality. If -1  is passed, we pre-open a file.
llvm-svn: 209121 
							
						 
						
							2014-05-19 12:53:03 +00:00  
				
					
						
							
							
								 
						
							
								7d5c81db0a 
								
							 
						 
						
							
							
								
								[ASan/Win] Don't crash when ASAN_OPTIONS have disable_core=1  
							
							... 
							
							
							
							Reviewed at http://reviews.llvm.org/D3610 
llvm-svn: 208070 
							
						 
						
							2014-05-06 08:21:50 +00:00  
				
					
						
							
							
								 
						
							
								364b8b8fe5 
								
							 
						 
						
							
							
								
								[ASan] Print mmap errno/GetLastError in a readable and consistent way  
							
							... 
							
							
							
							Reviewed at http://llvm-reviews.chandlerc.com/D3107 
llvm-svn: 204218 
							
						 
						
							2014-03-19 08:23:00 +00:00  
				
					
						
							
							
								 
						
							
								3e8467b8b9 
								
							 
						 
						
							
							
								
								Avoid doing any work when unwinding stack traces with 0 or 1 frame  
							
							... 
							
							
							
							llvm-svn: 202837 
							
						 
						
							2014-03-04 12:21:28 +00:00  
				
					
						
							
							
								 
						
							
								e5a447d947 
								
							 
						 
						
							
							
								
								[asan] Fix Windows build.  
							
							... 
							
							
							
							llvm-svn: 201154 
							
						 
						
							2014-02-11 13:57:17 +00:00  
				
					
						
							
							
								 
						
							
								aeefb6abce 
								
							 
						 
						
							
							
								
								[ASan/Win] Fall back to stdout if we can't print the reports to stderr  
							
							... 
							
							
							
							llvm-svn: 200804 
							
						 
						
							2014-02-04 23:28:30 +00:00  
				
					
						
							
							
								 
						
							
								a538aac8ce 
								
							 
						 
						
							
							
								
								tsan: fix windows build  
							
							... 
							
							
							
							llvm-svn: 200778 
							
						 
						
							2014-02-04 17:27:29 +00:00  
				
					
						
							
							
								 
						
							
								ea4a0dbb8d 
								
							 
						 
						
							
							
								
								[ASan] Implement __sanitizer::InstallDeadlySignalHandlers() and __asan::AsanOnSIGSEGV() on Windows.  
							
							... 
							
							
							
							llvm-svn: 200554 
							
						 
						
							2014-01-31 15:11:11 +00:00  
				
					
						
							
							
								 
						
							
								789e3e1b7c 
								
							 
						 
						
							
							
								
								[ASan] Move the SIGSEGV/SIGBUS handling to sanitizer_common  
							
							... 
							
							
							
							This change is a part of refactoring intended to have common signal handling behavior in all tools.
This particular CL moves InstallSignalHandlers() into sanitizer_common (making it InstallDeadlySignalHandlers()), but doesn't enable default signal handlers for any tool other than ASan.
llvm-svn: 200542 
							
						 
						
							2014-01-31 13:10:07 +00:00  
				
					
						
							
							
								 
						
							
								d8d490ed50 
								
							 
						 
						
							
							
								
								[ASan] Move the sigaltstack() bits to sanitizer_common.  
							
							... 
							
							
							
							This change is a part of refactoring intended to have common signal handling behavior in all tools.
Note that this particular change doesn't enable use_sigaltstack support in every tool.
llvm-svn: 200310 
							
						 
						
							2014-01-28 11:12:29 +00:00  
				
					
						
							
							
								 
						
							
								57bfdb080b 
								
							 
						 
						
							
							
								
								[asan] add flag uar_noreserve to use noreserve mmap for fake stack. uar_noreserve=1 will save some memory but also negatively affect performance  
							
							... 
							
							
							
							llvm-svn: 197233 
							
						 
						
							2013-12-13 15:03:49 +00:00  
				
					
						
							
							
								 
						
							
								89a346c2a1 
								
							 
						 
						
							
							
								
								[ASan] Fix StackTrace::SlowUnwindStack on Windows  
							
							... 
							
							
							
							llvm-svn: 196894 
							
						 
						
							2013-12-10 08:30:39 +00:00  
				
					
						
							
							
								 
						
							
								895392d03f 
								
							 
						 
						
							
							
								
								[ASan] Use ExitProcess rather than _exit on Windows to avoid calling global dtors etc  
							
							... 
							
							
							
							llvm-svn: 195723 
							
						 
						
							2013-11-26 09:40:39 +00:00  
				
					
						
							
							
								 
						
							
								e87f5701bb 
								
							 
						 
						
							
							
								
								Remove a FIXME now that I can't reproduce the problem  
							
							... 
							
							
							
							llvm-svn: 194331 
							
						 
						
							2013-11-09 15:01:23 +00:00  
				
					
						
							
							
								 
						
							
								1f1c7ec400 
								
							 
						 
						
							
							
								
								[Sanitizers] Share some stack walking code between Windows and Linux  
							
							... 
							
							
							
							Reviewed at http://llvm-reviews.chandlerc.com/D2126 
llvm-svn: 194326 
							
						 
						
							2013-11-09 13:59:12 +00:00  
				
					
						
							
							
								 
						
							
								5d350b2ab6 
								
							 
						 
						
							
							
								
								[Sanitizer] Presumable fix stack trace unwinding on Windows  
							
							... 
							
							
							
							llvm-svn: 194195 
							
						 
						
							2013-11-07 06:53:41 +00:00  
				
					
						
							
							
								 
						
							
								e13f775a63 
								
							 
						 
						
							
							
								
								[Sanitizer] Call Windows unwinder 'slow' and share StackTrace::Unwind across all platforms. No functionality change.  
							
							... 
							
							
							
							llvm-svn: 194193 
							
						 
						
							2013-11-07 06:33:06 +00:00  
				
					
						
							
							
								 
						
							
								7f5823844a 
								
							 
						 
						
							
							
								
								[Sanitizer] Remove StackTrace::max_depth field  
							
							... 
							
							
							
							llvm-svn: 192534 
							
						 
						
							2013-10-12 12:40:47 +00:00  
				
					
						
							
							
								 
						
							
								c129e65661 
								
							 
						 
						
							
							
								
								[Sanitizer] Turn GetStackTrace() into StackTrace::Unwind()  
							
							... 
							
							
							
							llvm-svn: 192533 
							
						 
						
							2013-10-12 12:23:00 +00:00  
				
					
						
							
							
								 
						
							
								7a36e6126b 
								
							 
						 
						
							
							
								
								[Sanitizer] Refactor symbolization interface: use class instead of several functions. Move some code around to get rid of extra source files  
							
							... 
							
							
							
							llvm-svn: 190410 
							
						 
						
							2013-09-10 14:36:16 +00:00  
				
					
						
							
							
								 
						
							
								d483c072af 
								
							 
						 
						
							
							
								
								sanitizers: Make sure Visual Studio gets error reports  
							
							... 
							
							
							
							Visual Studio appears to close stderr before launching a non-console
win32 program.  This means we don't see any sanitizer reports.  If
stderr printing fails, call OutputDebugStringA to get the reports into
the Visual Studio debugger console.
llvm-svn: 190030 
							
						 
						
							2013-09-05 03:19:57 +00:00  
				
					
						
							
							
								 
						
							
								2eea5894fe 
								
							 
						 
						
							
							
								
								[asan] Hopefully un-break the RTL on Windows  
							
							... 
							
							
							
							llvm-svn: 189821 
							
						 
						
							2013-09-03 15:50:13 +00:00  
				
					
						
							
							
								 
						
							
								de647ddc8b 
								
							 
						 
						
							
							
								
								[Sanitizer] Add the way to find binary in PATH  
							
							... 
							
							
							
							llvm-svn: 189799 
							
						 
						
							2013-09-03 13:20:48 +00:00  
				
					
						
							
							
								 
						
							
								4245f78fdd 
								
							 
						 
						
							
							
								
								[ASan] Use less shadow on Win 32-bit  
							
							... 
							
							
							
							llvm-svn: 186393 
							
						 
						
							2013-07-16 09:47:39 +00:00  
				
					
						
							
							
								 
						
							
								7e4a18c4fb 
								
							 
						 
						
							
							
								
								tsan: fix merge bug  
							
							... 
							
							
							
							llvm-svn: 183648 
							
						 
						
							2013-06-10 11:11:29 +00:00  
				
					
						
							
							
								 
						
							
								b278f1235f 
								
							 
						 
						
							
							
								
								tsan: fix windows crash (incorrect stack boundaries)  
							
							... 
							
							
							
							llvm-svn: 183646 
							
						 
						
							2013-06-10 10:30:54 +00:00  
				
					
						
							
							
								 
						
							
								e979c5467c 
								
							 
						 
						
							
							
								
								tsan: fix windows mingw build  
							
							... 
							
							
							
							llvm-svn: 183644 
							
						 
						
							2013-06-10 10:02:02 +00:00  
				
					
						
							
							
								 
						
							
								ffaf2eac4d 
								
							 
						 
						
							
							
								
								[nolibc] Move all platforms to internal_getpid.  
							
							... 
							
							
							
							Before, we had an unused internal_getpid function for Linux, and a
platform-independent GetPid function.  To make the naming conventions
consistent for syscall-like functions, the GetPid syscall wrapper
in sanitizer_posix.cc is moved to sanitizer_mac.cc, and GetPid is
renamed to internal_getpid, bringing the Linux variant into use.
llvm-svn: 182132 
							
						 
						
							2013-05-17 16:56:53 +00:00  
				
					
						
							
							
								 
						
							
								53caf563a9 
								
							 
						 
						
							
							
								
								Try to fix Windows build too  
							
							... 
							
							
							
							llvm-svn: 181457 
							
						 
						
							2013-05-08 18:15:01 +00:00  
				
					
						
							
							
								 
						
							
								6f4be19b57 
								
							 
						 
						
							
							
								
								[nolibc] Change internal syscall API to remove reliance on libc's errno.  
							
							... 
							
							
							
							This change moves to a model where the error value of a system call is
potentially contained in the return value itself rather than being
implicit in errno.  The helper function internal_iserror can be used
to extract the error value from a return value.  On platforms other
than Linux/x86_64 this still uses errno, but other platforms are free
to port their error handling to this new model.
Differential Revision: http://llvm-reviews.chandlerc.com/D756 
llvm-svn: 181436 
							
						 
						
							2013-05-08 14:43:49 +00:00  
				
					
						
							
							
								 
						
							
								af179b8d63 
								
							 
						 
						
							
							
								
								[sanitizer] Move GetStackTrace from ASan to sanitizer_common.  
							
							... 
							
							
							
							llvm-svn: 181424 
							
						 
						
							2013-05-08 12:45:55 +00:00  
				
					
						
							
							
								 
						
							
								954c6ef10f 
								
							 
						 
						
							
							
								
								[sanitizer] Move GetThreadStackAndTls from TSan to sanitizer_common.  
							
							... 
							
							
							
							Move this function to sanitizer_common because LSan uses it too. Also, fix a bug
where the TLS range reported for main thread was off by the size of the thread
descriptor from libc (TSan doesn't care much, but for LSan it's critical).
llvm-svn: 181322 
							
						 
						
							2013-05-07 14:41:43 +00:00  
				
					
						
							
							
								 
						
							
								2dee3dd61c 
								
							 
						 
						
							
							
								
								Add a GetTid() implementation for Windows  
							
							... 
							
							
							
							llvm-svn: 177927 
							
						 
						
							2013-03-25 22:04:29 +00:00  
				
					
						
							
							
								 
						
							
								0af672326a 
								
							 
						 
						
							
							
								
								[sanitizer] Replace more platform checks with SANITIZER_ constants.  
							
							... 
							
							
							
							llvm-svn: 177400 
							
						 
						
							2013-03-19 14:33:38 +00:00  
				
					
						
							
							
								 
						
							
								a097f7b1e3 
								
							 
						 
						
							
							
								
								[Sanitizer] Add default constructor for BlockingMutex  
							
							... 
							
							
							
							llvm-svn: 177072 
							
						 
						
							2013-03-14 13:30:56 +00:00  
				
					
						
							
							
								 
						
							
								7d2385419a 
								
							 
						 
						
							
							
								
								[Sanitizer] fix compilation for Windows  
							
							... 
							
							
							
							llvm-svn: 177054 
							
						 
						
							2013-03-14 11:29:06 +00:00  
				
					
						
							
							
								 
						
							
								83e7622df6 
								
							 
						 
						
							
							
								
								[Sanitizer] Write a slightly better implementation of GetEnv() function on Windows  
							
							... 
							
							
							
							llvm-svn: 177051 
							
						 
						
							2013-03-14 11:10:23 +00:00  
				
					
						
							
							
								 
						
							
								5697b58ec4 
								
							 
						 
						
							
							
								
								[sanitizer] Move GetTlsSize code from TSan to sanitizer_common.  
							
							... 
							
							
							
							llvm-svn: 176938 
							
						 
						
							2013-03-13 08:19:53 +00:00  
				
					
						
							
							
								 
						
							
								db7d9656bb 
								
							 
						 
						
							
							
								
								[Sanitizer] Implement BlockingMutex::CheckLocked()  
							
							... 
							
							
							
							llvm-svn: 176805 
							
						 
						
							2013-03-11 15:45:20 +00:00  
				
					
						
							
							
								 
						
							
								aadd1f2ad6 
								
							 
						 
						
							
							
								
								[Sanitizer] use raw syscall instead of _exit() function on Linux  
							
							... 
							
							
							
							llvm-svn: 175622 
							
						 
						
							2013-02-20 13:54:32 +00:00  
				
					
						
							
							
								 
						
							
								9211bd33ec 
								
							 
						 
						
							
							
								
								[Sanitizer] Make temporary filename depend on user ID  
							
							... 
							
							
							
							llvm-svn: 175424 
							
						 
						
							2013-02-18 07:17:12 +00:00  
				
					
						
							
							
								 
						
							
								167f9e4395 
								
							 
						 
						
							
							
								
								[ASan] Switch Windows to allocator v2, also fixing some build errors  
							
							... 
							
							
							
							llvm-svn: 174707 
							
						 
						
							2013-02-08 12:02:00 +00:00  
				
					
						
							
							
								 
						
							
								fa67ed47e1 
								
							 
						 
						
							
							
								
								asan/tsan: fix failing CHECK on windows  
							
							... 
							
							
							
							llvm-svn: 174319 
							
						 
						
							2013-02-04 10:42:38 +00:00  
				
					
						
							
							
								 
						
							
								2c5cbd2b38 
								
							 
						 
						
							
							
								
								[Sanitizer] extend internal libc with stat/fstat/lstat functions  
							
							... 
							
							
							
							llvm-svn: 174316 
							
						 
						
							2013-02-04 10:16:50 +00:00  
				
					
						
							
							
								 
						
							
								7981ea8baa 
								
							 
						 
						
							
							
								
								asan/tsan: fix compilation errors/bugs on Windows where long is 32-bit even in 64-bit mode  
							
							... 
							
							
							
							llvm-svn: 174312 
							
						 
						
							2013-02-04 08:07:45 +00:00  
				
					
						
							
							
								 
						
							
								4985b8766e 
								
							 
						 
						
							
							
								
								[Sanitizer] use u32 instead of mode_t, which is defined in Darwin headers  
							
							... 
							
							
							
							llvm-svn: 174189 
							
						 
						
							2013-02-01 16:32:18 +00:00  
				
					
						
							
							
								 
						
							
								39313b780d 
								
							 
						 
						
							
							
								
								[Sanitizer] make internal_open have the same interface as libc version  
							
							... 
							
							
							
							llvm-svn: 174187 
							
						 
						
							2013-02-01 15:58:46 +00:00  
				
					
						
							
							
								 
						
							
								ff19809a3d 
								
							 
						 
						
							
							
								
								asan: fix windows build  
							
							... 
							
							
							
							llvm-svn: 172415 
							
						 
						
							2013-01-14 14:28:06 +00:00  
				
					
						
							
							
								 
						
							
								f22982bf0a 
								
							 
						 
						
							
							
								
								asan/tsan: move blocking mutex from asan to sanitizer_common  
							
							... 
							
							
							
							llvm-svn: 172380 
							
						 
						
							2013-01-14 07:51:39 +00:00  
				
					
						
							
							
								 
						
							
								35ed02ebf1 
								
							 
						 
						
							
							
								
								[Sanitizer] add missing header on Windows  
							
							... 
							
							
							
							llvm-svn: 170514 
							
						 
						
							2012-12-19 08:51:39 +00:00  
				
					
						
							
							
								 
						
							
								b6219c060b 
								
							 
						 
						
							
							
								
								[Sanitizer] implement internal_isatty on Windows  
							
							... 
							
							
							
							llvm-svn: 170507 
							
						 
						
							2012-12-19 07:57:42 +00:00  
				
					
						
							
							
								 
						
							
								a167087571 
								
							 
						 
						
							
							
								
								[asan] fix windows build  
							
							... 
							
							
							
							llvm-svn: 170101 
							
						 
						
							2012-12-13 05:51:02 +00:00  
				
					
						
							
							
								 
						
							
								9806628792 
								
							 
						 
						
							
							
								
								[sanitizer] introduce MmapFixedOrDie and use it in SizeClassAllocator64  
							
							... 
							
							
							
							llvm-svn: 170099 
							
						 
						
							2012-12-13 05:36:00 +00:00  
				
					
						
							
							
								 
						
							
								1746f555ee 
								
							 
						 
						
							
							
								
								Add a libsanitizer API __sanitizer_sandbox_on_notify(void* reserved), which should be used by  
							
							... 
							
							
							
							the client programs to notify the tools that sandboxing is about to be turned on.
llvm-svn: 169732 
							
						 
						
							2012-12-10 13:10:40 +00:00  
				
					
						
							
							
								 
						
							
								f22c697f58 
								
							 
						 
						
							
							
								
								[asan] get rid of some of the uses of kPageSize. The intent is to get rid of it completely to support platforms with multiple possible page sizes.  
							
							... 
							
							
							
							llvm-svn: 168517 
							
						 
						
							2012-11-23 15:38:49 +00:00  
				
					
						
							
							
								 
						
							
								ae9b18b607 
								
							 
						 
						
							
							
								
								[Sanitizer] add sanity checks for communication with external symbolizer  
							
							... 
							
							
							
							llvm-svn: 167617 
							
						 
						
							2012-11-09 14:45:30 +00:00  
				
					
						
							
							
								 
						
							
								c463f3077e 
								
							 
						 
						
							
							
								
								[Sanitizer] try to fix Windows bot - include stdlib.h for abort/_exit functions  
							
							... 
							
							
							
							llvm-svn: 167577 
							
						 
						
							2012-11-08 13:08:41 +00:00  
				
					
						
							
							
								 
						
							
								0ff6d2dd6c 
								
							 
						 
						
							
							
								
								tsan: windows: less includes, better diagnostics for failed VirtualAlloc(), implement sched_yield()  
							
							... 
							
							
							
							llvm-svn: 167452 
							
						 
						
							2012-11-06 13:19:59 +00:00  
				
					
						
							
							
								 
						
							
								58358897a3 
								
							 
						 
						
							
							
								
								[Sanitizer] Add internal_isatty to sanitizer_libc and PrintsToTty to determine whether error reports are printed to terminal  
							
							... 
							
							
							
							llvm-svn: 167298 
							
						 
						
							2012-11-02 15:18:34 +00:00  
				
					
						
							
							
								 
						
							
								20ba98fdb1 
								
							 
						 
						
							
							
								
								[Sanitizer] Use kStderrFd constant instead of hardcoded 2  
							
							... 
							
							
							
							llvm-svn: 167291 
							
						 
						
							2012-11-02 09:38:47 +00:00  
				
					
						
							
							
								 
						
							
								83ecabe6e6 
								
							 
						 
						
							
							
								
								[Sanitizer] Remove unneeded returns after UNIMPLEMENTED macro  
							
							... 
							
							
							
							llvm-svn: 165493 
							
						 
						
							2012-10-09 08:51:08 +00:00  
				
					
						
							
							
								 
						
							
								97ca306641 
								
							 
						 
						
							
							
								
								[Sanitizer] Hoist functions to get/set stack size and re-exec from memory-sanitizer branch to sanitizer_common  
							
							... 
							
							
							
							llvm-svn: 164020 
							
						 
						
							2012-09-17 09:12:39 +00:00  
				
					
						
							
							
								 
						
							
								f6d2125829 
								
							 
						 
						
							
							
								
								[Sanitizer] implement readlink as syscall on Linux  
							
							... 
							
							
							
							llvm-svn: 163213 
							
						 
						
							2012-09-05 14:48:24 +00:00  
				
					
						
							
							
								 
						
							
								28d8be2d86 
								
							 
						 
						
							
							
								
								[Sanitizer] One more try to fix Windows build  
							
							... 
							
							
							
							llvm-svn: 162674 
							
						 
						
							2012-08-27 14:08:53 +00:00  
				
					
						
							
							
								 
						
							
								ef7758f561 
								
							 
						 
						
							
							
								
								[Sanitizer] move OS-dependent pieces of symbolizer to separate source files  
							
							... 
							
							
							
							llvm-svn: 161862 
							
						 
						
							2012-08-14 13:00:32 +00:00  
				
					
						
							
							
								 
						
							
								961276af26 
								
							 
						 
						
							
							
								
								[Sanitizer] Extend a symbolizer code. Implemented for Linux only. Use dl_iterate_phdr to get virtual addresses of mapped module sections. To symbolize an address from a module, map this module to memory and obtain pointers to debug info sections. Later these pointers can be passed to constructor of DWARF context-in-memory from LLVM DebugInfo lib.  
							
							... 
							
							
							
							llvm-svn: 159652 
							
						 
						
							2012-07-03 08:24:14 +00:00  
				
					
						
							
							
								 
						
							
								3c5c9e7774 
								
							 
						 
						
							
							
								
								tsan/asan: third try on msvc atomics  
							
							... 
							
							
							
							llvm-svn: 159449 
							
						 
						
							2012-06-29 18:37:45 +00:00  
				
					
						
							
							
								 
						
							
								e8cee12ce2 
								
							 
						 
						
							
							
								
								tsan/asan: first try on msvc atomics  
							
							... 
							
							
							
							llvm-svn: 159443 
							
						 
						
							2012-06-29 18:00:38 +00:00  
				
					
						
							
							
								 
						
							
								d32d537d63 
								
							 
						 
						
							
							
								
								[asan] get rid of libc's sscanf as it causes infinite recursion on Fedora.  
							
							... 
							
							
							
							llvm-svn: 159424 
							
						 
						
							2012-06-29 13:05:36 +00:00  
				
					
						
							
							
								 
						
							
								98390d0b71 
								
							 
						 
						
							
							
								
								[tsan] a bit more lint and Makefile changes to run tests from sanitizer_common  
							
							... 
							
							
							
							llvm-svn: 158821 
							
						 
						
							2012-06-20 15:19:17 +00:00  
				
					
						
							
							
								 
						
							
								58a3c58ec9 
								
							 
						 
						
							
							
								
								[Sanitizer] move different wrappers from TSan to common sanitizer runtime  
							
							... 
							
							
							
							llvm-svn: 158655 
							
						 
						
							2012-06-18 08:44:30 +00:00  
				
					
						
							
							
								 
						
							
								40e5128412 
								
							 
						 
						
							
							
								
								[Sanitizer] move ShadowRangeIsAvailable and several defines to common runtime  
							
							... 
							
							
							
							llvm-svn: 158499 
							
						 
						
							2012-06-15 07:29:14 +00:00  
				
					
						
							
							
								 
						
							
								e4a889866d 
								
							 
						 
						
							
							
								
								[Sanitizer] move atomic ops, min/max and sort to commnon runtime  
							
							... 
							
							
							
							llvm-svn: 158496 
							
						 
						
							2012-06-15 07:00:31 +00:00  
				
					
						
							
							
								 
						
							
								70afb91636 
								
							 
						 
						
							
							
								
								[Sanitizer] move more portability wrappers to common runtime: sleep, _exit, abort, atexit, pthread_self  
							
							... 
							
							
							
							llvm-svn: 158493 
							
						 
						
							2012-06-15 06:37:34 +00:00  
				
					
						
							
							
								 
						
							
								ae1e171b72 
								
							 
						 
						
							
							
								
								[Sanitizer] move DumpProcessMap and DisableCoreDumper to common runtime  
							
							... 
							
							
							
							llvm-svn: 158490 
							
						 
						
							2012-06-15 06:08:19 +00:00  
				
					
						
							
							
								 
						
							
								c70d1086f6 
								
							 
						 
						
							
							
								
								[Sanitizer] move rest of mmap routines to common sanitizer runtime  
							
							... 
							
							
							
							llvm-svn: 158452 
							
						 
						
							2012-06-14 14:42:58 +00:00  
				
					
						
							
							
								 
						
							
								0c53a38abb 
								
							 
						 
						
							
							
								
								[Sanitizer] move portable GetEnv to common sanitizer runtime  
							
							... 
							
							
							
							llvm-svn: 158451 
							
						 
						
							2012-06-14 14:07:21 +00:00  
				
					
						
							
							
								 
						
							
								cf4d3a027d 
								
							 
						 
						
							
							
								
								[Sanitizer] Fix mac build.  
							
							... 
							
							
							
							llvm-svn: 158141 
							
						 
						
							2012-06-07 07:32:00 +00:00  
				
					
						
							
							
								 
						
							
								4b1f1031e6 
								
							 
						 
						
							
							
								
								[Sanitizer] factor out GetThreadStackTopAndBottom from ASan runtime to common.  
							
							... 
							
							
							
							llvm-svn: 158140 
							
						 
						
							2012-06-07 07:13:46 +00:00  
				
					
						
							
							
								 
						
							
								40d5b772e5 
								
							 
						 
						
							
							
								
								[Sanitizer] Switch to common mmap/munmap routines in ASan run-time.  
							
							... 
							
							
							
							llvm-svn: 158078 
							
						 
						
							2012-06-06 16:15:07 +00:00  
				
					
						
							
							
								 
						
							
								e95e29c2ac 
								
							 
						 
						
							
							
								
								[Sanitizer] Make UNIMPLEMENTED macro common.  
							
							... 
							
							
							
							llvm-svn: 158077 
							
						 
						
							2012-06-06 15:47:40 +00:00  
				
					
						
							
							
								 
						
							
								201aa367fc 
								
							 
						 
						
							
							
								
								[ASan] fix win build - add missing header  
							
							... 
							
							
							
							llvm-svn: 158057 
							
						 
						
							2012-06-06 09:43:32 +00:00  
				
					
						
							
							
								 
						
							
								ee07290628 
								
							 
						 
						
							
							
								
								[Sanitizer] Move more functions/constants to sanitizer_common.  
							
							... 
							
							
							
							llvm-svn: 158056 
							
						 
						
							2012-06-06 09:26:25 +00:00  
				
					
						
							
							
								 
						
							
								ca2b5d7abb 
								
							 
						 
						
							
							
								
								[Sanitizer] move internal_filesize and internal_dup2 from TSan to sanitizer_common.  
							
							... 
							
							
							
							llvm-svn: 158052 
							
						 
						
							2012-06-06 07:30:33 +00:00  
				
					
						
							
							
								 
						
							
								5bbf8290a7 
								
							 
						 
						
							
							
								
								[Sanitizer] rename sanitizer_defs.h to sanitizer_internal_defs.h  
							
							... 
							
							
							
							llvm-svn: 158001 
							
						 
						
							2012-06-05 14:25:27 +00:00  
				
					
						
							
							
								 
						
							
								7ac77d6b29 
								
							 
						 
						
							
							
								
								[Sanitizer] add sanitizer_posix.cc. Move more various functions into sanitizer_libc: sscanf, munmap, memchr  
							
							... 
							
							
							
							llvm-svn: 157994 
							
						 
						
							2012-06-05 09:49:25 +00:00  
				
					
						
							
							
								 
						
							
								03c8b846c4 
								
							 
						 
						
							
							
								
								[Sanitizer] add internal_{close,read,write} functions to sanitizer_libc  
							
							... 
							
							
							
							llvm-svn: 157990 
							
						 
						
							2012-06-05 08:32:53 +00:00  
				
					
						
							
							
								 
						
							
								298dd7c361 
								
							 
						 
						
							
							
								
								[TSan] use __sanitizer::internal_open in TSan run-time  
							
							... 
							
							
							
							llvm-svn: 157988 
							
						 
						
							2012-06-05 07:46:31 +00:00  
				
					
						
							
							
								 
						
							
								dde1f11fe6 
								
							 
						 
						
							
							
								
								[Sanitizer] Add sanitizer_win.cc for windows-specific implementations of libc functions. Add internal_open.  
							
							... 
							
							
							
							llvm-svn: 157985 
							
						 
						
							2012-06-05 07:05:10 +00:00