summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* Implement the "linker_private_weak" linkage type. This will be used forBill Wendling2010-07-0121-44/+90
| | | | | | | | | | | | | | | | | | | | | | | Objective-C metadata types which should be marked as "weak", but which the linker will remove upon final linkage. However, this linkage isn't specific to Objective-C. For example, the "objc_msgSend_fixup_alloc" symbol is defined like this: .globl l_objc_msgSend_fixup_alloc .weak_definition l_objc_msgSend_fixup_alloc .section __DATA, __objc_msgrefs, coalesced .align 3 l_objc_msgSend_fixup_alloc: .quad _objc_msgSend_fixup .quad L_OBJC_METH_VAR_NAME_1 This is different from the "linker_private" linkage type, because it can't have the metadata defined with ".weak_definition". Currently only supported on Darwin platforms. llvm-svn: 107433
* evil hack to coerce external users (projects)Gabor Greif2010-07-011-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | to update their code to high-level interfaces If you get compile errors in your project please update your code according to the comments. This is a re-commit of r107396 which causes compile errors for the indicated usage patterns instead of link errors (which are less easy to fix because of missing source location). If you get compile errors please perform following functionally equivalent transformations: - getOperand(0) ---> getCalledValue() - setOperand(0, V) ---> setCalledFunction(V) This will make your code more future-proof and avoid potentially hard-to-debug bugs. please refer to this thread on llvm-dev: <http://groups.google.com/group/llvm-dev/browse_thread/thread/64650cf343b28271> llvm-svn: 107432
* Do not require line number entry for undefined local variable.Devang Patel2010-07-011-2/+4
| | | | | | This is a regression caused by r106792 and caught by gdb testsuite. llvm-svn: 107430
* MC: Fix some stray hunks I didn't intend to commit.Daniel Dunbar2010-07-012-2/+2
| | | | llvm-svn: 107428
* MC: Pass the target instance to the AsmParser constructor.Daniel Dunbar2010-07-015-10/+10
| | | | llvm-svn: 107426
* Remove stray comma.Daniel Dunbar2010-07-011-1/+1
| | | | llvm-svn: 107425
* MC: Fix an error message.Daniel Dunbar2010-07-011-1/+1
| | | | llvm-svn: 107424
* Remove context sensitivity concerns from interprocedural-basic-aa, andDan Gohman2010-07-013-42/+1794
| | | | | | | make it more aggressive in cases where both pointers are known to live in the same function. llvm-svn: 107420
* MC: Move COFF enumeration constants to llvm/Support/COFF.h, patch by MichaelDaniel Dunbar2010-07-014-112/+247
| | | | | | Spencer! llvm-svn: 107418
* Preserve debug info for only extracted symbols.Devang Patel2010-07-011-0/+1
| | | | llvm-svn: 107417
* Debugging infomration is encoded in llvm IR using metadata. This is designedDevang Patel2010-07-014-0/+154
| | | | | | | | | such a way that debug info for symbols preserved even if symbols are optimized away by the optimizer. Add new special pass to remove debug info for such symbols. llvm-svn: 107416
* If a named mdnode is removed then mark module as changed.Devang Patel2010-07-011-1/+3
| | | | llvm-svn: 107412
* Move SSE3 Move patterns to a more appropriate sectionBruno Cardoso Lopes2010-07-013-30/+119
| | | | | | Add AVX SSE3 packed horizontal and & sub instructions llvm-svn: 107405
* Add AVX SSE3 packed addsub instructionsBruno Cardoso Lopes2010-07-013-23/+66
| | | | llvm-svn: 107404
* back out r107396 for now, it needs another minor change to function as ↵Gabor Greif2010-07-011-7/+0
| | | | | | advertised llvm-svn: 107399
* evil hack to coerce external users (projects)Gabor Greif2010-07-011-0/+7
| | | | | | | | | | to update their code to high-level interfaces If you get compile errors in your project please update your code according to the comments. llvm-svn: 107396
* Temporarily disable on-demand fast-isel.Dan Gohman2010-07-013-9/+15
| | | | llvm-svn: 107393
* reformulate CallSiteBase::getCallee to adapt to CallInst::ArgOffset, and ↵Gabor Greif2010-07-011-1/+3
| | | | | | make it work even if CallInst::op_* are private llvm-svn: 107392
* reformulate CallSite::getCallee to adapt to CallInst::ArgOffset, and make it ↵Gabor Greif2010-07-011-1/+3
| | | | | | work even if CallInst::op_* are private llvm-svn: 107390
* Use FuncInfo's isExportedInst accessor method instead ofDan Gohman2010-07-011-1/+1
| | | | | | doing the work manually. llvm-svn: 107384
* Rename CreateRegForValue to CreateReg, and change its argumentDan Gohman2010-07-015-11/+11
| | | | | | | from a Value to a Type, because it doesn't actually care about the Value. llvm-svn: 107383
* Fast isel no longer needs DeadMachineInstrElim to clean up after it.Dan Gohman2010-07-011-12/+8
| | | | llvm-svn: 107381
* Teach fast-isel to avoid loading a value from memory when it's alreadyDan Gohman2010-07-013-0/+49
| | | | | | | available in a register. This is pretty primitive, but it reduces the number of instructions in common testcases by 4%. llvm-svn: 107380
* Enable on-demand fast-isel.Dan Gohman2010-07-014-4/+14
| | | | llvm-svn: 107377
* Fix X86FastISel's add folding to actually work, and not fall backDan Gohman2010-07-011-4/+8
| | | | | | to SelectionDAG. llvm-svn: 107376
* Add AVX SSE3 replicate and convert instructionsBruno Cardoso Lopes2010-07-013-22/+117
| | | | llvm-svn: 107375
* Teach X86FastISel to fold constant offsets and scaled indices inDan Gohman2010-07-012-14/+42
| | | | | | the same address. llvm-svn: 107373
* Reapply r106422, splitting the code for materializing a value out ofDan Gohman2010-07-012-11/+55
| | | | | | | SelectionDAGBuilder::getValue into a helper function, with fixes to use DenseMaps safely. llvm-svn: 107371
* Don't use operator[] here, because it's not desirable to insert a defaultDan Gohman2010-07-011-2/+5
| | | | | | value if the search fails. llvm-svn: 107368
* - Add AVX SSE2 Move doubleword and quadword instructions.Bruno Cardoso Lopes2010-07-016-17/+203
| | | | | | | | - Add encode bits for VEX_W - All 128-bit SSE 1 & SSE2 instructions that are described in the .td file now have a AVX encoded form already working. llvm-svn: 107365
* Test for the -filelist fix.Mikhail Glushenkov2010-07-011-0/+3
| | | | llvm-svn: 107363
* Make -filelist work with -linker=c++.Mikhail Glushenkov2010-07-011-4/+8
| | | | llvm-svn: 107362
* 80-col violation.Mikhail Glushenkov2010-07-011-1/+2
| | | | llvm-svn: 107361
* Trailing whitespace.Mikhail Glushenkov2010-07-016-171/+171
| | | | llvm-svn: 107360
* Add memory operand folding support to InlineSpiller.Jakob Stoklund Olesen2010-07-011-0/+37
| | | | llvm-svn: 107355
* Add support for rematerialization to InlineSpiller.Jakob Stoklund Olesen2010-06-302-33/+130
| | | | llvm-svn: 107351
* Use the catch-all selectors we already found when converting them to use theBill Wendling2010-06-301-16/+23
| | | | | | | correct catch-all value. This saves having to iterate through all of the selectors in the program again. llvm-svn: 107345
* lowerinvoke needs to handle aggregate function args like sjlj eh does.Jim Grosbach2010-06-301-4/+4
| | | | llvm-svn: 107335
* build: Update install-clang target.Daniel Dunbar2010-06-301-1/+1
| | | | llvm-svn: 107334
* Handle array and vector typed parameters in sjljehprepare like we doJim Grosbach2010-06-301-4/+4
| | | | | | structs. rdar://8145832 llvm-svn: 107332
* Remove all debug info related named mdnodes.Devang Patel2010-06-302-10/+34
| | | | llvm-svn: 107323
* grammar tweak in comment.Jim Grosbach2010-06-301-1/+1
| | | | llvm-svn: 107321
* In ScalarEvolution::forgetValue, eliminate any SCEVUnknownDan Gohman2010-06-301-0/+20
| | | | | | | | | | | entries associated with the value being erased in the folding set map. These entries used to be harmless, because a SCEVUnknown doesn't store any information about its Value*, so having a new Value allocated at the old Value's address wasn't a problem. But now that ScalarEvolution is storing more information about values, this is no longer safe. llvm-svn: 107316
* Move MOVD/MODQ code around, creating sections for each of themBruno Cardoso Lopes2010-06-301-52/+62
| | | | llvm-svn: 107308
* Some fool committed without testing (or even building) first.Jakob Stoklund Olesen2010-06-301-2/+2
| | | | llvm-svn: 107307
* Add AVX SSE2 mask creation and conditional store instructionsBruno Cardoso Lopes2010-06-303-10/+52
| | | | llvm-svn: 107306
* Remember to track spill slot uses in VirtRegMap when inserting loads and stores.Jakob Stoklund Olesen2010-06-302-0/+4
| | | | | | | | | LocalRewriter::runOnMachineFunction uses this information to mark dead spill slots. This means that InlineSpiller now also works for functions that spill. llvm-svn: 107302
* Fix a bug introduced in r107211 where instructions with memory operands are ↵Bruno Cardoso Lopes2010-06-301-91/+78
| | | | | | declared as commutable llvm-svn: 107300
* Revert the part of r107257 which introduced new logic for usingDan Gohman2010-06-302-85/+15
| | | | | | | nsw and nuw flags from IR Instructions. On further consideration, this isn't valid. llvm-svn: 107298
* Rename NextPowerOfTwo to RoundUpToPowerOfTwo.Duncan Sands2010-06-301-10/+10
| | | | llvm-svn: 107297
OpenPOWER on IntegriCloud