From 37de92e7a23ed6d22a8713f21e195bdc379527ab Mon Sep 17 00:00:00 2001 From: Tim Haines Date: Mon, 11 Nov 2024 20:09:03 -0600 Subject: extrae: Update dyninst dependency (#47359) --- .../packages/extrae/dyninst_instruction.patch | 19 ++++++++++++++ var/spack/repos/builtin/packages/extrae/package.py | 30 +++++++++++++++++----- 2 files changed, 42 insertions(+), 7 deletions(-) create mode 100644 var/spack/repos/builtin/packages/extrae/dyninst_instruction.patch (limited to 'var') diff --git a/var/spack/repos/builtin/packages/extrae/dyninst_instruction.patch b/var/spack/repos/builtin/packages/extrae/dyninst_instruction.patch new file mode 100644 index 0000000000..08c691c4f7 --- /dev/null +++ b/var/spack/repos/builtin/packages/extrae/dyninst_instruction.patch @@ -0,0 +1,19 @@ +diff --git a/src/launcher/dyninst/commonSnippets.C b/src/launcher/dyninst/commonSnippets.C +index 94904a23..2f918949 100644 +--- a/src/launcher/dyninst/commonSnippets.C ++++ b/src/launcher/dyninst/commonSnippets.C +@@ -482,9 +482,10 @@ string decodeBasicBlocks(BPatch_function * function, string routine) + ParseAPI::Block* b = ParseAPI::convert(block); + void * buf = b->region()->getPtrToInstruction(b->start()); + InstructionAPI::InstructionDecoder dec((unsigned char*)buf,b->size(),b->region()->getArch()); +- InstructionAPI::Instruction::Ptr insn; +- while((insn = dec.decode())) { +- res <format() << endl; ++ InstructionAPI::Instruction insn = dec.decode(); ++ while(insn.isValid()) { ++ res <