Skip to content

DLASQ3, SLASQ3: stop modifying QMAX#1307

Merged
langou merged 1 commit into
Reference-LAPACK:masterfrom
jschueller:issue326
Jun 15, 2026
Merged

DLASQ3, SLASQ3: stop modifying QMAX#1307
langou merged 1 commit into
Reference-LAPACK:masterfrom
jschueller:issue326

Conversation

@jschueller

Copy link
Copy Markdown
Contributor

QMAX was documented as [in] but was written inside the qd-array reversal block. The caller recomputes QMAX immediately after the call, so the update has no useful effect. Remove it to match the documented intent

Closes #326

@langou

langou commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Thanks @jschueller.

I agree with Issue #326.

That being said, I do not think this PR is the good fix.

A better fix could be to change QMAX from [in] in DLASQ3 to [in/out].

I disagree with the statement: "The caller recomputes QMAX immediately after the call, so the update has no useful effect." (0) It is correct that QMAX gets recomputed whenever a split is found but this is not all the time. (1) QMAX is used in DLASQ3 as in/out and we keep on building up the value as we go, (2) also, it is used in in the IF statement Z( 4*N0 ).LE.TOL2*QMAX in DLASQ2.

All in all, I think this is PR needs to be changed to QMAX being flagged as [in/out] in DLASQ3. I agree that this would fix Issue #326.

@jschueller

Copy link
Copy Markdown
Contributor Author

ok, done

@langou langou merged commit 0f81993 into Reference-LAPACK:master Jun 15, 2026
9 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

xLASQ3: argument qmax labeled 'in' but modified

2 participants