- Aug 11, 2007
-
-
Chris Lattner authored
aggregate value and scalar expression computation are very different, this gets them away from each other. This causes a temporary regression on some complex number examples. llvm-svn: 41014
-
- Aug 10, 2007
-
-
Chris Lattner authored
llvm-svn: 41002
-
Chris Lattner authored
llvm-svn: 40995
-
Chris Lattner authored
codegen for: _Complex double bar(int); void test(_Complex double*); void test2(int c) { _Complex double X; X = bar(1); test(&X); } llvm-svn: 40993
-
Chris Lattner authored
bitcast. llvm-svn: 40992
-
- Aug 08, 2007
-
-
Chris Lattner authored
EmitUsualArithmeticConversions. llvm-svn: 40931
-
Chris Lattner authored
EmitExprWithUsualUnaryConversions. llvm-svn: 40929
-
- Aug 04, 2007
-
-
Chris Lattner authored
struct X { int A; }; void foo() { struct X s; int i; i = __builtin_choose_expr(0, s, i); } compiles to: %tmp = load i32* %i ; <i32> [#uses=1] store i32 %tmp, i32* %i wow :) llvm-svn: 40801
-
- Aug 03, 2007
-
-
Chris Lattner authored
llvm-svn: 40788
-
Chris Lattner authored
Rename AddrLabel and OCUVectorComponent -> AddrLabelExpr and OCUVectorElementExpr respectively. This is for consistency with other expr nodes end with *Expr. llvm-svn: 40785
-
Chris Lattner authored
vec2.yx = vec2; // reverse llvm-svn: 40782
-
Chris Lattner authored
vec2.x = f; llvm-svn: 40781
-
Chris Lattner authored
llvm-svn: 40780
-
Chris Lattner authored
llvm vector shuffle instead of a bunch of insert/extract operations. For: vec4 = vec4.yyyy; // splat Emit: %tmp1 = shufflevector <4 x float> %tmp, <4 x float> undef, <4 x i32> < i32 1, i32 1, i32 1, i32 1 > instead of: %tmp1 = extractelement <4 x float> %tmp, i32 1 %tmp2 = insertelement <4 x float> undef, float %tmp1, i32 0 %tmp3 = extractelement <4 x float> %tmp, i32 1 %tmp4 = insertelement <4 x float> %tmp2, float %tmp3, i32 1 %tmp5 = extractelement <4 x float> %tmp, i32 1 %tmp6 = insertelement <4 x float> %tmp4, float %tmp5, i32 2 %tmp7 = extractelement <4 x float> %tmp, i32 1 %tmp8 = insertelement <4 x float> %tmp6, float %tmp7, i32 3 llvm-svn: 40779
-
Chris Lattner authored
llvm-svn: 40777
-
Chris Lattner authored
like this: typedef __attribute__(( ocu_vector_type(4) )) float float4; float4 test1(float4 V) { return V.wzyx+V; } to: _test1: pshufd $27, %xmm0, %xmm1 addps %xmm0, %xmm1 movaps %xmm1, %xmm0 ret and: _test1: mfspr r2, 256 oris r3, r2, 4096 mtspr 256, r3 li r3, lo16(LCPI1_0) lis r4, ha16(LCPI1_0) lvx v3, r4, r3 vperm v3, v2, v2, v3 vaddfp v2, v3, v2 mtspr 256, r2 blr llvm-svn: 40771
-
Chris Lattner authored
We can now codegen: vec4.xy; as nothing! llvm-svn: 40769
-
- Aug 02, 2007
-
-
Chris Lattner authored
llvm-svn: 40761
-
- Aug 01, 2007
-
-
Chris Lattner authored
llvm-svn: 40665
-
- Jul 21, 2007
-
-
Anders Carlsson authored
llvm-svn: 40162
-
- Jul 19, 2007
-
-
Chris Lattner authored
llvm-svn: 40037
-
- Jul 18, 2007
-
-
Chris Lattner authored
llvm-svn: 40009
-
- Jul 16, 2007
-
-
Chris Lattner authored
llvm-svn: 39927
-
Chris Lattner authored
codegen to compile: int test(int *A, int *B) { return A-B; } into: _test: movl 4(%esp), %eax subl 8(%esp), %eax sarl $2, %eax ret instead of: _test: movl 4(%esp), %eax subl 8(%esp), %eax movl %eax, %ecx sarl $31, %ecx shrl $30, %ecx addl %ecx, %eax sarl $2, %eax ret llvm-svn: 39902
-
Chris Lattner authored
llvm-svn: 39884
-
- Jul 14, 2007
-
-
Gabor Greif authored
llvm-svn: 39858
-
Chris Lattner authored
compute type alignment. This info is needed for struct layout. llvm-svn: 39850
-
Chris Lattner authored
vars. Approach suggested by Keith. llvm-svn: 39849
-
Chris Lattner authored
llvm-svn: 39848
-
Chris Lattner authored
llvm-svn: 39847
-
Gabor Greif authored
llvm-svn: 39841
-
Chris Lattner authored
where ASTContext can manage caches for struct layout, etc. llvm-svn: 39835
-
- Jul 13, 2007
-
-
Chris Lattner authored
llvm-svn: 39831
-
Chris Lattner authored
llvm-svn: 39824
-
Chris Lattner authored
Both in one patch, and the test case that Chris didn't commit last time is in there too... I'll split the patch up if somebody wants it split." Patch by Keith Bauer. llvm-svn: 39796
-
Chris Lattner authored
llvm-svn: 39795
-
Chris Lattner authored
I've added a tests/CodeGen directory, and a test for this case that used to fail and now passes." Patch by Keith Bauer llvm-svn: 39794
-
Chris Lattner authored
Keith Bauer. llvm-svn: 39793
-
- Jul 12, 2007
-
-
Chris Lattner authored
Benoit Boissinot! llvm-svn: 39780
-
Chris Lattner authored
llvm-svn: 39771
-