Argyrios Kyrtzidis
dfffabd0e9
Recursive functions should be marked when used from another function. Fixes http://llvm.org/PR7923 .
...
llvm-svn: 112045
2010-08-25 10:34:54 +00:00
John McCall
2536c6da0e
More incremental progress towards not including Expr.h in Sema.h.
...
llvm-svn: 112044
2010-08-25 10:28:54 +00:00
Argyrios Kyrtzidis
b50a088122
Make sure volatile variables are emitted even if static. Fixes rdar://8315219
...
llvm-svn: 112043
2010-08-25 10:15:24 +00:00
Eric Christopher
6ca6ba20ba
Regenerate.
...
llvm-svn: 112042
2010-08-25 08:45:06 +00:00
Eric Christopher
fb0534f458
Remove getsect checks, the result is unused and is broken anyhow.
...
Fixes PR7967.
Owen: You added these, any reason?
llvm-svn: 112041
2010-08-25 08:44:54 +00:00
Chandler Carruth
5408017356
Rename *PendingImplicitInstantiations to *PendingInstantiations. No
...
functionality changed.
llvm-svn: 112040
2010-08-25 08:44:16 +00:00
Eric Christopher
7a0d8c69cb
Do type checks before we bother to do everything else.
...
llvm-svn: 112039
2010-08-25 08:43:57 +00:00
John McCall
aab3e41eb2
Split FunctionScopeInfo and BlockScopeInfo into their own header.
...
llvm-svn: 112038
2010-08-25 08:40:02 +00:00
Chandler Carruth
cfe41db403
Support explicit instantiation of function templates and members of class
...
templates when only the declaration is in scope. This requires deferring the
instantiation to be lazy, and ensuring the definition is required for that
translation unit. We re-use the existing pending instantiation queue,
previously only used to track implicit instantiations which were required to be
lazy. Fixes PR7979.
A subsequent change will rename *PendingImplicitInstantiations to
*PendingInstatiations for clarity given its broader role.
llvm-svn: 112037
2010-08-25 08:27:02 +00:00
Eric Christopher
6b1533a1a9
Add another basic test cribbed from the x86 fast-isel tests.
...
llvm-svn: 112036
2010-08-25 07:57:29 +00:00
Eric Christopher
37d547aee6
Run this on thumb and arm.
...
llvm-svn: 112035
2010-08-25 07:53:15 +00:00
Anton Korobeynikov
b3b53ecac0
Fix nasty mingw32 bug, which e.g. prevented llvm-gcc bootstrap there.
...
Mark _alloca call as clobberring EFLAGS, otherwise some DCE might remove
other flags-clobberring stuff (e.g. cmp instructions) occuring after
_alloca call.
llvm-svn: 112034
2010-08-25 07:50:11 +00:00
Eric Christopher
e58c03698e
Make this testcase actually executed with fast-isel on arm.
...
llvm-svn: 112033
2010-08-25 07:47:00 +00:00
John McCall
28a0cf7825
Remove Sema.h's dependency on DeclCXX.h.
...
llvm-svn: 112032
2010-08-25 07:42:41 +00:00
Eric Christopher
761e7fb605
Reorganize load mechanisms. Handle types in a little less fixed way.
...
Fix some todos. No functional change.
llvm-svn: 112031
2010-08-25 07:23:49 +00:00
John McCall
a1e130be25
Remove the DenseSet dependency from Sema.h.
...
llvm-svn: 112030
2010-08-25 07:03:20 +00:00
Eric Christopher
14747161f2
Apparently this is needed for llvm-link to link.
...
Untested.
llvm-svn: 112029
2010-08-25 06:45:22 +00:00
John McCall
276321a9ec
Teach Sema to live without CodeCompleteConsumer.h.
...
llvm-svn: 112028
2010-08-25 06:19:51 +00:00
John McCall
1d570a7e16
Remove AnalysisBasedWarnings.h's dependency on Type.h
...
llvm-svn: 112027
2010-08-25 05:56:39 +00:00
John McCall
19c1bfd1b0
Move more stuff out of Sema.h.
...
llvm-svn: 112026
2010-08-25 05:32:35 +00:00
Eric Christopher
6490bf6072
Allow strict subclasses of register classes, this way we can handle
...
ARM instructions with:
foo GPR, rGPR
which happens a lot.
llvm-svn: 112025
2010-08-25 04:58:56 +00:00
John McCall
d845c79fe2
Sort the forward declarations.
...
llvm-svn: 112024
2010-08-25 04:28:15 +00:00
Daniel Dunbar
5eb22ab7d8
tests: Disable this test for now, it is overly pessimistic and I am not sure how to fix it.
...
llvm-svn: 112023
2010-08-25 03:40:27 +00:00
Daniel Dunbar
e854192364
buildbot/valgrind: Ignore leaks in /usr/bin/as.
...
llvm-svn: 112022
2010-08-25 03:40:20 +00:00
Daniel Dunbar
ead6824c3c
IRgen: Fix a horrible bug in pointer to bool conversion, which we were treating
...
as a truncation not a comparison to null.
llvm-svn: 112021
2010-08-25 03:32:38 +00:00
Bruno Cardoso Lopes
0770d25758
PUNPCKLDQ should also be used for v4f32
...
llvm-svn: 112020
2010-08-25 02:55:40 +00:00
John McCall
8d75243029
Expression statements undergo lvalue-to-rvalue conversion in C,
...
but not in C++, so don't emit aggregate loads of volatile references
in null context in C++. Happens to have been caught by an assertion.
We do not get the scalar case right. Volatiles are really broken.
llvm-svn: 112019
2010-08-25 02:50:31 +00:00
John McCall
6caebb15ed
Reformatting.
...
llvm-svn: 112018
2010-08-25 02:45:51 +00:00
Bruno Cardoso Lopes
2e45d522c1
teach lowering to get target specific nodes for pshufd, emulating the same isel behavior for now, so we can pass all vector shuffle tests
...
llvm-svn: 112017
2010-08-25 02:35:37 +00:00
Bruno Cardoso Lopes
0bc919fa35
Convert test to use filecheck and make it more specific
...
llvm-svn: 112016
2010-08-25 01:47:16 +00:00
Owen Anderson
4afea9e3c6
In the default address space, any GEP off of null results in a trap value if you try to load it. Thus,
...
any load in the default address space that completes implies that the base value that it GEP'd from
was not null.
llvm-svn: 112015
2010-08-25 01:16:47 +00:00
Zhongxing Xu
9f077cbc13
Add back clang-wpa. It is useful for experimenting with inter-file analysis.
...
llvm-svn: 112014
2010-08-25 01:15:20 +00:00
Douglas Gregor
416b575edc
When performing completions involving Objective-C method declarations
...
(e.g., for message sends or method declaration/definition
completions), adjust methods that come from a base class.
llvm-svn: 112013
2010-08-25 01:08:01 +00:00
Sebastian Redl
3b1bbf7521
Reorganize and verbosely document some of ASTReader's fields.
...
llvm-svn: 112012
2010-08-25 01:03:37 +00:00
Sebastian Redl
8c0afc3d8d
Remove an unused field in ASTReader
...
llvm-svn: 112011
2010-08-25 01:03:30 +00:00
Greg Clayton
a45533defa
The destructor for StackFrameList doesn't need to be virtual as we aren't
...
subclassing it anywhere.
llvm-svn: 112010
2010-08-25 01:01:30 +00:00
Greg Clayton
158483cf62
Thread no longer needs to be a friend in StackFrameList now that StackFrameList
...
contains the entire stack backtrace.
llvm-svn: 112009
2010-08-25 00:58:59 +00:00
Eric Christopher
b97a5e358e
Split out register class subclassing to a separate function and clean up
...
accordingly. No functional change.
llvm-svn: 112008
2010-08-25 00:41:18 +00:00
Greg Clayton
12daf946c8
Cleaned up the inline backtrace code even more by moving all stack backtracing
...
functionality into StackFrameList. This will allow us to copy the previous
stack backtrace from the previous stop into another variable so we can re-use
as much as possible from the previous stack backtrace.
llvm-svn: 112007
2010-08-25 00:35:26 +00:00
Argyrios Kyrtzidis
96dbfa2e65
Plug leak. The DenseMaps of CXXRecordLayoutInfo weren't freed.
...
llvm-svn: 112006
2010-08-25 00:32:19 +00:00
Argyrios Kyrtzidis
3c6cd17c8a
Use a smart pointer instead of delete.
...
llvm-svn: 112005
2010-08-25 00:32:14 +00:00
Argyrios Kyrtzidis
eb430fff0d
Make sure CXXABI is destroyed.
...
llvm-svn: 112004
2010-08-25 00:32:08 +00:00
Fariborz Jahanian
54d75f6925
No need to default synthesize property if implementation
...
has its own getter and setter methods declared.
Fixed 8349319 (nonfragile-abi2).
llvm-svn: 112003
2010-08-25 00:31:58 +00:00
Devang Patel
356e3e0c6a
Fix 'for' loop variables' scope.
...
llvm-svn: 112002
2010-08-25 00:28:56 +00:00
Douglas Gregor
4d755e86b4
Give a slight preference to functions returning "void" when we're
...
performing code completion at the statement level (rather than in an
arbitrary expression).
llvm-svn: 112001
2010-08-24 23:58:17 +00:00
Johnny Chen
c7c9fcfbd6
More descriptive trace messages for the matchings of start and sub strings.
...
llvm-svn: 112000
2010-08-24 23:48:10 +00:00
John McCall
3669c80de9
Preserve invalidity of typeof operands in C++.
...
llvm-svn: 111999
2010-08-24 23:41:43 +00:00
Douglas Gregor
45140a9040
In code-completion contexts where both types and other values are
...
present, prefer values to types, since it's more common to compute
with values than it is to declare new entities or perform type
casts. So, tweak the ranking of types vs. other declarations and
constants accordingly.
llvm-svn: 111998
2010-08-24 23:40:45 +00:00
John McCall
7d46051eea
Catch the case of trying to turn '&(X::a)' into a member pointer as well.
...
llvm-svn: 111997
2010-08-24 23:26:21 +00:00
Eric Christopher
98f0ea6ade
Fix comment.
...
llvm-svn: 111996
2010-08-24 23:21:59 +00:00