Displaying 4 results from an estimated 4 matches for "fshl_zero_shift_guard".
2019 Feb 25
4
funnel shift, select, and poison
There's a question about the behavior of funnel shift [1] + select and
poison here that reminds me of previous discussions about select and poison
[2]:
https://github.com/AliveToolkit/alive2/pull/32#discussion_r257528880
Example:
define i8 @fshl_zero_shift_guard(i8 %x, i8 %y, i8 %sh) {
%c = icmp eq i8 %sh, 0
%f = fshl i8 %x, i8 %y, i8 %sh
%s = select i1 %c, i8 %x, i8 %f ; shift amount is 0 returns x (same as fshl)
ret i8 %s
}
=>
define i8 @fshl_zero_shift_guard(i8 %x, i8 %y, i8 %sh) {
%f = fshl i8 %x, i8 %y, i8 %sh
ret i8 %f
}
Transformation doesn't...
2019 Feb 25
2
funnel shift, select, and poison
...ison
>
>
> There's a question about the behavior of funnel shift [1] + select and
> poison here that reminds me of previous discussions about select and
> poison
> [2]:
> https://github.com/AliveToolkit/alive2/pull/32#discussion_r257528880
>
> Example:
> define i8 @fshl_zero_shift_guard(i8 %x, i8 %y, i8 %sh) {
> %c = icmp eq i8 %sh, 0
> %f = fshl i8 %x, i8 %y, i8 %sh
> %s = select i1 %c, i8 %x, i8 %f ; shift amount is 0 returns x (same as
> fshl)
> ret i8 %s
> }
> =>
> define i8 @fshl_zero_shift_guard(i8 %x, i8 %y, i8 %sh) {
> %f = fshl i8 %x, i8 %y,...
2019 Feb 25
3
funnel shift, select, and poison
...nd poison
>
>
> There's a question about the behavior of funnel shift [1] + select and
> poison here that reminds me of previous discussions about select and poison
> [2]:
> https://github.com/AliveToolkit/alive2/pull/32#discussion_r257528880
>
> Example:
> define i8 @fshl_zero_shift_guard(i8 %x, i8 %y, i8 %sh) {
> %c = icmp eq i8 %sh, 0
> %f = fshl i8 %x, i8 %y, i8 %sh
> %s = select i1 %c, i8 %x, i8 %f ; shift amount is 0 returns x (same as
> fshl)
> ret i8 %s
> }
> =>
> define i8 @fshl_zero_shift_guard(i8 %x, i8 %y, i8 %sh) {
> %f = fshl i8 %x, i8 %y,...
2019 Feb 26
2
funnel shift, select, and poison
...funnel shift [1] + select
> and
> > poison here that reminds me of previous discussions about select and
> > poison
> > [2]:
> > https://github.com/AliveToolkit/alive2/pull/32#discussion_r257528880
> >
> > Example:
> > define i8 @fshl_zero_shift_guard(i8 %x, i8 %y, i8 %sh) {
> > %c = icmp eq i8 %sh, 0
> > %f = fshl i8 %x, i8 %y, i8 %sh
> > %s = select i1 %c, i8 %x, i8 %f ; shift amount is 0 returns x (same
> > as fshl)
> > ret i8 %s
> > }
> > =>
> > define i8 @fsh...