Kartik Agaram
dd9ba09a7c
4888
...
We only can't use rm32=5 when mod=0. Totally fine when it's mod=1.
2018-12-29 13:36:06 -08:00
Kartik Agaram
81605224f0
4847
2018-12-06 09:41:40 -08:00
Kartik Agaram
9d27e966b5
4808 - clean up comments in all subx files
2018-11-30 16:45:15 -08:00
Kartik Agaram
ee9a9237d6
4802
...
Some automated commenting cleanup. Still needs more careful manual scanning.
sed -i 's/^# 1-3/# . 1-3/' *.subx */*.subx
sed -i 's/^# op/# . op/' *.subx */*.subx
sed -i 's/# vim/# . . vim/' *.subx */*.subx
sed -i 's/^ # push args/ # . . push args/' *.subx */*.subx
sed -i 's/^ # discard args/ # . . discard args/' *.subx */*.subx
sed -i 's/^ # call/ # . . call/' *.subx */*.subx
sed -i 's/^ # prolog/ # . prolog/' *.subx */*.subx
sed -i 's/^ # epilog/ # . epilog/' *.subx */*.subx
sed -i 's/^ # save registers/ # . save registers/' *.subx */*.subx
sed -i 's/^ # restore registers/ # . restore registers/' *.subx */*.subx
sed -i 's/ operand / register /' *.subx */*.subx
2018-11-30 11:13:36 -08:00
Kartik Agaram
6030d7e2e5
4801
...
Reindent all SubX code to make some room for the new comment style.
2018-11-30 10:54:42 -08:00
Kartik Agaram
e5cbbea435
4780
2018-11-26 00:26:20 -08:00
Kartik Agaram
de21899cb2
4669
2018-10-05 21:50:20 -07:00
Kartik Agaram
94ad882e82
4668
2018-10-05 21:30:22 -07:00
Kartik Agaram
03d50cc83c
4667
...
Standardize on hyphens in all names.
And we'll use colons for namespacing labels in functions.
2018-10-05 19:49:47 -07:00
Kartik Agaram
ed0e64a981
4662
2018-10-05 10:42:16 -07:00
Kartik Agaram
d25e51dc0f
4644
2018-10-01 15:53:44 -07:00
Kartik Agaram
f872f7c726
4643
2018-10-01 15:18:00 -07:00
Kartik Agaram
2b51cba67c
4639
2018-10-01 12:28:30 -07:00
Kartik Agaram
1dcd9350ce
4624
...
Start requiring a '-o' flag to designate the output binary when translating.
Things currently get funky if you pass in multiple inputs, but that's ok.
This is the first step to supporting multiple input files for a single
output binary.
2018-09-30 23:12:54 -07:00
Kartik K. Agaram
c5d9a32fe6
4516
...
More calling convention tweaks.
Use EBP to get consistently at parameters and locals.
Always put the first function argument closest to EBP.
2018-09-24 22:55:37 -07:00
Kartik Agaram
7d4e351a0d
4503
...
Include LEA (load effective address) in the SubX subset of x86 ISA.
2018-09-22 23:19:39 -07:00
Kartik Agaram
8c580ba1de
4591
2018-09-22 10:33:41 -07:00
Kartik Agaram
25d381c7d4
4590
2018-09-22 10:32:26 -07:00
Kartik Agaram
9372c16c00
4581
...
Even more cuddling. We want to keep lines short where the opcode and operands
are self-explanatory.
If there are any implicit registers, etc., we'll continue to do the table
layout.
The first two columns look messy now; let's see how this goes.
Maybe I'll give up on the tabular layout altogether, just string args with
a single space.
2018-09-21 16:56:37 -07:00
Kartik Agaram
9ce8fd1cc1
4580
...
Since we're cuddling jump/call args next to the opcode, we can have longer
labels without messing up the layout!
2018-09-21 16:39:46 -07:00
Kartik Agaram
bd9f6d0cd0
4577
2018-09-21 15:38:36 -07:00
Kartik Agaram
9c50655a26
4576
2018-09-21 15:29:59 -07:00
Kartik Agaram
ab1bc98447
4569
2018-09-21 13:52:42 -07:00
Kartik Agaram
3364d19cd1
4561
2018-09-20 21:34:56 -07:00
Kartik Agaram
a49bc41365
4531 - automatically compute segment addresses
2018-09-01 20:10:06 -07:00
Kartik Agaram
6ff9ce26e8
4530 - create an apps/ directory
2018-09-01 10:54:20 -07:00
Kartik Agaram
ea7f869856
4529 - move examples to a sub-directory
2018-09-01 09:39:36 -07:00