Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
a2d10bc2
Commit
a2d10bc2
authored
May 02, 2011
by
André Hentschel
Committed by
Alexandre Julliard
May 03, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winedbg: Implement printing the Program Status Register.
parent
423a447f
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
28 additions
and
2 deletions
+28
-2
be_arm.c
programs/winedbg/be_arm.c
+28
-2
No files found.
programs/winedbg/be_arm.c
View file @
a2d10bc2
...
...
@@ -57,9 +57,35 @@ static void be_arm_single_step(CONTEXT* ctx, unsigned enable)
static
void
be_arm_print_context
(
HANDLE
hThread
,
const
CONTEXT
*
ctx
,
int
all_regs
)
{
static
const
char
condflags
[]
=
"NZCV"
;
int
i
;
char
buf
[
8
];
switch
(
ctx
->
Cpsr
&
0x1F
)
{
case
0
:
strcpy
(
buf
,
"User26"
);
break
;
case
1
:
strcpy
(
buf
,
"FIQ26"
);
break
;
case
2
:
strcpy
(
buf
,
"IRQ26"
);
break
;
case
3
:
strcpy
(
buf
,
"SVC26"
);
break
;
case
16
:
strcpy
(
buf
,
"User"
);
break
;
case
17
:
strcpy
(
buf
,
"FIQ"
);
break
;
case
18
:
strcpy
(
buf
,
"IRQ"
);
break
;
case
19
:
strcpy
(
buf
,
"SVC"
);
break
;
case
23
:
strcpy
(
buf
,
"ABT"
);
break
;
case
27
:
strcpy
(
buf
,
"UND"
);
break
;
default:
strcpy
(
buf
,
"UNKNWN"
);
break
;
}
dbg_printf
(
"Register dump:
\n
"
);
dbg_printf
(
" Pc:%04x Sp:%04x Lr:%04x Cpsr:%04x
\n
"
,
ctx
->
Pc
,
ctx
->
Sp
,
ctx
->
Lr
,
ctx
->
Cpsr
);
dbg_printf
(
"%s %s Mode
\n
"
,
(
ctx
->
Cpsr
&
0x20
)
?
"Thumb"
:
"ARM"
,
buf
);
strcpy
(
buf
,
condflags
);
for
(
i
=
0
;
buf
[
i
];
i
++
)
if
(
!
((
ctx
->
Cpsr
>>
26
)
&
(
1
<<
(
sizeof
(
condflags
)
-
i
))))
buf
[
i
]
=
'-'
;
dbg_printf
(
" Pc:%04x Sp:%04x Lr:%04x Cpsr:%04x(%s)
\n
"
,
ctx
->
Pc
,
ctx
->
Sp
,
ctx
->
Lr
,
ctx
->
Cpsr
,
buf
);
dbg_printf
(
" r0:%04x r1:%04x r2:%04x r3:%04x
\n
"
,
ctx
->
R0
,
ctx
->
R1
,
ctx
->
R2
,
ctx
->
R3
);
dbg_printf
(
" r4:%04x r5:%04x r6:%04x r7:%04x r8:%04x
\n
"
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment