ARM VFP support 'flds/fldd' aliases for 'vldr'
authorJim Grosbach <grosbach@apple.com>
Thu, 8 Dec 2011 00:49:29 +0000 (00:49 +0000)
committerJim Grosbach <grosbach@apple.com>
Thu, 8 Dec 2011 00:49:29 +0000 (00:49 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146115 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMInstrVFP.td
lib/Target/ARM/AsmParser/ARMAsmParser.cpp

index e96914bbd7eece037819231aa035b1de80fe44fc..eadf5303456d797217ff3925b6151d0ab21548bf 100644 (file)
@@ -1161,6 +1161,12 @@ def FCONSTS : VFPAI<(outs SPR:$Sd), (ins vfp_f32imm:$imm),
 // Assembler aliases.
 //
 
+// A few mnemnoic aliases for pre-unifixed syntax. We don't guarantee to
+// support them all, but supporting at least some of the basics is
+// good to be friendly.
+def : MnemonicAlias<"flds", "vldr">;
+def : MnemonicAlias<"fldd", "vldr">;
+
 def : VFP2InstAlias<"fmstat${p}", (FMSTAT pred:$p)>;
 
 // VLDR/VSTR accept an optional type suffix.
index 8d02dd651e61dcb757d5238c33ca92516a356470..a1b13483311b75c22a91c520695f296a85ea97c0 100644 (file)
@@ -4235,7 +4235,7 @@ StringRef ARMAsmParser::splitMnemonic(StringRef Mnemonic,
         Mnemonic == "mrs" || Mnemonic == "smmls" || Mnemonic == "vabs" ||
         Mnemonic == "vcls" || Mnemonic == "vmls" || Mnemonic == "vmrs" ||
         Mnemonic == "vnmls" || Mnemonic == "vqabs" || Mnemonic == "vrecps" ||
-        Mnemonic == "vrsqrts" || Mnemonic == "srs" ||
+        Mnemonic == "vrsqrts" || Mnemonic == "srs" || Mnemonic == "flds" ||
         (Mnemonic == "movs" && isThumb()))) {
     Mnemonic = Mnemonic.slice(0, Mnemonic.size() - 1);
     CarrySetting = true;