Decoding: case 0xe60000000035ULL: s390_format_VSI_URDV(s390_irgen_VLRL, VSI_v1(ovl),... case 0xe6000000003dULL: s390_format_VSI_URDV(s390_irgen_VSTRL, VSI_v1(ovl),... With: s390_format_VSI_URDV(const HChar *(*irgen)(UChar v1, IRTemp op2addr, UChar i3), UChar v1, UChar b2, UChar d2, UChar i3, UChar rxb) However, d2 is a 12-bit wide displacement. So it cannot possibly be represented with an UChar. Use UShort instead. Adding a testcase is left as an exercise :) Seriously, this was found with by disasm-test (#498037) which I'm in the process of extending such that it covers all supported vector insns (not just the ones that have extended mnemonics).
Created attachment 177227 [details] vlrl / vstrl fix
Fixed in ec0c87aebf6b56d582b63d873e55a4274b0b6b41