[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-02-04 Thread Phabricator via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL353116: [OBJC] Add attribute to mark Objective C class as non-lazy (authored by joseph_daniels, committed by ). Herald added a project: LLVM. Herald added a subscriber: llvm-commits. Changed prior to comm

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-02-01 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman accepted this revision. aaron.ballman added a comment. This revision is now accepted and ready to land. LGTM! Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56555/new/ https://reviews.llvm.org/D56555 ___

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-31 Thread John McCall via Phabricator via cfe-commits
rjmccall accepted this revision. rjmccall added a comment. Thanks! I'd like Aaron to sign off as well before we commit this. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56555/new/ https://reviews.llvm.org/D56555 _

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-31 Thread Joe via Phabricator via cfe-commits
joedaniels29 updated this revision to Diff 184671. joedaniels29 marked 4 inline comments as done. joedaniels29 added a comment. Herald added a project: clang. Docs changes, formatting. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56555/new/ https://reviews.llvm.

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-31 Thread John McCall via Phabricator via cfe-commits
rjmccall added inline comments. Comment at: clang/include/clang/Basic/AttrDocs.td:3506 +add the class to the list of non-lazily initialized classes. These are classes +that are realized at objc_init() time rather than when first referenced. + }]; aaron.ballman

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-15 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added a comment. In terms of implementation, the attribute code looks pretty close (just a few nits). However, someone more familiar with Obj-C should chime in with whether the attribute semantics make sense and whether the documentation will be sufficiently clear for an Objective

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-14 Thread Joe via Phabricator via cfe-commits
joedaniels29 added a comment. On second thought, I have addressed everything, I think. > clang/test/SemaObjC/attr-objc-non-lazy.m Aaron, would you mind taking another look? Thanks a bunch. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56555/new/ https://reviews

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-14 Thread Joe via Phabricator via cfe-commits
joedaniels29 added a comment. never mind, I didnt address > It's still missing the tests in SemaObjC -- you can use > clang\test\SemaObjC\attr-root-class.m as an example of what I'm talking about. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56555/new/ https:/

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-14 Thread Joe via Phabricator via cfe-commits
joedaniels29 updated this revision to Diff 181692. joedaniels29 marked 2 inline comments as done. joedaniels29 added a comment. Hopefully addressed Aaron's comments. Thanks again Aaron. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56555/new/ https://reviews.llvm

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-14 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added a comment. It's still missing the tests in SemaObjC -- you can use clang\test\SemaObjC\attr-root-class.m as an example of what I'm talking about. Comment at: clang/include/clang/Basic/Attr.td:1697 + let LangOpts = [ObjC] + let Documentation = [Undocumente

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-11 Thread Joe via Phabricator via cfe-commits
joedaniels29 updated this revision to Diff 181371. joedaniels29 added a comment. Tried to fix Aaron Ballman's feedback. Thanks Aaron! Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56555/new/ https://reviews.llvm.org/D56555 Files: clang/include/clang/Basic/Attr

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-11 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman requested changes to this revision. aaron.ballman added a comment. This revision now requires changes to proceed. The patch is missing SemaObjC tests that ensure the attribute only appertains to the expected subjects, accepts no args, etc. Comment at: clang/inclu

[PATCH] D56555: Add Attribute to define nonlazy objc classes

2019-01-10 Thread Joe via Phabricator via cfe-commits
joedaniels29 created this revision. joedaniels29 added reviewers: erik.pilkington, rjmccall. Currently to get a nonlazy class in objective c, you need to define a +load method. Because we do other work when we realize a class, other than just call that load method, it would be ideal to have an