Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
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-winehq
Commits
5b4e192a
Commit
5b4e192a
authored
Jan 29, 2011
by
Eric Pouech
Committed by
Alexandre Julliard
Jan 31, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winedump: Added definition and dumping of thread local variables.
parent
321e4c0e
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
55 additions
and
0 deletions
+55
-0
mscvpdb.h
include/wine/mscvpdb.h
+32
-0
msc.c
tools/winedump/msc.c
+23
-0
No files found.
include/wine/mscvpdb.h
View file @
5b4e192a
...
@@ -1554,6 +1554,36 @@ union codeview_symbol
...
@@ -1554,6 +1554,36 @@ union codeview_symbol
short
int
id
;
short
int
id
;
unsigned
int
offset
;
unsigned
int
offset
;
unsigned
short
segment
;
unsigned
short
segment
;
unsigned
short
symtype
;
struct
p_string
p_name
;
}
thread_v1
;
struct
{
short
int
len
;
short
int
id
;
unsigned
int
symtype
;
unsigned
int
offset
;
unsigned
short
segment
;
struct
p_string
p_name
;
}
thread_v2
;
struct
{
short
int
len
;
short
int
id
;
unsigned
int
symtype
;
unsigned
int
offset
;
unsigned
short
segment
;
char
name
[
1
];
}
thread_v3
;
struct
{
short
int
len
;
short
int
id
;
unsigned
int
offset
;
unsigned
short
segment
;
}
ssearch_v1
;
}
ssearch_v1
;
struct
struct
...
@@ -1646,6 +1676,8 @@ union codeview_symbol
...
@@ -1646,6 +1676,8 @@ union codeview_symbol
#define S_LPROC_V3 0x110F
#define S_LPROC_V3 0x110F
#define S_GPROC_V3 0x1110
#define S_GPROC_V3 0x1110
#define S_REGREL_V3 0x1111
#define S_REGREL_V3 0x1111
#define S_LTHREAD_V3 0x1112
#define S_GTHREAD_V3 0x1113
#define S_MSTOOL_V3 0x1116
/* compiler command line options and build information */
#define S_MSTOOL_V3 0x1116
/* compiler command line options and build information */
#define S_PUB_FUNC1_V3 0x1125
/* didn't get the difference between the two */
#define S_PUB_FUNC1_V3 0x1125
/* didn't get the difference between the two */
#define S_PUB_FUNC2_V3 0x1127
#define S_PUB_FUNC2_V3 0x1127
...
...
tools/winedump/msc.c
View file @
5b4e192a
...
@@ -1352,6 +1352,29 @@ int codeview_dump_symbols(const void* root, unsigned long size)
...
@@ -1352,6 +1352,29 @@ int codeview_dump_symbols(const void* root, unsigned long size)
*
(
const
unsigned
*
)((
const
char
*
)
sym
+
4
),
(
const
char
*
)
sym
+
8
);
*
(
const
unsigned
*
)((
const
char
*
)
sym
+
4
),
(
const
char
*
)
sym
+
8
);
break
;
break
;
case
S_LTHREAD_V1
:
case
S_GTHREAD_V1
:
printf
(
"
\t
S-Thread %s Var V1 '%s' seg=%04x offset=%08x type=%x
\n
"
,
sym
->
generic
.
id
==
S_LTHREAD_V1
?
"global"
:
"local"
,
p_string
(
&
sym
->
thread_v1
.
p_name
),
sym
->
thread_v1
.
segment
,
sym
->
thread_v1
.
offset
,
sym
->
thread_v1
.
symtype
);
break
;
case
S_LTHREAD_V2
:
case
S_GTHREAD_V2
:
printf
(
"
\t
S-Thread %s Var V2 '%s' seg=%04x offset=%08x type=%x
\n
"
,
sym
->
generic
.
id
==
S_LTHREAD_V2
?
"global"
:
"local"
,
p_string
(
&
sym
->
thread_v2
.
p_name
),
sym
->
thread_v2
.
segment
,
sym
->
thread_v2
.
offset
,
sym
->
thread_v2
.
symtype
);
break
;
case
S_LTHREAD_V3
:
case
S_GTHREAD_V3
:
printf
(
"
\t
S-Thread %s Var V3 '%s' seg=%04x offset=%08x type=%x
\n
"
,
sym
->
generic
.
id
==
S_LTHREAD_V3
?
"global"
:
"local"
,
sym
->
thread_v3
.
name
,
sym
->
thread_v3
.
segment
,
sym
->
thread_v3
.
offset
,
sym
->
thread_v3
.
symtype
);
break
;
default:
default:
printf
(
">>> Unsupported symbol-id %x sz=%d
\n
"
,
sym
->
generic
.
id
,
sym
->
generic
.
len
+
2
);
printf
(
">>> Unsupported symbol-id %x sz=%d
\n
"
,
sym
->
generic
.
id
,
sym
->
generic
.
len
+
2
);
dump_data
((
const
void
*
)
sym
,
sym
->
generic
.
len
+
2
,
" "
);
dump_data
((
const
void
*
)
sym
,
sym
->
generic
.
len
+
2
,
" "
);
...
...
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