- Nov 24, 2012
-
-
Rafael Espindola authored
We now store the Register and Offset directly. MachineLocation is gone (from this file)! llvm-svn: 168536
-
Rafael Espindola authored
This untangles the switch cases of the old Move and RelMove opcodes a bit and makes it clear how to add new instructions. llvm-svn: 168534
-
Rafael Espindola authored
llvm-svn: 168533
-
Rafael Espindola authored
Give MCCFIInstruction a single, private constructor and add helper static methods that create each type of cfi instruction. This is is preparation for changing its representation. The representation with a pair MachineLocations older than MC and has been abused quiet a bit to support more cfi instructions. llvm-svn: 168532
-
- Nov 23, 2012
-
-
Rafael Espindola authored
Roman Divacky. I just added the testcase. llvm-svn: 168520
-
Joey Gouly authored
llvm-svn: 168511
-
- Nov 22, 2012
-
-
Meador Inge authored
I discovered a few more missing functions while migrating optimizations from the simplify-libcalls pass to the instcombine (I already added some in r167659). llvm-svn: 168501
-
- Nov 21, 2012
-
-
Akira Hatanaka authored
llvm-svn: 168448
-
Preston Briggs authored
llvm-svn: 168445
-
- Nov 20, 2012
-
-
Sebastian Pop authored
so that I can (someday) call SE->getSCEV without complaint. No semantic change intended. Patch from Preston Briggs <preston.briggs@gmail.com>. llvm-svn: 168391
-
Eric Christopher authored
llvm-svn: 168374
-
Chandler Carruth authored
definition did. The last part of PR14324. llvm-svn: 168363
-
Tim Northover authored
+ Take account of clobbers + Give outputs priority over inputs since they happen later. llvm-svn: 168360
-
Bill Wendling authored
When code deletes the context, the AttributeImpls that the AttrListPtr points to are now invalid. Therefore, instead of keeping a separate managed static for the AttrListPtrs that's reference counted, move it into the LLVMContext and delete it when deleting the AttributeImpls. llvm-svn: 168354
-
Eric Christopher authored
llvm-svn: 168344
-
Sean Silva authored
The rationale is to get YAML filenames in diagnostics from yaml::Stream::printError -- currently the filename is hard-coded as "YAML" because there's no buffer information available. Patch by Kim Gräsman! llvm-svn: 168341
-
- Nov 19, 2012
-
-
Eric Christopher authored
llvm-svn: 168338
-
NAKAMURA Takumi authored
llvm-svn: 168304
-
Bob Wilson authored
This patch moves the isInlineViable function from the InlineAlways pass into the InlineCostAnalyzer and then changes the InlineCost computation to use that simple check for always-inline functions. All the special-case checks for AlwaysInline in the CallAnalyzer can then go away. llvm-svn: 168300
-
Bob Wilson authored
llvm-svn: 168299
-
- Nov 17, 2012
-
-
James Molloy authored
llvm-svn: 168263
-
James Molloy authored
Add a new function to ConstantExpr - getAsInstruction. This returns its Instruction* corollary, which may be useful if a user wishes to transform a ConstantExpr so that one of its operands is no longer constant. llvm-svn: 168262
-
Eric Christopher authored
llvm-svn: 168218
-
- Nov 16, 2012
-
-
Benjamin Kramer authored
They are just useless and prevent SmallVector from picking an optimized codepath for memcpyable elements. llvm-svn: 168211
-
Jakub Staszak authored
llvm-svn: 168208
-
Andrew Trick authored
llvm-svn: 168202
-
Benjamin Kramer authored
Technically this is still a layering violation but it's header-only which makes it less harmful. No functionality change. llvm-svn: 168173
-
Duncan Sands authored
llvm-svn: 168166
-
Andrew Kaylor authored
Interface changes to allow RuntimeDyld memory managers to set memory permissions after an object has been loaded. llvm-svn: 168114
-
- Nov 15, 2012
-
-
Michael Ilseman authored
llvm-svn: 168103
-
Chad Rosier authored
positive. In this particular case, R6 was being spilled by the register scavenger when it was in fact dead. The isUsed function reported R6 as used because the R6_R7 alias was reserved (due to the fact that we've reserved R7 as the FP). The solution is to only check if the original register (i.e., R6) isReserved and not the aliases. The aliases are only checked to make sure they're available. The test case is derived from one of the nightly tester benchmarks and is rather intractable and difficult to reproduce, so I haven't included it. rdar://12592448 llvm-svn: 168054
-
Sergei Larin authored
Similarly to several recent fixes throughout the code replace std::map use with the MapVector. Add find() method to the MapVector. llvm-svn: 168051
-
Dmitri Gribenko authored
llvm-svn: 168049
-
Duncan Sands authored
llvm-svn: 168042
-
Hans Wennborg authored
For global variables that get the same value stored into them everywhere, GlobalOpt will replace them with a constant. The problem is that a thread-local GlobalVariable looks like one value (the address of the TLS var), but is different between threads. This patch introduces Constant::isThreadDependent() which returns true for thread-local variables and constants which depend on them (e.g. a GEP into a thread-local array), and teaches GlobalOpt not to track such values. llvm-svn: 168037
-
Guy Benyei authored
The new OpenCL SPIR extension spec will define separate SPIR for 32 and 64 bit architectures. llvm-svn: 168036
-
Craig Topper authored
llvm-svn: 168025
-
Jakub Staszak authored
llvm-svn: 168009
-
Owen Anderson authored
Add doInitialization and doFinalization methods to ModulePass's, to allow them to be re-initialized and reused on multiple Module's. Patch by Pedro Artigas. llvm-svn: 168008
-
- Nov 14, 2012
-
-
Eric Christopher authored
Approved by Chris Lattner. llvm-svn: 167984
-