Skip to content

[SYCL][ESIMD] Run all passes with O0 opt level #19554

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

maarquitos14
Copy link
Contributor

In #19411, we simply went for running all passes regardless of the optimization level. However, the change made it quite difficult to test a lot of the ESIMD functionalities, and some tests were even useless after the change. #19411 --and it's follow up #19453, is now reverted, and we're taking a new approach: we still run all passes with -O0, but we add a new -force-disable-opt option to sycl-post-link so we can still test for ESIMD functionalities and keep the tests valid.

Copy link
Contributor

@sarnex sarnex left a comment

Choose a reason for hiding this comment

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

lgtm minus one comment, thanks! i'm assuming all the test changes make the tests exactly as they were before your original change but now we pass the new option

@@ -177,6 +177,10 @@ cl::opt<bool> OptLevelO3("O3",
cl::desc("Optimization level 3. Similar to clang -O3"),
cl::cat(PostLinkCat));

cl::opt<bool> ForceDisableOpt("force-disable-opt",
cl::desc("Force no optimizations."),
Copy link
Contributor

Choose a reason for hiding this comment

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

can we make it cl::hidden?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done

@maarquitos14
Copy link
Contributor Author

lgtm minus one comment, thanks! i'm assuming all the test changes make the tests exactly as they were before your original change but now we pass the new option

Exactly, I reverted the two PRs we merged before, so they were back to their original state, and now only added the new option.

@@ -177,6 +177,10 @@ cl::opt<bool> OptLevelO3("O3",
cl::desc("Optimization level 3. Similar to clang -O3"),
cl::cat(PostLinkCat));

cl::opt<bool> ForceDisableOpt("force-disable-opt", cl::Hidden,
Copy link
Contributor

Choose a reason for hiding this comment

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

sorry since its only used for ESIMD can we call it like force-disable-esimd-opt?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done.

Copy link
Contributor

@sarnex sarnex left a comment

Choose a reason for hiding this comment

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

lgtm! thanks!

@steffenlarsen steffenlarsen merged commit 1aed422 into intel:sycl Jul 23, 2025
26 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.

3 participants