aarch64: ERRAT_NONE is not zero, so test against it
A patch corrects a bug in aarch64 code where a workaround was incorrectly enabled by default due to a faulty comparison with ERRAT_NONE.
This patch addresses an issue in the aarch64 BFD backend where the fix_erratum_843419 workaround was being incorrectly enabled by default. The problem stems from ERRAT_NONE not being zero, causing a simple boolean test to evaluate as true even when no workaround was explicitly requested. The fix involves changing the comparison to explicitly check against ERRAT_NONE, aligning it with other erratum checks in the file.
- proposer
Submits a patch to correct a logic error in aarch64 erratum handling where a workaround was always enabled due to an incorrect comparison with ERRAT_NONE.
- reviewer
Acknowledges the patch and its explanation, indicating it addresses the described issue.
Technical Tradeoffs
- Ensures erratum workarounds are only applied when explicitly requested, avoiding unnecessary link-time overhead.
In Details
The aarch64 backend in binutils' BFD library implements workarounds for specific hardware errata. This patch corrects a flaw in how these errata workarounds are enabled, specifically for erratum_843419. Previously, a non-zero ERRAT_NONE value caused the workaround to be applied even when not requested, impacting link-time performance and correctness.