llvm / llvm/llvm-project

[Tracking] Byte type backend conformance

Open
#198,707 0 comments 0 reactions 1 assignee Claimed by @gandhi56 View on GitHub
metaissue
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

Tracking umbrella for LLVM IR `bN` backend support.

## Policy

Per [RFC: Byte type lowering in MIR](https://discourse.llvm.org/t/rfc-byte-type-lowering-in-mir/90797) and maintainer guidance: at SelectionDAG/GlobalISel entry, `bN` lowers to the same EVT/LLT as `iN` (same width). GlobalISel must match SelectionDAG.

Authoritative contract: `llvm/docs/CodeGen/ByteTypeLowering.rst` (in development; see associated patches).

## Per-target checklist

- [ ] AArch64 — SDAG + GISel `llc` tests
- [ ] AMDGPU
- [ ] ARM
- [ ] BPF
- [ ] DirectX — DXIL maps `bN` → `iN` (target-specific)
- [ ] Hexagon
- [ ] LoongArch
- [ ] MIPS
- [ ] NVPTX
- [ ] PowerPC
- [ ] RISCV
- [ ] SPIR-V
- [ ] SystemZ
- [ ] VE
- [ ] WebAssembly
- [ ] X86 — `byte-constants.ll`, `byte-ops.ll`
- [ ] Xtensa

## Shared items

- [ ] Codegen contract documentation
- [ ] GISel `ConstantByte` translation
- [ ] Multi-target conformance tests

Related: #178666 (IR byte type)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.