Skip to content

docs: align element-if guide with merged LLVM #131 - #284

Merged
VV0003 merged 1 commit into
linxfrom
docs/element-if-pr131-refresh
Oct 20, 2026
Merged

VV0003 merged 1 commit into
linxfrom
docs/element-if-pr131-refresh

Conversation

@VV0003

@VV0003 VV0003 commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Refresh docs/tileop-usage/element-if.md for merged LinxISA/llvm-project#131 and synchronize the compiler-option notes in options.md.

  • Explain explicit generic opt-in for logical32/logical64, fail-closed behavior, and O0/optnone rejection.
  • Replace the obsolete raw scalar-style executable promise with current typed-view/producer requirements; make the introductory FP32 example a complete TLOAD/element/TSTORE kernel using the existing global_tensor overloads.
  • Document fused GM input + histogram, whole-object separation and closed direct-call-context proofs, repeated atomic indices, and the narrow aligned zero-store exception.
  • Distinguish PE-domain from element execution masks, preserve Tile lifetime/domain contracts, and explicitly note that current API headers do not yet expose a PTO_PE_DOMAIN wrapper.
  • Record compiler revision and relevant regression fixtures; do not equate storage/type support with executable region support.

Validation

  • git diff --check: PASS.
  • Introductory FP32 Tile example and new fused histogram example: target objects generated with LLVM 47557a08c4b5 (merged via 084bbc311936) and current candidate API headers; fused histogram disassembly contains masked MGATHER and MGATHER.ADD.
  • Missing generic opt-in and O0 canaries: both rejected with the documented diagnostics.
  • LLVM/Clang call-context, commuting-store, generic-codegen and PE-domain focused regressions: 6/6 PASS.
  • Engine contract suite: 60/60 PASS; layout-interface + version tests: 6/6 PASS.
  • Full Python discovery: 129 tests, 1 failure, 1 import error, 7 skips. The failure is the weight-TLOAD text contract; the import error is the existing shallow-worktree ROOT.parents[2] lookup. Pristine c467c250fc7a in an identical shallow worktree reproduces the same named failure/import error and the exact 129-test totals: 1 failure, 1 error, 7 skips; zero new failures. No runtime/model requalification is claimed by this documentation-only PR.

Only two documentation files change. No API implementation, compiler, ISA checks or CI configuration is modified.

@VV0003
VV0003 enabled auto-merge (squash) October 20, 2026 04:13
@VV0003
VV0003 merged commit eba2998 into linx Oct 20, 2026
2 checks passed
WLDFA added a commit that referenced this pull request Oct 20, 2026
Reconcile with upstream #282 (TLEA binding) / #283 (0.59.0 display relabel) /
#284 while keeping the full active-identity migration to the PTO ISA v0.59.0.0
release.

- Identity/naming (this PR's delta): keep the full move — ABI
  pto-isa-0.59.0-mode-function-v1, encoding-projection SHA 91509080..., ELF note,
  contracts/pto-isa-0.59.0-tile-operations.json, engine-ops pto_source release
  provenance, reworked sync_pto_isa_0590_contract.py. This supersedes #283's
  display-only relabel, which left verify_pto_identity / the contract filename /
  engine-ops at 0.58.7.
- TLEA: adopt upstream #282's wrapper and TLEA.md; drop this branch's duplicate
  TLEA wrapper, its TLEA-specific tests, and the Tlea/TleaNegatives target
  fixtures + harness wiring (upstream's binding is canonical). Keep the shared
  selector-46 reassignment in the engine-contract test.
- support-status TLEA row updated to upstream's wrapper (RowMajor + CUBE_M32).
- Regenerated generated/engines.md.

make check passes (exit 0).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.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