| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Fill delay slot with useful instructions. Modified from Sparc's version of delay | Akira Hatanaka | 2011-09-29 | 1 | -12/+201 | |
| | | | | | | | | | slot filler. Patch by Reed Kotler at Mips Technologies. llvm-svn: 140825 | |||||
| * | Create a machine basic block in the constant pool and retrieve the symbol ↵ | Bill Wendling | 2011-09-29 | 2 | -0/+7 | |
| | | | | | | | for an MBB. llvm-svn: 140824 | |||||
| * | Support creating a constant pool value for a machine basic block. | Bill Wendling | 2011-09-29 | 2 | -2/+30 | |
| | | | | | | | | This is used when we want to take the address of a machine basic block, but it's not associated with a BB in LLVM IR. llvm-svn: 140823 | |||||
| * | Mips64 arithmetic and logical instructions with two source registers. | Akira Hatanaka | 2011-09-29 | 1 | -0/+30 | |
| | | | | | llvm-svn: 140806 | |||||
| * | Clean up uses of switch instructions so they are not dependent on the ↵ | Eli Friedman | 2011-09-29 | 2 | -11/+21 | |
| | | | | | | | operand ordering. Patch by Stepan Dyatkovskiy. llvm-svn: 140803 | |||||
| * | PTX: Fix broken shared library build | Justin Holewinski | 2011-09-29 | 4 | -22/+43 | |
| | | | | | llvm-svn: 140783 | |||||
| * | Expand the x86 V_SET0* pseudos right after register allocation. | Jakob Stoklund Olesen | 2011-09-29 | 4 | -60/+66 | |
| | | | | | | | | This also makes it possible to reduce the number of pseudo instructions and get rid of the encoding information. llvm-svn: 140776 | |||||
| * | Target/ARM: Unbreak! CMake! Build! | NAKAMURA Takumi | 2011-09-29 | 1 | -1/+0 | |
| | | | | | llvm-svn: 140774 | |||||
| * | Delete NEONMoveFix, now unused. | Jakob Stoklund Olesen | 2011-09-29 | 3 | -149/+0 | |
| | | | | | llvm-svn: 140773 | |||||
| * | Use ExecutionDepsFix instead of NEONMoveFix. | Jakob Stoklund Olesen | 2011-09-29 | 2 | -11/+21 | |
| | | | | | | | | This enables NEON domain tracking across basic blocks, but should otherwise do the same thing. llvm-svn: 140772 | |||||
| * | Move to ISelLowering. | Bill Wendling | 2011-09-29 | 3 | -131/+0 | |
| | | | | | llvm-svn: 140754 | |||||
| * | PTX: Add new patterns for bitconvert and any_extend | Justin Holewinski | 2011-09-29 | 1 | -213/+208 | |
| | | | | | llvm-svn: 140753 | |||||
| * | Revert r140731, "Define classes for unary and binary FP instructions and use ↵ | Jakob Stoklund Olesen | 2011-09-28 | 2 | -63/+55 | |
| | | | | | | | | | them to define" It broke the unit tests. Please reapply with tests fixed. llvm-svn: 140735 | |||||
| * | Tighten a ARM dag combine condition to avoid an identity transformation, which | Evan Cheng | 2011-09-28 | 1 | -1/+1 | |
| | | | | | | | | | ends up introducing a cycle in the DAG. rdar://10196296 llvm-svn: 140733 | |||||
| * | Define classes for unary and binary FP instructions and use them to define | Akira Hatanaka | 2011-09-28 | 2 | -55/+63 | |
| | | | | | | | multiclasses. llvm-svn: 140731 | |||||
| * | PR11033: Make sure we don't generate PCMPGTQ and PCMPEQQ if the target CPU ↵ | Eli Friedman | 2011-09-28 | 1 | -0/+7 | |
| | | | | | | | does not support them. llvm-svn: 140723 | |||||
| * | Perform the lowering only if there are invokes. | Bill Wendling | 2011-09-28 | 1 | -9/+19 | |
| | | | | | llvm-svn: 140719 | |||||
| * | Ahem...actually *add* the ARMSjLjLowering pass to the pass manager. | Bill Wendling | 2011-09-28 | 1 | -1/+1 | |
| | | | | | llvm-svn: 140718 | |||||
| * | PTX: Fix alignment logic | Justin Holewinski | 2011-09-28 | 1 | -1/+1 | |
| | | | | | llvm-svn: 140709 | |||||
| * | Rename predicate In32BitMode to NotFP64bit and add definition of IsFP64bit. | Akira Hatanaka | 2011-09-28 | 1 | -9/+10 | |
| | | | | | llvm-svn: 140705 | |||||
| * | Remove definitions of branch-on-FP-likely instructions. They are deprecated. | Akira Hatanaka | 2011-09-28 | 1 | -4/+0 | |
| | | | | | llvm-svn: 140704 | |||||
| * | Mips64 predicate definitions. Patch by Liu. | Akira Hatanaka | 2011-09-28 | 1 | -0/+7 | |
| | | | | | llvm-svn: 140703 | |||||
| * | PTX: MC-ize the PTX backend (patch 2 of N) | Justin Holewinski | 2011-09-28 | 2 | -12/+3 | |
| | | | | | | | Get rid of some of the no-longer-needed parts of PTXAsmPrinter. llvm-svn: 140698 | |||||
| * | PTX: MC-ize the PTX back-end (patch 1 of N) | Justin Holewinski | 2011-09-28 | 19 | -64/+449 | |
| | | | | | | | | | Lay some groundwork for converting to MC-based asm printer. This is the first of probably many patches to bring the back-end back up-to-date with all of the recent MC changes. llvm-svn: 140697 | |||||
| * | Check in a patch that has already been code reviewed by Owen that I'd ↵ | James Molloy | 2011-09-28 | 8 | -12/+128 | |
| | | | | | | | | | | | | | forgotten to commit. Build on previous patches to successfully distinguish between an M-series and A/R-series MSR and MRS instruction. These take different mask names and have a *slightly* different opcode format. Add decoder and disassembler tests. Improvement on the previous patch - successfully distinguish between valid v6m and v7m masks (one is a subset of the other). The patch had to be edited slightly to apply to ToT. llvm-svn: 140696 | |||||
| * | PTX: Simplify code. No functionality change. | Benjamin Kramer | 2011-09-28 | 1 | -13/+5 | |
| | | | | | llvm-svn: 140680 | |||||
| * | PTX: Pass param name strings per const reference. | Benjamin Kramer | 2011-09-28 | 2 | -7/+7 | |
| | | | | | | | The copies caused use-after-free bugs on std::string implementations without COW (i.e. anything but libstdc++) llvm-svn: 140679 | |||||
| * | Rename SSEDomainFix -> lib/CodeGen/ExecutionDepsFix. | Jakob Stoklund Olesen | 2011-09-28 | 2 | -521/+0 | |
| | | | | | | | I'll clean up the source in the next commit. llvm-svn: 140663 | |||||
| * | Remove MipsFPRound. Mips1 is no longer supported. | Akira Hatanaka | 2011-09-27 | 1 | -4/+0 | |
| | | | | | llvm-svn: 140661 | |||||
| * | Remove X86-dependent stuff from SSEDomainFix. | Jakob Stoklund Olesen | 2011-09-27 | 3 | -21/+31 | |
| | | | | | | | | | | This also enables domain swizzling for AVX code which required a few trivial test changes. The pass will be moved to lib/CodeGen shortly. llvm-svn: 140659 | |||||
| * | Unbreak CMake build. | Ted Kremenek | 2011-09-27 | 2 | -2/+3 | |
| | | | | | llvm-svn: 140655 | |||||
| * | Implement TII::get/setExecutionDomain() for ARM. | Jakob Stoklund Olesen | 2011-09-27 | 2 | -0/+59 | |
| | | | | | llvm-svn: 140653 | |||||
| * | Promote the X86 Get/SetSSEDomain functions to TargetInstrInfo. | Jakob Stoklund Olesen | 2011-09-27 | 3 | -10/+8 | |
| | | | | | | | | | I am going to unify the SSEDomainFix and NEONMoveFix passes into a single target independent pass. They are essentially doing the same thing. llvm-svn: 140652 | |||||
| * | ARM Thumb2 asm parsing [SU]XT[BH] without rotate but with .w. | Jim Grosbach | 2011-09-27 | 1 | -0/+10 | |
| | | | | | | | | | Add inst alias to handle these assembly forms. Add tests, too. rdar://10178799 llvm-svn: 140647 | |||||
| * | This is the start of the new SjLj EH preparation pass, which will replace the | Bill Wendling | 2011-09-27 | 3 | -1/+122 | |
| | | | | | | | | | | | | | | | | | | | | current IR-level pass. The old SjLj EH pass has some problems, especially with the new EH model. Most significantly, it violates some of the new restrictions the new model has. For instance, the 'dispatch' table wants to jump to the landing pad, but we cannot allow that because only an invoke's unwind edge can jump to a landing pad. This requires us to mangle the code something awful. In addition, we need to keep the now dead landingpad instructions around instead of CSE'ing them because the DWARF emitter uses that information (they are dead because no control flow edge will execute them - the control flow edge from an invoke's unwind is superceded by the edge coming from the dispatch). Basically, this pass belongs not at the IR level where SSA is king, but at the code-gen level, where we have more flexibility. llvm-svn: 140646 | |||||
| * | Embed patterns in definitions of MFC1 and MTC1 instead of defining them outside | Akira Hatanaka | 2011-09-27 | 1 | -5/+4 | |
| | | | | | | | of the instruction definitions using Pat<>. llvm-svn: 140644 | |||||
| * | Rename AddSelectionDAGCSEId() to addSelectionDAGCSEId(). | Jim Grosbach | 2011-09-27 | 2 | -2/+2 | |
| | | | | | | | Naming conventions consistency. No functional change. llvm-svn: 140636 | |||||
| * | PTX: Fix case where printed alignment could be 0 | Justin Holewinski | 2011-09-27 | 1 | -1/+1 | |
| | | | | | llvm-svn: 140624 | |||||
| * | PTX: Use external symbols to keep track of params and locals. This also fixes | Justin Holewinski | 2011-09-27 | 6 | -55/+64 | |
| | | | | | | | | a couple of outstanding issues with frame objects occuring as instruction operands. llvm-svn: 140616 | |||||
| * | Use existing function. | Jakob Stoklund Olesen | 2011-09-27 | 1 | -13/+1 | |
| | | | | | llvm-svn: 140615 | |||||
| * | Fix function MipsRegisterInfo::getRegisterNumbering. | Akira Hatanaka | 2011-09-27 | 1 | -33/+81 | |
| | | | | | | | Return numbers of 64-bit registers. llvm-svn: 140609 | |||||
| * | Do not add the pass that restores $gp if target is Mips64. | Akira Hatanaka | 2011-09-27 | 1 | -1/+4 | |
| | | | | | llvm-svn: 140607 | |||||
| * | Mark MipsPseudo isPseudo. | Akira Hatanaka | 2011-09-27 | 1 | -1/+3 | |
| | | | | | llvm-svn: 140598 | |||||
| * | PTX: Add support for sitofp in backend | Justin Holewinski | 2011-09-27 | 1 | -0/+25 | |
| | | | | | llvm-svn: 140593 | |||||
| * | Remove extraneous commit garbage. | Owen Anderson | 2011-09-26 | 1 | -2/+0 | |
| | | | | | llvm-svn: 140581 | |||||
| * | Set register class of a register according to value of HasMips64. | Akira Hatanaka | 2011-09-26 | 1 | -1/+1 | |
| | | | | | llvm-svn: 140570 | |||||
| * | Define variable HasMips64 in MipsTargetLowering. | Akira Hatanaka | 2011-09-26 | 2 | -4/+5 | |
| | | | | | llvm-svn: 140569 | |||||
| * | In single float mode, double precision FP arguments are passed in integer | Akira Hatanaka | 2011-09-26 | 1 | -4/+3 | |
| | | | | | | | registers, so there is no need to check here. llvm-svn: 140568 | |||||
| * | ASR #32 is not allowed on Thumb2 USAT and SSAT instructions. | Owen Anderson | 2011-09-26 | 3 | -3/+37 | |
| | | | | | llvm-svn: 140560 | |||||
| * | PTX: Fix memcpy intrinsic to handle 64-bit pointers | Justin Holewinski | 2011-09-26 | 1 | -8/+9 | |
| | | | | | llvm-svn: 140556 | |||||

