-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[NativeAOT] osx-arm64 build error: compact unwind compressed function offset doesn't fit in 24 bits #93044
Comments
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Issue DetailsDescriptionLately, BenchmarkDotNet NativeAOT proxy project builds have started failing with the following error: I have looked through similar issues but they all seem to be describing runtime issues rather than build time, hence submitting this one. Reproduction Steps
Expected behaviorBenchmark runs successfully Actual behaviorBenchmark proxy project build fails with
Regression?No response Known WorkaroundsNo response Configuration
Other informationNo response
|
@filipnavara Could you please take a look? |
I wonder if this is just another instance of #88292 and Apple's new linker just asserts on it instead of producing garbage. The version information seems to imply that Xcode 15 is used. |
@neon-sunset Would it be possible to dump the section sizes of the .o file from NativeAOT output with |
@filipnavara please let me know if you need any other information
|
Thanks! The size of the data in Meanwhile, the only thing I can offer is a workaround to force the old ld64 linker through .csproj property: <ItemGroup>
<LinkerArg Include="-Wl,-ld_classic" />
</ItemGroup> |
Hii, I'm stumbling upon the same issue using stable .NET 8 (8.0.100) in the context of BenchmarkDotNet. However, I can't seem to get the workaround using the LinkerArg property working for the benchmark project. Not sure whether it's an issue with BenchmarkDotNet not picking up the property or whether the workaround itself is not fully addressing the issue at hand. |
I can reproduce the issue with net8.0, but it seems to be fixed in 9.0.100-alpha.1.24061.4 daily build. On osx-arm64 with Xcode 15.1: run I haven't bisected which commit fixed it, so we can ask for the backport. @filipnavara, do you have an idea? (It passes both with and without setting |
I think this is resolved since we've switch to the old linker by default. |
Description
Lately, BenchmarkDotNet NativeAOT proxy project builds have started failing with the following error:
ld: Assertion failed: (false && "compact unwind compressed function offset doesn't fit in 24 bits"), function operator(), file Layout.cpp, line 5758. clang: error: linker command failed with exit code 1 (use -v to see invocation)
.I have looked through similar issues but they all seem to be describing runtime issues rather than build time, hence submitting this one.
Reproduction Steps
git clone --recurse-submodules https://github.com/neon-sunset/warpskimmer
cd warpskimmer/bench
echo 1 | dotnet run -c release --runtimes nativeaot8.0
Expected behavior
Benchmark runs successfully
Actual behavior
Benchmark proxy project build fails with
Regression?
No response
Known Workarounds
No response
Configuration
Other information
No response
The text was updated successfully, but these errors were encountered: