- May 10, 2013
-
-
Alexander Kornienko authored
Summary: +updated ClangFormat.rst Reviewers: djasper, klimek Reviewed By: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D780 llvm-svn: 181617
-
Anna Zaks authored
llvm-svn: 181616
-
Anna Zaks authored
In most cases it is, by just looking at the name. Also, this check prevents the heuristic from working in strange user settings. radar://13839692 llvm-svn: 181615
-
Andrew Kaylor authored
MCJIT on Windows requires an explicit target triple with "-elf" appended to generate objects in ELF format. The common test framework was setting up this triple, but it wasn't passed to the C API in the test. llvm-svn: 181614
-
Matt Kopec authored
llvm-svn: 181613
-
Howard Hinnant authored
llvm-svn: 181612
-
Dmitri Gribenko authored
llvm-svn: 181611
-
David Dean authored
llvm-svn: 181610
-
Andrew Kaylor authored
This re-submission of this patch fixes a problem where the code sometimes caused a deadlock. The Process::SetPrivateState method was locking the Process::m_private_state variable and then later calling ThreadList::DidStop, which locks the ThreadList mutex. Other methods in ThreadList which were being called from other threads lock the ThreadList mutex and then call Process::GetPrivateState which locks the Process::m_private_state mutex. To avoid deadlocks, Process::SetPrivateState now locks the ThreadList mutex before locking the Process::m_private_state mutex. llvm-svn: 181609
-
Alexander Kornienko authored
Summary: This patch allows using \n inside long help strings for command-line options, so that all lines are equally indented. This is not a perfect solution, as we don't (and probably don't want to) know about terminal width, but it allows to format long help strings somehow readable without manually padding them with spaces. A motivating example is -help output from clang-format (source code in tools/clang-format/ClangFormat.cpp, see cl options offset, length, style, and dump-config). Reviewers: atrick, alexfh Reviewed By: alexfh CC: llvm-commits, rafael Differential Revision: http://llvm-reviews.chandlerc.com/D779 llvm-svn: 181608
-
Jordan Rose authored
Consider this example: char *p = malloc(sizeof(char)); systemFunction(&p); free(p); In this case, when we call systemFunction, we know (because it's a system function) that it won't free 'p'. However, we /don't/ know whether or not it will /change/ 'p', so the analyzer is forced to invalidate 'p', wiping out any bindings it contains. But now the malloc'd region looks like a leak, since there are no more bindings pointing to it, and we'll get a spurious leak warning. The fix for this is to notice when something is becoming inaccessible due to invalidation (i.e. an imperfect model, as opposed to being explicitly overwritten) and stop tracking it at that point. Currently, the best way to determine this for a call is the "indirect escape" pointer-escape kind. In practice, all the patch does is take the "system functions don't free memory" special case and limit it to direct parameters, i.e. just the arguments to a call and not other regions accessible to them. This is a conservative change that should only cause us to escape regions more eagerly, which means fewer leak warnings. This isn't perfect for several reasons, the main one being that this example is treated the same as the one above: char **p = malloc(sizeof(char *)); systemFunction(p + 1); // leak Currently, "addresses accessible by offsets of the starting region" and "addresses accessible through bindings of the starting region" are both considered "indirect" regions, hence this uniform treatment. Another issue is our longstanding problem of not distinguishing const and non-const bindings; if in the first example systemFunction's parameter were a char * const *, we should know that the function will not overwrite 'p', and thus we can safely report the leak. <rdar://problem/13758386> llvm-svn: 181607
-
Rafael Espindola authored
llvm-svn: 181606
-
Shankar Easwaran authored
Layoutpass by ordering atoms if they appear in the override list first and then looking at the way of ordering atoms in the default way. The fix also fixes issues with the sizes of the sections, that appear in the output properly too. The commit also adds a testcase(orderatoms-by-override.test) to test it and fixes all the other relevant testcases. llvm-svn: 181605
-
Benjamin Kramer authored
The shift amount may be larger than the type leading to undefined behavior. Limit the transform to constant shift amounts. While there update the bits to clear in the result which may enable additional optimizations. PR15959. llvm-svn: 181604
-
Logan Chien authored
This commit implements the AsmParser for fnstart, fnend, cantunwind, personality, handlerdata, pad, setfp, save, and vsave directives. This commit fixes some minor issue in the ARMELFStreamer: * The switch back to corresponding section after the .fnend directive. * Emit the unwind opcode while processing .fnend directive if there is no .handlerdata directive. * Emit the unwind opcode to .ARM.extab while processing .handlerdata even if .personality directive does not exist. llvm-svn: 181603
-
Ashok Thirumurthi authored
Removed expectedFailureDarwin, and added a note about the disparity between the automated tests and testing at the lldb command-line. llvm-svn: 181602
-
Aaron Ballman authored
llvm-svn: 181600
-
Ashok Thirumurthi authored
Added an integration test to step through a crash and then test for globals, locals, arguments, registers and the back-trace. llvm-svn: 181599
-
Wei Pan authored
Differential-revision: llvm-reviews.chandlerc.com/D778 llvm-svn: 181598
-
Benjamin Kramer authored
DAGCombiner: Generate a correct constant for vector types when folding (xor (and)) into (and (not)). PR15948. llvm-svn: 181597
-
Edwin Vane authored
This patch fixes different issues: - override is not added in template 'contexts' (this will be further improved to handle safe situations, a test for this has been written already) - the main file is now checked before the modifications are applied - override is not applied now when dealing with pure methods since it was misplaced (ignoring it isn't the perfect solution but it seems difficult to find the location just before the pure-specifier) Fixes PR15827 Author: Guillaume Papin <guillaume.papin@epitech.eu> llvm-svn: 181596
-
Daniel Jasper authored
Otherwise (when indenting from the wrapped -> or .), this looks like a confusing indent. Before: aaaaaaa // .aaaaaaa( // aaaaaaa); After: aaaaaaa // .aaaaaaa( // aaaaaaa); llvm-svn: 181595
-
Dmitri Gribenko authored
Patch by Robert Wilhelm. llvm-svn: 181594
-
Alexander Kornienko authored
llvm-svn: 181593
-
Dmitri Gribenko authored
llvm-svn: 181592
-
Alexander Kornienko authored
llvm-svn: 181591
-
Daniel Jasper authored
Thereby, the macro is consistently formatted (including the trailing escaped newlines) even if clang-format is invoked only on single lines of the macro. llvm-svn: 181590
-
Alexander Kornienko authored
Summary: Adds actual config file reading to the clang-format utility. Configuration file name is .clang-format. It is looked up for each input file in its parent directories starting from immediate one. First found .clang-format file is used. When using standard input, .clang-format is searched starting from the current directory. Added -dump-config option to easily create configuration files. Reviewers: djasper, klimek Reviewed By: klimek CC: cfe-commits, jordan_rose, kimgr Differential Revision: http://llvm-reviews.chandlerc.com/D758 llvm-svn: 181589
-
Peter Collingbourne authored
Differential Revision: http://llvm-reviews.chandlerc.com/D744 llvm-svn: 181588
-
Hans Wennborg authored
MSVC provides __wchar_t. This is the same as the built-in wchar_t type from C++, but it is also available with -fno-wchar and in C. The commit changes ASTContext to have two different types for this: - WCharTy is the built-in type used for wchar_t in C++ and __wchar_t. - WideCharTy is the type of a wide character literal. In C++ this is the same as WCharTy, and in C it is an integer type compatible with the type in <stddef.h>. This fixes PR15815. llvm-svn: 181587
-
Benjamin Kramer authored
PR15952. llvm-svn: 181586
-
Daniel Jasper authored
Before, the actual operator of an overloaded operator declaration was handled as a binary operator an thus, clang-format could not find valid formattings for many examples, e.g.: template <typename AAAAAAA, typename BBBBBBB> AAAAAAA operator/(const AAAAAAA &a, BBBBBBB &b); llvm-svn: 181585
-
Richard Smith authored
substitute 'void' into the return type rather than replacing it with 'void', so that we maintain the 'auto' type sugar. llvm-svn: 181584
-
Richard Smith authored
llvm-svn: 181583
-
Jason Molenda authored
llvm-svn: 181582
-
Jason Molenda authored
I'll revisit this and apply once I figure out how to address that. llvm-svn: 181581
-
Tom Stellard authored
The BFE optimization was the only one we were actually using, and it was emitting an intrinsic that we don't support. https://bugs.freedesktop.org/show_bug.cgi?id=64201 Reviewed-by:
Christian König <christian.koenig@amd.com> NOTE: This is a candidate for the 3.3 branch. llvm-svn: 181580
-
Tom Stellard authored
Patch by: Aaron Watry Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> Signed-off-by:
Aaron Watry <awatry@gmail.com> NOTE: This is a candidate for the 3.3 branch. llvm-svn: 181579
-
Tom Stellard authored
Fixes piglit test for OpenCL builtin mul24, and allows mad24 to run. Patch by: Aaron Watry Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> Signed-off-by:
Aaron Watry <awatry@gmail.com> NOTE: This is a candidate for the 3.3 branch. llvm-svn: 181578
-
Tom Stellard authored
v2: Add v4i32 test Patch by: Aaron Watry Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> Signed-off-by:
Aaron Watry <awatry@gmail.com> NOTE: This is a candidate for the 3.3 branch. llvm-svn: 181577
-