mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-02 07:17:36 +00:00
[ARM64] Add RUN lines for "–target arm64 –mattr=-fp-armv8" on AArch64 no-fp test.
This patch is a supplement of implementing predicate of FP, enabling aarch64 backend no-fp tests on arm64 target for verification. During this, one bug is exposed and fixed by this patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207215 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -5812,12 +5812,12 @@ EVT ARM64TargetLowering::getOptimalMemOpType(uint64_t Size, unsigned DstAlign,
|
||||
// addressing mode). Just do two i64 store of zero-registers.
|
||||
bool Fast;
|
||||
const Function *F = MF.getFunction();
|
||||
if (!IsMemset && Size >= 16 &&
|
||||
if (Subtarget->hasFPARMv8() && !IsMemset && Size >= 16 &&
|
||||
!F->getAttributes().hasAttribute(AttributeSet::FunctionIndex,
|
||||
Attribute::NoImplicitFloat) &&
|
||||
(memOpAlign(SrcAlign, DstAlign, 16) ||
|
||||
(allowsUnalignedMemoryAccesses(MVT::v2i64, 0, &Fast) && Fast)))
|
||||
return MVT::v2i64;
|
||||
(allowsUnalignedMemoryAccesses(MVT::f128, 0, &Fast) && Fast)))
|
||||
return MVT::f128;
|
||||
|
||||
return Size >= 8 ? MVT::i64 : MVT::i32;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user