rubyx/lib/elf
2014-05-31 12:52:29 +03:00
..
constants.rb fix names and requires to get some elf out again (still crashes though) 2014-04-19 23:25:46 +03:00
null_section.rb fix names and requires to get some elf out again (still crashes though) 2014-04-19 23:25:46 +03:00
object_file.rb fix names and requires to get some elf out again (still crashes though) 2014-04-19 23:25:46 +03:00
object_writer.rb renamed program to boot_space, as in object_space at boot time. thats the way its going 2014-05-31 12:52:29 +03:00
README.markdown bit of renaming , cleaning and documentation 2014-04-25 13:29:12 +03:00
section.rb adds first version of the expanded as assembler from mikko 2014-04-14 18:09:56 +03:00
string_table_section.rb adds first version of the expanded as assembler from mikko 2014-04-14 18:09:56 +03:00
symbol_table_section.rb adds first version of the expanded as assembler from mikko 2014-04-14 18:09:56 +03:00
text_section.rb outputting hex for better comparison with objdump 2014-05-21 19:04:48 +03:00

Minimal elf support

This is really minnimal and works only for our current use case

  • no external functions (all syscalls)
  • only position independant code (no relocation)
  • embedded data (into text), no data section

I was close to going the wilson way, ie assmble, load into memory and jump

But it is nice to produce executables. Also easier to test, what with segfaults and such.

Executalbe files are not supported (yet?), but object files work. So the only thing that remains is to call the linker on the produced object file. The resulting file is an executable that actually works!!

Thanks to Mikko for starting this arm/elf project in the first place: https://github.com/cyndis/as

This part definately needs tlc, so anyone who is interested, dig in!