Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 932319 - dev-util/mingw64-toolchain-11.0.1 - internal compiler error in wine builds with -fno-omit-frame-pointer
Summary: dev-util/mingw64-toolchain-11.0.1 - internal compiler error in wine builds wi...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Ionen Wolkens
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-05-20 18:30 UTC by Tom Englund
Modified: 2024-05-22 03:32 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tom Englund 2024-05-20 18:30:19 UTC
as of late when building wine-proton/wine-staging/wine-vanilla with a mingw64 build it stops at 

during RTL pass: final
/var/tmp/portage/app-emulation/wine-proton-9.0.9999/work/wine-proton-9.0.9999/dlls/msvcrt/sincos.c: In function ‘sincos’:
/var/tmp/portage/app-emulation/wine-proton-9.0.9999/work/wine-proton-9.0.9999/dlls/msvcrt/sincos.c:34:1: internal compiler error: in seh_cfa_offset, at config/i386/winnt.cc:1137

after a multitude of rebuilds removing -fno-omit-frame-pointer from cflags it compiles again.

a rerun of the failing gcc command with -save-temps
https://gist.github.com/gulafaran/4d323e6a613d03a29fb68583ae80fcd0

the generated sincos.i file.
https://gist.github.com/gulafaran/3c154351754e725ef1345d79f708fb6f
Comment 1 Ionen Wolkens gentoo-dev 2024-05-21 02:50:49 UTC
Please attach the files rather than use external links to ensure they're never lost.

That aside, tried to reproduce just now and wine, dxvk, vkd3d-proton, and mingw64-toolchain itself (during the cross build of mingw runtime) all fail for me when using using C(XX)FLAGS="-O2 -fno-omit-frame-pointer".

Fastest package to reproduce with is:

    CXXFLAGS="-O2 -fno-omit-frame-pointer" emerge vkd3d-proton

and then:

    ../vkd3d-proton-2.12/subprojects/dxil-spirv/opcodes/dxil/dxil_arithmetic.cpp:340:1: internal compiler error: in seh_cfa_offset, at config/i386/winnt.cc:1137
      340 | }
          | ^
    0x7ffff7b93ea8 __libc_start_call_main
    	../sysdeps/nptl/libc_start_call_main.h:58
    0x7ffff7b93f6e __libc_start_main_impl
    	../csu/libc-start.c:360

(still fails with USE=-abi_x86_32 so seems it's not 32bit-specific)

Can also reproduce with crossdev (CC toolchain@) using gcc-14.1.1_p20240518, but only with x86_64, i686 seems fine -- fails during cross-mingw64-runtime):

    CFLAGS="-O2 -fno-omit-frame-pointer" crossdev -t x86_64-w64-mingw32

Not planning to dig into this more myself, but figure I'll force -fomit-frame-pointer in these for now similarly to how used to disable -fstack-clash-protection which used to ICE w/ mingw as well (that one been fixed). Not going to bother limiting it to gcc14 or ABI for simplicity w/ all the cross bits.

Please remember to drop the upcoming workaround if anyone interested in reproducing this.
Comment 2 Larry the Git Cow gentoo-dev 2024-05-21 03:01:32 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54e5dc5019e5506f386b80b35dca7ae439bed752

commit 54e5dc5019e5506f386b80b35dca7ae439bed752
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-21 02:54:16 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-21 02:58:16 +0000

    dev-util/mingw64-runtime: add workaround for gcc14 ICE w/ mingw
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6ca4f9dc1b3e4f9e947e547f9cab2730502de52

commit b6ca4f9dc1b3e4f9e947e547f9cab2730502de52
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-21 02:24:12 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-21 02:58:16 +0000

    dev-util/mingw64-toolchain: add workaround for gcc14 ICE w/ mingw
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1.ebuild | 3 +++
 1 file changed, 3 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b7d87db08fa3899fd607a2f0d8137a35241b446f

commit b7d87db08fa3899fd607a2f0d8137a35241b446f
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-21 02:24:03 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-21 02:58:15 +0000

    app-emulation/vkd3d-proton: add workaround for gcc14 ICE w/ mingw
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/vkd3d-proton/vkd3d-proton-2.12.ebuild   | 3 +++
 app-emulation/vkd3d-proton/vkd3d-proton-2.6-r1.ebuild | 3 +++
 app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild   | 3 +++
 3 files changed, 9 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ee751a060fc66194a019a0fdd23bde99775cb01

commit 0ee751a060fc66194a019a0fdd23bde99775cb01
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-21 02:23:55 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-21 02:58:15 +0000

    app-emulation/dxvk: add workaround for gcc14 ICE w/ mingw
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/dxvk/dxvk-1.10.3-r1.ebuild | 3 +++
 app-emulation/dxvk/dxvk-2.3.1-r1.ebuild  | 3 +++
 app-emulation/dxvk/dxvk-9999.ebuild      | 3 +++
 3 files changed, 9 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b701bf35fd508f2bc15c42805e7ab2ad131ff5f6

commit b701bf35fd508f2bc15c42805e7ab2ad131ff5f6
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-21 02:23:48 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-21 02:58:15 +0000

    app-emulation/wine-proton: add workaround for gcc14 ICE w/ mingw
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/wine-proton/wine-proton-7.0.6.ebuild    | 3 +++
 app-emulation/wine-proton/wine-proton-8.0.5c.ebuild   | 3 +++
 app-emulation/wine-proton/wine-proton-9.0.1.ebuild    | 3 +++
 app-emulation/wine-proton/wine-proton-9.0.9999.ebuild | 3 +++
 4 files changed, 12 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5a908d66999ca80ddd00e5bb5f961cff5964de19

commit 5a908d66999ca80ddd00e5bb5f961cff5964de19
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-21 02:23:38 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-21 02:58:15 +0000

    app-emulation/wine-staging: add workaround for gcc14 ICE w/ mingw
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/wine-staging/wine-staging-9.0.ebuild  | 3 +++
 app-emulation/wine-staging/wine-staging-9.7.ebuild  | 3 +++
 app-emulation/wine-staging/wine-staging-9.8.ebuild  | 3 +++
 app-emulation/wine-staging/wine-staging-9.9.ebuild  | 3 +++
 app-emulation/wine-staging/wine-staging-9999.ebuild | 3 +++
 5 files changed, 15 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b23fe7660928f72b2146770ae145a5f57012ef7c

commit b23fe7660928f72b2146770ae145a5f57012ef7c
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-21 02:23:30 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-21 02:58:14 +0000

    app-emulation/wine-vanilla: add workaround for gcc14 ICE w/ mingw
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/wine-vanilla/wine-vanilla-7.0.2.ebuild | 3 +++
 app-emulation/wine-vanilla/wine-vanilla-8.0.2.ebuild | 3 +++
 app-emulation/wine-vanilla/wine-vanilla-9.0.ebuild   | 3 +++
 app-emulation/wine-vanilla/wine-vanilla-9.7.ebuild   | 3 +++
 app-emulation/wine-vanilla/wine-vanilla-9.8.ebuild   | 3 +++
 app-emulation/wine-vanilla/wine-vanilla-9.9.ebuild   | 3 +++
 app-emulation/wine-vanilla/wine-vanilla-9999.ebuild  | 3 +++
 7 files changed, 21 insertions(+)
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-05-22 00:56:41 UTC
As noted in the GCC bug, -fno-fold-mem-offsets will be a (nicer) workaround if this is long-term (it's a new pass, and hence far less of a pessimisation for 32-bit as opposed to losing a gpr). But I wouldn't rush to change it either.
Comment 4 Ionen Wolkens gentoo-dev 2024-05-22 02:06:33 UTC
(In reply to Sam James from comment #3)
> As noted in the GCC bug, -fno-fold-mem-offsets will be a (nicer) workaround
> if this is long-term (it's a new pass, and hence far less of a pessimisation
> for 32-bit as opposed to losing a gpr). But I wouldn't rush to change it
> either.
Well, haven't tried it yet but think may as well just do the patch in mingw64-toolchain and drop these entirely. Thanks for finding the links.

Will still be an issue with crossdev but it can wait until a keyworded snapshot fixes it and not worth making everyone rebuild gcc over (not many do -fno-omit anyway).
Comment 5 Larry the Git Cow gentoo-dev 2024-05-22 03:32:23 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48bc1099f5d9fe2b07e6fb16ff63a83f35498f2f

commit 48bc1099f5d9fe2b07e6fb16ff63a83f35498f2f
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-22 02:24:44 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-22 03:30:59 +0000

    dev-util/mingw64-toolchain: fix ICE with -fno-omit-frame-pointer
    
    If there's a known fix, better to do it here than have
    every revdeps do workarounds.
    
    Closes: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 .../files/gcc-14.1.0-no-omit-fp-ice.patch               | 17 +++++++++++++++++
 ...11.0.1.ebuild => mingw64-toolchain-11.0.1-r1.ebuild} |  1 +
 2 files changed, 18 insertions(+)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b71f0a787ca88c50bdfb85ba7ba5cc8c2de660bf

commit b71f0a787ca88c50bdfb85ba7ba5cc8c2de660bf
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-22 02:11:33 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-22 03:30:58 +0000

    Revert "app-emulation/wine-vanilla: add workaround for gcc14 ICE w/ mingw"
    
    This reverts commit b23fe7660928f72b2146770ae145a5f57012ef7c.
    
    Fixing in mingw64-toolchain instead, *could* keep the workaround
    longer for those that didn't update but likely doesn't affect many.
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/wine-vanilla/wine-vanilla-7.0.2.ebuild | 3 ---
 app-emulation/wine-vanilla/wine-vanilla-8.0.2.ebuild | 3 ---
 app-emulation/wine-vanilla/wine-vanilla-9.0.ebuild   | 3 ---
 app-emulation/wine-vanilla/wine-vanilla-9.7.ebuild   | 3 ---
 app-emulation/wine-vanilla/wine-vanilla-9.8.ebuild   | 3 ---
 app-emulation/wine-vanilla/wine-vanilla-9.9.ebuild   | 3 ---
 app-emulation/wine-vanilla/wine-vanilla-9999.ebuild  | 3 ---
 7 files changed, 21 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae69510e5e450350a0173c5b1a9b5586e9e90bd9

commit ae69510e5e450350a0173c5b1a9b5586e9e90bd9
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-22 02:11:29 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-22 03:30:58 +0000

    Revert "app-emulation/wine-staging: add workaround for gcc14 ICE w/ mingw"
    
    This reverts commit 5a908d66999ca80ddd00e5bb5f961cff5964de19.
    
    Fixing in mingw64-toolchain instead, *could* keep the workaround
    longer for those that didn't update but likely doesn't affect many.
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/wine-staging/wine-staging-9.0.ebuild  | 3 ---
 app-emulation/wine-staging/wine-staging-9.7.ebuild  | 3 ---
 app-emulation/wine-staging/wine-staging-9.8.ebuild  | 3 ---
 app-emulation/wine-staging/wine-staging-9.9.ebuild  | 3 ---
 app-emulation/wine-staging/wine-staging-9999.ebuild | 3 ---
 5 files changed, 15 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f148a5bd2cbd0b8094b11865d5b0f9884f551127

commit f148a5bd2cbd0b8094b11865d5b0f9884f551127
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-22 02:11:24 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-22 03:30:58 +0000

    Revert "app-emulation/wine-proton: add workaround for gcc14 ICE w/ mingw"
    
    This reverts commit b701bf35fd508f2bc15c42805e7ab2ad131ff5f6.
    
    Fixing in mingw64-toolchain instead, *could* keep the workaround
    longer for those that didn't update but likely doesn't affect many.
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/wine-proton/wine-proton-7.0.6.ebuild    | 3 ---
 app-emulation/wine-proton/wine-proton-8.0.5c.ebuild   | 3 ---
 app-emulation/wine-proton/wine-proton-9.0.1.ebuild    | 3 ---
 app-emulation/wine-proton/wine-proton-9.0.9999.ebuild | 3 ---
 4 files changed, 12 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41133645d8bd37dfb58374065b0a670e58948403

commit 41133645d8bd37dfb58374065b0a670e58948403
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-22 02:11:18 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-22 03:30:58 +0000

    Revert "app-emulation/dxvk: add workaround for gcc14 ICE w/ mingw"
    
    This reverts commit 0ee751a060fc66194a019a0fdd23bde99775cb01.
    
    Fixing in mingw64-toolchain instead, *could* keep the workaround
    longer for those that didn't update but likely doesn't affect many.
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/dxvk/dxvk-1.10.3-r1.ebuild | 3 ---
 app-emulation/dxvk/dxvk-2.3.1-r1.ebuild  | 3 ---
 app-emulation/dxvk/dxvk-9999.ebuild      | 3 ---
 3 files changed, 9 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f554c759cafd698a570f271c9bc036fcec483e9f

commit f554c759cafd698a570f271c9bc036fcec483e9f
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-22 02:11:13 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-22 03:30:58 +0000

    Revert "app-emulation/vkd3d-proton: add workaround for gcc14 ICE w/ mingw"
    
    This reverts commit b7d87db08fa3899fd607a2f0d8137a35241b446f.
    
    Fixing in mingw64-toolchain instead, *could* keep the workaround
    longer for those that didn't update but likely doesn't affect many.
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 app-emulation/vkd3d-proton/vkd3d-proton-2.12.ebuild   | 3 ---
 app-emulation/vkd3d-proton/vkd3d-proton-2.6-r1.ebuild | 3 ---
 app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild   | 3 ---
 3 files changed, 9 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3cd1ffe8b0e1fd84a98501ccca0a8ccefd40c307

commit 3cd1ffe8b0e1fd84a98501ccca0a8ccefd40c307
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-22 02:11:07 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-22 03:30:57 +0000

    Revert "dev-util/mingw64-toolchain: add workaround for gcc14 ICE w/ mingw"
    
    This reverts commit b6ca4f9dc1b3e4f9e947e547f9cab2730502de52.
    
    A fix was found, so will patch gcc instead.
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1.ebuild | 3 ---
 1 file changed, 3 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=87a0599ce499cc694c54ffdb3ce0c39e342230e6

commit 87a0599ce499cc694c54ffdb3ce0c39e342230e6
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2024-05-22 02:10:53 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2024-05-22 03:30:57 +0000

    Revert "dev-util/mingw64-runtime: add workaround for gcc14 ICE w/ mingw"
    
    This reverts commit 54e5dc5019e5506f386b80b35dca7ae439bed752.
    
    Will wait for a fixed gcc version instead, this doesn't affect many.
    
    Bug: https://bugs.gentoo.org/932319
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)