summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix signal handling for POSIX (only tested on Linux) processes in ↵Matt Kopec2013-07-093-22/+89
| | | | | | | | multi-threaded programs. Also fix a related issue where if a thread exits after a thread continue, lldb would hang. llvm-svn: 185944
* R600: Do not predicated basic block with multiple alu clauseVincent Lejeune2013-07-097-8/+65
| | | | | | | | | Test is not included as it is several 1000 lines long. To test this functionnality, a test case must generate at least 2 ALU clauses, where an ALU clause is ~110 instructions long. NOTE: This is a candidate for the stable branch. llvm-svn: 185943
* R600: Fix a rare bug where swizzle optimization returns wrong valuesVincent Lejeune2013-07-092-2/+37
| | | | llvm-svn: 185942
* R600: Fix wrong export reswizzlingVincent Lejeune2013-07-092-4/+100
| | | | llvm-svn: 185941
* R600: Use DAG lowering pass to handle fcos/fsinVincent Lejeune2013-07-096-23/+58
| | | | | NOTE: This is a candidate for the stable branch. llvm-svn: 185940
* R600: Print Export SwizzleVincent Lejeune2013-07-091-2/+2
| | | | llvm-svn: 185939
* Initial support for formatting trailing return types.Daniel Jasper2013-07-094-3/+23
| | | | | | | | | | | | This fixes llvm.org/PR15170. For now, the basic formatting rules are (based on the C++11 standard): * Surround the "->" with spaces. * Break before "->". Also fix typo. llvm-svn: 185938
* Add missing getters. They will be used in llvm-ar.Rafael Espindola2013-07-092-0/+46
| | | | llvm-svn: 185937
* Archive members cannot be larger than 4GB. Return a uint32_t.Rafael Espindola2013-07-092-6/+7
| | | | llvm-svn: 185936
* [sanitizer] Update glob64 interceptor to handle GLOB_ALTDIRFUNC as well.Evgeniy Stepanov2013-07-093-0/+23
| | | | llvm-svn: 185935
* We never compare iterators from two archives. Assert that.Rafael Espindola2013-07-091-1/+2
| | | | llvm-svn: 185934
* Add getHeader helper and move ToHeader to the cpp file.Rafael Espindola2013-07-092-7/+11
| | | | llvm-svn: 185933
* [sanitizer] Support GLOB_ALTDIRFUNC in glob interceptor.Evgeniy Stepanov2013-07-097-4/+158
| | | | llvm-svn: 185932
* ArrayRef'ize Sema::FinalizeDeclaratorGroup, Sema::BuildDeclaratorGroup andRafael Espindola2013-07-098-43/+37
| | | | | | | | Sema::ActOnDocumentableDecls. Patch by Robert Wilhelm. llvm-svn: 185931
* Avoid confusing indentations for chained function calls.Daniel Jasper2013-07-092-5/+28
| | | | | | | | | | | | | | | | | | | Basically treat a function with a trailing call similar to a function with multiple parameters. Before: aaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa( aaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaa)) .aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(); After: aaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa( aaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaa)) .aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(); Also fix typo. llvm-svn: 185930
* Add MC assembly/disassembly support for VRINT{A, N, P, M} to V8FP.Joey Gouly2013-07-095-3/+102
| | | | llvm-svn: 185929
* c-index-test/CMakeLists.txt: Suggest -isystem to include libxml2 with ↵NAKAMURA Takumi2013-07-091-1/+1
| | | | | | include_directories(SYSTEM). llvm-svn: 185928
* c-index-test/Makefile: Use -isystem instead of -I on $(LIBXML2_INC) with ↵NAKAMURA Takumi2013-07-091-0/+8
| | | | | | | | | -Wdocumentation. -Wdocumentation won't seek -isystem. LIBXML2's headers in a certain distro might be incompatible to -Wdocumentation. FIXME: Could autoconf detect clang or availability of -isystem? llvm-svn: 185927
* Add MC assembly/disassembly support for VRINT{Z, X, R} to V8FP.Joey Gouly2013-07-093-0/+55
| | | | llvm-svn: 185926
* Document LLVM_USE_SANITIZER CMake optionAlexey Samsonov2013-07-091-0/+5
| | | | llvm-svn: 185925
* [PowerPC] Support ".machine any"Ulrich Weigand2013-07-092-0/+41
| | | | | | | | | | | | The PowerPC assembler is supposed to provide a directive .machine that allows switching the supported CPU instruction set on the fly. Since we do not yet check CPU feature sets at all and always accept any available instruction, this is not really useful at this point. However, it makes sense to accept (and ignore) ".machine any" to avoid spuriously rejecting existing assembler files that use this. llvm-svn: 185924
* Revert r185872 - "Stop emitting weak symbols into the "coal" sections"Alexander Potapenko2013-07-093-83/+10
| | | | | | | | | | | | | This patch broke `make check-asan` on Mac, causing ld warnings like the following one: ld: warning: direct access in __GLOBAL__I_a to global weak symbol ___asan_mapping_scale means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings. The resulting test binaries crashed with incorrect ASan warnings. llvm-svn: 185923
* Add MC assembly/disassembly support for VCVT{A, N, P, M} to V8FP.Joey Gouly2013-07-095-6/+173
| | | | llvm-svn: 185922
* [sanitizer] Intercept realpath and canonicalize_file_name.Evgeniy Stepanov2013-07-099-10/+74
| | | | | | Handle realpath(path, NULL) form. llvm-svn: 185921
* [sanitizer] Wrap lines >80 chars.Evgeniy Stepanov2013-07-091-2/+4
| | | | llvm-svn: 185920
* [SystemZ] Use MVC for simple load/store pairsRichard Sandiford2013-07-096-2/+506
| | | | | | | | | | | | Look for patterns of the form (store (load ...), ...) in which the two locations are known not to partially overlap. (Identical locations are OK.) These sequences are better implemented by MVC unless either the load or the store could use RELATIVE LONG instructions. The testcase showed that we weren't using LHRL and LGHRL for extload16, only sextloadi16. The patch fixes that too. llvm-svn: 185919
* [SystemZ] Use "STC;MVC" for memsetRichard Sandiford2013-07-097-0/+1171
| | | | | | | | | | | | Use "STC;MVC" for memsets that are too big for two STCs or MV...Is yet small enough for a single MVC. As with memcpy, I'm leaving longer cases till later. The number of tests might seem excessive, but f33 & f34 from memset-04.ll failed the first cut because I'd not added the "?:" on the calculation of Size1. llvm-svn: 185918
* [asan] Fix windows build.Evgeniy Stepanov2013-07-091-2/+6
| | | | llvm-svn: 185917
* InstCombine: Fix typo in comment for visitICmpInstWithInstAndIntCstDavid Majnemer2013-07-091-2/+2
| | | | llvm-svn: 185916
* InstCombine: variations on 0xffffffff - x >= 4David Majnemer2013-07-092-0/+30
| | | | | | | | | | The following transforms are valid if -C is a power of 2: (icmp ugt (xor X, C), ~C) -> (icmp ult X, C) (icmp ult (xor X, C), -C) -> (icmp uge X, C) These are nice, they get rid of the xor. llvm-svn: 185915
* Fix alignment of closing brace in braced initializers.Daniel Jasper2013-07-095-33/+43
| | | | | | | | | | | | | | | | | | | | | | Before: someFunction(OtherParam, BracedList{ // comment 1 (Forcing intersting break) param1, param2, // comment 2 param3, param4 }); After: someFunction(OtherParam, BracedList{ // comment 1 (Forcing intersting break) param1, param2, // comment 2 param3, param4 }); To do so, the UnwrappedLineParser now stores the information about the kind of brace in the FormatToken. llvm-svn: 185914
* [sanitizer] Syscall handlers for clock_gettime and clock_getres.Evgeniy Stepanov2013-07-093-4/+39
| | | | llvm-svn: 185913
* InstCombine: X & -C != -C -> X <= u ~CDavid Majnemer2013-07-092-40/+9
| | | | | | Tests were added in r185910 somehow. llvm-svn: 185912
* [PowerPC] Support .llong and fix .wordUlrich Weigand2013-07-094-2/+60
| | | | | | | | This adds support for the .llong PowerPC-specifc assembler directive. In doing so, I notices that .word is currently incorrect: it is supposed to define a 2-byte data element, not a 4-byte one. llvm-svn: 185911
* Commit r185909 was a misapplied patch, fix itDavid Majnemer2013-07-093-24/+73
| | | | llvm-svn: 185910
* InstCombine: add more transformsDavid Majnemer2013-07-094-5/+87
| | | | | | | | | C1-X <u C2 -> (X|(C2-1)) == C1 C1-X >u C2 -> (X|C2) == C1 X-C1 <u C2 -> (X & -C2) == C1 X-C1 >u C2 -> (X & ~C2) == C1 llvm-svn: 185909
* Format overloaded operators like other functions.Daniel Jasper2013-07-093-5/+15
| | | | | | | | | | | | | | This fixes llvm.org/PR16328 (at least partially). Before: SomeLoooooooooooooooooooooooooooooogType operator<<( const SomeLooooooooogType &a, const SomeLooooooooogType &b); After: SomeLoooooooooooooooooooooooooooooogType operator<<(const SomeLooooooooogType &a, const SomeLooooooooogType &b); llvm-svn: 185908
* PPC: Allocate RS spill slot for unaligned i64 load/storeHal Finkel2013-07-092-2/+152
| | | | | | | | | | | | | | | | | | | This fixes another bug found by llvm-stress! If we happen to be doing an i64 load or store into a stack slot that has less than a 4-byte alignment, then the frame-index elimination may need to use an indexed load or store instruction (because the offset may not be a multiple of 4, a requirement of the STD/LD instructions). The extra register needed to hold the offset comes from the register scavenger, and it is possible that the scavenger will need to use an emergency spill slot. As a result, we need to make sure that a spill slot is allocated when doing an i64 load/store into a less-than-4-byte-aligned stack slot. Because test cases for things like this tend to be fairly fragile, I've concatenated a few small bugpoint-reduced test cases together to form the regression test. llvm-svn: 185907
* Add the frame content dumper function call to one more place.Jason Molenda2013-07-091-0/+2
| | | | llvm-svn: 185906
* Compute the size of an archive member in the constructor.Rafael Espindola2013-07-092-16/+15
| | | | | | | It is always computed the same way (by parsing the header). Doing it in the constructor simplifies the callers a bit. llvm-svn: 185905
* Remove declare but not implemented methods.Rafael Espindola2013-07-091-4/+0
| | | | llvm-svn: 185904
* Add new information gathering to the lldb & simple backtrace methods:Jason Molenda2013-07-091-5/+30
| | | | | | | print five words of memory at the beginning of the stack frame so it's easier to track where an incorrect saved-fp or saved-pc may have come from. llvm-svn: 185903
* [PECOFF][Writer] Compute the size of a chunk each time it's added rather ↵Rui Ueyama2013-07-091-42/+34
| | | | | | | | | | | | | | | than all at once. Contents of ".reloc" section depends on the addresses of other sections, so the section cannot be created until all the other sections are created and get their memory addresses (RVAs). That means that computation of section size needs to be at least two pass. Techynically there's no reason to compute it all at once, but instead we can compute the address of a section as added to the output file. Doing so helps us to create ".reloc" section. llvm-svn: 185902
* Move some code out of line. No functionality change.Rafael Espindola2013-07-092-65/+76
| | | | llvm-svn: 185901
* X86: Add comment.Jim Grosbach2013-07-091-0/+5
| | | | llvm-svn: 185900
* X86 fast-isel: Avoid explicit AH subreg reference for [SU]Rem.Jim Grosbach2013-07-091-4/+31
| | | | | | | | | | | | | Explicit references to %AH for an i8 remainder instruction can lead to references to %AH in a REX prefixed instruction, which causes things to blow up. Do the same thing in FastISel as we do for DAG isel and instead shift %AX right by 8 bits and then extract the 8-bit subreg from that result. rdar://14203849 http://llvm.org/bugs/show_bug.cgi?id=16105 llvm-svn: 185899
* [analyzer] Fixup for r185609: actually do suppress warnings coming out of ↵Anna Zaks2013-07-092-5/+11
| | | | | | | | | | | std::list. list is the name of a class, not a namespace. Change the test as well - the previous version did not test properly. Fixes radar://14317928. llvm-svn: 185898
* Fix recovery for missing * in objc property.Eli Friedman2013-07-092-2/+18
| | | | | | <rdar://problem/14354144> llvm-svn: 185897
* Don't give # and ## special treatment when in -traditional-cpp mode. Patch byRichard Smith2013-07-092-0/+29
| | | | | | Austin Seipp! llvm-svn: 185896
* Generalize hack allowing 'const' in __has_attribute (etc) to allow any tokenRichard Smith2013-07-092-3/+5
| | | | | | | with identifier info. This covers most identifier-like entities (other than the ISO646 keywords). llvm-svn: 185895
OpenPOWER on IntegriCloud