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

Add basic support for windows #13

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

0dminnimda
Copy link
Contributor

@0dminnimda 0dminnimda commented Feb 3, 2025

I wanted to keep it as simple as possible, so didn't even add guard pages. I'll do it in a separate PR

I tried but just could not get it to work with gcc from mingw64, though gcc from clang64 works, and clang from mingw64 and clang64 works. Probably a compiler bug or something. I was getting a segfault when calling coroutine_restore_context in coroutine_switch_context ..

@0dminnimda
Copy link
Contributor Author

0dminnimda commented Feb 3, 2025

I additionally tested this on Linux, now it works not just with gcc, but also clang!
The only incompatibility was - clang does not allow (void) fd; in naked functions, only asm.
Clang doesn't try to analyze them too hard, so this declaration not even needed, no warning are reported without it.

I wanted to keep it as simple as possible, so didn't even add guard
pages. I'll do it in a separate PR

I tried but just could not get it to work with gcc from mingw64, though
gcc from clang64 works, and clang from mingw64 and clang64 works.
Probably a compiler bug or something. I was getting a segfault when
calling coroutine_restore_context in coroutine_switch_context ..
@0dminnimda 0dminnimda force-pushed the basic-windows-support branch from 4a7b278 to 3955486 Compare February 3, 2025 12:30
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

Successfully merging this pull request may close these issues.

1 participant