Owen Anderson
164274eeb1
Don't forget to remove phi nodes from the value numbering table after we collapse them.
...
llvm-svn: 61358
2008-12-23 00:49:51 +00:00
Douglas Gregor
55297ac499
Don't explicitly represent OverloadedFunctionDecls within
...
DeclContext. Instead, just keep the list of currently-active
declarations and only build the OverloadedFunctionDecl when we
absolutely need it.
This is a half-step toward eliminating the need to explicitly build
OverloadedFunctionDecls that store sets of overloaded
functions. This was suggested by Argiris a while back, and it's a good
thing for several reasons: first, it eliminates the messy logic that
currently tries to keep the OverloadedFunctionDecl in sync with the
declarations that are being added. Second, it will (eventually)
eliminate the need to allocate memory for overload sets, which could
help performance. Finally, it helps set us up for when name lookup can
return multiple (possibly ambiguous) results, as can happen with
lookup of class members in C++.
Next steps: make the IdentifierResolver store overloads as separate
entries in its list rather than replacing them with an
OverloadedFunctionDecl now, then see how far we can go toward
eliminating OverloadedFunctionDecl entirely.
llvm-svn: 61357
2008-12-23 00:26:44 +00:00
Dan Gohman
d72358cba8
Make the fuse-failed debug output human-readable.
...
llvm-svn: 61356
2008-12-23 00:19:20 +00:00
Fariborz Jahanian
daef00bca6
More encoding support; in this case, encoding of
...
outer-most const of pointer types.
llvm-svn: 61355
2008-12-22 23:22:27 +00:00
Bill Wendling
456e885382
Comment clean-ups. No functionality change.
...
llvm-svn: 61354
2008-12-22 22:32:22 +00:00
Bill Wendling
e7f08e7250
Check that the instruction isn't in the value numbering scope.
...
llvm-svn: 61353
2008-12-22 22:28:56 +00:00
Bill Wendling
86f01cb9f6
Simplification: Negate the operator== method instead of implementing a full operator!= method.
...
llvm-svn: 61352
2008-12-22 22:16:31 +00:00
Steve Naroff
2654e18c84
Fix <rdar://problem/6463613> clang ObjC rewriter: assertion failure rewriting @selector?.
...
llvm-svn: 61351
2008-12-22 22:16:07 +00:00
Bill Wendling
3c793441cb
Add verification that deleted instruction isn't hiding in the PHI map.
...
llvm-svn: 61350
2008-12-22 22:14:07 +00:00
Bill Wendling
ebb6a543fa
Verify removed in a few more places.
...
llvm-svn: 61349
2008-12-22 21:57:30 +00:00
Sebastian Redl
45f11a9b05
Guard against the return of PR3188
...
llvm-svn: 61348
2008-12-22 21:43:13 +00:00
Bill Wendling
6b18a3994b
Add verification functions to GVN which check to see that an instruction was
...
truely deleted. These will be expanded with further checks of all of the data
structures.
llvm-svn: 61347
2008-12-22 21:36:08 +00:00
Sebastian Redl
9b244a8797
Full AST support and better Sema support for C++ try-catch.
...
llvm-svn: 61346
2008-12-22 21:35:02 +00:00
Dan Gohman
014caa431c
Refactor a bunch of code out of AsmPrinter::EmitGlobalConstant into separate
...
functions.
llvm-svn: 61345
2008-12-22 21:14:27 +00:00
Dan Gohman
a04542b61e
Optimize setDepthDirty and setHeightDirty a little, as they showed
...
up on a profile.
llvm-svn: 61344
2008-12-22 21:11:33 +00:00
Dan Gohman
a6fbc282b2
Add an assertion to the ScheduleDAGInstrs class to catch SUnits
...
reallocations. We don't do cloning on MachineInstr schedule DAGs,
but this is a worthwhile sanity check regardless.
llvm-svn: 61343
2008-12-22 21:08:08 +00:00
Dan Gohman
fd87a5088e
Add an accesor for the isNormalMemory field in the SDep class.
...
llvm-svn: 61342
2008-12-22 21:06:56 +00:00
Dan Gohman
7782de7525
Add an assertion to catch SUnits reallocations. And add a doxygen
...
comment for the ScheduleDAGSDNodes class.
llvm-svn: 61341
2008-12-22 21:06:20 +00:00
Douglas Gregor
79a6b01802
Support conversion from a null pointer constant o any Objective-C object pointer type. Fixes rdar://problem/6463298
...
llvm-svn: 61340
2008-12-22 20:51:52 +00:00
Fariborz Jahanian
8b2d1294db
Fixed a bug showed up the meta-data for protocol
...
instance methods by building print-class-info.m,
whose output is now identical to what gcc puts out.
llvm-svn: 61339
2008-12-22 20:41:58 +00:00
Dan Gohman
9de060ebd2
Clarify a comment.
...
llvm-svn: 61338
2008-12-22 19:44:39 +00:00
Sebastian Redl
54c04d4700
Partial AST and Sema support for C++ try-catch.
...
llvm-svn: 61337
2008-12-22 19:15:10 +00:00
Fariborz Jahanian
ed4c443193
Patch to remove bogus warning in case of @dynamic
...
property in a category and to issue diagnostics
for mismatch method in some other cases.
llvm-svn: 61336
2008-12-22 19:05:31 +00:00
Sebastian Redl
04253537dc
Expr and Stmt must be destroyed with Destroy, not delete. Fixes PR/3245.
...
llvm-svn: 61335
2008-12-22 17:51:10 +00:00
Anders Carlsson
c72502308d
Fix test failures noticed by Fariborz.
...
llvm-svn: 61334
2008-12-22 17:42:23 +00:00
Zhongxing Xu
4ee570a4cb
Fix initialization order.
...
llvm-svn: 61333
2008-12-22 08:30:52 +00:00
Anders Carlsson
e5f993da3d
Flip the switch and start using the new xmmintrin.h
...
llvm-svn: 61332
2008-12-22 07:36:02 +00:00
Anders Carlsson
27046fc4e6
Comment out _mm_insert_pi16 for now
...
llvm-svn: 61331
2008-12-22 07:34:23 +00:00
Anders Carlsson
5aa0c50e29
Implement the last intrinsics, _mm_insert_pi16 is the last remaining one now.
...
llvm-svn: 61330
2008-12-22 07:08:03 +00:00
Douglas Gregor
97fd6e24c4
Add support for calls to overloaded member functions. Things to note:
...
- Overloading has to cope with having both static and non-static
member functions in the overload set.
- The call may or may not have an implicit object argument,
depending on the syntax (x.f() vs. f()) and the context (static
vs. non-static member function).
- We now generate MemberExprs for implicit member access expression.
- We now cope with mutable whenever we're building MemberExprs.
llvm-svn: 61329
2008-12-22 05:46:06 +00:00
Anders Carlsson
25b16dbcd8
Add macros
...
llvm-svn: 61328
2008-12-22 05:42:03 +00:00
Anders Carlsson
8b79fc8aab
Add misc intrinsics
...
llvm-svn: 61327
2008-12-22 05:20:34 +00:00
Anders Carlsson
53b3d4a32a
Add control register intrinsics
...
llvm-svn: 61326
2008-12-22 05:00:07 +00:00
Anders Carlsson
4cf8ac8bb8
Add integer intrinsics
...
llvm-svn: 61325
2008-12-22 04:55:36 +00:00
Anders Carlsson
0462eb270a
Generate code for __builtin_ia32_pshufw
...
llvm-svn: 61324
2008-12-22 04:54:32 +00:00
Anders Carlsson
70d5f46646
Add cacheability intrinsics
...
llvm-svn: 61323
2008-12-22 03:50:21 +00:00
Anders Carlsson
1e71996bd1
Add store intrinsics
...
llvm-svn: 61322
2008-12-22 03:16:40 +00:00
Anders Carlsson
c7d0d8b60d
Add set intrinsics
...
llvm-svn: 61321
2008-12-22 02:51:35 +00:00
Anders Carlsson
13fd3a1411
Add load intrinsics
...
llvm-svn: 61320
2008-12-22 02:43:30 +00:00
Zhongxing Xu
5b0ae81ab1
Add an option to make 'RemoveDeadBindings' a configurable behavior. This enables
...
us to measure the effect of this optimization.
llvm-svn: 61319
2008-12-22 01:52:37 +00:00
Anders Carlsson
1e4a9b7c0d
_mm_cvtsi64_ss is 64-bit only, so wrap it in #ifdef __x86_64__
...
Add composite conversion intrinsics - will implement them shortly.
llvm-svn: 61318
2008-12-22 01:26:50 +00:00
Anders Carlsson
157643c8d7
Add a couple of conversion intrinsics
...
llvm-svn: 61317
2008-12-22 00:48:30 +00:00
Anders Carlsson
60053dd2a5
Add comparison intrinsics.
...
llvm-svn: 61316
2008-12-22 00:28:39 +00:00
Anders Carlsson
2df1ce496e
Check in an in-progress version of xmmintrin.h that I had lying around.
...
llvm-svn: 61315
2008-12-22 00:01:20 +00:00
Anders Carlsson
39def3adc8
Add codegen support for __null
...
llvm-svn: 61314
2008-12-21 22:39:40 +00:00
Sebastian Redl
fc24b63b9a
Fix a comment.
...
llvm-svn: 61313
2008-12-21 19:24:58 +00:00
Sebastian Redl
b219c90d7b
Parser support for C++ try-catch.
...
llvm-svn: 61312
2008-12-21 16:41:36 +00:00
Zhongxing Xu
7b9c57083b
Correct comments.
...
llvm-svn: 61311
2008-12-21 13:00:52 +00:00
Sebastian Redl
f795cbed2e
Test case makes a platform assumption, so force triple.
...
llvm-svn: 61310
2008-12-21 12:17:24 +00:00
Sebastian Redl
52f03bac60
Convert a few Stmt actions to smart pointers.
...
llvm-svn: 61309
2008-12-21 12:04:03 +00:00