[all-commits] [llvm/llvm-project] 1e60ab: [JITLink][RISCV] Move relax to PostAllocationPasses

Job Noorman via All-commits all-commits at lists.llvm.org
Thu Jul 6 00:35:37 PDT 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1e60ab0fbe1961074c3673070be0e3c2211c8084
  Author: Job Noorman <jnoorman at igalia.com>
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/ELF_riscv.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp

  Log Message:
  [JITLink][RISCV] Move relax to PostAllocationPasses

`JITLinkContext` is notified (using `notifyResolved`) of the final
symbol addresses after allocating memory and running the post-allocation
passes. However, linker relaxation, which can cause symbol addresses to
change, was run during the pre-fixup passes. This causes users of
JITLink (e.g., ORC) to pick-up wrong symbol addresses when linker
relaxation was enabled.

This patch fixes this by running relaxation during the post-allocation

Fixes #63671

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D154501

More information about the All-commits mailing list