The VMLA instruction and its friends are not actually fused; they're plain old

multiply-accumulate instructions with separate rounding steps.

llvm-svn: 134609
This commit is contained in:
Cameron Zwarich 2011-07-07 08:28:52 +00:00
parent f2c2616e72
commit 148220306f
2 changed files with 2 additions and 2 deletions

View File

@ -654,7 +654,7 @@ void ARMAsmPrinter::emitAttributes() {
} }
/* TODO: ARMBuildAttrs::Allowed is not completely accurate, /* TODO: ARMBuildAttrs::Allowed is not completely accurate,
* since NEON can have 1 (allowed) or 2 (fused MAC operations) */ * since NEON can have 1 (allowed) or 2 (MAC operations) */
if (Subtarget->hasNEON()) { if (Subtarget->hasNEON()) {
AttrEmitter->EmitAttribute(ARMBuildAttrs::Advanced_SIMD_arch, AttrEmitter->EmitAttribute(ARMBuildAttrs::Advanced_SIMD_arch,
ARMBuildAttrs::Allowed); ARMBuildAttrs::Allowed);

View File

@ -873,7 +873,7 @@ def VULTOD : AVConv1XI<0b11101, 0b11, 0b1011, 0b1011, 1,
} // End of 'let Constraints = "$a = $dst", isCodeGenOnly = 1 in' } // End of 'let Constraints = "$a = $dst", isCodeGenOnly = 1 in'
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
// FP FMA Operations. // FP Multiply-Accumulate Operations.
// //
def VMLAD : ADbI<0b11100, 0b00, 0, 0, def VMLAD : ADbI<0b11100, 0b00, 0, 0,