SCEV-based salvaging in LSR translates SCEVs to DIExpressions. SCEVs may
contain very large integers but the translation does not support >64-bit
integers. This patch adds checks to ensure conversions of these large
integers are not attempted.
A regression test, using the repro provided by @JosephTremoulet has also
been added to ensure no such translation is attempted.
Is there a reason the dbg.value in this test uses undef? It looks like a test that logically shouldn't trigger any salvaging behaviour, and probably a bug that needs fixing if the test does work. If this is intended behaviour in some way, it could probably do with a comment at least.