Add arrays to the compiler. Array globals get pre-assigned addresses from a counter (c_next_array). Track array names. arr[i] read emits: get base, index * 8, add, i32.wrap_i64, i64.load. arr[i] = val write emits the store sequence with $__tmp.