From 886f8179ab5355e442f5baed07c65b5b29c40ba5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?P=C5=99emysl=20Janouch?=
Date: Mon, 3 Jul 2017 07:47:13 +0200
Subject: [PATCH] Move Go to a subdir
---
README.adoc | 17 +++++++++--------
.../object-file-libc.go | 0
gdb-object-file.go => dwarf/object-file.go | 0
gdb-experiment.go => dwarf/simple.go | 0
4 files changed, 9 insertions(+), 8 deletions(-)
rename gdb-object-file-libc.go => dwarf/object-file-libc.go (100%)
rename gdb-object-file.go => dwarf/object-file.go (100%)
rename gdb-experiment.go => dwarf/simple.go (100%)
diff --git a/README.adoc b/README.adoc
index 307f05e..07f8f9e 100644
--- a/README.adoc
+++ b/README.adoc
@@ -35,25 +35,26 @@ When no input file is specified, standard input is used. Similarly, the default
output filename is `a.out`. After the compilation, the resulting file can be
run on the target platform.
-gdb
----
-You may have noticed the `gdb-experiment.go` file. It is a non-optimizing
+DWARF
+-----
+You may have noticed the 'dwarf' directory. `simple.go` is a non-optimizing
version of the compiler targeting Linux only that adds DWARF debugging
information mapping code locations onto lines in the `ir-dump.txt` byproduct
output file. It's been rewritten in Go since managing all those binary buffers
required to build the symbol table proved to be too painful in C.
- $ go run gdb-experiment.go [INPUT-FILE] [OUTPUT-FILE]
+ $ go run dwarf/simple.go [INPUT-FILE] [OUTPUT-FILE]
-Use `break *0x4000b7` to get a breakpoint at the first Brainfuck instruction.
+Type `break *0x4000b7` into gdb to get a breakpoint at the first Brainfuck
+instruction.
image::gdb-experiment.png[align="center"]
-There is also `gdb-object-file.go` that generates an object file that can be
-statically linked with `ld`, and `gdb-object-file-libc.go` generates an
+There is also `object-file.go` that generates an object file that can be
+statically linked with `ld`, and `object-file-libc.go` that generates an
OS-independent binary that can be linked against the libc with the C compiler:
- $ go run gdb-object-file-libc.go program.bf program.o
+ $ go run dwarf/object-file-libc.go program.bf program.o
$ cc program.o -o program
Contributing and Support
diff --git a/gdb-object-file-libc.go b/dwarf/object-file-libc.go
similarity index 100%
rename from gdb-object-file-libc.go
rename to dwarf/object-file-libc.go
diff --git a/gdb-object-file.go b/dwarf/object-file.go
similarity index 100%
rename from gdb-object-file.go
rename to dwarf/object-file.go
diff --git a/gdb-experiment.go b/dwarf/simple.go
similarity index 100%
rename from gdb-experiment.go
rename to dwarf/simple.go