Displaying 2 results from an estimated 2 matches for "risbmux".
2017 Nov 30
2
TwoAddressInstructionPass bug?
...eEffects flag was incorrectly set while it actually shouldn't.
The attached patch and test case triggers an assert in TwoAddress.
(bin/llc ./tc_TwoAddr_crash.ll -mtriple=s390x-linux-gnu -mcpu=z13)
The only change in the patch is to remove the side effects flag from one
instruction:
- def RISBMux : RotateSelectRIEfPseudo<GRX32, GRX32>;
+ let hasSideEffects = 0 in
+ def RISBMux : RotateSelectRIEfPseudo<GRX32, GRX32>;
The input to TwoAddress is:
BB#0: derived from LLVM BB %0
Live Ins: %r2l
%vreg0<def> = COPY %r2l<kill>; GR32Bit:%vreg0
%vreg...
2017 Nov 30
0
TwoAddressInstructionPass bug?
...y set while it actually shouldn't.
>
> The attached patch and test case triggers an assert in TwoAddress. (bin/llc ./tc_TwoAddr_crash.ll -mtriple=s390x-linux-gnu -mcpu=z13)
>
> The only change in the patch is to remove the side effects flag from one instruction:
>
> - def RISBMux : RotateSelectRIEfPseudo<GRX32, GRX32>;
> + let hasSideEffects = 0 in
> + def RISBMux : RotateSelectRIEfPseudo<GRX32, GRX32>;
>
> The input to TwoAddress is:
>
> BB#0: derived from LLVM BB %0
> Live Ins: %r2l
> %vreg0<def> = COPY %r2l<k...