insert a compile phase to emit some debug info

This commit is contained in:
Kartik K. Agaram 2021-05-14 11:54:42 -07:00
parent 2df1d1a730
commit ff8ec9bcff
8 changed files with 2921 additions and 2320 deletions

BIN
linux/labels_baremetal Executable file

Binary file not shown.

2831
linux/labels_baremetal.subx Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -216,7 +216,7 @@ bootstrap/bootstrap translate [01]*.subx random.subx -o random
# Phases of the self-hosted SubX translator.
for phase in hex survey_elf survey_baremetal pack assort dquotes tests
for phase in hex survey_elf survey_baremetal labels_baremetal pack assort dquotes tests
do
echo $phase
bootstrap/bootstrap translate [01]*.subx subx-params.subx $phase.subx -o $phase
@ -314,7 +314,7 @@ done
# Phases of the self-hosted SubX translator.
for app in hex survey_elf survey_baremetal pack assort dquotes tests
for app in hex survey_elf survey_baremetal labels_baremetal pack assort dquotes tests
do
echo $app
./translate_subx [01]*.subx subx-params.subx $app.subx

View File

@ -137,7 +137,7 @@ bootstrap/bootstrap translate [01]*.subx random.subx -o random
# Phases of the self-hosted SubX translator.
for phase in hex survey_elf survey_baremetal pack assort dquotes tests
for phase in hex survey_elf survey_baremetal labels_baremetal pack assort dquotes tests
do
echo $phase
bootstrap/bootstrap translate [01]*.subx subx-params.subx $phase.subx -o $phase
@ -211,7 +211,7 @@ done
# Phases of the self-hosted SubX translator.
for app in hex survey_elf survey_baremetal pack assort dquotes tests
for app in hex survey_elf survey_baremetal labels_baremetal pack assort dquotes tests
do
echo $app
./translate_subx_emulated [01]*.subx subx-params.subx $app.subx

View File

@ -12,23 +12,24 @@
set -e
cat $* |linux/braces > a.braces
cat $* |linux/braces > a.braces
cat a.braces |linux/calls > a.calls
cat a.braces |linux/calls > a.calls
cat a.calls |linux/sigils > a.sigils
cat a.calls |linux/sigils > a.sigils
cat a.sigils |linux/tests > a.tests
cat a.sigils |linux/tests > a.tests
# no assort since baremetal SubX doesn't have segments yet
cat a.tests |linux/dquotes > a.dquotes
cat a.tests |linux/dquotes > a.dquotes
cat a.dquotes |linux/pack > a.pack
cat a.dquotes |linux/pack > a.pack
cat a.pack |linux/survey_baremetal > a.survey
cat a.pack |linux/survey_baremetal > labels
cat a.pack |linux/labels_baremetal labels > a.survey
cat a.survey |linux/hex > a.bin
cat a.survey |linux/hex > a.bin
# Create code.img containing a.bin
dd if=/dev/zero of=code.img count=20160 # 512-byte sectors, so 10MB

View File

@ -3,27 +3,37 @@
#
# This script uses emulation, so it does not require x86 or Linux. However it
# is slow.
#
# A couple of gotchas:
# * Many phases here have no error-checking. Perhaps I should use a
# version of translate_subx_debug for baremetal.
# * Don't pass in numbered .subx files without translated .mu files. Our test
# harness is in test.mu, and only Mu programs can run tests in baremetal.
#
# The top level is in general not as rigorous about avoiding dependency cycles
# as the lower-level tools in linux/
set -e
set -v
cat $* |linux/bootstrap/bootstrap run linux/braces > a.braces
cat $* |linux/bootstrap/bootstrap run linux/braces > a.braces
cat a.braces |linux/bootstrap/bootstrap run linux/calls > a.calls
cat a.braces |linux/bootstrap/bootstrap run linux/calls > a.calls
cat a.calls |linux/bootstrap/bootstrap run linux/sigils > a.sigils
cat a.calls |linux/bootstrap/bootstrap run linux/sigils > a.sigils
cat a.sigils |linux/bootstrap/bootstrap run linux/tests > a.tests
cat a.sigils |linux/bootstrap/bootstrap run linux/tests > a.tests
# no assort since baremetal SubX doesn't have segments yet
cat a.tests |linux/bootstrap/bootstrap run linux/dquotes > a.dquotes
cat a.tests |linux/bootstrap/bootstrap run linux/dquotes > a.dquotes
cat a.dquotes |linux/bootstrap/bootstrap run linux/pack > a.pack
cat a.dquotes |linux/bootstrap/bootstrap run linux/pack > a.pack
cat a.pack |linux/bootstrap/bootstrap run linux/survey_baremetal > a.survey
cat a.pack |linux/bootstrap/bootstrap linux/survey_baremetal > labels
cat a.pack |linux/bootstrap/bootstrap linux/labels_baremetal labels > a.survey
cat a.survey |linux/bootstrap/bootstrap run linux/hex > a.bin
cat a.survey |linux/bootstrap/bootstrap run linux/hex > a.bin
# Create code.img containing a.bin
dd if=/dev/zero of=code.img count=20160 # 512-byte sectors, so 10MB