On Aarc64 SHIFT_COUNT_TRUNCATED is only true if SIMD code generation is 
disabled. This is because the simd instructions can be used for shifting but 
they do not truncate the shift count.

-----Original Message-----
From: Richard Kenner [mailto:[email protected]] 
Sent: Monday, August 7, 2017 2:02 PM
To: [email protected]
Cc: [email protected]; Michael Collison <[email protected]>; nd 
<[email protected]>
Subject: Re: [PATCH] [Aarch64] Optimize subtract in shift counts

> That is simplify:
> (SHIFT A (32 - B)) -> (SHIFT A (AND (NEG B) 31)) etc.

I think you need SHIFT_COUNT_TRUNCATED to be true for this to be valid, but 
this is exactly what I was getting at in my last message.

Reply via email to