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

Recursive generic simd functions don't work properly when inlined into target_feature functions #3

Closed
jackmott opened this issue Sep 1, 2018 · 4 comments
Labels
bug Something isn't working

Comments

@jackmott
Copy link
Collaborator

jackmott commented Sep 1, 2018

see:
rust-lang/rust#53117

Caused by this llvm bug (probably):
https://bugs.llvm.org/show_bug.cgi?id=37358

EDIT: Rust now has a workaround for the llvm bug but it doesn't appear to fix this issue.

The only work around I know of at this time is either copy-paste the generic function to separate functions for each SIMD target you want, or find a way to make your function non recursive.

If anyone has ideas for a better workaround let me know, otherwise I'll leave this open until the llvm bug is fixed. If you have an account on the llvm bug tracker feel free to politely mention you would like to see this fixed.

@jackmott jackmott added bug Something isn't working help wanted Extra attention is needed labels Sep 1, 2018
@jackmott
Copy link
Collaborator Author

A recent PR in the rust has fixed this on nightly. I will keep this open until it is on stable then close it.

@jackmott jackmott removed the help wanted Extra attention is needed label Oct 22, 2018
@jackmott
Copy link
Collaborator Author

Another update - the PR for the Rust workaround has been reverted, it was causing some problems, and LLVM has a proposed fix, so the real fix should be soon!

@jackmott
Copy link
Collaborator Author

a fix was just merged for this in llvm so hopefully that will flow into Rust soon!

@jackmott
Copy link
Collaborator Author

latest rust this seems to be fixed now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant