]> granicus.if.org Git - clang/log
clang
15 years agoPatch to provide ir-gen support in copying array members
Fariborz Jahanian [Fri, 21 Aug 2009 18:30:26 +0000 (18:30 +0000)]
Patch to provide ir-gen support in copying array members
when synthesizing a copy constructor. Arrays's base element
may have a trivial or non-trivial copy constructor.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79653 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTestcase for a recent checkin.
Mike Stump [Fri, 21 Aug 2009 18:05:02 +0000 (18:05 +0000)]
Testcase for a recent checkin.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79646 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoremove a dead warning.
Chris Lattner [Fri, 21 Aug 2009 17:15:06 +0000 (17:15 +0000)]
remove a dead warning.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79641 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoArray member construction in prologue of user-declared
Fariborz Jahanian [Fri, 21 Aug 2009 17:09:38 +0000 (17:09 +0000)]
Array member construction in prologue of user-declared
constructors.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79640 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIntroduce getConstantArrayElementCount API and use it in
Fariborz Jahanian [Fri, 21 Aug 2009 16:31:06 +0000 (16:31 +0000)]
Introduce getConstantArrayElementCount API and use it in
construction/destruction of array members.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79637 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix typo.
Mike Stump [Fri, 21 Aug 2009 15:22:41 +0000 (15:22 +0000)]
Fix typo.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79632 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoEagerly bind 'self' to SelfRegion. Thus we do not need to get code decl from
Zhongxing Xu [Fri, 21 Aug 2009 13:25:15 +0000 (13:25 +0000)]
Eagerly bind 'self' to SelfRegion. Thus we do not need to get code decl from
GRStateManager to create the SelfRegion.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79628 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix commentos
Daniel Dunbar [Fri, 21 Aug 2009 08:24:45 +0000 (08:24 +0000)]
Fix commentos

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79610 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix refacto.
Daniel Dunbar [Fri, 21 Aug 2009 08:22:12 +0000 (08:22 +0000)]
Fix refacto.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79609 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoReversing part of 79544.
Sanjiv Gupta [Fri, 21 Aug 2009 04:58:03 +0000 (04:58 +0000)]
Reversing part of 79544.
Need to find a new way to do target specific semanitc checking.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79596 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoGet the code decl from the initial location context.
Zhongxing Xu [Fri, 21 Aug 2009 03:05:36 +0000 (03:05 +0000)]
Get the code decl from the initial location context.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79591 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoGet the code decl from the initial location context.
Zhongxing Xu [Fri, 21 Aug 2009 02:58:11 +0000 (02:58 +0000)]
Get the code decl from the initial location context.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79590 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agogcc told me to add these.
Daniel Dunbar [Fri, 21 Aug 2009 02:43:05 +0000 (02:43 +0000)]
gcc told me to add these.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79589 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTie the local check NSErrorCheck to a Decl to pave the way
Zhongxing Xu [Fri, 21 Aug 2009 02:18:44 +0000 (02:18 +0000)]
Tie the local check NSErrorCheck to a Decl to pave the way
to untie the ExplodedGraph from a specific Decl.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79588 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoWe now support overriding base functions in vtables. WIP.
Mike Stump [Fri, 21 Aug 2009 01:45:00 +0000 (01:45 +0000)]
We now support overriding base functions in vtables.  WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79587 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove comma at the end of enumerator list.
Daniel Dunbar [Fri, 21 Aug 2009 00:54:25 +0000 (00:54 +0000)]
Remove comma at the end of enumerator list.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79586 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove TypeSpecStartLocation from VarDecl/FunctionDecl/FieldDecl, and use DeclaratorI...
Argyrios Kyrtzidis [Fri, 21 Aug 2009 00:31:54 +0000 (00:31 +0000)]
Remove TypeSpecStartLocation from VarDecl/FunctionDecl/FieldDecl, and use DeclaratorInfo to get this information.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79584 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake the new Objective-C "id" and "Class" redefinition types special
Douglas Gregor [Fri, 21 Aug 2009 00:27:50 +0000 (00:27 +0000)]
Make the new Objective-C "id" and "Class" redefinition types special
types that are preloaded by the PCH file. Fixes PCH breakage
introduced in r79248.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79583 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoImplement support for calling member function templates, which involves:
Douglas Gregor [Fri, 21 Aug 2009 00:16:32 +0000 (00:16 +0000)]
Implement support for calling member function templates, which involves:
  - Allowing one to name a member function template within a class
  template and on the right-hand side of a member access expression.
  - Template argument deduction for calls to member function templates.
  - Registering specializations of member function templates (and
  finding them later).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79581 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCenter the dragon.
Ted Kremenek [Fri, 21 Aug 2009 00:04:20 +0000 (00:04 +0000)]
Center the dragon.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79580 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake the dragon a link...
Ted Kremenek [Thu, 20 Aug 2009 23:49:30 +0000 (23:49 +0000)]
Make the dragon a link...

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79577 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoInclude LLVM logo ... because dragons are cool.
Ted Kremenek [Thu, 20 Aug 2009 23:48:37 +0000 (23:48 +0000)]
Include LLVM logo ... because dragons are cool.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79576 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdded member arrays to more tests now that ir-gen supports it.
Fariborz Jahanian [Thu, 20 Aug 2009 23:33:31 +0000 (23:33 +0000)]
Added member arrays to more tests now that ir-gen supports it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79575 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPatch to ir-gen destruction of array member elements in revers order
Fariborz Jahanian [Thu, 20 Aug 2009 23:02:58 +0000 (23:02 +0000)]
Patch to ir-gen destruction of array member elements in revers order
of their construction.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79571 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoInitial support for parsing and representation of member function templates.
Douglas Gregor [Thu, 20 Aug 2009 22:52:58 +0000 (22:52 +0000)]
Initial support for parsing and representation of member function templates.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79570 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoir-gen patch to destruct array members. WIP.
Fariborz Jahanian [Thu, 20 Aug 2009 20:54:15 +0000 (20:54 +0000)]
ir-gen patch to destruct array members. WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79565 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate checker build.
Ted Kremenek [Thu, 20 Aug 2009 18:55:46 +0000 (18:55 +0000)]
Update checker build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79559 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix a typo in a variable name
Douglas Gregor [Thu, 20 Aug 2009 18:46:05 +0000 (18:46 +0000)]
Fix a typo in a variable name

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79558 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDon't install wpa or index-test tools.
Daniel Dunbar [Thu, 20 Aug 2009 18:45:52 +0000 (18:45 +0000)]
Don't install wpa or index-test tools.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79557 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIssue an error if the user specifies parameters in a function marked as ISR.
Sanjiv Gupta [Thu, 20 Aug 2009 17:48:52 +0000 (17:48 +0000)]
Issue an error if the user specifies parameters in a function marked as ISR.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79544 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUsing "ObjCImplicitSetterGetterRefExpr" instead of "ObjCImplctSetterGetterRefExpr".
Fariborz Jahanian [Thu, 20 Aug 2009 17:02:02 +0000 (17:02 +0000)]
Using "ObjCImplicitSetterGetterRefExpr" instead of "ObjCImplctSetterGetterRefExpr".
A field rename and more comments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79537 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRefine vbase offsets for the inductive case. Things are now starting
Mike Stump [Thu, 20 Aug 2009 07:22:17 +0000 (07:22 +0000)]
Refine vbase offsets for the inductive case.  Things are now starting
to come together nicely.  Still a WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79521 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd syntax examples for the friend declaration types.
John McCall [Thu, 20 Aug 2009 07:19:42 +0000 (07:19 +0000)]
Add syntax examples for the friend declaration types.

Remove an assert trivialized by dominating code.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79520 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRefactor the instantiation of statements into a generic tree
Douglas Gregor [Thu, 20 Aug 2009 07:17:43 +0000 (07:17 +0000)]
Refactor the instantiation of statements into a generic tree
transformation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79519 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoImprove the Getting Started and Hacking web pages, patch by
Chris Lattner [Thu, 20 Aug 2009 06:17:11 +0000 (06:17 +0000)]
Improve  the Getting Started and Hacking web pages, patch by
John Thompson!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79518 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoretain/release checker: Treat NSObject method '-awakeAfterUsingCoder:'
Ted Kremenek [Thu, 20 Aug 2009 05:13:36 +0000 (05:13 +0000)]
retain/release checker: Treat NSObject method '-awakeAfterUsingCoder:'
just as if it behaved like an init function.  This fixes <rdar://problem/7129086>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79515 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake this test case more portable by removing its dependency on system header files.
Ted Kremenek [Thu, 20 Aug 2009 04:48:23 +0000 (04:48 +0000)]
Make this test case more portable by removing its dependency on system header files.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79511 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix bit-field promotion to be a bit closer to the behavior of gcc.
Eli Friedman [Thu, 20 Aug 2009 04:21:42 +0000 (04:21 +0000)]
Fix bit-field promotion to be a bit closer to the behavior of gcc.
Patch by Enea Zaffanella, with some simplifications/corrections to
isPromotableBitField by me.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79510 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIf the 'while' has an empty body, set the body to the continue target block.
Zhongxing Xu [Thu, 20 Aug 2009 03:21:49 +0000 (03:21 +0000)]
If the 'while' has an empty body, set the body to the continue target block.
Although this does not make the CFG more correct, it makes the CFG more
beautiful without multiple roots.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79509 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIf the body of for loop is empty, set its body to the continue target.
Zhongxing Xu [Thu, 20 Aug 2009 02:56:48 +0000 (02:56 +0000)]
If the body of for loop is empty, set its body to the continue target.
Otherwise we get a wrong CFG.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79507 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoEnsure we don't output repeated vbase offsets. I have a testcase for
Mike Stump [Thu, 20 Aug 2009 02:11:48 +0000 (02:11 +0000)]
Ensure we don't output repeated vbase offsets.  I have a testcase for
this, but need to fixup the actual offset value before I can check it
in.  WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79506 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoBasic nested-template implementation.
John McCall [Thu, 20 Aug 2009 01:44:21 +0000 (01:44 +0000)]
Basic nested-template implementation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79504 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRename: ProgramPoint::getContext() => ProgramPoint::getLocationContext().
Zhongxing Xu [Thu, 20 Aug 2009 01:23:34 +0000 (01:23 +0000)]
Rename: ProgramPoint::getContext() => ProgramPoint::getLocationContext().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79502 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTest case for my last patch plus a minor clean up.
Fariborz Jahanian [Thu, 20 Aug 2009 01:01:06 +0000 (01:01 +0000)]
Test case for my last patch plus a minor clean up.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79500 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoretain/release checker: Special case handling of CFAttributedStringSetAttribute,
Ted Kremenek [Thu, 20 Aug 2009 00:57:22 +0000 (00:57 +0000)]
retain/release checker: Special case handling of CFAttributedStringSetAttribute,
fixing <rdar://problem/7152619>. Along the way, merge test cases in
'test/Analysis/rdar-6539791.c' into 'test/Analysis/retain-release.m'.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79499 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoir-gen for multi-dimensional array construction. WIP.
Fariborz Jahanian [Thu, 20 Aug 2009 00:15:15 +0000 (00:15 +0000)]
ir-gen for multi-dimensional array construction. WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79497 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoEnhance diagnostics concerning attribute 'ns_returns_retained' and 'cf_returns_retain...
Ted Kremenek [Wed, 19 Aug 2009 23:56:48 +0000 (23:56 +0000)]
Enhance diagnostics concerning attribute 'ns_returns_retained' and 'cf_returns_retained' to present the range of the attribute and have the diagnostic location be the declaration that the attribute was falsely attached to.  This solves the problem where these diagnostics were being suppressed when these attributes were wrapped in a macro that was defined in a system header.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79496 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoKeep track of the right paren ')' source location in a function declarator.
Argyrios Kyrtzidis [Wed, 19 Aug 2009 23:14:54 +0000 (23:14 +0000)]
Keep track of the right paren ')' source location in a function declarator.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79489 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemoved unneeded code for break/continue statements in
Fariborz Jahanian [Wed, 19 Aug 2009 21:10:38 +0000 (21:10 +0000)]
Removed unneeded code for break/continue statements in
manufactured for-loop per Anders feedback (thanks).

- Fariborz

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79466 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoir-gen for constructing arrays as non-static data members. WIP.
Fariborz Jahanian [Wed, 19 Aug 2009 20:55:16 +0000 (20:55 +0000)]
ir-gen for constructing arrays as non-static data members. WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79464 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd TCE target to clang; patch by Mikael Lepistö.
Eli Friedman [Wed, 19 Aug 2009 20:47:07 +0000 (20:47 +0000)]
Add TCE target to clang; patch by Mikael Lepistö.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79462 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove now unnecessary helper methods.
Daniel Dunbar [Wed, 19 Aug 2009 20:32:38 +0000 (20:32 +0000)]
Remove now unnecessary helper methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79460 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTweak svn:ignore
Daniel Dunbar [Wed, 19 Aug 2009 20:31:51 +0000 (20:31 +0000)]
Tweak svn:ignore

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79459 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSwitch to SmallString::str from SmallString::c_str.
Daniel Dunbar [Wed, 19 Aug 2009 20:04:03 +0000 (20:04 +0000)]
Switch to SmallString::str from SmallString::c_str.
 - Several FIXMEs due to non-Twinification of IRBuilder.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79455 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoConvert parts of Rewriter to StringRef based API.
Daniel Dunbar [Wed, 19 Aug 2009 19:10:30 +0000 (19:10 +0000)]
Convert parts of Rewriter to StringRef based API.
 - Please accept my sincere apologies for the gratuitous elimination of code
   duplication, manual string length counting, unnecessary strlen calls, etc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79448 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse raw_svector_ostream for string concatenation.
Daniel Dunbar [Wed, 19 Aug 2009 18:30:37 +0000 (18:30 +0000)]
Use raw_svector_ostream for string concatenation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79444 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoOne second thought, I think I want to limit this class to just vtable
Mike Stump [Wed, 19 Aug 2009 18:10:47 +0000 (18:10 +0000)]
One second thought, I think I want to limit this class to just vtable
building activities.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79438 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCleanup: fold IndirectPrimary into builder.
Mike Stump [Wed, 19 Aug 2009 14:40:47 +0000 (14:40 +0000)]
Cleanup: fold IndirectPrimary into builder.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79423 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoWe don't want to confuse this layout with the BLayout from the builder.
Mike Stump [Wed, 19 Aug 2009 14:06:50 +0000 (14:06 +0000)]
We don't want to confuse this layout with the BLayout from the builder.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79422 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate for recent improvements.
Mike Stump [Wed, 19 Aug 2009 13:36:31 +0000 (13:36 +0000)]
Update for recent improvements.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79421 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoGet the Decl from the current ExplodedNode. Eventually the diagnostic client
Zhongxing Xu [Wed, 19 Aug 2009 12:50:00 +0000 (12:50 +0000)]
Get the Decl from the current ExplodedNode. Eventually the diagnostic client
and other core analysis logic will be untied to a particular Decl.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79420 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate CMakeLists.
Benjamin Kramer [Wed, 19 Aug 2009 12:02:15 +0000 (12:02 +0000)]
Update CMakeLists.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79416 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake integer promotions work correctly on PIC16 and other platforms
Eli Friedman [Wed, 19 Aug 2009 07:44:53 +0000 (07:44 +0000)]
Make integer promotions work correctly on PIC16 and other platforms
where sizeof(short) == sizeof(int).  Move UsualArithmeticConversionsType
out of Sema, since it was only there as a historical artifact.  Patch by
Enea Zaffanella.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79412 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRestore vbase offsets for classes without a primary.
Mike Stump [Wed, 19 Aug 2009 02:53:08 +0000 (02:53 +0000)]
Restore vbase offsets for classes without a primary.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79402 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRefine vcalls a little.
Mike Stump [Wed, 19 Aug 2009 02:06:38 +0000 (02:06 +0000)]
Refine vcalls a little.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79400 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix a comment and improve an assert message.
Argyrios Kyrtzidis [Wed, 19 Aug 2009 01:46:06 +0000 (01:46 +0000)]
Fix a comment and improve an assert message.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79399 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoStore/load type source info from/to PCH files.
Argyrios Kyrtzidis [Wed, 19 Aug 2009 01:28:35 +0000 (01:28 +0000)]
Store/load type source info from/to PCH files.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79396 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse Sema's LocInfoType to pass and preserve type source info through the Parser.
Argyrios Kyrtzidis [Wed, 19 Aug 2009 01:28:28 +0000 (01:28 +0000)]
Use Sema's LocInfoType to pass and preserve type source info through the Parser.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79395 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIntroduce LocInfoType which is a Sema-specific implementation detail.
Argyrios Kyrtzidis [Wed, 19 Aug 2009 01:28:17 +0000 (01:28 +0000)]
Introduce LocInfoType which is a Sema-specific implementation detail.

This is a Type subclass that can hold a DeclaratorInfo* when we have type source info coming
out of a declarator that we want to preserve. This is used only at the "border" of Parser/Sema for
passing/getting QualTypes, it does not participate in the type system semantics in any way.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79394 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCreate and instantiate a DeclaratorInfo using a newly introduced Sema::GetDeclaratorI...
Argyrios Kyrtzidis [Wed, 19 Aug 2009 01:28:06 +0000 (01:28 +0000)]
Create and instantiate a DeclaratorInfo using a newly introduced Sema::GetDeclaratorInfoForDeclarator().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79393 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIntroduce DeclaratorDecl and pass DeclaratorInfo through the Decl/Sema interfaces.
Argyrios Kyrtzidis [Wed, 19 Aug 2009 01:27:57 +0000 (01:27 +0000)]
Introduce DeclaratorDecl and pass DeclaratorInfo through the Decl/Sema interfaces.

DeclaratorDecl contains a DeclaratorInfo* to keep type source info.
Subclasses of DeclaratorDecl are FieldDecl, FunctionDecl, and VarDecl.
EnumConstantDecl still inherits from ValueDecl since it has no need for DeclaratorInfo.

Decl/Sema interfaces accept a DeclaratorInfo as parameter but no DeclaratorInfo is created yet.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79392 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoIntroduce DeclaratorInfo and TypeLoc, intended to be used for storing and reading...
Argyrios Kyrtzidis [Wed, 19 Aug 2009 01:27:32 +0000 (01:27 +0000)]
Introduce DeclaratorInfo and TypeLoc, intended to be used for storing and reading source information for types.

DeclaratorInfo will contain a flat memory block for source information about a type that came out of a declarator.
TypeLoc and its subclasses will be used by clients as wrappers to "traverse" the memory block and read the information.

Both DeclaratorInfo and TypeLoc are not utilized in this commit.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79391 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate Xcode project.
Anders Carlsson [Wed, 19 Aug 2009 01:17:32 +0000 (01:17 +0000)]
Update Xcode project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79390 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCleanup.
Mike Stump [Tue, 18 Aug 2009 22:04:08 +0000 (22:04 +0000)]
Cleanup.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79374 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd some documentation.
Mike Stump [Tue, 18 Aug 2009 21:59:28 +0000 (21:59 +0000)]
Add some documentation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79373 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCleanups. Move GenerateRtti to CodeGenModule.
Mike Stump [Tue, 18 Aug 2009 21:49:00 +0000 (21:49 +0000)]
Cleanups.  Move GenerateRtti to CodeGenModule.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79372 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRenamed ClassProp data member of ObjCImplctSetterGetterRefExpr
Fariborz Jahanian [Tue, 18 Aug 2009 21:37:33 +0000 (21:37 +0000)]
Renamed ClassProp data member of ObjCImplctSetterGetterRefExpr
to InterfaceDecl, as it is unrelated to any property and
holds the InterfaceDecl needed for accessing class getter/setter
methods using the dot-syntax.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79371 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMove the rest of the vtable building code into the new builder.
Mike Stump [Tue, 18 Aug 2009 21:30:21 +0000 (21:30 +0000)]
Move the rest of the vtable building code into the new builder.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79370 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSuck up method generation.
Mike Stump [Tue, 18 Aug 2009 21:03:28 +0000 (21:03 +0000)]
Suck up method generation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79367 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSplit out vtable bulding code into a builder.
Mike Stump [Tue, 18 Aug 2009 20:50:28 +0000 (20:50 +0000)]
Split out vtable bulding code into a builder.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79366 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRenamed ObjCKVCRefExpr to ObjCImplctSetterGetterRefExpr.
Fariborz Jahanian [Tue, 18 Aug 2009 20:50:23 +0000 (20:50 +0000)]
Renamed ObjCKVCRefExpr to ObjCImplctSetterGetterRefExpr.
Removed an unnecessary loop to get to setters incoming
argument. Added DoxyGen comments. Still more work
to do in this area (WIP).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79365 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoChange ActOnReturnStmt to not take a FullExprArg. Instead, Sema will wrap the return...
Anders Carlsson [Tue, 18 Aug 2009 16:11:00 +0000 (16:11 +0000)]
Change ActOnReturnStmt to not take a FullExprArg. Instead, Sema will wrap the return expr inside a CXXExprWithTemporaries if needed.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79342 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove unused parameter BugReporter due to previous patch.
Zhongxing Xu [Tue, 18 Aug 2009 08:58:41 +0000 (08:58 +0000)]
Remove unused parameter BugReporter due to previous patch.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79328 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoNow we can get the CFG from the ProgramPoint. No need to pass in the
Zhongxing Xu [Tue, 18 Aug 2009 08:46:04 +0000 (08:46 +0000)]
Now we can get the CFG from the ProgramPoint. No need to pass in the
BugReporter.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79327 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd test for finding bfin backend.
Daniel Dunbar [Tue, 18 Aug 2009 07:07:14 +0000 (07:07 +0000)]
Add test for finding bfin backend.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79326 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoConvert CreateTargetInfo to use a Triple instead of manul string munging.
Daniel Dunbar [Tue, 18 Aug 2009 05:47:58 +0000 (05:47 +0000)]
Convert CreateTargetInfo to use a Triple instead of manul string munging.
 - Patch by Yonggang Luo (with some formatting tweaks by Eli and myself).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79320 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix some made up triples.
Daniel Dunbar [Tue, 18 Aug 2009 05:30:27 +0000 (05:30 +0000)]
Fix some made up triples.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79316 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoEnhance static analyzer diagnostics by introducing a new 'EnhancedBugReporter'
Ted Kremenek [Tue, 18 Aug 2009 01:05:30 +0000 (01:05 +0000)]
Enhance static analyzer diagnostics by introducing a new 'EnhancedBugReporter'
which allows custom checks to register callback creator functions for creating
BugReporterVisitor objects. This allows various checks to include diagnostics
such as 'assuming value is null' with little extra work. Eventually this API
should be refactored to be cleaner and more simple.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79302 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTeach Sema how to pop out of friend function definitions in nested classes.
John McCall [Tue, 18 Aug 2009 00:00:49 +0000 (00:00 +0000)]
Teach Sema how to pop out of friend function definitions in nested classes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79291 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFixed typo in last commit pointed out by Anton.
David Chisnall [Mon, 17 Aug 2009 23:18:30 +0000 (23:18 +0000)]
Fixed typo in last commit pointed out by Anton.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79290 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoChanges to TargetABIInfo to (hopefully) select the correct calling convention. This...
David Chisnall [Mon, 17 Aug 2009 23:08:21 +0000 (23:08 +0000)]
Changes to TargetABIInfo to (hopefully) select the correct calling convention.  This has been tested on FreeBSD, and now correctly generates GCC-compatible code for functions returning small structures.  Please test it on other platforms!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79288 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSupport compilation for the blackfin back-end
Jakob Stoklund Olesen [Mon, 17 Aug 2009 20:08:44 +0000 (20:08 +0000)]
Support compilation for the blackfin back-end

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79271 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPatch to 1) synthesizing non-trivial default destructor when
Fariborz Jahanian [Mon, 17 Aug 2009 19:04:50 +0000 (19:04 +0000)]
Patch to 1) synthesizing non-trivial default destructor when
one is not provided by user. 2) More complete
emission of ctor prologue when it has no initializer
list or when it is synthesized.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79269 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove an ErrorUnsupported call.
Anders Carlsson [Mon, 17 Aug 2009 18:24:57 +0000 (18:24 +0000)]
Remove an ErrorUnsupported call.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79261 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoXFAIL this test for now. David/Steve, please sort out the correct fix.
Daniel Dunbar [Mon, 17 Aug 2009 18:01:54 +0000 (18:01 +0000)]
XFAIL this test for now. David/Steve, please sort out the correct fix.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79259 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoInitial patch to support definitions of id and Class from headers in Objective-C...
David Chisnall [Mon, 17 Aug 2009 16:35:33 +0000 (16:35 +0000)]
Initial patch to support definitions of id and Class from headers in Objective-C code.

This currently breaks test/SemaObjC/id-isa-ref.m and issues some spurious warnings when you attempt to assign a struct objc_class* value to a Class variable.  The test case probably should fail as it's written, because without the definition of Class the compiler should not assume struct objc_class* is a valid receiver type, but it's left broken because it would be nice if we could get that passing too for the special case of isa.

Approved by snaroff.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79248 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoadjust indentation.
Zhongxing Xu [Mon, 17 Aug 2009 14:13:14 +0000 (14:13 +0000)]
adjust indentation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79236 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove unused variable.
Zhongxing Xu [Mon, 17 Aug 2009 06:30:30 +0000 (06:30 +0000)]
Remove unused variable.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79229 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTo make the analysis independent on the locally stored liveness and cfg
Zhongxing Xu [Mon, 17 Aug 2009 06:19:58 +0000 (06:19 +0000)]
To make the analysis independent on the locally stored liveness and cfg
of GRStateManager and GRExprEngine, pass the initial location context
to the getInitialState() method.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79228 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate lexer to work with the new APFloat string parsing.
Erick Tryzelaar [Sun, 16 Aug 2009 23:36:28 +0000 (23:36 +0000)]
Update lexer to work with the new APFloat string parsing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79211 91177308-0d34-0410-b5e6-96231b3b80d8