radianceRadiance self-hosting compiler home log refs
cloudhead/memory-safety
  • master
  • agent/cell-permissions
  • cloudhead/master-next
  • agent/master-fixes
  • agent/opaque-records
  • agent/safe-ast
  • agent/lexical-regions-kernel-t2
  • agent/kernel-t2
  • kernel
  • cloudhead/memory-safety
  • cloudhead/generic-core-types
  • radiance-generics
  • ai/ril-safety
01c735ad lang: enforce unsafe memory access Alexis Sellier 16 days ago
Clone
compiler/ lib/ examples/ std/ arch/ char/ collections/ lang/ alloc/ ast/ gen/ il/ module/ parser/ resolver/ scanner/ alloc.rad 5.4 KiB ast.rad 23.1 KiB gen.rad 507 B il.rad 15.3 KiB lower.rad 271.6 KiB module.rad 13.5 KiB package.rad 1.2 KiB parser.rad 78.7 KiB resolver.rad 314.0 KiB scanner.rad 17.4 KiB sexpr.rad 6.3 KiB strings.rad 2.2 KiB types.rad 280 B sys/ arch.rad 68 B char.rad 855 B collections.rad 39 B fmt.rad 8.1 KiB intrinsics.rad 683 B io.rad 1.4 KiB lang.rad 360 B mem.rad 2.2 KiB sys.rad 173 B testing.rad 2.4 KiB tests.rad 15.4 KiB vec.rad 4.8 KiB std.rad 358 B scripts/ seed/ sublime/ test/ vim/ .gitignore 336 B .gitsigners 112 B LICENSE 1.1 KiB Makefile 3.7 KiB README 2.5 KiB STYLE 2.5 KiB std.lib 1.2 KiB std.lib.test 373 B
lib/std/lang/gen.rad 507 B raw
1
//! Code generation framework.
2
//!
3
//! Target-independent infrastructure for lowering IL to machine code.
4
//! Target-specific backends (e.g., `std::arch::rv64`) provide
5
//! instruction selection and emission.
6
7
export mod labels;
8
export mod bitset;
9
export mod regalloc;
10
export mod data;
11
export mod types;
12
13
/// Physical register.
14
///
15
/// Lightweight wrapper around a register number. Used both in the
16
/// target-independent register allocator and in architecture-specific
17
/// backends.
18
export record Reg(u8);