summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PIC16
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
* Mark sublw_cc and subfw_cc as Terminator insns so that they are part of the ↵Sanjiv Gupta2009-07-081-2/+4
| | | | | | terminator insns for a basic block alongwith branch insns. This way a copy is not getting inserted between cmp and branch during PHIElimination disturbing the status flags. llvm-svn: 74992
* Avoid directly relying on llvm.dbg.compile_unit and llvm.dbg.global_variables.Devang Patel2009-07-061-27/+29
| | | | | | PIC16 developers, please verify. Thanks. llvm-svn: 74880
* Add FIXMEs.Devang Patel2009-07-061-0/+3
| | | | llvm-svn: 74879
* pic16 doesn't have a Data64bitsDirective. Set it NULL explicitly to tell the ↵Sanjiv Gupta2009-07-061-0/+1
| | | | | | generic code to not pick the default. llvm-svn: 74839
* pic16 isn't ready to handle llvm.metadata yet.Sanjiv Gupta2009-07-061-0/+2
| | | | llvm-svn: 74838
* Implement _CONFIG macro to allow users to se to configuration settings on ↵Sanjiv Gupta2009-07-064-26/+233
| | | | | | | | | | | the part. Implement _section macro to allow users to place objects in specific sections. Implement _address macro to allow users to place objects at a particular address. Placing objects at a memory address: crate a unique section name from varname, address, object type and put that section at specified address. Mark this section a full (size = banksize) so that other objects do not compete for it while placing objects to sections in AsmPrinter. llvm-svn: 74822
* Corrected the names description. Change in a comment. No functionality change.Sanjiv Gupta2009-07-061-1/+1
| | | | llvm-svn: 74819
* Silence a warning when assertions are turned off.Duncan Sands2009-07-031-0/+1
| | | | llvm-svn: 74778
* For extended loads of type i1 to i8, we will need to at least one byte from ↵Sanjiv Gupta2009-07-032-2/+6
| | | | | | | | memory. The change in the .td file is to mark the side effects of mov insn. llvm-svn: 74768
* Add NumFixedArgs attribute to CallSDNode which indicates the number of fixed ↵Tilmann Scheller2009-07-031-2/+3
| | | | | | | | | | | arguments in a vararg call. With the SVR4 ABI on PowerPC, vector arguments for vararg calls are passed differently depending on whether they are a fixed or a variable argument. Variable vector arguments always go into memory, fixed vector arguments are put into vector registers. If there are no free vector registers available, fixed vector arguments are put on the stack. The NumFixedArgs attribute allows to decide for an argument in a vararg call whether it belongs to the fixed or variable portion of the parameter list. llvm-svn: 74764
* Update comments to make it clear that the function alignment is the Log2 of theBill Wendling2009-07-011-1/+1
| | | | | | bytes and not bytes. llvm-svn: 74624
* Remove unused AsmPrinter OptLevel argument, and propogate.Daniel Dunbar2009-07-014-10/+7
| | | | | | | - This more or less amounts to a revert of r65379. I'm curious to know what happened that caused this variable to become unused. llvm-svn: 74579
* Add an "alignment" field to the MachineFunction object. It makes more sense toBill Wendling2009-06-301-0/+5
| | | | | | | | | | have the alignment be calculated up front, and have the back-ends obey whatever alignment is decided upon. This allows for future work that would allow for precise no-op placement and the like. llvm-svn: 74564
* Fix may-be-used-uninitialized warning.Daniel Dunbar2009-06-261-1/+1
| | | | llvm-svn: 74253
* Added floating point conditional operations support via libcalls.Sanjiv Gupta2009-06-251-0/+29
| | | | llvm-svn: 74187
* Identify unconditional gotos and generate a page sel instructions before them.Sanjiv Gupta2009-06-251-4/+6
| | | | llvm-svn: 74172
* Provide InitializeAllTargets and InitializeNativeTarget functions in theBob Wilson2009-06-231-4/+2
| | | | | | | | C bindings. Change all the backend "Initialize" functions to have C linkage. Change the "llvm/Config/Targets.def" header to use C-style comments to avoid compile warnings. llvm-svn: 74026
* Fold the add (ptr, offset) into ptr[offset] only if the offset is small ↵Sanjiv Gupta2009-06-231-2/+4
| | | | | | enough. movwi and moviw allow value of 5-bits only (i.e. 32). llvm-svn: 73953
* mv CodeGen/DebugLoc.h Support/DebugLoc.hDevang Patel2009-06-191-1/+1
| | | | llvm-svn: 73786
* Introduce new headers whose inclusion forces linking andDouglas Gregor2009-06-161-0/+5
| | | | | | | | | initialization of all targets (InitializeAllTargets.h) or assembler printers (InitializeAllAsmPrinters.h). This is a step toward the elimination of relinked object files, so that we can build normal archives. llvm-svn: 73543
* Added missing libcalls for floating point to int conversions.Sanjiv Gupta2009-06-161-7/+59
| | | | llvm-svn: 73491
* Code Restructuring. No functionality change.Sanjiv Gupta2009-06-164-188/+352
| | | | llvm-svn: 73481
* The subprogram descriptor for a function may be missing (llvm-ld linking two ↵Sanjiv Gupta2009-06-133-78/+134
| | | | | | | | | static functions with same name), so pick up the compilation unit for the function from the first valid debug loc of its instructions. This patch also emits debug info for structure (aggregate types in general) types. llvm-svn: 73295
* Generate libcalls for floating point arithmetic and casting operations.Sanjiv Gupta2009-06-111-1/+22
| | | | llvm-svn: 73194
* More formatting.Sanjiv Gupta2009-06-111-3/+13
| | | | llvm-svn: 73185
OpenPOWER on IntegriCloud