On Mar 13, 2012, at 6:01 PM, Sandeep Patel wrote:

> 2012/3/13 Chris Lattner <[email protected]>:
>> 
>> On Mar 13, 2012, at 1:21 PM, Rafael Espíndola wrote:
>> 
>>>> the language ref currently says that it is undefined what gets stored in 
>>>> the
>>>> other 7 bits when you write an i1.  That was just to give freedom to be
>>>> efficient, but should be changed to say "target dependent" or something 
>>>> like
>>>> that if you want to go this way.
>>> 
>>> Good point. I noticed the store had to be i1 for the i1 load to be
>>> legal, but I missed this one.
>> 
>> I really don't like "store of i1" having target-dependent semantics.  If the 
>> real issue here is that we have no way to represent a "byte load that is 
>> known to be all ones at the top part" then we should add support for that 
>> directly IMO.
>> 
>> Doing this should be relatively straightforward: just add a per-instruction 
>> metadata that indicates the number of leading zero bits that 
>> ComputeMaskedBits and friends can use.  The hard part is designing something 
>> that is suitably general to capture other interesting properties.
> 
> Just thinking out loud here --
> 
> Isn't this what metadata is for? Shouldn't we encode known value-range
> limits as metadata and just attach it in the proper places? That might
> lead nicely to future value-range optimization work.

Yep, lets discuss it in PR12251

-Chris
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to