summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2012-07-06 21:52:04 +0000
committerJim Grosbach <grosbach@apple.com>2012-07-06 21:52:04 +0000
commit09487775d344af7da2b7d367c8ca4cac05d93063 (patch)
tree5d10c3229fc68fcbe09da874b121c6ab87ed2230
parent4106ea3b4e7105e6b9646016916c2048061d00eb (diff)
downloadbcm5719-llvm-09487775d344af7da2b7d367c8ca4cac05d93063.tar.gz
bcm5719-llvm-09487775d344af7da2b7d367c8ca4cac05d93063.zip
ARM: Add test cleanup entry to the README.
llvm-svn: 159864
-rw-r--r--llvm/lib/Target/ARM/README.txt21
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/README.txt b/llvm/lib/Target/ARM/README.txt
index 3eddda812f8..57dc6cb88be 100644
--- a/llvm/lib/Target/ARM/README.txt
+++ b/llvm/lib/Target/ARM/README.txt
@@ -710,3 +710,24 @@ targets, e.g., PPC, that share this behavior, it would be best to implement
this in a target-independent way: we should probably fold that (when using
"undefined at zero" semantics) to set the "defined at zero" bit and have
the code generator expand out the right code.
+
+
+//===---------------------------------------------------------------------===//
+
+Clean up the test/MC/ARM files to have more robust register choices.
+
+R0 should not be used as a register operand in the assembler tests as it's then
+not possible to distinguish between a correct encoding and a missing operand
+encoding, as zero is the default value for the binary encoder.
+e.g.,
+ add r0, r0 // bad
+ add r3, r5 // good
+
+Register operands should be distinct. That is, when the encoding does not
+require two syntactical operands to refer to the same register, two different
+registers should be used in the test so as to catch errors where the
+operands are swapped in the encoding.
+e.g.,
+ subs.w r1, r1, r1 // bad
+ subs.w r1, r2, r3 // good
+
OpenPOWER on IntegriCloud