Daniel Dunbar
66ba55a95a
Update for CIndex rename.
...
llvm-svn: 102803
2010-04-30 23:36:47 +00:00
Bill Wendling
06cacb1291
Maybe it needs sse2?
...
llvm-svn: 102802
2010-04-30 23:19:29 +00:00
Bill Wendling
613fb7daa6
Force 64-bit.
...
llvm-svn: 102800
2010-04-30 22:45:20 +00:00
Dan Gohman
0cb06d64e8
Fix a typo.
...
llvm-svn: 102799
2010-04-30 22:38:11 +00:00
Chris Lattner
a9bac86d16
Dan recently disabled recursive inlining within a function, but we
...
were still inlining self-recursive functions into other functions.
Inlining a recursive function into itself has the potential to
reduce recursion depth by a factor of 2, inlining a recursive
function into something else reduces recursion depth by exactly
1. Since inlining a recursive function into something else is a
weird form of loop peeling, turn this off.
The deleted testcase was added by Dale in r62107, since then
we're leaning towards not inlining recursive stuff ever. In any
case, if we like inlining recursive stuff, it should be done
within the recursive function itself to get the algorithm
recursion depth win.
llvm-svn: 102798
2010-04-30 22:37:22 +00:00
Ted Kremenek
bc1416dcad
Add null check in CFGBuilder::VisitStmt() to make CFG construction
...
more resilient to bad code.
llvm-svn: 102793
2010-04-30 22:25:53 +00:00
Bill Wendling
de4b225093
EXTRACT_VECTOR_ELT of an INSERT_VECTOR_ELT may have the same index, but the
...
indexes could be of a different value type. Or not even using the same SDNode
for the constant (weird, I know). Compare the actual values instead of the
pointers.
llvm-svn: 102791
2010-04-30 22:19:17 +00:00
Daniel Dunbar
11328b7fb0
Don't use 'else ifdef', I guess this is a 3.81 feature?
...
llvm-svn: 102781
2010-04-30 22:00:17 +00:00
Daniel Dunbar
d5a2a073a0
Rename 'CIndex' to 'libclang', since it has basically become our stable public
...
(C) API, and will likely grow further in this direction in the future.
llvm-svn: 102779
2010-04-30 21:51:10 +00:00
Ted Kremenek
b802192a7e
Don't perform AnalysisBasedWarnings in Sema or run the static analyzer when a
...
fatal error has occurred.
llvm-svn: 102778
2010-04-30 21:49:25 +00:00
Douglas Gregor
fabf95d066
After substituting a template argument for a non-type template
...
parameter with pointer-to-member type, we may have to perform a
qualification conversion, since the pointee type of the parameter
might be more qualified than the pointee type of the argument we form
from the declaration. Fixes PR6986.
llvm-svn: 102777
2010-04-30 21:46:38 +00:00
John McCall
4d4dcc8ed7
When synthesizing Objective C records, give the synthetic fields public
...
access. Fixes an assertion.
Fixes rdar://problem/7927811. Too lazy to reduce a test case.
llvm-svn: 102776
2010-04-30 21:35:41 +00:00
Dan Gohman
09452cecd8
Remove this debug output. The MachineFunction will be printed once all of
...
instruction selection is done; it's confusing to see parts of it printed,
while other parts are omitted, along the way.
llvm-svn: 102771
2010-04-30 21:21:21 +00:00
Jakob Stoklund Olesen
9afed0f98b
The local register allocator has to spill dirty callee saved registers before a
...
call that might throw. The landing pad assumes that all registers are in stack
slots.
We used to spill those dirty CSRs after the call, and the stack slots would be
wrong when arriving at the landing pad.
llvm-svn: 102770
2010-04-30 21:19:29 +00:00
Dan Gohman
b74155db1e
Update BitVectorTest.cpp to stay in sync with SmallBitVectorTest.cpp,
...
and fix a bug in BitVector's reference proxy class which this exposed.
llvm-svn: 102768
2010-04-30 20:50:28 +00:00
Daniel Dunbar
207014a992
Fix TOOLALIAS to not make dependency against $(PROJ_bindir), this is unnecessary
...
(and wrong).
llvm-svn: 102763
2010-04-30 20:47:09 +00:00
Douglas Gregor
0be628ff64
Fix a thinko that caused us not to compute __builtin_offset as a
...
constant expression in C.
llvm-svn: 102762
2010-04-30 20:35:01 +00:00
Devang Patel
3ca9a9b59c
Preserve debug info attached with call instruction while eliminating dead argument.
...
Radar 7927803
llvm-svn: 102760
2010-04-30 20:23:54 +00:00
Dan Gohman
2e2cc87081
Make this code less confusing. Instead of reassigning BB, just operate
...
on the original variables, so it's easier to see what is being done
to which blocks.
llvm-svn: 102759
2010-04-30 20:14:26 +00:00
Daniel Dunbar
7d9ec4154e
Add new NO_INSTALL_ARCHIVES make variable, to suppress install of .a files.
...
llvm-svn: 102752
2010-04-30 20:04:53 +00:00
Daniel Dunbar
f3ff59a849
Add an install-clang-c top-level target, which does a Clang C API install.
...
llvm-svn: 102751
2010-04-30 20:04:45 +00:00
Douglas Gregor
0925fbc3fd
Teach clang_getLocation() to cope with a NULL file argument.
...
llvm-svn: 102748
2010-04-30 19:45:53 +00:00
Anders Carlsson
d6c5391cd9
Remove an unnecessary parameter from EmitClassCopyAssignment.
...
llvm-svn: 102747
2010-04-30 19:45:28 +00:00
Devang Patel
cde3576e0d
New test.
...
llvm-svn: 102746
2010-04-30 19:39:29 +00:00
Devang Patel
b4e3b9025c
Attach AT_APPLE_optimized attribute to optimized function's debug info.
...
llvm-svn: 102743
2010-04-30 19:38:23 +00:00
Dan Gohman
8acc8f7dfd
EmitDbgValue doesn't need its EdgeMapping argument.
...
llvm-svn: 102742
2010-04-30 19:35:33 +00:00
David Chisnall
b492b81a94
Fixed @ctor / @dtor the wrong way around in last commit.
...
llvm-svn: 102741
2010-04-30 19:27:35 +00:00
David Chisnall
a9d4a6fb28
Added a brief explanation of @llvm.global_{c,d}tors.
...
llvm-svn: 102740
2010-04-30 19:23:49 +00:00
Dan Gohman
a0a8a7fe40
Set isSigned to true when creating an all-ones integer constant, even
...
for unsigned purposes, so >64-bit integer values get a full all-ones
value.
llvm-svn: 102739
2010-04-30 19:22:39 +00:00
Dan Gohman
1c07852e17
Silence compiler warnings.
...
llvm-svn: 102734
2010-04-30 19:21:13 +00:00
Dan Gohman
299e7b93ac
Add lint checks for invalid uses of memory.
...
llvm-svn: 102733
2010-04-30 19:05:00 +00:00
Douglas Gregor
14cf752486
Clean up our handling of local instantiation scopes, which keep track
...
of the mapping from local declarations to their instantiated
counterparts during template instantiation. Previously, we tried to do
some unholy merging of local instantiation scopes that involved
storing a single hash table along with an "undo" list on the
side... which was ugly, and never handled function parameters
properly.
Now, we just keep separate hash tables for each local instantiation
scope, and "combining" two scopes means that we'll look in each of the
combined hash tables. The combined scope stack is rarely deep, and
this makes it easy to avoid the "undo" issues we were hitting. Also,
I've simplified the logic for function parameters: if we're declaring
a function and we need the function parameters to live longer, we just
push them back into the local instantiation scope where we need them.
Fixes PR6990.
llvm-svn: 102732
2010-04-30 18:55:50 +00:00
Dan Gohman
be474734a5
Add some comments.
...
llvm-svn: 102731
2010-04-30 18:33:41 +00:00
Dan Gohman
57bb73c80b
Remove the -disable-16bit command-line option, which is now obsolete.
...
llvm-svn: 102730
2010-04-30 18:30:26 +00:00
Jakob Stoklund Olesen
408459ffa6
Don't use floating point in SimpleRegisterCoalescing.
...
Rounding differences causes tests to fail on Linux.
llvm-svn: 102729
2010-04-30 18:28:11 +00:00
Dan Gohman
e0d8f9dbe9
Properly escape edge source and destination labels.
...
llvm-svn: 102728
2010-04-30 18:27:57 +00:00
Daniel Dunbar
9f84c7b600
Move include installation steps to better location, inside each include dir instead of at the top-level.
...
Also, don't set NO_INSTALL=1 for c-index-test.
llvm-svn: 102724
2010-04-30 17:59:38 +00:00
Dan Gohman
6221b85680
Add -o /dev/null to some tests which don't care about their output.
...
llvm-svn: 102722
2010-04-30 17:42:30 +00:00
Dan Gohman
e82c25e878
Apply a patch from Jan Sjodin to fix a compiler abort on vector
...
comparisons sign-extended to a different bitwidth than the
comparison operands.
llvm-svn: 102721
2010-04-30 17:19:19 +00:00
Daniel Dunbar
d411fcbc4c
Regenerate.
...
llvm-svn: 102720
2010-04-30 17:12:26 +00:00
Daniel Dunbar
e96fcbb085
Default OPTIMIZE_OPTION to -O2 on FreeBSD, at the request of the Clang/FreeBSD
...
folks. LLVM/Clang is miscompiled by the standard GCC at -O3.
llvm-svn: 102719
2010-04-30 17:12:23 +00:00
Benjamin Kramer
2073fcac2d
SmallBitVector: Rework find_first/find_next and tweak test to test them (at least on 64 bit platforms).
...
llvm-svn: 102712
2010-04-30 13:40:27 +00:00
David Chisnall
d6a6af6a53
Fixed incorrect type of alloca (GNU runtime).
...
llvm-svn: 102711
2010-04-30 13:36:12 +00:00
Abramo Bagnara
5009937f47
Add calling convention related attributes to related declaration. Mark attributes invalid on type related checking so to add them to declarations only when everything is ok.
...
llvm-svn: 102710
2010-04-30 13:10:51 +00:00
Benjamin Kramer
e2a98b1e90
Implement a read/write operator[] for SmallBitVector with a proxy class.
...
llvm-svn: 102709
2010-04-30 12:29:39 +00:00
Benjamin Kramer
120e6b748b
Make sure SmallBitVector actually uses the small case and fix latent bugs.
...
- We can't use PointerIntPair here since we require the discrimination bit to be in the LSB.
llvm-svn: 102707
2010-04-30 11:34:01 +00:00
Abramo Bagnara
b639ab9ffc
Attribute noreturn is now put in declaration attributes. Fixed a double warning generation.
...
llvm-svn: 102705
2010-04-30 09:13:03 +00:00
John McCall
5af1aa6393
An edge from a call expression to the exit block is only an abnormal edge
...
if *none* of the successors of the call expression is the exit block.
This matters when a call of bool type is the condition of (say) a while
loop in a function with no statements after the loop. This *can* happen
in C, but it's much more common in C++ because of overloaded operators.
Suppresses some substantial number of spurious -Wmissing-noreturn warnings.
llvm-svn: 102696
2010-04-30 07:10:06 +00:00
Douglas Gregor
8b895228d9
Fix ADL for types declared in transparent decls, from Alp Toker!
...
llvm-svn: 102695
2010-04-30 07:08:38 +00:00
Evan Cheng
5f2314f3a3
Fix test.
...
llvm-svn: 102694
2010-04-30 06:00:56 +00:00