bfvmm
include
intrinsics
rdtsc_x64.h
Go to the documentation of this file.
1
//
2
// Bareflank Hypervisor
3
//
4
// Copyright (C) 2015 Assured Information Security, Inc.
5
// Author: Rian Quinn <quinnr@ainfosec.com>
6
// Author: Brendan Kerrigan <kerriganb@ainfosec.com>
7
//
8
// This library is free software; you can redistribute it and/or
9
// modify it under the terms of the GNU Lesser General Public
10
// License as published by the Free Software Foundation; either
11
// version 2.1 of the License, or (at your option) any later version.
12
//
13
// This library is distributed in the hope that it will be useful,
14
// but WITHOUT ANY WARRANTY; without even the implied warranty of
15
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
// Lesser General Public License for more details.
17
//
18
// You should have received a copy of the GNU Lesser General Public
19
// License along with this library; if not, write to the Free Software
20
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21
22
#ifndef RDTSC_X64_H
23
#define RDTSC_X64_H
24
25
extern
"C"
uint64_t
__read_tsc
(
void
)
noexcept
;
26
extern
"C"
uint64_t
__read_tscp
(
void
)
noexcept
;
27
28
// *INDENT-OFF*
29
30
namespace
x64
31
{
32
33
namespace
read_tsc
34
{
35
using
value_type
= uint64_t;
36
37
inline
auto
get
()
noexcept
38
{
return
__read_tsc
(); }
39
}
40
41
namespace
read_tscp
42
{
43
using
value_type
= uint64_t;
44
45
inline
auto
get
()
noexcept
46
{
return
__read_tscp
(); }
47
}
48
49
}
50
51
// *INDENT-ON*
52
53
#endif
x64::read_tsc::value_type
uint64_t value_type
Definition:
rdtsc_x64.h:35
__read_tscp
uint64_t __read_tscp(void) noexcept
Definition:
test_rdtsc_x64.cpp:35
x64::read_tscp::value_type
uint64_t value_type
Definition:
rdtsc_x64.h:43
noexcept
void uint64_t uint64_t uint64_t *rdx noexcept
Definition:
cpuid_x64_mock.cpp:58
__read_tsc
uint64_t __read_tsc(void) noexcept
Definition:
test_rdtsc_x64.cpp:31
x64
Definition:
cache_x64.h:31
Generated on Fri Apr 28 2017 22:11:38 by
1.8.14