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

LLVM uses libgcc __mulodi4 etc. symbols for MSVC targets #164

Open
jckarter opened this issue Jan 8, 2012 · 1 comment
Open

LLVM uses libgcc __mulodi4 etc. symbols for MSVC targets #164

jckarter opened this issue Jan 8, 2012 · 1 comment
Milestone

Comments

@jckarter
Copy link
Owner

jckarter commented Jan 8, 2012

No description provided.

@jckarter
Copy link
Owner Author

Some notes:

  • Issue Bug with ULong(Float) conversion on windows #166 happens because LLVM tries to use _ftol2 for floating-point to unsigned long long conversion, but it doesn't use the correct calling convention. _ftol2 expects the input float to be passed on the x87 stack instead of following the C or stdcall convention. According to Bigcheese in #llvm, this will require a custom MInstr to handle.
  • __mulodi4 is the compiler-rt entry point for 64-bit multiplication with overflow. Not sure if msvcrt has a corresponding entry point; might need to do i64 overflow checking by hand (or disable it) on Windows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant