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

Fix redhat arm64 #52244

Merged
merged 17 commits into from
Jul 28, 2021
Merged

Fix redhat arm64 #52244

merged 17 commits into from
Jul 28, 2021

Commits on Jul 15, 2021

  1. Fix RHEL 8 ARM64

    Clang on ARM64 places the .rodata section into the same segment
    as .text. On RHEL 8 ARM64, the kernel is configured for 64kB
    memory pages. When we flip the page protection of the page containing
    the GS cookie to RW and back to RO, we assume that the cookie lives
    in a non-executable memory. This assumption is broken on RHEL 8 and
    we end up setting protection of a part of the coreclr code to read
    only instead of back to RX.
    
    This change switches the linker we use to lld from the previously
    used gnu linker. That linker places .rodata into a different segment
    than .text by default. Moreover, I was planning to move to using
    lld anyways to use all build tools from LLVM.
    janvorli committed Jul 15, 2021
    Configuration menu
    Copy the full SHA
    fef1a9e View commit details
    Browse the repository at this point in the history
  2. Fix ARM build to use PC relative addresses only

    The lld linker has revealed that we were using absolute addresses in some
    asm helpers and so load time relocation was necessary. This change fixes
    it by replacing all of those by PC relative ones.
    janvorli committed Jul 15, 2021
    Configuration menu
    Copy the full SHA
    285cada View commit details
    Browse the repository at this point in the history
  3. Update docker images used for building runtime

    Use new images that have lld linker
    janvorli committed Jul 15, 2021
    Configuration menu
    Copy the full SHA
    9970b60 View commit details
    Browse the repository at this point in the history
  4. Disable lld linker for s390x

    There is no support for lld on that platform yet
    janvorli committed Jul 15, 2021
    Configuration menu
    Copy the full SHA
    3bd6fbf View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    0433807 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1ea2887 View commit details
    Browse the repository at this point in the history
  7. Move LLD configuration into configuretools.cmake

    Also update PGO stuff to not to use gold linker when
    lld is present.
    janvorli committed Jul 15, 2021
    Configuration menu
    Copy the full SHA
    9bfa3a0 View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2021

  1. Configuration menu
    Copy the full SHA
    99aa111 View commit details
    Browse the repository at this point in the history
  2. Fix ARM reloc issue

    janvorli committed Jul 19, 2021
    Configuration menu
    Copy the full SHA
    09c5999 View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2021

  1. Configuration menu
    Copy the full SHA
    f1abcd3 View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2021

  1. Configuration menu
    Copy the full SHA
    e66eb50 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    33bb47c View commit details
    Browse the repository at this point in the history
  3. Fix FreeBSD cross build

    janvorli committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    3d1e65d View commit details
    Browse the repository at this point in the history
  4. Fix cmake 3.6 build issue

    janvorli committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    5f0ff6d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    bad50b6 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    0c4e740 View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2021

  1. Configuration menu
    Copy the full SHA
    3856661 View commit details
    Browse the repository at this point in the history