Class: AArch64::Instructions::ADDS_addsub_ext

Inherits:
Instruction
  • Object
show all
Defined in:
lib/aarch64/instructions/adds_addsub_ext.rb

Overview

ADDS (extended register) – A64 Add (extended register), setting flags ADDS <Wd>, <Wn|WSP>, <Wm><extend> {#<amount>} ADDS <Xd>, <Xn|SP>, <R><m><extend> {#<amount>}

Instance Method Summary collapse

Constructor Details

#initialize(d, n, m, extend, amount, sf) ⇒ ADDS_addsub_ext

Returns a new instance of ADDS_addsub_ext.



8
9
10
11
12
13
14
15
# File 'lib/aarch64/instructions/adds_addsub_ext.rb', line 8

def initialize d, n, m, extend, amount, sf
  @d      = check_mask(d, 0x1f)
  @n      = check_mask(n, 0x1f)
  @m      = check_mask(m, 0x1f)
  @extend = check_mask(extend, 0x07)
  @amount = check_mask(amount, 0x07)
  @sf     = check_mask(sf, 0x01)
end

Instance Method Details

#encode(_) ⇒ Object



17
18
19
# File 'lib/aarch64/instructions/adds_addsub_ext.rb', line 17

def encode _
  ADDS_addsub_ext(@sf, @m, @extend, @amount, @n, @d)
end