- Feb 22, 2013
-
-
Bill Wendling authored
The 'nobuiltin' attribute is applied to call sites to indicate that LLVM should not treat the callee function as a built-in function. I.e., it shouldn't try to replace that function with different code. llvm-svn: 175835
-
Bill Wendling authored
llvm-svn: 175834
-
Eric Christopher authored
llvm-svn: 175833
-
Enrico Granata authored
llvm-svn: 175832
-
rdar://problem/13265017Enrico Granata authored
The notion of Crossref command has long been forgotten, and there is nothing using CommandObjectCrossref in the current LLDB codebase However, this was causing a conflict with process plugins and command aliases ending up in an infinite loop under situations such as: (lldb) command alias monitor process plugin packet monitor (lldb) process att -n Calendar Process 28709 stopped Executable module set to "/Applications/Calendar.app/Contents/MacOS/Calendar". Architecture set to: x86_64-apple-macosx. (lldb) command alias monitor process plugin packet monitor This fixes the loop (and consequent crash) by disposing of Crossref commands and related code llvm-svn: 175831
-
Jordan Rose authored
When creating a temporary region (say, when a struct rvalue is used as the base of a member expr), make sure we account for any derived-to-base casts. We don't actually record these in the LazyCompoundVal that represents the rvalue, but we need to make sure that the temporary region we're creating (a) matches the bindings, and (b) matches its expression. Most of the time this will do exactly the same thing as before, but it fixes spurious "garbage value" warnings introduced in r175234 by the use of lazy bindings to model trivial copy constructors. <rdar://problem/13265460> llvm-svn: 175830
-
Matt Kopec authored
llvm-svn: 175829
-
Andrew Kaylor authored
On x86-64 platforms, the small code model assumes that code will be loaded below the 2GB boundary. With the static relocation model, the fact that the expression code is initially loaded (in the LLDB debugger address space) above that boundary causes problems. Switching to the JITDefault code model causes the large code model to be used for 64-bit targets and small code model of 32-bit targets. llvm-svn: 175828
-
John McCall authored
for explicit member specializations. llvm-svn: 175827
-
David Blaikie authored
Post commit review feedback on r175812 from Jordan Rose. llvm-svn: 175826
-
David Blaikie authored
Post commit review feedback on r175812 from Jordan Rose. llvm-svn: 175825
-
NAKAMURA Takumi authored
llvm-svn: 175824
-
Richard Smith authored
llvm-svn: 175823
-
Daniel Malea authored
llvm-svn: 175822
-
- Feb 21, 2013
-
-
Cameron Zwarich authored
pass. One of the callers of isKilled() can cope with overapproximation of kills and the other can't, so I added a flag to indicate this. In theory this could pessimize code slightly, but in practice most physical register uses are kills, and most important kills of physical registers are the only uses of that register prior to register allocation, so we can recognize them as kills even without kill flags. This is relevant because LiveIntervals gets rid of all kill flags. llvm-svn: 175821
-
Eli Bendersky authored
to lib/DebugInfo, with dumping in llvm-dwarfdump. This patch adds initial ability to parse and dump CFA instructions contained in entries. To keep it manageable, the patch omits some more advanced capabilities (accounted in TODOs): * Parsing of instructions with BLOCK arguments (expression lists) * Dumping of actual instruction arguments (currently only names are dumped). This is quite tricky since the dumper has to effectively "interpret" the instructions. llvm-svn: 175820
-
David Blaikie authored
After cleaning up the following type hierarchies: * TypeLoc: r175462 * SVal: r175594 * CFGElement: r175462 * ProgramPoint: r175812 that all invoked undefined behavior by causing a derived copy construction of a base object through an invalid cast (thus supporting code that relied on casting temporaries that were direct base objects) Clang/LLVM is now clean of casts of temporaries. So here's some fun SFINAE machinery (courtesy of Eli Friedman, with some porting back from C++11 to LLVM's traits by me) to cause compile-time failures if llvm::cast & friends are ever passed an rvalue. This should avoid a repeat of anything even remotely like PR14321/r168124. Thanks to Jordan Rose for the help with the various Static Analyzer related hierarchies that needed cleaning up, Eli for the SFINAE, Richard Smith, John McCall, Ted Kremenek, and Anna Zaks for their input/reviews/patience along the way. llvm-svn: 175819
-
Renato Golin authored
Storing the load/store instructions with the values and inspect them using Alias Analysis to make sure they don't alias, since the GEP pointer operand doesn't take the offset into account. Trying hard to not add any extra cost to loads and stores that don't overlap on global values, AA is *only* calculated if all of the previous attempts failed. Using biggest vector register size as the stride for the vectorization access, as we're being conservative and the cost model (which calculates the real vectorization factor) is only run after the legalization phase. We might re-think this relationship in the future, but for now, I'd rather be safe than sorry. llvm-svn: 175818
-
David Blaikie authored
(found due to incoming improvements to llvm::cast machinery that will error on this sort of mistake) llvm-svn: 175817
-
Daniel Malea authored
llvm-svn: 175816
-
Eric Christopher authored
llvm-svn: 175815
-
Eric Christopher authored
now. llvm-svn: 175814
-
Eric Christopher authored
in the compilation setup. Note that this doesn't currently work for -no-integrated-as. llvm-svn: 175813
-
David Blaikie authored
See r175462 for another example/more details. llvm-svn: 175812
-
Enrico Granata authored
llvm-svn: 175811
-
Enrico Granata authored
llvm-svn: 175810
-
Lang Hames authored
llvm-svn: 175809
-
Daniel Malea authored
functions start at the line with the "{" character, whereas clang uses the first line with source code. As such, this test case will only work with clang. llvm-svn: 175808
-
Ted Kremenek authored
llvm-svn: 175807
-
Sean Callanan authored
<rdar://problem/13254824> llvm-svn: 175806
-
Dmitri Gribenko authored
Fixes infinite loop in PR15220. Patch by Philip Craig. llvm-svn: 175805
-
Chad Rosier authored
llvm-svn: 175804
-
Daniel Jasper authored
Was used during experiments, but another if-statements a few lines before makes it (intentionally) useless. llvm-svn: 175803
-
Ted Kremenek authored
Along the way, improve a diagnostic for "previous declaration here" for implicit parameters. Fixes <rdar://problem/13211384>. llvm-svn: 175802
-
Daniel Malea authored
llvm-svn: 175801
-
Daniel Jasper authored
This fixes llvm.org/PR15167. Before: LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL() : AAAAAAAA(10), BBBBBBBBB(10) { } LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL() : AAAAAAAA(10) {} After: LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL() : AAAAAAAA(10), BBBBBBBBB(10) {} LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL() : AAAAAAAA(10) {} llvm-svn: 175800
-
Pedro Artigas authored
be set to zero that is what it was intended. Should improve performance of the data structure when clear is invoked frequently (both compile time and memory usage). llvm-svn: 175799
-
Daniel Malea authored
llvm-svn: 175798
-
Daniel Malea authored
llvm-svn: 175797
-
David Blaikie authored
See r175462 for another example/more details. llvm-svn: 175796
-