- Aug 21, 2012
-
-
John McCall authored
First, when synthesizing an explicitly strong/retain/copy property of Class type, don't pretend during compatibility checking that the property is actually assign. Instead, resolve incompatibilities by secretly changing the type of *implicitly* __unsafe_unretained Class ivars to be strong. This is moderately evil but better than what we were doing. Second, when synthesizing the setter for a strong property of non-retainable type, be sure to use objc_setProperty. This is possible when the property is decorated with the NSObject attribute. This is an ugly, ugly corner of the language, and we probably ought to deprecate it. The first is rdar://problem/12039404; the second was noticed by inspection while fixing the first. llvm-svn: 162244
-
Eric Christopher authored
Author: Eric Christopher <echristo@apple.com> Date: Thu Aug 16 23:50:46 2012 +0000 Add some caching here for the builtin types. rdar://12117935 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162066 91177308-0d34-0410-b5e6-96231b3b80d8 after fixing a thinko. llvm-svn: 162243
-
Johnny Chen authored
llvm-svn: 162239
-
Dmitri Gribenko authored
does not return true for all implicit decls currently. This should fix PR13634 for now, but Decl::isImplicit() should be fixed, too. llvm-svn: 162238
-
David Blaikie authored
llvm-svn: 162236
-
David Blaikie authored
llvm-svn: 162235
-
Jordan Rose authored
Under GC, a release message is ignored, so "release and stop tracking" just becomes "stop tracking". But CFRelease is still honored. This is the main difference between ns_consumed and cf_consumed. llvm-svn: 162234
-
Jakob Stoklund Olesen authored
The getSumForBlock function was quadratic in the number of successors because getSuccWeight would perform a linear search for an already known iterator. This patch was originally committed as r161460, but reverted again because of assertion failures. Now that duplicate Machine CFG edges have been eliminated, this works properly. llvm-svn: 162233
-
- Aug 20, 2012
-
-
Jordan Rose authored
This should unbreak the buildbots (r162220). llvm-svn: 162232
-
Michael J. Spencer authored
llvm-svn: 162231
-
Jakob Stoklund Olesen authored
IR that hasn't been through SimplifyCFG can look like this: br i1 %b, label %r, label %r Make sure we don't create duplicate Machine CFG edges in this case. Fix the machine code verifier to accept conditional branches with a single CFG edge. llvm-svn: 162230
-
DeLesley Hutchins authored
ICE in friend functions. llvm-svn: 162229
-
Johnny Chen authored
Also modify the boundary condition test case SBDebugger.DispatchInput(None) to be wrapped inside a try-except clause for now. llvm-svn: 162228
-
Jakob Stoklund Olesen authored
LLVM IR has labeled duplicate CFG edges, but since Machine CFG edges don't have labels, it doesn't make sense to allow duplicates. There is no way of telling what the edges mean. Duplicate CFG edges cause confusion when dealing with edge weights. It seems that code producing duplicate CFG edges usually does the wrong thing with edge weights. llvm-svn: 162227
-
Eli Friedman authored
llvm-svn: 162226
-
Manuel Klimek authored
of matchers, categorized by type and fully expanded for the context in which they can be used. I used a script to generate this documentation which I'll want to be scrunitized by a code review before checking it in. llvm-svn: 162225
-
Jakob Stoklund Olesen authored
This pass often has weird CFG hacks and hand-written MI building code that can go wrong in many ways. llvm-svn: 162224
-
Jakob Stoklund Olesen authored
Verify that the predecessor and successor lists are consistent and free of duplicates. llvm-svn: 162223
-
Jakob Stoklund Olesen authored
The test case ARM/2011-05-04-MultipleLandingPadSuccs.ll was creating duplicate successor list entries. llvm-svn: 162222
-
Jordan Rose authored
This is used to handle functions and methods that consume an argument (annotated with the ns_consumed or cf_consumed attribute), but then the argument's retain count may be further modified in a callback. We want to warn about over-releasing, but we can't really track the object afterwards. llvm-svn: 162221
-
Jordan Rose authored
Also, suggest 'readonly' even if the property has been given an ownership attribute ('strong', 'weak', etc). This is used when properties are declared readonly in the public interface but readwrite in a class extension. <rdar://problem/11500004&11932285> llvm-svn: 162220
-
Sebastian Pop authored
This patch allows us to use cmake to specify a cross compiler: target different than host. In particular, it moves LLVM_DEFAULT_TARGET_TRIPLE and TARGET_TRIPLE variables from cmake/config-ix.cmake to the toplevel CMakeLists.txt to make them available at configure time. Here is the command line that I have used to test my patches to create a Hexagon cross compiler hosted on x86: $ cmake -G Ninja -D LLVM_TARGETS_TO_BUILD:STRING=Hexagon -D TARGET_TRIPLE:STRING=hexagon-unknown-linux-gnu -D LLVM_DEFAULT_TARGET_TRIPLE:STRING=hexagon-unknown-linux-gnu -D LLVM_TARGET_ARCH:STRING=hexagon-unknown-linux-gnu .. $ ninja check llvm-svn: 162219
-
Sebastian Pop authored
The patch adds a missing case for the Hexagon target in cmake/config-ix.cmake. llvm-svn: 162218
-
Sebastian Pop authored
llvm-svn: 162217
-
Jordan Rose authored
No functionality change. llvm-svn: 162216
-
Jordan Rose authored
Generating a sink is significantly different behavior from generating a normal node, and a simple boolean parameter can be rather opaque. Per offline discussion with Anna, adding new generation methods is the clearest way to communicate intent. No functionality change. llvm-svn: 162215
-
Michael Liao authored
llvm-svn: 162214
-
Akira Hatanaka authored
Patch by Petar Jovanovic. llvm-svn: 162213
-
Richard Smith authored
llvm-svn: 162212
-
Chad Rosier authored
llvm-svn: 162210
-
Jordan Rose authored
Forgetting to at least cast the result was giving us Loc/NonLoc problems in SValBuilder (hitting an assertion). But the standard (both C and C++) does actually guarantee that && and || will result in the actual values 1 and 0, typed as 'int' in C and 'bool' in C++, and we can easily model that. PR13461 llvm-svn: 162209
-
Greg Clayton authored
llvm-svn: 162207
-
Dmitri Gribenko authored
llvm-svn: 162206
-
Manuel Klimek authored
- use InnerMatcher consistently, fix style violations on the way - doxygenify code snippets across all comments - start doxygenifying code references in text - addeed missing Usable as: sections llvm-svn: 162205
-
Filipe Cabecinhas authored
I also added a typemap to make DispatchInput usable in Python. llvm-svn: 162204
-
Filipe Cabecinhas authored
llvm-svn: 162203
-
Alexander Potapenko authored
llvm-svn: 162202
-
Benjamin Kramer authored
llvm-svn: 162201
-
Tobias Grosser authored
Without this patch, lib.clang_getNumCompletionChunks is called at each _iteration_ of a 'for chunk in CompletionString' loop. Now we call it just once. llvm-svn: 162200
-
Alexander Potapenko authored
Minor refactoring: reduce code duplication by introducing a macro for dispatch_sync_f, dispatch_async_f, dispatch_barrier_async_f bodies. llvm-svn: 162199
-