[PATCH] Revert 221429 and fix bug in TargetLowering::SimplifyDemandedBits

Quentin Colombet qcolombet at apple.com
Tue Jan 27 10:48:56 PST 2015

Hi Gil,

Thanks for checking.
I will try to give a try later this week.

One question though!

First, some context.
I can see what kind of bug your patch fixes but I am not convinced that we should remove the SHRUNK_BLEND node. This node prevents optimization on VSELECT (either generic or target specific) to take place later on. This is required because the boolean feeding the related node does not match anymore the expected layout of x86 generic boolean and if those optimizations happens, we may generate wrong code.

Please clarify how your patch addresses that.


On Jan 27, 2015, at 12:01 AM, Gil Rapaport <gil.rapaport at intel.com> wrote:

> Hi Quentin,
> I ran lnt w/ spec2006 and didn't witness any related performance degradations. However if you could also run it (for more coverage if you have other externals, and to double-check me) that would be great.
> One thing I did notice is that this specific sext-in-reg may be optimized away if left alone: DAGCombiner checks whether the value was already sign extended and drops it (this actually happens in vselect-avx.ll). This suggests that at least on some conditions this X86 optimization is redundant all together, but this requires thorough checking beyond this bug fix.
> Thanks,
> Gil
> http://reviews.llvm.org/D6949
>  http://reviews.llvm.org/settings/panel/emailpreferences/

More information about the llvm-commits mailing list