Skip to content

Invalidate non-local summation candidates across calls - #8118

Merged
hzongaro merged 1 commit into
eclipse-omr:masterfrom
a7ehuo:fix-summation-reduction
Feb 10, 2026
Merged

Invalidate non-local summation candidates across calls#8118
hzongaro merged 1 commit into
eclipse-omr:masterfrom
a7ehuo:fix-summation-reduction

Conversation

@a7ehuo

@a7ehuo a7ehuo commented Feb 4, 2026

Copy link
Copy Markdown
Contributor

Prevent summation reduction optimization when non-local symbols (static, shadow, or method metadata) may be used or killed by call nodes in the loop. This ensures intermediate values are not incorrectly optimized away when they may be observed by other calls.

Fixes: eclipse-openj9/openj9#23277

Prevent summation reduction optimization when non-local symbols
(static, shadow, or method metadata) may be used or killed by
call nodes in the loop. This ensures intermediate values are not
incorrectly optimized away when they may be observed by other calls.

Fixes: eclipse-openj9/openj9#23277
Signed-off-by: Annabelle Huo <a7eh1ogh@gmail.com>
@a7ehuo
a7ehuo force-pushed the fix-summation-reduction branch from edc9a0e to d8dcf47 Compare February 4, 2026 22:17
@a7ehuo
a7ehuo requested review from hzongaro and removed request for vijaysun-omr February 4, 2026 22:18
@a7ehuo

a7ehuo commented Feb 4, 2026

Copy link
Copy Markdown
Contributor Author

@hzongaro May I ask you to review this change? Thank you!

@hzongaro hzongaro self-assigned this Feb 5, 2026

@hzongaro hzongaro left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this looks correct. Thanks!

@hzongaro

hzongaro commented Feb 6, 2026

Copy link
Copy Markdown
Contributor

Jenkins build all

@hzongaro

hzongaro commented Feb 9, 2026

Copy link
Copy Markdown
Contributor

Jenkins build win

@a7ehuo

a7ehuo commented Feb 9, 2026

Copy link
Copy Markdown
Contributor Author

The current three failures look to be either infrastructure related or happen in other PR build test too:

zos_390

Did you forget the `def` keyword? WorkflowScript seems to be setting a field named defaultCompile (to a value of type String) which could lead to memory leaks or other issues.
...
14:51:38  Still waiting to schedule task
14:51:38  All nodes of label ‘compile:zos’ are offline
22:51:22  Cancelling nested steps due to timeout

linux_riscv64. It also fails in https://ci.eclipse.org/omr/job/PullRequest-linux_riscv64/570/

First time build. Skipping changelog.
[Pipeline] Start of Pipeline
Did you forget the `def` keyword? WorkflowScript seems to be setting a field named defaultCompile (to a value of type String) which could lead to memory leaks or other issues.
...
Caused: java.io.IOException: Remote call on riscv-build2 failed
	at hudson.remoting.Channel.call(Channel.java:1112)
	at hudson.FilePath.act(FilePath.java:1204)
	at hudson.FilePath.act(FilePath.java:1193)
	at hudson.FilePath.mkdirs(FilePath.java:1384)
	at PluginClassLoader for workflow-basic-steps//org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:97)
	at PluginClassLoader for workflow-basic-steps//org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:71)
	at PluginClassLoader for workflow-step-api//org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:49)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:853)
Setting status of d8dcf4754c69e2e1d233f5c396cd1fe90a31de37 to FAILURE with url https://ci.eclipse.org/omr/job/PullRequest-linux_riscv64/569/ and message: 'Build finished. '
Using context: continuous-integration/eclipse-omr/pr/linux_riscv64
Finished: FAILURE

ppc-64_le. It also fails in https://ci.eclipse.org/omr/job/PullRequest-linux_ppc-64_le_gcc/5025/

15:02:29  30: free(): invalid next size (normal)
15:02:29  30/30 Test #30: compunittest ......................Child aborted***Exception:   0.76 sec
15:02:29  
15:02:29  97% tests passed, 1 tests failed out of 30
15:02:29  
15:02:29  Total Test time (real) = 488.34 sec
15:02:29  
15:02:29  The following tests FAILED:
15:02:29  	 30 - compunittest (Child aborted)
15:02:29  Errors while running CTest

@hzongaro

Copy link
Copy Markdown
Contributor

@a7ehuo, thank you for checking the test results. All failures are due to infrastructure issues or known problems. Merging.

@hzongaro
hzongaro merged commit 9f52db4 into eclipse-omr:master Feb 10, 2026
11 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Running the Java program under an OpenJ9 (JDK27) fastdebug build with -Xjit:count=0,optLevel=scorching, The results will be inconsistent

2 participants