Skip to content
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

"error: out of range pc-relative fixup value" on linux-armel checked CoreCLR_NonPortable #100047

Closed
EgorBo opened this issue Mar 20, 2024 · 2 comments · Fixed by #100066
Closed
Labels
area-VM-coreclr blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners

Comments

@EgorBo
Copy link
Member

EgorBo commented Mar 20, 2024

linux-armel checked CoreCLR_NonPortable:

  [ 37%] Building ASM object vm/wks/CMakeFiles/cee_wks_core.dir/__/arm/thunktemplates.S.o
  /tmp/thunktemplates-147a73.s:348:9: error: out of range pc-relative fixup value
          ldr pc, StubPrecodeCode + PAGE_SIZE + 0x04
          ^
  /tmp/thunktemplates-147a73.s:355:9: error: out of range pc-relative fixup value
          ldr r12, FixupPrecodeCode + PAGE_SIZE + 0x04
          ^
  /tmp/thunktemplates-147a73.s:356:9: error: out of range pc-relative fixup value
          ldr pc, FixupPrecodeCode + PAGE_SIZE + 0x08
          ^
  /tmp/thunktemplates-147a73.s:369:9: error: out of range pc-relative fixup value
          ldr pc, CallCountingStubCode + PAGE_SIZE + 0x04
          ^
  /tmp/thunktemplates-147a73.s:371:9: error: out of range pc-relative fixup value
          ldr pc, CallCountingStubCode + PAGE_SIZE + 0x08
          ^
  make[2]: *** [vm/wks/CMakeFiles/cee_wks_core.dir/build.make:3470: vm/wks/CMakeFiles/cee_wks_core.dir/__/arm/thunktemplates.S.o] Error 1
  make[1]: *** [CMakeFiles/Makefile2:3712: vm/wks/CMakeFiles/cee_wks_core.dir/all] Error 2

E.g.:
https://dev.azure.com/dnceng-public/public/_build/results?buildId=610702&view=logs&j=2eda3965-9146-55d1-4226-c3d3f8432d8f&t=27bbe0a6-6c05-550a-bc6f-305cf5eac8aa

Known Issue Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "out of range pc-relative fixup value",
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=610702
Error message validated: [out of range pc-relative fixup value]
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 3/20/2024 10:47:26 PM UTC

Report

Build Definition Step Name Console log Pull Request
611731 dotnet/runtime Build product Log #100076
611594 dotnet/runtime Build product Log #100012
611588 dotnet/runtime Build product Log #100011
611340 dotnet/runtime Build product Log #99836
611560 dotnet/runtime Build product Log #99953
611533 dotnet/runtime Build product Log #100018
611406 dotnet/runtime Build product Log #99608
611393 dotnet/runtime Build product Log #99956
611371 dotnet/runtime Build product Log #100021
611360 dotnet/runtime Build product Log
611333 dotnet/runtime Build product Log #96169
611323 dotnet/runtime Build product Log #96332
611290 dotnet/runtime Build product Log #100000
611265 dotnet/runtime Build product Log #94250
611256 dotnet/runtime Build product Log #100060
611160 dotnet/runtime Build product Log #99778
611096 dotnet/runtime Build product Log #97529
611080 dotnet/runtime Build product Log #100054
611058 dotnet/runtime Build product Log #98258
611008 dotnet/runtime Build product Log #100050
610999 dotnet/runtime Build product Log #99991
610702 dotnet/runtime Build product Log #99818
610676 dotnet/runtime Build product Log #98258
610632 dotnet/runtime Build product Log #100041

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
24 24 24
@dotnet-issue-labeler dotnet-issue-labeler bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Mar 20, 2024
@EgorBo EgorBo added the blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' label Mar 20, 2024
@dotnet-policy-service dotnet-policy-service bot added the untriaged New issue has not been triaged by the area owner label Mar 20, 2024
@am11
Copy link
Member

am11 commented Mar 21, 2024

cc @filipnavara, clang was updated yesterday from v17 to v18, which broke the armel build. Is this our bug or compiler's?

  -- The C compiler identification is Clang 18.1.2
  -- The CXX compiler identification is Clang 18.1.2
...
  [ 37%] Building ASM object nativeaot/Runtime/Full/CMakeFiles/Runtime.ServerGC.dir/__/arm/Interlocked.S.o
  /tmp/thunktemplates-9c0dbb.s:348:9: error: out of range pc-relative fixup value
          ldr pc, StubPrecodeCode + PAGE_SIZE + 0x04
          ^
  /tmp/thunktemplates-9c0dbb.s:355:9: error: out of range pc-relative fixup value
          ldr r12, FixupPrecodeCode + PAGE_SIZE + 0x04
          ^
  /tmp/thunktemplates-9c0dbb.s:356:9: error: out of range pc-relative fixup value
          ldr pc, FixupPrecodeCode + PAGE_SIZE + 0x08
          ^
  /tmp/thunktemplates-9c0dbb.s:369:9: error: out of range pc-relative fixup value
          ldr pc, CallCountingStubCode + PAGE_SIZE + 0x04
          ^
  /tmp/thunktemplates-9c0dbb.s:371:9: error: out of range pc-relative fixup value
          ldr pc, CallCountingStubCode + PAGE_SIZE + 0x08
          ^
  make[2]: *** [vm/wks/CMakeFiles/cee_wks_core.dir/build.make:3470: vm/wks/CMakeFiles/cee_wks_core.dir/__/arm/thunktemplates.S.o] Error 1
  make[1]: *** [CMakeFiles/Makefile2:3712: vm/wks/CMakeFiles/cee_wks_core.dir/all] Error 2
  make[1]: *** Waiting for unfinished jobs....

@filipnavara
Copy link
Member

I'll have to try it... The relocations can represent only limited range, that should not be an issue here. I'd expect the DATA_SLOT definition to use the same syntax as on ARM64 though (to force the PC-relative relocation meaning):

#define DATA_SLOT(stub, field) . - (. - stub##Code) + PAGE_SIZE + stub##Data__##field

I doubt it will help though.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-VM-coreclr blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants