Я такого не видел. В общем виде это к поиску изоморфизмов (например, графа IR), что стоит дорого. А выхлоп от оптимизации наверняка копеечный, ибо кажется, что пар абсолютно идентичных функций мало, особенно после выкидывания тривиальных аксессоров (которые всё равно инлайнятся в подавляющем большинстве случаев). Могу себе представить, что подобное склеивание ведёт к весёлой отладке, когда брейкпоинт в одной функции срабатывает в "другой", когда хотпатч одной функции ведёт к изменению "другой", и т.п. :)
Хуже того, в общем случае задача неразрешима, поскольку связана проблемой останова :)