Class: Fisk::Registers::Rip

Inherits:
Operand
  • Object
show all
Defined in:
lib/fisk.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from OperandPredicates

#absolute_location?, #extended_register?, #immediate?, #register?, #temp_register?

Constructor Details

#initialize(displacement) ⇒ Rip

Returns a new instance of Rip.



100
101
102
# File 'lib/fisk.rb', line 100

def initialize displacement
  @displacement = displacement
end

Instance Attribute Details

#displacementObject

Returns the value of attribute displacement.



98
99
100
# File 'lib/fisk.rb', line 98

def displacement
  @displacement
end

Instance Method Details

#memory?Boolean

Returns:

  • (Boolean)


113
# File 'lib/fisk.rb', line 113

def memory?; true; end

#op_valueObject



120
121
122
# File 'lib/fisk.rb', line 120

def op_value
  0x0
end

#rex_valueObject



116
117
118
# File 'lib/fisk.rb', line 116

def rex_value
  0x0
end

#rip?Boolean

Returns:

  • (Boolean)


114
# File 'lib/fisk.rb', line 114

def rip?; true; end

#unresolved?Boolean

Returns:

  • (Boolean)


109
110
111
# File 'lib/fisk.rb', line 109

def unresolved?
  @displacement.is_a?(Fisk::UnknownLabel)
end

#works?(op) ⇒ Boolean

Returns:

  • (Boolean)


104
105
106
107
# File 'lib/fisk.rb', line 104

def works? op
  type = op.type
  type == "m64" || type == "m"
end