Skip to content

LATX: translate AES and VAES encryption rounds directly - #432

Open
luzeng87 wants to merge 6 commits into
masterfrom
aes-vaes-ir2
Open

luzeng87 wants to merge 6 commits into
masterfrom
aes-vaes-ir2

Conversation

@luzeng87

@luzeng87 luzeng87 commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Summary

  • key AOT cache files by translator build identity so incompatible generated code is not reused
  • translate AESENC/AESENCLAST and VEX-encoded AES rounds directly
  • translate 256-bit VAES encryption rounds with LASX
  • add instruction-level JIT and AOT tests for AES, VEX AES, and VAES

Validation

This PR remains a draft pending review, CI, and final performance regression testing.

@luzeng87
luzeng87 marked this pull request as draft September 3, 2026 03:06
Signed-off-by: Lu Zeng <luzeng87@gmail.com>
Generate AESENC and AESENCLAST with scalar table-based IR2 instead of C helpers, and relocate the AES tables for AOT loading. Preserve memory and aliased round keys and release the consumed memory-address temporary before allocating the seven AES integer temporaries. This avoids corrupting the environment register on memory-source forms.

Signed-off-by: Lu Zeng <luzeng87@gmail.com>
Signed-off-by: Lu Zeng <luzeng87@gmail.com>
Signed-off-by: Lu Zeng <luzeng87@gmail.com>
Signed-off-by: Lu Zeng <luzeng87@gmail.com>
Signed-off-by: Lu Zeng <luzeng87@gmail.com>
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.

1 participant