about summary refs log tree commit diff stats
path: root/subx/072slice.subx
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' into dquotes-1Kartik Agaram2019-05-101-2/+14
|\ | | | | | | Segfault in this branch is now fixed.
| * 5151 - use mmap everywhere we need a heapKartik Agaram2019-05-101-2/+14
| | | | | | | | | | All tests passing now. Things are very explicit; before a program can `allocate` memory, it has to first obtain a segment from the OS using `new-segment`.
* | standardize function namesKartik Agaram2019-05-021-12/+12
|/ | | | | Operations on buffered-file now always include the word 'buffered'. More verbose, but hopefully this highlights holes in the library.
* 5090Kartik Agaram2019-04-131-10/+2
| | | | | | | 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.
* 5060Kartik Agaram2019-04-061-3/+51
|
* 5059Kartik Agaram2019-04-051-1/+1
|
* 5056Kartik Agaram2019-04-051-2/+144
|
* 5053Kartik Agaram2019-04-031-113/+0
| | | | | | write-stream-buffered isn't a clean abstraction. Ignoring the 'read' index of a stream is a hack. It's just saving us the trouble of a rewind-stream. So make it a helper of pack.subx rather than part of the standard library.
* 5024Kartik Agaram2019-03-271-11/+11
|
* 5011Kartik Agaram2019-03-201-2/+2
| | | | | | | New convention: compare 'with' for asymmetric comparisons (greater or lesser than), and compare 'and' for symmetric comparisons. Worth making this distinction even though the opcodes are identical; when we compare 'with', the order of operands is significant.
* 5009Kartik Agaram2019-03-201-1/+1
|
* 4999Kartik Agaram2019-03-101-1/+3
| | | | | | | | Fix CI. pack.subx was passing in emulation but not natively. Commit 4954 on Feb 10 was a real dud. First I find I forgot to reclaim space for locals (commit 4996). Now I find I haven't been tracking registers properly either.
* 4996 - back on pack.subxKartik Agaram2019-03-081-0/+2
| | | | | | | | | Yet another redrawing of responsibilities between convert and its helpers. In the process I discovered a bug in `write-stream-buffered` which ended up taking me through a detour to extract `browse_trace` into its own tool. It turns out just having long buffers is enough to need browse_trace. Simple operations like clearing a stream swamp a flat view of the trace.
* 4981 - no, go back to 3 phasesKartik Agaram2019-02-181-6/+5
| | | | | | | | | | | | | Considering how much trouble a merge phase would be (commit 4978), it seems simpler to just add the extra syntax for controlling the entry point of the generated ELF binary. But I wouldn't have noticed this if I hadn't taken the time to write out the commit messages of 4976 and 4978. Even if we happened to already have linked list primitives built, this may still be a good idea considering that I'm saving quite a lot of code in duplicated entrypoints.
* 4968Kartik Agaram2019-02-141-0/+275
|
* 4966Kartik Agaram2019-02-141-5/+5
| | | | Standardize how we show register allocation decisions.
* 4961Kartik Agaram2019-02-141-11/+29
|
* 4955Kartik Agaram2019-02-101-0/+7
| | | | Starting to build up Phase 2 (apps/pack) out of recently designed primitives.
* 4954Kartik Agaram2019-02-101-0/+102
|
* 4951Kartik Agaram2019-02-031-7/+5
| | | | Cleaner way to compare streams in tests.
* 4950Kartik Agaram2019-02-031-0/+520