[llvm-dev] llvm(3.7.0) pass core dump

Q Z via llvm-dev llvm-dev at lists.llvm.org
Fri Oct 30 21:47:43 PDT 2015

I wrote a very simple pass. The code as follows(rude.cpp):
#include "llvm/Pass.h"
#include "llvm/IR/Function.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/IR/BasicBlock"

using namespace llvm;

namespace {
  struct rude : public FunctionPass {
    static char ID;
    rude() : FunctionPass(ID) {}

    bool runOnFunction(Function &F) override {
      errs() << "Hello,I'm rude: ";
      errs().write_escaped(F.getName()) << '\n';

      for(Function::iterator b=F.begin(),be=F.end();b!=be;++b)
           for(BasicBlock::iterator i=b->begin(),ie=b->end();i!=ie;++i)
               errs()<<"\n\tanalysis instructions";
      return false;

char Hello::ID = 9;
static RegisterPass<rude> X("rude", "rude Pass", false, false);

then I use command :
opt -load XX/Debug+Assertion/rude.so <test1.bc> /dev/null to run the
rude.so file .
the error as follows:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151031/08e12569/attachment.html>

More information about the llvm-dev mailing list