[PATCH] Fix ARM encoding constraints for Q register fields and VSTn instructions
Mihail Popa
mihail.popa at arm.com
Tue May 14 02:38:58 PDT 2013
Hello.
Kindly review the attached patch. It fixes two ARM disassembler issues:
1. Q registers are encoded in fields of the same length as D registers.
As Q registers are half as many, the ARM reference manual mandates the
least significant bit to be zeroed out. Failure to do so should result
in an undefined instruction. With this change
test/MC/Disassembler/ARM/invalid-VQADD-arm.txt is passing (removed XFAIL).
2. VSTn instructions have a number of encoding constraints which are not
implemented. I have added these using wrapper methods around the
original custom decoder (incidentally - this is a huge poorly written
method that should be cleaned up. I have left it as is since the changes
would be much to hard to review).
Regards,
Mihai
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130514/85262d11/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: LLVM-731.vstq.patch
Type: text/x-patch
Size: 14567 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130514/85262d11/attachment.bin>
More information about the llvm-commits
mailing list