llvm-project
b872179b - [AArch64][test] Add i256 codegen baseline tests (#183587)

Commit
46 days ago
[AArch64][test] Add i256 codegen baseline tests (#183587) ## Summary Add baseline codegen tests for i256 operations on AArch64: - `bitcnt-i256.ll`: ctpop, ctlz, cttz, Hamming distance, parity (3 RUN lines: +neon, +sve, +cssc) - `cmp-i256.ll`: 8 icmp variants (slt/sgt/sle/sge/ult/ugt/ule/uge) + select - `div-i256.ll`: udiv, sdiv, urem, srem, power-of-2, and constant division - `mul-i256.ll`: multiply, multiply-by-constant, add, sub, and, or, xor - `shift-i256.ll`: variable shl/lshr/ashr, constant shifts, narrow (i32) amounts These are test-only NFC pre-patches for `__int256` builtin type support (#182733). i256 is already a valid LLVM IR type; these tests capture the current baseline codegen. The main PR will update the CHECK lines to show codegen improvements (e.g., direct libcall routing for division/multiply). ## Test plan - All 5 tests pass with `llvm-lit` on upstream `main` (generated with `update_llc_test_checks.py` using upstream `llc`) ## AI Disclosure This patch was developed with assistance from Claude (Anthropic). All commits carry `Assisted-by: Claude (Anthropic)` and `Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>` trailers, per the [LLVM AI Tool Policy](https://llvm.org/docs/DeveloperPolicy.html#use-of-ai-generated-contributions). All code has been reviewed and validated by the author. --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Author
Parents
Loading