Mark Lacey
b98f1cd51b
Create a thinner coupling between devirtualization functions.
...
Redefine DevirtClassMethodInfo to carry fewer values in an effort to
reduce the coupling between these functions. Long term I expect this
structure to go away, but that is difficult to do without more
refactoring.
Swift SVN r26034
2015-03-12 05:09:47 +00:00
Mark Lacey
3b3dda5b51
Remove stale comment.
...
Determination of whether we can devirtualize was moved into a separate function.
Swift SVN r26026
2015-03-12 03:06:56 +00:00
Mark Lacey
838fdfe9ba
Refactor to make the common case an early exit.
...
Having the same return type in an overridden class method is the common
case, so put that first, make it an early exit, removing the deeper
indentation on the less common case of different return types.
Swift SVN r26025
2015-03-12 03:06:55 +00:00
Mark Lacey
3bf752f211
Remove an obsolete parameter comment.
...
Swift SVN r26024
2015-03-12 03:06:54 +00:00
Mark Lacey
76eb2501b2
Shorten a \brief comment so that it is more to the point.
...
Swift SVN r26023
2015-03-12 03:06:53 +00:00
Mark Lacey
e917ec232b
Small clean-up to reuse SILModule result.
...
Swift SVN r25918
2015-03-10 06:19:28 +00:00
Mark Lacey
742b7a6509
Move early exit earlier and bail out as soon as we have enough information.
...
Swift SVN r25917
2015-03-10 06:19:27 +00:00
Mark Lacey
1f521ef971
Fix coding style issue.
...
Swift SVN r25800
2015-03-06 06:56:57 +00:00
Mark Lacey
c26c15cc9f
Don't pass arguments that can be easily derived from other arguments.
...
Swift SVN r25799
2015-03-06 06:56:56 +00:00
Mark Lacey
c1ae6372b0
Move updates to the DevirtClassMethodInfo parameter to the of the function.
...
Only update the structure once we've determined we can devirtualize.
NFC.
Swift SVN r25794
2015-03-06 00:54:49 +00:00
Mark Lacey
b72e453ec2
Separate collecting substitutions in devirtualization.
...
This is a separate step worthy of its own function.
NFC.
Swift SVN r25793
2015-03-06 00:54:47 +00:00
Mark Lacey
dcf433298d
Simplify determination of substitutions in devirtualization.
...
Swift SVN r25792
2015-03-05 23:19:36 +00:00
Mark Lacey
40ffcc0148
Small refactoring clean-up.
...
Separate finding the superclass from determining substiutions.
NFC.
Swift SVN r25789
2015-03-05 22:22:34 +00:00
Mark Lacey
b76ad3a806
Small simplification to check for null type.
...
Swift SVN r25788
2015-03-05 22:22:33 +00:00
Mark Lacey
fcb313bbc9
Remove code that has no effect.
...
Swift SVN r25787
2015-03-05 22:22:31 +00:00
Mark Lacey
757ae5796e
First step in splitting out a utility for devirtualizing from the pass.
...
No functional change here, and this is not in its final form. This is
just cut/paste/tweak to split the code apart in a first reasonable form.
Swift SVN r25769
2015-03-04 22:21:38 +00:00