diff options
author | Brian Inglis <Brian.Inglis@SystematicSW.ab.ca> | 2020-02-21 14:28:08 -0700 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2020-02-24 11:09:41 +0100 |
commit | 86f9ce97bc4dd8dd14757157ae944c2c678d62a9 (patch) | |
tree | 0d352ab98f78e973fd8dc53b9773123a425bb81f | |
parent | bf33f72d437dc603f13e53946a626e7d3c7836af (diff) | |
download | cygnal-86f9ce97bc4dd8dd14757157ae944c2c678d62a9.tar.gz cygnal-86f9ce97bc4dd8dd14757157ae944c2c678d62a9.tar.bz2 cygnal-86f9ce97bc4dd8dd14757157ae944c2c678d62a9.zip |
fhandler_proc/cpuinfo: support fast short REP MOVSB
Added in Linux 5.6:
Check FSRM and use REP MOVSB for short copies on systems that have it.
>From the Intel Optimization Reference Manual:
3.7.6.1 Fast Short REP MOVSB
Beginning with processors based on Ice Lake Client microarchitecture,
REP MOVSB performance is enhanced with string lengths up to 128 bytes.
Support for fast-short REP MOVSB is indicated by the CPUID feature flag:
CPUID [EAX=7H, ECX=0H).EDX.FAST_SHORT_REP_MOVSB[bit 4] = 1.
There is no change in the REP STOS performance.
-rw-r--r-- | winsup/cygwin/fhandler_proc.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/winsup/cygwin/fhandler_proc.cc b/winsup/cygwin/fhandler_proc.cc index 78a69703d..030ade68a 100644 --- a/winsup/cygwin/fhandler_proc.cc +++ b/winsup/cygwin/fhandler_proc.cc @@ -1346,6 +1346,7 @@ format_proc_cpuinfo (void *, char *&destbuf) ftcprint (features1, 2, "avx512_4vnniw"); /* vec dot prod dw */ ftcprint (features1, 3, "avx512_4fmaps"); /* vec 4 FMA single */ + ftcprint (features1, 4, "fsrm"); /* fast short REP MOVSB */ ftcprint (features1, 8, "avx512_vp2intersect"); /* vec intcpt d/q */ ftcprint (features1, 10, "md_clear"); /* verw clear buf */ ftcprint (features1, 18, "pconfig"); /* platform config */ |