Closed Bug 2023308 Opened 2 months ago Closed 2 months ago

[mips64][loong64] Implement codegen for wide-arithmetic proposal on MIPS64 and Loong64

Categories

(Core :: JavaScript Engine: JIT, defect)

defect

Tracking

()

RESOLVED FIXED
150 Branch
Tracking Status
firefox150 --- fixed

People

(Reporter: csmantle, Assigned: csmantle)

References

Details

Attachments

(4 files)

This is causing build failures on loong64 and mips64 platforms after Bug 1949081 lands.

This includes the following on Loong64:

  • MacroAssembler::mul64(const Register64&, const Register64&)
  • MacroAssembler::wasmAddSubI128HI64
  • MacroAssembler::wasmMulI64WideHI64(Register, Register, Register, bool)
  • CodeGenerator::visitWasmMulI64WideHI64(LWasmMulI64WideHI64*)
Assignee: nobody → webmaster
Status: NEW → ASSIGNED

Same as Part 1, this includes the following on MIPS64:

  • MacroAssembler::mul64(const Register64&, const Register64&)
  • MacroAssembler::wasmAddSubI128HI64
  • MacroAssembler::wasmMulI64WideHI64(Register, Register, Register, bool)
  • CodeGenerator::visitWasmMulI64WideHI64(LWasmMulI64WideHI64*)

Currently, when processing dmultu instructions, the simulator directly
uses U128(rX). This is problematic since rX is int64_t, which gets
promoted to __int128_t first, thus breaking the unsigned conversion
semantics.

Summary: [mips64][loong64] Implement MacroAssembler::wasmAddSubI128HI64 and MacroAssembler::wasmMulI64WideHI64 → [mips64][loong64] Implement codegen for wide-arithmetic proposal on MIPS64 and Loong64
QA Whiteboard: [qa-triage-done-c151/b150]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: