128-bit multiplication

This commit is contained in:
Folkert 2023-04-26 21:58:02 +02:00
parent 2b849f167f
commit 0f058c8b46
No known key found for this signature in database
GPG key ID: 1F17F6FFD112B97C
4 changed files with 43 additions and 28 deletions

View file

@ -848,6 +848,13 @@ impl<
let dst_reg = self.storage_manager.claim_float_reg(&mut self.buf, dst);
ASM::mov_freg64_freg64(&mut self.buf, dst_reg, CC::FLOAT_RETURN_REGS[0]);
}
Layout::I128 | Layout::U128 => {
let offset = self.storage_manager.claim_stack_area(dst, 16);
ASM::mov_base32_reg64(&mut self.buf, offset + 0, CC::GENERAL_RETURN_REGS[0]);
ASM::mov_base32_reg64(&mut self.buf, offset + 8, CC::GENERAL_RETURN_REGS[1]);
}
other => {
//
match self.layout_interner.get(other) {