- Jan 02, 2010
-
-
Chris Lattner authored
llvm-svn: 92405
-
Chris Lattner authored
llvm-svn: 92404
-
Chris Lattner authored
instead of hand rolling a loop. llvm-svn: 92403
-
- Jan 01, 2010
-
-
Chris Lattner authored
a constantexpr gep on the 'base' side of the expression. This completes comment #4 in PR3351, which comes from 483.xalancbmk. llvm-svn: 92402
-
Chris Lattner authored
expressions. This is a step towards comment #4 in PR3351. llvm-svn: 92401
-
Chris Lattner authored
llvm-svn: 92400
-
Anders Carlsson authored
llvm-svn: 92399
-
Chris Lattner authored
llvm-svn: 92398
-
Douglas Gregor authored
Make sure that the search for visible declarations looks into the semantic parents of out-of-line function contexts llvm-svn: 92397
-
Douglas Gregor authored
llvm-svn: 92396
-
Mikhail Glushenkov authored
SelectionDAGBuilder.cpp:4294: warning: suggest explicit braces to avoid ambiguous ‘else’ llvm-svn: 92395
-
Mikhail Glushenkov authored
llvm-svn: 92394
-
Mikhail Glushenkov authored
llvm-svn: 92393
-
Mikhail Glushenkov authored
llvm-svn: 92392
-
Mikhail Glushenkov authored
llvm-svn: 92391
-
Mikhail Glushenkov authored
llvm-svn: 92390
-
Mikhail Glushenkov authored
llvm-svn: 92389
-
Chris Lattner authored
multiply sequence when the power is a constant integer. Before, our codegen for std::pow(.., int) always turned into a libcall, which was really inefficient. This should also make many gfortran programs happier I'd imagine. llvm-svn: 92388
-
Chris Lattner authored
llvm-svn: 92387
-
Mike Stump authored
llvm-svn: 92386
-
Mike Stump authored
llvm-svn: 92385
-
Chris Lattner authored
llvm-svn: 92384
-
Chris Lattner authored
llvm-svn: 92383
-
Chris Lattner authored
on integers as well and codegen should lower them to branch trees. llvm-svn: 92382
-
Chris Lattner authored
positive and negative forms of constants together. This allows us to compile: int foo(int x, int y) { return (x-y) + (x-y) + (x-y); } into: _foo: ## @foo subl %esi, %edi leal (%rdi,%rdi,2), %eax ret instead of (where the 3 and -3 were not factored): _foo: imull $-3, 8(%esp), %ecx imull $3, 4(%esp), %eax addl %ecx, %eax ret this started out as: movl 12(%ebp), %ecx imull $3, 8(%ebp), %eax subl %ecx, %eax subl %ecx, %eax subl %ecx, %eax ret This comes from PR5359. llvm-svn: 92381
-
Chris Lattner authored
llvm-svn: 92380
-
Douglas Gregor authored
class), provide a suggestion for the type or class found. However, since we can't recover properly in this case, don't provide a fix-it hint. Example: test/FixIt/typo.m:8:3: error: use of undeclared identifier 'NSstring'; did you mean 'NSString'? NSstring *str = @"A string"; ... ^ 1 diagnostic generated. llvm-svn: 92379
-
Ted Kremenek authored
llvm-svn: 92378
-
Chris Lattner authored
llvm-svn: 92377
-
Douglas Gregor authored
test/FixIt/typo.c:19:4: error: field designator 'bunds' does not refer to any field in type 'struct Window'; did you mean 'bounds'? .bunds. ^~~~~ bounds llvm-svn: 92376
-
Chris Lattner authored
llvm-svn: 92375
-
Ted Kremenek authored
llvm-svn: 92374
-
- Dec 31, 2009
-
-
Chris Lattner authored
This allows us to optimize test12 into: define i32 @test12(i32 %X) { %factor = mul i32 %X, -3 ; <i32> [#uses=1] %Z = add i32 %factor, 6 ; <i32> [#uses=1] ret i32 %Z } instead of: define i32 @test12(i32 %X) { %Y = sub i32 6, %X ; <i32> [#uses=1] %C = sub i32 %Y, %X ; <i32> [#uses=1] %Z = sub i32 %C, %X ; <i32> [#uses=1] ret i32 %Z } llvm-svn: 92373
-
Chris Lattner authored
sorted, so we can just do a linear scan. llvm-svn: 92372
-
Anders Carlsson authored
llvm-svn: 92371
-
Chris Lattner authored
llvm-svn: 92370
-
Chris Lattner authored
llvm-svn: 92369
-
Chris Lattner authored
fix RemoveDeadBinaryOp to actually do something. llvm-svn: 92368
-
Anders Carlsson authored
llvm-svn: 92367
-
Chris Lattner authored
instead of std::vector. llvm-svn: 92366
-