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
24f7abaf
Commit
24f7abaf
authored
May 20, 2021
by
Piotr Caban
Committed by
Alexandre Julliard
May 20, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcp90: Depend on compiler in _Getcvt implementation if possible.
Signed-off-by:
Piotr Caban
<
piotr@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
a0428db8
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
40 additions
and
26 deletions
+40
-26
msvcp100.spec
dlls/msvcp100/msvcp100.spec
+1
-1
msvcp110.spec
dlls/msvcp110/msvcp110.spec
+1
-1
msvcp120.spec
dlls/msvcp120/msvcp120.spec
+1
-1
msvcp120.c
dlls/msvcp120/tests/msvcp120.c
+4
-4
msvcp120_app.spec
dlls/msvcp120_app/msvcp120_app.spec
+1
-1
msvcp140.spec
dlls/msvcp140/msvcp140.spec
+1
-1
msvcp60.spec
dlls/msvcp60/msvcp60.spec
+1
-1
msvcp70.spec
dlls/msvcp70/msvcp70.spec
+1
-1
msvcp71.spec
dlls/msvcp71/msvcp71.spec
+1
-1
msvcp80.spec
dlls/msvcp80/msvcp80.spec
+1
-1
locale.c
dlls/msvcp90/locale.c
+26
-12
msvcp90.spec
dlls/msvcp90/msvcp90.spec
+1
-1
No files found.
dlls/msvcp100/msvcp100.spec
View file @
24f7abaf
...
...
@@ -2917,7 +2917,7 @@
@ stub _GetLocaleForCP
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ cdecl _Getdateorder()
@ cdecl _Getwctype(long ptr)
@ cdecl _Getwctypes(ptr ptr ptr ptr)
...
...
dlls/msvcp110/msvcp110.spec
View file @
24f7abaf
...
...
@@ -3780,7 +3780,7 @@
# extern _FZero
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ cdecl _Getdateorder()
@ cdecl _Getwctype(long ptr)
@ cdecl _Getwctypes(ptr ptr ptr ptr)
...
...
dlls/msvcp120/msvcp120.spec
View file @
24f7abaf
...
...
@@ -3723,7 +3723,7 @@
# extern _FZero
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ cdecl _Getdateorder()
@ cdecl _Getwctype(long ptr)
@ cdecl _Getwctypes(ptr ptr ptr ptr)
...
...
dlls/msvcp120/tests/msvcp120.c
View file @
24f7abaf
...
...
@@ -209,7 +209,7 @@ static int (__cdecl *p__ismbblead)(unsigned int);
static
MSVCRT_long
(
__cdecl
*
p__Xtime_diff_to_millis2
)(
const
xtime
*
,
const
xtime
*
);
static
int
(
__cdecl
*
p_xtime_get
)(
xtime
*
,
int
);
static
_Cvtvec
*
(
__cdecl
*
p__Getcvt
)(
_Cvtvec
*
);
static
_Cvtvec
(
__cdecl
*
p__Getcvt
)(
void
);
static
void
(
CDECL
*
p__Call_once
)(
int
*
once
,
void
(
CDECL
*
func
)(
void
));
static
void
(
CDECL
*
p__Call_onceEx
)(
int
*
once
,
void
(
CDECL
*
func
)(
void
*
),
void
*
argv
);
static
void
(
CDECL
*
p__Do_call
)(
void
*
this
);
...
...
@@ -930,7 +930,7 @@ static void test__Getcvt(void)
_Cvtvec
cvtvec
;
int
i
;
p__Getcvt
(
&
cvtvec
);
cvtvec
=
p__Getcvt
(
);
ok
(
cvtvec
.
page
==
0
,
"cvtvec.page = %d
\n
"
,
cvtvec
.
page
);
ok
(
cvtvec
.
mb_max
==
1
,
"cvtvec.mb_max = %d
\n
"
,
cvtvec
.
mb_max
);
todo_wine
ok
(
cvtvec
.
unk
==
1
,
"cvtvec.unk = %d
\n
"
,
cvtvec
.
unk
);
...
...
@@ -941,7 +941,7 @@ static void test__Getcvt(void)
win_skip
(
"_Getcvt tests
\n
"
);
return
;
}
p__Getcvt
(
&
cvtvec
);
cvtvec
=
p__Getcvt
(
);
ok
(
cvtvec
.
page
==
936
,
"cvtvec.page = %d
\n
"
,
cvtvec
.
page
);
ok
(
cvtvec
.
mb_max
==
2
,
"cvtvec.mb_max = %d
\n
"
,
cvtvec
.
mb_max
);
ok
(
cvtvec
.
unk
==
0
,
"cvtvec.unk = %d
\n
"
,
cvtvec
.
unk
);
...
...
@@ -955,7 +955,7 @@ static void test__Getcvt(void)
}
p__setmbcp
(
936
);
p__Getcvt
(
&
cvtvec
);
cvtvec
=
p__Getcvt
(
);
ok
(
cvtvec
.
page
==
936
,
"cvtvec.page = %d
\n
"
,
cvtvec
.
page
);
ok
(
cvtvec
.
mb_max
==
2
,
"cvtvec.mb_max = %d
\n
"
,
cvtvec
.
mb_max
);
ok
(
cvtvec
.
unk
==
0
,
"cvtvec.unk = %d
\n
"
,
cvtvec
.
unk
);
...
...
dlls/msvcp120_app/msvcp120_app.spec
View file @
24f7abaf
...
...
@@ -3723,7 +3723,7 @@
# extern _FZero
@ cdecl -ret64 _Getcoll() msvcp120._Getcoll
@ cdecl _Getctype(ptr) msvcp120._Getctype
@ cdecl -
ret64
_Getcvt() msvcp120._Getcvt
@ cdecl -
norelay
_Getcvt() msvcp120._Getcvt
@ cdecl _Getdateorder() msvcp120._Getdateorder
@ cdecl _Getwctype(long ptr) msvcp120._Getwctype
@ cdecl _Getwctypes(ptr ptr ptr ptr) msvcp120._Getwctypes
...
...
dlls/msvcp140/msvcp140.spec
View file @
24f7abaf
...
...
@@ -3651,7 +3651,7 @@
@ cdecl _File_size(wstr)
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ cdecl _Getdateorder()
@ cdecl _Getwctype(long ptr)
@ cdecl _Getwctypes(ptr ptr ptr ptr)
...
...
dlls/msvcp60/msvcp60.spec
View file @
24f7abaf
...
...
@@ -4276,7 +4276,7 @@
# extern _FXbig
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ extern _Hugeval _Hugeval
@ extern _Inf _Inf
@ stub _LCosh
...
...
dlls/msvcp70/msvcp70.spec
View file @
24f7abaf
...
...
@@ -5063,7 +5063,7 @@
# extern _FZero
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ extern _Hugeval
@ extern _Inf
@ stub _LCosh
...
...
dlls/msvcp71/msvcp71.spec
View file @
24f7abaf
...
...
@@ -5117,7 +5117,7 @@
# extern _FZero
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ cdecl _Getwctype(long ptr)
@ cdecl _Getwctypes(ptr ptr ptr ptr)
@ extern _Hugeval
...
...
dlls/msvcp80/msvcp80.spec
View file @
24f7abaf
...
...
@@ -5726,7 +5726,7 @@
# extern _FXbig
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ cdecl _Getdateorder()
@ cdecl _Getwctype(long ptr)
@ cdecl _Getwctypes(ptr ptr ptr ptr)
...
...
dlls/msvcp90/locale.c
View file @
24f7abaf
...
...
@@ -735,9 +735,11 @@ _Ctypevec* __thiscall _Locinfo__Getctype(const _Locinfo *this, _Ctypevec *ret)
}
/* _Getcvt */
#if _MSVCP_VER < 110
#if _MSVCP_VER < 110 && defined(__i386__)
/* Work around a gcc bug */
ULONGLONG
__cdecl
_Getcvt
(
void
)
{
C_ASSERT
(
sizeof
(
_Cvtvec
)
==
sizeof
(
ULONGLONG
));
union
{
_Cvtvec
cvtvec
;
ULONGLONG
ull
;
...
...
@@ -749,20 +751,32 @@ ULONGLONG __cdecl _Getcvt(void)
ret
.
cvtvec
.
handle
=
___lc_handle_func
()[
LC_CTYPE
];
return
ret
.
ull
;
}
#elif _MSVCP_VER < 110
_Cvtvec
__cdecl
_Getcvt
(
void
)
{
_Cvtvec
ret
;
TRACE
(
"
\n
"
);
ret
.
page
=
___lc_codepage_func
();
ret
.
handle
=
___lc_handle_func
()[
LC_CTYPE
];
return
ret
;
}
#else
_Cvtvec
*
__cdecl
_Getcvt
(
_Cvtvec
*
ret
)
_Cvtvec
__cdecl
_Getcvt
(
void
)
{
_Cvtvec
ret
;
int
i
;
TRACE
(
"
\n
"
);
memset
(
ret
,
0
,
sizeof
(
*
ret
));
ret
->
page
=
___lc_codepage_func
();
ret
->
mb_max
=
___mb_cur_max_func
();
memset
(
&
ret
,
0
,
sizeof
(
ret
));
ret
.
page
=
___lc_codepage_func
();
ret
.
mb_max
=
___mb_cur_max_func
();
if
(
ret
->
mb_max
>
1
)
{
if
(
ret
.
mb_max
>
1
)
{
for
(
i
=
0
;
i
<
256
;
i
++
)
if
(
_ismbblead
(
i
))
ret
->
isleadbyte
[
i
/
8
]
|=
1
<<
(
i
&
7
);
if
(
_ismbblead
(
i
))
ret
.
isleadbyte
[
i
/
8
]
|=
1
<<
(
i
&
7
);
}
return
ret
;
}
...
...
@@ -773,14 +787,14 @@ _Cvtvec* __cdecl _Getcvt(_Cvtvec *ret)
DEFINE_THISCALL_WRAPPER
(
_Locinfo__Getcvt
,
8
)
_Cvtvec
*
__thiscall
_Locinfo__Getcvt
(
const
_Locinfo
*
this
,
_Cvtvec
*
ret
)
{
#if _MSVCP_VER < 110
ULONGLONG
ull
=
_Getcvt
();
memcpy
(
ret
,
&
ull
,
sizeof
(
ull
));
#if _MSVCP_VER < 110 && defined(__i386__)
ULONGLONG
cvtvec
;
#else
_Cvtvec
cvtvec
;
_Getcvt
(
&
cvtvec
);
memcpy
(
ret
,
&
cvtvec
,
sizeof
(
cvtvec
));
#endif
cvtvec
=
_Getcvt
();
memcpy
(
ret
,
&
cvtvec
,
sizeof
(
cvtvec
));
return
ret
;
}
...
...
dlls/msvcp90/msvcp90.spec
View file @
24f7abaf
...
...
@@ -6502,7 +6502,7 @@
# extern _FXbig
@ cdecl -ret64 _Getcoll()
@ cdecl _Getctype(ptr)
@ cdecl -
ret64
_Getcvt()
@ cdecl -
norelay
_Getcvt()
@ cdecl _Getdateorder()
@ cdecl _Getwctype(long ptr)
@ cdecl _Getwctypes(ptr ptr 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