summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc/Sparc.td
diff options
context:
space:
mode:
authorChris Dewhurst <chris.dewhurst@lero.ie>2016-06-19 11:03:28 +0000
committerChris Dewhurst <chris.dewhurst@lero.ie>2016-06-19 11:03:28 +0000
commit0c1e0026aa4d343e9aba0a79fa5577a10344acf2 (patch)
treea1bc9887aa405adf55b067bc98f63ed6028f658d /llvm/lib/Target/Sparc/Sparc.td
parent990952b6644e79da08c6925bddedff7c3b3ebe8a (diff)
downloadbcm5719-llvm-0c1e0026aa4d343e9aba0a79fa5577a10344acf2.tar.gz
bcm5719-llvm-0c1e0026aa4d343e9aba0a79fa5577a10344acf2.zip
[SPARC] Fixes for hardware errata on LEON processor.
Passes to fix three hardware errata that appear on some LEON processor variants. The instructions FSMULD, FMULS and FDIVS do not work as expected on some LEON processors. This change allows those instructions to be substituted for alternatives instruction sequences that are known to work. These passes only run when selected individually, or as part of a processor defintion. They are not included in general SPARC processor compilations for non-LEON processors or for those LEON processors that do not have these hardware errata. llvm-svn: 273108
Diffstat (limited to 'llvm/lib/Target/Sparc/Sparc.td')
-rw-r--r--llvm/lib/Target/Sparc/Sparc.td2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/Sparc/Sparc.td b/llvm/lib/Target/Sparc/Sparc.td
index 4fb82ff5c74..6ae73125c9e 100644
--- a/llvm/lib/Target/Sparc/Sparc.td
+++ b/llvm/lib/Target/Sparc/Sparc.td
@@ -122,7 +122,7 @@ def : Processor<"leon3", LEON3Itineraries,
// LEON 3 FT (UT699). Provides features for the UT699 processor
// - covers all the erratum fixes for LEON3, but does not support the CASA instruction.
def : Processor<"ut699", LEON3Itineraries,
- [FeatureLeon, InsertNOPLoad]>;
+ [FeatureLeon, InsertNOPLoad, FixFSMULD, ReplaceFMULS, FixAllFDIVSQRT]>;
// LEON3 FT (GR712RC). Provides features for the GR712RC processor.
// - covers all the erratum fixed for LEON3 and support for the CASA instruction.
OpenPOWER on IntegriCloud