Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wine: crash for all /COMPMODE modes other than INSTANT #16

Open
therontarigo opened this issue Jan 7, 2024 · 0 comments
Open

Wine: crash for all /COMPMODE modes other than INSTANT #16

therontarigo opened this issue Jan 7, 2024 · 0 comments

Comments

@therontarigo
Copy link

Tested in Wine 7, Wine 9, 32-bit

Regardless of object inputs, Crinkler gets no further than

Linking...

Forced alignment of 1 code hunk to 1 (including entry point).

Uncompressed size of code:   192
Uncompressed size of data:    10

|-- Estimating models for code ----------------------------|

Oops! Crinkler has crashed.
Dump files written to dump0000_mini.dmp and dump0000_full.dmp

The created dmp files are 0 bytes in size.

When /COMPMODE:INSTANT is specified, Crinkler completes, producing a working executable.
releases/crinkler14/crinkler.exe works in all /COMPMODE options, producing a working executable.
releases/crinkler20/crinkler.exe without /COMPMODE:INSTANT crashes as above.

From the version history, Switched from Intel OpenMP to MSVC concurrency API. looks to be a suspect.

The DLL and LIB used are copied from Windows and MSVC; the test is a minimal asm:

extern _MessageBoxA@16
extern _ExitProcess@4

global _WinMainCRTStartup

_WinMainCRTStartup:
  push 0
  push msg
  push msg
  push 0
  call _MessageBoxA@16
  push 0
  call _ExitProcess@4

msg: db "hello win32",0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant