summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PIC16
Commit message (Collapse)AuthorAgeFilesLines
...
* don't copy TargetLowering.Chris Lattner2009-07-281-1/+1
| | | | llvm-svn: 77293
* Remove duplicate entries while printing decls for external symbols.Sanjiv Gupta2009-07-271-2/+23
| | | | | | Some libcall names are same, so they were getting printed twice. llvm-svn: 77215
* Eliminate getNamed/getUnnamedSection, adding a new and unified ↵Chris Lattner2009-07-272-25/+33
| | | | | | | | getOrCreateSection instead. llvm-svn: 77186
* Eliminate SectionFlags, just embed a SectionKind into SectionChris Lattner2009-07-272-17/+29
| | | | | | instead and drive things based off of that. llvm-svn: 77184
* Generate a libcall for i8 multiply.Sanjiv Gupta2009-07-272-0/+16
| | | | llvm-svn: 77179
* fixed incorrect lowering of ISD::SUB node. SUB has only one result value.Sanjiv Gupta2009-07-271-5/+14
| | | | | | It wasn't caught during tests because we never got a sub generated, (i8 was always getting promoted to int, which in turn was broken into subc/sube). Though the optimizer leaves an i8 sub now. llvm-svn: 77178
* reduce indentationChris Lattner2009-07-261-3/+3
| | | | llvm-svn: 77161
* Fix the breakage caused by 76950. Sanjiv Gupta2009-07-261-0/+3
| | | | | | PIC16 has special naming conventions for variables having section names specified via section attribute. llvm-svn: 77153
* Factor commonality in triple match routines into helper template for registeringDaniel Dunbar2009-07-261-17/+3
| | | | | | classes, and migrate existing targets over. llvm-svn: 77126
* Kill Target specific ModuleMatchQuality stuff.Daniel Dunbar2009-07-261-12/+2
| | | | | | - This was overkill and inconsistently implemented. llvm-svn: 77114
* make SectionKind be a first-class pod struct instead of justChris Lattner2009-07-252-4/+4
| | | | | | an enum. llvm-svn: 77096
* this is (unfortunately) several changes mixed together:Chris Lattner2009-07-252-3/+3
| | | | | | | | | | | | | | 1. Spell SectionFlags::Writeable as "Writable". 2. Add predicates for deriving SectionFlags from SectionKinds. 3. Sink ELF-specific getSectionPrefixForUniqueGlobal impl into ELFTargetAsmInfo. 4. Fix SectionFlagsForGlobal to know that BSS/ThreadBSS has the BSS bit set (the real fix for PR4619). 5. Fix isSuitableForBSS to not put globals with explicit sections set in BSS (which was the reason #4 wasn't fixed earlier). 6. Remove my previous hack for PR4619. llvm-svn: 77085
* Simplify JIT target selection.Daniel Dunbar2009-07-251-12/+2
| | | | | | | | | | - Instead of requiring targets to define a JIT quality match function, we just have them specify if they support a JIT. - Target selection for the JIT just gets the host triple and looks for the best target which matches the triple and has a JIT. llvm-svn: 77060
* Mark attributes of return insn correctly. It was being assumed safe to ↵Sanjiv Gupta2009-07-251-0/+1
| | | | | | delete in isSafeToDelete (a thing checked-in 76281). llvm-svn: 77056
* Add new helpers for registering targets.Daniel Dunbar2009-07-253-31/+10
| | | | | | - Less boilerplate == good. llvm-svn: 77052
* we already know the sectionkind when invoking SelectSectionForGlobal,Chris Lattner2009-07-242-5/+7
| | | | | | pass it in instead of recomputing it. llvm-svn: 76990
* make SectionForGlobal non-virtual, add a hook for pic16 to do its "address=" ↵Chris Lattner2009-07-242-13/+18
| | | | | | hack. llvm-svn: 76989
* start refactoring pic16 section selection logic.Chris Lattner2009-07-242-16/+13
| | | | llvm-svn: 76977
* Switch to getNameStr().Daniel Dunbar2009-07-242-5/+5
| | | | llvm-svn: 76962
* simplify code by making special case more obviousChris Lattner2009-07-241-9/+5
| | | | llvm-svn: 76950
* Do not call getMangledName on Intrinsics.Sanjiv Gupta2009-07-231-4/+3
| | | | llvm-svn: 76842
* Switch some clients to Value::getName(), and other getName() userDaniel Dunbar2009-07-221-1/+1
| | | | | | | simplification. - NFC llvm-svn: 76789
* Remove shift amount flavor. It isn't actually complete enough to Eli Friedman2009-07-211-1/+0
| | | | | | | | be useful, and it's currently unused. (Some issues: it isn't actually rich enough to capture the semantics on many architectures, and semantics can vary depending on the type being shifted.) llvm-svn: 76633
* make AsmPrinter::doFinalization iterate over the global variablesChris Lattner2009-07-212-6/+11
| | | | | | | and call PrintGlobalVariable, allowing elimination and simplification of various targets. llvm-svn: 76604
* more random whitespace cleanup, eliminate #define, avoid copyingChris Lattner2009-07-213-67/+59
| | | | | | vectors needlessly, doxygenify comments, improve constness, etc. llvm-svn: 76585
* some simple whitespace cleanup, avoid copying vectors for no reasonChris Lattner2009-07-211-31/+24
| | | | | | as much, etc. llvm-svn: 76578
* clean up some formatting, indent by 2 instead of 4.Chris Lattner2009-07-201-19/+9
| | | | llvm-svn: 76490
* rename TargetAsmInfo::getASDirective -> getDataASDirectiveChris Lattner2009-07-202-16/+12
| | | | llvm-svn: 76431
* Tweak cmake files for the four targets that don't split CodeGen out.Daniel Dunbar2009-07-191-1/+1
| | | | | | | - We should canonicalize this and get rid of the cmake and llvm-config hacks to support both variants. llvm-svn: 76350
* Add dependencies from TargetInfo onto .td generation.Daniel Dunbar2009-07-191-0/+1
| | | | | | | - Shouldn't really be necessary, but currently .inc files get included into some main target headers. llvm-svn: 76349
* Put Target definitions inside Target specific header, and llvm namespace.Daniel Dunbar2009-07-183-4/+7
| | | | llvm-svn: 76344
* Remove some unnecessary expansion markings. Add a few expansion Eli Friedman2009-07-171-24/+7
| | | | | | markings that show up in test/CodeGen/Generic. llvm-svn: 76160
* Kill off <TARGET>MachineModule variables, and <TARGETASMPRINTER>ForceLinkDaniel Dunbar2009-07-161-9/+0
| | | | | | | variables. - Module initialization functions supplanted the need for these. llvm-svn: 75886
* Lift addAssemblyEmitter into LLVMTargetMachine.Daniel Dunbar2009-07-152-14/+0
| | | | | | - No functionality change. llvm-svn: 75859
* Register AsmPrinter for XCore, MSP430, and PIC16 targets.Daniel Dunbar2009-07-154-7/+14
| | | | | | - Switch to standard addAssemblyEmitter logic. llvm-svn: 75854
* Reapply TargetRegistry refactoring commits.Daniel Dunbar2009-07-152-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- Reverse-merging r75799 into '.': U test/Analysis/PointerTracking U include/llvm/Target/TargetMachineRegistry.h U include/llvm/Target/TargetMachine.h U include/llvm/Target/TargetRegistry.h U include/llvm/Target/TargetSelect.h U tools/lto/LTOCodeGenerator.cpp U tools/lto/LTOModule.cpp U tools/llc/llc.cpp U lib/Target/PowerPC/PPCTargetMachine.h U lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp U lib/Target/PowerPC/PPCTargetMachine.cpp U lib/Target/PowerPC/PPC.h U lib/Target/ARM/ARMTargetMachine.cpp U lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp U lib/Target/ARM/ARMTargetMachine.h U lib/Target/ARM/ARM.h U lib/Target/XCore/XCoreTargetMachine.cpp U lib/Target/XCore/XCoreTargetMachine.h U lib/Target/PIC16/PIC16TargetMachine.cpp U lib/Target/PIC16/PIC16TargetMachine.h U lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp U lib/Target/Alpha/AlphaTargetMachine.cpp U lib/Target/Alpha/AlphaTargetMachine.h U lib/Target/X86/X86TargetMachine.h U lib/Target/X86/X86.h U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.h U lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp U lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.h U lib/Target/X86/X86TargetMachine.cpp U lib/Target/MSP430/MSP430TargetMachine.cpp U lib/Target/MSP430/MSP430TargetMachine.h U lib/Target/CppBackend/CPPTargetMachine.h U lib/Target/CppBackend/CPPBackend.cpp U lib/Target/CBackend/CTargetMachine.h U lib/Target/CBackend/CBackend.cpp U lib/Target/TargetMachine.cpp U lib/Target/IA64/IA64TargetMachine.cpp U lib/Target/IA64/AsmPrinter/IA64AsmPrinter.cpp U lib/Target/IA64/IA64TargetMachine.h U lib/Target/IA64/IA64.h U lib/Target/MSIL/MSILWriter.cpp U lib/Target/CellSPU/SPUTargetMachine.h U lib/Target/CellSPU/SPU.h U lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp U lib/Target/CellSPU/SPUTargetMachine.cpp U lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp U lib/Target/Mips/MipsTargetMachine.cpp U lib/Target/Mips/MipsTargetMachine.h U lib/Target/Mips/Mips.h U lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp U lib/Target/Sparc/SparcTargetMachine.cpp U lib/Target/Sparc/SparcTargetMachine.h U lib/ExecutionEngine/JIT/TargetSelect.cpp U lib/Support/TargetRegistry.cpp llvm-svn: 75820
* Revert 75762, 75763, 75766..75769, 75772..75775, 75778, 75780, 75782 to ↵Stuart Hastings2009-07-152-14/+9
| | | | | | | | repair broken LLVM-GCC build. Will revert 75770 in the llvm-gcc trunk. llvm-svn: 75799
* Provide TargetMachine implementations with reference to Target they were createdDaniel Dunbar2009-07-152-7/+9
| | | | | | | | from. - This commit is almost entirely propogating the reference through the TargetMachine subclasses' constructor calls. llvm-svn: 75778
* Register Target's TargetMachine and AsmPrinter in the new registry.Daniel Dunbar2009-07-151-2/+5
| | | | | | | - This abuses TargetMachineRegistry's constructor for now, this will get cleaned up in time. llvm-svn: 75762
* Add TargetInfo libraries for all targets.Daniel Dunbar2009-07-154-0/+77
| | | | | | | | - Intended to match current TargetMachine implementations. - No facilities for linking these in yet. llvm-svn: 75751
* Have asm printers use formatted_raw_ostream directly to avoid aDavid Greene2009-07-147-11/+13
| | | | | | dynamic_cast<>. llvm-svn: 75670
* Reapply my previous asmprinter changes now with more testing and two Chris Lattner2009-07-141-11/+11
| | | | | | | | | | | | | | | | | | | | additional bug fixes: 1. The bug that everyone hit was a problem in the asmprinter where it would remove $stub but keep the L prefix on a name when emitting the indirect symbol. This is easy to fix by keeping the name of the stub and the name of the symbol in a StringMap instead of just keeping a StringSet and trying to reconstruct it late. 2. There was a problem printing the personality function. The current logic to print out the personality function from the DWARF information is a bit of a cesspool right now that duplicates a bunch of other logic in the asm printer. The short version of it is that it depends on emitting both the L and _ prefix for symbols (at least on darwin) and until I can untangle it, it is best to switch the mangler back to emitting both prefixes. llvm-svn: 75646
* llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.Torok Edwin2009-07-145-11/+11
| | | | | | | | | This adds location info for all llvm_unreachable calls (which is a macro now) in !NDEBUG builds. In NDEBUG builds location info and the message is off (it only prints "UREACHABLE executed"). llvm-svn: 75640
* Revert r75615, which depended on 75610.Daniel Dunbar2009-07-141-11/+11
| | | | | | | | | | | | | | | | | | --- Reverse-merging r75615 into '.': U lib/Target/XCore/XCoreAsmPrinter.cpp U lib/Target/PIC16/PIC16AsmPrinter.cpp U lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp U lib/Target/MSP430/MSP430AsmPrinter.cpp U lib/Target/IA64/AsmPrinter/IA64AsmPrinter.cpp U lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp U lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp U lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp U lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp U lib/Target/MSIL/MSILWriter.cpp U lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp U lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp llvm-svn: 75637
* Rename getValueName -> getMangledName.Chris Lattner2009-07-141-11/+11
| | | | llvm-svn: 75615
* assert(0) -> LLVM_UNREACHABLE.Torok Edwin2009-07-115-12/+15
| | | | | | | | | Make llvm_unreachable take an optional string, thus moving the cerr<< out of line. LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for NDEBUG builds. llvm-svn: 75379
* Avoid compiler warnings when assertions are turned off.Duncan Sands2009-07-101-4/+4
| | | | llvm-svn: 75269
* Thread LLVMContext through MVT and related parts of SDISel.Owen Anderson2009-07-091-2/+2
| | | | llvm-svn: 75153
* Implement changes from Chris's feedback.Torok Edwin2009-07-081-0/+2
| | | | | | Finish converting lib/Target. llvm-svn: 75043
* Convert more abort() calls to llvm_report_error().Torok Edwin2009-07-081-2/+2
| | | | | | Also remove trailing semicolon. llvm-svn: 75027
OpenPOWER on IntegriCloud