HomePhabricator

IR: Implement Value::mergeUseLists() iteratively

Description

IR: Implement Value::mergeUseLists() iteratively

This avoids stack overflows when the the compiler does not perform tail call
elimination. Apparently this happens for MSVC with the /Ob2 switch which
may be used by external code including this header.

Reported by and based on a patch from Jean-Francois Riendeau.

Related to rdar://21900756

Details

Committed
matzeJul 29 2015, 4:22 PM
Parents
rL243589: [MCJIT] Fix PR20656 by teaching MCJIT to honor ExecutionEngine's global mapping.
Branches
Unknown
Tags
Unknown