-
-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Implement missing f128-related compiler_rt functions #495
Comments
Possible missing built-ins when compiling for ARM with soft-float:
|
Reference code can be found here: https://github.com/llvm-project/llvm-project-20170507/tree/master/compiler-rt/lib/builtins/arm The arm builtins are all assembly and it would be nice if we could embed the llvm implementations directly with minimal changes. This brings up a question of what the idiomatic way of dealing with architecture specific specializations should be handled. It is likely that choosing the implementation is shifted from the build step (as in C) to a compile-time generative step in Zig. I think #462 would help here. Also; progress report. I have the main trunc implementations here fairly complete bar some really close inaccuracies (which I suspect are failing due to bad f128 hex literal parsing). Will probably be low on the implementation till January, but expect a partial branch up shortly. |
It seems that __umodsi3 is missing. That should perhaps be prioritized. |
I implemented #462. You can see examples of how to use it in bootstrap.zig and compiler_rt/index.zig. |
See https://github.com/llvm-project/llvm-project-20170507/tree/master/compiler-rt/lib/builtins for a reference.
A tentative list is as follows:
The following example program should compile with no linking errors when complete.
The text was updated successfully, but these errors were encountered: