- Jun 12, 2011
-
-
Benjamin Kramer authored
llvm-svn: 132894
-
Nadav Rotem authored
types such as i33 were rounded to i32. Originated from Duncan's testcase. llvm-svn: 132893
-
Nadav Rotem authored
Instead of scalarizing, and doing an element-by-element truncat, use vector truncate. Add support for scalarization of vectors: i8 -> <1 x i1> (from Duncan's testcase). llvm-svn: 132892
-
Nadav Rotem authored
element type is found. This fix addresses some of the tests in Duncan's testcase (forthcoming). llvm-svn: 132891
-
Richard Smith authored
struct { typedef int A = 0; }; According to the C++11 standard, this is not ill-formed, but does not have any ascribed meaning. We can't reasonably accept it, so treat it as ill-formed. Also switch C++ from an incorrect 'fields can only be initialized in constructors' diagnostic for this case to C's 'illegal initializer (only variables can be initialized)' llvm-svn: 132890
-
Richard Smith authored
llvm-svn: 132889
-
Jakob Stoklund Olesen authored
Make the hash tables as small as possible while ensuring that all lookups can be done in less than 8 probes. Cut the aliases hash table in half by only storing a < b pairs - it is a symmetric relation. Use larger multipliers on the initial hash function to ensure that it properly covers the whole table, and to resolve some clustering in the very regular ARM register bank. This reduces the size of most of these tables by 4x - 8x. For instance, the ARM tables shrink from 48 KB to 8 KB. llvm-svn: 132888
-
Jakob Stoklund Olesen authored
These computations have been moved to CodeGenRegisters.cpp. llvm-svn: 132887
-
Jakob Stoklund Olesen authored
The constant hash tables for sub-registers and overlaps are generated the same way, so extract a function to generate and print the hash table. Also use the information computed by CodeGenRegisters.cpp instead of the locally data. llvm-svn: 132886
-
Rafael Espindola authored
Add a triple to the tests. llvm-svn: 132885
-
Rafael Espindola authored
llvm-svn: 132884
-
Rafael Espindola authored
llvm-svn: 132883
-
Rafael Espindola authored
we try to branch to them. Before we were creating successor lists with duplicated entries. Fixing that found a bug in isBlockOnlyReachableByFallthrough that would causes it to return the wrong answer for ----------- ... jne foo jmp bar foo: ---------- llvm-svn: 132882
-
Jakob Stoklund Olesen authored
Besides moving structural computations to CodeGenRegisters.cpp, this also well-defines the order of these lists: - Sub-register lists come from a pre-order traversal of the graph defined by the SubRegs lists in the .td files. - Super-register lists are topologically ordered so no register comes before any of its sub-registers. When the sub-register graph is not a tree, independent super-registers appear in numerical order. - Lists of overlapping registers are ordered according to register number. This reverses the order of the super-regs lists, but nobody was depending on that. The previous order of the overlaps lists was odd, and it may have depended on the precise behavior of std::stable_sort. The old computations are still there, but will be removed shortly. llvm-svn: 132881
-
Charles Davis authored
functionality change. Later on, we'll use the flag to emit SEH pseudo-ops that describe how the call frame was built. llvm-svn: 132880
-
- Jun 11, 2011
-
-
Fariborz Jahanian authored
llvm-svn: 132879
-
Richard Smith authored
llvm-svn: 132878
-
Fariborz Jahanian authored
keyword in objc property decl. llvm-svn: 132877
-
Bill Wendling authored
llvm-svn: 132876
-
Douglas Gregor authored
llvm-svn: 132874
-
Douglas Gregor authored
pointer assignment in C++. This was a longstanding problem spotted by Jordy Rose. llvm-svn: 132873
-
Chad Rosier authored
llvm-svn: 132872
-
Chad Rosier authored
llvm-svn: 132871
-
Eli Friedman authored
memcpy/memset symbol doesn't get marked up correctly in PIC modes otherwise. Should fix llvm-x86_64-linux-checks buildbot. Followup to r132864. llvm-svn: 132869
-
Douglas Gregor authored
Related result types apply Cocoa conventions to the type of message sends and property accesses to Objective-C methods that are known to always return objects whose type is the same as the type of the receiving class (or a subclass thereof), such as +alloc and -init. This tightens up static type safety for Objective-C, so that we now diagnose mistakes like this: t.m:4:10: warning: incompatible pointer types initializing 'NSSet *' with an expression of type 'NSArray *' [-Wincompatible-pointer-types] NSSet *array = [[NSArray alloc] init]; ^ ~~~~~~~~~~~~~~~~~~~~~~ /System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:72:1: note: instance method 'init' is assumed to return an instance of its receiver type ('NSArray *') - (id)init; ^ It also means that we get decent type inference when writing code in Objective-C++0x: auto array = [[NSMutableArray alloc] initWithObjects:@"one", @"two",nil]; // ^ now infers NSMutableArray* rather than id llvm-svn: 132868
-
Andrew Trick authored
Patch by: Jakub Staszak! Introduces BranchProbability. Changes unsigned to uint32_t all over and uint64_t only when overflow is expected. llvm-svn: 132867
-
Fariborz Jahanian authored
properties. llvm-svn: 132866
-
Jakob Stoklund Olesen authored
Also move the sub-register index computations from RegisterInfoEmitter into CodeGenRegBank. llvm-svn: 132865
-
Eli Friedman authored
rdar://9431466 llvm-svn: 132864
-
Eric Christopher authored
llvm-svn: 132863
-
Dan Gohman authored
default, since it usually has very few elements. This speeds up alias queries in many cases, because AliasCache.clear() doesn't have to visit as many buckets. llvm-svn: 132862
-
- Jun 10, 2011
-
-
Eli Friedman authored
PR10120: Make CodeGenModule::getVTableLinkage use NamedDecl::getLinkage to determine whether the vtable should be externally visible, instead of a rough approximation of it which messes up with templates. While I'm here, zap the other user of isInAnonymousNamespace outside of Decl.cpp. llvm-svn: 132861
-
Bill Wendling authored
<rdar://problem/9583891> llvm-svn: 132860
-
Rafael Espindola authored
llvm-svn: 132857
-
Cameron Zwarich authored
CallOrPrologue correctly and eliminate the existing setter. llvm-svn: 132856
-
Nick Lewycky authored
llvm-svn: 132855
-
Cameron Zwarich authored
comment on their meaning. llvm-svn: 132854
-
Cameron Zwarich authored
llvm-svn: 132853
-
Cameron Zwarich authored
llvm-svn: 132852
-
Rafael Espindola authored
Thanks Bob Wilson for noticing it! llvm-svn: 132851
-