optimize (x>>c)<<c