mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-01 00:11:00 +00:00
ARM convenience aliases for VSQRT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146201 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a81ac8f2b5
commit
976c0da213
@ -1168,9 +1168,15 @@ def : MnemonicAlias<"flds", "vldr">;
|
||||
def : MnemonicAlias<"fldd", "vldr">;
|
||||
def : MnemonicAlias<"fmrs", "vmov">;
|
||||
def : MnemonicAlias<"fmsr", "vmov">;
|
||||
def : MnemonicAlias<"fsqrts", "vsqrt">;
|
||||
def : MnemonicAlias<"fsqrtd", "vsqrt">;
|
||||
|
||||
def : VFP2InstAlias<"fmstat${p}", (FMSTAT pred:$p)>;
|
||||
|
||||
// No need for the size suffix on VSQRT. It's implied by the register classes.
|
||||
def : VFP2InstAlias<"vsqrt${p} $Sd, $Sm", (VSQRTS SPR:$Sd, SPR:$Sm, pred:$p)>;
|
||||
def : VFP2InstAlias<"vsqrt${p} $Dd, $Dm", (VSQRTD DPR:$Dd, DPR:$Dm, pred:$p)>;
|
||||
|
||||
// VLDR/VSTR accept an optional type suffix.
|
||||
def : VFP2InstAlias<"vldr${p}.32 $Sd, $addr",
|
||||
(VLDRS SPR:$Sd, addrmode5:$addr, pred:$p)>;
|
||||
|
@ -4296,7 +4296,7 @@ StringRef ARMAsmParser::splitMnemonic(StringRef Mnemonic,
|
||||
Mnemonic == "vcls" || Mnemonic == "vmls" || Mnemonic == "vmrs" ||
|
||||
Mnemonic == "vnmls" || Mnemonic == "vqabs" || Mnemonic == "vrecps" ||
|
||||
Mnemonic == "vrsqrts" || Mnemonic == "srs" || Mnemonic == "flds" ||
|
||||
Mnemonic == "fmrs" ||
|
||||
Mnemonic == "fmrs" || Mnemonic == "fsqrts" ||
|
||||
(Mnemonic == "movs" && isThumb()))) {
|
||||
Mnemonic = Mnemonic.slice(0, Mnemonic.size() - 1);
|
||||
CarrySetting = true;
|
||||
|
Loading…
Reference in New Issue
Block a user