Class: Voodoo::ARMELFGenerator
- Inherits:
-
ARMGasGenerator
- Object
- CommonCodeGenerator
- ARMGasGenerator
- Voodoo::ARMELFGenerator
- Defined in:
- lib/voodoo/generators/arm_elf_generator.rb
Overview
Generator that produces ELF objects for arm
Instance Method Summary collapse
-
#initialize(params = {}) ⇒ ARMELFGenerator
constructor
A new instance of ARMELFGenerator.
- #output_file_name(input_name) ⇒ Object
- #output_file_suffix ⇒ Object
- #write(io) ⇒ Object
Methods inherited from ARMGasGenerator
#_common_emit, #add_constant, #arg_offset, #arg_reference, #arg_register, #auto_bytes, #auto_bytes_register, #auto_words, #begin_block, #begin_function, #byte, #call, #comment, #common_if, #create_frame, #destroy_frame, #emit, #emit_align, #emit_constants, #emit_constants_with_goto, #emit_export, #emit_function_prologue, #emit_label_size, #emit_label_type, #emit_load_word, #emit_store_word, #end_block, #end_function, #end_if, #eval_binop, #eval_expr, #get_byte, #get_word, #goto, #grow_frame, #ifelse, #ifeq, #ifge, #ifgt, #ifle, #iflt, #ifne, #let, #load_at, #load_value, #load_value_into_register, #local_offset, #offset_reference, #register_local?, #ret, #set, #set_byte, #set_word, #string, #tail_call, #value_ref, #word
Methods inherited from CommonCodeGenerator
#add, #add_function, #align, #assymetric_binop?, #at_expr?, #binop?, #block, #count_locals, #default_alignment, #each_statement, #emit, #emit_import, #emit_label, #emit_voodoo, #export, #features, #function, #gensym, #global?, #has_feature?, #import, #in_section, #integer?, #label, #local_register, #number_of_register_arguments, #number_of_stack_arguments, #real_section_name, #register?, #register_arg?, #registers_for_locals, #restore_frame, #restore_locals, #restore_registers_from_frame, #save_frame, #save_frame_and_locals, #save_locals, #save_registers_to_frame, #saved_frame_size, #section, #section=, #section_alias, #stack_align, #substitute_number, #substitution?, #symbol?, #symmetric_binop?, #undefined_symbols, #with_temporaries, #with_temporary
Constructor Details
#initialize(params = {}) ⇒ ARMELFGenerator
Returns a new instance of ARMELFGenerator.
9 10 11 12 13 |
# File 'lib/voodoo/generators/arm_elf_generator.rb', line 9 def initialize params = {} @asmgenerator = ARMGasGenerator.new params super(@asmgenerator) @elfgenerator = GasELFGenerator.new @asmgenerator end |
Instance Method Details
#output_file_name(input_name) ⇒ Object
15 16 17 |
# File 'lib/voodoo/generators/arm_elf_generator.rb', line 15 def output_file_name input_name @elfgenerator.output_file_name input_name end |
#output_file_suffix ⇒ Object
19 20 21 |
# File 'lib/voodoo/generators/arm_elf_generator.rb', line 19 def output_file_suffix @elfgenerator.output_file_suffix end |
#write(io) ⇒ Object
23 24 25 |
# File 'lib/voodoo/generators/arm_elf_generator.rb', line 23 def write io @elfgenerator.write io end |