Adds XRay support for RISCV. Currently, only RISCV64 has been tested. Changes required to add support for RISCV32 are present, but are commented out.
The modifications (as in the case of RISCVAsmPrinter) were made with the intention of making as few changes/touching as few files as possible to reduce the possibility of breaking any other functionality.
The double precision floating point extension was assumed to be part of the ISA while designing the trampolines (and this has been enforced in the Subtarget file). This implementation currently does not support compressed instructions.
Does that actually only comment out RISCV32? Phabricator's syntax highlighting thinks not, but it could just be overly simplistic.