LibreOffice Module tools (master) 1
Classes | Namespaces | Enumerations | Functions
cpuid.hxx File Reference
#include <sal/config.h>
#include <tools/toolsdllapi.h>
#include <o3tl/typed_flags_set.hxx>
#include <rtl/ustring.hxx>
Include dependency graph for cpuid.hxx:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  o3tl::typed_flags< cpuid::InstructionSetFlags >
 

Namespaces

namespace  cpuid
 
namespace  o3tl
 

Enumerations

enum class  cpuid::InstructionSetFlags {
  cpuid::NONE = 0x00 ,
  cpuid::HYPER = 0x01 ,
  cpuid::SSE2 = 0x02 ,
  cpuid::SSSE3 = 0x04 ,
  cpuid::SSE41 = 0x08 ,
  cpuid::SSE42 = 0x10 ,
  cpuid::AVX = 0x20 ,
  cpuid::AVX2 = 0x40 ,
  cpuid::AVX512F = 0x80
}
 

Functions

InstructionSetFlags cpuid::getCpuInstructionSetFlags ()
 Get supported instruction set flags determined at runtime by probing the CPU. More...
 
bool cpuid::isCpuInstructionSetSupported (InstructionSetFlags eInstructions)
 Check if a certain instruction set is supported by the CPU at runtime. More...
 
OUString cpuid::instructionSetSupportedString ()
 Returns a string of supported instructions. More...
 
bool cpuid::hasSSE2 ()
 Check if SSE2 is supported by the CPU. More...
 
bool cpuid::hasSSSE3 ()
 Check if SSSE3 is supported by the CPU. More...
 
bool cpuid::hasAVX ()
 Check if AVX is supported by the CPU. More...
 
bool cpuid::hasAVX2 ()
 Check if AVX2 is supported by the CPU. More...
 
bool cpuid::hasAVX512F ()
 Check if AVX512F is supported by the CPU. More...
 
bool cpuid::hasHyperThreading ()
 Check if Hyper Threading is supported. More...