Fix undefined behavior (left shift of negative value) in Hexagon backend.

This bug is reported by UBSan.