Bill Wendling [Tue, 26 Feb 2013 23:01:33 +0000 (23:01 +0000)]
Don't set the -target-cpu and -target-features attributes just now.
This is causing some problems with some of the builders. It's non-trivial to
reset the target's features.
llvm-svn: 176133
Jim Ingham [Tue, 26 Feb 2013 22:51:48 +0000 (22:51 +0000)]
Mark a few more tests as "basic_process".
llvm-svn: 176132
Michael Ilseman [Tue, 26 Feb 2013 22:51:07 +0000 (22:51 +0000)]
Constant fold vector bitcasts of halves similarly to how floats and doubles are folded. Test case included.
llvm-svn: 176131
Roman Divacky [Tue, 26 Feb 2013 22:41:01 +0000 (22:41 +0000)]
Add support for autodetection of ADM bdver2.
llvm-svn: 176130
Manman Ren [Tue, 26 Feb 2013 22:35:53 +0000 (22:35 +0000)]
Revert r176120 as it caused a failure at static-member.cpp
llvm-svn: 176129
Chad Rosier [Tue, 26 Feb 2013 22:15:50 +0000 (22:15 +0000)]
No need to initialize these variables.
llvm-svn: 176128
Fariborz Jahanian [Tue, 26 Feb 2013 22:12:16 +0000 (22:12 +0000)]
doxygen command. Add 'attention' command to list of similar
doxygen commands. // rdar://
12379053
llvm-svn: 176127
Daniel Malea [Tue, 26 Feb 2013 21:41:55 +0000 (21:41 +0000)]
Add links to buildbots on the LLDB build instructions page
llvm-svn: 176126
Michael J. Spencer [Tue, 26 Feb 2013 21:29:47 +0000 (21:29 +0000)]
[TableGen] Fix ICE on MSVC 2012 Release builds.
llvm-svn: 176125
Bill Schmidt [Tue, 26 Feb 2013 21:28:57 +0000 (21:28 +0000)]
Fix PR15332 (patch by Florian Zeitz).
There's no need to generate a stack frame for PPC32 SVR4 when there are
no local variables assigned to the stack, i.e., when no red zone is needed.
(PPC64 supports a red zone, but PPC32 does not.)
llvm-svn: 176124
Matt Arsenault [Tue, 26 Feb 2013 21:20:35 +0000 (21:20 +0000)]
Fix auto_ptr is deprecated warnings
llvm-svn: 176123
Matt Arsenault [Tue, 26 Feb 2013 21:16:00 +0000 (21:16 +0000)]
Fix assertion failure when a field is given an address space.
llvm-svn: 176122
Matt Arsenault [Tue, 26 Feb 2013 21:15:54 +0000 (21:15 +0000)]
Fix initializer for variables with attribute address_space set.
This would error in C++ mode unless the variable also had a cv
qualifier.
e.g.
__attribute__((address_space(2))) float foo = 1.0f; would error but
__attribute__((address_space(2))) const float foo = 1.0f; would not.
llvm-svn: 176121
Manman Ren [Tue, 26 Feb 2013 20:48:29 +0000 (20:48 +0000)]
Debug Info: for static member variables, move AT_MIPS_linkage_name from
TAG_member inside a class to the specification DIE.
Having AT_MIPS_linkage_name on TAG_member caused old gdb (GNU 6.3.50) to
error out. Also gcc 4.7 has AT_MIPS_linkage_name on the specification DIE.
rdar://problem/
13291234
llvm-svn: 176120
Chad Rosier [Tue, 26 Feb 2013 20:22:30 +0000 (20:22 +0000)]
Add a test case for r176066.
llvm-svn: 176119
Jim Grosbach [Tue, 26 Feb 2013 20:17:10 +0000 (20:17 +0000)]
AsmParser: More generic support for integer type suffices.
For integer constants, allow 'L', 'UL' as well as 'ULL' and 'LL'. This provides
better support for shared headers between .s and .c files that define bunches
of constant values.
rdar://9321056
llvm-svn: 176118
Matt Arsenault [Tue, 26 Feb 2013 20:13:09 +0000 (20:13 +0000)]
Fix typo
llvm-svn: 176117
Adrian Prantl [Tue, 26 Feb 2013 20:01:46 +0000 (20:01 +0000)]
Ensure that DIType is regenerated after we visited an implementation that adds ivars to an interface. Fixes rdar://
13175234
llvm-svn: 176116
Ted Kremenek [Tue, 26 Feb 2013 19:44:38 +0000 (19:44 +0000)]
[analyzer] Use 'MemRegion::printPretty()' instead of assuming the region is a VarRegion.
Fixes PR15358 and <rdar://problem/
13295437>.
Along the way, shorten path diagnostics that say "Variable 'x'" to just
be "'x'". By the context, it is obvious that we have a variable,
and so this just consumes text space.
llvm-svn: 176115
Matt Beaumont-Gay [Tue, 26 Feb 2013 19:34:08 +0000 (19:34 +0000)]
Warn on dropping the return value from a warn_unused_result function, even in
macros.
llvm-svn: 176114
Matt Arsenault [Tue, 26 Feb 2013 19:33:48 +0000 (19:33 +0000)]
Another test commit. Remove trailing whitespace.
llvm-svn: 176113
Rafael Espindola [Tue, 26 Feb 2013 19:33:14 +0000 (19:33 +0000)]
Use the most recent decl in getExplicitVisibility.
Now that implicitly hidden template arguments can make an instantiation hidden,
it is important to look at more than just the canonical decl of the argument
in order to see if an attribute is available in a more recent decl.
This has the disadvantage of exposing when getExplicitVisibility is called,
but lets us handle cases like
template <typename T>
struct __attribute__((visibility("default"))) barT {
static void zed() {}
};
class foo;
class __attribute__((visibility("default"))) foo;
template struct barT<foo>;
llvm-svn: 176112
Matt Arsenault [Tue, 26 Feb 2013 19:18:06 +0000 (19:18 +0000)]
Test commit. Remove trailing whitespace.
llvm-svn: 176111
Rafael Espindola [Tue, 26 Feb 2013 19:13:56 +0000 (19:13 +0000)]
Be more careful in applying pragma weak. Fixes pr14974.
GCC applies a pragma weak to a decl if it matches the mangled name. We used
to apply if it matched the plain name.
This patch is a compromise: we apply the pragma only if it matches the name
and the decl has C language linkage.
llvm-svn: 176110
Chad Rosier [Tue, 26 Feb 2013 18:39:31 +0000 (18:39 +0000)]
Remove a few unused arguments.
llvm-svn: 176109
Sean Silva [Tue, 26 Feb 2013 18:22:18 +0000 (18:22 +0000)]
[docs] Use reST link instead of direct HTML link.
llvm-svn: 176108
Eli Bendersky [Tue, 26 Feb 2013 18:05:31 +0000 (18:05 +0000)]
Slight cosmetic fixes
llvm-svn: 176107
Greg Clayton [Tue, 26 Feb 2013 17:59:39 +0000 (17:59 +0000)]
Backed out a hacky fix that is no longer needed.
llvm-svn: 176106
Christian Konig [Tue, 26 Feb 2013 17:52:47 +0000 (17:52 +0000)]
R600/SI: Add promotion of e32 to e64 in operand folding
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176105
Christian Konig [Tue, 26 Feb 2013 17:52:42 +0000 (17:52 +0000)]
R600/SI: add VOP mapping functions
Make it possible to map between e32 and e64 encoding opcodes.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176104
Christian Konig [Tue, 26 Feb 2013 17:52:36 +0000 (17:52 +0000)]
R600/SI: swap operands if it helps folding
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176103
Christian Konig [Tue, 26 Feb 2013 17:52:29 +0000 (17:52 +0000)]
R600/SI: add some more instruction flags
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176102
Christian Konig [Tue, 26 Feb 2013 17:52:23 +0000 (17:52 +0000)]
R600/SI: add post ISel folding for SI v2
Include immediate folding and SGPR limit handling for VOP3 instructions.
v2: remove leftover hasExtraSrcRegAllocReq
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176101
Christian Konig [Tue, 26 Feb 2013 17:52:16 +0000 (17:52 +0000)]
R600/SI: add folding helper
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176100
Christian Konig [Tue, 26 Feb 2013 17:52:09 +0000 (17:52 +0000)]
R600/SI: fix VOP3b encoding v2
v2: document why we hardcode VCC for now.
This is a candidate for the mesa-stable branch.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176099
Christian Konig [Tue, 26 Feb 2013 17:52:03 +0000 (17:52 +0000)]
R600/SI: fix and cleanup SI register definition v2
Prevent producing real strange tablegen code by using
proper register sizes, alignments and hierarchy.
Also cleanup the unused definitions and add some comments.
v2: add SGPR 512 bit registers, stop registers from wrapping around,
fix SGPR alignment
This is a candidate for the mesa-stable branch.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176098
Christian Konig [Tue, 26 Feb 2013 17:51:57 +0000 (17:51 +0000)]
R600/SI: fix stupid typo
This is a candidate for the mesa-stable branch.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 176097
Renato Golin [Tue, 26 Feb 2013 17:23:13 +0000 (17:23 +0000)]
Adding ARM as supported architecture
llvm-svn: 176096
Renato Golin [Tue, 26 Feb 2013 17:16:27 +0000 (17:16 +0000)]
Proper XFAILs for ARMv7 / v5
llvm-svn: 176095
Bill Schmidt [Tue, 26 Feb 2013 16:41:03 +0000 (16:41 +0000)]
Fix PR15359.
The PowerPC TLS relocation types were not previously added to the
necessary list in MCELFStreamer::fixSymbolsInTLSFixups(). Now they are!
llvm-svn: 176094
Howard Hinnant [Tue, 26 Feb 2013 16:27:55 +0000 (16:27 +0000)]
Michael van der Westhuizen: correction to the libcxx build instructions when built with libcxxrt on Linux.
llvm-svn: 176093
Daniel Jasper [Tue, 26 Feb 2013 13:59:14 +0000 (13:59 +0000)]
Fix bad line break decision.
Before:
if (Intervals[i].getRange().getFirst() < Intervals[i - 1]
.getRange().getLast()) {}
After:
if (Intervals[i].getRange().getFirst() <
Intervals[i - 1].getRange().getLast()) {}
llvm-svn: 176092
Alexey Samsonov [Tue, 26 Feb 2013 13:40:51 +0000 (13:40 +0000)]
[Sanitizer] Don't die if external symbolizer is used on Mac, where it's not implemented yet
llvm-svn: 176091
Renato Golin [Tue, 26 Feb 2013 13:32:40 +0000 (13:32 +0000)]
GCC 4.6.3 O3 miscompiles on ARM
llvm-svn: 176090
Kostya Serebryany [Tue, 26 Feb 2013 13:30:27 +0000 (13:30 +0000)]
[sanitizer] A low-level vector implementation to be used in leak checking code. Patch by Sergey Matveev
llvm-svn: 176089
Evgeniy Stepanov [Tue, 26 Feb 2013 13:20:29 +0000 (13:20 +0000)]
Allow dash before "ld" in android driver test.
Sometimes android linker is "arm-linux-androideabi-ld", and not just "ld".
llvm-svn: 176088
Daniel Jasper [Tue, 26 Feb 2013 13:18:08 +0000 (13:18 +0000)]
In range-based for-loops, prefer splitting after ":".
Before:
for (const
aaaaaaaaaaaaaaaaaaaaa &
aaaaaaaaa :
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) {}
After:
for (const
aaaaaaaaaaaaaaaaaaaaa &
aaaaaaaaa :
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) {}
llvm-svn: 176087
Daniel Jasper [Tue, 26 Feb 2013 13:10:34 +0000 (13:10 +0000)]
Only keep empty lines in unwrapped lines if they preceed a line comment.
Empty lines followed by line comments are often used to highlight the
comment. Empty lines somewhere else are usually left over from manual or
automatic formatting and should probably be removed.
Before (clang-format would keep):
S s = {
a,
b
};
After:
S s = { a, b };
llvm-svn: 176086
Kostya Serebryany [Tue, 26 Feb 2013 12:59:06 +0000 (12:59 +0000)]
[asan] a bit stricter lint for CHECK vs CHECK_XX (these CHECK_XX really help debugging!)
llvm-svn: 176085
Daniel Jasper [Tue, 26 Feb 2013 12:52:34 +0000 (12:52 +0000)]
Only break string literals as a last resort.
We might want to move towards doing this if the formatting can be
significantly improved, but we need to carefully evaluate the different
situations first.
Before (the string literal was split by clang-format here):
aaaaaaaaaaaaaaaaaaaa(
aaaaaaaaaaaaaaaaaaaa, aaaaaa("aaa aaaaa aaa aaa aaaaa aaa "
"aaaaa aaa aaa aaaaaa"));
After:
aaaaaaaaaaaaaaaaaaaa(
aaaaaaaaaaaaaaaaaaaa,
aaaaaa("aaa aaaaa aaa aaa aaaaa aaa aaaaa aaa aaa aaaaaa"));
llvm-svn: 176084
Alexey Samsonov [Tue, 26 Feb 2013 09:43:27 +0000 (09:43 +0000)]
Define CMake option CLANG_INCLUDE_TESTS *before* traversing into tests/ subdirectory. Otherwise, while configuring the build tree for the first time, Clang unit tests could avoid being added to 'check-clang' command, and thus avoid being built and executed.
llvm-svn: 176080
Kostya Serebryany [Tue, 26 Feb 2013 08:18:27 +0000 (08:18 +0000)]
[tsan] enable tsan-vs-gvn test since it is now fixed
llvm-svn: 176079
Kostya Serebryany [Tue, 26 Feb 2013 07:25:18 +0000 (07:25 +0000)]
[asan] fix the output for range accesses (memset, etc); improve the tests; more strict checking in memcmp
llvm-svn: 176078
Kostya Serebryany [Tue, 26 Feb 2013 07:01:06 +0000 (07:01 +0000)]
[asan] use the new attribute syntax (no_address_safety_analysis => no_sanitize_address)
llvm-svn: 176077
Kostya Serebryany [Tue, 26 Feb 2013 06:58:27 +0000 (06:58 +0000)]
Unify clang/llvm attributes for asan/tsan/msan (Clang part)
These are two related changes (one in llvm, one in clang).
LLVM:
- rename address_safety => sanitize_address (the enum value is the same, so we preserve binary compatibility with old bitcode)
- rename thread_safety => sanitize_thread
- rename no_uninitialized_checks -> sanitize_memory
CLANG:
- add __attribute__((no_sanitize_address)) as a synonym for __attribute__((no_address_safety_analysis))
- add __attribute__((no_sanitize_thread))
- add __attribute__((no_sanitize_memory))
for S in address thread memory
If -fsanitize=S is present and __attribute__((no_sanitize_S)) is not
set llvm attribute sanitize_S
llvm-svn: 176076
Kostya Serebryany [Tue, 26 Feb 2013 06:58:09 +0000 (06:58 +0000)]
Unify clang/llvm attributes for asan/tsan/msan (LLVM part)
These are two related changes (one in llvm, one in clang).
LLVM:
- rename address_safety => sanitize_address (the enum value is the same, so we preserve binary compatibility with old bitcode)
- rename thread_safety => sanitize_thread
- rename no_uninitialized_checks -> sanitize_memory
CLANG:
- add __attribute__((no_sanitize_address)) as a synonym for __attribute__((no_address_safety_analysis))
- add __attribute__((no_sanitize_thread))
- add __attribute__((no_sanitize_memory))
for S in address thread memory
If -fsanitize=S is present and __attribute__((no_sanitize_S)) is not
set llvm attribute sanitize_S
llvm-svn: 176075
Michael Han [Tue, 26 Feb 2013 02:00:13 +0000 (02:00 +0000)]
Update tests to do a full match against printed C++11 attributes.
llvm-svn: 176074
Michael J. Spencer [Tue, 26 Feb 2013 01:35:30 +0000 (01:35 +0000)]
[Pass][Layout] Fix bug and add debug printing.
Fix a bug where if two atoms had the same index in the override map,
the compare would return false. It now goes to the next check when
they are equal.
No test because it currently can't be tested. An upcomming patch will test it.
llvm-svn: 176073
Michael Ilseman [Tue, 26 Feb 2013 01:31:59 +0000 (01:31 +0000)]
Use a DenseMap instead of a std::map for AnalysisID -> Pass* maps. This reduces the pass-manager overhead from FPPassManager::runOnFunction() by about 10%.
llvm-svn: 176072
Greg Clayton [Tue, 26 Feb 2013 01:31:37 +0000 (01:31 +0000)]
A quick variable rename Sean and I had discussed earlier to make things a bit clearer.
llvm-svn: 176071
Akira Hatanaka [Tue, 26 Feb 2013 01:30:05 +0000 (01:30 +0000)]
[mips] Use class RegDefsUses to track register defs and uses.
No functionality change.
llvm-svn: 176070
Jordan Rose [Tue, 26 Feb 2013 01:21:27 +0000 (01:21 +0000)]
[analyzer] Don't look through casts when creating pointer temporaries.
Normally, we need to look through derived-to-base casts when creating
temporary object regions (added in r175854). However, if the temporary
is a pointer (rather than a struct/class instance), we need to /preserve/
the base casts that have been applied.
This also ensures that we really do create a new temporary region when
we need to: MaterializeTemporaryExpr and lvalue CXXDefaultArgExprs.
Fixes PR15342, although the test case doesn't include the crash because
I couldn't isolate it.
llvm-svn: 176069
Jordan Rose [Tue, 26 Feb 2013 01:21:21 +0000 (01:21 +0000)]
[analyzer] StackAddrEscapeChecker: strip qualifiers from temporary types.
With the new support for trivial copy constructors, we are not always
consistent about whether a CXXTempObjectRegion gets reused or created
from scratch, which affects whether qualifiers are preserved. However,
we probably don't care anyway.
This also switches to using the current PrintingPolicy for the type,
which means C++ types don't get a spurious 'struct' prefix anymore.
llvm-svn: 176068
Sean Callanan [Tue, 26 Feb 2013 01:12:25 +0000 (01:12 +0000)]
Fixed several problems with class uniq'ing in the
SymbolFileDWARF code:
- If a class is being uniqued to another copy of itself
and the method lists don't match exactly, take a slow
path and at least unique the methods that they have
in common.
- Sort name_to_die maps before querying them. This
would otherwise result in uniquing failures because
looking up a name in a map that contains it would
often fail.
- Tolerate classes in other symbol files in the case
of debugging with .o files rather than with a
.dSYM. We used to assume that the classes being
uniqued were in the same symbol file, causing
unpredictable results.
This will dramatically reduce the number of cases where
a function does not have a valid DeclContext.
<rdar://problem/
12153915>
llvm-svn: 176067
Chad Rosier [Tue, 26 Feb 2013 01:05:31 +0000 (01:05 +0000)]
[fast-isel] Make sure the FastLowerArguments function checks to make sure the
arguments type is a simple type.
rdar://
13290455
llvm-svn: 176066
Enrico Granata [Tue, 26 Feb 2013 00:28:02 +0000 (00:28 +0000)]
Removing leftover printf() statement
llvm-svn: 176065
Jason Molenda [Tue, 26 Feb 2013 00:26:47 +0000 (00:26 +0000)]
If the user has disabled kext loading with the
plugin.dynamic-loader.darwin-kernel.load-kexts setting, don't print
any messages about loading the kexts (which isn't being done) and
don't read the Mach-O headers out of memory (which can be slow and
they're not being used for anything at this point).
llvm-svn: 176064
Greg Clayton [Tue, 26 Feb 2013 00:21:38 +0000 (00:21 +0000)]
<rdar://problem/
13289157>
Set the exception breakpoints more efficiently by specifying two module basenames as module filters for Apple vendor targets.
llvm-svn: 176063
Han Ming Ong [Tue, 26 Feb 2013 00:04:29 +0000 (00:04 +0000)]
<rdar://problem/
13282582>
Really don't call sysctl again when we already have the result.
llvm-svn: 176062
Jim Ingham [Mon, 25 Feb 2013 23:51:06 +0000 (23:51 +0000)]
Fix the .categories, it had "dataformatter" not "dataformatters".
Remove the getCategory from TestDataFormatterObjC.py, since it was superceded by the .categories file,
and didn't work anyway (getCategories currently has to be a method on the test class, not on the test.)
Add a "basic_process" category, and start to find some tests for simple process running sniff tests.
llvm-svn: 176061
Michael Liao [Mon, 25 Feb 2013 23:16:36 +0000 (23:16 +0000)]
Refine fix to PR10499, no functionality change
- Put expensive checking after simple one
llvm-svn: 176060
Enrico Granata [Mon, 25 Feb 2013 23:01:08 +0000 (23:01 +0000)]
Being explicit about how ignoring optparse's exceptions is not a best principle
llvm-svn: 176059
Michael Liao [Mon, 25 Feb 2013 23:01:03 +0000 (23:01 +0000)]
Fix PR10499
- Check whether SSE is available before lowering all 1s vector building with
PCMPEQD, which is only available from SSE2
llvm-svn: 176058
Andrew Kaylor [Mon, 25 Feb 2013 23:00:19 +0000 (23:00 +0000)]
Provide workaround for PR 15130.
This changes the RecordingMemoryManager in lli to use mapped memory rather than malloc to allocate memory for sections and uses a 'near' MemoryBlock to keep the allocations together. This works around a problem in MCJIT where relocations are applied to a generated image immediately oupon generation, which isn't appropriate for the remote case.
llvm-svn: 176057
Will Dietz [Mon, 25 Feb 2013 22:37:49 +0000 (22:37 +0000)]
[ubsan] Emit single check for left shift.
Avoids warning twice on same shift.
llvm-svn: 176056
Chad Rosier [Mon, 25 Feb 2013 22:20:00 +0000 (22:20 +0000)]
Fix wording.
llvm-svn: 176055
Anna Zaks [Mon, 25 Feb 2013 22:10:34 +0000 (22:10 +0000)]
[analyzer] Restrict ObjC type inference to methods that have related result type.
This addresses a case when we inline a wrong method due to incorrect
dynamic type inference. Specifically, when user code contains a method from init
family, which creates an instance of another class.
Use hasRelatedResultType() to find out if our inference rules should be triggered.
llvm-svn: 176054
Chad Rosier [Mon, 25 Feb 2013 22:06:05 +0000 (22:06 +0000)]
Remove extraneous attribute number.
llvm-svn: 176053
Chad Rosier [Mon, 25 Feb 2013 21:59:35 +0000 (21:59 +0000)]
[fast-isel] Add X86FastIsel::FastLowerArguments to handle functions with 6 or
fewer scalar integer (i32 or i64) arguments. It completely eliminates the need
for SDISel for trivial functions.
Also, add the new llc -fast-isel-abort-args option, which is similar to
-fast-isel-abort option, but for formal argument lowering.
llvm-svn: 176052
Greg Clayton [Mon, 25 Feb 2013 21:53:07 +0000 (21:53 +0000)]
<rdar://problem/
13281528>
Fixed issues with the SBModule "sections" property, and with the SBBlock "ranges" attributes.
llvm-svn: 176051
Ted Kremenek [Mon, 25 Feb 2013 21:32:40 +0000 (21:32 +0000)]
[analyzer] Recover all PreStmtPurgeDeadSymbols nodes with a single successor or predecessor.
These nodes are never consulted by any analyzer client code, so they are
used only for machinery for removing dead bindings. Once successor nodes
are generated they can be safely removed.
This greatly reduces the amount of nodes that are generated in some case,
lowering the memory regression when analyzing Sema.cpp introduced by
r176010 from 14% to 2%.
llvm-svn: 176050
Greg Clayton [Mon, 25 Feb 2013 21:20:59 +0000 (21:20 +0000)]
Added missing lldb module namespace.
llvm-svn: 176049
Daniel Malea [Mon, 25 Feb 2013 20:54:19 +0000 (20:54 +0000)]
Skip test that fails intermittently with Clang/GCC on Linux
- was causing buildbot failures due to unexpected pass
llvm-svn: 176048
Edwin Vane [Mon, 25 Feb 2013 20:43:32 +0000 (20:43 +0000)]
Various additions to ASTMatcher library:
New type matchers:
* recordType
* elaboratedType
New narrowing matchers:
* hasQualifier
* namesType
* hasDeclContext
Added tests and updated LibASTMatchersReference.
Reviewers: klimek
llvm-svn: 176047
Edwin Vane [Mon, 25 Feb 2013 20:37:03 +0000 (20:37 +0000)]
Add user documentation for cpp11-migrate
Adding an RST document for cpp11-migrate. This user documentation explains
command line options, transformations, risk level and how it applies to
loop convert, and code examples of transformations.
There is a TODO task under "Risk" for "Loop Convert" to find code examples
that produce incorrect transformations that change semantics. The definition
of risk in loop convert and instances where the confidence level is lowered
will need to be looked at more carefully.
Information for all new features (including verbose output, auto transform)
will be added in a later change.
Author: Jack Yang <jack.wang@intel.com>
Reviewer: grigozavr
llvm-svn: 176046
Michael J. Spencer [Mon, 25 Feb 2013 20:03:09 +0000 (20:03 +0000)]
[ELF][Writer] Fill in dynamic table entries.
llvm-svn: 176045
Anna Zaks [Mon, 25 Feb 2013 19:51:03 +0000 (19:51 +0000)]
Revert "Add more attributes from the command line to functions."
This reverts commit 176009.
The commit is a likely cause of several buildbot failures.
llvm-svn: 176044
Anna Zaks [Mon, 25 Feb 2013 19:50:50 +0000 (19:50 +0000)]
[analyzer] Address Jordan's code review of r175857.
llvm-svn: 176043
Jordan Rose [Mon, 25 Feb 2013 19:45:34 +0000 (19:45 +0000)]
[analyzer] Handle reference parameters with default values.
r175026 added support for default values, but didn't take reference
parameters into account, which expect the default argument to be an
lvalue. Use createTemporaryRegionIfNeeded if we can evaluate the default
expr as an rvalue but the expected result is an lvalue.
Fixes the most recent report of PR12915. The original report predates
default argument support, so that can't be it.
llvm-svn: 176042
Enrico Granata [Mon, 25 Feb 2013 19:44:39 +0000 (19:44 +0000)]
Optimization of the code-running NSDictionary formatter to skip runtime symbol fetching
llvm-svn: 176041
Greg Clayton [Mon, 25 Feb 2013 19:34:57 +0000 (19:34 +0000)]
<rdar://problem/
13286937>
Make sure to not look in self.images when we have a symbolicator with a live process.
llvm-svn: 176040
Jim Ingham [Mon, 25 Feb 2013 19:31:37 +0000 (19:31 +0000)]
Add a log line when debugserver exits, and clean up some of the other standard logs output to make it more useful.
llvm-svn: 176039
Chad Rosier [Mon, 25 Feb 2013 19:13:23 +0000 (19:13 +0000)]
Add a front-end test case for r176036.
llvm-svn: 176038
Andrew Trick [Mon, 25 Feb 2013 19:11:48 +0000 (19:11 +0000)]
pre-RA-sched fix: only reevaluate physreg interferences when necessary.
Fixes rdar:
13279013: scheduler was blowing up on select instructions.
llvm-svn: 176037
Chad Rosier [Mon, 25 Feb 2013 19:06:27 +0000 (19:06 +0000)]
[ms-inline asm] Add support for the pushad/popad mnemonics.
rdar://
13254235
llvm-svn: 176036
Michael Han [Mon, 25 Feb 2013 18:40:11 +0000 (18:40 +0000)]
Fix empty declaration printing.
Don't print the semicolon when visiting an empty declaration because the semicolon
will be printed as a terminator later.
llvm-svn: 176035
Jordan Rose [Mon, 25 Feb 2013 18:36:15 +0000 (18:36 +0000)]
[analyzer] Base regions may be invalid when layered on symbolic regions.
While RegionStore checks to make sure casts on TypedValueRegions are valid,
it does not do the same for SymbolicRegions, which do not have perfect type
info anyway. Additionally, MemRegion::getAsOffset does not take a
ProgramState, so it can't use dynamic type info to determine a better type
for the regions. (This could also be dangerous if the type of a super-region
changes!)
Account for this by checking that a base object region is valid on top of a
symbolic region, and falling back to "symbolic offset" mode if not.
Fixes PR15345.
llvm-svn: 176034
Renato Golin [Mon, 25 Feb 2013 18:25:58 +0000 (18:25 +0000)]
ARM build docs easier for copy&paste
llvm-svn: 176033
Eric Christopher [Mon, 25 Feb 2013 18:19:32 +0000 (18:19 +0000)]
Add forgotten testcase.
llvm-svn: 176032
Matt Beaumont-Gay [Mon, 25 Feb 2013 18:11:18 +0000 (18:11 +0000)]
'Hexadecimal' has two 'a's and only one 'i'.
llvm-svn: 176031