Sha256: 2a590559d66c9553f7565de7347a590392372210331c0208b89ead7a39960f9c

Contents?: true

Size: 436 Bytes

Versions: 1

Compression:

Stored size: 436 Bytes

Contents

module Furnace
  class SSA::TerminatorInstruction < SSA::Instruction
    def terminator?
      true
    end

    def has_side_effects?
      exits?
    end

    def exits?
      raise NotImplementedError, "reimplement #{self.class}#exits?"
    end

    def successors
      operands.
        select do |value|
          value.type == SSA::BasicBlockType.new
        end.map do |value|
          value.name
        end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
furnace-0.4.0.beta.2 lib/furnace/ssa/terminator_instruction.rb