CBMC
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
a
c
d
e
f
g
j
l
m
r
t
w
Functions
a
c
d
f
g
r
t
w
Typedefs
Enumerations
Classes
Class List
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
Enumerations
a
b
c
d
e
f
g
i
k
l
m
o
p
r
s
t
u
v
w
Enumerator
a
b
c
d
e
f
h
i
k
l
m
n
o
p
q
r
s
t
u
v
Related Symbols
b
c
d
e
g
i
j
m
n
o
s
t
u
v
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
i
l
m
n
o
p
r
s
t
u
w
y
Typedefs
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
Enumerations
_
a
b
c
d
f
g
i
l
m
p
r
s
t
u
v
w
Enumerator
_
a
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
Macros
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
y
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
Loading...
Searching...
No Matches
x86_assembler.c
Go to the documentation of this file.
1
2
/* FUNCTION: __asm_fnstcw */
3
4
extern
int
__CPROVER_rounding_mode
;
5
6
void
__asm_fnstcw
(
void
*dest)
7
{
8
// the rounding mode is bits 10 and 11 in the control word
9
*(
unsigned
short
*)dest =
__CPROVER_rounding_mode
<< 10;
10
}
6
void
__asm_fnstcw
(
void
*dest) {
…
}
11
12
/* FUNCTION: __asm_fstcw */
13
14
extern
int
__CPROVER_rounding_mode
;
15
16
void
__asm_fstcw
(
void
*dest)
17
{
18
// the rounding mode is bits 10 and 11 in the control word
19
*(
unsigned
short
*)dest =
__CPROVER_rounding_mode
<< 10;
20
}
16
void
__asm_fstcw
(
void
*dest) {
…
}
21
22
/* FUNCTION: __asm_fldcw */
23
24
extern
int
__CPROVER_rounding_mode
;
25
26
void
__asm_fldcw
(
void
*src)
27
{
28
// the rounding mode is bits 10 and 11 in the control word
29
__CPROVER_rounding_mode
= ((*(
const
unsigned
short
*)src) >> 10) & 3;
30
}
26
void
__asm_fldcw
(
void
*src) {
…
}
31
32
/* FUNCTION: __asm_mfence */
33
34
void
__asm_mfence
(
void
)
35
{
36
__CPROVER_fence
(
"WWfence"
,
"RRfence"
,
"RWfence"
,
"WRfence"
);
37
}
34
void
__asm_mfence
(
void
) {
…
}
38
39
/* FUNCTION: __asm_sfence */
40
41
void
__asm_sfence
(
void
)
42
{
43
__CPROVER_fence
(
"WWfence"
,
"RRfence"
,
"RWfence"
,
"WRfence"
);
44
}
41
void
__asm_sfence
(
void
) {
…
}
45
46
/* FUNCTION: __asm_lfence */
47
48
void
__asm_lfence
(
void
)
49
{
50
__CPROVER_fence
(
"WWfence"
,
"RRfence"
,
"RWfence"
,
"WRfence"
);
51
}
48
void
__asm_lfence
(
void
) {
…
}
__CPROVER_fence
void __CPROVER_fence(const char *kind,...)
__asm_fldcw
void __asm_fldcw(void *src)
Definition
x86_assembler.c:26
__asm_fnstcw
void __asm_fnstcw(void *dest)
Definition
x86_assembler.c:6
__asm_mfence
void __asm_mfence(void)
Definition
x86_assembler.c:34
__asm_lfence
void __asm_lfence(void)
Definition
x86_assembler.c:48
__CPROVER_rounding_mode
int __CPROVER_rounding_mode
Definition
x86_assembler.c:14
__asm_sfence
void __asm_sfence(void)
Definition
x86_assembler.c:41
__asm_fstcw
void __asm_fstcw(void *dest)
Definition
x86_assembler.c:16
src
ansi-c
library
x86_assembler.c
Generated by
1.9.8