Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-05-12 | tighten function definition spec | Quentin Carbonneaux | |
2022-05-12 | use an alias for \n in the il spec | Quentin Carbonneaux | |
2022-05-11 | document spacing in il reference | Quentin Carbonneaux | |
2022-03-07 | doc: export function main in hello world example | lincoln auster [they/them] | |
This enables the example to be compiled and run as-is, without any additional modification. | |||
2022-02-27 | doc: Add missing neg entry to index | Scott Graham | |
2022-02-24 | doc: minor fixes | Paul Ouellette | |
2022-02-17 | add rv64 backend | Michael Forney | |
It is mostly complete, but still has a few ABI bugs when passing floats in structs, or when structs are passed partly in register, and partly on stack. | |||
2022-02-11 | document the automatic use of bss | Quentin Carbonneaux | |
2022-02-11 | doc: fix name of export linkage flag | Paul Ouellette | |
2022-02-02 | shared linkage logic for func/data | Quentin Carbonneaux | |
2022-01-28 | implement float -> unsigned casts | Bor Grošelj Simić | |
amd64 lacks instruction for this so it has to be implemented with float -> signed casts. The approach is borrowed from llvm. | |||
2022-01-28 | implement unsigned -> float casts | Bor Grošelj Simić | |
amd64 lacks an instruction for this so it has to be implemented with signed -> float casts: - Word casting is done by zero-extending the word to a long and then doing a regular signed cast. - Long casting is done by dividing by two with correct rounding if the highest bit is set and casting that to float, then adding 1 to mantissa with integer addition | |||
2022-01-23 | Add a negation instruction | Eyal Sawady | |
Necessary for floating-point negation, because `%result = sub 0, %operand` doesn't give the correct sign for 0/-0. | |||
2021-10-22 | make variadic args explicit | Quentin Carbonneaux | |
Some abis, like the riscv one, treat arguments differently depending on whether they are variadic or not. To prepare for the upcomming riscv target, we change the variadic call syntax and give meaning to the location of the '...' marker. # new syntax %ret =w call $f(w %regular, ..., w %variadic) By nature of their abis, the change is backwards compatible for existing targets. | |||
2020-08-06 | fix a typo in call's BNF | Quentin Carbonneaux | |
Thanks to Jakob for pointing this out. | |||
2019-02-21 | doc: Aggregate types can be nested | Michael Forney | |
2019-02-21 | doc: Include `align` in data BNF | Michael Forney | |
2017-04-26 | Small corrections in documentation | Quentin Rameau | |
2017-04-18 | documentation update | Quentin Carbonneaux | |
2017-04-08 | nits in the documentation | Quentin Carbonneaux | |
2017-02-22 | turn the instruction index into a list | Quentin Carbonneaux | |
2017-02-03 | create an index for the instructions in the IL doc | Quentin Rameau | |
2017-01-20 | create an instruction index for the IL doc | Quentin Rameau | |
2017-01-20 | change 'b' and 'h' ordering in IL doc | Quentin Rameau | |
2016-11-09 | doc nits | Quentin Carbonneaux | |
2016-04-22 | update documentation with new fp conversions | Quentin Carbonneaux | |
2016-04-21 | oops fix wrong instruction names in doc | Quentin Carbonneaux | |
2016-04-20 | support calls with no return | Quentin Carbonneaux | |
I thought it would be harder (and maybe it is). My fear was that a call must be always followed by a parallel move from machine registers (this is an assumption in both spill and rega). This however remains true, because the ABI code generates a dummy "copy RAX" by accident! | |||
2016-03-29 | typos in il.txt, thanks Robert Ransom | Quentin Carbonneaux | |
2016-03-16 | document new shift operations | Quentin Carbonneaux | |
2016-03-15 | document exts and truncd | Quentin Carbonneaux | |
2016-03-15 | doc is now complete | Quentin Carbonneaux | |
2016-03-15 | massage Instructions section | Quentin Carbonneaux | |
2016-03-14 | finish the Memory section | Quentin Carbonneaux | |
2016-03-14 | compactify some instruction lists | Quentin Carbonneaux | |
2016-03-14 | start doc on memory instructions | Quentin Carbonneaux | |
2016-03-14 | start description of instructions | Quentin Carbonneaux | |
2016-03-13 | rework the types section | Quentin Carbonneaux | |
2016-03-13 | less redundancy in il.html | Quentin Carbonneaux | |
2016-03-11 | BNF Syntax becomes Notation | Quentin Carbonneaux | |
2016-03-11 | document constants | Quentin Carbonneaux | |
2016-03-10 | style | Quentin Carbonneaux | |
2016-03-10 | move constant section higher | Quentin Carbonneaux | |
2016-03-10 | be more precise | Quentin Carbonneaux | |
2016-03-10 | flesh Control section | Quentin Carbonneaux | |
2016-03-09 | number Control section | Quentin Carbonneaux | |
2016-03-09 | pheew, more il description | Quentin Carbonneaux | |
2016-03-08 | add links in toc | Quentin Carbonneaux | |
2016-03-08 | fix typos in il.txt | Quentin Carbonneaux | |
2016-03-08 | fix indent in BNF block | Quentin Carbonneaux | |