[all-commits] [llvm/llvm-project] 848812: [Verifier] Add verification logic for GlobalIFuncs

Itay Bookstein via All-commits all-commits at lists.llvm.org
Sun Oct 31 20:01:13 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 848812a55e530517191ed0f4f15c0c60752ea9c4
      https://github.com/llvm/llvm-project/commit/848812a55e530517191ed0f4f15c0c60752ea9c4
  Author: Itay Bookstein <ibookstein at gmail.com>
  Date:   2021-10-31 (Sun, 31 Oct 2021)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/ifunc.c
    M clang/test/CodeGen/semantic-interposition.c
    M llvm/include/llvm/IR/GlobalIFunc.h
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Assembler/ifunc-asm.ll
    M llvm/test/Assembler/ifunc-dsolocal.ll
    M llvm/test/Assembler/ifunc-use-list-order.ll
    M llvm/test/Bindings/llvm-c/echo.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/dso_local_equivalent.ll
    M llvm/test/Bitcode/dso_location.ll
    M llvm/test/CodeGen/PowerPC/ifunc.ll
    M llvm/test/CodeGen/X86/addrsig.ll
    M llvm/test/CodeGen/X86/dso_local_equivalent.ll
    M llvm/test/CodeGen/X86/ifunc-asm.ll
    M llvm/test/CodeGen/X86/partition.ll
    M llvm/test/LTO/Resolution/X86/Inputs/ifunc2.ll
    M llvm/test/LTO/Resolution/X86/ifunc.ll
    M llvm/test/LTO/Resolution/X86/ifunc2.ll
    M llvm/test/Linker/ifunc.ll
    M llvm/test/Object/X86/nm-ir.ll
    M llvm/test/ThinLTO/X86/empty-module.ll
    M llvm/test/Transforms/GlobalDCE/global-ifunc.ll

  Log Message:
  -----------
  [Verifier] Add verification logic for GlobalIFuncs

Verify that the resolver exists, that it is a defined
Function, and that its return type matches the ifunc's
type. Add corresponding check to BitcodeReader, change
clang to emit the correct type, and fix tests to comply.

Reviewed By: MaskRay

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




More information about the All-commits mailing list