[llvm] [SelectionDAG] Fix bug related to demanded bits/elts for BITCAST (PR #139085)
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Wed May 14 08:18:45 PDT 2025
RKSimon wrote:
So this is what we're fighting I guess? https://alive2.llvm.org/ce/z/rqp6yU
```
----------------------------------------
define i8 @src1(<2 x i4> %a0, i4 %a1) {
#0:
%v = insertelement <2 x i4> %a0, i4 %a1, i32 0
%b = bitcast <2 x i4> %v to i8
%a = and i8 %b, 240
ret i8 %a
}
=>
define i8 @tgt1(<2 x i4> %a0, i4 %a1) {
#0:
%b = bitcast <2 x i4> %a0 to i8
%a = and i8 %b, 240
ret i8 %a
}
Transformation doesn't verify!
----------------------------------------
define i8 @src2(<2 x i4> %a0, i4 %a1) {
#0:
%v = insertelement <2 x i4> %a0, i4 %a1, i32 0
%b = bitcast <2 x i4> %v to i8
%a = and i8 %b, 240
ret i8 %a
}
=>
define i8 @tgt2(<2 x i4> %a0, i4 %a1) {
#0:
%v = insertelement <2 x i4> %a0, i4 0, i32 0
%b = bitcast <2 x i4> %v to i8
ret i8 %b
}
```
https://github.com/llvm/llvm-project/pull/139085
More information about the llvm-commits
mailing list