- Dec 07, 2007
-
-
Evan Cheng authored
llvm-svn: 44686
-
Fariborz Jahanian authored
type. llvm-svn: 44685
-
Steve Naroff authored
Have Sema::CheckConstantInitList skip semantic analysis when the element type is a record (until we implement the FIXME). This removes a bogus error for the following code... snarofflocal% cat bug.m #import <Foundation/NSGeometry.h> #define NUMHELICOPTERRECTS 5 static NSRect helicopterRects[NUMHELICOPTERRECTS] = { {{27, 0}, {18, 11}}, // Bottom {{0, 8}, {4, 11}}, // Tail {{0, 16}, {50, 1}}, {{22, 5}, {18, 12}}, // Body {{0, 10}, {42, 3}} }; llvm-svn: 44684
-
Steve Naroff authored
Lookup methods in the global pool even when a statically typed object's class interface isn't in scope! As the comment in the code indicates, I'm not fond of this. Nevertheless, gcc compat is a goal. Here is the case I'm talking about... #import <Foundation/Foundation.h> @interface AnyClass : NSObject - (NSRect)rect; @end @class Helicopter; static void func(Helicopter *obj) { NSRect r = [obj rect]; } ...before this patch, we would warn/error. With this patch, everything "just works". llvm-svn: 44682
-
Fariborz Jahanian authored
llvm-svn: 44681
-
Evan Cheng authored
llvm-svn: 44676
-
Owen Anderson authored
llvm-svn: 44674
-
Steve Naroff authored
Rewrite 'super' within a class method. This required some minor tweaks to the front-end. llvm-svn: 44673
-
Evan Cheng authored
llvm-svn: 44672
-
Evan Cheng authored
llvm-svn: 44671
-
Fariborz Jahanian authored
"@class Protocol;" llvm-svn: 44670
-
- Dec 06, 2007
-
-
Evan Cheng authored
Remove a bogus optimization. It's not possible to do a move to low element to a <8 x i16> or <16 x i8> vector. llvm-svn: 44669
-
Evan Cheng authored
llvm-svn: 44668
-
Anders Carlsson authored
llvm-svn: 44666
-
Fariborz Jahanian authored
to rewriter (my previous patch). llvm-svn: 44665
-
Devang Patel authored
struct STestB1 {char a; char b:2; } stb1; struct STestB2 {char a; char b:5; char c:4} stb2; llvm-svn: 44664
-
Dale Johannesen authored
Simpler and safer. llvm-svn: 44663
-
Fariborz Jahanian authored
llvm-svn: 44662
-
Chris Lattner authored
llvm-svn: 44661
-
Evan Cheng authored
llvm-svn: 44660
-
Chris Lattner authored
only disable it if we don't know it will be obviously profitable. Still fixme, but less so. :) llvm-svn: 44658
-
Chris Lattner authored
the X86 backend are needed before this should be enabled by default. llvm-svn: 44657
-
Chris Lattner authored
_foo: movl $12, %eax andl 4(%esp), %eax movl _array(%eax), %eax ret instead of: _foo: movl 4(%esp), %eax shrl $2, %eax andl $3, %eax movl _array(,%eax,4), %eax ret As it turns out, this triggers all the time, in a wide variety of situations, for example, I see diffs like this in various programs: - movl 8(%eax), %eax - shll $2, %eax - andl $1020, %eax - movl (%esi,%eax), %eax + movzbl 8(%eax), %eax + movl (%esi,%eax,4), %eax - shll $2, %edx - andl $1020, %edx - movl (%edi,%edx), %edx + andl $255, %edx + movl (%edi,%edx,4), %edx Unfortunately, I also see stuff like this, which can be fixed in the X86 backend: - andl $85, %ebx - addl _bit_count(,%ebx,4), %ebp + shll $2, %ebx + andl $340, %ebx + addl _bit_count(%ebx), %ebp llvm-svn: 44656
-
Chris Lattner authored
llvm-svn: 44655
-
Chris Lattner authored
llvm-svn: 44654
-
Chris Lattner authored
llvm-svn: 44653
-
Chuck Rose III authored
llvm-svn: 44651
-
Chris Lattner authored
llvm-svn: 44650
-
Dale Johannesen authored
llvm-svn: 44649
-
Fariborz Jahanian authored
crash because of this. llvm-svn: 44648
-
Chris Lattner authored
to create a JIT. This lets you specify JIT-specific configuration items like the JITMemoryManager to use. llvm-svn: 44647
-
Chris Lattner authored
delete one ExecutionEngine ctor, minor cleanup. llvm-svn: 44646
-
Chris Lattner authored
llvm-svn: 44645
-
Evan Cheng authored
Fix for PR1831: if all defs of an interval are re-materializable, then it's a preferred spill candiate. llvm-svn: 44644
-
Evan Cheng authored
If both result of the {s|z}xt and its source are live out, rewrite all uses of the source with result of extension. llvm-svn: 44643
-
Ted Kremenek authored
GetLanguage, and InitializeLangOptions. The goal is to break up this logic into atomic units of functionality that can later be refactored into better driver logic that is capable of handling a mixture of source files of different languages. llvm-svn: 44642
-
Chris Lattner authored
llvm-svn: 44641
-
Chris Lattner authored
own JITMemoryManager interface. There is no functionality change with this patch. llvm-svn: 44640
-
Chris Lattner authored
llvm-svn: 44639
-
Chris Lattner authored
llvm-svn: 44638
-