summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86Subtarget.h
diff options
context:
space:
mode:
authorClement Courbet <courbet@google.com>2019-03-28 14:12:46 +0000
committerClement Courbet <courbet@google.com>2019-03-28 14:12:46 +0000
commit699dc025a62589cfd8f2c9d2c64b4297f2dedb88 (patch)
tree4ea56b5913bc50ce5615c3ea83df10a3ed0834b1 /llvm/lib/Target/X86/X86Subtarget.h
parenta353fd572abbbf00f5ccd496bc2571fb23c517e3 (diff)
downloadbcm5719-llvm-699dc025a62589cfd8f2c9d2c64b4297f2dedb88.tar.gz
bcm5719-llvm-699dc025a62589cfd8f2c9d2c64b4297f2dedb88.zip
[X86MacroFusion] Handle branch fusion (AMD CPUs).
Summary: This adds a BranchFusion feature to replace the usage of the MacroFusion for AMD CPUs. See D59688 for context. Reviewers: andreadb, lebedev.ri Subscribers: hiraditya, jdoerfert, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D59872 llvm-svn: 357171
Diffstat (limited to 'llvm/lib/Target/X86/X86Subtarget.h')
-rw-r--r--llvm/lib/Target/X86/X86Subtarget.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86Subtarget.h b/llvm/lib/Target/X86/X86Subtarget.h
index 8d330fa6f9a..2bd36d42c5c 100644
--- a/llvm/lib/Target/X86/X86Subtarget.h
+++ b/llvm/lib/Target/X86/X86Subtarget.h
@@ -297,6 +297,9 @@ protected:
/// True if the processor supports macrofusion.
bool HasMacroFusion = false;
+ /// True if the processor supports branch fusion.
+ bool HasBranchFusion = false;
+
/// True if the processor has enhanced REP MOVSB/STOSB.
bool HasERMSB = false;
@@ -642,6 +645,7 @@ public:
bool hasFastBEXTR() const { return HasFastBEXTR; }
bool hasFastHorizontalOps() const { return HasFastHorizontalOps; }
bool hasMacroFusion() const { return HasMacroFusion; }
+ bool hasBranchFusion() const { return HasBranchFusion; }
bool hasERMSB() const { return HasERMSB; }
bool hasSlowDivide32() const { return HasSlowDivide32; }
bool hasSlowDivide64() const { return HasSlowDivide64; }
OpenPOWER on IntegriCloud