Evgeniy Stepanov
0cd7cf8217
[msan] Allow clock_getres(, 0).
...
llvm-svn: 180090
2013-04-23 11:48:31 +00:00
Alexey Samsonov
068fc8ae6e
Use zlib to uncompress debug sections in DWARF parser.
...
This makes llvm-dwarfdump and llvm-symbolizer understand
debug info sections compressed by ld.gold linker.
llvm-svn: 180088
2013-04-23 10:17:34 +00:00
Hans Wennborg
63761d4bc4
Add llvm_unreachable after fully covered switch to pacify GCC
...
llvm-svn: 180087
2013-04-23 10:12:16 +00:00
Jason Molenda
e005d78241
One line I forgot to remove.
...
llvm-svn: 180086
2013-04-23 09:49:03 +00:00
Jason Molenda
0f224d2cd4
Update the unwind_diagnose script to work correctly with both
...
lldb-179 version numberings and the new lldb-300 version numberings.
Remove the pretense that someone might run this from the command
line; this is only used from within a live lldb debug session. Fix
the loading so it can be loaded via "script import lldb.macosx" or
the script can be loaded individually like "command script import
unwind_diagnose.py"
llvm-svn: 180085
2013-04-23 09:38:10 +00:00
Alexey Samsonov
28acf056e1
Add more guards around zlib-dependent code
...
llvm-svn: 180084
2013-04-23 08:57:30 +00:00
Alexey Samsonov
2fb337e77a
Add basic zlib support to LLVM. This would allow to use compression/uncompression in selected LLVM tools.
...
llvm-svn: 180083
2013-04-23 08:28:39 +00:00
Alexey Samsonov
e7540e3561
[Sanitizer] Delete unused function
...
llvm-svn: 180082
2013-04-23 08:18:09 +00:00
Pekka Jaaskelainen
6f2f66b63f
Refuse to (even try to) vectorize loops which have uniform writes,
...
even if erroneously annotated with the parallel loop metadata.
Fixes Bug 15794:
"Loop Vectorizer: Crashes with the use of llvm.loop.parallel metadata"
llvm-svn: 180081
2013-04-23 08:08:51 +00:00
Tim Northover
2ac2d4c59d
AArch64: remove unnecessary check that RS is valid
...
AArch64 always demands a register-scavenger, so the pointer should never be
NULL. However, in the spirit of paranoia, we'll assert it before use just in
case.
llvm-svn: 180080
2013-04-23 06:55:15 +00:00
Jason Molenda
535ab8601f
Add a new -a / --address argument to image show-unwind to get the
...
unwind instructions for a function/symbol which contains that
address.
Update the unwind_diagnose.py script to use this instead of doing
image show-unwind by name to avoid cases where there are multiple
name definitions.
llvm-svn: 180079
2013-04-23 04:30:57 +00:00
Jason Molenda
8ed67139c4
Forgot to include the diagnose_unwind.py script in the initialization of
...
the lldb.macosx folder.
llvm-svn: 180078
2013-04-23 04:21:14 +00:00
Jason Molenda
caae381b35
Add a new python file to help diagnose backtrace failures in the field.
...
It will be installed in the LLDB.framework and can be loaded with
(lldb) script import lldb.macosx
after which a "unwind-diagnose" command will be registered. Select
the thread which has a bad backtrace and run this command -- a lot
of information about the stack frames, and an alternate backtrace
algorithm, will be used. The information will often be sufficient
for a remote person to figure out why the backtrace failed.
<rdar://problem/13679300>
llvm-svn: 180077
2013-04-23 03:40:32 +00:00
Richard Trieu
d0d87b5972
Warn that scoped enumerations are a C++11 extenstion when compiling in
...
C++98 mode. This improves on the previous diagnostic message of:
error: expected identifier or '{'
llvm-svn: 180076
2013-04-23 02:47:36 +00:00
Jordan Rose
7467f06533
[analyzer] RetainCountChecker: Clean up path notes for autorelease.
...
No functionality change.
<rdar://problem/13710586>
llvm-svn: 180075
2013-04-23 01:42:25 +00:00
Enrico Granata
723e129aa2
<rdar://problem/13437949>
...
Making sure that CF*{Array|Dictionary}Ref provide synthetic children correctly.
llvm-svn: 180074
2013-04-23 01:13:50 +00:00
Ted Kremenek
b44bc7d599
[scan-build] Whitelist all -mXXXX options.
...
llvm-svn: 180073
2013-04-23 00:10:55 +00:00
Howard Hinnant
210051548e
Modest performance improvement for std::string's operator==.
...
llvm-svn: 180072
2013-04-22 23:55:13 +00:00
Enrico Granata
dea46d7c38
Much better way to get at the size of an std::list
...
llvm-svn: 180071
2013-04-22 23:36:35 +00:00
Argyrios Kyrtzidis
40bcfd71b6
When modifying an implicit instantiation with information from an explicit one, make sure to reset the "right brace" location.
...
Otherwise the source range of the explicit instantiation may become invalid (begin location will be after the end location).
rdar://13706991
llvm-svn: 180070
2013-04-22 23:23:42 +00:00
Jordan Rose
6e3cf2ba85
[analyzer] Model strsep(), particularly that it returns its input.
...
This handles the false positive leak warning in PR15374, and also serves
as a basic model for the strsep() function.
llvm-svn: 180069
2013-04-22 23:18:42 +00:00
Manman Ren
4a4970ec6a
Struct-path aware TBAA: update getMostGenericTBAA
...
The tag is of type TBAANode when flag EnableStructPathTBAA is off.
Move implementation of MDNode::getMostGenericTBAA to TypeBasedAliasAnalysis.cpp
since it depends on how to interprete the MDNodes for scalar TBAA and
struct-path aware TBAA.
llvm-svn: 180068
2013-04-22 23:00:44 +00:00
Enrico Granata
19f0e8c163
Daniel Malea reported seeing warnings for the use of anonymous namespaces in our public API.
...
Removing these namespace { ... } declarations (but still keeping the helper *Impl objects outside of namespace lldb proper)
llvm-svn: 180067
2013-04-22 22:57:56 +00:00
Michael Gottesman
6718a3b67d
Revert "Add a missing reference on a std::vector<> out param"
...
Revert "[Support] Propagate the environment into the test child process"
This reverts commit r180046.
This reverts commit r180041.
These have broken buildbots for ~3 hours:
http://lab.llvm.org:8013/builders/clang-x86_64-darwin11-nobootstrap-RAincremental/builds/763
llvm-svn: 180066
2013-04-22 22:51:55 +00:00
Manman Ren
4a838160e4
Add triple to tbaa-struct.cpp to appease bots
...
llvm-svn: 180065
2013-04-22 22:50:27 +00:00
Matt Arsenault
034ca0fe41
Remove unused DwarfSectionOffsetDirective string
...
The value isn't actually used, and setting it emits a COFF specific
directive.
llvm-svn: 180064
2013-04-22 22:49:11 +00:00
Eric Christopher
04d4e9312c
Move C++ code out of the C headers and into either C++ headers
...
or the C++ files themselves. This enables people to use
just a C compiler to interoperate with LLVM.
llvm-svn: 180063
2013-04-22 22:47:22 +00:00
Ted Kremenek
ebeabab9a9
Add a warning for Objective-C pointer introspection, which is solely the job of the Objective-C runtime.
...
llvm-svn: 180062
2013-04-22 22:46:52 +00:00
Daniel Malea
a53cd7e6ce
Update CMakeLists.txt as per new file RegisterContextDummy.cpp
...
llvm-svn: 180061
2013-04-22 22:42:27 +00:00
Chad Rosier
65dd0399c6
[ms-inline asm] Removed this unnecessary check. In the current implementation,
...
Disp will always be one of MCSymbolRefExpr or MCConstantExpr, and never NULL.
llvm-svn: 180059
2013-04-22 22:38:35 +00:00
Chad Rosier
53e5768351
Add test case for PR15779, which has previously been fixed.
...
llvm-svn: 180058
2013-04-22 22:30:01 +00:00
Chad Rosier
dba3fe557c
[ms-inline asm] Get the OpDecl and remove a redundant lookup.
...
Part of rdar://13663589
llvm-svn: 180057
2013-04-22 22:12:12 +00:00
Ted Kremenek
760b5e360d
Rename this test to make it more general for including more tests.
...
llvm-svn: 180056
2013-04-22 22:09:21 +00:00
Chad Rosier
7359d4793e
[ms-inline asm] Set the OpDecl to the InlineAsmIdentifierInfo struct.
...
Part of rdar://13663589
llvm-svn: 180055
2013-04-22 22:05:00 +00:00
Chad Rosier
732b837a41
[ms-inline asm] Add the OpDecl to the InlineAsmIdentifierInfo struct and in turn
...
the MCParsedAsmOperand.
Part of rdar://13663589
llvm-svn: 180054
2013-04-22 22:04:25 +00:00
Enrico Granata
1399419d35
Proper English not optional
...
llvm-svn: 180053
2013-04-22 21:58:48 +00:00
Jordan Rose
b957113b3f
[analyzer] Treat reinterpret_cast like a base cast in certain cases.
...
The analyzer represents all pointer-to-pointer bitcasts the same way, but
this can be problematic if an implicit base cast gets layered on top of a
manual base cast (performed with reinterpret_cast instead of static_cast).
Fix this (and avoid a valid assertion) by looking through cast regions.
Using reinterpret_cast this way is only valid if the base class is at the
same offset as the derived class; this is checked by -Wreinterpret-base-class.
In the interest of performance, the analyzer doesn't repeat this check
anywhere; it will just silently do the wrong thing (use the wrong offsets
for fields of the base class) if the user code is wrong.
PR15394
llvm-svn: 180052
2013-04-22 21:36:49 +00:00
Jordan Rose
3437669ca9
[analyzer] Type information from C++ new expressions is perfect.
...
This improves our handling of dynamic_cast and devirtualization for
objects allocated by 'new'.
llvm-svn: 180051
2013-04-22 21:36:44 +00:00
Daniel Malea
7f3aa1081c
Fix lock hierarchy violation in Listener/Broadcaster
...
- avoid deadlocks if Broadcaster::SignUpListenersForBroadcaster and
Listener::StartListeningForEventSpec are both called concurrently
llvm-svn: 180050
2013-04-22 21:22:41 +00:00
Eli Bendersky
58b04b7e2e
Optimize MachineBasicBlock::getSymbol by caching the symbol. Since the symbol
...
name computation is expensive, this helps save about 25% of the time spent in
this function.
llvm-svn: 180049
2013-04-22 21:21:08 +00:00
Matt Kopec
365e3359ab
When parsing dwarf, add C functions to the fullname index.
...
This fixes function type resolution for C functions when requesting full function names.
llvm-svn: 180048
2013-04-22 21:13:22 +00:00
Daniel Malea
4818460269
Fix data race in Address class by wrapping m_offset in std::atomic
...
llvm-svn: 180047
2013-04-22 20:59:13 +00:00
Reid Kleckner
7ff21d934e
Add a missing reference on a std::vector<> out param
...
Pointed out by Eli. The test passes for me either way, so I missed
this.
llvm-svn: 180046
2013-04-22 20:58:09 +00:00
Anat Shemer
10260a75e3
Changed back (relative to commit 179786) the operations executed when extract(cast) is transformed to cast(extract). It uses the Builder class as before. In addition the result node is added to the Worklist, so all the previous extract users will become the new scalar cast users.
...
llvm-svn: 180045
2013-04-22 20:51:10 +00:00
Chad Rosier
eeb0034918
Fix unused variable warning.
...
llvm-svn: 180044
2013-04-22 20:42:32 +00:00
Eli Bendersky
622455e87c
Fix comment that didn't match the method it was above
...
llvm-svn: 180043
2013-04-22 20:30:50 +00:00
Simon Atanasyan
af9ebc742d
[Mips] Remove "REQUIRES: mips-registered-target" from some MIPS-related
...
driver tests. These tests check the driver only and do not require mips
target.
llvm-svn: 180042
2013-04-22 20:26:27 +00:00
Reid Kleckner
21a8c2f361
[Support] Propagate the environment into the test child process
...
Should fix the dragonegg bootstrap builder, which reasonably needs
LD_LIBRARY_PATH to be set.
llvm-svn: 180041
2013-04-22 20:23:41 +00:00
Akira Hatanaka
d8fb032cff
80 columns.
...
llvm-svn: 180040
2013-04-22 20:13:37 +00:00
Akira Hatanaka
0d6964cf4a
[mips] In performDSPShiftCombine, check that all elements in the vector are
...
shifted by the same amount and the shift amount is smaller than the element
size.
llvm-svn: 180039
2013-04-22 19:58:23 +00:00