import-trace: compile with both LLVM 3.1+3.3

Commit 52322ac broke compilation with LLVM 3.1.

Change-Id: Ia0e1d91258e6be799cfbd3b6e9693894a6bc5650
This commit is contained in:
Horst Schirmeier
2013-08-22 18:08:15 +02:00
parent 470d455e34
commit 64840c02e4
3 changed files with 12 additions and 6 deletions

View File

@ -24,9 +24,11 @@ bool InstructionImporter::handle_ip_event(fail::simtime_t curtime, instruction_c
return false;
}
ObjectFile *obj = dyn_cast<ObjectFile, Binary>(binary.get());
// necessary due to an AspectC++ bug triggered by LLVM 3.3's dyn_cast()
#ifndef __puma
ObjectFile *obj = llvm::dyn_cast<ObjectFile>(binary.get());
disas.reset(new LLVMDisassembler(obj));
#endif
disas->disassemble();
LLVMDisassembler::InstrMap &instr_map = disas->getInstrMap();
LOG << "instructions disassembled: " << instr_map.size() << " Triple: " << disas->GetTriple() << std::endl;

View File

@ -70,9 +70,11 @@ bool RandomJumpImporter::handle_ip_event(fail::simtime_t curtime, instruction_co
return false;
}
ObjectFile *obj = dyn_cast<ObjectFile, Binary>(binary.get());
// necessary due to an AspectC++ bug triggered by LLVM 3.3's dyn_cast()
#ifndef __puma
ObjectFile *obj = dyn_cast<ObjectFile>(binary.get());
disas.reset(new LLVMDisassembler(obj));
#endif
disas->disassemble();
LLVMDisassembler::InstrMap &instr_map = disas->getInstrMap();
LOG << "instructions disassembled: " << instr_map.size() << " Triple: " << disas->GetTriple() << std::endl;

View File

@ -108,9 +108,11 @@ bool RegisterImporter::handle_ip_event(fail::simtime_t curtime, instruction_coun
return false;
}
ObjectFile *obj = dyn_cast<ObjectFile, Binary>(binary.get());
// necessary due to an AspectC++ bug triggered by LLVM 3.3's dyn_cast()
#ifndef __puma
ObjectFile *obj = dyn_cast<ObjectFile>(binary.get());
disas.reset(new LLVMDisassembler(obj));
#endif
disas->disassemble();
LLVMDisassembler::InstrMap &instr_map = disas->getInstrMap();
LOG << "instructions disassembled: " << instr_map.size() << " Triple: " << disas->GetTriple() << std::endl;