OpenOCD
lakemont_core_reg
is only used within OpenOCD.
Symbol previews are coming soon...
Symbols
loading...
Files
loading...
CodeScope
Development Tools
OpenOCD
lakemont_core_reg
lakemont_core_reg struct
Syntax
from
lakemont.h:66
struct
lakemont_core_reg
{
uint32_t
num
;
struct
target
*
target
;
struct
x86_32_common
*
x86_32_common
;
uint64_t
op
;
uint8_t
pm_idx
;
}
;
Fields
num
No summary provided.
Read more...
target
No summary provided.
Read more...
x86_32_common
No summary provided.
Read more...
op
No summary provided.
Read more...
pm_idx
No summary provided.
Read more...
References
Location
Referrer
Scope
Text
lakemont.h:66
struct
lakemont_core_reg
{
lakemont.c:331
lakemont_get_core_reg()
struct
lakemont_core_reg
*
lakemont_reg
=
reg
->
arch_info
;
lakemont.c:342
lakemont_set_core_reg()
struct
lakemont_core_reg
*
lakemont_reg
=
reg
->
arch_info
;
lakemont.c:369
lakemont_build_reg_cache()
struct
lakemont_core_reg
*
arch_info
=
malloc
(
sizeof
(
struct
lakemont_core_reg
)
*
num_regs
)
;
lakemont.c:376
lakemont_build_reg_cache()
free
(
arch_info
)
;
lakemont.c:514
halt_prep()
x86_32
->
pm_regs
[
I
(
EFLAGS
)
]
=
eflags
&
~
(
EFLAGS_VM86
|
EFLAGS_IF
)
;
lakemont.c:515
halt_prep()
if
(
write_hw_reg
(
t
,
EFLAGS
,
x86_32
->
pm_regs
[
I
(
EFLAGS
)
]
,
0
)
!=
ERROR_OK
)
lakemont.c:518
halt_prep()
x86_32
->
pm_regs
[
I
(
EFLAGS
)
]
,
lakemont.c:519
halt_prep()
x86_32
->
pm_regs
[
I
(
EFLAGS
)
]
&
EFLAGS_VM86
?
1
:
0
,
lakemont.c:520
halt_prep()
x86_32
->
pm_regs
[
I
(
EFLAGS
)
]
&
EFLAGS_IF
?
1
:
0
)
;
lakemont.c:525
halt_prep()
x86_32
->
pm_regs
[
I
(
CSAR
)
]
=
csar
&
~
CSAR_DPL
;
lakemont.c:526
halt_prep()
if
(
write_hw_reg
(
t
,
CSAR
,
x86_32
->
pm_regs
[
I
(
CSAR
)
]
,
0
)
!=
ERROR_OK
)
lakemont.c:528
halt_prep()
LOG_DEBUG
(
"write CSAR_CPL to 0 0x%08"
PRIx32
,
x86_32
->
pm_regs
[
I
(
CSAR
)
]
)
;
lakemont.c:531
halt_prep()
x86_32
->
pm_regs
[
I
(
SSAR
)
]
=
ssar
&
~
SSAR_DPL
;
lakemont.c:532
halt_prep()
if
(
write_hw_reg
(
t
,
SSAR
,
x86_32
->
pm_regs
[
I
(
SSAR
)
]
,
0
)
!=
ERROR_OK
)
lakemont.c:534
halt_prep()
LOG_DEBUG
(
"write SSAR_CPL to 0 0x%08"
PRIx32
,
x86_32
->
pm_regs
[
I
(
SSAR
)
]
)
;
lakemont.c:541
halt_prep()
x86_32
->
pm_regs
[
I
(
CR0
)
]
=
cr0
&
~
CR0_PG
;
lakemont.c:542
halt_prep()
if
(
write_hw_reg
(
t
,
CR0
,
x86_32
->
pm_regs
[
I
(
CR0
)
]
,
0
)
!=
ERROR_OK
)
lakemont.c:544
halt_prep()
LOG_DEBUG
(
"cleared paging CR0_PG = 0x%08"
PRIx32
,
x86_32
->
pm_regs
[
I
(
CR0
)
]
)
;
lakemont.c:548
halt_prep()
x86_32
->
pm_regs
[
I
(
CR0
)
]
=
lakemont.c:549
halt_prep()
x86_32
->
pm_regs
[
I
(
CR0
)
]
|
(
CR0_CD
|
CR0_NW
|
CR0_PG
)
;
lakemont.c:550
halt_prep()
if
(
write_hw_reg
(
t
,
CR0
,
x86_32
->
pm_regs
[
I
(
CR0
)
]
,
0
)
!=
ERROR_OK
)
lakemont.c:552
halt_prep()
LOG_DEBUG
(
"set CD, NW and PG, CR0 = 0x%08"
PRIx32
,
x86_32
->
pm_regs
[
I
(
CR0
)
]
)
;
lakemont.c:639
read_hw_reg()
struct
lakemont_core_reg
*
arch_info
;
lakemont.c:673
write_hw_reg()
struct
lakemont_core_reg
*
arch_info
;
lakemont.c:710
is_paging_enabled()
if
(
x86_32
->
pm_regs
[
I
(
CR0
)
]
&
CR0_PG
)
lakemont.c:725
disable_paging()
x86_32
->
pm_regs
[
I
(
CR0
)
]
=
x86_32
->
pm_regs
[
I
(
CR0
)
]
&
~
CR0_PG
;
lakemont.c:726
disable_paging()
int
err
=
x86_32
->
write_hw_reg
(
t
,
CR0
,
x86_32
->
pm_regs
[
I
(
CR0
)
]
,
0
)
;
lakemont.c:737
enable_paging()
x86_32
->
pm_regs
[
I
(
CR0
)
]
=
(
x86_32
->
pm_regs
[
I
(
CR0
)
]
|
CR0_PG
)
;
lakemont.c:738
enable_paging()
int
err
=
x86_32
->
write_hw_reg
(
t
,
CR0
,
x86_32
->
pm_regs
[
I
(
CR0
)
]
,
0
)
;
Type Use
Variables of
lakemont_core_reg
type
lakemont_get_core_reg()
lakemont_get_core_reg()::lakemont_reg
lakemont_set_core_reg()
lakemont_set_core_reg()::lakemont_reg
lakemont_build_reg_cache()
lakemont_build_reg_cache()::arch_info
read_hw_reg()
read_hw_reg()::arch_info
write_hw_reg()
write_hw_reg()::arch_info
all items filtered out
lakemont_core_reg
Allocators of
lakemont_core_reg
Deletors of
lakemont_core_reg
lakemont_build_reg_cache()
all items filtered out
lakemont_core_reg
lakemont_build_reg_cache()
all items filtered out