3 require 'voodoo/generators/mips_gas_generator'
4 require 'voodoo/generators/gas_elf_generator'
7 # Generator that produces ELF objects for mips and mipsel
8 class MIPSELFGenerator < DelegateClass(MIPSGasGenerator)
9 def initialize params = {}
10 @asmgenerator = MIPSGasGenerator.new params
12 case params[:architecture]
20 opts = '-KPIC' + byte_order
21 @elfgenerator = GasELFGenerator.new @asmgenerator, opts
24 def output_file_name input_name
25 input_name.sub(/\.voo$/, '') + output_file_suffix
28 def output_file_suffix
33 @elfgenerator.write io
37 # Register class for mips
38 Voodoo::CodeGenerator.register_generator MIPSELFGenerator,
39 :architecture => :mips,
42 # Register class for mipsel
43 Voodoo::CodeGenerator.register_generator MIPSELFGenerator,
44 :architecture => :mipsel,