[Mips] Select the R5900 three-operand mult for 32-bit multiplies #11

Merged
techwritescode merged 1 commit from r5900-mult3 into r5900-ee 2026-10-14 22:31:44 +00:00

32-bit mul on the R5900 now selects mult rd, rs, rt instead of mult + mflo, as GCC does. Adds CodeGen/Mips/r5900-mult3.ll; all 1672 Mips CodeGen and MC tests pass. Refs PS2-187 (mult1/mflo1 and the -O3 physics gap remain open).

🤖 Generated with Claude Code

32-bit `mul` on the R5900 now selects `mult rd, rs, rt` instead of `mult` + `mflo`, as GCC does. Adds CodeGen/Mips/r5900-mult3.ll; all 1672 Mips CodeGen and MC tests pass. Refs PS2-187 (mult1/mflo1 and the -O3 physics gap remain open). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
[Mips] Select the R5900 three-operand mult for 32-bit multiplies
Some checks failed
action.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (push) Failing after 0s
release-binaries-all.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (push) Failing after 0s
release-binaries.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (push) Failing after 0s
release-documentation.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (push) Failing after 0s
release-sources.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (push) Failing after 0s
Check for private emails used in PRs / validate_email (pull_request) Has been skipped
action.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (pull_request) Failing after 0s
Check LLVM ABI annotations / Check LLVM_ABI annotations with ids (pull_request) Has been skipped
CI Checks / Build and Test Linux (pull_request) Has been skipped
CI Checks / Build and Test Windows (pull_request) Has been skipped
CI Checks / Compute macOS Projects (pull_request) Has been skipped
CI Checks / Build and Test macOS arm64 (pull_request) Has been skipped
release-binaries-all.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (pull_request) Failing after 0s
release-binaries.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (pull_request) Failing after 0s
release-documentation.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (pull_request) Failing after 0s
release-sources.yml / [Mips] Select the R5900 three-operand mult for 32-bit multiplies (pull_request) Failing after 0s
Add buildbot information to first PRs from new contributors / buildbot_comment (pull_request_target) Has been skipped
Labelling new pull requests / greeter (pull_request_target) Has been cancelled
Labelling new pull requests / automate-prs-labels (pull_request_target) Has been cancelled
1367a01416
Avoids the separate mflo (PS2-187).

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
techwritescode deleted branch r5900-mult3 2026-10-14 22:31:46 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
ps2/llvm!11
No description provided.