class Fisk::UnresolvedRIPInstruction
Public Class Methods
new(insn, form, operands)
click to toggle source
# File lib/fisk.rb, line 330 def initialize insn, form, operands @insn = insn @form = form @operands = operands @retry = false end
Public Instance Methods
encode(buffer, labels)
click to toggle source
# File lib/fisk.rb, line 339 def encode buffer, labels # Use dummy values for any unresolvable operands operands = @operands.map do |op| if op.rip? && op.unresolved? # Try resolving the operands if labels.key?(op.displacement.name) Registers::Rip.new labels[op.displacement.name] else Registers::Rip.new 0x0CAFE end else op end end @form.encodings.first.encode buffer, operands end
retry?()
click to toggle source
# File lib/fisk.rb, line 337 def retry?; true; end