summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PIC16
Commit message (Collapse)AuthorAgeFilesLines
* Don't pass StringRef by reference.Benjamin Kramer2010-07-142-2/+2
| | | | llvm-svn: 108366
* fix a bug found by a warning I added to clang this morning.Chris Lattner2010-07-141-1/+1
| | | | llvm-svn: 108309
* Convert some tab stops into spaces.Duncan Sands2010-07-121-1/+1
| | | | llvm-svn: 108130
* Fix PIC16 comments referencing copyRegToReg.Jakob Stoklund Olesen2010-07-111-3/+3
| | | | llvm-svn: 108082
* Replace copyRegToReg with copyPhysReg for PIC16.Jakob Stoklund Olesen2010-07-112-24/+17
| | | | llvm-svn: 108081
* Split the SDValue out of OutputArg so that SelectionDAG-independentDan Gohman2010-07-072-5/+14
| | | | | | code can do calling-convention queries. This obviates OutputArgReg. llvm-svn: 107786
* Propagate debug loc.Devang Patel2010-07-061-2/+3
| | | | llvm-svn: 107710
* Reapply r107655 with fixes; insert the pseudo instruction intoDan Gohman2010-07-061-11/+9
| | | | | | | the block before calling the expansion hook. And don't put EFLAGS in a mbb's live-in list twice. llvm-svn: 107691
* Revert r107655.Dan Gohman2010-07-061-9/+11
| | | | llvm-svn: 107668
* Fix a bunch of custom-inserter functions to handle the case whereDan Gohman2010-07-061-11/+9
| | | | | | the pseudo instruction is not at the end of the block. llvm-svn: 107655
* Use ValueMap instead of DenseMap.Devang Patel2010-06-242-14/+14
| | | | | | The ValueMapper used by various cloning utility maps MDNodes also. llvm-svn: 106706
* Remove isTwoAddress from PIC16.Eric Christopher2010-06-211-6/+6
| | | | llvm-svn: 106447
* Eliminate unnecessary uses of getZExtValue().Dan Gohman2010-06-181-3/+3
| | | | llvm-svn: 106279
* Add a DebugLoc parameter to TargetInstrInfo::InsertBranch(). ThisStuart Hastings2010-06-172-4/+5
| | | | | | | | | | | | addresses a longstanding deficiency noted in many FIXMEs scattered across all the targets. This effectively moves the problem up one level, replacing eleven FIXMEs in the targets with eight FIXMEs in CodeGen, plus one path through FastISel where we actually supply a DebugLoc, fixing Radar 7421831. llvm-svn: 106243
* cleanupRafael Espindola2010-06-022-11/+0
| | | | llvm-svn: 105322
* MC: Add dyn_cast support to MCSection.Daniel Dunbar2010-05-171-1/+7
| | | | | | - Of questionable utility, since in general anything which wants to do this should probably be within a target specific hook, which can rely on the sections being of the appropriate type. However, it can be useful for short term hacks. llvm-svn: 103980
* I got tired of VISIBILITY_HIDDEN colliding with the gcc enum. Rename itDuncan Sands2010-05-112-2/+2
| | | | | | | to LLVM_LIBRARY_VISIBILITY and introduce LLVM_GLOBAL_VISIBILITY, which is the opposite, for future use by dragonegg. llvm-svn: 103495
* Implement a bunch more TargetSelectionDAGInfo infrastructure.Dan Gohman2010-05-114-4/+13
| | | | | | | | Move EmitTargetCodeForMemcpy, EmitTargetCodeForMemset, and EmitTargetCodeForMemmove out of TargetLowering and into SelectionDAGInfo to exercise this. llvm-svn: 103481
* Use overloaded operators instead of DIDescriptor::getNode()Devang Patel2010-05-071-7/+7
| | | | llvm-svn: 103276
* Add a DebugLoc argument to TargetInstrInfo::copyRegToReg, so that itDan Gohman2010-05-062-4/+4
| | | | | | doesn't have to guess. llvm-svn: 103194
* Add argument TargetRegisterInfo to loadRegFromStackSlot and storeRegToStackSlot.Evan Cheng2010-05-062-4/+8
| | | | llvm-svn: 103193
* fix some inconsistent line endings, patch by Jakub Staszak!Chris Lattner2010-05-011-7/+7
| | | | llvm-svn: 102852
* Get rid of the EdgeMapping map. Instead, just check for BasicBlockDan Gohman2010-05-012-10/+5
| | | | | | changes before doing phi lowering for switches. llvm-svn: 102809
* Add const qualifiers to TargetLoweringObjectFile usage.Dan Gohman2010-04-173-5/+5
| | | | llvm-svn: 101640
* Use const qualifiers with TargetLowering. This eliminates severalDan Gohman2010-04-178-98/+99
| | | | | | | | | | | | | const_casts, and it reinforces the design of the Target classes being immutable. SelectionDAGISel::IsLegalToFold is now a static member function, because PIC16 uses it in an unconventional way. There is more room for API cleanup here. And PIC16's AsmPrinter no longer uses TargetLowering. llvm-svn: 101635
* Move per-function state out of TargetLowering subclasses and intoDan Gohman2010-04-175-36/+95
| | | | | | MachineFunctionInfo subclasses. llvm-svn: 101634
* Add skeleton target-specific SelectionDAGInfo files.Dan Gohman2010-04-163-0/+52
| | | | llvm-svn: 101564
* Add const qualifiers to CodeGen's use of LLVM IR constructs.Dan Gohman2010-04-153-4/+4
| | | | llvm-svn: 101334
* Fix memory leaks for external symbol name strings.Sanjiv Gupta2010-04-073-20/+38
| | | | llvm-svn: 100601
* prune some #includes.Chris Lattner2010-04-051-2/+0
| | | | llvm-svn: 100399
* Momentous day: remove the "O" member from AsmPrinter. Now all Chris Lattner2010-04-044-31/+33
| | | | | | | | | | "asm printering" happens through MCStreamer. This also Streamerizes PIC16 debug info, which escaped my attention. This removes a leak from LLVMTargetMachine of the 'legacy' output stream. llvm-svn: 100327
* streamerize the rest of PIC16 asm printer.Chris Lattner2010-04-041-41/+63
| | | | llvm-svn: 100317
* change a ton of code to not implicitly use the "O" raw_ostreamChris Lattner2010-04-042-8/+8
| | | | | | member of AsmPrinter. Instead, pass it in explicitly. llvm-svn: 100306
* rename NewDebugLoc -> DebugLoc, prune #includes in DebugLoc.h.Chris Lattner2010-04-021-1/+1
| | | | | | | This keeps around temporary typedef for clang/llvm-gcc so the build won't break when I commit this :) llvm-svn: 100218
* use DebugLoc default ctor instead of DebugLoc::getUnknownLoc()Chris Lattner2010-04-021-4/+4
| | | | llvm-svn: 100214
* Switch the code generator (except the JIT) onto the new DebugLocChris Lattner2010-04-022-9/+5
| | | | | | | | | | | | | | | representation. This eliminates the 'DILocation' MDNodes for file/line/col tuples from -O0 -g codegen. This remove the old DebugLoc class, making it a typedef for DebugLoc, I'll rename NewDebugLoc next. I didn't update the JIT to use the new apis, so it will continue to work, but be as slow as before. Someone should eventually do this or, better yet, rip out the JIT debug info stuff and build the JIT on top of MC. llvm-svn: 100209
* Teach AnalyzeBranch, RemoveBranch and the branchDale Johannesen2010-04-021-0/+5
| | | | | | | folder to be tolerant of debug info following the branch(es) at the end of a block. llvm-svn: 100168
* XFAIL some PIC16 tests when running under valgrind-leaks. I don't expect theseBenjamin Kramer2010-03-301-0/+2
| | | | | | to be fixed any time soon. llvm-svn: 99888
* PIC16: Plug a leak in PIC16Section by allocating name & address strings in theBenjamin Kramer2010-03-302-13/+20
| | | | | | MCContext. There is still one leak left in PIC16Section (the Items vector). llvm-svn: 99887
* PIC16: Simplify code by using a std::set<std::string> instead of a sorted & ↵Benjamin Kramer2010-03-202-20/+6
| | | | | | uniqued std::list of leaked char*. llvm-svn: 99061
* Initialize Size member to appease valgrind.Benjamin Kramer2010-03-171-1/+1
| | | | llvm-svn: 98763
* eliminate the now-unneeded context argument of MBB::getSymbol()Chris Lattner2010-03-131-1/+1
| | | | llvm-svn: 98451
* rearrange MCContext ownership. Before LLVMTargetMachine created it Chris Lattner2010-03-132-6/+4
| | | | | | | | | | | and passing off ownership to AsmPrinter. Now MachineModuleInfo creates it and owns it by value. This allows us to use MCSymbols more consistently throughout the rest of the code generator, and simplifies a bit of code. This also allows MachineFunction to keep an MCContext reference handy, and cleans up the TargetRegistry interfaces for AsmPrinters. llvm-svn: 98450
* Fix LLVM build when the user specifies CPPFLAGS on the make command line.Jeffrey Yasskin2010-03-121-1/+1
| | | | llvm-svn: 98394
* inline GetGlobalValueSymbol into the rest its callers andChris Lattner2010-03-121-6/+7
| | | | | | remove it. llvm-svn: 98390
* Change the Value argument to eliminateFrameIndex to a type-tagged value. ThisJim Grosbach2010-03-092-2/+2
| | | | | | | | | | is preparatory to having PEI's scavenged frame index value reuse logic properly distinguish types of frame values (e.g., whether the value is stack-pointer relative or frame-pointer relative). No functionality change. llvm-svn: 98086
* Avoid using DIDescriptor.isNull(). Devang Patel2010-03-081-1/+1
| | | | | | This is a first step towards eliminating checks in Descriptor constructors. llvm-svn: 97975
* Revert r97947.Devang Patel2010-03-081-1/+1
| | | | llvm-svn: 97963
* Avoid using DIDescriptor.isNull().Devang Patel2010-03-081-1/+1
| | | | | | This is a first step towards eliminating unncessary constructor checks in light weight DIDescriptor wrappers. llvm-svn: 97947
* Teach the pic16 target to recognize pic16-*-* triples.John McCall2010-03-041-1/+2
| | | | llvm-svn: 97691
OpenPOWER on IntegriCloud