[llvm-commits] [PATCH] load/store shift fix

Tim Northover t.p.northover at gmail.com
Mon Sep 17 06:23:11 PDT 2012


> It fixes a problem where some load/store instructions had the “register
> shift immediate” operand being disassembled, parsed and printed incorrectly.

You can see examples of this with:

$ echo "ldr r0, [r1, r2, lsr #0]" | bin/llvm-mc -arch=arm

which should be a (non-canonical) alias for "ldr r0, [r1, r2, lsl #0]"
but gets a different encoding. There are also issues around the "ror
#0" ~ rrx case.

With this patch, our exhaustive MC Hammer testing doesn't seem to find
any more problems with this memory-based operand class (excluding the
usual "unpredictable" issues). We're working on the similar case with
arithmetic instructions now.

Tim.




More information about the llvm-commits mailing list