[all-commits] [llvm/llvm-project] 5178ff: [Passes] Add relative lookup table converter pass

gulfemsavrun via All-commits all-commits at lists.llvm.org
Mon Mar 29 15:12:02 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5178ffc7cf92527557ae16e86d0fa90d538c2a19
      https://github.com/llvm/llvm-project/commit/5178ffc7cf92527557ae16e86d0fa90d538c2a19
  Author: Gulfem Savrun Yeniceri <gulfem at google.com>
  Date:   2021-03-29 (Mon, 29 Mar 2021)

  Changed paths:
    M llvm/docs/Passes.rst
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Transforms/Scalar.h
    A llvm/include/llvm/Transforms/Utils/RelLookupTableConverter.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    A llvm/lib/Transforms/Utils/RelLookupTableConverter.cpp
    M llvm/lib/Transforms/Utils/Utils.cpp
    M llvm/test/CodeGen/AMDGPU/opt-pipeline.ll
    M llvm/test/Other/new-pm-defaults.ll
    M llvm/test/Other/new-pm-thinlto-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
    M llvm/test/Other/opt-O2-pipeline.ll
    M llvm/test/Other/opt-O3-pipeline-enable-matrix.ll
    M llvm/test/Other/opt-O3-pipeline.ll
    M llvm/test/Other/opt-Os-pipeline.ll
    M llvm/test/Other/pass-pipelines.ll
    A llvm/test/Transforms/RelLookupTableConverter/X86/no_relative_lookup_table.ll
    A llvm/test/Transforms/RelLookupTableConverter/X86/relative_lookup_table.ll

  Log Message:
  -----------
  [Passes] Add relative lookup table converter pass

Lookup tables generate non PIC-friendly code, which requires dynamic relocation as described in:
https://bugs.llvm.org/show_bug.cgi?id=45244

This patch adds a new pass that converts lookup tables to relative lookup tables to make them PIC-friendly.

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




More information about the All-commits mailing list