about summary refs log tree commit diff stats
path: root/subx
Commit message (Collapse)AuthorAgeFilesLines
* 5121Kartik Agaram2019-04-231-1/+1
|
* 5120Kartik Agaram2019-04-231-1/+1
|
* 5118 - convert int to stringKartik Agaram2019-04-239-0/+285
|
* 5117Kartik Agaram2019-04-231-0/+1
|
* 5116Kartik Agaram2019-04-231-0/+1
|
* 5115Kartik Agaram2019-04-222-1/+1
|
* 5114 - helper for idiv instructionKartik Agaram2019-04-212-0/+40
|
* 5113 - x86's integer division (idiv) instructionKartik Agaram2019-04-212-2/+94
|
* 5112Kartik Agaram2019-04-192-1/+63
|
* 5111Kartik Agaram2019-04-181-3/+3
|
* 5110Kartik Agaram2019-04-181-2/+3
|
* Add functionality to support labels as imm32 arguments to opcodesnc2019-04-181-0/+13
|
* 5108Kartik Agaram2019-04-182-10/+10
|
* 5107Kartik Agaram2019-04-182-4/+281
|
* 5106Kartik Agaram2019-04-173-2/+147
|
* 5105Kartik Agaram2019-04-168-395/+207
| | | | | Pull in a _different_ function than `next-word` (commit 5092) into a shared file between phases. Let's see how this goes.
* 5104Kartik Agaram2019-04-162-18/+13
| | | | Don't forget metadata for string literals.
* 5103Kartik Agaram2019-04-162-61/+88
|
* 5102 - tokenize string literalsKartik Agaram2019-04-162-0/+582
| | | | | | Current plan: $ cat files.subx ... |dquotes |assort |pack |survey |hex > a.out
* 5102Kartik Agaram2019-04-167-11/+11
|
* 5101Kartik Agaram2019-04-161-1/+1
|
* 5100Kartik Agaram2019-04-161-1/+1
|
* 5099Kartik Agaram2019-04-161-4/+4
|
* 5098Kartik Agaram2019-04-161-6/+6
|
* 5097Kartik Agaram2019-04-162-8/+10
|
* 5096Kartik Agaram2019-04-161-2/+2
|
* 5095Kartik Agaram2019-04-161-1/+1
|
* 5094Kartik Agaram2019-04-161-2/+25
| | | | Split off a couple of tests so we can name desired behaviors.
* 5093Kartik Agaram2019-04-161-3/+3
| | | | Bugfix in string escapes.
* 5092Kartik Agaram2019-04-156-253/+492
| | | | | | | Realization: 'next-word' can't be reused in converting string literals, because it has to understand string literals. Let's just keep each phase self-contained.
* 5091Kartik Agaram2019-04-131-3/+6
|
* 5090Kartik Agaram2019-04-1315-911/+162
| | | | | | | Start using the new newline escape in string literals everywhere. I could use it more aggressively, but it makes tests harder to read. So only one line of text per string for now.
* 5089Kartik Agaram2019-04-132-8/+8
| | | | Fix CI; unfortunately it runs C++98.
* Add support for escape sequences in string literals fixed traces so they can ↵nc2019-04-134-12/+39
| | | | handle newlines
* 5087Kartik Agaram2019-04-122-1/+2
| | | | | | | | Fix CI. For some reason allocating 4KB natively on Linux triggers a segfault. Temporarily reducing segment size to 256 bytes; that's large enough for the test. But it's not a long-term solution. Maybe I need to grow the heap with sbrk()?
* 5086Kartik Agaram2019-04-121-0/+8
|
* 5085 - 'assort' phase done!Kartik Agaram2019-04-124-408/+510
| | | | | | | | | | | | | | | | | Current plan for SubX translator: $ cat files.subx ... |assort |pack |survey |hex > a.out Higher-level notations will be inserted at the start of the pipeline. The first (and needed for bootstrapping) is for string literals. $ cat files.subx ... |string-literals |assort |pack |survey |hex > a.out Alternatively, we should check how often we use string literals and just convert them by hand. They're used all over in tests, and converting them would make tests hard (even harder) to read.
* 5084Kartik Agaram2019-04-117-9/+9
|
* 5083Kartik Agaram2019-04-111-1/+2
|
* 5082Kartik Agaram2019-04-111-2/+3
|
* 5080Kartik Agaram2019-04-116-110/+78
|
* 5078Kartik Agaram2019-04-111-4/+4
|
* 5076Kartik Agaram2019-04-101-0/+0
|
* 5075Kartik Agaram2019-04-101-0/+0
|
* 5074Kartik Agaram2019-04-1012-125/+290
| | | | | | | | | | | | | Fail early when writing to a fake file runs out of space. Makes debugging tests easier. Reads from files, on the other hand, are only buffering to a temporary stream, so it makes sense to silently stop when they run out of space. In the process I uncovered a testing bug in pack.subx: I was missing a trailing space in the expected result, but the test still passed because the space was getting truncated. Being principled about aborting on overflow by default will help avoid such issues.
* 5073Kartik Agaram2019-04-101-2/+2
|
* 5072Kartik Agaram2019-04-101-15/+1
|
* 5071Kartik Agaram2019-04-101-12/+15
|
* 5070Kartik Agaram2019-04-101-1/+1
|
* 5069Kartik Agaram2019-04-101-7/+7
|