Daily bump.
[official-gcc.git] / libsanitizer / ChangeLog
blob145cc687ce1c0dc765ee05a1962311af6bb17337
1 2020-07-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3         * sanitizer_common/sanitizer_linux.cpp: Cherry-pick llvm-project
4         revision f0e9b76c3500496f8f3ea7abe6f4bf801e3b41e7.
6 2020-06-09  Martin Liska  <mliska@suse.cz>
8         * asan/Makefile.am: Replace gnu++11 with gnu++14.
9         * interception/Makefile.am: Likewise.
10         * libbacktrace/Makefile.am: Likewise.
11         * lsan/Makefile.am: Likewise.
12         * sanitizer_common/Makefile.am: Likewise.
13         * tsan/Makefile.am: Likewise.
14         * ubsan/Makefile.am: Likewise.
15         * asan/Makefile.in: Regenerate.
16         * interception/Makefile.in: Likewise.
17         * libbacktrace/Makefile.in: Likewise.
18         * lsan/Makefile.in: Likewise.
19         * sanitizer_common/Makefile.in: Likewise.
20         * tsan/Makefile.in: Likewise.
21         * ubsan/Makefile.in: Likewise.
23 2020-06-02  Martin Liska  <mliska@suse.cz>
25         * LOCAL_PATCHES: Update hash of local patches.
27 2020-06-02  Martin Liska  <mliska@suse.cz>
29         * MERGE: Merge from master.
31 2020-05-29  H.J. Lu  <hjl.tools@gmail.com>
33         PR bootstrap/95413
34         * configure: Regenerated.
36 2020-05-29  Martin Liska  <mliska@suse.cz>
38         * HOWTO_MERGE: Do not mention not existing argument.
39         * README.gcc: Update LLVM repository location.
41 2020-05-26  Martin Liska  <mliska@suse.cz>
43         * LOCAL_PATCHES: Use git hash instead of SVN id.
44         * merge.sh: Use git instead of VCS.  Update paths
45         relative to upstream git repository.
47 2020-05-15  H.J. Lu  <hongjiu.lu@intel.com>
49         PR bootstrap/95147
50         * configure: Regenerated.
52 2020-05-14  H.J. Lu  <hongjiu.lu@intel.com>
54         * configure: Regenerated.
56 2020-05-01  Andreas Tobler  <andreast@gcc.gnu.org>
58         * configure.tgt: Add x86_64- and i?86-*-freebsd* targets.
60 2020-05-01  Andreas Tobler  <andreast@gcc.gnu.org>
62         * sanitizer_common/Makefile.am: Add
63         sanitizer_platform_limits_freebsd.cpp.
64         * sanitizer_common/Makefile.in: Regenerate.
66 2020-03-01  Iain Sandoe  <iain@sandoe.co.uk>
68         PR sanitizer/93731
69         * configure.tgt (x86_64-*-darwin*, i?86-*-darwin*): Enable by
70         default only for Darwin versions greater than 12 (macOS 10.8).
72 2020-01-24  Maciej W. Rozycki  <macro@wdc.com>
74         * configure.ac: Handle `--with-toolexeclibdir='.
75         * Makefile.in: Regenerate.
76         * aclocal.m4: Regenerate.
77         * configure: Regenerate.
78         * asan/Makefile.in: Regenerate.
79         * interception/Makefile.in: Regenerate.
80         * libbacktrace/Makefile.in: Regenerate.
81         * lsan/Makefile.in: Regenerate.
82         * sanitizer_common/Makefile.in: Regenerate.
83         * tsan/Makefile.in: Regenerate.
84         * ubsan/Makefile.in: Regenerate.
86 2019-11-26  Jakub Jelinek  <jakub@redhat.com>
88         PR sanitizer/92154
89         * sanitizer_common/sanitizer_platform_limits_posix.h: Cherry-pick
90         llvm-project revision 947f9692440836dcb8d88b74b69dd379d85974ce.
91         * sanitizer_common/sanitizer_platform_limits_posix.cpp: Likewise.
93 2019-11-20  Martin Liska  <mliska@suse.cz>
95         * libtool-version: Remove.
96         * lsan/libtool-version: Upate comment to not mention libmudflap.
97         * tsan/libtool-version: Likewise.
98         * ubsan/libtool-version: Likewise.
100 2019-11-13  Andreas Schwab  <schwab@suse.de>
102         * configure.tgt (riscv64-*-linux*): Enable build.
104 2019-11-07  Martin Liska  <mliska@suse.cz>
106         * all source files: Reapply all revisions mentioned in LOCAL_PATCHES.
108 2019-11-07  Martin Liska  <mliska@suse.cz>
110         * merge.sh: Update to use llvm-project git repository.
111         * all source files: Merge from upstream
112         82588e05cc32bb30807e480abd4e689b0dee132a.
114 2019-11-05  Martin Liska  <mliska@suse.cz>
116         * ubsan/ubsan_flags.cpp (InitializeFlags): Trunk decided to print
117         summary for all sanitizers, but we want to have UBSAN without it.
119 2019-11-05  Martin Liska  <mliska@suse.cz>
121         * asan/asan_globals.cpp (CheckODRViolationViaIndicator): Reapply from
122         LOCAL_PATCHES.
123         (CheckODRViolationViaPoisoning): Likewise.
124         (RegisterGlobal): Likewise.
125         * asan/asan_interceptors.h (ASAN_INTERCEPT___CXA_RETHROW_PRIMARY_EXCEPTION): Likewise.
126         (defined): Likewise.
127         * asan/asan_mapping.h: Likewise.
128         * sanitizer_common/sanitizer_linux_libcdep.cpp (defined): Likewise.
129         * sanitizer_common/sanitizer_mac.cpp (defined): Likewise.
130         * sanitizer_common/sanitizer_platform_limits_linux.cpp (defined): Likewise.
131         * sanitizer_common/sanitizer_platform_limits_posix.h: Likewise.
132         * sanitizer_common/sanitizer_stacktrace.cpp (GetCanonicFrame): Likewise.
133         * tsan/tsan_rtl_ppc64.S: Likewise.
134         * ubsan/ubsan_handlers.cpp (__ubsan::__ubsan_handle_cfi_bad_icall): Likewise.
135         (__ubsan::__ubsan_handle_cfi_bad_icall_abort): Likewise.
136         * ubsan/ubsan_handlers.h (struct CFIBadIcallData): Likewise.
137         (struct CFICheckFailData): Likewise.
138         (RECOVERABLE): Likewise.
139         * ubsan/ubsan_platform.h: Likewise.
141 2019-11-05  Martin Liska  <mliska@suse.cz>
143         * tsan/Makefile.am: Rename tsan_interceptors.cpp to
144         tsan_interceptors_posix.
145         * tsan/Makefile.in: Regenerate.
147 2019-11-05  Martin Liska  <mliska@suse.cz>
149         * all source files: Merge from upstream r375507.
151 2019-10-22  Tamar Christina  <tamar.christina@arm.com>
153         PR sanitizer/92154
154         * sanitizer_common/sanitizer_platform_limits_posix.cpp:
155         Cherry-pick compiler-rt revision r375220.
157 2019-09-27  Maciej W. Rozycki  <macro@wdc.com>
159         * configure: Regenerate.
161 2019-09-10  Christophe Lyon  <christophe.lyon@st.com>
162         Mickaël Guêné <mickael.guene@st.com>
164         * configure.tgt (arm*-*-*fdpiceabi): Sanitizers are
165         unsupported in this configuration.
167 2019-08-16  Iain Sandoe  <iain@sandoe.co.uk>
169         * LOCAL_PATCHES: Add r274585.
171 2019-08-16  Iain Sandoe  <iain@sandoe.co.uk>
173         * asan/asan_interceptors.h: Reapply r272406.
175 2019-08-15  Martin Liska  <mliska@suse.cz>
177         * LOCAL_PATCHES: Add r274540
179 2019-08-15  Martin Liska  <mliska@suse.cz>
181         * tsan/tsan_rtl_ppc64.S: Reapply.
183 2019-08-15  Iain Sandoe  <iain@sandoe.co.uk>
185         PR bootstrap/91455
186         * Makefile.in: Regenerated.
187         * aclocal.m4: Likewise.
188         * asan/Makefile.in: Likewise.
189         * configure: Likewise.
190         * interception/Makefile.in: Likewise.
191         * libbacktrace/Makefile.in: Likewise.
192         * lsan/Makefile.in: Likewise.
193         * sanitizer_common/Makefile.am: Include top_srcdir unconditionally.
194         * sanitizer_common/Makefile.in: Regenerated.
195         * tsan/Makefile.in: Likewise.
196         * ubsan/Makefile.in: Likewise.
198 2019-08-14  Martin Liska  <mliska@suse.cz>
200         * LOCAL_PATCHES: Refresh based on what was committed.
202 2019-08-14  Martin Liska  <mliska@suse.cz>
204         * asan/asan_globals.cpp (CheckODRViolationViaIndicator): Reapply
205         patch from trunk.
206         (CheckODRViolationViaPoisoning): Likewise.
207         (RegisterGlobal): Likewise.
208         * asan/asan_mapping.h: Likewise.
209         * sanitizer_common/sanitizer_linux_libcdep.cpp (defined): Likewise.
210         * sanitizer_common/sanitizer_mac.cpp (defined): Likewise.
211         * sanitizer_common/sanitizer_platform_limits_linux.cpp (defined): Likewise.
212         * sanitizer_common/sanitizer_platform_limits_posix.h (defined): Likewise.
213         * sanitizer_common/sanitizer_stacktrace.cpp (GetCanonicFrame): Likewise.
214         * ubsan/ubsan_handlers.cpp (__ubsan::__ubsan_handle_cfi_bad_icall): Likewise.
215         (__ubsan::__ubsan_handle_cfi_bad_icall_abort): Likewise.
216         * ubsan/ubsan_handlers.h (struct CFIBadIcallData): Likewise.
217         (struct CFICheckFailData): Likewise.
218         (RECOVERABLE): Likewise.
219         * ubsan/ubsan_platform.h: Likewise.
221 2019-08-14  Martin Liska  <mliska@suse.cz>
223         PR sanitizer/89832
224         PR sanitizer/91325
225         * All source files: Merge from upstream 368656.
227 2019-06-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
229         * sanitizer_common/sanitizer_posix_libcdep.cc: Cherry-pick
230         compiler-rt revision 363778.
232 2019-06-18  Iain Sandoe  <iain@sandoe.co.uk>
234         PR libsanitizer/87880
235         * asan/asan_interceptors.h:
236         (ASAN_INTERCEPT___CXA_RETHROW_PRIMARY_EXCEPTION): New.
237         * asan/Makefile.am (DEFS): Add 
238         ASAN_HAS_CXA_RETHROW_PRIMARY_EXCEPTION, defined to 0.
239         * asan/Makefile.in: Regenerated.
240         * asan/libtool-version: Bump version.
242 2019-05-27  Segher Boessenkool  <segher@kernel.crashing.org>
244         PR target/90639
245         * tsan/tsan_rtl_ppc64.S: Add ".machine altivec".
247 2019-05-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
249         * configure.ac (have_dl_iterate_phdr): Remove *-*-solaris2.10*
250         handling.
251         * configure: Regenerate.
253 2019-04-08  Martin Liska  <mliska@suse.cz>
255         * LOCAL_PATCHES: Add revision.
257 2019-04-08  Martin Liska  <mliska@suse.cz>
259         PR sanitizer/89941
260         * sanitizer_common/sanitizer_platform_limits_linux.cc (defined):
261         Reapply patch from r259664.
262         * sanitizer_common/sanitizer_platform_limits_posix.h (defined):
263         Likewise.
265 2019-03-13  Eric Botcazou  <ebotcazou@adacore.com>
267         PR sanitizer/80953
268         Merge from LLVM revision 355980
269         * asan/asan_allocator.h (kAllocatorSpace): Define for SPARC.
270         (kAllocatorSize): Likewise.
271         (DefaultSizeClassMap): Likewise.
272         * asan/asan_mapping.h (kSPARC64_ShadowOffset64): Define.
273         (SHADOW_OFFSET): Define for SPARC.
274         Include asan_mapping_sparc64.h for SPARC 64-bit.
275         * asan/asan_mapping_sparc64.h: New file.
277 2019-03-13  Eric Botcazou  <ebotcazou@adacore.com>
279         PR sanitizer/80953
280         Merge from LLVM revision 355979
281         * asan/asan_globals.c (GetGlobalsForAddress): Use internal_memcpy to
282         copy Global objects for SPARC with GCC.
284 2019-03-13  Eric Botcazou  <ebotcazou@adacore.com>
286         PR sanitizer/80953
287         Merge from LLVM revision 355978
288         * sanitizer_common/sanitizer_allocator_primary32.h
289         (class SizeClassAllocator32): Assert that kSpaceSize is power of 2 if
290         SANITIZER_SIGN_EXTENDED_ADDRESSES is set.
291         (PointerIsMine): Deal with SANITIZER_SIGN_EXTENDED_ADDRESSES.
292         (ComputeRegionId): Likewise.
293         * sanitizer_common/sanitizer_linux.cc (GetMaxVirtualAddress): Return
294         appropriate value for SPARC 64-bit.
295         * sanitizer_common/sanitizer_platform.h (SANITIZER_MMAP_RANGE_SIZE):
296         Define for SPARC.
297         (SANITIZER_SIGN_EXTENDED_ADDRESSES): Define to 1 for SPARC 64-bit.
299 2019-03-13  Eric Botcazou  <ebotcazou@adacore.com>
301         PR sanitizer/80953
302         Merge from LLVM revision 355965
303         * sanitizer_common/sanitizer_linux.cc (GetWriteFlag): Implement for
304         SPARC/Linux.
305         (GetPcSpBp): Likewise.
306         * sanitizer_common/sanitizer_stacktrace.cc (GetNextInstructionPc):
307         Adjust for SPARC.
308         * sanitizer_common/sanitizer_stacktrace.h (SANITIZER_CAN_FAST_UNWIND):
309         Define to 1 for SPARC.
310         * sanitizer_common/sanitizer_stacktrace_sparc.cc: Rewrite.
311         * sanitizer_common/sanitizer_unwind_linux_libcdep.cc (SlowUnwindStack):
312         Adjust the PC address for SPARC with GCC.
314 2019-03-06  Martin Liska  <mliska@suse.cz>
316         PR sanitizer/88684
317         * sanitizer_common/sanitizer_platform.h (defined): Cherry pick.
318         (SANITIZER_NON_UNIQUE_TYPEINFO): Likewise.
319         * ubsan/ubsan_type_hash_itanium.cc (isDerivedFromAtOffset):
320         Likewise.
322 2019-02-20  H.J. Lu  <hongjiu.lu@intel.com>
324         PR sanitizer/89409
325         * sanitizer_common/sanitizer_linux.cc (internal_readlink):
326         Cherry-pick compiler-rt r354451.
328 2019-01-23  Jonny Grant  <jg@jguk.org>
330         PR sanitizer/89010
331         * libsanitizer/README.gcc: Update to current https URLs.
333 2018-12-27  Martin Liska  <mliska@suse.cz>
335         PR sanitizer/86229
336         * asan/asan_errors.cc (ErrorAllocTypeMismatch::Print): Cherry
337         pick rL350085.
338         * asan/asan_errors.h (struct ErrorAllocTypeMismatch): Likewise.
340 2018-11-09  Martin Liska  <mliska@suse.cz>
342         * LOCAL_PATCHES: Include one local patch.
344 2018-11-09  Martin Liska  <mliska@suse.cz>
346         PR sanitizer/87892
347         * sanitizer_common/sanitizer_linux_libcdep.cc (defined): Return
348         1 when CPU_COUNT macro is not defined.
350 2018-11-08  Bill Seurer  <seurer@linux.vnet.ibm.com>
352         * libsanitizer/sanitizer_common/sanitizer_linux.cc (CheckASLR):
353         Disable ASLR for powerpc64 when using sanitizers.
355 2018-11-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
357         PR sanitizer/80953
358         * configure.tgt (sparc*-*-solaris2.11*): Enable.
359         (x86_64-*-solaris2.11* | i?86-*-solaris2.11*): Enable.
361 2018-11-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
363         PR sanitizer/80953
364         * sanitizer_common/sanitizer_internal_defs.h,
365         sanitizer_common/sanitizer_platform_limits_solaris.h,
366         sanitizer_common/sanitizer_procmaps_solaris.cc,
367         sanitizer_common/sanitizer_solaris.cc: Cherry-pick compiler-rt
368         revision 346153.
369         * sanitizer_common/sanitizer_stacktrace.h,
370         sanitizer_common/sanitizer_stacktrace_sparc.cc: Cherry-pick
371         compiler-rt revision 346155.
373 2018-11-05  Segher Boessenkool  <segher@kernel.crashing.org>
375         * LOCAL_PATCHES: Add r258525.
376         * sanitizer_common/sanitizer_stacktrace.cc
377         (BufferedStackTrace::FastUnwindStack): Use the correct frame offset
378         for PowerPC SYSV ABI.
380 2018-11-05  Martin Liska  <mliska@suse.cz>
382         PR sanitizer/87860
383         * sanitizer_common/sanitizer_linux.cc:  Cherry-pick upstream
384         r346129.
386 2018-10-31  Joseph Myers  <joseph@codesourcery.com>
388         PR bootstrap/82856
389         * Makefile.am: Include multilib.am.
390         * configure.ac: Remove AC_PREREQ.  Use AC_LANG_SOURCE.
391         * Makefile.in, aclocal.m4, asan/Makefile.in, configure,
392         interception/Makefile.in, libbacktrace/Makefile.in,
393         lsan/Makefile.in, sanitizer_common/Makefile.in, tsan/Makefile.in,
394         ubsan/Makefile.in: Regenerate.
396 2018-10-31  Martin Liska  <mliska@suse.cz>
398         * LOCAL_PATCHES: Update to installed revisions.
400 2018-10-31  Martin Liska  <mliska@suse.cz>
402         * ubsan/ubsan_platform.h: Add ifndef as we define it with
403         -DCAN_SANITIZE_UB CFLAGS.
405 2018-10-31  Martin Liska  <mliska@suse.cz>
407         * asan/asan_mapping.h: Revert shadow memory offset to 1 << 41.
409 2018-10-31  Martin Liska  <mliska@suse.cz>
411         * LOCAL_PATCHES: Update patch list.
412         * asan/asan_globals.cc (CheckODRViolationViaIndicator): Apply
413         patches from GCC's trunk.
414         (CheckODRViolationViaPoisoning): Likewise.
415         (RegisterGlobal): Likewise.
416         * sanitizer_common/sanitizer_mac.cc (defined): Likewise.
417         * sanitizer_common/sanitizer_stacktrace.cc (GetCanonicFrame): Likewise.
418         * ubsan/ubsan_handlers.cc (__ubsan::__ubsan_handle_cfi_bad_icall): Likewise.
419         (__ubsan::__ubsan_handle_cfi_bad_icall_abort): Likewise.
420         * ubsan/ubsan_handlers.h (struct CFIBadIcallData): Likewise.
421         (struct CFICheckFailData): Likewise.
422         (RECOVERABLE): Likewise.
424 2018-10-31  Martin Liska  <mliska@suse.cz>
426         * config.h.in: Regenerate.
427         * configure: Likewise.
428         * sanitizer_common/Makefile.am: Include new files, remove old
429         files.
430         * sanitizer_common/Makefile.in: Regenerate.
431         * ubsan/Makefile.am: Include new files, remove old
432         files.
433         * ubsan/Makefile.in: Likewise.
434         * asan/Makefile.am: Include new files.
435         * asan/Makefile.in: Regenerate.
437 2018-10-31  Martin Liska  <mliska@suse.cz>
439         * All source files: Merge from upstream 345033.
441 2018-10-31  Martin Liska  <mliska@suse.cz>
443         * HOWTO_MERGE: Enhance documentation.
444         * merge.sh: Add support for git as well.
446 2018-08-02  Martin Liska  <mliska@suse.cz>
448         PR sanitizer/86022
449         * sanitizer_common/sanitizer_linux_libcdep.cc (ThreadDescriptorSize):
450         Cherry-pick compiler-rt revision 338606.
452 2018-08-01  Marek Polacek  <polacek@redhat.com>
454         PR sanitizer/86759
455         * tsan/tsan_platform.h: Cherry-pick compiler-rt revision 318044.
456         * tsan/tsan_platform_linux.cc: Cherry-pick compiler-rt revision
457         319180.
459 2018-07-25  H.J. Lu  <hongjiu.lu@intel.com>
461         PR target/86560
462         * asan/asan_interceptors.cc (swapcontext) Cherry-pick
463         compiler-rt revision 337603.
464         * sanitizer_common/sanitizer_internal_defs.h (__has_attribute):
465         Likewise.
467 2018-07-05  Jakub Jelinek  <jakub@redhat.com>
469         Revert
470         2018-07-04  Maxim Ostapenko  <m.ostapenko@samsung.com>
472         PR sanitizer/84250
473         * Makefile.am: Reorder libs.
474         * Makefile.in: Regenerate.
475         * asan/Makefile.am: Define DCAN_SANITIZE_UB=1, add dependancy from
476         libsanitizer_ubsan.la.
477         * asan/Makefile.in: Regenerate.
478         * ubsan/Makefile.am: Define new libsanitizer_ubsan.la library.
479         * ubsan/Makefile.in: Regenerate.
481 2018-07-04  Maxim Ostapenko  <m.ostapenko@samsung.com>
483         PR sanitizer/84250
484         * Makefile.am: Reorder libs.
485         * Makefile.in: Regenerate.
486         * asan/Makefile.am: Define DCAN_SANITIZE_UB=1, add dependancy from
487         libsanitizer_ubsan.la.
488         * asan/Makefile.in: Regenerate.
489         * ubsan/Makefile.am: Define new libsanitizer_ubsan.la library.
490         * ubsan/Makefile.in: Regenerate.
492 2018-06-13  Denis Khalikov  <d.khalikov@partner.samsung.com>
494         PR sanitizer/86090
495         * configure.ac: Check for lstat and readlink.
496         * configure, config.h.in: Rebuild.
498 2018-05-31  Matthias Klose  <doko@ubuntu.com>
500         PR sanitizer/86012
501         * sanitizer_common/sanitizer_platform_limits_posix.cc: Define
502         SIZEOF_STRUCT_USTAT for 32bit sparc.
504 2018-05-24  H.J. Lu  <hongjiu.lu@intel.com>
506         PR sanitizer/85835
507         * sanitizer_common/sanitizer_platform_limits_posix.cc: Don't
508         include <sys/ustat.h> for Linux.
509         (SIZEOF_STRUCT_USTAT): New.
510         (struct_ustat_sz): Use SIZEOF_STRUCT_USTAT for Linux.
512 2018-04-26  Hans-Peter Nilsson  <hp@axis.com>
514         * configure.tgt <mips*-*-linux*>: Enable build, excluding
515         mips*64*-*-linux*.
517         * sanitizer_common/sanitizer_platform_limits_linux.cc: Do not
518         take the shortcut to #include <sys/stat.h> for MIPS instead of
519         the kernel <asm/stat.h>.  Explain why sys/stat.h is misleading
520         or wrong to get the kernel struct stat.
521         * sanitizer_common/sanitizer_platform_limits_posix.h [__mips__]:
522         Correct the value for 32-bit non-android struct_kernel_stat_sz.
524         * sanitizer_common/sanitizer_atomic_clang_other.h [_MIPS_SIM
525         && _MIPS_SIM == _ABIO32] (lock): Add initializer for .pad member.
527 2018-04-24  H.J. Lu  <hongjiu.lu@intel.com>
529         * configure: Regenerated.
531 2018-04-19  Jakub Jelinek  <jakub@redhat.com>
533         * configure: Regenerated.
535 2018-04-18  David Malcolm  <dmalcolm@redhat.com>
537         PR jit/85384
538         * configure: Regenerate.
540 2018-04-18  Bill Seurer  <seurer@linux.vnet.ibm.com>
542         PR sanitizer/85389
543         * asan/asan_allocator.h (kAllocatorSpace): For __powerpc64__ change
544         from 0xa0000000000ULL to ~(uptr)0.
546 2018-03-19  Jakub Jelinek  <jakub@redhat.com>
548         PR sanitizer/84761
549         * sanitizer_common/sanitizer_linux_libcdep.cc (__GLIBC_PREREQ):
550         Define if not defined.
551         (DL_INTERNAL_FUNCTION): Don't define.
552         (InitTlsSize): For __i386__ if not compiled against glibc 2.27+
553         determine at runtime whether to use regparm(3), stdcall calling
554         convention for older glibcs or normal calling convention for
555         newer glibcs for call to _dl_get_tls_static_info.
557 2018-03-14  Segher Boessenkool  <segher@kernel.crashing.org>
559         * sanitizer_common/sanitizer_stacktrace.cc
560         (BufferedStackTrace::FastUnwindStack): Use the correct frame offset
561         for PowerPC SYSV ABI.
563 2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
565         PR target/84148
566         * configure: Regenerate.
568 2018-02-05  Martin Liska  <mliska@suse.cz>
570         * asan/asan_flags.inc: Cherry-pick upstream r323995.
571         * asan/asan_report.cc (CheckForInvalidPointerPair):
572         Cherry-pick upstream r323995.
574 2018-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
576         PR sanitizer/82825
577         * sanitizer_common/sanitizer_internal_defs.h: Cherry-pick upstream
578         r324284.
580 2018-01-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
582         PR sanitizer/82824
583         * lsan/lsan_common_mac.cc: Cherry-pick upstream r322437.
585 2017-12-05  Martin Liska  <mliska@suse.cz>
586             Jakub Jelinek  <jakub@redhat.com>
588         * asan/asan_descriptions.cc: Cherry-pick upstream r319668.
589         * asan/asan_descriptions.h: Likewise.
590         * asan/asan_report.cc: Likewise.
591         * asan/asan_thread.cc: Likewise.
592         * asan/asan_thread.h: Likewise.
594 2017-11-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
596         * acinclude.m4: Add enable.m4 and cet.m4.
597         * Makefile.in: Regenerate.
598         * asan/Makefile.am: Update AM_CXXFLAGS.
599         * asan/Makefile.in: Regenerate.
600         * configure: Likewise.
601         * configure.ac: Set CET_FLAGS. Update EXTRA_CFLAGS,
602         EXTRA_CXXFLAGS, EXTRA_ASFLAGS.
603         * interception/Makefile.am: Update AM_CXXFLAGS.
604         * interception/Makefile.in: Regenerate.
605         * libbacktrace/Makefile.am: Update AM_CFLAGS, AM_CXXFLAGS.
606         * libbacktrace/Makefile.in: Regenerate.
607         * lsan/Makefile.am: Update AM_CXXFLAGS.
608         * lsan/Makefile.in: Regenerate.
609         * sanitizer_common/Makefile.am: Update AM_CXXFLAGS,
610         AM_CCASFLAGS.
611         * sanitizer_common/sanitizer_linux_x86_64.S: Include cet.h.
612         Add _CET_ENDBR macro.
613         * sanitizer_common/Makefile.in: Regenerate.
614         * tsan/Makefile.am: Update AM_CXXFLAGS.
615         * tsan/Makefile.in: Regenerate.
616         * tsan/tsan_rtl_amd64.S Include cet.h. Add _CET_ENDBR macro.
617         * ubsan/Makefile.am: Update AM_CXXFLAGS.
618         * ubsan/Makefile.in: Regenerate.
620 2017-11-08  Jakub Jelinek  <jakub@redhat.com>
622         PR bootstrap/82670
623         * ubsan/Makefile.am (ubsan_files): Remove ubsan_init_standalone.cc
624         and ubsan_signals_standalone.cc.
625         * ubsan/Makefile.in: Regenerated.
627 2017-11-05  Tom de Vries  <tom@codesourcery.com>
629         PR other/82784
630         * asan/asan_poisoning.cc (CHECK_SMALL_REGION): Remove semicolon after
631         "do {} while (0)".
632         * lsan/lsan_common.cc (LOG_POINTERS, LOG_THREADS): Same.
634 2017-10-20  Jakub Jelinek  <jakub@redhat.com>
636         PR sanitizer/82595
637         * lsan/lsan.h (__lsan_init): Add SANITIZER_INTERFACE_ATTRIBUTE.
638         * lsan/Makefile.am (nodist_toolexeclib_HEADERS): Add
639         liblsan_preinit.o.
640         (lsan_files): Remove lsan_preinit.cc.
641         (liblsan_preinit.o): New rule.
642         * lsan/Makefile.in: Regenerated.
644 2017-10-19  Jakub Jelinek  <jakub@redhat.com>
646         * All source files: Merge from upstream 315899.
647         * asan/Makefile.am (nodist_saninclude_HEADERS): Add
648         include/sanitizer/tsan_interface.h.
649         * asan/libtool-version: Bump the libasan SONAME.
650         * lsan/Makefile.am (sanitizer_lsan_files): Add lsan_common_mac.cc.
651         (lsan_files): Add lsan_linux.cc, lsan_mac.cc and lsan_malloc_mac.cc.
652         * sanitizer_common/Makefile.am (sanitizer_common_files): Add
653         sancov_flags.cc, sanitizer_allocator_checks.cc,
654         sanitizer_coverage_libcdep_new.cc, sanitizer_errno.cc,
655         sanitizer_file.cc, sanitizer_mac_libcdep.cc and
656         sanitizer_stoptheworld_mac.cc.  Remove sanitizer_coverage_libcdep.cc
657         and sanitizer_coverage_mapping_libcdep.cc.
658         * tsan/Makefile.am (tsan_files): Add tsan_external.cc.
659         * ubsan/Makefile.am (DEFS): Add -DUBSAN_CAN_USE_CXXABI=1.
660         (ubsan_files): Add ubsan_init_standalone.cc and
661         ubsan_signals_standalone.cc.
662         * ubsan/libtool-version: Bump the libubsan SONAME.
663         * asan/Makefile.in: Regenerate.
664         * lsan/Makefile.in: Regenerate.
665         * sanitizer_common/Makefile.in: Regenerate.
666         * tsan/Makefile.in: Regenerate.
667         * ubsan/Makefile.in: Regenerate.
669 2017-10-05  H.J. Lu  <hongjiu.lu@intel.com>
671         PR sanitizer/82379
672         * configure.tgt (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): Set
673         to sanitizer_linux_x86_64.lo if __x86_64__ is defined by $CC.
675 2017-10-02  Jakub Jelinek  <jakub@redhat.com>
677         * libbacktrace/backtrace-rename.h (backtrace_uncompress_zdebug):
678         Define.
680 2017-08-07  Jakub Jelinek  <jakub@redhat.com>
682         * include/system/sys/ptrace.h: New file.
684 2017-07-28  Jakub Jelinek  <jakub@redhat.com>
686         PR sanitizer/80998
687         * ubsan/ubsan_handlers.cc: Cherry-pick upstream r304461.
688         * ubsan/ubsan_checks.inc: Likewise.
689         * ubsan/ubsan_handlers.h: Likewise.
691 2017-07-14  Jakub Jelinek  <jakub@redhat.com>
693         PR sanitizer/81066
694         * sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969.
695         * sanitizer_common/sanitizer_linux.cc: Likewise.
696         * sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise.
697         * tsan/tsan_platform_linux.cc: Likewise.
699 2017-04-06  Martin Liska  <mliska@suse.cz>
701         PR sanitizer/80166
702         * sanitizer_common/sanitizer_common_interceptors.inc (INTERCEPTOR):
703         Cherry-pick upstream r299036.
705 2017-03-22  Jakub Jelinek  <jakub@redhat.com>
707         PR sanitizer/78158
708         * tsan/tsan_interface_atomic.cc: Cherry-pick upstream r298378.
710 2017-02-16  Andreas Tobler  <andreast@gcc.gnu.org>
712         PR sanitizer/79562
713         * sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry-pick
714         upstream r294806.
716 2017-02-11  Jakub Jelinek  <jakub@redhat.com>
718         PR sanitizer/79341
719         * configure.tgt (s390*-*-linux*): Don't disable libsanitizer on
720         s390-linux 31-bit.
721         * sanitizer_common/sanitizer_internal_defs.h: Cherry-pick upstream
722         r294793.
723         * sanitizer_common/sanitizer_common_interceptors.inc: Cherry-pick
724         upstream r294790.
725         * sanitizer_common/sanitizer_linux_s390.cc: Cherry-pick upstream
726         r294799.
728 2017-02-03  Maxim Ostapenko  <m.ostapenko@samsung.com>
730         PR sanitizer/78663
731         * sanitizer_common/sanitizer_mac.cc: Cherry-pick upstream r293992.
732         * sanitizer_common/sanitizer_platform_interceptors.h: Likewise.
734 2017-01-31  Jakub Jelinek  <jakub@redhat.com>
736         * configure.tgt: Enable asan and ubsan on 64-bit s390*-*-linux*.
738 2017-01-24  Jakub Jelinek  <jakub@redhat.com>
740         * configure.tgt: Enable tsan and lsan on powerpc64{,le}-*-linux*.
742         PR sanitizer/79168
743         * merge.sh (change_comment_headers): Don't remove 2nd and 3rd line
744         if the 3rd line doesn't contain 'The LLVM Compiler Infrastructure'
745         text.
746         * sanitizer_common/sanitizer_linux_mips64.S: Regenerated.
747         * sanitizer_common/sanitizer_linux_x86_64.S: Likewise.
748         * tsan/tsan_ppc_regs.h: Likewise.
749         * tsan/tsan_rtl_aarch64.S: Likewise.
750         * tsan/tsan_rtl_mips64.S: Likewise.
751         * tsan/tsan_rtl_ppc64.S: Likewise.
753 2017-01-21  Jakub Jelinek  <jakub@redhat.com>
755         PR other/79046
756         * interception/Makefile.am (gcc_version): Use @get_gcc_base_ver@
757         instead of cat to get version from BASE-VER file.
758         * asan/Makefile.am (gcc_version): Likewise.
759         * ubsan/Makefile.am (gcc_version): Likewise.
760         * sanitizer_common/Makefile.am (gcc_version): Likewise.
761         * lsan/Makefile.am (gcc_version): Likewise.
762         * tsan/Makefile.am (gcc_version): Likewise.
763         * interception/Makefile.in: Regenerated.
764         * asan/Makefile.in: Regenerated.
765         * ubsan/Makefile.in: Regenerated.
766         * sanitizer_common/Makefile.in: Regenerated.
767         * lsan/Makefile.in: Regenerated.
768         * tsan/Makefile.in: Regenerated.
770 2017-01-17  Jakub Jelinek  <jakub@redhat.com>
772         PR other/79046
773         * configure.ac: Add GCC_BASE_VER.
774         * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
775         get version from BASE-VER file.
776         * libbacktrace/Makefile.in: Regenerated.
777         * interception/Makefile.in: Regenerated.
778         * asan/Makefile.in: Regenerated.
779         * ubsan/Makefile.in: Regenerated.
780         * configure: Regenerated.
781         * sanitizer_common/Makefile.in: Regenerated.
782         * lsan/Makefile.in: Regenerated.
783         * Makefile.in: Regenerated.
784         * tsan/Makefile.in: Regenerated.
786 2017-01-10  James Clarke  <jrtc27@jrtc27.com>
788         PR sanitizer/78992
789         * sanitizer_common/sanitizer_platform_limits_posix.h
790         (struct __sanitizer_sigaction): Cherry-pick upstream r291561.
792 2016-11-30  Maxim Ostapenko  <m.ostapenko@samsung.com>
794         * LOCAL_PATCHES: Add revision.
796 2016-11-30  Maxim Ostapenko  <m.ostapenko@samsung.com>
798         PR sanitizer/78532
799         * sanitizer_common/sanitizer_platform_limits_posix.h
800         (__sanitizer_sigaction): Adjust for sparc targets and various Glibc
801         versions.
803 2016-11-29  Markus Trippelsdorf  <markus@trippelsdorf.de>
805         * LOCAL_PATCHES: Remove r242480.
807 2016-11-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
809         * LOCAL_PATCHES: Add revision.
811 2016-11-20  Jack Howarth  <howarth.at.gcc@gmail.com>
813         PR sanitizer/78267
814         * sanitizer_common/sanitizer_mac.cc: Include <os/trace.h> only if
815         compiler supports blocks extension.
817 2016-11-16  Markus Trippelsdorf  <markus@trippelsdorf.de>
819         * LOCAL_PATCHES: Add revision.
821 2016-11-16  Markus Trippelsdorf  <markus@trippelsdorf.de>
823         PR sanitizer/78294
824         * tsan/tsan_rtl.cc: Add missing attribute.
826 2016-11-16  Maxim Ostapenko  <m.ostapenko@samsung.com>
828         * LOCAL_PATCHES: New file.
830 2016-11-16  Maxim Ostapenko  <m.ostapenko@samsung.com>
832         PR sanitizer/78307
833         * ubsan/ubsan_handlers.cc (__ubsan_handle_cfi_bad_icall): New function.
834         ( __ubsan_handle_cfi_bad_icall_abort): Likewise. 
835         * ubsan/ubsan_handlers.h (struct CFIBadIcallData): New type.
836         * ubsan/ubsan_handlers_cxx.cc (__ubsan_handle_cfi_bad_type): New
837         function.
838         (__ubsan_handle_cfi_bad_type_abort): Likewise.
839         * ubsan/ubsan_handlers_cxx.h (struct CFIBadTypeData): New type.
840         (__ubsan_handle_cfi_bad_type): Export function.
841         (__ubsan_handle_cfi_bad_type_abort): Likewise.
842         * HOWTO_MERGE: Update documentation.
844 2016-11-15  Matthias Klose  <doko@ubuntu.com>
846         * configure: Regenerate.
848 2016-11-09  Maxim Ostapenko  <m.ostapenko@samsung.com>
850         * asan/asan_globals.cc (RegisterGlobal): Do not call
851         CheckODRViolationViaPoisoning.
852         (CheckODRViolationViaPoisoning): Remove.
854 2016-11-09  Maxim Ostapenko  <m.ostapenko@samsung.com>
856         * sanitizer_common/sanitizer_stacktrace.cc (GetCanonicFrame): Assume we
857         compiled code with GCC when extracting the caller PC for ARM if no
858         valid frame pointer is available.
860 2016-11-09  Maxim Ostapenko  <m.ostapenko@samsung.com>
862         PR sanitizer/63958
863         Reapply:
864         2014-10-14  David S. Miller  <davem@davemloft.net>
866         * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t):
867         Define at __kernel_time_t, as needed for sparc.
868         (struct __old_kernel_stat): Don't check if __sparc__ is defined.
869         * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
870         (__sanitizer): Define struct___old_kernel_stat_sz,
871         struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc.
872         (__sanitizer_ipc_perm): Adjust for sparc targets.
873         (__sanitizer_shmid_ds): Likewsie.
874         (__sanitizer_sigaction): Likewise.
875         (IOC_SIZE): Likewsie.
877 2016-11-09  Maxim Ostapenko  <m.ostapenko@samsung.com>
879         * All source files: Merge from upstream 285547.
880         * configure.tgt (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): New
881         variable.
882         * configure.ac (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): Handle it.
883         * asan/Makefile.am (asan_files): Add new files.
884         * asan/Makefile.in: Regenerate.
885         * ubsan/Makefile.in: Likewise.
886         * lsan/Makefile.in: Likewise.
887         * tsan/Makefile.am (tsan_files): Add new files.
888         * tsan/Makefile.in: Regenerate.
889         * sanitizer_common/Makefile.am (sanitizer_common_files): Add new files.
890         (EXTRA_libsanitizer_common_la_SOURCES): Define.
891         (libsanitizer_common_la_LIBADD): Likewise.
892         (libsanitizer_common_la_DEPENDENCIES): Likewise.
893         * sanitizer_common/Makefile.in: Regenerate.
894         * interception/Makefile.in: Likewise.
895         * libbacktace/Makefile.in: Likewise.
896         * Makefile.in: Likewise.
897         * configure: Likewise.
898         * merge.sh: Handle builtins/assembly.h merging.
899         * builtins/assembly.h: New file.
900         * asan/libtool-version: Bump the libasan SONAME.
902 2016-09-21  Jakub Jelinek  <jakub@redhat.com>
904         PR sanitizer/77567
905         * asan/asan_new_delete.cc: Cherry-pick upstream r282019.
907 2016-09-05  Jakub Jelinek  <jakub@redhat.com>
909         PR sanitizer/77396
910         * asan/asan_globals.cc: Cherry-pick upstream r280657.
912 2016-08-12  Jakub Jelinek  <jakub@redhat.com>
914         PR sanitizer/71042
915         * tsan/tsan_platform_linux.cc: Cherry-pick upstream r278292.
916         * tsan/tsan_rtl_aarch64.S: Likewise.
918 2016-07-23  Alan Modra  <amodra@gmail.com>
920         Revert 2015-11-09  Alan Modra  <amodra@gmail.com>
921         * configure.ac: Don't substitute OBSTACK_DEFS.
922         * asan/Makefile.am: Remove OBSTACK_DEFS from DEFS.
923         * tsan/Makefile.am: Likewise.
924         * configure: Regenerate.
925         * Makefile.in: Regenerate.
926         * asan/Makefile.in: Regenerate.
927         * interception/Makefile.in: Regenerate.
928         * libbacktrace/Makefile.in: Regenerate.
929         * lsan/Makefile.in: Regenerate.
930         * sanitizer_common/Makefile.in: Regenerate.
931         * tsan/Makefile.in: Regenerate.
932         * ubsan/Makefile.in: Regenerate.
934 2016-05-17  Jakub Jelinek  <jakub@redhat.com>
936         PR sanitizer/71160
937         * asan/asan_malloc_linux.cc: Cherry pick upstream r254395
938         and r269633.
940 2016-04-21  Maxim Ostapenko  <m.ostapenko@samsung.com>
942         PR sanitizer/70624
943         * asan/asan_mac.cc: Cherry pick upstream r266868.
945 2016-01-19  Jakub Jelinek  <jakub@redhat.com>
947         PR sanitizer/68824
948         * tsan/tsan_interceptors.cc (NEED_TLS_GET_ADDR, __tls_get_addr,
949         InitializeInterceptors): Cherry pick upstream r258119.
951 2016-01-14  Andreas Tobler  <andreast@gcc.gnu.org>
953         * configure.ac: Replace the hard-coded -ldl requirement for
954         link_sanitizer_common with a configure time check for -ldl.
955         * configure: Regenerate.
957 2015-11-24  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
959         * include/system/linux/asm/ptrace.h: Move to ...
960         * include/system/asm/ptrace.h: ... this.
962 2015-11-24  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
964         * include/system/linux/asm/ptrace.h: New header.
966 2015-11-23  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
968         * All source files: Merge from upstream r253555.
969         * configure.tgt: Enable LSan on aarch64-*-linux* targets. Add new
970         dependences for TSan for aarch64-*-linux* targets.
971         * tsan/Makefile.am: Add new source files.
972         * configure: Regenerate.
973         * tsan/Makefile.in: Likewise.
975 2015-11-09  Alan Modra  <amodra@gmail.com>
977         * sanitizer_common/sanitizer_common_interceptors.inc: Update size
978         params for _obstack_begin_1, _obstack_begin, _obstack_newchunk
979         interceptors.
980         * configure.ac: Substitute OBSTACK_DEFS.
981         * asan/Makefile.am: Add OBSTACK_DEFS to DEFS.
982         * tsan/Makefile.am: Likewise.
983         * configure: Regenerate.
984         * Makefile.in: Regenerate.
985         * asan/Makefile.in: Regenerate.
986         * interception/Makefile.in: Regenerate.
987         * libbacktrace/Makefile.in: Regenerate.
988         * lsan/Makefile.in: Regenerate.
989         * sanitizer_common/Makefile.in: Regenerate.
990         * tsan/Makefile.in: Regenerate.
991         * ubsan/Makefile.in: Regenerate.
993 2015-10-22  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
995         PR bootstrap/68041
996         * configure.ac (link_sanitizer_common): Link against librt only if it
997         contains shm_open, required by sanitizers.
998         (CXX_ABI_NEEDED): Remove variable.
999         * configure: Regenerate.
1000         * ubsan/Makefile.am (libubsan_la_LIBADD): Do not add -lc++abi anymore.
1001         * ubsan/Makefile.in: Regenerate.
1003 2015-10-21  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
1005         * HOWTO_MERGE: New file.
1007 2015-10-21  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
1009         * sanitizer_common/sanitizer_stacktrace.cc (GetCanonicFrame): Assume we
1010         compiled code with GCC when extracting the caller PC for ARM if no
1011         valid frame pointer is available.
1013 2015-10-21  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
1015         PR bootstrap/63888
1016         Reapply:
1017         2015-02-20  Jakub Jelinek  <jakub@redhat.com>
1019         * asan/asan_globals.cc (RegisterGlobal): Disable detect_odr_violation
1020         support until it is rewritten upstream.
1022         * c-c++-common/asan/pr63888.c: New test.
1024 2015-10-21  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
1026         PR sanitizer/63958
1027         Reapply:
1028         2014-10-14  David S. Miller  <davem@davemloft.net>
1030         * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t):
1031         Define at __kernel_time_t, as needed for sparc.
1032         (struct __old_kernel_stat): Don't check if __sparc__ is defined.
1033         * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
1034         (__sanitizer): Define struct___old_kernel_stat_sz,
1035         struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc.
1036         (__sanitizer_ipc_perm): Adjust for sparc targets.
1037         (__sanitizer_shmid_ds): Likewsie.
1038         (__sanitizer_sigaction): Likewise.
1039         (IOC_SIZE): Likewsie.
1041 2015-10-21  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
1043         * All source files: Merge from upstream r250806.
1044         * configure.ac (link_sanitizer_common): Add -lrt flag.
1045         * configure.tgt: Enable TSAN and LSAN for aarch64-linux targets.
1046         Set USE_CXX_ABI_FLAG=true for darwin.
1047         * asan/Makefile.am (asan_files): Add new files.
1048         (DEFS): Add DCAN_SANITIZE_UB=0 and remove unused and legacy
1049         DASAN_FLEXIBLE_MAPPING_AND_OFFSET=0.
1050         * asan/Makefile.in: Regenerate.
1051         * ubsan/Makefile.am (ubsan_files): Add new files.
1052         (DEFS): Add DCAN_SANITIZE_UB=1.
1053         (libubsan_la_LIBADD): Add -lc++abi if USE_CXX_ABI_FLAG is true.
1054         * ubsan/Makefile.in: Regenerate.
1055         * tsan/Makefile.am (tsan_files): Add new files.
1056         (DEFS): Add DCAN_SANITIZE_UB=0.
1057         * tsan/Makefile.in: Regenerate.
1058         * sanitizer_common/Makefile.am (sanitizer_common_files): Add new files.
1059         * sanitizer_common/Makefile.in: Regenerate.
1060         * asan/libtool-version: Bump the libasan SONAME.
1062 2015-09-09  Markus Trippelsdorf  <markus@trippelsdorf.de>
1064         PR sanitizer/67258
1065         * ubsan/ubsan_type_hash.cc: Cherry pick upstream r244101.
1067 2015-07-29  Markus Trippelsdorf  <markus@trippelsdorf.de>
1069         PR sanitizer/63927
1070         * sanitizer_common/sanitizer_stacktrace.h: Use fast unwinder
1071         for PowerPC.
1073 2015-07-28  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
1075         PR sanitizer/63927
1076         * sanitizer_common/sanitizer_stacktrace.cc
1077         (BufferedStackTrace::FastUnwindStack): Fix code for PowerPC to
1078         find the link register at an offset of 16 from the base of the
1079         caller's stack frame.
1081 2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
1083         * Makefile.in: Regenerated with automake-1.11.6.
1084         * aclocal.m4: Likewise.
1085         * asan/Makefile.in: Likewise.
1086         * configure: Likewise.
1087         * interception/Makefile.in: Likewise.
1088         * libbacktrace/Makefile.in: Likewise.
1089         * lsan/Makefile.in: Likewise.
1090         * sanitizer_common/Makefile.in: Likewise.
1091         * tsan/Makefile.in: Likewise.
1092         * ubsan/Makefile.in: Likewise.
1094 2015-04-13  Yury Gribov  <y.gribov@samsung.com>
1096         PR sanitizer/64839
1097         * sanitizer_common/sanitizer_platform.h: Cherry pick
1098         upstream r234470.
1099         * sanitizer_common/sanitizer_platform_limits_posix.cc: Ditto.
1100         * configure.ac (RPC_DEFS): Check for precense of RPC headers.
1101         * sanitizer_common/Makefile.am (DEFS): Pass info to compiler.
1102         * Makefile.in: Regenerate.
1103         * asan/Makefile.in: Regenerate.
1104         * config.h.in: Regenerate.
1105         * configure: Regenerate.
1106         * interception/Makefile.in: Regenerate.
1107         * libbacktrace/Makefile.in: Regenerate.
1108         * lsan/Makefile.in: Regenerate.
1109         * sanitizer_common/Makefile.in: Regenerate.
1110         * tsan/Makefile.in: Regenerate.
1111         * ubsan/Makefile.in: Regenerate.
1114 2015-03-23  Christophe Lyon  <christophe.lyon@linaro.org>
1116         PR sanitizer/59009
1117         * sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry pick
1118         upstream r230324.
1119         * sanitizer_common/sanitizer_platform.h: Likewise.
1120         * sanitizer_common/sanitizer_common_syscalls.inc: Likewise.
1122 2015-03-11  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1124         * tsan/tsan_rtl_report.cc (ScopedReport::AddThread): Cherry pick
1125         upstream 224508 and 224755.
1127 2015-03-09  Jakub Jelinek  <jakub@redhat.com>
1129         PR sanitizer/63958
1130         Reapply:
1131         2014-10-14  David S. Miller  <davem@davemloft.net>
1133         * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t):
1134         Define at __kernel_time_t, as needed for sparc.
1135         (struct __old_kernel_stat): Don't check if __sparc__ is defined.
1136         * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
1137         (__sanitizer): Define struct___old_kernel_stat_sz,
1138         struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc.
1139         (__sanitizer_ipc_perm): Adjust for sparc targets.
1140         (__sanitizer_shmid_ds): Likewsie.
1141         (__sanitizer_sigaction): Likewise.
1142         (IOC_SIZE): Likewsie.
1144 2015-02-27  Peter Bergner  <bergner@vnet.ibm.com>
1146         * configure.tgt: Enable build on powerpc*le-*-linux.
1148 2015-02-23  Jakub Jelinek  <jakub@redhat.com>
1150         PR bootstrap/63888
1151         * asan/asan_globals.cc (RegisterGlobal): Disable detect_odr_violation
1152         support until it is rewritten upstream.
1154 2015-01-26  Matthias Klose  <doko@ubuntu.com>
1156         * configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
1157         * configure: Regenerate.
1159 2015-01-25  Venkataramanan Kumar  <venkataramanan.kumar@linaro.org>
1161         * configure.ac (TSAN_TARGET_DEPENDENT_OBJECTS): Undefine.
1162         * configure: Regenerate.
1163         * configure.tgt (TSAN_TARGET_DEPENDENT_OBJECTS): Define.
1165 2015-01-25  Venkataramanan Kumar  <venkataramanan.kumar@linaro.org>
1167         * configure.ac (TSAN_TARGET_DEPENDENT_OBJECTS): Define.
1168         * configure: Regenerate.
1169         * tsan/Makefile.am (EXTRA_libtsan_la_SOURCES): Define.
1170         (libtsan_la_DEPENDENCIES): Likewise.
1171         * Makefile.in: Regenerate.
1172         * asan/Makefile.in: Regenerate.
1173         * interception/Makefile.in: Regenerate.
1174         * libbacktrace/Makefile.in: Regenerate.
1175         * lsan/Makefile.in: Regenerate.
1176         * sanitizer_common/Makefile.in: Regenerate.
1177         * tsan/Makefile.in: Regenerate.
1178         * ubsan/Makefile.in: Regenerate.
1180 2015-01-22  Jakub Jelinek  <jakub@redhat.com>
1182         * tsan/tsan_rtl.h: Cherry pick upstream r226829.
1184 2015-01-21  Jakub Jelinek  <jakub@redhat.com>
1186         PR sanitizer/64435
1187         * sanitizer_common/sanitizer_platform_limits_posix.h: Cherry pick
1188         upstream r226637.
1189         * sanitizer_common/sanitizer_platform_limits_posix.cc: Likewise.
1190         * sanitizer_common/sanitizer_posix.cc: Cherry pick upstream r226639.
1192 2015-01-20  Jakub Jelinek  <jakub@redhat.com>
1194         PR sanitizer/64632
1195         * ubsan/ubsan_type_hash.cc: Cherry pick upstream r224972.
1197 2015-01-19  Jakub Jelinek  <jakub@redhat.com>
1199         PR sanitizer/64435
1200         * sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry pick
1201         upstream r223925.
1203 2015-01-13  Jakub Jelinek  <jakub@redhat.com>
1205         * sanitizer_common/sanitizer_deadlock_detector.h: Cherry pick
1206         upstream r224518 and r224519.
1207         * tsan/tsan_rtl_thread.cc: Cherry pick upstream r224702 and
1208         r224834.
1210 2014-12-16  Jakub Jelinek  <jakub@redhat.com>
1212         * sanitizer_common/sanitizer_symbolizer_libbacktrace.cc,
1213         sanitizer_common/sanitizer_symbolizer_libbacktrace.h,
1214         sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc: Cherry pick
1215         upstream r224308.
1217 2014-11-21  H.J. Lu  <hongjiu.lu@intel.com>
1219         PR bootstrap/63784
1220         * configure: Regenerated.
1222 2014-11-21  Jakub Jelinek  <jakub@redhat.com>
1224         PR target/61137
1225         * config/ia64/ia64.c (ia64_attribute_takes_identifier_p): New function.
1226         (TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Redefine to it.
1228 2014-11-14  Uros Bizjak  <ubizjak@gmail.com>
1230         * sanitizer_common/Makefile.am (AM_CXXFLAGS): Use -std=gnu++11.
1231         * asan/Makefile.am (AM_CXXFLAGS): Ditto.
1232         * lsan/Makefile.am (AM_CXXFLAGS): Ditto.
1233         * interception/Makefile.am (AM_CXXFLAGS): Ditto.
1234         * tsan/Makefile.am (AM_CXXFLAGS): Ditto.
1235         * libbacktrace/Makefile.am (AM_CXXFLAGS): Ditto.
1236         * ubsan/Makefile.am (AM_CXXFLAGS): Ditto.
1237         * sanitizer_common/Makefile.in: Regenerate.
1238         * asan/Makefile.in: Ditto.
1239         * lsan/Makefile.in: Ditto.
1240         * interception/Makefile.in: Ditto.
1241         * tsan/Makefile.in: Ditto.
1242         * libbacktrace/Makefile.in: Ditto.
1243         * ubsan/Makefile.in: Ditto.
1245 2014-11-13  Kostya Serebryany  <kcc@google.com>
1247         * All source files: Merge from upstream r221802.
1248         * sanitizer_common/sanitizer_symbolizer_libbacktrace.cc
1249         (LibbacktraceSymbolizer::SymbolizeData): Replace 'address'
1250         with 'start' to follow the new interface.
1251         * asan/Makefile.am (AM_CXXFLAGS): Added -std=c++11.
1252         * interception/Makefile.am (AM_CXXFLAGS): Added -std=c++11.
1253         * libbacktrace/Makefile.am (AM_CXXFLAGS): Added -std=c++11.
1254         * lsan/Makefile.am (AM_CXXFLAGS): Added -std=c++11.
1255         * sanitizer_common/Makefile.am (sanitizer_common_files): Added new
1256         files.
1257         (AM_CXXFLAGS): Added -std=c++11.
1258         * tsan/Makefile.am (AM_CXXFLAGS): Added -std=c++11.
1259         * ubsan/Makefile.am (AM_CXXFLAGS): Added -std=c++11.
1260         * asan/Makefile.in: Regenerate.
1261         * interception/Makefile.in: Regenerate.
1262         * libbacktrace/Makefile.in: Regenerate.
1263         * lsan/Makefile.in: Regenerate.
1264         * sanitizer_common/Makefile.in: Regenerate.
1265         * tsan/Makefile.in: Regenerate.
1266         * ubsan/Makefile.in: Regenerate.
1268 2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1270         PR target/63610
1271         * configure: Regenerate.
1273 2014-10-16  Martin Liska  <mliska@suse.cz>
1275         * asan/Makefile.am: IPA ICF pass is disabled.
1276         * asan/Makefile.in: Likewise.
1278 2014-10-14  David S. Miller  <davem@davemloft.net>
1280         * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t):
1281         Define at __kernel_time_t, as needed for sparc.
1282         (struct __old_kernel_stat): Don't check if __sparc__ is defined.
1283         * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
1284         (__sanitizer): Define struct___old_kernel_stat_sz,
1285         struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc.
1286         (__sanitizer_ipc_perm): Adjust for sparc targets.
1287         (__sanitizer_shmid_ds): Likewsie.
1288         (__sanitizer_sigaction): Likewsie.
1289         (IOC_SIZE): Likewsie.
1291 2014-10-14  Jakub Jelinek  <jakub@redhat.com>
1293         * ubsan/Makefile.am (DEFS): Add -DPIC.
1294         * ubsan/Makefile.in: Regenerated.
1296 2014-09-26  Christophe Lyon  <christophe.lyon@linaro.org>
1298         * configure.tgt: Enable build on aarch64*-linux.
1300 2014-09-19  Kostya Serebryany  <kcc@google.com>
1302         * All source files: Merge from upstream r218156.
1303         * asan/Makefile.am (asan_files): Added new files.
1304         * asan/Makefile.in: Regenerate.
1305         * ubsan/Makefile.am (ubsan_files): Added new files.
1306         * ubsan/Makefile.in: Regenerate.
1307         * tsan/Makefile.am (tsan_files): Added new files.
1308         * tsan/Makefile.in: Regenerate.
1309         * sanitizer_common/Makefile.am (sanitizer_common_files): Added new
1310           files.
1311         * sanitizer_common/Makefile.in: Regenerate.
1312         * asan/libtool-version: Bump the libasan SONAME.
1314 2014-09-10  Jakub Jelinek  <jakub@redhat.com>
1316         * ubsan/ubsan_handlers.cc, ubsan/ubsan_handlers.h: Cherry pick
1317         upstream r215485, r217389, r217391 and r217400.
1319 2014-06-23  Paolo Carlini  <paolo.carlini@oracle.com>
1321         * sanitizer_common/sanitizer_common_interceptors.inc:
1322         Cherry pick upstream r211008.
1324 2014-06-11  Richard Biener  <rguenther@suse.de>
1326         * asan/asan_linux.cc: Cherry pick upstream r210012.
1328 2014-05-30  Jakub Jelinek  <jakub@redhat.com>
1330         * sanitizer_common/sanitizer_stacktrace.cc: Cherry pick upstream
1331         r209879.
1332         * sanitizer_common/sanitizer_common.h: Likewise.
1333         * asan/asan_mapping.h: Likewise.
1334         * asan/asan_linux.cc: Likewise.
1335         * tsan/tsan_mman.cc: Cherry pick upstream r209744.
1336         * sanitizer_common/sanitizer_allocator.h: Likewise.
1338 2014-05-23  Marek Polacek  <polacek@redhat.com>
1340         * ubsan/ubsan_value.cc (getFloatValue): Handle 96-bit
1341         floating-point types.
1343 2014-05-22  Kostya Serebryany  <kcc@google.com>
1345         * All source files: Merge from upstream r209283.
1346         * asan/Makefile.am (asan_files): Added new files.
1347         * asan/Makefile.in: Regenerate.
1348         * tsan/Makefile.am (tsan_files): Added new files.
1349         * tsan/Makefile.in: Regenerate.
1350         * sanitizer_common/Makefile.am (sanitizer_common_files): Added new
1351         files.
1352         * sanitizer_common/Makefile.in: Regenerate.
1354 2014-05-14  Yury Gribov  <y.gribov@samsung.com>
1356         PR sanitizer/61100
1357         * Makefile.am (nodist_saninclude_HEADERS): Install
1358         public headers.
1359         * Makefile.in: Regenerate.
1361 2014-03-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1363         * libbacktrace/Makefile.am (libsanitizer_libbacktrace_la_SOURCES):
1364         Add ../../libbacktrace/sort.c.
1365         * libbacktrace/Makefile.in: Regenerate.
1366         * libbacktrace/backtrace-rename.h (backtrace_qsort): Define.
1368 2014-03-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
1370         * configure.tgt: Unsupported for little endian PowerPC for now.
1372 2014-02-04  Jakub Jelinek  <jakub@redhat.com>
1374         PR sanitizer/60055
1375         * tsan/tsan_flags.cc (__tsan_default_options): Add
1376         SANITIZER_INTERFACE_ATTRIBUTE.  Backport from upstream r200747.
1377         * tsan/tsan_rtl.cc (__tsan::OnFinalize): Likewise.
1379         PR sanitizer/60038
1380         * sanitizer_common/sanitizer_linux_libcdep.cc: Include
1381         sanitizer_atomic.h and unistd.h.
1382         (kThreadDescriptorSize): Made static, remove initializer and const,
1383         change type to atomic_uintptr_t.
1384         (ThreadDescriptorSize): Use confstr(_CS_GNU_LIBC_VERSION, ...) to
1385         query glibc version, compute kThreadDescriptorSize depending on
1386         glibc version minor number.
1387         (GetThreadStackAndTls): Use ThreadDescriptorSize() instead of
1388         kThreadDescriptorSize directly.
1390 2014-01-23  Yury Gribov  <y.gribov@samsung.com>
1391             Jakub Jelinek  <jakub@redhat.com>
1393         PR sanitizer/57316
1394         * configure.ac: Check for missing syscalls.
1395         * Makefile.am: Likewise.
1396         * configure: Regenerate.
1397         * Makefile.in: Regenerate.
1399 2014-01-09  Jakub Jelinek  <jakub@redhat.com>
1401         * sanitizer_common/sanitizer_symbolizer_libbacktrace.h
1402         (LibbacktraceSymbolizer::Demangle): New declaration.
1403         * sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
1404         (POSIXSymbolizer::Demangle): Use libbacktrace_symbolizer_'s Demangle
1405         method if possible.
1406         * sanitizer_common/sanitizer_symbolizer_libbacktrace.cc: Include
1407         "demangle.h" if SANITIZE_CP_DEMANGLE is defined.
1408         (struct CplusV3DemangleData): New type.
1409         (CplusV3DemangleCallback, CplusV3Demangle): New functions.
1410         (SymbolizeCodePCInfoCallback, SymbolizeCodeCallback,
1411         SymbolizeDataCallback): Use CplusV3Demangle.
1412         * sanitizer_common/Makefile.am (AM_CXXFLAGS): Add
1413         -DSANITIZE_CP_DEMANGLE and -I $(top_srcdir)/../include.
1414         * libbacktrace/backtrace-rename.h (cplus_demangle_builtin_types,
1415         cplus_demangle_fill_ctor, cplus_demangle_fill_dtor,
1416         cplus_demangle_fill_extended_operator, cplus_demangle_fill_name,
1417         cplus_demangle_init_info, cplus_demangle_mangled_name,
1418         cplus_demangle_operators, cplus_demangle_print,
1419         cplus_demangle_print_callback, cplus_demangle_type, cplus_demangle_v3,
1420         cplus_demangle_v3_callback, is_gnu_v3_mangled_ctor,
1421         is_gnu_v3_mangled_dtor, java_demangle_v3, java_demangle_v3_callback):
1422         Define.
1423         (__asan_internal_memcmp, __asan_internal_strncmp): New prototypes.
1424         (memcmp, strncmp): Redefine.
1425         * libbacktrace/Makefile.am (libsanitizer_libbacktrace_la_SOURCES): Add
1426         ../../libiberty/cp-demangle.c.
1427         * libbacktrace/bridge.cc (__asan_internal_memcmp,
1428         __asan_internal_strncmp): New functions.
1429         * sanitizer_common/Makefile.in: Regenerated.
1430         * libbacktrace/Makefile.in: Regenerated.
1431         * configure: Regenerated.
1432         * configure.ac: Regenerated.
1433         * config.h.in: Regenerated.
1435         * sanitizer_common/Makefile.am (AM_CPPFLAGS): Add
1436         -isystem $(top_srcdir)/include/system.
1437         * sanitizer_common/Makefile.in: Regenerated.
1438         * include/system/linux/aio_abi.h: New header.
1439         * include/system/linux/mroute.h: New header.
1440         * include/system/linux/mroute6.h: New header.
1441         * include/system/linux/perf_event.h: New header.
1442         * include/system/linux/types.h: New header.
1444         PR sanitizer/59136
1445         * sanitizer_common/Makefile.am (AM_CXXFLAGS): If
1446         LIBBACKTRACE_SUPPORTED add -DSANITIZER_LIBBACKTRACE
1447         and -I/-include flags.
1448         * lsan/Makefile.am (liblsan_la_LIBADD): Add
1449         libsanitizer_libbacktrace.la if LIBBACKTRACE_SUPPORTED.
1450         * tsan/Makefile.am (libtsan_la_LIBADD): Likewise.
1451         * ubsan/Makefile.am (libubsan_la_LIBADD): Likewise.
1452         * asan/Makefile.am (libasan_la_LIBADD): Likewise.
1453         * Makefile.am (SUBDIRS): If LIBBACKTRACE_SUPPORTED add
1454         libbacktrace.
1455         * README.gcc: Document that also lsan and ubsan are
1456         maintained in compiler-rt upstream.
1457         * libbacktrace/Makefile.am: New file.
1458         * libbacktrace/backtrace-rename.h: New file.
1459         * libbacktrace/backtrace-supported.h.in: New file.
1460         * libbacktrace/bridge.cc: New file.
1461         * configure.ac: Add tests needed for libbacktrace build
1462         within libsanitizer.
1463         * sanitizer_common/Makefile.in: Regenerated.
1464         * lsan/Makefile.in: Regenerated.
1465         * tsan/Makefile.in: Regenerated.
1466         * ubsan/Makefile.in: Regenerated.
1467         * libbacktrace/Makefile.in: Generated.
1468         * config.h.in: Regenerated.
1469         * configure: Regenerated.
1470         * Makefile.in: Regenerated.
1471         * interception/Makefile.in: Regenerated.
1472         * asan/Makefile.in: Regenerated.
1473         * aclocal.m4: Regenerated.
1475 2013-12-19  Kostya Serebryany  <kcc@google.com>
1477         * sanitizer_common/sanitizer_platform_limits_posix.cc:
1478         workaround for missing definition of EOWNERDEAD, backport
1479         from upstream r196779.
1481 2013-12-06  H.J. Lu  <hongjiu.lu@intel.com>
1483         * sanitizer_common/sanitizer_platform_limits_posix.h
1484         (__sanitizer_shmid_ds): Use u64 on time fields for x32.
1485         (__sanitizer_clock_t): Use long long for x32.
1487 2013-12-06  H.J. Lu  <hongjiu.lu@intel.com>
1489         * sanitizer_common/sanitizer_platform_limits_linux.cc: Include
1490         <sys/stat.h>, instead of <asm/stat.h>, if __x86_64__ is defined.
1491         (struct___old_kernel_stat_sz): Don't check if __x86_64__ is defined.
1493 2013-12-05  H.J. Lu  <hongjiu.lu@intel.com>
1495         * configure.ac (link_sanitizer_common): Add -lm.
1496         * configure: Regenerated.
1498 2013-12-05  Kostya Serebryany  <kcc@google.com>
1500         * All source files: Merge from upstream r196489.
1501         * merge.sh: Add *.S to the list of merged files.
1503 2013-12-05  Yury Gribov  <y.gribov@samsung.com>
1505         PR sanitizer/59368
1506         * Makefile.am (gcc_version): Added gcc_version.
1507         * Makefile.in: Regenerate.
1509 2013-12-05  Kostya Serebryany  <kcc@google.com>
1511         * All source files: Merge from upstream r196090.
1512         * tsan/Makefile.am (tsan_files): Added new files.
1513         * tsan/Makefile.in: Regenerate.
1514         * sanitizer_common/Makefile.am (sanitizer_common_files): Added new fles.
1515         * sanitizer_common/Makefile.in: Regenerate.
1516         * lsan/Makefile.am (lsan_files): Added new files.
1517         * lsan/Makefile.in: Regenerate.
1519 2013-11-29  Jakub Jelinek  <jakub@redhat.com>
1520             Yury Gribov  <y.gribov@samsung.com>
1522         PR sanitizer/59063
1523         * libsanitizer.spec.in: Add spec file to hold link flags for
1524         various sanitizer libs.
1525         * configure.ac: Check whether clock_* routines come from librt.
1526         * asan/Makefile.am (libasan_la_LDFLAGS): Libs now come from
1527         configure.ac.
1528         * tsan/Makefile.am (libtsan_la_LDFLAGS): Likewise.
1529         * ubsan/Makefile.am (libubsan_la_LDFLAGS): Likewise.
1530         * lsan/Makefile.am (liblsan_la_LDFLAGS): Likewise.
1531         * asan/Makefile.in: Regenerate.
1532         * interception/Makefile.in: Regenerate.
1533         * lsan/Makefile.in: Regenerate.
1534         * sanitizer_common/Makefile.in: Regenerate.
1535         * tsan/Makefile.in: Regenerate.
1536         * ubsan/Makefile.in: Regenerate.
1537         * Makefile.in: Regenerate.
1538         * configure: Regenerate.
1540 2013-11-28  Jakub Jelinek  <jakub@redhat.com>
1541             Yury Gribov  <y.gribov@samsung.com>
1543         PR sanitizer/59106
1544         * ubsan/Makefile.am (AM_CXXFLAGS): Disable -frtti for files that
1545         don't need it.
1546         * ubsan/Makefile.in: Regenerated.
1548 2013-11-22  Jakub Jelinek  <jakub@redhat.com>
1550         PR sanitizer/59061
1551         * configure.tgt: Set LSAN_SUPPORTED=yes for x86_64-linux.
1552         * configure.ac (LSAN_SUPPORTED): New AM_CONDITIONAL.
1553         * configure: Regenerated.
1554         * lsan/Makefile.am (toolexeclib_LTLIBRARIES, lsan_files,
1555         liblsan_la_SOURCES, liblsan_la_LIBADD, liblsan_la_LDFLAGS): Add.
1556         * lsan/Makefile.in: Regenerated.
1558 2013-11-22  Mike Stump  <mikestump@comcast.net>
1560         * sanitizer_common/sanitizer_linux.cc (__sanitizer): Grab one
1561         change from upstream to fix build.
1563 2013-11-18  Yury Gribov  <y.gribov@samsung.com>
1565         PR sanitizer/59106
1566         * asan/Makefile.am (AM_CXXFLAGS): Add -fno-rtti.
1567         * interception/Makefile.am (AM_CXXFLAGS): Likewise.
1568         * lsan/Makefile.am (AM_CXXFLAGS): Likewise.
1569         * sanitizer_common/Makefile.am (AM_CXXFLAGS): Likewise.
1570         * tsan/Makefile.am (AM_CXXFLAGS): Likewise.
1571         * asan/Makefile.in: Regenerate.
1572         * interception/Makefile.in: Regenerate.
1573         * tsan/Makefile.in: Regenerate.
1574         * lsan/Makefile.in: Regenerate.
1575         * sanitizer_common/Makefile.in: Regenerate.
1577 2013-11-15  Kostya Serebryany  <kcc@google.com>
1579         PR sanitizer/58994
1580         Backport from upstream revision 194573
1581         * asan/asan_interceptors.cc (COMMON_INTERCEPTOR_ENTER): Fall
1582         back to the original functions in the common libsanitizer
1583         interceptors and the __cxa_atexit() interceptor on Darwin.
1585 2013-11-13  Peter Bergner  <bergner@vnet.ibm.com>
1587         PR sanitizer/59009
1588         * sanitizer_common/sanitizer_platform_limits_posix.cc: Temporarily
1589         ifdef out more source.
1591 2013-11-12  Jakub Jelinek  <jakub@redhat.com>
1593         * sanitizer_common/sanitizer_platform_limits_linux.cc: Temporarily
1594         ifdef out almost the whole source.
1595         * sanitizer_common/sanitizer_common_syscalls.inc: Likewise.
1597 2013-11-05  H.J. Lu  <hongjiu.lu@intel.com>
1599         PR sanitizer/59018
1600         * sanitizer_common/sanitizer_platform_limits_posix.cc
1601         (struct_user_fpxregs_struct_sz): Initialize to 0 if __x86_64__ is
1602         defined.
1604 2013-11-05  H.J. Lu  <hongjiu.lu@intel.com>
1606         PR sanitizer/59018
1607         * sanitizer_common/sanitizer_platform_limits_linux.cc
1608         (struct_kernel_stat64_sz): Initialize to 0 if __x86_64__ is
1609         defined.
1610         * sanitizer_common/sanitizer_platform_limits_posix.h
1611         (__sanitizer_dirent): Use 64-bit d_ino/d_off if __x86_64__ is
1612         defined.
1613         (__sanitizer___kernel_uid_t): Typedef as unsigned if __x86_64__
1614         is defined.
1615         (__sanitizer___kernel_gid_t): Likewise.
1616         (__sanitizer___kernel_off_t): Typedef as long long if __x86_64__
1617         is defined.
1619 2013-11-05  H.J. Lu  <hongjiu.lu@intel.com>
1621         PR sanitizer/59018
1622         * sanitizer_common/sanitizer_linux.cc (internal_clone): Allocate
1623         2 64-bit integers to save and restore fn and arg.  Properly load
1624         newtls/child_tidptr into r8/r10.
1626 2013-11-05  H.J. Lu  <hongjiu.lu@intel.com>
1628         PR sanitizer/59018
1629         * sanitizer_common/sanitizer_linux.cc (internal_mmap,
1630         internal_munmap, internal_open, internal_read, internal_write,
1631         internal_stat, internal_lstat, internal_fstat, internal_readlink,
1632         internal_unlink, internal_execve, NanoTime, BlockingMutex::Lock,
1633         BlockingMutex::Unlock, internal_ptrace, internal_getdents,
1634         internal_sigaltstack): Cast pointers to uptr for 64-bit syscalls.
1636 2013-11-04  Kostya Serebryany  <kcc@google.com>
1638         * All source files: Merge from upstream r191666.
1639         * merge.sh: Added lsan.
1640         * configure.ac (AC_CONFIG_FILES): Added lsan.
1641         * Makefile.am (SUBDIRS): Added lsan.
1642         * sanitizer_common/Makefile.am (sanitizer_common_files): Added new fles.
1643         * asan/Makefile.am (asan_files): Added new files.
1644         (libasan_la_LIBADD): Added a dependency on lsan.
1645         * lsan/Makefile.am: New file.
1646         * asan/Makefile.in: Regenerate.
1647         * lsan/Makefile.in: Regenerate.
1648         * Makefile.in: Regenerate.
1649         * configure: Regenerate.
1650         * sanitizer_common/Makefile.in: Regenerate.
1652 2013-09-20  Alan Modra  <amodra@gmail.com>
1654         * configure: Regenerate.
1656 2013-09-01  Iain Sandoe  <iain@codesourcery.com>
1658         * ubsan/Makefile.am (libubsan_la_LIBADD): Revise to omit
1659         libinterception.la for Darwin.
1660         * ubsan/Makefile.in: Regenerate.
1662 2013-08-30  Jakub Jelinek  <jakub@redhat.com>
1664         * Makefile.am (SUBDIRS): Add ubsan.
1665         * configure.ac (AC_CONFIG_FILES): Add ubsan/Makefile.
1666         * merge.sh: Merge ubsan.
1667         * sanitizer_common/sanitizer_report_decorator.h: Partial merge from trunk.
1668         * sanitizer_common/sanitizer_printf.cc: Likewise.
1669         * sanitizer_common/sanitizer_common.h: Likewise.
1670         * ubsan: New directory. Import ubsan runtime from llvm.
1672 2013-06-03  Christophe Lyon  <christophe.lyon@linaro.org>
1674         * sanitizer_common/sanitizer_linux.cc (MemoryMappingLayout::Next):
1675         Cherry pick upstream r182922.
1677 2013-05-07  Christophe Lyon  <christophe.lyon@linaro.org>
1679         * configure.tgt: Add ARM pattern.
1681 2013-03-22  Jakub Jelinek  <jakub@redhat.com>
1683         PR other/43620
1684         * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
1685         * Makefile.in: Regenerated.
1686         * asan/Makefile.in: Regenerated.
1687         * interception/Makefile.in: Regenerated.
1688         * sanitizer_common/Makefile.in: Regenerated.
1689         * tsan/Makefile.in: Regenerated.
1691 2013-02-28  Jakub Jelinek  <jakub@redhat.com>
1693         * asan/asan_mapping.h (kMidMemEnd): Increase to 0x4fffffffffULL.
1694         * asan/asan_rtl.cc (__asan_init): Increase kMidMemEnd to
1695         0x4fffffffffULL.
1697 2013-02-22  Jakub Jelinek  <jakub@redhat.com>
1699         PR sanitizer/56393
1700         * asan/Makefile.am (nodist_toolexeclib_HEADERS): Set to
1701         libasan_preinit.o.
1702         (libasan_preinit.o): Depend on asan_preinit.o.
1703         * asan/Makefile.in: Regenerated.
1704         * asan/asan_preinit.cc: New file, synced from upstream.
1705         * asan/asan_rtl.cc: Remove preinit stuff, synced from upstream.
1707 2013-02-21  Jack Howarth  <howarth@bromo.med.uc.edu>
1709         * asan/Makefile.am (libasan_la_SOURCES): Remove deprecated
1710         dynamic/asan_interceptors_dynamic.cc.
1711         * asan/Makefile.in: Regenerated.
1712         * merge.sh: Remove merge of deprecated lib/asan/dynamic.
1714 2013-02-21  Jakub Jelinek  <jakub@redhat.com>
1716         * asan/asan_rtl.cc (__asan_preinit): Don't add if PIC macro is
1717         defined.  Add used attribute.
1719 2013-02-21  Kostya Serebryany  <kcc@google.com>
1721         * All source files: Merge from upstream r175733.
1722         * sanitizer_common/Makefile.am: Added a new file.
1723         * sanitizer_common/Makefile.in: Regenerated.
1725 2013-02-14  H.J. Lu  <hongjiu.lu@intel.com>
1727         PR bootstrap/56327
1728         * interception/interception.h (OFF_T): Merged from upstream
1729         r175140.
1731 2013-02-13  Jakub Jelinek  <jakub@redhat.com>
1733         * asan/asan_mapping.h (SHADOW_OFFSET): Set to (1ULL << 44) on x86-64.
1735 2013-02-13  Kostya Serebryany  <kcc@google.com>
1737         PR sanitizer/56128
1738         * All source files: Merge from upstream r175049.
1739         * interception/Makefile.am: added include path.
1740         * interception/Makefile.in: Regenerated.
1742 2013-02-11  Jack Howarth  <howarth@bromo.med.uc.edu>
1744         * configure.tgt: Disable build on darwin9 and earlier.
1746 2013-01-23  Kostya Serebryany  <kcc@google.com>
1748         PR sanitizer/55989
1749         * All source files: Merge from upstream r173241.
1750         * merge.sh: Support merging .inc files.
1752 2013-01-16  Jakub Jelinek  <jakub@redhat.com>
1754         * sanitizer_common/Makefile.am (AM_CXXFLAGS): Remove
1755         -Wno-c99-extensions.
1756         * interception/Makefile.am (AM_CXXFLAGS): Likewise.
1757         * asan/Makefile.am (AM_CXXFLAGS): Likewise.
1758         * sanitizer_common/Makefile.in: Regenerated.
1759         * interception/Makefile.in: Regenerated.
1760         * asan/Makefile.in: Regenerated.
1762 2013-01-10  Wei Mi  <wmi@google.com>
1764         PR sanitizer/55488
1765         * tsan/Makefile.am: Add tsan_rtl_amd64.S.
1766         * tsan/Makefile.in: Regenerated.
1767         * tsan/tsan_rtl.h: Enable HACKY_CALL.
1769 2013-01-10  Kostya Serebryany  <kcc@google.com>
1771         * All source files: Merge from upstream r171973.
1772         * sanitizer_common/Makefile.am: Added new files.
1773         * asan/Makefile.am: Likewise.
1774         * tsan/Makefile.am: Likewise.
1775         * sanitizer_common/Makefile.in: Regenerated.
1776         * asan/Makefile.in: Likewise.
1777         * tsan/Makefile.in: Likewise.
1779 2013-01-07  H.J. Lu  <hongjiu.lu@intel.com>
1781         * asan/Makefile.am (libasan_la_LIBADD): Replace
1782         LIBSTDCXX_RAW_CXX_LDLAGS with LIBSTDCXX_RAW_CXX_LDFLAGS.
1783         * tsan/Makefile.am (libtsan_la_LIBADD): Likewise.
1784         * Makefile.in: Regenerated.
1785         * configure: Likewise.
1786         * asan/Makefile.in: Likewise.
1787         * interception/Makefile.in: Likewise.
1788         * sanitizer_common/Makefile.in: Likewise.
1789         * tsan/Makefile.in: Likewise.
1791 2012-12-12  H.J. Lu  <hongjiu.lu@intel.com>
1793         * Makefile.am (AM_MAKEFLAGS): Restored.
1794         * interception/Makefile.am: Likewise.
1795         * sanitizer_common/Makefile.am: Likewise.
1796         * tsan/Makefile.am: Likewise.
1797         * Makefile.in: Regenerated.
1798         * asan/Makefile.in: Likewise.
1799         * interception/Makefile.in: Likewise.
1800         * sanitizer_common/Makefile.in: Likewise.
1801         * tsan/Makefile.in: Likewise.
1803 2012-12-12  H.J. Lu  <hongjiu.lu@intel.com>
1805         * Makefile.am (MAKEOVERRIDES): Restored.
1806         * asan/Makefile.am: Likewise.
1807         * interception/Makefile.am: Likewise.
1808         * sanitizer_common/Makefile.am: Likewise.
1809         * tsan/Makefile.am: Likewise.
1810         * Makefile.in: Regenerated.
1811         * asan/Makefile.in: Likewise.
1812         * interception/Makefile.in: Likewise.
1813         * sanitizer_common/Makefile.in: Likewise.
1814         * tsan/Makefile.in: Likewise.
1816 2012-12-12  H.J. Lu  <hongjiu.lu@intel.com>
1818         * asan/Makefile.am (libasan_la_LIBADD): Use $(LIBSTDCXX_RAW_CXX_LDLAGS).
1819         * tsan/Makefile.am (libtsan_la_LIBADD): Likewise.
1820         * Makefile.in: Regenerated.
1821         * configure: Likewise.
1822         * asan/Makefile.in: Likewise.
1823         * interception/Makefile.in: Likewise.
1824         * sanitizer_common/Makefile.in: Likewise.
1825         * tsan/Makefile.in: Likewise.
1827 2012-12-12  H.J. Lu  <hongjiu.lu@intel.com>
1829         * Makefile.am (AM_MAKEFLAGS): Removed.
1830         (MAKEOVERRIDES): Likewise.
1831         * asan/Makefile.am: Likewise.
1832         * interception/Makefile.am: Likewise.
1833         * sanitizer_common/Makefile.am: Likewise.
1834         * tsan/Makefile.am: Likewise.
1835         * Makefile.in: Regenerated.
1836         * asan/Makefile.in: Likewise.
1837         * interception/Makefile.in: Likewise.
1838         * sanitizer_common/Makefile.in: Likewise.
1839         * tsan/Makefile.in: Likewise.
1841 2012-12-11  H.J. Lu  <hongjiu.lu@intel.com>
1843         PR sanitizer/55533
1844         * Makefile.am (AM_MAKEFLAGS): Remove CC and CXX.
1845         * configure.ac (GCC_LIBSTDCXX_RAW_CXX_FLAGS): New.
1846         * asan/Makefile.am (AM_CXXFLAGS): Add $(LIBSTDCXX_RAW_CXX_CXXFLAGS).
1847         (AM_MAKEFLAGS): Remove CC and CXX.
1848         * interception/Makefile.am: Likewise.
1849         * sanitizer_common/Makefile.am: Likewise.
1850         * tsan/Makefile.am: Likewise.
1851         * Makefile.in: Regenerated.
1852         * aclocal.m4: Likewise.
1853         * configure: Likewise.
1854         * asan/Makefile.in: Likewise.
1855         * interception/Makefile.in: Likewise.
1856         * sanitizer_common/Makefile.in: Likewise.
1857         * tsan/Makefile.in: Likewise.
1859 2012-12-06  Peter Bergner  <bergner@vnet.ibm.com>
1861         * configure.tgt: Enable build on powerpc*-linux.
1863 2012-12-06  Jack Howarth  <howarth@bromo.med.uc.edu>
1865         PR 55599/sanitizer
1866         * configure.ac: Set enable_static=no on darwin.
1867         * configure: Regenerated.
1869 2012-12-06  Kostya Serebryany  <kcc@google.com>
1871         * All files: Merge from upstream r169392.
1873 2012-12-05  Kostya Serebryany  <kcc@google.com>
1875         * All files: Merge from upstream r169371.
1877 2012-12-04  Kostya Serebryany  <kcc@google.com>
1878             Jack Howarth  <howarth@bromo.med.uc.edu>
1880         PR 55521/sanitizer
1881         * configure.ac: Define USING_MAC_INTERPOSE when on darwin.
1882         * Makefile.am: Don't build interception subdir when
1883         USING_MAC_INTERPOSE defined.
1884         * asan/Makefile.am: Pass -DMAC_INTERPOSE_FUNCTIONS and
1885         -DMISSING_BLOCKS_SUPPORT when USING_MAC_INTERPOSE defined.
1886         Compile asan_interceptors_dynamic.cc but not libinterception
1887         when USING_MAC_INTERPOSE defined.
1888         * interception/Makefile.am: Remove usage of USING_MACH_OVERRIDE.
1889         * configure: Regenerated.
1890         * Makefile.in: Likewise.
1891         * asan/Makefile.in: Likewise.
1892         * interception/Makefile.in: Likewise.
1893         * asan/asan_intercepted_functions.h: Use MISSING_BLOCKS_SUPPORT.
1894         * asan/asan_mac.cc: Likewise.
1895         * asan/dynamic/asan_interceptors_dynamic.cc: Migrate from llvm
1896         and use MISSING_BLOCKS_SUPPORT.
1897         * merge.sh: Merge lib/asan/dynamic into asan/dynamic.
1898         * interception/mach_override/LICENSE.txt: Remove unused file.
1899         * interception/mach_override/mach_override.c: Likewise.
1900         * interception/mach_override/mach_override.h: Likewise.
1901         * interception/mach_override: Remove unused directory.
1903 2012-11-28  H.J. Lu  <hongjiu.lu@intel.com>
1905         * Makefile.am (AM_MAKEFLAGS): Restore CC and CXX.
1906         * configure.ac (ACX_NONCANONICAL_TARGET): Removed.
1907         * asan/Makefile.am (AM_CXXFLAGS): Remove -I for libstdc++-v3 header
1908         files.
1909         (AM_MAKEFLAGS): Restore CC and CXX.
1910         * interception/Makefile.am: Likewise.
1911         * sanitizer_common/Makefile.am: Likewise.
1912         * tsan/Makefile.am: Likewise.
1913         * Makefile.in: Regenerated.
1914         * aclocal.m4: Likewise.
1915         * configure: Likewise.
1916         * asan/Makefile.in: Likewise.
1917         * interception/Makefile.in: Likewise.
1918         * sanitizer_common/Makefile.in: Likewise.
1919         * tsan/Makefile.in: Likewise.
1921 2012-11-28  H.J. Lu  <hongjiu.lu@intel.com>
1923         * Makefile.am (AM_MAKEFLAGS): Remove CC and CXX.
1924         * configure.ac (ACX_NONCANONICAL_TARGET): New.
1925         * asan/Makefile.am (AM_CXXFLAGS): Add -I for libstdc++-v3 header
1926         files.
1927         (AM_MAKEFLAGS): Remove CC and CXX.
1928         * interception/Makefile.am: Likewise.
1929         * sanitizer_common/Makefile.am: Likewise.
1930         * tsan/Makefile.am: Likewise.
1931         * Makefile.in: Regenerated.
1932         * aclocal.m4: Likewise.
1933         * configure: Likewise.
1934         * asan/Makefile.in: Likewise.
1935         * interception/Makefile.in: Likewise.
1936         * sanitizer_common/Makefile.in: Likewise.
1937         * tsan/Makefile.in: Likewise.
1939 2012-11-27  Kostya Serebryany  <kcc@google.com>
1941         * All files: Merge from upstream r168699.
1943 2012-11-24  Kostya Serebryany  <kcc@google.com>
1944             Jack Howarth  <howarth@bromo.med.uc.edu>
1946         * interception/mach_override/mach_override.c: Migrate from llvm.
1947         * interception/mach_override/mach_override.h: Likewise.
1948         * interception/mach_override/LICENSE.txt: Likewise.
1949         * configure.tgt: Add darwin to supported targets.
1950         * configure.ac: Define USING_MACH_OVERRIDE when on darwin.
1951         * interception/Makefile.am: Compile mach_override.c when
1952         USING_MACH_OVERRIDE defined.
1953         * configure: Regenerated.
1954         * interception/Makefile.in: Likewise.
1956 2012-11-23  H.J. Lu  <hongjiu.lu@intel.com>
1958         PR sanitizer/55450
1959         * tsan/Makefile.am (gcc_version): New.
1960         * tsan/Makefile.in: Regenerated.
1962 2012-11-23  Kostya Serebryany  <kcc@google.com>
1964         * merge.sh: Support tsan, support added/removed files.
1965         * tsan/Makefile.am: Remove tsan_printf.cc.
1966         * tsan/Makefile.in: Regenerated.
1967         * other files: Merge from upstream r168514.
1969 2012-11-23  Kostya Serebryany  <kcc@google.com>
1971         * merge.sh: New file.
1973 2012-11-23  Jakub Jelinek  <jakub@redhat.com>
1975         * tsan/Makefile.am (AM_CXXFLAGS): Remove -Wno-variadic-macros.
1976         * Makefile.am (SUBDIRS): Guard tsan addition with TSAN_SUPPORTED
1977         automake conditional instead of !MULTISUBDIR32.
1978         * configure.tgt: Set TSAN_SUPPORTED=yes for x86_64/i686-linux
1979         for 64-bit multilib.
1980         * configure.ac: Check for void * size, source in configure.tgt,
1981         define TSAN_SUPPORTED conditional instead of MULTILIBDIR32.
1982         * configure: Regenerated.
1983         * Makefile.in: Regenerated.
1984         * tsan/Makefile.in: Regenerated.
1986 2012-11-22  Wei Mi  <wmi@google.com>
1988         * tsan: New directory. Import tsan runtime from llvm.
1989         * configure.ac: Add 64 bits tsan build.
1990         * Makefile.am: Likewise.
1991         * configure: Regenerated.
1992         * Makefile.in: Likewise.
1994 2012-11-21  Kostya Serebryany  <kcc@google.com>
1996         * README.gcc: Extend the README.gcc with mode details.
1998 2012-11-20  Konstantin Serebryany  <konstantin.s.serebryany@gmail.com>
2000         * sanitizer_common/sanitizer_linux.cc
2001         (SANITIZER_LINUX_USES_64BIT_SYSCALLS): Define.
2002         (internal_mmap): Use it.
2003         (internal_filesize): Likewise.
2005 2012-11-16  Tom Tromey  <tromey@redhat.com>
2007         * configure.ac: Invoke AM_MAINTAINER_MODE.
2008         * aclocal.m4, configure, Makefile.in, asan/Makefile.in,
2009         interception/Makefile.in, sanitizer_common/Makefile.in: Rebuild.
2011 2012-11-16  H.J. Lu  <hongjiu.lu@intel.com>
2013         PR other/55333
2014         * include/sanitizer/common_interface_defs.h (uhwptr): New type
2015         for hardware pointer.
2016         * sanitizer_common/sanitizer_stacktrace.cc (StackTrace::FastUnwindStack):
2017         Replace uptr with uhwptr for stack unwind.
2019 2012-11-16  Dodji Seketeli  <dodji@redhat.com>
2021         * configure.tgt: Enable build on sparc linux.
2023 2012-11-15  H.J. Lu  <hongjiu.lu@intel.com>
2025         * configure.ac: Properly set MULTISUBDIR.
2026         * asan/Makefile.am (gcc_version): New.
2027         * interception/Makefile.am (gcc_version): Likewise.
2028         * sanitizer_common/Makefile.am (gcc_version): Likewise.
2029         * configure: Regenerated.
2030         * asan/Makefile.in: Likewise.
2031         * interception/Makefile.in: Likewise.
2032         * sanitizer_common/Makefile.in: Likewise.
2034 2012-11-14  H.J. Lu  <hongjiu.lu@intel.com>
2036         PR other/55291
2037         * configure.ac (--enable-version-specific-runtime-libs): New option.
2038         (AC_CANONICAL_SYSTEM): New.
2039         (AM_ENABLE_MULTILIB): Moved right after AM_INIT_AUTOMAKE.
2040         (toolexecdir): Support multilib.
2041         (toolexeclibdir): Likewise.
2042         (multilib_arg): New.
2043         * Makefile.in: Regenerated.
2044         * aclocal.m4: Likewise.
2045         * configure: Likewise.
2046         * asan/Makefile.in: Likewise.
2047         * interception/Makefile.in: Likewise.
2048         * sanitizer_common/Makefile.in: Likewise.
2050 2012-11-14  H.J. Lu  <hongjiu.lu@intel.com>
2052         PR other/55292
2053         Backport from upstream revision 167883
2054         * sanitizer_common/sanitizer_linux.cc (internal_mmap): Check
2055         __x86_64__ instead of __WORDSIZE.
2056         (internal_filesize): Likwise.
2058 2012-11-14  H.J. Lu  <hongjiu.lu@intel.com>
2060         * configure.ac (AC_CONFIG_AUX_DIR): Removed.
2061         * Makefile.in: Regenerated.
2062         * configure: Likewise.
2064 2012-11-13  H.J. Lu  <hongjiu.lu@intel.com>
2066         PR other/55304
2067         * acinclude.m4: New file.
2068         * Makefile.am (ACLOCAL_AMFLAGS): New.
2069         * configure.ac (AC_PREREQ): Set to 2.64.
2070         (AC_CONFIG_AUX_DIR): Set to "..".
2071         * Makefile.in: Regenerated.
2072         * aclocal.m4: Likewise.
2073         * configure: Likewise.
2074         * asan/Makefile.in: Likewise.
2075         * interception/Makefile.in: Likewise.
2076         * sanitizer_common/Makefile.in: Likewise.
2078         * config.guess: Removed.
2079         * config.sub: Likewise.
2080         * depcomp: Likewise.
2081         * install-sh: Likewise.
2082         * ltmain.sh: Likewise.
2083         * missing: Likewise.
2085 2012-11-13  Richard Henderson  <rth@redhat.com>
2087         * configure.tgt: New file.
2089 2012-11-12  David S. Miller  <davem@davemloft.net>
2091         * asan/asan_linux.cc (GetPcSpBp): Add sparc support.
2093 2012-10-29  Wei Mi  <wmi@google.com>
2095         Initial checkin: migrate asan runtime from llvm.