summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Run the verifier after LSR, to help catch use-before-def errors beforeDan Gohman2010-01-211-0/+4
| | | | | | they reach codegen. llvm-svn: 94066
* Re-implement the main strength-reduction portion of LoopStrengthReduction.Dan Gohman2010-01-2132-2614/+3030
| | | | | | | | | | | | | | This new version is much more aggressive about doing "full" reduction in cases where it reduces register pressure, and also more aggressive about rewriting induction variables to count down (or up) to zero when doing so reduces register pressure. It currently uses fairly simplistic algorithms for finding reuse opportunities, but it introduces a new framework allows it to combine multiple strategies at once to form hybrid solutions, instead of doing all full-reduction or all base+index. llvm-svn: 94061
* eliminate dynamic_cast from the pass manager.Chris Lattner2010-01-211-22/+20
| | | | llvm-svn: 94060
* Add strcpy_chk -> strcpy support for "don't know" object sizeEric Christopher2010-01-211-0/+45
| | | | | | answers. This will update as object size checking gets better information. llvm-svn: 94059
* Fix a minor issue in x86 load / store folding table. movups does an ↵Evan Cheng2010-01-211-1/+1
| | | | | | unaligned load so it doesn't require 16-byte alignment. llvm-svn: 94058
* Make sure that landing pad entries in the EH call site table are in the properJim Grosbach2010-01-216-5/+54
| | | | | | order for SjLj style exception handling. llvm-svn: 94055
* Moved handling of inclusion from the AsmLexer toSean Callanan2010-01-215-55/+60
| | | | | | | the AsmParser, breaking AsmLexer's dependence on SourceMgr. llvm-svn: 94054
* simplify this code.Chris Lattner2010-01-201-1/+1
| | | | llvm-svn: 94048
* Changed the AsmParser to handle error messages itselfSean Callanan2010-01-205-15/+15
| | | | | | | | rather than passing them off to the AsmLexer to handle. This means the AsmLexer no longer requires a SourceMgr to do error handling. llvm-svn: 94047
* SjLj EH introduces can introduce an additional edge to a landing pad and padJim Grosbach2010-01-201-0/+13
| | | | | | normalization needs to take this into account. llvm-svn: 94046
* Promoted the reference to the SourceMgr from AsmLexerSean Callanan2010-01-202-2/+4
| | | | | | | into AsmParser, in preparation for making AsmLexer independent of the SourceMgr llvm-svn: 94043
* Modified MCAsmLexer to return error information upwardSean Callanan2010-01-203-4/+29
| | | | | | | rather than printing it locally, reducing its dependence on SourceMgr. llvm-svn: 94041
* eliminate FnStubInfo, using MachineModuleInfoMachO instead.Chris Lattner2010-01-201-73/+66
| | | | | | this makes function stub emission determinstic. llvm-svn: 94033
* make findDebugLoc a class methodDale Johannesen2010-01-204-16/+19
| | | | llvm-svn: 94032
* split function stub printing out to its own function,Chris Lattner2010-01-201-46/+58
| | | | | | no functionality change. llvm-svn: 94030
* eliminate the GVStubs and HiddenGVStubs maps, and use Chris Lattner2010-01-201-23/+39
| | | | | | | | MachineModuleInfoMachO instead. This eliminates two sources of nondeterministic output in the ppc backend, but function stubs are still bad. llvm-svn: 94029
* don't forget to initialize an instance variable!Chris Lattner2010-01-201-2/+2
| | | | llvm-svn: 94021
* When XDEBUG is enabled, check for SelectionDAG cycles at some keyDavid Greene2010-01-204-2/+54
| | | | | | | points. This will help us find future problems like the one described in PR6019. llvm-svn: 94019
* adopt getAdjustedAnalysisPointer in a few more passes.Chris Lattner2010-01-206-0/+64
| | | | llvm-svn: 94018
* adopt getAdjustedAnalysisPointer in two more passes.Chris Lattner2010-01-202-0/+20
| | | | llvm-svn: 94017
* adopt getAdjustedAnalysisPointer in BasicCallGraph.Chris Lattner2010-01-201-1/+11
| | | | llvm-svn: 94015
* add some new methods to adjust this pointers. Not used yet.Chris Lattner2010-01-202-0/+28
| | | | llvm-svn: 94013
* add a helper method.Chris Lattner2010-01-201-0/+5
| | | | llvm-svn: 94012
* don't send null pointers through the constantexpr codepath unneededly.Chris Lattner2010-01-201-0/+6
| | | | llvm-svn: 94010
* reduce redundant are's.Chris Lattner2010-01-203-4/+3
| | | | llvm-svn: 94008
* Move per-function inline threshold calculation to a method.Jakob Stoklund Olesen2010-01-202-14/+18
| | | | | | | No functional change except the forgotten test for InlineLimit.getNumOccurrences() == 0 in the CurrentThreshold2 calculation. llvm-svn: 94007
* use getGlobalDirective(), don't hardcode .globl. PR6093Chris Lattner2010-01-201-13/+13
| | | | llvm-svn: 94006
* Fix an infinite recursion problem. dbgs() should return errs() inDavid Greene2010-01-201-2/+2
| | | | | | release mode. llvm-svn: 94001
* eliminate some uses of AsmPrinter::EmitIntXXXChris Lattner2010-01-203-20/+19
| | | | llvm-svn: 93996
* Backout r93990Victor Hernandez2010-01-201-9/+4
| | | | llvm-svn: 93995
* inline and radically simplify printDataDirective. It will eventuallyChris Lattner2010-01-203-50/+24
| | | | | | go completely away. llvm-svn: 93994
* emit basic block labels with mcstreamer.Chris Lattner2010-01-203-10/+6
| | | | llvm-svn: 93993
* emit integer and fp zeros as (e.g.) .byte 0 instead of .space 1,Chris Lattner2010-01-203-18/+17
| | | | | | for tidiness. llvm-svn: 93992
* signficant cleanups to EmitGlobalConstant (including streamerization Chris Lattner2010-01-203-106/+68
| | | | | | | | of int initializers), change some methods to be static functions, use raw_ostream::write_hex instead of a smallstring dance with APValue::toStringUnsigned(S, 16). llvm-svn: 93991
* Fix/strengthen verification of llvm.dbg.declareVictor Hernandez2010-01-201-4/+9
| | | | llvm-svn: 93990
* Switch Elts from vector to SmallVectorVictor Hernandez2010-01-201-2/+1
| | | | llvm-svn: 93989
* switch ConstantFP emission to use MCStreamer, significantly Chris Lattner2010-01-201-34/+18
| | | | | | simplifying the code. llvm-svn: 93988
* make mcasmstreamer handle expanding 8 byte integer constants to Chris Lattner2010-01-202-21/+16
| | | | | | | 4-byte constants if .quad isn't supported. Switch a bunch of methods used by the dwarf writer to use OutStreamer.EmitIntValue. llvm-svn: 93987
* give createAsmStreamer an 'isLittleEndian' argument.Chris Lattner2010-01-204-6/+15
| | | | llvm-svn: 93986
* revert 93934, removing the MCAsmInfo endianness bit. I can'tChris Lattner2010-01-2021-63/+31
| | | | | | | stomache MCAsmInfo having this, and I found a better solution to this layering issue. llvm-svn: 93985
* Fix if/else brackets; getFunctionForValue() is to be called for non-metadata ↵Victor Hernandez2010-01-201-1/+3
| | | | | | values llvm-svn: 93984
* Fix the conditions to unambiguously show the logic they represent. This is theChandler Carruth2010-01-201-3/+3
| | | | | | | logic enforced in the test case as well, so hopefully it is correct. Please review Victor. llvm-svn: 93980
* Map operands of all function-local metadata, not just metadata passed to ↵Victor Hernandez2010-01-201-19/+13
| | | | | | llvm.dbg.declare intrinsics llvm-svn: 93979
* Avoid unnecessary Elts arrayVictor Hernandez2010-01-201-4/+2
| | | | llvm-svn: 93978
* Refactor common parts of MDNode::getFunction() and assertLocalFunction() ↵Victor Hernandez2010-01-203-35/+25
| | | | | | into getFunctionForValue() llvm-svn: 93977
* If a instruction belongs to another function (and not current function) as ↵Devang Patel2010-01-202-4/+40
| | | | | | per debug info attached with the instruction then ignore the dangling lexical scope of this instruction. Such scopes are unreachable. llvm-svn: 93967
* Add some asserts to check SelectionDAG problems earlier.David Greene2010-01-201-0/+12
| | | | llvm-svn: 93960
* For 'install-clang' target, also traverse tools/clang/lib/Runtime.Daniel Dunbar2010-01-201-1/+2
| | | | llvm-svn: 93958
* Move findDebugLoc somewhere more central. FixDale Johannesen2010-01-204-21/+22
| | | | | | | more cases where debug declarations affect debug line info. llvm-svn: 93953
* Fold (add x, shl(0 - y, n)) -> sub(x, shl(y, n)), to simplify some codeDan Gohman2010-01-192-0/+37
| | | | | | that SCEVExpander can produce when running on behalf of LSR. llvm-svn: 93949
OpenPOWER on IntegriCloud