Commit Graph

11 Commits

Author SHA1 Message Date
Chris Lattner
a3836f430d Fix -enable-copyaddr-forwarding to properly extract out the result of a large
aggregate store to forward to a smaller load, e.g. to feed a copyaddr of an 
Int to a load of the Builtin.Int64 inside of it.



Swift SVN r9166
2013-10-10 20:14:42 +00:00
Chris Lattner
1284eacd3d The Uses vector can grow now, ElementPromotion::doIt shouldn't iterate over
it with a for-each loop.



Swift SVN r9165
2013-10-10 20:00:12 +00:00
Joe Groff
29066ca358 SIL: Make consistent use of element-type-deriving createStruct/TupleExtract helpers in DefiniteInitialization.
Swift SVN r9139
2013-10-10 15:34:20 +00:00
Joe Groff
5650130518 SIL: Substitute struct field types when creating struct ops in passes.
The AST type of the VarDecl is incorrect for bound generic structs and needs to be substituted.

Swift SVN r9130
2013-10-10 04:35:57 +00:00
Chris Lattner
75b4fcd5ac Progress towards having memory promotion explode copy_addrs when necessary to
feed loads.  The new behavior is currently only enabled by the 
-enable-copyaddr-forwarding flag and is known broken, I'm working on it!


Swift SVN r9121
2013-10-10 00:56:28 +00:00
John McCall
b880e60100 Remove SILFunctionTypeInfo in favor of SILFunctionType.
We still don't actually use this as a type, however.

Swift SVN r9091
2013-10-09 20:55:55 +00:00
Chris Lattner
bbaa07125d refactor the checkLoadAccessPathAndComputeValue to be a method
on ElementPromotion, preparing it for future changes.  No functionality
change.


Swift SVN r9070
2013-10-09 18:17:55 +00:00
Chris Lattner
d6b01a42ad add a new (skeleton) pass for deshadowing inout variables.
Swift SVN r8954
2013-10-07 15:53:40 +00:00
Stephen Lin
3f5c0dbf0e Update SILArgument::getModule(), SILBasicBlock::getModule() and SILInstruction::getModule() signatures to match SILFunction::getModule(), for consistency; standardize usage of SILFunction::getParent() to SILFunction::getModule().
Swift SVN r8932
2013-10-04 21:12:20 +00:00
Chris Lattner
767da738bb Change the command line option to sil-opt for the definite initialization
pass to be -definite-init instead of -memory-promotion, rename the
entrypoint for the pass to match, and tidy various and sundry comments.


Swift SVN r8927
2013-10-04 18:45:09 +00:00
Chris Lattner
6b6887b2e0 rename MemoryPromotion.cpp -> DefiniteInitialization.cpp.
Promotion isn't really its purpose, it just happens to do that sometimes.



Swift SVN r8925
2013-10-04 18:39:34 +00:00