[MergeFunctions] Merge small functions if possible without a thunk.

Description

[MergeFunctions] Merge small functions if possible without a thunk.

This can result in significant code size savings in some cases,
e.g. an interrupt table all filled with the same assembly stub
in a certain Cortex-M BSP results in code blowup by a factor of 2.5.

Differential Revision: https://reviews.llvm.org/D34806