- Oct 03, 2013
-
-
Rafael Espindola authored
Generalize the API so we can distinguish symbols that are needed just for a DSO symbol table from those that are used from some native .o. The symbols that are only wanted for the dso symbol table can be dropped if llvm can prove every other dso has a copy (linkonce_odr) and the address is not important (unnamed_addr). llvm-svn: 191922
-
Eric Christopher authored
llvm-svn: 191921
-
Matt Arsenault authored
llvm-svn: 191920
-
Enrico Granata authored
llvm-svn: 191919
-
Tom Roeder authored
llvm-svn: 191918
-
Eric Christopher authored
llvm-svn: 191917
-
Quentin Colombet authored
itinerary model in case the target does not supply a scheduling model. By doing this, targets like cortex-a8 can benefit from the latency printing feature added in r191859. This part of <rdar://problem/14687488>. llvm-svn: 191916
-
Eric Christopher authored
going to be empty. This is particularly important for the gnu pubnames case since we're emitting a relocation to the section. llvm-svn: 191915
-
Eric Christopher authored
llvm-svn: 191914
-
Dmitry Vyukov authored
The flag allows to bound maximum process memory consumption (best effort). If RSS reaches memory_limit_mb, tsan flushes all shadow memory. llvm-svn: 191913
-
Rafael Espindola authored
It looks like clang always produce code with the ieee comparisons, so it is safe to ignore this flag (we still error on -mno-ieee-fp). llvm-svn: 191912
-
Benjamin Kramer authored
llvm-svn: 191911
-
Jordan Rose authored
One small functionality change is to bring the sizeof-pointer checker in line with the other checkers by making its category be "Logic error" instead of just "Logic". There should be no other functionality changes. Patch by Daniel Marjamäki! llvm-svn: 191910
-
Jordan Rose authored
This will emit a warning if a call to clang_analyzer_warnIfReached is executed, printing REACHABLE. This is a more explicit way to declare expected reachability than using clang_analyzer_eval or triggering a bug (divide-by-zero or null dereference), and unlike the former will work the same in inlined functions and top-level functions. Like the other debug helpers, it is part of the debug.ExprInspection checker. Patch by Jared Grubb! llvm-svn: 191909
-
Dmitry Vyukov authored
Currently the following source code: u64 NanoTime() { kernel_timeval tv = {}; internal_syscall(__NR_gettimeofday, &tv, 0); return (u64)tv.tv_sec * 1000*1000*1000 + tv.tv_usec * 1000; } generates the following assembly: Dump of assembler code for function __sanitizer::NanoTime(): => 0x00007ff30657d380 <+0>: lea -0x10(%rsp),%rdi 0x00007ff30657d385 <+5>: xor %esi,%esi 0x00007ff30657d387 <+7>: mov $0x60,%eax 0x00007ff30657d38c <+12>: syscall 0x00007ff30657d38e <+14>: mov $0,%eax 0x00007ff30657d393 <+19>: retq with this change: Dump of assembler code for function __sanitizer::NanoTime(): => 0x00007faab834f380 <+0>: movq $0x0,-0x10(%rsp) 0x00007faab834f389 <+9>: movq $0x0,-0x8(%rsp) 0x00007faab834f392 <+18>: lea -0x10(%rsp),%rdi 0x00007faab834f397 <+23>: xor %esi,%esi 0x00007faab834f399 <+25>: mov $0x60,%eax 0x00007faab834f39e <+30>: syscall 0x00007faab834f3a0 <+32>: mov -0x8(%rsp),%rax 0x00007faab834f3a5 <+37>: mov -0x10(%rsp),%rcx 0x00007faab834f3aa <+42>: imul $0x3e8,%rax,%rdx 0x00007faab834f3b1 <+49>: imul $0x3b9aca00,%rcx,%rax 0x00007faab834f3b8 <+56>: add %rdx,%rax 0x00007faab834f3bb <+59>: retq llvm-svn: 191908
-
Argyrios Kyrtzidis authored
llvm-svn: 191907
-
Argyrios Kyrtzidis authored
Patch by Che-Liang Chiou! llvm-svn: 191906
-
Jin-Gu Kang authored
or not. The corresponding dag patterns are as following: "DAGCombier::MatchRotate" function in DAGCombiner.cpp Pattern1 // fold (or (shl (*ext x), (*ext y)), // (srl (*ext x), (*ext (sub 32, y)))) -> // (*ext (rotl x, y)) // fold (or (shl (*ext x), (*ext y)), // (srl (*ext x), (*ext (sub 32, y)))) -> // (*ext (rotr x, (sub 32, y))) pattern2 // fold (or (shl (*ext x), (*ext (sub 32, y))), // (srl (*ext x), (*ext y))) -> // (*ext (rotl x, y)) // fold (or (shl (*ext x), (*ext (sub 32, y))), // (srl (*ext x), (*ext y))) -> // (*ext (rotr x, (sub 32, y))) llvm-svn: 191905
-
Dmitry Vyukov authored
llvm-svn: 191904
-
Dmitry Vyukov authored
llvm-svn: 191903
-
Dmitry Vyukov authored
llvm-svn: 191902
-
Tim Northover authored
Thought I'd checked that before llvm-svn: 191901
-
Tim Northover authored
llvm-svn: 191900
-
Dmitry Vyukov authored
llvm-svn: 191899
-
Dmitry Vyukov authored
llvm-svn: 191898
-
Dmitry Vyukov authored
LibIgnore allows to ignore all interceptors called from a particular set of dynamic libraries. LibIgnore remembers all "called_from_lib" suppressions from the provided SuppressionContext; finds code ranges for the libraries; and checks whether the provided PC value belongs to the code ranges. Also make malloc and friends interceptors use SCOPED_INTERCEPTOR_RAW instead of SCOPED_TSAN_INTERCEPTOR, because if they are called from an ignored lib, then must call our internal allocator instead of libc malloc. llvm-svn: 191897
-
Benjamin Kramer authored
The heuristic was added to avoid spending too much compile time A specially crafted test case (PR17461, PR16474) with many uses on a select or bitcast instruction can still trigger the slow case. Add a check for that case. This only affects compile time, don't have a good way to test it. llvm-svn: 191896
-
Tobias Grosser authored
llvm-svn: 191895
-
Tobias Grosser authored
Contributed-by:
Michael Kruse <MichaelKruse@meinersbur.de> llvm-svn: 191894
-
Tobias Grosser authored
We already removed all uses of isl_int in ScopInfo. Contributed-by:
Michael Kruse <MichaelKruse@meinersbur.de> llvm-svn: 191893
-
Tobias Grosser authored
Contributed-by:
Michael Kruse <MichaelKruse@meinersbur.de> llvm-svn: 191892
-
Logan Chien authored
llvm-svn: 191891
-
Matthew Curtis authored
We now emit warnings when doing so and code generation is consistent with GCC. Note that the C99 spec is unclear as to the precise behavior. See also ... Bug: http://llvm.org/bugs/show_bug.cgi?id=16644 and cfe-dev discussion: http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-September/031918.html llvm-svn: 191890
-
Elena Demikhovsky authored
llvm-svn: 191889
-
Jim Cownie authored
llvm-svn: 191888
-
Amara Emerson authored
Patch by Artyom Skrobov. llvm-svn: 191885
-
Alexey Samsonov authored
r191052 added emitting .debug_aranges to Clang, but this functionality is broken: it uses all MC labels added in DWARF Asm printer, including the labels for build relocations between different DWARF sections, like .Lsection_line or .Ldebug_loc0. As a result, if any DIE .debug_info would contain "DW_AT_location=0x123" attribute, .debug_aranges would also contain a range starting from 0x123, breaking tools that rely on this section. This patch fixes this by using only MC labels that corresponds to the addresses in the user program. llvm-svn: 191884
-
Evgeniy Stepanov authored
Patch by Greg Fitzgerald. llvm-svn: 191883
-
Jason Molenda authored
in the unwinder - they're important to flag when debugging an unwind problem. llvm-svn: 191882
-
Andrey Churbanov authored
llvm-svn: 191881
-