gas: sframe: Fix for flexible FDE and new test
Updated patch series fixes SFrame generation for flexible FDE and adds a new test case.
Jens Remus presents version 2 of a patch series for gas’s SFrame implementation. The first patch addresses issues with generating SFrame when a target supports flexible FDE, and the second patch introduces a new test case to verify a fix for dangling pointers in sframe_xlate_ctx_cleanup. The changes aim to improve correctness and robustness in exception frame handling.
- proposer
Submits a v2 patch series to fix SFrame generation for flexible FDE and add a test case for a dangling pointer issue.
“For changes in v2 see individual patch notes. Patch 1 fixes the generation of SFrame if a target supports SFrame V3 flexible FDE. Patch 2 adds a test for the issue Nick fixed with commit fa11363bc9ad ("Ensure that sframe_xlate_ctx_cleanup() doe snot leave any dangling pointers").”
In Details
This patch series updates gas's SFrame support. Version 2 addresses issues with flexible FDE generation on targets that support SFrame V3. It also includes a new test case to ensure a previously fixed dangling pointer bug in sframe_xlate_ctx_cleanup remains resolved. This impacts exception handling and debugging information generation.
- gas
- The GNU Assembler, responsible for converting assembly language code into machine code.
- sframe
- Likely refers to a specific format or mechanism for representing stack frames, particularly for debugging or exception handling purposes.
- FDE
- Frame Description Entry. Part of the DWARF debugging information format, describing how to unwind the stack frame for a given function.
- flexible FDE
- An enhanced or more adaptable version of the Frame Description Entry format, allowing for more complex or efficient stack unwinding information.
- CFI
- Call Frame Information. A standard used to describe the layout of stack frames, enabling accurate stack unwinding for debugging and exception handling.
- dangling pointers
- Pointers that reference memory locations that have been deallocated or are otherwise invalid, leading to potential crashes or security vulnerabilities.