From dd3a9d3ddfd572da39c248aa57201be6b42f11ef Mon Sep 17 00:00:00 2001 From: ghidra1 Date: Tue, 19 Dec 2023 17:56:50 -0500 Subject: [PATCH] GP-0 Updated Change History for Ghidra 11.0 release --- .../src/global/docs/ChangeHistory.html | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/Ghidra/Configurations/Public_Release/src/global/docs/ChangeHistory.html b/Ghidra/Configurations/Public_Release/src/global/docs/ChangeHistory.html index 8ef96411ae..f4fcd0f912 100644 --- a/Ghidra/Configurations/Public_Release/src/global/docs/ChangeHistory.html +++ b/Ghidra/Configurations/Public_Release/src/global/docs/ChangeHistory.html @@ -26,7 +26,7 @@

New Features

Improvements

@@ -51,6 +51,8 @@
  • Analysis. Made minor fixes to ARM aggressive instruction finder for stack trace and speed improvement. (GP-3855)
  • API. Added a program caching system for use by clients that want to open programs, do some work, and then close them without them appearing in the tool. Prior to this, all programs that were opened were kept open by the tool until the user manually closed them. (GP-3979)
  • API. Updated ApplyFunctionSignatureCmd and FunctionUtility.updateFunction to optionally allow all applied composites to be cleaned (i.e., force to not-yet-defined state) before being applied. In addition, a datatype conflict handler may now be specified which can control how conflicts of applied datatypes should be handled. (GP-4051)
  • +
  • Basic Infrastructure. Upgraded to FlatLaf 3.2.1. (GP-3645, Issue #5539)
  • +
  • Basic Infrastructure. Upgraded Guava to 32.1.3. (GP-4053)
  • Build. The Ghidra Software Bill of Materials (SBOM) now includes entries for Ghidra's module jars. Jar descriptions are also now provided when available. (GP-3824, Issue #5513)
  • CodeCompare. The Decompiler Diff View now supports searching via Ctrl-F. (GP-4000)
  • CodeCompare. Fixed Function Comparison Window to not initially show the same function in both windows. (GP-4005)
  • @@ -64,6 +66,7 @@
  • Decompiler. Added toggle buttons to quickly change the Eliminate unreachable code and Respect readonly flags Decompiler settings. These settings are local to the Decompiler view and will not persist in the tool. (GP-3919)
  • Decompiler. Added formatting options for braces, { and }, in Decompiler output. (GP-3965, Issue #1240, #1937, #1938, #4914, #81)
  • Demangler. Updated the GNU Demangler binary used by Ghidra to version 2.41. (GP-3577)
  • +
  • Demangler. Revised signature source type applied by GNU demanglers to ANALYSIS instead of IMPORTED. (GP-4139)
  • Exporter. The C/C++ exporter now includes equate definitions if data types are being emitted. (GP-3010, Issue #4878)
  • Extensions. Added a classpath isolation option for Extensions (settable in launch.properties). (GP-3623)
  • FileSystems. The dyld_shared_cache filesystem can now extract files for stubs and standalone data. (GP-3860)
  • @@ -81,17 +84,16 @@
  • Listing. Added options for disabling various EOL Auto-Comments. (GP-3531)
  • Listing. Corrected operand markup of offcut instruction references which failed to respect the Display Namespace operand field option. (GP-3985, Issue #5886)
  • Memory. Updated overlay address space support to allow multiple memory blocks to reside within a single overlay space. (GP-3903)
  • -
  • None. Upgraded to FlatLaf 3.2.1. (GP-3645, Issue #5539)
  • PDB. Changed the PDB data types processing to use a resolve-as-you-go model, eliminating the dependency graph and the need for holding onto the PDB types within the processing model. The benefits of this change are being made available by other improvements. In addition, changes have been made to improve the accuracy of some data types. (GP-3715)
  • PDB. In order to reduce memory consumption, modified PdbReader to load certain components and data structures only when needed and provided some iterators to consumers such as PDB Universal Analyzer. (GP-3995)
  • Processors. Added language module for the Tensilica Xtensa processor. (GP-1062, Issue #1407, #5442)
  • -
  • Processors. Updated binutils to version 2.41. (GP-3833)
  • SARIF. Added support for SARIF data export/import. (GP-3832)
  • Version Tracking. Updated AutoVersionTrackingScript to create implied matches if option is chosen by the user. (GP-3765)
  • Version Tracking. Improved and sped up the AutoVersionTracking algorithm to determine and apply good matches from the possible matches returned from the DuplicateFunctionMatchCorrelator. (GP-3854, Issue #5857)
  • Version Tracking. Added numerous options to Auto Version Tracking that can change which correlators are used and control their individual options. (GP-3934)
  • Version Tracking. Auto Version Tracking now applies implied matches if the minimum number of votes and maximum number of conflicts conditions are met, as determined by the chosen options. (GP-3953)
  • Version Tracking. Updated Auto Version Tracking to check related associations for already-accepted matches before accepting new matches. (GP-4008, Issue #4875)
  • +
  • Version Tracking. Improved default Version Tracking session name generated by new session wizard. (GP-4091)
  • Bugs

    @@ -101,7 +103,8 @@
  • Analysis. Fixed evaluator check before using it in constant analysis. (GP-3970)
  • Build. Fixed nodepJar task dependencies for Gradle 8. (GP-3977, Issue #5902)
  • Data Types. Corrected self-referencing data type resolution issue for function definitions which could result in datatype errors. (GP-4078, Issue #5927)
  • -
  • Debugger. Fixed when "Control Target" can be selected. (GP-4099)
  • +
  • Debugger. Fixed when Control Target can be selected. (GP-4099)
  • +
  • Debugger:Agents. Fixed GADP agent launch scripts to pass arguments through. (GP-4132, Issue #6016)
  • Debugger:dbgeng.dll. Fixed an error that resulted in quotes being stripped from command-line arguments for dbgeng/dbgmodel. (GP-3846, Issue #5789)
  • Debugger:dbgeng.dll. Created better updating strategy for dbgeng/model memory. (GP-3899, Issue #5817)
  • Debugger:Emulator. Fixed issue with resuming after performing p-code steps in the Emulator. (GP-3706)
  • @@ -116,6 +119,8 @@
  • Decompiler. Fixed bug in the brace-highlighting action for the Decompiler window that could cause it not to be able to find matching braces. (GP-3945, Issue #5643)
  • Decompiler. Fixed bug in Decompiler that could cause crashes when analyzing NaN operations. (GP-3981)
  • Decompiler. Fixed a bug that causes the Decompiler to fail on some systems with a "Datatype must have a valid id" exception. (GP-4020)
  • +
  • Decompiler. Fixed an infinite loop in the Decompiler caused by small parameters getting passed to subfunctions via larger registers containing stale values in their upper bytes. (GP-4102, Issue #5934)
  • +
  • Decompiler. Fixed a bug that could cause the Decompiler to crash when printing pieces of a dynamic symbol. (GP-4119, Issue #6005)
  • Demangler. Fixed GNU Demangler analysis live-lock issue. (GP-4071, Issue #5987)
  • Documentation. Fixed field constraint example in the Sleigh documentation. (GP-4046, Issue #5933)
  • Eclipse Integration. Ghidra can now launch Eclipse Ubuntu snap installations from the Script Manager. (GP-3473)
  • @@ -137,8 +142,10 @@
  • Headless. The Headless Analyzer can now recurse into supported GFileSystem container files when a recursion depth of one or more is specified on the command line. (GP-3273, Issue #5167)
  • Importer. Importing libraries that are referenced by absolute path (such as with Mach-O) now get saved to the project with their folder structure intact. This fixes a potential DuplicateKeyException that could occur when using a Recursive Library Load Depth greater than 1, and removes any ambiguity that could occur when linking a program to its libraries. (GP-3922)
  • Importer. Fixed an uncaught InvalidPathException that could occur when loading libraries during import. (GP-4050, Issue #5894)
  • +
  • Importer:ELF. Corrected ELF object module GOT allocation for x86-64 object modules during relocation processing. (GP-4118, Issue #5961)
  • Importer:Mach-O. The MachoLoader now creates thunks on stubs. (GP-3248, Issue #3146)
  • Importer:PE. Fixed an exception that could sometimes occur when parsing PE files containing debug line number information. (GP-3963, Issue #5899)
  • +
  • Languages. Corrected MIPS pcode for di and ei instructions. (GP-3875)
  • Languages. Corrected stack pointer update in alloca_probe x64 windows callfixup. (GP-3915, Issue #5844)
  • Languages. Updated x86 register addressing for ST and MM registers to achieve proper overlap. The upper 16-bits of the ST registers still remain unaffected by MMX instructions which write to the MM registers. (GP-3956)
  • Multi-User. Corrected potential NullPointerException in Ghidra Server command proceesor. (GP-4056, Issue #5974)
  • @@ -148,14 +155,19 @@
  • Processors. Fixed missing ARM cbz instruction in the manual index file. (GP-3724)
  • Processors. Added test-register support back into the x86 processor module. (GP-3784, Issue #5662)
  • Processors. Fixed issue with 6x09 processor module STU instruction storing the X register instead of the U register. (GP-3786, Issue #5671)
  • +
  • Processors. Added ELF relocation support to Loongarch processor module (GP-3804)
  • Processors. Replaced or implemented count-leading-zeroes and count-leading-ones instructions with proper pcode operator in several languages. (GP-3879, Issue #5790)
  • Processors. Changed MIPS TEQ zero, zero into a trap, always-goto flow. (GP-3948)
  • +
  • Processors. Several fixes for some PowerPC VLE instructions (GP-3999, Issue #2843)
  • Processors. Added the x86 MMX register MXCSR to the compiler global list so that manipulations persist in the decompiled output. (GP-4018)
  • Processors. Fixed RISC-V custom-0 instruction patterns. (GP-4047, Issue #5932)
  • +
  • Processors. Fixed PIC24 DOEND register offset (GP-4054, Issue #5213)
  • +
  • Processors. Minor fix for the AVR8 DES instruction semantics. (GP-4055, Issue #5235)
  • Project. Corrected issue with ProjectLocator when using projects located in root directory. (GP-3914, Issue #5802)
  • Scripting. FixOldSTVariableStorageScript.java Ghidra script has been made available for users to run against x86 Programs created prior to Ghidra 10.0.3. This script will fixup ST0... ST7 variable storage addresses which were not properly migrated during an x86 language revision. (GP-3949, Issue #5640)
  • Search. Fixed incorrect template implementation of GenericByteSequencePattern. (GP-4024)
  • Sleigh. Fixed a bug in the Sleigh compiler preventing the declaration of bit-range symbols when their size was not a multiple of 8 bits. (GP-8, Issue #1144, #660)
  • +
  • Sleigh. Added pure 32-bit PowerPC e500mc processor variant (GP-3068)
  • Sleigh. Fixed stacktrace when a pcode pseudoOp has more than eight parameters. (GP-3986)
  • Version Tracking. Fixed Version Tracking Undo issue where running a correlator and accepting matches then undoing the results and then rerunning the correlator resulted in incorrectly blocked matches. (GP-3827)
  • Version Tracking. Fixed bug in Version Tracking matches table that prevented saved filters from being applied. (GP-3901)