-
Notifications
You must be signed in to change notification settings - Fork 5k
Simplify 64-bit platform conditions #115083
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
base: main
Are you sure you want to change the base?
Conversation
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch |
@@ -6739,7 +6739,7 @@ int Compiler::lvaToCallerSPRelativeOffset(int offset, bool isFpBased, bool forRo | |||
offset += codeGen->genCallerSPtoInitialSPdelta(); | |||
} | |||
|
|||
#if defined(TARGET_AMD64) || defined(TARGET_ARM64) || defined(TARGET_LOONGARCH64) || defined(TARGET_RISCV64) | |||
#ifdef TARGET_64BIT |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How does FEATURE_ON_STACK_REPLACEMENT
break the build here? (The build log is no longer available.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It was failing for x86_x64 variant of altjit, because FEATURE_ON_STACK_REPLACEMENT
was true but TARGET_AMD64 and ARM64 were false:
[ 82%] Building CXX object tools/superpmi/superpmi/CMakeFiles/superpmi.dir/__/superpmi-shared/simpletimer.cpp.o
/__w/1/s/src/coreclr/jit/lclvars.cpp:6766:19: error: use of undeclared identifier 'adjustment'
6766 | offset -= adjustment;
| ^
[ 82%] Building CXX object jit/CMakeFiles/clrjit_win_x86_x64.dir/likelyclass.cpp.o
(I have devops page opened in a tab 🙂)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this means that FEATURE_ON_STACK_REPLACEMENT
is not defined correctly for cross-targeting JITs.
@@ -6739,7 +6739,7 @@ int Compiler::lvaToCallerSPRelativeOffset(int offset, bool isFpBased, bool forRo | |||
offset += codeGen->genCallerSPtoInitialSPdelta(); | |||
} | |||
|
|||
#if defined(TARGET_AMD64) || defined(TARGET_ARM64) || defined(TARGET_LOONGARCH64) || defined(TARGET_RISCV64) | |||
#ifdef TARGET_64BIT | |||
if (forRootFrame && opts.IsOSR()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We may want to change #elif defined(TARGET_ARM64) || defined(TARGET_LOONGARCH64) || defined(TARGET_RISCV64)
into just #else
since the code under #else
is likely going to be right for all future architectures.
A few conditions which no longer need the full list of architectures.