Skip to content

LinxV5: emit ELF machine 0xE9 - #78

Draft
zhoubot wants to merge 3 commits into
dev-llvm15_56from
codex/linxv5-elf-e9
Draft

LinxV5: emit ELF machine 0xE9#78
zhoubot wants to merge 3 commits into
dev-llvm15_56from
codex/linxv5-elf-e9

Conversation

@zhoubot

@zhoubot zhoubot commented Aug 31, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • change LinxV5 ELF e_machine from legacy 0x105 to the current LinxISA ABI value 0xE9
  • add MC/linker regression coverage for relocatable objects and executables

Closes #76.

Validation

  • fresh Release+assertions build of clang, lld, llvm-mc, llvm-readobj, and llvm-objdump
  • MC object header: EM_LinxV5 (0xE9)
  • lld executable header: EM_LinxV5 (0xE9)
  • clang integrated assembler/linker executable header: EM_LinxV5 (0xE9)
  • targeted FileCheck RUN lines pass

Integration gate

This PR stays draft until the SuperNPUBench corpus is rebuilt with this exact commit and the full promoted ASL model suite passes result-data validation.

@zhoubot

zhoubot commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator Author

Added commit f7b19f6 to close the PTO relative-generation Matrix path:

  • Matrix pseudo sources now remain T#/U#/M#/N# relative selectors and the destination is an ordinary Local Tile (U in the regression), not the retired ACC register class.
  • Multi-packet B.IOT emission preserves source order and places the destination on the terminating packet.
  • Mixed-type Matrix B.DATR now encodes PadValue=Zero.
  • Added the B.DATR dtype, Zero, RNONE, NOSAT assembler alias required by TileOP API.

Evidence: 5 focused MC/CodeGen tests pass; Clang integrated assembler produces an object whose disassembly preserves exact relative source order and ->u<64KB>; no MC printer crash.

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