aboutsummaryrefslogtreecommitdiff
path: root/lib/Rewrite
AgeCommit message (Collapse)Author
2012-04-16modern objective-c translator: translation of implicitFariborz Jahanian
cast to/from block pointer types. // rdar://11202764 Also, many more modern translator tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154869 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-15Actually, this tree isn't necessarily binary.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154762 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-15Recursively delete rewrite rope nodes when tearing down the tree.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154760 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-14objective-c modern translator: Make metadataFariborz Jahanian
definition for protocols static. // rdar://11248048 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154753 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-13modern objective-c translator: Fixes translation ofFariborz Jahanian
__typeof which is a regression by reverting r154360. // rdar://11233924 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154679 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-13modern objective-c translator: When translatingFariborz Jahanian
call to 'super' use __rw_objc_super as type of the 'super' meta-data instead of objc_super. // rdar://11239894 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154670 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-12objective-c modern translator: beautify rewrite ofFariborz Jahanian
struct __rw_objc_super; no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154632 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-12modern objective-c translator. ifdef'out Fariborz Jahanian
__weak and __block when rewriting. // rdar://11236342 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154592 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-11modern objective-c translator. Fixes a mis-translation whenFariborz Jahanian
of a __block struct object. // rdar://11230308 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154566 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-11modern objective-c translator. Fixes a translation bug when Fariborz Jahanian
first ivar in the list is a bitfield. // rdar://11229770 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154534 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-10modern objective-c translation: writing containerFariborz Jahanian
subscripting. // rdar://11203853 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154441 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-10objective-c modern translator: rewriting specificFariborz Jahanian
implicit casts which is needed to produce good c++ code. // rdar://11202764 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154360 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-06modern objective-c translation: support for Fariborz Jahanian
dictionary literals. This concludes // rdar://10803676 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154218 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-06modern objective-c translator: translate array literalFariborz Jahanian
expressions. // rdar://10803676 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154196 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04objective-c modern translation. Remove commenting outFariborz Jahanian
of extern "C". // rdar://11169733 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154025 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-03modern objective-c translator: rewriter linkage spec.Fariborz Jahanian
// rdar://11169733 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153960 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-30modern objective-c translator: writing containerFariborz Jahanian
literals. wip. // rdar://10803676 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153784 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-30modern objective-c translator: writing numericFariborz Jahanian
literals. // rdar://10803676 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153756 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-29modern objc translator: avoid some duplicate declarations.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153674 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-29modern objective-c translator: fix up assortment ofFariborz Jahanian
visibility directives for a variety of exported meta-data symbols. // rdar://11144048 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153663 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-27modern objective-c translator: writing objc boolean literals.Fariborz Jahanian
// rdar://11124775 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153535 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-27objective-c modern translator: move all inithooks into a single arrayFariborz Jahanian
// rdar://11124354 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153526 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-27Remove few if-then-else when both branches are theFariborz Jahanian
same. pr12357. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153515 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-27Commit patch reverted in r153454 with the modified testFariborz Jahanian
case that I forgot to check in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153512 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-26Revert r153443 "objective-c modern translator: extern "C" exported", it ↵Daniel Dunbar
fails in testing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153454 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-26objective-c modern translator: extern "C" exportedFariborz Jahanian
symbols. // rdar://11103982 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153443 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-24remove declaration of _objc_empty_vtable no longerFariborz Jahanian
used in modern objc translator. // rdar://11105680 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153386 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-24moderin objc translator: remove 'const' from remainingFariborz Jahanian
fields in _class_ro_t metadata. // rdar://11079898 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153384 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-23modern objc translation of block literal expressionsFariborz Jahanian
declared at file scope. // rdar://11006566 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153293 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-22modern objc rewriter: until we can translate block literalsFariborz Jahanian
at global scope properly, issue diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153271 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-22modern objective-c rewriter: Fix up translation ofFariborz Jahanian
property attributes. // rdar://11095151 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153261 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21modern objective-c translator: Change declaration ofFariborz Jahanian
all objc_msgSend unctions to void parameters and void return. // rdar://11094890 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153227 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21modern objective-c rewriter: remove 'const' fromFariborz Jahanian
pointer field declarations in several meta-data. // rdar://11079898 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153196 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21Undo previous patch as I checked more than I intended.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153193 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21modern objective-c rewriter: remove 'const' fromFariborz Jahanian
pointer field declarations in several meta-data. // rdar://11079898 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153192 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21RewriteModernObjC.cpp: Don't expose temporary std::string with StringRef. ↵NAKAMURA Takumi
(StringRef)getName() can be used here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153156 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21Close the paren.Fariborz Jahanian
// rdar://11076938 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153151 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-20modern objective-c translator: insert couple of pragmas for optimization.Fariborz Jahanian
// rdar://11079898 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153145 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-20modern objective-c translator: add static function to initialize Fariborz Jahanian
the class pointer in the category structure. // rdar://11076938 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153138 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-20more modern objective-c meta-data stuff.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153127 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-20modern objective-c translator: provide meta-data initializationFariborz Jahanian
via functions for certain pointer initialization fields. // rdar://11076938 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153117 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-20modern objective-c translator: couple of minorFariborz Jahanian
changes to how meta-data is declared. // rdar://11076938 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153098 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-20objective-c modern translator: Refactor intername ivar names toFariborz Jahanian
one place and use it throughout. Also, change ivar name to avoid name collisions. // rdar://11079366 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153093 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-19removed unused code in the modern objc rewriter file.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153052 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-19modern objective-c translator: fix type of objc_exception_throwFariborz Jahanian
declaration and its siblings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153043 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-17modern objective-c rewriter: further improvement inFariborz Jahanian
writing @synchronized statement; do not call locking expression more than once and support early exits in @synchronized's statement block (such as return). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152993 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-16sink variable into assertMatt Beaumont-Gay
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152955 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-16Minor clean up of my last patch.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152950 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-16modern objective-c translator: write @synchronized.Fariborz Jahanian
// rdar://11063663 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152949 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-16modern objective-c translator: writing @throw statement.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152931 91177308-0d34-0410-b5e6-96231b3b80d8