-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
src/task.c: Use b
instead of br
instruction on armv7l
#30253
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
Conversation
Did you check this works? I think |
I am compiling it on a raspberry pi right now, but it is indeed quite slow. I will update this once it is built. |
And what I wrote before and what I mentioned in the comments was |
I thought we were passing in the location to branch to via |
No. I'm saying that according to the doc |
Okay, I see what you're saying now. I feel like Jameson intended for us to have the flexibility of passing in arbitrary function addresses though (even though it is not exercised here, all addresses point to |
78eb84d
to
a88d593
Compare
The question I asked in the issue was exactly about this. What was the point of being flexible here? Is there plan to make it not a constant? (If so, that should be commented since the current version is pretty confusing.....) |
@vtjnash Do we actually need the arbitrary function pointer? If not, is there a performance improvement to using |
The code will be shorter and there will be one fewer relocation. It's not a particularly important performance improvement to have but it's confusing only because the more optimized form is actually very simple... |
it just keeps the code-paths more common |
But direct jump to label is available on all platforms? |
With these changes, the code at least compiles and makes it partway through the test suite on an RPi 3B+. |
Okay the confirmed test error that I'm hitting is the following:
This seems unrelated to the changes on this branch though, so I think we are ready to merge these fixes. |
Now that we've branched for 1.1, I assume this should be backported to 1.1? |
Is 1.0 affected by this? I thought the commit that broke ARM support wasn't backported. |
oh you are so right |
What else needs to happen before this can be merged and backported to 1.1? |
I think this can be merged; I got my Firefly board this morning, so I've been working towards getting true Armv7l buildbots working again, but I think any further changes should be done on different PRs. |
* src/task.c: Use `bx` instead of `br` instruction on armv7l * Fix typo and incorrect initialization within `jl_getauxval` on armv7l. (cherry picked from commit d7c3926)
Fixes #29710