[lldb-dev] Heads up: LLDB is broken with LLVM at ToT

Zachary Turner zturner at google.com
Tue Dec 9 14:03:18 PST 2014


Here's the 3 errors.

..\..\tools\lldb\source\Expression\IRForTarget.cpp(413) : error C2678:
binary '!=' : no operator found which takes a left-hand operand of type
'const llvm::MDOperand' (or there is no acceptable conversion)
        d:\src\llvm\include\llvm/ADT/APSInt.h(291): could be 'bool
llvm::operator !=(int64_t,const llvm::APSInt &)'
        d:\src\llvm\include\llvm/ADT/APInt.h(1724): or       'bool
llvm::operator !=(uint64_t,const llvm::APInt &)'
        d:\src\llvm\include\llvm/ADT/StringRef.h(527): or       'bool
llvm::operator !=(llvm::StringRef,llvm::StringRef)'
        while trying to match the argument list '(const llvm::MDOperand,
const llvm::GlobalValue *)'



..\..\tools\lldb\source\Expression\IRForTarget.cpp(647) : error C2664:
'llvm::MDNode *llvm::MDNode::get(llvm::LLVMContext
&,llvm::ArrayRef<llvm::Metadata *>)' : cannot convert argument 2 from
'llvm::ArrayRef<llvm::Value *>' to 'llvm::ArrayRef<llvm::Metadata *>'
        No user-defined-conversion operator available that can perform this
conversion, or the operator cannot be called


..\..\tools\lldb\source\Expression\IRForTarget.cpp(1254) : error C2664:
'llvm::MDNode *llvm::MDNode::get(llvm::LLVMContext
&,llvm::ArrayRef<llvm::Metadata *>)' : cannot convert argument 2 from
'llvm::ArrayRef<llvm::Value *>' to 'llvm::ArrayRef<llvm::Metadata *>'
        No user-defined-conversion operator available that can perform this
conversion, or the operator cannot be called


On Tue Dec 09 2014 at 1:56:03 PM Zachary Turner <zturner at google.com> wrote:

> I'm not sure what the status of building LLDB with CMake is, but the
> normal way apple people build LLDB is to structure the directory like this:
>
> lldb
> --llvm
> ----tools
> ------clang
>
> Then open the xcode workspace and build the lldb-tool target.
>
> I'll sync to ToT again though so that I can get you a dump of the compiler
> errors I'm seeing.
>
> On Tue Dec 09 2014 at 1:52:40 PM Duncan P. N. Exon Smith <
> dexonsmith at apple.com> wrote:
>
>> I'm trying to build lldb now, but it's hung trying to build LLVM and
>> clang... but I already built these?  I don't really understand.
>>
>> Is there any way to make lldb point to my LLVM checkout?  I just want to
>> see the compiler errors so I can fix them :(.
>>
>> Alternatively, if some can email me a compile log with all the errors
>> (can you do a `make -k` or something?) I can send you a patch... this is
>> mechanical to update, but I need the compiler to tell me what's wrong.
>>
>> I expect the fixes to all be along these lines:
>>
>>  - Value *Ops[] => Metadata *Ops[]
>>
>>  - cast<ConstantInt>(N->getOperand(0)) =>
>>    mdconst::extract<ConstantInt>(N->getOperand(0))
>>
>>  - Value *Op = ConstantInt::get(...) =>
>>    Metadata *Op = ConstantAsMetadata::get(ConstantInt::get(...))
>>
>> Sorry for the breakage :(.
>>
>> > On 2014 Dec 9, at 13:41, Zachary Turner <zturner at google.com> wrote:
>> >
>> > If you sync llvm past git revision db7b69e3a634c5fdff0eceeee2a41ee49c3270a2
>> (svn r223802), your LLDB build will be broken.
>> >
>> > I was able to fix one of the errors, but this isn't really my area of
>> expertise, so I stopped when I realized I didn't know what I was doing.
>> >
>> > Just a warning not to sync LLVM until this is fixed.  I've CC'ed Sean
>> and Duncan as they are probably the best people to fix this, but if anyone
>> else knows how to fix it, feel free.
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20141209/d0b07340/attachment.html>


More information about the lldb-dev mailing list