-
Notifications
You must be signed in to change notification settings - Fork 15
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
error: expected absolute expression on arm #742
Comments
I suspect it's the |
Yes you are correct. I'm not sure if it is caused by the same reason of similar issues for other architecture, so I just created this one to track the issues on 32-bit arm. Strange enough, if I simply copy the instructions and make a test case out of it, clang would not have the issue. So right now to reproduce this issue, I will have to run The reason seemed to be that this instruction and label 9997 are assigned to two different fragments, and without layout current integrated assembler cannot calculate their difference. While in the test case somehow they are assigned to the same fragment, so the integrated assembler can simply compare their offset and produce a constant value as the result of the substraction. |
Some more observation: I only found one macro (ALT_UP) uses dot symbol in .if directive. linux $ grep -r ".if .\ " Turned out both instances are in used in the same macro. #ifdef CONFIG_SMP
|
Without support for |
CC=clang AS=clang
gnu as does not have this issue.
The text was updated successfully, but these errors were encountered: