summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Make this use -### instead of a temporary output.Eric Christopher2013-10-031-1/+1
| | | | llvm-svn: 191921
* Make gep i8* X, -(ptrtoint Y) transform work with address spacesMatt Arsenault2013-10-032-8/+23
| | | | llvm-svn: 191920
* A more thorough fix for the newlines issueEnrico Granata2013-10-031-0/+2
| | | | llvm-svn: 191919
* Test commit. Fixed a copy-paste error in the Makefile for lib/LTO.Tom Roeder2013-10-031-1/+1
| | | | llvm-svn: 191918
* Give this a temporary output so it is cleaned up.Eric Christopher2013-10-031-1/+1
| | | | llvm-svn: 191917
* [llvm-c][Disassembler] When printing latency information, fall back to theQuentin Colombet2013-10-032-1/+34
| | | | | | | | | | | 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
* Make sure we emit a section for pubnames even if that section isEric Christopher2013-10-032-3/+18
| | | | | | | 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
* Fix cut and paste typo.Eric Christopher2013-10-031-2/+2
| | | | llvm-svn: 191914
* tsan: add memory_limit_mb flagDmitry Vyukov2013-10-035-2/+41
| | | | | | | 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
* Ignore -mieee-fp.Rafael Espindola2013-10-032-0/+4
| | | | | | | 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
* raw_fd_ostream: Be more verbose about the reason when opening a file fails.Benjamin Kramer2013-10-031-1/+2
| | | | llvm-svn: 191911
* [analyzer] Replace bug category magic strings with shared constants.Jordan Rose2013-10-035-7/+10
| | | | | | | | | | 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
* [analyzer] Add new debug helper clang_analyzer_warnIfReached.Jordan Rose2013-10-034-42/+54
| | | | | | | | | | | | | 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
* asan/msan/tsan: fix broken linux syscallsDmitry Vyukov2013-10-031-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* [libclang] python: expose a few functions, patch by Loïc Jaquemet!Argyrios Kyrtzidis2013-10-032-0/+46
| | | | llvm-svn: 191907
* [libclang] Introduce clang_Type_getClassType which returns the class type of ↵Argyrios Kyrtzidis2013-10-035-1/+44
| | | | | | | | a member pointer type. Patch by Che-Liang Chiou! llvm-svn: 191906
* Added checking code whehter target supports specific dag combining about rotateJin-Gu Kang2013-10-031-11/+19
| | | | | | | | | | | | | | | | | | | | | | | 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
* asan/msan: fix "unused function 'OnExit'" warningDmitry Vyukov2013-10-032-2/+6
| | | | llvm-svn: 191904
* asan/msan/tsan: move _exit interceptor to common interceptorsDmitry Vyukov2013-10-035-11/+41
| | | | llvm-svn: 191903
* tsan: include lsan into presubmit checkDmitry Vyukov2013-10-031-0/+1
| | | | llvm-svn: 191902
* Fix test to work on Linux hosts by specifying triple.Tim Northover2013-10-031-2/+1
| | | | | | Thought I'd checked that before llvm-svn: 191901
* ARM: *-*-darwin-eabi triples should use AAPCS.Tim Northover2013-10-032-1/+9
| | | | llvm-svn: 191900
* tsan: fix false positive in localtime()Dmitry Vyukov2013-10-032-3/+13
| | | | llvm-svn: 191899
* tsan: intercept _exit so that we can override exit statusDmitry Vyukov2013-10-034-10/+25
| | | | llvm-svn: 191898
* tsan: ignore interceptors coming from specified librariesDmitry Vyukov2013-10-0326-63/+430
| | | | | | | | | | | | | 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
* CaptureTracking: Plug a loophole in the "too many uses" heuristic.Benjamin Kramer2013-10-031-0/+6
| | | | | | | | | | 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
* clang-formatTobias Grosser2013-10-031-2/+1
| | | | llvm-svn: 191895
* Use LLVM_DELETED_FUNCTION instead of a commentTobias Grosser2013-10-035-36/+20
| | | | | Contributed-by: Michael Kruse <MichaelKruse@meinersbur.de> llvm-svn: 191894
* ScopInfo: Do not include "isl/int.h" any moreTobias Grosser2013-10-031-1/+0
| | | | | | | We already removed all uses of isl_int in ScopInfo. Contributed-by: Michael Kruse <MichaelKruse@meinersbur.de> llvm-svn: 191893
* ScopInfo: Fix typosTobias Grosser2013-10-031-12/+12
| | | | | Contributed-by: Michael Kruse <MichaelKruse@meinersbur.de> llvm-svn: 191892
* [arm] Enhance the test case by checking .fpu directive.Logan Chien2013-10-031-0/+1
| | | | llvm-svn: 191891
* Gracefully (and correctly) handle init of multiple union membersMatthew Curtis2013-10-034-2/+132
| | | | | | | | | | | | | | | 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
* AVX-512: Fixed encoding of VMOVQ instruction.Elena Demikhovsky2013-10-031-3/+3
| | | | llvm-svn: 191889
* Update web pages to include style sheets and referenced documents missed before.Jim Cownie2013-10-035-13/+10613
| | | | llvm-svn: 191888
* [ARM] Warn on deprecated IT blocks in v8 AArch32 assembly.Amara Emerson2013-10-039-92/+9888
| | | | | | Patch by Artyom Skrobov. llvm-svn: 191885
* Remove wild .debug_aranges entries generated from unimportant labelsAlexey Samsonov2013-10-034-22/+98
| | | | | | | | | | | | | | | | 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
* [asan] Don't require X86 to build Android runtime.Evgeniy Stepanov2013-10-031-1/+2
| | | | | | Patch by Greg Fitzgerald. llvm-svn: 191883
* Change two new logging messages from verbose-only to non-verboseJason Molenda2013-10-031-2/+2
| | | | | | | in the unwinder - they're important to flag when debugging an unwind problem. llvm-svn: 191882
* typo fixed as a test commitAndrey Churbanov2013-10-031-1/+1
| | | | llvm-svn: 191881
* Replace C++ style comment with a C style comment to satisfy some of the ↵Craig Topper2013-10-031-1/+1
| | | | | | build bots. llvm-svn: 191880
* Teach TreeTransform and family how to transform generic lambdas within ↵Faisal Vali2013-10-035-48/+630
| | | | | | | | | | | | | | | | | templates and nested within themselves. This does not yet include capturing (that is next). Please see test file for examples. This patch was LGTM'd by Doug: http://llvm-reviews.chandlerc.com/D1784 http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20130930/090048.html When I first committed this patch - a bunch of buildbots were unable to compile the code that VS2010 seemed to compile. Seems like there was a dependency on Sema/Template.h which VS did not seem to need, but I have now added for the other compilers. It still compiles on Visual Studio 2010 - lets hope the buildbots remain quiet (please!) llvm-svn: 191879
* Extract ABI-specific parts of MangleContext into separate classesTimur Iskhodzhanov2013-10-039-192/+184
| | | | | | Reviewed at http://llvm-reviews.chandlerc.com/D1807 llvm-svn: 191878
* Remove comma from the end of an enum.Craig Topper2013-10-031-1/+1
| | | | llvm-svn: 191877
* Revert changes from the nested lambdas commit till i figure out Faisal Vali2013-10-035-629/+48
| | | | | | why the buildbots are failing. llvm-svn: 191876
* Teach TreeTransform and family how to transform generic lambdas within ↵Faisal Vali2013-10-035-48/+629
| | | | | | | | | | | | | | templates and nested within themselves. This does not yet include capturing (that is next). Please see test file for examples. This patch was LGTM'd by Doug: http://llvm-reviews.chandlerc.com/D1784 llvm-svn: 191875
* Add XOP disassembler support. Fixes PR13933.Craig Topper2013-10-0310-129/+383
| | | | llvm-svn: 191874
* Remove duplicated test cases that occurred when I applied the same patch ↵Craig Topper2013-10-031-233/+0
| | | | | | file to my model twice. llvm-svn: 191873
* Change __builtin_ia32_bextri_u64 to take an i64imm to match up with LLVM ↵Craig Topper2013-10-033-2/+7
| | | | | | | | | | backend changes. An explicit cast is still needed in tbmintrin.h to convert any big integer down to i32imm. Patch from Yunzhong Gao. llvm-svn: 191872
* Add patterns for selecting TBM instructions from logical operations. Patch ↵Craig Topper2013-10-035-36/+568
| | | | | | from Yunzhong Gao. llvm-svn: 191871
* Add v4f16 to supported value types.Pete Cooper2013-10-035-29/+40
| | | | | | This is useful for some ARM intrinsics such as VCVTN which does a <4 x float> <-> <4 x half> conversion. llvm-svn: 191870
OpenPOWER on IntegriCloud