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

cfc2 and ctc2 aren't implemented in LLVM's assembler #7

Open
ayrtonm opened this issue Jan 15, 2022 · 0 comments
Open

cfc2 and ctc2 aren't implemented in LLVM's assembler #7

ayrtonm opened this issue Jan 15, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@ayrtonm
Copy link
Owner

ayrtonm commented Jan 15, 2022

For some reason the mips assembler only implements instructions for moving between the general purpose registers and the data registers of cop2 (mfc2 and mtc2), but not for the control registers of cop2 (cfc2 and ctc2). This means that registers r32-r63 of the GTE (including all the matrix registers) aren't usable.

This could be fixed in llvm. On the other hand, GTE commands are custom to the playstation so it'll probably be necessary to make something like the rust-psp vfpu assembler anyway so the instructions could also be added there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant