more cleanups, notably bitcast isn't used for "signed to unsigned type