The __truncdfhf2 handling is kind of convoluted, but reproduces the existing, likely wrong, handling.