Class: Kumi::IR::DF::Passes::TupleFoldCanonicalization::RegGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/kumi/ir/df/passes/tuple_fold_canonicalization.rb

Instance Method Summary collapse

Constructor Details

#initialize(function) ⇒ RegGenerator

Returns a new instance of RegGenerator.



155
156
157
158
# File 'lib/kumi/ir/df/passes/tuple_fold_canonicalization.rb', line 155

def initialize(function)
  @counters = Hash.new(-1)
  @counters[:v] = extract_highest(function)
end

Instance Method Details

#next(prefix: :v) ⇒ Object



160
161
162
163
164
# File 'lib/kumi/ir/df/passes/tuple_fold_canonicalization.rb', line 160

def next(prefix: :v)
  key = prefix.to_sym
  @counters[key] += 1
  :"#{key}#{@counters[key]}"
end