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
e92a552d
Commit
e92a552d
authored
Aug 20, 2010
by
Austin English
Committed by
Alexandre Julliard
Aug 23, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
dbghelp: Add initial Sparc CPU support.
parent
ecce9eeb
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
87 additions
and
2 deletions
+87
-2
Makefile.in
dlls/dbghelp/Makefile.in
+1
-0
cpu_sparc.c
dlls/dbghelp/cpu_sparc.c
+79
-0
dbghelp.c
dlls/dbghelp/dbghelp.c
+4
-2
winnt.h
include/winnt.h
+3
-0
No files found.
dlls/dbghelp/Makefile.in
View file @
e92a552d
...
...
@@ -12,6 +12,7 @@ C_SRCS = \
coff.c
\
cpu_i386.c
\
cpu_ppc.c
\
cpu_sparc.c
\
cpu_x86_64.c
\
crc32.c
\
dbghelp.c
\
...
...
dlls/dbghelp/cpu_sparc.c
0 → 100644
View file @
e92a552d
/*
* File cpu_sparc.c
*
* Copyright (C) 2009-2009, Eric Pouech
* Copyright (C) 2010, Austin English
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include <assert.h>
#include "ntstatus.h"
#define WIN32_NO_STATUS
#include "dbghelp_private.h"
#include "winternl.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
dbghelp
);
static
unsigned
sparc_get_addr
(
HANDLE
hThread
,
const
CONTEXT
*
ctx
,
enum
cpu_addr
ca
,
ADDRESS64
*
addr
)
{
switch
(
ca
)
{
case
cpu_addr_pc
:
case
cpu_addr_stack
:
case
cpu_addr_frame
:
default:
FIXME
(
"not done for Sparc
\n
"
);
}
return
FALSE
;
}
static
BOOL
sparc_stack_walk
(
struct
cpu_stack_walk
*
csw
,
LPSTACKFRAME64
frame
,
CONTEXT
*
context
)
{
FIXME
(
"not done for Sparc
\n
"
);
return
FALSE
;
}
static
unsigned
sparc_map_dwarf_register
(
unsigned
regno
)
{
FIXME
(
"not done for Sparc
\n
"
);
return
0
;
}
static
void
*
sparc_fetch_context_reg
(
CONTEXT
*
ctx
,
unsigned
regno
,
unsigned
*
size
)
{
FIXME
(
"not done for Sparc
\n
"
);
return
NULL
;
}
static
const
char
*
sparc_fetch_regname
(
unsigned
regno
)
{
FIXME
(
"Unknown register %x
\n
"
,
regno
);
return
NULL
;
}
struct
cpu
cpu_sparc
=
{
IMAGE_FILE_MACHINE_SPARC
,
4
,
sparc_get_addr
,
sparc_stack_walk
,
NULL
,
sparc_map_dwarf_register
,
sparc_fetch_context_reg
,
sparc_fetch_regname
,
};
dlls/dbghelp/dbghelp.c
View file @
e92a552d
...
...
@@ -151,9 +151,9 @@ const char* wine_dbgstr_addr(const ADDRESS64* addr)
}
}
extern
struct
cpu
cpu_i386
,
cpu_x86_64
,
cpu_ppc
;
extern
struct
cpu
cpu_i386
,
cpu_x86_64
,
cpu_ppc
,
cpu_sparc
;
static
struct
cpu
*
dbghelp_cpus
[]
=
{
&
cpu_i386
,
&
cpu_x86_64
,
&
cpu_ppc
,
NULL
};
static
struct
cpu
*
dbghelp_cpus
[]
=
{
&
cpu_i386
,
&
cpu_x86_64
,
&
cpu_ppc
,
&
cpu_sparc
,
NULL
};
struct
cpu
*
dbghelp_current_cpu
=
#if defined(__i386__)
&
cpu_i386
...
...
@@ -161,6 +161,8 @@ struct cpu* dbghelp_current_cpu =
&
cpu_x86_64
#elif defined(__powerpc__)
&
cpu_ppc
#elif defined(__sparc__)
&
cpu_sparc
#else
#error define support for your CPU
#endif
...
...
include/winnt.h
View file @
e92a552d
...
...
@@ -2692,6 +2692,9 @@ typedef struct _IMAGE_VXD_HEADER {
#define IMAGE_FILE_MACHINE_M32R 0x9041
#define IMAGE_FILE_MACHINE_CEE 0xc0ee
/* Wine extension */
#define IMAGE_FILE_MACHINE_SPARC 0x2000
#define IMAGE_SIZEOF_FILE_HEADER 20
#define IMAGE_SIZEOF_ROM_OPTIONAL_HEADER 56
#define IMAGE_SIZEOF_STD_OPTIONAL_HEADER 28
...
...
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