D109750 was created to improve performance by avoiding the expense of eraseFromParentAndMarkDBGValuesForRemoval for instructions that are known to not be emitted by IR translation. However, this does not account for call lowering which is indirectly invoked by IR translation. Call lowering has reachability of G_UNMERGE_VALUES, G_MERGE_VALUES, G_CONCAT_VECTORS, and G_BUILD_VECTOR so these should be removed from this exclusion test.
Compiling a function with an argument wider than the native machine types results in G_MERGE_VALUES which is used by DBG_VALUE. This trivial case on i386 causes a validation failure post-legalization:
int test_dbg_trunc(unsigned long long a) { return a; }