binutils Newspaper
JUNE 15, 2026
x86/intel Proposed

Questions loop termination in i386_intel_simplify_symbol()

Jan Beulich questions the correctness of a patch aiming to prevent infinite recursion in `i386_intel_simplify_symbol()`.

Jan Beulich expresses concerns regarding the correctness of a patch designed to prevent infinite recursion within the i386_intel_simplify_symbol() function. They suggest that the current approach of cutting the loop and only looking for O_symbol might be insufficient. The author acknowledges the lack of a comprehensive solution and points to the need for a more robust expression walking mechanism, similar to what’s used for Intel syntax parsing.

In the Thread 1 participant
  1. Jan Beulich <jbeulich@suse.com> other

    Questions the correctness of the proposed patch, suggesting that cutting the loop and only looking for `O_symbol` may be insufficient to prevent infinite recursion.

In Details

This discussion revolves around preventing infinite recursion in i386_intel_simplify_symbol(), a function in binutils responsible for simplifying symbols in Intel x86 assembly. The concern is that the proposed patch may not fully address the issue, potentially leading to continued recursion under certain conditions. The discussion hints at the need for a more comprehensive expression walking mechanism.

For Context

Binutils is a collection of tools used for working with binary files, such as executables and object code. This discussion concerns a function within binutils that simplifies symbol names in x86 assembly code. The goal is to prevent the function from getting stuck in an infinite loop when processing complex symbol definitions, ensuring that the tools remain stable and reliable.

Filed Under: binutilsx86infinite recursionassemblybugfix