mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-01 05:01:59 +01:00
[LAA] Rename forwarding conflict detection option (NFC)
This patch renames the option enabling the store-to-load forwarding conflict detection optimization. This change was requested in the review of D20241. llvm-svn: 269668
This commit is contained in:
parent
cf01c06f21
commit
843e321f23
@ -65,10 +65,10 @@ static cl::opt<unsigned>
|
||||
"loop-access analysis (default = 100)"),
|
||||
cl::init(100));
|
||||
|
||||
/// \brief Enable the conflict detection optimization. This option can be
|
||||
/// disabled for correctness testing.
|
||||
static cl::opt<bool> EnableConflictDetection(
|
||||
"enable-conflict-detection", cl::Hidden,
|
||||
/// \brief Enable store-to-load forwarding conflict detection. This option can
|
||||
/// be disabled for correctness testing.
|
||||
static cl::opt<bool> EnableForwardingConflictDetection(
|
||||
"store-to-load-forwarding-conflict-detection", cl::Hidden,
|
||||
cl::desc("Enable conflict detection in loop-access analysis"),
|
||||
cl::init(true));
|
||||
|
||||
@ -1216,7 +1216,7 @@ MemoryDepChecker::isDependent(const MemAccessInfo &A, unsigned AIdx,
|
||||
const APInt &Val = C->getAPInt();
|
||||
if (Val.isNegative()) {
|
||||
bool IsTrueDataDependence = (AIsWrite && !BIsWrite);
|
||||
if (IsTrueDataDependence && EnableConflictDetection &&
|
||||
if (IsTrueDataDependence && EnableForwardingConflictDetection &&
|
||||
(couldPreventStoreLoadForward(Val.abs().getZExtValue(), TypeByteSize) ||
|
||||
ATy != BTy)) {
|
||||
DEBUG(dbgs() << "LAA: Forward but may prevent st->ld forwarding\n");
|
||||
@ -1322,7 +1322,7 @@ MemoryDepChecker::isDependent(const MemAccessInfo &A, unsigned AIdx,
|
||||
Distance < MaxSafeDepDistBytes ? Distance : MaxSafeDepDistBytes;
|
||||
|
||||
bool IsTrueDataDependence = (!AIsWrite && BIsWrite);
|
||||
if (IsTrueDataDependence && EnableConflictDetection &&
|
||||
if (IsTrueDataDependence && EnableForwardingConflictDetection &&
|
||||
couldPreventStoreLoadForward(Distance, TypeByteSize))
|
||||
return Dependence::BackwardVectorizableButPreventsForwarding;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt < %s -force-vector-interleave=1 -enable-conflict-detection=false -loop-vectorize -dce -instcombine -S | FileCheck %s
|
||||
; RUN: opt < %s -force-vector-interleave=1 -store-to-load-forwarding-conflict-detection=false -loop-vectorize -dce -instcombine -S | FileCheck %s
|
||||
|
||||
target datalayout = "e-m:e-i64:64-i128:128-n32:64-S128"
|
||||
target triple = "aarch64--linux-gnu"
|
||||
|
Loading…
x
Reference in New Issue
Block a user