- Jul 31, 2012
-
-
Jakob Stoklund Olesen authored
This lets traces include the final iteration of a nested loop above the center block, and the first iteration of a nested loop below the center block. We still don't allow traces to contain backedges, and traces are truncated where they would leave a loop, as seen from the center block. llvm-svn: 161003
-
Jim Grosbach authored
Empty macro arguments at the end of the list should be as-if not specified at all, but those in the middle of the list need to be kept so as not to screw up the positional numbering. E.g.: .macro foo foo_-bash___: nop .endm foo 1, 2, 3, 4 foo 1, , 3, 4 Should create two labels, "foo_1_2_3_4" and "foo_1__3_4". rdar://11948769 llvm-svn: 161002
-
Chandler Carruth authored
test more than a single instantiation of SmallVector. Add testing for 0, 1, 2, and 4 element sized "small" buffers. These appear to be essentially untested in the unit tests until now. Fix several tests to be robust in the face of a '0' small buffer. As a consequence of this size buffer, the growth patterns are actually observable in the test -- yes this means that many tests never caused a grow to occur before. For some tests I've merely added a reserve call to normalize behavior. For others, the growth is actually interesting, and so I captured the fact that growth would occur and adjusted the assertions to not assume how rapidly growth occured. Also update the specialization for a '0' small buffer length to have all the same interface points as the normal small vector. llvm-svn: 161001
-
Greg Clayton authored
Don't set the thread when adopting selected execution context entries, and use the "lldb_private::StateIsStoppedState(StateType, bool)" function to tell if the state is stopped. llvm-svn: 161000
-
- Jul 30, 2012
-
-
Richard Smith authored
Extend the ',' versus ';' diagnostic for -Wvexing-parse to cover the with-arguments case as well as the no-arguments case. llvm-svn: 160999
-
Richard Smith authored
accurate by asking the parser whether there was an ambiguity rather than trying to reverse-engineer it from the DeclSpec. Make the with-parameters case have better diagnostics by using semantic information to drive the warning, improving the diagnostics and adding a fixit. Patch by Nikola Smiljanic. Some minor changes by me to suppress diagnostics for declarations of the form 'T (*x)(...)', which seem to have a very high false positive rate, and to reduce indentation in 'warnAboutAmbiguousFunction'. llvm-svn: 160998
-
Jakob Stoklund Olesen authored
llvm-svn: 160997
-
Nick Lewycky authored
llvm-svn: 160996
-
Jakob Stoklund Olesen authored
When computing a trace, all the candidates for pred/succ must have been visited. Filter out back-edges first, though. The PO traversal ignores them. Thanks to Andy for spotting this in review. llvm-svn: 160995
-
Jakob Stoklund Olesen authored
By overriding Pass::verifyAnalysis(), the pass contents will be verified by the pass manager. llvm-svn: 160994
-
Fariborz Jahanian authored
type of generated call to super dealloc is 'void' and asserts if user's dealloc is not of 'void type. This rule must be enforced in clang front-end (with a fixit) if this is not the case, instead of asserting in CodeGen. // rdar://11987838 llvm-svn: 160993
-
Anna Zaks authored
- Retrieves the type of the object/receiver from the state. - Binds self during stack setup. - Only explores the path on which the method is inlined (no bifurcation to explore the path on which the method is not inlined). llvm-svn: 160991
-
Anna Zaks authored
llvm-svn: 160990
-
Anna Zaks authored
llvm-svn: 160989
-
Anna Zaks authored
dispatched methods. Disabled by default for now. llvm-svn: 160988
-
Pete Cooper authored
Consider address spaces for hashing and CSEing DAG nodes. Otherwise two loads from different x86 segments but the same address would get CSEd llvm-svn: 160987
-
Jordan Rose authored
This ensures that it is valid to reference-count any CallEvents, and we won't accidentally try to reclaim a CallEvent that lives on the stack. It also hides an ugly switch statement for handling CallExprs! There should be no functionality change here. llvm-svn: 160986
-
Jordan Rose authored
No functionality change. llvm-svn: 160985
-
Matt Beaumont-Gay authored
While '%n' can be used for evil in an attacker-controlled format string, there isn't any acute danger in using it in a literal format string with an argument of the appropriate type. llvm-svn: 160984
-
Jordan Rose authored
This allows us to get around the C++ "virtual constructor" problem when we'd like to create a CallEvent from an ExplodedNode, an inlined StackFrameContext, or another CallEvent. The solution has three parts: - CallEventManager uses a BumpPtrAllocator to allocate CallEvent-sized memory blocks. It also keeps a cache of freed CallEvents for reuse. - CallEvents all have protected copy constructors, along with cloneTo() methods that use placement new to copy into CallEventManager-managed memory, vtables intact. - CallEvents owned by CallEventManager are now wrapped in an IntrusiveRefCntPtr. Going forwards, it's probably a good idea to create ALL CallEvents through the CallEventManager, so that we don't accidentally try to reclaim a stack-allocated CallEvent. All of this machinery is currently unused but will be put into use shortly. llvm-svn: 160983
-
Nick Kledzik authored
llvm-svn: 160982
-
Eric Christopher authored
llvm-svn: 160981
-
Dmitri Gribenko authored
llvm-svn: 160980
-
Filipe Cabecinhas authored
llvm-svn: 160979
-
Kevin Enderby authored
where the other_half of the movt and movw relocation entries needs to get set and only with the 16 bits of the other half. rdar://10038370 llvm-svn: 160978
-
Jakob Stoklund Olesen authored
This is a cleaned up version of the isFree() function in MachineTraceMetrics.cpp. Transient instructions are very unlikely to produce any code in the final output. Either because they get eliminated by RegisterCoalescing, or because they are pseudo-instructions like labels and debug values. llvm-svn: 160977
-
Jakob Stoklund Olesen authored
This function verifies the consistency of cached data in the MachineTraceMetrics analysis. llvm-svn: 160976
-
Dmitri Gribenko authored
command llvm-svn: 160975
-
Dmitri Gribenko authored
llvm-svn: 160974
-
Dmitri Gribenko authored
llvm-svn: 160973
-
Dmitri Gribenko authored
llvm-svn: 160972
-
Dmitri Gribenko authored
llvm-svn: 160971
-
Dmitri Gribenko authored
called unless index is valid. llvm-svn: 160970
-
Jakob Stoklund Olesen authored
The MachineTraceMetrics analysis must be invalidated before modifying the CFG. This will catch some of the violations of that rule. llvm-svn: 160969
-
Jakob Stoklund Olesen authored
A->isPredecessor(B) is the same as B->isSuccessor(A), but it can tolerate a B that is null or dangling. This shouldn't happen normally, but it it useful for verification code. llvm-svn: 160968
-
Howard Hinnant authored
Despite my pathological distrust of spin locks, the number just don't lie. I've put a small spin in __sp_mut::lock() on std::mutex::try_lock(), which is testing quite well. In my experience, putting in a yield for every failed iteration is also a major performance booster. This change makes one of the performance tests I was using (a highly contended one) run about 20 times faster. llvm-svn: 160967
-
Hans Wennborg authored
This makes Clang check that the corresponding argument for "%n" in a format string is a pointer to int. llvm-svn: 160966
-
Dmitri Gribenko authored
llvm-svn: 160965
-
Benjamin Kramer authored
llvm-svn: 160964
-
Filipe Cabecinhas authored
Fixed ePathTypePythonDir for Linux and FreeBSD (at least). This works for non-installed compilations. I will test further. llvm-svn: 160963
-