[DynInst_API:] [dyninst/dyninst] 8200fe: Detect bclr as return in Instruction::getCategory


Date: Mon, 31 Mar 2025 22:23:54 -0700
From: Tim Haines <noreply@xxxxxxxxxx>
Subject: [DynInst_API:] [dyninst/dyninst] 8200fe: Detect bclr as return in Instruction::getCategory
  Branch: refs/heads/thaines/ppc_return_semantics
  Home:   https://github.com/dyninst/dyninst
  Commit: 8200fe9ac796faf714188140eb6a9e753adb1d8d
      https://github.com/dyninst/dyninst/commit/8200fe9ac796faf714188140eb6a9e753adb1d8d
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/Instruction.C

  Log Message:
  -----------
  Detect bclr as return in Instruction::getCategory


  Commit: a7f08cd01fc7d611e8a6ce91e1ebae6a384ab3cf
      https://github.com/dyninst/dyninst/commit/a7f08cd01fc7d611e8a6ce91e1ebae6a384ab3cf
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M parseAPI/src/IA_power.C

  Log Message:
  -----------
  Remove blr search in IA_power::isReturn

The instruction decoder now correctly detects subroutine returns based
on the bclr idiom described in the operand decoder there.


  Commit: 6715f27add606a9960b94593043312cc8acbf937
      https://github.com/dyninst/dyninst/commit/6715f27add606a9960b94593043312cc8acbf937
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Update bclr


  Commit: 77e9370d7d61e2a0e45a52ff5dc7716d907db7f8
      https://github.com/dyninst/dyninst/commit/77e9370d7d61e2a0e45a52ff5dc7716d907db7f8
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Update bcctr


  Commit: 81aabb944a8dbdd219d7e7cde9c452e17ef23056
      https://github.com/dyninst/dyninst/commit/81aabb944a8dbdd219d7e7cde9c452e17ef23056
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Update outline for BO


  Commit: 5c531a3bad8134fbb5a6df3bfa15af7e7ca07ecc
      https://github.com/dyninst/dyninst/commit/5c531a3bad8134fbb5a6df3bfa15af7e7ca07ecc
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Remove branch hint calculation for BO field

That formula only applies before version 2.0 of the ISA (~2003). We no
longer support anything before Power8 (v2.07), so this is no longer
useful. The hint bits are still present, but there's no need to modify
the mnemonic to reflect that. This will get updated when migrating to
Capstone.


  Commit: ae4766ed65c7dbfaf0611e1d4aba2992c099becb
      https://github.com/dyninst/dyninst/commit/ae4766ed65c7dbfaf0611e1d4aba2992c099becb
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Ensure branch instructions with BO read/write ctr

Previously, the operand was only added if the instruction wrote to ctr.


  Commit: d7512f52973b0d31b3f988bf1ce0da2e97e3b81e
      https://github.com/dyninst/dyninst/commit/d7512f52973b0d31b3f988bf1ce0da2e97e3b81e
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Update bcIsConditional calculation


  Commit: 4602aec6a4e52c1667eb82b8797e2c1feaef1de5
      https://github.com/dyninst/dyninst/commit/4602aec6a4e52c1667eb82b8797e2c1feaef1de5
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Update invertBranchCondition calculation


  Commit: ff39e70208ffbb855ee60e64f00176fcad67e3e2
      https://github.com/dyninst/dyninst/commit/ff39e70208ffbb855ee60e64f00176fcad67e3e2
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Update BI field calculation


  Commit: 649eb75408605fd8e11ab899bc6fbf040e463021
      https://github.com/dyninst/dyninst/commit/649eb75408605fd8e11ab899bc6fbf040e463021
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Update mnemonic handling


  Commit: e91694803c07e612c1fab4a55fb1a38d72a679b5
      https://github.com/dyninst/dyninst/commit/e91694803c07e612c1fab4a55fb1a38d72a679b5
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-03-31 (Mon, 31 Mar 2025)

  Changed paths:
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Remove unnecessary 'return'


Compare: https://github.com/dyninst/dyninst/compare/a42297b6229e...e91694803c07

To unsubscribe from these emails, change your notification settings at https://github.com/dyninst/dyninst/settings/notifications
[← Prev in Thread] Current Thread [Next in Thread→]
  • [DynInst_API:] [dyninst/dyninst] 8200fe: Detect bclr as return in Instruction::getCategory, Tim Haines <=