| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Clean up and optimizations to the X86 shuffle lowering code. No functional ↵ | Craig Topper | 2011-12-05 | 1 | -52/+36 |
| | | | | | | | change. llvm-svn: 145803 | ||||
| * | Fix 80-column issues. | Bob Wilson | 2011-12-04 | 1 | -4/+8 |
| | | | | | llvm-svn: 145783 | ||||
| * | Emit the ctors in the proper order on ARM/EABI. | Anton Korobeynikov | 2011-12-03 | 1 | -0/+1 |
| | | | | | | | | | Maybe some targets should use this as well. Patch by Evgeniy Stepanov! llvm-svn: 145781 | ||||
| * | Sparc CodeGen: Fix AnalyzeBranch for PR 10282. Removing addSuccessor() since | Venkatraman Govindaraju | 2011-12-03 | 1 | -1/+1 |
| | | | | | | | AnalyzeBranch doesn't change the successor, just the order. llvm-svn: 145779 | ||||
| * | Check for stack space more intelligently. | Sanjoy Das | 2011-12-03 | 1 | -4/+16 |
| | | | | | | | | | | libgcc sets the stack limit field in TCB to 256 bytes above the actual allocated stack limit. This means if the function's stack frame needs less than 256 bytes, we can just compare the stack pointer with the stack limit. This should result in lesser calls to __morestack. llvm-svn: 145766 | ||||
| * | Fix a bug in the x86-32 code generated for segmented stacks. | Sanjoy Das | 2011-12-03 | 1 | -8/+0 |
| | | | | | | | | | | | Currently LLVM pads the call to __morestack with a add and sub of 8 bytes to esp. This isn't correct since __morestack expects the call to be followed directly by a ret. This commit also adjusts the relevant test-case. llvm-svn: 145765 | ||||
| * | Creating multiple JITs on X86 in multiple threads causes multiple writes (of | Nick Lewycky | 2011-12-03 | 1 | -0/+2 |
| | | | | | | | | | the same value) to this variable. This code could be refactored, but it doesn't matter since the old JIT is going away. Add tsan annotations to ignore the race. llvm-svn: 145745 | ||||
| * | [arm-fast-isel] Unaligned stores of floats require special care. | Chad Rosier | 2011-12-03 | 1 | -3/+18 |
| | | | | | | | rdar://10510150 llvm-svn: 145742 | ||||
| * | ARM NEON VEXT aliases for data type suffices. | Jim Grosbach | 2011-12-02 | 3 | -11/+56 |
| | | | | | llvm-svn: 145726 | ||||
| * | ARM VEXT tighten up operand classes a bit. | Jim Grosbach | 2011-12-02 | 1 | -2/+2 |
| | | | | | llvm-svn: 145722 | ||||
| * | ARM VST1 single lane assembly parsing. | Jim Grosbach | 2011-12-02 | 2 | -4/+179 |
| | | | | | llvm-svn: 145718 | ||||
| * | Move global variables in TargetMachine into new TargetOptions class. As an API | Nick Lewycky | 2011-12-02 | 43 | -373/+264 |
| | | | | | | | | | | | | | change, now you need a TargetOptions object to create a TargetMachine. Clang patch to follow. One small functionality change in PTX. PTX had commented out the machine verifier parts in their copy of printAndVerify. That now calls the version in LLVMTargetMachine. Users of PTX who need verification disabled should rely on not passing the command-line flag to enable it. llvm-svn: 145714 | ||||
| * | ARM VLD1 single lane assembly parsing. | Jim Grosbach | 2011-12-02 | 3 | -9/+124 |
| | | | | | llvm-svn: 145712 | ||||
| * | ARM encoder method needs the physical register number, not the enum. | Jim Grosbach | 2011-12-02 | 1 | -1/+1 |
| | | | | | llvm-svn: 145711 | ||||
| * | [arm-fast-isel] After promoting a function parameter be sure to update the | Chad Rosier | 2011-12-02 | 1 | -2/+4 |
| | | | | | | | | | argument value type. Otherwise, the sign/zero-extend has no effect on arguments passed via the stack (i.e., undefined high-order bits). rdar://10515467 llvm-svn: 145701 | ||||
| * | Clean up aliases for ARM VLD1 single-lane assembly parsing a bit. | Jim Grosbach | 2011-12-02 | 3 | -26/+133 |
| | | | | | | | Add the 16-bit lane variants while I'm at it. llvm-svn: 145693 | ||||
| * | Add XOP feature flag. | Jan Sjödin | 2011-12-02 | 3 | -2/+12 |
| | | | | | llvm-svn: 145682 | ||||
| * | Reduce duplicate code in isHorizontalBinOp and add some asserts to protect ↵ | Craig Topper | 2011-12-02 | 1 | -32/+24 |
| | | | | | | | assumptions llvm-svn: 145681 | ||||
| * | Add instruction selection support for horizontal add/sub of 256-bit floating ↵ | Craig Topper | 2011-12-02 | 1 | -2/+4 |
| | | | | | | | point vectors. Also add the test case for 256-bit integer vectors. llvm-svn: 145680 | ||||
| * | remove unneeded FIXME comment | Hal Finkel | 2011-12-02 | 1 | -1/+0 |
| | | | | | llvm-svn: 145679 | ||||
| * | update PPC 940 hazard rec. to function in postRA mode | Hal Finkel | 2011-12-02 | 6 | -142/+93 |
| | | | | | llvm-svn: 145676 | ||||
| * | ARM start parsing VLD1 single lane instructions. | Jim Grosbach | 2011-12-02 | 2 | -14/+115 |
| | | | | | | | | The alias pseudos need cleaned up for size suffix handling, but this gets the basics working. Will be cleaning up and adding more. llvm-svn: 145655 | ||||
| * | Dummy commit to check commit access. | Sanjoy Das | 2011-12-01 | 1 | -1/+1 |
| | | | | | llvm-svn: 145619 | ||||
| * | Add missing functions. | Chad Rosier | 2011-12-01 | 1 | -1/+4 |
| | | | | | llvm-svn: 145608 | ||||
| * | Add a few more functions to TargetLibraryInfo. More of rdar://10500969. | Chad Rosier | 2011-12-01 | 1 | -1/+16 |
| | | | | | llvm-svn: 145596 | ||||
| * | For 64-bit the rest of the general regs are ok for the q constraint. Make | Eric Christopher | 2011-12-01 | 1 | -1/+17 |
| | | | | | | | | | sure we can emit both the high and low versions of those registers. Fixes rdar://10392864 llvm-svn: 145579 | ||||
| * | Pass AVX vectors which are arguments to varargs functions on the stack. ↵ | Eli Friedman | 2011-12-01 | 1 | -4/+9 |
| | | | | | | | <rdar://problem/10463281>. llvm-svn: 145573 | ||||
| * | Small fix for assembler generation on Darwin PPC64. Patch by Michael ↵ | Eli Friedman | 2011-12-01 | 1 | -1/+1 |
| | | | | | | | Kostylev. PR11437. llvm-svn: 145553 | ||||
| * | Support for encoding all FMA4 instructions and tablegen patterns for all | Jan Sjödin | 2011-11-30 | 1 | -0/+349 |
| | | | | | | | remaining FMA4 instructions and intrinsics with tests. llvm-svn: 145525 | ||||
| * | Remove unused variable | Matt Beaumont-Gay | 2011-11-30 | 1 | -2/+0 |
| | | | | | llvm-svn: 145517 | ||||
| * | ARM parsing for VLD1 all lanes, with writeback. | Jim Grosbach | 2011-11-30 | 4 | -43/+82 |
| | | | | | llvm-svn: 145510 | ||||
| * | Add a few functions to TargetLibraryInfo. | Chad Rosier | 2011-11-30 | 1 | -2/+50 |
| | | | | | llvm-svn: 145508 | ||||
| * | ARM parsing for VLD1 two register all lanes, no writeback. | Jim Grosbach | 2011-11-30 | 5 | -5/+30 |
| | | | | | llvm-svn: 145504 | ||||
| * | X86: Turns out bulldozer also supports sse42 and lzcnt. | Benjamin Kramer | 2011-11-30 | 1 | -11/+6 |
| | | | | | | | | While at it remove the barcelona/instanbul/shanghai subtargets, they're unsupported by GCC and look pretty broken. llvm-svn: 145494 | ||||
| * | X86: Add subtargets for AMD's bulldozer. | Benjamin Kramer | 2011-11-30 | 1 | -0/+6 |
| | | | | | llvm-svn: 145493 | ||||
| * | X86: PerformOrCombine introduced a vselect node with a wrong order of ↵ | Nadav Rotem | 2011-11-30 | 1 | -1/+1 |
| | | | | | | | operands. This bug was introduced when a dedicated blend sdnode was replaced with the vselect node (in 139479). llvm-svn: 145488 | ||||
| * | Add instruction selection support for AVX2 horizontal add/sub instructions. | Craig Topper | 2011-11-30 | 1 | -24/+49 |
| | | | | | llvm-svn: 145487 | ||||
| * | Merge VPERM2F128/VPERM2I128 ISD node types. | Craig Topper | 2011-11-30 | 4 | -71/+50 |
| | | | | | llvm-svn: 145485 | ||||
| * | Merge decoding of VPERMILPD and VPERMILPS shuffle masks. Merge X86ISD node ↵ | Craig Topper | 2011-11-30 | 7 | -142/+135 |
| | | | | | | | type for VPERMILPD/PS. Add instruction selection support for VINSERTI128/VEXTRACTI128. llvm-svn: 145483 | ||||
| * | Alphabetize TargetLibraryInfo enum and fix doxygen comments. No functional | Chad Rosier | 2011-11-30 | 1 | -6/+6 |
| | | | | | | | change intended. llvm-svn: 145468 | ||||
| * | ARM parsing aliases for VLD1 single register all lanes. | Jim Grosbach | 2011-11-30 | 5 | -6/+141 |
| | | | | | llvm-svn: 145464 | ||||
| * | Add support for sqrt, sqrtl, and sqrtf in TargetLibraryInfo. Disable | Chad Rosier | 2011-11-29 | 1 | -0/+3 |
| | | | | | | | | | (fptrunc (sqrt (fpext x))) -> (sqrtf x) transformation if -fno-builtin is specified. rdar://10466410 llvm-svn: 145460 | ||||
| * | Tidy up a bit. | Jim Grosbach | 2011-11-29 | 2 | -33/+10 |
| | | | | | llvm-svn: 145458 | ||||
| * | Add comment. | Jim Grosbach | 2011-11-29 | 1 | -0/+1 |
| | | | | | llvm-svn: 145456 | ||||
| * | ARM parsing aliases for data-size suffices on VST1. | Jim Grosbach | 2011-11-29 | 1 | -19/+56 |
| | | | | | llvm-svn: 145454 | ||||
| * | Change names for MIPS "generic" processors defined in Mips.td to match what GNU | Akira Hatanaka | 2011-11-29 | 2 | -4/+4 |
| | | | | | | | | | | | tools use. Patch by Simon Atanasyan. "mips32r1" => "mips32" "4ke" => mips32r2" "mips64r1" => "mips64" llvm-svn: 145451 | ||||
| * | ARM assembly parsing and encoding for four-register VST1. | Jim Grosbach | 2011-11-29 | 4 | -52/+47 |
| | | | | | llvm-svn: 145450 | ||||
| * | Add another missing pattern. llvm-gcc likes f64 but clang likes i64 so it ↵ | Evan Cheng | 2011-11-29 | 1 | -0/+6 |
| | | | | | | | was generating poor code for some SSE builtins. llvm-svn: 145448 | ||||
| * | ARM assembly parsing and encoding for three-register VST1. | Jim Grosbach | 2011-11-29 | 4 | -44/+47 |
| | | | | | llvm-svn: 145442 | ||||
| * | Make X86::FsFLD0SS / FsFLD0SD real pseudo-instructions. | Jakob Stoklund Olesen | 2011-11-29 | 5 | -28/+15 |
| | | | | | | | | | | Like V_SET0, these instructions are expanded by ExpandPostRA to xorps / vxorps so they can participate in execution domain swizzling. This also makes the AVX variants redundant. llvm-svn: 145440 | ||||

