Commit Graph

46 Commits

Author SHA1 Message Date
Dmitri Gribenko
9bcd5a1056 Collection.length => .count 2016-01-22 18:41:19 -08:00
Dmitri Gribenko
f5153572d7 stdlib: rename count labels in underscored protocols
lengthInBytes => utf8CodeUnitCount

numberOfCodeUnits => utf16CodeUnitCount
2016-01-21 17:18:15 -08:00
Doug Gregor
7d70b704e4 Merge commit '5e11e3f7287427d386636a169c4065c0373931a8' into swift-3-api-guidelines 2016-01-19 23:18:20 -08:00
Tomohiro Kumagai
e4bf75fb29 [stdlib] [docs] Re-wrap some paragraphs to fit within 80 characters. #936 2016-01-12 11:09:15 +09:00
Tomohiro Kumagai
01155076fa [stdlib] [docs] Modify Array's type parameter name and rename Slice to ArraySlice in comments.
In swift 1.2, `Slice` has been renamed  `ArraySlice`.
In swift 2.0, type parameter name of `Array` is changed from `T` to `Element`.
Therefore, modified the names which appear in code comments and a document.
2016-01-11 17:04:45 +09:00
Max Moiseev
f51e708a8f Merge remote-tracking branch 'origin/master' into swift-3-api-guidelines 2016-01-04 12:25:25 -08:00
practicalswift
07f57246ee Fix documentation typos. 2015-12-28 01:50:14 +01:00
Max Moiseev
200be71583 Merge remote-tracking branch 'origin' into swift-3-api-guidelines 2015-12-23 10:28:04 -08:00
ken0nek
fcd8fcee91 Convert [Cc]an not -> [Cc]annot 2015-12-23 00:55:48 +09:00
Dmitri Gribenko
73ce9ae7e9 Collection.count => .length
And other API changes that naturally fall out from this, like
Array(repeating:count:) => Array(repeating:length:).
2015-12-17 15:55:29 -08:00
TheGiantPanda
a1c3ebd090 Fixed formatting and spelling
The word “referes” was corrected to “refers”. Formatting for other
lines was also fixed.
2015-12-05 20:53:06 -08:00
Stefan Natchev
5eaa3c43d0 Fix typos in documentation 2015-12-04 09:29:24 -05:00
Johan K. Jensen
fa76656c82 Remove instances of duplicated words 2015-12-03 20:00:29 +01:00
codester
d21d3363eb Fix Typos and spelling
Fixed Typos
2015-12-03 23:30:34 +05:30
Arnold Schwaighofer
5d989c9b98 HighLevelSILOptimizations.rst: change Slice<T> to ArraySlice<T>
Swift SVN r30592
2015-07-24 21:12:33 +00:00
Arnold Schwaighofer
5b7ba8dfb0 HighLevelSILOptimizations docs: Clarify the semantics of check_subscript/get_count
Slices aren't (will not be) zero based instead define check_subscript's
semantics in terms of startIndex/endIndex.

Swift SVN r30591
2015-07-24 20:55:01 +00:00
Erik Eckstein
3ad2b6710b stdlib: add @_semantics("availability.osversion") to _stdlib_isOSVersionAtLeast
Needed by GlobalOpt (rdar://problem/20708979)



Swift SVN r27963
2015-04-30 11:05:31 +00:00
Nadav Rotem
32211041d2 Rename @semantics -> @_semantics.
Swift SVN r27533
2015-04-21 17:10:06 +00:00
Nadav Rotem
0f63546369 Rename the semantics tag name from never to sil.never. NFC.
Swift SVN r27486
2015-04-20 17:27:32 +00:00
Nadav Rotem
926042ff81 Add @semantics("optimize.never") to disable optimizations of a specific function.
This commit adds a flag to disable optimizations on a specific functions. The
primary motivation of this patch is to allow the optimizer developers to reduce
testcasese by disabling optimizations of parts of the code without having to
recompile the compiler or inspect SIL. The annotations  "inline(never)"
and "optimize.none" can go a long way.

The second motivation for this patch is to allow our internal adopters to work
around compiler bugs.

rar://19745484

Usage:

@semantics("optimize.never")
public func miscompile() { ... }

Swift SVN r27475
2015-04-20 05:06:55 +00:00
Nadav Rotem
a225e98076 Update the docs for the new stdlib_binary_only name.
Swift SVN r24451
2015-01-15 19:05:24 +00:00
Nadav Rotem
290b587f09 Docs: mention that the new annotation is related to the resilient proposal.
Swift SVN r24448
2015-01-15 19:05:09 +00:00
Nadav Rotem
c6e77cdc75 Document the new semantics tag to disable copying of code from stdlib
Swift SVN r24401
2015-01-13 23:24:49 +00:00
Erik Eckstein
31dd17a49f Add array.uninitialized semantics to ArrayCallKind, ArraySemanticsCall and the docs.
For completeness. NFC.



Swift SVN r23955
2014-12-16 13:28:18 +00:00
Arnold Schwaighofer
404ce8c599 ArraySemantics: Add support for the upcoming array.props semantic calls
"array.props.isCocoa/needsElementTypeCheck" semantic calls will mark calls that
return array properties: isCocoa and needsElementTypeCheck. We know that said
states can only transfer in certain directions (a native swift array that does
not need an element type check stays in this state) enabling us to version loops
based on the state of said array array properties.

rdar://17955309

Swift SVN r23688
2014-12-04 19:24:39 +00:00
Arnold Schwaighofer
c1eefb1dad Reapply "stdlib: Remove dead semantic Array._setElement function
Also remove helper functions."

With fixes.

Swift SVN r22479
2014-10-02 20:26:32 +00:00
Arnold Schwaighofer
2bd116c20b Revert "stdlib: Remove dead semantic Array._setElement function"
This reverts r22468. Because it breaks the build.

Swift SVN r22469
2014-10-02 18:46:24 +00:00
Arnold Schwaighofer
cfd4a0902d stdlib: Remove dead semantic Array._setElement function
Also remove helper functions.

Swift SVN r22468
2014-10-02 18:44:31 +00:00
Arnold Schwaighofer
b7da429751 Document array.get_element_address in HighLevelSILOptimizations.rst
Swift SVN r22467
2014-10-02 16:33:59 +00:00
Michael Gottesman
d7af8fc6e4 Swift SVN r21670 2014-09-03 06:52:05 +00:00
Roman Levenstein
97014172b7 [sil-combine] String literal concatenation optimization. Constant-fold concatenation of string literals known at compile-time.
Addresses rdar://17033696.

Swift SVN r21526
2014-08-28 11:33:21 +00:00
Nadav Rotem
44444107c9 Remove the docs for @semantics(readonly).
Swift SVN r21089
2014-08-07 07:22:44 +00:00
Nadav Rotem
615da0ecfe Document the new @effects attribute.
Swift SVN r21071
2014-08-06 19:19:12 +00:00
Andrew Trick
f36ff584cf Add array.init semantics.
This way, array optimization can see initialization as a copy of the
whole array value into a local variable, regardless of whether it's
from a factory method or Array initializer.

I'm making an assumption that when we return an Array by value, we
can't have an alias of the array buffer without retaining it.

Swift SVN r20444
2014-07-23 23:25:17 +00:00
Dave Abrahams
71913ae085 [stdlib] Rename @semantics for array bounds checks
There are two kinds of bounds check: valid for subscripting, and valid
as an index.  Rename the semantics accordingly.

Swift SVN r20181
2014-07-18 20:54:26 +00:00
Andrew Trick
c86df0bbde Array semantics docs. Reword a few things and incorporate DaveA feedback.
Swift SVN r19688
2014-07-08 17:29:28 +00:00
Nadav Rotem
0eedfdc53e Rename pure->readonly.
Swift SVN r19676
2014-07-08 03:39:48 +00:00
Nadav Rotem
c8309a3b81 Document the "pure" attribute.
Swift SVN r19657
2014-07-08 00:49:17 +00:00
Andrew Trick
6326182665 More precise semantics on array.check_bounds.
Swift SVN r19526
2014-07-03 20:09:04 +00:00
Andrew Trick
f0f55c04a1 Array docs. Minor wording.
Swift SVN r19516
2014-07-03 16:57:40 +00:00
Andrew Trick
544e316bf5 Explain array.check_bounds semantics.
Swift SVN r19515
2014-07-03 16:54:56 +00:00
Andrew Trick
6df1205130 Documenting the Array semantic model.
Swift SVN r19498
2014-07-03 02:03:23 +00:00
Joe Groff
89c7e773ca Fix rst errors.
Swift SVN r19478
2014-07-02 19:17:39 +00:00
Nadav Rotem
43bff1aa70 Add an example of array bytecode.
Swift SVN r19476
2014-07-02 18:56:32 +00:00
Nadav Rotem
0fe142e2b5 Update the intro section of the doc.
Swift SVN r19475
2014-07-02 18:48:11 +00:00
Nadav Rotem
4c2aa4a60a Document our high-level SIL optimizations using @semantics
Swift SVN r19472
2014-07-02 18:30:44 +00:00