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
911cdcda
Commit
911cdcda
authored
Mar 15, 2023
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wow64: Forward NtWow64IsProcessorFeaturePresent() to the CPU backend.
parent
5a1d431b
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
14 additions
and
1 deletion
+14
-1
syscall.c
dlls/wow64/syscall.c
+3
-1
cpu.c
dlls/wow64cpu/cpu.c
+10
-0
wow64cpu.spec
dlls/wow64cpu/wow64cpu.spec
+1
-0
No files found.
dlls/wow64/syscall.c
View file @
911cdcda
...
@@ -102,6 +102,7 @@ static WOW64INFO *wow64info;
...
@@ -102,6 +102,7 @@ static WOW64INFO *wow64info;
/* cpu backend dll functions */
/* cpu backend dll functions */
static
void
*
(
WINAPI
*
pBTCpuGetBopCode
)(
void
);
static
void
*
(
WINAPI
*
pBTCpuGetBopCode
)(
void
);
static
NTSTATUS
(
WINAPI
*
pBTCpuGetContext
)(
HANDLE
,
HANDLE
,
void
*
,
void
*
);
static
NTSTATUS
(
WINAPI
*
pBTCpuGetContext
)(
HANDLE
,
HANDLE
,
void
*
,
void
*
);
static
BOOLEAN
(
WINAPI
*
pBTCpuIsProcessorFeaturePresent
)(
UINT
);
static
void
(
WINAPI
*
pBTCpuProcessInit
)(
void
);
static
void
(
WINAPI
*
pBTCpuProcessInit
)(
void
);
static
NTSTATUS
(
WINAPI
*
pBTCpuSetContext
)(
HANDLE
,
HANDLE
,
void
*
,
void
*
);
static
NTSTATUS
(
WINAPI
*
pBTCpuSetContext
)(
HANDLE
,
HANDLE
,
void
*
,
void
*
);
static
void
(
WINAPI
*
pBTCpuThreadInit
)(
void
);
static
void
(
WINAPI
*
pBTCpuThreadInit
)(
void
);
...
@@ -629,7 +630,7 @@ NTSTATUS WINAPI wow64_NtWow64IsProcessorFeaturePresent( UINT *args )
...
@@ -629,7 +630,7 @@ NTSTATUS WINAPI wow64_NtWow64IsProcessorFeaturePresent( UINT *args )
{
{
UINT
feature
=
get_ulong
(
&
args
);
UINT
feature
=
get_ulong
(
&
args
);
return
Rtl
IsProcessorFeaturePresent
(
feature
);
return
pBTCpuIsProcessorFeaturePresent
&&
pBTCpu
IsProcessorFeaturePresent
(
feature
);
}
}
...
@@ -835,6 +836,7 @@ static DWORD WINAPI process_init( RTL_RUN_ONCE *once, void *param, void **contex
...
@@ -835,6 +836,7 @@ static DWORD WINAPI process_init( RTL_RUN_ONCE *once, void *param, void **contex
module
=
load_64bit_module
(
get_cpu_dll_name
()
);
module
=
load_64bit_module
(
get_cpu_dll_name
()
);
GET_PTR
(
BTCpuGetBopCode
);
GET_PTR
(
BTCpuGetBopCode
);
GET_PTR
(
BTCpuGetContext
);
GET_PTR
(
BTCpuGetContext
);
GET_PTR
(
BTCpuIsProcessorFeaturePresent
);
GET_PTR
(
BTCpuProcessInit
);
GET_PTR
(
BTCpuProcessInit
);
GET_PTR
(
BTCpuThreadInit
);
GET_PTR
(
BTCpuThreadInit
);
GET_PTR
(
BTCpuResetToConsistentState
);
GET_PTR
(
BTCpuResetToConsistentState
);
...
...
dlls/wow64cpu/cpu.c
View file @
911cdcda
...
@@ -353,6 +353,16 @@ void * WINAPI __wine_get_unix_opcode(void)
...
@@ -353,6 +353,16 @@ void * WINAPI __wine_get_unix_opcode(void)
/**********************************************************************
/**********************************************************************
* BTCpuIsProcessorFeaturePresent (wow64cpu.@)
*/
BOOLEAN
WINAPI
BTCpuIsProcessorFeaturePresent
(
UINT
feature
)
{
/* assume CPU features are the same for 32- and 64-bit */
return
RtlIsProcessorFeaturePresent
(
feature
);
}
/**********************************************************************
* BTCpuGetContext (wow64cpu.@)
* BTCpuGetContext (wow64cpu.@)
*/
*/
NTSTATUS
WINAPI
BTCpuGetContext
(
HANDLE
thread
,
HANDLE
process
,
void
*
unknown
,
I386_CONTEXT
*
ctx
)
NTSTATUS
WINAPI
BTCpuGetContext
(
HANDLE
thread
,
HANDLE
process
,
void
*
unknown
,
I386_CONTEXT
*
ctx
)
...
...
dlls/wow64cpu/wow64cpu.spec
View file @
911cdcda
@ stdcall BTCpuGetBopCode()
@ stdcall BTCpuGetBopCode()
@ stdcall BTCpuGetContext(long long ptr ptr)
@ stdcall BTCpuGetContext(long long ptr ptr)
@ stdcall BTCpuIsProcessorFeaturePresent(long)
@ stdcall BTCpuProcessInit()
@ stdcall BTCpuProcessInit()
@ stdcall BTCpuResetToConsistentState(ptr)
@ stdcall BTCpuResetToConsistentState(ptr)
@ stdcall BTCpuSetContext(long long ptr ptr)
@ stdcall BTCpuSetContext(long long ptr ptr)
...
...
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