]>
granicus.if.org Git - clang/log
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 12:01:19 +0000 (12:01 +0000)]
Make IdentifierTable::get(StringRef) "primary" (no functionality change)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98347
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 11:27:37 +0000 (11:27 +0000)]
Reintroduce r98340 and r98341 now without copy/paste errors.
Thanks to Ben for pointing this out.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98345
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 11:00:51 +0000 (11:00 +0000)]
Back out r98340 abd r98341
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98344
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:32:27 +0000 (10:32 +0000)]
Add IdentifierTable::get() overload and start using it
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98343
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Fri, 12 Mar 2010 10:20:09 +0000 (10:20 +0000)]
fix PR6584: __SSE3__ not defined with -mss3
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98342
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:17:07 +0000 (10:17 +0000)]
Switch parameter order for consistency (no functionality change)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98341
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:14:26 +0000 (10:14 +0000)]
Add keywords using StringRef
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98340
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 09:33:31 +0000 (09:33 +0000)]
Cleanup using StringRef
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98339
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 08:23:34 +0000 (08:23 +0000)]
Switch over IdentifierInfoLookup to StringRef
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98337
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 07:11:26 +0000 (07:11 +0000)]
Improve the unused-value check to look into comma expressions and filter out
voids in sub-expressions. Patch by Mike M!
Fixes PR4806.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98335
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 12 Mar 2010 05:28:07 +0000 (05:28 +0000)]
More this adjustment simplification.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98333
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 12 Mar 2010 05:13:59 +0000 (05:13 +0000)]
Revert the linkage change for explicit template instantiations; something is amiss
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98332
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 12 Mar 2010 05:02:01 +0000 (05:02 +0000)]
Remove OldOffset.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98331
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 12 Mar 2010 04:55:20 +0000 (04:55 +0000)]
Remove debug output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98330
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 12 Mar 2010 04:54:20 +0000 (04:54 +0000)]
Begin simplifying handling of thunks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98329
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 12 Mar 2010 04:49:06 +0000 (04:49 +0000)]
Give explicit template instantiations weak linkage (but don't defer
them). Fixes PR6578.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98328
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 04:21:28 +0000 (04:21 +0000)]
Extend the builtin syntax to allow address-space qualifiers on pointers and
references. Based on a patch by Arnaud de Grandmaison!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98327
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 02:31:10 +0000 (02:31 +0000)]
Split Sema::ActOnProperty() into two recursive functions to clearly separate
the handling of class extensions from other cases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98326
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 12 Mar 2010 01:22:33 +0000 (01:22 +0000)]
Add SSE4 packed integer comparisons and corresponding intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98323
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 01:20:21 +0000 (01:20 +0000)]
Add an extra test to this test-case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98322
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 01:19:31 +0000 (01:19 +0000)]
Implement basic support for friend types and functions in non-dependent
contexts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98321
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 00:49:00 +0000 (00:49 +0000)]
Fix 80 col violations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98320
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 00:46:40 +0000 (00:46 +0000)]
Move 'ActOn' methods to the beginning of the file
so we can clearly see the parser entry points.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98319
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 00:38:40 +0000 (00:38 +0000)]
Update CMake build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98318
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 00:38:38 +0000 (00:38 +0000)]
Split Sema logic for ObjC @property and @synthesize into
a separate file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98317
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 11 Mar 2010 23:50:18 +0000 (23:50 +0000)]
Integer array extraction for sse4.1.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98305
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 11 Mar 2010 23:36:29 +0000 (23:36 +0000)]
Add packed integer array insertion.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98299
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 11 Mar 2010 20:01:48 +0000 (20:01 +0000)]
Keep track of Record context to ensure that record elements are properly nested in debug info.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98283
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 11 Mar 2010 19:44:54 +0000 (19:44 +0000)]
For ivars created using @synthesize, set their DeclContext to be
the @implementation (instead of the @interface) and actually add
the ivar to the DeclContext (which we weren't doing before).
This allows us to simplify ASTContext::CollectNonClassIvars() by
removing ASTContext::CollectProtocolSynthesizedIvars(). Now all
ivars can be found by either inspecting the ObjCInterfaceDecl and
its companion ObjCImplementationDecl.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98280
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 19:43:18 +0000 (19:43 +0000)]
Warn about comparing an unsigned expression with 0 in tautological ways.
Patch by mikem!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98279
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 19:33:57 +0000 (19:33 +0000)]
Remember the PR number.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98276
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 19:32:38 +0000 (19:32 +0000)]
Implement -Wmissing-field-initializers. Patch by mikem!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98275
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 11 Mar 2010 18:23:02 +0000 (18:23 +0000)]
Use -emit-llvm-only, to avoid leaving a temp around.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98267
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 11 Mar 2010 18:20:03 +0000 (18:20 +0000)]
Add tentative support for accessing local variables with
external linkage (static, extern, etc.) in blocks in
rewriter. wip.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98265
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 11 Mar 2010 18:19:55 +0000 (18:19 +0000)]
fix PR6433, crash on va_arg of typedef.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98264
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 11 Mar 2010 18:04:58 +0000 (18:04 +0000)]
Driver: Free Action objects.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98263
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 11 Mar 2010 18:04:53 +0000 (18:04 +0000)]
Driver: Free synthesized derived arguments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98262
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 11 Mar 2010 18:04:49 +0000 (18:04 +0000)]
Driver: Free jobs in JobList and PipedJob instances.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98261
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 11 Mar 2010 16:47:29 +0000 (16:47 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98259
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 16:06:20 +0000 (16:06 +0000)]
Use the new vtable layout code for computing virtual base offset offsets.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98257
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 11 Mar 2010 14:07:00 +0000 (14:07 +0000)]
Correctly mangle address of member in template arguments. Fixes PR6460
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98254
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 09:33:17 +0000 (09:33 +0000)]
Fix a self-host problem caused by this over-eager assertion. I'm not sure
there's a good equivalent that's actually true, unfortunately.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98253
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 09:03:00 +0000 (09:03 +0000)]
Maintain type source information for functions through template
instantiation. Based on a patch by Enea Zaffanella! I found a way to
reduce some of the redundancy between TreeTransform's "standard"
FunctionProtoType transformation and TemplateInstantiator's override,
and I killed off the old SubstFunctionType by adding type source info
for the last cases where we were creating FunctionDecls without TSI
(at least that get passed through template instantiation).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98252
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 07:50:04 +0000 (07:50 +0000)]
Split C++ friend declarations into their own header/implementation file.
I'm expecting this portion of the AST to grow and change, and I'd like to
be able to do that with minimal recompilation. If this proves unnecessary
when access control is fully-implemented, I'll fold the classes back into
DeclCXX.h.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98249
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 07:15:17 +0000 (07:15 +0000)]
Rename getVirtualBaseOffsetIndex to getVirtualBaseOffsetOffset to reflect what it actually does.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98248
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 07:00:45 +0000 (07:00 +0000)]
When possible, use the vbase offset offsets from the most derived class directly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98247
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 06:44:31 +0000 (06:44 +0000)]
Add a test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98246
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 06:43:12 +0000 (06:43 +0000)]
Keep track of, and dump, vbase offset offsets.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98245
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 06:10:52 +0000 (06:10 +0000)]
Fix tests.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98242
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 05:48:21 +0000 (05:48 +0000)]
Run the new vtable builder for construction vtables as well now. Note that we still don't use the data it generates.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98239
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 05:42:17 +0000 (05:42 +0000)]
More record layout builder cleanup and simplification.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98238
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 04:33:54 +0000 (04:33 +0000)]
Get rid of the PrimaryBase parameter from LayoutVirtualBases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98233
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 04:24:02 +0000 (04:24 +0000)]
More cleanup towards fixing the real bug.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98232
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 04:10:39 +0000 (04:10 +0000)]
Replace the class offset vectors in RecordLayoutBuilder with maps instead so we'll have faster lookup and so we can detect duplicates.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98231
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 03:39:12 +0000 (03:39 +0000)]
More cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98230
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 02:41:30 +0000 (02:41 +0000)]
More record layout builder cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98229
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 01:49:18 +0000 (01:49 +0000)]
Assert that primary bases always have offset 0.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98223
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 11 Mar 2010 00:36:10 +0000 (00:36 +0000)]
Remove unused 'IVars' field from ObjCInterfaceDecl. That functionality
has migrated to DeclContext.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98213
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 00:21:21 +0000 (00:21 +0000)]
Remove the IndirectPrimary parameter in LayoutVirtualBases; it's already there as a member variable.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98211
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Thu, 11 Mar 2010 00:15:35 +0000 (00:15 +0000)]
More cleanup and simplification of the record layout builder.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98208
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 00:10:12 +0000 (00:10 +0000)]
Support PPC-32 DWARF EH intrinisics. Thanks to rdivacky for his assistance.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98206
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 10 Mar 2010 23:59:59 +0000 (23:59 +0000)]
set alignment on static locals properly, patch by Arnaud de Grandmaison!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98204
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 22:26:24 +0000 (22:26 +0000)]
Get rid of the LayoutBaseNonVirtually; it was used to lay out a base either as a non-virtual base or a virtual base.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98198
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 22:21:28 +0000 (22:21 +0000)]
More shuffling.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98197
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 22:16:06 +0000 (22:16 +0000)]
Cleanups, no functionality change yet.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98196
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 10 Mar 2010 21:26:01 +0000 (21:26 +0000)]
add DESTDIR support for clang headers, PR6556.
Patch by Matthias Klose!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98192
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 21:25:37 +0000 (21:25 +0000)]
Fix calculation of whether a member function needs a thunk in construction vtables.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98191
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 10 Mar 2010 21:17:41 +0000 (21:17 +0000)]
Change the 'super' messaging API in the rewriter.
Fixes radar
7738452 .
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98190
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 10 Mar 2010 21:05:46 +0000 (21:05 +0000)]
Suppress the tag when printing an ElaboratedType if the language options
claim this is C. We don't make ElaboratedTypes in C, but sometimes
the language options during pretty-print lie to us.
The rewriter should really be fixed to not rely on how types are pretty-printed,
though.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98189
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 19:39:11 +0000 (19:39 +0000)]
We were mistakenly marking morally virtual bases as being uninteresting. Fix this.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98180
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 19:15:26 +0000 (19:15 +0000)]
Ignore non-interesting bases when emitting construction vtables.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98177
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 19:09:37 +0000 (19:09 +0000)]
Simplify assertion.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98176
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 19:09:34 +0000 (19:09 +0000)]
Remove '#if 0' code. Lazy compound values have proven their worth.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98175
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 19:09:31 +0000 (19:09 +0000)]
Fix -Wsign-compare warnings reported by clang++.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98174
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 18:22:38 +0000 (18:22 +0000)]
Fix -Wsign-compare warning reported by clang++.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98170
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 16:38:44 +0000 (16:38 +0000)]
Remove the subregion map cache. It is no longer used.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98161
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 16:38:41 +0000 (16:38 +0000)]
Fix stale comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98160
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 16:32:56 +0000 (16:32 +0000)]
Really apply (unnoticed weird git-svn merge conflict in 98144): Refactor RegionStore::RemoveDeadBindings to use the same core cluster analysis algorithm as RegionStore::InvalidateRegions().
Beyond simplifying the algorithm significantly, we no longer
need to build subregion maps in RemoveDeadBindings(). This
and other changes cause a significant speedup: the time to
analyze sqlite3.c (single core) drops by 14%.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98159
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Wed, 10 Mar 2010 14:01:14 +0000 (14:01 +0000)]
Move test and also test codegen.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98154
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 10 Mar 2010 11:27:22 +0000 (11:27 +0000)]
When pretty-printing tag types, only print the tag if we're in C (and
therefore not creating ElaboratedTypes, which are still pretty-printed
with the written tag).
Most of these testcase changes were done by script, so don't feel too
sorry for my fingers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98149
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 07:20:03 +0000 (07:20 +0000)]
Refactor RegionStore::RemoveDeadBindings to use the same core
cluster analysis algorithm as RegionStore::InvalidateRegions().
Beyond simplifying the algorithm significantly, we no longer
need to build subregion maps in RemoveDeadBindings(). This
and other changes cause a significant speedup: the time to
analyze sqlite3.c (single core) drops by 14%.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98144
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 07:19:59 +0000 (07:19 +0000)]
Refactor some of RegionStore's InvalidateRegionsWorker class
into a 'ClusterAnalysis' parent class. The idea is
to potentially reuse this for reworking RemoveDeadBindings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98143
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 06:51:56 +0000 (06:51 +0000)]
Add newline.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98140
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 06:51:42 +0000 (06:51 +0000)]
Don't accidentally mark some functions in construction vtables as unused. Also land the test for a previous checkin, now that it's correct.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98139
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 10 Mar 2010 06:48:02 +0000 (06:48 +0000)]
Allow the fast path through ASTContext::getTypeDeclType to be inlined.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98138
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Wed, 10 Mar 2010 04:58:55 +0000 (04:58 +0000)]
Add use-after-free check to MallocChecker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98136
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 10 Mar 2010 04:54:39 +0000 (04:54 +0000)]
Statement expressions can be used in global- or namespace-scoped blocks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98135
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 10 Mar 2010 03:28:59 +0000 (03:28 +0000)]
Create a new InjectedClassNameType to represent bare-word references to the
injected class name of a class template or class template partial specialization.
This is a non-canonical type; the canonical type is still a template
specialization type. This becomes the TypeForDecl of the pattern declaration,
which cleans up some amount of code (and complicates some other parts, but
whatever).
Fixes PR6326 and probably a few others, primarily by re-establishing a few
invariants about TypeLoc sizes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98134
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 03:02:01 +0000 (03:02 +0000)]
When building construction vtables, we need to check if a primary virtual base is actually a primary virtual base in the layout class.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98131
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Wed, 10 Mar 2010 02:43:01 +0000 (02:43 +0000)]
add missing test
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98129
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 10 Mar 2010 02:33:41 +0000 (02:33 +0000)]
Improve vcall offset handling in construction vtables. With this we layout the construction vtables from the ABI examples correctly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98127
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Wed, 10 Mar 2010 02:19:29 +0000 (02:19 +0000)]
Delay codegen of vtables when handling implicit instantiations.
This fixes PR6474.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98123
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Wed, 10 Mar 2010 00:50:58 +0000 (00:50 +0000)]
Add insert/extract_ps and related random macros.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98114
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 10 Mar 2010 00:19:43 +0000 (00:19 +0000)]
Use SmallString instead of alloca.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98112
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 00:18:11 +0000 (00:18 +0000)]
When computing in AnalysisContext the variables referenced
by a block, also look at the contained blocks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98111
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 10 Mar 2010 00:18:08 +0000 (00:18 +0000)]
Enhance basic store to also lazily symbolicate VarRegions
with an 'unknown' memory space.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98110
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 9 Mar 2010 22:49:11 +0000 (22:49 +0000)]
Fix file reference for derived and composite types. Now, dwarf writer uses strict verifier that ignores debug info for such types if their file info is unknown.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98096
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 9 Mar 2010 22:39:49 +0000 (22:39 +0000)]
Value-initialize the written-builtin-specifiers field of DeclSpec, which
wasn't being initialized properly along the implicit-definition path.
Found by the valgrind buildbot.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98093
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 9 Mar 2010 22:17:52 +0000 (22:17 +0000)]
Fix the test some more.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98090
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 9 Mar 2010 21:50:08 +0000 (21:50 +0000)]
See if this test makes it though buildbot.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98087
91177308 -0d34-0410-b5e6-
96231b3b80d8