HomePhabricator

More ir guard relaxation cleanup

Authored by swtaarrs.

Description

More ir guard relaxation cleanup

Summary: We were already mostly doing this, but this diff formalizes the fact
that AssertLoc|CheckLoc's typeParam is intersected with the input type of the
local to get the output type of the local. Now that all the Assert ops have
this behavior, we can trivially keep around apparently useless Assert ops that
could become useful after guard relaxation. This allowed me to eliminate the
not-quite-sound TypeConstraint::assertedType logic.

Reviewed By: @ottoni

Differential Revision: D1282956

Details

Committed
Sara GolemonApr 23 2014, 5:51 PM
Parents
rOSHD0bb53f77e458: Track decrefd locals state explicitly.
Branches
Unknown
Tags
Unknown
ChangeId
None

Event Timeline

Sara Golemon <sgolemon@fb.com> committed rOSHDabf5df92ed31: More ir guard relaxation cleanup (authored by swtaarrs).Apr 23 2014, 5:51 PM