[llvm-commits] [llvm] r45850 - /llvm/trunk/lib/VMCore/Verifier.cpp

Chris Lattner clattner at apple.com
Wed Jan 16 16:10:26 PST 2008


On Jan 16, 2008, at 2:58 PM, Duncan Sands wrote:

> Hi Chris,
>
>>> try this example.  Argpromotion deletes the zeroext attribute on the
>>> call.
>>
>> Right, it deletes it because the attr is on the call not the
>> function.  I can make this work, but shouldn't the attr also be on  
>> the
>> function?
>
> the attributes on the call determine (for example) how the call is  
> setup
> by the code generators.  Logically speaking there should be no need to
> examine the called function, even if it is available.  So I think it  
> is
> better to not rely on the codegenerators kindly examining the function
> attributes.  As such it is better not to drop call attributes in this
> way.

I agree, I'll fix argpromote.  However, the call and callee should  
both be marked zext, otherwise codegen of the callee won't do the  
right thing.

-Chris



More information about the llvm-commits mailing list