Commit Graph

1960 Commits

Author SHA1 Message Date
Joe Groff
668928cc83 Runtime: Handle ErrorType's layout in ExistentialTypeMetadata accessors.
Teach ExistentialTypeMetadata how to project out the value pointer, type metadata, and protocol witness table from ErrorType containers. NFC yet; the dynamic casting and reflection machinery needs further work to correctly handle ErrorType boxes.

Swift SVN r26509
2015-03-25 00:56:16 +00:00
Joe Groff
8571b4f6a9 Runtime: Check for SpecialProtocol::AnyObject instead of strcmp'ing the mangled protocol name.
Swift SVN r26500
2015-03-24 21:48:08 +00:00
Joe Groff
feb5371e27 Runtime: Use ObjC pointer value witness for ErrorType.
Swift SVN r26497
2015-03-24 19:42:08 +00:00
Joe Groff
ef8cc448d0 Runtime: Instantiate existential metadata with special protocol set.
If an existential type for a special protocol (not a composition) is instantiated, carry the special protocol identifier from that protocol to the existential, allowing us to easily recognize existentials with unique runtime characteristics.

Swift SVN r26436
2015-03-23 17:06:22 +00:00
Joe Groff
9ec27cbd62 Runtime: Stub out runtime operations for ErrorType boxes.
Swift SVN r26335
2015-03-19 23:50:06 +00:00
Dmitri Hrybenko
85764fd6aa runtime: fix two bugs in swift_conformsToProtocol on Linux
First, on x86-64 Linux does not reserve lower 2 Gb of the address space,
and a space saving trick in the runtime did not work properly, confusing
pointers and failure generation numbers together.

Second, we ignored protocol conformances inside the executable (only
considered shared libraries).

Swift SVN r25972
2015-03-11 05:54:11 +00:00
Dmitri Hrybenko
e2c43ab2c0 Revert "wip"
This reverts commit r25880, which was done by accident.

Swift SVN r25885
2015-03-09 16:28:40 +00:00
Dmitri Hrybenko
89d1d924bd CMake: unbreak the build on Linux after stdlib reorganization
Runtime should use LINK_LIBRARIES to link to ICU, since it is a static
archive, and we need this link dependency to be propagated to the
libswiftSwiftCore library.  I have no idea why it linked correctly
worked before.

Swift SVN r25881
2015-03-09 10:09:36 +00:00
Dmitri Hrybenko
fbdbcf88aa wip
Swift SVN r25880
2015-03-09 10:09:33 +00:00
Dmitri Hrybenko
350248dae5 Reorganize the directory structure under 'stdlib'
The standard library has grown significantly, and we need a new
directory structure that clearly reflects the role of the APIs, and
allows future growth.

See stdlib/{public,internal,private}/README.txt for more information.

Swift SVN r25876
2015-03-09 05:26:05 +00:00