Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | MIPS DSP: add support for extract-word instructions. | Akira Hatanaka | 2012-09-27 | 1 | -0/+2 | |
| | | | | llvm-svn: 164749 | |||||
* | Add MIPS DSP register classes. Set actions of DSP vector operations and override | Akira Hatanaka | 2012-09-21 | 1 | -0/+10 | |
| | | | | | | TargetLowering's callback functions. llvm-svn: 164431 | |||||
* | SelectionDAG node enums for MIPS DSP nodes. | Akira Hatanaka | 2012-09-21 | 1 | -0/+41 | |
| | | | | llvm-svn: 164430 | |||||
* | Expand DYNAMIC_STACKALLOC nodes rather than doing custom-lowering. | Akira Hatanaka | 2012-07-31 | 1 | -1/+0 | |
| | | | | | | | The frame object which points to the dynamically allocated area will not be needed after changes are made to cease reserving call frames. llvm-svn: 161076 | |||||
* | Implement MipsTargetLowering::LowerSELECT_CC to custom lower SELECT_CC. | Akira Hatanaka | 2012-07-11 | 1 | -0/+1 | |
| | | | | llvm-svn: 160064 | |||||
* | Lower RETURNADDR node in Mips backend. | Akira Hatanaka | 2012-07-11 | 1 | -0/+1 | |
| | | | | | | Patch by Sasa Stankovic. llvm-svn: 160031 | |||||
* | Fix coding style violations. Remove white spaces and tabs. | Akira Hatanaka | 2012-06-14 | 1 | -1/+2 | |
| | | | | llvm-svn: 158471 | |||||
* | Set a higher value for maxStoresPerMemcpy in MipsISelLowering.cpp. | Akira Hatanaka | 2012-06-13 | 1 | -0/+5 | |
| | | | | llvm-svn: 158414 | |||||
* | Define functions MipsTargetLowering::LowerLOAD and LowerSTORE which | Akira Hatanaka | 2012-06-02 | 1 | -0/+2 | |
| | | | | | | custom-lower unaligned load and store nodes. llvm-svn: 157864 | |||||
* | Define Mips specific unaligned load/store nodes. | Akira Hatanaka | 2012-06-02 | 1 | -1/+11 | |
| | | | | llvm-svn: 157863 | |||||
* | Change interface for TargetLowering::LowerCallTo and TargetLowering::LowerCall | Justin Holewinski | 2012-05-25 | 1 | -7/+1 | |
| | | | | | | | | | | to pass around a struct instead of a large set of individual values. This cleans up the interface and allows more information to be added to the struct for future targets without requiring changes to each and every target. NV_CONTRIB llvm-svn: 157479 | |||||
* | Expand 64-bit shifts if target ABI is O32. | Akira Hatanaka | 2012-05-09 | 1 | -0/+2 | |
| | | | | llvm-svn: 156457 | |||||
* | Add support for the 'I' inline asm constraint. Also add tests | Eric Christopher | 2012-05-07 | 1 | -0/+9 | |
| | | | | | | | | from the previous 2 patches. Patch by Jack Carter. llvm-svn: 156279 | |||||
* | Emit abs.s or abs.d only if -enable-no-nans-fp-math is supplied by user. | Akira Hatanaka | 2012-04-11 | 1 | -0/+1 | |
| | | | | | | Invalid operation is signaled if the operand of these instructions is NaN. llvm-svn: 154545 | |||||
* | Reorder includes in Target backends to following coding standards. Remove ↵ | Craig Topper | 2012-03-17 | 1 | -2/+2 | |
| | | | | | | some superfluous forward declarations. llvm-svn: 152997 | |||||
* | Lower SETCC nodes during legalization. Previously, it was lowered in DAG ↵ | Akira Hatanaka | 2012-03-09 | 1 | -0/+1 | |
| | | | | | | combine pass. llvm-svn: 152450 | |||||
* | Re-commit r151623 with fix. Only issue special no-return calls if it's a ↵ | Evan Cheng | 2012-02-28 | 1 | -1/+1 | |
| | | | | | | direct call. llvm-svn: 151645 | |||||
* | Revert r151623 "Some ARM implementaions, e.g. A-series, does return stack ↵ | Daniel Dunbar | 2012-02-28 | 1 | -1/+1 | |
| | | | | | | prediction. ...", it is breaking the Clang build during the Compiler-RT part. llvm-svn: 151630 | |||||
* | remove blanks, and some code format | Jia Liu | 2012-02-28 | 1 | -1/+1 | |
| | | | | llvm-svn: 151625 | |||||
* | Some ARM implementaions, e.g. A-series, does return stack prediction. That is, | Evan Cheng | 2012-02-28 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | | the processor keeps a return addresses stack (RAS) which stores the address and the instruction execution state of the instruction after a function-call type branch instruction. Calling a "noreturn" function with normal call instructions (e.g. bl) can corrupt RAS and causes 100% return misprediction so LLVM should use a unconditional branch instead. i.e. mov lr, pc b _foo The "mov lr, pc" is issued in order to get proper backtrace. rdar://8979299 llvm-svn: 151623 | |||||
* | Add a new MachineJumpTableInfo entry type, EK_GPRel64BlockAddress, which is | Akira Hatanaka | 2012-02-03 | 1 | -0/+2 | |
| | | | | | | | | needed to emit a 64-bit gp-relative relocation entry. Make changes necessary for emitting jump tables which have entries with directive .gpdword. This patch does not implement the parts needed for direct object emission or JIT. llvm-svn: 149668 | |||||
* | Rename WrapperPIC. It is now used for both pic and static. | Akira Hatanaka | 2011-12-09 | 1 | -1/+1 | |
| | | | | llvm-svn: 146232 | |||||
* | Implement 64-bit support for thread local storage handling. | Akira Hatanaka | 2011-12-08 | 1 | -7/+0 | |
| | | | | | | | | | | - Modify lowering of global TLS address nodes. - Modify isel of ThreadPointer. - Wrap target global TLS address nodes that are operands of loads with WrapperPIC. - Remove Mips-specific DAG nodes TlsGd, TprelHi and TprelLo, which can be substituted with other existing nodes. llvm-svn: 146175 | |||||
* | Make the type of shift amount i32 in order to reduce the number of shift | Akira Hatanaka | 2011-11-07 | 1 | -0/+2 | |
| | | | | | | instruction definitions. llvm-svn: 143989 | |||||
* | Add variable IsO32 to MipsTargetLowering. | Akira Hatanaka | 2011-10-28 | 1 | -1/+1 | |
| | | | | llvm-svn: 143213 | |||||
* | Modify lowering of GlobalAddress so that correct code is emitted when target is | Akira Hatanaka | 2011-10-11 | 1 | -1/+1 | |
| | | | | | | Mips64. llvm-svn: 141618 | |||||
* | Define variable HasMips64 in MipsTargetLowering. | Akira Hatanaka | 2011-09-26 | 1 | -1/+2 | |
| | | | | llvm-svn: 140569 | |||||
* | Add codegen support for vector select (in the IR this means a select | Duncan Sands | 2011-09-06 | 1 | -1/+1 | |
| | | | | | | | | | | | | with a vector condition); such selects become VSELECT codegen nodes. This patch also removes VSETCC codegen nodes, unifying them with SETCC nodes (codegen was actually often using SETCC for vector SETCC already). This ensures that various DAG combiner optimizations kick in for vector comparisons. Passes dragonegg bootstrap with no testsuite regressions (nightly testsuite as well as "make check-all"). Patch mostly by Nadav Rotem. llvm-svn: 139159 | |||||
* | Move pattern matching for EXT and INS to post-legalization DAGCombine per ↵ | Akira Hatanaka | 2011-08-17 | 1 | -2/+0 | |
| | | | | | | Bruno's comment. llvm-svn: 137831 | |||||
* | Add support for ext and ins. | Akira Hatanaka | 2011-08-17 | 1 | -1/+6 | |
| | | | | llvm-svn: 137804 | |||||
* | Define unaligned load and store. | Akira Hatanaka | 2011-08-12 | 1 | -0/+2 | |
| | | | | llvm-svn: 137515 | |||||
* | Code generation for 'fence' instruction. | Eli Friedman | 2011-07-27 | 1 | -0/+1 | |
| | | | | llvm-svn: 136283 | |||||
* | Lower memory barriers to sync instructions. | Akira Hatanaka | 2011-07-19 | 1 | -1/+4 | |
| | | | | llvm-svn: 135537 | |||||
* | Remove getRegClassForInlineAsmConstraint for Mips. | Eric Christopher | 2011-06-29 | 1 | -4/+0 | |
| | | | | | | Part of rdar://9643582 llvm-svn: 134084 | |||||
* | Re-apply 132758 and 132768 which were speculatively reverted in 132777. | Akira Hatanaka | 2011-06-21 | 1 | -1/+3 | |
| | | | | llvm-svn: 133494 | |||||
* | Speculatively revert 132758 and 132768 to try to fix the Windows buildbots. | Eric Christopher | 2011-06-09 | 1 | -3/+1 | |
| | | | | llvm-svn: 132777 | |||||
* | Fix bug in lowering of DYNAMIC_STACKALLOC nodes. The correct offset of the | Akira Hatanaka | 2011-06-08 | 1 | -1/+3 | |
| | | | | | | dynamically allocated stack area was not set. llvm-svn: 132758 | |||||
* | Custom-lower FRAMEADDR. Patch by Sasa Stankovic. | Akira Hatanaka | 2011-06-02 | 1 | -0/+1 | |
| | | | | llvm-svn: 132444 | |||||
* | This patch implements atomic intrinsics atomic.load.add (sub,and,or,xor, | Bruno Cardoso Lopes | 2011-05-31 | 1 | -0/+10 | |
| | | | | | | | | | | nand), atomic.swap and atomic.cmp.swap, all in i8, i16 and i32 versions. The intrinsics are implemented by creating pseudo-instructions, which are then expanded in the method MipsTargetLowering::EmitInstrWithCustomInserter. Patch by Sasa Stankovic. llvm-svn: 132323 | |||||
* | This patch implements the thread local storage. Implemented are General | Bruno Cardoso Lopes | 2011-05-31 | 1 | -0/+10 | |
| | | | | | | | | Dynamic, Initial Exec and Local Exec TLS models. Patch by Sasa Stankovic llvm-svn: 132322 | |||||
* | Define a wrapper node for target constant nodes (tglobaladdr, etc.). | Akira Hatanaka | 2011-05-28 | 1 | -1/+3 | |
| | | | | | | Need this to prevent emitting illegal conditional move instructions. llvm-svn: 132240 | |||||
* | Remove MipsTargetLowering::LowerFP_TO_SINT. Patterns for fp_to_sint have already | Akira Hatanaka | 2011-05-25 | 1 | -1/+0 | |
| | | | | | | been defined in MipsInstrFPU.td. llvm-svn: 132076 | |||||
* | Custom-lower FCOPYSIGN nodes. | Akira Hatanaka | 2011-05-25 | 1 | -0/+1 | |
| | | | | llvm-svn: 132074 | |||||
* | Make the logic for determining function alignment more explicit. No ↵ | Eli Friedman | 2011-05-06 | 1 | -3/+0 | |
| | | | | | | functionality change. llvm-svn: 131012 | |||||
* | Reverse unnecessary changes made in r129606 and r129608. There is no change ↵ | Akira Hatanaka | 2011-04-15 | 1 | -8/+7 | |
| | | | | | | in functionality. llvm-svn: 129612 | |||||
* | Fix lines that have incorrect indentation or exceed 80 columns. There is no ↵ | Akira Hatanaka | 2011-04-15 | 1 | -7/+8 | |
| | | | | | | change in functionality. llvm-svn: 129606 | |||||
* | Add pass that expands pseudo instructions into target instructions after ↵ | Akira Hatanaka | 2011-04-15 | 1 | -1/+4 | |
| | | | | | | register allocation. Define pseudos that get expanded into mtc1 or mfc1 instructions. llvm-svn: 129594 | |||||
* | Added support for FP conditional move instructions and fixed bugs in ↵ | Akira Hatanaka | 2011-03-31 | 1 | -8/+4 | |
| | | | | | | handling of FP comparisons. llvm-svn: 128650 | |||||
* | Improve div/rem node handling on mips. Patch by Akira Hatanaka | Bruno Cardoso Lopes | 2011-03-04 | 1 | -1/+5 | |
| | | | | llvm-svn: 127034 | |||||
* | Lowers block address. Currently asserts when relocation model is not PIC. ↵ | Bruno Cardoso Lopes | 2011-03-04 | 1 | -0/+1 | |
| | | | | | | Patch by Akira Hatanaka llvm-svn: 127027 |