Skip to content

Conversation

@jserv
Copy link
Contributor

@jserv jserv commented Jan 16, 2026

This introduces CONFIG_T2C_OPT_LEVEL (0-3) to control LLVM optimization passes in T2C compilation. O1 provides ~50% faster compile time compared to -O3 while maintaining correctness.

It reduces CI time for T2C boot tests without sacrificing runtime performance in production builds (jit_defconfig still uses -O3).


Summary by cubic

Add a configurable LLVM optimization level for T2C (CONFIG_T2C_OPT_LEVEL 0–3) and use O1 in system_jit_defconfig to speed up CI boot tests without impacting production performance. O1 cuts T2C compile time by ~50% vs O3.

  • New Features
    • Kconfig adds T2C_OPT_LEVEL (0–3, default 3); Makefile passes it as CONFIG_T2C_OPT_LEVEL.
    • t2c.c selects the LLVM pass pipeline based on the level and validates the range; defaults to O3.
    • system_jit_defconfig sets level 1; CI BOOT_TIMEOUT reduced from 150 to 120.

Written for commit 20f4411. Summary will update on new commits.

This introduces CONFIG_T2C_OPT_LEVEL (0-3) to control LLVM optimization
passes in T2C compilation. O1 provides ~50% faster compile time compared
to -O3 while maintaining correctness.

It reduces CI time for T2C boot tests without sacrificing runtime
performance in production builds (jit_defconfig still uses -O3).
@jserv jserv added this to the release-2026.1 milestone Jan 16, 2026
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 5 files

@jserv jserv merged commit cdd9c96 into master Jan 16, 2026
23 checks passed
@jserv jserv deleted the ci-refine-system branch January 16, 2026 21:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants