[llvm] r309325 - [X86] Don't lie about legality to TLI's demanded bits.

Hans Wennborg via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 31 10:20:36 PDT 2017


Merged to 5.0 in r309587.

On Thu, Jul 27, 2017 at 2:29 PM, Ahmed Bougacha via llvm-commits
<llvm-commits at lists.llvm.org> wrote:
> Author: ab
> Date: Thu Jul 27 14:28:59 2017
> New Revision: 309325
>
> URL: http://llvm.org/viewvc/llvm-project?rev=309325&view=rev
> Log:
> [X86] Don't lie about legality to TLI's demanded bits.
>
> Like r309323, X86 had a typo where it passed the wrong flags to TLO.
>
> Found by inspection; I haven't been able to tickle this into having
> observable behavior.  I don't think it does, given that X86 doesn't have
> custom demanded bits logic, and the generic logic doesn't have a lot of
> exposure to illegal constructs.
>
> Modified:
>     llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
>
> Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=309325&r1=309324&r2=309325&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Thu Jul 27 14:28:59 2017
> @@ -30573,8 +30573,8 @@ static SDValue combineSelect(SDNode *N,
>      assert(BitWidth >= 8 && BitWidth <= 64 && "Invalid mask size");
>      APInt DemandedMask(APInt::getSignMask(BitWidth));
>      KnownBits Known;
> -    TargetLowering::TargetLoweringOpt TLO(DAG, DCI.isBeforeLegalize(),
> -                                          DCI.isBeforeLegalizeOps());
> +    TargetLowering::TargetLoweringOpt TLO(DAG, !DCI.isBeforeLegalize(),
> +                                          !DCI.isBeforeLegalizeOps());
>      if (TLI.ShrinkDemandedConstant(Cond, DemandedMask, TLO) ||
>          TLI.SimplifyDemandedBits(Cond, DemandedMask, Known, TLO)) {
>        // If we changed the computation somewhere in the DAG, this change will
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits


More information about the llvm-commits mailing list