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

Fix #622 #623

Merged
merged 1 commit into from
Oct 19, 2023
Merged

Fix #622 #623

merged 1 commit into from
Oct 19, 2023

Conversation

bgregoir
Copy link
Contributor

This patch as the advantage to fixes the current problem, but I think it is not the write way to do it.
I think, the best will be to introduce speudo instruction in arm:
x = #lea e
this one can be decomposed in a sequence of addition with shift.
ie x = #lea (y + z << i + c)
---->
x = #ADD(y, z << i);
x = #ADD(x, c);

x = #lea (y + c)
---->
x = #ADD(y, c); // if c is to large we can use x to compute it.

and
x = #GMOV e
this
can become either a LDR or a STR or a MOV depending of the source e and destination x.

The current patch poorly do that.

@bgregoir
Copy link
Contributor Author

It seem that I did not start from the good branch...

@vbgl vbgl added bug arm Related to the arm port labels Oct 19, 2023
@vbgl vbgl merged commit 188d781 into main Oct 19, 2023
1 check passed
@vbgl vbgl deleted the fix-#622 branch October 19, 2023 13:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arm Related to the arm port bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants