diff options
Diffstat (limited to 'llvm/lib/Target/X86/X86Subtarget.cpp')
-rw-r--r-- | llvm/lib/Target/X86/X86Subtarget.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/llvm/lib/Target/X86/X86Subtarget.cpp b/llvm/lib/Target/X86/X86Subtarget.cpp index 66fea1e688f..1d1a78fb7be 100644 --- a/llvm/lib/Target/X86/X86Subtarget.cpp +++ b/llvm/lib/Target/X86/X86Subtarget.cpp @@ -269,13 +269,14 @@ void X86Subtarget::initSubtargetFeatures(StringRef CPU, StringRef FS) { else if (isTargetDarwin() || isTargetLinux() || isTargetSolaris() || isTargetKFreeBSD() || In64BitMode) stackAlignment = 16; - - // Gather is available since Haswell (AVX2 set). So technically, we can generate Gathers - // on all AVX2 processors. But the overhead on HSW is high. Skylake Client processor has - // faster Gathers than HSW and performance is similar to Skylake Server (AVX-512). - // The specified overhead is relative to the Load operation."2" is the number provided - // by Intel architects, This parameter is used for cost estimation of Gather Op and - // comparison with other alternatives. + + // Gather is available since Haswell (AVX2 set). So technically, we can + // generate Gathers on all AVX2 processors. But the overhead on HSW is high. + // Skylake Client processor has faster Gathers than HSW and performance is + // similar to Skylake Server (AVX-512). The specified overhead is relative to + // the Load operation. "2" is the number provided by Intel architects. This + // parameter is used for cost estimation of Gather Op and comparison with + // other alternatives. if (X86ProcFamily == IntelSkylake || hasAVX512()) GatherOverhead = 2; if (hasAVX512()) |