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.



81
82
83
# File 'lib/fisk.rb', line 81

def initialize displacement
  @displacement = displacement
end

Instance Attribute Details

#displacementObject

Returns the value of attribute displacement.



79
80
81
# File 'lib/fisk.rb', line 79

def displacement
  @displacement
end

Instance Method Details

#memory?Boolean

Returns:

  • (Boolean)


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

def memory?; true; end

#op_valueObject



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

def op_value
  0x0
end

#rex_valueObject



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

def rex_value
  0x0
end

#rip?Boolean

Returns:

  • (Boolean)


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

def rip?; true; end

#unresolved?Boolean

Returns:

  • (Boolean)


90
91
92
# File 'lib/fisk.rb', line 90

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

#works?(op) ⇒ Boolean

Returns:

  • (Boolean)


85
86
87
88
# File 'lib/fisk.rb', line 85

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