compiler/
kernel/
lib/
examples/
std/
arch/
char/
collections/
lang/
alloc/
ast/
gen/
bitset/
regalloc/
bitset.rad
5.7 KiB
data.rad
5.9 KiB
labels.rad
2.4 KiB
regalloc.rad
2.3 KiB
types.rad
594 B
il/
module/
parser/
resolver/
scanner/
alloc.rad
4.3 KiB
ast.rad
23.3 KiB
gen.rad
513 B
il.rad
16.1 KiB
lower.rad
272.5 KiB
module.rad
13.2 KiB
package.rad
1.3 KiB
parser.rad
77.8 KiB
resolver.rad
308.6 KiB
scanner.rad
17.5 KiB
sexpr.rad
6.3 KiB
strings.rad
2.2 KiB
types.rad
286 B
sys/
arch.rad
68 B
char.rad
855 B
collections.rad
39 B
fmt.rad
8.1 KiB
intrinsics.rad
467 B
io.rad
1.3 KiB
lang.rad
276 B
mem.rad
2.2 KiB
sys.rad
179 B
testing.rad
2.4 KiB
tests.rad
15.2 KiB
vec.rad
3.2 KiB
std.rad
281 B
scripts/
seed/
sublime/
test/
vim/
.gitignore
351 B
.gitsigners
112 B
CONTRIBUTING
2.1 KiB
LICENSE
1.1 KiB
Makefile
3.8 KiB
README
2.5 KiB
STYLE
2.5 KiB
std.lib
1.4 KiB
std.lib.test
380 B
lib/std/lang/gen/types.rad
raw
| 1 | //! Target-independent code generation types. |
| 2 | //! |
| 3 | //! Defines common records used by all code generation backends. |
| 4 | |
| 5 | /// Function address entry for printing. |
| 6 | export record FuncAddr: Copy { |
| 7 | /// Function name. |
| 8 | name: *[u8], |
| 9 | /// Instruction index where this function starts. |
| 10 | index: u32, |
| 11 | } |
| 12 | |
| 13 | /// Debug entry mapping an instruction to a source location. |
| 14 | export record DebugEntry: Copy { |
| 15 | /// Byte offset of the instruction from the start of the program. |
| 16 | pc: u32, |
| 17 | /// Module identifier. |
| 18 | moduleId: u16, |
| 19 | /// Byte offset into the module's source file. |
| 20 | offset: u32, |
| 21 | } |