mirror of
https://github.com/roc-lang/roc.git
synced 2025-08-04 12:18:19 +00:00
Simplify aarch64 mov_reg64_reg64 by delegating to orr_reg64_reg64_reg64
This commit is contained in:
parent
ca0ef8f88f
commit
c71d7bb648
1 changed files with 2 additions and 11 deletions
|
@ -2075,17 +2075,8 @@ fn madd_reg64_reg64_reg64_reg64(
|
|||
/// `MOV Xd, Xm` -> Move Xm to Xd.
|
||||
#[inline(always)]
|
||||
fn mov_reg64_reg64(buf: &mut Vec<'_, u8>, dst: AArch64GeneralReg, src: AArch64GeneralReg) {
|
||||
// MOV is equvalent to `ORR Xd, XZR, XM` in AARCH64.
|
||||
let inst = LogicalShiftedRegister::new(LogicalShiftedRegisterParams {
|
||||
op: LogicalOp::ORR,
|
||||
shift: ShiftType::LSL,
|
||||
imm6: 0,
|
||||
rm: src,
|
||||
rn: AArch64GeneralReg::ZRSP,
|
||||
rd: dst,
|
||||
});
|
||||
|
||||
buf.extend(inst.bytes());
|
||||
// MOV is equivalent to `ORR Xd, XZR, Xm` in AARCH64.
|
||||
orr_reg64_reg64_reg64(buf, dst, AArch64GeneralReg::ZRSP, src);
|
||||
}
|
||||
|
||||
/// `MOVK Xd, imm16` -> Keeps Xd and moves an optionally shifted imm16 to Xd.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue