| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Target/X86: Tweak allocating shadow area (aka home) on Win64. It must be ↵ | NAKAMURA Takumi | 2011-02-05 | 3 | -9/+20 |
| | | | | | | | enough for caller to allocate one. llvm-svn: 124949 | ||||
| * | lib/Target/X86/X86ISelLowering.cpp: Introduce a new variable "IsWin64". No ↵ | NAKAMURA Takumi | 2011-02-05 | 1 | -3/+4 |
| | | | | | | | functional changes. llvm-svn: 124948 | ||||
| * | lib/Target/X86/X86JITInfo.cpp: Add Win64 stuff. | NAKAMURA Takumi | 2011-02-05 | 1 | -0/+8 |
| | | | | | llvm-svn: 124947 | ||||
| * | Target/X86: Fix whitespace. | NAKAMURA Takumi | 2011-02-05 | 3 | -7/+7 |
| | | | | | llvm-svn: 124946 | ||||
| * | [AVX] Revert 124910 until clients are ready. | David Greene | 2011-02-05 | 1 | -122/+0 |
| | | | | | llvm-svn: 124912 | ||||
| * | [AVX] Add some utilities to insert and extract 128-bit subvectors. | David Greene | 2011-02-04 | 1 | -0/+122 |
| | | | | | | | | | This allows us to easily support 256-bit operations that don't have native 256-bit support. This applies to integer operations, certain types of shuffles and various othher things. llvm-svn: 124910 | ||||
| * | MC/AsmParser: Add support for allowing the conversion process to fail (via | Daniel Dunbar | 2011-02-04 | 1 | -0/+2 |
| | | | | | | | custom conversion functions). llvm-svn: 124872 | ||||
| * | [AVX] Support VSINSERTF128 with more patterns and appropriate | David Greene | 2011-02-04 | 4 | -0/+77 |
| | | | | | | | | infrastructure. This makes lowering 256-bit vectors to 128-bit vectors simple when 256-bit vector support is not available. llvm-svn: 124868 | ||||
| * | [AVX] VEXTRACTF128 support. This commit includes patterns for | David Greene | 2011-02-03 | 4 | -0/+76 |
| | | | | | | | | | | | matching EXTRACT_SUBVECTOR to VEXTRACTF128 along with support routines to examine and translate index values. VINSERTF128 comes next. With these two in place we can begin supporting more AVX operations as INSERT/EXTRACT can be used as a fallback when 256-bit support is not available. llvm-svn: 124797 | ||||
| * | Fix PR9127 by reversing the operands even if they have more then one use. | Rafael Espindola | 2011-02-03 | 1 | -2/+2 |
| | | | | | | | | | Reversing the operands allows us to fold, but doesn't force us to. Also, at this point the DAG is still being optimized, so the check for hasOneUse is not very precise. llvm-svn: 124773 | ||||
| * | Fixed a bug in the disassembler where the mandatory 0x66 | Sean Callanan | 2011-02-02 | 1 | -0/+1 |
| | | | | | | | | | prefix would be misinterpreted in some cases on 32-bit x86 platforms. Thanks to Olivier Meurant for identifying the bug. llvm-svn: 124709 | ||||
| * | Test commit - fix a double 'should' in a comment. | Carl Norum | 2011-02-01 | 1 | -1/+1 |
| | | | | | llvm-svn: 124652 | ||||
| * | Patches to build EFI with Clang/LLVM. By Carl Norum. | Evan Cheng | 2011-02-01 | 6 | -16/+36 |
| | | | | | llvm-svn: 124639 | ||||
| * | Keep track of incoming argument's location while emitting LiveIns. | Devang Patel | 2011-01-31 | 1 | -4/+4 |
| | | | | | llvm-svn: 124611 | ||||
| * | [AVX] Clean up the code to configure target lowering for AVX. Specify | David Greene | 2011-01-27 | 1 | -73/+47 |
| | | | | | | | | how to lower more/new operations. This is a prerequisite for adding additional AVX lowering. llvm-svn: 124447 | ||||
| * | Introduce virtual ParseRegister method in TargetAsmParser. | Roman Divacky | 2011-01-27 | 1 | -2/+1 |
| | | | | | | | Create override of this method in X86/ARM/MBlaze. llvm-svn: 124378 | ||||
| * | lib/Target/X86/X86ISelDAGToDAG.cpp: __main should be WINCALL64 on Win64. | NAKAMURA Takumi | 2011-01-27 | 1 | -1/+1 |
| | | | | | | | CALL64 marks %xmm* as dead. llvm-svn: 124354 | ||||
| * | [AVX] Add INSERT_SUBVECTOR and support it on x86. This provides a | David Greene | 2011-01-26 | 2 | -1/+23 |
| | | | | | | | | | default implementation for x86, going through the stack in a similr fashion to how the codegen implements BUILD_VECTOR. Eventually this will get matched to VINSERTF128 if AVX is available. llvm-svn: 124307 | ||||
| * | [AVX] Support EXTRACT_SUBVECTOR on x86. This provides a default | David Greene | 2011-01-26 | 2 | -0/+13 |
| | | | | | | | | | implementation of EXTRACT_SUBVECTOR for x86, going through the stack in a similr fashion to how the codegen implements BUILD_VECTOR. Eventually this will get matched to VEXTRACTF128 if AVX is available. llvm-svn: 124292 | ||||
| * | Target/X86: Tweak win64's tailcall. | NAKAMURA Takumi | 2011-01-26 | 7 | -12/+49 |
| | | | | | llvm-svn: 124272 | ||||
| * | Fix whitespace. | NAKAMURA Takumi | 2011-01-26 | 6 | -132/+129 |
| | | | | | llvm-svn: 124270 | ||||
| * | lib/Target/X86/X86RegisterInfo.cpp: Fix whitespace. | NAKAMURA Takumi | 2011-01-26 | 1 | -3/+3 |
| | | | | | llvm-svn: 124268 | ||||
| * | lib/Target/X86/X86RegisterInfo.cpp: Fix a typo in comment. | NAKAMURA Takumi | 2011-01-26 | 1 | -1/+1 |
| | | | | | llvm-svn: 124267 | ||||
| * | fix a missing shuffle pattern, PR9009. Patch by Artiom Myaskouvskey! | Chris Lattner | 2011-01-24 | 1 | -0/+3 |
| | | | | | llvm-svn: 124102 | ||||
| * | Add support for the --noexecstack option. | Rafael Espindola | 2011-01-23 | 1 | -2/+3 |
| | | | | | llvm-svn: 124077 | ||||
| * | Null initialize a few variables flagged by | Ted Kremenek | 2011-01-23 | 1 | -1/+1 |
| | | | | | | | | | | | clang's -Wuninitialized-experimental warning. While these don't look like real bugs, clang's -Wuninitialized-experimental analysis is stricter than GCC's, and these fixes have the benefit of being general nice cleanups. llvm-svn: 124073 | ||||
| * | Remove more duplicated code. | Rafael Espindola | 2011-01-23 | 1 | -1/+1 |
| | | | | | llvm-svn: 124056 | ||||
| * | Remove duplicated code. | Rafael Espindola | 2011-01-23 | 1 | -1/+2 |
| | | | | | llvm-svn: 124054 | ||||
| * | The stub routine that we're calling uses test and so clobbers | Eric Christopher | 2011-01-18 | 1 | -2/+2 |
| | | | | | | | the flags. llvm-svn: 123712 | ||||
| * | Add a missing <cctype> include, from Joerg Sonnenberger! | Douglas Gregor | 2011-01-17 | 1 | -0/+1 |
| | | | | | llvm-svn: 123670 | ||||
| * | fix PR8514, a bug where the "heroic" transformation of shift/and | Chris Lattner | 2011-01-16 | 1 | -13/+9 |
| | | | | | | | | | into and/shift would cause nodes to move around and a dangling pointer to happen. The code tried to avoid this with a HandleSDNode, but got the details wrong. llvm-svn: 123578 | ||||
| * | fix PR8981, a crash trying to form a conditional inc with a floating point ↵ | Chris Lattner | 2011-01-16 | 1 | -1/+2 |
| | | | | | | | compare. llvm-svn: 123560 | ||||
| * | reapply my fix for PR8961 with a tweak to properly handle | Chris Lattner | 2011-01-16 | 1 | -1/+1 |
| | | | | | | | | multi-instruction sequences like calls. Many thanks to Jakob for finding a testcase. llvm-svn: 123559 | ||||
| * | 'HiReg' is written but never read. Nuke its | Ted Kremenek | 2011-01-14 | 1 | -5/+5 |
| | | | | | | | | | declaration and its assignments. Found by clang static analyzer. llvm-svn: 123486 | ||||
| * | Add a possibility to switch between CFI directives- and table-based frame ↵ | Anton Korobeynikov | 2011-01-14 | 1 | -3/+3 |
| | | | | | | | description emission. Currently all the backends use table-based stuff. llvm-svn: 123476 | ||||
| * | Cleanup | Anton Korobeynikov | 2011-01-14 | 1 | -6/+1 |
| | | | | | llvm-svn: 123475 | ||||
| * | revert my fastisel patch again which apparently still gives the | Chris Lattner | 2011-01-14 | 1 | -1/+1 |
| | | | | | | | llvm-gcc-i386-linux-selfhost buildbot heartburn... llvm-svn: 123431 | ||||
| * | reapply r123414 now that the botz are calmed down and the fix is already in. | Chris Lattner | 2011-01-14 | 1 | -1/+1 |
| | | | | | llvm-svn: 123427 | ||||
| * | r123414 broke llvm-gcc bootstrap apparently, revert | Chris Lattner | 2011-01-14 | 1 | -1/+1 |
| | | | | | llvm-svn: 123422 | ||||
| * | fix PR8961 - a fast isel miscompilation where we'd insert a new instruction | Chris Lattner | 2011-01-14 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | after sext's generated for addressing that got folded. Previously we compiled test5 into: _test5: ## @test5 ## BB#0: movq -8(%rsp), %rax ## 8-byte Reload movq (%rdi,%rax), %rdi addq %rdx, %rdi movslq %esi, %rax movq %rax, -8(%rsp) ## 8-byte Spill movq %rdi, %rax ret which is insane and wrong. Now we produce: _test5: ## @test5 ## BB#0: movslq %esi, %rax movq (%rdi,%rax), %rax addq %rdx, %rax ret llvm-svn: 123414 | ||||
| * | Fix a few more places that should use MBB::getLastNonDebugInstr(). | Jakob Stoklund Olesen | 2011-01-13 | 1 | -1/+1 |
| | | | | | llvm-svn: 123408 | ||||
| * | Teach frame lowering to ignore debug values after the terminators. | Jakob Stoklund Olesen | 2011-01-13 | 1 | -5/+6 |
| | | | | | llvm-svn: 123399 | ||||
| * | Experiment with changing the default 32-bit linux stack alignment to | Eric Christopher | 2011-01-13 | 1 | -3/+3 |
| | | | | | | | 16 bytes for PR8969. Update all testcases accordingly. llvm-svn: 123367 | ||||
| * | Fix PR8946, a missing reg/reg form of movdqu. | Chris Lattner | 2011-01-11 | 1 | -0/+4 |
| | | | | | llvm-svn: 123242 | ||||
| * | Update CMake stuff | Anton Korobeynikov | 2011-01-10 | 1 | -1/+1 |
| | | | | | llvm-svn: 123171 | ||||
| * | Rename TargetFrameInfo into TargetFrameLowering. Also, put couple of FIXMEs ↵ | Anton Korobeynikov | 2011-01-10 | 7 | -52/+57 |
| | | | | | | | and fixes here and there. llvm-svn: 123170 | ||||
| * | Simplify a bunch of isVirtualRegister() and isPhysicalRegister() logic. | Jakob Stoklund Olesen | 2011-01-10 | 1 | -1/+1 |
| | | | | | | | | | These functions not longer assert when passed 0, but simply return false instead. No functional change intended. llvm-svn: 123155 | ||||
| * | Fix the last virtual register enumerations. | Jakob Stoklund Olesen | 2011-01-08 | 1 | -4/+4 |
| | | | | | llvm-svn: 123102 | ||||
| * | Recognize inline asm 'rev /bin/bash, ' as a bswap intrinsic call. | Evan Cheng | 2011-01-08 | 1 | -52/+42 |
| | | | | | llvm-svn: 123048 | ||||
| * | Do not model all INLINEASM instructions as having unmodelled side effects. | Evan Cheng | 2011-01-07 | 1 | -2/+2 |
| | | | | | | | | | | | Instead encode llvm IR level property "HasSideEffects" in an operand (shared with IsAlignStack). Added MachineInstrs::hasUnmodeledSideEffects() to check the operand when the instruction is an INLINEASM. This allows memory instructions to be moved around INLINEASM instructions. llvm-svn: 123044 | ||||

