The reinterpret cast to uint32_t to read the little-endian instructions will only work on a little endian system. Use ulittle32_t to always read little-endian (AArch64 instructions are always little endian).
Fixes PR36056: https://bugs.llvm.org/show_bug.cgi?id=36056
An alternative logically equivalent fix is to use read32le into a uint32_t but that is slightly more of a change to the structure of the code. I've uploaded to the PR a prototype fix under https://bugs.llvm.org/attachment.cgi?id=19727 and can use that if you prefer.
Found by Simon Dardis during release candidate testing on a Mips Big Endian system.