Certainly introducing a breaking change in the backup world is the worst kind of pain. If backup is broken, that leads to all kinds of user hurt.
#ifdef _x86_
// synchronous file handles only, please
BackupRead(...);
BackupWrite(...);
#endif
// works with asynchronous file handles
// (and synchronous ones too, of course)
BackupRead2(...);
BackupWrite2(...);