summaryrefslogtreecommitdiff
path: root/src/common/x64/cpu_detect.h
AgeCommit message (Collapse)Author
2025-01-14Revert incorrect copyright attribution for non-contributed filesZephyron
- In commit b3facaa6bb30cdc39f2b7d632fef1e3bfeee7785, the copyright header was updated to include "Citron Homebrew Project" across multiple files, regardless of whether any contributions were made. - This commit removes the incorrect attribution and reverts the copyright header to its previous state. - Copyright attribution should only be added when meaningful contributions have been made to the file. - This commit ensures proper compliance with copyright standards and maintains correct attribution to the respective contributors. - Special thanks to Tachi for pointing out the need for these corrections and ensuring that proper attribution practices are followed.
2024-12-31core: Update copyright headersZephyron
- Update copyright headers to include Citron Homebrew Project - Add 2025 to copyright years
2024-12-31chore: update project references and add Citron copyrightZephyron
- Replaced all references to the old project name with Citron. - Added Citron copyright information alongside existing notices in all files.
2023-06-28x64: Add detection of monitorx instructionsMorph
monitorx introduces 2 instructions: MONITORX and MWAITX.
2023-03-27x64: cpu_detect: Add detection of waitpkg instructionsMorph
waitpkg introduces 3 instructions, UMONITOR, UMWAIT and TPAUSE.
2022-11-11Add CPU core count to log filesMatías Locatti
2022-07-06common/x64: Use TSC clock rate from CPUID when availableMarshall Mohror
The current method used to estimate the TSC is fairly accurate - within a few kHz - but the exact value can be extracted from CPUID if available.
2022-04-23general: Convert source file copyright comments over to SPDXMorph
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-03-11cpu_detect: Add additional x86 flags and telemetryWunkolo
Adds detection of additional CPU flags to cpu_detect and additions to telemetry output. This is not exhaustive but guided by features that [dynarmic utilizes](https://github.com/merryhime/dynarmic/blob/bcfe377aaa5138af740e90af5be7a7dff7b62a52/src/dynarmic/backend/x64/host_feature.h#L12-L33) as well as features that are currently utilized but not reported to telemetry(invariant_tsc). This is intended to guide future optimizations. AVX512 in particular is broken up into its individual subsets and some other processor features such as [sha](https://en.wikipedia.org/wiki/Intel_SHA_extensions) and [gfni](https://en.wikipedia.org/wiki/AVX-512#GFNI) are added to have some forward-facing data-points. What used to be a single `CPU_Extension_x64_AVX512` telemetry field is also broken up into individual `CPU_Extension_x64_AVX512{F,VL,CD,...}` fields.
2022-03-09cpu_detect: Refactor cpu/manufacturer identificationWunkolo
Set the zero-enum value to Unknown Move the Manufacterer enum into the CPUCaps structure namespace Add "ParseManufacturer" utility-function Fix cpu/brand string buffer sizes(!)
2022-03-09cpu_detect: Compact capability fieldsWunkolo
As this structure gets more explicit, bools can be bitfields and small enums can use smaller types for their span of values.
2020-06-28Merge pull request #3396 from FernandoS27/prometheus-1David
Implement SpinLocks, Fibers and a Host Timer
2020-06-20common/cpu_detect: Add AVX512 detectionMorph
2020-06-18Common: Implement WallClock Interface and implement a native clock for x64Fernando Sahmkow
2020-01-17Remove unused CPU Vendor string and telemtry fieldJames Rowe
The information is duplicated in the brand string and the telemetry field is unused
2015-08-15Common: Cleanup CPU capability detection code.bunnei
2015-08-15Common: Move cpu_detect to x64 directory.bunnei