Make converting a SIL address to a Builtin.RawPointer its own instruction separate from implicit_convert, which will let me get rid of a goofy edge case in IRGenSIL.
Swift SVN r4412
valref.rst is the proposal currently in progress
ValueSemantics.rst is an early description of the problem. We'll
probably want some material from here for introduction in valref.rst
Swift SVN r4396
valref.rst is the proposal currently in progress
ValueSemantics.rst is an early description of the problem. We'll
probably want some material from here for introduction in valref.rst
Swift SVN r4384
We want to port CallEmission to the SIL level to handle uncurrying, but IRGen needs to have the original signature of a function available to it so that it can maintain the correct calling convention for different ABIs independent of SIL. Instead of flattening curried function types in SIL and losing that information, add an uncurryLevel to SILType so it can represent the type of an entry point at a given uncurry level. Unfortunately, this makes SILType outgrow a single word, so the way Value unions SILType and SILTypeList folding sets needs to be tweaked too.
Swift SVN r4345
This is more in line with how IRGen currently behaves and with how loadable values are passed, and will make optimization of address-only functions easier.
Swift SVN r4343
We need 'class_method' and 'super_method' to represent dynamic dispatch on class methods. We also need 'class_metatype' and 'existential_metatype' to obtain the runtime metatypes of class instances and existential containers.
Swift SVN r4321
zero_addr^Winitialize_var is a thing that should be magicked away either by turning subsequent assignments into initializations or by becoming a default constructor call. I don't think we need zero_value because 'initialize' pseudo-values should always originate from memory locations.
Swift SVN r4318
For example, this allows:
var window = new NSWindow.(initWithContentRect:NSRect(100, 100, 800, 630)
styleMask:Int(NSTitledWindowMask|NSClosableWindowMask|NSResizableWindowMask)
backing:NSBackingStoreType(NSBackingStoreBuffered)
defer:false)
Swift SVN r4315
Introduce a second syntax for method calls that better describes
messages with multiple selector pieces, e.g.,
undoManager.(registerUndoWithTarget:this
selector:"setItemName:"
object:nameSetter)
Note that we're also allowing ':' as a separator for normal keyword
arguments. The intent is to drop the use of '=' for normal keyword
arguments, but that will be a separate change affecting a number of
test cases.
Swift SVN r4313
The production for 'nominal-type' is not an 'entity' because the type of the type is not redundantly mangled as part of the name. Our mangling can't represent nested modules yet, so update the substitutions example to talk about nested classes instead. Move the docs for known-module and known-nominal-type together with that for substitutions because they are essentially special-case substitutions.
Swift SVN r4094