There are no values other than instructions that can use other values. BBArguments are
defs, not uses. This eliminates a bunch of casts in clients that use getUser().
Swift SVN r9701
Most alloc_stacks emitted by SILGen are temporaries and don't need to be preserved for debug info. It's only the ones that relate to local variables that we need to preserve. Fixes <rdar://problem/15272642>.
Swift SVN r9543
This will allow us to differentiate from regular inlined code (as in optimization inlining). Some passes(AllocBocToStack) and debug info would be allowed to be more aggressive/preserve less debug info with mandatory inlined code.
Swift SVN r9339
have it remove trivially dead operands of the dead instructions. On the
same testcase as last time, this eliminates a dead metatype, getting us to:
sil @_T1t1fFT_T_ : $@thin () -> () {
bb0:
%0 = tuple ()
%1 = alloc_stack $Int64 // var a // users: %7, %6
%2 = metatype $Int64.metatype
%3 = module #Builtin
%4 = integer_literal $Builtin.Int64, 1 // user: %5
%5 = struct $Int64 (%4 : $Builtin.Int64) // user: %6
store %5 to %1#1 : $*Int64
dealloc_stack %1#0 : $*@local_storage Int64
%8 = tuple () // user: %9
return %8 : $()
}
Swift SVN r9306
Make ApplyInst and PartialApplyInst directly take substitutions for generic functions instead of trying to stage out substitutions separately. The legacy reasons for doing this are gone.
Swift SVN r8747
This is was a very mechanical patch where I basically first renamed SILNodes.def
and then just kept fixing things until everything compiled, so even though it is
large patch I feel ok(ish) with committing it.
If anyone has any concerns/etc, please email me and I will revert in 1 second.
Swift SVN r7604