- Nov 07, 2011
-
-
Bill Wendling authored
<rdar://problem/10405911> llvm-svn: 144000
-
Richard Trieu authored
llvm-svn: 143997
-
Jakob Stoklund Olesen authored
The xorps instruction is smaller than pxor, so prefer that encoding. The ExecutionDepsFix pass will switch the encoding to pxor and xorpd when appropriate. llvm-svn: 143996
-
Akira Hatanaka authored
llvm-svn: 143994
-
Akira Hatanaka authored
llvm-svn: 143993
-
Akira Hatanaka authored
is used to save va_arg or byval arguments passed in registers. llvm-svn: 143992
-
Akira Hatanaka authored
llvm-svn: 143991
-
Akira Hatanaka authored
when shift amount is larger than 32. llvm-svn: 143990
-
Akira Hatanaka authored
instruction definitions. llvm-svn: 143989
-
Akira Hatanaka authored
llvm-svn: 143988
-
Douglas Gregor authored
llvm-svn: 143985
-
Douglas Gregor authored
function template instantiations. Fixes <rdar://problem/10398005> / PR11312. llvm-svn: 143984
-
Eric Christopher authored
llvm-svn: 143982
-
Argyrios Kyrtzidis authored
llvm-svn: 143980
-
Argyrios Kyrtzidis authored
-Move __strong/__weak added to a property type to the property attribute, e.g. "@property (assign) __weak Foo *prop;" --> "@property (weak) Foo *prop;" -Remove (assign) in a property so that it becomes strong-by-default in ARC. llvm-svn: 143979
-
Argyrios Kyrtzidis authored
llvm-svn: 143978
-
Richard Trieu authored
__int128_t and __uint128_t. Short and unsigned short integer literals support is only to work around a crasher as reported in PR11179 and will be removed once Clang no longer builds short integer literals. llvm-svn: 143977
-
Argyrios Kyrtzidis authored
to objects of classes that don't support ARC weak llvm-svn: 143976
-
Argyrios Kyrtzidis authored
__weak is unsupported by the deployment target, since it is going to be ignored anyway. Makes it easier for incremental migration from GC. llvm-svn: 143975
-
Eric Christopher authored
llvm-svn: 143974
-
Matt Beaumont-Gay authored
llvm-svn: 143972
-
Eric Christopher authored
Fixes a self-host error. llvm-svn: 143970
-
Matt Beaumont-Gay authored
llvm-svn: 143969
-
Douglas Gregor authored
the injected-class-name of a class (or class template) to the declaration that results from substituting the given template arguments. Previously, we would actually perform a substitution into the injected-class-name type and then retrieve the resulting declaration. However, in certain, rare circumstances involving deeply-nested member templates, we would get the wrong substitution arguments. This new approach just matches up the declaration with a declaration that's part of the current context (or one of its parents), which will either be an instantiation (during template instantiation) or the declaration itself (during the definition of the template). This is both more efficient (we're avoiding a substitution) and more correct (we can't get the template arguments wrong in the member-template case). Fixes <rdar://problem/9676205>. Reinstated, now that we have the fix in r143967. llvm-svn: 143968
-
Douglas Gregor authored
entering the context of a nested-name-specifier. Fixes <rdar://problem/10397846>. llvm-svn: 143967
-
Owen Anderson authored
llvm-svn: 143966
-
Matt Beaumont-Gay authored
llvm-svn: 143965
-
Richard Osborne authored
and TargetLowering::BuildUDIV(). Fixes PR11283 llvm-svn: 143964
-
Benjamin Kramer authored
llvm-svn: 143962
-
Tobias Grosser authored
llvm-svn: 143961
-
Tobias Grosser authored
llvm-svn: 143960
-
Tobias Grosser authored
This simplifies e.g: if (Op.type == SCEVType::INT || Op.type == SCEVType::PARAM) to if (Op.isConstant()) llvm-svn: 143959
-
Tobias Grosser authored
llvm-svn: 143958
-
Eric Christopher authored
llvm-svn: 143925
-
Eric Christopher authored
llvm-svn: 143924
-
Eric Christopher authored
to fix the types section (all types, not just global types), and testcases. The code to do the final emission is disabled by default. llvm-svn: 143923
-
Richard Smith authored
llvm-svn: 143922
-
Eric Christopher authored
the pubnames and pubtypes tables. LLDB can currently use this format and a full spec is forthcoming and submission for standardization is planned. A basic summary: The dwarf accelerator tables are an indirect hash table optimized for null lookup rather than access to known data. They are output into an on-disk format that looks like this: .-------------. | HEADER | |-------------| | BUCKETS | |-------------| | HASHES | |-------------| | OFFSETS | |-------------| | DATA | `-------------' where the header contains a magic number, version, type of hash function, the number of buckets, total number of hashes, and room for a special struct of data and the length of that struct. The buckets contain an index (e.g. 6) into the hashes array. The hashes section contains all of the 32-bit hash values in contiguous memory, and the offsets contain the offset into the data area for the particular hash. For a lookup example, we could hash a function name and take it modulo the number of buckets giving us our bucket. From there we take the bucket value as an index into the hashes table and look at each successive hash as long as the hash value is still the same modulo result (bucket value) as earlier. If we have a match we look at that same entry in the offsets table and grab the offset in the data for our final match. llvm-svn: 143921
-
Eric Christopher authored
llvm-svn: 143920
-
Eric Christopher authored
llvm-svn: 143919
-