Class: Kumi::IR::Vec::Lower

Inherits:
Object
  • Object
show all
Defined in:
lib/kumi/ir/vec/lower.rb

Defined Under Namespace

Classes: RegGenerator

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(df_module:) ⇒ Lower

Returns a new instance of Lower.



20
21
22
23
# File 'lib/kumi/ir/vec/lower.rb', line 20

def initialize(df_module:)
  @df_module = df_module
  @reg_generator = RegGenerator.new
end

Instance Attribute Details

#df_moduleObject (readonly)

Returns the value of attribute df_module.



7
8
9
# File 'lib/kumi/ir/vec/lower.rb', line 7

def df_module
  @df_module
end

Instance Method Details

#callObject



25
26
27
28
29
30
31
32
# File 'lib/kumi/ir/vec/lower.rb', line 25

def call
  vec_module = Vec::Module.new(name: df_module.name)
  df_module.each_function do |df_function|
    vec_function = lower_function(df_function)
    vec_module.add_function(vec_function)
  end
  vec_module
end