- Nov 30, 2011
-
-
Kostya Serebryany authored
llvm-svn: 145530
-
- Nov 29, 2011
-
-
Daniel Dunbar authored
llvm-svn: 145420
-
- Nov 15, 2011
-
-
Benjamin Kramer authored
llvm-svn: 144648
-
- Nov 12, 2011
-
-
Daniel Dunbar authored
build: Attempt to rectify inconsistencies between CMake and LLVMBuild versions of explicit dependencies. - The hope is that we have a tool/test to verify these are accurate (and tight) soon. llvm-svn: 144444
-
- Nov 11, 2011
-
-
Daniel Dunbar authored
llvm-svn: 144416
-
- Nov 03, 2011
-
-
Daniel Dunbar authored
llvm-svn: 143634
-
- Oct 20, 2011
-
-
Eli Friedman authored
Refactor code from inlining and globalopt that checks whether a function definition is unused, and enhance it so it can tell that functions which are only used by a blockaddress are in fact dead. This probably doesn't happen much on most code, but the Linux kernel's _THIS_IP_ can trigger this issue with blockaddress. (GlobalDCE can also handle the given tescase, but we only run that at -O3.) Found while looking at PR11180. llvm-svn: 142572
-
- Oct 01, 2011
-
-
Andrew Trick authored
We want heuristics to be based on accurate data, but more importantly we don't want llvm to behave randomly. A benign trunc inserted by an upstream pass should not cause a wild swings in optimization level. See PR11034. It's a general problem with threshold-based heuristics, but we can make it less bad. llvm-svn: 140919
-
Andrew Trick authored
llvm-svn: 140916
-
- Sep 27, 2011
-
-
Benjamin Kramer authored
Stop emitting instructions with the name "tmp" they eat up memory and have to be uniqued, without any benefit. If someone prefers %tmp42 to %42, run instnamer. llvm-svn: 140634
-
- Sep 21, 2011
-
-
Bill Wendling authored
Place the check for an exit landing pad where it will be run on both code paths through the if-then-else. llvm-svn: 140195
-
Bill Wendling authored
The landing pad must accompany the invoke when it's extracted. However, if it does, then the loop isn't properly extracted. I.e., the resulting extraction has a loop in it. The extracted function is then extracted, etc. resulting in an infinite loop. llvm-svn: 140193
-
- Sep 20, 2011
-
-
Bill Wendling authored
llvm-svn: 140176
-
Bill Wendling authored
extract its associated landing pad block as well. However, that landing pad block may have more than one predecessor. So split the landing pad block so that individual landing pads have only one predecessor. This type of transformation may produce a false positive with bugpoint. llvm-svn: 140173
-
- Aug 19, 2011
-
-
Benjamin Kramer authored
C API functions must be able to see their extern "C" definitions, or it will be impossible to call them from C. llvm-svn: 138022
-
- Aug 16, 2011
-
-
David Chisnall authored
Add a mechanism for optimisation plugins to register passes that all front ends can use without needing to be aware of the plugin (or the plugin be aware of the front end). Before 3.0, I'd like to add a mechanism for automatically loading a set of plugins from a config file. API suggestions welcome... llvm-svn: 137717
-
Eli Friedman authored
llvm-svn: 137702
-
Eli Friedman authored
llvm-svn: 137693
-
Eli Friedman authored
llvm-svn: 137667
-
- Aug 15, 2011
-
-
Bill Wendling authored
llvm-svn: 137627
-
- Aug 12, 2011
-
-
Chris Lattner authored
llvm-svn: 137480
-
- Aug 10, 2011
-
-
Rafael Espindola authored
functionality since in the C api a pass is created and added to a pass manager in a single call. llvm-svn: 137159
-
- Aug 04, 2011
-
-
Bill Wendling authored
This is some of my original LLVM code. *wipes tear* llvm-svn: 136821
-
- Aug 02, 2011
-
-
Rafael Espindola authored
llvm-svn: 136727
-
- Jul 31, 2011
-
-
Bill Wendling authored
This adds the 'resume' instruction class, IR parsing, and bitcode reading and writing. The 'resume' instruction resumes propagation of an existing (in-flight) exception whose unwinding was interrupted with a 'landingpad' instruction (to be added later). llvm-svn: 136589
-
- Jul 30, 2011
-
-
Bill Wendling authored
r136339, r136341, r136369, r136387, r136392, r136396, r136429, r136430, r136444, r136445, r136446, r136253 pending review. llvm-svn: 136556
-
- Jul 29, 2011
-
-
Eli Friedman authored
working on x86 (at least for trivial testcases); other architectures will need more work so that they actually emit the appropriate instructions for orderings stricter than 'monotonic'. (As far as I can tell, the ARM, PPC, Mips, and Alpha backends need such changes.) llvm-svn: 136457
-
Chandler Carruth authored
specified in the same file that the library itself is created. This is more idiomatic for CMake builds, and also allows us to correctly specify dependencies that are missed due to bugs in the GenLibDeps perl script, or change from compiler to compiler. On Linux, this returns CMake to a place where it can relably rebuild several targets of LLVM. I have tried not to change the dependencies from the ones in the current auto-generated file. The only places I've really diverged are in places where I was seeing link failures, and added a dependency. The goal of this patch is not to start changing the dependencies, merely to move them into the correct location, and an explicit form that we can control and change when necessary. This also removes a serialization point in the build because we don't have to scan all the libraries before we begin building various tools. We no longer have a step of the build that regenerates a file inside the source tree. A few other associated cleanups fall out of this. This isn't really finished yet though. After talking to dgregor he urged switching to a single CMake macro to construct libraries with both sources and dependencies in the arguments. Migrating from the two macros to that style will be a follow-up patch. Also, llvm-config is still generated with GenLibDeps.pl, which means it still has slightly buggy dependencies. The internal CMake 'llvm-config-like' macro uses the correct explicitly specified dependencies however. A future patch will switch llvm-config generation (when using CMake) to be based on these deps as well. This may well break Windows. I'm getting a machine set up now to dig into any failures there. If anyone can chime in with problems they see or ideas of how to solve them for Windows, much appreciated. llvm-svn: 136433
-
- Jul 27, 2011
-
-
Bill Wendling authored
This adds the new instructions 'landingpad' and 'resume'. llvm-svn: 136253
-
Nick Lewycky authored
llvm-svn: 136250
-
- Jul 26, 2011
-
-
Rafael Espindola authored
llvm-svn: 136083
-
Rafael Espindola authored
llvm-svn: 136082
-
- Jul 25, 2011
-
-
Jay Foad authored
llvm-svn: 135904
-
- Jul 22, 2011
-
-
Jay Foad authored
ConstantExpr::getGetElementPtr to use ArrayRef. llvm-svn: 135762
-
- Jul 21, 2011
-
-
Jay Foad authored
llvm-svn: 135676
-
Jay Foad authored
ConstantExpr::getInBoundsGetElementPtr to use ArrayRef. llvm-svn: 135673
-
Chris Lattner authored
to for it to be an an anon namespace and be in a header. Eliminate some extraenous uses of tie. llvm-svn: 135669
-
- Jul 19, 2011
- Jul 18, 2011
-
-
Chris Lattner authored
llvm-svn: 135375
-