Richard Smith [Wed, 14 Nov 2012 00:50:40 +0000 (00:50 +0000)]
Remove another questionable use of hasTrivial*. The relevant thing for this
test was whether the /selected/ operator= was trivial, not whether the class
had any trivial (or any non-trivial) operator=s.
llvm-svn: 167897
John McCall [Wed, 14 Nov 2012 00:49:39 +0000 (00:49 +0000)]
Accept and pass arguments to __unknown_anytype in argument
positions of Objective-C methods.
It is possible to recover a lot of type information about
Objective-C methods from the reflective metadata for their
implementations. This information is not rich when it
comes to struct types, however, and it is not possible to
produce a type in the debugger's round-tripped AST which
will really do anything useful during type-checking.
Therefore we allow __unknown_anytype in these positions,
which essentially disables type-checking for that argument.
We infer the parameter type to be the unqualified type of
the argument expression unless that expression is an
explicit cast, in which case it becomes the type-as-written
of that cast.
rdar://problem/
12565338
llvm-svn: 167896
Greg Clayton [Wed, 14 Nov 2012 00:23:48 +0000 (00:23 +0000)]
<rdar://problem/
12695557>
Added missing plist files for iOS.
llvm-svn: 167895
Matt Beaumont-Gay [Wed, 14 Nov 2012 00:21:27 +0000 (00:21 +0000)]
Fix broken asserts. Also, spell 'indices' correctly.
llvm-svn: 167894
Michael J. Spencer [Wed, 14 Nov 2012 00:04:13 +0000 (00:04 +0000)]
[Object] Fix endianess bug by refactoring Archive::Symbol::getMember.
llvm-svn: 167893
Nadav Rotem [Wed, 14 Nov 2012 00:02:13 +0000 (00:02 +0000)]
use the getSplat API. Patch by Paul Redmond.
llvm-svn: 167892
Matt Beaumont-Gay [Wed, 14 Nov 2012 00:00:25 +0000 (00:00 +0000)]
Fix typo
llvm-svn: 167891
Richard Smith [Tue, 13 Nov 2012 23:58:20 +0000 (23:58 +0000)]
Fix typo from code review (thanks to Alexey Samsonov). This is also caught by the existing tests when building for i386.
llvm-svn: 167890
Richard Smith [Tue, 13 Nov 2012 23:55:06 +0000 (23:55 +0000)]
Support for building the ubsan runtime when using the autoconf build system on
Darwin. Patch by Jean-Daniel Dupas, tweaked by Jonathan Sauer, simplified
somewhat by me.
llvm-svn: 167889
Richard Smith [Tue, 13 Nov 2012 23:42:05 +0000 (23:42 +0000)]
-fsanitize=undefined: Switch to using sanitizer_common for output. This gets us much closer to not depending on any system headers.
llvm-svn: 167888
Eric Christopher [Tue, 13 Nov 2012 23:30:57 +0000 (23:30 +0000)]
Revert "Use the 'count' attribute instead of the 'upper_bound' attribute."
temporarily since it breaks the gdb bots.
This reverts commit r167807/
30305bec25cac981c6d4a3b8be004401310a82a7.
llvm-svn: 167887
Eric Christopher [Tue, 13 Nov 2012 23:30:43 +0000 (23:30 +0000)]
Revert "Use the 'count' attribute instead of the 'upper_bound' attribute."
temporarily as it is breaking the gdb bots.
This reverts commit r167806/
e7ff4c14b157746b3e0228d2dce9f70712d1c126.
llvm-svn: 167886
Eli Friedman [Tue, 13 Nov 2012 23:16:33 +0000 (23:16 +0000)]
Don't try to save the assigned value in a Objective-C property assignment
if the type of the value is a non-trivial class type. Fixes PR14318.
(There's a minor ObjC++ language change here: given that we can't save the
value, the type of the assignment expression is void in such cases.)
llvm-svn: 167884
Kostya Serebryany [Tue, 13 Nov 2012 23:13:17 +0000 (23:13 +0000)]
[asan] use #if defined __x86_64__ instead of #if __WORDSIZE == 64 in sanitizer_linux.cc
llvm-svn: 167883
Jim Grosbach [Tue, 13 Nov 2012 23:01:35 +0000 (23:01 +0000)]
Acknowledge code ownership of MC.
llvm-svn: 167882
Joe Abbey [Tue, 13 Nov 2012 22:32:15 +0000 (22:32 +0000)]
Assignment of Bitcode ownership to Joe Abbey, after announcing proposal on
LLVMdev and not hearing any major objections. Although it did spark a nice
discussion regarding what it means to own something in LLVM.
llvm-svn: 167881
Andrew Trick [Tue, 13 Nov 2012 22:19:48 +0000 (22:19 +0000)]
Revert -join-splitedges to a boolean cmd line option.
llvm-svn: 167880
Andrew Trick [Tue, 13 Nov 2012 22:15:40 +0000 (22:15 +0000)]
The MachineScheduler does not currently require JoinSplitEdges.
This option will eventually either be enabled unconditionally or
replaced by a more general live range splitting optimization.
llvm-svn: 167879
Nico Weber [Tue, 13 Nov 2012 22:09:44 +0000 (22:09 +0000)]
[ms] Make mangleIntegerLiteral less aware of exact type of the literal.
Integer literal mangling does not actually depend on exact type of the literal.
This will simplify calling mangleIntegerLiteral when literal type is not known,
for example, when sizes or offsets are mangled as integer literals.
Also, call mangleNumber instead of directly printing mangled values of 0/1, to
avoid this knowledge from being in multiple places.
Patch from Evgeny Eltsin!
llvm-svn: 167878
Michael J. Spencer [Tue, 13 Nov 2012 22:04:09 +0000 (22:04 +0000)]
[MC][COFF] Emit weak symbols to the correct section. Patch by Dmitry Puzirev!
llvm-svn: 167877
NAKAMURA Takumi [Tue, 13 Nov 2012 21:57:42 +0000 (21:57 +0000)]
Revert r167836, "llvm/test/Other/close-stderr.ll: Mark it as XFAIL:mingw32 for now.", corresponding to r167849.
llvm-svn: 167876
Ulrich Weigand [Tue, 13 Nov 2012 21:53:43 +0000 (21:53 +0000)]
Add test case to verify correct relocs being generated for
TLS symbols on PowerPC using the integrated assembler.
llvm-svn: 167875
Hemant Kulkarni [Tue, 13 Nov 2012 21:34:45 +0000 (21:34 +0000)]
Add program header emission to ELF writer. This patch also rearranges sections for efficient memory utilization
llvm-svn: 167874
Kaelyn Uhrain [Tue, 13 Nov 2012 21:23:31 +0000 (21:23 +0000)]
For classes that have the warn_unused_result attribute, don't apply the
attribute to the class' methods even when they return an instance of the
class (e.g. assignment operators).
llvm-svn: 167873
Shankar Easwaran [Tue, 13 Nov 2012 21:01:11 +0000 (21:01 +0000)]
numerically sort the symbols, so that the testcase result is uniform
llvm-svn: 167872
Shankar Easwaran [Tue, 13 Nov 2012 20:34:55 +0000 (20:34 +0000)]
changes after mspencer reviews in phabricator
llvm-svn: 167871
Michael J. Spencer [Tue, 13 Nov 2012 19:58:58 +0000 (19:58 +0000)]
Fix style violations.
llvm-svn: 167869
Anna Zaks [Tue, 13 Nov 2012 19:47:40 +0000 (19:47 +0000)]
[analyzer] Address Jordan's code review for r167813.
This simplifies logic, fixes a bug, and adds a test case.
Thanks Jordan!
llvm-svn: 167868
Daniel Dunbar [Tue, 13 Nov 2012 19:39:55 +0000 (19:39 +0000)]
llvm-nm: Make sort more stable when symbol names are equal.
llvm-svn: 167866
Ulrich Weigand [Tue, 13 Nov 2012 19:24:36 +0000 (19:24 +0000)]
Add (some) PowerPC TLS relocation types to ELF.h and
generate them from PPCELFObjectWriter::getRelocTypeInner
as appropriate.
llvm-svn: 167864
Ulrich Weigand [Tue, 13 Nov 2012 19:21:31 +0000 (19:21 +0000)]
Fix wrong PowerPC instruction opcodes for:
- lwaux
- lhzux
- stbu
llvm-svn: 167863
Ulrich Weigand [Tue, 13 Nov 2012 19:19:46 +0000 (19:19 +0000)]
Fix wrong PowerPC instruction encodings due to
operand field name mismatches in:
- AForm_3 (fmul, fmuls)
- XFXForm_5 (mtcrf)
- XFLForm (mtfsf)
llvm-svn: 167862
Ulrich Weigand [Tue, 13 Nov 2012 19:15:52 +0000 (19:15 +0000)]
Fix instruction encoding for "bd(n)z" on PowerPC,
by using a new instruction format BForm_1.
llvm-svn: 167861
Ulrich Weigand [Tue, 13 Nov 2012 19:14:19 +0000 (19:14 +0000)]
Fix instruction encoding for "isel" on PowerPC,
using a new instruction format AForm_4.
llvm-svn: 167860
Manman Ren [Tue, 13 Nov 2012 19:13:05 +0000 (19:13 +0000)]
X86: when constructing VZEXT_LOAD from other loads, makes sure its output
chain is correctly setup.
As an example, if the original load must happen before later stores, we need
to make sure the constructed VZEXT_LOAD is constrained to be before the stores.
rdar://
12684358
llvm-svn: 167859
Daniel Dunbar [Tue, 13 Nov 2012 19:12:37 +0000 (19:12 +0000)]
Revert r167801, "[preprocessor] When #including something that contributes no
tokens at all,". This change broke External/Nurbs in LLVM test-suite.
llvm-svn: 167858
Jim Ingham [Tue, 13 Nov 2012 19:09:45 +0000 (19:09 +0000)]
Revision of the patch from Andrew Kaylor <andrew.kaylor@intel.com> to prevent missing an event added in WaitForEventsInternal, narrowing the time in which we are not accepting new events. Also, made everything that was protected private, since there really isn't any good reason why subclasses would have to muck with the listener internals.
llvm-svn: 167857
David Blaikie [Tue, 13 Nov 2012 18:51:45 +0000 (18:51 +0000)]
Simplify function try/catch scope handling.
Based on post-commit review feedback for r167766 by Richard Smith.
llvm-svn: 167856
Ulrich Weigand [Tue, 13 Nov 2012 18:40:58 +0000 (18:40 +0000)]
Do not consider a machine instruction that uses and defines the same
physical register as candidate for common subexpression elimination
in MachineCSE.
This fixes a bug on PowerPC in MultiSource/Applications/oggenc/oggenc
caused by MachineCSE invalidly merging two separate DYNALLOC insns.
llvm-svn: 167855
Shankar Easwaran [Tue, 13 Nov 2012 18:39:10 +0000 (18:39 +0000)]
Adding support to resolve symbols with archive libraries in lld
llvm-svn: 167854
Shankar Easwaran [Tue, 13 Nov 2012 18:38:42 +0000 (18:38 +0000)]
Adding changes to support GNU style archive library reading
llvm-svn: 167853
Shankar Easwaran [Tue, 13 Nov 2012 18:26:22 +0000 (18:26 +0000)]
Adding convenience function to ELF Header
llvm-svn: 167852
Andrew Trick [Tue, 13 Nov 2012 17:37:46 +0000 (17:37 +0000)]
Fix -join-splitedges: my previous "cleanup" broke it.
Working on reducing unit tests.
This won't be enabled unless a subtarget enables misched.
llvm-svn: 167851
Daniel Jasper [Tue, 13 Nov 2012 17:14:11 +0000 (17:14 +0000)]
Fix AST-matcher descendant visiting for Types, TypeLocs and NestedNamespecifierLocs.
The RecursiveASTVisitor assumes that any given Traverse-method can be called with a NULL-node. So the subclass needs to handle these appropriately.
llvm-svn: 167850
Chad Rosier [Tue, 13 Nov 2012 16:42:19 +0000 (16:42 +0000)]
Revert 167755/167760. We don't want to emit crash diagnostics on command-line syntax errors.
llvm-svn: 167849
Howard Hinnant [Tue, 13 Nov 2012 15:57:18 +0000 (15:57 +0000)]
Update CREDIT.TXT
llvm-svn: 167847
Benjamin Kramer [Tue, 13 Nov 2012 15:32:35 +0000 (15:32 +0000)]
This patch makes the behavior of clang consistent with the behavior of gcc 4.6 in cases where both -fPIC and -fPIE is used.
- Separately check if -fPIE was specified in the command line and define both __PIC__ and __PIE__ when -fPIE is used. We need to check this separately because -fPIE will infer -fPIC even if its not explicitly used.
- Fixed existing tests.
- Added new tests for cases where both -fPIC and -fPIE is used.
Author: Tareq A. Siraj <tareq.a.siraj@intel.com>
Fixes: PR13221
Review: http://llvm-reviews.chandlerc.com/D94
llvm-svn: 167846
NAKAMURA Takumi [Tue, 13 Nov 2012 15:03:33 +0000 (15:03 +0000)]
llvm/test/Other/close-stderr.ll: Mark it as XFAIL:mingw32 for now.
On MSYS, 70 is not seen, but 1.
r127726 should be reworked. Candidate options are;
1) Use not exit(70), but _exit(70), in report_fatal_error().
2) Return with _exit(70) in ~raw_ostream().
llvm-svn: 167836
Dmitry Vyukov [Tue, 13 Nov 2012 14:13:21 +0000 (14:13 +0000)]
tsan: remove unused const
llvm-svn: 167835
Dmitry Vyukov [Tue, 13 Nov 2012 14:05:58 +0000 (14:05 +0000)]
tsan: better function names
llvm-svn: 167834
Alexey Samsonov [Tue, 13 Nov 2012 14:05:02 +0000 (14:05 +0000)]
[TSan] Add output test for write under reader lock
llvm-svn: 167833
Dmitry Vyukov [Tue, 13 Nov 2012 13:53:43 +0000 (13:53 +0000)]
tsan: fix stats collection
llvm-svn: 167832
Duncan Sands [Tue, 13 Nov 2012 13:01:58 +0000 (13:01 +0000)]
Codegen support for arbitrary vector getelementptrs.
llvm-svn: 167830
Duncan Sands [Tue, 13 Nov 2012 13:01:00 +0000 (13:01 +0000)]
Fix the instcombine GEP index widening transform to work correctly for vector
getelementptrs.
llvm-svn: 167829
Duncan Sands [Tue, 13 Nov 2012 12:59:33 +0000 (12:59 +0000)]
Relax the restrictions on vector of pointer types, and vector getelementptr.
Previously in a vector of pointers, the pointer couldn't be any pointer type,
it had to be a pointer to an integer or floating point type. This is a hassle
for dragonegg because the GCC vectorizer happily produces vectors of pointers
where the pointer is a pointer to a struct or whatever. Vector getelementptr
was restricted to just one index, but now that vectors of pointers can have
any pointer type it is more natural to allow arbitrary vector getelementptrs.
There is however the issue of struct GEPs, where if each lane chose different
struct fields then from that point on each lane will be working down into
unrelated types. This seems like too much pain for too little gain, so when
you have a vector struct index all the elements are required to be the same.
llvm-svn: 167828
Benjamin Kramer [Tue, 13 Nov 2012 12:12:02 +0000 (12:12 +0000)]
DependenceAnalysis: Print all dependency pairs when dumping. Update all testcases.
Part of a patch by Preston Briggs.
llvm-svn: 167827
Andrew Trick [Tue, 13 Nov 2012 08:47:29 +0000 (08:47 +0000)]
misched: Allow subtargets to enable misched and dependent options.
This allows me to begin enabling (or backing out) misched by default
for one subtarget at a time. To run misched we typically want to:
- Disable SelectionDAG scheduling (use the source order scheduler)
- Enable more aggressive coalescing (until we decide to always run the coalescer this way)
- Enable MachineScheduler pass itself.
Disabling PostRA sched may follow for some subtargets.
llvm-svn: 167826
Andrew Trick [Tue, 13 Nov 2012 08:47:25 +0000 (08:47 +0000)]
Added RegisterCoalescer support for joining global copies first.
This adds the -join-globalcopies option which can be enabled by
default once misched is also enabled.
Ideally, the register coalescer would be able to split local live
ranges in a way that produces copies that can be easily resolved by
the scheduler. Until then, this heuristic should be good enough to at
least allow the scheduler to run after coalescing.
llvm-svn: 167825
Alexey Samsonov [Tue, 13 Nov 2012 07:55:16 +0000 (07:55 +0000)]
[ASan] now we don't need llvm_obj_root to access llvm-symbolizer tool
llvm-svn: 167823
Alexey Samsonov [Tue, 13 Nov 2012 07:15:32 +0000 (07:15 +0000)]
Figure out <size> argument of llvm.lifetime intrinsics at the moment they are created (during function inlining)
llvm-svn: 167821
Jyotsna Verma [Tue, 13 Nov 2012 06:31:55 +0000 (06:31 +0000)]
Test commit.
Add a blank line.
llvm-svn: 167819
Nico Weber [Tue, 13 Nov 2012 06:25:15 +0000 (06:25 +0000)]
UCNs in char literals are done (in LiteralSupport), remove FIXME. Expand UCN FIXME in LexNumericConstant.
llvm-svn: 167818
Hal Finkel [Tue, 13 Nov 2012 05:54:54 +0000 (05:54 +0000)]
BBVectorize: Remove temporary assert used for debugging
llvm-svn: 167817
Argyrios Kyrtzidis [Tue, 13 Nov 2012 05:07:23 +0000 (05:07 +0000)]
Copy the decls returned by DeclContext::lookup_result to a
new container so we can safely iterate over them.
The container holding the lookup decls can under certain conditions
be changed while iterating (e.g. because of deserialization).
llvm-svn: 167816
Meador Inge [Tue, 13 Nov 2012 04:16:17 +0000 (04:16 +0000)]
instcombine: Migrate math library call simplifications
This patch migrates the math library call simplifications from the
simplify-libcalls pass into the instcombine library call simplifier.
I have typically migrated just one simplifier at a time, but the math
simplifiers are interdependent because:
1. CosOpt, PowOpt, and Exp2Opt all depend on UnaryDoubleFPOpt.
2. CosOpt, PowOpt, Exp2Opt, and UnaryDoubleFPOpt all depend on
the option -enable-double-float-shrink.
These two factors made migrating each of these simplifiers individually
more of a pain than it would be worth. So, I migrated them all together.
llvm-svn: 167815
Anna Zaks [Tue, 13 Nov 2012 03:34:49 +0000 (03:34 +0000)]
Add a test that shows that reporting a leak after failure to free is
tricky.
llvm-svn: 167814
Anna Zaks [Tue, 13 Nov 2012 03:18:01 +0000 (03:18 +0000)]
Fix a Malloc Checker FP by tracking return values from initWithCharacter
and other functions.
When these functions return null, the pointer is not freed by
them/ownership is not transfered. So we should allow the user to free
the pointer by calling another function when the return value is NULL.
llvm-svn: 167813
Evan Cheng [Tue, 13 Nov 2012 03:14:16 +0000 (03:14 +0000)]
Remove virtual keyword for two routines that should never be overridden.
llvm-svn: 167812
Hal Finkel [Tue, 13 Nov 2012 03:12:40 +0000 (03:12 +0000)]
BBVectorize: Don't vectorize vector-manipulation chains
Don't choose a vectorization plan containing only shuffles and
vector inserts/extracts. Due to inperfections in the cost model,
these can lead to infinite recusion.
llvm-svn: 167811
Enrico Granata [Tue, 13 Nov 2012 02:57:43 +0000 (02:57 +0000)]
Giving at least some error information when a Python exception happens during command script import
llvm-svn: 167810
Evan Cheng [Tue, 13 Nov 2012 02:56:38 +0000 (02:56 +0000)]
Revert r167759. Ben is right this isn't likely to help much.
llvm-svn: 167809
Andrew Trick [Tue, 13 Nov 2012 02:35:06 +0000 (02:35 +0000)]
misched: Don't consider artificial edges weak edges.
For now be more conservative in case other out-of-tree schedulers rely
on the old behavior of artificial edges.
llvm-svn: 167808
Bill Wendling [Tue, 13 Nov 2012 02:31:58 +0000 (02:31 +0000)]
Use the 'count' attribute instead of the 'upper_bound' attribute.
If we have a type 'int a[1]' and a type 'int b[0]', the generated DWARF is the
same for both of them because we use the 'upper_bound' attribute. Instead use
the 'count' attrbute, which gives the correct number of elements in the array.
<rdar://problem/
12566646>
llvm-svn: 167807
Bill Wendling [Tue, 13 Nov 2012 02:31:47 +0000 (02:31 +0000)]
Use the 'count' attribute instead of the 'upper_bound' attribute.
If we have a type 'int a[1]' and a type 'int b[0]', the generated DWARF is the
same for both of them because we use the 'upper_bound' attribute. Instead use
the 'count' attrbute, which gives the correct number of elements in the array.
<rdar://problem/
12566646>
llvm-svn: 167806
Enrico Granata [Tue, 13 Nov 2012 02:05:45 +0000 (02:05 +0000)]
<rdar://problem/
11814875>
If a ValueObjectDynamic has no formatter, try using its static type to figure one out
llvm-svn: 167803
Eli Friedman [Tue, 13 Nov 2012 02:05:15 +0000 (02:05 +0000)]
Fix IR generation for bool on PPC (and any other target where bool is not 8 bits in memory).
PR11777.
llvm-svn: 167802
Argyrios Kyrtzidis [Tue, 13 Nov 2012 01:03:15 +0000 (01:03 +0000)]
[preprocessor] When #including something that contributes no tokens at all,
don't recursively continue lexing.
This avoids a stack overflow with a sequence of many empty #includes.
rdar://
11988695
llvm-svn: 167801
Argyrios Kyrtzidis [Tue, 13 Nov 2012 01:02:40 +0000 (01:02 +0000)]
In Lexer::LexTokenInternal, avoid code duplication; no functionality change.
llvm-svn: 167800
Bill Wendling [Tue, 13 Nov 2012 00:54:24 +0000 (00:54 +0000)]
Disable accelerator tables when compiling with LTO.
LTO doesn't generate correct accelerator tables. This is due to the general lack
correct of debug info for LTO. Disable it when using LTO.
<rdar://problem/
12401423>
llvm-svn: 167799
Richard Smith [Tue, 13 Nov 2012 00:54:12 +0000 (00:54 +0000)]
Fix some wrong-code bugs in implicitly-defined assignment operators:
- In C++11, perform overload resolution over all assignment operators, rather than just looking for copy/move assignment operators.
- Clean up after temporaries produced by operator= immediately, rather than accumulating them until the end of the function.
llvm-svn: 167798
Andrew Trick [Tue, 13 Nov 2012 00:34:44 +0000 (00:34 +0000)]
Cleanup the main RegisterCoalescer loop.
Block priorities still apply outside loops.
llvm-svn: 167793
Kaelyn Uhrain [Tue, 13 Nov 2012 00:18:47 +0000 (00:18 +0000)]
A couple of small fixes to r167783
llvm-svn: 167791
Anna Zaks [Tue, 13 Nov 2012 00:13:44 +0000 (00:13 +0000)]
[analyzer] Address Jordan's feedback for r167780.
llvm-svn: 167790
Ted Kremenek [Tue, 13 Nov 2012 00:12:13 +0000 (00:12 +0000)]
Fix bad CFG construction bug when handling C++ 'try' statements.
This code assigned the last created CFGBlock* to the variable 'Block',
which is a scratch variable which is null'ed out after a block is
completed. By assigning the last created block to 'Block', we start
editing a completed block, inserting CFGStmts that should be in
another block. This was the case with 'try'. The test case that
showed this had a while loop inside a 'try', and the logic before
the while loop was being included as part of the "condition block"
for the loop. This showed up as a bogus dead store, but could
have lots of implications.
Turns out this bug was replicated a few times within CFG.cpp, so
I went and fixed up those as well.
llvm-svn: 167788
Shuxin Yang [Tue, 13 Nov 2012 00:08:49 +0000 (00:08 +0000)]
revert r167740
llvm-svn: 167787
Nick Lewycky [Tue, 13 Nov 2012 00:08:34 +0000 (00:08 +0000)]
When filtering the list of associated namespaces so that we don't suggest people
add functions to namespace 'std', also filter out namespaces with '__' anywhere
in the name.
llvm-svn: 167786
Andrew Trick [Mon, 12 Nov 2012 23:59:48 +0000 (23:59 +0000)]
Cleanup -join-splitedges. Make the loop more obvious.
llvm-svn: 167785
Hal Finkel [Mon, 12 Nov 2012 23:55:36 +0000 (23:55 +0000)]
BBVectorize: Only some insert element operand pairs are free.
This fixes another infinite recursion case when using target costs.
We can only replace insert element input chains that are pure (end
with inserting into an undef).
llvm-svn: 167784
Kaelyn Uhrain [Mon, 12 Nov 2012 23:48:05 +0000 (23:48 +0000)]
Enable C++11 attribute syntax for warn_unused_result and allow it to be
applied to CXXRecordDecls, where functions with that return type will
inherit the warn_unused_result attribute.
Also includes a tiny fix (with no discernable behavior change for
existing code) to re-sync AttributeDeclKind enum and
err_attribute_wrong_decl_type with warn_attribute_wrong_decl_type since
the enum is used with both diagnostic messages to chose the correct
description.
llvm-svn: 167783
Jean-Daniel Dupas [Mon, 12 Nov 2012 23:43:34 +0000 (23:43 +0000)]
Update link to external document
llvm-svn: 167781
Anna Zaks [Mon, 12 Nov 2012 23:40:29 +0000 (23:40 +0000)]
[analyzer] Follow up to r167762 - precisely determine the adjustment
conditions.
The adjustment is needed only in case of dynamic dispatch performed by
the analyzer - when the runtime declaration is different from the static
one.
Document this explicitly in the code (by adding a helper). Also, use
canonical Decls to avoid matching against the case where the definition
is different from found declaration.
This fix suppresses the testcase I added in r167762, so add another
testcase to make sure we do test commit r167762.
llvm-svn: 167780
Richard Smith [Mon, 12 Nov 2012 23:33:00 +0000 (23:33 +0000)]
Factor duplicated implicit memcpy call generation code out of copy/move
assignment generation. This incidentally avoids reusing the same Expr* across
multiple statements in the same object; that was generating slightly broken
ASTs, but I couldn't trigger any observable bad behavior, so no test.
llvm-svn: 167779
Greg Clayton [Mon, 12 Nov 2012 23:15:22 +0000 (23:15 +0000)]
Patch from Andrew Kaylor that fixes a race condition in the Listener.cpp.
llvm-svn: 167778
Eric Christopher [Mon, 12 Nov 2012 23:13:34 +0000 (23:13 +0000)]
Finish reverting r167761, it's causing test failures.
llvm-svn: 167777
Greg Clayton [Mon, 12 Nov 2012 22:54:26 +0000 (22:54 +0000)]
New compiler warnings caught issues with the m_encoding_uid field that should have been a lldb::user_id_t type, but was a uint32_t a long time ago and never got updated.
llvm-svn: 167774
Greg Clayton [Mon, 12 Nov 2012 22:53:16 +0000 (22:53 +0000)]
Fixed an error in the ELF parser that was comparing a bool to 4 causing 32 bit ELF relocations to get parsed incorrectly.
llvm-svn: 167773
Daniel Malea [Mon, 12 Nov 2012 22:43:13 +0000 (22:43 +0000)]
Fix typo (dwarf/dsym mismatch) in testcase causing early failure on Linux
llvm-svn: 167771
Daniel Malea [Mon, 12 Nov 2012 22:34:24 +0000 (22:34 +0000)]
Fix minor typo on build page.
llvm-svn: 167770
Michael Liao [Mon, 12 Nov 2012 22:33:18 +0000 (22:33 +0000)]
Fix test case added in patch fixing PR14314
llvm-svn: 167769
Daniel Malea [Mon, 12 Nov 2012 22:32:00 +0000 (22:32 +0000)]
Update platform section to mention Linux/FreeBSD local debugging support, and also mention that LLDB builds on Linux with clang and libstdc++/libc++.
llvm-svn: 167768