Commit Graph

13 Commits

Author SHA1 Message Date
Dmitri Gribenko
f0d294b714 Merge pull request #884 from practicalswift/apostrophes
[gardening] Replace left/right quotation marks
2016-01-11 20:41:24 -08:00
practicalswift
7cf882c4b4 Fix recently introduced typos. 2016-01-08 09:35:35 +01:00
Michael Gottesman
25a999063c [arc-loop-hoisting] Add motiviation/proofs of correctness of ARCLoopHoisting to ARCOptimization.rst. 2016-01-07 19:21:19 -08:00
practicalswift
4689a22f1b Replace left/right quotation marks with apostrophes in non-quote contexts
* LEFT SINGLE QUOTATION MARK (U+2018) → APOSTROPHE (U+0027)
* RIGHT SINGLE QUOTATION MARK (U+2019) → APOSTROPHE (U+0027)
2016-01-06 12:29:40 +01:00
Michael Gottesman
3d8433b7f6 [arc] Add in a new semantics attribute called "arc.programtermination_point" and document it.
If this semantic tag is applied to a function, then we know that:

- The function does not touch any reference counted objects.
- After the function is executed, all reference counted objects are leaked
  (most likely in preparation for program termination).

This allows one, when performing ARC code motion, to ignore blocks that contain
an apply to this function as long as the block does not have any other side
effect having instructions.

I have wanted to do this for a while but was stymied by lacking the ability to
apply multiple @_semantics attributes. This is now committed to trunk so I added
this attribute instead of pattern matching against fatalError (since there could
be other functions with this property).

rdar://19592537
2016-01-02 16:22:06 -06:00
John McCall
5fddd4a704 Remove the autorelease_return and strong_retain_autoreleased instructions.
There's a buggy SIL verifier check that was previously tautological,
and it turns out that it's violated, apparently harmlessly.  Since it
was already doing nothing, I've commented it out temporarily while
I figure out the right way to fix SILGen to get the invariant right.
2015-12-09 14:50:20 -08:00
Devin Otway
8e59ae6a1b Add missing period 2015-12-04 00:29:12 -08:00
Shintaro Kaneko
d9120142f9 Fix execution typo 2015-12-04 02:50:31 +09:00
Alex Chan
9e06a2fcfb Fix typo in docs/ARCOptimization.rst 2015-12-03 17:16:10 +00:00
Michael Gottesman
5cd595b494 [docs] Note that RCIdentityAnalysis is a flow insensitive optimization in the ARCOptimization guide.
Swift SVN r32353
2015-09-30 23:14:08 +00:00
Michael Gottesman
8277473885 Add a section to ARCOptimization.rst describing RCIdentity.
Swift SVN r32286
2015-09-28 23:18:59 +00:00
Arnold Schwaighofer
d64d9d11e6 Docs: Fix typos in ARCOptimization.rst
Swift SVN r29398
2015-06-16 14:51:59 +00:00
Andrew Trick
41cf8608cb Add is_unique documentation.
I also added a placeholder for ARC optimization docs. I wanted anyone
reading about swift ARC optimization to run across my discussion on
correctness w.r.t. COW.

Swift SVN r27890
2015-04-28 22:54:26 +00:00