summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Allow ADL to find functions imported by using decls. Leave wordy commentJohn McCall2010-01-263-12/+38
| | | | | | about interaction between ADL and default arguments. Shrug shoulders, commit. llvm-svn: 94524
* add a new MachineJumpTableInfo::getJTISymbol method,Chris Lattner2010-01-264-20/+46
| | | | | | use it to implement the default TargetLowering::getPICJumpTableRelocBaseExpr llvm-svn: 94523
* Remove a few more references to index-test; this was killed in r94210.Chandler Carruth2010-01-261-3/+3
| | | | llvm-svn: 94522
* stub out a new target hook, need some refactoring before I canChris Lattner2010-01-262-0/+18
| | | | | | implement it. llvm-svn: 94521
* Fix another debug info crash with virtual bases.Anders Carlsson2010-01-262-5/+21
| | | | llvm-svn: 94520
* Fix the test I broke, and also fix a crash when declaring a virtual ↵Anders Carlsson2010-01-264-28/+43
| | | | | | destructor. Add debug info support for pure virtual member functions. llvm-svn: 94519
* simplify asmprinter: only emit .set directives when entries haveChris Lattner2010-01-262-16/+9
| | | | | | | EK_LabelDifference32 kind and the target has .set support. Simplify X86AsmPrinter::printPICJumpTableSetLabel to make use of recent helpers. llvm-svn: 94518
* rename printPICJumpTableEntry -> EmitJumpTableEntry,Chris Lattner2010-01-262-22/+13
| | | | | | | make it private and non-virtual. It handles the non-pic case too, so just use it, simplifying EmitJumpTableInfo. llvm-svn: 94517
* implement X86 @GOTOFF jump table entries with the new EK_Custom32Chris Lattner2010-01-264-29/+31
| | | | | | | | | | | jump table entry kind, instead of overloading AsmPrinter::printPICJumpTableEntry. This has a pretty horrible and inefficient FIXME around how @GOTOFF is currently smashed into the mcsymbol name, but otherwise this is much cleaner. llvm-svn: 94516
* add a new MachineBasicBlock::getSymbol method, replacingChris Lattner2010-01-2619-43/+51
| | | | | | the AsmPrinter::GetMBBSymbol. llvm-svn: 94515
* New PBQP solver.Lang Hames2010-01-2612-2056/+1503
| | | | | | | | | * Fixed a reduction bug which occasionally led to infinite-cost (invalid) register allocation solutions despite the existence finite-cost solutions. * Significantly reduced memory usage (>50% reduction). * Simplified a lot of the solver code. llvm-svn: 94514
* Factor creating the DISubprogram for a member function out into a separate ↵Anders Carlsson2010-01-262-51/+68
| | | | | | function. llvm-svn: 94513
* Fix the the ceiling-division used in computing the MaxBECount so that it doesn'tDan Gohman2010-01-263-53/+483
| | | | | | | | | | | | | have trouble with an intermediate add overflowing. Also, be more conservative about the case where the induction variable in an SLT loop exit can step past the RHS of the SLT and overflow in a single step. Make getSignedRange more aggressive, to recover for some common cases which the above fixes pessimized. This addresses rdar://7561161. llvm-svn: 94512
* Simplify CGDebugInfo::CollectCXXMemberFunctions a little. More to come.Anders Carlsson2010-01-261-6/+6
| | | | llvm-svn: 94511
* don't bother setting the AsmPrinter::MF ivar, now thatChris Lattner2010-01-269-23/+1
| | | | | | | AsmPrinter::SetupMachineFunction sets it. Note that systemz and msp430 didn't. Yay for reduced inconsistency! :) llvm-svn: 94510
* make MachineFunction keep track of its ID and make Chris Lattner2010-01-267-25/+28
| | | | | | | | MachineFunctionAnalysis dole them out, instead of having AsmPrinter do both. Have the AsmPrinter::SetupMachineFunction method set the 'AsmPrinter::MF' variable. llvm-svn: 94509
* this hook should be const.Chris Lattner2010-01-261-1/+1
| | | | llvm-svn: 94508
* Add a comment about a missed opportunity.Dan Gohman2010-01-261-0/+3
| | | | llvm-svn: 94507
* Print empty and full sets specially.Dan Gohman2010-01-261-1/+6
| | | | llvm-svn: 94506
* Add support for target-specific 32-bit custom-lowered Chris Lattner2010-01-265-7/+25
| | | | | | jump table entries. llvm-svn: 94505
* Make sure to always mark a global variable as not being constant if it has a ↵Anders Carlsson2010-01-262-1/+13
| | | | | | C++ initializer. llvm-svn: 94504
* Simplify.Daniel Dunbar2010-01-262-24/+5
| | | | llvm-svn: 94503
* Unbreak MSVC/CMake build.Daniel Dunbar2010-01-261-1/+1
| | | | llvm-svn: 94502
* make jit jump table emission be based on the EntryKind instead of magic ↵Chris Lattner2010-01-261-18/+27
| | | | | | | | | variables. JITInfo::getPICJumpTableEntry can probably be removed now, but I don't plan to do this. llvm-svn: 94501
* switch jump table entry emission to be based on EntryKindChris Lattner2010-01-261-16/+39
| | | | | | instead of magic variables. llvm-svn: 94500
* Be sure to track the non-virtual part of the vcall offset in complexMike Stump2010-01-262-4/+7
| | | | | | | | | multiple inheritance cases. WIP. This fixes 20% of the outstanding problems found by the randomized tester. llvm-svn: 94499
* Preserve access bits through overload resolution much better. SomeJohn McCall2010-01-267-103/+90
| | | | | | general refactoring in operator resolution. llvm-svn: 94498
* Introduce clang_getInstantiationLocationOffset(), which decomposes aDouglas Gregor2010-01-263-14/+61
| | | | | | source location in file + offset. llvm-svn: 94497
* In mem2reg, for all alloca/stores that get promoted where the alloca has an ↵Victor Hernandez2010-01-262-1/+83
| | | | | | associated llvm.dbg.declare instrinsic, insert an llvm.dbg.var intrinsic before each store. llvm-svn: 94493
* Add MDNode::getIfExists(), an efficient way to determine if a value is used ↵Victor Hernandez2010-01-262-29/+44
| | | | | | by metadata (since metadata does not appear in a value's use list) llvm-svn: 94492
* Assert when debug intrinsic insert functions are passed empty argumentsVictor Hernandez2010-01-261-0/+6
| | | | llvm-svn: 94491
* Implement cond ? -1 : 0 with sbb.Evan Cheng2010-01-263-2/+55
| | | | llvm-svn: 94490
* Accept immediate as value of a dbg_value.Dale Johannesen2010-01-261-2/+3
| | | | llvm-svn: 94489
* Driver/Darwin: Honor IPHONEOS_DEPLOYMENT_TARGET.Daniel Dunbar2010-01-264-17/+56
| | | | llvm-svn: 94488
* Driver/Darwin: Stuff iPhoneOS into environment portion of the (llvm/clang) ↵Daniel Dunbar2010-01-263-74/+73
| | | | | | triple instead of keying off architecture. Also, fix version define to properly include the revision/micro component of the version number. llvm-svn: 94487
* Pass access specifiers around in overload resolution.John McCall2010-01-267-54/+107
| | | | llvm-svn: 94485
* Re-enable unit tests disabled in r94164 by telling GTest about theJeffrey Yasskin2010-01-264-22/+5
| | | | | | lack of RTTI. llvm-svn: 94484
* Added the implementation of the Intel-specificSean Callanan2010-01-261-1/+27
| | | | | | TargetAsmLexer. llvm-svn: 94482
* Fix a regression caused by my rewriting of cast of ivarFariborz Jahanian2010-01-262-9/+17
| | | | | | access (was radar 7575882). llvm-svn: 94481
* Generate DEBUG_VALUE comments on x86. The (limited)Dale Johannesen2010-01-263-0/+68
| | | | | | | dbg.declare's we currently generate go through both register allocators without perturbing the results. llvm-svn: 94480
* Added the TargetAsmLexer implementation for AT&T syntax.Sean Callanan2010-01-261-5/+70
| | | | llvm-svn: 94479
* Fixup a missing vcall entry. WIP.Mike Stump2010-01-262-37/+282
| | | | llvm-svn: 94478
* use findDebugLoc in more places.Dale Johannesen2010-01-261-10/+5
| | | | llvm-svn: 94477
* Minor jump table cleanup.Jim Grosbach2010-01-251-2/+2
| | | | llvm-svn: 94475
* in 32-bit pic mode for targets with a GOT, x86 emits jump tableChris Lattner2010-01-252-0/+17
| | | | | | entries with @GOTOFF whih is EK_GPRel32BlockAddress. llvm-svn: 94474
* First cut at emitting inheritance info.Devang Patel2010-01-252-1/+43
| | | | llvm-svn: 94473
* fix quoting problem jim noticed!Chris Lattner2010-01-251-1/+1
| | | | llvm-svn: 94472
* Rearrange handling of jump tables. Highlights:Chris Lattner2010-01-2511-99/+202
| | | | | | | | | | | | | | | | | | 1. MachineJumpTableInfo is now created lazily for a function the first time it actually makes a jump table instead of for every function. 2. The encoding of jump table entries is now described by the MachineJumpTableInfo::JTEntryKind enum. This enum is determined by the TLI::getJumpTableEncoding() hook, instead of by lots of code scattered throughout the compiler that "knows" that jump table entries are always 32-bits in pic mode (for example). 3. The size and alignment of jump table entries is now calculated based on their kind, instead of at machinefunction creation time. Future work includes using the EntryKind in more places in the compiler, eliminating other logic that "knows" the layout of jump tables in various situations. llvm-svn: 94470
* prep work to support a future where getJumpTableInfo will returnChris Lattner2010-01-254-4/+11
| | | | | | | a null pointer for functions with no jump tables. No functionality change. llvm-svn: 94469
* add a method to get the alignment of an integer type even Chris Lattner2010-01-252-0/+12
| | | | | | | when we don't have one laying around. Useful if you don't have an llvmcontext handy. llvm-svn: 94468
OpenPOWER on IntegriCloud