Chris Lattner
11d1df442d
no longer xfail
...
llvm-svn: 102220
2010-04-23 22:39:33 +00:00
Fariborz Jahanian
d3fa70181d
More -fno-constant-cfstrings API work.
...
llvm-svn: 102219
2010-04-23 22:33:39 +00:00
Anders Carlsson
9759793855
Add an InheritancePath parameter to the ImplicitCastExpr constructor.
...
llvm-svn: 102218
2010-04-23 22:18:37 +00:00
Sean Callanan
85d70594f0
Fixes to edis that mark x86 call targets as
...
memory operands rather than immediate operands.
llvm-svn: 102217
2010-04-23 22:17:17 +00:00
Stuart Hastings
c8b2fc0909
Per Chris, fuse four trivial tests using grep (r102199) into one that uses FileCheck.
...
llvm-svn: 102216
2010-04-23 22:12:57 +00:00
John McCall
67b29a26df
Transition the last acceptable-result filter kind in LookupResult over to use
...
a simple IDNS mask by introducing a namespace for non-member operators.
llvm-svn: 102215
2010-04-23 21:37:18 +00:00
Argyrios Kyrtzidis
8d7bdba08c
Make Parser::ConsumeAndStoreUntil() more consistent with Parser::SkipUntil().
...
ConsumeAndStoreUntil would stop at tok::unknown when caching an inline method
definition while SkipUntil would go past it while parsing the method.
Fixes PR 6903.
llvm-svn: 102214
2010-04-23 21:20:12 +00:00
Chris Lattner
d3b361d1b6
enable my inliner change: add newly devirtualized call sites to
...
the worklist, making them inline candidates.
llvm-svn: 102213
2010-04-23 21:16:07 +00:00
Anders Carlsson
c20f78c761
Destroy the inheritance path.
...
llvm-svn: 102211
2010-04-23 21:02:34 +00:00
Anders Carlsson
52af23d6b8
Add an inheritance path member variable to CastExpr. For now it's always null but for derived-to-base and base-to-derived cast expressions it will contain the full base path. This is needed to avoid ambiguities.
...
llvm-svn: 102210
2010-04-23 20:40:38 +00:00
Anders Carlsson
720130c0cf
Turn CXXMethodVector into a generic class template.
...
llvm-svn: 102208
2010-04-23 19:53:03 +00:00
Dan Gohman
e1931fa676
Change TargetData's algorithm for computing defualt vector type
...
alignment to match what's used in clang and GCC for __alignof, rather
than trying to guess what Legalize is going to be doing.
llvm-svn: 102206
2010-04-23 19:41:15 +00:00
Daniel Dunbar
e3883874c5
NeXT/EH: When generating the rethrow code for a finally block, make sure to
...
chain outwards when inside a nested exception scope.
- A real test for this is going into LLVM test-suite.
llvm-svn: 102204
2010-04-23 19:12:32 +00:00
Daniel Dunbar
5a6b3e0865
NeXT/EH: Tidy up EH code a bit, don't emit the catch block EH handler if it is unreachable.
...
llvm-svn: 102203
2010-04-23 19:12:24 +00:00
Evan Cheng
b9ff130d47
Code refactoring.
...
llvm-svn: 102202
2010-04-23 19:10:30 +00:00
Stuart Hastings
24b63f1597
Add some missing x86 patterns for movdq2q. Fixes two (LLVM-)GCC DejaGNU testcases. Radar 6881029.
...
llvm-svn: 102199
2010-04-23 19:03:32 +00:00
John McCall
e87beb2591
Recommit my change to how C++ does elaborated type lookups, now with
...
two bugfixes which fix selfhost and (hopefully) the nightly tests.
llvm-svn: 102198
2010-04-23 18:46:30 +00:00
Chris Lattner
126a58e084
fix some failures my callgraph dump format change broke.
...
llvm-svn: 102197
2010-04-23 18:38:40 +00:00
Chris Lattner
c691de3b4e
switch InlineInfo.DevirtualizedCalls's list to be of WeakVH.
...
This fixes a bug where calls inlined into an invoke would get
changed into an invoke but the array would keep pointing to
the (now dead) call. The improved inliner behavior is still
disabled for now.
llvm-svn: 102196
2010-04-23 18:37:01 +00:00
Chris Lattner
6f41ef9d31
testcase for the bug that required a patch to be reverted.
...
llvm-svn: 102195
2010-04-23 18:31:01 +00:00
Chris Lattner
8c56254096
fix callgraph dump to not print 0x0x1234 for nodes.
...
Add the instruction pointer value for debuggability.
We now get dump output that looks like this:
Call graph node for function: 'f1'<<0x1017086b0>> #uses=1
CS<0x1017046f8> calls external node
Call graph node for function: '_ZNSt6vectorIdSaIdEEC1EmRKdRKS0_'<<0x1017086f0>> #uses=1
CS<0x0> calls external node
Call graph node for function: 'f4'<<0x1017087a0>> #uses=1
CS<0x101708c88> calls function 'f3'
llvm-svn: 102194
2010-04-23 18:23:40 +00:00
Evan Cheng
0367559786
Fix X86ISD::CMP i16 to i32 promotion.
...
llvm-svn: 102192
2010-04-23 18:21:16 +00:00
Fariborz Jahanian
f9b52d5f63
Improve on my previous diagnostics: per Doug's comment.
...
llvm-svn: 102190
2010-04-23 17:52:02 +00:00
Fariborz Jahanian
e804c28745
More work toward implementing
...
NeXt's -fno-constant-cfstrings - wip.
llvm-svn: 102189
2010-04-23 17:41:07 +00:00
Chris Lattner
db6d5cb892
Implement PR6845. We allow matching constraints to have different
...
input and output types when the smaller value isn't mentioned in the
asm string. Extend this support from integers to also allowing
fp values to be mismatched (if not mentioned in the asm string).
llvm-svn: 102188
2010-04-23 17:27:29 +00:00
Fariborz Jahanian
e459686aac
Trying to improve on a diagnostics for properties.
...
llvm-svn: 102187
2010-04-23 17:22:07 +00:00
Sebastian Redl
26a0f1cff9
Require a complete type for the lhs of member pointer dereference operations if the type isn't exactly the same as the container class. Fixes PR6783.
...
llvm-svn: 102186
2010-04-23 17:18:26 +00:00
Chris Lattner
3e34c383c2
fix typo
...
llvm-svn: 102183
2010-04-23 16:31:30 +00:00
Chris Lattner
6bcf2d81e8
rename test
...
llvm-svn: 102182
2010-04-23 16:30:17 +00:00
Chris Lattner
1a8f394a1f
david conrad points out that {|} in inline assembly on arm are not asm
...
variants. This fixes neon inline asm which my patch for PR6780 broke.
llvm-svn: 102181
2010-04-23 16:29:58 +00:00
Douglas Gregor
83eb5032c0
When instantiating a typedef of an anonymous tag type, note in the tag
...
declaration that this typedef gives the tag a name. Fixes a problem
uncovered by Boost.GIL (Generic Image Library).
llvm-svn: 102180
2010-04-23 16:25:07 +00:00
Anders Carlsson
7a0ffdbe53
Cleanup.
...
llvm-svn: 102179
2010-04-23 16:24:12 +00:00
Anders Carlsson
423f5d85fd
Handle copy initialization in BuildImplicitMemberInitializer. Not used yet.
...
llvm-svn: 102178
2010-04-23 16:04:08 +00:00
Chris Lattner
092d1c9f64
add GNU C++ include paths for Fedora 11,12 x86_64,
...
patch by mikem!
llvm-svn: 102177
2010-04-23 15:55:20 +00:00
Dan Gohman
6e9a8fcc28
Move FastISel's HandlePHINodesInSuccessorBlocks call down into FastISel
...
itself too.
llvm-svn: 102176
2010-04-23 15:29:50 +00:00
Dan Gohman
5725580bb6
Switch getelementptr inbounds and sdiv exact from undef to trap.
...
llvm-svn: 102175
2010-04-23 15:23:32 +00:00
Daniel Dunbar
45b2d8ab42
Revert "C++ doesn't really use "namespaces" for different kinds of names the same", which seems to break most C++ nightly test apps.
...
llvm-svn: 102174
2010-04-23 13:07:39 +00:00
Nick Lewycky
e97d39b0f2
concepts is not a keyword here and fix copy-pasto.
...
llvm-svn: 102172
2010-04-23 06:09:40 +00:00
Douglas Gregor
06f32b3aaf
Strip cv-qualifiers when building C++ constructor and destructor
...
names.
llvm-svn: 102171
2010-04-23 04:51:46 +00:00
Douglas Gregor
914af2182b
Handle compound assignment expressions (i += j) as lvalues, which is
...
permitted in C++ but not in C. Fixes PR6900. Clang can now handle all
of Boost.Lambda's regression tests.
llvm-svn: 102170
2010-04-23 04:16:32 +00:00
Anders Carlsson
11373b5277
Add another 'catch all' access diagnostic.
...
llvm-svn: 102169
2010-04-23 03:41:35 +00:00
Douglas Gregor
ffe0884bc4
Emit a lame diagnostic when we can't mangle operator names
...
llvm-svn: 102168
2010-04-23 03:19:53 +00:00
Douglas Gregor
173627188d
Mangle dependent template names such as the nested-name-specifier in
...
T::apply <U>::type
Fixes PR6899, although I want to dig a little deeper into the FIXME
for dependent template names that refer to operators.
llvm-svn: 102167
2010-04-23 03:10:43 +00:00
Anders Carlsson
1b00e24d13
Add an ImplicitInitializerKind enum and pass it to BuildImplicitBaseInitializer and BuildImplicitMemberInitializer.
...
llvm-svn: 102166
2010-04-23 03:10:23 +00:00
Anders Carlsson
dca6be04db
Fix a think-o that broke self-host.
...
llvm-svn: 102165
2010-04-23 03:07:47 +00:00
John McCall
a245671ae0
C++ doesn't really use "namespaces" for different kinds of names the same
...
way that C does. Among other differences, elaborated type specifiers
are defined to skip "non-types", which, as you might imagine, does not
include typedefs. Rework our use of IDNS masks to capture the semantics
of different kinds of declarations better, and remove most current lookup
filters. Removing the last remaining filter is more complicated and will
happen in a separate patch.
Fixes PR 6885 as well some spectrum of unfiled bugs.
llvm-svn: 102164
2010-04-23 02:41:41 +00:00
Anders Carlsson
58e24a8fd8
Change the 'declared at' diagnostic to say 'declared here'.
...
llvm-svn: 102163
2010-04-23 02:20:12 +00:00
Anders Carlsson
3c1db570b2
Factor code to initialize an implicit member out into a separate function.
...
llvm-svn: 102162
2010-04-23 02:15:47 +00:00
Douglas Gregor
2c4a7501ee
When parsing a cast-expression that starts with a scope annotation,
...
try to annotate as a type first to determine whether we have a
functional-style cast. Patch by Eli Friedman, fixes PR6830.
llvm-svn: 102161
2010-04-23 02:08:13 +00:00
Douglas Gregor
19043f0a6a
I hate default statements. Fixes PR6874.
...
llvm-svn: 102160
2010-04-23 02:02:43 +00:00