<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rcc-project/backend/lib/CodeGen/MachineFunction.cpp, branch master</title>
<subtitle>An optimizing compiler for C.
</subtitle>
<id>https://git.richardqin.org/rcc-project/atom?h=master</id>
<link rel='self' href='https://git.richardqin.org/rcc-project/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.richardqin.org/rcc-project/'/>
<updated>2026-08-11T09:37:42Z</updated>
<entry>
<title>[MIR] Accept fixed-baseline LLVM syntax</title>
<updated>2026-08-11T09:37:42Z</updated>
<author>
<name>Richard-Qin-X</name>
<email>richard.qin.001@gmail.com</email>
</author>
<published>2026-08-11T09:37:42Z</published>
<link rel='alternate' type='text/html' href='https://git.richardqin.org/rcc-project/commit/?id=6a7b083f322f4ac47e58cbf9d4d5fd4d1f6fecd0'/>
<id>urn:sha1:6a7b083f322f4ac47e58cbf9d4d5fd4d1f6fecd0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[CodeGen] Implement machine optimization and scheduling</title>
<updated>2026-08-09T09:03:19Z</updated>
<author>
<name>Richard-Qin-X</name>
<email>richard.qin.001@gmail.com</email>
</author>
<published>2026-08-09T09:03:19Z</published>
<link rel='alternate' type='text/html' href='https://git.richardqin.org/rcc-project/commit/?id=495c675771f43cfa12ab7a426a538be72fec1805'/>
<id>urn:sha1:495c675771f43cfa12ab7a426a538be72fec1805</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[CodeGen] Track debug instruction identities</title>
<updated>2026-08-01T10:17:33Z</updated>
<author>
<name>Richard-Qin-X</name>
<email>richard.qin.001@gmail.com</email>
</author>
<published>2026-08-01T10:17:33Z</published>
<link rel='alternate' type='text/html' href='https://git.richardqin.org/rcc-project/commit/?id=e0c77d80585428818c32886eb8c26755ea8ed159'/>
<id>urn:sha1:e0c77d80585428818c32886eb8c26755ea8ed159</id>
<content type='text'>
Add monotonic MIR debug instruction numbers and structured value substitutions. Verify live number uniqueness, meta-instruction exclusion, substitution graph integrity, and target subregister references while preserving debug identities during cloning.
</content>
</entry>
<entry>
<title>[CodeGen] Add target state and compilation status</title>
<updated>2026-08-01T06:50:04Z</updated>
<author>
<name>Richard-Qin-X</name>
<email>richard.qin.001@gmail.com</email>
</author>
<published>2026-08-01T06:50:04Z</published>
<link rel='alternate' type='text/html' href='https://git.richardqin.org/rcc-project/commit/?id=cfdbcc469f9691bd9dce3b0b86982a63d86ca6b7'/>
<id>urn:sha1:cfdbcc469f9691bd9dce3b0b86982a63d86ca6b7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[CodeGen] Add constant and jump table state</title>
<updated>2026-08-01T06:19:20Z</updated>
<author>
<name>Richard-Qin-X</name>
<email>richard.qin.001@gmail.com</email>
</author>
<published>2026-08-01T06:19:20Z</published>
<link rel='alternate' type='text/html' href='https://git.richardqin.org/rcc-project/commit/?id=a69d14b8ebc028dddc689658b08d42d3e83f5e38'/>
<id>urn:sha1:a69d14b8ebc028dddc689658b08d42d3e83f5e38</id>
<content type='text'>
Add stable, tombstone-preserving MachineConstantPool and MachineJumpTableInfo ownership. Define the versioned TargetConstant contract and integrate all table references with builders, verification, and deterministic deep cloning.
</content>
</entry>
<entry>
<title>[CMake] Match LLVM EH and RTTI defaults</title>
<updated>2026-08-01T05:01:07Z</updated>
<author>
<name>Richard-Qin-X</name>
<email>richard.qin.001@gmail.com</email>
</author>
<published>2026-08-01T05:01:07Z</published>
<link rel='alternate' type='text/html' href='https://git.richardqin.org/rcc-project/commit/?id=b4d1ddb99e1305f6ea6217e7570dda2a94b16e51'/>
<id>urn:sha1:b4d1ddb99e1305f6ea6217e7570dda2a94b16e51</id>
<content type='text'>
Disable C++ exceptions and RTTI by default while retaining explicit, validated opt-in switches. Replace the arena's exception syntax with an RAII construction guard so both configurations share one implementation.
</content>
</entry>
<entry>
<title>[CodeGen] Build the core MachineIR object model</title>
<updated>2026-07-31T21:27:13Z</updated>
<author>
<name>Richard-Qin-X</name>
<email>richard.qin.001@gmail.com</email>
</author>
<published>2026-07-31T21:27:13Z</published>
<link rel='alternate' type='text/html' href='https://git.richardqin.org/rcc-project/commit/?id=c759cebef15bdac2ef160065efd116fe6ed540a7'/>
<id>urn:sha1:c759cebef15bdac2ef160065efd116fe6ed540a7</id>
<content type='text'>
Add arena-owned, address-stable MachineFunction, MachineBasicBlock, and MachineInstr nodes with intrusive layout and instruction lists. Model every required MachineOperand category, reciprocal ties, source state, and immutable per-instruction memory references.

Implement physical and virtual register def-use chains whose back-links survive operand vector moves, plus vreg properties, tombstones, live-ins, reserved registers, and atomic CFG updates. Exercise ownership, reallocation, unlink/relink, cross-function rejection, and sanitizer paths.
</content>
</entry>
</feed>
