This fixes the issue. I will check in your patch. Thanks! On Tue Dec 09 2014 at 2:20:02 PM Zachary Turner <ztur...@google.com> wrote:
> Testing now. I notice a few of the changes aren't actually required in > order to fix compiler errors. For example, this line: > > - ConstantInt *constant_int = > dyn_cast<ConstantInt>(alloc_md->getOperand(0)); > + ConstantInt *constant_int = > mdconst::dyn_extract<ConstantInt>(alloc_md->getOperand(0)); > > wasn't actually failing. Not sure if that's important, but I'm using your > fixed version anyway. > > On Tue Dec 09 2014 at 2:11:08 PM Duncan P. N. Exon Smith < > dexonsm...@apple.com> wrote: > >> Attaching a patch that should fix it. Can you try compiling? >> >> >> >> >> > On 2014 Dec 9, at 14:03, Zachary Turner <ztur...@google.com> wrote: >> > >> > 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 <ztur...@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 < >> dexonsm...@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 <ztur...@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. >> > >> >>
_______________________________________________ lldb-dev mailing list lldb-dev@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev