I want to fetch ACPI's XSDT. Getting the table needs volatile access. Also, the header or the entries may not be well-aligned because the header size is 36 bytes, while the required alignment is 8 bytes. So, I want a function that reads a volatile value from an unaligned address. read_volatile requires a well-aligned address. Rust also provides unaligned_volatile_load, but I don't want to use any nightly features because their behaviors frequently change. Is there a way to do this on stable Rust?