[llvm] [llubi] Add support for byte types (PR #200672)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 1 07:18:12 PDT 2026


================
@@ -204,9 +239,39 @@ define void @main() {
 ; CHECK-NEXT:   %load_struct_noundef = load { i8, i32 }, ptr %alloc_struct_padding, align 4, !noundef !0 => { i8 0, i32 0 }
 ; CHECK-NEXT:   %alloc_ptr = alloca ptr, align 8 => ptr 0x90 [alloc_ptr]
 ; CHECK-NEXT:   store ptr %alloc_ptr, ptr %alloc_ptr, align 8
+; CHECK-NEXT:   %bytes = load b64, ptr %alloc_ptr, align 8 => b64 00000000(00100110) 00000000(01110001) 00000000(00111100) 00000000(00111001) 00000000(10001010) 00000000(10010101) 00000000(00001000) 10010000(00101100) 
----------------
nikic wrote:

I find the byte printing quite confusing.

For the case where we have a full valid tag, can we print the corresponding provenance? (Ideally also in the case where we have a b16 with two full tags).

For the rest, one thing that confused me is the switch between hex and binary without any indication. 00 might refer to two hex zeros, or to two bits (similar for !! and ??).

https://github.com/llvm/llvm-project/pull/200672


More information about the llvm-commits mailing list