[COMMITTED] xtensa: fix slow assembling of gcc.c-torture/compile/limits-externalid
Project / Subsystem
binutils / xtensa
Date
2026-09-13
Proposer
Max Filippov <jcmvbkbc@gmail.com>
Source type
public_inbox
Consensus
Proposed
Sentiment
—/10
Technical tradeoffs
- • Improves assembly time significantly for specific cases by optimizing fragment iteration.
All attributes
- project
- binutils
- subsystem
- xtensa
- patch_id
- —
- discussion_id
- 20260913022512.3431965-1-jcmvbkbc@gmail.com
- source_type
- public_inbox
- title
- [COMMITTED] xtensa: fix slow assembling of gcc.c-torture/compile/limits-externalid
- headline
- xtensa: fix slow assembling of gcc.c-torture/compile/limits-externalid
- tldr
- Optimize Xtensa assembler by returning fragment range from branch target checks.
- proposer
- Max Filippov <jcmvbkbc@gmail.com>
- consensus
- Proposed
- outcome
- committed
- sentiment_score
- —
- technical_tradeoffs
-
- • Improves assembly time significantly for specific cases by optimizing fragment iteration.
- series_id
- —
- series_role
- standalone
- series_parts
- []
- tags
-
- • xtensa
- • performance
- • gas
- • optimization
- bugzilla_url
- —
- date
- 2026-09-13T00:00:00.000Z
[COMMITTED] xtensa: fix slow assembling of gcc.c-torture/compile/limits-externalid
This commit optimizes the Xtensa assembler’s fragment processing by modifying next_frag_is_branch_target to return the end of the checked fragment range. This prevents redundant checks within loops, reducing the assembly time for specific torture tests from minutes to seconds. The change significantly improves performance for certain complex code generation scenarios.