Add more unimplemented asm modifiers and some documentation of what they
do.

Part of rdar://9119939.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132015 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/ARM/ARMAsmPrinter.cpp b/lib/Target/ARM/ARMAsmPrinter.cpp
index 680680b..ac61c03 100644
--- a/lib/Target/ARM/ARMAsmPrinter.cpp
+++ b/lib/Target/ARM/ARMAsmPrinter.cpp
@@ -416,9 +416,19 @@
         return false;
       }
       // Fallthrough to unsupported.
-    case 'Q':
-    case 'R':
-    case 'H':
+    case 'B': // Bitwise inverse of integer or symbol without a preceding #.
+    case 'L': // The low 16 bits of an immediate constant.
+    case 'm': // The base register of a memory operand.
+    case 'M': // A register range suitable for LDM/STM.
+    case 'p': // The high single-precision register of a VFP double-precision
+              // register.
+    case 'e': // The low doubleword register of a NEON quad register.
+    case 'f': // The high doubleword register of a NEON quad register.
+    case 'h': // A range of VFP/NEON registers suitable for VLD1/VST1.
+    case 'A': // A memory operand for a VLD1/VST1 instruction.
+    case 'Q': // The least significant register of a pair.
+    case 'R': // The most significant register of a pair.
+    case 'H': // The highest-numbered register of a pair.
       // These modifiers are not yet supported.
       return true;
     }