Sam Panzer [Thu, 16 Aug 2012 17:20:59 +0000 (17:20 +0000)]
Matchers related to DeclStmt for matching the count of declarations, a particular declaration within the statement, and single-Decl DeclStmts.
llvm-svn: 162027
Chad Rosier [Thu, 16 Aug 2012 17:10:59 +0000 (17:10 +0000)]
[ms-inline asm] Start tracking which tokens are registers and which are
variables, function or label references. The former is a potential clobber.
The latter is either an input or an output. Unfortunately, it's difficult to
test this patch at the moment, but the added test case will eventually do so.
llvm-svn: 162026
Sam Panzer [Thu, 16 Aug 2012 16:58:10 +0000 (16:58 +0000)]
Matchers which correspond to CastExpr, IgnoreImpCasts, IgnoreParenCasts, and IgnoreParenImpCasts
llvm-svn: 162025
Dmitry Vyukov [Thu, 16 Aug 2012 15:12:35 +0000 (15:12 +0000)]
tsan: add flag to disable reporting of destruction of locked mutexes (some programs use that on a regular basis)
llvm-svn: 162024
Rafael Espindola [Thu, 16 Aug 2012 15:09:43 +0000 (15:09 +0000)]
Teach GVN to reason about edges dominating uses. This allows it to handle cases
where some fact lake a=b dominates a use in a phi, but doesn't dominate the
basic block itself.
This feature could also be implemented by splitting critical edges, but at least
with the current algorithm reasoning about the dominance directly is faster.
The time for running "opt -O2" in the testcase in pr10584 is 1.003 times slower
and on gcc as a single file it is 1.0007 times faster.
llvm-svn: 162023
Dmitry Vyukov [Thu, 16 Aug 2012 15:08:49 +0000 (15:08 +0000)]
tsan: better diagnostics for destroy of a locked mutex + a test
llvm-svn: 162022
Dmitry Vyukov [Thu, 16 Aug 2012 14:21:09 +0000 (14:21 +0000)]
tsan: support for linker initializer mutexes with static storage duration
llvm-svn: 162021
Dmitry Vyukov [Thu, 16 Aug 2012 14:20:45 +0000 (14:20 +0000)]
tsan: fix COMPAT shadow mapping once again
llvm-svn: 162020
Dmitry Vyukov [Thu, 16 Aug 2012 13:29:41 +0000 (13:29 +0000)]
tsan: implement RWLOCK annotations
llvm-svn: 162019
Dmitry Vyukov [Thu, 16 Aug 2012 13:27:25 +0000 (13:27 +0000)]
tsan: fix COMPAT shadow mapping for new memory allocator
llvm-svn: 162018
Dmitry Vyukov [Thu, 16 Aug 2012 13:26:54 +0000 (13:26 +0000)]
tsan: refactor cur_thread() -> thr
llvm-svn: 162017
Nadav Rotem [Thu, 16 Aug 2012 07:39:52 +0000 (07:39 +0000)]
Add dump/dumpr methods to SDValue.
llvm-svn: 162014
Jush Lu [Thu, 16 Aug 2012 05:15:53 +0000 (05:15 +0000)]
[arm-fast-isel] Add support for fastcc.
Without fastcc support, the caller just falls through to CallingConv::C
for fastcc, but callee still uses fastcc, this inconsistency of calling
convention is a problem, and fastcc support can fix it.
llvm-svn: 162013
Anitha Boyapati [Thu, 16 Aug 2012 04:04:02 +0000 (04:04 +0000)]
Patch to enable FMA on bdver2 target. Make XOP feature enable FMA4 as well.
llvm-svn: 162012
Richard Smith [Thu, 16 Aug 2012 03:56:14 +0000 (03:56 +0000)]
Store SourceManager pointer on PrintingPolicy in the case where we're dumping,
and remove ASTContext reference (which was frequently bound to a dereferenced
null pointer) from the recursive lump of printPretty functions. In so doing,
fix (at least) one case where we intended to use the 'dump' mode, but that
failed because a null ASTContext reference had been passed in.
llvm-svn: 162011
Anitha Boyapati [Thu, 16 Aug 2012 03:50:04 +0000 (03:50 +0000)]
(no commit message)
llvm-svn: 162010
Akira Hatanaka [Thu, 16 Aug 2012 03:48:41 +0000 (03:48 +0000)]
Test case for r162008.
llvm-svn: 162009
Akira Hatanaka [Thu, 16 Aug 2012 03:48:05 +0000 (03:48 +0000)]
Add Android ABI to Mips backend to handle functions returning vectors of four
floats.
llvm-svn: 162008
Richard Smith [Thu, 16 Aug 2012 02:43:29 +0000 (02:43 +0000)]
Don't constant-fold when pretty-printing alignment attribute. This fixes a
potential crasher -- Context is sometimes a null reference (!!) here.
llvm-svn: 162007
Sam Panzer [Thu, 16 Aug 2012 02:38:47 +0000 (02:38 +0000)]
Test commit: deleted whitespace on blank line
llvm-svn: 162006
Richard Smith [Thu, 16 Aug 2012 01:19:31 +0000 (01:19 +0000)]
Fix misaligned allocation of QualifiedTempateName and DependentTemplateName.
llvm-svn: 162005
Tanya Lattner [Thu, 16 Aug 2012 00:22:16 +0000 (00:22 +0000)]
Remove names from the CHECK lines.
llvm-svn: 162003
Tanya Lattner [Thu, 16 Aug 2012 00:10:13 +0000 (00:10 +0000)]
Convert loads and stores of vec3 to vec4 to achieve better code generation. Add test case.
llvm-svn: 162002
Johnny Chen [Thu, 16 Aug 2012 00:08:21 +0000 (00:08 +0000)]
Update build instructions. Patch from "Kopec, Matt" <matt.kopec@intel.com>!
llvm-svn: 162001
Chad Rosier [Thu, 16 Aug 2012 00:06:53 +0000 (00:06 +0000)]
[ms-inline asm] Add inputs and outputs to AST. No functional change.
llvm-svn: 162000
Jordan Rose [Thu, 16 Aug 2012 00:03:33 +0000 (00:03 +0000)]
[analyzer] Look through all casts when trying to track constraints.
Previously, we were losing path notes (in both text and plist form)
because the interesting DeclRefExpr was buried in a cast.
llvm-svn: 161999
Richard Smith [Wed, 15 Aug 2012 22:59:28 +0000 (22:59 +0000)]
Devirtualize calls on glvalues produced by class member access expressions.
Based on a patch by Yin Ma!
llvm-svn: 161998
DeLesley Hutchins [Wed, 15 Aug 2012 22:41:04 +0000 (22:41 +0000)]
Thread safety analysis: prevent a compiler error in cases where a
late-parsed attribute is attached to an invalid declaration.
llvm-svn: 161997
Victor Oliveira [Wed, 15 Aug 2012 22:35:36 +0000 (22:35 +0000)]
bug in experimental targets
llvm-svn: 161995
Jakob Stoklund Olesen [Wed, 15 Aug 2012 22:16:39 +0000 (22:16 +0000)]
Fold predicable instructions into MOVCC / t2MOVCC.
The ARM select instructions are just predicated moves. If the select is
the only use of an operand, the instruction defining the operand can be
predicated instead, saving one instruction and decreasing register
pressure.
This implementation can turn AND/ORR/EOR instructions into their
corresponding ANDCC/ORRCC/EORCC variants. Ideally, we should be able to
predicate any instruction, but we don't yet support predicated
instructions in SSA form.
llvm-svn: 161994
Johnny Chen [Wed, 15 Aug 2012 22:10:42 +0000 (22:10 +0000)]
rdar://problem/
12096295
Add an lldb command line option to specify a core file: --core/-c.
For consistency, change the "target create" command to also use --core.
llvm-svn: 161993
Jordan Rose [Wed, 15 Aug 2012 21:56:23 +0000 (21:56 +0000)]
[analyzer] If we call a C++ method on an object, assume it's non-null.
This is analogous to our handling of pointer dereferences: if we
dereference a pointer that may or may not be null, we assume it's non-null
from then on.
While some implementations of C++ (including ours) allow you to call a
non-virtual method through a null pointer of object type, it is technically
disallowed by the C++ standard, and should not prune out any real paths in
practice.
[class.mfct.non-static]p1: A non-static member function may be called
for an object of its class type, or for an object of a class derived
from its class type...
(a null pointer value does not refer to an object)
We can also make the same assumption about function pointers.
llvm-svn: 161992
Chad Rosier [Wed, 15 Aug 2012 21:55:19 +0000 (21:55 +0000)]
[ms-inline asm] Use a set container to remove redundant clobbers.
llvm-svn: 161991
Bill Wendling [Wed, 15 Aug 2012 21:18:10 +0000 (21:18 +0000)]
Remove dead flag.
llvm-svn: 161990
Bill Wendling [Wed, 15 Aug 2012 21:10:18 +0000 (21:10 +0000)]
Rework test so that it reproduces the error without the horrible flag.
llvm-svn: 161989
Chad Rosier [Wed, 15 Aug 2012 21:08:52 +0000 (21:08 +0000)]
[ms-inline asm] Address a FIXME by computing the number of asm statements when
building the AsmString.
llvm-svn: 161988
Jordan Rose [Wed, 15 Aug 2012 21:05:15 +0000 (21:05 +0000)]
[analyzer] Even if we are not inlining a virtual call, still invalidate!
Fixes a mistake introduced in r161916.
llvm-svn: 161987
Chad Rosier [Wed, 15 Aug 2012 21:03:27 +0000 (21:03 +0000)]
[ms-inline asm] MSVC parses multiple __asm statements on a single line as one
statement. For example,
if (x)
__asm out dx, ax __asm out dx, ax
results in a single inline asm statement (i.e., both "out dx, ax" statements are
predicated on if(x)).
llvm-svn: 161986
Bill Wendling [Wed, 15 Aug 2012 20:54:09 +0000 (20:54 +0000)]
Remove invalid test. This test requires that dead basic blocks be kept
around. That's not how we do things. Besides, the commit message tells us that
it is covered by the GCC test suite.
------------------------------------------------------------------------
r127497 | zwarich | 2011-03-11 13:51:56 -0800 (Fri, 11 Mar 2011) | 3 lines
Fix the GCC test suite issue exposed by r127477, which was caused by stack
protector insertion not working correctly with unreachable code. Since that
revision was rolled out, this test doesn't actual fail before this fix.
------------------------------------------------------------------------
llvm-svn: 161985
Sean Callanan [Wed, 15 Aug 2012 20:53:52 +0000 (20:53 +0000)]
Fixed a problem in the JIT memory allocator where
allocations of executable memory would not be padded
to account for the size of the allocation header.
This resulted in undersized allocations, meaning that
when the allocation was written to later the next
allocation's header would be corrupted.
llvm-svn: 161984
Jakob Stoklund Olesen [Wed, 15 Aug 2012 20:15:48 +0000 (20:15 +0000)]
Add a CoveringSubRegIndices field to SubRegIndex records.
This can be used to tell TableGen to use a specific SubRegIndex instead
of synthesizing one when discovering all sub-registers.
llvm-svn: 161982
Jordan Rose [Wed, 15 Aug 2012 20:07:17 +0000 (20:07 +0000)]
[analyzer] Correctly devirtualize virtual method calls in constructors.
This is the other half of C++11 [class.cdtor]p4 (the destructor side
was added in r161915). This also fixes an issue with post-call checks
where the 'this' value was already being cleaned out of the state, thus
being omitted from a reconstructed CXXConstructorCall.
llvm-svn: 161981
Matt Beaumont-Gay [Wed, 15 Aug 2012 19:53:19 +0000 (19:53 +0000)]
Allow 'static' and type qualifiers in K&R parameter type lists.
llvm-svn: 161980
Michael J. Spencer [Wed, 15 Aug 2012 19:21:42 +0000 (19:21 +0000)]
Properly test the LLVM_USE_RVALUE_REFERENCES macro.
llvm-svn: 161979
Michael J. Spencer [Wed, 15 Aug 2012 19:16:27 +0000 (19:16 +0000)]
Properly test the LLVM_USE_RVALUE_REFERENCES macro.
llvm-svn: 161978
Chad Rosier [Wed, 15 Aug 2012 19:12:42 +0000 (19:12 +0000)]
[ms-inline asm] Don't emit newlines as these are ignored by the AsmParser
anyways. Also, simplify some conditional logic.
llvm-svn: 161977
Michael J. Spencer [Wed, 15 Aug 2012 19:05:47 +0000 (19:05 +0000)]
[PathV2] Add mapped_file_region. Implementation for Windows and POSIX.
llvm-svn: 161976
Michael J. Spencer [Wed, 15 Aug 2012 18:54:36 +0000 (18:54 +0000)]
Add LLVM_DELETED_FUNCTION compatibility macro.
This should replace uses of:
class A {
A(const &A); // DO NOT IMPLEMENT
public:
...
};
llvm-svn: 161975
Daniel Jasper [Wed, 15 Aug 2012 18:52:19 +0000 (18:52 +0000)]
Add ASTMatcher for matching extern "C" function declarations.
llvm-svn: 161974
Chad Rosier [Wed, 15 Aug 2012 18:48:14 +0000 (18:48 +0000)]
Fix a typo in VariadicFunction.h that leads to invalid code in macro expansion.
Patch by Andy Gibbs <andyg1001@hotmail.co.uk>
llvm-svn: 161973
Fariborz Jahanian [Wed, 15 Aug 2012 18:42:26 +0000 (18:42 +0000)]
Patch to warn about __private_extern__ on tentative definitions
as it does something unexpected (but gcc compatible).
Suggest use of __attribute__((visibility("hidden")))
on declaration instead. // rdar://7703982
llvm-svn: 161972
John Criswell [Wed, 15 Aug 2012 18:40:30 +0000 (18:40 +0000)]
Fix for PR#13606: llvm.org/bugs/show_bug.cgi?id=13606
Changed the alignment of an LValue to be 64 bits so that we can handle
alignment values up to half of a 64-bit address space.
llvm-svn: 161971
Owen Anderson [Wed, 15 Aug 2012 18:28:45 +0000 (18:28 +0000)]
Fix another roundToIntegral bug where very large values could become infinity. Problem and solution identified by Steve Canon.
llvm-svn: 161969
Chad Rosier [Wed, 15 Aug 2012 18:12:36 +0000 (18:12 +0000)]
[ms-inline asm] Add support for clobbers in CodeGen.
This is a reapplication of r161914 now that the scoping issue has been resolved
in r161966.
llvm-svn: 161967
Chad Rosier [Wed, 15 Aug 2012 18:09:18 +0000 (18:09 +0000)]
[ms-inline asm] Capturing loop-scoped (std::string)Reg with a StringRef is bad.
llvm-svn: 161966
Jakob Stoklund Olesen [Wed, 15 Aug 2012 18:00:55 +0000 (18:00 +0000)]
Make synthesized sub-register indexes available in the target namespace.
TableGen sometimes synthesizes missing sub-register indexes. Emit these
indexes as enumerators in the target namespace along with the
user-defined ones.
Also take this opportunity to stop creating new Record objects for
synthetic indexes.
llvm-svn: 161964
Michael Han [Wed, 15 Aug 2012 17:56:58 +0000 (17:56 +0000)]
Fix base type of ASTDeclNodeLister.
llvm-svn: 161963
Evan Cheng [Wed, 15 Aug 2012 17:44:53 +0000 (17:44 +0000)]
Use vld1/vst1 to load/store f64 if alignment is < 4 and the target allows unaligned access. rdar://
12091029
llvm-svn: 161962
Jordan Rose [Wed, 15 Aug 2012 17:33:37 +0000 (17:33 +0000)]
[analyzer] Don't try to devirtualize if the class is incomplete.
A similar issue to the previous commit, introduced by r161915.
llvm-svn: 161961
Jordan Rose [Wed, 15 Aug 2012 17:33:34 +0000 (17:33 +0000)]
[analyzer] Only adjust the type of 'this' when we devirtualize a method call.
With reinterpret_cast, we can get completely unrelated types in a region
hierarchy together; this was resulting in CXXBaseObjectRegions being layered
directly on an (untyped) SymbolicRegion, whose symbol was from a completely
different type hierarchy. This was what was causing the internal buildbot to
fail.
Reverts r161911, which merely masked the problem.
llvm-svn: 161960
Dmitry Vyukov [Wed, 15 Aug 2012 17:27:20 +0000 (17:27 +0000)]
tsan: store sync objects in memory block headers + delete them when the block is freed
llvm-svn: 161959
Chad Rosier [Wed, 15 Aug 2012 16:53:30 +0000 (16:53 +0000)]
[ms-inline asm] Add the left brace source location and improve the pretty
printer. Patch by Enea Zaffanella <zaffanella@cs.unipr.it>.
llvm-svn: 161958
Dmitry Vyukov [Wed, 15 Aug 2012 16:52:19 +0000 (16:52 +0000)]
tsan: provide function that imitates write to a region but does not detect races
llvm-svn: 161957
Owen Anderson [Wed, 15 Aug 2012 16:42:53 +0000 (16:42 +0000)]
Fix typo in comment.
llvm-svn: 161956
Jakob Stoklund Olesen [Wed, 15 Aug 2012 16:17:24 +0000 (16:17 +0000)]
Add missing Rfalse operand to the predicated pseudo-instructions.
When predicating this instruction:
Rd = ADD Rn, Rm
We need an extra operand to represent the value given to Rd when the
predicate is false:
Rd = ADDCC Rfalse, Rn, Rm, pred
The Rd and Rfalse operands are different registers while in SSA form.
Rfalse is tied to Rd to make sure they get the same register during
register allocation.
Previously, Rd and Rn were tied, but that is not required.
Compare to MOVCC:
Rd = MOVCC Rfalse, Rtrue, pred
llvm-svn: 161955
Alexander Potapenko [Wed, 15 Aug 2012 15:59:18 +0000 (15:59 +0000)]
Remove the extra semicolon reported by the buildbot.
llvm-svn: 161954
Dmitry Vyukov [Wed, 15 Aug 2012 15:35:15 +0000 (15:35 +0000)]
tsan: switch to new allocator
llvm-svn: 161953
Alexander Potapenko [Wed, 15 Aug 2012 15:24:48 +0000 (15:24 +0000)]
Introduce asan_intercepted_functions.h which contains the declarations wrapped functions and their wrappers.
Those declarations are going to be shared between asan_interceptors.cc and the dynamic runtime library on Mac OS.
llvm-svn: 161952
Alexey Samsonov [Wed, 15 Aug 2012 14:33:30 +0000 (14:33 +0000)]
[ASan] lit tests: use nm instead of llvm-nm, until llvm-nm becomes usable on Mac. Port output test change in r161948 to lit
llvm-svn: 161951
Dmitry Vyukov [Wed, 15 Aug 2012 14:25:33 +0000 (14:25 +0000)]
tsan: add some more tests for memory allocator
llvm-svn: 161950
Dmitry Vyukov [Wed, 15 Aug 2012 14:25:08 +0000 (14:25 +0000)]
tsan: fix several integer overflows
llvm-svn: 161949
Alexander Potapenko [Wed, 15 Aug 2012 14:00:09 +0000 (14:00 +0000)]
Check for filenames and numbers to detect possible problems with asan_symbolize.py on -fPIE binaries.
llvm-svn: 161948
Alexander Potapenko [Wed, 15 Aug 2012 13:58:24 +0000 (13:58 +0000)]
Pass offset of the frame address within the binary to addr2line instead of the absolute address.
Fixes the problem with -PIE binaries.
llvm-svn: 161947
Alexander Potapenko [Wed, 15 Aug 2012 13:23:03 +0000 (13:23 +0000)]
Patch the frame address regardless of the frame number.
llvm-svn: 161946
Alexander Potapenko [Wed, 15 Aug 2012 12:23:36 +0000 (12:23 +0000)]
Move the prototype of __CFInitialize to asan_mac.h so that asan_malloc_mac.cc may use it in the dynamic library mode.
llvm-svn: 161945
Bill Wendling [Wed, 15 Aug 2012 12:22:35 +0000 (12:22 +0000)]
Set the branch probability of branching to the 'normal' destination of an invoke
instruction to something absurdly high, while setting the probability of
branching to the 'unwind' destination to the bare minimum. This should set cause
the normal destination's invoke blocks to be moved closer to the invoke.
PR13612
llvm-svn: 161944
Alexander Potapenko [Wed, 15 Aug 2012 11:57:52 +0000 (11:57 +0000)]
Use SANITIZER_INTERFACE_ATTRIBUTE instead of __attribute__((visibility("default")))
Export CheckFailed, asan_malloc, asan_free, asan_memalign, AsanStackTrace::CompressStack, AsanStackTrace::UncompressStack from the dynamic runtime library.
llvm-svn: 161943
Alexander Potapenko [Wed, 15 Aug 2012 11:32:15 +0000 (11:32 +0000)]
Make __asan::asan_{malloc,free,memalign} globally visible, so that the dynamic version of the runtime will export them.
llvm-svn: 161942
Alexey Samsonov [Wed, 15 Aug 2012 11:26:57 +0000 (11:26 +0000)]
[ASan] Port (the last one) tricky interface_test to lit, and a *huge* chunks of boilerplate to run tests for 32/64 bits and all optimization levels. Alas, lit doesn't support for loops in RUN-lines...
llvm-svn: 161941
Benjamin Kramer [Wed, 15 Aug 2012 10:26:44 +0000 (10:26 +0000)]
Fix a const violation in the generated disassembler.
llvm-svn: 161940
Alexander Potapenko [Wed, 15 Aug 2012 09:46:45 +0000 (09:46 +0000)]
Do not attempt to intercept mlock and friends on Windows.
llvm-svn: 161939
Alexander Potapenko [Wed, 15 Aug 2012 09:22:57 +0000 (09:22 +0000)]
Use the common interception machinery for mlock/munlock/mlockall/munlockall.
llvm-svn: 161938
Kostya Serebryany [Wed, 15 Aug 2012 08:58:58 +0000 (08:58 +0000)]
[asan] implement --asan-always-slow-path, which is a part of the improvement to handle unaligned partially OOB accesses. See code.google.com/p/address-sanitizer/issues/detail?id=100
llvm-svn: 161937
Alexey Samsonov [Wed, 15 Aug 2012 08:54:14 +0000 (08:54 +0000)]
[ASan] use clangxx_asan instead of clang_asan for C++ lit tests
llvm-svn: 161936
Alexey Samsonov [Wed, 15 Aug 2012 08:29:17 +0000 (08:29 +0000)]
[ASan] port remaining output and feature tests to lit. TODO: we should in fact run most of the tests for 32/64 bits and for all optimization levels
llvm-svn: 161935
Hans Wennborg [Wed, 15 Aug 2012 07:42:30 +0000 (07:42 +0000)]
Check for improper use of 'static' and type qualifiers in array
declarators.
They are only allowed for function parameters, and then only on the
outermost array type derivation.
llvm-svn: 161934
Alexey Samsonov [Wed, 15 Aug 2012 07:13:51 +0000 (07:13 +0000)]
[ASan] port interception and shared library tests to lit
llvm-svn: 161933
Alexey Samsonov [Wed, 15 Aug 2012 07:11:14 +0000 (07:11 +0000)]
[ASan] move declaration of __asan_default_options to interface header
llvm-svn: 161932
Eric Christopher [Wed, 15 Aug 2012 06:31:06 +0000 (06:31 +0000)]
Revert this to try to bring the i386 bots back.
llvm-svn: 161931
Tobias Grosser [Wed, 15 Aug 2012 05:50:24 +0000 (05:50 +0000)]
Remove executable bits from html files
llvm-svn: 161930
Owen Anderson [Wed, 15 Aug 2012 05:39:46 +0000 (05:39 +0000)]
Fix a problem with APFloat::roundToIntegral where it would return incorrect results for negative inputs to trunc. Add unit tests to verify this behavior.
llvm-svn: 161929
Tobias Grosser [Wed, 15 Aug 2012 05:02:25 +0000 (05:02 +0000)]
www documentation for using Polly with dragonegg.
Added a file that explains how to load Polly in dragonegg.
Also fixed a typo in the document for clang.
Committed with a typo fix and a change to make this website available from
the documentation section.
Contributed by: Sameer Sahasrabuddhe <Sameer.Sahasrabuddhe@amd.com>
llvm-svn: 161928
NAKAMURA Takumi [Wed, 15 Aug 2012 04:19:08 +0000 (04:19 +0000)]
clang/lib/Sema/SemaStmt.cpp: Include MCAsmLexer.h to appease msvc to define llvm::AsmToken.
llvm-svn: 161927
Michael Liao [Wed, 15 Aug 2012 03:49:59 +0000 (03:49 +0000)]
fix infinite loop in instcombine with more than 4GB memcpy
- memcpy size is wrongly truncated into 32-bit and treat 8GB memcpy is
0-sized memcpy
- as 0-sized memcpy/memset is already removed before SimplifyMemTransfer
and SimplifyMemSet in visitCallInst, replace 0 checking with
assertions.
- replace getZExtValue() with getLimitedValue() according to
Eli Friedman
llvm-svn: 161923
Nick Lewycky [Wed, 15 Aug 2012 02:37:07 +0000 (02:37 +0000)]
Fix a typo that led to a failure to correctly verify bitcast instructions.
Patch by Stephen Hines!
llvm-svn: 161921
Richard Smith [Wed, 15 Aug 2012 01:41:43 +0000 (01:41 +0000)]
Use the right alignment when allocating NestedNameSpecifier objects.
llvm-svn: 161920
Richard Smith [Wed, 15 Aug 2012 01:39:31 +0000 (01:39 +0000)]
Fix undefined behavior: don't perform array indexing through a potentially null
pointer.
llvm-svn: 161919
Richard Smith [Wed, 15 Aug 2012 01:22:58 +0000 (01:22 +0000)]
Fix overallocation and underalignment of ASTTemplateArgumentListInfo objects.
llvm-svn: 161918
Jordan Rose [Wed, 15 Aug 2012 00:52:03 +0000 (00:52 +0000)]
[analyzer] Doxygen comments in ObjCMethodCall.
No functionality change.
llvm-svn: 161917
Jordan Rose [Wed, 15 Aug 2012 00:52:00 +0000 (00:52 +0000)]
[analyzer] Don't inline dynamic-dispatch methods unless -analyzer-ipa=dynamic.
Previously we were checking -analyzer-ipa=dynamic-bifurcate only, and
unconditionally inlining everything else that had an available definition,
even under -analyzer-ipa=inlining (but not under -analyzer-ipa=none).
llvm-svn: 161916