Enables building drbbdup and its tests on AArchXX.
Adds case comparison, conditional branch, and TLS access code for both AArch64 and ARM. Uses optimizations for comparing small case values; a second scratch register is needed for larger values.
Ports the tests by using OPND_CREATE_ABSMEM (xref #5295). To make these pc-relative case encoding loads work on AArchXX in the presence of AArch64 encoder bugs and to avoid a more-complex interface, drbbdup auto-inserts loading the target address into its scratch register to avoid reachability problems (xref #1834 on having DR do this during mangling).
Avoids storing block translations if there is no dynamic handling, improving robustness and reducing memory usage.
Adds the tests to the passes-under-QEMU list for cross-compilation. Additionally, I tested manually on native ARM and AArch64 machines.
Issue: #4134 (closed), #5295, #1834, #3995