- Jan 21, 2013
-
-
rdar://problem/13020634Greg Clayton authored
Fixed the 32, 16, and 8 bit pseudo regs for x86_64 (real reg of "rax" which subvalues "eax", "ax", etc...) to correctly get updated when stepping. Also fixed it so actual registers can specify what other registers must be invalidated when a register is modified. Previously, only pseudo registers could invalidate other registers. Modified the LLDB qRegisterInfo extension to the GDB remote interface to support specifying the containing registers with the new "container-regs" key whose value is a comma separated list of register numbers. Also added a "invalidate-regs" key whose value is also a comma separated list of register numbers. Removed the hack GDBRemoteDynamicRegisterInfo::Addx86_64ConvenienceRegisters() function and modified "debugserver" to specify the registers correctly using the new "container-regs" and "invalidate-regs" keys. llvm-svn: 173096
-
Bill Wendling authored
This is more code to isolate the use of the Attribute class to that of just holding one attribute instead of a collection of attributes. llvm-svn: 173095
-
Bill Wendling authored
This is more code to isolate the use of the Attribute class to that of just holding one attribute instead of a collection of attributes. llvm-svn: 173094
-
Paul Redmond authored
(sub 0, (sext bool to A)) to (zext bool to A). Patch by Muhammad Ahmad Reviewed by Duncan Sands llvm-svn: 173093
-
Michael Ilseman authored
llvm-svn: 173092
-
Richard Osborne authored
llvm-svn: 173090
-
Jakub Staszak authored
llvm-svn: 173088
-
Richard Osborne authored
llvm-svn: 173087
-
Richard Osborne authored
llvm-svn: 173086
-
Richard Osborne authored
llvm-svn: 173085
-
Howard Hinnant authored
llvm-svn: 173084
-
Richard Osborne authored
llvm-svn: 173083
-
Shankar Easwaran authored
llvm-svn: 173082
-
Douglas Gregor authored
than DenseMaps and SmallPtrSets for module-visitation data. ~2.6% speedup for modules. llvm-svn: 173081
-
Douglas Gregor authored
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
-
Nico Weber authored
llvm-svn: 173078
-
Nico Weber authored
Formatter: Rename LSquare to Left to make parseSquare() more consistent with the other paren parsing methods. llvm-svn: 173077
-
rdar://problem/12437929Enrico Granata authored
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
-
Manuel Klimek authored
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
-
Chris Lattner authored
so revert it for now. llvm-svn: 173074
-
Douglas Gregor authored
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
-
Chris Lattner authored
rework the Bitstream reader to actually work a machine word at a time, 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
-
Argyrios Kyrtzidis authored
[ASTUnit] Unlike LoadFromCommandLine, LoadFromCompilerInvocation causes a crash if Precompilepreamble is set to true because there is no FileManager at that point. Patch by Hurcan Solter! llvm-svn: 173071
-
Jordan Rose authored
Note to self: don't remove comments /after/ updating the line-sensitive part of a test. llvm-svn: 173070
-
Douglas Gregor authored
DeclContext lookups. The performance win is negligible in my tests, but it's the Right Thing To Do (TM). llvm-svn: 173068
-
Jordan Rose authored
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
-
Chris Lattner authored
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
-
Chris Lattner authored
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
-
Michael Ilseman authored
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
-
Chris Lattner authored
it reason about the current bit position, which is always independent of the underlying cursors word size. llvm-svn: 173063
-
Chris Lattner authored
llvm-svn: 173062
-
Nadav Rotem authored
llvm-svn: 173061
-
Howard Hinnant authored
llvm-svn: 173060
-
Douglas Gregor authored
llvm-svn: 173058
-
Douglas Gregor authored
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
-
Manuel Klimek authored
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
-
Douglas Gregor authored
kind indicates that it can never be redeclared. Good for a 1% speedup, and redeclaration searching drops off the profile. llvm-svn: 173054
-
Tom Stellard authored
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
-
Tom Stellard authored
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
-
Tom Stellard authored
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
-