- May 28, 2013
-
-
Peter Collingbourne authored
Differential Revision: http://llvm-reviews.chandlerc.com/D872 llvm-svn: 182765
-
Richard Sandiford authored
This patch adds support for the CRJ and CGRJ instructions. Support for the immediate forms will be a separate patch. The architecture has a large number of comparison instructions. I think it's generally better to concentrate on using the "best" comparison instruction first and foremost, then only use something like CRJ if CR really was the natual choice of comparison instruction. The patch therefore opportunistically converts separate CR and BRC instructions into a single CRJ while emitting instructions in ISelLowering. llvm-svn: 182764
-
Renato Golin authored
llvm-svn: 182763
-
Richard Sandiford authored
This is needed for the upcoming compare-and-branch patch. No functional change intended. llvm-svn: 182762
-
Alexey Samsonov authored
llvm-svn: 182761
-
Manuel Klimek authored
To fully support this, we also need to expand tabs in the text before the block comment. This patch breaks indentation when there was a non-standard mixture of spaces and tabs used for indentation, but fixes a regression in the simple case: { /* * Comment. */ int i; } Is now formatted correctly, if there were tabs used for indentation before. llvm-svn: 182760
-
Renato Golin authored
llvm-svn: 182759
-
Alexey Samsonov authored
llvm-svn: 182758
-
Manuel Klimek authored
Block comment indentation of empty lines regressed, as we did not have a test for it. /* Comment with... * * empty line. */ is now formatted correctly again. llvm-svn: 182757
-
Daniel Jasper authored
Before: int (*func)(void*); void f() { int(*func)(void*); } After (consistent space after "int"): int (*func)(void*); void f() { int (*func)(void*); } llvm-svn: 182756
-
Michael Kuperstein authored
Make BasicAliasAnalysis recognize the fact a noalias argument cannot alias another argument, even if the other argument is not itself marked noalias. llvm-svn: 182755
-
Daniel Jasper authored
This gets turned into two ">" operators at the beginning in order to simplify template parameter handling. Thus, we need a special case to handle those two binary operators correctly. With this patch, clang-format can now correctly handle cases like: aaaaaa = aaaaaaa(aaaaaaa, // break aaaaaa) >> bbbbbb; llvm-svn: 182754
-
Jakob Stoklund Olesen authored
The coercion type serves two purposes: 1. Pad structs to a multiple of 64 bits, so they are passed 'left-aligned' in registers. 2. Expose aligned floating point elements as first-level elements, so the code generator knows to pass them in floating point registers. We also compute the InReg flag which indicates that the struct contains aligned 32-bit floats. This flag is used by the code generator to pick the right registers. llvm-svn: 182753
-
Daniel Malea authored
- [ninja|make] lldb-cpp-doc builds the C++ API reference docs - [ninja|make] lldb-python-doc builds the python API reference docs - updated build page on website to include instructions to build docs Tested on Linux/Mac OS X llvm-svn: 182752
-
Daniel Malea authored
- This resolves the remaining issues related to building lldb utility/dylib - TODO: fix up debugserver build Patch by Ahmed Bougacha! llvm-svn: 182751
-
Rafael Espindola authored
Fixes PR16114. llvm-svn: 182750
-
Rafael Espindola authored
No intended functionality change. llvm-svn: 182749
-
Rafael Espindola authored
No functionality change. llvm-svn: 182747
-
Rafael Espindola authored
And remove header and cpp file that are empty after that. llvm-svn: 182746
-
- May 27, 2013
-
-
Jakob Stoklund Olesen authored
- All integer arguments smaller than 64 bits are extended. - Large structs are passed indirectly, not using 'byval'. - Structs up to 32 bytes in size are returned in registers. Some things are not implemented yet: - EmitVAArg can be implemented in terms of the va_arg instruction. - When structs are passed in registers, float members require special handling because they are passed in the floating point registers. - Structs are left-aligned when passed in registers. This may require padding. llvm-svn: 182745
-
Peter Collingbourne authored
This option is used to select a dynamic loader prefix to be used at runtime. Currently this is implemented for the Linux toolchain. Differential Revision: http://llvm-reviews.chandlerc.com/D851 llvm-svn: 182744
-
Peter Collingbourne authored
llvm-svn: 182743
-
David Blaikie authored
llvm-svn: 182742
-
Daniel Jasper authored
Before: A < int&& > a; After: A<int &&> a; Also remove obsolete FIXMEs. llvm-svn: 182741
-
Peter Collingbourne authored
llvm-svn: 182740
-
Preston Gurd authored
When -ffast-math is in effect (on Linux, at least), clang defines __FINITE_MATH_ONLY__ > 0 when including <math.h>. This causes the preprocessor to include <bits/math-finite.h>, which renames the sqrt functions. For instance, "sqrt" is renamed as "__sqrt_finite". This patch adds the 3 new names in such a way that they will be treated as equivalent to their respective original names. llvm-svn: 182739
-
Manuel Klimek authored
Unify handling of whitespace when breaking protruding tokens with other whitespace replacements. As a side effect, the BreakableToken structure changed significantly: - have a common base class for single-line breakable tokens, as they are much more similar - revamp handling of multi-line comments; we now calculate the information about lines in multi-line comments similar to normal tokens, and always issue replacements As a result, we were able to get rid of special casing of trailing whitespace deletion for comments in the whitespace manager and the BreakableToken and fixed bugs related to tab handling and escaped newlines. llvm-svn: 182738
-
Rafael Espindola authored
We were handling only local types in inline External functions before. llvm-svn: 182737
-
Ariel J. Bernal authored
UseAuto used to replace declarion lists with new expressons where some variable were not initialized with new. This fix checks that every DeclStmt has a VarDecl with an initializer and it also ensures that all declarations have the same type. Added tests for multiple declarations and for typedefs. llvm-svn: 182736
-
Rafael Espindola authored
This removes a duplicate from Decl.cpp and a followup patch will use isExternallyVisible. llvm-svn: 182735
-
Rafael Espindola authored
llvm-svn: 182734
-
Daniel Jasper authored
Before: unsigned OriginalStartColumn = SourceMgr.getSpellingColumnNumber( Current.FormatTok.getStartOfNonWhitespace()) - 1; After: unsigned OriginalStartColumn = SourceMgr.getSpellingColumnNumber( Current.FormatTok.getStartOfNonWhitespace()) - 1; llvm-svn: 182733
-
Manuel Klimek authored
llvm-svn: 182732
-
Daniel Jasper authored
In general, we like to avoid line breaks like: ... SomeParameter, OtherParameter).DoSomething( ... as they tend to make code really hard to read (how would you even indent the next line?). Previously we have implemented this in a hacky way, which has now shown to lead to problems. This fixes a few weird looking formattings, such as: Before: aaaaa( aaaaa(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) .aaaaa(aaaaa), aaaaaaaaaaaaaaaaaaaaa); After: aaaaa(aaaaa(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa).aaaaa(aaaaa), aaaaaaaaaaaaaaaaaaaaa); llvm-svn: 182731
-
Sergey Matveev authored
In this CL all old tests are removed and one LIT test is added. llvm-svn: 182730
-
Sergey Matveev authored
If -fsanitize=leak is specified, link the program with the LeakSanitizer runtime. Ignore this option when -fsanitize=address is specified, because AddressSanitizer has this functionality built in. llvm-svn: 182729
-
Sergey Matveev authored
llvm-svn: 182728
-
Alexey Samsonov authored
Now compiler-rt tests run correctly if compiler-rt is checked out into arbitrary directory (not necessarily projects/compiler-rt). Patch by Greg Fitzgerald! llvm-svn: 182726
-
Hal Finkel authored
isConsecutiveLS is a slightly more general form of SelectionDAG::isConsecutiveLoad. Aside from also handling stores, it also does not assume equality of the chain operands is necessary. In the case of the PPC backend, this chain condition is checked in a more general way by the surrounding code. Mostly, this part of the refactoring in preparation for supporting optimized unaligned stores. llvm-svn: 182723
-
NAKAMURA Takumi authored
llvm-svn: 182722
-