- Aug 26, 2010
-
-
Chris Lattner authored
llvm-svn: 112104
-
Chris Lattner authored
expanding: e.g. <2 x float> -> <4 x float> instead of -> 2 floats. This affects two places in the code: handling cross block values and handling function return and arguments. Since vectors are already widened by legalizetypes, this gives us much better code and unblocks x86-64 abi and SPU abi work. For example, this (which is a silly example of a cross-block value): define <4 x float> @test2(<4 x float> %A) nounwind { %B = shufflevector <4 x float> %A, <4 x float> undef, <2 x i32> <i32 0, i32 1> %C = fadd <2 x float> %B, %B br label %BB BB: %D = fadd <2 x float> %C, %C %E = shufflevector <2 x float> %D, <2 x float> undef, <4 x i32> <i32 0, i32 1, i32 undef, i32 undef> ret <4 x float> %E } Now compiles into: _test2: ## @test2 ## BB#0: addps %xmm0, %xmm0 addps %xmm0, %xmm0 ret previously it compiled into: _test2: ## @test2 ## BB#0: addps %xmm0, %xmm0 pshufd $1, %xmm0, %xmm1 ## kill: XMM0<def> XMM0<kill> XMM0<def> insertps $0, %xmm0, %xmm0 insertps $16, %xmm1, %xmm0 addps %xmm0, %xmm0 ret This implements rdar://8230384 llvm-svn: 112101
-
- Aug 25, 2010
-
-
Dan Gohman authored
instructions, not when remapping modules. llvm-svn: 112091
-
Bruno Cardoso Lopes authored
llvm-svn: 112090
-
Daniel Dunbar authored
llvm-svn: 112089
-
Devang Patel authored
llvm-svn: 112086
-
Devang Patel authored
llvm-svn: 112085
-
Jim Grosbach authored
llvm-svn: 112084
-
Dan Gohman authored
llvm-svn: 112083
-
Dan Gohman authored
from MDValueList between each function, now that the bitcode writer is reusing the index space for function-local metadata. llvm-svn: 112082
-
Dan Gohman authored
llvm-svn: 112081
-
Dan Gohman authored
llvm-svn: 112080
-
Benjamin Kramer authored
llvm-svn: 112079
-
Michael J. Spencer authored
llvm-svn: 112076
-
Jim Grosbach authored
When doing copy/paste/modify, it's apparently rather important to remember the 'modify' bit... llvm-svn: 112075
-
Chris Lattner authored
llvm-svn: 112073
-
Devang Patel authored
DIGlobalVariable can be used to encode debug info for globals that are directly folded into a constant by FE. llvm-svn: 112072
-
Benjamin Kramer authored
llvm-svn: 112060
-
Dan Gohman authored
function-specific state. llvm-svn: 112058
-
Dan Gohman authored
llvm-svn: 112056
-
Dan Gohman authored
llvm-svn: 112055
-
Daniel Dunbar authored
comparison that would overflow. - The other under/overflow cases can't actually happen because the immediates which would trigger them are legal (so we don't enter this code), but adjusted the style to make it clear the transform is always valid. llvm-svn: 112053
-
Eric Christopher authored
llvm-svn: 112039
-
Anton Korobeynikov authored
Mark _alloca call as clobberring EFLAGS, otherwise some DCE might remove other flags-clobberring stuff (e.g. cmp instructions) occuring after _alloca call. llvm-svn: 112034
-
Eric Christopher authored
Fix some todos. No functional change. llvm-svn: 112031
-
Bruno Cardoso Lopes authored
llvm-svn: 112020
-
Bruno Cardoso Lopes authored
teach lowering to get target specific nodes for pshufd, emulating the same isel behavior for now, so we can pass all vector shuffle tests llvm-svn: 112017
-
Owen Anderson authored
In the default address space, any GEP off of null results in a trap value if you try to load it. Thus, any load in the default address space that completes implies that the base value that it GEP'd from was not null. llvm-svn: 112015
-
Dan Gohman authored
for MDNodes, since this information is effectively implied by the operands. This allow allows the code to avoid doing a recursive is-it-really-function-local check in some cases. llvm-svn: 111995
-
Chris Lattner authored
no functionality change. llvm-svn: 111994
-
Dan Gohman authored
llvm-svn: 111993
-
Chris Lattner authored
functionality change. llvm-svn: 111990
-
Chris Lattner authored
llvm-svn: 111982
-
Eric Christopher authored
llvm-svn: 111981
-
Eric Christopher authored
llvm-svn: 111974
-
Eric Christopher authored
to fix this in the port. llvm-svn: 111973
-
Owen Anderson authored
llvm-svn: 111972
-
- Aug 24, 2010
-
-
Owen Anderson authored
llvm-svn: 111971
-
Jim Grosbach authored
access. rdar://8277890&7352504 llvm-svn: 111968
-
Kevin Enderby authored
it is with other assemblers. llvm-svn: 111967
-