Нет проблем с битовыми полями, превышающими 64 бита. Они могут быть даже намного больше, чем у вас!
Проблема, которую я вижу, заключается в том, что вы обращаетесь к членам, которые пересекают 32-битную границу. Это больше проблема. Но, честно говоря, на 64-битных платформах, если вы используете long long
для создания типов битовых полей, вам нужно быть осторожным только на 64-битных границах.
Если ваша мотивация - сделать ваш доступ "как можно быстрее", подумайте дважды, прежде чем пытаться быть умнее компилятора. В настоящее время они могут оптимизировать, о чем вы даже не подозреваете. Моя лучшая рекомендация: держать код легко читаемым и понятным.