Skip to content

Releases: encounter/objdiff

v3.0.0-beta.5

02 Apr 04:54
9b557e4
Compare
Choose a tag to compare
v3.0.0-beta.5 Pre-release
Pre-release

What's Changed

  • Added: Reimplement colorized data relocation hover diffs by @LagoLunatic in #182
  • Added: Limit left-panel scrollview to the file tree by @SquareMan in #185
  • Added: x86: Support inline data for jumptables (e735adb)
  • Added: wasm: Cache objects via data hash (7b00a9e)
  • Fixed: ARM: Subtract with overflow error when no mapping symbol at address 0 by @LagoLunatic in #183
  • Fixed: PPC: Pooled relocation addends being added twice sometimes by @LagoLunatic in #184
  • Fixed: x86_64: Fix relocation placement in instruction (bc46e17)
  • Fixed: objdiff-cli report: Skip unknown sections (2612cda)

Full Changelog: v3.0.0-beta.4...v3.0.0-beta.5

v3.0.0-beta.4

19 Mar 03:52
Compare
Choose a tag to compare
v3.0.0-beta.4 Pre-release
Pre-release

What's Changed

  • Added: mips: Ignore .NON_MATCHING functions from INLINE_ASM macros (42d4c38)
  • Added: mips: C++ symbol demangling (CW & modern GCC) (9358d8e)
  • Fixed: arm: thumb & data decoding (eaba239)
  • Fixed: Section ordering with many same-named sections (5898d7a)
  • Fixed: x86 mov relocations with uint32 (a0e7f9b)

Full Changelog: v3.0.0-beta.2...v3.0.0-beta.4

v3.0.0-beta.2

11 Mar 03:05
Compare
Choose a tag to compare
v3.0.0-beta.2 Pre-release
Pre-release

Previous changelog (v3.0.0-beta.1)
Previous changelog (v3.0.0-alpha.3)
Previous changelog (v3.0.0-alpha.2)
Previous changelog (v3.0.0-alpha.1)

What's Changed

  • Added: objdiff-cli diff: Display build log and any errors (3965a03)
  • Added: Initial support for x86-64 relocations (c6971f3)
  • Fixed: Issues comparing objects with different endianness (7c4f1c5)

Full Changelog: v3.0.0-beta.1...v3.0.0-beta.2

v3.0.0-beta.1

05 Mar 06:53
Compare
Choose a tag to compare
v3.0.0-beta.1 Pre-release
Pre-release

Previous changelog (v3.0.0-alpha.3)
Previous changelog (v3.0.0-alpha.2)
Previous changelog (v3.0.0-alpha.1)

What's Changed

  • Added: PPC: Reimplement pooled data reference calculation by @LagoLunatic in #167
  • Changed: Update rabbitizer (MIPS disassembler)
  • Changed: Upgrade to Rust edition 2024

Full Changelog: v3.0.0-alpha.3...v3.0.0-beta.1

v3.0.0-alpha.3

04 Mar 16:30
Compare
Choose a tag to compare
v3.0.0-alpha.3 Pre-release
Pre-release

Previous changelog (v3.0.0-alpha.2)
Previous changelog (v3.0.0-alpha.1)

What's Changed

  • Added: Reimplement function data value tooltips, function data value diffing, and data relocation diffing by @LagoLunatic in #166
  • Fixed: Don't infer sizes for labels within another symbol (4f34dfa)

Full Changelog: v3.0.0-alpha.2...v3.0.0-alpha.3

v3.0.0-alpha.2

04 Mar 02:03
Compare
Choose a tag to compare
v3.0.0-alpha.2 Pre-release
Pre-release

Previous changelog (v3.0.0-alpha.1)

What's Changed

  • Added: MIPS: Use relocation pairing (R_MIPS_HI16, R_MIPS_LO16) to calculate relocation addend
  • Added: MIPS: Option to display '$' prefix for registers. Off by default.
  • Fixed: Various MIPS regressions.
  • Changed: Build objdiff-gui against older glibc (#165, 80e9396)

Full Changelog: v3.0.0-alpha.1...v3.0.0-alpha.2

v3.0.0-alpha.1

03 Mar 05:49
Compare
Choose a tag to compare
v3.0.0-alpha.1 Pre-release
Pre-release

This release brings significant internal changes that improve overall performance and enable better code reuse. Due to the complex refactoring involved, several features are currently missing and will be reimplemented before the stable release of v3:

  • Data relocation diffing
  • Displaying data values from instruction tooltips
  • Displaying data pool references
  • JSON output for objdiff-cli diff
  • PowerPC extab display/diffing

If you'd like these features, please continue using the latest stable v2 release until they return.

All object and architecture backends have been completely reworked. Please submit issues for any regressions. Going forward, integration tests are being added to prevent future regressions.

The WebAssembly API was rebuilt on top of the WebAssembly Component Model, and the new internal architecture significantly reduces the amount of data that needs to pass through the WASM/JS boundary. An updated version of the experimental VS Code extension will be released soon with significantly improved performance thanks to these changes.

What's Changed

  • Added: Build errors are handled more gracefully and do not send you back to the symbols view (#161, d938988)
  • Added: "Combine data sections" option now combines MSVC section groups with proper ordering (.rdata$r, etc)
  • Added: New "Combine text sections" option that will combine all text sections (including MSVC section groups, e.g. .text$di, .text$mn, etc)
  • Added: Implement context menu copy functionality for data values by @SquareMan in #163
    • Note: Currently not working post-refactor
  • Added: Check relocation addends when diffing functions by @LagoLunatic in #158
  • Added: Symbol search box when mapping a symbol (#160)
  • Added: Calculate a diff score in addition to match percentage, based on asm-differ and decomp-permuter logic (#1)
  • Added: Improve tooltip and context menu visuals, including better handling for long symbol names
  • Fixed: Added/removed bytes being visually misaligned in data diff view by @LagoLunatic in #159
  • Fixed: MSVC local static functions are missing from diff (#156)
  • Fixed: Statics in MSVC built objs don't show names (#148)
  • Fixed: x86 relocation incorrectly applied (#106)
  • Changed: Use rabbitizer v2 for MIPS backend (6d3c63c)
  • Changed: Simplified internal object representation & processing

Full Changelog: v2.7.1...v3.0.0-alpha.1

v2.7.1

22 Jan 06:12
Compare
Choose a tag to compare

NOTE: This release has configuration changes that the experimental VS Code extension has not yet been updated for. Please use v2.6.0 CLI for the extension.

What's Changed

  • Fixed: Refactor data relocation diffing to improve accuracy and fix bugs by @LagoLunatic in #157

Full Changelog: v2.7.0...v2.7.1

v2.7.0

18 Jan 23:33
a4fdb61
Compare
Choose a tag to compare

NOTE: This release has configuration changes that the experimental VS Code extension has not yet been updated for. Please use v2.6.0 CLI for the extension.

What's Changed

  • Added: Show relocation diffs in function view when the data's content differs by @LagoLunatic in #153
  • Added: Implement diffing relocations within data sections by @LagoLunatic in #154
  • Fixed: Update dependencies to fix notify-rs crash (6037a79, #145)

Full Changelog: v2.6.0...v2.7.0

v2.6.0

05 Jan 04:44
Compare
Choose a tag to compare

What's Changed

  • Added: Add buttons to collapse or expand all sections in the symbol list view for an object simultaneously by @LagoLunatic in #149
  • Added: Internal changes to support upcoming objdiff Visual Studio Code extension.
  • Update dependencies by @NWPlayer123 in #150

Full Changelog: v2.5.0...v2.6.0