summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Transform (sub 0, (zext bool to A)) to (sext bool to A) andPaul Redmond2013-01-214-4/+22
| | | | | | | | | (sub 0, (sext bool to A)) to (zext bool to A). Patch by Muhammad Ahmad Reviewed by Duncan Sands llvm-svn: 173093
* Docs for SparseMultiSetMichael Ilseman2013-01-211-0/+16
| | | | llvm-svn: 173092
* Fix some incorrectly named u10 / lu10 instructions.Richard Osborne2013-01-211-25/+12
| | | | llvm-svn: 173090
* Remove unneeded #include.Jakub Staszak2013-01-211-1/+0
| | | | llvm-svn: 173088
* Remove unused multiclass.Richard Osborne2013-01-211-12/+0
| | | | llvm-svn: 173087
* Add instruction encodings / disassembly support for u6 / lu6 instructions.Richard Osborne2013-01-213-59/+92
| | | | llvm-svn: 173086
* Add instruction encoding / disassembly support for ru6 / lru6 instructions.Richard Osborne2013-01-214-94/+177
| | | | llvm-svn: 173085
* Implement the ATOMIC_*_LOCK_FREE macros.Howard Hinnant2013-01-211-8/+12
| | | | llvm-svn: 173084
* Use correct format for the LDAWCP instruction (u6).Richard Osborne2013-01-211-7/+3
| | | | llvm-svn: 173083
* no functionality changes(split WriterELF into multiple files)Shankar Easwaran2013-01-218-1882/+2252
| | | | llvm-svn: 173082
* Give ModuleFiles an index, so that we can use indexed vectors ratherDouglas Gregor2013-01-212-20/+33
| | | | | | | than DenseMaps and SmallPtrSets for module-visitation data. ~2.6% speedup for modules. llvm-svn: 173081
* Eliminate Sema::CompareProperties(), which was walking over a pile ofDouglas Gregor2013-01-213-65/+68
| | | | | | | | | lexical declarations looking for properties when we could more efficiently check for property mismatches at property declaration time. Good for ~1% of -fsyntax-only time when most of the properties we're checking against come from an AST file. llvm-svn: 173079
* Formatter: Set MatchingParen for [], to match <>, (), {}. No functionality ↵Nico Weber2013-01-211-0/+2
| | | | | | change. llvm-svn: 173078
* Formatter: Rename LSquare to Left to make parseSquare() more consistent with ↵Nico Weber2013-01-211-8/+6
| | | | | | the other paren parsing methods. llvm-svn: 173077
* <rdar://problem/12437929>Enrico Granata2013-01-215-3/+136
| | | | | | | | | | | | | | | | | | Providing a special mode of operator for "memory read -f c-str" which actually works in most common cases Where the old behavior would provide: (lldb) mem read --format s `foo` 0x100000f5d: NULL Now we do: (lldb) mem read --format s `foo` 0x100000f5d: "hello world" You can also specify a count and that many strings will be showed starting at the initial address: (lldb) mem read -c 2 -f c-str `foo` 0x100000f1d: "hello world" 0x100000f29: "short" llvm-svn: 173076
* Fixes various problems around enum parsing.Manuel Klimek2013-01-212-31/+46
| | | | | | | | | | | | | | | | Very similar to what we do for record definitions: - tighten down what is an enum definition, so that we don't mistake a function for an enum - allow common idioms around declarations (we'll want to handle that more centrally in the future) We now correctly format: enum X f() { a(); return 42; } llvm-svn: 173075
* r173072 is causing some regressions on big endian hosts, I don't have time ↵Chris Lattner2013-01-211-49/+21
| | | | | | | | to debug it so revert it for now. llvm-svn: 173074
* Eliminate the oddly-named Sema::ComparePropertiesInBaseAndSuper, whichDouglas Gregor2013-01-213-60/+41
| | | | | | | | | | did a redundant traversal of the lexical declarations in the superclass. Instead, when we declare a new property, look into the superclass to see whether we're redeclaring the property. Goot for 1% of -fsyntax-only time on Cocoa.h and a little less than 3% on my modules test case. llvm-svn: 173073
* rework the Bitstream reader to actually work a machine word at a time, ↵Chris Lattner2013-01-211-21/+49
| | | | | | | | | instead of 32-bits at a time. This cuts in half the number of virtual methods called to refill that word when compiling on a 64-bit host, and will make 64-bit read operations faster. llvm-svn: 173072
* [ASTUnit] Unlike LoadFromCommandLine, LoadFromCompilerInvocation causes a ↵Argyrios Kyrtzidis2013-01-211-0/+2
| | | | | | | | | | crash if Precompilepreamble is set to true because there is no FileManager at that point. Patch by Hurcan Solter! llvm-svn: 173071
* [analyzer] Fix test for r173067.Jordan Rose2013-01-211-110/+110
| | | | | | | Note to self: don't remove comments /after/ updating the line-sensitive part of a test. llvm-svn: 173070
* Replace some unnecessary O(N^2) lookups for properties withDouglas Gregor2013-01-211-40/+53
| | | | | | | DeclContext lookups. The performance win is negligible in my tests, but it's the Right Thing To Do (TM). llvm-svn: 173068
* [analyzer] Show notes inside implicit calls at the last explicit call site.Jordan Rose2013-01-212-129/+132
| | | | | | | | | | | | | | | | | | | Before: struct Wrapper { <-- 2. Calling default constructor for 'NonTrivial'. NonTrivial m; }; Wrapper w; <-- 1. Calling implicit default constructor for 'Wrapper'. After: struct Wrapper { NonTrivial m; }; Wrapper w; <-- 1. Calling implicit default constructor for 'Wrapper'. ^-- 2. Calling default constructor for 'NonTrivial'. llvm-svn: 173067
* ReadSourceManagerBlock is skipping over records that can contain Blobs. Not ↵Chris Lattner2013-01-211-1/+2
| | | | | | | | | passing in a StringRef to bind to them forces them to be unpacked into the Record as individual bytes. This is wasteful, but not likely to be measurable in this instance. llvm-svn: 173066
* Fix a heinous inefficiency introduced in r149918, wherein reading each byte of aChris Lattner2013-01-212-15/+8
| | | | | | | | BLOB (i.e., large, performance intensive data) in a bitcode file was switched to invoking one virtual method call per byte read. Now we do one virtual call per BLOB. llvm-svn: 173065
* Introduce a new data structure, the SparseMultiSet, and changes to the MI ↵Michael Ilseman2013-01-215-91/+804
| | | | | | | | scheduler to use it. A SparseMultiSet adds multiset behavior to SparseSet, while retaining SparseSet's desirable properties. Essentially, SparseMultiSet provides multiset behavior by storing its dense data in doubly linked lists that are inlined into the dense vector. This allows it to provide good data locality as well as vector-like constant-time clear() and fast constant time find(), insert(), and erase(). It also allows SparseMultiSet to have a builtin recycler rather than keeping SparseSet's behavior of always swapping upon removal, which allows it to preserve more iterators. It's often a better alternative to a SparseSet of a growable container or vector-of-vector. llvm-svn: 173064
* wean Blob handling logic off of banging on NextChar directly. Instead, makeChris Lattner2013-01-211-10/+13
| | | | | | | it reason about the current bit position, which is always independent of the underlying cursors word size. llvm-svn: 173063
* rename "SkipToWord" to "SkipToFourByteBoundary" since a word is not always 4 ↵Chris Lattner2013-01-212-6/+6
| | | | | | bytes. llvm-svn: 173062
* Fix a comment. Induction vars dont need to start at zero.Nadav Rotem2013-01-211-1/+1
| | | | llvm-svn: 173061
* Donated anonymously: This enables GCC 4.8.0 to build libc++.Howard Hinnant2013-01-212-2/+2
| | | | llvm-svn: 173060
* Revert r173056; it breaks one of the CodeGen-with-PCH tests.Douglas Gregor2013-01-212-34/+12
| | | | llvm-svn: 173058
* When loading an identifier from an AST file solely for the purpose ofDouglas Gregor2013-01-212-12/+34
| | | | | | | | | | forming the identifier, e.g., as part of a selector or a declaration name, don't actually deserialize any information about the identifier. Instead, simply mark it "out-of-date" and we'll load the the information on demand. 2% speedup on the modules testcase I'm looking at; should also help PCH. llvm-svn: 173056
* Fixes formatting of empty blocks.Manuel Klimek2013-01-216-112/+128
| | | | | | | | | | | | | | | | We now only put empty blocks into a single line, if all of: - all tokens of the structural element fit into a single line - we're not in a control flow statement Note that we usually don't put record definitions into a single line, as there's usually at least one more token (the semicolon) after the closing brace. This doesn't hold when we are in a context where there is no semicolon, like "enum E {}". There were some missing tests around joining lines around the corner cases of the allowed number of columns, so this patch adds some. llvm-svn: 173055
* When deserializing a declaration, don't look for redeclarations if itsDouglas Gregor2013-01-214-15/+81
| | | | | | | kind indicates that it can never be redeclared. Good for a 1% speedup, and redeclaration searching drops off the profile. llvm-svn: 173054
* R600/SI: Use unnormalized coordinates for sampling with the RECT target.Tom Stellard2013-01-212-0/+13
| | | | | | | | | Patch by: Michel Dänzer Reviewed-by: Tom Stellard <thomas.stellard@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 173053
* R600/SI: Take target parameter for sample intrinsics.Tom Stellard2013-01-212-4/+4
| | | | | | | | | Patch by: Michel Dänzer Reviewed-by: Tom Stellard <thomas.stellard@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 173052
* R600/SI: Derive all sample intrinsics from a single class.Tom Stellard2013-01-211-3/+5
| | | | | | | | | Patch by: Michel Dänzer Reviewed-by: Tom Stellard <thomas.stellard@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 173051
* Introduce a fast path for the ASTReader's name lookup within aDouglas Gregor2013-01-215-3/+104
| | | | | | | | | DeclContext. When the DeclContext is of a kind that can only be defined once and never updated, we limit the search to the module file that conatins the lookup table. Provides a 15% speedup in one modules-heavy source file. llvm-svn: 173050
* [asan] fix linux buildKostya Serebryany2013-01-211-9/+9
| | | | llvm-svn: 173049
* [ASan] Move Mac-specific tests to asan_mac_test.ccAlexander Potapenko2013-01-214-232/+249
| | | | llvm-svn: 173048
* Fix parsing of templated declarations.Daniel Jasper2013-01-214-9/+7
| | | | | | | | | | Before: template <template <typename T>, typename P > class X; After: template <template <typename T>, typename P> class X; More importantly, the token annotations for the second ">" are now computed correctly. llvm-svn: 173047
* Removing empty loop-convert directoryEdwin Vane2013-01-210-0/+0
| | | | llvm-svn: 173046
* Fixes indent in linkage specification blocks.Manuel Klimek2013-01-212-0/+16
| | | | | | | | | | | We now indent: extern "C" { int a; } without additional indent inside the extern "C" block. llvm-svn: 173045
* CMake: generalize checking for target availability and add initial support ↵Alexey Samsonov2013-01-213-28/+32
| | | | | | for PowerPC native arch. With this patch, building LLVM on PowerPC native arch produces a working ASan runtime. llvm-svn: 173044
* Fix bug discovered by valgrind.Daniel Jasper2013-01-211-2/+3
| | | | | | | When trying to merge lines, we should not touch lines that are invalid, as we don't know how long they might be. llvm-svn: 173043
* Add regression test.Manuel Klimek2013-01-211-0/+7
| | | | llvm-svn: 173042
* AST/VTableBuilder.h: Suppress a warning. [-Wunused-private-field]NAKAMURA Takumi2013-01-211-0/+1
| | | | llvm-svn: 173041
* R600/SILowerControlFlow.cpp: Fix a warning. [-Wunused-variable]NAKAMURA Takumi2013-01-211-3/+2
| | | | llvm-svn: 173040
* Fixes detection of class template specializations.Manuel Klimek2013-01-212-1/+22
| | | | | | | Now correctly formats: template <> class A<int> {} a; llvm-svn: 173038
* [sanitizer] Disable scanf interceptor on windows.Evgeniy Stepanov2013-01-211-1/+1
| | | | llvm-svn: 173037
OpenPOWER on IntegriCloud