summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/CellSPU
Commit message (Collapse)AuthorAgeFilesLines
* Remove initialized but otherwise unused variables.Duncan Sands2010-06-291-1/+0
| | | | llvm-svn: 107127
* The hasMemory argument is irrelevant to how the argumentDale Johannesen2010-06-252-4/+1
| | | | | | | | | for an "i" constraint should get lowered; PR 6309. While this argument was passed around a lot, this is the only place it was used, so it goes away from a lot of other places. llvm-svn: 106893
* remove some dead variables reported by clang++Chris Lattner2010-06-211-2/+0
| | | | llvm-svn: 106428
* Mark the SPU 'lr' instruction to never have side effects. Kalle Raiskila2010-06-211-2/+0
| | | | | | | | | This allows the fast regiser allocator to remove redundant register moves. Update a set of tests that depend on the register allocator to be linear scan. llvm-svn: 106420
* Fix the lowering of VECTOR_SHUFFLE on SPU to handle splats.Kalle Raiskila2010-06-211-1/+1
| | | | llvm-svn: 106419
* Fix lowering of VECTOR_SHUFFLE on SPU. Old algorithmKalle Raiskila2010-06-211-9/+14
| | | | | | | used to choke llc with the attached test. llvm-svn: 106411
* Eliminate unnecessary uses of getZExtValue().Dan Gohman2010-06-181-1/+1
| | | | llvm-svn: 106279
* Add a DebugLoc parameter to TargetInstrInfo::InsertBranch(). ThisStuart Hastings2010-06-172-9/+9
| | | | | | | | | | | | 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
* Fix SPU to cope with vector insertelement to an undef position.Kalle Raiskila2010-06-091-3/+8
| | | | | | We default to inserting to lane 0. llvm-svn: 105722
* Handle loading from/storing to undef pointers on SPU by inserting a Kalle Raiskila2010-06-091-1/+3
| | | | | | random load/store, rather than crashing llc. llvm-svn: 105710
* Flag SPU's function call sequence together. Kalle Raiskila2010-06-081-1/+1
| | | | | | | Discussed here: http://lists.cs.uiuc.edu/pipermail/llvmdev/2010-June/032107.html llvm-svn: 105601
* cleanupRafael Espindola2010-06-022-34/+0
| | | | llvm-svn: 105322
* Fix handling of 'load' nodes.Kalle Raiskila2010-06-011-8/+2
| | | | llvm-svn: 105269
* Code refactoring: pull SchedPreference enum from TargetLowering.h to ↵Evan Cheng2010-05-191-1/+1
| | | | | | TargetMachine.h and put it in its own namespace. llvm-svn: 104147
* Rename "HasCalls" in MachineFrameInfo to "AdjustsStack" to better describe whatBill Wendling2010-05-141-2/+2
| | | | | | | | | the variable actually tracks. N.B., several back-ends are using "HasCalls" as being synonymous for something that adjusts the stack. This isn't 100% correct and should be looked into. llvm-svn: 103802
* Implement a bunch more TargetSelectionDAGInfo infrastructure.Dan Gohman2010-05-114-3/+13
| | | | | | | | Move EmitTargetCodeForMemcpy, EmitTargetCodeForMemset, and EmitTargetCodeForMemmove out of TargetLowering and into SelectionDAGInfo to exercise this. llvm-svn: 103481
* Make SPU backend not assert on jump tables.Kalle Raiskila2010-05-111-0/+3
| | | | llvm-svn: 103466
* Fix encoding of 'sf' and 'sfh' instructions.Kalle Raiskila2010-05-101-3/+3
| | | | llvm-svn: 103399
* Testing svn access with a note added to documentation.Kalle Raiskila2010-05-071-0/+2
| | | | llvm-svn: 103271
* Add a DebugLoc argument to TargetInstrInfo::copyRegToReg, so that itDan Gohman2010-05-062-5/+4
| | | | | | doesn't have to guess. llvm-svn: 103194
* Add argument TargetRegisterInfo to loadRegFromStackSlot and storeRegToStackSlot.Evan Cheng2010-05-062-8/+12
| | | | llvm-svn: 103193
* "on the rare occasion the SPU BE produces illegal assembly - it tries to ↵Chris Lattner2010-05-041-2/+10
| | | | | | | | emit an add instruction of the form 'a reg, reg, imm'." Patch by Kalle Raiskila! llvm-svn: 103021
* fix some inconsistent line endings, patch by Jakub Staszak!Chris Lattner2010-05-011-7/+7
| | | | llvm-svn: 102852
* Implement -disable-non-leaf-fp-elim which disable frame pointer eliminationEvan Cheng2010-04-211-1/+1
| | | | | | | optimization for non-leaf functions. This will be hooked up to gcc's -momit-leaf-frame-pointer option. rdar://7886181 llvm-svn: 101984
* teach cellspu how to return i8 and i16 from calls,Chris Lattner2010-04-201-12/+2
| | | | | | patch by Kalle Raiskila! llvm-svn: 101875
* Make processor FUs unique for given itinerary. This extends the limit of 32Anton Korobeynikov2010-04-181-1/+1
| | | | | | | FU per CPU arch to 32 per intinerary allowing precise modelling of quite complex pipelines in the future. llvm-svn: 101754
* Use cast instead of dyn_cast when assuming success.Dan Gohman2010-04-171-6/+6
| | | | llvm-svn: 101636
* Use const qualifiers with TargetLowering. This eliminates severalDan Gohman2010-04-174-20/+19
| | | | | | | | | | | | | 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-172-4/+13
| | | | | | MachineFunctionInfo subclasses. llvm-svn: 101634
* Name these stub files consistently with the SPU and PPC targets' conventions.Chandler Carruth2010-04-172-9/+9
| | | | | | | Also rename the classes appropriately. The CMake build already used these names. llvm-svn: 101631
* 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-6/+6
| | | | llvm-svn: 101334
* "On SPU, variables in the .bss section that are allocated with the .lcomm ↵Chris Lattner2010-04-091-1/+0
| | | | | | | | | | directive are not aligned on 16 byte boundaries. This causes misaligned loads, as the generated assembly assumes this "default" alignment. this patch disables .lcomm in favour of '.local .comm' Patch by Kalle Raisklia! llvm-svn: 100875
* Use twines to simplify calls to report_fatal_error. For code size and ↵Benjamin Kramer2010-04-083-49/+20
| | | | | | readability. llvm-svn: 100756
* rename llvm::llvm_report_error -> llvm::report_fatal_errorChris Lattner2010-04-074-19/+19
| | | | llvm-svn: 100709
* add newlines at end of files.Chris Lattner2010-04-071-1/+1
| | | | llvm-svn: 100706
* remove the MMI pointer from MachineFrameInfo.Chris Lattner2010-04-051-6/+6
| | | | llvm-svn: 100415
* Momentous day: remove the "O" member from AsmPrinter. Now all Chris Lattner2010-04-041-4/+3
| | | | | | | | | | "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
* convert the non-MCInstPrinter'ized EmitInstruction Chris Lattner2010-04-041-2/+5
| | | | | | | implementations to use EmitRawText instead of writing directly to "O". llvm-svn: 100318
* fix PrintAsmOperand and PrintAsmMemoryOperand to pass down Chris Lattner2010-04-041-6/+8
| | | | | | raw_ostream to print to. llvm-svn: 100313
* change a ton of code to not implicitly use the "O" raw_ostreamChris Lattner2010-04-041-50/+49
| | | | | | member of AsmPrinter. Instead, pass it in explicitly. llvm-svn: 100306
* use DebugLoc default ctor instead of DebugLoc::getUnknownLoc()Chris Lattner2010-04-022-6/+5
| | | | llvm-svn: 100214
* Teach AnalyzeBranch, RemoveBranch and the branchDale Johannesen2010-04-021-1/+14
| | | | | | | folder to be tolerant of debug info following the branch(es) at the end of a block. llvm-svn: 100168
* Make isInt?? and isUint?? template specializations of the generic versions. ThisBenjamin Kramer2010-03-291-2/+2
| | | | | | | makes calls a little bit more consistent and allows easy removal of the specializations in the future. Convert all callers to the templated functions. llvm-svn: 99838
* Remove a bunch of integer width predicate functions in favor of MathExtras.Benjamin Kramer2010-03-294-139/+11
| | | | | | | Most of these were unused, some of them were wrong and unused (isS16Constant<short>, isS10Constant<short>). llvm-svn: 99827
* From Kalle Raiskila:Chris Lattner2010-03-294-14/+158
| | | | | | | | "the bigstack patch for SPU, with testcase. It is essentially the patch committed as 97091, and reverted as 97099, but with the following additions: -in vararg handling, registers are marked to be live, to not confuse the register scavenger -function prologue and epilogue are not emitted, if the stack size is 16. 16 means it is empty - there is only the register scavenger emergency spill slot, which is not used as there is no stack." llvm-svn: 99819
* fix a typo, bitconvert from node to itself isn't valid.Chris Lattner2010-03-281-1/+1
| | | | llvm-svn: 99755
* stop using vnot_convChris Lattner2010-03-281-3/+8
| | | | llvm-svn: 99750
* set SDNPVariadic on nodes throughout the rest of the targets thatChris Lattner2010-03-191-1/+2
| | | | | | need them. llvm-svn: 98937
* remove some damaged sign extend patterns that can never match.Chris Lattner2010-03-191-8/+6
| | | | llvm-svn: 98932
OpenPOWER on IntegriCloud