[llvm-commits] [llvm] r62071 - in /llvm/trunk: lib/Analysis/BasicAliasAnalysis.cpp utils/TableGen/IntrinsicEmitter.cpp

Chris Lattner clattner at apple.com
Mon Jan 12 23:22:54 PST 2009


On Jan 12, 2009, at 3:21 PM, Nicolas Geoffray wrote:

> Hi Chris,
>
> This patch is making llc -march=cpp output invalid LLVM C++ API code.
> When compiling a .ll file with only:
>
> declare void @llvm.memcpy.i32(i8 *, i8 *, i32, i32)
>
> llc -march=cpp outputs:
>
>  SmallVector<AttributeWithIndex, 4> Attrs;
>  AttributeWithIndex PAWI;
>  PAWI.Index = 1U; PAWI.Attrs = 0 ;
>  Attrs.push_back(PAWI);
>  PAWI.Index = 2U; PAWI.Attrs = 0 ;
>  Attrs.push_back(PAWI);
>  PAWI.Index = 4294967295U; PAWI.Attrs = 0  | Attribute::NoUnwind;
>  Attrs.push_back(PAWI);
>  func_llvm_memcpy_i32_PAL = AttrListPtr::get(Attrs.begin(),  
> Attrs.end());
>
>
> Which gives an assertion error when being executed:
> Assertion failed: (Attrs[i].Attrs != Attribute::None && "Pointless
> attribute!"), function get, file Attributes.cpp, line 136.

Hi Nicolas,

This looks like a latent bug in -march=cpp.  Please see if r62155  
fixes it for you,

-Chris




More information about the llvm-commits mailing list