Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 260331 Details for
Bug 352201
[4.4] ms_abi -> sysv_abi passing float arguments incorrectly (app-emulation/wine[win64])
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch to fix the problem
fix-regparm-passing.patch (text/plain), 1.88 KB, created by
Israel G. Lugo
on 2011-01-20 05:11:21 UTC
(
hide
)
Description:
Patch to fix the problem
Filename:
MIME Type:
Creator:
Israel G. Lugo
Created:
2011-01-20 05:11:21 UTC
Size:
1.88 KB
patch
obsolete
>Index: i386.c >=================================================================== >--- i386.c (revision 158676) >+++ i386.c (working copy) >@@ -4956,19 +4956,18 @@ > cum->nregs = ix86_regparm; > if (TARGET_64BIT) > { >- if (cum->call_abi != ix86_abi) >- cum->nregs = (ix86_abi != SYSV_ABI >- ? X86_64_REGPARM_MAX : X86_64_MS_REGPARM_MAX); >+ cum->nregs = (cum->call_abi == SYSV_ABI >+ ? X86_64_REGPARM_MAX >+ : X86_64_MS_REGPARM_MAX); > } > if (TARGET_SSE) > { > cum->sse_nregs = SSE_REGPARM_MAX; > if (TARGET_64BIT) > { >- if (cum->call_abi != ix86_abi) >- cum->sse_nregs = (ix86_abi != SYSV_ABI >- ? X86_64_SSE_REGPARM_MAX >- : X86_64_MS_SSE_REGPARM_MAX); >+ cum->sse_nregs = (cum->call_abi == SYSV_ABI >+ ? X86_64_SSE_REGPARM_MAX >+ : X86_64_MS_SSE_REGPARM_MAX); > } > } > if (TARGET_MMX) >@@ -6086,11 +6085,7 @@ > if (mode == VOIDmode) > return GEN_INT (cum->maybe_vaarg > ? (cum->sse_nregs < 0 >- ? (cum->call_abi == ix86_abi >- ? SSE_REGPARM_MAX >- : (ix86_abi != SYSV_ABI >- ? X86_64_SSE_REGPARM_MAX >- : X86_64_MS_SSE_REGPARM_MAX)) >+ ? X86_64_SSE_REGPARM_MAX > : cum->sse_regno) > : -1); > >@@ -6794,12 +6789,7 @@ > rtx nsse_reg; > alias_set_type set; > int i; >- int regparm = ix86_regparm; > >- if (cum->call_abi != ix86_abi) >- regparm = (ix86_abi != SYSV_ABI >- ? X86_64_REGPARM_MAX : X86_64_MS_REGPARM_MAX); >- > /* GPR size of varargs save area. */ > if (cfun->va_list_gpr_size) > ix86_varargs_gpr_size = X86_64_REGPARM_MAX * UNITS_PER_WORD; >@@ -6820,7 +6810,7 @@ > set = get_varargs_alias_set (); > > for (i = cum->regno; >- i < regparm >+ i < X86_64_REGPARM_MAX > && i < cum->regno + cfun->va_list_gpr_size / UNITS_PER_WORD; > i++) > {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 352201
:
260330
|
260331
|
264753